/* Portainer V3UI site theme — self-hosted, built from the homepage. Single source of truth.
   Default dark; light via [theme='light'] on <html>. No external CDN dependency. */

:root, [theme='light']{
  --bg:#f9fafb; --surface:#ffffff; --surface-2:#fafafb;
  --border:#ecedee; --border-strong:#d1d5db;
  --text:#111827; --text-semi:#374151; --muted:#667085;
  --accent:#1570ef; --accent-2:#2e90fa; --on-accent:#fff;
  --brand:#1570ef; --brand-soft:#2e90fa; --success:#12b76a; --danger:#f04438; --warning:#f79009;
  --eyebrow-bg:#eaf3ff; --eyebrow-border:#d6e8ff; --eyebrow-text:#1570ef;
  --nav-bg:rgba(255,255,255,.86); --nav-border:var(--border);
  --wayfind-bg:#eff6ff; --wayfind-text:#374151; --wayfind-link:#1570ef; --wayfind-dot:#d1d5db;
  --announce-bg:#1570ef; --announce-text:#fff;
  --twelve:#98a2b3; --phrase:#1570ef; --go:#1570ef; --puppy:#667085; --trust-logo:#98a2b3;
  --hook-strong:#374151; --logo:#2e2f33;
  --panel:#fff; --panel-border:var(--border);
  --door-bg:#fff; --door-border:var(--border);
  --door-primary-border:#d1d5db; --door-primary-glow:0 0 0 1px #d1d5db, var(--card-shadow);
  --std-border:#d1d5db; --std-glow:0 0 0 1px #d1d5db, var(--card-shadow); --std-lbl:#1570ef;
  --btn-ghost-bg:transparent; --btn-ghost-text:#374151; --btn-ghost-border:#d1d5db; --btn-ghost-hover:#f3f4f6;
  --code-bg:#f3f4f6; --code-text:#1f2937; --quote-bar:#1570ef;
  --card-shadow:0px 2px 8px -2px rgba(0,0,0,.07); --pop-shadow:0 4px 6px -2px rgba(0,0,0,.1),0 12px 24px -4px rgba(0,0,0,.15);
  --glow-a:transparent; --glow-b:transparent; --grid-op:0; --grid-line:rgba(17,24,39,.04);
}
[theme='dark']{
  --bg:#18181b; --surface:#232327; --surface-2:#2a2a2f;
  --border:#34343a; --border-strong:#46464d;
  --text:#fafafa; --text-semi:#e2e2e6; --muted:#a1a1aa;
  --accent:#2e90fa; --accent-2:#60a5fa; --on-accent:#fff;
  --brand:#60a5fa; --brand-soft:#3b82f6; --success:#34d399; --danger:#f87171; --warning:#fbbf24;
  --eyebrow-bg:rgba(46,144,250,.14); --eyebrow-border:rgba(46,144,250,.32); --eyebrow-text:#93c5fd;
  --nav-bg:rgba(24,24,27,.78); --nav-border:rgba(255,255,255,.08);
  --wayfind-bg:transparent; --wayfind-text:#e5e7eb; --wayfind-link:#60a5fa; --wayfind-dot:rgba(255,255,255,.3);
  --announce-bg:rgba(255,255,255,.05); --announce-text:#d4d4d8;
  --twelve:#71717a; --phrase:#60a5fa; --go:#60a5fa; --puppy:#a1a1aa; --trust-logo:#6b6b73;
  --hook-strong:#e2e2e6; --logo:#fff;
  --panel:#232327; --panel-border:rgba(255,255,255,.1);
  --door-bg:rgba(255,255,255,.04); --door-border:rgba(255,255,255,.09);
  --door-primary-border:rgba(255,255,255,.16); --door-primary-glow:0 0 0 1px rgba(255,255,255,.14);
  --std-border:rgba(255,255,255,.16); --std-glow:0 0 0 1px rgba(255,255,255,.14); --std-lbl:#60a5fa;
  --btn-ghost-bg:rgba(255,255,255,.06); --btn-ghost-text:#e5e7eb; --btn-ghost-border:rgba(255,255,255,.16); --btn-ghost-hover:rgba(255,255,255,.12);
  --code-bg:#202024; --code-text:#dbe4f3; --quote-bar:#60a5fa;
  --card-shadow:none; --pop-shadow:0 12px 30px -12px rgba(0,0,0,.6);
  --glow-a:transparent; --glow-b:transparent; --grid-op:0; --grid-line:rgba(255,255,255,.03);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:"DM Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}
a{color:inherit;text-decoration:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
:root{--fs-hero:clamp(40px,6vw,76px);--fs-lead:clamp(18px,2vw,23px)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.wayfind{background:var(--wayfind-bg);border-bottom:1px solid var(--nav-border)}
.wayfind .wrap{display:flex;gap:10px;align-items:center;justify-content:center;min-height:38px;font-size:13px;color:var(--wayfind-text);flex-wrap:wrap;text-align:center}
.wayfind b{color:var(--text);font-weight:600}
.wayfind a{color:var(--wayfind-link);font-weight:600;border-bottom:1px solid transparent}
.wayfind a:hover{border-bottom-color:var(--wayfind-link)}
.wayfind .dot{color:var(--wayfind-dot)}
.announce{background:var(--announce-bg);color:var(--announce-text);border-bottom:1px solid var(--nav-border)}
.announce .wrap{display:flex;gap:8px;align-items:center;justify-content:center;min-height:40px;font-size:13.5px;font-weight:500}
.announce a{display:inline-flex;gap:8px;align-items:center;color:var(--announce-text)}
.announce .arw{transition:transform .2s}.announce a:hover .arw{transform:translateX(3px)}

.nav{position:sticky;top:0;z-index:60;background:var(--nav-bg);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--nav-border)}
.nav .wrap{display:flex;align-items:center;gap:26px;height:64px}
.brand{display:flex;align-items:center;color:var(--logo)}
.brand-logo{height:21px;width:auto;display:block}
.navlinks{display:flex;gap:6px;align-items:center;margin-left:6px}
.navlinks>a,.ddwrap>button{font-family:inherit;font-size:14.5px;color:var(--text-semi);font-weight:500;cursor:pointer;background:none;border:0;padding:8px 10px;border-radius:6px;display:inline-flex;align-items:center;gap:5px}
.navlinks>a:hover,.ddwrap>button:hover{color:var(--text);background:var(--btn-ghost-hover)}
.ddwrap{position:relative}
.ddwrap>button svg{opacity:.5;transition:transform .2s}
.ddwrap:hover>button svg,.ddwrap:focus-within>button svg{transform:rotate(180deg)}
.ddpanel{position:absolute;top:calc(100% + 8px);left:0;min-width:290px;background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--pop-shadow);padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.16s;z-index:70}
.ddwrap:hover .ddpanel,.ddwrap:focus-within .ddpanel{opacity:1;visibility:visible;transform:translateY(0)}
.dditem{display:flex;gap:12px;padding:10px;border-radius:8px;align-items:flex-start}
.dditem:hover{background:var(--btn-ghost-hover)}
.dditem .di-ic{flex:none;width:32px;height:32px;border-radius:8px;background:var(--eyebrow-bg);color:var(--eyebrow-text);display:grid;place-items:center}
.dditem .di-t{font-size:14px;font-weight:600;color:var(--text);display:block}
.dditem .di-s{font-size:12.5px;color:var(--muted);line-height:1.35;display:block}
.dddiv{height:1px;background:var(--border);margin:6px 8px}
.navspace{margin-left:auto;display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-size:14.5px;font-weight:600;border-radius:6px;padding:0 16px;height:38px;cursor:pointer;border:1px solid transparent;transition:.15s;white-space:nowrap}
.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{filter:brightness(1.08)}
.btn-ghost{background:var(--btn-ghost-bg);color:var(--btn-ghost-text);border-color:var(--btn-ghost-border)}
.btn-ghost:hover{background:var(--btn-ghost-hover);color:var(--text)}
.btn-lg{height:46px;padding:0 22px;font-size:15.5px}
.tmt{width:38px;height:38px;border-radius:6px;border:1px solid var(--btn-ghost-border);background:var(--btn-ghost-bg);color:var(--text-semi);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.15s}
.tmt:hover{background:var(--btn-ghost-hover);color:var(--text)}
.tmt .sun{display:none}[theme='dark'] .tmt .sun{display:block}[theme='dark'] .tmt .moon{display:none}
.menu-btn{display:none;background:var(--btn-ghost-bg);border:1px solid var(--btn-ghost-border);border-radius:6px;width:40px;height:38px;align-items:center;justify-content:center;cursor:pointer}
.menu-btn span,.menu-btn span:before,.menu-btn span:after{content:"";display:block;width:16px;height:2px;background:var(--text);position:relative}
.menu-btn span:before{position:absolute;top:-5px}.menu-btn span:after{position:absolute;top:5px}

.hero{position:relative;overflow:hidden;padding:76px 0 84px}
.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(66% 58% at 80% -8%,var(--glow-a),transparent 60%),radial-gradient(52% 55% at 6% 6%,var(--glow-b),transparent 60%)}
.hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:var(--grid-op);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(70% 60% at 50% 28%,#000,transparent 82%);mask-image:radial-gradient(70% 60% at 50% 28%,#000,transparent 82%)}
.hero .wrap{position:relative;z-index:1}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--eyebrow-text);background:var(--eyebrow-bg);border:1px solid var(--eyebrow-border);padding:5px 12px;border-radius:999px;margin-bottom:24px}
.eyebrow .pmark{height:13px;width:auto;display:block;flex:none}
h1{font-size:var(--fs-hero);line-height:1.02;letter-spacing:-.035em;font-weight:800;margin:0 0 22px;max-width:16ch;color:var(--text)}
h1 .twelve{color:var(--twelve)}
.lead{font-size:var(--fs-lead);line-height:1.45;color:var(--text-semi);max-width:62ch;margin:0 0 20px;font-weight:500}
.hook{font-size:16px;line-height:1.62;color:var(--muted);max-width:64ch;margin:0 0 12px}
.hook b{color:var(--hook-strong);font-weight:600}.phrase{color:var(--phrase);font-weight:600}
.cta-row{display:flex;gap:12px;margin:30px 0 6px;flex-wrap:wrap}
.doors{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:44px}
.door{background:var(--door-bg);border:1px solid var(--door-border);border-radius:16px;padding:26px 26px 22px;box-shadow:var(--card-shadow);transition:.18s}
.door:hover{transform:translateY(-2px);box-shadow:var(--pop-shadow)}
.door.primary{border-color:var(--door-primary-border);box-shadow:var(--door-primary-glow)}
.door .tag{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.door.primary .tag{color:var(--phrase)}
.door h3{font-size:21px;letter-spacing:-.02em;margin:0 0 10px;font-weight:700;color:var(--text)}
.door p{font-size:15px;line-height:1.55;color:var(--text-semi);margin:0 0 18px}
.door .go{display:inline-flex;align-items:center;gap:7px;font-size:14.5px;font-weight:600;color:var(--go)}
.door .go .arw{transition:transform .2s}.door:hover .go .arw{transform:translateX(4px)}

.trust{padding:44px 0 8px;text-align:center}
.trust .t{font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:22px}
.logos{display:flex;flex-wrap:wrap;gap:14px 40px;justify-content:center;align-items:center}
.logos span{font-size:18px;font-weight:700;color:var(--trust-logo);letter-spacing:-.01em}

.caps{padding:78px 0 20px}
.sec-head{text-align:center;max-width:60ch;margin:0 auto 42px}
.sec-head h2{font-size:clamp(28px,3.4vw,40px);letter-spacing:-.03em;font-weight:800;margin:0 0 14px;color:var(--text)}
.sec-head p{font-size:17px;color:var(--text-semi);margin:0}
.capgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.cap{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:var(--card-shadow)}
.cap .ci{width:38px;height:38px;border-radius:10px;background:var(--eyebrow-bg);color:var(--eyebrow-text);display:grid;place-items:center;margin-bottom:16px}
.cap h3{font-size:18px;letter-spacing:-.02em;margin:0 0 8px;font-weight:700;color:var(--text)}
.cap p{font-size:14.5px;line-height:1.55;color:var(--text-semi);margin:0}

.compare{padding:72px 0 20px}
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.col{border-radius:16px;padding:28px;border:1px solid var(--border);background:var(--surface)}
.col.standard{border-color:var(--std-border);box-shadow:var(--std-glow)}
.col .lbl{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.col.bespoke .lbl{color:var(--muted)}.col.standard .lbl{color:var(--std-lbl)}
.col .name{font-size:22px;font-weight:700;letter-spacing:-.02em;margin-bottom:20px;color:var(--text)}
.row{display:flex;gap:11px;padding:11px 0;border-top:1px solid var(--border);font-size:14.5px;color:var(--text-semi);line-height:1.45}
.row:first-of-type{border-top:none}.row .ic{flex:none;width:18px;font-weight:700}
.col.bespoke .ic{color:var(--danger)}.col.standard .ic{color:var(--success)}
.puppy{margin-top:16px;font-size:13.5px;color:var(--puppy);font-style:italic}

.final{padding:80px 0}
.final .box{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:48px;text-align:center;box-shadow:var(--card-shadow);position:relative;overflow:hidden}
.final .box:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 80% at 50% -20%,var(--glow-a),transparent 60%)}
.final h2{position:relative;font-size:clamp(26px,3.2vw,38px);letter-spacing:-.03em;font-weight:800;margin:0 0 12px;color:var(--text)}
.final p{position:relative;font-size:17px;color:var(--text-semi);max-width:52ch;margin:0 auto 26px}
.final .cta-row{position:relative;justify-content:center}

footer{background:var(--surface-2);border-top:1px solid var(--border);padding:56px 0 34px;margin-top:20px}
.fcols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px}
.fbrand .brand-logo{height:22px;margin-bottom:16px;color:var(--logo)}
.fbrand p{font-size:14px;color:var(--muted);line-height:1.55;max-width:34ch;margin:0}
.fcol h4{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin:0 0 14px}
.fcol a{display:block;font-size:14px;color:var(--text-semi);padding:5px 0}
.fcol a:hover{color:var(--text)}
.fbot{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:40px;padding-top:22px;border-top:1px solid var(--border);font-size:13px;color:var(--muted);flex-wrap:wrap}

@media (max-width:900px){
  .navlinks,.navspace .btn-ghost{display:none}.menu-btn{display:inline-flex}
  .doors,.cgrid,.capgrid{grid-template-columns:1fr}
  .fcols{grid-template-columns:1fr 1fr}
  .hero{padding:52px 0 56px}.final .box{padding:32px 22px}
}

/* ===== inner-page additions (articles, prose, generic helpers) ===== */
img{max-width:100%;height:auto}
.section{padding:64px 0}
.eyebrow-lg{margin-bottom:20px}
.article-hero{position:relative;overflow:hidden;padding:64px 0 34px;border-bottom:1px solid var(--border)}
.article-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 60% at 82% -10%,var(--glow-a),transparent 60%),radial-gradient(46% 55% at 4% 4%,var(--glow-b),transparent 60%)}
.article-hero .wrap{position:relative;max-width:820px}
.article-kicker{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--phrase);margin-bottom:14px}
.article-hero h1{font-size:clamp(30px,4.4vw,50px);line-height:1.06;letter-spacing:-.03em;font-weight:800;margin:0;color:var(--text);max-width:none}
.article-meta{display:flex;gap:14px;align-items:center;margin-top:20px;font-size:14px;color:var(--muted)}
.article-meta .dot{opacity:.5}
.prose{max-width:760px;margin:0 auto;padding:44px 24px 12px;font-size:17.5px;line-height:1.72;color:var(--text-semi)}
.prose>*:first-child{margin-top:0}
.prose h2{font-size:clamp(24px,2.6vw,32px);letter-spacing:-.02em;font-weight:800;color:var(--text);margin:44px 0 14px;line-height:1.2}
.prose h3{font-size:clamp(20px,2.1vw,24px);letter-spacing:-.02em;font-weight:700;color:var(--text);margin:34px 0 12px}
.prose h4{font-size:18px;font-weight:700;color:var(--text);margin:26px 0 10px}
.prose p{margin:0 0 20px}
.prose a{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.prose a:hover{color:var(--accent-2)}
.prose ul,.prose ol{margin:0 0 22px;padding-left:26px}
.prose li{margin:0 0 10px}.prose li::marker{color:var(--brand)}
.prose strong{color:var(--text);font-weight:700}
.prose img{border-radius:12px;border:1px solid var(--border);margin:26px 0;display:block}
.prose figure{margin:26px 0}.prose figcaption{font-size:13.5px;color:var(--muted);text-align:center;margin-top:8px}
.prose blockquote{margin:26px 0;padding:6px 0 6px 22px;border-left:3px solid var(--quote-bar,var(--brand));color:var(--text);font-size:19px}
.prose code{background:var(--code-bg,#0f1830);color:var(--code-text,#dbe4f3);padding:2px 6px;border-radius:5px;font-size:.9em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.prose pre{background:var(--code-bg,#0f1830);color:var(--code-text,#dbe4f3);padding:18px 20px;border-radius:12px;overflow:auto;border:1px solid var(--border);margin:24px 0}
.prose pre code{background:none;padding:0}
.prose hr{border:0;border-top:1px solid var(--border);margin:34px 0}
.prose table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px}
.prose th,.prose td{border:1px solid var(--border);padding:10px 12px;text-align:left}
.prose th{background:var(--surface-2);color:var(--text);font-weight:700}
.prose aside .eyebrow{margin-bottom:12px}.prose aside ul{margin-bottom:0}
.article-cta{max-width:760px;margin:20px auto 0;padding:0 24px}
.article-cta .box{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:30px;text-align:center;box-shadow:var(--card-shadow)}
.article-cta h3{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px;color:var(--text)}
.article-cta p{color:var(--text-semi);margin:0 0 18px}
.article-cta .row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}
.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:var(--card-shadow)}
.card h3{font-size:18px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px;color:var(--text)}
.card p{font-size:14.5px;color:var(--text-semi);margin:0;line-height:1.55}
footer.site{background:var(--surface-2);border-top:1px solid var(--border);padding:56px 0 34px;margin-top:40px}
footer.site .fbot a{color:var(--wayfind-link);font-weight:600}
@media (max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}.prose{font-size:16.5px}}

.logowall{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:38px;margin-top:26px}
.logowall img{height:26px;width:auto;filter:brightness(0) invert(1);opacity:.55;transition:opacity .18s}
.logowall img:hover{opacity:.9}
[theme='light'] .logowall img{filter:brightness(0);opacity:.5}
@media(max-width:700px){.logowall{gap:26px}.logowall img{height:22px}}

h1,h2,h3{text-wrap:balance}

.sform{display:flex;flex-direction:column;gap:16px}.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:600;color:var(--text-semi)}.field input,.field textarea,.field select{font-family:inherit;font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:11px 13px;transition:border-color .15s}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--accent)}.field textarea{resize:vertical}.sform .btn{align-self:flex-start;margin-top:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}@media(max-width:900px){.form-grid{grid-template-columns:1fr;gap:32px}.frow{grid-template-columns:1fr}}.form-note{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 20px;font-size:14px;color:var(--text-semi);line-height:1.55;margin-top:20px}.form-note a{color:var(--accent);font-weight:600}

.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:46px;align-items:center}
.hero-visual{min-width:0}
.hero-visual img{width:100%;height:auto;display:block;border:1px solid var(--border);border-radius:14px;box-shadow:var(--card-shadow);cursor:zoom-in;transition:transform .2s,box-shadow .2s}
.hero-visual img:hover{transform:translateY(-2px);box-shadow:var(--pop-shadow)}
.hv-cap{display:block;text-align:center;margin-top:10px;font-size:12.5px;color:var(--muted)}
.hook-sec{padding-top:6px;padding-bottom:6px}.hook-sec .hook,.hook-sec .hook-h{max-width:820px}.hook-h{font-size:15px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--phrase);margin:0 0 18px;text-align:left}
#lb{display:none;position:fixed;inset:0;background:rgba(0,0,0,.86);z-index:2000;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}#lb img{max-width:100%;max-height:100%;border-radius:8px}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr;gap:26px}.hero-visual{order:2}}

/* article tables */
.prose table,.content-table,.table-optimized,.wf-table,.wf-compare-table,.pricing-table,.comparison-table,.partner-table{width:100%;border-collapse:collapse;margin:22px 0;font-size:14.5px;color:var(--text-semi);background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.prose th,.prose td,.content-table th,.content-table td,.table-optimized th,.table-optimized td,.wf-table th,.wf-table td,.wf-compare-table th,.wf-compare-table td,.pricing-table th,.pricing-table td,.comparison-table th,.comparison-table td,.partner-table th,.partner-table td{padding:11px 14px;border:1px solid var(--border);text-align:left;vertical-align:top;background:transparent}
.prose thead th,.content-table th,.table-optimized th,.wf-table th,.wf-compare-table th,.pricing-table th,.comparison-table th,.partner-table th{background:var(--surface-2);color:var(--text);font-weight:700}


/* =========================================================
   COMPONENT STYLES  -  consolidated from page templates.
   All colors and fonts reference the tokens in :root above,
   so editing a token restyles the whole site.
   ========================================================= */
.field input,.field textarea{font-family:inherit;font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:11px 13px;transition:border-color .15s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent)}
.faq-item{border-top:1px solid var(--border);padding:20px 0;max-width:820px;margin:0 auto}
.faq-item h3{font-size:16.5px;font-weight:700;color:var(--text);margin:0 0 8px}
.faq-item p{font-size:14.5px;color:var(--text-semi);line-height:1.6;margin:0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.cs-note{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 20px;font-size:14px;color:var(--text-semi);line-height:1.55;margin-top:20px}
.cs-note a{color:var(--accent);font-weight:600}
.rt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rt{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:var(--card-shadow);color:inherit;transition:.18s}
.rt:hover{transform:translateY(-3px);box-shadow:var(--pop-shadow);border-color:var(--std-border)}
.rt h3{font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--text);margin:0 0 10px}
.rt p{font-size:14.5px;color:var(--text-semi);line-height:1.5;margin:0 0 18px}
.rt-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--go)}
.rtabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}
.rtab{font-family:inherit;font-size:14px;font-weight:600;color:var(--text-semi);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:8px 16px;cursor:pointer;transition:.15s}
.rtab:hover{color:var(--text);background:var(--btn-ghost-hover);border-color:var(--border-strong)}
.rtab.active{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}
.rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rc{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:var(--card-shadow);color:inherit;transition:.18s}
.rc:hover{transform:translateY(-3px);box-shadow:var(--pop-shadow);border-color:var(--std-border)}
.rc-badge{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:4px 10px;border-radius:999px;margin-bottom:14px}
.rc-badge.case{background:var(--eyebrow-bg);color:var(--eyebrow-text)}
.rc-badge.wp{background:rgba(18,183,106,.14);color:var(--success)}
.rc-badge.event{background:rgba(251,191,36,.14);color:var(--warning)}
.rc-badge.insight{background:rgba(147,197,253,.14);color:var(--accent-2)}
.rc h3{font-size:17px;font-weight:700;letter-spacing:-.01em;color:var(--text);margin:0 0 16px;line-height:1.3}
.rc-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--go)}
.rc.hide{display:none}
.hl{color:var(--accent)}
.hero h1{max-width:20ch}
.phase{position:relative}
.phase .pn{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.phase.key{border-color:var(--std-border);box-shadow:var(--std-glow)}
.phase.key .pn{color:var(--phrase)}
.phase.dim{opacity:.72}
.note{background:var(--surface);border:1px solid var(--border);border-left:1px solid var(--border);border-radius:12px;padding:18px 22px;color:var(--text-semi);font-size:15px;line-height:1.6;max-width:820px;margin:6px auto 0}
.pull{max-width:900px;margin:0 auto;text-align:center}
.pull h2{font-size:clamp(26px,3.4vw,40px)}
.pull p{font-size:17px;color:var(--text-semi);line-height:1.65;max-width:70ch;margin:18px auto 26px}
.pillars{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px}
.pillars span{display:inline-flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:10px 18px;font-size:15px;font-weight:600;color:var(--text)}
.pillars span:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}
.lead-wide{max-width:66ch;margin:0 auto}
.closing-note{max-width:70ch;margin:32px auto 0;text-align:center;color:var(--text-semi);font-size:16px;line-height:1.6}
.feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feat{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:var(--card-shadow)}
.feat h3{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--phrase);margin:0 0 16px}
.feat ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.feat li{display:flex;gap:10px;font-size:14.5px;color:var(--text-semi);line-height:1.4}
.feat li:before{content:"✓";color:var(--success);font-weight:700;flex:none}
.price-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch;margin-top:8px}
.price-tier{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:30px;box-shadow:var(--card-shadow);display:flex;flex-direction:column;position:relative}
.price-tier.featured{border-color:var(--std-border);box-shadow:var(--std-glow)}
.price-tier .badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 12px;border-radius:999px;white-space:nowrap}
.price-tier .tname{font-size:14px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}
.price-tier .price{font-size:38px;font-weight:800;letter-spacing:-.03em;color:var(--text);margin:12px 0 0}
.price-tier .price small{font-size:16px;font-weight:600;color:var(--muted)}
.price-tier .subprice{font-size:13px;color:var(--muted);margin-bottom:16px;min-height:18px}
.price-tier .tdesc{font-size:14px;color:var(--text-semi);line-height:1.5;margin:0 0 18px}
.price-tier ul{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-direction:column;gap:10px}
.price-tier li{display:flex;gap:10px;font-size:14px;color:var(--text-semi);line-height:1.4}
.price-tier li:before{content:"✓";color:var(--success);font-weight:700;flex:none}
.price-tier .btn{margin-top:auto;width:100%}
.pnote{max-width:820px;margin:26px auto 0;background:var(--surface);border:1px solid var(--border);border-left:1px solid var(--border);border-radius:12px;padding:18px 22px;color:var(--text-semi);font-size:14.5px;line-height:1.55}
.pnote b{color:var(--text)}
.uc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.uc-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:var(--card-shadow);transition:.18s;color:inherit}
.uc-card:hover{transform:translateY(-3px);box-shadow:var(--pop-shadow);border-color:var(--std-border)}
.uc-tag{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--phrase);margin-bottom:12px}
.uc-card h3{font-size:19px;letter-spacing:-.02em;font-weight:700;color:var(--text);margin:0 0 12px;line-height:1.25}
.uc-card p{font-size:14.5px;color:var(--text-semi);line-height:1.55;margin:0 0 18px}
.uc-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--go)}
.opt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.opt{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:30px;box-shadow:var(--card-shadow)}
.opt.featured{border-color:var(--std-border);box-shadow:var(--std-glow)}
.opt .badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 12px;border-radius:999px;white-space:nowrap}
.opt h3{font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--text);margin:0 0 16px}
.opt ul{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-direction:column;gap:10px}
.opt li{display:flex;gap:10px;font-size:14.5px;color:var(--text-semi);line-height:1.4}
.opt li:before{content:"✓";color:var(--success);font-weight:700;flex:none}
.opt .btn{margin-top:auto;width:100%}
.inst{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.card ul{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-direction:column;gap:8px}
.card li{display:flex;gap:9px;font-size:14px;color:var(--text-semi);line-height:1.4}
.card li:before{content:"\2713";color:var(--success);font-weight:700;flex:none}
.callout{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px 28px;max-width:820px;margin:0 auto}
.callout h3{font-size:17px;font-weight:700;color:var(--text);margin:0 0 10px}
.callout p{font-size:14.5px;color:var(--text-semi);line-height:1.6;margin:0 0 10px}
.callout p:last-child{margin-bottom:0}
.chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.chips span{display:inline-flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:10px 20px;font-size:15px;font-weight:600;color:var(--text)}
.chips span:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}
.trust-line{font-size:14px;color:var(--muted);text-align:center;margin-top:8px}
.card ul.chk{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:9px}
.card ul.chk li{display:flex;gap:9px;font-size:14px;color:var(--text-semi);line-height:1.4}
.card ul.chk li:before{content:"\2713";color:var(--success);font-weight:700;flex:none}
.tiers{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;align-items:stretch}
.tier{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:30px;box-shadow:var(--card-shadow)}
.tier.feat{border-color:var(--std-border);box-shadow:var(--std-glow)}
.tier .tbadge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 12px;border-radius:999px;white-space:nowrap}
.tier .tname{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--text)}
.tier .ttag{font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--phrase);margin:4px 0 14px}
.tier p{font-size:14.5px;color:var(--text-semi);line-height:1.55;margin:0 0 22px}
.tier .btn{margin-top:auto;width:100%}
.oc{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px 22px;font-size:15.5px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:12px}
.oc:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--success);flex:none}
.gov4{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:900px;margin:0 auto}
.gp{display:flex;gap:11px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px 20px;font-size:14.5px;color:var(--text-semi);line-height:1.45}
.gp:before{content:"\2713";color:var(--success);font-weight:700;flex:none}
.vc{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;box-shadow:var(--card-shadow)}
.vc .vlabel{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--eyebrow-text);background:var(--eyebrow-bg);padding:4px 10px;border-radius:999px;margin-bottom:14px}
.vc h3{font-size:18px;font-weight:700;color:var(--text);margin:0 0 8px}
.vc p{font-size:14px;color:var(--text-semi);line-height:1.5;margin:0 0 16px}
.vc ul.stats{list-style:none;padding:16px 0 0;margin:0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}
.vc ul.stats li{display:flex;gap:9px;font-size:13.5px;font-weight:600;color:var(--text);line-height:1.4}
.vc ul.stats li:before{content:"\2197";color:var(--accent-2);font-weight:700;flex:none}
.quote{max-width:760px;margin:0 auto;text-align:center}
.quote blockquote{font-size:22px;font-weight:600;letter-spacing:-.01em;color:var(--text);line-height:1.4;margin:0 0 16px}
.quote cite{font-size:14px;color:var(--muted);font-style:normal}
.subtag{font-size:14px;color:var(--phrase);font-weight:600;margin-top:18px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px;box-shadow:var(--card-shadow)}
.step .sn{font-size:13px;font-weight:800;color:var(--accent);letter-spacing:.06em;margin-bottom:12px}
.step h3{font-size:18px;font-weight:700;color:var(--text);margin:0 0 8px}
.step p{font-size:14.5px;color:var(--text-semi);line-height:1.5;margin:0}
.twoways{margin-top:20px;background:var(--surface);border:1px solid var(--border);border-left:1px solid var(--border);border-radius:12px;padding:18px 22px;color:var(--text-semi);font-size:14.5px;line-height:1.6}
.twoways b{color:var(--text)}
.stack{max-width:640px;margin:0 auto;display:flex;flex-direction:column;align-items:stretch;gap:0}
.layer{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px 24px;text-align:center}
.layer .lk{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.layer .lt{font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--text);margin-bottom:8px}
.layer p{font-size:14px;color:var(--text-semi);line-height:1.5;margin:0}
.layer:nth-child(3){border-color:var(--std-border);box-shadow:var(--std-glow)}
.larrow{color:var(--muted);font-size:20px;text-align:center;padding:8px 0}
.quad{max-width:640px;margin:24px auto 0;position:relative;border:1px solid var(--border);border-radius:14px;aspect-ratio:1.4/1;background:var(--surface);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.quad .cell{border:1px dashed var(--border);display:flex;align-items:center;justify-content:center;text-align:center;font-size:13px;color:var(--muted);padding:12px}
.quad .open{background:rgba(46,144,250,.10);border:1px solid var(--accent);color:var(--text)}
.quad .open b{color:var(--accent);font-size:16px;display:block;margin-bottom:4px}
.axl{position:absolute;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.axl.top{top:-22px;left:50%;transform:translateX(-50%)}
.axl.bot{bottom:-22px;left:50%;transform:translateX(-50%)}
.axl.left{left:-8px;top:50%;transform:translate(-100%,-50%);width:110px;text-align:right}
.axl.right{right:-8px;top:50%;transform:translate(100%,-50%);width:110px;text-align:left}
.gov-ctx{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--phrase);text-align:center;margin-bottom:16px}
.checks{display:flex;flex-direction:column;gap:10px;max-width:520px;margin:0 auto 24px;text-align:left}
.checks div{display:flex;gap:10px;color:var(--text-semi);font-size:15px}
.checks div:before{content:"✓";color:var(--success);font-weight:700}
.ed{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;box-shadow:var(--card-shadow)}
.ed.feat{border-color:var(--std-border);box-shadow:var(--std-glow)}
.ed h3{font-size:19px;font-weight:800;letter-spacing:-.02em;color:var(--text);margin:0 0 12px}
.ed p{font-size:14.5px;color:var(--text-semi);line-height:1.55;margin:0 0 22px}
.ed .btn{margin-top:auto;align-self:flex-start}
.ctwrap{overflow-x:auto;border:1px solid var(--border);border-radius:14px}
.ctable{width:100%;border-collapse:collapse;background:var(--surface);min-width:560px}
.ctable th,.ctable td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--border);font-size:14.5px;color:var(--text-semi);vertical-align:top}
.ctable thead th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:700}
.ctable thead th .sub{text-transform:none;letter-spacing:0;font-weight:500;color:var(--muted)}
.ctable td.dim{color:var(--muted);font-weight:600;white-space:nowrap}
.ctable .ks{color:var(--text);font-weight:600;background:var(--eyebrow-bg)}
.ctable thead th.ks{color:var(--accent-2)}
.ctable tbody tr:last-child td{border-bottom:none}
.ks-inst{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:26px 28px;max-width:760px;margin:0 auto}
.ks-inst h3{font-size:16px;font-weight:700;color:var(--text);margin:0 0 10px}
.ks-inst p{font-size:14.5px;color:var(--text-semi);line-height:1.6;margin:0 0 12px}
.ks-inst code{background:var(--code-bg);color:var(--code-text);padding:2px 7px;border-radius:5px;font-size:13px}
.cs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cs{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:var(--card-shadow);color:inherit;transition:.18s}
.cs:hover{transform:translateY(-3px);box-shadow:var(--pop-shadow);border-color:var(--border-strong)}
.cs-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.cs-ind{font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;background:var(--eyebrow-bg);color:var(--eyebrow-text);padding:4px 10px;border-radius:999px}
.cs-reg{font-size:11px;font-weight:600;color:var(--muted);padding:4px 0}
.cs h3{font-size:17px;font-weight:700;letter-spacing:-.01em;color:var(--text);margin:0 0 16px;line-height:1.3}
.cs-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--go)}
.ev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ev{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:var(--card-shadow)}
.ev-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.ev-kind{font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--phrase)}
.ev-date{font-size:12.5px;color:var(--muted);font-weight:600}
.ev h3{font-size:17px;font-weight:700;letter-spacing:-.01em;color:var(--text);margin:0 0 10px;line-height:1.3}
.ev-loc{font-size:14px;color:var(--text-semi);margin-bottom:18px}
.ev-go{margin-top:auto;font-size:14px;font-weight:600;color:var(--go)}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:32px}.frow{grid-template-columns:1fr}}
@media(max-width:900px){.rt-grid{grid-template-columns:1fr}}
@media(max-width:900px){.rc-grid{grid-template-columns:1fr}}
@media(max-width:900px){.grid-3{grid-template-columns:1fr}}
@media(max-width:900px){.feat-grid{grid-template-columns:1fr}}
@media(max-width:900px){.price-tiers{grid-template-columns:1fr}}
@media(max-width:900px){.uc-grid{grid-template-columns:1fr}}
@media(max-width:900px){.opt-grid{grid-template-columns:1fr}}
@media(max-width:900px){.tiers{grid-template-columns:1fr}}
@media(max-width:900px){.gov4{grid-template-columns:1fr}}
@media(max-width:900px){.steps{grid-template-columns:1fr}.quad{aspect-ratio:1/1.1}}
@media(max-width:900px){.cs-grid{grid-template-columns:1fr}}
@media(max-width:900px){.ev-grid{grid-template-columns:1fr}}

.ctable.wide{min-width:920px}
.ctable .catrow td{background:var(--surface-2);font-weight:700;color:var(--phrase);text-transform:uppercase;font-size:11.5px;letter-spacing:.05em;padding-top:16px}
.pm{display:flex;gap:9px;font-size:14px;line-height:1.45;color:var(--text-semi);margin-bottom:9px}.pm:last-child{margin-bottom:0}.pm.plus:before{content:"+";color:var(--success);font-weight:800;flex:none}.pm.minus:before{content:"\2013";color:var(--danger);font-weight:800;flex:none}
.model{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px;box-shadow:var(--card-shadow)}.model.mp{border-color:var(--std-border);box-shadow:var(--std-glow)}.model h3{font-size:18px;font-weight:700;color:var(--text);margin:0 0 10px}.model .mdesc{font-size:14px;color:var(--text-semi);line-height:1.55;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid var(--border)}
/* Blog posts (Eleventy) */
.blog-post{max-width:760px;margin:0 auto;padding-top:44px}.blog-post h1{font-size:37px;line-height:1.13;letter-spacing:-.02em;margin:0 0 14px}.post-meta{font-size:14px;color:var(--muted);margin-bottom:26px}.post-hero,.blog-post img{max-width:100%;height:auto;border-radius:12px;border:1px solid var(--border)}.post-hero{width:100%;margin:6px 0 26px}.blog-post img{margin:22px 0}.blog-post h2{margin-top:38px}.post-end{border:0;border-top:1px solid var(--border);margin:42px 0 26px}

.blog-feat{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px 30px;box-shadow:var(--card-shadow);transition:border-color .15s,transform .15s}.blog-feat:hover{border-color:var(--accent);transform:translateY(-2px)}.blog-feat h3{font-size:20px;margin:8px 0 6px;color:var(--text)}.blog-feat p{margin:0;color:var(--text-semi);font-size:14.5px;max-width:640px}.blog-feat .rc-go{white-space:nowrap;font-weight:600}@media(max-width:700px){.blog-feat{flex-direction:column;align-items:flex-start}}

.tile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}@media(max-width:800px){.tile-grid{grid-template-columns:1fr}}
.tile{position:relative;display:block;min-height:150px;border-radius:16px;border:1px solid var(--border);background:var(--surface);padding:24px 26px;overflow:hidden;transition:transform .15s,border-color .15s}
.tile:hover{transform:translateY(-3px);border-color:var(--accent)}
.tile.t-a{background:linear-gradient(135deg,var(--surface),#1d2a3f)}.tile.t-b{background:linear-gradient(135deg,var(--surface),#22303f)}.tile.t-c{background:linear-gradient(135deg,var(--surface),#1f2a3a)}.tile.t-d{background:linear-gradient(135deg,var(--surface),#242c3a)}
.tile-arw{position:absolute;top:20px;right:22px;font-size:22px;color:var(--muted)}
.tile-kick{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-2)}
.tile h3{font-size:19px;margin:10px 0 6px;color:var(--text);max-width:80%}.tile p{margin:0;color:var(--text-semi);font-size:14px}
.res-controls{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px;align-items:center}
.res-search{flex:1;min-width:220px;max-width:340px;font-family:inherit;font-size:14.5px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:10px 14px}.res-search:focus{outline:none;border-color:var(--accent)}
.rtabs{display:flex;gap:6px;flex-wrap:wrap}
.rc-badge.blog{background:var(--accent-2);color:#0a0f1a}
.res-empty{text-align:center;color:var(--muted);padding:40px 0}
.rc p{font-size:13.5px;color:var(--text-semi);line-height:1.5;margin:6px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
