/* A+ supplied material system, plus functional and responsive states. */
html,body{height:auto;min-height:100%;overflow:visible;overflow-x:clip;scroll-behavior:auto}
body{--surface:rgba(11,12,15,.92);--field:#16171c;--focus:#d3d7fa;--logo-color:#f2f1ec}
::selection{background:#8e96d2;color:#0b0c0f}
:focus-visible{outline:2px solid var(--focus);outline-offset:5px}
:focus:not(:focus-visible){outline:none}
a{color:inherit;text-decoration:none;text-underline-offset:.25em}
button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button,.btn{border:0;min-height:44px}button:disabled{cursor:wait;opacity:.65}
.btn.s{border:1px solid var(--t2);background:transparent}.btn:hover{filter:brightness(1.15)}.btn:active{filter:brightness(.9)}a:not(.btn):hover{text-decoration:underline}
.sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{position:fixed;top:12px;left:12px;width:auto;height:auto;clip-path:none;padding:12px 20px;background:var(--base);z-index:100}
#header{height:72px;position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - 1248px)/2));background:linear-gradient(var(--surface),transparent)}
#header.scrolled{background:var(--surface);border-bottom:1px solid var(--rule)}
nav{position:static;height:auto;padding:0;background:none}nav ul{display:flex;gap:24px;list-style:none;font-size:13px;color:var(--t2);align-items:center}nav a{display:inline-flex;align-items:center;min-height:44px}
.desktop-nav{display:flex;gap:28px;align-items:center}.wm{display:block;color:var(--logo-color)!important}.home{display:block;min-height:44px;align-content:center}
#menu-toggle{display:none;background:none;border:1px solid var(--rule);padding:8px 14px;border-radius:24px}#mobile-menu{position:fixed;inset:72px 0 auto;width:100%;max-width:none;max-height:calc(100svh - 72px);padding:24px;background:var(--base);color:var(--text);border:0;border-bottom:1px solid var(--rule);z-index:49}#mobile-menu ul{display:grid;gap:12px;margin-bottom:20px;font-size:22px}#mobile-menu a{width:100%}
#journey{position:relative;padding:110px 24px 50px}#stage{position:relative;inset:auto;overflow:visible}#layout{position:relative}#scene,#bloom,#chips,#tags,#blanks,.scrimL,#rail{display:none}#world{position:relative;inset:auto;perspective:none;transform:none}.k{position:relative;inset:auto;transform:none;will-change:auto;max-width:100%}.beat{position:relative;padding:80px max(0px,calc((100% - 1100px)/2));min-height:100svh;display:flex;flex-direction:column;justify-content:center;gap:28px}.reading .beat>.k{width:100%!important;max-width:760px}#start{min-height:100svh}#answer-beat{padding-top:20px}.beat .disp{max-width:100%}
.enhanced #journey{height:1000svh;padding:0}.enhanced #stage{position:sticky;top:0;height:100svh;width:100%;overflow:hidden}.enhanced #layout{position:absolute;width:1440px;height:900px;transform-origin:top left;isolation:isolate}.enhanced #scene,.enhanced #bloom,.enhanced #world{position:absolute;inset:0;display:block}.enhanced #world{perspective:1500px;perspective-origin:50% 45%;transform-style:preserve-3d}.enhanced .k{position:absolute;left:0;top:0;max-width:none;will-change:transform,opacity}.enhanced .beat{display:contents}.enhanced #chips,.enhanced #tags,.enhanced #blanks,.enhanced .scrimL{display:block}.enhanced #rail{display:block;position:absolute}
#scene{background:var(--base)}#scene canvas{display:block}#bloom{width:100%;height:100%}.rail{left:96px;right:96px;bottom:60px}.rail .f{width:100%;transform-origin:left;transform:scaleX(0)}
.scene-controls{position:fixed;right:32px;bottom:24px;display:flex;align-items:center;padding:4px;background:var(--surface);border:1px solid var(--rule);border-radius:28px;z-index:60}.scene-controls button{background:none;border:0;border-radius:50%;width:44px;height:44px;padding:11px;color:var(--t2);display:grid;place-items:center}.scene-controls button:hover,.scene-controls button[aria-pressed="true"],.scene-controls button[aria-checked="true"]{background:var(--rule);color:var(--text)}.scene-controls svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.scene-divider{height:20px;width:1px;background:var(--rule);margin:0 4px}.atmosphere-options{display:flex}.atmosphere-knob{display:none}.play-glyph,.sound-on{display:none}.scene-pause[aria-pressed="true"] .pause-glyph,.scene-sound[aria-pressed="true"] .sound-off{display:none}.scene-pause[aria-pressed="true"] .play-glyph,.scene-sound[aria-pressed="true"] .sound-on{display:block}.scene-controls.reduced .scene-pause,.scene-controls.reduced .scene-sound,.scene-controls.reduced .scene-divider{display:none}
.field{height:44px;min-width:0;max-width:100%;border-color:var(--t2);background:var(--field);color:var(--text);caret-color:var(--acc);padding:10px 12px;appearance:auto}textarea.field{height:80px;resize:vertical}select.field{padding-right:22px}.field:user-invalid{border-color:#eca6a6}#form-thanks{margin-top:24px;padding:24px;border:1px solid var(--acc);border-radius:16px}.flabel{color:var(--t2)}#form .fg{margin-top:4px}
#decision{background:var(--field)!important}#approval-status{white-space:nowrap;color:var(--text)}#answer .label,#answer p:last-child{color:var(--t2)!important}#decision .label+ p span{color:var(--acchi)!important}#answer.approved #decision{box-shadow:0 0 0 1px var(--acc),0 0 46px rgba(142,150,210,.18)!important}#answer.approved #approve{background:var(--text)}#answer.approved #later{display:none}#answer.approved #decision>div:last-child{grid-template-columns:1fr}
footer{padding:90px max(24px,calc((100vw - 1248px)/2)) 110px;background:var(--base);position:relative;z-index:2;border-top:1px solid var(--rule)}footer>.disp{font-size:clamp(30px,4vw,56px);margin:44px 0}footer nav{margin-bottom:40px}footer .label{font-size:11px}
[data-atmosphere="day"]{--base:#e9e7e2;--text:#16171c;--t2:#4d4f5e;--acc:#535d9d;--acchi:#414b8c;--rule:rgba(22,23,28,.20);color-scheme:light}
[data-atmosphere="day"] body{--surface:rgba(233,231,226,.97);--field:#f6f5f1;--focus:#414b8c;--logo-color:#16171c}
[data-atmosphere="day"] .wm{filter:none}[data-atmosphere="day"] .glass{background:linear-gradient(160deg,rgba(252,251,248,.96),rgba(235,235,241,.97));box-shadow:0 0 0 1px rgba(83,93,157,.28),0 24px 70px rgba(34,36,58,.16),inset 0 1px 0 #fff}[data-atmosphere="day"] .glass.lit{box-shadow:0 0 0 1px rgba(83,93,157,.5),0 24px 70px rgba(34,36,58,.22),0 0 80px rgba(142,150,210,.14)}
[data-atmosphere="day"] #bloom{mix-blend-mode:multiply;opacity:.4}[data-atmosphere="day"] .scrimL{background:radial-gradient(ellipse at 30% 60%,rgba(233,231,226,.97),rgba(233,231,226,.87) 55%,rgba(233,231,226,0) 75%)}[data-atmosphere="day"] .btn.p{color:#fff;box-shadow:0 4px 20px rgba(83,93,157,.14)}[data-atmosphere="day"] #answer.approved #approve{color:#fff}[data-atmosphere="day"] #answer .chip{border-color:var(--t2)}[data-atmosphere="day"] #answer #decision span[style*="C9CEF0"]{color:var(--acchi)!important}[data-atmosphere="day"] #answer span[style*="242,241,236"]{border-color:var(--t2)!important}[data-atmosphere="day"] #answer i{border-color:var(--t2)!important}[data-atmosphere="day"] #answer b{background:var(--text)!important}
.reading .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.23;pointer-events:none;z-index:-1}.reading .beat{isolation:isolate}.reading #heroScrim,.reading #formScrim{display:none}.reading #world>section .k{transform:none!important;visibility:visible!important;opacity:1!important}.reading #answer{margin:auto}.reading #ansInner,.reading #decision{opacity:1!important;transform:none!important}
.composition-mobile #header{height:64px;padding:0 24px}.composition-mobile #header .wm{width:112px}.composition-mobile .desktop-nav{display:none}.composition-mobile #menu-toggle{display:block}.composition-mobile #mobile-menu{top:64px}.composition-mobile.enhanced #layout{width:390px;height:844px}.composition-mobile .scene-controls{right:16px;bottom:12px}.composition-mobile.enhanced .scene-controls{max-width:calc(100vw - 24px)}.composition-mobile.enhanced #hero{width:342px!important}.composition-mobile.enhanced #hero h1{font-size:34px!important}.composition-mobile.enhanced #hero .label{white-space:normal!important;font-size:10.5px!important}.composition-mobile.enhanced #hero .lead{font-size:15px!important}.composition-mobile.enhanced .hide-m{display:none!important}.composition-mobile.enhanced #today{width:342px!important;padding:22px 24px!important}.composition-mobile.enhanced #today h2{font-size:28px!important}.composition-mobile.enhanced #statement{width:342px!important;padding:28px 26px 30px!important}.composition-mobile.enhanced #statement h2{font-size:40px!important}.composition-mobile.enhanced #howHead,.composition-mobile.enhanced #privacy,.composition-mobile.enhanced #mission,.composition-mobile.enhanced #prodHead,.composition-mobile.enhanced #engHead,.composition-mobile.enhanced #form{width:342px!important}.composition-mobile.enhanced #howHead h2,.composition-mobile.enhanced #prodHead h2,.composition-mobile.enhanced #engHead h2{font-size:38px!important}.composition-mobile.enhanced #mission{padding:24px!important}.composition-mobile.enhanced #mission h2{font-size:30px!important}.composition-mobile.enhanced #mission>div{grid-template-columns:1fr auto!important;gap:6px!important}.composition-mobile.enhanced #mission>div>span:first-child{grid-column:1/-1}.composition-mobile.enhanced #form h2{font-size:34px!important}.composition-mobile.enhanced #form .fg{grid-template-columns:1fr!important}.composition-mobile.enhanced #rail{display:none}.composition-mobile.enhanced #e0,.composition-mobile.enhanced #e1,.composition-mobile.enhanced #e2,.composition-mobile.enhanced #e3{padding:14px 18px!important}.composition-mobile.enhanced #e0 p,.composition-mobile.enhanced #e1 p,.composition-mobile.enhanced #e2 p,.composition-mobile.enhanced #e3 p{margin-top:4px!important}.composition-mobile.enhanced #e0,.composition-mobile.enhanced #e1,.composition-mobile.enhanced #e2,.composition-mobile.enhanced #e3{display:grid;grid-template-columns:34px 1fr;align-items:center}.composition-mobile.enhanced #e0 p:last-child,.composition-mobile.enhanced #e1 p:last-child,.composition-mobile.enhanced #e2 p:last-child,.composition-mobile.enhanced #e3 p:last-child{grid-column:2}.composition-mobile.enhanced #e0>span,.composition-mobile.enhanced #e1>span,.composition-mobile.enhanced #e2>span,.composition-mobile.enhanced #e3>span{grid-row:1/3}.composition-mobile.enhanced #step1,.composition-mobile.enhanced #step2,.composition-mobile.enhanced #step3,.composition-mobile.enhanced #vera{width:342px!important}.composition-mobile.enhanced #form .form-submit{align-items:stretch!important;flex-direction:column}.composition-mobile.enhanced #form .form-submit .btn{width:100%}.composition-mobile.reading #form .fg{grid-template-columns:1fr!important}.composition-mobile.reading #hero h1{font-size:40px!important}.composition-mobile.reading #statement h2{font-size:40px!important}.composition-mobile.reading #prodHead h2{font-size:42px!important}.composition-mobile footer nav ul{flex-wrap:wrap;gap:4px 24px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn:hover{filter:none}}
[hidden]{display:none!important}

/* FIX-01: viewport-independent stage, legibility and native controls. */
.enhanced #scene{position:absolute;inset:0;display:block;width:100%;height:100%}
.enhanced #layout{background:transparent}
#mobile-menu{inset:64px 0 0;height:calc(100dvh - 64px);max-height:none;max-width:none;background:var(--base);opacity:1;overflow:auto}
#mobile-menu nav{display:block}#mobile-menu nav ul{display:flex;flex-direction:column;align-items:stretch;gap:8px}#mobile-menu nav li,#mobile-menu nav a{width:100%;white-space:nowrap}#mobile-menu .btn{display:flex;width:100%;margin-top:24px}
.composition-mobile #mobile-menu{inset:64px 0 0}
a,button{min-height:44px}footer>a{display:inline-flex;align-items:center;min-height:44px}
#header a[aria-current="true"],#mobile-menu a[aria-current="true"],footer nav a[aria-current="true"]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.label,.chip{font-size:12px!important}.glass .label,.glass .chip{color:#b9bac1!important}.glass .chip{letter-spacing:.07em}.glass .label.acc{color:#b9bac1!important}
[data-atmosphere="day"] .glass .label,[data-atmosphere="day"] .glass .chip{color:#4d4f5e!important}
#howHead::before,.composition-mobile #prodHead::before,.composition-mobile #engHead::before{content:"";position:absolute;inset:-18px -20px;z-index:-1;border-radius:18px;background:rgba(11,12,15,.96);box-shadow:0 16px 40px 18px rgba(11,12,15,.28);pointer-events:none}
#howHead{isolation:isolate}.composition-mobile #prodHead,.composition-mobile #engHead{isolation:isolate}
[data-atmosphere="day"] #howHead::before,[data-atmosphere="day"].composition-mobile #prodHead::before,[data-atmosphere="day"].composition-mobile #engHead::before{background:rgba(233,231,226,.98);box-shadow:0 16px 40px 18px rgba(233,231,226,.28)}
.enhanced #world .btn,.enhanced #world .field{min-height:calc(44px / var(--ui-scale,1))!important}.enhanced #world .field:not(textarea){height:calc(44px / var(--ui-scale,1))!important}
.field{font-size:16px}select.field{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23b9bac1' stroke-width='1.5'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:20px;padding-right:38px}select.placeholder{color:var(--t2)}[data-atmosphere="day"] select.field{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%234d4f5e' stroke-width='1.5'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E")}
.field-error{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:#ffc4c4;margin-top:7px;line-height:1.4}.field-error svg{width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.5}.field[aria-invalid="true"]{border-color:#ffc4c4}[data-atmosphere="day"] .field-error{color:#86281f}[data-atmosphere="day"] .field[aria-invalid="true"]{border-color:#86281f}
.scene-controls{width:177px;height:44px;padding:4px;display:grid;grid-template-columns:44px 44px 1px 44px 44px;justify-content:center;align-content:center;gap:0}
.scene-controls .atmosphere-options{display:contents}.scene-controls .atmosphere-knob{display:none}.scene-controls button{position:relative;width:44px;height:44px;min-height:44px;min-width:44px;padding:12px;background:transparent!important;isolation:isolate}.scene-controls button::before{content:"";position:absolute;inset:2px;border-radius:50%;z-index:-1}.scene-controls button:hover::before,.scene-controls button[aria-pressed="true"]::before,.scene-controls button[aria-checked="true"]::before{background:var(--rule)}.scene-controls .scene-divider{margin:0;width:1px;height:18px;align-self:center}.scene-controls.reduced{width:88px;grid-template-columns:44px 44px}
:root:not([data-atmosphere="day"]) .glass{background:linear-gradient(160deg,rgba(38,40,52,.94),rgba(16,17,22,.96))}
.retro b{font-size:12px;height:22px}
.composition-mobile.enhanced #pKontact,.composition-mobile.enhanced #c1,.composition-mobile.enhanced #c2{padding:18px 20px!important}
.enhanced #world .field{font-size:calc(16px / var(--ui-scale,1))!important}.enhanced #world textarea.field{height:calc(80px / var(--ui-scale,1));min-height:calc(80px / var(--ui-scale,1))!important}
