/* Scoped art direction for the Oceanfront Residence commission.
   Every Home shares a centered reading axis, including commissioned openings. */
#heroLayer[data-hero-experience] {isolation:isolate;background:#15252c}
.ch-stage{--ch-scale:1;--ch-pan-x:0px;--ch-pan-y:0px;--ch-tilt:0deg;position:absolute;inset:0;color:#fff5e8;overflow:hidden;--ch-bottom:calc(var(--foot-h,54px) + var(--hud-h,64px) + 44px)}
.ch-world,.ch-architecture,.ch-camera,.ch-shade{position:absolute;inset:0;pointer-events:none}
.ch-world{z-index:0;background:#15252c}.ch-camera{transform:perspective(2000px) translate3d(var(--ch-pan-x),var(--ch-pan-y),0) rotateY(var(--ch-tilt)) scale(var(--ch-scale));transform-origin:34% 56%;will-change:transform}
.ch-photo{position:absolute;left:var(--ch-image-x,0px);top:var(--ch-image-y,0px);width:var(--ch-image-w,100%);height:var(--ch-image-h,100%);max-width:none;object-fit:cover;opacity:0;transition:opacity .65s ease}
.ch-loaded .ch-photo{opacity:1}.ch-shade{z-index:4;background:linear-gradient(180deg,rgba(5,12,16,.3),rgba(5,12,16,.24) 45%,rgba(5,12,16,.72))}
.ch-heading{width:100%;max-width:1200px;margin-bottom:24px;pointer-events:none}
.ch-eyebrow{margin:0 0 20px;font-family:var(--mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:#f2d1a8}
#chTitle{margin:0;font-family:'Bodoni 72',Didot,'Times New Roman',serif;font-weight:400;font-size:clamp(64px,min(10.5vw,12vh),170px);letter-spacing:-.055em;line-height:.89;text-shadow:0 3px 35px #09131980;text-wrap:balance;overflow-wrap:anywhere}
.ch-line{display:block;overflow:hidden;padding:0 .02em .17em 0;margin-bottom:-.17em;perspective:900px}.ch-word{display:block;transform-origin:50% 100%;will-change:transform,opacity}
.ch-line:nth-child(2){font-style:italic;font-size:.83em;letter-spacing:-.052em;margin-top:.07em}
.ch-architecture{z-index:3}.ch-foreground{clip-path:polygon(100% 14%,92% 13%,53.4% 30%,53.4% 35%,48% 32%,39% 35%,39% 37%,42% 38%,42% 44%,38% 47%,38% 53%,42% 55%,43% 61%,37% 69%,32% 74%,28% 77%,36% 82%,52% 90%,64% 100%,100% 100%)}
.ch-story{width:100%;max-width:720px;display:flex;flex-direction:column;align-items:center}
.ch-introduction{font-family:var(--sans);font-size:14px;line-height:1.8;max-width:680px;color:#f5ebdf;margin:0 auto 22px;text-wrap:pretty;text-shadow:0 1px 16px #071013}
.ch-actions{display:flex;justify-content:center;gap:24px;align-items:center}.ch-stage button{font-family:var(--sans);color:inherit;cursor:pointer;border:0;background:none;min-height:44px}.ch-stage button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.ch-enter{display:flex;align-items:center;gap:20px;border-bottom:1px solid #eee2d6!important;padding:0 0 8px!important;font-size:14px;white-space:nowrap}.ch-enter>span:last-child{display:grid;place-items:center;width:45px;height:45px;border:1px solid #e8d2b7;border-radius:50%;font-size:25px;transition:background .2s,color .2s,transform .2s}.ch-enter:hover>span:last-child{background:#eee2d6;color:#102128;transform:rotate(45deg)}
.ch-caption{position:absolute;right:5.2%;bottom:calc(var(--ch-bottom) + 6px);z-index:5;display:grid;grid-template-columns:70px auto;gap:9px 18px;font-size:11px;text-shadow:0 1px 12px #071013}.ch-caption-line{height:1px;align-self:center;background:#eee2d680}.ch-caption small{grid-column:2;font-size:9px;letter-spacing:.06em;color:#d7c7b3}
body.has-custom-hero #instRail,body.has-custom-hero #scanlines{display:none}
/* the Home buttons keep their glass inside the opening (the stage's bare-button reset had stripped every one but the
   first — Michael 10-11: "the buttons look odd") */
.ch-stage .vh-door:not(.is-primary){border:1px solid rgba(255,255,255,.2);background:rgba(8,12,16,.46)}
.ch-stage .vh-door:not(.is-primary):is(:hover,:focus-visible){background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.38)}
.ch-settled .ch-camera{will-change:auto}
/* Flexible spacers center the group when it fits and collapse on short screens. */
.ch-content{position:absolute;z-index:5;inset:calc(var(--sales-header-h,100px) + 52px) 0 var(--ch-bottom);display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 6vw;overflow-y:auto;overscroll-behavior:contain}
.ch-content::before,.ch-content::after{content:"";flex:1 1 0;min-height:0}
.ch-content>*{flex:none}
.ch-story .home-info-nav{justify-content:center;gap:8px;margin:18px auto 0}
.ch-story .home-info-nav button{font-size:11px;padding:9px 13px;min-height:44px;color:inherit;border:1px solid var(--line-bright);background:var(--panel)}
@media(max-width:1100px),(max-height:850px){.ch-caption{display:none}}
@media(max-width:719px){
 .ch-content{padding:12px 24px}
 .ch-heading{margin-bottom:20px}.ch-eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:18px}
 #chTitle{font-size:clamp(44px,12.8vw,92px);line-height:.94;letter-spacing:-.06em}
 .ch-line:nth-child(2){font-size:1.1em;margin-top:0}
 .ch-introduction{font-size:12px;line-height:1.65;max-width:100%;margin-bottom:14px}
 .ch-enter{font-size:12px;gap:12px}.ch-enter>span:last-child{width:40px;height:40px;font-size:23px}
.ch-foreground{opacity:0!important}
 .ch-story .home-info-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(360px,100%)}
}
@media(max-height:760px) and (min-width:720px){.ch-content{padding-top:8px;padding-bottom:8px}#chTitle{font-size:clamp(52px,9vh,90px)}.ch-eyebrow{margin-bottom:10px}.ch-heading{margin-bottom:16px}.ch-introduction{font-size:12px;margin-bottom:10px}.ch-story .home-info-nav{margin-top:12px}}
@media(max-height:740px) and (max-width:719px){.ch-eyebrow{display:none}#chTitle{font-size:44px}.ch-introduction{font-size:11px;margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.ch-camera{transform:none!important;will-change:auto}.ch-photo{transition:none}.ch-word{transform:none!important;opacity:1!important;will-change:auto}.ch-enter>span:last-child{transition:none}.ch-enter:hover>span:last-child{transform:none}}
