/* Styles shared by the case pages. Written once on 28/09/2026 by .migration/shared-case-css.mjs from the
   copies each page had; each page keeps, inline, only the rules that differ. */
*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#FFFFFF;--bg-2:#F4F4F2;--paper:#FAFAFA;--ink:#141414;--ink-2:#2a2a28;--muted:#666666;--gold:#133D38;--gold-soft:#EAFAA8;--line:rgba(20,20,20,.14);--line-soft:rgba(20,20,20,.08);--grain-strength:.08;--display:'Archivo','Arial Narrow',sans-serif;--mono:'Azeret Mono',ui-monospace,monospace;--sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif}
html{-webkit-text-size-adjust:100%}
body{transition:opacity .3s ease}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.mw{max-width:80rem;margin:0 auto;padding:0 32px}
.mono,.sec-label{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s cubic-bezier(.16,.84,.44,1),transform .55s cubic-bezier(.16,.84,.44,1)}.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}}
nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line-soft)}
.nav-inner{max-width:84rem;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:inline-flex;align-items:center}.logo{height:42px;width:auto;display:block}
.nav-links{display:flex;gap:28px}
.nav-links a{font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);transition:color .25s}.nav-links a:hover{color:var(--ink)}
.nav-cta{font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--bg);background:var(--ink);padding:10px 18px;border-radius:4px;transition:background .25s}.nav-cta:hover{background:var(--gold)}
.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border:none;background:none;cursor:pointer;padding:10px;margin-left:auto}
.nav-toggle span{display:block;height:2px;width:100%;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .2s}
nav.open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}nav.open .nav-toggle span:nth-child(2){opacity:0}nav.open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1024px){.nav-links{display:none}}
.cs-hero{padding:150px 0 50px}
.cs-back{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:34px;transition:color .2s}.cs-back:hover{color:var(--gold)}
.cs-hero h1{font-family:var(--display);font-weight:700;font-stretch:120%;text-transform:uppercase;font-size:clamp(40px,7vw,104px);line-height:.92;letter-spacing:-.012em;color:var(--ink)}
.hero-meta{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-top:24px}
.cover{margin-top:8px}.cover img{display:block;width:100%;height:50vh;object-fit:cover;object-position:center;border:1px solid var(--line-soft)}
@media(max-width:640px){.cover img{height:44vh}}
.blocks{padding:64px 0}
.blocks-grid{display:block;max-width:760px}
.block-item{margin-bottom:46px}.block-item:last-child{margin-bottom:0}
.block-item h2{font-family:var(--display);font-weight:700;font-stretch:118%;text-transform:uppercase;font-size:clamp(22px,3vw,34px);letter-spacing:-.01em;margin-bottom:16px;color:var(--ink)}
.block-item p{color:var(--ink-2);font-size:17px;line-height:1.75}
.block{padding:0 0 8px}
.gallery{display:grid;grid-template-columns:1fr;gap:8px;margin-top:8px}
.gallery img{width:100%;height:auto;border:1px solid var(--line-soft)}
.embed{position:relative;margin-top:8px;border:1px solid var(--line);background:var(--bg-2);aspect-ratio:16/9;overflow:hidden}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:640px){.embed{aspect-ratio:3/4}}
.live-row{display:flex;flex-wrap:wrap;gap:30px;align-items:center;justify-content:space-between;padding:54px 0;border-top:1px solid var(--line);margin-top:54px}
.live-link{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--bg);padding:15px 26px;border-radius:5px;transition:background .25s}.live-link:hover{background:var(--gold)}
.credits .sec-label{margin-bottom:10px}.credits ul{list-style:none}.credits li{margin-bottom:4px}
.credits a{color:var(--gold);font-size:14px}.credits a:hover{text-decoration:underline}
.next{display:block;border-top:1px solid var(--line);padding:48px 0}
.next-card{display:flex;align-items:center;gap:28px}
.next-thumb{width:128px;height:96px;flex:0 0 auto;overflow:hidden;background:var(--bg-2);border:1px solid var(--line-soft)}
.next-thumb img{width:100%;height:100%;object-fit:cover}
.next-info .sec-label{margin-bottom:8px}
.next-info h2{font-family:var(--display);font-weight:700;font-stretch:120%;text-transform:uppercase;font-size:clamp(26px,4vw,52px);line-height:.96;letter-spacing:-.01em;transition:color .25s}
.next:hover .next-info h2{color:var(--gold)}
footer#contact{position:relative;overflow:hidden;background:var(--ink);color:var(--bg);padding:80px 0 46px}
.foot-links{position:relative;z-index:1;display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}
.foot-links a{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-soft)}
.foot-links svg{width:16px;height:16px}.foot-links a:hover{color:#fff}
.foot-meta{position:relative;z-index:1;display:flex;justify-content:center;gap:16px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.grain{position:absolute;top:-120%;left:-120%;width:340%;height:340%;z-index:0;pointer-events:none;opacity:var(--grain-strength,.08);background:url("/assets/noise.png");background-size:240px 240px;animation:grain .7s steps(5) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-6%,4%)}40%{transform:translate(4%,-6%)}60%{transform:translate(-3%,5%)}80%{transform:translate(5%,-2%)}100%{transform:translate(0,0)}}
@media(prefers-reduced-motion:reduce){.grain{animation:none}}
#to-top{position:fixed;right:22px;bottom:22px;width:46px;height:46px;border-radius:5px;background:var(--ink);color:#fff;border:none;font-size:18px;cursor:pointer;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .3s,transform .3s,background .2s;z-index:900}#to-top.show{opacity:1;transform:none;pointer-events:auto}#to-top:hover{background:var(--gold)}
@media(max-width:640px){.cs-hero{padding:120px 0 36px}.blocks{padding:48px 0}.next-thumb{display:none}.live-link{font-size:11px;padding:13px 22px}}
/* Rules of the newer case pages (live actions, secondary live link, screen-reader text). */

.live-actions{display:flex;flex-wrap:wrap;gap:12px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.live-link.is-secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}.live-link.is-secondary:hover{background:var(--ink);color:var(--bg)}
.live-link.has-icon{gap:10px}
.live-link__icon{height:14px;width:auto;flex:none;fill:currentColor}
