/* Scoped method presentation. No styles leak into experiment galleries. */
#film-sections:has(.method-overview){max-width:1200px}
#method.method-overview{text-align:left;margin-bottom:52px;padding-top:32px;font-family:Arial,'Segoe UI',sans-serif;scroll-margin-top:calc(var(--project-header-height,64px) + 16px)}
#method.method-overview>#method-title{text-align:center;margin-bottom:42px}
.method-overview #method-steps{display:grid;overflow:hidden}
.method-overview .method-step{grid-area:1/1;display:grid;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:clamp(32px,4.4vw,64px);align-items:center;margin:0;min-width:0}
.method-overview .method-step[hidden]{display:grid;visibility:hidden;pointer-events:none}
.method-overview .method-step:not([hidden]) .method-copy{animation:method-copy-enter .16s ease-out}
@keyframes method-copy-enter{from{opacity:.6}to{opacity:1}}
.method-overview .method-visual{position:relative;min-width:0;aspect-ratio:16/9;border-radius:4px;background:#f5f5f6;overflow:hidden}
.method-overview .method-visual video{display:block;width:100%;height:100%;margin:0;object-fit:contain;background:#f5f5f6}
/* Same static edge guard as the existing overview videos. No transition motion. */
.method-overview .method-visual video{clip-path:inset(.5px);transform:translateZ(0) scale(1.004);backface-visibility:hidden}
.method-overview .method-controls{position:absolute;right:14px;bottom:14px;display:flex;gap:6px;opacity:0;transition:opacity .15s}
.method-overview .method-visual:hover .method-controls,.method-overview .method-visual:focus-within .method-controls,.method-overview .method-visual.is-paused .method-controls{opacity:1}
.method-overview .method-controls button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;padding:0;border:0;border-radius:50%;background:#111e;color:#fff;cursor:pointer}
.method-overview .method-controls button:hover{background:#333}
.method-overview .method-controls svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.method-overview .method-controls .method-play-glyph{fill:currentColor;stroke:none}
.method-overview .method-controls button[aria-pressed=true] .method-pause-glyph,.method-overview .method-controls button[aria-pressed=false] .method-play-glyph{display:none}
.method-overview .method-copy{padding:12px 0;min-width:0;text-align:left}
.method-overview .method-copy h3{font:400 clamp(25px,2.3vw,32px)/1.13 Georgia,serif;letter-spacing:-.45px;margin:0 0 20px;text-wrap:balance;color:#151515}
.method-overview .method-copy p{font:400 16px/1.65 Arial,'Segoe UI',sans-serif;color:#5c5c5c;margin:0}
.method-overview .method-copy p+p{margin-top:12px}
.method-overview .method-teacher{color:#4b55a0}.method-overview .method-student{color:#a5233d}.method-overview .method-weak{color:#784b96}
.method-overview .method-equation{margin:16px 0;color:#303238;font-size:18px}
.method-overview .method-equation math{font-family:'Cambria Math',math;font-size:18px;math-style:normal}
.method-overview .method-visual:fullscreen{background:#f5f5f6;display:flex;align-items:center;justify-content:center;aspect-ratio:auto;border-radius:0}
.method-overview .method-visual:fullscreen video{width:100%;height:100%;object-fit:contain}
.method-overview .method-timeline{position:relative;display:flex;gap:18px;margin:38px 0 0;overflow-x:auto;scrollbar-width:thin;padding:3px 0 5px}
.method-overview .method-tab{position:relative;flex:1;min-width:max-content;padding:13px 5px 18px;appearance:none;border:0;background:transparent;color:#888;font:400 14px/1.4 Arial,sans-serif;text-align:center;white-space:nowrap;cursor:pointer}
.method-overview .method-tab:before,.method-overview .method-tab:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#e5e5e5}
.method-overview .method-tab:after{background:#111;transform:scaleX(var(--progress,0));transform-origin:left}
.method-overview .method-tab[aria-selected=true]{color:#111;font-weight:600}
.method-overview .method-tab:hover{color:#111}
.method-overview button:focus-visible{outline:2px solid #111;outline-offset:3px}
@media(max-width:760px){
 #method.method-overview>#method-title{margin-bottom:30px}
 .method-overview .method-step{grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:23px;align-items:start}
 .method-overview .method-copy{padding:0 3px}
 .method-overview .method-copy h3{font-size:27px;margin-bottom:14px}
 .method-overview .method-copy p{line-height:1.6}
 .method-overview .method-controls{opacity:1;right:10px;bottom:10px}
 .method-overview .method-timeline{gap:18px;margin-top:25px}
 .method-overview .method-tab{flex:0 0 auto;min-width:78px}
}
@media(hover:none){.method-overview .method-controls{opacity:1}}
@media(prefers-reduced-motion:reduce){.method-overview .method-controls{transition:none;opacity:1}.method-overview .method-step:not([hidden]) .method-copy{animation:none}}
