/* Isolated direction proof. All representational imagery is Blender geometry. */
.frozen{position:relative;background:#142633;color:#f2f6f7;--frozen-photo:1}
.frozen-stage{position:relative;height:max(700px,calc(100svh - 80px));overflow:hidden;isolation:isolate}
.frozen-photo,.frozen-canvas{position:absolute;inset:0;margin:0}
.frozen-photo img{width:100%;height:100%;object-fit:contain;object-position:center;background:#142633}
.frozen-photo{opacity:var(--frozen-photo);z-index:2;pointer-events:none}
.frozen-canvas{z-index:1;opacity:0}.frozen-canvas canvas{display:block;width:100%;height:100%}
.frozen-cover-copy{position:absolute;z-index:3;left:4vw;top:12%;opacity:var(--frozen-photo);color:#fff;text-shadow:0 2px 18px #0009}
.frozen-cover-copy h1{font-family:Cormorant,Georgia,serif;font-size:clamp(4rem,9vw,10rem);font-weight:400;letter-spacing:-.055em;line-height:.88;margin:0 0 2rem}
.frozen-cover-copy a{font-size:1rem}
.frozen-load{position:absolute;z-index:5;inset:auto 0 5rem;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:1rem;padding:1rem}
.frozen-load button{border:1px solid #e1edef70;background:#102934;color:#fff;padding:1rem 1.8rem;font-size:1rem;min-height:48px}
.frozen-load button[hidden]{display:none}.frozen-load button:disabled{opacity:.6;cursor:default}
.frozen-load p{margin:0;max-width:35rem;font-size:.875rem;line-height:1.5;background:#142633;padding:.3rem .6rem}.frozen-load p:empty{display:none}
.frozen-notice{position:absolute;top:1.5rem;left:4vw;right:4vw;z-index:6;display:flex;justify-content:space-between;gap:1rem;font-size:.875rem}
.frozen-notice span,.frozen-notice a{background:#142633e8;padding:.35rem .6rem}.frozen-notice a{margin-left:auto}
.frozen-nav{display:none;position:absolute;inset:auto 4vw 1.5rem;z-index:6;align-items:center;gap:2rem;font-size:.875rem}
.frozen-nav>span{min-width:11rem}.frozen-nav>a{margin-left:auto;white-space:nowrap}
.frozen-steps{display:flex;gap:.35rem}
.frozen-steps button{position:relative;width:48px;height:44px;border:0;background:none;color:inherit;font-size:.8rem}
.frozen-steps button:after{content:'';position:absolute;bottom:0;left:7px;right:7px;border-bottom:1px solid #c6d9e24d}
.frozen-steps button[aria-current=step]:after{border-color:#fff;border-width:2px}
.frozen-steps button[aria-current=step]{color:white}.frozen-steps button:not([aria-current=step]){color:#bfd0d8}
.frozen-enabled{height:620svh;--frozen-photo:0}
.frozen-enabled .frozen-stage{position:sticky;top:0;height:100svh;min-height:0}
.frozen-enabled .frozen-canvas{opacity:1}.frozen-enabled .frozen-nav{display:flex}
.frozen-caption{margin:0;padding:1rem 4vw;background:#142633;font-size:.875rem;line-height:1.5}
.frozen button:focus-visible,.frozen a:focus-visible{outline:2px solid white;outline-offset:4px}
@media(max-width:700px){.frozen-stage{height:calc(100svh - 65px);min-height:620px}.frozen-cover-copy{top:18%;left:1.5rem}.frozen-cover-copy h1{font-size:4.5rem}.frozen-notice{inset:1rem 1rem auto;font-size:.75rem}.frozen-nav{inset:auto 1rem 1rem;gap:.25rem;flex-wrap:wrap}.frozen-nav>span{width:100%;font-size:.875rem}.frozen-nav>a{font-size:.75rem}.frozen-steps button{width:40px}.frozen-enabled{height:520svh}.frozen-caption{padding-inline:1.5rem}}
@media(prefers-reduced-motion:reduce){.frozen-enabled{height:auto}.frozen-enabled .frozen-stage{position:relative}.frozen-canvas,.frozen-nav{display:none!important}.frozen-photo,.frozen-cover-copy{opacity:1}}
@media print{.frozen{height:auto!important}.frozen-stage{height:450px!important;min-height:0;position:relative!important}.frozen-canvas,.frozen-load,.frozen-nav,.frozen-notice{display:none!important}.frozen-photo,.frozen-cover-copy{opacity:1!important}}

/* Second direction pass: title and navigation share the scene's rhythm. */
.frozen-whisper{display:none;position:absolute;z-index:3;left:var(--editorial-gutter,5vw);top:21%;margin:0;font-family:SourceSerif,Georgia,serif;font-size:clamp(4rem,8.5vw,9rem);line-height:.96;letter-spacing:-.06em;pointer-events:none;opacity:var(--frozen-title,1)}
.frozen-whisper em{font-weight:400}
.frozen-enabled .frozen-whisper{display:block}
.frozen-cover-copy{font-family:SourceSerif,Georgia,serif;left:var(--editorial-gutter,5vw);top:16%;text-shadow:0 2px 24px #10202d80}
.frozen-cover-copy h1{font-family:inherit;line-height:.98;letter-spacing:-.055em}
.frozen-notice{top:2rem;font-size:.75rem;letter-spacing:.06em;align-items:center}
.frozen-notice span,.frozen-notice a{background:none;padding:0;text-shadow:0 1px 8px #142633}
.frozen-notice a{opacity:.8;font-size:.75rem;letter-spacing:0}
.frozen-caption{font-size:.75rem;text-align:right;padding-block:1.3rem;color:#d0dde3}
.frozen-nav{bottom:2rem;padding-top:1rem;border-top:1px solid #e1eef133}
.frozen-nav>span{font-size:.8125rem;letter-spacing:.02em}
.frozen-steps button{font-size:.75rem}
.frozen-enabled{height:520svh}
@media(max-width:700px){.frozen-enabled{height:460svh}.frozen-whisper{font-size:clamp(3.5rem,14vw,5.4rem);top:16%;left:1.5rem}.frozen-cover-copy{top:13%;left:1.5rem}.frozen-cover-copy h1{font-size:clamp(3.5rem,14vw,5.4rem)}.frozen-notice{top:1rem;gap:.75rem;letter-spacing:0}.frozen-notice span{max-width:11rem}.frozen-nav{bottom:1rem;padding-top:.65rem}.frozen-caption{text-align:left;line-height:1.6}}
@media(prefers-reduced-motion:reduce){.frozen-enabled{height:auto}.frozen-whisper{display:none!important}}
@media print{.frozen-whisper{display:none!important}}
