.case-hero{background:var(--case-accent);color:var(--case-fg)}.case-hero-pad{padding-bottom:clamp(120px,22vw,240px)}.case-back{color:color-mix(in srgb,var(--case-fg) 62%,transparent);transition:color .15s ease}.case-back:hover{color:var(--case-fg)}.case-kicker{color:color-mix(in srgb,var(--case-fg) 68%,transparent)}.case-title{color:var(--case-fg);font-size:clamp(2.5rem,6.5vw,4.5rem);line-height:1.04;font-weight:650;letter-spacing:-.025em;text-wrap:balance}.case-outcome{color:color-mix(in srgb,var(--case-fg) 86%,transparent)}.case-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 1.5rem;border:1px solid color-mix(in srgb,var(--case-fg) 45%,transparent);color:var(--case-fg);font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.case-btn:hover{background:var(--case-fg);color:var(--case-accent);border-color:var(--case-fg)}.case-hero-img{border:1px solid hsl(var(--border) / .7);background:hsl(var(--background))}.prose{font-size:1rem;line-height:1.75rem;color:hsl(var(--muted-foreground))}.prose p,.prose ul,.prose ol,.prose h2,.prose h3,.prose h4,.prose blockquote{max-width:70ch}.prose>*:first-child{margin-top:0}.prose h2{margin-top:4rem;margin-bottom:1.25rem;scroll-margin-top:8rem;border-top-width:1px;border-color:hsl(var(--border) / .8);padding-top:1.5rem;font-size:1.5rem;line-height:2rem;font-weight:600;color:hsl(var(--foreground))}.prose h3{margin-top:2.5rem;margin-bottom:.75rem;scroll-margin-top:8rem;font-size:1.25rem;line-height:1.75rem;font-weight:600;color:hsl(var(--foreground))}.prose h4{scroll-margin-top:8rem;font-size:1rem;line-height:1.5rem;font-weight:500;color:hsl(var(--muted-foreground))}.prose p{margin-bottom:1.5rem;color:hsl(var(--muted-foreground))}.prose ul{margin-top:1.5rem;margin-bottom:1.5rem;list-style-type:none}.prose ul>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.prose ul li{position:relative;padding-left:1.25rem;color:hsl(var(--muted-foreground))}.prose ul li:before{content:"•";position:absolute;left:0;top:0;font-weight:700;color:hsl(var(--foreground) / .9)}.prose img{margin-top:3rem;margin-bottom:3rem;border-width:1px;border-color:hsl(var(--border) / .8)}.prose figure{margin-top:3.5rem;margin-bottom:3.5rem}.prose figure img{margin-top:0;margin-bottom:0}.prose figcaption{margin-top:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-style:italic;color:hsl(var(--muted-foreground))}.prose blockquote{margin-top:2.5rem;margin-bottom:2.5rem;border-top-width:1px;border-bottom-width:1px;border-color:hsl(var(--border) / .8);padding-top:1.25rem;padding-bottom:1.25rem;font-style:italic;color:hsl(var(--muted-foreground))}.prose pre{margin-top:2.5rem;margin-bottom:2.5rem;overflow-x:auto;border-top-width:1px;border-bottom-width:1px;border-color:hsl(var(--border) / .8);background-color:#0003;padding-left:0;padding-right:0;padding-top:1.5rem;padding-bottom:1.5rem}.prose code{font-size:.875rem;line-height:1.25rem;color:hsl(var(--foreground) / .9)}.prose a{color:hsl(var(--primary));text-decoration-line:underline;text-decoration-thickness:2px;text-underline-offset:2px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;text-decoration-color:hsl(var(--primary) / .35)}.prose a:hover{text-decoration-color:hsl(var(--primary) / .95)}.prose strong{font-weight:600;color:hsl(var(--foreground))}.prose .not-prose .bg-card,.prose .not-prose [class*=bg-card]{background:transparent!important;box-shadow:none!important}.prose .not-prose [class*=bg-card][class*=border]{border-left:0!important;border-right:0!important;border-bottom:0!important;padding-left:0!important;padding-right:0!important}.prose .not-prose [class*=backdrop-blur]{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.prose .not-prose .absolute.inset-0[class*=bg-gradient]{opacity:.2}.prose .not-prose .bg-blue-50,.prose .not-prose .text-blue-800{background:transparent!important;color:hsl(var(--muted-foreground))!important}.prose .not-prose .border-blue-300{border-color:hsl(var(--border))!important}
