/* style.css */
/* ===========================================================================
   InstaWP blog system — shared stylesheet (green-skin)
   Used by: blog-list, archive, author, search, 404 (+ chrome.js / feed.js)
   =========================================================================== */
*{box-sizing:border-box;margin:0;padding:0}
/* clip the off-canvas mobile drawer (position:fixed, parked at translateX(100%)) so it can't add page width / a horizontal scrollbar */
html{overflow-x:hidden}
:root{
  --bg:#F7F9FC;--white:#FFFFFF;--tint:#EEF7F3;
  --heading:#0E1726;--body:#3A4557;--muted:#5A6478;--border:#E6EBF1;--border-2:#EFF2F6;
  --green:#0BA86D;--green-bright:#11BF85;--green-deep:#0A7A50;--green-tint:#E7F8F0;--green-x:#2BE8A6;
  --amber:#E08A1E;--amber-deep:#9C5304;--cyan:#34CFE3;
  --dark:#0B1410;--dark-2:#112019;--dark-ink:#EAF2EE;--dark-body:rgba(234,242,238,.62);--dark-border:rgba(255,255,255,.1);--plasma:#005E54;--plasma-tint:#E2F1ED;
  --font:'Hanken Grotesk',system-ui,-apple-system,sans-serif;--mono:'Public Sans',system-ui,-apple-system,sans-serif;--code:'IBM Plex Mono',ui-monospace,monospace;
  --maxw:1180px;
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--font);background:var(--bg);color:var(--body);font-size:17px;line-height:1.6}
a{color:inherit;text-decoration:none}svg{display:block}button{font-family:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.94rem;padding:11px 20px;border-radius:11px;transition:all .18s ease;white-space:nowrap;border:0;cursor:pointer;font-family:var(--font)}
.btn .arr{transition:transform .18s}.btn:hover .arr{transform:translateX(3px)}
.btn-primary{background:var(--green);color:#042A1C}
.btn-primary:hover{background:var(--green-deep);transform:translateY(-1px)}
.btn-ghost{background:rgba(255,255,255,.06);color:#EAF2EE;border:1px solid rgba(255,255,255,.16)}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}
.btn-lg{padding:14px 26px;font-size:1.02rem}
.btn-light{background:var(--white);color:var(--heading);border:1px solid var(--border)}
.btn-light:hover{border-color:#CFD8E2;transform:translateY(-1px)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.73rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-deep)}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green-bright)}
/* kicker — informative section label; replaces the decorative .eyebrow look (accent bar + clean label) */
.kicker{display:inline-flex;align-items:center;gap:9px;font-family:var(--font);font-size:.92rem;font-weight:600;letter-spacing:-.01em;line-height:1.2;color:var(--heading);margin-bottom:16px}
.kicker::before{content:"";flex:none;width:3px;height:15px;border-radius:2px;background:var(--green-bright)}
/* dark-band wrappers: light label + brighter accent (mirrors the eyebrow's dark variants) */
.pr-dark .kicker,.phero .kicker,.fhero .kicker,.pr-hero .kicker,.pr-cta .kicker,.site-cta .kicker{color:#EAF2EE}
.pr-dark .kicker::before,.phero .kicker::before,.fhero .kicker::before,.pr-hero .kicker::before,.pr-cta .kicker::before,.site-cta .kicker::before{background:var(--green-x)}

/* ===================== HEADER / NAV (injected by chrome.js) ============== */
.nav-header{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .25s ease,box-shadow .25s ease}
.nav-header::after{content:'';position:absolute;inset:0;border-bottom:1px solid transparent;pointer-events:none;transition:border-color .25s}
.nav-header.solid{background:rgba(10,17,13,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav-header.solid::after{border-bottom-color:rgba(255,255,255,.08)}
.nav-inner{display:flex;align-items:center;height:68px}
.logo{font-size:1.4rem;font-weight:800;letter-spacing:-.03em;color:#F2F7F4;display:inline-flex;align-items:center;gap:9px;flex:none}
.logo img{height:24px;width:auto;display:block}
.mainnav{display:flex;align-items:center;gap:2px;margin-left:20px}
.navitem{position:relative}
.navlink{display:inline-flex;align-items:center;gap:5px;font-size:.94rem;font-weight:500;color:rgba(242,247,244,.82);background:none;border:0;cursor:pointer;padding:9px 13px;border-radius:9px}
.navlink:hover,.navitem.open .navlink{color:#fff;background:rgba(255,255,255,.08)}
.navlink .chev{width:13px;height:13px;opacity:.55;transition:transform .2s}
.navitem.open .navlink .chev{transform:rotate(180deg)}
/* dedicated AI nav item — plain navlink, set apart only by the green spark icon */
.ai-spark{display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--green-x)}
.ai-spark svg{width:14px;height:14px}
/* mobile drawer AI — echo the aurora with green→cyan gradient text */
.acc-h.acc-ai{color:transparent;background:linear-gradient(100deg,var(--green-x),var(--cyan));-webkit-background-clip:text;background-clip:text}
.acc-h.acc-ai .ai-spark{color:var(--green-x)}
.acc-h.acc-ai .ai-spark svg{width:17px;height:17px}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:14px;flex:none}
.nav-right .login{font-size:.94rem;font-weight:500;color:rgba(242,247,244,.82)}
.nav-right .login:hover{color:#fff}
.burger{display:none;width:44px;height:44px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#EAF2EE;align-items:center;justify-content:center;cursor:pointer}
.burger svg{width:20px;height:20px}
.mega{position:absolute;top:calc(100% + 9px);left:0;background:var(--white);border:1px solid var(--border);border-radius:16px;box-shadow:0 28px 64px -28px rgba(8,15,30,.55),0 4px 12px -6px rgba(8,15,30,.2);padding:14px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:120}
.navitem.open .mega{opacity:1;visibility:visible;transform:none}
.mega::before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px}
.mega.mega-right{left:auto;right:0}
.mega-grid{display:grid;gap:3px}
.mega-grid.cols2{grid-template-columns:repeat(2,minmax(232px,1fr))}
.mega-uc .mega-grid.cols2{grid-template-columns:repeat(2,minmax(296px,1fr));gap:4px}
.mega-uc .mega-grid.cols2 .mega-link{min-height:70px;align-items:flex-start}
.mega-link{display:flex;gap:13px;padding:11px 12px;border-radius:12px;transition:background .14s}
.mega-link:hover{background:var(--bg)}
.ml-ic{flex:none;width:38px;height:38px;border-radius:10px;background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center}
.ml-ic svg{width:19px;height:19px}
.ml-ic.plasma{background:var(--plasma-tint);color:var(--plasma)}
.ml-tx b{display:flex;align-items:center;gap:7px;font-size:.93rem;font-weight:700;color:var(--heading);letter-spacing:-.01em;line-height:1.2}
.ml-tx span{display:block;font-size:.79rem;color:var(--muted);margin-top:3px;line-height:1.4}
.ml-live{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.28);padding:2px 6px;border-radius:5px}
.mega-foot{margin-top:5px;border-top:1px solid var(--border-2);padding:12px 12px 4px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.mega-foot a{display:inline-flex;align-items:center;gap:7px;font-weight:600;color:var(--green-deep);font-size:.88rem}
.mega-foot a .arr{transition:transform .18s}.mega-foot a:hover .arr{transform:translateX(3px)}
.mega-foot .mf-note{font-family:var(--mono);font-size:.66rem;color:var(--muted)}
.mega-glabel{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 12px 5px}
.mega-glabel-sep{margin-top:6px;border-top:1px solid var(--border-2);padding-top:11px}
/* Platform mega — 3-pillar columns (Build / Host / Grow) */
.mega-plat .mega-pcols{display:flex}
.mega-plat .mega-pcol{flex:1 1 0;min-width:278px;padding:0 13px}
.mega-plat .mega-pcol:first-child{padding-left:4px}
.mega-plat .mega-pcol:last-child{padding-right:4px}
.mega-plat .mega-pcol + .mega-pcol{border-left:1px solid var(--border-2)}
.mega-plat .mega-pcol .mega-glabel{padding:2px 12px 7px}
/* Resources: 4 labeled columns. Its nav button sits near viewport center, so the
   menu is CENTERED under it (transform survives the open/close slide + max-width),
   not right-pinned — otherwise the wide box overflows the left edge. */
.mega-res{box-sizing:border-box;left:50%;right:auto;transform:translate(-50%,8px);width:684px;max-width:calc(100vw - 28px)}
.navitem.open .mega-res{transform:translate(-50%,0)}
.mega-res .mega-pcols{display:flex}
.mega-res .mega-pcol{flex:1 1 0;min-width:0;padding:0 10px}
.mega-res .mega-pcol:first-child{padding-left:4px}
.mega-res .mega-pcol:last-child{padding-right:4px}
.mega-res .mega-pcol + .mega-pcol{border-left:1px solid var(--border-2)}
.mega-res .mega-pcol .mega-glabel{padding:2px 10px 7px}
/* utility links shifted into the footer bar (Free Tools / Support / Roadmap),
   shown as icon+label chips so they read as real links, not fine-print. */
.mega-foot .mf-links{display:flex;align-items:center;gap:2px;flex-wrap:wrap;margin-left:-4px}
.mega-foot .mf-links a{display:inline-flex;align-items:center;gap:8px;font-family:var(--font);font-size:.85rem;font-weight:600;color:var(--heading);padding:7px 12px;border-radius:9px;transition:background .14s,color .14s}
.mega-foot .mf-links a:hover{background:var(--green-tint);color:var(--green-deep)}
.mega-foot .mf-links a svg{width:16px;height:16px;color:var(--green-deep);flex:none}
/* Use Cases mega — audience grid + "Grow with InstaWP" band */
.mega-uc .uc-grow{margin-top:10px;padding:12px;border-radius:14px;background:#F1F6F3}
.mega-uc .uc-grow-lbl{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green-deep);padding:0 0 10px}
.mega-uc .uc-grow-grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:4px}
.mega-uc .uc-grow-grid .mega-link{align-items:flex-start}
.mega-uc .uc-grow-grid .mega-link:hover{background:rgba(255,255,255,.6)}
.mega-uc .uc-grow-grid .mega-link .ml-ic{background:#fff}
.mega-foot .mf-cta{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:.84rem;color:var(--green-deep);border:1px solid rgba(17,191,133,.42);border-radius:999px;padding:7px 16px;transition:background .14s,border-color .14s}
.mega-foot .mf-cta:hover{background:var(--green-tint);border-color:var(--green)}
.mega-foot .mf-cta .arr{transition:transform .18s}.mega-foot .mf-cta:hover .arr{transform:translateX(3px)}
.ml-soon{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--amber-deep);background:rgba(224,138,30,.1);border:1px solid rgba(224,138,30,.32);padding:2px 6px;border-radius:5px}
.acc-lbl{display:block;font-family:var(--mono);font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(234,242,238,.5);padding:13px 10px 3px}
.scrim{position:fixed;inset:0;background:rgba(5,10,8,.5);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;z-index:150}
.scrim.open{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(380px,86vw);background:var(--dark);border-left:1px solid rgba(255,255,255,.08);z-index:160;transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow-y:auto}
.drawer.open{transform:none}
.drawer-top{display:flex;align-items:center;height:68px;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.08);flex:none}
.drawer-close{margin-left:auto;width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#EAF2EE;display:flex;align-items:center;justify-content:center;cursor:pointer}
.drawer-close svg{width:18px;height:18px}
.drawer-body{padding:10px 14px 18px}
.acc{border-bottom:1px solid rgba(255,255,255,.07)}
.acc-h{width:100%;display:flex;align-items:center;gap:8px;background:none;border:0;color:#EAF2EE;font-size:1.02rem;font-weight:600;padding:16px 8px;cursor:pointer}
.acc-h .chev{margin-left:auto;width:16px;height:16px;opacity:.6;transition:transform .2s}
.acc.open .acc-h .chev{transform:rotate(180deg)}
.acc-bd{display:none;padding:0 8px 12px}
.acc.open .acc-bd{display:block}
.acc-bd a{display:flex;align-items:center;gap:9px;padding:10px 10px;border-radius:9px;color:rgba(234,242,238,.72);font-size:.94rem}
.acc-bd a:hover{background:rgba(255,255,255,.05);color:#fff}
.acc-bd a .d{flex:none;width:6px;height:6px;border-radius:50%;background:var(--green-bright);opacity:.6}
.acc-bd a .ml-live{margin-left:6px}
.drawer-cta{margin-top:18px;display:flex;flex-direction:column;gap:11px;padding:0 8px}
.drawer-cta .login{text-align:center;color:rgba(234,242,238,.82);font-weight:500;padding:11px;border:1px solid rgba(255,255,255,.14);border-radius:11px}
.drawer-cta .btn-primary{justify-content:center}
@media(max-width:980px){.mainnav,.nav-right .login,.nav-right .btn-primary{display:none}.burger{display:inline-flex}.foot-col a{min-height:44px}.foot-legal a{min-height:44px;display:inline-flex;align-items:center}}

/* ===================== PAGE HERO (dark) ================================= */
.phero{position:relative;background:var(--dark);overflow:hidden;padding:128px 0 56px}
.phero.center{text-align:center}
.phero-bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.phero-bg .grid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px;-webkit-mask-image:radial-gradient(ellipse 90% 75% at 40% 10%,#000 10%,transparent 74%);mask-image:radial-gradient(ellipse 90% 75% at 40% 10%,#000 10%,transparent 74%)}
.phero-bg .g{position:absolute;border-radius:50%;filter:blur(64px)}
.phero-bg .g1{width:660px;height:430px;top:-150px;left:-60px;background:radial-gradient(ellipse at center,rgba(43,232,166,.16),rgba(52,207,227,.05) 45%,transparent 72%)}
.phero-bg .g2{width:400px;height:400px;top:20px;right:-120px;background:radial-gradient(circle,rgba(0,94,84,.3),transparent 64%)}
.phero .wrap{position:relative;z-index:1}
.phero .eyebrow{color:var(--green-x)}
.phero.center .eyebrow{justify-content:center}
.crumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:var(--mono);font-size:.72rem;color:rgba(234,242,238,.5);margin-bottom:20px}
.crumb a{color:rgba(234,242,238,.6)}.crumb a:hover{color:var(--green-x)}
.crumb .sep{opacity:.4}.crumb .here{color:rgba(234,242,238,.82)}

/* ===================== COMPACT HERO (fhero) — used by platform + feature pages = */
.fhero{position:relative;background:var(--dark);overflow:hidden;padding:112px 0 56px}
.fhero .grid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px;-webkit-mask-image:radial-gradient(ellipse 90% 80% at 28% 0%,#000 8%,transparent 72%);mask-image:radial-gradient(ellipse 90% 80% at 28% 0%,#000 8%,transparent 72%)}
.fhero .glow{position:absolute;width:560px;height:320px;top:-130px;left:6%;border-radius:50%;filter:blur(70px);background:radial-gradient(ellipse at center,rgba(43,232,166,.16),rgba(52,207,227,.04) 50%,transparent 72%);pointer-events:none}
.fhero .wrap{position:relative;z-index:1}
.fhero .eyebrow{color:var(--green-x)}
.fhero h1{font-weight:800;letter-spacing:-.03em;color:#F4F8F7;font-size:clamp(2rem,4vw,3rem);line-height:1.08;margin-top:11px;max-width:22ch;text-wrap:balance}
.fhero h1 .ac{color:var(--green-x)}
.fhero .lede{font-size:1.12rem;color:var(--dark-body);max-width:58ch;margin:15px 0 0;line-height:1.55}
.fhero .lede b{color:#EAF2EE;font-weight:600}
.fhero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.fhero .pr-hero-note{margin-top:20px}
/* fhero with right-side art (2-col) */
.fhero.has-art .wrap{display:grid;grid-template-columns:1.04fr .96fr;gap:50px;align-items:center}
.fhero.has-art h1{max-width:none}
.fhero-art{position:relative}
.fhero-art img{width:100%;height:auto;display:block;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 11%,#000 89%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 10%,#000 90%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,transparent 0,#000 11%,#000 89%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 10%,#000 90%,transparent 100%);
  mask-composite:intersect}
@media(max-width:900px){.fhero.has-art .wrap{grid-template-columns:1fr;gap:28px}.fhero-art{max-width:460px}}
@media(max-width:560px){.fhero-art{display:none}}

/* archive header */
.arc-h1{font-family:var(--font);font-size:clamp(2.1rem,4.4vw,3rem);font-weight:800;letter-spacing:-.03em;color:#F4F8F7;line-height:1.08;margin-top:14px}
.arc-desc{font-size:1.12rem;color:var(--dark-body);max-width:60ch;margin:14px 0 0;line-height:1.55}
.arc-count{font-family:var(--mono);font-size:.74rem;color:rgba(234,242,238,.5);margin-top:16px}

/* author header */
.author-card{display:flex;gap:22px;align-items:center;margin-top:8px}
.av-lg{width:84px;height:84px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:600;font-size:1.7rem;color:#042A1C;background:linear-gradient(140deg,#15C98D,#0A7A50);border:3px solid rgba(255,255,255,.14)}
.av-lg.b{background:linear-gradient(140deg,#39D2E6,#0E7E9E)}
.author-bd{min-width:0}
.author-name{font-family:var(--font);font-size:clamp(1.8rem,3.4vw,2.4rem);font-weight:800;letter-spacing:-.025em;color:#F4F8F7;line-height:1.1}
.author-role{font-family:var(--mono);font-size:.8rem;color:var(--green-x);margin-top:5px}
.author-bio{font-size:1.04rem;color:var(--dark-body);max-width:60ch;margin:12px 0 0;line-height:1.55}
.author-foot{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:16px}
.author-stats{display:flex;gap:18px;font-family:var(--mono);font-size:.74rem;color:rgba(234,242,238,.55)}
.author-stats b{color:#F4F8F7;font-weight:600}
.author-social{display:flex;gap:9px}
.author-social a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;border:1px solid rgba(255,255,255,.12);color:rgba(234,242,238,.62);transition:all .15s}
.author-social a:hover{color:var(--green-x);border-color:rgba(43,232,166,.4)}
.author-social svg{width:15px;height:15px}
@media(max-width:560px){.author-card{flex-direction:column;align-items:flex-start;gap:16px}.av-lg{width:68px;height:68px;font-size:1.4rem}}

/* search header */
.search-hero h1{font-family:var(--font);font-size:clamp(2rem,4vw,2.7rem);font-weight:800;letter-spacing:-.03em;color:#F4F8F7;line-height:1.08}
.sh-count{font-family:var(--mono);font-size:.78rem;color:rgba(234,242,238,.55);margin-top:14px}
.sh-count b{color:#F4F8F7}

/* search input (shared) */
form.search{display:flex;align-items:center;gap:10px;max-width:480px;margin:22px 0 0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:13px;padding:4px 4px 4px 16px;transition:border-color .18s,box-shadow .18s}
form.search.center{margin-left:auto;margin-right:auto}
form.search:focus-within{border-color:rgba(43,232,166,.45);box-shadow:0 0 0 4px rgba(43,232,166,.12)}
form.search svg{width:18px;height:18px;color:rgba(234,242,238,.5);flex:none}
form.search input{flex:1;background:none;border:0;outline:none;font-family:var(--font);font-size:1rem;color:#F4F8F7;padding:11px 0;min-width:0}
form.search input::placeholder{color:rgba(234,242,238,.42)}
form.search .clear{flex:none;background:rgba(255,255,255,.08);border:0;color:rgba(234,242,238,.6);width:34px;height:34px;border-radius:9px;cursor:pointer;display:none;align-items:center;justify-content:center;font-size:1rem}
form.search.has .clear{display:flex}

/* ===================== FILTER PILLS ==================================== */
.filterbar{position:sticky;top:0;z-index:50;background:rgba(247,249,252,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.pills{display:flex;gap:9px;padding:16px 0;overflow-x:auto;scrollbar-width:none}
.pills::-webkit-scrollbar{display:none}
.pill{flex:none;font-size:.9rem;font-weight:600;color:var(--body);background:var(--white);border:1px solid var(--border);padding:9px 16px;border-radius:100px;cursor:pointer;transition:all .15s;white-space:nowrap;font-family:var(--font);text-decoration:none}
.pill:hover{border-color:#CFD8E2;color:var(--heading)}
.pill.on{background:var(--heading);border-color:var(--heading);color:#fff}
.pill[data-cat="ai"]{display:inline-flex;align-items:center;gap:7px}
.pill[data-cat="ai"]::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--plasma);box-shadow:0 0 0 3px rgba(0,94,84,.14)}
.pill[data-cat="ai"].on{background:var(--plasma);border-color:var(--plasma)}
.pill[data-cat="ai"].on::before{background:var(--green-x);box-shadow:0 0 0 3px rgba(43,232,166,.25)}

/* ===================== FEED / CARDS ==================================== */
.feed{padding:40px 0 24px}
.feed-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}
.feed-head h2{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--heading)}
.feed-head .fh-count{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid.g2{grid-template-columns:1fr 1fr}
.cat-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.62rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.2);padding:4px 9px;border-radius:6px;white-space:nowrap}
.cat-pill.ai{color:var(--plasma);background:var(--plasma-tint);border-color:rgba(0,94,84,.26)}
.cat-pill.upd{color:var(--amber-deep);background:rgba(224,138,30,.12);border-color:rgba(224,138,30,.3)}
.pmeta{display:flex;align-items:center;gap:9px;font-family:var(--mono);font-size:.68rem;color:var(--muted)}
.pmeta .av{width:22px;height:22px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:600;color:#042A1C;background:linear-gradient(140deg,#15C98D,#0A7A50)}
.pmeta .av.b{background:linear-gradient(140deg,#39D2E6,#0E7E9E)}
.pmeta .av.c{background:linear-gradient(140deg,#A9B4C4,#6B7686);color:#0E1726}
.pmeta .sep{opacity:.5}
.thumb{position:relative;overflow:hidden;background:#0C1A14}
.thumb .mk{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:18px 18px;opacity:.6}
.thumb .gl{position:absolute;width:180px;height:180px;border-radius:50%;filter:blur(36px);right:-40px;bottom:-50px;background:radial-gradient(circle,rgba(43,232,166,.32),transparent 70%)}
.thumb .ico{position:absolute;left:18px;bottom:16px;color:rgba(255,255,255,.9)}
.thumb .ico svg{width:28px;height:28px}
.thumb .pc-thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:1}
.th-a{background:linear-gradient(135deg,#0C1A14,#10342A)}
.th-b{background:linear-gradient(135deg,#0E2230,#123A4A)}
.th-c{background:linear-gradient(135deg,#14241C,#0A7A50)}
.th-d{background:linear-gradient(135deg,#101C2C,#1B2E54)}
.th-ai{background:linear-gradient(135deg,#06231F,#005E54)}
.th-ai .gl{background:radial-gradient(circle,rgba(0,94,84,.5),transparent 70%)}
.th-upd{background:linear-gradient(135deg,#241B0E,#3A2A12)}
.th-upd .gl{background:radial-gradient(circle,rgba(224,138,30,.34),transparent 70%)}
.pcard{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:transform .18s,box-shadow .18s,border-color .18s}
.pcard:hover{transform:translateY(-4px);box-shadow:0 30px 64px -44px rgba(16,23,38,.4);border-color:#DCE3EB}
.pcard .thumb{height:168px}
.pcard .pc-bd{padding:18px 19px 20px;display:flex;flex-direction:column;flex:1}
.pcard .pc-tags{margin-bottom:12px}
.pcard h3{font-size:1.1rem;font-weight:700;letter-spacing:-.015em;color:var(--heading);line-height:1.28}
.pcard p{font-size:.93rem;color:var(--body);margin-top:9px;line-height:1.5}
.pcard .pc-foot{margin-top:auto;padding-top:16px}
.empty{padding:60px 20px;text-align:center;color:var(--muted);font-family:var(--mono);font-size:.9rem}

/* pagination */
.pager{display:flex;align-items:center;justify-content:center;gap:7px;margin:30px 0 0}
.pager a,.pager span{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--border);background:var(--white);font-family:var(--mono);font-size:.82rem;color:var(--body);padding:0 12px;cursor:pointer;transition:all .15s}
.pager a:hover{border-color:#CFD8E2;color:var(--heading)}
.pager .cur{background:var(--heading);border-color:var(--heading);color:#fff}
.pager .gap{border:0;background:none;cursor:default}
.pager .nx{font-weight:600}

/* ===================== NEWSLETTER ===================================== */
.news{background:linear-gradient(180deg,#FFFFFF,#F4FAF7);border:1px solid var(--border);border-radius:20px;padding:36px 34px;margin:48px 0 8px;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;box-shadow:0 26px 64px -48px rgba(16,23,38,.34)}
.news .nw-tx h3{font-size:1.4rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1.2}
.news .nw-tx p{font-size:1rem;color:var(--body);margin-top:8px;max-width:46ch}
.news .nw-form{display:flex;gap:10px;flex-wrap:wrap}
.news .nw-form input{font-family:var(--font);font-size:.96rem;padding:13px 16px;border-radius:11px;border:1px solid var(--border);background:var(--white);color:var(--heading);min-width:230px;outline:none;transition:border-color .15s,box-shadow .15s}
.news .nw-form input:focus{border-color:var(--green-bright);box-shadow:0 0 0 4px rgba(17,191,133,.14)}
.news .nw-note{font-family:var(--mono);font-size:.66rem;color:var(--muted);margin-top:10px;grid-column:1/-1}
@media(max-width:760px){.news{grid-template-columns:1fr}}

/* ===================== 404 ============================================ */
.nf{min-height:78vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:140px 24px 90px}
.nf-code{font-family:var(--mono);font-size:clamp(4.5rem,14vw,8rem);font-weight:600;line-height:1;letter-spacing:-.04em;background:linear-gradient(180deg,#F4F8F7,rgba(43,232,166,.85));-webkit-background-clip:text;background-clip:text;color:transparent}
.nf-h{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;letter-spacing:-.02em;color:#F4F8F7;margin-top:14px}
.nf-p{font-size:1.1rem;color:var(--dark-body);max-width:46ch;margin:14px auto 0}
.nf-cta{display:inline-flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}
.nf-links{margin-top:40px;font-family:var(--mono);font-size:.74rem;color:rgba(234,242,238,.5)}
.nf-links a{color:var(--green-x);margin:0 8px}

/* ===================== FOOTER (injected by chrome.js) ================== */
.site-foot{background:var(--dark);color:rgba(234,242,238,.6);padding:64px 0 28px;position:relative;overflow:hidden}
.site-foot::before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(43,232,166,.4),transparent)}
.foot-glow{position:absolute;width:680px;height:300px;left:50%;top:-200px;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(43,232,166,.08),transparent 70%);pointer-events:none}
.foot-main{position:relative;display:grid;grid-template-columns:1.4fr repeat(5,1fr);gap:30px}
.foot-brand{max-width:280px}
.foot-brand .logo img{height:24px;width:auto;display:block}
.foot-brand p{font-size:.92rem;color:rgba(234,242,238,.5);line-height:1.6;margin:16px 0 18px}
.foot-social{display:flex;gap:9px}
.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:9px;border:1px solid rgba(255,255,255,.1);color:rgba(234,242,238,.6);transition:all .15s}
.foot-social a:hover{color:var(--green-x);border-color:rgba(43,232,166,.4);transform:translateY(-2px)}
.foot-social svg{width:16px;height:16px}
.foot-col h3{font-family:var(--mono);font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(234,242,238,.6);margin-bottom:15px}
.foot-col a{display:flex;align-items:center;gap:7px;font-size:.92rem;color:rgba(234,242,238,.62);padding:9px 0;transition:color .15s;width:fit-content}
.foot-col a:hover{color:var(--green-x)}
.foot-col .tag{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.28);padding:2px 6px;border-radius:5px}
.foot-bot{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-family:var(--mono);font-size:.74rem;color:rgba(234,242,238,.6)}
.foot-legal{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.foot-legal a:hover{color:rgba(234,242,238,.8)}
.foot-legal .dot{opacity:.4}
.foot-hosted{display:inline-flex;align-items:center;gap:7px}
.foot-hosted .d{width:7px;height:7px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 8px rgba(17,191,133,.7)}
@media(max-width:900px){.foot-main{grid-template-columns:1fr 1fr;gap:32px}.foot-brand{grid-column:1/-1;max-width:none}}
@media(max-width:520px){.foot-main{grid-template-columns:1fr 1fr;gap:24px}.foot-bot{flex-direction:column;align-items:flex-start;gap:12px}}

/* ===================== RESPONSIVE FEED ================================ */
@media(max-width:920px){.grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.grid,.grid.g2{grid-template-columns:1fr}}

/* ===================== BLOG-LIST specific ============================== */
.bl-h1{font-family:var(--font);color:#F4F8F7;font-size:clamp(2.2rem,4.6vw,3.4rem);line-height:1.08;font-weight:800;letter-spacing:-.03em}
.bl-sub{font-size:1.14rem;line-height:1.55;color:var(--dark-body);max-width:54ch;margin:16px auto 0}
.featured{display:grid;grid-template-columns:1.15fr 1fr;background:var(--white);border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 30px 70px -50px rgba(16,23,38,.4);transition:transform .18s,box-shadow .18s,border-color .18s;margin-bottom:40px}
.featured:hover{transform:translateY(-3px);box-shadow:0 38px 80px -50px rgba(16,23,38,.45);border-color:#DCE3EB}
.featured .thumb{min-height:320px}
.featured .thumb .pc-thumb-img{object-fit:contain;object-position:center;padding:20px;background:linear-gradient(135deg,#0C1A14,#10342A)}
.featured .thumb .ico svg{width:42px;height:42px}
.featured .ft-bd{padding:36px 38px;display:flex;flex-direction:column;justify-content:center}
.featured .ft-tags{display:flex;align-items:center;gap:9px;margin-bottom:16px}
.featured .ft-flag{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--green-deep)}
.featured h2{font-size:clamp(1.6rem,2.8vw,2.15rem);font-weight:800;letter-spacing:-.025em;color:var(--heading);line-height:1.14}
.featured p{font-size:1.06rem;color:var(--body);margin-top:14px;max-width:48ch}
.featured .ft-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;flex-wrap:wrap}
.featured .ft-read{display:inline-flex;align-items:center;gap:7px;font-weight:600;color:var(--green-deep)}
.featured .ft-read .arr{transition:transform .18s}.featured:hover .ft-read .arr{transform:translateX(3px)}
@media(max-width:820px){.featured{grid-template-columns:1fr}.featured .thumb{min-height:200px}}

.feed-cols{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:40px;align-items:start}
.feed-cols .grid{grid-template-columns:1fr 1fr}
.rail{position:sticky;top:88px;display:flex;flex-direction:column;gap:24px}
.rail-card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:22px}
.rail-card h4{font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.pop{display:flex;gap:13px;padding:11px 0;border-top:1px solid var(--border-2)}
.pop:first-of-type{border-top:0;padding-top:0}
.pop .n{flex:none;font-family:var(--mono);font-size:1.1rem;font-weight:600;color:#CBD5E1;width:22px;line-height:1.2}
.pop a{font-size:.95rem;font-weight:600;color:var(--heading);line-height:1.3}
.pop a:hover{color:var(--green-deep)}
.pop .pp-meta{font-family:var(--mono);font-size:.64rem;color:var(--muted);margin-top:4px}
.pa{display:flex;align-items:center;gap:11px;padding:10px 0;border-top:1px solid var(--border-2)}
.pa:first-of-type{border-top:0;padding-top:0}
.pa .av{width:30px;height:30px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.62rem;font-weight:600;color:#042A1C;background:linear-gradient(140deg,#15C98D,#0A7A50)}
.pa .av.b{background:linear-gradient(140deg,#39D2E6,#0E7E9E)}
.pa .pa-bd b{display:block;font-size:.9rem;color:var(--heading);font-weight:600}
.pa .pa-bd span{font-family:var(--mono);font-size:.62rem;color:var(--muted)}
.rail-cta{background:linear-gradient(165deg,#0C1A14,#0B1410);border:1px solid rgba(43,232,166,.2);border-radius:16px;padding:22px;position:relative;overflow:hidden}
.rail-cta::before{content:'';position:absolute;width:240px;height:160px;top:-80px;right:-60px;background:radial-gradient(ellipse at center,rgba(43,232,166,.2),transparent 68%)}
.rail-cta h4{position:relative;font-size:1.08rem;font-weight:800;letter-spacing:-.01em;color:#F4F8F7;margin-bottom:7px;text-transform:none;font-family:var(--font)}
.rail-cta p{position:relative;font-size:.9rem;color:rgba(234,242,238,.62);line-height:1.5;margin-bottom:15px}
.rail-cta .btn{position:relative;width:100%;justify-content:center}
@media(max-width:920px){.feed-cols{grid-template-columns:1fr}.rail{position:static;flex-direction:row;flex-wrap:wrap}.rail-card,.rail-cta{flex:1;min-width:240px}}
@media(max-width:600px){.feed-cols .grid{grid-template-columns:1fr}.rail{flex-direction:column}}

.loadmore{display:flex;justify-content:center;margin-top:30px}
.review-strip{margin:40px 0 0;padding:13px 18px;border:1px dashed #CBD7E0;border-radius:12px;background:#fff;font-family:var(--mono);font-size:.74rem;color:var(--muted);text-align:center}
.review-strip b{color:var(--heading)}
.review-strip a{color:var(--green-deep);font-weight:600;margin:0 5px}
.review-strip a:hover{text-decoration:underline}


/* ===================== CTA (injected by chrome.js -> #site-cta) ========== */
.btn-ghost{background:rgba(255,255,255,.06);color:#EAF2EE;border:1px solid rgba(255,255,255,.18)}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.34)}
.site-cta{position:relative;background:linear-gradient(180deg,#0B1410 0%,#0B1410 55%,#0B1410 100%);overflow:hidden;padding:104px 0 92px;text-align:center}
.site-cta .grid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 30%,#000,transparent 72%);mask-image:radial-gradient(ellipse 80% 80% at 50% 30%,#000,transparent 72%)}
.site-cta .glow{position:absolute;width:780px;height:460px;top:-150px;left:50%;transform:translateX(-50%);border-radius:50%;filter:blur(72px);background:radial-gradient(ellipse at center,rgba(43,232,166,.22),rgba(52,207,227,.06) 48%,transparent 72%);pointer-events:none}
.site-cta .wrap{position:relative;z-index:1}
.site-cta .eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.73rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-x);margin-bottom:18px}
.site-cta .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green-x);box-shadow:0 0 0 0 rgba(43,232,166,.6);animation:ctapulse 2.4s ease-out infinite}
@keyframes ctapulse{0%{box-shadow:0 0 0 0 rgba(43,232,166,.5)}70%{box-shadow:0 0 0 7px rgba(43,232,166,0)}100%{box-shadow:0 0 0 0 rgba(43,232,166,0)}}
.site-cta h2{font-family:var(--font);font-weight:800;letter-spacing:-.025em;color:#F4F8F7;font-size:clamp(2.1rem,4.6vw,3.2rem);line-height:1.07;text-wrap:balance}
.site-cta h2 .ac{color:var(--green-x)}
.site-cta .sub{font-size:1.14rem;color:var(--dark-body);max-width:56ch;margin:17px auto 0;text-wrap:balance}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.cta-reassure{margin-top:24px;display:inline-flex;flex-wrap:wrap;justify-content:center;gap:9px 22px;font-family:var(--mono);font-size:.78rem}
.cta-reassure span{display:inline-flex;align-items:center;gap:7px;color:rgba(234,242,238,.72)}
.cta-reassure svg{width:13px;height:13px;flex:none;color:var(--green-x)}

/* ===================== POLISH (shared) — selection, focus, button finish, CTA grain ===================== */
::selection{background:var(--green-bright);color:#042A1C}
a:focus-visible,button:focus-visible{outline:2px solid var(--green-deep);outline-offset:2px;border-radius:6px}
.on-dark :is(a,button):focus-visible,.nav-header :is(a,button):focus-visible,.drawer :is(a,button):focus-visible,.site-foot :is(a,button):focus-visible,.site-cta :is(a,button):focus-visible,.phero :is(a,button):focus-visible,.fhero :is(a,button):focus-visible,.hero :is(a,button):focus-visible,.sec07 :is(a,button):focus-visible{outline-color:var(--green-bright)}
.btn-primary:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 2px 5px rgba(11,168,109,.3),0 14px 30px -8px rgba(17,191,133,.65)}
.site-cta::after{content:'';position:absolute;inset:0;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none}

/* Consistent CTA button sizing across feature-page CTAs (feedback 22023/22027/22028):
   paired primary/ghost buttons share a minimum width + centred label so the secondary
   button never reads smaller than the primary. */
.pr-cta-actions .btn-lg,.fhero-ctas .btn-lg{min-width:200px;justify-content:center}

/* ===========================================================================
   Accessibility guard: author-written colour boxes inside .prose
   Posts hand-write callouts as <div style="background:#0E1A15;color:#fff">
   with plain paragraphs inside. The .prose element rules (p/li/strong/h2...)
   are more specific than that inherited inline colour, so the text rendered
   dark-on-dark: measured 1.59:1 against a 4.5:1 requirement.
     Rule 1: inside any inline-background box, the box's own colour wins.
     Rule 2: a box with a DARK background and no colour gets a light one.
   A child with its own inline colour still wins (inline beats a selector).
   Light code chips and links keep their colours: they are not in the list.
   Audited 2026-09-03: 93 published posts hit rule 2. The hex list is every
   dark background actually present in post_content on that date.
   =========================================================================== */
.prose [style*="background"] :is(p,li,strong,b,em,h2,h3,h4,h5,h6,td,th,blockquote,figcaption){color:inherit}
.prose [style*="background:#282A36" i],.prose [style*="background: #282A36" i],.prose [style*="background-color:#282A36" i],.prose [style*="background-color: #282A36" i],.prose [style*="background:#005E54" i],.prose [style*="background: #005E54" i],.prose [style*="background-color:#005E54" i],.prose [style*="background-color: #005E54" i],.prose [style*="background:#00231F" i],.prose [style*="background: #00231F" i],.prose [style*="background-color:#00231F" i],.prose [style*="background-color: #00231F" i],.prose [style*="background:#1E1E1E" i],.prose [style*="background: #1E1E1E" i],.prose [style*="background-color:#1E1E1E" i],.prose [style*="background-color: #1E1E1E" i],.prose [style*="background:#2E3440" i],.prose [style*="background: #2E3440" i],.prose [style*="background-color:#2E3440" i],.prose [style*="background-color: #2E3440" i],.prose [style*="background:#212121" i],.prose [style*="background: #212121" i],.prose [style*="background-color:#212121" i],.prose [style*="background-color: #212121" i],.prose [style*="background:#22272E" i],.prose [style*="background: #22272E" i],.prose [style*="background-color:#22272E" i],.prose [style*="background-color: #22272E" i],.prose [style*="background:#0A7A68" i],.prose [style*="background: #0A7A68" i],.prose [style*="background-color:#0A7A68" i],.prose [style*="background-color: #0A7A68" i],.prose [style*="background:#0B1220" i],.prose [style*="background: #0B1220" i],.prose [style*="background-color:#0B1220" i],.prose [style*="background-color: #0B1220" i],.prose [style*="background:#000000" i],.prose [style*="background: #000000" i],.prose [style*="background-color:#000000" i],.prose [style*="background-color: #000000" i],.prose [style*="background:#24292E" i],.prose [style*="background: #24292E" i],.prose [style*="background-color:#24292E" i],.prose [style*="background-color: #24292E" i],.prose [style*="background:#263238" i],.prose [style*="background: #263238" i],.prose [style*="background-color:#263238" i],.prose [style*="background-color: #263238" i]{color:#F4F8F7}

/* pricing.css */
/* ===========================================================================
   InstaWP pricing page — green-skin sections (links after style.css)
   Bands: hero(dark) > plans(white) > extras(grey) > included(white)
          > meter(dark) > doors(grey) > faq(white) > cta(dark)
   =========================================================================== */

/* shared section shell */
.pr-sec{padding:84px 0}
.pr-head{max-width:720px;margin:0 auto 48px;text-align:center}
.pr-head .eyebrow{margin-bottom:14px}
.pr-head h2{font-weight:800;letter-spacing:-.025em;color:var(--heading);font-size:clamp(1.9rem,3.6vw,2.7rem);line-height:1.12}
.pr-head h2 .ac{color:var(--green-deep)}
.pr-head p{font-size:1.12rem;color:var(--body);margin-top:13px;text-wrap:balance}
.pr-dark .pr-head h2{color:#F4F8F7}.pr-dark .pr-head h2 .ac{color:var(--green-x)}
.pr-dark .pr-head p{color:var(--dark-body)}
.pr-dark .eyebrow{color:var(--green-x)}

/* ===================== HERO (dark) ===================== */
.pr-hero{position:relative;background:var(--dark);overflow:hidden;padding:calc(68px + 76px) 0 70px;text-align:center}
.pr-hero .grid{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 0%,#000,transparent 72%);mask-image:radial-gradient(ellipse 80% 70% at 50% 0%,#000,transparent 72%)}
.pr-hero .glow{position:absolute;width:820px;height:480px;top:-160px;left:50%;transform:translateX(-50%);border-radius:50%;filter:blur(76px);background:radial-gradient(ellipse at center,rgba(43,232,166,.2),rgba(52,207,227,.05) 50%,transparent 72%);pointer-events:none}
.pr-hero .wrap{position:relative;z-index:1}
.pr-hero .eyebrow{color:var(--green-x);justify-content:center;margin-bottom:20px}
.pr-hero h1{font-weight:800;letter-spacing:-.03em;color:#F6FAF8;font-size:clamp(2.5rem,5.3vw,4rem);line-height:1.07;text-wrap:balance}
.pr-hero h1 .ac{color:var(--green-x)}
.pr-hero .sub{font-size:1.18rem;color:var(--dark-body);max-width:60ch;margin:18px auto 0;text-wrap:balance}
.pr-hero .sub b{color:#EAF2EE;font-weight:600}
.pr-hero-ctas{display:inline-flex;flex-wrap:wrap;gap:13px;justify-content:center;margin-top:30px}
.pr-hero-note{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:center;margin-top:22px;font-family:var(--mono);font-size:.78rem;color:var(--dark-body)}
.pr-hero-note .hn-it{display:inline-flex;align-items:center;gap:9px}
.pr-hero-note .hn-badge{flex:none;width:19px;height:19px;border-radius:50%;background:rgba(43,232,166,.14);display:inline-flex;align-items:center;justify-content:center}
.pr-hero-note .hn-badge svg{width:11px;height:11px;color:var(--green-x)}
/* 2-column (has-art) feature heroes left-align their trust line (single-col heroes stay centered) */
.fhero.has-art .pr-hero-note{justify-content:flex-start;gap:12px 20px}

/* ===================== PLANS (white) ===================== */
.pr-plans{background:var(--white);padding:84px 0}
.plan-head{margin:0 2px 16px}
.plan-head.plan-head-2{margin-top:18px}
.plan-label{display:flex;align-items:center;gap:11px}
.plan-label::before{content:"";flex:none;width:3px;height:18px;border-radius:2px;background:var(--green-bright)}
.plan-label.pl-amber::before{background:var(--amber)}
.plan-label b{font-family:var(--font);font-weight:800;font-size:1.18rem;letter-spacing:-.02em;color:var(--heading);line-height:1}
.plan-label .pl-sub{font-size:.95rem;color:var(--muted);font-weight:500}
/* sandbox bar */
.sandbox-bar{display:grid;grid-template-columns:minmax(180px,auto) 1fr auto;gap:30px;align-items:center;background:linear-gradient(100deg,rgba(224,138,30,.06),var(--white) 60%);border:1px solid rgba(224,138,30,.26);border-radius:18px;padding:26px 30px;margin-bottom:26px}
.sandbox-bar .sb-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--amber);margin-bottom:12px}
.sandbox-bar .sb-tag .dot{width:7px;height:7px;border-radius:50%;background:var(--amber)}
.sandbox-bar .sb-price{font-weight:800;font-size:2.1rem;color:var(--heading);letter-spacing:-.02em;line-height:1}
.sandbox-bar .sb-price small{font-family:var(--mono);font-size:.6rem;font-weight:500;color:var(--muted);margin-left:6px}
.sandbox-bar .sb-specs{margin-top:8px;font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.sandbox-bar .sb-m p{font-size:.88rem;color:var(--body);line-height:1.55}
.sandbox-bar .sb-m strong{color:var(--heading);font-weight:600}
.btn-amber{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:11px;border:0;background:#F5921A;color:#2A1705;font-weight:700;font-size:.94rem;white-space:nowrap;font-family:var(--font);cursor:pointer;box-shadow:0 1px 2px rgba(245,146,26,.32),0 10px 22px -8px rgba(245,146,26,.55);transition:background .2s,transform .18s,box-shadow .2s}
.btn-amber:hover{background:#FFA02A;transform:translateY(-1px);box-shadow:0 1px 2px rgba(245,146,26,.42),0 12px 26px -8px rgba(245,146,26,.65)}
.btn-amber .arr{transition:transform .18s}.btn-amber:hover .arr{transform:translateX(3px)}
/* production comparison matrix (Variation B) */
.pmtx{border:1px solid var(--border);border-radius:18px;overflow:visible;background:var(--white)}
.pmtx .mrow{display:grid;grid-template-columns:150px repeat(5,1fr);border-bottom:1px solid var(--border-2)}
.pmtx .mrow:last-child{border-bottom:0}
.pmtx .mrow>div{padding:14px 18px;border-left:1px solid var(--border-2)}
.pmtx .mrow>div:first-child{border-left:0}
.pmtx .mrow.mhead>div{padding:44px 18px 18px;position:relative}
.pmtx .mrl{font-family:var(--mono);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center}
.pmtx .mhead .mrl{flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:5px;text-transform:none}
.pmtx .mhead .mrl b{font-family:var(--font);font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1}
.pmtx .mhead .mrl span{font-family:var(--mono);font-size:.6rem;letter-spacing:.02em;color:var(--muted)}
.pmtx .mtn{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.pmtx .mtp{font-weight:800;font-size:1.7rem;color:var(--heading);letter-spacing:-.03em;line-height:1}
.pmtx .mtp small{font-family:var(--mono);font-size:.56rem;font-weight:500;color:var(--muted);margin-left:2px}
.pmtx .mtpd{font-family:var(--mono);font-size:.64rem;color:var(--muted);margin-top:5px}
.pmtx .mfor{font-size:.82rem;color:var(--body);line-height:1.4}
.pmtx .mv{font-family:var(--mono);font-size:.85rem;color:var(--heading);font-weight:600}
/* 21906: align figures across the 5 plan columns */
.mtp,.mtpd,.mv,.mfor{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.pmtx .col-pop{background:var(--green-tint)}
.pmtx .poptag{position:absolute;top:12px;left:18px;font-family:var(--mono);font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:#042A1C;background:var(--green-bright);padding:3px 9px;border-radius:100px;font-weight:700;box-shadow:0 4px 10px -4px rgba(17,191,133,.7)}
.pmtx .mcta-row>div{padding:16px 14px}
.pmtx .mcta{width:100%;justify-content:center;padding-left:8px;padding-right:8px}
@media(max-width:900px){.pmtx{overflow-x:auto}.pmtx .mrow{grid-template-columns:120px repeat(5,148px);min-width:860px}}
.plans-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;max-width:none;margin:24px 2px 0;font-size:.9rem;color:var(--body)}
.plans-foot strong{color:var(--heading);font-weight:600}
.plans-foot .ent{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:.82rem;color:var(--muted)}
.plans-foot .ent a{display:inline-flex;align-items:center;gap:5px;color:var(--green-deep);font-weight:700;background:var(--green-tint);border:1px solid rgba(11,168,109,.28);border-radius:8px;padding:5px 12px;transition:background .18s,border-color .18s}
.plans-foot .ent a:hover{background:#DCF3E8;border-color:rgba(11,168,109,.5)}

/* ===================== INCLUDED (white) ===================== */
.pr-incl{background:var(--white)}
.incl-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 26px;max-width:1040px;margin:0 auto}
.incl-grid .ic{display:flex;gap:12px;align-items:flex-start}
.incl-grid .ic .ck{flex:none;width:22px;height:22px;border-radius:7px;background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center;margin-top:1px}
.incl-grid .ic .ck svg{width:13px;height:13px}
.incl-grid .ic .t{font-size:.9rem;color:var(--heading);font-weight:600;line-height:1.3}
.incl-grid .ic .d{font-size:.82rem;color:var(--muted);margin-top:3px;line-height:1.4}

/* ===================== METER (dark) ===================== */
.pr-meter{background:var(--dark)}
.meter-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:center;max-width:1020px;margin:0 auto}
.meter-copy .eyebrow{color:var(--green-x);margin-bottom:14px}
.meter-copy h2{font-weight:800;letter-spacing:-.025em;color:#F4F8F7;font-size:clamp(1.9rem,3.6vw,2.7rem);line-height:1.12;margin-bottom:14px}
.meter-copy h2 .ac{color:var(--green-x)}
.meter-copy>p{color:var(--dark-body);font-size:1.06rem;line-height:1.6}
.meter-facts{list-style:none;margin:24px 0 0;display:grid;gap:13px}
.meter-facts li{position:relative;padding-left:27px;font-size:.97rem;color:var(--dark-body);line-height:1.45}
.meter-facts li::before{content:"";position:absolute;left:0;top:5px;width:14px;height:14px;border-radius:50%;background:rgba(43,232,166,.14);box-shadow:inset 0 0 0 1.5px var(--green-x)}
.meter-facts li strong{color:#EAF2EE;font-weight:600}
.bill{background:linear-gradient(180deg,var(--dark-2),var(--dark));border:1px solid var(--dark-border);border-radius:16px;overflow:hidden;box-shadow:0 40px 90px -42px rgba(0,0,0,.8)}
.bill-bar{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid var(--dark-border)}
.bill-bar .t{font-size:.92rem;font-weight:600;color:#EAF2EE}
.bill-bar .m{font-family:var(--mono);font-size:.6rem;letter-spacing:.07em;text-transform:uppercase;color:var(--dark-body)}
.brow{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:13px 20px;border-bottom:1px solid var(--dark-border)}
.brow .nm{font-family:var(--mono);font-size:.78rem;color:#EAF2EE;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brow .st{font-family:var(--mono);font-size:.56rem;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:100px;white-space:nowrap}
.st-live{background:rgba(43,232,166,.14);color:var(--green-x)}
.st-park{background:rgba(224,138,30,.16);color:#F2B25A}
.st-test{background:rgba(255,255,255,.07);color:var(--dark-body)}
.brow .amt{font-family:var(--mono);font-weight:700;font-size:.8rem;color:#EAF2EE;min-width:64px;text-align:right}
.brow .amt.zero{color:rgba(234,242,238,.4);font-weight:500}
.bill-total{display:flex;align-items:baseline;justify-content:space-between;padding:17px 20px 16px}
.bill-total .k{font-size:.92rem;color:var(--dark-body)}
.bill-total .v{font-family:var(--mono);font-weight:700;font-size:1.42rem;color:var(--green-x)}
.bill-total .v small{font-weight:400;font-size:.58rem;color:var(--dark-body);letter-spacing:.06em;text-transform:uppercase;margin-left:7px}
.bill-note{margin:0 20px;padding:14px 0 18px;font-size:.76rem;color:var(--dark-body);line-height:1.55;border-top:1px dashed var(--dark-border)}
.bill-note strong{color:#EAF2EE;font-weight:600}

/* ===================== EXTRAS (grey) ===================== */
.pr-extras{background:var(--bg)}
.extras-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;max-width:var(--maxw);margin:0 auto}
.extras-grid>.xcard{flex:0 1 calc(25% - 12px)}
.xcard{border:1px solid var(--border);border-radius:16px;padding:30px 26px;background:var(--white);transition:border-color .2s,transform .2s,box-shadow .2s}
.xcard:hover{border-color:rgba(17,191,133,.4);transform:translateY(-3px);box-shadow:0 22px 46px -32px rgba(8,15,30,.4)}
.xcard .xh{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.xcard .xn{font-weight:700;font-size:1.22rem;color:var(--heading);letter-spacing:-.01em}
.xcard .xp{font-family:var(--mono);font-size:.84rem;font-weight:600;color:var(--green-deep);white-space:nowrap}
.xcard .xd{font-size:.94rem;color:var(--body);line-height:1.55;margin-top:13px}
.extras-note{text-align:center;max-width:720px;margin:24px auto 0;font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.extras-note b{color:var(--heading);font-weight:600}

/* ===================== DOORS (grey) ===================== */
.pr-doors{background:var(--bg)}
.doors{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:980px;margin:0 auto}
.door{position:relative;border:1px solid var(--border);border-radius:18px;padding:32px 30px;background:var(--white);overflow:hidden}
.door.dark{background:linear-gradient(180deg,var(--dark-2),var(--dark));border-color:var(--dark-border)}
.door .deyebrow{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-deep);margin-bottom:12px}
.door.dark .deyebrow{color:var(--green-x)}
.door h3{font-weight:700;font-size:1.32rem;letter-spacing:-.02em;color:var(--heading);margin-bottom:9px}
.door.dark h3{color:#F4F8F7}
.door p{font-size:.97rem;color:var(--body);line-height:1.6;margin-bottom:18px}
.door.dark p{color:var(--dark-body)}
.door ul{list-style:none;margin:0 0 22px;display:grid;gap:9px}
.door li{position:relative;padding-left:24px;font-size:.86rem;color:var(--body)}
.door.dark li{color:var(--dark-body)}
.door li::before{content:"";position:absolute;left:0;top:6px;width:13px;height:13px;border-radius:50%;background:var(--green-tint);box-shadow:inset 0 0 0 1.4px var(--green)}
.door.dark li::before{background:rgba(43,232,166,.14);box-shadow:inset 0 0 0 1.4px var(--green-x)}
@media(max-width:720px){.doors{grid-template-columns:1fr}}

/* ===================== FAQ (white) ===================== */
.pr-faq{background:var(--white)}
.faqs{max-width:820px;margin:0 auto;display:grid;gap:12px}
.faq-i{background:var(--bg);border:1px solid var(--border);border-radius:13px;padding:22px 24px}
.faq-i h4{font-size:1rem;color:var(--heading);margin-bottom:8px;font-weight:600}
.faq-i p{font-size:.96rem;color:var(--body);line-height:1.6}
.faq-i p b{color:var(--heading);font-weight:600}

/* ===================== PRICING CTA (dark, pricing-specific) ===================== */
.pr-cta{position:relative;background:linear-gradient(180deg,#0B1410 0%,#0B1410 55%,#091108 100%);overflow:hidden;padding:96px 0 90px;text-align:center}
.pr-cta .glow{position:absolute;width:760px;height:440px;top:-140px;left:50%;transform:translateX(-50%);border-radius:50%;filter:blur(72px);background:radial-gradient(ellipse at center,rgba(43,232,166,.2),rgba(52,207,227,.05) 48%,transparent 72%);pointer-events:none}
.pr-cta .wrap{position:relative;z-index:1}
.pr-cta .eyebrow{color:var(--green-x);justify-content:center;margin-bottom:16px}
.pr-cta h2{font-weight:800;letter-spacing:-.03em;color:#F4F8F7;font-size:clamp(2.1rem,4.6vw,3.2rem);line-height:1.08;text-wrap:balance}
.pr-cta h2 .ac{color:var(--green-x)}
.pr-cta p{font-size:1.14rem;color:var(--dark-body);max-width:56ch;margin:16px auto 0;text-wrap:balance}
.pr-cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.pr-cta .tiny{margin-top:24px;font-family:var(--mono);font-size:.76rem;color:var(--dark-body)}
.pr-cta .tiny .ok{color:var(--green-x)}
/* roomier CTA spacing for feature / use-case pages (centralises the repeated
   per-page `padding:124px 0 112px` override). Utility pages keep the 96px base;
   cli.html keeps its own 120px. 2026-07-01. */
.pr-cta.roomy{padding:124px 0 112px}

/* ===== .pr-cta.editorial — oversized editorial closing band ========================
   Canonical closer for the flagship dark pages. Absorbs the identical agency-program
   + reselling closers with ZERO per-page CSS; platform/about adopt the same structure
   and keep only their per-page ambient tuning inline (glow alpha/blur, grid mask, H2
   size) per the §6 guardrail. Display H2 size via --eh / max-width via --ehmax
   (defaults = the agency-program/reselling scale). Was .pv-close/.cv-close/.ap-close. */
.pr-cta.editorial{padding:clamp(110px,16vh,180px) 0}
.pr-cta.editorial .glow{width:820px;height:480px;top:-150px;filter:blur(82px);background:radial-gradient(ellipse at center,rgba(43,232,166,.15),rgba(52,207,227,.04) 50%,transparent 72%)}
.pr-cta.editorial .grid{position:absolute;inset:0;z-index:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 100% 80% at 20% 2%,#000 6%,transparent 70%);mask-image:radial-gradient(ellipse 100% 80% at 20% 2%,#000 6%,transparent 70%);pointer-events:none}
.pr-cta.editorial h2{font-family:var(--font);line-height:.98;letter-spacing:-.035em;color:#F6FAF8;font-size:var(--eh,clamp(2.5rem,7vw,5.4rem));max-width:var(--ehmax,15ch);margin:0 auto}
.pr-cta.editorial p{max-width:54ch;margin:24px auto 0}
.pr-cta.editorial .pr-cta-actions{margin-top:36px}
.pr-cta.editorial .tiny{margin-top:26px;display:inline-flex;flex-wrap:wrap;justify-content:center;gap:9px 22px;color:rgba(234,242,238,.66)}
.pr-cta.editorial .tiny span{display:inline-flex;align-items:center;gap:7px}
.pr-cta.editorial .tiny svg{width:13px;height:13px;flex:none;color:var(--green-x)}

/* ===================== reveal + responsive ===================== */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(max-width:960px){.tiers{grid-template-columns:repeat(2,1fr)}.tcard .tfor{min-height:0}.incl-grid{grid-template-columns:repeat(2,1fr)}.extras-grid>.xcard{flex-basis:calc(50% - 8px)}.meter-grid{grid-template-columns:1fr;gap:34px}}
@media(max-width:820px){.sandbox-bar{grid-template-columns:1fr;gap:18px}}
@media(max-width:540px){.tiers{grid-template-columns:1fr}.incl-grid{grid-template-columns:1fr}.extras-grid>.xcard{flex-basis:100%}.pr-sec{padding:62px 0}}

/* matrix tooltips + boolean cells */
.pmtx .tip{position:relative;display:inline-flex;margin-left:6px;cursor:help}
.pmtx .tip i{font-style:normal;font-family:var(--font);font-size:.6rem;font-weight:700;line-height:1;color:var(--muted);width:14px;height:14px;border:1px solid var(--border);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;text-transform:none}
.pmtx .tip:hover i{color:var(--green-deep);border-color:var(--green)}
.pmtx .tipbox{position:absolute;bottom:calc(100% + 10px);left:50%;width:214px;background:var(--dark);color:var(--dark-ink);font-family:var(--font);font-size:.76rem;font-weight:400;line-height:1.4;letter-spacing:0;text-transform:none;padding:10px 13px;border-radius:11px;box-shadow:0 18px 40px -16px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translateX(-50%) translateY(5px);transition:opacity .16s ease,transform .16s ease,visibility .16s;z-index:40;pointer-events:none}
.pmtx .tipbox::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--dark)}
.pmtx .tip:hover .tipbox{opacity:1;visibility:visible;transform:translateX(-50%)}
.pmtx .yes{color:var(--green-deep);display:inline-flex;align-items:center}
.pmtx .yes svg{width:16px;height:16px;display:block}
.pmtx .no{color:var(--muted);opacity:.55}
/* inline tier-term tooltips inside value cells (Basic / Premium / Advanced) */
.pmtx .tt{position:relative;border-bottom:1px dotted var(--muted);cursor:help}
.pmtx .tt:hover{border-bottom-color:var(--green)}
.pmtx .tt .tipbox{width:190px}
.pmtx .tt:hover .tipbox{opacity:1;visibility:visible;transform:translateX(-50%)}
.pmtx .tt.tt-r .tipbox{left:auto;right:0;transform:translateX(0) translateY(5px)}
.pmtx .tt.tt-r:hover .tipbox{transform:translateX(0)}
.pmtx .tt.tt-r .tipbox::after{left:auto;right:13px;transform:none}
/* ===================== MANAGED CLOUD boxes ===================== */
.pr-cloud{background:var(--bg)}
/* managed-platform cards */
.cloud-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:6px}
.cloud-card{position:relative;display:flex;flex-direction:column;padding:30px 30px 28px;background:var(--white);border:1px solid var(--border);border-radius:20px;overflow:hidden;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.cloud-card::before{content:"";position:absolute;inset:0 auto auto 0;width:220px;height:150px;opacity:.5;pointer-events:none;transition:opacity .24s ease}
.cloud-card:hover{transform:translateY(-4px);box-shadow:0 34px 66px -44px rgba(8,15,30,.6)}
.cloud-card:hover::before{opacity:.9}
.cc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px;position:relative;z-index:1}
.cc-ic{flex:none;width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;border:1px solid transparent}
.cc-ic svg{width:22px;height:22px}
.cc-tier{font-family:var(--mono);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:20px;white-space:nowrap;border:1px solid var(--border);color:var(--muted);background:#F7F9FC}
.cc-tier.on{color:var(--green-deep);background:var(--green-tint);border-color:rgba(11,168,109,.28)}
.cc-name{position:relative;z-index:1;font-family:var(--mono);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px}
.cloud-card h4{position:relative;z-index:1;font-size:1.24rem;font-weight:800;letter-spacing:-.022em;color:var(--heading);line-height:1.24;margin:0 0 10px}
.cloud-card>p{position:relative;z-index:1;font-size:.95rem;color:var(--body);line-height:1.6;margin:0 0 18px}
.cc-list{position:relative;z-index:1;width:100%;box-sizing:border-box;list-style:none;margin:auto 0 0;padding:16px 0 0;border-top:1px solid var(--border-2);display:grid;gap:10px}
.cc-list li{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:var(--body);line-height:1.45}
.cc-list li svg{flex:none;width:15px;height:15px;margin-top:3px}
/* accents */
.cc-1 .cc-ic{background:linear-gradient(150deg,rgba(11,168,109,.16),rgba(11,168,109,.05));border-color:rgba(11,168,109,.24);color:var(--green-deep)}
.cc-1 .cc-name,.cc-1 .cc-list li svg{color:var(--green-deep)}
.cc-1::before{background:radial-gradient(320px 190px at 0% 0%,rgba(11,168,109,.1),transparent 70%)}
.cc-1:hover{border-color:rgba(11,168,109,.4)}
.cc-2 .cc-ic{background:linear-gradient(150deg,rgba(52,207,227,.26),rgba(52,207,227,.06));border-color:rgba(52,207,227,.34);color:var(--plasma)}
.cc-2 .cc-name,.cc-2 .cc-list li svg{color:var(--plasma)}
.cc-2::before{background:radial-gradient(320px 190px at 0% 0%,rgba(52,207,227,.16),transparent 70%)}
.cc-2:hover{border-color:rgba(52,207,227,.5)}
.cc-3 .cc-ic{background:linear-gradient(150deg,rgba(43,232,166,.3),rgba(43,232,166,.07));border-color:rgba(43,232,166,.42);color:var(--green-deep)}
.cc-3 .cc-name,.cc-3 .cc-list li svg{color:var(--green-deep)}
.cc-3::before{background:radial-gradient(320px 190px at 0% 0%,rgba(43,232,166,.16),transparent 70%)}
.cc-3:hover{border-color:rgba(43,232,166,.55)}
.cc-4 .cc-ic{background:linear-gradient(150deg,rgba(224,138,30,.2),rgba(224,138,30,.05));border-color:rgba(224,138,30,.3);color:var(--amber-deep)}
.cc-4 .cc-name,.cc-4 .cc-list li svg{color:var(--amber-deep)}
.cc-4::before{background:radial-gradient(320px 190px at 0% 0%,rgba(224,138,30,.12),transparent 70%)}
.cc-4:hover{border-color:rgba(224,138,30,.45)}
@media(max-width:860px){.cloud-grid{grid-template-columns:1fr;gap:14px}.cloud-card{padding:26px 22px 24px}.cloud-card h4{font-size:1.14rem}}
@media(prefers-reduced-motion:reduce){.cloud-card,.cloud-card::before{transition:none}}
/* managed-cloud sub-section (lives inside the production/plans block) */
.cloud-sub{margin-top:46px;padding-top:42px;border-top:1px solid var(--border)}
.cloud-h{font-family:var(--font);font-weight:800;font-size:1.5rem;letter-spacing:-.02em;color:var(--heading);text-align:center;line-height:1.12}
.cloud-h .ac{color:var(--green-deep)}
.cloud-sub-p{text-align:center;font-size:.98rem;color:var(--body);margin:11px auto 30px;max-width:62ch}
.meter-scale{text-align:center;max-width:760px;margin:32px auto 0;font-size:.97rem;color:var(--dark-body);line-height:1.6}
.meter-scale b{color:#EAF2EE;font-weight:600}
/* add-on tiles - stacked deck */
.xslider{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 44px}
.xstage{position:relative;height:262px;overflow:hidden}
.xstage>.xcard{position:absolute;left:50%;top:50%;width:35%;cursor:pointer;outline:none;transform:translate(-50%,-50%);transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .35s ease,box-shadow .35s ease,border-color .3s ease;will-change:transform}
.xstage>.xcard:hover{transform:translate(-50%,-50%)}
.xstage>.xcard[data-off="0"]{transform:translate(-50%,-50%) scale(1);z-index:30;opacity:1;border-color:rgba(17,191,133,.85);background:linear-gradient(180deg,rgba(17,191,133,.06),rgba(255,255,255,0) 72%),var(--white);box-shadow:0 34px 64px -30px rgba(8,15,30,.5)}
.xstage>.xcard[data-off="-1"]{transform:translate(-112%,-50%) scale(.88);z-index:20;opacity:.94;box-shadow:0 20px 40px -28px rgba(8,15,30,.45)}
.xstage>.xcard[data-off="1"]{transform:translate(12%,-50%) scale(.88);z-index:20;opacity:.94;box-shadow:0 20px 40px -28px rgba(8,15,30,.45)}
.xstage>.xcard[data-off="-2"]{transform:translate(-162%,-50%) scale(.78);z-index:10;opacity:.72}
.xstage>.xcard[data-off="2"]{transform:translate(62%,-50%) scale(.78);z-index:10;opacity:.72}
.xstage>.xcard[data-off="-3"]{transform:translate(-190%,-50%) scale(.7);z-index:1;opacity:0;pointer-events:none}
.xstage>.xcard[data-off="3"]{transform:translate(90%,-50%) scale(.7);z-index:1;opacity:0;pointer-events:none}
.xstage>.xcard:not([data-off="0"]):hover{opacity:1}
.xstage>.xcard:focus-visible{box-shadow:0 0 0 3px rgba(17,191,133,.3)}
.xnav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:var(--white);color:var(--heading);font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:40;transition:border-color .2s,box-shadow .2s,opacity .2s}
.xnav:hover{border-color:rgba(17,191,133,.6);box-shadow:0 14px 30px -18px rgba(8,15,30,.5)}
.xnav:disabled{opacity:.3;cursor:default;box-shadow:none}
.xprev{left:0}.xnext{right:0}
.xdots{display:flex;justify-content:center;gap:8px;margin-top:18px}
.xdot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:var(--border);cursor:pointer;transition:background .25s,width .25s}
.xdot.is-on{width:24px;border-radius:5px;background:rgba(17,191,133,.85)}
@media(max-width:960px){.xstage{height:288px}.xstage>.xcard{width:46%}.xstage>.xcard[data-off="-1"]{transform:translate(-108%,-50%) scale(.86)}.xstage>.xcard[data-off="1"]{transform:translate(8%,-50%) scale(.86)}.xstage>.xcard[data-off="-2"],.xstage>.xcard[data-off="2"]{opacity:0;pointer-events:none}}
@media(max-width:640px){.xslider{padding:0 6px}.xstage{height:320px}.xstage>.xcard{width:74%}.xstage>.xcard[data-off="-1"]{transform:translate(-96%,-50%) scale(.84)}.xstage>.xcard[data-off="1"]{transform:translate(-4%,-50%) scale(.84)}.xnav{width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.xstage>.xcard{transition:none}}


/* ===================== OPTIONAL EXTRAS - add-on table ===================== */
.xtable{position:relative;border:1px solid var(--border);border-radius:20px;overflow:hidden;background:var(--white);box-shadow:0 30px 64px -46px rgba(8,15,30,.5)}
.xt-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:15px 26px;background:linear-gradient(100deg,rgba(17,191,133,.09),rgba(255,255,255,0) 62%),var(--white);border-bottom:1px solid var(--border)}
.xt-title{font-weight:800;font-size:1.02rem;color:var(--heading);letter-spacing:-.015em}
.xt-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.xt-chip{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.24);padding:4px 10px;border-radius:20px}
.xt-chip .dot{width:6px;height:6px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 0 3px rgba(17,191,133,.18)}

.xtr{display:grid;grid-template-columns:1.35fr .56fr 1.06fr;align-items:center;gap:20px;padding:19px 26px;border-bottom:1px solid var(--border-2)}
.xtr.xthead{background:#F7F9FC;padding:12px 26px;border-bottom:1px solid var(--border)}
.xtr.xthead span{font-family:var(--mono);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.xtr.xtbody{position:relative;transition:background .18s ease}
.xtr.xtbody::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--green-bright);transform:scaleY(0);transform-origin:center;transition:transform .22s ease}
.xtr.xtbody:hover{background:linear-gradient(90deg,rgba(17,191,133,.05),rgba(255,255,255,0) 46%)}
.xtr.xtbody:hover::before{transform:scaleY(1)}
.xtr.xtbody:last-of-type{border-bottom:0}

.xtname{display:flex;align-items:center;gap:14px}
.xtico{flex:none;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;transition:transform .22s ease,box-shadow .22s ease}
.xtico svg{width:20px;height:20px}
.xtr.xtbody:hover .xtico{transform:translateY(-2px)}
/* accents, all from the brand tokens: emerald, cyan, mint, plasma, amber */
.xtico.ic-1{background:linear-gradient(150deg,rgba(11,168,109,.16),rgba(11,168,109,.05));border-color:rgba(11,168,109,.22);color:var(--green-deep)}
.xtr.xtbody:hover .xtico.ic-1{box-shadow:0 10px 20px -12px rgba(11,168,109,.75)}
.xtico.ic-2{background:linear-gradient(150deg,rgba(52,207,227,.24),rgba(52,207,227,.06));border-color:rgba(52,207,227,.34);color:var(--plasma)}
.xtr.xtbody:hover .xtico.ic-2{box-shadow:0 10px 20px -12px rgba(52,207,227,.9)}
.xtico.ic-3{background:linear-gradient(150deg,rgba(0,94,84,.26),rgba(52,207,227,.3));border-color:rgba(0,94,84,.3);color:var(--plasma)}
.xtr.xtbody:hover .xtico.ic-3{box-shadow:0 10px 20px -12px rgba(0,94,84,.8)}
.xtico.ic-4{background:linear-gradient(150deg,rgba(43,232,166,.32),rgba(43,232,166,.07));border-color:rgba(43,232,166,.45);color:var(--green-deep)}
.xtr.xtbody:hover .xtico.ic-4{box-shadow:0 10px 20px -12px rgba(17,191,133,.85)}
.xtico.ic-5{background:linear-gradient(150deg,rgba(224,138,30,.2),rgba(224,138,30,.05));border-color:rgba(224,138,30,.3);color:var(--amber-deep)}
.xtr.xtbody:hover .xtico.ic-5{box-shadow:0 10px 20px -12px rgba(224,138,30,.8)}
.xtname b{display:block;font-size:1.04rem;font-weight:700;color:var(--heading);letter-spacing:-.015em;line-height:1.25}
.xtname span{display:block;font-size:.87rem;color:var(--muted);margin-top:3px;line-height:1.45}

.xtprice{display:flex;flex-direction:column;align-items:flex-start;line-height:1}
.xtprice .amt{font-weight:800;font-size:1.5rem;color:var(--heading);letter-spacing:-.03em}
.xtprice small{font-family:var(--mono);font-size:.68rem;font-weight:500;color:var(--muted);margin-top:6px;letter-spacing:.02em}
.xtprice .usage{display:inline-flex;align-items:center;font-family:var(--mono);font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.26);padding:6px 11px;border-radius:8px}

.xtnote{font-size:.93rem;color:var(--body);line-height:1.5}
.xfree{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.3);padding:3px 8px;border-radius:6px;margin-right:8px;vertical-align:1px}
.xfree svg{width:9px;height:9px}

.xtfoot{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:16px 26px;background:#F7F9FC;border-top:1px solid var(--border)}
.xtfoot p{font-size:.91rem;color:var(--muted);margin:0}
.xtfoot b{color:var(--heading);font-weight:600}
.xtlink{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem;color:var(--green-deep);white-space:nowrap}
.xtlink .arr{transition:transform .18s ease}
.xtlink:hover .arr{transform:translateX(3px)}

@media(max-width:860px){
  .xtr{grid-template-columns:1fr auto;gap:10px 16px;padding:17px 18px}
  .xtr.xthead{display:none}
  .xt-bar{padding:14px 18px}
  .xtprice{align-items:flex-end;text-align:right}
  .xtnote{grid-column:1/-1}
  .xtfoot{padding:15px 18px}
}
@media(max-width:520px){
  .xtname{gap:11px}
  .xtico{width:36px;height:36px}.xtico svg{width:18px;height:18px}
  .xtprice .amt{font-size:1.3rem}
}
@media(prefers-reduced-motion:reduce){.xtr.xtbody::before,.xtico{transition:none}}


/* risk-reversal strip under the production matrix */
.plans-trust{position:relative;display:grid;grid-template-columns:repeat(5,1fr);margin:26px 0 2px;background:linear-gradient(180deg,rgba(17,191,133,.05),var(--white) 62%);border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:0 30px 64px -46px rgba(8,15,30,.55)}
.plans-trust::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--green-bright),var(--cyan))}
.pt-i{display:flex;align-items:center;gap:12px;padding:24px 22px;border-left:1px solid var(--border-2);transition:background .2s ease}
.pt-i:first-child{border-left:0}
.pt-i:hover{background:linear-gradient(180deg,rgba(17,191,133,.06),rgba(255,255,255,0))}
.pt-b{flex:none;width:26px;height:26px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px -6px rgba(11,168,109,.9)}
.pt-b svg{width:13px;height:13px}
.pt-t b{display:block;font-size:.96rem;font-weight:700;color:var(--heading);letter-spacing:-.015em;line-height:1.25}
.pt-t span{display:block;font-family:var(--mono);font-size:.76rem;color:var(--muted);margin-top:3px;line-height:1.4}
@media(max-width:1040px){.plans-trust{grid-template-columns:repeat(3,1fr)}.pt-i:nth-child(3n+1){border-left:0}.pt-i:nth-child(n+4){border-top:1px solid var(--border-2)}}
@media(max-width:720px){.plans-trust{grid-template-columns:repeat(2,1fr)}.pt-i{padding:18px 16px}.pt-i:nth-child(3n+1){border-left:1px solid var(--border-2)}.pt-i:nth-child(odd){border-left:0}.pt-i:nth-child(n+3){border-top:1px solid var(--border-2)}.pt-i:nth-child(n+4){border-top:1px solid var(--border-2)}}
@media(max-width:440px){.plans-trust{grid-template-columns:1fr}.pt-i{border-left:0}.pt-i+.pt-i{border-top:1px solid var(--border-2)}}

/* platform.css */
/* ===========================================================================
   InstaWP Platform page — green-skin (links AFTER style.css + pricing.css)
   Reuses: pr-hero, pr-sec, pr-head, pr-dark, cloud-grid/cloud-card, incl-grid, pr-cta.
   Adds only: lifecycle map (router), static sandbox→prod demo, fleet mock,
              dev/AI terminal artifact + access lists, scale panel.
   Bands: hero(dark) → host(white) → build(dark) → manage(white)
          → scale(grey) → moat(dark) → cta(dark)
   =========================================================================== */

/* offset in-page anchors below the fixed 68px header */
[id]{scroll-margin-top:92px}

/* generic light-section sublede + capability sub-eyebrow tweaks reuse pr-head */
.pl-lead{max-width:760px;margin:0 auto 30px;text-align:center}
.pr-grey{background:var(--bg)}
/* pr-dark sets only text colors in pricing.css; on this page it must carry its own dark band */
.pr-dark{background:var(--dark)}

/* ===================== HERO LIFECYCLE MAP (router) ===================== */
.pl-map{display:flex;align-items:stretch;justify-content:center;flex-wrap:wrap;gap:8px;margin:36px auto 0;max-width:940px}
.pm-stage{flex:1 1 178px;min-width:158px;display:flex;flex-direction:column;gap:6px;padding:15px 17px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.04);text-align:left;transition:border-color .18s,background .18s,transform .18s}
.pm-stage:hover{border-color:rgba(43,232,166,.42);background:rgba(43,232,166,.07);transform:translateY(-2px)}
.pm-k{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:.62rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green-x)}
.pm-k .n{font-size:.6rem;color:rgba(234,242,238,.4)}
.pm-caps{font-size:.85rem;color:rgba(234,242,238,.74);line-height:1.4}
.pm-sep{display:flex;align-items:center;color:rgba(234,242,238,.28);font-size:1.05rem;font-weight:300}
.pl-map-dev{flex-basis:100%;text-align:center;margin-top:6px;font-family:var(--mono);font-size:.74rem;color:rgba(234,242,238,.55)}
.pl-map-dev a{color:var(--green-x);border-bottom:1px dashed rgba(43,232,166,.4);padding-bottom:1px}
.pl-map-dev a:hover{border-bottom-color:var(--green-x)}
.pm-caps a{color:inherit;transition:color .15s}
.pm-caps a:hover{color:var(--green-x)}
@media(max-width:780px){.pm-sep{display:none}.pm-stage{flex-basis:46%}}
@media(max-width:480px){.pm-stage{flex-basis:100%}}

/* ===================== shared section helpers ===================== */
.pr-dark .pr-head .sub,.pr-head .sub{font-size:1.1rem;color:var(--body);max-width:60ch;margin:13px auto 0;text-wrap:balance}
.pr-dark .pr-head .sub{color:var(--dark-body)}
.stage-eyebrow .n{font-family:var(--mono);opacity:.55;margin-right:1px}

/* 2-up capability cards (reuse .cloud-card; add narrower grid + dark variant) */
.cloud-grid.g2{grid-template-columns:repeat(2,1fr);max-width:900px}
.cloud-grid.g3{grid-template-columns:repeat(3,1fr);max-width:var(--maxw)}
.cloud-card .cc-tx{min-width:0}
.cloud-card .cc-tag{display:inline-block;margin-top:8px;font-family:var(--mono);font-size:.58rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.24);padding:3px 8px;border-radius:6px}
.pr-dark .cloud-card{background:var(--dark-2);border-color:var(--dark-border)}
.pr-dark .cloud-card:hover{border-color:rgba(43,232,166,.4)}
.pr-dark .cloud-card h4{color:#F4F8F7}
.pr-dark .cloud-card p{color:var(--dark-body)}
.pr-dark .cloud-card .ci{background:rgba(43,232,166,.12);color:var(--green-x)}
.pr-dark .cloud-card .cc-tag{color:var(--green-x);background:rgba(43,232,166,.12);border-color:rgba(43,232,166,.26)}

/* ===================== BUILD (Snapshots & Templates) ===================== */
.build-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;max-width:var(--maxw);margin:0 auto}
.bp{background:linear-gradient(180deg,var(--dark-2),var(--dark));border:1px solid var(--dark-border);border-radius:16px;overflow:hidden;box-shadow:0 40px 90px -46px rgba(0,0,0,.7)}
.bp-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--dark-border)}
.bp-bar .t{font-size:.92rem;font-weight:600;color:#EAF2EE}
.bp-bar .m{font-family:var(--mono);font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;color:var(--dark-body)}
.bprow{display:grid;grid-template-columns:34px 1fr auto;gap:13px;align-items:center;padding:13px 18px;border-bottom:1px solid var(--dark-border)}
.bprow:last-child{border-bottom:0}
.bprow .bi{width:34px;height:34px;border-radius:9px;background:rgba(43,232,166,.1);color:var(--green-x);display:flex;align-items:center;justify-content:center}
.bprow .bi svg{width:18px;height:18px}
.bprow .bt{min-width:0}
.bprow .bt b{display:block;font-size:.9rem;color:#EAF2EE;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bprow .bt span{font-family:var(--mono);font-size:.64rem;color:var(--dark-body)}
.bprow .ba{font-family:var(--mono);font-size:.64rem;font-weight:600;color:var(--green-x);background:rgba(43,232,166,.1);border:1px solid rgba(43,232,166,.26);border-radius:100px;padding:5px 12px;white-space:nowrap}
.bprow .ba.ghost{color:var(--dark-body);background:rgba(255,255,255,.04);border-color:var(--dark-border)}
.dfeat{list-style:none;display:grid;gap:20px;margin:0}
.dfeat li{position:relative;padding-left:30px}
.dfeat li>svg{position:absolute;left:0;top:3px;width:19px;height:19px;color:var(--green-x)}
.dfeat b{display:block;color:#F4F8F7;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}
.dfeat span{display:block;color:var(--dark-body);font-size:.94rem;margin-top:4px;line-height:1.55}
@media(max-width:880px){.build-grid{grid-template-columns:1fr;gap:30px}}

/* ===================== OVERVIEW VARIANTS (a = bento, b = grid, c = tabs) ===================== */
/* shared capability card */
.ov-grid{display:grid;gap:16px;max-width:var(--maxw);margin:0 auto}
.ov-grid.cols3{grid-template-columns:repeat(3,1fr)}
.ov-grid.cols2{grid-template-columns:repeat(2,1fr);max-width:900px}
.ov-card{position:relative;background:var(--white);border:1px solid var(--border);border-radius:16px;padding:26px 24px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s,box-shadow .2s}
.ov-card:hover{border-color:rgba(17,191,133,.45);transform:translateY(-3px);box-shadow:0 26px 54px -36px rgba(8,15,30,.42)}
.ov-card .ci{width:46px;height:46px;border-radius:12px;background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.ov-card .ci svg{width:23px;height:23px}
.ov-card.ai .ci{background:var(--plasma-tint);color:var(--plasma)}
.ov-card h3{font-size:1.18rem;font-weight:700;letter-spacing:-.015em;color:var(--heading);display:flex;align-items:center;gap:9px;flex-wrap:wrap;line-height:1.2}
.ov-card p{font-size:.95rem;color:var(--body);line-height:1.55;margin-top:9px}
.ov-new{font-family:var(--mono);font-size:.54rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.3);padding:3px 8px;border-radius:6px}
.ov-soon{font-family:var(--mono);font-size:.54rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--amber);background:rgba(224,138,30,.12);border:1px solid rgba(224,138,30,.3);padding:3px 8px;border-radius:6px}
@media(max-width:900px){.ov-grid.cols3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ov-grid.cols3,.ov-grid.cols2{grid-template-columns:1fr}}

/* bento (variant A) */
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:var(--maxw);margin:0 auto;grid-auto-rows:1fr}
.bento .ov-card{margin:0}
.b-host{grid-column:span 2;grid-row:span 2}
.b-wide{grid-column:span 2}
.b-host h3{font-size:1.55rem}
.mini-demo{margin-top:18px}
/* per-card "Learn more" link (cards are <a>) */
.ov-more{margin-top:auto;padding-top:18px;display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:.9rem;color:var(--green-deep)}
.ov-more .arr{transition:transform .18s}
.ov-card:hover .ov-more .arr{transform:translateX(3px)}
.ov-card.ai .ov-more{color:var(--plasma)}
.mini-demo .md-bar{display:inline-flex;align-items:center;gap:10px;background:var(--dark);border:1px solid var(--dark-border);border-radius:10px;padding:9px 13px}
.mini-demo .md-pill{font-family:var(--mono);font-size:.58rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:100px}
.mini-demo .md-pill.s{color:#F2B25A;background:rgba(224,138,30,.16)}
.mini-demo .md-pill.p{color:#042A1C;background:var(--green-bright)}
.mini-demo .md-arr{color:rgba(234,242,238,.45)}
.mini-demo .md-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.mini-demo .md-chips span{font-family:var(--mono);font-size:.66rem;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.22);padding:5px 10px;border-radius:8px}
@media(max-width:900px){.bento{grid-template-columns:repeat(2,1fr)}.b-host{grid-row:span 1}}
@media(max-width:560px){.bento{grid-template-columns:1fr}.b-host,.b-wide{grid-column:span 1}}

/* every-site inclusion strip */
.ov-strip{max-width:900px;margin:30px auto 0;text-align:center;font-family:var(--mono);font-size:.82rem;color:var(--muted);line-height:1.9}
.ov-strip b{color:var(--heading);font-weight:600}

/* sticky capability tab-bar (variant C) */
.pl-tabs{position:sticky;top:68px;z-index:50;background:rgba(247,249,252,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.pl-tabs .wrap{display:flex;gap:8px;overflow-x:auto;padding:13px 28px;scrollbar-width:none}
.pl-tabs .wrap::-webkit-scrollbar{display:none}
.pl-tab{flex:none;font-size:.88rem;font-weight:600;color:var(--body);background:var(--white);border:1px solid var(--border);padding:8px 15px;border-radius:100px;white-space:nowrap;transition:all .15s;text-decoration:none}
.pl-tab:hover{border-color:#CFD8E2;color:var(--heading)}
.pl-tab.on{background:var(--heading);border-color:var(--heading);color:#fff}

/* ===================== HOST (white, leads the body) ===================== */
.host-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:46px;align-items:center;max-width:var(--maxw);margin:0 auto 40px}
.host-aside h3{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1.18}
.host-aside>p{font-size:1rem;color:var(--body);line-height:1.6;margin-top:11px}
.host-incl{list-style:none;margin:20px 0 0;display:grid;gap:11px}
.host-incl li{position:relative;padding-left:28px;font-size:.95rem;color:var(--body);line-height:1.45}
.host-incl li strong{color:var(--heading);font-weight:600}
.host-incl li svg{position:absolute;left:0;top:2px;width:18px;height:18px;color:var(--green-deep)}
.host-price{margin-top:22px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--border-2)}
.host-price .hp{font-family:var(--mono);font-size:.82rem;color:var(--body)}
.host-price .hp b{color:var(--heading);font-weight:700}
.host-price a{font-family:var(--mono);font-size:.8rem;color:var(--green-deep);font-weight:600;border-bottom:1px dashed rgba(11,168,109,.4)}
@media(max-width:880px){.host-grid{grid-template-columns:1fr;gap:30px}}

/* migrations strip under host */
.mig-strip{display:flex;align-items:center;gap:16px;max-width:var(--maxw);margin:0 auto;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:18px 22px}
.mig-strip .ci{flex:none;width:40px;height:40px;border-radius:10px;background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center}
.mig-strip .ci svg{width:21px;height:21px}
.mig-strip .mt{min-width:0}
.mig-strip .mt b{font-size:1rem;font-weight:700;color:var(--heading)}
.mig-strip .mt span{display:block;font-size:.9rem;color:var(--body);margin-top:2px}
@media(max-width:560px){.mig-strip{flex-direction:column;align-items:flex-start;gap:10px}}

/* ===================== static sandbox → production demo ===================== */
.demo{position:relative;border-radius:14px;overflow:hidden;background:linear-gradient(180deg,var(--dark-2),var(--dark));border:1px solid var(--dark-border);box-shadow:0 50px 100px -44px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.03)}
.demo-bar{display:flex;align-items:center;gap:12px;padding:11px 14px;background:rgba(255,255,255,.03);border-bottom:1px solid var(--dark-border)}
.demo-bar .dots{display:flex;gap:6px;flex:none}
.demo-bar .dots i{width:11px;height:11px;border-radius:50%;background:rgba(255,255,255,.16)}
.demo-url{flex:1;display:inline-flex;align-items:center;gap:8px;min-width:0;font-family:var(--code);font-size:.74rem;color:rgba(234,242,238,.8);background:rgba(0,0,0,.25);border:1px solid var(--dark-border);border-radius:8px;padding:7px 12px}
.demo-url svg{width:12px;height:12px;flex:none;color:var(--green-x)}
.demo-plan{flex:none;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#042A1C;background:var(--green-bright);padding:5px 11px;border-radius:100px}
.demo-plan i{width:6px;height:6px;border-radius:50%;background:#042A1C}
.demo-body{padding:34px 30px 30px;text-align:center}
.demo-toggle{display:inline-flex;align-items:center;gap:11px;font-family:var(--mono);font-size:.72rem;color:rgba(234,242,238,.5);margin-bottom:22px}
.demo-toggle .from{color:var(--amber)}
.demo-toggle .to{color:var(--green-x)}
.demo-toggle .sw{position:relative;width:46px;height:24px;border-radius:100px;background:rgba(43,232,166,.22);border:1px solid rgba(43,232,166,.4)}
.demo-toggle .sw i{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:var(--green-x);box-shadow:0 1px 3px rgba(0,0,0,.4)}
.demo-rings{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-bottom:24px}
.demo-ring{display:flex;flex-direction:column;align-items:center;gap:9px}
.demo-ring .rc{position:relative;width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(43,232,166,.1);border:2px solid var(--green-x);color:var(--green-x)}
.demo-ring .rc svg{width:22px;height:22px}
.demo-ring .rc .chk{position:absolute;right:-3px;bottom:-3px;width:19px;height:19px;border-radius:50%;background:var(--green-bright);color:#042A1C;display:flex;align-items:center;justify-content:center;border:2px solid var(--dark)}
.demo-ring .rc .chk svg{width:11px;height:11px}
.demo-ring .rl{font-family:var(--mono);font-size:.64rem;letter-spacing:.04em;color:rgba(234,242,238,.7)}
.demo-succ{display:inline-flex;align-items:center;gap:11px;padding:13px 20px;border-radius:13px;background:rgba(43,232,166,.08);border:1px solid rgba(43,232,166,.26)}
.demo-succ .sb{flex:none;width:30px;height:30px;border-radius:50%;background:var(--green-bright);color:#042A1C;display:flex;align-items:center;justify-content:center}
.demo-succ .sb svg{width:17px;height:17px}
.demo-succ .st{text-align:left}
.demo-succ .st b{display:block;font-size:.95rem;font-weight:700;color:#F4F8F7;letter-spacing:-.01em}
.demo-succ .st span{font-family:var(--mono);font-size:.68rem;color:rgba(234,242,238,.6)}
.demo-cap{margin-top:18px;font-family:var(--mono);font-size:.68rem;color:rgba(234,242,238,.45)}

/* ===================== MANAGE fleet mock (white) ===================== */
.manage-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center;max-width:var(--maxw);margin:0 auto}
.manage-copy h3{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1.18}
.manage-copy>p{font-size:1rem;color:var(--body);line-height:1.6;margin-top:11px}
.manage-feats{list-style:none;margin:20px 0 0;display:grid;gap:13px}
.manage-feats li{position:relative;padding-left:28px;font-size:.95rem;color:var(--body);line-height:1.45}
.manage-feats li strong{color:var(--heading);font-weight:600}
.manage-feats li svg{position:absolute;left:0;top:2px;width:18px;height:18px;color:var(--green-deep)}
.fleet{background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 30px 70px -50px rgba(16,23,38,.4)}
.fleet-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-2);background:var(--bg)}
.fleet-bar .ft{font-size:.9rem;font-weight:600;color:var(--heading)}
.fleet-bar .fm{font-family:var(--mono);font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.frow{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--border-2)}
.frow:last-child{border-bottom:0}
.frow .fn{font-family:var(--mono);font-size:.78rem;color:var(--heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.frow .fst{font-family:var(--mono);font-size:.56rem;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:100px;white-space:nowrap}
.fst.live{background:var(--green-tint);color:var(--green-deep)}
.fst.stag{background:rgba(224,138,30,.14);color:var(--amber)}
.fst.dev{background:rgba(138,149,166,.14);color:var(--muted)}
.frow .fu{font-family:var(--mono);font-size:.7rem;color:var(--muted);min-width:62px;text-align:right}
.fleet-foot{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;font-family:var(--mono);font-size:.68rem;color:var(--muted)}
.fleet-foot .upd{color:var(--green-deep);font-weight:600}
@media(max-width:880px){.manage-grid{grid-template-columns:1fr;gap:30px}}

/* ===================== SCALE (grey) — WaaS single panel ===================== */
.scale-panel{max-width:920px;margin:0 auto;background:var(--white);border:1px solid var(--border);border-radius:20px;padding:38px 40px;display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center;box-shadow:0 30px 70px -52px rgba(16,23,38,.34)}
.scale-panel .sp-eyebrow{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green-deep);margin-bottom:12px}
.scale-panel h3{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1.16}
.scale-panel>div>p{font-size:1rem;color:var(--body);line-height:1.6;margin-top:11px}
.scale-panel .sp-cta{margin-top:20px;display:flex;gap:12px;flex-wrap:wrap}
.proofline{display:grid;gap:16px}
.proofline .pf{padding:18px 20px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}
.proofline .pf b{display:block;font-size:1.6rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1}
.proofline .pf span{font-size:.86rem;color:var(--muted);margin-top:5px;display:block}
.tbd{font-family:var(--mono);font-size:.92rem;font-weight:600;color:var(--amber);border-bottom:1px dashed rgba(224,138,30,.5)}
@media(max-width:760px){.scale-panel{grid-template-columns:1fr;gap:26px;padding:30px 28px}}

/* ===================== DEV/AI MOAT (dark) ===================== */
.moat-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start;max-width:var(--maxw);margin:0 auto}
.moat-cols{display:grid;gap:26px}
.moat-block{border:1px solid var(--dark-border);border-radius:16px;padding:24px 24px;background:rgba(255,255,255,.02)}
.moat-block .mb-h{display:flex;align-items:center;gap:11px;margin-bottom:16px}
.moat-block .mb-ic{flex:none;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(43,232,166,.12);color:var(--green-x)}
.moat-block.ai .mb-ic{background:var(--plasma-tint);color:var(--plasma)}
.moat-block .mb-ic svg{width:19px;height:19px}
.moat-block h3{font-size:1.12rem;font-weight:800;letter-spacing:-.01em;color:#F4F8F7}
.moat-block .mb-h span{font-family:var(--mono);font-size:.66rem;color:rgba(234,242,238,.5)}
.acl{list-style:none;display:grid;gap:11px}
.acl li{position:relative;padding-left:26px;font-size:.93rem;color:var(--dark-body);line-height:1.4}
.acl li strong{color:#EAF2EE;font-weight:600}
.acl li svg{position:absolute;left:0;top:2px;width:17px;height:17px;color:var(--green-x)}
.acl li.ai svg{color:var(--plasma)}
.tag{font-family:var(--mono);font-size:.5rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:5px;margin-left:6px;vertical-align:middle}
.tag.live{color:var(--green-x);background:rgba(43,232,166,.14);border:1px solid rgba(43,232,166,.3)}
.tag.soon{color:#F2B25A;background:rgba(224,138,30,.14);border:1px solid rgba(224,138,30,.3)}

/* terminal artifact (the one net-new signature component) */
.term{border-radius:14px;overflow:hidden;border:1px solid var(--dark-border);background:#0A120E;box-shadow:0 40px 90px -46px rgba(0,0,0,.7)}
.term-bar{display:flex;align-items:center;gap:11px;padding:11px 14px;background:rgba(255,255,255,.03);border-bottom:1px solid var(--dark-border)}
.term-bar .dots{display:flex;gap:6px}
.term-bar .dots i{width:11px;height:11px;border-radius:50%;background:rgba(255,255,255,.16)}
.term-bar .tt{font-family:var(--mono);font-size:.68rem;color:rgba(234,242,238,.5)}
.term-body{margin:0;padding:20px 22px;overflow-x:auto}
.term-body code{font-family:var(--mono);font-size:.82rem;line-height:1.9;color:#D7E5DF;white-space:pre;display:block}
.term-body .c{color:rgba(234,242,238,.4)}
.term-body .p{color:var(--green-x);user-select:none}
.term-body .k{color:#8FD0FF}
.term-body .o{color:rgba(43,232,166,.85)}
.term-body .m{color:var(--plasma);filter:brightness(1.7)}
.term-note{margin-top:16px;font-family:var(--mono);font-size:.7rem;color:rgba(234,242,238,.5);text-align:center}
@media(max-width:880px){.moat-grid{grid-template-columns:1fr;gap:30px}}

/* ===================== CTA reassurance row spacing ===================== */
.pr-cta .tiny .ok{color:var(--green-x)}


/* ===================== shared feature-page components (used across features/*) ===================== */
/* included icon-tile feature list */
.incl2{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 30px;max-width:var(--maxw);margin:0 auto}
.incl2 .it{display:flex;gap:14px;align-items:flex-start}
.incl2 .it .ico{flex:none;width:46px;height:46px;border-radius:13px;background:linear-gradient(155deg,var(--green-tint),#FFFFFF);border:1px solid rgba(11,168,109,.2);color:var(--green-deep);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px -14px rgba(11,168,109,.6);transition:transform .2s ease,box-shadow .2s ease}
.incl2 .it:hover .ico{transform:translateY(-2px);box-shadow:0 14px 26px -12px rgba(11,168,109,.65)}
.incl2 .it .ico svg{width:22px;height:22px}
.incl2 .it h4{font-size:.98rem;font-weight:700;color:var(--heading);letter-spacing:-.01em;line-height:1.25}
.incl2 .it p{font-size:.83rem;color:var(--body);line-height:1.5;margin-top:5px}
@media(max-width:900px){.incl2{grid-template-columns:repeat(2,1fr);gap:26px}}
@media(max-width:520px){.incl2{grid-template-columns:1fr}}

/* persona cards (who-it's-for) */
.uc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:var(--maxw);margin:0 auto}
.uc-card{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--border);border-radius:18px;padding:28px 26px 24px;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.uc-card:hover{transform:translateY(-4px);box-shadow:0 32px 64px -38px rgba(8,15,30,.4);border-color:rgba(17,191,133,.4)}
.uc-card .uc-glow{position:absolute;top:-66px;right:-54px;width:190px;height:150px;border-radius:50%;filter:blur(56px);background:radial-gradient(circle,rgba(17,191,133,.18),transparent 70%);pointer-events:none;opacity:0;transition:opacity .25s ease}
.uc-card:hover .uc-glow{opacity:1}
.uc-num{position:absolute;top:16px;right:22px;font-family:var(--mono);font-weight:700;font-size:2.6rem;line-height:1;color:var(--heading);opacity:.06;letter-spacing:-.02em}
.uc-ic{position:relative;width:52px;height:52px;border-radius:14px;background:linear-gradient(155deg,var(--green-tint),#FFFFFF);border:1px solid rgba(11,168,109,.2);color:var(--green-deep);display:flex;align-items:center;justify-content:center;box-shadow:0 12px 24px -14px rgba(11,168,109,.6)}
.uc-ic svg{width:26px;height:26px}
.uc-eyebrow{font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green-deep);margin:19px 0 7px}
.uc-card h3,.uc-card h4{font-size:1.26rem;font-weight:800;letter-spacing:-.02em;color:var(--heading);line-height:1.2}
.uc-card>p{font-size:.92rem;color:var(--body);line-height:1.55;margin-top:10px}
.uc-stat{margin-top:auto;padding-top:18px;border-top:1px solid var(--border-2);display:flex;flex-direction:column;gap:3px}
.uc-stat .v{font-weight:800;font-size:1.1rem;color:var(--green-deep);letter-spacing:-.01em}
.uc-stat .l{font-family:var(--mono);font-size:.66rem;color:var(--muted)}
@media(max-width:880px){.uc-grid{grid-template-columns:1fr;max-width:520px}.uc-stat{margin-top:18px}}

/* Icon chip inside .cloud-card. The .pr-dark override only recolours it,
   so without this base rule the SVG has no box and stretches to card width. */
.cloud-card .ci{position:relative;z-index:1;flex:none;align-self:flex-start;width:44px;height:44px;border-radius:11px;background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.cloud-card .ci svg{width:22px;height:22px}

/* kit.css */
/* ===========================================================================
   InstaWP UI KIT — single source of component truth (green-skin)
   Load AFTER page styles. Two parts:
     1) tokens + canonical .k- classes (for new builds + ui-kit.html)
     2) NORMALIZATION LAYER — re-skins existing selectors to kit values,
        zero markup churn. One radius scale, one shadow family, one chip.
   =========================================================================== */

:root{
  /* ---- radius scale (the only rect radii allowed) ---- */
  --r-xs:8px;      /* rows · fields · micro-tiles · small chips-rect */
  --r-ic:10px;     /* icon tiles */
  --r-md:12px;     /* inner tiles · visual canvases · windows-in-windows */
  --r-lg:16px;     /* cards (the default surface) */
  --r-xl:20px;     /* large feature surfaces / stages */
  --r-pill:100px;  /* chips · badges · toggles */

  /* ---- elevation (one family, cool ink) ---- */
  --e1:0 1px 2px rgba(14,23,38,.04),0 10px 26px -16px rgba(14,23,38,.14);
  --e2:0 2px 4px rgba(14,23,38,.05),0 20px 48px -28px rgba(14,23,38,.24);
  --e3:0 4px 8px rgba(14,23,38,.06),0 34px 76px -34px rgba(14,23,38,.34);
  --ed2:0 24px 60px -28px rgba(0,0,0,.5);
  --ed3:0 50px 100px -40px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.06);
  --glow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(11,168,109,.25),0 10px 24px -8px rgba(17,191,133,.55);

  /* ---- surfaces ---- */
  --surf-card:#FFFFFF;
  --surf-canvas:radial-gradient(rgba(14,23,38,.05) 1px,transparent 1px) 0 0/18px 18px,linear-gradient(180deg,#F1F6F3,#F8FBFA);
  --surf-canvas-br:#E0E8E4;
  --surf-dark:#0E1A15;
  --surf-dark-br:rgba(255,255,255,.12);

  /* ---- icon tiles ---- */
  --ic-sm:28px;--ic-md:38px;

  /* ---- semantic accents (kit owns these; pages inherit) ---- */
  --pain:#E0584C;--pain-tint:#FBF4F2;--pain-border:#F0DAD4;--plasma-deep:#005E54;
}

/* ============================ 1 · CANONICAL KIT ============================ */
/* card — the default container */
.k-card{background:var(--surf-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:26px;box-shadow:var(--e1)}
.k-card.hoverable{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.k-card.hoverable:hover{transform:translateY(-2px);border-color:rgba(17,191,133,.35);box-shadow:var(--e2)}
/* large feature surface */
.k-surface{background:var(--surf-card);border:1px solid var(--border);border-radius:var(--r-xl);padding:30px;box-shadow:var(--e2)}
/* dark panel */
.k-card-dark{background:var(--surf-dark);border:1px solid var(--surf-dark-br);border-radius:var(--r-lg);padding:26px;box-shadow:var(--ed2);color:var(--dark-ink)}
/* inner illustration canvas (the dotted product surface) */
.k-canvas{background:var(--surf-canvas);border:1px solid var(--surf-canvas-br);border-radius:var(--r-md);padding:18px}
/* chip — mono pill (categories, specs) */
.k-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surf-card);font-family:var(--mono);font-size:.72rem;font-weight:500;color:var(--body)}
.k-chip svg{width:13px;height:13px;color:var(--green-deep)}
/* status badge — the only status treatment */
.k-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);font-family:var(--mono);font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.k-badge.live{background:var(--green-tint);color:var(--green-deep)}
.k-badge.soon{background:#FBF3E6;color:var(--amber-deep)}
.k-badge.brand{background:var(--green-tint);color:var(--green-deep)}
/* icon tile */
.k-ic{flex:none;width:var(--ic-md);height:var(--ic-md);border-radius:var(--r-ic);background:var(--green-tint);color:var(--green-deep);display:inline-flex;align-items:center;justify-content:center}
.k-ic svg{width:19px;height:19px}
.k-ic.sm{width:var(--ic-sm);height:var(--ic-sm);border-radius:var(--r-xs)}
.k-ic.sm svg{width:14px;height:14px}
.k-ic.plasma{background:var(--plasma-tint);color:var(--plasma)}
/* field */
.k-field{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-xs);padding:11px 14px;font-family:var(--mono);font-size:.9rem;color:var(--heading)}


/* ---- type utilities (see typography.html — the type law) ---- */
.k-display{font-family:var(--font);font-weight:800;font-size:clamp(2.7rem,6vw,4.6rem);line-height:1.05;letter-spacing:-.035em;color:var(--heading);text-wrap:balance}
.k-h2{font-family:var(--font);font-weight:800;font-size:clamp(1.9rem,3.6vw,2.7rem);line-height:1.12;letter-spacing:-.025em;color:var(--heading);text-wrap:balance}
.k-h3{font-family:var(--font);font-weight:800;font-size:1.22rem;line-height:1.25;letter-spacing:-.02em;color:var(--heading)}
.k-lede{font-size:1.12rem;line-height:1.6;color:var(--body);text-wrap:pretty}
.k-mono-md{font-family:var(--mono);font-size:.8rem;font-weight:500;color:var(--body)}
.k-mono-sm{font-family:var(--mono);font-size:.72rem;font-weight:500;color:var(--muted)}
.k-mono-xs{font-family:var(--mono);font-size:.62rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.k-num{font-variant-numeric:tabular-nums}
.on-dark .k-display,.on-dark .k-h2,.on-dark .k-h3{color:#F4F8F7}
.on-dark .k-lede{color:var(--dark-body)}


/* ==================== 1b · EXTENDED COMPONENTS (full element vocabulary) ====================
   Canonical versions of every element family used on index/pricing/blog.
   Legacy mapping noted per component on ui-kit.html. */
/* announce pill — hero news (dot pulse lives in page CSS, kit is static) */
.k-announce{display:inline-flex;align-items:center;gap:9px;padding:6px 14px 6px 12px;border-radius:var(--r-pill);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);font-size:.84rem;color:#EAF2EE}
.k-announce .dot{width:7px;height:7px;border-radius:50%;background:var(--green-x)}
.k-announce .arr{color:var(--green-x)}
/* workflow step — numbered chip + two-line label (flow-spine) */
.k-step{display:inline-flex;align-items:center;gap:11px;padding:10px 16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surf-card)}
.k-step .n{flex:none;width:24px;height:24px;border-radius:var(--r-xs);display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.74rem;font-weight:700;color:#042A1C;background:var(--green-bright)}
.k-step .tx{display:flex;flex-direction:column;line-height:1.16;text-align:left}
.k-step .tx b{font-weight:600;font-size:.95rem;color:var(--heading)}
.k-step .tx span{font-family:var(--mono);font-size:.71rem;color:var(--muted)}
/* status pill — live / sandbox / neutral (po-pill, st-live/park/test, plan chips) */
.k-status{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.62rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap}
.k-status i{width:6px;height:6px;border-radius:50%;background:currentColor}
.k-status.live{background:rgba(17,191,133,.12);color:var(--green-deep)}
.k-status.sandbox{background:rgba(224,138,30,.13);color:var(--amber-deep,#9C5304)}
.k-status.neutral{background:#EEF1F5;color:var(--muted)}
.on-dark .k-status.live,.k-status.dark-live{background:rgba(43,232,166,.14);color:var(--green-x);border:1px solid rgba(43,232,166,.4)}
/* tooltip — info icon + dark popover (pricing matrix) */
.k-tip{position:relative;display:inline-flex;cursor:help}
.k-tip>i{font-style:normal;font-family:var(--font);font-size:.6rem;font-weight:700;line-height:1;color:var(--muted);width:14px;height:14px;border:1px solid var(--border);border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.k-tip:hover>i{color:var(--green-deep);border-color:var(--green)}
.k-tipbox{position:absolute;bottom:calc(100% + 10px);left:50%;width:214px;background:var(--dark);color:var(--dark-ink);font-family:var(--font);font-size:.76rem;font-weight:400;line-height:1.4;padding:10px 13px;border-radius:var(--r-md);box-shadow:var(--ed2);opacity:0;visibility:hidden;transform:translateX(-50%) translateY(5px);transition:opacity .16s,transform .16s,visibility .16s;z-index:40;pointer-events:none;text-transform:none;letter-spacing:0}
.k-tipbox::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:var(--dark)}
.k-tip:hover .k-tipbox{opacity:1;visibility:visible;transform:translateX(-50%)}
/* toggle — sandbox→production switch */
.k-toggle{display:inline-flex;align-items:center;gap:10px;padding:6px 9px 6px 13px;border-radius:var(--r-pill);background:rgba(12,20,16,.88);border:1px solid rgba(255,255,255,.12)}
.k-toggle .lb{font-family:var(--mono);font-size:.64rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--amber-x,#F2B25A)}
.k-toggle .sw{width:36px;height:20px;border-radius:11px;background:rgba(224,138,30,.55);position:relative;flex:none}
.k-toggle .sw i{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.3);transition:transform .3s}
.k-toggle.prod .lb{color:var(--green-x)}
.k-toggle.prod .sw{background:var(--green-bright)}
.k-toggle.prod .sw i{transform:translateX(16px)}
/* browser bar + window (demo frame, WaaS windows) */
.k-window{border-radius:var(--r-md);overflow:hidden;border:1px solid var(--border);background:var(--surf-card);box-shadow:var(--e1)}
.k-winbar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#FBFCFE;border-bottom:1px solid var(--border-2)}
.k-winbar .d{width:9px;height:9px;border-radius:50%;background:#E2E8F0}
.k-url{margin-left:6px;flex:1;display:inline-flex;align-items:center;gap:7px;height:26px;padding:0 11px;border-radius:var(--r-xs);background:var(--bg);border:1px solid var(--border-2);font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.k-url.live{border-color:rgba(17,191,133,.45);color:var(--heading)}
.k-url .lock{width:11px;height:11px;flex:none;color:var(--green)}
.k-window.dark{background:var(--surf-dark);border-color:var(--surf-dark-br);box-shadow:var(--ed2)}
.k-window.dark .k-winbar{background:rgba(255,255,255,.03);border-bottom-color:rgba(255,255,255,.07)}
.k-window.dark .k-winbar .d{background:rgba(255,255,255,.16)}
.k-window.dark .k-url{background:rgba(0,0,0,.28);border-color:rgba(255,255,255,.07);color:rgba(234,242,238,.8)}
/* terminal block */
.k-term{border-radius:var(--r-md);background:#0A1110;border:1px solid var(--surf-dark-br);box-shadow:var(--ed2);font-family:var(--mono);font-size:.76rem;line-height:1.9;padding:16px 18px;color:rgba(234,242,238,.62)}
.k-term .ln b{color:var(--green-x);font-weight:600}
.k-term .ln .c{color:rgba(234,242,238,.34)}
.k-term .ok{color:var(--green-x)}
/* chat bubble — agent conversation (InstaMCP card) */
.k-chat{border-radius:var(--r-md);background:var(--surf-card);border:1px solid var(--border);padding:14px 16px;box-shadow:var(--e1)}
.k-chat .q{color:var(--heading);background:var(--green-tint);border-radius:var(--r-xs);padding:9px 12px;font-size:.84rem}
.k-chat .a{margin-top:10px;color:var(--body);font-family:var(--mono);font-size:.72rem;line-height:1.7}
.k-chat .a .ok{color:var(--green-deep)}
/* list/bill row — name · status · value (meter, manage rows) */
.k-listrow{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 16px;border:1px solid var(--border-2);border-radius:var(--r-xs);background:var(--surf-card)}
.k-listrow .nm{font-family:var(--mono);font-size:.78rem;color:var(--heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.k-listrow .val{font-family:var(--mono);font-weight:700;font-size:.8rem;color:var(--heading);font-variant-numeric:tabular-nums}
/* checklist item (every-plan grid) */
.k-check{display:flex;gap:12px;align-items:flex-start}
.k-check .ck{flex:none;width:22px;height:22px;border-radius:var(--r-xs);background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center;margin-top:1px}
.k-check .ck svg{width:13px;height:13px}
.k-check .t{font-size:.9rem;color:var(--heading);font-weight:600;line-height:1.3}
.k-check .d{font-size:.82rem;color:var(--muted);margin-top:3px;line-height:1.4}
/* callouts (blog) */
.k-callout{border-radius:var(--r-md);padding:14px 18px;font-size:.92rem;line-height:1.6;border:1px solid;display:flex;gap:11px;align-items:flex-start}
.k-callout b{font-weight:700}
.k-callout.tip{background:var(--green-tint);border-color:rgba(17,191,133,.25);color:var(--green-deep)}
.k-callout.warn{background:#FBF3E6;border-color:rgba(224,138,30,.3);color:var(--amber-deep,#9C5304)}
.k-callout.ai{background:var(--plasma-tint);border-color:rgba(0,94,84,.22);color:var(--plasma)}
/* faq accordion */
.k-faq{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);padding:4px 0}
.k-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;font-weight:600;color:var(--heading);font-size:.98rem}
.k-faq summary::after{content:"+";font-family:var(--mono);color:var(--muted);font-size:1rem}
.k-faq[open] summary::after{content:"−"}
.k-faq .bd{padding:0 20px 16px;font-size:.88rem;color:var(--body);line-height:1.6}
/* filter pill (blog) */
.k-pill{display:inline-flex;align-items:center;padding:7px 15px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surf-card);font-size:.84rem;font-weight:500;color:var(--body);cursor:pointer;transition:border-color .15s,color .15s}
.k-pill:hover{border-color:rgba(17,191,133,.4);color:var(--heading)}
.k-pill.on{background:var(--dark);border-color:var(--dark);color:#EAF2EE}
/* pager */
.k-pager{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:.78rem}
.k-pager a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 10px;border-radius:var(--r-xs);border:1px solid var(--border);background:var(--surf-card);color:var(--body)}
.k-pager a:hover{border-color:rgba(17,191,133,.4);color:var(--heading)}
.k-pager a.on{background:var(--green-bright);border-color:var(--green-bright);color:#042A1C;font-weight:700}
/* breadcrumb */
.k-crumb{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:.74rem;color:var(--muted)}
.k-crumb a:hover{color:var(--green-deep)}
.k-crumb .sep{opacity:.5}
.k-crumb .here{color:var(--heading)}
/* proof stat */
.k-stat{font-family:var(--mono);font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}
.k-stat b{color:var(--heading);font-weight:600}
/* arrow link */
.k-link{font-family:var(--mono);font-size:.8rem;font-weight:600;color:var(--green-deep)}
.k-link:hover{color:var(--green)}
/* dark CTA banner (mid-cta) */
.k-banner{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:24px 28px;border-radius:var(--r-lg);background:linear-gradient(120deg,var(--dark),var(--dark-2,#112019))}
.k-banner::before{content:'';position:absolute;width:460px;height:240px;top:-120px;right:-70px;border-radius:50%;filter:blur(64px);background:radial-gradient(circle,rgba(43,232,166,.26),transparent 70%);pointer-events:none}
.k-banner .tx{position:relative;display:flex;flex-direction:column;gap:4px}
.k-banner .tx b{font-weight:800;font-size:1.2rem;letter-spacing:-.02em;color:#F4F8F7}
.k-banner .tx span{font-family:var(--mono);font-size:.76rem;color:var(--dark-body,rgba(234,242,238,.62))}
.k-banner .act{position:relative;display:flex;align-items:center;gap:18px}
/* tinted accent band (sandbox bar) */
.k-band{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:linear-gradient(100deg,rgba(224,138,30,.06),var(--surf-card) 60%);border:1px solid rgba(224,138,30,.26);border-radius:var(--r-lg);padding:22px 26px}
/* amber action (sandbox CTA) */
.btn-amber{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:var(--r-md);border:0;background:#F5921A;color:#2A1705;font-weight:700;font-size:.94rem;white-space:nowrap;font-family:var(--font);cursor:pointer;box-shadow:0 1px 2px rgba(245,146,26,.32),0 10px 24px -8px rgba(245,146,26,.55);transition:background .2s,transform .18s}
.btn-amber:hover{background:#FFA02A;transform:translateY(-1px)}

/* ========================= 2 · NORMALIZATION LAYER ========================= */
/* ---- cards → r-lg + e1 (hover e2, lift −2px) ---- */
.uc-sec .spot,.sec05 .beat,.sec03 .mid-cta,.cmp,.sec05 .mail,.uc-sec .uc-partner{border-radius:var(--r-lg)}
.uc-sec .spot,.sec05 .beat.react{box-shadow:var(--e1)}
.sec05 .beat.proact{box-shadow:var(--ed2)}
.sec05 .beat.proact:hover{box-shadow:var(--ed2)}
.cmp{box-shadow:var(--e2)}
.uc-sec .spot:hover,.sec05 .beat:hover{transform:translateY(-2px);border-color:rgba(17,191,133,.35);box-shadow:var(--e2)}
/* dark cards */
.demo,.crd{border-radius:var(--r-lg)}
.demo{box-shadow:var(--ed3)}
/* ---- large surfaces → r-xl + e2 (panel === stage; agents panel is the dark one → ed2) ---- */
.panel,.sec06 .stage{border-radius:var(--r-xl)}
.panel,.panel.humans,.sec06 .stage{box-shadow:var(--e2)}
.panel.agents{box-shadow:var(--ed2)}
.panel:hover,.panel.humans:hover{transform:translateY(-2px);box-shadow:var(--e3)}
.panel.agents:hover{box-shadow:var(--ed2)}
.sec06 .win{box-shadow:var(--e1)}
.sec06 .win:hover{transform:translateY(-2px);border-color:rgba(17,191,133,.35);box-shadow:var(--e2)}
/* ---- inner tiles & windows → r-md ---- */
.uc-sec .spot-vis,.uc-sec .syn-box,.uc-sec .mig-from,.uc-sec .mig-to,.uc-sec .tpl-bp,.sec05 .sent-row,.sec06 .win,.panel-ic,.sec03 .po-pill,.sec05 .mmsg.reply,.uc-sec .bub{border-radius:var(--r-md)}
.uc-sec .bub.user{border-bottom-right-radius:var(--r-xs)}
.uc-sec .bub.bot{border-bottom-left-radius:var(--r-xs)}
.uc-sec .tpl-bp{box-shadow:var(--e1)}
/* ---- micro rows / fields / shots → r-xs ---- */
.crd .field,.crd .chips span,.uc-sec .mng-r,.uc-sec .syn-diff,.sec05 .mail-bar .ch,.sec05 .sent-row .si,.uc-sec .mng-btn,.uc-sec .syn-diff .ic,.sec03 .po-pill .pi,.flow-spine .fs-n,.sec03 .feat-pts .ck,.incl .ck{border-radius:var(--r-xs)}
/* ---- legacy sweep: demo/hero internals on-scale ---- */
.ic-tile,.dmo-card,.bk-point,.sh-row,.mega-rail{border-radius:var(--r-md)}
.navlink,.acc-bd a{border-radius:var(--r-xs)}
/* ---- icon tiles → r-ic ---- */
.tool .ti,.uc-sec .tpl-bp .ic{border-radius:var(--r-ic)}
/* ---- tags & badges → one pill language ---- */
.badge,.sec03 .vis-cap .badge,.uc-sec .badge-brand,.uc-sec .badge-soon,.sec05 .beat-tag,.uc-sec .mng-r .tag,.uc-sec .tpl-chips span,.uc-sec .spot-tags span{border-radius:var(--r-pill);letter-spacing:.08em;font-weight:600}
/* ---- buttons → r-md (12, matches sec07) ---- */
.btn,.drawer-cta .login,.sec06 .rsl-cta,.uc-sec .uc-foot a{border-radius:var(--r-md)}
/* ---- primary CTA glow consolidated ---- */
.btn-primary{box-shadow:var(--glow)}

/* dark-band guard: hovers stay calm (no decorative motion beyond lift) */
@media(prefers-reduced-motion:reduce){
  .k-card.hoverable:hover,.uc-sec .spot:hover,.sec05 .beat:hover,.panel:hover,.panel.humans:hover,.sec06 .win:hover{transform:none}
}

/* ===== cross-page normalization: pricing · platform · feature · blog ===== */
/* cards → r-lg (+ e1 for floating cards; bands stay flat) */
.uc-card,.door,.cloud-card,.sandbox-bar{border-radius:var(--r-lg)}
.uc-card,.door,.cloud-card{box-shadow:var(--e1)}
/* big surface → r-xl + e2 */
.pmtx{border-radius:var(--r-xl);box-shadow:var(--e2)}
/* windows · stages · terminals · faq item · tooltip · search → r-md */
.pm-stage,.mig-strip,.proofline .pf,.term,.demo-succ,.wf-box .cmp,.pmtx .tipbox,.faq-i,.search{border-radius:var(--r-md)}
/* icon tiles → r-ic */
.incl2 .it .ico,.uc-ic,.bprow .bi{border-radius:var(--r-ic)}
/* micro · fields · check tiles · social → r-xs */
.incl-grid .ic .ck,.wf-tag .n,.news .nw-form input,.search .clear,.author-social a,.foot-social a{border-radius:var(--r-xs)}
/* tags & badges → pill */
.cloud-card .cc-tag,.ov-new,.ov-soon,.ml-live,.ml-soon,.foot-col .tag,.cat-pill{border-radius:var(--r-pill)}

/* ===== blog article components (blog-detail inline) ===== */
.recap{border-radius:var(--r-lg)}
.callout,.toc{border-radius:var(--r-md)}
.rcard .thumb{border-radius:var(--r-md)}
.code-bar .lang,.callout.ai .co-badge{border-radius:var(--r-pill)}
.callout .co-ic{border-radius:var(--r-ic)}
.copy,details.faq summary .q-ic{border-radius:var(--r-xs)}

/* ===== #7 · canonical mobile section-padding guard =====
   Standard marketing pages keep their full 132px desktop section rhythm on
   phones today (no guard), leaving ~264px dead gaps. This single rule tightens
   the section rhythm under 600px. The `body ` prefix lifts specificity to 0,0,1,1
   so it beats each page's inline `.pr-sec{padding:132px 0}` regardless of source
   order. Targets ONLY the standard section classes — the bespoke editorial pages
   (.ap-hero/.cv-page/.pv-page, agency-program/reselling/about/platform) use none
   of these, so their intentional clamp rhythm is untouched. */
@media(max-width:600px){
  body .fhero{padding:96px 0 56px}
  body .ahero{padding:96px 0 56px}
  body .pr-sec{padding:78px 0}
  body .pr-cta{padding:88px 0 80px}
}

/* ============ Agency proof wall (uniform monochrome logo board, 2 balanced rows) ============ */
.ag-strip{background:var(--dark,#0B1410);padding:64px 0;position:relative}
.ag-strip .wrap{max-width:1200px}
.ag-board{background:#F5F8F6;border-radius:22px;padding:44px 46px;box-shadow:0 24px 60px -28px rgba(0,0,0,.55)}
.ag-strip-label{display:flex;align-items:center;justify-content:center;gap:9px;text-align:center;font-family:var(--mono);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:#5d6e65;margin:0 0 30px}
.ag-strip-label .dot{width:6px;height:6px;border-radius:50%;background:var(--green-bright,#11BF85);flex:none}
.ag-row{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:22px 30px;margin-bottom:30px}
.ag-row:last-child{margin-bottom:0}
.ag-row img{height:23px;width:auto;display:block;filter:brightness(0);opacity:.5;transition:opacity .2s,filter .2s}
.ag-row img:hover{opacity:1;filter:none}
.ag-row img[data-wide]{height:18px}
.ag-row img[data-chip]{height:31px;filter:grayscale(1);opacity:.74}
@media(max-width:980px){.ag-row{flex-wrap:wrap;gap:20px 26px}}
@media(max-width:680px){.ag-strip{padding:46px 0}.ag-board{padding:30px 20px;border-radius:16px}.ag-row{gap:18px 22px;margin-bottom:22px}.ag-row img{height:20px}.ag-row img[data-chip]{height:27px}}

/* ===== proofstrip — shared proof / number band =====================================
   Promoted from per-page <style> blocks (17 pages) 2026-07-01. Default = 4-col, 36px
   cells, 1.85rem value. Modifiers (add to the .proofstrip element): .cols-5 (5-col),
   .v17 (1.7rem value), .v15 (1.5rem value), .l6 (label margin-top 6px), .llh (label
   line-height 1.4). See DESIGN.md §5 + DESIGN-DRIFT-REPORT.md. */
.proofstrip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--white)}
.proofstrip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:var(--maxw)}
.proofstrip .ps{padding:36px 18px;text-align:center;border-left:1px solid var(--border-2)}
.proofstrip .ps:first-child{border-left:none}
.proofstrip .v{font-size:1.85rem;font-weight:800;letter-spacing:-.02em;color:var(--heading)}
.proofstrip .v small{font-family:var(--mono);font-size:.6rem;font-weight:500;color:var(--muted)}
.proofstrip .l{font-family:var(--mono);font-size:.66rem;color:var(--muted);margin-top:4px}
.proofstrip.cols-5 .wrap{grid-template-columns:repeat(5,1fr)}
.proofstrip.v17 .v{font-size:1.7rem}
.proofstrip.v15 .v{font-size:1.5rem;line-height:1.15}
.proofstrip.l6 .l{margin-top:6px}
.proofstrip.llh .l{line-height:1.4}
@media(max-width:700px){.proofstrip .wrap,.proofstrip.cols-5 .wrap{grid-template-columns:repeat(2,1fr)}.proofstrip .ps:nth-child(odd){border-left:none}.proofstrip.cols-5 .ps:nth-child(5){grid-column:1/-1}}

/* ===== explore grid — "Explore the platform" cards + whole-platform / AI band =======
   Promoted from per-page <style> (13 feature pages) 2026-07-01. Modifier: .mt7 on the
   .fgrid bumps card-paragraph margin-top to 7px (snapshots/templates/waas). ai-features
   keeps a local copy (divergent 14px radius + hover shadow — revisit in normalize pass).
   See DESIGN-DRIFT-REPORT.md. */
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:14px;max-width:var(--maxw);margin:0 auto}
.fcard{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--border);border-radius:var(--r-lg);padding:18px 20px;background:var(--white);box-shadow:var(--e1);transition:border-color .15s,transform .15s,box-shadow .15s}
.fcard:hover{border-color:rgba(17,191,133,.45);transform:translateY(-2px);box-shadow:var(--e2)}
.fcard .fi{width:38px;height:38px;border-radius:10px;background:var(--tint);border:1px solid var(--border);color:var(--green-deep);display:flex;align-items:center;justify-content:center;flex:none}
.fcard .fi svg{width:20px;height:20px}
.fcard h4{font-size:1rem;font-weight:700;letter-spacing:-.01em;color:var(--heading);display:flex;align-items:center;gap:7px}
.fcard h4 .ar{color:var(--green-deep);font-family:var(--mono);transition:transform .15s}
.fcard:hover h4 .ar{transform:translateX(3px)}
.fcard p{font-size:.83rem;color:var(--body);margin-top:4px;line-height:1.45}
.fcard.all{border-style:dashed}
.fgrid.mt7 .fcard p{margin-top:7px}
.fall{display:flex;align-items:center;gap:18px;margin-top:14px;padding:22px 26px;border:1px solid rgba(17,191,133,.3);border-radius:var(--r-lg);background:linear-gradient(120deg,var(--green-tint),var(--white) 70%);box-shadow:var(--e1);text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.fall:hover{border-color:rgba(17,191,133,.55);transform:translateY(-2px);box-shadow:var(--e2)}
.fall .fi{flex:none;width:46px;height:46px;border-radius:var(--r-md);background:var(--white);border:1px solid var(--border);color:var(--green-deep);display:flex;align-items:center;justify-content:center}
.fall .fi svg{width:24px;height:24px}
.fall .fall-tx{flex:1;min-width:0}
.fall .fall-tx h4{font-size:1.12rem;font-weight:800;letter-spacing:-.02em;color:var(--heading)}
.fall .fall-tx p{font-size:.9rem;color:var(--muted);margin-top:2px}
.fall .fall-go{flex:none;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.92rem;color:var(--green-deep);background:var(--white);border:1px solid rgba(17,191,133,.4);border-radius:var(--r-pill);padding:9px 16px;transition:gap .15s ease}
.fall:hover .fall-go{gap:12px}
.fall-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.fall-row .fall{margin-top:0}
.fall-ai{background:linear-gradient(120deg,rgba(17,191,133,.16),rgba(17,191,133,.04) 58%,var(--white))}
.fall-ai .fi{background:linear-gradient(135deg,var(--green-bright),var(--green-deep));border-color:transparent;color:#fff}
@media(max-width:760px){.fall-row{grid-template-columns:1fr}}
@media(max-width:620px){.fall{flex-direction:column;align-items:flex-start}.fall .fall-go{align-self:stretch;justify-content:center}}

/* ===== fr-row — alternating text / art section rows (core) ==========================
   Promoted from per-page <style> (9 feature pages) 2026-07-01. Page-specific extras stay
   inline where used: .fr-art .dv-term (terminal), .fr-k .live (badge), .fr-tx p code,
   .fr-art.dm-art-dark. portal.html keeps its own copy (bare .fr-art). See DRIFT-REPORT. */
.fr-row{display:grid;grid-template-columns:1.02fr .98fr;gap:54px;align-items:center}
.fr-row:nth-child(even) .fr-tx{order:2}
.fr-row:nth-child(even) .fr-art{order:1}
.fr-k{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--green-deep);font-weight:600;margin-bottom:16px}
.fr-k .ki{width:30px;height:30px;border-radius:var(--r-ic);background:var(--green-tint);color:var(--green-deep);display:flex;align-items:center;justify-content:center;flex:none}
.fr-k .ki svg{width:16px;height:16px}
.fr-k .kn{color:var(--muted)}
.fr-tx h3{font-size:1.62rem;font-weight:800;letter-spacing:-.025em;color:var(--heading);line-height:1.12}
.fr-tx p{font-size:1.02rem;color:var(--body);line-height:1.62;margin-top:14px;max-width:48ch}
.fr-specs{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.fr-specs span{font-family:var(--mono);font-size:.69rem;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-pill);padding:5px 11px}
.fr-art{position:relative;background:var(--surf-canvas);border:1px solid var(--surf-canvas-br);border-radius:var(--r-xl);box-shadow:var(--e1);min-height:300px;padding:24px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.fr-tail{margin-top:70px;border-top:1px solid var(--border);padding-top:40px}
.fr-tail .tl-h{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:26px}
@media(max-width:860px){.fr-row{grid-template-columns:minmax(0,1fr);gap:28px}.fr-row>*{min-width:0}.fr-row:nth-child(even) .fr-tx{order:0}.fr-row:nth-child(even) .fr-art{order:0}}

/* ===== cmp — comparison / vs-table (NORMALIZED 2026-07-01) =========================
   Unified on the homepage's ✓/✗ dual-marker: green ✓ circle on the InstaWP column
   (.cmp-col.good), grey ✕ circle on each competitor cell (.cmp-col:not(.cmp-us)).
   Used by all marketing tables (feature pages, homepage, tastewp, integrations).
   Homepage keeps its 64px top gap via a 1-line inline override; blog.css .cmp is
   scoped to .post-body so blog posts keep their own table. See DESIGN.md §5.9. */
.cmp{margin-top:8px;background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--e2);max-width:980px;margin-left:auto;margin-right:auto}
.cmp-row{display:grid;grid-template-columns:1.7fr 1fr 1fr;align-items:center;padding:15px 24px;border-top:1px solid var(--border-2)}
.cmp-row:first-child{border-top:0}
.cmp-head{background:#FBFCFE;font-family:var(--mono);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.cmp-head .cmp-us{color:var(--green-deep)}
.cmp-feat{display:flex;align-items:center;gap:11px;font-weight:600;color:var(--heading);font-size:1rem}
.cmp-feat svg{width:18px;height:18px;color:var(--muted);flex:none}
.cmp-col{font-size:.94rem;color:var(--muted)}
.cmp-us{padding-left:18px;border-left:1px solid var(--border-2)}
.cmp-row:not(.cmp-head):hover{background:#FAFCFE}
.cmp-col.good{color:var(--green-deep);font-weight:600;display:flex;align-items:center;gap:8px}
.cmp-col.good::before{content:'✓';display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--green-bright);color:#042A1C;font-weight:700;font-size:.62rem;flex:none}
.cmp-row:not(.cmp-head) .cmp-col:not(.cmp-us):not(.good){display:flex;align-items:center;gap:8px}
.cmp-row:not(.cmp-head) .cmp-col:not(.cmp-us):not(.good)::before{content:'✕';display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#EEF1F5;color:#A6B0BC;font-weight:700;font-size:.6rem;flex:none}
@media(max-width:620px){.cmp-row{grid-template-columns:1.5fr .9fr .9fr;padding:13px 16px;font-size:.88rem}.cmp-feat{font-size:.9rem;gap:8px}.cmp-feat svg{display:none}}

/* ===== ahero — use-case LIGHT hero (canonical; was 4× inline copies) ================
   Agencies / AI Builders / Hosting Cos / Plugin-Theme Cos. Light green-tint→white
   hero, 2-col (copy + product-UI panel). Reads per-page accent tokens (--mp/--mbg).
   Normalized from 4 near-identical copies to one block (grid 1.02/.98, h1 max 3.7rem,
   sub 54ch — deltas were sub-perceptual). Mobile: single-col at 920px; the <600px
   padding guard lives in the #7 block above. Dark migration is a separate track. */
.ahero{background:linear-gradient(170deg,var(--mbg),#fff 78%);padding:144px 0 116px;position:relative;overflow:hidden}
.ahero .wrap{display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center;max-width:var(--maxw)}
.ahero .crumb{font-family:var(--mono);font-size:.7rem;color:var(--muted);margin-bottom:16px}
.ahero .crumb a{color:var(--mp)}
.ahero h1{font-size:clamp(2.4rem,4.8vw,3.7rem);font-weight:800;letter-spacing:-.03em;line-height:1.08;color:var(--heading)}
.ahero h1 .ac{color:var(--mp)}
.ahero .sub{font-size:1.16rem;color:var(--body);line-height:1.6;margin-top:24px;max-width:54ch}
.ahero .sub b{color:var(--heading);font-weight:700}
.ahero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px}
@media(max-width:920px){.ahero .wrap{grid-template-columns:1fr;gap:36px}}

/* testimonials.css */
/* ============================================================
   testimonials.css - layouts for the testimonial component.
   Rendered by testimonials.js from testimonials.json into [data-tm] mounts.
   Uses the shared design tokens defined in style.css / kit.css.
   ============================================================ */

/* shared bits */
.tm-q{font-family:var(--font);font-size:.98rem;line-height:1.5;color:var(--heading);font-weight:500}
.tm-stars{display:inline-flex;gap:2px;color:var(--green-bright)}
.tm-stars svg{width:15px;height:15px;display:block}
.tm-mg{flex:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font);font-weight:700;font-size:.9rem}
.tm-av{flex:none;width:40px;height:40px;border-radius:50%;object-fit:cover;display:block;background:var(--green-tint)}
/* brand-logo stand-in when a reviewer has no headshot: contain the mark, don't crop it */
.tm-lg{display:flex;align-items:center;justify-content:center;padding:5px;background:var(--white);box-shadow:inset 0 0 0 1px var(--border)}
.tm-lg img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.tm-mg-green{background:var(--green-tint);color:var(--green-deep)}
.tm-mg-amber{background:#FBEBD7;color:var(--amber-deep)}
.tm-mg-slate{background:#EEF1F5;color:#46566B}
.tm-chip,.tm-chiprow .tm-chip{display:inline-flex;align-items:center;font-family:var(--mono);font-size:.68rem;font-weight:600;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.18);padding:4px 9px;border-radius:7px}
.tm-nm{font-family:var(--font);font-weight:700;font-size:.9rem;color:var(--heading);line-height:1.2}
.tm-rl{font-size:.78rem;color:var(--muted)}
.tm-story{display:inline-flex;align-items:center;gap:5px;margin-top:13px;font-size:.82rem;font-weight:600;color:var(--green-deep);text-decoration:none}
.tm-story span{transition:transform .15s}.tm-story:hover span{transform:translateX(3px)}
.tm-src{font-family:var(--mono);font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}

/* A - quote cards (3-col grid) */
.tm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tm-cards .tm-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--border);border-radius:16px;padding:22px}
.tm-cards .tm-q{flex:1}
.tm-cards .tm-chiprow{margin:16px 0 14px}
.tm-cards .tm-who{display:flex;align-items:center;gap:11px;border-top:1px solid var(--border-2);padding-top:14px;margin-top:14px}
.tm-cards .tm-card:has(.tm-chiprow) .tm-who{margin-top:0}

/* B - featured flagship (self-dark split) */
.tm-flagship{display:grid;grid-template-columns:1.4fr .9fr;gap:30px;align-items:center;background:linear-gradient(120deg,#0B1410,#13211b);border-radius:18px;padding:38px 36px;color:var(--dark-ink)}
.tm-flagship:not(:has(.tm-flag-metric)){grid-template-columns:1fr}
.tm-flag-main{min-width:0}
.tm-flag-q{font-family:var(--font);font-size:1.5rem;line-height:1.32;font-weight:600;letter-spacing:-.01em;text-wrap:balance;color:var(--dark-ink)}
.tm-flag-who{display:flex;align-items:center;gap:12px;margin-top:22px}
.tm-flagship .tm-nm{color:#fff}.tm-flagship .tm-rl{color:var(--dark-body)}
.tm-flagship .tm-mg-green{background:rgba(43,232,166,.16);color:var(--green-x)}
.tm-flag-metric{text-align:center;background:rgba(43,232,166,.08);border:1px solid rgba(43,232,166,.22);border-radius:16px;padding:26px 18px}
.tm-flag-big{font-family:var(--font);font-size:2.9rem;font-weight:800;letter-spacing:-.03em;color:var(--green-x);line-height:1}
.tm-flag-cap{font-family:var(--mono);font-size:.7rem;color:var(--dark-body);margin-top:8px;text-transform:uppercase;letter-spacing:.06em}

/* C - metric-led cards */
.tm-metric{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tm-mcard{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:24px;border-top:3px solid var(--green-bright)}
.tm-big{font-family:var(--font);font-size:2.3rem;font-weight:800;letter-spacing:-.03em;color:var(--heading);line-height:1}
.tm-cap{font-family:var(--mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;color:var(--green-deep);margin:7px 0 15px}
.tm-who2{margin-top:14px;font-size:.8rem;color:var(--muted)}.tm-who2 b{color:var(--heading)}

/* D - wall of love (masonry columns) */
.tm-wall{column-count:3;column-gap:16px}
.tm-wall .tm-wcard{break-inside:avoid;margin-bottom:16px;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:18px}
.tm-wall .tm-wcard.tp{background:#F4FBF7;border-color:rgba(17,191,133,.2)}
.tm-wall .tm-q{font-size:.9rem;margin:0 0 13px}
.tm-wall .tm-chiprow{margin-bottom:11px}
.tm-wall .tm-who{display:flex;align-items:center;gap:9px}

/* E - compact strip */
.tm-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--white)}
.tm-strip .tm-scard{padding:20px 22px}
.tm-strip .tm-scard + .tm-scard{border-left:1px solid var(--border-2)}
.tm-strip .tm-stars{margin-bottom:9px}
.tm-strip .tm-q{font-size:.92rem;line-height:1.45}
.tm-who3{margin-top:11px;font-size:.76rem;color:var(--muted)}.tm-who3 b{color:var(--heading)}
/* strip polish: initials avatar + decorative quote mark so cards are not flat (feedback 21816 / 21875) */
.tm-strip .tm-who3{display:flex;align-items:center;gap:10px;margin-top:14px}
.tm-strip .tm-who3 > div{min-width:0}
.tm-strip .tm-who3 b{display:block;line-height:1.25}
.tm-who3-l{display:block;font-size:.72rem;color:var(--muted)}
.tm-strip .tm-mg,.tm-strip .tm-av{width:36px;height:36px;font-size:.8rem}
.tm-strip .tm-scard{position:relative}
.tm-strip .tm-scard .tm-q{padding-top:16px}
.tm-strip .tm-scard .tm-q::before{content:'\201C';position:absolute;margin-top:-24px;margin-left:-2px;font-family:Georgia,serif;font-size:2.2rem;line-height:1;color:var(--green-x);opacity:.32}

/* F - inline pull-quote (editorial: big quote + hairline-rule attribution, no bar/avatar) */
.tm-inline{max-width:880px}
.tm-iq{font-family:var(--font);font-size:clamp(1.5rem,2.7vw,2rem);line-height:1.3;font-weight:600;letter-spacing:-.022em;color:var(--heading);text-wrap:balance}
.tm-hl{color:var(--green-deep)}
.tm-iat{display:flex;align-items:center;gap:11px;margin-top:24px;padding-top:18px;border-top:1px solid var(--border);flex-wrap:wrap}
.tm-iat b{color:var(--heading);font-weight:700;font-size:.95rem}
.tm-idot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--green-bright)}
.tm-iav{width:42px;height:42px;box-shadow:0 0 0 2px var(--white),0 0 0 3px rgba(11,168,109,.22)}
.tm-irole{color:var(--muted);font-size:.86rem}
.tm-i-metric{margin-left:auto;font-family:var(--mono);font-size:.7rem;font-weight:600;color:var(--green-deep);background:var(--green-tint);border:1px solid rgba(11,168,109,.18);padding:5px 10px;border-radius:7px;white-space:nowrap}
.tm-inline.tm-on-dark .tm-iq{color:var(--dark-ink)}
.tm-inline.tm-on-dark .tm-hl{color:var(--green-x)}
.tm-inline.tm-on-dark .tm-iat{border-top-color:rgba(255,255,255,.14)}
.tm-inline.tm-on-dark .tm-iat b{color:#fff}
.tm-inline.tm-on-dark .tm-irole{color:var(--dark-body)}
.tm-inline.tm-on-dark .tm-idot{background:var(--green-x)}
.tm-inline.tm-on-dark .tm-iav{box-shadow:0 0 0 2px rgba(255,255,255,.14),0 0 0 3px rgba(43,232,166,.28)}
.tm-inline.tm-on-dark .tm-i-metric{color:var(--green-x);background:rgba(43,232,166,.1);border-color:rgba(43,232,166,.25)}

/* H - auto-advancing slider (N equal tiles per slide + dot controls) */
.tm-slider{position:relative}
.tm-sl-vp{overflow:hidden}
.tm-sl-track{display:flex;will-change:transform;transition:transform .55s cubic-bezier(.4,.02,.2,1)}
.tm-sl-slide{flex:0 0 100%;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
/* gradient boundary: the fill paints to the padding box, the gradient ring to the border box.
   Wide dark-to-bright sweep so it reads as a gradient, not as a flat teal border. */
.tm-sl-card{position:relative;display:flex;flex-direction:column;min-height:236px;padding:24px 22px 20px;border:3px solid transparent;border-radius:18px;
  background:linear-gradient(160deg,var(--white) 0%,var(--white) 46%,#EDFAF4 100%) padding-box,
             linear-gradient(135deg,var(--green-deep) 0%,var(--green-bright) 26%,var(--green-x) 50%,var(--cyan) 74%,var(--green-deep) 100%) border-box;
  box-shadow:0 2px 4px rgba(14,23,38,.05),0 16px 32px -22px rgba(10,122,80,.55)}
.tm-sl-card .tm-q{flex:1;font-size:.94rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.tm-qm{color:var(--green-bright);font-family:Georgia,serif;font-size:1.15em;line-height:0;vertical-align:-.14em}
.tm-sl-card .tm-chiprow{display:flex;align-items:center;min-height:26px;margin:14px 0 0}  /* always present so every tile is identical */
.tm-sl-card .tm-who3{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-2)}
.tm-sl-card .tm-who3 > div{min-width:0}
.tm-sl-card .tm-who3 b{display:block;line-height:1.25}
.tm-sl-card .tm-mg,.tm-sl-card .tm-av{width:38px;height:38px;font-size:.82rem}
.tm-sl-card .tm-story{margin-top:13px;font-size:.8rem}
.tm-sl-dots{display:flex;justify-content:center;gap:9px;margin-top:22px}
.tm-sl-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(10,122,80,.22);cursor:pointer;transition:width .25s,background .25s}
.tm-sl-dot:hover{background:rgba(10,122,80,.42)}
.tm-sl-dot.is-on{width:26px;border-radius:5px;background:linear-gradient(90deg,var(--green),var(--green-bright))}
.tm-sl-dot:focus-visible{outline:2px solid var(--green-deep);outline-offset:3px}

/* G - trustpilot review cards */
.tm-trustpilot{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tm-tpcard{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:18px}
.tm-tptop{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
.tm-tpbadge{font-family:var(--mono);font-size:.6rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.tm-tpcard .tm-q{font-size:.92rem;margin-bottom:12px}

/* homepage testimonial bands (section wrappers) */
.tm-band{padding:38px 0;background:var(--bg)}
.tm-band-soft{background:var(--green-tint)}
.tm-band .tm-inline{margin:0 auto}
.tm-bandh{text-align:center;font-family:var(--font);font-weight:800;font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.02em;color:var(--heading);margin-bottom:28px;text-wrap:balance}
.tm-bandsub{text-align:center;margin-top:22px}
.tm-bandsub a{color:var(--green-deep);font-weight:600;text-decoration:none}

@media(prefers-reduced-motion:reduce){
  .tm-sl-track{transition:none}
  .tm-sl-dot{transition:none}
}

@media(max-width:980px){ .tm-sl-slide{grid-template-columns:repeat(2,1fr)} }
@media(max-width:640px){
  .tm-sl-slide{grid-template-columns:1fr}
  .tm-sl-card{min-height:0}
  /* one card per slide means many more dots, so shrink and let them wrap */
  .tm-sl-dots{flex-wrap:wrap;gap:7px}
  .tm-sl-dot{width:7px;height:7px}
  .tm-sl-dot.is-on{width:20px}
}

@media(max-width:820px){
  .tm-cards,.tm-metric,.tm-trustpilot{grid-template-columns:1fr}
  .tm-strip{grid-template-columns:1fr}
  .tm-strip .tm-scard + .tm-scard{border-left:0;border-top:1px solid var(--border-2)}
  .tm-wall{column-count:1}
  .tm-flagship{grid-template-columns:1fr;padding:28px 24px}
  .tm-flag-q{font-size:1.28rem}
}

/* logo-marquee.css */
/* logo-marquee.css - dark auto-scrolling brand strip (see assets/logo-marquee.js).
   Same treatment as the homepage hero strip: real brand colours, light chips for
   dark-ink marks, edge fade, drift that yields to the reader. */
.lm-strip{background:var(--dark,#0B1410);padding:56px 0;text-align:center;position:relative}
.lm-label{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;font-family:var(--mono);font-size:.72rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.lm-label .dot{width:6px;height:6px;border-radius:50%;background:var(--green-bright,#11BF85);flex:none}
.lm-logos{display:block;width:100%;-webkit-user-select:none;user-select:none;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.lm-viewport{display:flex;overflow:hidden;cursor:grab}
.lm-track{display:flex;flex-shrink:0;align-items:center;list-style:none;margin:0;padding:0;height:52px;will-change:transform}
.lm-item{flex:none;width:168px;height:52px;display:flex;align-items:center;justify-content:center;padding:0 10px}
.lm-item img{height:auto;width:auto;max-height:26px;max-width:146px;display:block;filter:none;opacity:.92;border-radius:5px;
  transition:opacity .3s cubic-bezier(.25,1,.5,1),transform .3s cubic-bezier(.25,1,.5,1)}
.lm-item[data-chip] img{background:#EEF2F0;padding:4px 8px;max-height:30px}
.lm-item img:hover{opacity:1;transform:translateY(-1px)}
@media(max-width:640px){.lm-strip{padding:44px 0}.lm-item{width:132px;padding:0 8px}.lm-item img{max-height:22px;max-width:112px}}
@media(prefers-reduced-motion:reduce){.lm-item img{transition:none}}

/* solution-deck.css */
/* solution-deck.css - expanding solution panels (one open, the rest as slim tabs). */
.sd-sec[hidden]{display:none}
.sd-sec{padding:64px 0;background:var(--bg,#F5F8F6)}
.sd-head{max-width:720px;margin:0 auto 30px;text-align:center}
.sd-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--green-deep,#0B7A5A)}
.sd-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green-bright,#11BF85)}
.sd-head h2{margin:12px 0 10px;font-weight:800;letter-spacing:-.025em;color:var(--heading);font-size:clamp(1.8rem,3.2vw,2.4rem);line-height:1.12;text-wrap:balance}
.sd-head p{margin:0;color:var(--body);font-size:1rem;line-height:1.55}

.sd-row{display:flex;gap:10px;align-items:stretch}
.sd-panel{position:relative;flex:0 0 58px;border:1px solid var(--border);border-radius:18px;background:var(--white);overflow:hidden;cursor:pointer;
  transition:flex-basis .55s cubic-bezier(.22,.61,.36,1),flex-grow .55s cubic-bezier(.22,.61,.36,1),border-color .3s,box-shadow .3s,background .3s}
.sd-panel::before{content:'';position:absolute;inset:0;background:var(--bg,linear-gradient(160deg,#11BF85,#0B7A5A));
  opacity:.13;transition:opacity .45s ease;pointer-events:none}
.sd-panel:hover::before{opacity:.24}
.sd-panel.is-open::before{opacity:.1}
.sd-panel > *{position:relative;z-index:1}
.sd-panel:hover{border-color:rgba(17,191,133,.4)}
.sd-panel.is-open{flex:1 1 auto;cursor:default;border-color:rgba(17,191,133,.7);
  box-shadow:0 30px 60px -34px rgba(8,15,30,.45)}

.sd-tab{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:16px;padding:20px 0;transition:opacity .25s}
.sd-tab .n{font-family:var(--mono);font-size:.63rem;font-weight:600;color:var(--muted);opacity:.8}
.sd-tab .t{writing-mode:vertical-rl;transform:rotate(180deg);font-weight:700;font-size:.8rem;letter-spacing:.01em;color:var(--heading);white-space:nowrap}
.sd-panel.is-open .sd-tab{opacity:0;pointer-events:none}

.sd-body{opacity:0;visibility:hidden;padding:22px 24px 20px;display:flex;flex-direction:column;
  transition:opacity .3s ease .12s,visibility .3s ease .12s}
.sd-panel.is-open .sd-body{opacity:1;visibility:visible}
.sd-n{font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green-deep,#0B7A5A)}
.sd-body h3{margin:6px 0 12px;font-weight:800;letter-spacing:-.02em;color:var(--heading);font-size:clamp(1.15rem,1.5vw,1.38rem);line-height:1.2;text-wrap:balance}

/* one point per row */
.sd-tiles{display:grid;grid-template-columns:1fr;gap:5px}
.sd-tile{display:flex;align-items:center;gap:9px;padding:7px 11px;border-radius:9px;border:1px solid transparent;opacity:0;transform:translateY(5px)}
.sd-tile .ck{flex:none;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:24;stroke-dashoffset:24}
.sd-tile span{font-size:.81rem;line-height:1.3;font-weight:600;letter-spacing:-.01em;color:var(--heading);
  clip-path:inset(0 100% 0 0)}
.sd-tile.t1{background:rgba(17,191,133,.11);border-color:rgba(17,191,133,.2);color:#0B7A5A}
.sd-tile.t2{background:rgba(56,132,255,.09);border-color:rgba(56,132,255,.18);color:#2f6fd0}
.sd-tile.t3{background:rgba(255,168,38,.13);border-color:rgba(255,168,38,.24);color:#b3720a}
.sd-tile.t4{background:rgba(124,92,255,.1);border-color:rgba(124,92,255,.18);color:#6448d8}
.sd-tile:nth-child(1){--d:.05s}.sd-tile:nth-child(2){--d:.14s}
.sd-tile:nth-child(3){--d:.23s}.sd-tile:nth-child(4){--d:.32s}
.sd-panel.is-open .sd-tile{animation:sdIn .34s cubic-bezier(.22,.61,.36,1) var(--d) forwards}
@keyframes sdIn{to{opacity:1;transform:none}}
/* each point ticks itself off, then the line wipes in behind it */
.sd-panel.is-open .sd-tile .ck{animation:sdDraw .3s cubic-bezier(.4,0,.2,1) forwards;animation-delay:var(--d)}
.sd-panel.is-open .sd-tile span{animation:sdWipe .34s cubic-bezier(.22,.61,.36,1) forwards;animation-delay:calc(var(--d) + .07s)}
@keyframes sdDraw{to{stroke-dashoffset:0}}
@keyframes sdWipe{to{clip-path:inset(0 0 0 0)}}

/* staging -> production, one switch */
.sd-switch{margin:14px 0 18px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:#0B1410;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sd-sw-lbl{font-family:var(--mono);font-size:.74rem;font-weight:600;letter-spacing:.03em;color:rgba(255,255,255,.5);transition:color .5s}
.sd-sw-lbl.on{color:#fff}
.sd-sw{position:relative;width:66px;height:30px;border-radius:999px;background:rgba(255,255,255,.12);flex:none}
.sd-sw i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:var(--green-bright,#11BF85);box-shadow:0 4px 12px rgba(17,191,133,.6);animation:sdFlip 5s cubic-bezier(.6,0,.2,1) infinite}
@keyframes sdFlip{0%,38%{left:3px}50%,88%{left:39px}100%{left:3px}}
.sd-sw-note{font-size:.79rem;line-height:1.4;color:rgba(255,255,255,.6)}
.sd-sw-note b{color:#fff;font-weight:600}

/* dark proof strip under the points (one variant per panel) */
.sd-strip{margin:14px 0 18px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#0B1410;display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.sd-strip .sn{font-family:var(--mono);font-size:.71rem;font-weight:600;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);padding:6px 10px;border-radius:9px;white-space:nowrap}
.sd-strip .sn.go{background:rgba(17,191,133,.18);border-color:rgba(17,191,133,.45);color:#8FF0CD}
.sd-strip .sar{color:rgba(255,255,255,.45);font-size:.82rem;animation:sdSlide 2.4s ease-in-out infinite}
@keyframes sdSlide{0%,100%{transform:translateX(0);opacity:.45}50%{transform:translateX(5px);opacity:1}}
.sd-strip .snote{font-size:.77rem;line-height:1.4;color:rgba(255,255,255,.6);flex:1;min-width:150px}
.sd-strip .snote b{color:#fff;font-weight:600}
.sd-bar{flex:1;min-width:110px;height:6px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.sd-bar i{display:block;height:100%;width:0;background:var(--green-bright,#11BF85);animation:sdFill 2.8s cubic-bezier(.4,0,.2,1) infinite}
@keyframes sdFill{0%{width:0}55%,100%{width:100%}}

.sd-cta{align-self:flex-start;margin-top:0;display:inline-flex;align-items:center;gap:9px;padding:12px 20px;border-radius:12px;background:var(--green-deep,#0B7A5A);color:#fff;font-weight:700;font-size:.92rem;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}
.sd-cta:hover{transform:translateY(-1px);background:#0a6b4f;box-shadow:0 18px 34px -20px rgba(11,122,90,.9)}
.sd-cta .arr{transition:transform .2s}
.sd-cta:hover .arr{transform:translateX(3px)}
.sd-soon{color:var(--muted);font-size:.88rem;margin:0 0 16px}

@media(max-width:900px){
  .sd-sec{padding:48px 0}
  .sd-row{flex-direction:column;min-height:0}
  .sd-panel{flex:0 0 auto}
  .sd-tab{position:static;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:18px 20px}
  .sd-tab .t{writing-mode:horizontal-tb;transform:none}
  .sd-panel.is-open .sd-tab{display:none}
  .sd-body{padding:22px 20px}
}
@media(prefers-reduced-motion:reduce){
  .sd-panel,.sd-body,.sd-tile{transition:none}
  .sd-panel.is-open .sd-tile{animation:none;opacity:1;transform:none}
  .sd-tile .ck{stroke-dashoffset:0;animation:none}
  .sd-tile span{clip-path:none;animation:none}
  .sd-sw i{animation:none;left:39px}
  .sd-strip .sar{animation:none}
  .sd-bar i{animation:none;width:100%}
}

