/* Homepage-only brand introduction. Original logo, normal document flow. */
.brand-home .brand-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(28px,5vw,72px);padding-block:56px 52px}
.brand-hero .agency-visual{width:100%;min-width:0;padding:0}
.brand-hero .agency-panel{animation:none;padding:28px 24px 30px;background:#fff;box-shadow:0 22px 60px #096b7c12;border-radius:32px}
.brand-hero .brand-reveal{display:block;width:100%;height:auto;aspect-ratio:3/2;margin:18px auto 22px;max-width:460px}
.brand-hero h1{font-size:clamp(38px,4.4vw,66px);line-height:1.08}
.brand-hero .hero-copy{min-width:0}
.brand-hero .hero-note{margin-top:24px}
.brand-hero .agency-panel h2{font-size:clamp(23px,2.4vw,30px)}
.brand-hero .agency-video{margin-inline:0}
.brand-hero .welcome-scroll{display:inline-flex;margin-top:22px}
.brand-hero .hero-season-link{margin-top:12px}
.welcome-actions{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px 6vw 42px;border-top:1px solid #dceff0}
.welcome-actions>div{min-width:0}
.welcome-actions h2{font-size:clamp(25px,2.4vw,33px);margin:0 0 12px;line-height:1.2}
.welcome-actions p:not(.eyebrow){max-width:490px;font-size:14px;color:#536b72;margin:0}
.welcome-actions .eyebrow{font-size:10px;margin-bottom:12px}
.welcome-actions .booking-actions{margin:0;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.welcome-actions .button{font-size:13px;white-space:normal;text-align:center;justify-content:center;min-height:48px}

@media(max-width:1000px){.welcome-actions{flex-direction:column;align-items:flex-start}.welcome-actions .booking-actions{justify-content:flex-start}}
@media(max-width:760px){.brand-home .brand-hero{grid-template-columns:minmax(0,1fr);padding:30px 24px 36px;gap:36px}.brand-hero .agency-visual{max-width:460px}.brand-hero .brand-reveal{max-width:360px;margin-block:14px 18px}.brand-hero .agency-panel{padding:23px 20px}.brand-hero h1{font-size:clamp(36px,8vw,54px)}.welcome-actions{padding:30px 24px 36px}.welcome-actions .booking-actions{width:100%}.welcome-actions .button{flex:1 1 230px}}
@media(prefers-reduced-motion:reduce){.brand-hero .brand-reveal{animation:none;opacity:1;clip-path:none;transform:none}}
@media(max-width:480px){.welcome-actions .button{flex:0 1 auto}}

/* Formation uses clipped copies of the exact source image; no redrawn mark. */
.brand-reveal .brand-pieces{display:none}
.brand-reveal .brand-complete{opacity:1}
.brand-reveal .brand-trace{stroke-dasharray:100 100;stroke-dashoffset:0}
/* If the enhancement cannot start, the full logo recovers without JavaScript. */
@media(prefers-reduced-motion:no-preference){
 .brand-motion-pending .brand-complete{animation:brand-safe-return .2s 3.5s both}
 .brand-forming .brand-pieces{display:inline}
 .brand-forming .brand-complete{animation:brand-settle .18s 2.92s both}
 .brand-forming .brand-heart{transform-box:view-box;transform-origin:548px 393px;animation:brand-heart-birth .7s cubic-bezier(.2,.75,.3,1) both}
 .brand-forming .brand-trace{animation:brand-draw .88s cubic-bezier(.38,.05,.3,1) both}
 .brand-forming .brand-trace-tl,.brand-forming .brand-trace-tr{animation-delay:.25s}
 .brand-forming .brand-trace-bl,.brand-forming .brand-trace-br{animation-delay:1.02s}
 .brand-forming .brand-letter{animation:brand-letter-birth .75s cubic-bezier(.16,.8,.24,1) both}
 .brand-forming .brand-letter-0{animation-delay:1.30s}
 .brand-forming .brand-letter-1{animation-delay:1.40s}
 .brand-forming .brand-letter-2{animation-delay:1.50s}
 .brand-forming .brand-letter-3{animation-delay:1.60s}
 .brand-forming .brand-letter-4{animation-delay:1.70s}
 .brand-forming .brand-letter-5{animation-delay:1.80s}
 .brand-forming .brand-letter-6{animation-delay:1.90s}
 .brand-forming .brand-descriptor{animation:brand-descriptor-birth .65s 2.18s ease-out both}
}
@keyframes brand-safe-return{from{opacity:0}to{opacity:1}}
@keyframes brand-settle{from{opacity:0}to{opacity:1}}
@keyframes brand-heart-birth{0%{opacity:0;transform:scale(.3)}65%{opacity:1}100%{opacity:1;transform:scale(1)}}
@keyframes brand-draw{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes brand-letter-birth{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes brand-descriptor-birth{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
 .brand-reveal .brand-pieces{display:none!important}
 .brand-reveal .brand-complete{animation:none!important;opacity:1!important}
}
