/* Component enhancements inherit the unchanged v15 page composition. */
.visual-lead{font-size:clamp(17px,1.5vw,19px);line-height:1.65;max-width:44ch;margin-top:24px}
.lesson-demo{display:grid;grid-template-columns:1fr;border:1px solid #dce1d6;border-radius:16px;overflow:clip;background:#f3f5ed}
.lesson-intro{padding:26px}
.lesson-intro h3{font-size:clamp(27px,3vw,38px);line-height:1.15;margin-top:16px}
.lesson-intro h3 em{font-family:var(--font-body);font-weight:400}
.lesson-intro>p{font:16px/1.6 var(--font-body);margin-top:16px;max-width:37ch}
.lesson-tabs{display:grid;gap:0;margin-top:24px;border-top:1px solid #d9dfd1}
.lesson-tabs button{display:flex;align-items:center;gap:14px;min-height:54px;text-align:left;background:transparent;border-bottom:1px solid #d9dfd1;font:600 16px/1.4 var(--font-ui);padding:12px 8px;transition:color .2s,background .2s,padding .35s var(--visual-ease)}
.lesson-tabs button span{font:13px/1 var(--font-mono);color:#7b886f}
.lesson-tabs button i{margin-left:auto;font-style:normal;font-size:20px;color:#7b886f}
.lesson-tabs button[aria-pressed=true]{background:#e3eadb;color:#2b573d;padding-left:14px}
.lesson-source{display:inline-block;font:15px/1.55 var(--font-ui);margin-top:24px;color:#586653;text-underline-offset:4px}
.lesson-stage{min-width:0;background:#fffefa;border-top:1px solid #dce1d6}
.lesson-panel{padding:26px;min-height:540px}
.lesson-paper-head{display:flex;justify-content:space-between;gap:12px;font:600 12px/1.5 var(--font-ui);letter-spacing:.075em;color:#697563;border-bottom:1px solid #e5e6dc;padding-bottom:14px;margin-bottom:25px}
.lesson-panel h4{font:600 clamp(26px,2.5vw,34px)/1.18 var(--font-ui);letter-spacing:-.04em;margin:0 0 22px}
.lesson-panel h4 em{font-family:var(--font-body);font-weight:400}
.lesson-panel p{font-size:16px;line-height:1.75;margin-top:16px}
.lesson-panel mark{color:inherit;background:#eef0d9;padding:1px 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.idea-foot{display:flex;align-items:center;gap:18px;margin-top:28px;padding-top:22px;border-top:1px solid #e5e6dc}
.idea-foot img{width:56px;height:64px;object-fit:contain}
.idea-foot p{margin:0;font:15px/1.6 var(--font-ui)}
.lesson-panel .underlink{border:0;background:transparent;color:#347057;font-size:16px;margin-top:14px}
.energy-scene{color:#51634c;margin:5px -12px}
.energy-drawing{display:block;width:100%;height:auto;overflow:visible}
.energy-labels{font:15px var(--font-ui)}
.solar-icon{color:#a38742}
.battery-icon{color:#6b825c}
.house-icon{color:#5c756c}
.energy-wire{fill:none;stroke:#8ca17f;stroke-width:1.8;marker-end:url(#energy-arrow);stroke-dasharray:4 4}
.battery-level{fill:#9ead7c;transform-origin:258px 147px;transition:transform .6s var(--visual-ease)}
.energy-traveller{fill:#ba9a4e;opacity:0}
.lit-window{fill:#f4f0dc;transition:fill .4s}
.energy-scene[data-phase=night] .solar-icon{opacity:.28}
.energy-scene[data-phase=night] .battery-level{transform:scaleY(.45)}
.energy-scene[data-phase=night] .lit-window{fill:#ebcb6e}
.phase-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.phase-buttons button{flex:1;min-height:44px;padding:10px;border:1px solid #dce1d6;border-radius:7px;background:#fcfcf6;font-size:15px;white-space:nowrap}
.phase-buttons button[aria-pressed=true]{background:#e5ecd9;border-color:#9caf8c}
.lesson-panel .energy-explanation{font:15px/1.6 var(--font-ui);min-height:48px}
.answer-options{display:grid;gap:8px;margin-top:18px}
.answer-options button{display:flex;align-items:flex-start;gap:12px;background:#fafbf5;border:1px solid #dce1d6;border-radius:8px;text-align:left;padding:14px;font:400 15px/1.5 var(--font-ui);transition:background .2s,border-color .2s}
.answer-options button>span{color:#7a866e;font:500 13px/1.7 var(--font-mono)}
.answer-options button[aria-pressed=true]{background:#f4ecd7;border-color:#b9a168}
.answer-options button[data-correct=true]{background:#e8efe0;border-color:#829b6d}
.lesson-panel .answer-feedback{padding:14px;background:#eef2e7;border-left:2px solid #8ca47a;font:15px/1.55 var(--font-ui);margin-top:16px}
.visual-disclosure{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);margin-top:18px;background:transparent}
.visual-disclosure>summary{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;padding:18px 0;min-height:58px;font:600 16px/1.4 var(--font-ui);list-style:none}
.visual-disclosure>summary::-webkit-details-marker{display:none}
.visual-disclosure>summary:after{content:'+';margin-left:auto;font:400 22px/1 var(--font-ui)}
.visual-disclosure[open]>summary:after{content:'−'}
.visual-disclosure>summary>span{font:400 15px/1.5 var(--font-ui);color:var(--color-ink-2)}
.disclosure-content{padding-bottom:22px;min-width:0}
.visual-section-heading{display:grid;gap:22px;margin-bottom:30px}
.visual-section-heading>p{font-size:17px;max-width:46ch;align-self:end}
.evidence-selector{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;font:15px var(--font-ui)}
.evidence-selector>span{margin-right:14px;color:#67745e}
.evidence-selector button{border:1px solid #d9dfd3;border-radius:30px;min-height:44px;padding:10px 16px;background:transparent;font-size:15px}
.evidence-selector button[aria-pressed=true]{background:#e5ecd9;border-color:#97ab83;color:#395630}
.evidence-pair{display:grid;grid-template-columns:1fr;gap:0}
.evidence-excerpt{background:#fffefa;border:1px solid #dce1d6;padding:24px;border-radius:12px;min-width:0}
.exam-excerpt{background:#f8f7f0}
.excerpt-label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:600 12px/1.5 var(--font-ui);letter-spacing:.05em;color:#586b50}
.excerpt-label>span:last-child{width:100%;font:400 15px/1.5 var(--font-ui);letter-spacing:0;color:#697463;margin-top:4px}
.source-dot{width:7px;height:7px;border-radius:50%;background:#759560}
.exam-excerpt .source-dot{background:#9d835c}
.evidence-excerpt h3{font-size:29px;margin-top:26px;letter-spacing:-.03em}
.excerpt-caption{font:15px/1.5 var(--font-ui);margin-top:8px}
.evidence-excerpt dl{margin:22px 0}
.evidence-excerpt dl>div{padding:14px 16px;margin:8px -2px;border-left:2px solid transparent;transition:background .35s,border-color .35s,transform .35s var(--visual-ease)}
.evidence-excerpt dt{font:600 12px/1.6 var(--font-ui);text-transform:uppercase;letter-spacing:.07em;color:#66765f}
.evidence-excerpt dd{margin:6px 0 0;font:17px/1.65 var(--font-body)}
.evidence-excerpt mark{background:transparent;color:inherit;transition:background .35s}
.evidence-pair[data-focus=location] [data-match=location],.evidence-pair[data-focus=influence] [data-match=influence]{background:#eef1e4;border-color:#8ba271;transform:translateX(3px)}
.evidence-pair[data-focus=location] [data-match=location] mark,.evidence-pair[data-focus=influence] [data-match=influence] mark{background:#dee8cc}
.evidence-excerpt>a{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e1e4d8;padding-top:16px;font:600 15px/1.5 var(--font-ui);text-decoration:none;color:#41663d;min-height:44px}
.evidence-join{height:38px;display:flex;justify-content:center;align-items:center;color:#92a183;font-size:20px}
.evidence-join b{font-weight:400;transform:rotate(90deg)}
.evidence-end{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin-top:18px}
.evidence-end p{font:15px/1.6 var(--font-ui);max-width:65ch}
.program-kit{display:grid;grid-template-columns:1fr;gap:0;min-width:0}
.kit-item{display:grid;grid-template-columns:62px minmax(0,1fr);gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #e0e4d7}
.kit-item img{width:58px;height:68px;object-fit:contain}
.kit-item h4{font:600 21px/1.2 var(--font-ui);letter-spacing:-.025em;margin:5px 0}
.kit-item p{font:15px/1.55 var(--font-ui);margin:0}
.mini-spines{display:flex;gap:3px;align-items:end;height:55px;padding-left:8px}
.mini-spines i{width:9px;height:50px;background:#859b6d;border:1px solid #71895e;border-radius:2px;box-shadow:inset 2px 0 #ffffff66;transform:rotate(-3deg)}
.mini-spines i:nth-child(2){height:54px;background:#b6bb88}
.mini-spines i:nth-child(3){background:#bba77b}
.mini-spines i:nth-child(4){height:46px;background:#789589;transform:rotate(7deg)}
.kit-evaluation{font:15px/1.6 var(--font-ui);padding:15px 0;margin:0;color:#44613a}
.tracker-demo{display:grid;gap:18px;padding-top:12px}
.tracker-demo h4{font:600 23px/1.2 var(--font-ui);margin:10px 0 0}
.tracker-states{display:flex;list-style:none;margin:0;padding:0;gap:12px;font:600 16px/1.4 var(--font-ui)}
.tracker-states li{flex:1;border-top:3px solid #dce3d3;padding-top:12px;color:#77856c;transition:color .35s,border-color .35s}
.tracker-states li.current{border-color:#75975e;color:#315a2d}
.tracker-states span{display:block;font:400 13px/1.5 var(--font-ui);margin-top:5px}
.tracker-demo button{justify-self:start;background:none}
.tracker-caption{font:15px/1.5 var(--font-ui)}
.family-decision{background:linear-gradient(125deg,#f4f5eb,#fffdf6);border:1px solid #dce1d2;border-radius:14px;padding:24px;margin-top:26px;max-width:900px}
.decision-top{display:flex;justify-content:space-between;gap:12px;align-items:center}
.decision-seal{border:1px solid #bdcda9;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;color:#789366}
.family-decision dl{display:grid;gap:20px;margin:24px 0}
.family-decision dt{font:600 16px/1.5 var(--font-ui);color:#2d482d}
.family-decision dd{font:16px/1.65 var(--font-body);margin:6px 0 0;max-width:42ch}
.access-timeline{display:flex;gap:12px;align-items:center;padding-block:22px;border-block:1px solid #dee3d5;font:14px/1.5 var(--font-ui)}
.access-timeline>div:last-child{text-align:right}
.access-timeline strong{display:block;font:600 15px/1.5 var(--font-ui)}
.access-rule{flex:1;min-width:12px;height:1px;background:#a6b997;position:relative}
.access-rule:before,.access-rule:after{content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:#89a575;top:-2px}
.access-rule:after{right:0}
.family-decision>p{font:15px/1.6 var(--font-ui);margin-top:18px}
.learner-quotes .parent-quotes{margin:0}
.learner-quotes .proof-quote{font-size:17px}
#visual-inspector{width:min(920px,calc(100% - 24px));max-height:90dvh;padding:18px;border:1px solid #d6dec9;border-radius:14px;background:#fffefa;color:#263a2d}
#visual-inspector::backdrop{background:#1b291bc4;backdrop-filter:blur(4px)}
.inspector-bar{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:14px}
.inspector-bar h2{font:600 20px/1.25 var(--font-ui)}
.inspector-bar button{min-height:44px;background:#edf0e6;border-radius:8px;padding:10px 16px;white-space:nowrap}
#visual-inspector>p{font:15px/1.5 var(--font-ui);margin-bottom:16px}
#visual-inspector-image{width:100%;height:auto;display:block}
@media(min-width:800px){.lesson-demo{grid-template-columns:.85fr 1.15fr}
.lesson-stage{border-top:0;border-left:1px solid #dce1d6}
.lesson-intro,.lesson-panel{padding:34px}
.lesson-panel{min-height:575px}
.visual-section-heading{grid-template-columns:1.2fr 1fr;gap:56px}
.evidence-pair{grid-template-columns:1fr 54px 1fr}
.evidence-join{height:auto}
.evidence-join b{transform:none}
.evidence-excerpt{padding:30px}
.family-decision dl{grid-template-columns:1fr 1fr;gap:40px}
.tracker-demo{grid-template-columns:1fr 1.2fr;align-items:center}
.tracker-caption{grid-column:2;grid-row:2}}
@media(max-width:799px){.lesson-intro,.lesson-panel{padding:22px}
.lesson-intro>p{margin-top:12px}
.lesson-tabs{display:flex;gap:6px;overflow:visible;border:0;margin-top:20px}
.lesson-tabs button{flex:1;min-width:0;display:block;border:1px solid #d5ddc9;border-radius:6px;padding:10px 8px!important;font-size:14px;line-height:1.35}
.lesson-tabs button span{display:block;margin-bottom:5px}
.lesson-tabs button i{display:none}
.lesson-source{margin-top:18px;font-size:14px}
.lesson-panel{min-height:555px}
.lesson-panel .energy-explanation{min-height:60px}
.lesson-panel h4{font-size:28px}
.phase-buttons button{font-size:13px;padding:10px 8px}
.process-overview{padding:16px 18px;border-radius:12px}
.process-step{grid-template-columns:40px 1fr;gap:8px 12px;padding:13px 0}
.process-step img{width:40px;height:48px}
.process-step h3{font-size:20px;margin:0}
.process-step p{font-size:15px;line-height:1.5}
.process-step h3 span{display:none}
.process-decisions{gap:6px;margin:8px 0 12px}
.process-decisions li{padding:8px;font-size:14px}
.process-decisions span{font-size:13px}
.process-decisions b{font-size:14px}
.process-ca-note{gap:10px;grid-template-columns:40px 1fr;padding-top:14px}
.process-ca-note img{width:40px;height:50px}
.process-ca-note p{font-size:14px;line-height:1.5}
.evidence-selector>span{width:100%;margin-bottom:5px}
.evidence-excerpt{padding:22px}
.evidence-excerpt h3{font-size:27px}
.evidence-excerpt dd{font-size:16px}
.evidence-end p{font-size:14px}
.kit-item{padding:15px 0}
.family-decision{padding:20px}
.access-timeline{gap:9px;font-size:12px}
.access-timeline strong{font-size:13px}
.family-decision dd{font-size:16px}
.tracker-states{gap:10px;font-size:14px}
.tracker-states span{font-size:12px}
.visual-disclosure>summary{font-size:15px}}
@keyframes specimen-enter{from{transform:translateY(16px) rotate(-2deg)}to{transform:translateY(0) rotate(0)}}
@keyframes lesson-enter{from{transform:translateY(6px);opacity:.5}to{transform:translateY(0);opacity:1}}
@keyframes packet-day{0%{transform:translateX(0);opacity:0}20%{opacity:1}90%{opacity:1}100%{transform:translateX(60px);opacity:0}}
@keyframes packet-night{0%{transform:translateX(166px);opacity:0}20%{opacity:1}90%{opacity:1}100%{transform:translateX(238px);opacity:0}}
@media(prefers-reduced-motion:no-preference){html:not(.motion-off) .lesson-panel:not([hidden]){animation:lesson-enter .4s var(--visual-ease) both}
html:not(.motion-off) .energy-scene[data-phase=day] .energy-traveller{animation:packet-day 1.2s var(--visual-ease) 1}
html:not(.motion-off) .energy-scene[data-phase=night] .energy-traveller{animation:packet-night 1.2s var(--visual-ease) 1}}
html.motion-off .visual-evidence *,html.motion-off .lesson-demo *,html.motion-off .program-kit *,html.motion-off .tracker-demo *{transition:none!important}
.ca-example{padding-top:10px}
.ca-example-heading{display:flex;align-items:center;gap:18px}
.ca-example-heading img{object-fit:contain}
.ca-example-heading h4{font:600 24px/1.2 var(--font-ui);margin-top:7px}
.ca-path{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;padding:0;margin:24px 0}
.ca-path li{border-top:1px solid #bccbad;padding-top:15px;position:relative}
.ca-path li:not(:last-child):after{content:'→';position:absolute;right:-20px;top:-14px;color:#849574;background:var(--color-paper);font-size:20px}
.ca-path span{display:block;font:15px/1.5 var(--font-ui);color:#607160}
.ca-path strong{display:block;font:600 20px/1.3 var(--font-ui);margin:8px 0}
.ca-path p{font:16px/1.6 var(--font-body)}
.ca-example button{background:none}
.ca-example #ca-answer{margin:18px 0;padding:16px;border-left:2px solid #88a373;background:#edf2e4;font:16px/1.6 var(--font-ui)}
.ca-source{font:15px/1.65 var(--font-ui);margin-top:20px;color:#52624e}
@media(max-width:799px){.ca-path{grid-template-columns:1fr;gap:16px}
.ca-path li:not(:last-child):after{display:none}
.lesson-tabs button,.lesson-source,.phase-buttons button,.process-decisions li,.process-decisions span,.process-decisions b,.process-ca-note p,.tracker-states,.tracker-states span,.access-timeline,.access-timeline strong{font-size:15px}
.energy-labels{font-size:23px}
.lesson-demo .energy-scene{margin-inline:-18px}
.process-decisions{grid-template-columns:1fr 1fr}
.ca-example-heading h4{font-size:22px}}
.rail-access{font:15px/1.65 var(--font-ui);padding:16px 0 0;margin-top:16px;border-top:1px solid #d0dcc5}
.family-decision{position:relative}
.lesson-demo{grid-template-columns:minmax(0,1fr)}
.lesson-intro{min-width:0}
@media(min-width:800px){.lesson-demo{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
@media(max-width:359px){.lesson-tabs{display:grid;grid-template-columns:1fr}
.lesson-tabs button{display:flex;align-items:center;min-height:44px}
.lesson-tabs button span{margin:0}
.phase-buttons{flex-direction:column}
.energy-labels{font-size:27px}}/* v15 remains the page-level source of truth. */
html[data-visual-baseline=v15]{--visual-ease:cubic-bezier(.22,.68,.2,1);--visual-green:var(--color-emerald);--visual-gold:#997545}
html[data-visual-baseline=v15] [hidden]{display:none!important}
.tiny-label{font:600 12px/1.5 var(--font-ui);letter-spacing:.085em;color:var(--color-ink-2);display:block}
#top .hero-facts{display:grid;grid-template-columns:1fr;gap:0;background:none;border:0;border-radius:0;max-width:480px;margin-block:22px}
#top .hero-fact{display:grid;grid-template-columns:24px minmax(0,1fr) 44px;gap:14px;align-items:center;background:none;border-bottom:1px solid var(--color-line);padding:12px 0}
#top .hero-fact-n{grid-column:1;grid-row:1;color:var(--color-emerald)}
#top .hero-fact p{grid-column:2;grid-row:1;font:16px/1.5 var(--font-body);margin:0}
.fact-sketch{grid-column:3;grid-row:1;width:42px;height:42px;color:#668373}
.notes-principles{grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:28px 0}
.principle-visual{display:flex;align-items:center;gap:14px}.principle-visual img{width:50px;height:62px;object-fit:contain;flex:none}.principle-visual p{font-size:15px;line-height:1.6}
.lesson-invite{background:none;text-align:left;border-left:1px solid var(--color-line);padding:8px 0 8px 24px;font:17px/1.5 var(--font-body);min-height:70px}
.lesson-invite>span{display:block;color:var(--color-ink-2);font:12px/1.5 var(--font-ui);letter-spacing:.08em;margin-bottom:5px}.lesson-invite b{display:block;font:600 15px/1.5 var(--font-ui);color:var(--color-emerald);margin-top:8px}
.lesson-disclosure{margin-top:0;border-top:0}.lesson-disclosure .lesson-demo{margin-bottom:24px}.lesson-disclosure>summary>span{font-size:15px;font-weight:400;color:var(--color-ink-2)}
.lesson-demo{background:var(--color-paper-warm);border-radius:var(--radius-card);border-color:var(--color-line)}.lesson-stage{background:var(--color-paper);border-color:var(--color-line)}
.lesson-panel{min-height:540px}.lesson-panel h4{font-family:var(--font-ui)}
.v15-proof-comparison{grid-column:1/-1;min-width:0;width:100%;border-top:1px solid var(--color-line);padding-top:28px;margin-top:8px}
.comparison-intro{font:600 17px/1.5 var(--font-ui);margin:0 0 22px;color:var(--color-ink)}
.evidence-excerpt{background:var(--color-paper);border-color:var(--color-line);border-radius:var(--radius-card)}.exam-excerpt{background:var(--color-paper-warm)}
.evidence-end p{font-size:15px}.evidence-excerpt h3{font-family:var(--font-ui)}
.shelf-ledger-col{container-type:inline-size;min-width:0}.program-kit{margin-block:16px 24px}.kit-item{padding:14px 0}.kit-item h4{font-size:19px}.kit-item p{font-size:15px}.kit-evaluation{grid-column:1/-1}
@container(min-width:590px){.program-kit{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px;border-block:1px solid var(--color-line);padding-block:16px}.kit-item{display:flex;flex-direction:column;align-items:flex-start;gap:14px;border:0;padding:0}.kit-item img{height:62px}.mini-spines{height:62px}.kit-item h4{font-size:19px;line-height:1.25}.kit-item .tiny-label{font-size:11px}.kit-evaluation{padding-bottom:0}}
.shelf-rail{border-top:2px solid #8fae9d;padding-top:18px}.rail-access{font-size:15px}.visual-disclosure>summary{font-size:16px}
#current-affairs .ca-disclosure{grid-column:1/-1;width:100%;margin-top:20px}.ca-disclosure .ca-path{grid-template-columns:1fr;gap:16px}.ca-path li:not(:last-child):after{display:none}
.family-copy{container-type:inline-size;min-width:0}.family-decision{background:transparent;border:0;border-block:1px solid var(--color-line);border-radius:0;padding:24px 0;margin-block:26px;max-width:none}.family-decision dl{grid-template-columns:1fr;gap:16px;margin-block:18px}.decision-seal{display:none}.family-decision dd{max-width:none}.family-decision .access-timeline{font-size:15px}.family-decision .access-timeline strong{font-size:15px}
@container(min-width:600px){.family-decision dl{grid-template-columns:1fr 1fr}}
.family .learner-quotes{margin-top:20px}.family .parent-quotes{margin-block:0}.family .faq{margin-top:24px}
/* Rama remains present after the hero so his section-to-section journey is visible.
   He yields while the sample-notes dialog is open: v15 opens it without setting
   body.reader-open, so key on the open dialog itself as well. */
html[data-visual-review=true] #rama-world{visibility:visible!important}
html[data-visual-review=true] .programs{z-index:24}
html[data-visual-review=true] body.reader-open #rama-world,html[data-visual-review=true] body:has(#note-dialog[open]) #rama-world{visibility:hidden!important}
@media(max-width:760px){
 #top .hero-fact{padding-block:9px;gap:10px;grid-template-columns:24px minmax(0,1fr) 40px}.fact-sketch{width:38px;height:38px}
 .notes-principles{grid-template-columns:1fr;gap:20px;padding-block:24px}.lesson-invite{border-left:0;border-top:1px solid var(--color-line);padding:18px 0 0}.principle-visual p{font-size:16px}.lesson-disclosure>summary{align-items:flex-start}.lesson-disclosure>summary>span{width:100%;order:3}.lesson-disclosure>summary:after{margin-left:auto}
 .lesson-intro,.lesson-panel{padding:20px}.lesson-tabs button,.lesson-source,.phase-buttons button{font-size:15px}.lesson-panel{min-height:0;padding-bottom:28px}.lesson-panel .underlink{min-height:44px}.lesson-tabs button{overflow-wrap:anywhere}.energy-labels{font-size:24px}.phase-buttons button{white-space:normal}
 .evidence-excerpt{padding:20px}.evidence-excerpt dd{font-size:16px}.v15-proof-comparison{padding-top:24px;margin-top:0}.evidence-pair{gap:0}.evidence-end .underlink{font-size:15px}
 .kit-item{grid-template-columns:54px minmax(0,1fr);gap:14px}.kit-item h4{font-size:20px}.kit-item img{width:48px;height:58px}.mini-spines{height:50px}.kit-evaluation{font-size:15px}
 .tracker-states,.tracker-states span{font-size:15px}.visual-disclosure>summary{font-size:15px}.family-decision{margin-top:22px}.ca-example-heading h4{font-size:21px}.ca-source{font-size:15px}
}
@media(prefers-reduced-motion:reduce){html[data-visual-baseline=v15] *,html[data-visual-baseline=v15] *:before,html[data-visual-baseline=v15] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep the existing scene's composition, with less empty space on narrow screens. */
@media(max-width:760px){#notes .notes-art{max-width:310px;width:100%;margin:12px auto 40px}#energy-example{scroll-margin-top:90px}}
@keyframes fact-settle{from{transform:translateY(5px);opacity:.5}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:no-preference){html:not(.motion-off) .fact-sketch{animation:fact-settle .45s cubic-bezier(.22,.68,.2,1) both}html:not(.motion-off) .hero-fact:nth-child(2) .fact-sketch{animation-delay:.05s}html:not(.motion-off) .hero-fact:nth-child(3) .fact-sketch{animation-delay:.1s}html:not(.motion-off) .hero-fact:nth-child(4) .fact-sketch{animation-delay:.15s}}
/* Standalone offers have their own price and action, outside the full-program disclosure. */
#shelfMore{display:block;margin-top:36px;border-top:1px solid var(--color-line);padding-top:28px}
.standalone-heading{margin-bottom:20px}.standalone-heading .eyebrow{margin-bottom:8px}.standalone-heading h3{font:600 30px/1.2 var(--font-ui);letter-spacing:-.035em}
.prelims-products{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.prelims-product{border:1px solid var(--color-line);border-radius:var(--radius-card);padding:26px;background:var(--color-paper);display:flex;flex-direction:column;align-items:flex-start}
.prelims-product h3{font:600 27px/1.2 var(--font-ui);letter-spacing:-.03em;margin:10px 0 12px}.prelims-product>p{font:16px/1.6 var(--font-body);margin:0 0 8px}
.prelims-product .prelims-product-note{font:14px/1.5 var(--font-ui);color:var(--color-ink-2);min-height:42px;max-width:44ch}
.prelims-product-fee{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin:20px 0}.prelims-product-fee strong{font:600 32px/1.15 var(--font-mono);letter-spacing:-.04em}.prelims-product-fee span{font:14px/1.5 var(--font-ui);color:var(--color-ink-2)}
.prelims-product .button{width:100%;justify-content:space-between}.prelims-product .prelims-excludes{font:14px/1.5 var(--font-ui);color:var(--color-ink-2);margin:14px 0 0;max-width:40ch}
.ca-standalone{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.8fr);gap:24px 60px;margin-top:22px;padding:32px;border:1px solid #cbd7c2;border-radius:var(--radius-card);background:linear-gradient(120deg,#edf1e5,#f7f7ed)}
.ca-offer-copy h3{font:600 clamp(29px,3vw,40px)/1.15 var(--font-ui);letter-spacing:-.035em;margin:12px 0 16px}.ca-offer-copy h3 em{font:400 1em/1.15 var(--font-body)}.ca-offer-copy>p{font:17px/1.6 var(--font-body);max-width:49ch}.ca-offer-copy .eyebrow{font:600 12px/1.5 var(--font-ui)}.ca-offer-copy .ca-offer-scope{font:15px/1.6 var(--font-ui);color:var(--color-ink-2);margin-top:12px}
.ca-launch{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font:500 15px/1.5 var(--font-ui);margin-top:18px;color:#365947}.ca-launch>span{width:7px;height:7px;background:#6b8660;border-radius:50%;margin-right:3px}
.ca-offer-price{padding-left:28px;border-left:1px solid #cdd7c6;align-self:center}.ca-offer-price>strong{display:block;font:600 clamp(38px,4vw,50px)/1.2 var(--font-mono);letter-spacing:-.06em;color:var(--color-emerald);margin:12px 0}.ca-offer-price>p{font:14px/1.7 var(--font-ui);color:var(--color-ink-2)}.ca-offer-price .underlink{margin-top:16px;font-size:15px}
.ca-samples{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;align-items:center;border-top:1px solid #d3ddca;padding-top:22px}.ca-samples h4{font:600 20px/1.4 var(--font-ui);margin-top:7px;letter-spacing:-.02em}
.ca-edition{display:flex;align-items:center;gap:12px;border:1px solid #d0dac8;border-radius:10px;padding:16px 14px;background:#ffffff70;color:var(--color-ink);text-decoration:none;min-width:0;transition:background .25s,transform .35s}.ca-edition:hover{background:#fffdf7;transform:translateY(-2px)}.ca-edition>span{font:500 18px var(--font-body);color:var(--color-emerald);border-right:1px solid #d0dac8;padding-right:12px}.ca-edition strong{display:block;font:600 16px/1.5 var(--font-ui)}.ca-edition small{display:block;font:13px/1.5 var(--font-ui);color:var(--color-ink-2)}.ca-edition>b{margin-left:auto;font-size:18px;font-weight:400}
#current-affairs .ca-disclosure{margin-top:0}
@media(max-width:760px){.prelims-products{grid-template-columns:1fr}.prelims-product{padding:22px}.prelims-product .prelims-product-note{min-height:0}.ca-standalone{grid-template-columns:1fr;gap:24px;padding:22px}.ca-offer-price{padding:20px 0 0;border-left:0;border-top:1px solid #cdd7c6}.ca-samples{grid-template-columns:1fr}.ca-samples>div{margin-bottom:4px}.ca-edition{min-height:76px}.ca-offer-copy h3{font-size:33px}}
/* Compact learner voices; continuous rightward movement is controlled in testimonials.js. */
#evidence{row-gap:0}
#evidence>.neem-stupa-scene{margin-bottom:32px}
.testimonial-section{grid-column:1/-1;min-width:0;width:100%;padding:0;margin:0;scroll-margin-top:110px}

.testimonial-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.testimonial-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #d8ded3;background:var(--color-paper);border-radius:50%;font:22px/1 var(--font-ui);color:var(--color-ink)}.testimonial-controls button:hover{background:#e9eedf}.testimonial-controls button:disabled{opacity:.35;cursor:default}.testimonial-controls #reviews-motion{width:auto;border:0;border-radius:0;padding-inline:12px;font-size:15px;background:none}
.testimonial-track{display:grid;grid-auto-flow:column;grid-auto-columns:310px;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:none;scrollbar-width:none;padding-block:4px;scroll-behavior:auto}.testimonial-track::-webkit-scrollbar{display:none}
.testimonial-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:20px 20px 12px;border:1px solid #dce1d6;border-radius:var(--radius-card);background:linear-gradient(145deg,#fffdf8,#f5f5ed)}.testimonial-card[data-tone="1"]{background:linear-gradient(145deg,#f7f8f0,#edf2e5)}
.testimonial-topic{font:600 11px/1.5 var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:#596b58;padding-right:20px}.testimonial-quote-mark{font:40px/1 var(--font-body);color:#8da280;position:absolute;top:13px;right:15px;opacity:.55}
.testimonial-card blockquote{margin:16px 0;padding:0;border:0;flex:1}.testimonial-card blockquote p{font:15px/1.7 var(--font-body);margin:0;color:var(--color-ink);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;height:6.8em}
.testimonial-signature{display:flex;align-items:center;gap:9px}.testimonial-rule{width:18px;height:1px;background:#99ad8b}.testimonial-signature cite{font:600 15px/1.5 var(--font-ui);font-style:normal;color:var(--color-ink)}
.testimonial-read{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;min-height:44px;width:100%;margin-top:9px;padding-top:6px;border-top:1px solid #dce2d3;background:none;font:500 14px/1.5 var(--font-ui);color:var(--color-emerald)}
.testimonial-foot{display:flex;align-items:center;justify-content:space-between;gap:8px 20px;font:13px/1.5 var(--font-ui);color:var(--color-ink-2);margin-top:9px}
#review-dialog{width:min(690px,calc(100% - 32px));max-height:88dvh;padding:28px;border:1px solid #d7dfce;border-radius:var(--radius-card);background:var(--color-paper);color:var(--color-ink);box-shadow:0 28px 80px #13291833}#review-dialog::backdrop{background:#17271dd1;backdrop-filter:blur(4px)}.review-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--color-line);padding-bottom:16px;margin-bottom:24px}.review-dialog-bar .eyebrow{margin:0;font-size:12px}.review-dialog-bar button{min-height:44px;padding:8px 12px;border-radius:8px;background:#edf1e6;white-space:nowrap;font:15px var(--font-ui)}
#review-full h3{font:600 29px/1.2 var(--font-ui);margin:0 0 24px}#review-full blockquote{margin:0;padding:0;border:0}#review-full p{font:17px/1.8 var(--font-body);margin:0 0 18px}#review-full p:last-child{margin-bottom:0}
@media(max-width:600px){.testimonial-controls{margin-left:auto}.testimonial-track{grid-auto-columns:min(290px,86%);gap:12px}.testimonial-card{padding:18px 18px 10px}.testimonial-topic{max-width:90%}.testimonial-foot{flex-wrap:wrap}.testimonial-foot>span:first-child{width:100%}#review-dialog{padding:20px}#review-full p{font-size:16px}}
/* Three compact, comparable standalone offers. */
.standalone-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.standalone-products #shelfPrelims{display:contents}
.standalone-products .offer-card{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;margin:0;padding:24px;border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-paper)}
.standalone-products .ca-standalone{border-color:#c5d3bd;background:linear-gradient(135deg,#edf2e7,#f7f7ef)}
.offer-card .tiny-label{font-size:11px;letter-spacing:.06em}.offer-copy{flex:1}.offer-card .offer-copy h3{font:600 clamp(23px,2.1vw,28px)/1.15 var(--font-ui);letter-spacing:-.035em;margin:12px 0 14px}.offer-card .offer-copy h3 em{font-family:var(--font-body);font-weight:400}.offer-copy>p{font:15px/1.6 var(--font-body);margin:0 0 8px}.offer-copy .offer-scope{font:14px/1.5 var(--font-ui);color:var(--color-ink-2);max-width:36ch}
.offer-fee{margin:20px 0 16px}.offer-fee strong{font:600 34px/1.1 var(--font-mono);letter-spacing:-.05em;color:var(--color-ink)}.ca-standalone .offer-fee strong{color:var(--color-emerald)}
.offer-card .button{width:100%;min-height:48px;padding:13px 15px;justify-content:space-between;font-size:15px;white-space:normal}
.offer-card .offer-foot{font:13px/1.5 var(--font-ui);color:var(--color-ink-2);margin:12px 0 0;min-height:39px;max-width:33ch}.offer-card .ca-launch{display:block;color:var(--color-emerald)}.ca-launch time{white-space:nowrap}
.standalone-terms{font:14px/1.6 var(--font-ui);color:var(--color-ink-2);margin:12px 0 22px}
#shelfMore>.ca-samples{padding-top:20px}.ca-samples h4{font-size:19px}#shelfMore>.ca-disclosure{margin-top:16px}
#ledgerNotesTotal th,#ledgerNotesTotal td{border-top:1px solid var(--color-line);font-weight:600}
/* Alternate the editorial emphasis without reversing reading order on phones. */
@media(min-width:900px){
 #coverage .process-heading{grid-template-columns:1fr 1fr;gap:70px;align-items:end}
 #coverage .process-heading>div{grid-column:2;grid-row:1}
 #coverage .process-heading>p{grid-column:1;grid-row:1;align-self:end;max-width:43ch}
 #evidence>.evidence-copy{grid-column:1;grid-row:1}
 #evidence>.neem-stupa-scene{grid-column:2;grid-row:1}
}
@media(max-width:899px){.standalone-products{grid-template-columns:1fr}.standalone-products .offer-card{padding:22px}.offer-card .offer-copy h3{font-size:27px}.offer-card .offer-copy h3 br{display:none}.offer-card .offer-copy h3 br:after{content:' '}.offer-card .offer-copy h3 em{margin-left:.25em}.offer-card .offer-foot{min-height:0}.offer-copy .offer-scope{max-width:none}.offer-fee{margin:16px 0}.standalone-terms{font-size:13px}.ca-samples{grid-template-columns:1fr}}
/* A welcome for AP exam aspirants, with current notices inside the hero. */
.hero-community{min-width:0;margin-top:28px}
.guided-hero .hero-copy{min-width:0}
.guided-hero .hero-actions{flex-direction:row;align-items:center;gap:8px 22px}
.hero-tools{display:inline-flex;align-items:center;gap:12px;min-height:44px;font:500 15px/1.4 var(--font-ui);color:var(--color-emerald);text-underline-offset:5px}
.hero-incubation{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-top:12px;font:500 13px/1.5 var(--font-ui);color:var(--color-ink-2);text-decoration:none}
.hero-incubation>span:first-child{color:var(--color-emerald);font-size:20px}
.hero-noticeboard{padding:16px;border:1px solid #cccbb9;border-radius:12px;background:linear-gradient(135deg,#e9e9dc,#e2e4d5);box-shadow:inset 0 0 0 4px #f3f1e7,0 7px 24px #263a2d08;position:relative;isolation:isolate}
.noticeboard-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 14px}
.noticeboard-head h2{font:600 19px/1.3 var(--font-ui);letter-spacing:-.025em;margin:0}
.noticeboard-head>span{font:500 10px/1.5 var(--font-ui);letter-spacing:.09em;color:#596451}
.notice-paper{position:relative;background:#fffef8;border:1px solid #e1dfcf;padding:9px 16px 0;box-shadow:0 3px 5px #3c493c0a}
.notice-pin{position:absolute;top:-5px;left:50%;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#b2bb95,#718367 75%);box-shadow:0 2px 2px #263a2d22}
.board-notice{display:flex;align-items:start;gap:14px;padding:15px 0;color:var(--color-ink);text-decoration:none;min-width:0}
.board-notice+.board-notice{border-top:1px solid #e5e4d8}
.notice-date{flex:0 0 47px;padding-top:2px;font:600 12px/1.6 var(--font-mono);color:#597150;white-space:nowrap}
.notice-date>span{display:block;font-weight:400;color:#6c7566;font-size:11px}
.board-notice>span:nth-child(2){flex:1;min-width:0}
.board-notice strong{display:block;font:600 16px/1.4 var(--font-ui);letter-spacing:-.02em}
.board-notice small{display:block;font:14px/1.5 var(--font-body);margin-top:3px;color:var(--color-ink-2)}
.board-notice>b{font:400 18px/1.4 var(--font-ui);color:var(--color-emerald)}
.notice-editions{display:flex;flex-wrap:wrap;gap:0 22px;margin-top:4px}
.hero-community .notice-copy>.notice-countdown,.notice-copy>.notice-countdown{display:flex;gap:18px;margin:10px 0 2px;font:500 15px/1.2 var(--font-ui);color:var(--color-ink-2)}
.notice-countdown span{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.notice-countdown b{font:600 22px/1 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--color-emerald)}
.notice-editions a{display:inline-flex;align-items:center;min-height:44px;font:500 14px/1.4 var(--font-ui);color:var(--color-emerald);text-underline-offset:4px}
.noticeboard-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding:12px 2px 0;min-height:44px;color:var(--color-ink);text-decoration:none;font:13px/1.5 var(--font-ui)}
.noticeboard-tools>span{color:var(--color-ink-2)}
.noticeboard-tools strong{font-weight:500}.noticeboard-tools strong span{margin-left:6px}
.hero-community .hero-map-shell{margin-top:24px}
.hero-community .relief-wrap{height:280px;min-height:0;aspect-ratio:auto}
.hero-community .hero-map-shell>.micro{font-size:13px;margin-top:5px}
.hero-community .map-topline{font-size:10px}
.hero-noticeboard a:focus-visible,.hero-incubation:focus-visible,.hero-tools:focus-visible{outline:2px solid var(--color-emerald);outline-offset:4px;border-radius:3px}
.footer-incubation{display:inline-block;margin-top:10px;text-underline-offset:4px}
.site-header .nav{flex-wrap:wrap;row-gap:0}
.site-header .nav-links{display:flex;order:3;flex-basis:100%;justify-content:space-between;gap:8px;border-top:1px solid var(--color-line)}
.site-header .nav-links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
@media(max-width:760px){
 .site-header .nav-links{flex:1 1 auto}
 .site-header .nav-links a{font-size:15px}
 .site-header .nav-signin{order:3;align-self:stretch;min-height:44px;margin-left:-10px;padding:0 0 0 26px;border-top:1px solid var(--color-line)}
}
@media(min-width:761px){
 .hero-community{margin-top:0}
 .guided-hero .hero-copy{padding-bottom:30px}
 .hero-community .relief-wrap{height:300px}
 .hero-noticeboard{padding:20px}
}
@media(min-width:1000px){
 .site-header .nav{flex-wrap:nowrap}
 .site-header .nav-links{order:0;flex-basis:auto;gap:22px;border:0}
 .site-header .nav-links a{font-size:15px}
 .hero-community .relief-wrap{height:320px}
}
@media(prefers-reduced-motion:no-preference){
 .hero-noticeboard a{transition:color .18s ease}
 .hero-noticeboard a:hover{color:var(--color-emerald)}
}
@media(min-width:761px){
 .guided-hero .hero-copy{align-self:start;padding-bottom:0}
 .hero-community .relief-wrap{height:250px}
}
/* The hero makes one promise; the board provides a quiet, browsable update list. */
.guided-hero #hero-title{font-size:clamp(36px,1.5rem + 2.2vw,56px);line-height:1.08;letter-spacing:-.05em;max-width:12em}
.guided-hero #hero-title span:first-child{white-space:normal;text-wrap:balance}
.guided-hero #hero-title em{margin-top:10px;text-wrap:balance;line-height:1.16}
.hero-intro{font:17px/1.75 var(--font-body);color:var(--color-ink-2);max-width:43ch;margin-top:24px}
.guided-hero .hero-incubation{margin-top:16px}
.hero-noticeboard .notice-paper{padding:9px 0 0}
.notice-scroll{padding:0 16px}
.notice-scroll.is-scrollable{overflow-y:auto;max-height:440px;scrollbar-width:thin;scrollbar-color:#85947a transparent;overscroll-behavior-y:contain;scroll-padding-block:12px}
.notice-scroll:focus-visible{outline:2px solid var(--color-emerald);outline-offset:3px}
.notice-list{list-style:none;margin:0;padding:0}
.hero-noticeboard .board-notice{padding:13px 0}
.notice-copy{min-width:0;flex:1}
.notice-copy>p{font:14px/1.5 var(--font-body);margin:4px 0 0;color:var(--color-ink-2)}
.noticeboard-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 12px;padding:6px 2px 0;font:13px/1.5 var(--font-ui);color:var(--color-ink-2)}
.noticeboard-foot a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--color-ink);text-decoration:none;font-weight:500}
.notice-empty{font:15px/1.6 var(--font-body);padding:20px 0}
@media(min-width:761px){
 .guided-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:44px}
 .guided-hero .hero-copy{padding-top:18px}
 .hero-intro{font-size:18px}
 .hero-community .relief-wrap{height:190px}
}
@media(min-width:1100px){
 .guided-hero{gap:64px}
 .guided-hero .hero-copy{padding-top:30px}
 .hero-community .relief-wrap{height:210px}
}
.hero-founding{margin-top:16px;padding-top:14px;border-top:1px solid var(--color-line);max-width:460px}
.hero-founding a{display:grid;grid-template-columns:1fr auto;gap:4px 14px;padding-block:4px;text-decoration:none;color:var(--color-ink);font:14px/1.5 var(--font-ui)}
.hero-founding strong{font-weight:600;color:var(--color-emerald)}
.hero-founding [data-founding-count]{grid-row:2;color:var(--color-ink-2)}
.hero-founding a>span:last-child{grid-column:2;grid-row:1/3;align-self:center}
.founding-offer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin:0 0 28px;padding:20px 22px;border:1px solid #cdd8c4;background:#eef2e7;border-radius:12px;scroll-margin-top:140px}
.founding-offer>div>strong{font:600 19px/1.4 var(--font-ui);color:var(--color-emerald)}
.founding-offer p{margin:4px 0 0;font:14px/1.6 var(--font-ui);color:var(--color-ink-2)}
.founding-toggle{display:flex;align-items:center;gap:10px;min-height:44px;font:500 15px/1.5 var(--font-ui);cursor:pointer}
.founding-toggle input{width:21px;height:21px;accent-color:var(--color-emerald)}
.founding-toggle:has(input:disabled){cursor:default;color:var(--color-ink-2)}
.founding-offer .founding-scope{flex-basis:100%;border-top:1px solid #d9e0d1;padding-top:10px;margin:0}
.rail-standard{display:block;font:15px/1.5 var(--font-ui);color:var(--color-ink-2);margin-top:12px}.rail-standard[hidden]{display:none}
.rail-price-mode{font:500 13px/1.5 var(--font-ui);color:var(--color-emerald);margin:8px 0 0}
.rail-founding .rail-founding-detail{font:400 14px/1.6 var(--font-body);letter-spacing:0;text-transform:none;color:var(--color-ink-2)}
.notice-editions a{gap:4px}
.noticeboard-head{flex-wrap:wrap}.noticeboard-head h2,.noticeboard-head>span{white-space:nowrap}
/* A human next step after pricing, with the collectorate scene retained. */
.family-support{align-items:center;gap:clamp(28px,4.2vw,64px)}
.family-support .family-copy{min-width:0}
.family-support .family-copy>p.family-lead{max-width:42ch;margin:20px 0 22px;font:17px/1.7 var(--font-body);color:var(--color-ink-2)}
.family-support .family-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding-inline:20px}
.family-support .family-copy>p.family-contact-note{margin:10px 0 22px;font:14px/1.6 var(--font-ui);color:var(--color-ink-2)}
.family-support a:not(.button){text-underline-offset:4px}
.family-support .family-questions{margin-top:14px;border-top:1px solid var(--color-line)}
.family-support .family-questions details{border-bottom:1px solid var(--color-line)}
.family-support .family-questions summary{cursor:pointer;min-height:56px;padding:16px 26px 16px 0;position:relative;font:600 16px/1.5 var(--font-ui);list-style:none}
.family-support .family-questions summary::-webkit-details-marker{display:none}
.family-support .family-questions summary:after{content:'+';position:absolute;right:2px;top:13px;font:400 23px/1 var(--font-ui);color:var(--color-emerald)}
.family-support .family-questions details[open] summary:after{content:'−'}
.family-support .family-questions details>p{max-width:54ch;margin:0 0 18px;font:15px/1.75 var(--font-body);color:var(--color-ink-2)}
.family-support .family-copy>p.family-policy{margin:18px 0 0;font:14px/1.65 var(--font-ui);color:var(--color-ink-2)}
.family-support .family-art.campus-garden{margin-top:0;align-self:center}
.family-support [data-guide-dock=parent]{margin-top:10px}
@media(max-width:760px){
 .family-support .family-copy{grid-row:1}
 .family-support .family-art.campus-garden{grid-row:2;margin:0;aspect-ratio:3/2}
 .family-support .family-contact{width:100%}
}

/* Hero column: map first, then a compact board (founder, 17 Sep). */
.hero-community{display:flex;flex-direction:column}
.hero-community .hero-map-shell{order:0;margin-top:0}
.hero-community .hero-noticeboard{order:1;margin-top:18px;padding:12px 14px 8px}
.hero-community .noticeboard-head{margin:0 2px 10px}
.hero-community .noticeboard-head h2{font-size:16px}
.hero-community .hero-noticeboard .board-notice{padding:9px 0;gap:10px}
.hero-community .board-notice strong{font-size:15px}
.hero-community .notice-copy>p{font-size:13px;margin-top:2px}
.hero-community .notice-editions a{min-height:36px;font-size:13px}
.hero-community .notice-date{flex-basis:42px;font-size:11px}
.hero-community .noticeboard-foot{padding-top:2px;font-size:12px}
.hero-community .noticeboard-foot a{min-height:36px}
.hero-community .relief-wrap{height:300px}
@media(min-width:761px){.hero-community .relief-wrap{height:320px}}
@media(min-width:1100px){.hero-community .relief-wrap{height:360px}}

/* Neem caption: on narrow screens the absolute caption ran under the cards below; let it flow. */
@media(max-width:760px){#evidence>.neem-stupa-scene{margin-bottom:76px}.neem-stupa-caption{text-wrap:balance}}

/* Section 04: art on the left, copy on the right (founder, 17 Sep). */
@media(min-width:761px){[data-flight=live] .programs .section-heading{grid-template-columns:minmax(320px,440px) minmax(0,1fr)}#programs .section-heading>div{grid-column:2;grid-row:1}#programs .section-heading>.gandikota-scene{grid-column:1;grid-row:1}}
/* Current affairs samples: the Korrameenu pond is the setting for the two editions. */
.ca-pond-strip{grid-column:1/-1;display:grid;gap:8px 28px;align-items:center;border-top:1px solid #d3ddca;padding-top:22px}
.ca-pond-strip .ca-samples{grid-column:auto;border-top:0;padding-top:0;grid-template-columns:1fr;gap:12px}
.ca-pond-strip .fish-passage.pond-habitat{width:100%;margin:0 0 64px}
@media(min-width:900px){.ca-pond-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ca-pond-strip .fish-passage.pond-habitat{margin-bottom:36px}}

/* The footer nest names the state bird. */
.vizag-footer .rama-home p{display:block;bottom:-26px;font-size:13px;white-space:nowrap}

/* No motion controls on the page (founder, 17 Sep): header toggle and the guide "Quiet mode" buttons. */
#motion-toggle,.guide-quiet{display:none!important}
/* FAQ block in section 05 and the no-video note beside the payment. */
.family-faq-title{font:600 20px/1.3 var(--font-ui);letter-spacing:-.02em;margin:28px 0 6px}
.family-questions details{border-top:1px solid var(--color-line)}.family-questions details:last-of-type{border-bottom:1px solid var(--color-line)}
.family-questions summary{font:600 17px/1.4 var(--font-ui);min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}
.family-questions summary::-webkit-details-marker{display:none}.family-questions summary::after{content:'+';font-size:22px;font-weight:400;color:var(--color-emerald)}.family-questions details[open]>summary::after{content:'−'}
.family-questions details>p{font:16px/1.6 var(--font-body);color:var(--color-ink-2);margin:0 0 16px;max-width:60ch}
.shelf-foot .shelf-note{color:var(--color-ink)}.shelf-foot .shelf-note strong{font-weight:600}

/* Founding offer: a visible switch, not a small checkbox (founder, 17 Sep). */
.founding-offer{border:1px solid var(--color-line);border-left:4px solid var(--color-emerald);background:var(--color-paper);border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.04);padding:22px 24px;gap:14px 28px}
.founding-offer>div>strong{font:700 22px/1.3 var(--font-display);letter-spacing:-.02em;color:var(--color-ink)}
.founding-offer>div>strong em{font-style:normal;color:var(--color-emerald)}
.founding-offer p{font:500 15px/1.5 var(--font-mono);margin-top:6px}.founding-offer .founding-scope{font:15px/1.6 var(--font-ui);margin:0}
.founding-toggle{gap:14px;padding:8px 18px 8px 8px;border:1px solid var(--color-line);border-radius:999px;background:#fff;min-height:52px;font:600 16px/1.3 var(--font-ui);color:var(--color-ink)}
.founding-toggle input{appearance:none;-webkit-appearance:none;width:56px;height:32px;margin:0;border-radius:999px;background:#c5cdc1;position:relative;cursor:pointer;transition:background .25s ease;flex:none}
.founding-toggle input::after{content:'';position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .25s ease}
.founding-toggle input:checked{background:var(--color-emerald)}.founding-toggle input:checked::after{transform:translateX(24px)}
.founding-toggle input:disabled{opacity:.45;cursor:not-allowed}.founding-toggle:has(input:disabled){color:var(--color-ink-2)}
.founding-toggle input:focus-visible{outline:2px solid var(--color-emerald);outline-offset:3px}
.founding-switch-text{display:grid;gap:2px}.founding-switch-text small{font:400 14px/1.4 var(--font-ui);color:var(--color-ink-2)}
.founding-offer .founding-scope{font-size:15px}
@media(prefers-reduced-motion:reduce){.founding-toggle input,.founding-toggle input::after{transition:none}}
@media(max-width:600px){.founding-toggle{width:100%}}

/* Section 05 on phones: the collectorate roof sits below the FAQ, out of view, so Rama perches on the contact line instead. Desktop keeps the roof. */
@media(min-width:761px){[data-rama-perch="questions"]{display:none}}
.family-contact-note{position:relative}

/* Mobile Safari, 17 Sep: when a figure's WebGL matte is lost (iOS drops contexts under memory
   pressure) the raw keyed video was left visible. Fall back to the still. */
.life[data-playing=true]:not([data-matted=true]) .life-media>video,.life[data-playing=true]:not([data-matted=true]) .life-media>canvas:not(.life-poster){opacity:0!important;visibility:hidden!important}
.life[data-playing=true]:not([data-matted=true]) .life-media>.life-poster{opacity:1!important;visibility:visible!important}
.life[data-playing=true]:not([data-matted=true]):not([data-poster-ready=true]) .life-media>img{opacity:1!important;visibility:visible!important;display:block!important}
/* The animated surf canvas replaced the Vizag panorama and stayed blank on phones. Static image there. */
@media(max-width:760px){.vizag-footer .vizag-surf{display:none!important}.vizag-panorama:has(.vizag-surf:not([hidden]))>img{opacity:1!important}}

/* Phone figures (dancer, kabaddi): the pre-cut still is the figure; nothing else in the media box shows. */
[data-mobile-figure] .life-media>img{opacity:1!important;visibility:visible!important;display:block!important}
[data-mobile-figure] .life-media>video:not(.life-alpha),[data-mobile-figure] .life-media>canvas,[data-mobile-figure] .life-controls,[data-mobile-figure] .life-touch{display:none!important}
[data-mobile-figure] .life-media>.life-alpha{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:2;opacity:0;transition:opacity .2s}
[data-mobile-figure][data-video-alpha=playing] .life-media>.life-alpha{display:block!important;opacity:1!important;visibility:visible!important}
[data-mobile-figure] .life-media>video.life-alpha-source{display:block!important;position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
[data-mobile-figure][data-video-alpha=playing] .life-media>img{opacity:0!important}
[data-mobile-figure] .life-media{will-change:transform}
@keyframes bloom-sway{from{transform:rotate(-1.4deg) translateY(0)}to{transform:rotate(1.6deg) translateY(-3px)}}
@keyframes bloom-lean{from{transform:rotate(-.8deg) translateX(-2px)}to{transform:rotate(.9deg) translateX(3px)}}

.nw{white-space:nowrap}

/* founding price is the main figure; the standard price sits beside it, struck (8 Oct 2026) */
del.was{font:400 .78em/1 var(--font-mono);letter-spacing:-.02em;color:var(--color-ink-3);text-decoration:line-through;text-decoration-thickness:1.5px;margin-right:6px}
.ledger td.num a del.was,.compare td del.was{display:inline-block}
.compare td del.was{display:block;margin:0 0 2px}
.ledger td.num a::after{content:' ›'}
.rail-standard{display:block;font:500 17px/1.4 var(--font-mono);color:var(--color-ink-3);text-decoration:line-through;text-decoration-thickness:1.5px;margin-top:12px}
.rail-price-mode{font-size:15px}
