/* Color and motion follow the agency's silver-and-charcoal identity. */
#quote-form{scroll-margin-top:20px}
#quote-form:focus{outline:none}
.about-brand img{aspect-ratio:3 / 2}
.hero-photo>img,.quote-contact img{filter:none;opacity:1}
.hero{position:relative;isolation:isolate;background:radial-gradient(ellipse at 72% 20%,#51687925 0,transparent 58%)}
.hero:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 8% 83%,#c6d7e50d,transparent 53%)}
.hero h1 em{color:#c1c6ce;background:linear-gradient(120deg,#a0a8b3 5%,#e0e3e8 40%,#b1b5c0 75%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-photo{border-radius:12px;box-shadow:0 25px 65px #0b0c1545,0 0 0 1px #c5d7e722;transition:box-shadow .5s ease}
.hero-photo>img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.photo-badge{border-radius:7px;backdrop-filter:blur(14px);background:#242128c9;box-shadow:0 8px 24px #0002;transition:transform .35s ease,background .35s ease}
.photo-caption{border-left:2px solid #dce2ea8c;padding-left:17px}
.photo-caption h2{color:#fff}
header{box-shadow:0 10px 35px #08060b16}
header nav a{position:relative;padding:8px 0}
header nav a:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:#dce3ec;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
header nav a:hover:after,header nav a:focus-visible:after{transform:scaleX(1)}
.button{position:relative;overflow:hidden;box-shadow:0 4px 15px #1112;transition:transform .3s ease,box-shadow .3s ease}
.button:after{content:'';position:absolute;inset:-60% -45%;pointer-events:none;background:linear-gradient(115deg,transparent 35%,#fff6 49%,transparent 62%);transform:translateX(-100%);transition:transform .7s ease}
.button span,.coverage-link span,.text-link span{display:inline-block;transition:transform .3s ease}
.button:focus-visible:after{transform:translateX(100%)}
.trust-strip{background:linear-gradient(110deg,#28252c,#252831,#28252c)}
.trust-strip span{display:grid;place-items:center;min-width:29px;height:29px;border:1px solid #a9b7c333;border-radius:50%;color:#c0cbd8}
.coverage{background:radial-gradient(ellipse at 100% 0,#dbe1e866,transparent 55%),#f2f2f3}
.coverage-card{border-radius:12px;box-shadow:0 5px 25px #252d3b05;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.coverage-card svg{padding:11px;width:58px;height:58px;overflow:visible;border:1px solid #d4dbe3;border-radius:13px;background:linear-gradient(145deg,#f7f9fb,#e7ebef);stroke:#4f6073;transition:transform .35s ease,background .35s ease}
.coverage-card:focus-within{border-color:#94a4b7;box-shadow:0 18px 40px #26344712}
.about-brand{position:relative;border-radius:12px;background:radial-gradient(ellipse at top,#6b7b8a24,transparent 65%),#101114;box-shadow:0 20px 60px #0a09102b}
.about-brand img{transition:transform .8s ease}
.about-copy h2 em,.quote-copy h2 em{color:#bcc4d0}
.quote-section{background:radial-gradient(ellipse at 7% 30%,#53748b1f,transparent 55%),linear-gradient(120deg,#28252d,#242630)}
form{border-radius:12px;box-shadow:0 25px 70px #100c1738}
.coverage-options span{transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.coverage-options input:checked+span{box-shadow:0 4px 12px #29203321}
.quote-contact img{box-shadow:0 0 0 4px #bccfe91c}
@media(hover:hover) and (pointer:fine){
  .hero-photo:hover>img{transform:scale(1.025)}
  .hero-photo:hover{box-shadow:0 30px 75px #0b0c1566,0 0 0 1px #d4e5f54d}
  .photo-badge:hover{transform:translateY(-3px);background:#242128ec}
  .button:hover:after{transform:translateX(100%)}
  .button:hover span,.coverage-link:hover span{transform:translate(3px,-3px)}
  .text-link:hover span{transform:translateY(3px)}
  .coverage-card:hover{transform:translateY(-7px);border-color:#a0acba;box-shadow:0 20px 45px #26344714}
  .coverage-card:hover svg{transform:translateY(-3px) rotate(-3deg)}
  .about-brand:hover img{transform:scale(1.035)}
}
@keyframes enter-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes portrait-enter{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){
  .hero-copy>.eyebrow{animation:enter-up .65s ease both}
  .hero h1{animation:enter-up .85s cubic-bezier(.2,.7,.2,1) .08s both}
  .hero .intro{animation:enter-up .75s ease .2s both}
  .hero-actions{animation:enter-up .75s ease .3s both}
  .hero-note{animation:enter-up .75s ease .38s both}
  .hero-photo{animation:portrait-enter 1s cubic-bezier(.2,.7,.2,1) .15s both}
}
@media(max-width:760px){.photo-caption{left:23px;padding-left:14px}.coverage-card svg{top:19px;right:24px;width:44px;height:44px;padding:8px}.hero-photo{border-radius:10px}.hero h1{letter-spacing:-.047em}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo:hover>img,.about-brand:hover img,.coverage-card:hover,.coverage-card:hover svg,.button:hover,.photo-badge:hover{transform:none}}

.agency-logos{display:flex;align-items:center;gap:20px;flex-shrink:0}.farmers-logo{display:block;width:102px;height:62px;background:url('assets/agency-card.png') -30px -25px / 630px 360px no-repeat;flex-shrink:0}.honeypot{display:none}button:disabled{opacity:.65;cursor:wait}@media(max-width:1100px){header nav{display:none}}@media(max-width:760px){.agency-logos{gap:8px}.agency-logos .brand{width:135px}.farmers-logo{width:76px;height:47px;background-size:472.5px 270px;background-position:-22.5px -18.75px}header{flex-wrap:wrap;gap:12px}}

.form-grid .full-width{grid-column:1 / -1}.form-grid input[type="date"]{min-width:0;width:100%;max-width:100%;box-sizing:border-box}
