*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}img,svg{display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}:root{--bg: #fff;--surface: #f8f8f6;--raised: #f0f0ee;--text: #111;--muted: #666;--faint: #f5f5f3;--accent: #111;--accent-hi:#333;--border: rgb(0 0 0 / 8%);--border-hi:rgb(0 0 0 / 20%);--hero-btn-ghost-border: rgb(0 0 0 / 15%);--ghost-stroke: 1px rgb(0 0 0 / 5%);--video-overlay: rgb(0 0 0 / 35%);--video-overlay-hover: rgb(0 0 0 / 50%);--video-play-bg: rgb(255 255 255 / 90%);--video-consent-color: rgb(255 255 255 / 85%);--upcoming-border: rgb(197 45 18 / 20%);--upcoming-bg: rgb(197 45 18 / 4%);color-scheme:light dark}:root[data-theme=dark]{--bg: #111;--surface: #1a1a1a;--raised: #222;--text: #e8e8e8;--muted: #999;--faint: #1a1a1a;--accent: #e8e8e8;--accent-hi:#ccc;--border: rgb(255 255 255 / 10%);--border-hi:rgb(255 255 255 / 22%);--hero-btn-ghost-border: rgb(255 255 255 / 18%);--ghost-stroke: 1px rgb(255 255 255 / 5%);--video-overlay: rgb(0 0 0 / 50%);--video-overlay-hover: rgb(0 0 0 / 65%);--upcoming-border: rgb(197 45 18 / 30%);--upcoming-bg: rgb(197 45 18 / 8%);color-scheme:dark}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--f-body);font-size:clamp(16px,1.8vw,18px);line-height:1.75;overflow-x:hidden;min-height:100vh}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.skip-link{position:absolute;top:-9999px;left:-9999px;padding:.6rem 1.2rem;background:var(--text);color:var(--bg);font-family:var(--f-head);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;z-index:9999}.skip-link:focus{top:1rem;left:1rem;outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.site-nav{position:fixed;top:0;left:0;right:0;z-index:500;padding:1.5rem 2.5rem;display:flex;justify-content:space-between;align-items:center;background:var(--bg);border-bottom:1px solid var(--border)}.nav-wordmark{font-family:var(--f-head);font-size:.82rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--text);opacity:.6;transition:opacity .25s;flex-shrink:0}.nav-wordmark:hover{opacity:1}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a{font-family:var(--f-head);font-size:.68rem;font-weight:500;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);position:relative;padding-bottom:2px;transition:color .2s}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--accent);transition:width .25s ease}.nav-links a:hover{color:var(--text)}.nav-links a:hover:after{width:100%}.nav-links a.active{color:var(--text)}.nav-links a.active:after{width:100%;background:var(--accent)}.nav-right{display:flex;align-items:center;gap:.75rem}.nav-toggle{display:none;background:none;border:none;color:var(--text);padding:.2rem;z-index:501;position:relative}.nav-toggle-icon{display:flex;flex-direction:column;gap:5px;width:22px}.nav-toggle-icon span{display:block;height:1px;background:currentcolor;transition:transform .25s,opacity .25s}body.nav-open .nav-toggle-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}body.nav-open .nav-toggle-icon span:nth-child(2){opacity:0}body.nav-open .nav-toggle-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}@media(width<=620px){.site-nav{padding:1.2rem 1.5rem}.nav-toggle{display:block}.nav-links{display:none;position:fixed;inset:0;background:var(--bg);flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;z-index:499}.nav-links.open{display:flex}.nav-links a{font-size:1.4rem;letter-spacing:.2em;color:var(--text)}}.theme-toggle{background:none;border:1px solid var(--border);color:var(--muted);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:color .2s,border-color .2s;flex-shrink:0}.theme-toggle:hover{color:var(--text);border-color:var(--border-hi)}.theme-toggle svg{width:16px;height:16px}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon{display:block}:root[data-theme=dark] .theme-toggle .icon-sun{display:block}:root[data-theme=dark] .theme-toggle .icon-moon{display:none}.eyebrow{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.38em;text-transform:uppercase;color:var(--accent);display:block}.display-heading{font-family:var(--f-head);font-size:clamp(2.8rem,8vw,5.5rem);font-weight:700;letter-spacing:.01em;text-transform:uppercase;line-height:.9;color:var(--text)}.btn{display:inline-block;padding:.8rem 2.25rem;font-family:var(--f-head);font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;border:1px solid var(--border-hi);color:var(--text);background:transparent;transition:border-color .2s,color .2s,background .2s;white-space:nowrap}.btn:hover{border-color:var(--text);color:var(--bg);background:var(--text)}.btn-fill{background:var(--text);border-color:var(--text);color:var(--bg);font-weight:600}.btn-fill:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.page-header{padding:9rem 2.5rem 5.5rem;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}@media(width<=620px){.page-header{padding:8rem 1.5rem 4rem}}.page-header-inner{max-width:1040px;margin:0 auto;position:relative;z-index:2}.page-header-ghost{position:absolute;right:-.02em;top:50%;transform:translateY(-50%);font-family:var(--f-head);font-size:clamp(7rem,22vw,18rem);font-weight:700;text-transform:uppercase;color:transparent;-webkit-text-stroke:var(--ghost-stroke);line-height:1;user-select:none;pointer-events:none;white-space:nowrap;z-index:1}.page-header .eyebrow{margin-bottom:1rem}.page-header-sub{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.14em;color:var(--muted);margin-top:1.1rem}.site-footer{border-top:1px solid var(--border);padding:2.75rem 2.5rem;background:var(--surface)}.site-footer-inner{max-width:1040px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.footer-left{display:flex;flex-direction:column;gap:.9rem}.footer-nav{display:flex;gap:2rem;flex-wrap:wrap;list-style:none}.footer-nav a{font-family:var(--f-head);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);transition:color .2s}.footer-nav a:hover{color:var(--accent)}.footer-copy{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;color:var(--muted)}.footer-legal-link{color:var(--muted);transition:color .2s}.footer-legal-link:hover{color:var(--accent)}.footer-right{display:flex;align-items:center;gap:1.5rem;flex-shrink:0}.footer-social{display:flex;gap:.75rem;align-items:center}.footer-social-link{display:flex;align-items:center;justify-content:center;color:var(--muted);transition:color .2s}.footer-social-link:hover{color:var(--accent)}@media(width<=620px){.site-footer{padding:2.5rem 1.5rem}}.social-row{display:flex;flex-wrap:wrap;gap:.5rem}.social-link{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-family:var(--f-head);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);transition:color .2s,border-color .2s,background .2s}.social-link:hover{color:var(--bg);border-color:var(--text);background:var(--text)}.page-section{padding:5rem 2.5rem 8rem}@media(width<=620px){.page-section{padding:4rem 1.5rem 6rem}}.page-inner{max-width:1040px;margin:0 auto}.section-heading{font-family:var(--f-mono);font-size:.68rem;font-weight:400;letter-spacing:.38em;text-transform:uppercase;color:var(--accent);margin-bottom:2.5rem;display:flex;align-items:center;gap:1rem}.section-heading:after{content:"";flex:1;height:1px;background:var(--border)}.post-tags{display:flex;gap:.4rem;flex-wrap:wrap}.post-tag{font-family:var(--f-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);border:1px solid var(--border-hi);padding:.15rem .5rem}a.post-tag{transition:color .2s,border-color .2s,background .2s}a.post-tag:hover{color:var(--bg);border-color:var(--text);background:var(--text)}.rule{border:none;border-top:1px solid var(--border)}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes draw-line{0%{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}
