/* ===========================================================
   Trinitytech Terminal — implements DESIGN.md
   Committed dark. Structure exposed, never softened.
   =========================================================== */

:root{
  /* grounds */
  --ground:#0A0D0B;
  --panel:#0F1411;
  --panel-2:#131A16;

  /* rules */
  --rule:#1E2B24;
  --rule-soft:#17211C;

  /* text */
  --ink:#D8E3DB;
  --ink-dim:#8B9A91;
  --ink-faint:#5C6A62;

  /* accent */
  --phos:#54EFA4;
  --phos-dim:#2E8A5F;
  --amber:#E9A93C;

  --font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --font-sans:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-code:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;  /* code, paths, slugs: never localised */

  --wrap:1180px;
  --pad:24px;
  --sec:80px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--ground);
  color:var(--ink);
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

/* 2.1 static scanline overlay — felt, not seen */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:100;
  background:repeating-linear-gradient(to bottom,
    rgba(84,239,164,.030) 0, rgba(84,239,164,.030) 1px,
    transparent 1px, transparent 3px);
  mix-blend-mode:screen;
}

img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--phos);outline-offset:3px}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad)}

/* ---------- 1.2 typography ---------- */
h1,h2,h3,h4{font-family:var(--font-mono);font-weight:700;margin:0}
h1{font-size:clamp(30px,4.4vw,50px);line-height:1.1;letter-spacing:-.02em;text-wrap:balance}
h2{font-size:clamp(22px,2.6vw,30px);line-height:1.2;letter-spacing:-.01em}
h3{font-size:19px;line-height:1.3}
p{margin:0}
.lede{font-size:17px;line-height:1.6;color:var(--ink-dim);max-width:52ch}
.body{font-size:15px;line-height:1.6;color:var(--ink-dim);max-width:56ch}
.eyebrow{
  font-family:var(--font-mono);font-weight:400;font-size:11.5px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);
}

/* 3.3 section header: path -> h2 -> deck */
.path{font-family:var(--font-code);font-size:12.5px;color:var(--phos)}
.path::before{content:"$ cd ";color:var(--ink-faint)}
.sec-head{margin-bottom:40px}
.sec-head h2{margin:12px 0 14px}
.sec{padding:var(--sec) 0}

/* ---------- 3.1 header ---------- */
.hdr{
  position:sticky;top:0;z-index:90;height:60px;
  background:rgba(10,13,11,.86);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--rule);
}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:60px;gap:20px}
.brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-code);font-weight:700;font-size:14px;letter-spacing:.02em}
.brand-mark{height:26px;width:26px;flex:none;object-fit:contain}
.brand .tri{color:var(--phos)}
.brand .tld{color:var(--ink-faint)}
.nav{display:flex;gap:26px;align-items:center}
.nav a{font-family:var(--font-mono);font-size:13px;color:var(--ink-dim);transition:color 140ms linear}
.nav a::before{content:"~/";color:var(--ink-faint)}
.nav a:hover{color:var(--phos)}

/* ---------- 3.2 buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--font-mono);font-weight:500;font-size:13.5px;
  padding:13px 22px;border:1px solid var(--phos);
  background:var(--phos);color:#06110B;
  transition:transform 150ms linear,box-shadow 150ms linear,background 150ms linear,color 150ms linear,border-color 150ms linear;
}
.btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--phos-dim)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--rule)}
.btn.ghost:hover{color:var(--phos);border-color:var(--phos);box-shadow:4px 4px 0 var(--rule)}
.btn.nav-cta{background:transparent;color:var(--phos);border-color:var(--phos-dim);padding:9px 16px;font-size:12.5px}
.btn.nav-cta:hover{background:var(--phos);color:#06110B;border-color:var(--phos)}

/* ---------- hero ---------- */
.hero{
  padding:72px 0 64px;
  border-bottom:1px solid var(--rule);
  /* 2.3 grid-ruled ground — hero only */
  background-image:
    linear-gradient(to right,  var(--rule-soft) 1px, transparent 1px),
    linear-gradient(to bottom, var(--rule-soft) 1px, transparent 1px);
  background-size:64px 64px;
}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:56px;align-items:center}
.hero h1{margin:16px 0 20px}
.hero .lede{margin-bottom:32px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}

/* 2.2 terminal window */
.term{border:1px solid var(--rule);background:var(--panel);box-shadow:0 24px 70px rgba(0,0,0,.55)}
.term-bar{display:flex;align-items:center;gap:8px;background:var(--panel-2);border-bottom:1px solid var(--rule);padding:9px 12px}
.lamp{width:9px;height:9px;border-radius:50%;border:1px solid var(--rule);flex:none}
.lamp.on{background:var(--phos-dim);border-color:var(--phos-dim)}
.term-title{font-family:var(--font-code);font-size:11.5px;color:var(--ink-faint);margin-inline-start:6px}
.term-body{
  font-family:var(--font-code);font-size:13px;line-height:1.85;
  padding:18px 18px 20px;color:var(--ink-dim);
  /* pre-wrap belongs on the lines, not the container: on the container it also
     renders the newlines *between* the line spans and doubles every gap */
  white-space:normal;
}
.term-body .l{display:block;opacity:0;white-space:pre-wrap}
.term-body.booted .l{opacity:1}
.p-prompt{color:var(--phos)}
.p-cmd{color:var(--ink)}
.p-key{color:var(--amber)}
.p-out{color:var(--ink-faint)}
.caret{display:inline-block;width:8px;height:15px;background:var(--phos);vertical-align:-2px;animation:blink 1.05s steps(1) infinite}
@keyframes blink{0%,50%{opacity:1}50.01%,100%{opacity:0}}

/* ---------- 3.6 stat band ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rule);background:var(--panel)}
.stat{padding:26px 24px;border-inline-end:1px solid var(--rule)}
.stat:last-child{border-inline-end:0}
.stat .n{font-family:var(--font-mono);font-weight:700;font-size:34px;line-height:1;color:var(--phos);font-variant-numeric:tabular-nums}
.stat .t{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-top:12px}

/* ---------- 3.4 pillars: ONE ruled block, no gaps ---------- */
.pillars{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--rule);background:var(--panel)}
.pillar{
  grid-column:span 2;padding:32px 28px 34px;
  border-inline-end:1px solid var(--rule);border-bottom:1px solid var(--rule);
  transition:background 150ms linear;
}
/* five pillars: 3 across then 2 across, so both rows fill completely */
.pillar:nth-child(n+4){grid-column:span 3;border-bottom:0}
.pillar:nth-child(3),.pillar:nth-child(5){border-inline-end:0}
.pillar:hover{background:var(--panel-2)}
.pillar .idx{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);transition:color 150ms linear}
.pillar:hover .idx{color:var(--phos)}
.pillar h3{margin:14px 0 10px}
.pillar .body{margin-bottom:16px}

.tagrow{display:flex;flex-wrap:wrap;gap:6px}
.tag{font-family:var(--font-mono);font-size:11px;color:var(--ink-dim);border:1px solid var(--rule);padding:4px 9px}

/* ---------- capability columns ---------- */
.caps{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--rule);background:var(--panel)}
.cap{padding:30px 28px;border-inline-end:1px solid var(--rule)}
.cap:last-child{border-inline-end:0}
.cap h3{margin-bottom:18px}
.cap dl{margin:0}
.cap .row{padding:12px 0;border-bottom:1px solid var(--rule-soft)}
.cap .row:last-child{border-bottom:0}
.cap dt{font-family:var(--font-mono);font-size:13.5px;color:var(--ink);margin:0}
.cap dd{margin:5px 0 0;font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint);line-height:1.7}

/* ---------- 3.5 project table ---------- */
.tbl-wrap{border:1px solid var(--rule);overflow-x:auto}
table{width:100%;border-collapse:collapse;min-width:660px;background:var(--panel)}
thead th{
  background:var(--panel-2);text-align:start;
  font-family:var(--font-mono);font-weight:400;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-faint);
  padding:13px 18px;border-bottom:1px solid var(--rule);white-space:nowrap;
}
tbody td{padding:15px 18px;border-bottom:1px solid var(--rule-soft);vertical-align:top}
tbody tr:last-child td{border-bottom:0}
tbody tr{transition:background 140ms linear}
tbody tr:hover{background:var(--panel-2)}
.p-name{font-family:var(--font-code);font-weight:500;font-size:14px;color:var(--ink);transition:color 140ms linear}
tbody tr:hover .p-name{color:var(--phos)}
.p-site{display:block;font-family:var(--font-code);font-size:11px;color:var(--ink-faint);margin-top:5px;transition:color 140ms linear}
.p-site:hover{color:var(--phos)}
.p-does{font-size:14.5px;color:var(--ink-dim);max-width:46ch}
.p-stack{font-family:var(--font-code);font-size:12px;color:var(--ink-faint);white-space:nowrap}

.pill{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;white-space:nowrap}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.pill.live{color:var(--phos)}
.pill.build{color:var(--amber)}
.pill.done{color:var(--ink-faint)}
/* live products: the status LED blinks and pings, like a link light */
@keyframes led{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(84,239,164,.55)}50%{opacity:.35;box-shadow:0 0 0 5px rgba(84,239,164,0)}}
.pill.live::before{animation:led 1.6s ease-out infinite}
tr:nth-child(3n+2) .pill.live::before{animation-delay:-.55s}
tr:nth-child(3n) .pill.live::before{animation-delay:-1.1s}
@media (prefers-reduced-motion:reduce){.pill.live::before{animation:none}}

/* sections type themselves in when scrolled into view (script.js); the text is in the HTML.
   The caret follows the typing line, and stays blinking on the section title afterwards. */
.tw.tw-on::after,.tw.tw-rest::after{content:"▍";color:var(--phos);animation:blink 1.05s steps(1) infinite;margin-inline-start:2px}
.tw.tw-rest::after{opacity:.75}

/* ---------- 3.7 contact ---------- */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.kv{border:1px solid var(--rule);background:var(--panel);padding:6px 24px}
.kv .row{display:flex;gap:18px;padding:15px 0;border-bottom:1px solid var(--rule-soft)}
.kv .row:last-child{border-bottom:0}
.kv dt{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);min-width:78px;margin:0}
.kv dd{margin:0;font-family:var(--font-mono);font-size:14px;color:var(--ink)}
.kv dd a{transition:color 140ms linear}
.kv dd a:hover{color:var(--phos)}

/* ---------- 3.8 footer ---------- */
.foot{border-top:1px solid var(--rule)}
.foot-brand{display:flex;align-items:center;gap:12px}
.foot-mark{height:32px;width:32px;flex:none;object-fit:contain;opacity:.75}
.foot-in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:28px 0;font-family:var(--font-mono);font-size:12px;color:var(--ink-faint)}

/* ---------- project detail ---------- */
.back{display:inline-block;font-family:var(--font-mono);font-size:12.5px;color:var(--ink-faint);padding:28px 0 0;transition:color 140ms linear}
.back:hover{color:var(--phos)}
.ph{padding:26px 0 56px;border-bottom:1px solid var(--rule)}
.ph .path{margin-top:20px}
.ph h1{margin:14px 0 18px}
.detail{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.85fr);gap:56px;padding:var(--sec) 0}
.detail h2{margin-bottom:16px}
.detail .lede{margin-bottom:40px}
.feats{list-style:none;margin:0;padding:0;border:1px solid var(--rule);background:var(--panel);counter-reset:f}
.feats li{
  display:grid;grid-template-columns:46px 1fr;gap:14px;
  padding:14px 20px;border-bottom:1px solid var(--rule-soft);
  font-size:14.5px;color:var(--ink-dim);
}
.feats li:last-child{border-bottom:0}
.feats li::before{counter-increment:f;content:counter(f,decimal-leading-zero);font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint)}
.side .blk{border:1px solid var(--rule);background:var(--panel);padding:22px;margin-bottom:16px}
.side .blk:last-child{margin-bottom:0}
.side h3{font-family:var(--font-mono);font-weight:400;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:14px}
.side p{font-size:14px;color:var(--ink-dim);margin-bottom:16px}

/* ---------- 4. responsive ---------- */
@media (max-width:940px){
  :root{--sec:56px}
  .hero{padding:56px 0 48px}
  .hero-grid{grid-template-columns:1fr;gap:40px}
  .detail{grid-template-columns:1fr;gap:40px}
}
@media (max-width:880px){
  .pillars{grid-template-columns:1fr}
  .pillar,.pillar:nth-child(n+4){grid-column:auto;border-inline-end:0;border-bottom:1px solid var(--rule)}
  .pillar:last-child{border-bottom:0}
  .caps{grid-template-columns:1fr}
  .cap{border-inline-end:0;border-bottom:1px solid var(--rule)}
  .cap:last-child{border-bottom:0}
  .contact{grid-template-columns:1fr;gap:36px}
}
@media (max-width:820px){
  /* brand + CTA only — both must stay on one line to hold the 60px header */
  .nav{display:none}
  .brand,.btn.nav-cta{white-space:nowrap}
}
@media (max-width:400px){
  .brand{font-size:12.5px}
  .btn.nav-cta{padding:8px 12px;font-size:11.5px}
}
@media (max-width:760px){
  .stats{grid-template-columns:1fr 1fr}
  .stat{border-bottom:1px solid var(--rule)}
  .stat:nth-child(2n){border-inline-end:0}
  .stat:nth-last-child(-n+2){border-bottom:0}
}

/* ---------- 1.4 motion off ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .term-body .l{opacity:1}
  .btn:hover{transform:none;box-shadow:none}
  .caret{animation:none}
}

/* ---------- meta band (project detail): stat-band geometry, data-sized type ---------- */
.stats.meta .n{font-family:var(--font-mono);font-weight:500;font-size:14px;color:var(--ink);line-height:1.4}
.stats.meta .n a{color:var(--phos);transition:color 140ms linear}
.stats.meta .n a:hover{color:var(--ink)}
.stats.meta .n .muted{color:var(--ink-faint);font-weight:400}
.stats.meta .stat{padding:20px 22px}
.stats.meta .t{margin-top:9px}

/* ---------- legal / company block (imprint) ---------- */
.legal{border-top:1px solid var(--rule);background:var(--panel)}
.legal-in{display:grid;grid-template-columns:1.1fr 1.5fr .7fr 1fr;border-left:1px solid var(--rule);border-inline-end:1px solid var(--rule)}
.legal-in > div{padding:20px 22px;border-inline-end:1px solid var(--rule)}
.legal-in > div:last-child{border-inline-end:0}
.legal dt{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 8px}
.legal dd{margin:0;font-family:var(--font-mono);font-size:13px;line-height:1.6;color:var(--ink)}
.legal dd .sub{display:block;color:var(--ink-dim);font-size:12px}
.legal dd a{transition:color 140ms linear}
.legal dd a:hover{color:var(--phos)}
@media (max-width:880px){
  .legal-in{grid-template-columns:1fr 1fr}
  .legal-in > div{border-bottom:1px solid var(--rule)}
  .legal-in > div:nth-child(2n){border-inline-end:0}
  .legal-in > div:nth-last-child(-n+2){border-bottom:0}
}
@media (max-width:520px){
  .legal-in{grid-template-columns:1fr}
  .legal-in > div,.legal-in > div:nth-child(2n){border-inline-end:0;border-bottom:1px solid var(--rule)}
  .legal-in > div:last-child{border-bottom:0}
}

/* footer nav: privacy / terms / language */
.foot-nav{display:flex;gap:18px;flex-wrap:wrap}
.foot-nav a{transition:color 140ms linear}
.foot-nav a:hover{color:var(--phos)}

/* ---------- long-form legal pages ---------- */
.doc{max-width:72ch;padding:var(--sec) 0}
.doc h2{font-size:clamp(17px,1.6vw,20px);margin:40px 0 12px;color:var(--ink)}
.doc h2:first-child{margin-top:0}
.doc p{font-size:15.5px;line-height:1.7;color:var(--ink-dim);margin:0 0 14px}
.doc p strong{color:var(--ink);font-weight:500}
.doc a{color:var(--ink);border-bottom:1px solid var(--rule);transition:color 140ms linear,border-color 140ms linear}
.doc a:hover{color:var(--phos);border-bottom-color:var(--phos)}
.doc ul{margin:0 0 14px;padding-inline-start:22px;color:var(--ink-dim);font-size:15.5px;line-height:1.7}
.doc li{margin-bottom:4px}
.doc address{
  font-style:normal;font-family:var(--font-mono);font-size:13px;line-height:1.8;color:var(--ink);
  border:1px solid var(--rule);background:var(--panel);padding:16px 20px;margin:0 0 18px;
}

/* ---------- featured: organizational process automation ---------- */
.caps.proc{grid-template-columns:1.15fr 1fr}
.steps{list-style:none;margin:0;padding:0;counter-reset:st}
.steps li{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--rule-soft)}
.steps li:last-child{border-bottom:0;padding-bottom:4px}
.steps li::before{counter-increment:st;content:counter(st,decimal-leading-zero);font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint);padding-top:3px}
.steps b{display:block;font-family:var(--font-mono);font-weight:700;font-size:14px;color:var(--ink);margin-bottom:4px}
.steps span{display:block;grid-column:2;font-size:14.5px;line-height:1.6;color:var(--ink-dim);max-width:52ch}
.proc-cta{margin-top:26px}
.pillar .body a{color:var(--phos);white-space:nowrap}
.pillar .body a:hover{color:var(--ink)}
@media (max-width:880px){
  .caps.proc{grid-template-columns:1fr}
}

/* ---------- localisation ---------- */
/* code-ish runs keep their direction whatever the page direction is */
.term,.path,.brand,.p-name,.p-site,.p-stack,.ltr,.lang{direction:ltr;unicode-bidi:isolate}
.term{text-align:left}
.ltr{display:inline-block}
.nav a::before{direction:ltr;unicode-bidi:isolate}

/* language switcher */
.lang{display:flex;gap:12px;font-family:var(--font-code);font-size:11px;letter-spacing:.08em;color:var(--ink-faint)}
.lang a{transition:color 140ms linear}
.lang a:hover{color:var(--phos)}
.lang a.on{color:var(--ink)}
.hdr-in .lang{margin-inline-start:auto}
.foot-lang{margin-inline-start:6px}
@media (max-width:820px){ .hdr-in .lang{display:none} }

/* Arabic and Persian: Vazirmatn everywhere except code; no tracking on connected scripts */
html[lang="ar"],html[lang="fa"]{
  --font-sans:"Vazirmatn","IBM Plex Sans",sans-serif;
  --font-mono:"Vazirmatn","JetBrains Mono",sans-serif;
}
html[lang="ar"] h1,html[lang="fa"] h1{line-height:1.35;letter-spacing:0}
html[lang="ar"] h2,html[lang="fa"] h2{line-height:1.4;letter-spacing:0}
html[lang="ar"] h3,html[lang="fa"] h3{line-height:1.5}
html[lang="ar"] :is(.eyebrow,.idx,.stat .t,thead th,.kv dt,.legal dt,.side h3,.pill,.nav a,.tag,.btn,.foot-in,.cap dd,.steps b),
html[lang="fa"] :is(.eyebrow,.idx,.stat .t,thead th,.kv dt,.legal dt,.side h3,.pill,.nav a,.tag,.btn,.foot-in,.cap dd,.steps b){letter-spacing:0}
html[lang="ar"] :is(.lede,.body,.doc p,.doc li,.p-does,.steps span,.side p),
html[lang="fa"] :is(.lede,.body,.doc p,.doc li,.p-does,.steps span,.side p){line-height:1.85}
html[dir="rtl"] .p-does{text-align:start}
/* RTL: the nav's "~/" prefix and the shell paths are LTR runs, but the blocks
   they sit in still align to the page's start edge (the right) */
html[dir="rtl"] .nav a{direction:ltr;unicode-bidi:isolate}
html[dir="rtl"] .path,html[dir="rtl"] .p-stack,html[dir="rtl"] .p-site,html[dir="rtl"] .brand{text-align:right}
html[dir="rtl"] .p-site{display:block}
html[dir="rtl"] .back{direction:ltr;unicode-bidi:isolate}

/* ---------- blog ---------- */
.post-meta{margin-top:18px}
.post h2{font-size:clamp(19px,2vw,24px);margin:44px 0 12px}
.post h3{font-size:16px;margin:28px 0 8px;color:var(--ink)}
.post p{font-size:16px;line-height:1.75;color:var(--ink-dim);margin:0 0 16px}
.post ul,.post ol{margin:0 0 16px;padding-inline-start:22px;color:var(--ink-dim);font-size:16px;line-height:1.75}
.post li{margin-bottom:6px}
.post strong{color:var(--ink);font-weight:500}
.post a{color:var(--ink);border-bottom:1px solid var(--rule);transition:color 140ms linear,border-color 140ms linear}
.post a:hover{color:var(--phos);border-bottom-color:var(--phos)}
.faq{max-width:72ch;padding:8px 0 var(--sec)}
.faq h2{font-size:clamp(19px,2vw,24px);margin:0 0 18px}
.faq-list{margin:0;border:1px solid var(--rule);background:var(--panel)}
.faq-list .qa{padding:18px 22px;border-bottom:1px solid var(--rule-soft)}
.faq-list .qa:last-child{border-bottom:0}
.faq-list dt{font-family:var(--font-mono);font-weight:700;font-size:14px;color:var(--ink);margin:0 0 8px}
.faq-list dd{margin:0;font-size:15px;line-height:1.7;color:var(--ink-dim)}
.post-cta{display:flex;gap:12px;flex-wrap:wrap;padding-bottom:var(--sec)}
.blog-table .post-title{font-size:15px}
.blog-table td{vertical-align:top}
