:root{--beige:#e8e1d5;--beige-deep:#ded5c6;--beige-soft:#f0ebe2;--offwhite:#faf8f5;--porcelain:#f3f0ea;--sand-line:#d9d1c2;--ink-warm:#2b2621;--ink-soft:#6b6258;--bg:var(--offwhite);--card:#fff;--ink:var(--ink-warm);--muted:var(--ink-soft);--hairline:var(--sand-line);--primary-bg:var(--bg);--text-primary:var(--ink);--text-secondary:var(--muted);--accent:#8a7658;--accent-light:#e5ddcf;--accent-subtle:#f2ede4;--border-color:var(--hairline);--sidebar-bg:var(--beige);--sidebar-fg:var(--ink-warm);--sidebar-muted:#7d7264;--sidebar-line:color-mix(in oklab, var(--ink-warm) 14%, transparent);--sidebar-w:264px;--ease-entrance:cubic-bezier(.19, 1, .22, 1);--ease-soft:cubic-bezier(.25, .46, .45, .94);--t-fast:.22s var(--ease-soft);--t-slow:.72s var(--ease-entrance);--transition-smooth:.24s var(--ease-soft);--radius:14px;--maxw:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{height:100%}body{background:var(--bg);color:var(--ink);letter-spacing:.2px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.6}h1,h2,h3,h4{letter-spacing:.06em;margin:0 0 .6rem;font-family:Cinzel,serif;font-weight:700;line-height:1.12}h1{font-size:clamp(42px,6vw,64px)}h2{font-size:clamp(28px,3.5vw,40px)}h3{font-size:clamp(22px,2.5vw,28px)}p{margin:0 0 1rem}a{color:inherit;transition:color var(--t-fast);text-decoration:none;position:relative}a:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform var(--t-fast);opacity:.6;background:currentColor;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}a:hover:after{transform:scaleX(1)}.section{max-width:var(--maxw);margin:0 auto;padding:clamp(48px,7vw,96px) clamp(20px,5vw,40px)}.card{background:linear-gradient(180deg, var(--card), color-mix(in oklab, var(--card), var(--porcelain) 8%));border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:0 1px #00000008,0 24px 40px -28px #00000040}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;animation:fadeUp var(--t-slow) forwards}.reveal.del2{animation-delay:.12s}.reveal.del3{animation-delay:.24s}.btn{--btn-bg:var(--card);--btn-fg:var(--text-primary);--btn-brd:var(--border-color);border:1px solid var(--btn-brd);background:var(--btn-bg);color:var(--btn-fg);letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:none;user-select:none;cursor:pointer;transition:transform var(--t-fast), box-shadow var(--t-fast), background var(--t-fast), border-color var(--t-fast);border-radius:12px;justify-content:center;align-items:center;gap:.55rem;padding:.78rem 1.15rem;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}@media (hover:hover){.btn:hover{transform:translateY(-1px);box-shadow:0 12px 30px -18px #0000004d}}.btn:active{transform:translateY(0)}.btn:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 20%, transparent), 0 0 0 1.5px var(--accent) inset;border-color:var(--accent);outline:none}.btn--primary{--btn-bg:var(--ink);--btn-fg:var(--bg);--btn-brd:transparent}.btn--outline{--btn-bg:transparent;--btn-fg:var(--text-primary);--btn-brd:var(--accent)}.btn--ghost{--btn-bg:color-mix(in oklab, var(--accent-light) 40%, transparent);--btn-brd:var(--border-color)}.btn--sm{padding:.6rem .9rem;font-size:.75rem}.btn--lg{letter-spacing:.06em;padding:.95rem 1.5rem;font-size:.85rem}.btn:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in oklab, var(--accent-light) 70%, transparent), transparent);transition:left .42s var(--ease-soft);position:absolute;inset:0 0 0 -120%}@media (hover:hover){.btn:hover:after{left:120%}}@media (prefers-reduced-motion:reduce){.btn,.btn:after{transition:none}}img,video{max-width:100%;display:block}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--ink) 16%, transparent);background-clip:padding-box;border:2px solid #0000;border-radius:999px}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}
