.scroll-enhanced .hero{position:sticky;top:0;z-index:0;height:calc(100vh - var(--announcement-height,39px));height:calc(100svh - var(--announcement-height,39px));min-height:0;margin-bottom:clamp(132px,16vh,184px)}
.scroll-enhanced .hero-content{height:100%;min-height:0}
.scroll-enhanced .hero-media:before{background:linear-gradient(90deg,rgba(18,49,88,.8) 0%,rgba(18,49,88,.58) 30%,rgba(18,49,88,.2) 47%,rgba(18,49,88,.025) 61%,rgba(18,49,88,0) 100%),linear-gradient(0deg,rgba(18,49,88,.14) 0%,rgba(18,49,88,0) 28%)}
.scroll-enhanced .hero-media img{object-position:center bottom;filter:saturate(1.02) brightness(1.02) contrast(1.01)}
.hero-side-actions{position:absolute;right:5%;bottom:52px;z-index:4;width:min(332px,30vw);display:grid;gap:10px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.hero-side-actions .btn{width:100%;min-height:54px;transition:transform .28s cubic-bezier(.22,.8,.25,1),box-shadow .28s ease,background-color .28s ease}
.hero-side-actions .btn:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(18,49,88,.16)}
.hero-side-actions .hero-discover{background:rgba(255,253,249,.72);border-color:rgba(255,255,255,.78);color:var(--ink);backdrop-filter:blur(9px)}
.hero-side-actions .hero-begin{background:rgba(18,49,88,.86);border-color:rgba(255,255,255,.16);color:#fff;backdrop-filter:blur(9px)}
.scroll-enhanced main>section:not(.hero),.scroll-enhanced .footer{position:relative;z-index:2}
.scroll-enhanced .story{border-radius:48px 48px 0 0;overflow:hidden;transform:translate3d(0,var(--story-lag,0px),0);transition:transform .1s linear;will-change:transform;box-shadow:0 -22px 62px rgba(18,49,88,.22),0 -1px 0 rgba(255,255,255,.7)}
.scroll-enhanced .nav-inner{transition:width .9s cubic-bezier(.22,.8,.25,1),height .72s ease,padding .72s ease,gap .72s ease,transform .3s cubic-bezier(.22,.8,.25,1),background-color .46s ease,border-color .46s ease,box-shadow .46s ease,backdrop-filter .46s ease}
.scroll-enhanced .nav .brand-copy,.scroll-enhanced .nav .nav-links,.scroll-enhanced .nav .mobile{transition:opacity .32s ease,transform .48s cubic-bezier(.22,.8,.25,1)}
.scroll-enhanced .nav{will-change:transform,opacity;transition:opacity .3s ease,transform .52s cubic-bezier(.22,.8,.25,1),top .35s ease}
.scroll-enhanced .nav.nav--hidden{opacity:0;transform:translateY(-130%);pointer-events:none}
.scroll-enhanced .nav.nav--persistent{position:fixed;top:18px;opacity:1;transform:translateY(0);pointer-events:auto;animation:better-nav-return .52s cubic-bezier(.22,.8,.25,1) both}
.scroll-enhanced .nav.nav--expanding .brand-copy,.scroll-enhanced .nav.nav--expanding .nav-links,.scroll-enhanced .nav.nav--expanding .mobile{opacity:0;transform:translateY(-7px);pointer-events:none}
.scroll-enhanced .nav.nav--compact .nav-inner{width:76px;height:72px;padding:0;gap:0;margin-left:auto;margin-right:auto;justify-content:center;transform:translate3d(var(--heart-shift,0px),0,0);background:transparent;border-color:transparent;border-radius:0;box-shadow:none;backdrop-filter:none}
.scroll-enhanced .nav.nav--compact .brand-lockup{width:100%;height:100%;gap:0;justify-content:center;border-radius:18px}
.scroll-enhanced .nav.nav--compact .brand-copy,.scroll-enhanced .nav.nav--compact .nav-links,.scroll-enhanced .nav.nav--compact .mobile{display:none!important}
.scroll-enhanced .nav.nav--compact .v10-heart{width:56px;height:52px;filter:drop-shadow(0 9px 18px rgba(18,49,88,.26));transition:transform .22s ease,filter .22s ease}
.scroll-enhanced .nav.nav--heart-morphing .v10-heart{will-change:transform}
.scroll-enhanced .nav.nav--compact .brand-lockup:hover .v10-heart{transform:scale(1.07);filter:drop-shadow(0 11px 21px rgba(18,49,88,.32))}
.home-floating-heart{position:fixed;left:50%;top:18px;z-index:70;display:block;width:56px;height:52px;opacity:0;pointer-events:none;transform:translate3d(calc(-50% + var(--heart-shift,0px)),0,0);filter:drop-shadow(0 9px 18px rgba(18,49,88,.26));transition:opacity .24s ease,transform .52s cubic-bezier(.22,.8,.25,1),filter .22s ease}
.home-floating-heart-mark,.home-floating-heart-svg{display:block;width:100%;height:100%}
.home-floating-heart-svg{transition:transform .22s ease}
.home-heart-live .home-floating-heart{opacity:1;pointer-events:auto}
.home-heart-live .home-floating-heart:hover{filter:drop-shadow(0 11px 21px rgba(18,49,88,.32))}
.home-heart-live .home-floating-heart:hover .home-floating-heart-svg{transform:scale(1.07)}
.scroll-enhanced .nav.nav--home-floating .nav-inner{transition:width .62s cubic-bezier(.22,.8,.25,1),height .46s ease,padding .46s ease,gap .46s ease,transform .26s cubic-bezier(.22,.8,.25,1);background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none}
.scroll-enhanced .nav.nav--home-floating .v10-heart{opacity:0}
.motion-ready .reveal-item{opacity:0;transform:translate3d(0,30px,0);filter:blur(2px);transition:opacity .78s ease,transform .9s cubic-bezier(.2,.75,.2,1),filter .78s ease;transition-delay:var(--reveal-delay,0ms)}
.motion-ready .reveal-item.is-visible{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
.scroll-enhanced .service-row{transition:transform .42s cubic-bezier(.22,.8,.25,1),background-color .35s ease}
.scroll-enhanced .service-row:hover{transform:translateX(9px);background:rgba(255,255,255,.035)}
.scroll-enhanced .service-index{transition:transform .38s cubic-bezier(.22,.8,.25,1),color .3s ease}
.scroll-enhanced .service-row:hover .service-index{transform:rotate(-5deg) scale(1.06);color:#ffe28b}
.scroll-enhanced .step{position:relative;transition:opacity .35s ease}
.scroll-enhanced .step:before{content:"";position:absolute;left:-18px;top:26px;bottom:26px;width:3px;border-radius:99px;background:linear-gradient(180deg,var(--gold),var(--blush));transform:scaleY(0);transform-origin:center;transition:transform .42s cubic-bezier(.22,.8,.25,1)}
.scroll-enhanced .step-num,.scroll-enhanced .step h3{transition:transform .42s cubic-bezier(.22,.8,.25,1),color .35s ease}
.scroll-enhanced .step.is-current:before{transform:scaleY(1)}
.scroll-enhanced .step.is-current .step-num{transform:rotate(-5deg) scale(1.05);color:var(--gold)}
.scroll-enhanced .step.is-current h3{transform:translateX(7px)}
.scroll-enhanced .town strong{transition:transform .38s cubic-bezier(.22,.8,.25,1),color .3s ease}
.scroll-enhanced .town:hover strong{transform:translateX(6px);color:var(--pink)}
.scroll-enhanced .article img{transition:transform .85s cubic-bezier(.2,.75,.2,1),filter .5s ease}
.scroll-enhanced .article:hover img{transform:scale(1.045);filter:saturate(.95)}
@keyframes better-nav-return{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.scroll-enhanced .hero{height:calc(100vh - var(--announcement-height,32px));height:calc(100svh - var(--announcement-height,32px));margin-bottom:104px}.scroll-enhanced .hero-content{padding-top:112px;padding-bottom:138px}.hero-side-actions{left:14px;right:14px;bottom:18px;width:auto;grid-template-columns:1fr 1fr;padding:0}.hero-side-actions .btn{min-height:48px;padding:12px 15px}.scroll-enhanced .nav.nav--persistent{top:12px}.scroll-enhanced .story{border-radius:30px 30px 0 0;box-shadow:0 -18px 48px rgba(18,49,88,.19),0 -1px 0 rgba(255,255,255,.65)}.scroll-enhanced .nav.nav--compact .nav-inner{width:66px;height:64px;padding:0;border-radius:0}.scroll-enhanced .nav.nav--compact .brand-lockup{border-radius:0}.scroll-enhanced .nav.nav--compact .v10-heart{width:50px;height:46px}.home-floating-heart{top:12px;width:50px;height:46px}.scroll-enhanced .step:before{left:-8px}}
@media(max-width:620px){.hero-side-actions{grid-template-columns:1fr;gap:8px}.scroll-enhanced .hero-content{padding-bottom:154px}.hero-side-actions .btn{min-height:44px}.motion-ready .reveal-item{transform:translate3d(0,22px,0)}}
@media(max-width:620px){
  .scroll-enhanced .hero{height:calc(100svh - var(--announcement-height,52px));min-height:680px;margin-bottom:82px}
  .scroll-enhanced .hero-content{align-items:flex-start;padding-top:178px;padding-bottom:132px}
  .scroll-enhanced .hero-copy{max-width:92%}
  .scroll-enhanced .hero h1{font-size:clamp(48px,14.6vw,62px);line-height:.91;margin:16px 0 20px;max-width:7.3em}
  .scroll-enhanced .hero p{font-size:16px;line-height:1.45;max-width:21em}
  .scroll-enhanced .hero-media img{object-position:61% bottom}
  .scroll-enhanced .hero-media:before{background:linear-gradient(90deg,rgba(18,49,88,.84) 0%,rgba(18,49,88,.58) 52%,rgba(18,49,88,.12) 82%,rgba(18,49,88,.04) 100%),linear-gradient(0deg,rgba(18,49,88,.22),transparent 35%)}
  .hero-side-actions{left:28px;right:auto;bottom:126px;width:min(170px,calc(100% - 56px));grid-template-columns:1fr;gap:12px}
  .hero-side-actions .btn{min-height:56px;padding:11px 12px;font-size:10px;line-height:1.18;border-radius:14px;text-align:center}
  .scroll-enhanced .story{border-radius:24px 24px 0 0}
}
@media(max-width:430px){
  .scroll-enhanced .hero-content{padding-top:166px}
  .scroll-enhanced .hero h1{font-size:clamp(45px,14vw,56px)}
}
@media(max-width:620px) and (max-height:700px){.scroll-enhanced .hero-content{padding-top:92px;padding-bottom:142px}.scroll-enhanced .hero h1{font-size:clamp(43px,13vw,54px);margin:14px 0 16px}.scroll-enhanced .hero p{font-size:15px}.hero-side-actions{bottom:86px}.hero-side-actions .btn{min-height:48px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){.scroll-enhanced .story{transform:none!important;transition:none}.scroll-enhanced .nav,.scroll-enhanced .nav-inner,.home-floating-heart,.home-floating-heart-svg{transition:none}.scroll-enhanced .nav.nav--persistent{animation:none}.motion-ready .reveal-item{opacity:1;transform:none;filter:none;transition:none}.scroll-enhanced .service-row:hover,.scroll-enhanced .article:hover img,.scroll-enhanced .town:hover strong{transform:none}}
