.process-link{display:inline-flex;align-items:center;gap:24px;padding:14px 0;color:var(--acid);font-size:.9rem;border-bottom:1px solid var(--line)}
.process-link:hover{color:var(--paper)}
.robot-feature{margin:80px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;border-top:1px solid var(--line);padding:50px 0 0}
.robot-feature-image{display:block;overflow:hidden;background:#e9e6de;border-radius:22px}
.robot-feature-image img{display:block;width:100%;height:auto}
.robot-feature-copy h3{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.055em;line-height:1.04;margin:25px 0}
.robot-feature-copy p{color:var(--muted);line-height:1.7;max-width:450px}
.process-directory{margin:32px 0 0;color:var(--muted);font-size:.85rem;line-height:2}
.process-directory a{color:var(--paper);text-decoration:underline;text-underline-offset:4px;margin-left:10px}
.process-directory span{margin-left:10px}
.case-page{background:var(--ink)}
.case-nav{max-width:1400px;margin:auto;padding:28px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}
.case-nav .wordmark{font-size:1.65rem}
.case-back{font:.8rem var(--font-mono)}
.case-back:hover{color:var(--acid)}
.case-main{max-width:1280px;margin:auto;padding:0 5%}
.case-hero{padding:86px 0 45px}
.case-kicker,.case-step,.case-facts dt,.case-media-label{font:.72rem/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.1em}
.case-kicker{color:var(--acid)}
.case-hero h1{font-size:clamp(3rem,7.8vw,7rem);font-weight:700;letter-spacing:-.065em;line-height:.98;margin:28px 0}
.case-hero h1 em{font-style:normal;color:var(--acid)}
.case-deck{max-width:680px;color:var(--muted);font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.65}
.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:28px 0;margin:38px 0 0;border-top:1px solid var(--line)}
.case-facts dt{color:var(--muted)}
.case-facts dd{margin:8px 0 0;line-height:1.5;font-size:.9rem}
.case-cover{margin:0}
.case-cover img{display:block;width:100%;height:auto;background:#e9e6de;border-radius:16px}
.case-cover figcaption,.case-gallery figcaption{color:var(--muted);font:.75rem/1.7 var(--font-mono);padding-top:13px}
.case-toc{display:flex;flex-wrap:wrap;gap:12px 28px;padding:27px 0;border-bottom:1px solid var(--line);margin-top:25px;font-size:.82rem}
.case-toc a:hover{color:var(--acid)}
.case-section{display:grid;grid-template-columns:1fr 2fr;gap:8%;padding:75px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}
.case-step{color:var(--acid)}
.case-section h2{font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.04em;line-height:1.1;margin:18px 0 0}
.case-prose p{color:#c1c0ba;font-size:1.05rem;line-height:1.85;margin:0 0 20px}
.case-prose p:last-child{margin-bottom:0}
.case-prose strong{color:var(--paper);font-weight:500}
.case-gallery{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:12px}
.case-gallery figure{margin:0;min-width:0}
.case-gallery img{width:100%;height:auto;display:block;background:#e9e6de;border-radius:12px}
.robot-comparison img{aspect-ratio:1.4;object-fit:contain}
.case-media-label{display:block;color:var(--paper);margin-bottom:12px}
.case-wide{grid-column:1/-1;margin:15px 0 0}
.case-wide img{width:100%;height:auto;display:block;border-radius:12px}
.case-wide figcaption{font:.75rem/1.7 var(--font-mono);color:var(--muted);margin-top:14px}
.case-wide a{display:block}
.case-beats{padding-left:22px;margin:0;color:#c1c0ba;line-height:1.8}
.case-beats li{padding:0 0 15px 10px}
.case-beats li::marker{color:var(--acid);font-family:var(--font-mono)}
.case-video{width:100%;aspect-ratio:16/9;border:1px solid var(--line);border-radius:12px;background:#17171b}
.case-end{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:65px 0}
.case-end p{color:var(--muted);font:.75rem var(--font-mono)}
.case-end a{font-size:clamp(1.2rem,3vw,2rem);letter-spacing:-.03em}
.case-end a:hover{color:var(--acid)}
.case-credit{font-size:.9rem!important}
.case-page a:focus-visible,.process-link:focus-visible,.robot-feature a:focus-visible{outline:2px solid var(--acid);outline-offset:6px}
@media(max-width:640px){.robot-feature{grid-template-columns:1fr;gap:30px;margin-top:45px}.case-nav{padding:22px 5%}.case-hero{padding:52px 0 24px}.case-facts{grid-template-columns:1fr;gap:18px}.case-facts>div{display:grid;grid-template-columns:95px 1fr;gap:12px}.case-facts dd{margin:0}.case-section{grid-template-columns:1fr;gap:25px;padding:45px 0}.case-gallery{grid-template-columns:1fr;gap:30px;margin:0}.case-end{align-items:flex-start;flex-direction:column;padding:45px 0}}
/* Keep spacing between article rows independent of section height. */
.case-section { column-gap: 8%; row-gap: 32px; }
@media(max-width:640px) { .case-section { gap:25px; } }
.project-card[href] .project-play::before { content:'↗'; border:0; width:auto; height:auto; margin:0; font-size:24px; }

/* Featured process-story carousel. Both slides share a stable grid cell. */
.article-slider { margin-top:80px; padding-top:30px; border-top:1px solid var(--line); }
.article-slider-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:28px; }
.article-count { color:var(--muted); font:.75rem var(--font-mono); white-space:nowrap; }
.article-slides { display:grid; }
.article-slider .article-slide { grid-area:1/1; margin:0; padding:0; border:0; column-gap:6%; row-gap:30px; opacity:0; visibility:hidden; transform:translateX(16px); transition:opacity .45s ease,transform .45s ease,visibility .45s; }
.article-slider .article-slide.is-active { opacity:1; visibility:visible; transform:none; }
.article-slider .robot-feature-image { aspect-ratio:1.43; }
.article-slider .robot-feature-image img { height:100%; object-fit:contain; }
.article-slider-controls { display:flex; justify-content:space-between; gap:20px; margin-top:28px; align-items:center; }
.article-slider-controls[hidden] { display:none; }
.article-selectors,.article-arrows { display:flex; gap:10px; align-items:center; }
.article-slider-controls button { color:var(--muted); background:transparent; border:1px solid var(--line); min-height:44px; padding:10px 18px; border-radius:30px; font:inherit; font-size:.85rem; cursor:pointer; transition:color .2s,background .2s; }
.article-selectors button span { font:.65rem var(--font-mono); margin-right:10px; }
.article-selectors button[aria-pressed="true"] { background:var(--acid); color:var(--ink); border-color:var(--acid); }
.article-arrows button { min-width:44px; padding:10px 14px; }
.article-slider-controls button:hover { color:var(--paper); border-color:var(--paper); }
.article-selectors button[aria-pressed="true"]:hover { color:var(--ink); }
.article-slider a:focus-visible,.article-slider button:focus-visible { outline:2px solid var(--acid); outline-offset:5px; }
.slider-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:640px) { .article-slider { margin-top:45px; } .article-slider-controls { flex-wrap:wrap; } .article-slider-heading .eyebrow { font-size:.65rem; } .article-slider .robot-feature-copy h3 { margin:18px 0; } }
@media(prefers-reduced-motion:reduce) { .article-slider .article-slide { transition:none; transform:none; } }
.article-slider { scroll-margin-top:110px; }
/* Four story selectors wrap cleanly on smaller screens. */
.article-slider-controls, .article-selectors { flex-wrap:wrap; }
.article-arrows { flex-shrink:0; }
#story-dracula .robot-feature-image, #story-coffee .robot-feature-image { background:#17171b; }
@media(max-width:640px) { .article-selectors { gap:8px; } .article-selectors button { padding:10px 14px; } }
.case-motion { display:grid; justify-items:center; padding:clamp(18px,4vw,48px); border-radius:16px; background:#000; }
.case-motion-video { display:block; width:auto; max-width:100%; height:auto; max-height:620px; aspect-ratio:720/1036; background:#000; }
.case-motion figcaption { width:100%; }
