/* Unblocks — site styles. Brand: cube logo v1.1, Slate finish (see BRAND-SPEC.md). Light theme by design. */
@font-face{font-family:"Outfit";font-weight:700;font-display:swap;src:url(/fonts/outfit-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Outfit";font-weight:800;font-display:swap;src:url(/fonts/outfit-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:500;font-display:swap;src:url(/fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-weight:600;font-display:swap;src:url(/fonts/inter-latin-600-normal.woff2) format("woff2")}

:root{
  --navy:#0F2A4A; --teal:#0D9488; --ink:#111111; --mist:#F6F7F9; --white:#FFFFFF;
  --line:#E5E7EB; --slate:#4B5563; --muted:#94A3B8;
  --cube-top:#E3E9F0; --cube-left:#9AAABD; --cube-right:#5B6F88; --cube-body:#0F1E33;
  --warn-bg:#FFF7E0; --warn-fg:#7A5300; --err-bg:#FDECEC; --err-fg:#9B1C1C; --ok-bg:#E7F6F4; --ok-fg:#0B5F58;
  --fd:"Outfit",ui-sans-serif,system-ui,sans-serif;
  --fb:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --shadow:0 1px 2px rgb(15 42 74 / .06),0 8px 24px rgb(15 42 74 / .06);
  --r:14px; --max:1120px;
  color-scheme:light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--mist);color:var(--ink);font-family:var(--fb);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--teal);text-decoration-thickness:2px;text-underline-offset:3px}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:4px}
h1,h2,h3{font-family:var(--fd);color:var(--navy);margin:0;text-wrap:balance}
h1{font-weight:800;font-size:clamp(36px,6vw,56px);line-height:1.07;letter-spacing:-.02em}
h2{font-weight:800;font-size:clamp(28px,4vw,36px);line-height:1.11;letter-spacing:-.02em}
h3{font-weight:700;font-size:clamp(19px,2.4vw,22px);line-height:1.25}
p{margin:0}
img{max-width:100%}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:clamp(16px,4vw,32px)}
.muted{color:var(--slate)}
.small{font-size:14px;line-height:1.5;font-weight:500}
.eyebrow{display:flex;align-items:center;gap:10px;font:600 12px/1 var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}
.eyebrow::before{content:"";width:24px;height:2px;background:var(--teal);flex:none}
.accent{color:var(--teal)}
.i{width:20px;height:20px;flex:none}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mt24{margin-top:24px}.mt32{margin-top:32px}
.ph{font:600 11px/1.3 var(--fb);letter-spacing:.06em;color:var(--warn-fg);background:var(--warn-bg);border:1px dashed #E3CB84;border-radius:6px;padding:2px 6px;display:inline-block;vertical-align:middle}

/* Header */
header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--white);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.brand{display:flex;padding:6px 0;text-decoration:none}
.brand svg{height:40px;width:auto;display:block}
.hnav{display:flex;align-items:center;gap:clamp(12px,2.5vw,28px);flex-wrap:wrap;justify-content:flex-end}
.hnav a.lnk{font:500 15px var(--fb);text-decoration:none;color:var(--navy);padding:6px 0;border-bottom:2px solid transparent}
.hnav a.lnk[aria-current="page"]{border-bottom-color:var(--teal)}
.hnav form{margin:0}
.hdr-bar{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--teal);opacity:0}
.hdr-bar.run{opacity:1;animation:hdrbar 1s cubic-bezier(.4,0,.2,1) forwards}
@keyframes hdrbar{from{width:0}to{width:100%}}
@media (max-width:560px){.hnav a.lnk{display:none}.hnav a.lnk.lnk-m{display:inline;font-size:14px;white-space:nowrap}.brand svg{height:32px}}
@media (max-width:460px){header.site .wrap{flex-wrap:wrap;row-gap:0;min-height:0;padding-block:10px 0}.hnav{display:contents}.hnav .btn,.hnav form{order:2}.hnav a.lnk.lnk-m{order:3;flex-basis:100%;padding:6px 0 10px;border-bottom:0}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 15px/1 var(--fb);padding:13px 20px;border-radius:10px;cursor:pointer;text-decoration:none;border:1px solid var(--navy);transition:transform .15s ease,box-shadow .15s ease}
.btn-p{background:var(--navy);color:var(--white)}
.btn-s{background:var(--white);color:var(--navy)}
.btn-o{background:transparent;color:var(--white);border-color:#5B6F88}
.btn-d{background:var(--white);color:var(--err-fg);border-color:#E7B4B4}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow)}
.btn-sm{padding:8px 13px;font-size:14px}
.btn-xs{padding:6px 10px;font-size:13px;border-radius:8px}
.btn .i{width:16px;height:16px}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}

/* Generic */
section{padding-block:clamp(48px,8vw,88px)}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.ic{width:40px;height:40px;border-radius:10px;background:var(--mist);display:grid;place-items:center;color:var(--navy);flex:none}
.notice{border-radius:10px;padding:12px 14px;font-size:15px}
.notice.err{background:var(--err-bg);color:var(--err-fg)}
.notice.ok{background:var(--ok-bg);color:var(--ok-fg)}
.notice.warn{background:var(--warn-bg);color:var(--warn-fg)}

/* Landing */
.hero{background:var(--white);border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center;padding-block:clamp(48px,8vw,96px)}
.hero-copy{display:grid;gap:20px}
.hero .sub{font-size:19px;color:var(--slate);max-width:36em}
.hero .plain{font-size:17px;max-width:36em}
.hero-art{display:grid;place-items:center}
.hero-art img{width:min(100%,300px)}
@media (max-width:820px){.hero .wrap{grid-template-columns:1fr}.hero-art{display:none}}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}
.step{padding:22px;display:grid;gap:14px;align-content:start}
.step .num{font:600 12px var(--fb);letter-spacing:.14em;color:var(--slate)}
.step h3{font-size:22px}
@media (max-width:820px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:440px){.steps{grid-template-columns:1fr}}
.founders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px}
@media (max-width:720px){.founders{grid-template-columns:1fr}}
.person{padding:24px;display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;align-items:start}
.avatar{width:72px;height:72px;border-radius:50%;background:var(--cube-top);color:var(--navy);display:grid;place-items:center;font:800 24px var(--fd)}
.person .role{font:600 12px var(--fb);letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin-top:2px}
.person p{margin-top:10px;font-size:16px}
.person .li{margin-top:12px;font-size:14px}
.band{background:var(--navy);color:var(--white);border-radius:var(--r);padding:clamp(28px,5vw,48px);display:flex;justify-content:space-between;gap:24px;align-items:center;flex-wrap:wrap}
.band h2{color:var(--white)}
.band p{color:#D6DEE8;margin-top:10px;max-width:34em}
.band .btn-s{border-color:var(--white)}
.contact{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}
.contact strong{color:var(--navy)}
.contact code{font:500 14px var(--fb);background:var(--white);border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.teaser{margin-top:16px;font-size:15px}
.pad-bottom{padding-bottom:clamp(48px,8vw,88px)}

/* Footer */
footer.site{background:var(--navy);color:#D6DEE8;margin-top:clamp(48px,8vw,88px)}
footer.site .wrap{padding-block:40px;display:grid;gap:20px}
footer.site .frow{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
footer.site .flogo svg{height:34px;width:auto;display:block}
footer.site a{color:var(--white);text-decoration-color:var(--teal)}
.disc{font-size:13px;line-height:1.55;color:#AFBCCC;max-width:70em;border-top:1px solid #1F3F63;padding-top:20px}
.disc .ph{margin-right:6px}

/* Auth / forms */
.auth{display:grid;place-items:center;padding-block:56px}
.auth .card{width:min(100%,440px);padding:clamp(24px,5vw,36px);display:grid;gap:18px}
.auth .card.wide{width:min(100%,560px)}
.auth .sym{width:48px}
.auth h1{font-size:28px;letter-spacing:-.01em}
form.stack{display:grid;gap:16px}
.field{display:grid;gap:6px;border:0;padding:0;margin:0;min-width:0}
.field label,.field legend{font:600 14px var(--fb);color:var(--navy)}
.field .hint{font-size:13px;color:var(--slate)}
.field input[type=text],.field input[type=email],.field input[type=password],.field input[type=date],.field select,.field textarea{font:400 16px var(--fb);color:var(--ink);background:var(--white);border:1px solid #CBD2DB;border-radius:10px;padding:11px 12px;width:100%}
.field textarea{min-height:110px;resize:vertical}
.field textarea.tall{min-height:340px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:1.55}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal)}
.choice{display:flex;gap:8px;flex-wrap:wrap}
.choice label{position:relative;font:500 14px var(--fb);border:1px solid #CBD2DB;border-radius:999px;padding:7px 14px;cursor:pointer;color:var(--navy)}
.choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.choice label:has(input:checked){background:var(--navy);color:var(--white);border-color:var(--navy)}
.choice label:has(input:focus-visible){outline:2px solid var(--teal);outline-offset:2px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--slate)}
.check input{margin-top:4px;width:16px;height:16px;flex:none;accent-color:var(--navy)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px}
.count{font-size:12px;color:var(--slate);text-align:right;margin-top:-2px}

/* Loading screen (cube) */
.loading-ov{position:fixed;inset:0;z-index:30;background:var(--mist);display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .2s ease}
.loading-ov.on{opacity:1;pointer-events:auto}
.loading-ov .box{display:grid;justify-items:center;gap:18px;text-align:center;padding:24px}
.loading-ov .cube-live{width:88px}
.loading-ov .cube-live svg{width:100%;height:auto}
.loading-ov .lbl{font:600 18px var(--fd);color:var(--navy)}
.loading-ov .sub{font-size:14px;color:var(--slate);margin-top:-10px}

/* Materials hub */
.hub-head{display:grid;gap:10px;padding-block:48px 8px}
.hub-head h1{font-size:clamp(32px,5vw,44px)}
.meta-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pill{font:600 12px/1 var(--fb);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--navy);color:var(--navy);border-radius:999px;padding:5px 10px}
.pill.conf{background:var(--navy);color:var(--white)}
.mats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
@media (max-width:820px){.mats{grid-template-columns:1fr}}
.mat{padding:24px;display:grid;gap:12px;align-content:start;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease}
.mat:hover{transform:translateY(-2px);border-color:var(--cube-left)}
.mat h3{display:flex;gap:8px;align-items:center}
.mat h3 .i{color:var(--teal);width:18px;height:18px}
.mat p{font-size:15px;color:var(--slate)}
.mat .v{font-size:13px;color:var(--slate)}
.ack{margin-top:28px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start}
.ack .i{color:var(--teal);margin-top:3px}

/* Data Room */
.dr-top{background:var(--white);border-bottom:1px solid var(--line)}
.dr-top .wrap{padding-block:40px 0;display:grid;gap:16px}
.dr-top .lead{font-size:19px;max-width:40em}
.dr-top .sub2{font-weight:500}
.anchors{display:flex;gap:4px;overflow-x:auto;margin-top:12px}
.anchors a{font:500 14px var(--fb);color:var(--slate);text-decoration:none;padding:12px;border-bottom:2px solid transparent;white-space:nowrap}
.anchors a:hover{color:var(--navy);border-bottom-color:var(--teal)}
.dr section{padding-block:clamp(40px,6vw,64px);border-bottom:1px solid var(--line);scroll-margin-top:80px}
.dr section:last-child{border-bottom:0}
.sec-h{display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;align-items:start;margin-bottom:24px}
.sec-h p{margin-top:6px;color:var(--slate);font-size:18px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:820px){.grid3,.grid2{grid-template-columns:1fr}}
.tile{padding:20px;display:grid;gap:10px;align-content:start}
.tile h3{font-size:19px;display:flex;align-items:center;gap:10px}
.tile p{font-size:16px;color:var(--slate)}
.note{margin-top:20px;padding:18px 20px;border-left:3px solid var(--teal);background:var(--white);border-radius:0 10px 10px 0;max-width:62em}
.prose{display:grid;gap:14px;max-width:62em}
.flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}
@media (max-width:820px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:440px){.flow{grid-template-columns:1fr}}
.flow .tile h3{font-size:18px}
blockquote.card{margin:0;padding:24px;display:grid;gap:10px}
blockquote .q{font:700 clamp(20px,2.6vw,24px)/1.35 var(--fd);color:var(--navy)}
blockquote cite{font-style:normal;font-size:14px;color:var(--slate)}
.center-prose{align-content:center}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:640px){.stats{grid-template-columns:1fr}}
.stat{padding:24px;display:grid;gap:6px}
.stat .n{font:800 clamp(34px,5vw,48px)/1 var(--fd);color:var(--navy);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.stat .l{font-size:15px;color:var(--slate)}
.tbl-wrap{overflow-x:auto}
table.t{border-collapse:collapse;width:100%;background:var(--white)}
table.t th,table.t td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);font-size:16px;vertical-align:top}
table.t th{font:600 12px var(--fb);letter-spacing:.12em;text-transform:uppercase;color:var(--slate);background:var(--mist)}
table.t tr:last-child td{border-bottom:0}
table.model td:first-child{font-weight:600;color:var(--navy);white-space:nowrap}
.flag{font:700 11px/1 var(--fb);letter-spacing:.08em;border:1px solid var(--navy);color:var(--navy);border-radius:999px;padding:4px 7px}
.status-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.status-row span{font:500 14px var(--fb);background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 14px;display:inline-flex;gap:8px;align-items:center}
.status-row span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--teal)}
.team .person{grid-template-columns:56px minmax(0,1fr)}
.team .avatar{width:56px;height:56px;font-size:19px}
.foot-meta{margin-top:28px}

/* Deck */
body.deck-page{background:var(--white)}
.deck{position:relative;height:calc(100vh - 65px);min-height:520px;overflow:hidden;background:var(--white);outline:none}
.slide{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,6vw,96px) clamp(20px,8vw,140px) 96px;opacity:0;visibility:hidden;transform:translateX(24px);transition:opacity .35s ease,transform .35s ease,visibility 0s linear .35s}
.slide.active{opacity:1;visibility:visible;transform:none;transition:opacity .35s ease,transform .35s ease}
.slide.prev{transform:translateX(-24px)}
.slide .eyebrow{margin-bottom:18px}
.slide h2{font-size:clamp(32px,5.4vw,64px);line-height:1.05;max-width:16em}
.slide .lede{font-size:clamp(17px,1.9vw,22px);color:var(--slate);max-width:38em;margin-top:22px}
.slide .cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px;max-width:1000px}
.slide .cols.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.slide .cols.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.slide .col{padding:18px 20px}
.slide .col .k{font:700 17px var(--fd);color:var(--navy);margin-bottom:6px}
.slide .col p{font-size:15px;color:var(--slate)}
.slide .big{font:800 clamp(40px,7vw,84px)/1 var(--fd);color:var(--navy);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.slide .big.warn{color:var(--navy)}
.slide .q{font:700 clamp(20px,2.6vw,28px)/1.35 var(--fd);color:var(--navy);max-width:30em;margin-top:28px}
.slide cite{display:block;font-style:normal;font-size:15px;color:var(--slate);margin-top:10px}
.slide table.t{max-width:900px;margin-top:28px}
.slide .deck-logo{height:44px;width:auto;margin-bottom:36px}
.slide .deck-logo svg{height:44px;width:auto}
@media (max-width:820px){.slide .cols,.slide .cols.c4{grid-template-columns:1fr}.slide{justify-content:flex-start;overflow-y:auto}}
.deck-ctrl{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:16px;padding:14px;background:linear-gradient(transparent,rgb(255 255 255 / .96) 40%);z-index:2}
.deck-ctrl button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--white);color:var(--navy);display:grid;place-items:center;cursor:pointer}
.deck-ctrl button:disabled{opacity:.35;cursor:default}
.deck-ctrl .count{font:600 14px var(--fb);color:var(--slate);min-width:64px;text-align:center;margin:0;font-variant-numeric:tabular-nums}
.deck-progress{position:absolute;left:0;top:0;height:3px;background:var(--teal);transition:width .35s ease;z-index:2}
.deck-meta{position:absolute;right:clamp(16px,3vw,32px);top:16px;z-index:2}

/* One Pager */
.op{max-width:860px;margin:0 auto;padding:40px clamp(16px,4vw,32px) 0}
.op-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:2px solid var(--navy);padding-bottom:12px}
.op-head .logo svg{height:30px;width:auto;display:block}
.op h1{font-size:clamp(30px,4.4vw,40px);margin-top:28px}
.op .lede{font-size:18px;margin-top:12px}
.op h2{font-size:22px;margin-top:30px;margin-bottom:10px;font-weight:700}
.op p+p{margin-top:10px}
.op .steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.op .steps4 div{border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--white);font-size:14px}
.op .steps4 b{display:block;color:var(--navy);font-family:var(--fd);font-size:16px;margin-bottom:4px}
@media (max-width:700px){.op .steps4{grid-template-columns:1fr 1fr}}
.op .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:700px){.op .two{grid-template-columns:1fr}}
.op .box{border:1px solid var(--line);border-radius:10px;padding:14px;background:var(--white)}
.op .box b{color:var(--navy)}
.op .q{font:700 18px/1.4 var(--fd);color:var(--navy)}
.op .nums{display:flex;gap:28px;flex-wrap:wrap;margin-top:8px}
.op .nums .n{font:800 32px/1 var(--fd);color:var(--navy);font-variant-numeric:tabular-nums}
.op .nums .l{font-size:14px;color:var(--slate)}
.op table.t td,.op table.t th{padding:10px 12px;font-size:15px}
.op .badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.op .badges span{font:600 13px var(--fb);border:1px solid var(--navy);border-radius:999px;padding:5px 10px;color:var(--navy)}
.op-foot{margin-top:30px;border-top:1px solid var(--line);padding-top:12px}
.print-bar{display:flex;justify-content:flex-end;max-width:860px;margin:16px auto 0;padding-inline:clamp(16px,4vw,32px)}

/* Chat with the founders */
.chat-head{display:grid;gap:12px;padding-block:48px 8px;max-width:46em}
.chat-head h1{font-size:clamp(34px,5vw,48px)}
.chat-head p{color:var(--slate);font-size:18px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
.filters a{font:500 14px var(--fb);border:1px solid #CBD2DB;background:var(--white);color:var(--navy);border-radius:999px;padding:7px 14px;text-decoration:none}
.filters a[aria-current="true"]{background:var(--navy);border-color:var(--navy);color:var(--white)}
.chat-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:24px;align-items:start;margin-top:24px}
@media (max-width:900px){.chat-grid{grid-template-columns:1fr}}
.posts{display:grid;gap:16px}
.post-card{padding:24px;display:grid;gap:12px;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease}
.post-card:hover{transform:translateY(-2px);border-color:var(--cube-left)}
.post-card h3{font-size:24px;line-height:1.2}
.post-card .ex{color:var(--slate);font-size:16px}
.byline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--slate)}
.byline .av{width:32px;height:32px;border-radius:50%;background:var(--cube-top);color:var(--navy);display:grid;place-items:center;font:800 12px var(--fd);flex:none}
.byline b{color:var(--navy);font-weight:600}
.empty{padding:28px;text-align:center;color:var(--slate)}
.empty img{width:44px;display:block;margin:0 auto 10px}
.ask{padding:24px;display:grid;gap:14px}
.ask h3{font-size:22px}
.draft{font:600 11px/1 var(--fb);letter-spacing:.08em;text-transform:uppercase;color:var(--warn-fg);background:var(--warn-bg);border:1px dashed #E3CB84;border-radius:999px;padding:5px 9px;justify-self:start}
.article{max-width:720px;margin:0 auto;padding-block:48px 0}
.article h1{font-size:clamp(32px,5vw,48px);margin-top:16px}
.article .byline{margin-top:20px}
.article .body{margin-top:32px;display:grid;gap:20px;font-size:18px;line-height:1.7}
.article .body blockquote{margin:0;border-left:3px solid var(--teal);padding-left:16px;color:var(--navy)}
.share{display:flex;gap:8px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);align-items:center}
.post-disc{margin-top:24px;font-size:13px;line-height:1.55;color:var(--slate);background:var(--white);border:1px solid var(--line);border-radius:10px;padding:14px 16px}
.article .ask{margin-top:40px}

/* Admin */
.admin{padding-block:32px 0}
.admin-nav{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0 24px}
.admin-nav a{font:500 14px var(--fb);text-decoration:none;color:var(--navy);border:1px solid var(--line);background:var(--white);border-radius:999px;padding:7px 14px}
.admin-nav a[aria-current="page"]{background:var(--navy);color:var(--white);border-color:var(--navy)}
.admin .card{padding:20px}
.admin table.t th,.admin table.t td{padding:10px 12px;font-size:14px}
.admin table.t td form{display:inline}
.admin .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:820px){.admin .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin .kpi{padding:16px}
.admin .kpi .n{font:800 28px/1 var(--fd);color:var(--navy);font-variant-numeric:tabular-nums}
.admin .kpi .l{font-size:13px;color:var(--slate);margin-top:6px}
.tag{font:600 11px/1 var(--fb);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 8px;border:1px solid var(--line);color:var(--slate);white-space:nowrap}
.tag.green{color:var(--ok-fg);border-color:#9ED8D1;background:var(--ok-bg)}
.tag.amber{color:var(--warn-fg);border-color:#E3CB84;background:var(--warn-bg)}
.tag.red{color:var(--err-fg);border-color:#E7B4B4;background:var(--err-bg)}
.filters-form{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:16px}
.filters-form .field{min-width:180px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.preview-box{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:20px;max-height:520px;overflow:auto}

.fade{animation:fade .2s ease both}
@keyframes fade{from{opacity:.001;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.fade,.hdr-bar.run{animation:none}.btn,.mat,.post-card,.slide,.loading-ov,.deck-progress{transition:none}}

/* Print: the One Pager prints to a clean 1–2 page PDF with the all-ink logo */
@media print{
  @page{size:A4;margin:14mm}
  body{background:#fff;font-size:11pt;display:block}
  header.site,footer.site,.print-bar,.loading-ov,.no-print{display:none!important}
  .op{max-width:none;padding:0}
  .op-head .logo svg path,.op-head .logo svg polygon{fill:#111111!important;stroke:#111111!important}
  .op-head .logo svg polygon[fill="#e3e9f0"],.op-head .logo svg polygon[fill="#9aaabd"],.op-head .logo svg polygon[fill="#5b6f88"]{fill:#ffffff!important}
  .op h1{font-size:24pt;margin-top:10pt}
  .op h2{font-size:13pt;margin-top:12pt;break-after:avoid}
  .op .box,.op .steps4 div,table.t{break-inside:avoid}
  a{text-decoration:none}
  .pill.conf{border:1px solid #000;color:#000;background:#fff}
}

/* Skip link, misc */
.skip{position:absolute;left:12px;top:-60px;z-index:40;background:var(--navy);color:var(--white);padding:10px 14px;border-radius:8px;text-decoration:none}
.skip:focus{top:12px}
.hnav .who{font-size:14px;color:var(--slate)}
.inline{display:inline}
.nowrap{white-space:nowrap}
.legal{display:grid;gap:14px;max-width:46em;padding-block:48px 0}
.legal h2{font-size:24px;margin-top:12px}
.err-page{padding-block:72px 24px;display:grid;gap:14px;max-width:40em}
.err-page .code{font:800 14px var(--fd);letter-spacing:.14em;color:var(--slate)}
.op-actions{display:flex;gap:10px}
.admin h1{font-size:32px}
.admin .stack-gap{display:grid;gap:20px}
.admin pre{white-space:pre-wrap;font-size:13px;margin:0}
.admin .q-text{max-width:40em;white-space:pre-wrap}
.admin .actions{display:flex;gap:6px;flex-wrap:wrap}
.admin form.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:end}
.admin .field.grow{flex:1;min-width:220px}
.mt0{margin-top:0}
.pad-top-0{padding-top:0}
.back{font-size:15px}
.mt24{margin-top:24px}
@media (max-width:820px){.slide .deck-logo{display:none}.deck-meta{top:12px}}
