/* Project case study: a readable product narrative around real media. */
body:has(.case-study-page){--geek-bg:#0c0f0d;--geek-fg:#edf1e8;--geek-accent:#c5f487;--geek-muted:#aab2a6;--geek-line:#344136;background:#0c0f0d}
html:has(.case-study-page){scroll-padding-top:0}
.case-study-page{max-width:1240px;margin:0 auto;padding:50px 0 0;color:var(--geek-fg)}
.scroll-reveal-enabled .case-study-page+.portfolio-contact.scroll-card{opacity:1;transform:none;transition:none}
.case-hero{scroll-margin-top:150px;padding-bottom:44px}.case-back{font-size:13px;margin-bottom:32px}.case-hero h1{font-size:70px;font-weight:650;line-height:1.2;letter-spacing:-2.7px}.case-lead{font-size:24px;line-height:1.7;color:#d1dcc7;margin-top:18px}.case-byline{font-size:14px;line-height:1.8;color:var(--geek-muted);margin-top:25px}.case-byline>span{margin-left:14px;font-family:var(--geek-mono);font-size:12px}
.case-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:36px}.case-facts>div{border-left:1px solid #647357;padding-left:24px}.case-facts dt{font-size:12px;line-height:1.8;color:#9dac93}.case-facts dd{font-size:20px;line-height:1.6;margin:6px 0 0;color:#edf1e8}.case-actions{display:flex;flex-wrap:wrap;gap:20px;margin-top:30px}
.case-study-page .button{display:inline-flex;align-items:center;gap:14px;border-radius:3px;min-height:50px;padding:13px 24px;background:transparent;border-color:#536447;color:#edf1e8;font-size:14px;line-height:1.6}.case-study-page .button svg{width:19px;height:19px}.case-study-page .primary-link{background:#c5f487;border-color:#c5f487;color:#15220e}.case-study-page .button:hover{background:#22331b;border-color:#c5f487}.case-study-page .primary-link:hover{background:#d6ffa2;color:#15220e}
.case-nav{position:sticky;top:72px;z-index:55;display:flex;gap:32px;align-items:center;background:#0c0f0df5;backdrop-filter:blur(12px);border-top:1px solid var(--geek-line);border-bottom:1px solid var(--geek-line);min-height:58px;overflow-x:auto;scrollbar-width:none}.case-nav::-webkit-scrollbar{display:none}.case-nav a{display:block;white-space:nowrap;font-size:13px;line-height:1.8;padding:17px 0 15px;border-bottom:3px solid transparent;color:#aab2a6}.case-nav a[aria-current]{color:#c5f487;border-bottom-color:#c5f487}.case-nav a:hover{color:#edf1e8}
.case-section{scroll-margin-top:150px}.case-demo-section{padding:28px 0 0}.case-study-page .demo-player{margin:0}.case-study-page .demo-media{border-radius:9px}.case-study-page .demo-bar{margin-top:16px}.case-study-page .demo-toggle{font-size:13px;padding:10px 17px}.case-study-page .demo-duration{font-size:12px}
.demo-chapters{display:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:30px}.demo-chapters.chapters-ready{display:grid}.chapter-button{position:relative;text-align:left;display:flex;flex-direction:column;gap:10px;min-width:0;min-height:93px;padding:15px 40px 17px 24px;background:transparent;border:0;border-left:1px solid #45563b;color:#edf1e8;cursor:pointer}.chapter-time{font:12px/1.8 var(--geek-mono);color:#9aac8c}.chapter-title{font-size:14px;line-height:1.8}.chapter-button svg{position:absolute;right:13px;bottom:22px;width:16px;height:16px;color:#bdd0ae}.chapter-button:hover,.chapter-button[aria-pressed="true"]{background:#152012;border-left-color:#c5f487}.chapter-button[aria-pressed="true"] .chapter-time,.chapter-button[aria-pressed="true"] .chapter-title{color:#c5f487}.chapter-button:focus-visible{outline:2px solid #c5f487;outline-offset:3px}.chapter-help{font-size:11px;line-height:1.8;color:#8f9e83;margin-top:15px}.chapter-help:not(.chapters-help-ready){display:none}
.case-contribution{padding:78px 0 0;margin-top:55px;border-top:1px solid var(--geek-line)}.case-contribution h2{font-size:56px;line-height:1.3;font-weight:600;letter-spacing:-1.8px}.case-contribution h2 span{color:#c5f487}.case-section-intro{font-size:18px;line-height:1.9;color:var(--geek-muted);margin-top:18px}.contribution-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:65px;margin-top:48px}.contribution-number{display:block;color:#819174;font:36px/1.2 var(--geek-mono);padding-bottom:16px;border-bottom:1px solid var(--geek-line)}.contribution-list h3{font-size:23px;line-height:1.5;margin-top:22px;font-weight:550}.contribution-list p{font-size:15px;line-height:1.9;color:var(--geek-muted);margin-top:13px}.case-reflection{border-top:1px solid var(--geek-line);border-bottom:1px solid var(--geek-line);padding:27px 0 35px;margin-top:45px}.case-reflection>p{font-size:12px;color:#aab2a6;line-height:1.8}.case-reflection blockquote{margin:14px 0 0;font-size:45px;line-height:1.4;letter-spacing:-1.2px;color:#edf1e8;font-weight:550}.case-reflection blockquote span{color:#c5f487}
.case-original{padding-top:37px;max-width:100%;margin:0}.original-intro{font-size:14px;line-height:1.9;color:#aab2a6}.case-original>h2{font-size:24px;line-height:1.6;letter-spacing:-.6px;margin-top:12px;font-weight:550;max-width:980px}.original-disclosure{margin-top:20px}.original-disclosure summary{display:flex;align-items:center;gap:22px;cursor:pointer;list-style:none;width:max-content;padding:11px 0;border-bottom:1px solid #657255;color:#c5f487;font-size:13px;line-height:1.8}.original-disclosure summary::-webkit-details-marker{display:none}.original-disclosure summary span{font-size:18px}.original-disclosure[open] summary span{transform:rotate(45deg)}.original-disclosure .article-body{max-width:820px;margin-top:26px;padding-top:0;font-size:17px}.original-disclosure .source-note{max-width:820px}.case-closing{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:44px;padding:33px 0 40px;border-top:1px solid var(--geek-line)}.case-next{display:block;min-width:0;border-left:1px solid var(--geek-line);padding-left:40px}.case-next>span{display:block;font-size:12px;line-height:1.8;color:#aab2a6;margin-bottom:8px}.case-next strong{display:flex;align-items:center;gap:18px;font-size:21px;font-weight:500;line-height:1.6}.case-next svg{width:20px;height:20px}.case-next:hover strong{color:#c5f487}
@media(max-width:1315px){.case-study-page{margin-inline:38px}.case-hero h1{font-size:62px}.case-lead{font-size:21px}.contribution-list{gap:42px}.chapter-title{font-size:13px}.chapter-button{padding-left:18px;padding-right:33px}}
@media(max-width:1000px){.case-hero h1{font-size:53px}.case-lead{font-size:19px}.case-facts{gap:24px}.case-facts dd{font-size:17px}.case-facts>div{padding-left:18px}.case-nav{gap:27px}.demo-chapters{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 0}.chapter-button{min-height:83px}.case-contribution h2{font-size:45px}.case-section-intro{font-size:16px}.contribution-list{gap:30px}.contribution-list h3{font-size:20px}.contribution-list p{font-size:14px}.case-reflection blockquote{font-size:36px}.case-closing{gap:25px}.case-next{padding-left:28px}.case-next strong{font-size:18px}}
@media(max-width:760px){.case-study-page{margin-inline:24px;padding-top:31px}.case-hero{padding-bottom:31px;scroll-margin-top:128px}.case-back{font-size:11px;margin-bottom:24px}.case-hero h1{font-size:36px;line-height:1.4;letter-spacing:-1.3px}.case-lead{font-size:16px;line-height:1.9;margin-top:14px}.case-byline{font-size:12px;margin-top:19px}.case-byline>span{display:block;margin:4px 0 0;font-size:10px}.case-facts{grid-template-columns:1fr;gap:15px;margin-top:25px}.case-facts>div{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:baseline;gap:12px;padding-left:14px}.case-facts dt{font-size:11px}.case-facts dd{font-size:15px;line-height:1.7;margin:0}.case-actions{gap:13px;margin-top:25px}.case-study-page .button{font-size:12px;padding:11px 16px;min-height:44px;gap:10px}.case-study-page .button svg{width:16px;height:16px}.case-nav{top:62px;gap:25px;min-height:51px}.case-nav a{font-size:11px;padding:15px 0 12px}.case-section{scroll-margin-top:128px}.case-demo-section{padding-top:22px}.case-study-page .demo-media{border-radius:6px}.case-study-page .demo-toggle{font-size:11px;padding:8px 11px}.case-study-page .demo-duration{font-size:9px}.demo-chapters{margin-top:22px;gap:13px 0}.chapter-button{padding:12px 27px 12px 13px;min-height:90px;gap:6px}.chapter-time{font-size:10px}.chapter-title{font-size:12px;line-height:1.8}.chapter-button svg{width:13px;height:13px;right:8px;bottom:19px}.chapter-help{font-size:10px;margin-top:12px}.case-contribution{margin-top:35px;padding-top:45px}.case-contribution h2{font-size:34px;letter-spacing:-1px}.case-section-intro{font-size:14px;line-height:1.9;margin-top:15px}.contribution-list{grid-template-columns:1fr;gap:28px;margin-top:32px}.contribution-number{font-size:26px;padding-bottom:13px}.contribution-list h3{font-size:21px;margin-top:15px}.contribution-list p{font-size:14px;margin-top:9px}.case-reflection{margin-top:31px;padding:22px 0 26px}.case-reflection>p{font-size:11px}.case-reflection blockquote{font-size:28px;line-height:1.6;letter-spacing:-.8px;margin-top:12px}.case-original{padding-top:26px}.original-intro{font-size:12px}.case-original>h2{font-size:19px;line-height:1.8;letter-spacing:-.5px}.original-disclosure summary{font-size:12px;padding:10px 0;gap:17px}.original-disclosure .article-body{font-size:15px;margin-top:22px}.case-closing{display:block;margin-top:33px;padding-top:27px}.case-next{margin-top:25px;border-left:0;border-top:1px solid var(--geek-line);padding:21px 0 0}.case-next strong{font-size:19px}.case-next>span{font-size:11px}}
@media(max-width:360px){.case-study-page{margin-inline:20px}.case-hero h1{font-size:32px}.case-lead{font-size:14px}.case-nav{gap:22px}.case-nav a{font-size:10px}.chapter-button{padding-left:11px}.chapter-title{font-size:11px}.case-reflection blockquote{font-size:25px}}
@media(prefers-reduced-motion:reduce){.original-disclosure summary span{transition:none}}
