@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;700&family=Zilla+Slab:wght@400;600&display=swap');
:root{
  --spiremin-bg:#1c1c1c;--spiremin-fg:#e8e4dc;--spiremin-muted:#9a958c;--spiremin-accent:#d4c4a0;
  --spiremin-panel:#2a2a2a;--spiremin-line:#444444;
  --spiremin-display:"Space Grotesk",Georgia,serif;--spiremin-body:"Zilla Slab",Georgia,serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body.spiremin-body{margin:0;font-family:var(--spiremin-body);background:var(--spiremin-bg);color:var(--spiremin-fg);line-height:1.7}
img,picture,video{display:none!important}
a{color:var(--spiremin-accent)}
.spiremin-btn{appearance:none;border:1px solid var(--spiremin-accent);background:var(--spiremin-accent);color:var(--spiremin-bg);padding:.7rem 1.1rem;font:inherit;cursor:pointer;text-decoration:none;display:inline-block}
.spiremin-ghost{background:transparent;color:var(--spiremin-fg);border-color:var(--spiremin-line)}
.spiremin-form{display:grid;gap:.9rem;max-width:32rem}
.spiremin-form label{display:grid;gap:.3rem}
.spiremin-form input,.spiremin-form textarea{font:inherit;padding:.65rem .75rem;border:1px solid var(--spiremin-line);background:var(--spiremin-panel);color:var(--spiremin-fg)}
.spiremin-ok{color:var(--spiremin-accent);font-weight:600}
.spiremin-contact-one p{margin:.2rem 0}
.spiremin-skip{position:absolute;left:-999px}.spiremin-skip:focus{left:1rem;top:1rem;z-index:99;background:var(--spiremin-panel);padding:.5rem}
.spiremin-head{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 1.25rem;position:relative;z-index:20}
.spiremin-logo,.spiremin-word,.spiremin-mast{font-family:var(--spiremin-display);font-size:1.35rem;color:var(--spiremin-fg);text-decoration:none;font-weight:600}
.spiremin-nav-desk,.spiremin-tabs,.spiremin-nav-tiny{display:flex;flex-wrap:wrap;gap:.75rem 1.1rem}
.spiremin-nav-desk a,.spiremin-tabs a,.spiremin-nav-tiny a,.spiremin-nav-panel a{color:var(--spiremin-fg);text-decoration:none}
.spiremin-active{text-decoration:underline}
.spiremin-nav-toggle{margin-left:auto;background:transparent;border:1px solid var(--spiremin-line);color:var(--spiremin-fg);padding:.45rem .8rem;font:inherit;cursor:pointer}
.spiremin-nav-panel{display:none;width:100%;flex-direction:column;gap:.75rem;padding:.5rem 0 1rem}
.spiremin-nav-panel[data-open="true"]{display:flex}
@media(min-width:900px){.spiremin-nav-toggle{display:none}.spiremin-nav-panel{display:none!important}}
@media(max-width:899px){.spiremin-nav-desk,.spiremin-tabs,.spiremin-nav-tiny{display:none}}
main{display:block}
.spiremin-wrap{max-width:70rem;margin:0 auto;padding:2rem 1.25rem 4rem}
.spiremin-legal{max-width:48rem}
.spiremin-foot{padding:2.5rem 1.25rem;border-top:1px solid var(--spiremin-line);margin-top:3rem}
.spiremin-cookie{position:fixed;z-index:90;max-width:24rem}
.spiremin-cookie-inner{padding:1rem;border:1px solid var(--spiremin-line)}
.spiremin-cookie-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}
.spiremin-cookie-panel{display:grid;gap:.5rem;margin-top:.75rem}
.spiremin-cookie{bottom:1rem;left:1rem}.spiremin-cookie-inner{background:var(--spiremin-panel)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.spiremin-body{background:var(--spiremin-bg)}
.spiremin-h20 .spiremin-rule{border-top:2px solid var(--spiremin-accent);padding-top:.6rem;width:100%}
.spiremin-chapters{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding:1rem 1.25rem 2rem}
.spiremin-chapters section{min-width:min(85vw,28rem);scroll-snap-align:start;background:var(--spiremin-panel);padding:2rem;border:1px solid var(--spiremin-line)}
.spiremin-mag-hero{padding:4rem 1.25rem 2rem;background:linear-gradient(180deg,#333 0%,var(--spiremin-bg) 100%)}
.spiremin-mag-hero h1{font-family:var(--spiremin-display);font-size:clamp(2rem,5vw,3.2rem);margin:.3rem 0}
.spiremin-time{border-left:3px solid var(--spiremin-accent);padding-left:1.2rem;margin:2rem 0}
.spiremin-time li{margin:1rem 0;list-style:none}
.spiremin-flip{padding:2rem 1.25rem;background:var(--spiremin-fg);color:var(--spiremin-bg)}
.spiremin-flip a{color:var(--spiremin-accent)}
.spiremin-wm{font-size:clamp(4rem,12vw,8rem);opacity:.08;position:absolute;right:0;bottom:0;margin:0;pointer-events:none;font-family:var(--spiremin-display)}
.spiremin-f19{position:relative;overflow:hidden}
.spiremin-sticky-cta{position:sticky;bottom:0;background:var(--spiremin-panel);border-top:1px solid var(--spiremin-line);padding:.8rem 1rem;display:flex;gap:.75rem;justify-content:center;z-index:15}
