.case-hero{position:relative;min-height:clamp(28rem,52vh,35rem);display:flex;align-items:center;overflow:visible;isolation:isolate;background:radial-gradient(circle at 20% 30%,var(--glow-violet),transparent 45%),radial-gradient(circle at 80% 70%,var(--glow-cyan),transparent 40%),var(--bg)}.case-hero:after{content:"";position:absolute;z-index:1;right:0;bottom:-7rem;left:0;height:12rem;pointer-events:none;background:radial-gradient(ellipse 28% 78% at 8% 0%,color-mix(in srgb,var(--accent-2) 24%,var(--bg)),transparent 72%),radial-gradient(ellipse 36% 86% at 48% 0%,color-mix(in srgb,var(--accent-3) 14%,var(--bg)),transparent 75%),radial-gradient(ellipse 32% 74% at 86% 0%,color-mix(in srgb,var(--accent) 24%,var(--bg)),transparent 72%);filter:blur(18px);opacity:.72}.case-shader{position:absolute;inset:0 0 auto;width:100%;height:calc(100% + 8rem);display:block;mask-image:linear-gradient(to bottom,#000 0 72%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0 72%,transparent 100%)}.case-content{position:relative;z-index:2}.case-hero .case-content{padding-block:var(--space-8)}.case-kicker{margin-bottom:var(--space-4);color:var(--accent);font-size:var(--text-sm)}.case-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}.case-summary{max-width:42rem;color:var(--muted);font-size:var(--text-lg)}.case-links{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.case-body{position:relative;z-index:2;padding-block:var(--space-24) var(--space-16)}.case-layout{display:grid;grid-template-columns:minmax(0,1fr) 21rem;align-items:start;gap:clamp(var(--space-8),5vw,var(--space-16))}.prose{min-width:0;max-width:46rem;color:var(--fg);font-family:var(--font-display);font-size:clamp(1.05rem,1.2vw,1.16rem);line-height:1.75}.prose h2{max-width:38rem;margin-top:var(--space-16);margin-bottom:var(--space-6);font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.5rem);letter-spacing:-.035em}.prose h2:first-child{margin-top:0}.prose h3{margin-top:var(--space-8);font-family:var(--font-display);font-size:var(--text-xl)}.prose p{max-width:42rem;color:color-mix(in srgb,var(--fg) 84%,var(--muted))}.prose blockquote{margin:var(--space-6) 0;padding:var(--space-6);border:1px solid var(--glass-border);border-left:2px solid var(--accent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--glass-bg) 82%,transparent);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);box-shadow:0 14px 38px -28px var(--glow-cyan)}.prose blockquote p{margin:0;color:var(--fg)}.prose blockquote strong{display:block;margin-bottom:var(--space-2);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;letter-spacing:.02em}.prose img{display:block;width:100%;height:auto;margin:var(--space-8) 0 var(--space-3);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.prose p:has(>em:only-child){margin-top:0;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.6}.prose code{padding:.1em .4em;border:1px solid var(--card-border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--accent);font-size:.85em}.project-facts{position:sticky;top:calc(var(--header-h) + var(--space-6));align-self:start;width:100%;padding:var(--space-6);overflow:hidden}.facts-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-6)}.facts-kicker{margin-bottom:var(--space-2);color:var(--accent);font-size:var(--text-xs);letter-spacing:.08em}.facts-head h2{margin:0;font-size:var(--text-xl)}.facts-status{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--muted);font-family:var(--font-mono);font-size:.68rem;white-space:nowrap}.facts-status>span{width:.45rem;height:.45rem;border-radius:50%;background:var(--accent);box-shadow:0 0 9px var(--glow-cyan)}.facts-table{width:100%;border-collapse:collapse;table-layout:fixed}.facts-table tr{border-top:1px solid var(--card-border)}.facts-table th,.facts-table td{padding-block:var(--space-3);vertical-align:top;text-align:left}.facts-table th{width:5.25rem;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:400;text-transform:uppercase;letter-spacing:.05em}.facts-table td{color:var(--fg);font-size:var(--text-sm);overflow-wrap:anywhere}.facts-section{padding-top:var(--space-5, 1.25rem);margin-top:var(--space-2);border-top:1px solid var(--card-border)}.facts-section h3{margin-bottom:var(--space-3);color:var(--muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:400;text-transform:uppercase;letter-spacing:.06em}.facts-stack-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2) var(--space-4);margin:0;padding:0;list-style:none}.facts-stack-list li{position:relative;padding-left:var(--space-4);color:var(--fg);font-size:var(--text-sm)}.facts-stack-list li:before{content:"";position:absolute;top:.7em;left:0;width:.35rem;height:.35rem;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--glow-cyan)}.facts-actions{display:grid;gap:var(--space-3);margin-top:var(--space-5, 1.25rem)}.facts-actions h3{margin-bottom:0}.facts-actions .btn{width:100%;min-height:2.8rem;justify-content:space-between;padding:var(--space-2) var(--space-4)}.related-projects{padding-top:var(--space-16)}.related-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.related-head h2{margin:0}.related-kicker{margin-bottom:var(--space-2);color:var(--accent);font-size:var(--text-xs);letter-spacing:.06em}.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}@media(max-width:820px){.case-layout{grid-template-columns:minmax(0,1fr)}.project-facts{position:static;width:min(100%,34rem)}}@media(max-width:600px){.case-hero{min-height:29rem}.case-hero .case-content{padding-block:var(--space-6)}.case-body{padding-block:var(--space-16)}.case-links .btn{width:100%;justify-content:center}.facts-stack-list,.related-grid{grid-template-columns:1fr}.related-head .btn{width:100%;justify-content:center}}
