/* GENERATED FILE - do not edit. Source: reference.src.css
   Edit the .src.css and let .githooks/pre-commit rebuild this.
   Rebuild by hand: python3 scripts/gen_css.py --write */
.ring-spin-slow{transform-box:fill-box;transform-origin:center;animation:rspin 36s linear infinite;will-change:transform}.ring-spin-mid{transform-box:fill-box;transform-origin:center;animation:rspin 22s linear infinite reverse;will-change:transform}.ring-spin-fast{transform-box:fill-box;transform-origin:center;animation:rspin 14s linear infinite;will-change:transform}@keyframes rspin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ring-spin-slow,.ring-spin-mid,.ring-spin-fast{animation:none !important}}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:'Martian Mono',ui-monospace,monospace;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.5}
img,svg{display:block}
a{color:inherit}

body>*{position:relative;z-index:1}
.serif{font-family:'RX100','RX100 Fallback',ui-monospace,monospace;font-style:normal;font-weight:500}
.display{font-family:'RX100','RX100 Fallback',ui-monospace,monospace;text-transform:uppercase;letter-spacing:0.005em}
.eyebrow{font-size:var(--fs-label);letter-spacing:.24em;text-transform:uppercase;color:var(--dim)}
.container{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.container-narrow{max-width:860px;margin:0 auto;padding:0 var(--pad)}

nav.site-nav{position:sticky;top:0;z-index:100;background:rgba(52,52,64,0.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}
.nav-inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}
.nav-logo{display:flex;align-items:center;gap:14px;text-decoration:none;flex-shrink:0}
.nav-logo-mark{width:34px;height:34px}
.nav-top{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:19px;line-height:1;color:var(--ink);letter-spacing:-0.01em}
.nav-btm{font-size:var(--fs-micro);letter-spacing:.28em;text-transform:uppercase;color:var(--yellow);margin-top:3px;font-weight:600}
.nav-links{display:flex;align-items:center;gap:30px}
.nav-links a{font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);text-decoration:none;transition:color .15s;font-weight:500;white-space:nowrap;position:relative}
.nav-links a:hover,.nav-links a.active{color:var(--ink)}
.nav-links a.active::after{content:"●";position:absolute;left:50%;transform:translateX(-50%);bottom:-10px;color:var(--room-text);font-size:var(--fs-micro);line-height:1;pointer-events:none}.nav-links a.btn-green,.nav-links a.btn-primary{font-size:var(--fs-micro)}
.btn{font-family:'Martian Mono',monospace;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;padding:11px 22px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;text-decoration:none;transition:all .18s ease;line-height:1;font-weight:600}
@media (hover:hover) and (pointer:fine){:where(body[data-page="faq"]) .btn-green:hover,:where(body[data-page="faq"]) :where(.btn).btn-primary:hover{transform:translateY(-1px)}}
:where(body[data-page="facts"],body[data-page="privacy"],body[data-page="terms"],body[data-page="the-index-mcp"]) .btn-green:hover,:where(body[data-page="facts"],body[data-page="privacy"],body[data-page="terms"],body[data-page="the-index-mcp"]) :where(.btn).btn-primary:hover{transform:translateY(-1px)}
.btn-outline{border:1.5px solid var(--ink);color:var(--ink);background:transparent;padding:9.5px 22px}
.btn-outline:hover{background:var(--ink);color:var(--dark)}
@media(max-width:760px){.nav-inner{padding:0 20px}.nav-links{gap:18px}.nav-links a:not(.btn){display:none}}

.page-head{padding:64px 0 48px;border-bottom:1px solid var(--ink-rule);position:relative;overflow:hidden}
.page-head-inner{max-width:var(--max);margin:0 auto;padding:0 var(--pad);position:relative;z-index:2}
.page-head-meta{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.sec-num{font-size:var(--fs-label);letter-spacing:.24em;text-transform:uppercase;color:var(--room-text);font-weight:700}
.sec-lbl{font-size:var(--fs-label);letter-spacing:.26em;text-transform:uppercase;color:var(--dim)}
.sec-aside{font-size:var(--fs-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--faint)}
.reg-cross-circle{width:11px;height:11px;border:1px solid currentColor;border-radius:50%;position:relative;display:inline-block}
.reg-cross-circle::before,.reg-cross-circle::after{content:"";position:absolute;background:currentColor}
.reg-cross-circle::before{top:50%;left:1px;right:1px;height:1px;transform:translateY(-50%)}
.reg-cross-circle::after{left:50%;top:1px;bottom:1px;width:1px;transform:translateX(-50%)}
.page-head-h1{font-family:'RX100','RX100 Fallback',ui-monospace,monospace;font-style:normal;font-size:clamp(48px,7vw,92px);font-weight:500;line-height:.92;color:var(--ink);margin-bottom:18px;letter-spacing:-0.015em}
.page-head-body{font-size:var(--fs-body);line-height:1.7;color:var(--ink-soft);max-width:580px;font-family:var(--body)}

.faq-sec{padding:64px 0 96px}
.faq-category{margin-bottom:64px}
.faq-cat-hdr{display:flex;align-items:center;gap:16px;margin-bottom:28px;padding-bottom:14px;border-bottom:2px solid var(--ink-rule)}
.faq-cat-num{font-size:var(--fs-micro);letter-spacing:.22em;text-transform:uppercase;color:var(--room-text);font-weight:700}
.faq-cat-name{font-family:'RX100','RX100 Fallback',ui-monospace,monospace;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}
.faq-cat-count{font-size:var(--fs-micro);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-left:auto}

.faq-item{border-bottom:1px solid var(--ink-rule)}
.faq-item:first-of-type{border-top:1px solid var(--ink-rule)}

.faq-q{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;cursor:pointer;list-style:none;user-select:none;transition:color .15s}
.faq-q::-webkit-details-marker{display:none}
.faq-q-text{font-size:12px;letter-spacing:.04em;color:var(--ink);line-height:1.6;font-weight:500}
:where(body[data-page="faq"]) .faq-q-icon{flex-shrink:0;width:20px;height:20px;border:1px solid var(--ink-rule);display:flex;align-items:center;justify-content:center;transition:border-color .15s cubic-bezier(.2,.7,.3,1),background .15s cubic-bezier(.2,.7,.3,1),color .15s cubic-bezier(.2,.7,.3,1);color:var(--dim)}
:where(body[data-page="facts"],body[data-page="privacy"],body[data-page="terms"],body[data-page="the-index-mcp"]) .faq-q-icon{flex-shrink:0;width:20px;height:20px;border:1px solid var(--ink-rule);display:flex;align-items:center;justify-content:center;transition:all .22s ease;color:var(--dim)}
.faq-q-icon svg{width:10px;height:10px;transition:transform .22s ease}
.faq-item[open] .faq-q-icon{border-color:var(--room);color:var(--room-text);background:color-mix(in srgb,var(--room) 8%,transparent)}
.faq-item[open] .faq-q-icon svg{transform:rotate(45deg)}
.faq-item[open] .faq-q-text{color:var(--ink)}
.faq-q:hover .faq-q-text{color:var(--ink)}
.faq-q:hover .faq-q-icon{border-color:var(--ink);color:var(--ink)}

.faq-a{padding:0 32px 24px 0;font-size:12px;line-height:1.85;color:var(--ink-soft);max-width:680px}
.faq-a strong{color:var(--ink);font-weight:600}
:where(body[data-page="facts"],body[data-page="privacy"]) .faq-a code{font-size:.85em;overflow-wrap:anywhere}
:where(body[data-page="faq"]) .faq-a-wrap{display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .24s cubic-bezier(.2,.7,.3,1);}
:where(body[data-page="faq"]) .faq-item[open] .faq-a-wrap{grid-template-rows:1fr;}
:where(body[data-page="faq"]) .faq-a-wrap>.faq-a{overflow:hidden;min-height:0;}
@starting-style{:where(body[data-page="faq"]) .faq-item[open] .faq-a-wrap{grid-template-rows:0fr;}}

.faq-cta{margin-top:56px;padding:32px 36px;border:1px solid var(--ink-rule);position:relative;background:rgba(0,0,0,0.1);display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.faq-cta-left{}
.faq-cta-eyebrow{font-size:var(--fs-micro);letter-spacing:.24em;text-transform:uppercase;color:var(--room-text);font-weight:700;margin-bottom:8px}
.faq-cta-h{font-family:'RX100','RX100 Fallback',ui-monospace,monospace;font-style:normal;font-size:28px;color:var(--ink);line-height:1.1;margin-bottom:6px}
.faq-cta-p{font-size:11px;color:var(--dim);line-height:1.7;max-width:420px}
.chev{display:inline-block;width:16px;height:7px}
.chev svg{width:100%;height:100%}

footer.site-foot{background:var(--dark);border-top:1px solid var(--ink-rule);padding:48px 0 28px;margin-top:0}
.ft-grid{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;margin-bottom:36px}
.ft-col h5{font-size:var(--fs-micro);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);margin-bottom:14px;font-weight:700}
.ft-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.ft-col a{font-size:var(--fs-label);color:var(--dim);text-decoration:none;transition:color .15s;line-height:1.7}
.ft-col a:hover{color:var(--ink)}
.ft-brand-line{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:20px;color:var(--ink);margin-bottom:8px}
.ft-brand-sub{font-size:var(--fs-label);letter-spacing:.22em;text-transform:uppercase;color:var(--yellow);font-weight:600;margin-bottom:18px}
.ft-brand-p{font-size:var(--fs-body);color:var(--dim);line-height:1.7;max-width:280px;font-family:var(--body)}
.ft-btm-bar{max-width:var(--max);margin:0 auto;padding:24px var(--pad) 0;border-top:1px solid var(--ink-rule);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.ft-copy{font-size:var(--fs-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.ft-badge{display:flex;align-items:center;gap:10px;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-weight:600}

@media(max-width:900px){.ft-grid{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:540px){.ft-grid{grid-template-columns:1fr}}
@media(max-width:760px){
  .container,.container-narrow{padding:0 22px}
  .ft-grid,.ft-btm-bar{padding-left:22px;padding-right:22px}
  .faq-sec{padding:48px 0 72px}
  .faq-cta{padding:24px 22px}
}
@media(max-width:480px){
  .container,.container-narrow{padding:0 16px}
  .ft-grid,.ft-btm-bar{padding-left:16px;padding-right:16px}
}
@media(prefers-reduced-motion:reduce){
  .faq-q-icon svg{transition:none}
  .faq-q-icon{transition:none}
:where(body[data-page="faq"]) .faq-a-wrap{transition:none}
html:where(:has(body[data-page="faq"])){scroll-behavior:auto}
}

.nav-ham{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--ink,currentColor);flex-direction:column;gap:5px;align-items:center;justify-content:center;flex-shrink:0}
.nav-ham span{display:block;width:22px;height:1.5px;background:currentColor;border-radius:1px;transition:transform .2s ease,opacity .2s ease}
.nav-ham[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-ham[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-ham[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
@media(max-width:760px){.nav-ham{display:flex}}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
:where(body[data-page="faq"]) summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
:where(body[data-page="faq"]) .faq-q:focus-visible .faq-q-icon{border-color:var(--ink);color:var(--ink)}

:where(body[data-page="the-index-mcp"]) .answer-capsule{background:var(--deep);border:1px solid var(--ink-rule);border-top:3px solid var(--cap,var(--room));padding:26px 30px 24px;margin:0 0 40px;max-width:74ch;}
:where(body[data-page="the-index-mcp"]) .answer-capsule .cap-head{display:flex;align-items:center;gap:8px;margin-bottom:14px;}
:where(body[data-page="the-index-mcp"]) .answer-capsule .cap-head::before{content:"";width:7px;height:7px;background:var(--cap,var(--room));flex-shrink:0;}
:where(body[data-page="the-index-mcp"]) .answer-capsule .cap-label{font-size:var(--fs-micro);font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--cap-text,var(--room-text));}
:where(body[data-page="the-index-mcp"]) .answer-capsule .cap-lead{font-size:14px;line-height:1.7;color:var(--ink);font-weight:600;margin-bottom:16px;max-width:100%;}
:where(body[data-page="the-index-mcp"]) .answer-capsule ul{list-style:none;margin:0;padding:0;max-width:100%;}
:where(body[data-page="the-index-mcp"]) .answer-capsule li{position:relative;padding-left:18px;font-size:12.5px;line-height:1.7;color:var(--ink-soft);margin-bottom:9px;}
:where(body[data-page="the-index-mcp"]) .answer-capsule li::before{content:"\00B7";position:absolute;left:5px;top:-2px;color:var(--cap,var(--room-text));font-weight:700;font-size:16px;}
:where(body[data-page="the-index-mcp"]) .answer-capsule li:last-child{margin-bottom:0;}
:where(body[data-page="the-index-mcp"]) .answer-capsule .cap-src{margin-top:16px;padding-top:13px;border-top:1px dotted var(--ink-rule);font-size:var(--fs-micro);letter-spacing:0.13em;text-transform:uppercase;color:var(--dim);}
:where(body[data-page="the-index-mcp"]) .mcp-url{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0 4px;padding:16px 18px;border:1px solid var(--ink-rule);background:var(--deep)}
:where(body[data-page="the-index-mcp"]) .mcp-url code{font-family:'Martian Mono',ui-monospace,monospace;font-size:14px;color:var(--green-text);word-break:break-all}
:where(body[data-page="the-index-mcp"]) .mcp-tools{list-style:none;margin:8px 0 0;padding:0}
:where(body[data-page="the-index-mcp"]) .mcp-tools li{padding:12px 0;border-top:1px solid var(--ink-rule)}
:where(body[data-page="the-index-mcp"]) .mcp-tools code{font-family:'Martian Mono',ui-monospace,monospace;font-size:12px;color:var(--ink)}
:where(body[data-page="the-index-mcp"]) .mcp-tools span{display:block;margin-top:4px}
:where(body[data-page="the-index-mcp"]) .faq-a p+p{margin-top:12px}

.page-head-h1{font-size:clamp(36px,5vw,58px)!important;font-style:normal!important;letter-spacing:-.01em!important}
.contact-h{font-size:clamp(32px,4.4vw,50px)!important;font-style:normal!important}
.press-h{font-size:clamp(28px,3.6vw,44px)!important;font-style:normal!important}
.svc-intro-h{font-size:clamp(28px,3.4vw,42px)!important;font-style:normal!important}
.ab-h{font-size:clamp(28px,3.4vw,42px)!important;font-style:normal!important}
.intake-aside h1{font-size:clamp(34px,4.4vw,54px)!important;font-style:normal!important}

.faq-a{font-family:var(--body)!important;font-size:16px!important;line-height:1.7!important}
