/* Bounded M1 proofs; dimensions derive from the retained R3 compositions and M0 study. */
.nav-link{text-decoration:none}.section-proof{scroll-margin-top:0}.section-body{font-size:19px;line-height:1.55;color:var(--muted);max-width:1120px}.comparison{padding:42px 32px 92px;max-width:1600px;margin:auto;border-top:1px solid var(--rule)}.comparison-intro{padding:0 16px}.comparison h2,.solutions-intro h2{font-size:48px;line-height:1.08;letter-spacing:-1px}.comparison-intro .section-body{margin:26px 0 30px}.comparison-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 16px 18px}.graph-labels{display:flex;gap:32px;font-size:14px;font-weight:510}.compare-choices{display:flex;gap:8px}.compare-choice{padding:10px 22px;border-radius:4px;background:#e9e9e3;color:#1a1614;min-height:44px;font-size:14px}.compare-choice[aria-pressed=true]{background:#7d3e26;color:white}.workflow{--reveal:50%;position:relative;aspect-ratio:1376 / 540;isolation:isolate;touch-action:pan-y;cursor:ew-resize;background:transparent}.workflow-layer{position:absolute;inset:0;background:transparent}.workflow-layer.before{clip-path:inset(0 0 0 var(--reveal))}.workflow-layer.after{clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.workflow-svg{display:block;width:100%;height:auto;overflow:visible}.workflow-svg text{font-family:Inter,Arial,sans-serif}.workflow-svg.mobile-graph{display:none}.wipe-divider{position:absolute;inset:0 auto 0 clamp(0px,var(--reveal),calc(100% - 2px));width:2px;background:var(--ink);pointer-events:none}.wipe-divider span{position:absolute;top:45%;left:0;transform:translateX(-50%);width:42px;height:50px;display:flex;align-items:center;justify-content:center;background:#1a1614;color:white;border-radius:4px;font-size:25px}.workflow[data-reveal="0"] .wipe-divider span{transform:none}.workflow[data-reveal="100"] .wipe-divider span{transform:translateX(-100%)}.reveal-control{display:grid;grid-template-columns:1fr auto;gap:8px 16px;padding:20px 16px 0;font-size:13px;color:var(--muted)}.reveal-control input{grid-column:1/-1;width:100%;height:32px;margin:0;cursor:ew-resize}.flow-controls{display:flex;align-items:center;gap:20px;padding:4px 16px}.flow-controls p{font-size:13px;line-height:1.5;color:var(--muted);margin-right:auto;max-width:600px}.flow-status{margin:14px 16px 28px;color:var(--rust);font-size:16px;line-height:1.5;min-height:48px}.workflow-values{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:0 16px}.workflow-values h3{font-size:18px;font-weight:510;margin:0 0 10px}.workflow-values p{font-size:15px;line-height:1.5;color:var(--muted);margin:0}.caveat{font-size:12px;line-height:1.5;margin:28px 16px 18px;color:var(--muted)}.workflow-reading{margin:0 16px;max-width:900px;font-size:15px;line-height:1.6}.workflow-reading summary{cursor:pointer;min-height:44px;padding:10px 0;text-decoration:underline;text-underline-offset:4px}.workflow-reading li{margin:8px 0}
.problems{border-top:1px solid var(--rule);max-width:1600px;margin:auto;padding-top:80px}.problems>h2{font-size:38px;line-height:1.2;letter-spacing:-.8px;margin:0 80px 70px;max-width:1200px}.problem-track{position:relative}.problem-stage{display:grid;grid-template-columns:460px minmax(0,1fr);gap:64px;padding:0 48px 0 120px}.problem-window{overflow:visible}.problem-stack{will-change:transform}.problem-box{height:288px;padding:26px 28px;margin:0 0 42px;border:1px dashed var(--rule);background:transparent}.problem-number{font-size:12px}.problem-box h3{font-size:30px;line-height:36px;letter-spacing:-.55px;font-weight:510;margin:32px 0 16px}.problem-box p{font-size:18px;line-height:27px;margin:0}.problem-art{margin:0;align-self:start}.problem-art img{display:block;width:100%;height:auto;background:transparent}.problem-art figcaption{font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);padding:0 12px}.scene-status{font-size:12px;line-height:1.5;color:var(--muted);min-height:18px}.scene-status:empty{display:none}.problem-jumps{display:none;gap:8px;margin-top:18px}.problem-jumps button{background:transparent;border-bottom:1px solid var(--rule);width:50px;height:44px;font-size:13px}.problem-jumps button[aria-current=step]{border-bottom:3px solid var(--rust);font-weight:650}.problem-closing{margin:30px 80px 100px;font-size:25px;line-height:1.4;max-width:850px;letter-spacing:-.4px}.problems[data-scroll=ready] .problem-track{height:calc(100svh + 2720px)}.problems[data-scroll=ready] .problem-stage{position:sticky;top:128px;height:calc(100svh - 128px)}.problems[data-scroll=ready] .problem-window{height:min(640px,calc(100svh - 238px));overflow:clip}.problems[data-scroll=ready] .problem-jumps{display:flex}.problems[data-scroll=ready] .problem-art img{max-height:calc(100svh - 196px);object-fit:contain}
.solutions{max-width:1600px;margin:auto;padding:80px 32px 100px;border-top:1px solid var(--rule)}.solutions-intro{margin:0 48px 64px;max-width:1110px}.solutions-intro h2{max-width:980px}.solutions-intro p{max-width:940px;margin-top:28px}.assess{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:38px 16px 60px;border-top:1px solid var(--rule)}.assess h3,.service-heading h3{font-size:36px;line-height:1.2;font-weight:510;letter-spacing:-.8px;margin:0}.assess h4,.service-heading h4{font-size:32px;line-height:39px;font-weight:510;letter-spacing:-.65px;margin:0}.assess p{font-size:20px;line-height:30px;margin:30px 0 0}.service-cascade{position:relative;isolation:isolate}.service-panel{position:relative;background:var(--canvas);border-top:1px solid var(--rule);min-height:720px;padding:30px 16px 48px}.service-panel[data-sticky=true]{position:sticky;top:72px}.service-panel:nth-child(1){z-index:1}.service-panel:nth-child(2){z-index:2}.service-panel:nth-child(3){z-index:3}.service-heading,.service-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.service-body{margin-top:35px}.service-art{margin:0;align-self:start}.service-art img{width:100%;height:auto;display:block;background:transparent}.service-art figcaption{text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:16px}.service-copy p{font-size:22px;line-height:32px;margin:0;padding:0 0 30px;letter-spacing:-.22px}.service-copy p+p{padding-top:0}.review-jumps{display:flex;flex-wrap:wrap;gap:24px;margin:30px 0}.review-jumps a{min-height:40px;padding:8px 0;font-size:14px}#mobile-menu nav>a{font-size:28px;padding:18px 0;text-decoration:none}.service-panel:last-child{margin-bottom:0}body[data-surface=dark] .flow-status{color:#e9a783}body[data-surface=dark] .problem-jumps button[aria-current=step]{border-color:#e9a783}
@media(max-width:1250px){.problem-stage{grid-template-columns:400px minmax(0,1fr);gap:34px;padding-left:60px;padding-right:32px}.service-copy p{font-size:20px;line-height:30px}.service-heading h3{font-size:32px}.service-heading h4{font-size:29px;line-height:35px}}
@media(max-width:900px){.comparison{padding:40px 12px 65px}.comparison-intro{padding:0 12px}.comparison h2,.solutions-intro h2{font-size:38px;line-height:42px;letter-spacing:-.8px}.section-body{font-size:16px;line-height:24px}.comparison-toolbar{flex-direction:column-reverse;align-items:stretch;padding:0 12px 18px;gap:20px}.compare-choices{display:grid;grid-template-columns:repeat(3,1fr)}.compare-choice{padding:10px}.graph-labels{font-size:12px;gap:12px;justify-content:space-between}.workflow{aspect-ratio:366 / 2000}.workflow-svg.desktop-graph{display:none}.workflow-svg.mobile-graph{display:block}.flow-controls{padding:0 12px;flex-wrap:wrap;gap:12px}.flow-controls p{flex-basis:100%}.flow-controls .cta{flex:1;min-width:140px}.flow-status{margin:20px 12px}.workflow-values{grid-template-columns:1fr;gap:32px;padding:0 12px}.workflow-values h3{font-size:23px;line-height:30px}.workflow-values p{font-size:16px;line-height:24px}.caveat,.workflow-reading{margin-left:12px;margin-right:12px}.problems{padding-top:52px}.problems>h2{margin:0 24px 44px;font-size:32px;line-height:38px}.problem-stage{display:flex;flex-direction:column;gap:8px;padding:0 24px}.problem-copy{width:100%}.problem-box{padding:24px 20px;height:288px;margin-bottom:26px}.problem-box h3{font-size:28px;line-height:33px;margin:26px 0 16px}.problem-box p{font-size:16px;line-height:24px}.problem-art{width:100%;max-width:430px;margin:0 auto}.problem-art img{max-height:330px!important;object-fit:contain}.problem-art figcaption{padding:0;font-size:11px;gap:8px}.problem-art .quiet{font-size:11px}.problems[data-scroll=ready] .problem-stage{top:104px;height:calc(100svh - 104px)}.problems[data-scroll=ready] .problem-window{height:288px}.problems[data-scroll=ready] .problem-track{height:calc(100svh + 2400px)}.problem-jumps{margin-top:8px;gap:12px}.problem-jumps button{height:36px}.problem-closing{margin:32px 24px 65px;font-size:22px}.solutions{padding:52px 24px 65px}.solutions-intro{margin:0 0 44px}.solutions-intro p{margin-top:28px}.assess{display:block;padding:30px 0 40px}.assess h3{font-size:27px;margin-bottom:18px}.assess h4{font-size:30px;line-height:36px}.assess p{font-size:18px;line-height:27px;margin-top:24px}.service-panel,.service-panel[data-sticky=true]{position:relative;top:auto;min-height:0;padding:30px 0 40px}.service-heading,.service-body{display:block}.service-heading h3{font-size:27px;line-height:34px;margin-bottom:15px}.service-heading h4{font-size:30px;line-height:36px}.service-body{margin-top:10px}.service-art{max-width:600px;margin:0 auto 20px}.service-art figcaption{margin-top:-12px}.service-copy p{font-size:18px;line-height:27px;padding-bottom:24px;letter-spacing:0}.service-copy p+p{padding-top:0}.proof-controls{margin-top:0}}
@media(max-width:900px) and (max-height:730px){.problems[data-scroll=ready] .problem-art img{max-height:180px!important}.problem-box{height:260px}.problems[data-scroll=ready] .problem-window{height:260px}.problem-box h3{font-size:25px;line-height:29px;margin-top:18px}.problem-box p{font-size:15px;line-height:22px}.problem-art figcaption{flex-wrap:wrap;gap:0}.problem-art .quiet{min-height:28px}}
@media(prefers-reduced-motion:reduce){.problem-stack{will-change:auto}}

.problems[data-scroll=reduced] .problem-art{position:sticky;top:128px}.problems[data-scroll=reduced] .problem-art img{max-height:calc(100svh - 220px);object-fit:contain}@media(max-width:900px){.problems[data-scroll=reduced] .problem-art{position:static}}
@media(max-width:900px){.comparison{display:flex;flex-direction:column}.comparison-intro{order:0}.comparison-toolbar{order:1}.reveal-control{order:2;position:sticky;top:72px;z-index:4;background:var(--canvas);padding-top:10px;padding-bottom:6px;border-bottom:1px solid var(--rule)}.flow-controls{order:3;margin-bottom:22px}.workflow{order:4;flex:none}.flow-status{order:5}.workflow-values{order:6}.caveat{order:7}.workflow-reading{order:8}}

.service-cascade::after{content:"";display:block;height:var(--service-tail,0px)}
@media(min-width:901px) and (max-height:850px){.service-panel{min-height:min(720px,calc(100svh - 72px));padding-top:24px;padding-bottom:24px}.service-body{margin-top:24px}.service-art img{max-height:calc(100svh - 260px);object-fit:contain}}

/* Feedback checkpoint 1: cleaner aligned, branching comparison. */
/* R08 approved native illustrations preserve their 4:3 camera framing. */
.problem-visual{position:relative;aspect-ratio:4/3;width:100%;max-height:calc(100svh - 196px)}
.problem-visual img,.problem-visual canvas{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none!important;object-fit:contain;background:transparent}
.problem-reading-art{width:100%;height:auto;object-fit:contain}
.problems[data-scroll=ready] .problem-reading-art{display:none}
.problems:not([data-scroll=ready]) .problem-stage{display:block;position:static}
.problems:not([data-scroll=ready]) .problem-art{display:none}
.problems:not([data-scroll=ready]) .problem-box{height:auto;min-height:288px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:max-content max-content 1fr;column-gap:40px}
.problems:not([data-scroll=ready]) .problem-box>:not(img){grid-column:1}
.problems:not([data-scroll=ready]) .problem-reading-art{grid-column:2;grid-row:1/4;align-self:center}
@media(max-width:900px){.problem-visual{max-height:330px}.problems:not([data-scroll=ready]) .problem-box{display:block}.problem-reading-art{margin-top:20px}}
@media(max-width:900px) and (max-height:730px){.problem-visual{max-height:180px}}
.comparison-toolbar{display:flex;flex-direction:row;justify-content:space-between;padding:0 28px 14px;font-size:14px;font-weight:550;letter-spacing:.02em}
.workflow{aspect-ratio:1376 / 580;-webkit-user-select:none;user-select:none;touch-action:pan-y}
.workflow *{-webkit-user-select:none;user-select:none}
.wipe-divider{pointer-events:auto;cursor:ew-resize;z-index:3}
.wipe-divider:focus-visible{outline:none}
.wipe-divider:focus-visible span{outline:3px solid var(--rust);outline-offset:4px}
.wipe-divider::before{content:"";position:absolute;inset:0 -20px;min-width:42px}
.graph-edge{fill:none;stroke:var(--rule);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.graph-trace{fill:none;stroke:var(--orange);stroke-width:3.2;stroke-dasharray:8 110;stroke-linecap:round;opacity:0}
.workflow-svg[data-mode=before] .graph-edge{stroke-dasharray:5 6;opacity:.8}
.workflow-svg[data-mode=before] .graph-trace{stroke:var(--rust);stroke-width:2.5;stroke-dasharray:13 110}
.node-box{fill:transparent;stroke:var(--rule);stroke-width:1.2}
.workflow-svg[data-mode=before] .node-box{stroke-dasharray:3 3}
.workflow-svg[data-mode=after] .visited .node-box{fill:rgb(184 92 56 / .055)}
.node-light{fill:none;stroke:var(--orange);stroke-width:2.5;stroke-dasharray:100;stroke-dashoffset:100;opacity:0;filter:drop-shadow(0 0 3px rgb(184 92 56 / .28))}
.workflow-svg[data-mode=before] .node-light{stroke:var(--rust);stroke-width:1.6;filter:none}
.graph-edge.visited{stroke:var(--orange);opacity:.75}
.node-tag{font-size:9px;letter-spacing:.06em;fill:var(--muted);font-weight:550}
.node-title{font-size:19px;fill:var(--ink);font-weight:550;letter-spacing:-.35px}
.node-description{font-size:12px;fill:var(--muted)}
.branch-label{font-size:10px;fill:var(--muted);letter-spacing:.07em;font-weight:500}
.workflow-caption{display:flex;align-items:center;gap:24px;padding:8px 16px 0;margin-bottom:36px;min-height:62px}
.workflow-caption .flow-status{color:var(--muted);font-size:14px;min-height:0;line-height:1.5;margin:0;flex:1}
.flow-restart{display:grid;place-items:center;width:44px;height:44px;flex:none;background:transparent;border-radius:4px}
.flow-restart svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.flow-restart:hover{background:rgb(125 62 38 / .08)}
body[data-surface=dark] .workflow-svg[data-mode=before] .graph-trace,body[data-surface=dark] .workflow-svg[data-mode=before] .node-light{stroke:#e9a783}
body[data-surface=dark] .node-light,body[data-surface=dark] .graph-trace,body[data-surface=dark] .graph-edge.visited{stroke:#da865e}
body[data-surface=dark] .wipe-divider:focus-visible span{outline-color:#e9a783}
@media(max-width:900px){.workflow{aspect-ratio:366 / 790}.workflow-caption{order:5;padding:12px 12px 0;gap:12px;margin-bottom:32px}.comparison-toolbar{padding:0 20px 10px;flex-direction:row}.node-title{font-size:15px;letter-spacing:-.2px}.node-tag{font-size:8px;letter-spacing:.015em}.branch-label{font-size:9px}.wipe-divider span{top:50%;width:38px;height:46px}.workflow-caption .flow-status{font-size:13px}}

/* Approved Assess composition: overarching introduction, outside the cascade. */
#assess-intro{display:block;padding-bottom:48px}
.assess-heading,.assess-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.assess-body{margin-top:24px}.assess-art{margin:0}.assess-visual{position:relative;width:100%;aspect-ratio:16/9}
.assess-visual img,.assess-visual canvas{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;background:transparent}
.assess-copy p{margin:0 0 28px;font-size:20px;line-height:30px}
@media(max-width:900px){.assess-heading,.assess-body{display:block}.assess-heading h3{margin-bottom:16px}.assess-body{margin-top:12px}.assess-art{margin:0 auto 20px;max-width:550px}.assess-copy p{font-size:18px;line-height:27px}}
