/* Production polish: corrected logo lockup, shorter hero, stronger contrast */
:root{
  --sferra-ink:#031017;
  --sferra-ink-2:#0a171f;
  --sferra-gold:#d1bf74;
  --sferra-gold-bright:#f2df92;
}
body{color:#101820;background:#f7f4ec;}
.top-strip{background:#02070a!important;color:#f7f0d6!important;}
.top-strip-inner{padding:.42rem 0!important;font-size:.86rem!important;}
.top-strip a{color:#fff0a8!important;font-weight:950!important;text-decoration:underline!important;text-underline-offset:3px!important;}
.site-header{background:rgba(4,10,13,.96)!important;border-bottom:1px solid rgba(209,191,116,.32)!important;box-shadow:0 14px 38px rgba(0,0,0,.24)!important;}
.site-header .nav-shell{padding:.52rem 0!important;gap:1rem!important;min-height:76px!important;}
.site-header .brand{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.95rem!important;
  width:clamp(340px,26vw,430px)!important;
  min-width:clamp(340px,26vw,430px)!important;
  max-width:430px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
}
.site-header .brand img,.site-header .brand img.brand-mark-img{
  display:block!important;
  width:clamp(118px,8.4vw,142px)!important;
  max-width:142px!important;
  min-width:118px!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:288/101!important;
  flex:0 0 auto!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.55))!important;
}
.site-header .brand .brand-text,.site-header .brand span,.site-header .brand .brand-type{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.site-header .brand .brand-text strong,.site-header .brand .brand-type strong{
  display:block!important;
  color:#fff!important;
  font-size:clamp(1.08rem,1.22vw,1.42rem)!important;
  line-height:.96!important;
  font-weight:1000!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  text-shadow:0 2px 12px rgba(0,0,0,.46)!important;
}
.site-header .brand .brand-text em,.site-header .brand .brand-type em{
  display:block!important;
  margin-top:.2rem!important;
  color:#f2df92!important;
  font-size:clamp(.52rem,.58vw,.68rem)!important;
  line-height:1!important;
  font-style:normal!important;
  font-weight:950!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  text-shadow:0 2px 10px rgba(0,0,0,.46)!important;
}
.main-nav{margin-left:auto!important;}
.main-nav a{color:#fff!important;font-size:.91rem!important;padding:.66rem .72rem!important;}
.main-nav a:hover,.main-nav a:focus{background:rgba(255,255,255,.10)!important;color:#fff1a8!important;}
.nav-cta{background:linear-gradient(135deg,#d1bf74,#f2df92)!important;color:#061016!important;border:0!important;min-height:50px!important;padding:.72rem 1.15rem!important;box-shadow:0 12px 24px rgba(209,191,116,.22)!important;}
.hero-section{background:#061016!important;color:#fff!important;}
.hero-section:not(.home-hero) .hero-grid{min-height:600px!important;padding:4.5rem 0 3.25rem!important;gap:2.35rem!important;}
.hero-section:not(.home-hero):before{background:linear-gradient(110deg,rgba(3,12,18,.93),rgba(3,12,18,.78) 48%,rgba(3,12,18,.42))!important;}
.hero-section:not(.home-hero) .hero-media img{opacity:.64!important;filter:saturate(1.02) contrast(1.04)!important;}
.home-hero{min-height:560px!important;background:#061016!important;}
.home-hero:before{background:linear-gradient(92deg,rgba(3,14,22,.20) 0%,rgba(3,14,22,.08) 55%,rgba(3,14,22,.02) 100%)!important;z-index:-1!important;}
.home-hero .hero-media img{opacity:1!important;filter:saturate(1.04) contrast(1.04)!important;object-fit:cover!important;object-position:center center!important;}
.home-hero .hero-grid{
  display:grid!important;
  grid-template-columns:minmax(390px,540px) minmax(330px,390px) minmax(0,1fr)!important;
  grid-template-areas:"copy form spacer"!important;
  align-items:center!important;
  align-content:center!important;
  justify-content:start!important;
  gap:1.15rem!important;
  min-height:560px!important;
  max-width:calc(var(--container, 86vw))!important;
  padding:1.1rem 0 1.25rem!important;
}
.home-hero .hero-copy{
  grid-area:copy!important;
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  max-width:540px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.home-hero .hero-form{
  grid-area:form!important;
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  max-width:390px!important;
  margin:0!important;
  align-self:center!important;
}
.home-hero .hero-copy .eyebrow{color:#fff1a8!important;margin-bottom:.72rem!important;letter-spacing:.17em!important;text-shadow:0 2px 14px rgba(0,0,0,.48)!important;}
.home-hero .hero-copy .eyebrow:before{background:#f2df92!important;}
.home-hero h1{
  color:#fff!important;
  font-size:clamp(2.42rem,3.35vw,4.1rem)!important;
  line-height:.97!important;
  letter-spacing:-.055em!important;
  max-width:540px!important;
  margin-bottom:.82rem!important;
  text-shadow:0 5px 28px rgba(0,0,0,.45)!important;
}
.home-hero .hero-copy p{font-size:clamp(1.02rem,1.16vw,1.18rem)!important;line-height:1.5!important;color:#f4f7f8!important;max-width:520px!important;margin-bottom:0!important;text-shadow:0 2px 14px rgba(0,0,0,.38)!important;}
.home-hero .hero-actions{margin-top:1rem!important;gap:.72rem!important;}
.home-hero .button{min-height:48px!important;padding:.78rem 1.1rem!important;}
.home-hero .button-ghost{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.28)!important;color:#fff!important;}
.home-hero .trust-row{margin-top:.9rem!important;gap:.48rem!important;}
.home-hero .trust-row span{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;padding:.42rem .62rem!important;font-size:.76rem!important;box-shadow:0 8px 22px rgba(0,0,0,.15)!important;}
.home-hero .hero-form .quote-form{
  background:rgba(255,255,255,.985)!important;
  border:1px solid rgba(242,223,146,.78)!important;
  border-radius:24px!important;
  padding:.92rem .96rem!important;
  box-shadow:0 28px 76px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(10px)!important;
}
.home-hero .hero-form .form-head{margin-bottom:.5rem!important;}
.home-hero .form-head strong{font-size:1.05rem!important;line-height:1.05!important;}
.home-hero .form-head small{font-size:.75rem!important;line-height:1.25!important;}
.home-hero .form-kicker{font-size:.68rem!important;color:#6a5718!important;}
.home-hero .hero-form .form-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.45rem!important;}
.home-hero .hero-form .form-grid .wide{grid-column:1/-1!important;}
.home-hero .quote-form label{font-size:.69rem!important;gap:.18rem!important;}
.home-hero .quote-form input,.home-hero .quote-form select,.home-hero .quote-form textarea{padding:.48rem .58rem!important;border-radius:10px!important;font-size:.88rem!important;line-height:1.2!important;}
.home-hero .quote-form textarea{min-height:54px!important;max-height:68px!important;}
.home-hero .quote-form .consent{font-size:.66rem!important;margin-top:.45rem!important;line-height:1.3!important;}
.home-hero .quote-form .button{min-height:41px!important;margin-top:.45rem!important;font-size:.88rem!important;}
.home-hero .form-note{font-size:.76rem!important;margin-top:.36rem!important;}
.eyebrow{color:#6a5718!important;}
.hero-section .eyebrow,.site-footer .eyebrow,.emergency-band .eyebrow{color:#fff1a8!important;}
.emergency-band{background:linear-gradient(135deg,#061016,#0b1720 66%,#15160f)!important;color:#fff!important;}
.emergency-band h2,.emergency-band p,.emergency-band .eyebrow{color:#fff!important;}
.emergency-band .eyebrow{color:#fff1a8!important;}
.footer-logo-lockup{display:flex!important;align-items:center!important;gap:.95rem!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin-bottom:1rem!important;}
.footer-logo-lockup img,.footer-brand img{width:clamp(132px,10vw,164px)!important;max-width:164px!important;height:auto!important;aspect-ratio:288/101!important;object-fit:contain!important;filter:drop-shadow(0 10px 18px rgba(0,0,0,.48))!important;background:transparent!important;border:0!important;padding:0!important;}
.footer-logo-text,.footer-logo-lockup span{display:flex!important;flex-direction:column!important;line-height:1!important;white-space:nowrap!important;}
.footer-logo-text strong,.footer-logo-lockup strong{color:#fff!important;font-size:1.18rem!important;font-weight:1000!important;letter-spacing:.04em!important;text-transform:uppercase!important;}
.footer-logo-text em,.footer-logo-lockup em{color:#f2df92!important;font-size:.58rem!important;font-style:normal!important;font-weight:950!important;letter-spacing:.17em!important;text-transform:uppercase!important;margin-top:.18rem!important;}
@media (max-width:1320px){
  .site-header .brand{width:clamp(300px,25vw,370px)!important;min-width:clamp(300px,25vw,370px)!important;gap:.72rem!important;}
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:clamp(104px,7.4vw,124px)!important;min-width:104px!important;}
  .site-header .brand .brand-text strong,.site-header .brand .brand-type strong{font-size:clamp(.98rem,1.05vw,1.24rem)!important;}
  .site-header .brand .brand-text em,.site-header .brand .brand-type em{font-size:clamp(.46rem,.5vw,.58rem)!important;letter-spacing:.14em!important;}
  .main-nav a{font-size:.86rem!important;padding:.62rem .56rem!important;}
  .nav-cta{padding:.68rem .9rem!important;}
  .home-hero .hero-grid{grid-template-columns:minmax(360px,500px) minmax(320px,372px) 1fr!important;gap:1rem!important;}
}
@media (max-width:1120px){
  .site-header .nav-shell{min-height:74px!important;}
  .site-header .brand{width:auto!important;min-width:0!important;max-width:none!important;}
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:132px!important;max-width:132px!important;}
  .site-header .brand .brand-text,.site-header .brand span,.site-header .brand .brand-type{display:none!important;}
  .main-nav{top:calc(100% + 0px)!important;background:#061016!important;border:1px solid rgba(209,191,116,.28)!important;}
  .home-hero{min-height:auto!important;}
  .home-hero:before{background:linear-gradient(100deg,rgba(3,14,22,.88),rgba(3,14,22,.58))!important;}
  .home-hero .hero-grid{display:block!important;min-height:auto!important;max-width:650px!important;padding:3rem 0 2.2rem!important;}
  .home-hero .hero-copy{max-width:650px!important;}
  .home-hero .hero-form{max-width:560px!important;margin-top:1rem!important;}
  .home-hero .hero-form .form-grid{grid-template-columns:1fr 1fr!important;}
  .hero-section:not(.home-hero) .hero-grid{min-height:auto!important;padding:4rem 0 3rem!important;}
}
@media (max-width:760px){
  .top-strip-inner{text-align:center!important;font-size:.78rem!important;display:block!important;}
  .site-header .nav-shell{padding:.5rem 0!important;min-height:64px!important;}
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:118px!important;max-width:118px!important;}
  .home-hero .hero-media img{object-position:61% center!important;opacity:.52!important;}
  .home-hero:before{background:rgba(3,14,22,.92)!important;}
  .home-hero .hero-grid{padding:2.15rem 0 1.65rem!important;}
  .home-hero h1{font-size:clamp(2.05rem,10vw,3rem)!important;}
  .home-hero .hero-form .form-grid{grid-template-columns:1fr!important;}
  .footer-logo-lockup{align-items:flex-start!important;}
  .footer-logo-lockup img,.footer-brand img{width:126px!important;}
}
@media (max-width:460px){
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:104px!important;max-width:104px!important;}
  .nav-cta{display:none!important;}
  .home-hero .hero-actions .button{width:100%!important;}
  .home-hero .trust-row span{font-size:.72rem!important;}
}

/* Keep the brand readable on tablet and mobile instead of reducing it to an unlabeled icon. */
@media (max-width:1120px){
  .site-header .brand{width:auto!important;min-width:0!important;max-width:320px!important;gap:.62rem!important;}
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:104px!important;max-width:104px!important;min-width:104px!important;}
  .site-header .brand .brand-text,.site-header .brand span,.site-header .brand .brand-type{display:flex!important;}
  .site-header .brand .brand-text strong,.site-header .brand .brand-type strong{font-size:.86rem!important;letter-spacing:.026em!important;}
  .site-header .brand .brand-text em,.site-header .brand .brand-type em{display:block!important;font-size:.38rem!important;letter-spacing:.09em!important;margin-top:.1rem!important;}
}
@media (max-width:760px){
  .site-header .brand{max-width:300px!important;gap:.55rem!important;}
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:88px!important;max-width:88px!important;min-width:88px!important;}
  .site-header .brand .brand-text strong,.site-header .brand .brand-type strong{font-size:.74rem!important;letter-spacing:.018em!important;}
  .site-header .brand .brand-text em,.site-header .brand .brand-type em{font-size:.32rem!important;letter-spacing:.07em!important;}
}
@media (max-width:460px){
  .site-header .brand{max-width:286px!important;gap:.48rem!important;}
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:78px!important;max-width:78px!important;min-width:78px!important;}
  .site-header .brand .brand-text strong,.site-header .brand .brand-type strong{font-size:.68rem!important;letter-spacing:.012em!important;}
  .site-header .brand .brand-text em,.site-header .brand .brand-type em{display:none!important;}
}
@media (max-width:360px){
  .site-header .brand img,.site-header .brand img.brand-mark-img{width:70px!important;max-width:70px!important;min-width:70px!important;}
  .site-header .brand .brand-text strong,.site-header .brand .brand-type strong{font-size:.61rem!important;}
}
