/* R12: typography, optical surfaces and bespoke vector controls. Logo R11 preserved. */
:root{--muted:#bccbd6;--ice-edge:rgba(155,235,237,.26);--ice-fill:rgba(12,26,34,.94)}
html[data-theme=day]{--muted:#445e69;--ice-edge:rgba(31,109,125,.23);--ice-fill:rgba(241,249,250,.96)}
body{font-weight:400}main p{line-height:1.95;text-wrap:pretty}h1,h2,h3,h4{font-weight:600!important}h3,h4{line-height:1.5;letter-spacing:0}
.eyebrow,.scene-index,.action-note,.scenario-label{font-size:15px!important;line-height:1.85!important}
.definition,.chapter-lead,.proof-intro>p:last-child,.closing-copy>p:last-child{font-size:clamp(20px,1.8vw,26px)!important;max-width:790px;line-height:1.9!important}
.opening-business,.opening-foot,.publication-copy,.reuse-description,.step-description,.partner-roles p,.revenue-streams p,.capability-list p,.partner-path p,.decision-brief p,.decision-questions p{font-size:20px!important;line-height:1.95!important}
.decision-brief h3,.calc-title h3{font-size:clamp(29px,3vw,40px)}.decision-brief h4,.partner-path h3{font-size:23px}
.evidence-line,.team-status,.calc-note,.decision-note,.directory-note,.privacy-note,.service-status,.questionnaire-notice,.contact-alternatives>p:last-child{font-size:15px!important;line-height:1.95!important}
.name small{font-size:15px!important;line-height:1.8!important}.team-grid h3{font-size:28px!important}.team-grid p{font-size:17px!important}.team-grid small{font-size:15px!important}
.primary-action,.secondary-action,.decision-tabs button,.scenario-presets button,.questionnaire-actions button{font-size:17px!important;font-weight:500;min-height:52px}
#questionnaire label{font-size:18px}#questionnaire label>span{font-size:14px}.questionnaire-progress li{font-size:15px}.questionnaire-intro{font-size:20px}.questionnaire-review dd{font-size:19px}
/* A continuous refractive edge around functional windows. No extra blur layers. */
.ice-surface{--lx:50%;--ly:0%;position:relative;border:1px solid transparent!important;border-radius:20px!important;background:linear-gradient(var(--ice-fill),var(--ice-fill)) padding-box,radial-gradient(ellipse at var(--lx) var(--ly),rgba(171,248,244,.78),var(--ice-edge) 40%,rgba(137,159,199,.10) 75%) border-box!important;box-shadow:inset 0 1px 0 #dbfffa12,inset 0 -1px 0 #36596c20,0 18px 50px -28px #0009!important;transition:box-shadow .35s,border-color .35s}
html[data-theme=day] .ice-surface{box-shadow:inset 0 1px 0 #fff,0 18px 45px -28px #2353644a!important}
.ice-surface:focus-within{box-shadow:inset 0 1px 0 #c9fff74d,0 0 0 2px #70e6dd24,0 18px 50px -28px #0009!important}
.explore-console.ice-surface,.calculator.ice-surface{padding:clamp(22px,3vw,40px)}
.key-result{border:1px solid var(--ice-edge)!important;background:linear-gradient(125deg,#60d7d30c,transparent)!important;padding:24px!important;border-radius:12px!important}
#questionnaire input,#questionnaire select,#questionnaire textarea{border-color:var(--ice-edge);background:linear-gradient(135deg,#a7e4eb08,rgba(var(--mask),.55));border-radius:10px;font-size:17px}
.decision-brief,.partner-path,.selected-proof,.evidence-line,.contact-alternatives,.decision-questions details,.risk-register{border-color:var(--ice-edge)!important}
.decision-questions summary{font-size:21px;padding-inline:4px}.decision-questions details{transition:background .35s}.decision-questions details[open]{background:linear-gradient(90deg,transparent,#56d9d908);padding-inline:16px}
.ice-icon{width:25px;height:25px;flex:none;vertical-align:middle;color:var(--aqua);fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px #5ce4db24);transition:transform .65s cubic-bezier(.2,.66,.24,1),filter .4s}
.ice-icon .facet{fill:currentColor;fill-opacity:.10;stroke-opacity:.55}.ice-icon .glint{stroke-opacity:.85}
.eyebrow .ice-icon{margin-inline-end:10px;width:22px;height:22px}.decision-tabs button,.hero-actions a,.contact-alternatives a{gap:10px;display:inline-flex;align-items:center;justify-content:center}
.primary-action .ice-icon{color:inherit}a:hover>.ice-icon,button:hover>.ice-icon{transform:translateX(-3px) rotate(-6deg);filter:drop-shadow(0 0 6px #5ce4db50)}
.decision-tabs button[aria-selected=true]>.ice-icon{transform:translateY(-2px);filter:drop-shadow(0 0 5px #5ce4db45)}
.ice-icon .draw{stroke-dasharray:80;stroke-dashoffset:0}a:hover .ice-icon .draw,button:hover .ice-icon .draw{animation:ice-trace 850ms ease-out}
@keyframes ice-trace{from{stroke-dashoffset:80}to{stroke-dashoffset:0}}
.motion-label{display:block}.ice-divider{box-shadow:0 1px 10px #65ded416!important}
@media(max-width:760px){.opening h1{font-size:clamp(46px,13vw,66px)!important}.proof-intro h2,.chapter h2{font-size:clamp(38px,10.8vw,54px)!important}.closing h2{font-size:clamp(36px,10.4vw,49px)!important}.definition,.chapter-lead,.proof-intro>p:last-child,.closing-copy>p:last-child{font-size:20px!important}.opening-business,.opening-foot,.publication-copy,.reuse-description,.step-description,.partner-roles p,.revenue-streams p,.capability-list p,.partner-path p,.decision-brief p,.decision-questions p{font-size:18px!important}.eyebrow,.scene-index,.action-note,.scenario-label{font-size:14px!important}.name small{font-size:13px!important}.namescape{margin-bottom:32px}.primary-action,.secondary-action{font-size:16px!important;padding-inline:16px}.decision-tabs{gap:9px;flex-wrap:wrap}.decision-tabs button{font-size:16px!important;gap:6px}.decision-tabs .ice-icon{width:21px;height:21px}.decision-brief h4{font-size:22px}.decision-note,.calc-note,.privacy-note{font-size:14px!important}.questionnaire-progress li{font-size:14px}.ice-surface{border-radius:16px!important}.team-grid h3{font-size:25px!important}}
@media(prefers-reduced-motion:reduce){.ice-icon,.ice-surface{transition:none}.ice-icon .draw{animation:none!important}}html[data-motion=off] .ice-icon .draw{animation:none!important}
#questionnaire label>.motion-label,main label>.motion-label{font-size:inherit!important;color:inherit!important;line-height:inherit!important}
.tools button,.dock-links a,.dock-directory{font-size:14px!important}.trial-context>small,.world-caveat,.world-source,.world-method{font-size:14px!important;line-height:1.9!important}
html[data-motion=off] .ice-icon,html[data-motion=off] .ice-surface{transition:none!important}html[data-motion=off] a:hover>.ice-icon,html[data-motion=off] button:hover>.ice-icon{transform:none!important}
@media(prefers-reduced-motion:reduce){a:hover>.ice-icon,button:hover>.ice-icon{transform:none!important}}
.opening .definition{font-size:clamp(20px,1.8vw,26px)!important}
/* R13: a moving optical film above a stable, readable calculator surface. */
.water-window{isolation:isolate;transform:perspective(1300px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-origin:center;--ice-fill:rgba(9,25,34,.91)}
.water-window>.water-sheen{position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;opacity:.65;overflow:hidden;background:radial-gradient(ellipse at var(--lx,50%) var(--ly,15%),#8deded22,transparent 54%),linear-gradient(115deg,transparent 16%,#e2ffff09 35%,transparent 48%,#84bed30a 78%,transparent);box-shadow:inset 0 2px 0 #e7ffff2b,inset 0 -2px 0 #65dcd512}
.water-sheen:before{content:'';position:absolute;inset:-45% -20%;border:1px solid #d1fffa2b;border-radius:48%;transform:translateX(var(--water-shift,0px)) rotate(-19deg) scaleY(.45);box-shadow:0 3px 12px #75e7dd12,inset 0 2px 5px #e0fffc0d}
.water-sheen:after{content:'';position:absolute;inset:8% -24% -55%;border:1px solid #a6dfee20;border-radius:50%;transform:translateX(var(--water-shift,0px)) rotate(13deg) scaleY(.58)}
html[data-theme=day] .water-window{--ice-fill:rgba(239,249,251,.95)}
html[data-theme=day] .water-sheen{background:radial-gradient(ellipse at var(--lx,50%) var(--ly,15%),#fff 0%,#b6e3e830 38%,transparent 64%),linear-gradient(120deg,#fff8,transparent 55%,#83b8cd12);box-shadow:inset 0 2px 0 #fff,inset 0 -2px 0 #548b9c20}
html[data-theme=day] .water-sheen:before{border-color:#548d9e30;box-shadow:0 3px 10px #5e9faf12,inset 0 2px 5px #fff9}html[data-theme=day] .water-sheen:after{border-color:#7da5b52b}
.ice-icon{width:28px;height:28px}.eyebrow .ice-icon{width:25px;height:25px}.ice-icon .facet{fill-opacity:.18}
html[data-theme=day] .ice-icon{color:#076f7b;filter:drop-shadow(0 1px 1px #fff)}
html[data-motion=off] .water-window{transform:none!important}
@media(prefers-reduced-motion:reduce){.water-window{transform:none!important}}
