:root{--bg: #09090b;--surface: #1b1e25;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .15);--text: #eef1f4;--soft: #d7dbe1;--muted: #969ca7;--accent: #2dd4a3;--accent-soft: rgba(45, 212, 163, .35);--sq-amber: #b3884e;--sq-rose: #a25a5e;--sq-teal: #3f8472;--skin: #e6b08c;--hair: #2b2520;--sweater: #2f5f55;--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--content-width: 1140px;--content-padding: 36px;--content-padding-mobile: 22px;--radius-md: 12px;--radius-lg: 20px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{color-scheme:dark;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}img,picture,video,canvas,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}ul,ol{list-style:none}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.08;letter-spacing:-.02em}h1{font-size:clamp(40px,6vw,72px);letter-spacing:-2px}h2{font-size:clamp(28px,4vw,44px);letter-spacing:-1px}h3{font-size:clamp(20px,2.6vw,28px);letter-spacing:-.5px}p{color:var(--muted);font-size:16.5px;line-height:1.62}.wrap{max-width:var(--content-width);margin:0 auto;padding:0 var(--content-padding)}main{display:block}section{padding:56px 0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.chapter-heading{display:flex;align-items:center;gap:14px;margin-bottom:32px}.chapter-heading .rule{width:42px;height:1px;background:var(--accent);opacity:.7;flex-shrink:0}.chapter-heading .num{font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--accent);letter-spacing:1px;flex-shrink:0}.chapter-heading .label{font-family:var(--font-display);font-weight:700;font-size:clamp(20px,2.6vw,28px);letter-spacing:-.5px;color:var(--soft)}.tlink{font-family:var(--font-display);font-weight:600;font-size:16px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;padding-bottom:3px;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}.tlink.primary{color:var(--accent);border-color:var(--accent-soft)}.tlink.primary:hover{border-color:var(--accent)}.tlink.muted{color:var(--muted)}.tlink.muted:hover{color:var(--text)}.accent{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.reveal{opacity:0;transform:translateY(14px);animation:reveal-up .7s cubic-bezier(.2,.7,.2,1) forwards}.d1{animation-delay:.05s}.d2{animation-delay:.13s}.d3{animation-delay:.21s}.d4{animation-delay:.29s}.d5{animation-delay:.37s}.d6{animation-delay:.45s}@keyframes reveal-up{to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;animation:none}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.prose :global(p){color:var(--soft);margin-bottom:1em}.prose :global(p:last-child){margin-bottom:0}.prose :global(a){color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent-soft);text-decoration-thickness:1px}.prose :global(a:hover){text-decoration-color:var(--accent)}.prose :global(strong){color:var(--text);font-weight:700}.prose :global(em){font-style:italic}.prose :global(ul),.prose :global(ol){margin:0 0 1em 1.25em;color:var(--soft)}.prose :global(ul){list-style:disc}.prose :global(ol){list-style:decimal}.prose :global(li){margin-bottom:.4em}.prose :global(li::marker){color:var(--accent)}@media(max-width:880px){.wrap{padding:0 var(--content-padding-mobile)}}@media(min-width:881px){body.home,body.fit-screen{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}body.home main,body.fit-screen main{flex:1 1 auto;display:flex;flex-direction:column}body.home main>.hero{flex:1 1 auto;min-height:0}body.home footer,body.fit-screen footer{margin-top:14px}body.home footer .footer-inner,body.fit-screen footer .footer-inner{padding-top:clamp(16px,2.6vh,40px);padding-bottom:clamp(20px,3vh,56px)}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
