#top.hb-full-hero{height:calc(100svh - 96px);min-height:780px;max-height:1080px;position:relative;isolation:isolate;overflow:hidden;background:#15101d;color:#fff}
.hb-full-hero .hb-backdrop{position:absolute;inset:0;z-index:-3;display:block}.hb-full-hero .hb-backdrop img{width:100%;height:100%;object-fit:cover;object-position:center;animation:hb-photo-arrival 14s ease-out both}
.hb-full-hero .hb-full-overlay{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.50) 44%,rgba(0,0,0,.12) 78%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 42%)}
.hb-full-hero .hb-full-copy{position:relative;padding:0 5%;height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:1600px;margin:auto}
.hb-full-hero .hb-full-kicker{color:#e5d4ff;font-size:11px;font-weight:700;letter-spacing:.23em;margin-bottom:28px}
.hb-full-hero h1{font-size:clamp(27px,3.6vw,58px);font-weight:650;line-height:1.35;letter-spacing:-.055em;color:#fff;margin:0;text-shadow:0 2px 20px #0005}
.hb-full-hero h1 span{display:block;white-space:nowrap}.hb-full-hero h1 span:first-child{font-size:.80em;font-weight:500;margin-bottom:8px}
.hb-full-hero .hb-full-lead{font-size:17px;line-height:1.9;color:#e7dfe9;margin:27px 0 32px}.hb-full-hero .hb-full-actions{display:flex;align-items:center;gap:26px}.hb-full-hero .hb-full-primary{display:inline-flex;align-items:center;gap:45px;min-height:56px;padding:15px 25px;background:#d4b9ff;color:#251535;border:1px solid #d4b9ff;font-size:14px;font-weight:700}.hb-full-hero .hb-full-primary:hover{background:#e6d5ff}.hb-full-hero .hb-full-phone{font-size:14px;border-bottom:1px solid #b39bbf;padding:12px 0}.hb-full-hero .hb-mo-phone{display:none}.hb-full-hero .hb-full-bottom{position:absolute;bottom:28px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.15em;color:#e0d3e8}
@keyframes hb-photo-arrival{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(max-width:760px){#top.hb-full-hero{height:820px;min-height:0;max-height:none}.hb-full-hero .hb-full-copy{justify-content:flex-end;padding:0 5% 110px}.hb-full-hero h1{font-size:clamp(18px,4.3vw,32px);letter-spacing:-.065em}.hb-full-hero h1 span:first-child{font-size:1.02em}.hb-full-hero .hb-full-kicker{font-size:9px;margin-bottom:18px}.hb-full-hero .hb-full-lead{font-size:14px;margin:19px 0 25px}.hb-full-hero .hb-full-overlay{background:linear-gradient(0deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.72) 23%,rgba(0,0,0,.16) 66%,rgba(0,0,0,.18) 100%)}.hb-full-hero .hb-full-primary{font-size:13px;min-height:50px;padding:12px 20px;gap:24px}.hb-full-hero .hb-full-phone{font-size:12px}.hb-full-hero .hb-pc-phone{display:none}.hb-full-hero .hb-mo-phone{display:inline}.hb-full-hero .hb-full-actions{gap:24px}.hb-full-hero .hb-full-bottom{font-size:8px;bottom:30px}.hb-full-hero .hb-backdrop img{object-position:62% top}}
@media(prefers-reduced-motion:reduce){.hb-full-hero .hb-backdrop img{animation:none}}
/* Viewport-fixed picture clipped to the hero; top alignment preserves headroom. */
#top.hb-full-hero{clip-path:inset(0)}
.hb-full-hero .hb-backdrop{position:fixed;inset:96px 0 auto;height:clamp(780px,calc(100svh - 96px),1080px);pointer-events:none}
.hb-full-hero .hb-backdrop img{object-position:center top;animation:none;transform:none}
@media(max-width:760px){.hb-full-hero .hb-backdrop{top:76px;height:820px}.hb-full-hero .hb-backdrop img{object-position:62% top}}

/* Keep the complete hero copy and action group vertically centered. */
.hb-full-hero .hb-full-copy{justify-content:center;padding-top:60px;padding-bottom:60px}
.hb-full-hero h1{font-size:clamp(30px,4vw,64px)}
@media(max-width:760px){.hb-full-hero .hb-full-copy{justify-content:center;padding:60px 5%}.hb-full-hero h1{font-size:clamp(18px,5.2vw,34px)}.hb-full-hero h1 span:first-child{font-size:.92em}.hb-full-hero .hb-full-overlay{background:linear-gradient(0deg,rgba(0,0,0,.65),rgba(0,0,0,.48) 55%,rgba(0,0,0,.24))}}

/* Candid bar scene: preserve the staff face on narrow screens. */
@media(max-width:760px){.hb-full-hero .hb-backdrop img{object-position:74% top}}

/* Raise the desktop framing while keeping the bottom fully covered. */
@media(min-width:761px){
 .hb-full-hero .hb-backdrop img{height:calc(100% + 110px);transform:translateY(-110px);object-position:center top}
}
