@font-face{font-family:C21 Manrope;src:url('assets/manrope-vf.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:C21 Instrument;src:url('assets/instrument-serif.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
/* Hero-only editorial treatment. Geometry stays intact under Reduce Motion. */
.c21h-hero{--c21h-ink:#24352f;--c21h-paper:#f8f6f0;--c21h-gutter:6vw;color:var(--c21h-ink);font-family:'C21 Manrope',sans-serif;background:#9bcee4;position:relative;isolation:isolate;box-sizing:border-box}
.c21h-hero *{box-sizing:border-box}.c21h-hero a{color:inherit;text-decoration:none}.c21h-hero button,.c21h-hero input{font:inherit}.c21h-hero :focus-visible{outline:2px solid #806529;outline-offset:5px}.c21h-hero button,.c21h-hero a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.c21h-stage{position:relative;height:100svh;min-height:600px;overflow:clip}.c21h-hero.is-enhanced{height:300svh;min-height:1800px}.c21h-hero.is-enhanced .c21h-stage{position:sticky;top:0}
.c21h-scene{position:absolute;inset:0;pointer-events:none}.c21h-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#f7ecd112,transparent 40%,#16282405 58%,#162824b8 100%)}
.c21h-poster,.c21h-poster img,.c21h-film{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:57% 50%}.c21h-film{opacity:0}.c21h-film.is-ready{opacity:1}
.c21h-editorial{position:absolute;top:calc(76px + 4.8svh);left:var(--c21h-gutter);right:var(--c21h-gutter);z-index:2;pointer-events:none}.c21h-kicker{font-size:9px;font-weight:600;letter-spacing:.23em;margin:0 0 22px;line-height:1.5}.c21h-kicker span{margin:0 17px;opacity:.65}.c21h-editorial h1{font-family:'C21 Instrument',Georgia,serif;font-weight:400;letter-spacing:-.027em;line-height:1.04;margin:0;max-width:1100px}.c21h-title-intro{display:block;font-size:clamp(29px,2.65vw,48px);margin-bottom:4px}.c21h-title-main{display:block;font-size:clamp(39px,4.35vw,77px)}.c21h-phone-break{display:none}
/* Flat ivory panel; the location field is a typographic line, not a nested box. */
.c21h-search-wrap{position:absolute;left:var(--c21h-gutter);bottom:96px;width:min(610px,56vw);z-index:3;padding:0 23px 19px;background:var(--c21h-paper);border-top:2px solid #b4a075;border-radius:1px;box-shadow:0 12px 35px #182b2414}
.c21h-intents{display:flex;align-items:center;gap:34px;border-bottom:1px solid #d8d4c8;margin-bottom:14px}.c21h-intents a{min-height:49px;min-width:44px;display:inline-flex;align-items:center;font-size:10px;letter-spacing:.10em;font-weight:550;white-space:nowrap}.c21h-search{display:flex;align-items:stretch;gap:24px;margin:0}.c21h-search label{flex:1;min-width:0;padding:0}.c21h-search label>span{display:block;font-size:9px;letter-spacing:.07em;line-height:1.3;font-weight:550;color:#555d55}.c21h-search input{display:block;border:0;border-radius:0;min-height:44px;width:100%;background:transparent;color:var(--c21h-ink);font-size:18px;font-weight:400;outline-offset:0;padding:3px 0 0}.c21h-search input::placeholder{color:#465347;opacity:1}
.c21h-scene-note{position:absolute;right:var(--c21h-gutter);bottom:116px;z-index:2;color:#fffdf4;display:grid;gap:12px;text-align:right;padding:15px 0 0;border-top:1px solid #ddd0aa88}.c21h-scene-index{font-size:9px;letter-spacing:.20em;font-weight:500}.c21h-disclosure{font-size:11px;letter-spacing:.015em;color:#fffdf4}
.c21h-foot{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:var(--c21h-gutter);right:var(--c21h-gutter);z-index:3;display:flex;align-items:center;gap:25px;color:#fffdf4}.c21h-scroll-cue{font-size:10px;font-weight:500;letter-spacing:.13em;min-width:138px}.c21h-progress{width:94px;height:1px;background:#fff5;overflow:hidden}.c21h-progress-fill{display:block;width:100%;height:100%;background:#e3d4ad;transform:scaleX(0);transform-origin:left}.c21h-play{margin-left:auto}.c21h-hero a:active{opacity:.7}
@media(hover:hover) and (pointer:fine){.c21h-intents a:hover{text-decoration:underline;text-decoration-color:#a38a55;text-underline-offset:7px}}
@media(max-width:900px){.c21h-search-wrap{width:min(550px,64vw)}.c21h-scene-note{max-width:22vw}.c21h-scene-index{line-height:1.7}}
@media(max-width:760px){.c21h-hero{--c21h-gutter:6vw}.c21h-stage{min-height:568px}.c21h-hero.is-enhanced{min-height:1704px}.c21h-editorial{top:calc(68px + 2svh)}.c21h-kicker{font-size:8px;letter-spacing:.13em;margin-bottom:12px}.c21h-kicker span{margin-inline:8px}.c21h-title-intro{font-size:clamp(27px,7.5vw,48px);margin-bottom:5px}.c21h-title-main{font-size:clamp(34px,9.6vw,65px);line-height:1.02}.c21h-phone-break{display:initial}.c21h-search-wrap{width:auto;left:var(--c21h-gutter);right:var(--c21h-gutter);bottom:108px;padding:0 16px 14px}.c21h-intents{gap:18px;justify-content:space-between;margin-bottom:13px}.c21h-intents a{font-size:9px;letter-spacing:.035em;min-height:44px}.c21h-search{gap:10px}.c21h-search input{font-size:16px}.c21h-search label>span{font-size:8px;letter-spacing:.04em}.c21h-scene-note{bottom:78px;left:var(--c21h-gutter);right:auto;max-width:none;display:block;border:0;padding:0;text-align:left}.c21h-scene-index{display:none}.c21h-disclosure{font-size:10px}.c21h-foot{bottom:max(15px,env(safe-area-inset-bottom));gap:13px}.c21h-scroll-cue{font-size:9px;min-width:0;letter-spacing:.04em}.c21h-progress{width:38px}}
@media(max-height:560px) and (orientation:landscape){.c21h-stage{min-height:100svh}.c21h-hero.is-enhanced{min-height:300svh}.c21h-editorial{top:76px}.c21h-kicker{font-size:8px;margin-bottom:10px}.c21h-title-intro{font-size:25px}.c21h-title-main{font-size:36px;max-width:55vw}.c21h-phone-break{display:initial}.c21h-search-wrap{bottom:72px;left:auto;right:var(--c21h-gutter);width:360px;max-width:45vw;padding:0 14px 12px}.c21h-intents{gap:10px;margin-bottom:8px}.c21h-intents a{font-size:9px;letter-spacing:0;min-height:44px}.c21h-search{gap:8px}.c21h-search input{font-size:16px}.c21h-search label>span{display:none}.c21h-scene-note{left:var(--c21h-gutter);right:auto;bottom:75px;max-width:40vw;border:0}.c21h-scene-index{display:none}.c21h-disclosure{font-size:10px}.c21h-foot{bottom:8px}}

/* Short portrait phones: retain a clear gap above the roofline. */
@media(max-width:760px) and (max-height:650px) and (orientation:portrait){.c21h-editorial{top:calc(68px + 3svh)}.c21h-kicker{display:none}.c21h-title-intro{font-size:27px}.c21h-title-main{font-size:34px}}

/* User-driven closing signature: never an autonomous animation. */
.c21h-brand-reveal{position:absolute;inset:0;z-index:2;display:grid;place-items:center;opacity:0;pointer-events:none}
.c21h-brand-reveal:before{content:"";position:absolute;inset:0;background:#091a225c}
.c21h-brand-lockup{position:relative;display:grid;justify-items:center;gap:clamp(19px,2.3vw,34px);width:clamp(235px,43vw,640px);transform:translate3d(0,14px,0) scale(.96)}
.c21h-brand-lockup img{display:block;width:100%;height:auto}
.c21h-brand-lockup>span{color:#efe8d7;font-size:clamp(10px,1vw,14px);letter-spacing:.62em;padding-left:.62em;font-weight:400}
.c21h-search-wrap[aria-hidden=true]{visibility:hidden;pointer-events:none}
@media(max-width:760px){.c21h-brand-lockup{width:min(76vw,420px);gap:21px}}
