:root{--color-bg:#0d0d0d;--color-surface:#141414;--color-surface-2:#1c1c1c;--color-border:#2a2a2a;--color-border-hover:#3d3d3d;--color-text:#f0f0f0;--color-text-muted:#888;--color-text-faint:#555;--color-accent:#e8e0d0;--color-header-bg:#0d0d0dd9}[data-theme=light]{--color-bg:#f7f5f2;--color-surface:#fff;--color-surface-2:#ede9e3;--color-border:#dcd7cf;--color-border-hover:#bdb6ac;--color-text:#1c1917;--color-text-muted:#78716c;--color-text-faint:#a8a29e;--color-accent:#44403c;--color-header-bg:#f7f5f2d9}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;hanging-punctuation:first last}body{text-rendering:optimizespeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;transition:background-color .3s,color .3s}canvas,img,picture,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}ol,ul{list-style:none}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{color:var(--color-text);background-color:var(--color-bg);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:400;line-height:1.5}h1{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:900}h1,h2{letter-spacing:-.04em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.2}h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700}h3{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:700}h3,h4{letter-spacing:-.04em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.2}h4{font-size:1.125rem;font-weight:600}h1,h2,h3,h4,h5,h6{color:var(--color-text)}p{color:var(--color-text-muted);line-height:1.7}p+p{margin-top:1rem}strong{color:var(--color-text);font-weight:600}em{font-style:italic}a{transition:color .15s}@media (hover:hover) and (pointer:fine){a:hover{color:var(--color-accent)}}code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;padding:.1em .4em;font-family:JetBrains Mono,Fira Code,monospace;font-size:.875em}::selection{color:var(--color-bg);background:#c8a96e}.container{width:100%;max-width:1400px;margin-inline:auto;padding-inline:clamp(1.5rem,5vw,4rem)}.grid{grid-template-columns:repeat(12,1fr);gap:clamp(1rem,2vw,1.5rem);display:grid}.col-full{grid-column:1/-1}.col-half{grid-column:span 12}@media (width>=768px){.col-half{grid-column:span 6}}.col-third{grid-column:span 12}@media (width>=1024px){.col-third{grid-column:span 4}}.col-two-thirds{grid-column:span 12}@media (width>=1024px){.col-two-thirds{grid-column:span 8}}.section{padding-block:clamp(4rem,6vw,6rem)}.section--flush-top{padding-top:0}.section--flush-bottom{padding-bottom:0}.section-inner{width:100%;max-width:1400px;margin-inline:auto;padding-inline:clamp(1.5rem,5vw,4rem)}.divider{background:var(--color-border);height:1px;margin-block:4rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-fade-in{animation:.4s cubic-bezier(.25,.46,.45,.94) both fade-in}.animate-fade-up{animation:.4s cubic-bezier(.25,.46,.45,.94) both fade-up}.animate-scale-in{animation:.4s cubic-bezier(.25,.46,.45,.94) both scale-in}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.reveal-ready .reveal{opacity:0;transition:opacity .4s cubic-bezier(.25,.46,.45,.94),transform .4s cubic-bezier(.25,.46,.45,.94);transform:translateY(20px)}.reveal-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
