/* ==========================================================================
   The4thStack — main stylesheet
   1. Fonts  2. Tokens  3. Base  4. Primitives  5. Header & navigation
   6. Dialogs  7. Homepage  8. Cards  9. Archives  10. Article & prose
   11. Pages & forms  12. Footer  13. StackBot  14. Motion  15. Print
   ========================================================================== */

/* 1. Fonts (self-hosted, variable, latin subset) ------------------------- */
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:300 700;font-display:swap;src:url(../fonts/space-grotesk-latin-var.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin-var.woff2) format("woff2")}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-weight:100 800;font-display:swap;src:url(../fonts/jetbrains-mono-latin-var.woff2) format("woff2")}

/* 2. Design tokens --------------------------------------------------------
   Two colour schemes (light / dark) chosen with the header toggle and stored per
   visitor. Bands force a scheme on a section so BOTH modes mix white and dark areas:
   .band-dark  = always dark (hero, ticker, webinars, partner CTA, footer)
   .band-light = always light (resource library, newsletter)
   .band-alt   = subtle alternate background in the current scheme.
   Brand roles: black/white = base, red = CTAs & alerts, green = tech highlights. */
:root{
	--f-head:"Space Grotesk",ui-sans-serif,system-ui,sans-serif;
	--f-body:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
	--f-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
	--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-md:1.0625rem;--fs-lg:clamp(1.125rem,1rem + .5vw,1.3rem);
	--fs-xl:clamp(1.35rem,1.1rem + 1vw,1.75rem);--fs-2xl:clamp(1.7rem,1.3rem + 1.8vw,2.5rem);
	--fs-3xl:clamp(2.1rem,1.4rem + 3vw,3.5rem);--fs-hero:clamp(2.5rem,1.4rem + 4.6vw,5rem);
	--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4.5rem;--sp-9:6rem;
	--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:26px;--r-pill:999px;
	--ease:cubic-bezier(.2,.7,.2,1);--t-fast:.15s;--t-med:.3s;--t-slow:.6s;
	--container:1240px;--narrow:760px;--gutter:clamp(1rem,3vw,2rem);
	--header-h:64px;
	/* Brand constants (same in both schemes) */
	--c-accent:#5E9E7E;--c-accent-ink:#0A0A0A;--c-red:#E33E33;--c-cta:#DC143C;--c-cta-hover:#E33E33;--c-cta-ink:#FFFFFF;--c-amber:#FFB020;--c-ink:#080A0A;--c-paper:#FFFFFF;
	--c-accent-soft:color-mix(in srgb,var(--c-accent) 14%,transparent);
	--c-accent-line:color-mix(in srgb,var(--c-accent) 40%,transparent);
	--c-red-soft:color-mix(in srgb,var(--c-red) 12%,transparent);
	--t4s-cta:var(--c-cta);--t4s-cta-hover:var(--c-cta-hover);--t4s-cta-ink:#fff;
}
/* Light scheme (default and .band-light) */
:root,[data-theme=light],.band-light{
	--c-bg:#FFFFFF;--c-bg-2:#F3F5F4;--c-surface:#FFFFFF;--c-surface-2:#F4F6F5;--c-surface-3:#E9EDEB;
	--c-border:#E1E6E3;--c-border-2:#CDD5D1;--c-text:#0B0F0E;--c-muted:#4B5550;--c-faint:#646E69;--c-prose:#1D2422;
	--c-accent-text:#067A3B;--c-accent-hover:#04602E;--c-red-text:#C41E2A;--c-code-inline:#065F30;--c-code-bg:#EEF3F0;
	--shadow-1:0 1px 2px rgba(16,24,20,.05),0 8px 24px rgba(16,24,20,.06);
	--shadow-2:0 24px 60px rgba(16,24,20,.14);
	--glow:0 0 0 1px var(--c-border-2),0 14px 34px rgba(16,24,20,.1);
	--t4s-field-bg:#FFFFFF;--t4s-border:var(--c-border-2);--t4s-text:var(--c-text);--t4s-muted:var(--c-muted);--t4s-accent:var(--c-accent-text);--t4s-red:var(--c-cta);--t4s-danger:var(--c-red-text);--t4s-surface:var(--c-surface);
	color-scheme:light;
}
/* Dark scheme (toggle, always-dark bands, and components that sit on dark media) */
[data-theme=dark],.band-dark,.card--overlay,.terminal,.code-block{
	--c-bg:#0A0C0C;--c-bg-2:#0F1312;--c-surface:#141918;--c-surface-2:#1A201E;--c-surface-3:#212826;
	--c-border:#252D2A;--c-border-2:#333D39;--c-text:#F5F7F5;--c-muted:#A9B2AD;--c-faint:#8A948F;--c-prose:#E3E8E5;
	--c-accent-text:#FF5A4F;--c-accent-hover:#A9C7B5;--c-red-text:#FF7A80;--c-code-inline:#BFFFD9;--c-code-bg:#1A201E;
	--shadow-1:0 1px 0 rgba(255,255,255,.03) inset,0 8px 24px rgba(0,0,0,.35);
	--shadow-2:0 24px 60px rgba(0,0,0,.55);
	--glow:0 0 0 1px var(--c-accent-line),0 0 28px color-mix(in srgb,var(--c-accent) 16%,transparent);
	--t4s-field-bg:#0C100F;--t4s-border:var(--c-border-2);--t4s-text:var(--c-text);--t4s-muted:var(--c-muted);--t4s-accent:var(--c-accent);--t4s-red:var(--c-cta);--t4s-danger:var(--c-red-text);--t4s-surface:var(--c-surface);
	color-scheme:dark;
}
.band-light .band-dark,.band-dark .band-light{color:var(--c-text)}
.band-dark,.band-light,.band-alt{background-color:var(--c-bg);color:var(--c-text)}
.band-alt{background-color:var(--c-bg-2)}

/* 3. Base ------------------------------------------------------------------ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 24px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--c-bg);color:var(--c-text);font-family:var(--f-body);font-size:var(--fs-base);line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
a{color:var(--c-accent-text);text-decoration-thickness:1px;text-underline-offset:.2em}
a:hover{color:var(--c-accent-hover)}
h1,h2,h3,h4,h5,h6{font-family:var(--f-head);line-height:1.15;letter-spacing:-.02em;margin:0 0 .5em;font-weight:700;color:var(--c-text)}
p{margin:0 0 1em}
ul,ol{padding-left:1.25rem}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px;border-radius:4px}
::selection{background:var(--c-accent);color:var(--c-accent-ink)}
hr{border:0;border-top:1px solid var(--c-border);margin:var(--sp-6) 0}
[hidden]{display:none!important}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;z-index:100000;background:var(--c-surface);color:var(--c-text);padding:1rem;left:1rem;top:1rem}
.skip-link{position:absolute;left:1rem;top:-100px;z-index:100001;background:var(--c-accent);color:var(--c-accent-ink);padding:.75rem 1rem;border-radius:var(--r-sm);font-weight:700;text-decoration:none}
.skip-link:focus{top:1rem}
.site-main:focus{outline:none}
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.container--narrow{max-width:calc(var(--narrow) + 2 * var(--gutter))}
.container--form{max-width:calc(640px + 2 * var(--gutter))}
.alignwide{max-width:1100px}
.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw)}
.text-accent{color:var(--c-accent-text)}
.admin-hint{padding:.75rem 1rem;border:1px dashed var(--c-amber);border-radius:var(--r-sm);color:var(--c-amber);font-size:var(--fs-sm)}
.fineprint{font-size:var(--fs-sm);color:var(--c-muted)}

/* 4. Primitives ------------------------------------------------------------ */
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 .6rem;font-family:var(--f-mono);font-size:var(--fs-xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--c-muted)}
.eyebrow::before{content:"";width:18px;height:2px;border-radius:2px;background:var(--c-red)}
.eyebrow--accent{color:var(--c-accent-text)}.eyebrow--accent::before{background:var(--c-accent)}
.eyebrow:has(.dot)::before{display:none}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--c-accent);box-shadow:0 0 10px var(--c-accent)}
.chip{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border:1px solid var(--c-border-2);border-radius:var(--r-pill);font-family:var(--f-mono);font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted);text-decoration:none;background:rgba(255,255,255,.02);transition:color var(--t-fast),border-color var(--t-fast),background var(--t-fast);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
a.chip:hover,.chip.is-active{color:var(--c-accent-text);border-color:var(--c-accent-line);background:var(--c-accent-soft)}
.chip--lg{padding:.45rem .9rem;font-size:.75rem}
.chip-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.chip-list--center{justify-content:center}
.label{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:var(--r-sm);font-family:var(--f-mono);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3}
.label--breaking,.label--live{background:var(--c-red-soft);color:var(--c-red-text);border:1px solid color-mix(in srgb,var(--c-red) 55%,transparent)}
.label--trending{background:var(--c-accent-soft);color:var(--c-accent-text);border:1px solid var(--c-accent-line)}
.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--c-red);box-shadow:0 0 0 0 color-mix(in srgb,var(--c-red) 60%,transparent);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.875rem;padding:.75rem 1.35rem;border-radius:var(--r-md);border:1px solid transparent;font-family:var(--f-head);font-weight:700;font-size:.95rem;letter-spacing:.01em;line-height:1;text-decoration:none;cursor:pointer;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-med),background var(--t-med),border-color var(--t-med),color var(--t-med);white-space:nowrap}
.btn--primary{background:var(--c-cta);color:var(--c-cta-ink)}
.btn--primary:hover{background:var(--c-cta-hover);color:var(--c-cta-ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--c-cta) 20%,transparent),0 10px 30px color-mix(in srgb,var(--c-cta) 28%,transparent);transform:translateY(-1px)}
.btn--accent{background:var(--c-accent);color:var(--c-accent-ink)}
.btn--accent:hover{color:var(--c-accent-ink);box-shadow:0 0 0 4px color-mix(in srgb,var(--c-accent) 22%,transparent);transform:translateY(-1px)}
.btn--dark{background:var(--c-text);color:var(--c-bg)}
.btn--dark:hover{color:var(--c-bg);transform:translateY(-1px);box-shadow:var(--shadow-2)}
.btn--ghost{background:rgba(255,255,255,.02);color:var(--c-text);border-color:var(--c-border-2)}
.btn--ghost:hover{color:var(--c-text);border-color:var(--c-accent-text);box-shadow:var(--glow)}
.btn--sm{min-height:2.375rem;padding:.55rem .95rem;font-size:.875rem;border-radius:10px}
.btn--lg{min-height:3.25rem;padding:.9rem 1.6rem;font-size:1rem}
.btn .icon{flex:none}
.icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:2.75rem;height:2.75rem;padding:0 .6rem;border-radius:var(--r-md);border:1px solid var(--c-border);background:rgba(255,255,255,.02);color:var(--c-text);text-decoration:none;transition:border-color var(--t-fast),color var(--t-fast),background var(--t-fast)}
.icon-btn:hover{border-color:var(--c-accent-line);color:var(--c-accent-text)}
.icon-btn--sm{min-width:2.25rem;height:2.25rem}
.kbd{font-family:var(--f-mono);font-size:.68rem;padding:.05rem .35rem;border:1px solid var(--c-border-2);border-radius:5px;color:var(--c-faint)}
.link-arrow{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--f-head);font-weight:600;font-size:.95rem;color:var(--c-text);text-decoration:none}
.link-arrow .icon{color:var(--c-red)}
.link-arrow:hover{color:var(--c-text);text-decoration:underline;text-decoration-color:var(--c-red);text-underline-offset:.3em}
.link-arrow .icon{transition:transform var(--t-fast) var(--ease)}
.link-arrow:hover .icon{transform:translateX(4px)}
.link-btn{background:none;border:0;padding:0;color:var(--c-muted);text-decoration:underline;text-underline-offset:.2em;font-size:inherit}
.link-btn:hover{color:var(--c-accent-text)}
.grid-3{display:grid;gap:var(--sp-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.panel{background:linear-gradient(180deg,var(--c-surface),var(--c-bg-2));border:1px solid var(--c-border);border-radius:var(--r-lg);padding:clamp(1.25rem,3vw,2.25rem);box-shadow:var(--shadow-1)}
.social{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.social a{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--r-md);border:1px solid var(--c-border);color:var(--c-muted);transition:all var(--t-fast)}
.social a:hover{color:var(--c-accent-text);border-color:var(--c-accent-line);transform:translateY(-2px);box-shadow:var(--glow)}
.social--sm a{width:2.1rem;height:2.1rem}

/* 5. Header & navigation --------------------------------------------------- */
.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--c-bg) 82%,transparent);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid var(--c-border);transition:box-shadow var(--t-med),background var(--t-med)}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}}
.site-header.is-scrolled{background:color-mix(in srgb,var(--c-bg) 94%,transparent);box-shadow:0 10px 30px rgba(0,0,0,.4)}
.utility-bar{border-bottom:1px solid var(--c-border);font-size:var(--fs-sm);overflow:hidden;max-height:44px;transition:max-height var(--t-med) var(--ease),opacity var(--t-med)}
.site-header.is-scrolled .utility-bar{max-height:0;opacity:0;border-bottom-color:transparent}
.utility-bar__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:40px}
.ticker{display:flex;align-items:center;gap:.6rem;min-width:0;color:var(--c-muted)}
.ticker__link{color:var(--c-text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ticker__link:hover{color:var(--c-accent-text)}
.ticker__date{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.ticker__tag{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--c-faint)}
.utility-nav .menu{display:flex;gap:.25rem;list-style:none;margin:0;padding:0}
.utility-nav .menu-link{display:block;padding:.45rem .6rem;color:var(--c-muted);text-decoration:none;font-size:.82rem}
.utility-nav .menu-link:hover,.utility-nav .is-current>.menu-item__row>.menu-link{color:var(--c-text)}
.utility-nav .submenu{right:0;left:auto;min-width:240px}
.masthead__inner{display:flex;align-items:center;gap:clamp(.75rem,2vw,2rem);min-height:var(--header-h)}
.brand{display:inline-flex;align-items:center;gap:.6rem;color:var(--c-text);text-decoration:none;flex:none}
.brand:hover{color:var(--c-text)}
.brand__mark{width:36px;height:36px}
.brand__top{transform-origin:32px 19px;transition:transform var(--t-med) var(--ease)}
.brand:hover .brand__top{transform:translateY(-3px)}
.brand__word{font-family:var(--f-head);font-size:1.32rem;font-weight:700;letter-spacing:-.03em;line-height:1}
.brand__word b{color:var(--c-accent-text);font-weight:700}
.brand--custom img{max-height:44px;width:auto}
.primary-nav{flex:1;min-width:0}
.menu--primary{display:flex;align-items:center;justify-content:flex-end;gap:0;list-style:none;margin:0;padding:0}
.menu-item{position:relative}
.menu-item__row{display:flex;align-items:center}
.menu--primary>.menu-item>.menu-item__row>.menu-link{position:relative;display:block;padding:1.35rem .4rem;color:var(--c-text);text-decoration:none;font-family:var(--f-head);font-size:.92rem;font-weight:600;white-space:nowrap}
.menu--primary>.menu-item>.menu-item__row>.menu-link::after{content:"";position:absolute;left:.4rem;right:.4rem;bottom:.95rem;height:2px;border-radius:2px;background:var(--c-accent);box-shadow:0 0 10px var(--c-accent);transform:scaleX(0);transform-origin:left;transition:transform var(--t-med) var(--ease)}
.menu--primary>.menu-item:hover>.menu-item__row>.menu-link::after,.menu--primary>.menu-item.is-open>.menu-item__row>.menu-link::after,.menu--primary>.is-current>.menu-item__row>.menu-link::after{transform:scaleX(1)}
.menu--primary>.is-current>.menu-item__row>.menu-link{color:var(--c-accent-text)}
.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.75rem;margin-left:-.2rem;padding:0;border:0;border-radius:6px;background:transparent;color:var(--c-faint);transition:color var(--t-fast),transform var(--t-med) var(--ease)}
.submenu-toggle:hover{color:var(--c-accent-text)}
.menu-item.is-open>.menu-item__row>.submenu-toggle,.submenu-toggle[aria-expanded=true]{color:var(--c-accent-text)}
.menu-item.is-open>.menu-item__row>.submenu-toggle .icon{transform:rotate(180deg)}
.submenu-toggle .icon{transition:transform var(--t-med) var(--ease)}
/* Dropdown panels (no-JS: hover / focus-within; JS: .is-open) */
.submenu{position:absolute;top:100%;left:-.5rem;z-index:50;min-width:260px;padding:.5rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:var(--c-surface);box-shadow:var(--shadow-2);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity var(--t-med) var(--ease),transform var(--t-med) var(--ease),visibility 0s linear var(--t-med)}
.has-children:hover>.submenu,.has-children:focus-within>.submenu,.has-children.is-open>.submenu{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.js .has-children:hover:not(.is-open)>.submenu{opacity:0;visibility:hidden}
.js .has-children.is-open>.submenu{opacity:1;visibility:visible}
.js .has-children:focus-within:not(.is-open)>.submenu{opacity:0;visibility:hidden}
.submenu__list{list-style:none;margin:0;padding:0}
.submenu .menu-link{display:block;padding:.55rem .75rem;border-radius:var(--r-sm);color:var(--c-text);text-decoration:none;font-size:.92rem;transition:background var(--t-fast),color var(--t-fast)}
.submenu .menu-link:hover,.submenu .menu-link:focus-visible{background:var(--c-accent-soft);color:var(--c-accent-text)}
.menu-link__desc{display:block;margin-top:.15rem;font-size:.78rem;color:var(--c-muted);line-height:1.4}
.submenu .menu-link:hover .menu-link__desc{color:var(--c-muted)}
/* Mega panel */
.menu--primary .is-mega{position:static}
.mega{left:0;right:0;top:100%;width:100%;min-width:0;padding:0;border-radius:0 0 var(--r-xl) var(--r-xl);border-left:0;border-right:0;background:linear-gradient(180deg,var(--c-surface),var(--c-bg-2));overflow:hidden}
.mega::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--c-accent-soft) 1px,transparent 1px),linear-gradient(90deg,var(--c-accent-soft) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(180deg,rgba(0,0,0,.35),transparent 80%);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.35),transparent 80%);pointer-events:none}
.mega__inner{position:relative;display:grid;grid-template-columns:minmax(220px,1fr) 2fr minmax(240px,1fr);gap:2rem;padding-block:1.75rem 2rem}
.mega__title{font-family:var(--f-head);font-size:1.4rem;font-weight:700;margin:0 0 .5rem}
.mega__desc{color:var(--c-muted);font-size:.92rem;margin:0 0 1rem}
.mega__search{display:flex;margin-top:1.25rem;border:1px solid var(--c-border-2);border-radius:var(--r-md);background:var(--c-bg);overflow:hidden}
.mega__search input{flex:1;min-width:0;padding:.6rem .8rem;border:0;background:transparent;color:var(--c-text);font-size:.9rem}
.mega__search input:focus{outline:none}
.mega__search:focus-within{border-color:var(--c-accent-text)}
.mega__search button{display:inline-flex;align-items:center;padding:0 .8rem;border:0;background:transparent;color:var(--c-muted)}
.mega__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.15rem 1rem;align-content:start}
.mega__feature{display:block;color:var(--c-text);text-decoration:none;border:1px solid var(--c-border);border-radius:var(--r-lg);overflow:hidden;background:var(--c-bg);transition:border-color var(--t-med),box-shadow var(--t-med)}
.mega__feature:hover{color:var(--c-text);border-color:var(--c-accent-line);box-shadow:var(--glow)}
.mega__feature-img img{width:100%;aspect-ratio:16/9;object-fit:cover}
.mega__feature .eyebrow{margin:.9rem 1rem .25rem}
.mega__feature-title{display:block;padding:0 1rem 1rem;font-family:var(--f-head);font-weight:600;line-height:1.3}
.masthead__actions{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex:none}
.menu-toggle{display:none}
@media (max-width:1279px){
	.primary-nav{display:none}
	.menu-toggle{display:inline-flex}
	.no-js .primary-nav{display:block;order:9;width:100%;overflow-x:auto}
	.no-js .masthead__inner{flex-wrap:wrap}
	.no-js .menu--primary{justify-content:flex-start}
	.no-js .menu--primary .submenu{display:none}
}
@media (max-width:1439px){.kbd{display:none}}
@media (max-width:860px){.utility-nav{display:none}}
@media (max-width:520px){.masthead__cta span{display:none}.masthead__cta{min-width:2.75rem;padding:0 .7rem}.brand__word{font-size:1.15rem}.brand__mark{width:30px;height:30px}.ticker__tag{display:none}}
@media (max-width:359px){.masthead__cta{display:none}}
/* Reading progress */
.read-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:101;pointer-events:none}
.admin-bar .read-progress{top:32px}
.read-progress__bar{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--c-accent),#9dffc6);box-shadow:0 0 12px var(--c-accent);transform:scaleX(0);transform-origin:left}

/* 6. Dialogs: search + drawer --------------------------------------------- */
dialog{color:var(--c-text)}
.search-dialog{width:min(760px,calc(100% - 2rem));max-height:min(82vh,760px);margin:8vh auto auto;padding:0;border:1px solid var(--c-border-2);border-radius:var(--r-xl);background:var(--c-surface);box-shadow:var(--shadow-2),var(--glow)}
.search-dialog::backdrop,.drawer::backdrop{background:rgba(2,4,3,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.search-dialog[open]{animation:dialog-in var(--t-med) var(--ease)}
@keyframes dialog-in{from{opacity:0;transform:translateY(-12px) scale(.98)}}
.search-dialog__inner{padding:1.25rem clamp(1rem,3vw,1.75rem) 1.5rem}
.search-dialog__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}
.search-dialog__title{font-size:1rem;margin:0;color:var(--c-muted);font-weight:600}
.search-dialog__form{position:relative;display:flex;align-items:center;gap:.5rem;padding:.4rem .4rem .4rem 1rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:var(--c-bg)}
.search-dialog__form:focus-within{border-color:var(--c-accent-text);box-shadow:var(--glow)}
.search-dialog__icon{color:var(--c-accent-text);flex:none}
.search-dialog__form input{flex:1;min-width:0;padding:.6rem 0;border:0;background:transparent;font-size:1.15rem;color:var(--c-text)}
.search-dialog__form input:focus{outline:none}
.search-dialog__hint{margin:.6rem 0 0;font-size:.8rem;color:var(--c-faint)}
.search-results{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.25rem}
.search-results:empty{display:none}
.search-result a{display:grid;grid-template-columns:56px 1fr;gap:.85rem;align-items:center;padding:.6rem;border-radius:var(--r-md);color:var(--c-text);text-decoration:none}
.search-result a:hover,.search-result a:focus-visible{background:var(--c-accent-soft)}
.search-result__thumb{width:56px;height:56px;border-radius:var(--r-sm);object-fit:cover;background:var(--c-surface-3)}
.search-result__title{display:block;font-family:var(--f-head);font-weight:600;line-height:1.3}
.search-result__meta{display:block;font-size:.78rem;color:var(--c-muted)}
.search-result--all a{display:flex;justify-content:center;color:var(--c-accent-text);font-weight:600}
.search-result--empty{padding:1rem;color:var(--c-muted);text-align:center}
.search-dialog__shortcuts{margin-top:1.25rem}
.drawer{width:min(420px,100%);max-width:100%;height:100%;max-height:100%;margin:0 0 0 auto;padding:0;border:0;border-left:1px solid var(--c-border-2);background:var(--c-bg-2)}
.drawer[open]{animation:drawer-in var(--t-med) var(--ease)}
@keyframes drawer-in{from{transform:translateX(100%)}}
.drawer__inner{display:flex;flex-direction:column;gap:1.25rem;min-height:100%;padding:1rem 1.25rem 2rem}
.drawer__head{display:flex;align-items:center;justify-content:space-between}
.drawer__search{display:flex;border:1px solid var(--c-border-2);border-radius:var(--r-md);background:var(--c-bg);padding-left:.8rem}
.drawer__search input{flex:1;min-width:0;border:0;background:transparent;padding:.7rem 0;color:var(--c-text)}
.drawer__search input:focus{outline:none}
.drawer__search:focus-within{border-color:var(--c-accent-text)}
.drawer__search .icon-btn{border:0}
.menu--drawer{list-style:none;margin:0;padding:0}
.menu--drawer>.menu-item{border-bottom:1px solid var(--c-border)}
.menu--drawer .menu-item__row{justify-content:space-between}
.menu--drawer>.menu-item>.menu-item__row>.menu-link{flex:1;display:block;padding:.9rem 0;color:var(--c-text);font-family:var(--f-head);font-weight:600;font-size:1.08rem;text-decoration:none}
.menu--drawer .submenu-toggle{width:2.75rem;height:2.75rem;margin:0;border:1px solid var(--c-border);border-radius:var(--r-md)}
.menu--drawer .submenu{position:static;display:none;min-width:0;padding:0 0 .75rem .25rem;border:0;background:none;box-shadow:none;opacity:1;visibility:visible;transform:none}
.menu--drawer .has-children.is-open>.submenu{display:block}
.menu--drawer .submenu .menu-link{padding:.5rem .5rem;color:var(--c-muted)}
.menu--drawer-utility>.menu-item>.menu-item__row>.menu-link{font-size:.95rem;color:var(--c-muted)}
.drawer__cta{margin-top:auto;padding:1.25rem;border:1px solid var(--c-accent-line);border-radius:var(--r-lg);background:var(--c-accent-soft)}
.drawer__cta p{margin:0 0 .75rem}
.drawer__cta .btn{width:100%}

/* 7. Homepage -------------------------------------------------------------- */
.home-section{padding-block:clamp(3rem,7vw,5.5rem)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:var(--sp-6);flex-wrap:wrap}
.section-title{font-size:var(--fs-2xl);margin:0}
/* Hero */
.hero{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(2.5rem,6vw,5.5rem) clamp(2.5rem,6vw,4.5rem);border-bottom:1px solid var(--c-border)}
.hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.hero__lines{position:absolute;inset:0;width:100%;height:100%}
.hero__lines path{fill:none;stroke:var(--c-accent);stroke-opacity:.22;stroke-width:1.2;stroke-dasharray:6 10}
.hero__glow{position:absolute;width:60vw;height:60vw;max-width:900px;max-height:900px;right:-15vw;top:-25vw;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c-accent) 20%,transparent),transparent 65%);filter:blur(10px)}
.hero__glow::after{content:"";position:absolute;width:40%;height:40%;left:-60%;bottom:-70%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c-red) 16%,transparent),transparent 70%)}
.hero__inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero__eyebrow{margin-bottom:1.25rem}
.hero__pill{display:inline-flex;align-items:center;gap:.6rem;max-width:100%;margin-bottom:1.25rem;padding:.35rem .8rem .35rem .4rem;border:1px solid var(--c-border-2);border-radius:var(--r-pill);background:rgba(255,255,255,.03);color:var(--c-text);font-size:.85rem;text-decoration:none}
.hero__pill span:not(.label):not(.pulse){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hero__pill:hover{color:var(--c-text);border-color:var(--c-accent-line)}
.hero__title{font-size:var(--fs-hero);line-height:1;letter-spacing:-.045em;margin:0 0 1.25rem;text-wrap:balance}
.hero__title .text-accent{position:relative;color:var(--c-accent-text);text-shadow:0 0 40px color-mix(in srgb,var(--c-accent) 35%,transparent)}
.hero__text{max-width:36rem;font-size:var(--fs-lg);color:var(--c-muted);line-height:1.6;margin-bottom:2rem}
.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem}
.hero__lead{display:grid;gap:1rem}
.hero__lead--empty{min-height:320px;place-items:center;padding:2rem;border:1px dashed var(--c-border-2);border-radius:var(--r-xl);color:var(--c-muted);text-align:center}
.hero__also{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;list-style:none;margin:0;padding:0}
.hero__also .card--compact{height:100%}
@media (max-width:1023px){.hero__inner{grid-template-columns:1fr}}
@media (max-width:520px){.hero__also{grid-template-columns:1fr}}
/* Visual */
/* Breaking strip */
.strip{border-block:1px solid var(--c-border);background:var(--c-bg-2)}
.strip__inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding-block:1.1rem}
.strip__title{display:inline-flex;align-items:center;gap:.6rem;margin:0;font-family:var(--f-mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text);white-space:nowrap}
.strip__title .icon{color:var(--c-accent-text)}
.strip__list{display:flex;gap:1.5rem;margin:0;padding:0 0 .25rem;list-style:none;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--c-border-2) transparent}
.strip__item{flex:0 0 min(320px,78vw);scroll-snap-align:start;padding-left:1.5rem;border-left:1px solid var(--c-border)}
.strip__item:first-child{padding-left:0;border-left:0}
.strip__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-bottom:.35rem;font-size:.75rem;color:var(--c-faint)}
.strip__link{display:block;color:var(--c-text);text-decoration:none;font-family:var(--f-head);font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.strip__link:hover{color:var(--c-accent-text)}
@media (max-width:860px){.strip__inner{grid-template-columns:1fr}.strip__more{justify-self:start}}
/* Latest */
.latest__grid{display:grid;gap:var(--sp-5);grid-template-columns:repeat(3,minmax(0,1fr))}
.latest__grid>.card--feature{grid-column:span 2;grid-row:span 2}
.latest__grid>.card--feature .card__media,.archive-grid>.card--feature .card__media{flex:1 1 auto;aspect-ratio:auto;min-height:260px}
@media (max-width:1023px){.latest__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.latest__grid>.card--feature{grid-column:1/-1;grid-row:auto}}
@media (max-width:640px){.latest__grid{grid-template-columns:1fr}}
.load-more{display:flex;justify-content:center;margin-top:var(--sp-6)}
.load-more [aria-busy=true]{opacity:.7;pointer-events:none}
/* Explorer */
.explorer__grid{display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0}
@media (max-width:1023px){.explorer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.explorer__grid{gap:.6rem}.topic-card{padding:1rem}.topic-card__desc{display:none}.cat-art{width:44px;height:44px}.topic-card__title{font-size:1rem}}
.topic-card{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.4rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:linear-gradient(160deg,var(--c-surface),var(--c-bg-2));overflow:hidden;transition:border-color var(--t-med),transform var(--t-med) var(--ease),box-shadow var(--t-med)}
.topic-card::before{content:"";position:absolute;inset:auto -30% -60% auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c-accent) 14%,transparent),transparent 70%);opacity:0;transition:opacity var(--t-med)}
.topic-card:hover{border-color:var(--c-accent-line);transform:translateY(-4px);box-shadow:var(--glow)}
.topic-card:hover::before{opacity:1}
.topic-card__art{color:var(--c-text);margin-bottom:.4rem}
.cat-art{width:64px;height:64px}
.topic-card__title{font-size:1.2rem;margin:0}
.topic-card__title a{color:var(--c-text);text-decoration:none}
.topic-card__title a::after{content:"";position:absolute;inset:0;z-index:1}
.topic-card__desc{font-size:.88rem;color:var(--c-muted);margin:0}
.topic-card__count{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto;padding-top:.5rem;font-family:var(--f-mono);font-size:.72rem;color:var(--c-accent-text);letter-spacing:.06em}
/* Picks */
.picks__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--sp-5)}
.picks__list{display:grid;gap:1rem;align-content:start}
@media (max-width:900px){.picks__grid{grid-template-columns:1fr}}
/* Trends */
.trends{background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--c-accent) 3%,transparent),transparent)}
.trends__inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:clamp(2rem,5vw,4rem)}
.trends__intro p{color:var(--c-muted)}
.trends__intro .section-title{margin-bottom:1rem}
.trends__list{list-style:none;margin:0;padding:0;display:grid;gap:1rem;counter-reset:trend}
.trend{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:1rem;align-items:center}
.trend__num{font-family:var(--f-mono);font-size:1.6rem;font-weight:700;color:transparent;-webkit-text-stroke:1px var(--c-accent);opacity:.9}
@media (max-width:900px){.trends__inner{grid-template-columns:1fr}}
/* Reviews */
.reviews__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:var(--sp-5)}
.reviews__foot .fineprint{margin:0}
/* Tutorials */
.tutorials__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--sp-5)}
.tutorials__list{display:grid;gap:1rem;align-content:start}
@media (max-width:900px){.tutorials__grid{grid-template-columns:1fr}}
.terminal{border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:#050707;overflow:hidden;font-family:var(--f-mono);font-size:.88rem;box-shadow:var(--shadow-1)}
.terminal__bar{display:flex;align-items:center;gap:.4rem;padding:.65rem .9rem;border-bottom:1px solid var(--c-border);background:var(--c-surface)}
.terminal__bar i{width:10px;height:10px;border-radius:50%;background:var(--c-border-2)}
.terminal__bar i:first-child{background:var(--c-red)}
.terminal__bar i:nth-child(3){background:var(--c-accent)}
.terminal__bar span{margin-left:.5rem;font-size:.72rem;color:var(--c-faint)}
.terminal__body{padding:1.1rem 1.25rem 1.25rem}
.terminal__line{margin:0 0 .6rem;color:var(--c-muted)}
.terminal__prompt{color:var(--c-accent-text)}
.terminal__list{list-style:none;margin:0 0 .9rem;padding:0;display:grid;gap:.2rem}
.terminal__list a{display:block;padding:.3rem .4rem;border-radius:6px;color:var(--c-text);text-decoration:none}
.terminal__list a:hover{background:var(--c-accent-soft);color:var(--c-accent-text)}
.terminal__count{color:var(--c-faint)}
.terminal__cursor{display:inline-block;color:var(--c-accent-text);animation:blink 1.1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.terminal__note{margin:.9rem 0 0;font-family:var(--f-body);font-size:.85rem;color:var(--c-muted)}
/* Newsletter */
.newsletter__card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(1.5rem,5vw,4rem);padding:clamp(1.5rem,5vw,3.5rem);border:1px solid var(--c-accent-line);border-radius:var(--r-xl);background:radial-gradient(ellipse at 0% 0%,color-mix(in srgb,var(--c-accent) 14%,transparent),transparent 55%),radial-gradient(ellipse at 100% 100%,color-mix(in srgb,var(--c-red) 9%,transparent),transparent 50%),var(--c-surface);overflow:hidden;box-shadow:var(--shadow-2)}
.newsletter__card::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--c-accent-soft) 1px,transparent 1px),linear-gradient(90deg,var(--c-accent-soft) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(120deg,#000,transparent 60%);-webkit-mask-image:linear-gradient(120deg,#000,transparent 60%);opacity:.6;pointer-events:none}
.newsletter__card>*{position:relative}
.newsletter__title{font-size:var(--fs-3xl);letter-spacing:-.035em}
.newsletter__lead{color:var(--c-muted);font-size:var(--fs-lg)}
.newsletter__benefits{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.75rem}
.newsletter__benefits li{display:flex;gap:.65rem;align-items:flex-start}
.newsletter__benefits .icon{flex:none;color:var(--c-accent-text);margin-top:.15rem}
@media (max-width:900px){.newsletter__card{grid-template-columns:1fr}}
/* Popular */
.popular__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:var(--sp-6)}
.popular__heading{font-size:1rem;font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted);margin-bottom:1rem}
.rank-list{list-style:none;margin:0;padding:0;counter-reset:rank}
.rank-list li{position:relative;counter-increment:rank;padding:1rem 0 1rem 3.25rem;border-top:1px solid var(--c-border)}
.rank-list li::before{content:counter(rank,decimal-leading-zero);position:absolute;left:0;top:.95rem;font-family:var(--f-mono);font-size:1.3rem;font-weight:700;color:var(--c-accent-text)}
.rank-list a{display:block;color:var(--c-text);text-decoration:none;font-family:var(--f-head);font-weight:600;line-height:1.35}
.rank-list a:hover{color:var(--c-accent-text)}
.rank-list__meta{display:block;margin-top:.25rem;font-size:.78rem;color:var(--c-faint)}
/* Resources */
.resources__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem;list-style:none;margin:0;padding:0}
.resource{position:relative;padding:1.25rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface);transition:border-color var(--t-med),transform var(--t-med) var(--ease)}
.resource:hover{border-color:var(--c-accent-line);transform:translateY(-3px)}
.resource__icon{display:inline-flex;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;margin-bottom:.85rem;border-radius:var(--r-md);background:var(--c-accent-soft);color:var(--c-accent-text)}
.resource__link{display:block;font-family:var(--f-head);font-weight:700;color:var(--c-text);text-decoration:none;margin-bottom:.25rem}
.resource__link::after{content:"";position:absolute;inset:0}
.resource p{margin:0;font-size:.88rem;color:var(--c-muted)}
/* Authors */
.authors__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;list-style:none;margin:0;padding:0}
.author-card{position:relative;padding:1.5rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface)}
.author-card__avatar{border-radius:50%;border:2px solid var(--c-accent-line);margin-bottom:1rem}
.author-card__name{font-size:1.1rem;margin:0}
.author-card__name a{color:var(--c-text);text-decoration:none}
.author-card__name a::after{content:"";position:absolute;inset:0}
.author-card:hover{border-color:var(--c-accent-line)}
.author-card__job{margin:.15rem 0 .5rem;font-size:.82rem;color:var(--c-accent-text)}
.author-card__bio{font-size:.88rem;color:var(--c-muted)}
.author-card__latest{margin:0;font-size:.82rem;color:var(--c-faint)}
.author-card__latest span{color:var(--c-muted)}

/* 8. Cards ----------------------------------------------------------------- */
.card{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface);overflow:hidden;transition:border-color var(--t-med),transform var(--t-med) var(--ease),box-shadow var(--t-med)}
.card:hover,.card:focus-within{border-color:var(--c-accent-line);box-shadow:var(--glow)}
.card:hover{transform:translateY(-3px)}
.card__media{position:relative;overflow:hidden;aspect-ratio:16/10;background:var(--c-surface-3)}
.card__media img,.card__media .thumb-fallback{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.card:hover .card__media img{transform:scale(1.045)}
.thumb-fallback{display:grid;place-items:center;color:var(--c-accent-text);background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--c-accent) 14%,transparent),transparent 60%),linear-gradient(135deg,#0d1311,#070909);background-size:auto}
.thumb-fallback[data-seed="1"],.thumb-fallback[data-seed="4"]{background:radial-gradient(circle at 70% 30%,color-mix(in srgb,var(--c-red) 14%,transparent),transparent 55%),linear-gradient(135deg,#0d1311,#070909)}
.thumb-fallback .cat-art{width:30%;height:auto;max-width:110px;opacity:.85}
.card__body{display:flex;flex-direction:column;gap:.55rem;flex:1;padding:1.15rem 1.25rem 1.3rem}
.card__top{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}
.card__top:empty{display:none}
.card__title{margin:0;font-size:1.12rem;line-height:1.3;letter-spacing:-.015em}
.card__link{color:var(--c-text);text-decoration:none;background-image:linear-gradient(var(--c-accent),var(--c-accent));background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size var(--t-med) var(--ease),color var(--t-fast)}
.card__link::after{content:"";position:absolute;inset:0;z-index:1}
.card:hover .card__link{color:var(--c-text);background-size:100% 1px}
.card__link:focus-visible{outline:none}
.card:has(.card__link:focus-visible){outline:2px solid var(--c-accent);outline-offset:3px}
.card__excerpt{margin:0;color:var(--c-muted);font-size:.92rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card .meta{margin-top:auto;padding-top:.35rem}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;font-size:.8rem;color:var(--c-faint)}
.meta a{position:relative;z-index:2;color:var(--c-muted);text-decoration:none}
.meta a:hover{color:var(--c-accent-text)}
.meta__author{display:inline-flex;align-items:center;gap:.45rem}
.meta__avatar{border-radius:50%;width:28px;height:28px}
.meta__read{display:inline-flex;align-items:center;gap:.3rem}
.meta__updated{color:var(--c-accent-text)}
.meta__updated time{color:inherit}
.meta__sep{opacity:.5}
.card--feature .card__media{aspect-ratio:16/9}
.card--feature .card__title{font-size:var(--fs-2xl);letter-spacing:-.03em;line-height:1.12}
.card--feature .card__body{padding:1.5rem 1.6rem 1.7rem;gap:.8rem}
.card--feature .card__excerpt{font-size:1rem;-webkit-line-clamp:3}
.card--overlay{min-height:420px;justify-content:flex-end;background:#050707}
.card--overlay .card__media{position:absolute;inset:0;aspect-ratio:auto}
.card--overlay .card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,7,7,.05) 20%,rgba(5,7,7,.55) 55%,rgba(5,7,7,.96))}
.card--overlay .card__body{position:relative;padding:clamp(1.25rem,3vw,2rem);flex:0 0 auto}
.card--overlay .card__title{font-size:var(--fs-2xl);letter-spacing:-.03em;line-height:1.1;text-wrap:balance}
.card--overlay .card__excerpt{color:#c9d0cc}
.card--overlay .meta,.card--overlay .meta a{color:#c0c8c3}
.card--compact{padding:0}
.card--compact .card__body{padding:1rem 1.1rem}
.card--compact .card__title{font-size:.98rem}
.card--list{flex-direction:row;align-items:stretch}
.card--list .card__media{flex:0 0 clamp(96px,28%,170px);aspect-ratio:auto;min-height:100%}
.card--list .card__body{padding:1rem 1.1rem;gap:.4rem}
.card--list .card__title{font-size:1.02rem}
.card--list .meta__author{display:none}
@media (max-width:420px){.card--list .card__media{flex-basis:88px}}

/* 9. Archives -------------------------------------------------------------- */
.archive-header{position:relative;isolation:isolate;padding-block:clamp(2rem,5vw,3.75rem) clamp(1.5rem,4vw,2.5rem);border-bottom:1px solid var(--c-border);overflow:hidden}
.archive-header__bg{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(color-mix(in srgb,var(--c-accent) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--c-accent) 7%,transparent) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 100% at 80% 0%,#000,transparent 70%);-webkit-mask-image:radial-gradient(ellipse 70% 100% at 80% 0%,#000,transparent 70%)}
.archive-title{font-size:var(--fs-3xl);letter-spacing:-.035em;margin:0 0 .75rem;text-wrap:balance}
.archive-title__view{display:inline-block;margin-left:.4rem;padding:.15rem .6rem;border-radius:var(--r-sm);font-size:.4em;vertical-align:middle;letter-spacing:.04em;background:var(--c-accent-soft);color:var(--c-accent-text);border:1px solid var(--c-accent-line)}
.archive-desc{max-width:44rem;color:var(--c-muted);font-size:var(--fs-md)}
.archive-desc p:last-child{margin-bottom:0}
.subtopics{margin-top:1.25rem}
.view-tabs{display:flex;gap:.25rem;margin-top:1.5rem;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--c-border)}
.view-tabs a{flex:none;padding:.65rem .9rem;border-bottom:2px solid transparent;color:var(--c-muted);text-decoration:none;font-family:var(--f-head);font-weight:600;font-size:.9rem;margin-bottom:-1px}
.view-tabs a:hover{color:var(--c-text)}
.view-tabs a[aria-current]{color:var(--c-accent-text);border-bottom-color:var(--c-accent-text)}
.archive-body{padding-block:clamp(2rem,5vw,3.5rem)}
.archive-grid{display:grid;gap:var(--sp-5);grid-template-columns:repeat(3,minmax(0,1fr))}
.archive-grid>.card--feature{grid-column:span 2;grid-row:span 2}
.archive-body--search .archive-grid{grid-template-columns:1fr;max-width:860px}
@media (max-width:1023px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-grid>.card--feature{grid-column:1/-1;grid-row:auto}}
@media (max-width:640px){.archive-grid{grid-template-columns:1fr}}
.author-hero{display:grid;grid-template-columns:auto 1fr;gap:clamp(1rem,4vw,2rem);align-items:start}
.author-hero__avatar{border-radius:50%;border:2px solid var(--c-accent-line);box-shadow:var(--glow)}
.author-hero .social{margin-top:1rem}
.author-hero .chip-list{margin-top:1rem}
.author-hero__count{margin:1rem 0 0;font-family:var(--f-mono);font-size:.78rem;color:var(--c-faint);letter-spacing:.06em}
@media (max-width:560px){.author-hero{grid-template-columns:1fr}.author-hero__avatar{width:88px;height:88px}}
.search-page-form{max-width:640px;margin-top:1.25rem}
.search-scope{margin-top:.75rem;color:var(--c-muted);font-size:.9rem}
.search-form{display:flex;gap:.5rem;padding:.35rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:var(--c-bg)}
.search-form:focus-within{border-color:var(--c-accent-text);box-shadow:var(--glow)}
.search-form__input{flex:1;min-width:0;padding:.6rem .8rem;border:0;background:transparent;color:var(--c-text);font-size:1rem}
.search-form__input:focus{outline:none}
@media (max-width:420px){.search-form .btn span{display:none}}
.pagination{margin-top:var(--sp-6)}
.pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;list-style:none;margin:0;padding:0}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;height:2.75rem;padding:0 .75rem;border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-text);text-decoration:none;font-family:var(--f-mono);font-size:.9rem}
.pagination a.page-numbers:hover{border-color:var(--c-accent-text);color:var(--c-accent-text)}
.pagination .current{background:var(--c-accent);color:var(--c-accent-ink);border-color:var(--c-accent-text);font-weight:700}
.js .archive-body .load-more+.pagination{display:none}
.empty-state{max-width:620px;margin:2rem auto;text-align:center;display:grid;gap:1rem;justify-items:center}
.empty-state__art{color:var(--c-accent-text)}
.empty-state .search-form{width:100%}
.error-404{padding-block:clamp(3rem,8vw,6rem)}
.error-404 .container--narrow{text-align:center;margin-bottom:var(--sp-8)}
.error-404 .search-form{margin:1.5rem auto 0;max-width:520px}
.error-404__code{margin:0;font-family:var(--f-mono);font-size:clamp(5rem,18vw,11rem);font-weight:800;line-height:1;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:2px var(--c-border-2)}
.error-404__code span{-webkit-text-stroke:2px var(--c-accent);text-shadow:0 0 40px color-mix(in srgb,var(--c-accent) 40%,transparent)}
.error-404__links{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.5rem}
.breadcrumbs{margin-bottom:1rem;font-size:.8rem;color:var(--c-faint)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:0}
.breadcrumbs li:not(:last-child)::after{content:"/";margin-left:.35rem;color:var(--c-border-2)}
.breadcrumbs a{color:var(--c-muted);text-decoration:none}
.breadcrumbs a:hover{color:var(--c-accent-text)}
.breadcrumbs [aria-current]{color:var(--c-faint);display:inline-block;max-width:28ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}

/* 10. Article & prose ----------------------------------------------------- */
.article-header{padding-top:clamp(1.75rem,5vw,3.5rem);padding-bottom:clamp(1.25rem,3vw,2rem)}
.article-header__labels{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.article-title{font-size:var(--fs-3xl);letter-spacing:-.035em;line-height:1.08;margin:0 0 1rem;text-wrap:balance}
.article-dek{font-size:var(--fs-lg);color:var(--c-muted);line-height:1.55;margin:0 0 1.5rem;text-wrap:pretty}
.article-header__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.25rem;border-top:1px solid var(--c-border)}
.article-header__meta .meta{font-size:.85rem}
.article-hero{margin:0 auto clamp(1.5rem,4vw,2.5rem)}
.article-hero img{width:100%;border-radius:var(--r-xl);border:1px solid var(--c-border);aspect-ratio:16/9;object-fit:cover}
.article-hero--wide img{border-radius:0;border-inline:0;max-height:78vh}
.article-hero figcaption{margin-top:.6rem;font-size:.8rem;color:var(--c-faint);text-align:center}
.article-layout{display:grid;grid-template-columns:minmax(0,var(--narrow));justify-content:center;gap:clamp(2rem,4vw,4rem);padding-bottom:var(--sp-7)}
.article-layout.has-sidebar{grid-template-columns:minmax(0,var(--narrow)) minmax(240px,300px)}
@media (min-width:1180px){
	.article-layout.has-toc{grid-template-columns:220px minmax(0,var(--narrow));justify-content:center}
	.article-layout.has-toc.has-sidebar{grid-template-columns:200px minmax(0,var(--narrow)) 260px}
	.article-layout.has-toc .toc--inline{display:none}
}
@media (max-width:1179px){.article-aside{display:none}}
@media (max-width:900px){.article-layout.has-sidebar{grid-template-columns:minmax(0,1fr)}}
.article-aside__sticky{position:sticky;top:calc(var(--header-h) + 2rem);max-height:calc(100vh - var(--header-h) - 4rem);overflow:auto;scrollbar-width:thin}
.article-main{min-width:0}
.toc__title{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-family:var(--f-mono);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--c-muted);cursor:default}
.toc__list{list-style:none;margin:0;padding:0;border-left:1px solid var(--c-border)}
.toc__item a{display:block;padding:.35rem 0 .35rem .9rem;margin-left:-1px;border-left:2px solid transparent;color:var(--c-muted);text-decoration:none;font-size:.86rem;line-height:1.4;transition:color var(--t-fast),border-color var(--t-fast)}
.toc__item--h3 a{padding-left:1.7rem;font-size:.82rem}
.toc__item a:hover{color:var(--c-text)}
.toc__item a.is-active{color:var(--c-accent-text);border-left-color:var(--c-accent-text)}
.toc--inline{margin-bottom:2rem;padding:1rem 1.25rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface)}
.toc--inline summary{list-style:none;cursor:pointer;margin:0}
.toc--inline summary::-webkit-details-marker{display:none}
.toc--inline summary::after{content:"+";margin-left:auto;font-size:1rem;color:var(--c-accent-text)}
.toc--inline details[open] summary::after{content:"–"}
.toc--inline details[open] summary{margin-bottom:.75rem}
/* Prose */
.prose{font-size:clamp(1.0625rem,1rem + .2vw,1.15rem);line-height:1.75;color:var(--c-prose);overflow-wrap:break-word}
.prose>*{margin-block:0 1.35em}
.prose>*:last-child{margin-bottom:0}
.prose h2{font-size:var(--fs-2xl);margin-top:2em;margin-bottom:.6em;scroll-margin-top:calc(var(--header-h) + 1.5rem)}
.prose h3{font-size:var(--fs-xl);margin-top:1.75em;margin-bottom:.5em;scroll-margin-top:calc(var(--header-h) + 1.5rem)}
.prose h4{font-size:1.15rem;margin-top:1.5em}
.prose h2::before{content:"";display:block;width:2.25rem;height:3px;margin-bottom:.9rem;border-radius:3px;background:var(--c-accent);box-shadow:0 0 12px var(--c-accent)}
.prose a{color:var(--c-accent-text);text-decoration:underline;text-decoration-color:var(--c-accent-line);text-underline-offset:.22em}
.prose a:hover{text-decoration-color:var(--c-accent-text)}
.prose strong{color:var(--c-text)}
.prose ul,.prose ol{padding-left:1.4em}
.prose li{margin-bottom:.45em}
.prose li::marker{color:var(--c-accent-text)}
.prose blockquote{margin-inline:0;padding:.25rem 0 .25rem 1.5rem;border-left:3px solid var(--c-accent);color:var(--c-text);font-size:1.1em;font-style:normal}
.prose blockquote cite{display:block;margin-top:.5rem;font-size:.85rem;color:var(--c-muted);font-style:normal}
.prose .is-style-pull{padding:1.5rem 0;border:0;border-block:1px solid var(--c-border-2);font-family:var(--f-head);font-size:var(--fs-xl);line-height:1.35;text-align:center}
.prose .is-style-pull p::before{content:"“";display:block;font-size:3rem;line-height:.6;color:var(--c-accent-text)}
.prose img{border-radius:var(--r-md)}
.prose figure{margin-inline:0}
.prose figcaption,.prose .wp-element-caption{margin-top:.6rem;font-size:.82rem;color:var(--c-faint);text-align:center}
.prose hr{border-top:1px solid var(--c-border-2);margin:2.5em auto;width:40%}
.prose :not(pre)>code{padding:.15em .4em;border:1px solid var(--c-border-2);border-radius:6px;background:var(--c-code-bg);font-family:var(--f-mono);font-size:.86em;color:var(--c-code-inline)}
.prose kbd{padding:.1em .45em;border:1px solid var(--c-border-2);border-bottom-width:2px;border-radius:5px;font-family:var(--f-mono);font-size:.82em}
.prose pre,.code-block pre{position:relative;margin:0;padding:1.25rem 1.25rem;overflow:auto;border:1px solid var(--c-border-2);border-radius:var(--r-md);background:#050707;font-family:var(--f-mono);font-size:.88rem;line-height:1.65;tab-size:4;color:#d6e2dc;scrollbar-width:thin;scrollbar-color:var(--c-border-2) transparent}
.prose pre code{font-family:inherit;background:none;border:0;padding:0;color:inherit;font-size:inherit}
.code-block{position:relative;margin-block:0 1.5em}
.code-block__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem .5rem .4rem .9rem;border:1px solid var(--c-border-2);border-bottom:0;border-radius:var(--r-md) var(--r-md) 0 0;background:var(--c-surface)}
.code-block__bar+pre{border-top-left-radius:0;border-top-right-radius:0}
.code-block__lang{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-faint)}
.copy-btn{display:inline-flex;align-items:center;gap:.35rem;min-height:2rem;padding:.3rem .65rem;border:1px solid var(--c-border-2);border-radius:var(--r-sm);background:var(--c-bg);color:var(--c-muted);font-family:var(--f-mono);font-size:.72rem}
.copy-btn:hover{color:var(--c-accent-text);border-color:var(--c-accent-line)}
.copy-btn.is-copied{color:var(--c-accent-text);border-color:var(--c-accent-text)}
.prose .is-style-terminal,.prose .wp-block-code.is-style-terminal{padding-top:2.6rem;background:#030505}
.prose .is-style-terminal::before{content:"● ● ●";position:absolute;top:.8rem;left:1rem;font-size:.6rem;letter-spacing:.2em;color:var(--c-border-2)}
.prose .is-style-terminal code::before{content:"$ ";color:var(--c-accent-text)}
/* Prism tokens */
.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#6b7a73;font-style:italic}
.token.punctuation{color:#9aa6a0}
.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#ff8a90}
.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#8FD3AE}
.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#c9d3ce}
.token.atrule,.token.attr-value,.token.keyword{color:#7cc8ff}
.token.function,.token.class-name{color:#ffd479}
.token.regex,.token.important,.token.variable{color:#ffb020}
/* Tables */
.prose table{width:100%;border-collapse:collapse;font-size:.92rem}
.prose .wp-block-table,.table-scroll{overflow-x:auto;border:1px solid var(--c-border);border-radius:var(--r-md)}
.prose th,.prose td{padding:.75rem .9rem;border-bottom:1px solid var(--c-border);text-align:left;vertical-align:top}
.prose thead th{font-family:var(--f-head);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--c-muted);background:var(--c-surface)}
.prose tbody tr:hover{background:rgba(255,255,255,.02)}
.prose tr:last-child td{border-bottom:0}
.prose .is-style-specs td:first-child{width:38%;color:var(--c-muted);font-family:var(--f-mono);font-size:.84rem}
.prose .wp-block-table table{border:0}
.prose .wp-block-table thead{border-bottom:1px solid var(--c-border-2)}
.prose .wp-block-table th,.prose .wp-block-table td{border:0;border-bottom:1px solid var(--c-border)}
.prose .wp-block-table td+td,.prose .wp-block-table th+th{border-left:1px solid var(--c-border)}
.prose .wp-block-table figcaption{padding:.6rem}
/* Embeds */
.prose .wp-block-embed__wrapper,.prose iframe{border-radius:var(--r-md);overflow:hidden;max-width:100%}
.prose .wp-block-embed.is-type-video .wp-block-embed__wrapper{aspect-ratio:16/9}
.prose .wp-block-embed.is-type-video iframe{width:100%;height:100%}
.prose video{width:100%;border-radius:var(--r-md)}
/* Callouts */
.prose .is-style-callout-info,.prose .is-style-callout-tip,.prose .is-style-callout-warning,.prose .is-style-callout-danger,.prose .is-style-key-takeaways{position:relative;padding:1.1rem 1.25rem 1.1rem 3.1rem;border:1px solid var(--c-border-2);border-left-width:3px;border-radius:var(--r-md);background:var(--c-surface)}
.prose .is-style-callout-info{border-left-color:#7cc8ff}
.prose .is-style-callout-tip,.prose .is-style-key-takeaways{border-left-color:var(--c-accent-text);background:color-mix(in srgb,var(--c-accent) 5%,var(--c-surface))}
.prose .is-style-callout-warning{border-left-color:var(--c-amber);background:color-mix(in srgb,var(--c-amber) 5%,var(--c-surface))}
.prose .is-style-callout-danger{border-left-color:var(--c-red);background:color-mix(in srgb,var(--c-red) 6%,var(--c-surface))}
.prose [class*=is-style-callout]::before,.prose .is-style-key-takeaways::before{position:absolute;left:1rem;top:1.05rem;display:grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;font-family:var(--f-mono);font-size:.8rem;font-weight:800}
.prose .is-style-callout-info::before{content:"i";background:#7cc8ff;color:#04111a}
.prose .is-style-callout-tip::before{content:"✓";background:var(--c-accent);color:var(--c-accent-ink)}
.prose .is-style-callout-warning::before{content:"!";background:var(--c-amber);color:#1a1000}
.prose .is-style-callout-danger::before{content:"!";background:var(--c-red);color:#fff}
.prose .is-style-key-takeaways::before{content:"★";background:var(--c-accent);color:var(--c-accent-ink)}
.prose [class*=is-style-callout]>*:last-child,.prose .is-style-key-takeaways>*:last-child{margin-bottom:0}
.prose .is-style-checklist{list-style:none;padding-left:0}
.prose .is-style-checklist li{position:relative;padding-left:1.9rem}
.prose .is-style-checklist li::before{content:"";position:absolute;left:0;top:.3em;width:1.15rem;height:1.15rem;border-radius:5px;background:var(--c-accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FF5A4F' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/70% no-repeat;border:1px solid var(--c-accent-line)}
.prose .wp-block-file{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}
.prose .wp-block-file.is-style-download-card{padding:1.1rem 1.25rem;border:1px solid var(--c-accent-line);border-radius:var(--r-lg);background:var(--c-accent-soft)}
.prose .wp-block-file .wp-block-file__button,.prose .wp-element-button,.prose .wp-block-button__link{display:inline-flex;align-items:center;padding:.65rem 1.1rem;border-radius:var(--r-md);background:var(--c-accent);color:var(--c-accent-ink);font-family:var(--f-head);font-weight:700;text-decoration:none}
.prose .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--c-text);border:1px solid var(--c-border-2)}
.prose .wp-block-separator{border:0;border-top:1px solid var(--c-border-2)}
.prose .wp-block-pullquote{border-block:1px solid var(--c-border-2);padding:1.5rem 0}
.prose .alignleft{float:left;margin:0 1.5rem 1rem 0;max-width:50%}
.prose .alignright{float:right;margin:0 0 1rem 1.5rem;max-width:50%}
.prose .aligncenter{margin-inline:auto}
@media (max-width:600px){.prose .alignleft,.prose .alignright{float:none;margin-inline:0;max-width:100%}}
/* After-content */
.disclosure{display:flex;gap:.6rem;align-items:flex-start;margin-bottom:1.75rem;padding:.85rem 1rem;border:1px dashed var(--c-amber);border-radius:var(--r-md);font-size:.88rem;color:var(--c-text)}
.disclosure .icon{flex:none;margin-top:.2rem;color:var(--c-amber)}
.disclosure a{color:var(--c-amber)}
.update-note{margin-top:2rem;padding:1rem 1.25rem;border-left:3px solid var(--c-accent);border-radius:0 var(--r-md) var(--r-md) 0;background:var(--c-surface)}
.update-note__title{display:flex;align-items:center;gap:.4rem;margin:0 0 .35rem;font-family:var(--f-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent-text)}
.update-note p:last-child{margin:0;color:var(--c-muted)}
.sources{margin-top:2.5rem;padding:1.25rem 1.4rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-bg-2)}
.sources__title{font-size:1rem;font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted);margin-bottom:.75rem}
.sources__list{margin:0;padding-left:1.25rem;font-size:.92rem}
.sources__list li{margin-bottom:.4rem}
.sources__list li::marker{color:var(--c-accent-text);font-family:var(--f-mono)}
.sources__list a{color:var(--c-text);text-decoration-color:var(--c-accent-line)}
.sources__list a .icon{display:inline;vertical-align:-1px;margin-left:.25rem;color:var(--c-faint)}
.sources__host{margin-left:.4rem;font-size:.75rem;color:var(--c-faint)}
.article-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2rem}
.article-tags__label{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-faint)}
.feedback-line{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--c-border);font-size:.9rem;color:var(--c-muted)}
.feedback-line .icon{color:var(--c-accent-text)}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2rem}
.share--compact{margin:0}
.share__label{margin:0;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-faint)}
.share__list{display:flex;gap:.4rem;list-style:none;margin:0;padding:0}
.share__btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--c-border);border-radius:var(--r-md);background:transparent;color:var(--c-muted);transition:all var(--t-fast)}
.share__btn:hover{color:var(--c-accent-text);border-color:var(--c-accent-line);box-shadow:var(--glow)}
.share__btn.is-copied{color:var(--c-accent-text);border-color:var(--c-accent-text)}
.author-box{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;margin-top:2.5rem;padding:1.5rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:linear-gradient(160deg,var(--c-surface),var(--c-bg-2))}
.author-box__avatar{border-radius:50%;border:2px solid var(--c-accent-line)}
.author-box__name{font-size:1.25rem;margin:0}
.author-box__name a{color:var(--c-text);text-decoration:none}
.author-box__job{margin:.15rem 0 .6rem;color:var(--c-accent-text);font-size:.88rem}
.author-box__bio{color:var(--c-muted);font-size:.95rem}
.author-box .chip-list{margin-bottom:1rem}
.author-box__links{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}
@media (max-width:520px){.author-box{grid-template-columns:1fr}}
.article-cta{margin-top:2.5rem;padding:clamp(1.25rem,4vw,2rem);border:1px solid var(--c-accent-line);border-radius:var(--r-xl);background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--c-accent) 12%,transparent),transparent 60%),var(--c-surface)}
.article-cta h2{font-size:var(--fs-xl)}
.article-cta>p{color:var(--c-muted)}
.related{padding-block:clamp(2.5rem,6vw,4rem);border-top:1px solid var(--c-border);background:var(--c-bg-2)}
.post-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding-block:2.5rem}
.post-nav__link{display:grid;gap:.35rem;padding:1.1rem 1.25rem;border:1px solid var(--c-border);border-radius:var(--r-lg);color:var(--c-text);text-decoration:none;transition:border-color var(--t-med)}
.post-nav__link:hover{color:var(--c-text);border-color:var(--c-accent-line)}
.post-nav__link--next{text-align:right;grid-column:2}
.post-nav__dir{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent-text)}
.post-nav__link--next .post-nav__dir{justify-content:flex-end}
.post-nav__title{font-family:var(--f-head);font-weight:600;line-height:1.35}
@media (max-width:640px){.post-nav{grid-template-columns:1fr}.post-nav__link--next{grid-column:auto}}
.page-links{display:flex;gap:.5rem;margin-top:1.5rem}
/* Comments */
.comments{padding-block:2.5rem;border-top:1px solid var(--c-border)}
.comments__title{font-size:var(--fs-xl)}
.comment-list{list-style:none;margin:0 0 2rem;padding:0}
.comment-list .children{list-style:none;padding-left:clamp(1rem,4vw,2.5rem)}
.comment-body{padding:1.1rem 0;border-bottom:1px solid var(--c-border)}
.comment-author{display:flex;align-items:center;gap:.6rem;font-weight:600}
.comment-author .avatar{border-radius:50%}
.comment-author .says{display:none}
.comment-metadata{font-size:.78rem;margin:.25rem 0 .6rem}
.comment-metadata a{color:var(--c-faint);text-decoration:none}
.comment-content{color:var(--c-prose)}
.reply a{font-size:.82rem}
.comment-form{display:grid;gap:1rem}
.comment-form label{display:block;margin-bottom:.35rem;font-weight:600;font-size:.9rem}
.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url],.comment-form textarea{width:100%;padding:.7rem .85rem;border:1px solid var(--c-border-2);border-radius:var(--r-md);background:var(--t4s-field-bg);color:var(--c-text)}
.comment-form input:focus-visible,.comment-form textarea:focus-visible{outline:none;border-color:var(--c-accent-text);box-shadow:0 0 0 3px var(--c-accent-soft)}
.comment-form-cookies-consent{display:flex;gap:.5rem;align-items:flex-start;font-size:.85rem;color:var(--c-muted)}
.comment-form-cookies-consent label{font-weight:400;margin:0}
.comment-notes,.logged-in-as{font-size:.85rem;color:var(--c-muted)}

/* 11. Pages & forms ------------------------------------------------------- */
.page-header{padding-top:clamp(1.75rem,5vw,3.5rem);padding-bottom:1.5rem}
.page-title{font-size:var(--fs-3xl);letter-spacing:-.035em;margin:0 0 .5rem}
.page-article .entry-content{padding-bottom:var(--sp-8)}
.legal-page__updated{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-family:var(--f-mono);font-size:.75rem;letter-spacing:.06em;color:var(--c-faint)}
.legal-page .prose{font-size:1.02rem}
.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:clamp(1.5rem,4vw,3.5rem);padding-block:clamp(2rem,5vw,3.5rem) var(--sp-8);align-items:start}
@media (max-width:900px){.contact-layout{grid-template-columns:1fr}}
.contact-topics__title{font-size:var(--fs-xl);margin-bottom:1rem}
.contact-topics__list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.contact-topic{display:flex;gap:.9rem;align-items:flex-start;padding:.9rem 1rem;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-text);text-decoration:none;transition:border-color var(--t-fast),background var(--t-fast)}
.contact-topic:hover,.contact-topic.is-selected{color:var(--c-text);border-color:var(--c-accent-line);background:var(--c-accent-soft)}
.contact-topic__icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--r-sm);background:var(--c-accent-soft);color:var(--c-accent-text)}
.contact-topic__desc{display:block;font-size:.84rem;color:var(--c-muted);margin-top:.1rem}
.contact-details{margin-top:1.5rem;padding:1rem 1.1rem;border:1px solid var(--c-border);border-radius:var(--r-md);font-size:.92rem;color:var(--c-muted)}
.contact-details p{display:flex;gap:.5rem;align-items:center;margin:0 0 .5rem}
.contact-details address{font-style:normal}
.contact-form-wrap{position:sticky;top:calc(var(--header-h) + 1.5rem)}
@media (max-width:900px){.contact-form-wrap{position:static}}
.prose--form{font-size:1rem;line-height:1.6}
.prose--form h2,.prose--form h3{font-size:1.15rem;margin-top:1.25rem}.prose--form h2::before{display:none}
.utility-page{position:relative;isolation:isolate;padding-block:clamp(2rem,6vw,4rem) var(--sp-8);overflow:hidden}
.utility-page__bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 50% at 50% 0%,color-mix(in srgb,var(--c-accent) 12%,transparent),transparent 70%)}
.utility-page__head{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.utility-page__mark{display:inline-flex;flex:none;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border-radius:var(--r-md);border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent-text);box-shadow:var(--glow)}
.utility-page .page-title{margin:0;font-size:var(--fs-2xl)}
.utility-page__foot{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1.25rem;font-size:.82rem;color:var(--c-faint)}
.full-width-page .prose--full>*{max-width:var(--narrow);margin-inline:auto;padding-inline:var(--gutter)}
.full-width-page .prose--full>.alignfull{max-width:none;padding-inline:0;margin-left:0;width:100%}
.full-width-page .prose--full>.alignwide{max-width:1200px}
/* Theme-level polish for plugin forms */
.t4s-form{gap:1.1rem}
.newsletter .t4s-form .t4s-btn--primary,.footer-col--newsletter .t4s-btn--primary,.article-cta .t4s-btn--primary{width:100%}
.t4s-form--compact .t4s-form__row{grid-template-columns:1fr}
.t4s-form--compact .t4s-fineprint{font-size:.75rem}
.site-footer .t4s-form--compact .t4s-consent label{font-size:.78rem}
.t4s-form .t4s-btn{font-family:var(--f-head)}
.t4s-notice{margin-bottom:1rem}

/* 12. Footer --------------------------------------------------------------- */
.site-footer{position:relative;isolation:isolate;margin-top:0;padding-top:clamp(3rem,7vw,5rem);border-top:1px solid var(--c-border);background:linear-gradient(180deg,var(--c-bg),#050707);overflow:hidden}
.site-footer__art{position:absolute;inset:0 0 auto 0;height:240px;z-index:-1;color:var(--c-accent-text);opacity:.5;mask-image:linear-gradient(180deg,#000,transparent);-webkit-mask-image:linear-gradient(180deg,#000,transparent);pointer-events:none}
.footer-network{width:100%;height:100%}
.footer-network__lines{stroke-opacity:.18;stroke-width:1;stroke-dasharray:4 8}
.footer-network__nodes circle{fill:var(--c-border-2)}
.footer-network__nodes .is-accent{fill:var(--c-accent)}
.footer-network__nodes .is-red{fill:var(--c-red)}
.site-footer__grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,.8fr)) minmax(0,1.4fr);gap:clamp(1.5rem,4vw,3rem);padding-bottom:var(--sp-7)}
@media (max-width:1023px){.site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.site-footer__grid{grid-template-columns:1fr}}
.footer-col--brand .brand{margin-bottom:1rem}
.footer-about{color:var(--c-muted);font-size:.92rem;max-width:30rem}
.footer-contact a{display:inline-flex;align-items:center;gap:.5rem;color:var(--c-muted);text-decoration:none;font-size:.9rem}
.footer-col--brand .social{margin-top:1rem}
.footer-title{font-family:var(--f-mono);font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--c-text);margin-bottom:1.1rem}
.footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}
.footer-menu a,.footer-menu .menu-link{display:inline-block;padding:.3rem 0;color:var(--c-muted);text-decoration:none;font-size:.92rem;transition:color var(--t-fast),transform var(--t-fast)}
.footer-menu a:hover{color:var(--c-accent-text);transform:translateX(3px)}
.footer-menu .menu-item__row{display:block}
.footer-col--newsletter>p{color:var(--c-muted);font-size:.92rem}
.footer-links-inline{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;font-size:.85rem}
.footer-links-inline a{display:inline-flex;align-items:center;gap:.35rem;color:var(--c-muted)}
.footer-extra{padding-bottom:var(--sp-5)}
.site-footer__legal{border-top:1px solid var(--c-border);padding-block:1.5rem;font-size:.82rem}
.site-footer__legal-inner{display:grid;gap:1rem}
.site-footer__legal .footer-menu{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.site-footer__legal .footer-menu a{font-size:.82rem;padding:.2rem 0}
.copyright{margin:0;color:var(--c-faint);display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.site-footer .brand__top{animation:float-top 6s ease-in-out infinite}
@keyframes float-top{50%{transform:translateY(-3px)}}

/* 13. StackBot ------------------------------------------------------------- */
.stackbot{position:fixed;bottom:clamp(.75rem,2vw,1.5rem);z-index:90;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;pointer-events:none}
.stackbot--right{right:clamp(.75rem,2vw,1.5rem)}
.stackbot--left{left:clamp(.75rem,2vw,1.5rem);align-items:flex-start}
.stackbot>*{pointer-events:auto}
.stackbot__launcher{position:relative;width:68px;height:68px;padding:6px;border:1px solid var(--c-accent-line);border-radius:50%;background:radial-gradient(circle at 50% 35%,#1a221f,#070909);box-shadow:var(--shadow-2),0 0 0 4px rgba(8,10,10,.6),0 0 30px color-mix(in srgb,var(--c-accent) 22%,transparent);transition:transform var(--t-med) var(--ease),box-shadow var(--t-med)}
.stackbot__launcher:hover{transform:translateY(-3px) scale(1.04)}
.stackbot__launcher[aria-expanded=true]{transform:scale(.92)}
.stackbot__avatar,.stackbot__avatar svg{display:block;width:100%;height:100%}
.stackbot-svg .sb-float{animation:sb-float 4s ease-in-out infinite;transform-origin:center}
.stackbot-svg .sb-eye{transform-box:fill-box;transform-origin:center;animation:sb-blink 5s infinite}
.stackbot-svg .sb-antenna{animation:sb-glow 2.4s ease-in-out infinite}
.stackbot-svg .sb-glow{animation:sb-visor 3s ease-in-out infinite}
@keyframes sb-float{50%{transform:translateY(-3px)}}
@keyframes sb-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes sb-glow{50%{opacity:.45}}
@keyframes sb-visor{50%{opacity:.5}}
.stackbot.is-thinking .sb-eye{animation:sb-think .9s ease-in-out infinite}
@keyframes sb-think{50%{transform:translateX(3px) scaleY(.75)}}
.stackbot__greeting{position:relative;max-width:260px;padding:.85rem 2.4rem .85rem 1rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg) var(--r-lg) 4px var(--r-lg);background:var(--c-surface);box-shadow:var(--shadow-2);font-size:.88rem;animation:dialog-in var(--t-med) var(--ease)}
.stackbot--left .stackbot__greeting{border-radius:var(--r-lg) var(--r-lg) var(--r-lg) 4px}
.stackbot__greeting p{margin:0}
.stackbot__greeting-close{position:absolute;top:.4rem;right:.4rem;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:0;border-radius:6px;background:transparent;color:var(--c-muted)}
.stackbot__greeting-close:hover{color:var(--c-text);background:var(--c-surface-3)}
.stackbot__panel{display:flex;flex-direction:column;width:min(400px,calc(100vw - 1.5rem));height:min(600px,calc(100vh - 8rem));border:1px solid var(--c-border-2);border-radius:var(--r-xl);background:var(--c-bg-2);box-shadow:var(--shadow-2),var(--glow);overflow:hidden;animation:dialog-in var(--t-med) var(--ease)}
.stackbot__head{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--c-border);background:linear-gradient(180deg,var(--c-surface),var(--c-bg-2))}
.stackbot__head .icon-btn{margin-left:auto}
.stackbot__head-avatar{flex:none;width:36px;height:36px}
.stackbot__title{margin:0;font-size:1rem}
.stackbot__subtitle{margin:0;font-size:.75rem;color:var(--c-muted)}
.stackbot__mode{display:inline-block;margin-right:.35rem;padding:.05rem .4rem;border-radius:5px;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}

.stackbot__mode:not(.stackbot__mode--demo){background:var(--c-accent-soft);color:var(--c-accent-text)}
.stackbot__log{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem;scrollbar-width:thin;scrollbar-color:var(--c-border-2) transparent}
.sb-msg{max-width:88%;padding:.7rem .9rem;border-radius:var(--r-lg);font-size:.9rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.sb-msg--bot{align-self:flex-start;border:1px solid var(--c-border);background:var(--c-surface);border-bottom-left-radius:4px}
.sb-msg--user{align-self:flex-end;background:var(--c-accent);color:var(--c-accent-ink);border-bottom-right-radius:4px}
.sb-msg--note{align-self:stretch;max-width:none;font-size:.78rem;color:var(--c-amber);background:color-mix(in srgb,var(--c-amber) 7%,transparent);border:1px dashed color-mix(in srgb,var(--c-amber) 40%,transparent)}
.sb-msg--error{border-color:color-mix(in srgb,var(--c-red) 50%,transparent);color:var(--c-red-text)}
.sb-links{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.4rem;white-space:normal}
.sb-links a{display:block;padding:.55rem .7rem;border:1px solid var(--c-border-2);border-radius:var(--r-md);color:var(--c-text);text-decoration:none;background:var(--c-bg)}
.sb-links a:hover{border-color:var(--c-accent-line);color:var(--c-accent-text)}
.sb-links small{display:block;margin-top:.1rem;font-size:.72rem;color:var(--c-faint)}
.sb-typing{display:inline-flex;gap:.25rem}
.sb-typing i{width:6px;height:6px;border-radius:50%;background:var(--c-accent);animation:sb-dot 1.2s infinite}
.sb-typing i:nth-child(2){animation-delay:.15s}
.sb-typing i:nth-child(3){animation-delay:.3s}
@keyframes sb-dot{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.stackbot__suggest{display:flex;flex-wrap:wrap;gap:.4rem;padding:0 1rem .5rem}
.stackbot__suggest:empty{display:none}
.stackbot__suggest button{padding:.35rem .7rem;border:1px solid var(--c-border-2);border-radius:var(--r-pill);background:transparent;color:var(--c-muted);font-size:.78rem}
.stackbot__suggest button:hover{border-color:var(--c-accent-line);color:var(--c-accent-text)}
.stackbot__form{display:flex;align-items:flex-end;gap:.5rem;margin:0 .75rem;padding:.4rem .4rem .4rem .85rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:var(--c-bg)}
.stackbot__form:focus-within{border-color:var(--c-accent-text)}
.stackbot__form textarea{flex:1;min-width:0;max-height:120px;padding:.5rem 0;border:0;background:transparent;color:var(--c-text);resize:none;font-size:.92rem;line-height:1.4}
.stackbot__form textarea:focus{outline:none}
.stackbot__send{display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.5rem;height:2.5rem;border:0;border-radius:var(--r-md);background:var(--c-accent);color:var(--c-accent-ink)}
.stackbot__send[disabled]{opacity:.5}
.stackbot__fine{margin:.5rem 1rem .75rem;font-size:.7rem;line-height:1.4;color:var(--c-faint)}
.stackbot__fine a{color:var(--c-muted)}
@media (max-width:520px){.stackbot__launcher{width:58px;height:58px}.stackbot__panel{height:calc(100vh - 6.5rem)}}
.has-stackbot .site-footer__legal{padding-bottom:6rem}

/* 14. Motion ----------------------------------------------------------------- */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.is-visible{opacity:1;transform:none}
.hero__copy>*{animation:rise .8s var(--ease) both}
.hero__copy>*:nth-child(2){animation-delay:.08s}
.hero__copy>*:nth-child(3){animation-delay:.16s}
.hero__copy>*:nth-child(4){animation-delay:.24s}
.hero__lead{animation:rise .9s var(--ease) .2s both}
@keyframes rise{from{opacity:0;transform:translateY(18px)}}
.hero__lines path{animation:dash 30s linear infinite}
@keyframes dash{to{stroke-dashoffset:-400}}
.footer-network__lines{animation:dash 40s linear infinite}
.no-motion .hero__copy>*,.no-motion .hero__lead,.no-motion .hero__lines path,.no-motion .footer-network__lines,.no-motion .site-footer .brand__top,.no-motion .stackbot-svg *{animation:none!important}
.no-motion .reveal{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
	.js .reveal{opacity:1;transform:none}
	.hero__canvas{display:none}
	.card:hover,.topic-card:hover,.resource:hover,.btn--primary:hover{transform:none}
	.pulse{animation:none}
}

/* 15. Print ------------------------------------------------------------------ */
@media print{
	:root{--c-bg:#fff;--c-text:#000;--c-muted:#333}
	body{background:#fff;color:#000}
	.site-header,.site-footer,.stackbot,.read-progress,.share,.article-cta,.related,.post-nav,.comments,.article-aside,.toc,.t4s-cookie,.skip-link{display:none!important}
	.prose{color:#000;font-size:11pt}
	.prose a{color:#000;text-decoration:underline}
	.prose a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt}
	.prose pre{border:1px solid #999;background:#f6f6f6;color:#000;white-space:pre-wrap}
	.article-title{color:#000}
}

/* ==========================================================================
   16. B2B platform components (v1.1)
   ========================================================================== */
.theme-switching,.theme-switching *{transition:background-color .35s ease,color .35s ease,border-color .35s ease,fill .35s ease!important}
/* Header controls */
.theme-toggle .theme-toggle__sun{display:none}
[data-theme=dark] .theme-toggle .theme-toggle__sun{display:block}
[data-theme=dark] .theme-toggle .theme-toggle__moon{display:none}
.menu--primary>.menu-cta>.menu-item__row>.menu-link{margin-left:.5rem;padding:.45rem .85rem;border:1px solid var(--c-cta);border-radius:var(--r-pill);color:var(--c-red-text)}
.menu--primary>.menu-cta>.menu-item__row>.menu-link::after{display:none}
.menu--primary>.menu-cta>.menu-item__row>.menu-link:hover{background:var(--c-cta);color:#fff}
.site-header{background:color-mix(in srgb,var(--c-bg) 88%,transparent)}
/* Generic */
.card__more{display:inline-flex;align-items:center;gap:.35rem;margin-top:.35rem;font-family:var(--f-head);font-weight:600;font-size:.88rem;color:var(--c-text)}
.card__more .icon{color:var(--c-red);transition:transform var(--t-fast) var(--ease)}
.card:hover .card__more .icon{transform:translateX(4px)}
.chip__count{opacity:.6;margin-left:.15rem}
.label--trending{color:var(--c-accent-text)}

/* Hero (motion graphic) */
.hero{padding-block:clamp(2.5rem,6vw,5rem) 0;border-bottom:0}
.hero__inner{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(1.5rem,4vw,3.5rem)}
.hero__title{font-size:clamp(2.4rem,1.3rem + 4.2vw,4.6rem)}
.hero__chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:2rem 0 0;padding:0}
.hero__chips a,.hero__chips span{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border:1px solid var(--c-border-2);border-radius:var(--r-pill);background:rgba(255,255,255,.03);color:var(--c-muted);font-size:.82rem;text-decoration:none;transition:all var(--t-fast)}
.hero__chips a:hover{color:var(--c-text);border-color:var(--c-accent-line);background:var(--c-accent-soft)}
.hero__chips .icon{color:var(--c-accent)}
.hero__media{position:relative;min-width:0}
.hero__video{width:100%;border-radius:var(--r-xl);aspect-ratio:16/11;object-fit:cover}
.hero__pause{position:absolute;right:.5rem;bottom:.5rem;background:rgba(10,12,12,.7)}
.hero__pause .icon-play,.hero__media.is-paused .hero__pause[aria-pressed=true] .icon-pause{display:none}
.hero__media.is-paused .hero__pause[aria-pressed=true] .icon-play{display:block}
.hero__trust{padding-block:1.5rem 2rem;margin-top:clamp(1rem,3vw,2rem);border-top:1px solid var(--c-border)}
.hero__trust p{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:0;font-family:var(--f-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);text-align:center}
.hero__trust .icon{color:var(--c-accent);flex:none}
@media (max-width:1023px){.hero__inner{grid-template-columns:1fr}.hero__media{max-width:640px;margin-inline:auto;width:100%}}
@keyframes hs-float{50%{transform:translateY(-6px)}}
.hero__media.is-paused *{animation-play-state:paused!important}

/* Trending marquee */
.marquee{position:relative;display:flex;align-items:center;gap:0;border-block:1px solid var(--c-border);overflow:hidden}
.marquee__label{position:relative;z-index:2;display:inline-flex;align-items:center;gap:.5rem;flex:none;align-self:stretch;padding:0 1.1rem 0 max(var(--gutter),calc((100vw - var(--container))/2 + var(--gutter)));background:var(--c-cta);color:#fff;font-family:var(--f-mono);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.marquee__label .pulse{background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.6)}
.marquee__viewport{display:flex;flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 94%,transparent)}
.marquee__track{display:flex;flex:none;align-items:center;gap:0;margin:0;padding:0;list-style:none;animation:marquee 60s linear infinite}
.marquee:hover .marquee__track,.marquee:focus-within .marquee__track,.marquee.is-paused .marquee__track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-100%)}}
.marquee__item{display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 0 .95rem 1.5rem;white-space:nowrap}
.marquee__item a{color:var(--c-text);text-decoration:none;font-family:var(--f-head);font-weight:600;font-size:.95rem}
.marquee__item a:hover{color:var(--c-accent-text)}
.marquee__cat{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent-text)}
.marquee__sep{color:var(--c-red);font-size:.55rem;margin-left:.9rem}
.marquee__toggle{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-right:max(var(--gutter),calc((100vw - var(--container))/2 + var(--gutter)));border:1px solid var(--c-border-2);border-radius:50%;background:transparent;color:var(--c-muted)}
.marquee__toggle .icon-play,.marquee.is-paused .marquee__toggle .icon-pause{display:none}
.marquee.is-paused .marquee__toggle .icon-play{display:block}
@media (prefers-reduced-motion:reduce){.marquee__viewport{overflow-x:auto;mask-image:none;-webkit-mask-image:none}.marquee__track{animation:none}.marquee__track[aria-hidden]{display:none}.marquee__toggle{display:none}}
.no-motion .marquee__track{animation:none}.no-motion .marquee__viewport{overflow-x:auto}.no-motion .marquee__track[aria-hidden]{display:none}
@media (max-width:640px){.marquee__label{padding-left:var(--gutter);font-size:.65rem}.marquee__toggle{margin-right:.5rem;width:2.25rem;height:2.25rem}}

/* Latest & trending */
.latest__top{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:var(--sp-5);margin-bottom:var(--sp-5)}
.latest__top>.card--feature .card__media{aspect-ratio:16/9}
@media (max-width:1023px){.latest__top{grid-template-columns:1fr}}
.trend-rail{padding:1.25rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-bg-2)}
.trend-rail__title{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;font-family:var(--f-mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text)}
.trend-rail__title .icon{color:var(--c-red)}
.trend-rail__list{list-style:none;margin:0;padding:0;counter-reset:tr}
.trend-rail__item{counter-increment:tr;border-top:1px solid var(--c-border)}
.trend-rail__link{position:relative;display:grid;grid-template-columns:64px 1fr;gap:.85rem;align-items:center;padding:.85rem 0;color:var(--c-text);text-decoration:none}
.trend-rail__link::before{content:counter(tr);position:absolute;left:-.35rem;top:.55rem;z-index:1;display:grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--c-cta);color:#fff;font-family:var(--f-mono);font-size:.7rem;font-weight:700}
.trend-rail__thumb img,.trend-rail__thumb{width:64px;height:64px;border-radius:var(--r-sm);object-fit:cover;background:var(--c-surface-3)}
.trend-rail__cat{display:block;font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent-text)}
.trend-rail__name{display:block;font-family:var(--f-head);font-weight:600;line-height:1.3;font-size:.95rem}
.trend-rail__link:hover .trend-rail__name{text-decoration:underline;text-decoration-color:var(--c-red)}
.trend-rail__date{display:block;font-size:.75rem;color:var(--c-faint);margin-top:.15rem}
.latest__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1023px){.latest__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.latest__grid{grid-template-columns:1fr}}

/* What we cover */
.coverage__intro{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem;align-items:end;margin-bottom:var(--sp-6)}
.coverage__lead{margin:0;color:var(--c-muted);font-size:var(--fs-md)}
@media (max-width:900px){.coverage__intro{grid-template-columns:1fr}}
.coverage__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
@media (max-width:1023px){.coverage__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.coverage__grid{grid-template-columns:1fr}}
.topic-tile{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.4rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface);box-shadow:var(--shadow-1);transition:transform var(--t-med) var(--ease),box-shadow var(--t-med),border-color var(--t-med)}
.topic-tile::after{content:"";position:absolute;left:1.4rem;right:1.4rem;top:0;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,var(--c-red),var(--c-accent));transform:scaleX(0);transform-origin:left;transition:transform var(--t-med) var(--ease)}
.topic-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--c-border-2)}
.topic-tile:hover::after{transform:scaleX(1)}
.topic-tile__icon{display:inline-grid;place-items:center;width:2.9rem;height:2.9rem;border-radius:var(--r-md);background:var(--c-ink);color:var(--c-accent)}
.topic-tile__title{margin:.4rem 0 0;font-size:1.08rem}
.topic-tile__title a{color:var(--c-text);text-decoration:none}
.topic-tile__title a::after{content:"";position:absolute;inset:0}
.topic-tile__desc{margin:0;color:var(--c-muted);font-size:.88rem}
.topic-tile__count{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto;padding-top:.4rem;font-family:var(--f-mono);font-size:.72rem;color:var(--c-text)}
.topic-tile__count .icon{color:var(--c-red)}

/* Resource cards + library */
.library__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:1.25rem}
.library__head .section-title{max-width:20ch}
.library__lead{max-width:40rem;margin:.75rem 0 0;color:var(--c-muted)}
.library__types{margin-bottom:var(--sp-5)}
.rgrid{display:grid;gap:var(--sp-5);grid-template-columns:repeat(4,minmax(0,1fr))}
.rgrid--archive{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr))}
@media (max-width:1100px){.rgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.rgrid{grid-template-columns:1fr}}
.rcard{position:relative;display:flex;flex-direction:column;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface);overflow:hidden;box-shadow:var(--shadow-1);transition:transform var(--t-med) var(--ease),box-shadow var(--t-med),border-color var(--t-med)}
.rcard:hover,.rcard:focus-within{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--c-border-2)}
.rcard__media{position:relative;aspect-ratio:4/3;background:var(--c-ink);overflow:hidden}
.rcard__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.rcard:hover .rcard__media img{transform:scale(1.05)}
.rcard__cover{display:flex;flex-direction:column;justify-content:flex-end;gap:.75rem;height:100%;padding:1.25rem;color:#F5F7F5;background:radial-gradient(circle at 80% 10%,rgba(94,158,126,.25),transparent 55%),radial-gradient(circle at 0 100%,rgba(227,62,51,.22),transparent 50%),linear-gradient(135deg,#141a18,#070909)}
.rcard__cover .icon{color:var(--c-accent)}
.rcard__cover span{font-family:var(--f-head);font-weight:700;font-size:1.1rem;line-height:1.2}
.rcard__type{position:absolute;left:.75rem;top:.75rem;display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border-radius:var(--r-pill);background:rgba(8,10,10,.85);color:#fff;font-family:var(--f-mono);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(6px)}
.rcard__type .icon{color:var(--c-accent)}
.rcard--webinars .rcard__type{background:var(--c-cta)}
.rcard--webinars .rcard__type .icon{color:#fff}
.rcard__body{display:flex;flex-direction:column;gap:.5rem;flex:1;padding:1.1rem 1.2rem 1.2rem}
.rcard__meta{margin:0;font-family:var(--f-mono);font-size:.72rem;color:var(--c-faint)}
.rcard__badge{display:inline-block;margin-left:.35rem;padding:.05rem .4rem;border-radius:5px;background:var(--c-accent-soft);color:var(--c-accent-text)}
.rcard__title{margin:0;font-size:1.05rem;line-height:1.3}
.rcard__link{color:var(--c-text);text-decoration:none}
.rcard__link::after{content:"";position:absolute;inset:0}
.rcard__link:focus-visible{outline:none}
.rcard:has(.rcard__link:focus-visible){outline:2px solid var(--c-accent-text);outline-offset:3px}
.rcard__excerpt{margin:0;font-size:.88rem;color:var(--c-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.rcard__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-top:auto;padding-top:.75rem;border-top:1px solid var(--c-border)}
.rcard__sponsor{font-size:.75rem;color:var(--c-faint)}
.rcard__cta{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--f-head);font-weight:700;font-size:.85rem;color:var(--c-red-text)}
.library-hero .archive-desc{max-width:46rem}
.library-search{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;max-width:760px;margin-top:1.5rem;padding:.4rem .4rem .4rem 1rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:var(--c-surface)}
.library-search .icon{color:var(--c-muted)}
.library-search input[type=search]{flex:1 1 14rem;min-width:0;padding:.6rem 0;border:0;background:transparent;color:var(--c-text);font-size:1rem}
.library-search input:focus{outline:none}
.library-search select{padding:.55rem .7rem;border:1px solid var(--c-border-2);border-radius:var(--r-sm);background:var(--c-bg);color:var(--c-text)}
.library-search:focus-within{border-color:var(--c-accent)}
.type-tabs{border-bottom:1px solid var(--c-border)}
.type-tabs__inner{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none}
.type-tabs a{flex:none;padding:.95rem .9rem;border-bottom:2px solid transparent;color:var(--c-muted);text-decoration:none;font-family:var(--f-head);font-weight:600;font-size:.9rem}
.type-tabs a:hover{color:var(--c-text)}
.type-tabs a[aria-current]{color:var(--c-text);border-bottom-color:var(--c-red)}
.type-tabs__sep{flex:none;width:1px;margin:.8rem .5rem;background:var(--c-border-2)}

/* Webinars */
.webinars{position:relative;overflow:hidden}
.webinars__bg{position:absolute;inset:0;background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--c-red) 16%,transparent),transparent 50%),radial-gradient(ellipse at 0 100%,color-mix(in srgb,var(--c-accent) 9%,transparent),transparent 50%);pointer-events:none}
.webinars .container{position:relative}
.webinar-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.webinar{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding:1.25rem 1.5rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:rgba(255,255,255,.025);transition:border-color var(--t-med),background var(--t-med)}
.webinar:hover{border-color:var(--c-red);background:rgba(255,255,255,.04)}
.webinar__date{display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:var(--r-md);background:var(--c-cta);color:#fff;line-height:1}
.webinar__day{font-family:var(--f-head);font-size:1.7rem;font-weight:700}
.webinar__month{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-top:-.6rem}
.webinar__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .35rem;font-size:.82rem;color:var(--c-muted)}
.webinar__title{margin:0;font-size:1.2rem}
.webinar__title a{color:var(--c-text);text-decoration:none}
.webinar__title a:hover{text-decoration:underline;text-decoration-color:var(--c-red)}
.webinar__speakers{display:flex;align-items:center;gap:.4rem;margin:.4rem 0 0;font-size:.85rem;color:var(--c-muted)}
.webinar__speakers .icon{color:var(--c-accent)}
@media (max-width:760px){.webinar{grid-template-columns:auto 1fr}.webinar__cta{grid-column:1/-1;justify-self:start}}

/* Partner */
.partner{position:relative;overflow:hidden}
.partner__bg{position:absolute;inset:0;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--c-red) 20%,transparent),transparent 55%),linear-gradient(180deg,transparent,rgba(94,158,126,.04));pointer-events:none}
.partner__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4rem);align-items:center}
@media (max-width:960px){.partner__inner{grid-template-columns:1fr}}
.partner__text{font-size:var(--fs-lg);color:var(--c-muted)}
.partner__copy .section-title,.coverage .section-title,.library .section-title{margin-bottom:1rem}
.partner__proof{list-style:none;margin:1.5rem 0;padding:0;display:grid;gap:.65rem}
.partner__proof li{display:flex;gap:.6rem;align-items:flex-start}
.partner__proof .icon{flex:none;margin-top:.2rem;color:var(--c-accent)}
.partner__services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
@media (max-width:560px){.partner__services{grid-template-columns:1fr}}
.service{padding:1.4rem;border:1px solid var(--c-border-2);border-radius:var(--r-lg);background:rgba(255,255,255,.03);transition:transform var(--t-med) var(--ease),border-color var(--t-med)}
.service:hover{transform:translateY(-4px);border-color:var(--c-red)}
.service__icon{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;margin-bottom:.8rem;border-radius:var(--r-md);background:var(--c-red-soft);color:var(--c-red-text)}
.service__title{font-size:1.05rem;margin:0 0 .35rem}
.service p{margin:0;font-size:.9rem;color:var(--c-muted)}
.partner-hero{position:relative;isolation:isolate;padding-block:clamp(2.5rem,7vw,5rem);overflow:hidden}
.partner-hero__title{font-size:var(--fs-hero);letter-spacing:-.045em;line-height:1;margin-bottom:1rem}
.partner-hero__lead{max-width:44rem;font-size:var(--fs-lg);color:var(--c-muted);margin-bottom:2rem}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0;counter-reset:s}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}
.step{padding:1.4rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-surface);box-shadow:var(--shadow-1)}
.step__n{display:block;margin-bottom:.75rem;font-family:var(--f-mono);font-size:1.6rem;font-weight:700;color:var(--c-red-text)}
.step h3{font-size:1.1rem;margin-bottom:.35rem}
.step p{margin:0;color:var(--c-muted);font-size:.92rem}
.audience__inner{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
@media (max-width:900px){.audience__inner{grid-template-columns:1fr}}
.stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin:1.5rem 0 0}
.stat dd{margin:0;font-family:var(--f-head);font-size:2rem;font-weight:700}
.stat dt{order:2;font-size:.82rem;color:var(--c-muted)}
.stat{display:flex;flex-direction:column-reverse}
.compliance__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;margin:var(--sp-5) 0 0;padding:0}
@media (max-width:760px){.compliance__list{grid-template-columns:1fr}}
.compliance__list li{display:flex;gap:.8rem;align-items:flex-start;padding:1.1rem;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface)}
.compliance__list .icon{flex:none;color:var(--c-accent-text)}

/* Resource landing page */
.resource-hero{position:relative;isolation:isolate;padding-block:clamp(1.75rem,5vw,3.5rem) clamp(2rem,5vw,4rem);overflow:hidden}
.resource-hero__bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 15% 0,color-mix(in srgb,var(--c-accent) 12%,transparent),transparent 55%),radial-gradient(ellipse at 100% 100%,color-mix(in srgb,var(--c-red) 14%,transparent),transparent 50%),linear-gradient(var(--c-accent-soft) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,var(--c-accent-soft) 1px,transparent 1px) 0 0/48px 48px;mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.5))}
.resource-hero__inner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.9fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
@media (max-width:960px){.resource-hero__inner{grid-template-columns:1fr}}
.resource-hero__labels{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 1rem}
.rtype-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border-radius:var(--r-pill);background:var(--c-cta);color:#fff;font-family:var(--f-mono);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.resource-hero__title{font-size:var(--fs-3xl);letter-spacing:-.035em;line-height:1.08;text-wrap:balance}
.resource-hero__dek{font-size:var(--fs-lg);color:var(--c-muted);line-height:1.55}
.resource-facts{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;list-style:none;margin:1.25rem 0;padding:0;font-size:.9rem;color:var(--c-muted)}
.resource-facts li{display:inline-flex;align-items:center;gap:.4rem}
.resource-facts .icon{color:var(--c-accent)}
.resource-cover{margin:1.5rem 0 0;perspective:1200px}
.resource-cover img{width:min(100%,520px);border-radius:var(--r-md);border:1px solid var(--c-border-2);box-shadow:var(--shadow-2);transform:rotateY(-10deg) rotateX(4deg);transform-origin:left center;transition:transform .8s var(--ease)}
.resource-cover:hover img{transform:none}
@media (prefers-reduced-motion:reduce){.resource-cover img{transform:none}}
.resource-form{position:sticky;top:calc(var(--header-h) + 1rem);padding:clamp(1.25rem,3vw,1.75rem);border:1px solid var(--c-border);border-top:4px solid var(--c-cta);border-radius:var(--r-lg);box-shadow:0 30px 70px rgba(0,0,0,.35)}
@media (max-width:960px){.resource-form{position:static}}
.resource-form__title{font-size:1.4rem;margin-bottom:.35rem}
.resource-form__sub{color:var(--c-muted);font-size:.92rem;margin-bottom:1.1rem}
.resource-form .t4s-form{gap:.85rem}
@media (min-width:420px){.resource-form .t4s-form__grid{grid-template-columns:1fr 1fr;gap:.85rem}}
.resource-form .t4s-help{font-size:.75rem}
.resource-form .t4s-field>label{font-size:.85rem}
.resource-form .t4s-form input[type=text],.resource-form .t4s-form input[type=email],.resource-form .t4s-form input[type=tel],.resource-form .t4s-form select{min-height:2.6rem;padding:.5rem .75rem;font-size:.95rem}
.t4s-form input[type=tel]{width:100%;min-height:2.875rem;padding:.65rem .85rem;border:1px solid var(--t4s-border);border-radius:10px;background:var(--t4s-field-bg);color:var(--t4s-text);font:inherit}
.resource-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(2rem,5vw,4rem);padding-block:clamp(2rem,5vw,3.5rem) var(--sp-8)}
@media (max-width:960px){.resource-body{grid-template-columns:1fr}}
.learn{margin-bottom:2rem;padding:1.5rem;border:1px solid var(--c-border);border-radius:var(--r-lg);background:var(--c-bg-2)}
.learn h2{font-size:1.35rem}
.learn__list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.learn__list li{display:flex;gap:.65rem;align-items:flex-start}
.learn__list .icon{flex:none;margin-top:.2rem;color:var(--c-accent-text)}
.speakers{margin-top:2rem}
.speakers__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
.speaker{display:flex;gap:.8rem;align-items:center;padding:1rem;border:1px solid var(--c-border);border-radius:var(--r-md)}
.speaker__avatar{display:grid;place-items:center;flex:none;width:2.75rem;height:2.75rem;border-radius:50%;background:var(--c-ink);color:var(--c-accent);font-family:var(--f-head);font-weight:700}
.speaker__role{display:block;font-size:.82rem;color:var(--c-muted)}
.sponsor-box{margin-top:2rem;padding:1.25rem;border:1px dashed var(--c-border-2);border-radius:var(--r-md);font-size:.9rem;color:var(--c-muted)}
.sponsor-box p:last-child{margin:0}
.side-title{font-size:1rem;font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted)}
.mini-resources{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.6rem}
.mini-resources a{display:block;padding:.9rem;border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-text);text-decoration:none;transition:border-color var(--t-fast)}
.mini-resources a:hover{border-color:var(--c-red)}
.mini-resources__type{display:flex;align-items:center;gap:.35rem;font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-red-text)}
.mini-resources__title{display:block;margin-top:.25rem;font-family:var(--f-head);font-weight:600;line-height:1.3}

/* Subscription popup */
.subscribe-popup{width:min(880px,calc(100% - 2rem));max-height:calc(100vh - 2rem);padding:0;border:0;border-radius:var(--r-xl);background:var(--c-surface);color:var(--c-text);box-shadow:0 40px 100px rgba(0,0,0,.5);overflow:auto}
.subscribe-popup::backdrop{background:rgba(5,7,7,.6);backdrop-filter:blur(3px)}
.subscribe-popup[open]{animation:dialog-in .35s var(--ease)}
.subscribe-popup__inner{display:grid;grid-template-columns:260px 1fr}
.subscribe-popup__brand{display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:2rem 1.5rem;background:radial-gradient(circle at 20% 0,rgba(94,158,126,.25),transparent 60%),radial-gradient(circle at 100% 100%,rgba(227,62,51,.3),transparent 55%),var(--c-bg)}
.subscribe-popup__mark{color:#F5F7F5;animation:hs-float 5s ease-in-out infinite}
.subscribe-popup__perks{list-style:none;margin:0;padding:0;display:grid;gap:.65rem;font-size:.88rem}
.subscribe-popup__perks li{display:flex;gap:.5rem;align-items:flex-start}
.subscribe-popup__perks .icon{flex:none;color:var(--c-accent);margin-top:.15rem}
.subscribe-popup__main{position:relative;padding:2rem clamp(1.25rem,3vw,2.25rem) 1.5rem}
.subscribe-popup__close{position:absolute;top:1rem;right:1rem}
.subscribe-popup__title{font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem);margin:0 2.5rem .5rem 0}
.subscribe-popup__text{color:var(--c-muted);margin-bottom:1.25rem}
.subscribe-popup .t4s-form{gap:.85rem}
.subscribe-popup .t4s-chips__list{gap:.35rem}
.subscribe-popup .t4s-chip span{padding:.3rem .65rem;font-size:.8rem}
.subscribe-popup .t4s-btn--primary{width:100%}
.subscribe-popup__later{display:block;margin:.75rem auto 0;font-size:.85rem}
@media (max-width:720px){
	.subscribe-popup{width:100%;max-width:100%;max-height:88vh;margin:auto 0 0;border-radius:var(--r-xl) var(--r-xl) 0 0}
	.subscribe-popup[open]{animation:sheet-in .35s var(--ease)}
	.subscribe-popup__inner{grid-template-columns:1fr}
	.subscribe-popup__brand{display:none}
	.subscribe-popup__main{padding:1.5rem 1.25rem 1.25rem}
	.subscribe-popup .t4s-form__more{display:none}
	.subscribe-popup .t4s-form__row{grid-template-columns:1fr 1fr}
	.subscribe-popup__text{font-size:.92rem;margin-bottom:.75rem}
}
@keyframes sheet-in{from{transform:translateY(100%)}}

/* Light-mode refinements */
[data-theme=light] .card,[data-theme=light] .author-card,[data-theme=light] .resource,[data-theme=light] .topic-card{box-shadow:var(--shadow-1)}
[data-theme=light] .site-header.is-scrolled{box-shadow:0 8px 24px rgba(16,24,20,.08)}
.band-light .chip,.band-light .rcard{background:var(--c-surface)}
.newsletter__card{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--c-accent) 10%,transparent),transparent 55%),radial-gradient(ellipse at 100% 100%,color-mix(in srgb,var(--c-red) 8%,transparent),transparent 50%),var(--c-surface);border-color:var(--c-border-2)}
.home-section+.home-section:not([class*=band-]){border-top:1px solid var(--c-border)}
@media (max-width:420px){.masthead__inner{gap:.5rem}.masthead__actions{gap:.3rem}.masthead__actions .icon-btn{min-width:2.5rem;height:2.5rem;padding:0 .4rem}.masthead__cta{min-height:2.5rem;padding:0 .65rem}}
@media (max-width:359px){.masthead__actions .theme-toggle{display:none}.brand__word{font-size:1.05rem}}
.drawer__theme{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-muted);font-size:.9rem}
/* StackBot never covers forms on small screens */
@media (max-width:720px){.stackbot__launcher{width:50px;height:50px;padding:4px}.stackbot{bottom:.6rem}.stackbot--right{right:.6rem}.stackbot--left{left:.6rem}body.is-typing .stackbot:not(:has(.stackbot__panel:not([hidden]))){opacity:0;visibility:hidden;transition:opacity .2s}}
.single-t4s_resource .stackbot__greeting{display:none!important}

/* ==========================================================================
   v1.2 — Dialog entrance / exit motion (popup, search, drawer)
   ========================================================================== */
.subscribe-popup[open]{animation:popup-in .45s cubic-bezier(.16,1,.3,1)}
.subscribe-popup[open]::backdrop{animation:backdrop-in .35s ease both}
.subscribe-popup.is-closing{animation:popup-out .26s cubic-bezier(.4,0,1,1) forwards}
.subscribe-popup.is-closing::backdrop{animation:backdrop-out .26s ease forwards}
.search-dialog.is-closing{animation:popup-out .22s ease forwards}
.drawer.is-closing{animation:drawer-out .26s cubic-bezier(.4,0,1,1) forwards}
.search-dialog.is-closing::backdrop,.drawer.is-closing::backdrop{animation:backdrop-out .24s ease forwards}
@keyframes popup-in{from{opacity:0;transform:translateY(24px) scale(.94);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes popup-out{to{opacity:0;transform:translateY(14px) scale(.96)}}
@keyframes drawer-out{to{transform:translateX(100%)}}
@keyframes backdrop-in{from{opacity:0}}
@keyframes backdrop-out{to{opacity:0}}
@media (max-width:720px){
	.subscribe-popup[open]{animation:sheet-in .42s cubic-bezier(.16,1,.3,1)}
	.subscribe-popup.is-closing{animation:sheet-out .28s cubic-bezier(.4,0,1,1) forwards}
}
@keyframes sheet-out{to{transform:translateY(100%)}}

/* ==========================================================================
   v1.2 — PREMIUM DARK LAYER
   60% rich black · 30% forest green / olive · 10% crimson / vermillion.
   Dark is the default scheme; the light scheme remains available from the toggle.
   ========================================================================== */
:root{
	--c-ink:#0A0A0A;--c-ink-2:#121212;
	--c-forest:#2D4A3E;--c-olive:#3E5641;--c-forest-deep:#1B2E26;--c-forest-bright:#5E9E7E;--c-sage:#A9C7B5;
	--c-crimson:#DC143C;--c-vermillion:#E33E33;--c-coral:#FF5A4F;
	--c-accent:#5E9E7E;--c-accent-ink:#0A0A0A;
	--c-red:#E33E33;--c-cta:#DC143C;--c-cta-hover:#E33E33;--c-cta-ink:#FFFFFF;
	--c-accent-soft:color-mix(in srgb,var(--c-forest-bright) 16%,transparent);
	--c-accent-line:color-mix(in srgb,var(--c-forest-bright) 45%,transparent);
	--c-red-soft:color-mix(in srgb,var(--c-vermillion) 14%,transparent);
	--grad-cta:linear-gradient(135deg,#E33E33 0%,#DC143C 55%,#B80F33 100%);
	--grad-forest:linear-gradient(155deg,#243D33 0%,#2D4A3E 45%,#3E5641 100%);
	--grad-text:linear-gradient(100deg,#FF6A5C 0%,#E33E33 40%,#DC143C 100%);
	--ease-out:cubic-bezier(.16,1,.3,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);
}
/* Dark (default) — dominant rich black, green-tinted surfaces, forest borders */
[data-theme=dark],.band-dark,.card--overlay,.terminal,.code-block{
	--c-bg:#0A0A0A;--c-bg-2:#121212;--c-surface:#121815;--c-surface-2:#17201B;--c-surface-3:#1E2A24;
	--c-border:#1E2C25;--c-border-2:#2D4A3E;--c-text:#F0F0F0;--c-muted:#B3B8B5;--c-faint:#8F9692;--c-prose:#E4E7E5;
	--c-accent-text:#FF5A4F;--c-accent-hover:#FF8A80;--c-red-text:#FF5A4F;--c-code-inline:#CFE6D8;--c-code-bg:#16201B;
	--shadow-1:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -10px rgba(0,0,0,.6);
	--shadow-2:0 30px 80px -20px rgba(0,0,0,.75);
	--glow:0 0 0 1px rgba(227,62,51,.45),0 18px 50px -14px rgba(220,20,60,.38);
	--t4s-field-bg:#0E1311;--t4s-border:#2D4A3E;--t4s-text:#F0F0F0;--t4s-muted:#B3B8B5;--t4s-accent:#FF5A4F;--t4s-red:#DC143C;--t4s-danger:#FF7A70;--t4s-surface:#121815;
	color-scheme:dark;
}
/* Secondary sections in dark mode — forest green / olive (the "30%") */
[data-theme=dark] .band-light,[data-theme=dark] .band-alt,[data-theme=dark] .newsletter__card,[data-theme=dark] .subscribe-popup__main{
	--c-bg:#2D4A3E;--c-bg-2:#263F35;--c-surface:#1E3329;--c-surface-2:#23392F;--c-surface-3:#2A4338;
	--c-border:rgba(240,240,240,.12);--c-border-2:#4F7264;--c-text:#F0F0F0;--c-muted:#CFD8D2;--c-faint:#BAC6BF;--c-prose:#EEF2EF;
	--c-accent-text:#FFD0CB;--c-accent-hover:#FFFFFF;--c-red-text:#FFC2BC;--c-code-inline:#E3F1E8;--c-code-bg:#1B2E26;
	--shadow-1:0 1px 0 rgba(255,255,255,.06) inset,0 12px 30px -12px rgba(0,0,0,.45);
	--glow:0 0 0 1px rgba(255,208,203,.5),0 18px 50px -14px rgba(0,0,0,.5);
	--t4s-field-bg:#1B2E26;--t4s-border:#4F7264;--t4s-text:#F0F0F0;--t4s-muted:#CFD8D2;--t4s-accent:#FFD0CB;--t4s-danger:#FFC2BC;--t4s-surface:#1E3329;
	color-scheme:dark;
}
[data-theme=dark] :is(.band-light,.band-alt) :is(.band-dark,.card--overlay,.terminal,.code-block){
	--c-bg:#0A0A0A;--c-bg-2:#121212;--c-surface:#121815;--c-surface-2:#17201B;--c-surface-3:#1E2A24;--c-border:#1E2C25;--c-border-2:#2D4A3E;--c-text:#F0F0F0;--c-muted:#B3B8B5;--c-faint:#8F9692;--c-accent-text:#FF5A4F;--c-red-text:#FF5A4F;
}
[data-theme=dark] .band-light{background:radial-gradient(1100px 520px at 8% 0%,rgba(94,158,126,.30),transparent 62%),radial-gradient(900px 480px at 100% 100%,rgba(220,20,60,.12),transparent 60%),var(--grad-forest)}
[data-theme=dark] .band-alt{background:radial-gradient(900px 420px at 92% 0%,rgba(94,158,126,.22),transparent 60%),linear-gradient(180deg,#1B2E26 0%,#22392F 100%)}
/* Light scheme (optional) — paper with forest + crimson */
:root[data-theme=light]{
	--c-accent:#2D4A3E;--c-accent-ink:#FFFFFF;
	--c-accent-text:#B5122F;--c-accent-hover:#8F0D24;--c-red-text:#B5122F;
	--c-border:#DDE5E0;--c-border-2:#C3D0C8;
	--glow:0 0 0 1px rgba(220,20,60,.35),0 16px 40px -14px rgba(45,74,62,.35);
}
[data-theme=light] .band-light{background:#FFFFFF}
[data-theme=light] .band-alt{background:linear-gradient(180deg,#EEF4F0,#F6F9F7)}
body{background:var(--c-bg);color:var(--c-text)}
::selection{background:var(--c-crimson);color:#fff}
:focus-visible{outline-color:var(--c-coral)}
[data-theme=light] :focus-visible{outline-color:var(--c-crimson)}

/* Hero stack: forest layers, the 4th (AI) layer in crimson */
.hero__title .text-accent{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 0 28px rgba(227,62,51,.35))}
@media (forced-colors:active){.hero__title .text-accent{color:CanvasText;background:none}}

/* ==========================================================================
   v1.2 — PREMIUM UI LAYER (surfaces, buttons, cards, motion, components)
   ========================================================================== */
@property --angle{syntax:"<angle>";initial-value:0deg;inherits:false}

/* Typography polish */
h1,h2,h3,.section-title{letter-spacing:-.022em;text-wrap:balance}
.section-title{font-weight:700}
.eyebrow{color:var(--c-accent-text)}
.eyebrow::before{content:"";width:1.4rem;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--c-crimson),transparent)}
[data-theme=dark] :is(.band-light,.band-alt) .eyebrow::before{background:linear-gradient(90deg,#FFD0CB,transparent)}
.eyebrow--accent::before{display:none}

/* Header — glass */
[data-theme=dark] .site-header{background:linear-gradient(180deg,rgba(10,10,10,.86),rgba(10,10,10,.72));border-bottom-color:rgba(94,158,126,.18)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(220,20,60,.55) 30%,rgba(94,158,126,.55) 70%,transparent);opacity:0;transition:opacity var(--t-med)}
.site-header.is-scrolled::after{opacity:1}
.site-header.is-scrolled{box-shadow:0 12px 40px -18px rgba(0,0,0,.7)}

/* Buttons — crimson gradient, shine sweep, press scale, ripple */
.btn{overflow:hidden;isolation:isolate;transition:transform .25s var(--ease-out),box-shadow .3s,background .3s,border-color .3s,color .3s}
.btn--primary,.t4s-btn--primary{background:var(--grad-cta);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 10px 26px -12px rgba(220,20,60,.75)}
.btn--primary:hover,.t4s-btn--primary:hover{background:var(--grad-cta);box-shadow:0 1px 0 rgba(255,255,255,.22) inset,0 0 0 4px rgba(220,20,60,.18),0 16px 36px -12px rgba(227,62,51,.8);transform:translateY(-2px)}
.btn--primary::before,.t4s-btn--primary::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease-out)}
.btn--primary:hover::before,.t4s-btn--primary:hover::before{transform:translateX(120%)}
.btn:active,.t4s-btn:active{transform:translateY(0) scale(.97)}
.btn--ghost{border-color:var(--c-border-2);background:color-mix(in srgb,var(--c-surface) 55%,transparent);backdrop-filter:blur(8px)}
.btn--ghost:hover{border-color:var(--c-vermillion);color:var(--c-text);box-shadow:0 0 0 3px rgba(227,62,51,.14)}
.t4s-btn{position:relative;overflow:hidden;isolation:isolate}
.ripple{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.38) 0,rgba(255,255,255,0) 60%);transform:scale(0);animation:t4s-ripple .65s var(--ease-out) forwards;z-index:0}
@keyframes t4s-ripple{to{transform:scale(1);opacity:0}}

/* Cards — layered surfaces, forest borders, cursor spotlight, lift */
.card,.rcard,.author-card,.stat{position:relative;isolation:isolate;transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out),border-color .3s}
[data-theme=dark] :is(.card,.rcard,.author-card):not(.card--overlay){background:linear-gradient(180deg,color-mix(in srgb,var(--c-surface-2) 92%,transparent),var(--c-surface));border-color:var(--c-border-2)}
:is(.card,.rcard,.author-card,.stat)::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:1;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(227,62,51,.12),transparent 45%)}
.fx :is(.card,.rcard,.author-card,.stat):hover::after{opacity:1}
:is(.card,.rcard):hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--c-vermillion) 55%,var(--c-border-2));box-shadow:0 26px 60px -26px rgba(0,0,0,.8),0 0 0 1px rgba(227,62,51,.25)}
[data-theme=light] :is(.card,.rcard):hover{box-shadow:0 22px 50px -24px rgba(45,74,62,.45),0 0 0 1px rgba(220,20,60,.25)}
:is(.card,.rcard) :is(.card__media,.rcard__media) img{transition:transform .8s var(--ease-out),filter .6s}
:is(.card,.rcard):hover :is(.card__media,.rcard__media) img{transform:scale(1.045)}
.card__title a,.rcard__title a{background-image:linear-gradient(90deg,var(--c-vermillion),var(--c-crimson));background-size:0 2px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .45s var(--ease-out)}
.card:hover .card__title a,.rcard:hover .rcard__title a{background-size:100% 2px}
.rcard__type,.card .cat-badge,.badge{transition:background .3s,color .3s}

/* Glassmorphism helper + animated conic border */
.glass{background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.02));backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border:1px solid rgba(255,255,255,.1);box-shadow:0 1px 0 rgba(255,255,255,.08) inset,var(--shadow-2)}
.glow-border{position:relative}
.glow-border::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;background:conic-gradient(from var(--angle),transparent 0 60%,rgba(220,20,60,.95) 72%,rgba(94,158,126,.9) 84%,transparent 96%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55;transition:opacity .4s}
.fx .glow-border::before{animation:t4s-spin 6s linear infinite}
.glow-border:hover::before{opacity:1}
@keyframes t4s-spin{to{--angle:360deg}}
.newsletter__card,.partner__inner,.subscribe-popup__main{position:relative}
.fx .newsletter__card::after,.fx .partner__inner::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;z-index:0;background:conic-gradient(from var(--angle),transparent 0 55%,rgba(220,20,60,.85) 70%,rgba(169,199,181,.7) 85%,transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:t4s-spin 8s linear infinite}

/* Animated background mesh for bands */
.band-light,.band-alt,.band-dark{position:relative;isolation:isolate}
.fx [data-theme=dark] .band-light::before,.fx[data-theme=dark] .band-light::before,.fx[data-theme=dark] .band-alt::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(40% 55% at 20% 30%,rgba(94,158,126,.22),transparent 70%),radial-gradient(35% 45% at 80% 70%,rgba(220,20,60,.10),transparent 70%);background-size:200% 200%;animation:t4s-mesh 22s ease-in-out infinite alternate}
@keyframes t4s-mesh{0%{background-position:0% 0%}50%{background-position:60% 40%}100%{background-position:100% 100%}}

/* Section separators: a hairline with a crimson spark */
.home-section+.home-section{border-top:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(94,158,126,.35) 25%,rgba(220,20,60,.5) 50%,rgba(94,158,126,.35) 75%,transparent) 1}
[data-theme=light] .home-section+.home-section{border-image:linear-gradient(90deg,transparent,rgba(45,74,62,.25) 25%,rgba(220,20,60,.4) 50%,rgba(45,74,62,.25) 75%,transparent) 1}

/* Hero — pointer light, parallax, tilt, floating particles */
.hero{--hx:70%;--hy:30%}
.hero__bg::after{content:"";position:absolute;inset:0;background:radial-gradient(600px circle at var(--hx) var(--hy),rgba(220,20,60,.14),transparent 55%);transition:background .2s}
.hero__glow{background:radial-gradient(circle,rgba(45,74,62,.55),transparent 62%)!important}
.hero__glow::after{background:radial-gradient(circle,rgba(220,20,60,.22),transparent 65%)!important}
.hero__media{perspective:1200px}
.hero__chips>*{transition:transform .3s var(--ease-out),border-color .3s,background .3s}
.hero__chips>*:hover{transform:translateY(-2px);border-color:var(--c-vermillion)}
.particles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.particles i{position:absolute;bottom:-10px;width:var(--s,4px);height:var(--s,4px);border-radius:50%;background:var(--c,rgba(169,199,181,.7));box-shadow:0 0 10px currentColor;opacity:0;left:var(--x,50%)}
.fx .particles i{animation:t4s-rise var(--d,14s) linear var(--delay,0s) infinite}
@keyframes t4s-rise{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:.85}90%{opacity:.5}100%{transform:translate3d(var(--dx,20px),-110vh,0);opacity:0}}
.float{animation:none}
.fx .float{animation:t4s-float 7s ease-in-out infinite}
@keyframes t4s-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* Reveal variants + stagger */
.js .reveal{transition-delay:calc(var(--i,0) * 70ms)}
.js .reveal--left{transform:translateX(-26px)}.js .reveal--right{transform:translateX(26px)}.js .reveal--zoom{transform:scale(.96)}
.js .reveal.is-visible{transform:none}
.fx .reveal.is-visible :is(.grid,.rgrid,.coverage__grid)>*{animation:t4s-up .7s var(--ease-out) both;animation-delay:calc(var(--i,0) * 60ms)}
@keyframes t4s-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* Stats — "By the numbers" */
.stats{overflow:hidden;background:radial-gradient(900px 400px at 50% 0%,rgba(45,74,62,.45),transparent 70%),var(--c-bg)}
.stats__mesh{position:absolute;inset:0;z-index:-1;opacity:.5;background-image:linear-gradient(rgba(94,158,126,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(94,158,126,.10) 1px,transparent 1px);background-size:44px 44px;-webkit-mask:radial-gradient(ellipse at 50% 40%,#000,transparent 70%);mask:radial-gradient(ellipse at 50% 40%,#000,transparent 70%)}
.stats__head{text-align:center;max-width:44rem;margin:0 auto clamp(2rem,4vw,3rem)}
.stats__head .eyebrow{justify-content:center}
.stats__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:clamp(.85rem,2vw,1.25rem);margin:0;padding:0;list-style:none}
.stat{display:flex;flex-direction:column;gap:.45rem;padding:clamp(1.25rem,3vw,1.75rem);border:1px solid var(--c-border-2);border-radius:18px;background:linear-gradient(160deg,rgba(45,74,62,.38),rgba(18,24,21,.9) 60%);box-shadow:var(--shadow-1)}
.stat:hover{transform:translateY(-4px)}
.stat__icon{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:12px;color:#FFD0CB;background:linear-gradient(135deg,rgba(220,20,60,.35),rgba(220,20,60,.12));border:1px solid rgba(227,62,51,.4)}
.stat__num{font-family:var(--f-head);font-size:clamp(2.4rem,5vw,3.4rem);font-weight:700;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#FFFFFF,#CFD8D2);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat__num::after{content:"+";margin-left:.1em;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat__label{color:var(--c-muted);font-weight:600;text-decoration:none}
a.stat__label:hover{color:var(--c-text)}
a.stat__label::after{content:"";position:absolute;inset:0;z-index:2}
@media (forced-colors:active){.stat__num,.stat__num::after{color:CanvasText;background:none}}

/* Scroll / reading progress — crimson to forest */
.read-progress{height:3px}
.read-progress__bar{background:linear-gradient(90deg,#DC143C,#E33E33 50%,#5E9E7E);box-shadow:0 0 14px rgba(220,20,60,.6)}

/* Back to top */
.to-top{position:fixed;left:clamp(.75rem,2vw,1.5rem);bottom:clamp(.75rem,2vw,1.5rem);z-index:89;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;cursor:pointer;color:#F0F0F0;background:rgba(18,18,18,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 12px 30px -10px rgba(0,0,0,.7);transition:transform .35s var(--ease-spring),opacity .3s,background .3s;animation:t4s-pop .4s var(--ease-spring)}
.to-top--right{left:auto;right:clamp(.75rem,2vw,1.5rem)}
.to-top[hidden]{display:none}
.to-top:hover{transform:translateY(-3px);background:#DC143C}
.to-top:focus-visible{outline:2px solid #FF5A4F;outline-offset:3px}
.to-top__ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.to-top__ring circle{fill:none;stroke-width:2.5;stroke:rgba(94,158,126,.35)}
.to-top__ring .to-top__val{stroke:#E33E33;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--p,0));stroke-linecap:round}
.to-top:hover .to-top__val{stroke:#fff}
[data-theme=light] .to-top{background:rgba(255,255,255,.9);color:#0A0A0A;box-shadow:0 10px 26px -10px rgba(45,74,62,.45)}
[data-theme=light] .to-top:hover{background:#DC143C;color:#fff}
@keyframes t4s-pop{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}
body.is-typing .to-top{opacity:0;visibility:hidden}
@media print{.to-top,.toasts,.cursor-ring,.nav-loader{display:none!important}}

/* Toasts */
.toasts{position:fixed;z-index:1000;top:calc(var(--header-h,72px) + .75rem);right:clamp(.75rem,2vw,1.5rem);display:flex;flex-direction:column;gap:.6rem;width:min(380px,calc(100vw - 1.5rem));pointer-events:none}
.admin-bar .toasts{top:calc(var(--header-h,72px) + 32px + .75rem)}
.toast{position:relative;display:flex;align-items:flex-start;gap:.7rem;padding:.85rem 2.6rem .95rem .95rem;border-radius:14px;overflow:hidden;pointer-events:auto;color:#F0F0F0;background:linear-gradient(145deg,rgba(30,42,36,.96),rgba(14,18,16,.96));border:1px solid #2D4A3E;box-shadow:0 20px 50px -18px rgba(0,0,0,.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.92rem;line-height:1.45;opacity:0;transform:translate3d(24px,0,0) scale(.98);transition:opacity .3s var(--ease-out),transform .45s var(--ease-spring)}
.toast.is-in{opacity:1;transform:none}
.toast.is-leaving{opacity:0;transform:translate3d(24px,0,0) scale(.96)}
.toast svg{flex:none;margin-top:.1rem;color:#A9C7B5}
.toast--success svg{color:#8FD3AE}.toast--error{border-color:rgba(227,62,51,.65)}.toast--error svg{color:#FF7A70}
.toast--info svg{color:#FFD0CB}
.toast__close{position:absolute;top:.45rem;right:.45rem;width:1.9rem;height:1.9rem;border:0;border-radius:8px;background:transparent;color:#B3B8B5;font-size:1.25rem;line-height:1;cursor:pointer}
.toast__close:hover{background:rgba(255,255,255,.08);color:#fff}
.toast__close:focus-visible{outline:2px solid #FF5A4F}
.toast__timer{position:absolute;left:0;bottom:0;height:2px;width:100%;background:linear-gradient(90deg,#DC143C,#5E9E7E);transform-origin:left;animation:t4s-timer var(--toast-ms,3.8s) linear forwards}
.toast.is-paused .toast__timer{animation-play-state:paused}
@keyframes t4s-timer{from{transform:scaleX(1)}to{transform:scaleX(0)}}
@media (max-width:640px){.toasts{top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 5.25rem);left:.75rem;right:.75rem;width:auto}.toast{transform:translate3d(0,16px,0)}.toast.is-leaving{transform:translate3d(0,16px,0)}}

/* Navigation loading bar */
.nav-loader{position:fixed;top:0;left:0;right:0;height:2px;z-index:1001;pointer-events:none;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#DC143C,#FF5A4F,#A9C7B5);box-shadow:0 0 10px rgba(220,20,60,.7);opacity:0}
.nav-loader.is-loading{opacity:1;animation:t4s-load 8s cubic-bezier(.1,.8,.2,1) forwards}
@keyframes t4s-load{0%{transform:scaleX(0)}20%{transform:scaleX(.45)}100%{transform:scaleX(.92)}}

/* Cursor ring */
.cursor-ring{position:fixed;left:0;top:0;z-index:2000;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;pointer-events:none;border:1.5px solid rgba(227,62,51,.55);opacity:0;transition:opacity .3s,width .3s var(--ease-out),height .3s var(--ease-out),margin .3s var(--ease-out),border-color .3s,background .3s;mix-blend-mode:normal}
.cursor-ring.is-on{opacity:1}
.cursor-ring.is-hot{width:54px;height:54px;margin:-27px 0 0 -27px;border-color:rgba(227,62,51,.9);background:rgba(220,20,60,.08)}
.cursor-ring.is-text{width:6px;height:28px;margin:-14px 0 0 -3px;border-radius:3px;opacity:.5}
.cursor-ring.is-down{width:26px;height:26px;margin:-13px 0 0 -13px;background:rgba(220,20,60,.18)}
[data-theme=light] .cursor-ring{border-color:rgba(181,18,47,.5)}

/* Loading states */
.skeleton,.is-loading-skeleton{position:relative;overflow:hidden;background:var(--c-surface-2);border-radius:10px}
.skeleton::after,.is-loading-skeleton::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(169,199,181,.12),transparent);animation:t4s-shimmer 1.4s infinite}
@keyframes t4s-shimmer{to{transform:translateX(100%)}}
:is(.btn,.t4s-btn)[aria-busy=true],.t4s-form.is-busy :is(button[type=submit],.t4s-btn--primary){position:relative;color:transparent!important;pointer-events:none}
:is(.btn,.t4s-btn)[aria-busy=true]::after,.t4s-form.is-busy :is(button[type=submit],.t4s-btn--primary)::after{content:"";position:absolute;left:50%;top:50%;width:1.1rem;height:1.1rem;margin:-.55rem 0 0 -.55rem;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:t4s-turn .7s linear infinite}
@keyframes t4s-turn{to{transform:rotate(360deg)}}

/* Forms — refined fields */
.t4s-form input:not([type=checkbox]):not([type=radio]),.t4s-form select,.t4s-form textarea,.search-form input[type=search]{transition:border-color .25s,box-shadow .25s,background .25s}
.t4s-form input:not([type=checkbox]):not([type=radio]):focus,.t4s-form select:focus,.t4s-form textarea:focus{border-color:var(--c-vermillion)!important;box-shadow:0 0 0 4px rgba(227,62,51,.18)!important}
.t4s-form input[type=checkbox],.t4s-form input[type=radio]{accent-color:var(--c-crimson)}

/* Popup — premium glass shell */
.subscribe-popup{border:1px solid rgba(94,158,126,.35)!important;box-shadow:0 40px 120px -30px rgba(0,0,0,.9),0 0 0 1px rgba(220,20,60,.15)!important}
.subscribe-popup::backdrop{background:radial-gradient(circle at 50% 40%,rgba(45,74,62,.35),rgba(5,5,5,.82));backdrop-filter:blur(6px)}
.subscribe-popup [data-close-dialog]{transition:transform .25s var(--ease-spring),background .25s,color .25s}
.subscribe-popup [data-close-dialog]:hover{transform:rotate(90deg);color:#fff}

/* Footer */
[data-theme=dark] .site-footer{background:radial-gradient(1000px 360px at 10% 0%,rgba(45,74,62,.32),transparent 65%),linear-gradient(180deg,#0A0A0A,#070707);border-top:1px solid rgba(94,158,126,.22)}
.site-footer a{transition:color .25s}
.site-footer a:hover{color:var(--c-accent-text)}

/* Mega menu / nav links — animated underline */
.primary-nav a,.menu a{position:relative}
.primary-nav>ul>li>a::after,.primary-nav .menu>li>a::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.35rem;height:2px;border-radius:2px;background:var(--grad-cta);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease-out)}
.primary-nav>ul>li>a:hover::after,.primary-nav .menu>li>a:hover::after,.primary-nav .current-menu-item>a::after{transform:scaleX(1)}

/* Marquee — edge fade */
.marquee{-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}

/* View transitions */
::view-transition-old(root){animation:t4s-vt-out .22s ease both}
::view-transition-new(root){animation:t4s-vt-in .32s var(--ease-out) both}
@keyframes t4s-vt-out{to{opacity:0}}
@keyframes t4s-vt-in{from{opacity:0;transform:translateY(8px)}}

/* Reduced motion & no-motion — functional UI stays, motion goes */
@media (prefers-reduced-motion:reduce){
	.glow-border::before,.fx .newsletter__card::after,.fx .partner__inner::before,.particles,.cursor-ring,.nav-loader{animation:none!important;display:none}
	.band-light::before,.band-alt::before{animation:none!important}
	.toast,.toast.is-in,.toast.is-leaving{transition:opacity .01s;transform:none}
	.toast__timer{animation:none}
	:is(.card,.rcard,.stat):hover,.btn--primary:hover{transform:none}

	::view-transition-old(root),::view-transition-new(root){animation:none}
}
.no-motion :is(.particles,.cursor-ring){display:none}
.no-motion .glow-border::before{animation:none}
/* LCP-friendly hero entrance: the headline is painted immediately and only slides/fades from 35% */
.hero__copy>*{animation-name:t4s-hero-rise}
@keyframes t4s-hero-rise{from{opacity:.35;transform:translateY(14px)}}
.stackbot__status{display:inline-block;width:.5rem;height:.5rem;margin-right:.4rem;border-radius:50%;background:#5E9E7E;box-shadow:0 0 0 3px rgba(94,158,126,.25);vertical-align:.05em}

/* ==========================================================================
   v1.3 — Scheme consistency for editor content (core blocks, pasted colours)
   ========================================================================== */
/* Common pasted dark inline colours on the dark scheme (no-JS safety net; the JS ink guard handles the rest) */
[data-theme=dark] :is(.entry-content,.prose) :is([style*="color:#000"],[style*="color: #000"],[style*="color:black"],[style*="color: black"],[style*="color:rgb(0, 0, 0)"],[style*="color: rgb(0, 0, 0)"],[style*="color:#111"],[style*="color: #111"],[style*="color:#222"],[style*="color: #222"],[style*="color:#333"],[style*="color: #333"],[style*="windowtext"],font[color="#000000"],font[color="black"]):not(.has-background){color:var(--c-prose)!important}
[data-theme=dark] :is(.entry-content,.prose) .has-black-color{color:var(--c-prose)!important}
[data-theme=light] :is(.entry-content,.prose) :is([style*="color:#fff"],[style*="color: #fff"],[style*="color:white"],[style*="color: white"]):not(.has-background):not([style*="background"]){color:var(--c-prose)!important}
/* Light backgrounds set in the editor keep dark text in either scheme */
:is(.entry-content,.prose) :is(.has-white-background-color,.has-text-background-color,.has-muted-background-color){color:#0A0A0A}
:is(.entry-content,.prose) :is(.has-white-background-color,.has-text-background-color,.has-muted-background-color) :is(a,h1,h2,h3,h4,h5,h6,p,li,strong){color:inherit}
:is(.entry-content,.prose) :is(.has-black-background-color,.has-charcoal-background-color,.has-graphite-background-color,.has-forest-background-color,.has-olive-background-color,.has-red-background-color,.has-vermillion-background-color){color:#F0F0F0}
/* Core block chrome */
:is(.entry-content,.prose) .wp-block-table.is-style-stripes tbody tr:nth-child(odd){background:var(--c-surface-2)}
:is(.entry-content,.prose) .wp-block-table.is-style-stripes{border-bottom-color:var(--c-border-2)}
:is(.entry-content,.prose) :is(table,th,td){border-color:var(--c-border-2)}
:is(.entry-content,.prose) th{background:var(--c-surface-2);color:var(--c-text)}
:is(.entry-content,.prose) :is(figcaption,.wp-element-caption,cite,.wp-block-pullquote cite){color:var(--c-muted)}
:is(.entry-content,.prose) mark:not(.has-inline-color){background:rgba(220,20,60,.22);color:inherit;padding:0 .15em;border-radius:3px}
:is(.entry-content,.prose) kbd{padding:.1em .4em;border:1px solid var(--c-border-2);border-bottom-width:2px;border-radius:5px;background:var(--c-surface-2);color:var(--c-text);font-family:var(--f-mono);font-size:.85em}
:is(.entry-content,.prose) :is(.wp-block-verse,.wp-block-preformatted){background:var(--c-surface);color:var(--c-prose);border:1px solid var(--c-border);border-radius:12px;padding:1rem 1.25rem}
:is(.entry-content,.prose) .wp-block-details{border:1px solid var(--c-border-2);border-radius:12px;padding:.85rem 1.1rem;background:var(--c-surface)}
:is(.entry-content,.prose) .wp-block-details summary{cursor:pointer;font-weight:700;color:var(--c-text)}
:is(.entry-content,.prose) .wp-block-pullquote{border-block:2px solid var(--c-crimson);color:var(--c-text)}
:is(.entry-content,.prose) .wp-block-button__link{background:var(--grad-cta);color:#fff;border-radius:var(--r-md)}
:is(.entry-content,.prose) .is-style-outline .wp-block-button__link{background:transparent;color:var(--c-text);border:1px solid var(--c-border-2)}
:is(.entry-content,.prose) .wp-block-file__button{background:var(--c-crimson);color:#fff}
:is(.entry-content,.prose) :is(.wp-block-search__input,.wp-block-search__button){background:var(--c-surface);color:var(--c-text);border-color:var(--c-border-2)}
:is(.entry-content,.prose) .wp-block-search__button{background:var(--c-crimson);color:#fff;border-color:var(--c-crimson)}
:is(.entry-content,.prose) .wp-block-calendar :is(table,th,td,caption){color:var(--c-text);background:transparent}
:is(.entry-content,.prose) .wp-block-calendar th{background:var(--c-surface-2)}
:is(.entry-content,.prose) .wp-block-cover{color:#F0F0F0}
:is(.entry-content,.prose) hr,.wp-block-separator{border-color:var(--c-border-2);background:var(--c-border-2)}
:is(.entry-content,.prose) .wp-block-cover{background-color:#0A0A0A}
/* Disclosures/admin hints: amber is unreadable on paper, use crimson-ink there */
.disclosure{border-color:color-mix(in srgb,var(--c-vermillion) 55%,transparent)}
.disclosure .icon,.disclosure a{color:var(--c-accent-text)}
[data-theme=light] .admin-hint{color:#8A5A00;border-color:#C98A00}
.sb-msg--note{color:var(--c-muted);background:var(--c-surface-2);border-color:var(--c-border-2)}

/* v1.3 — Stable sticky header. The utility bar now scrolls away naturally (negative sticky
   offset) instead of collapsing, so the header never changes height while you scroll. */
.site-header{top:calc(var(--utility-h,0px) * -1)}
.admin-bar .site-header{top:calc(32px - var(--utility-h,0px))}
@media (max-width:782px){.admin-bar .site-header{top:calc(46px - var(--utility-h,0px))}}
@media (max-width:600px){.admin-bar .site-header{top:calc(var(--utility-h,0px) * -1)}}
.utility-bar,.site-header.is-scrolled .utility-bar{max-height:none;opacity:1;transition:none;border-bottom-color:var(--c-border)}
.site-header{transition:background .3s,box-shadow .3s,border-color .3s;will-change:auto}
.masthead{position:relative}

/* Technology in motion — bento video grid */
.motion-grid{background:radial-gradient(900px 420px at 15% 0%,rgba(45,74,62,.35),transparent 65%),#0A0A0A}
.motion-grid__head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1rem,4vw,3rem);align-items:end;margin-bottom:clamp(1.5rem,4vw,2.5rem)}
.motion-grid__aside{display:flex;align-items:flex-end;gap:1rem}
.motion-grid__lead{color:var(--c-muted);margin:0;font-size:var(--fs-md)}
.motion-grid__pause{flex:none}
.motion-grid__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(170px,17vw,230px);gap:clamp(.75rem,1.6vw,1.1rem);margin:0;padding:0;list-style:none}
.motion-tile{position:relative;min-width:0}
.motion-tile.is-xl{grid-column:span 2;grid-row:span 2}
.motion-tile.is-tall{grid-row:span 2}
.motion-tile.is-wide{grid-column:span 2}
.motion-tile__link{position:relative;display:block;height:100%;border-radius:20px;overflow:hidden;isolation:isolate;color:#F0F0F0;text-decoration:none;border:1px solid rgba(94,158,126,.28);background:#0A0A0A;transition:transform .5s var(--ease-out),border-color .3s,box-shadow .5s var(--ease-out)}
.motion-tile__video{position:absolute;inset:0;transition:transform 1.2s var(--ease-out),filter .6s}
.motion-tile__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,10,10,0) 30%,rgba(10,10,10,.92) 100%)}
.motion-tile__body{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;gap:.3rem;padding:clamp(1rem,2vw,1.4rem)}
.motion-tile__kicker{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.14em;color:#FF5A4F}
.motion-tile__title{margin:0;font-size:clamp(1.05rem,.9rem + .5vw,1.35rem);line-height:1.2;color:#F0F0F0}
.motion-tile.is-xl .motion-tile__title{font-size:clamp(1.4rem,1rem + 1.3vw,2.1rem)}
.motion-tile__desc{color:#C9CFCC;font-size:.9rem;line-height:1.45;max-width:30rem}
.motion-tile:not(.is-xl):not(.is-wide) .motion-tile__desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.motion-tile__more{display:inline-flex;align-items:center;gap:.35rem;margin-top:.2rem;font-weight:700;font-size:.85rem;color:#FFD0CB;opacity:.85;transform:translateY(4px);transition:opacity .3s,transform .3s}
a.motion-tile__link:hover{transform:translateY(-4px);border-color:rgba(227,62,51,.6);box-shadow:0 30px 60px -30px rgba(220,20,60,.55)}
a.motion-tile__link:hover .motion-tile__video{transform:scale(1.05)}
a.motion-tile__link:hover .motion-tile__more,a.motion-tile__link:focus-visible .motion-tile__more{opacity:1;transform:none}
a.motion-tile__link:focus-visible{outline:2px solid #FF5A4F;outline-offset:3px}
@media (max-width:900px){.motion-grid__head{grid-template-columns:1fr}.motion-grid__list{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px}.motion-tile.is-tall{grid-row:span 1}}
@media (max-width:560px){.motion-grid__list{grid-template-columns:1fr;grid-auto-rows:200px}.motion-tile.is-xl,.motion-tile.is-wide{grid-column:auto}.motion-tile.is-xl{grid-row:span 1;}}

/* Topic tiles — animated GIF thumbnail */
.topic-tile__media{display:block;margin:-.25rem -.25rem .85rem;border-radius:12px;overflow:hidden;aspect-ratio:16/10;background:#0A0A0A;border:1px solid var(--c-border-2)}
.topic-tile__gif{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-out)}
.topic-tile:hover .topic-tile__gif{transform:scale(1.06)}
.topic-tile:has(.topic-tile__media) .topic-tile__icon{position:absolute;top:1.1rem;right:1.1rem;margin:0}
.topic-tile{position:relative}

/* Archive (topic hub) header — topic loop on the right */
.archive-header--media{min-height:clamp(240px,28vw,360px)}
.archive-header--media .archive-header__bg{background:radial-gradient(900px 400px at 10% 0%,rgba(45,74,62,.35),transparent 65%);mask-image:none;-webkit-mask-image:none}
.archive-header__bg{background-image:radial-gradient(900px 400px at 10% 0%,color-mix(in srgb,var(--c-forest) 35%,transparent),transparent 65%)!important;mask-image:none!important;-webkit-mask-image:none!important}
.archive-header__media{position:absolute;inset:0 0 0 auto;width:min(58%,820px);z-index:-1;-webkit-mask:linear-gradient(90deg,transparent,#000 45%);mask:linear-gradient(90deg,transparent,#000 45%);opacity:.85}
.archive-header__video{height:100%}
[data-theme=light] .archive-header--media{background:#0A0A0A;color:#F0F0F0}
[data-theme=light] .archive-header--media :is(.archive-title,.eyebrow,.archive-desc,.archive-desc p,.breadcrumbs,.breadcrumbs a){color:#F0F0F0}
[data-theme=light] .archive-header--media .archive-desc{color:#CFD8D2}
@media (max-width:720px){.archive-header__media{width:100%;opacity:.35;-webkit-mask:linear-gradient(180deg,#000,transparent);mask:linear-gradient(180deg,#000,transparent)}}

/* About (left) + Contact (right) */
.about-contact{background:radial-gradient(900px 500px at 100% 0%,rgba(45,74,62,.28),transparent 65%),var(--c-bg)}
.about-contact__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}
.about-contact__lead{font-size:var(--fs-md);color:var(--c-muted);line-height:1.7;margin:1rem 0 1.5rem}
.about-contact__media{position:relative;aspect-ratio:16/8;border-radius:20px;overflow:hidden;border:1px solid var(--c-border-2);margin-bottom:1.5rem;background:#0A0A0A}
.about-contact__media .auto-video{position:absolute;inset:0}
.about-contact__badge{position:absolute;left:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .8rem;border-radius:999px;font-size:.78rem;font-weight:700;color:#F0F0F0}
.about-contact__badge svg{color:#FF5A4F}
.about-contact__points{display:grid;gap:1rem;margin:0 0 1.75rem;padding:0;list-style:none}
.about-contact__points li{display:flex;gap:.9rem;align-items:flex-start}
.about-contact__points strong{display:block;color:var(--c-text);font-family:var(--f-head);margin-bottom:.15rem}
.about-contact__points span:last-child{color:var(--c-muted);line-height:1.55}
.about-contact__icon{display:grid;place-items:center;flex:none;width:2.4rem;height:2.4rem;border-radius:12px;color:#FFD0CB;background:linear-gradient(135deg,rgba(220,20,60,.32),rgba(220,20,60,.1));border:1px solid rgba(227,62,51,.38)}
[data-theme=light] .about-contact__icon{color:#B5122F}
.about-contact__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
.about-contact__contact{position:sticky;top:calc(var(--header-h) + 1.5rem);padding:clamp(1.25rem,3vw,2rem);border-radius:24px}
.about-contact__contact.glass{background:linear-gradient(160deg,rgba(45,74,62,.55),rgba(18,24,21,.92) 55%);border:1px solid rgba(94,158,126,.35)}
[data-theme=light] .about-contact__contact.glass{background:linear-gradient(160deg,#EEF4F0,#FFFFFF 55%);border-color:#C3D0C8;box-shadow:0 30px 70px -40px rgba(45,74,62,.45)}
.about-contact__title{font-size:var(--fs-2xl);margin:0 0 .5rem}
.about-contact__text{color:var(--c-muted);margin:0 0 1.1rem}
.about-contact__routes{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none}
.about-contact__routes a{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border-radius:999px;border:1px solid var(--c-border-2);color:var(--c-text);text-decoration:none;font-size:.85rem;font-weight:600;transition:border-color .25s,background .25s}
.about-contact__routes a:hover{border-color:var(--c-vermillion);background:rgba(220,20,60,.08)}
.about-contact__routes svg{color:var(--c-accent-text)}
.about-contact__form .t4s-form{margin:0}
.about-contact__partner{display:flex;align-items:center;gap:.45rem;margin:1.1rem 0 0;font-size:.9rem;color:var(--c-muted)}
.about-contact__partner a{color:var(--c-accent-text);font-weight:700}
@media (max-width:900px){.about-contact__grid{grid-template-columns:1fr}.about-contact__contact{position:static}}

.media-paused .particles i{animation-play-state:paused!important}
@media (min-width:901px){.motion-tile.is-wide{grid-column:span 3}}
.motion-tile__shade{background:linear-gradient(180deg,rgba(10,10,10,.05) 0%,rgba(10,10,10,.45) 42%,rgba(10,10,10,.94) 100%),linear-gradient(90deg,rgba(10,10,10,.55),transparent 65%)}
.motion-tile__title,.motion-tile__desc{text-shadow:0 1px 12px rgba(0,0,0,.8)}

/* Original hero (kept as designed in v1.2) */
.hero__grid{position:absolute;inset:-2px;background-image:linear-gradient(color-mix(in srgb,var(--c-accent) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--c-accent) 8%,transparent) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 80% 70% at 60% 30%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 60% 30%,#000 20%,transparent 75%)}
.hero__canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.75}
.hero-stack{width:100%;height:auto;overflow:visible}
.hs-aura{animation:hs-breathe 6s ease-in-out infinite}
.hs-link{fill:none;stroke:var(--c-accent);stroke-opacity:.38;stroke-width:1.2;stroke-dasharray:3 7;animation:hs-flow 2.4s linear infinite;animation-delay:var(--d)}
.hs-link--red{stroke:var(--c-red);stroke-opacity:.55}
.hs-ring{fill:none;stroke:var(--c-red);stroke-opacity:.45;stroke-width:1.2;stroke-dasharray:2 9;animation:hs-flow 6s linear infinite}
.hs-ring--inner{stroke:var(--c-accent);stroke-opacity:.18;stroke-dasharray:1 6;animation-direction:reverse}
.hs-sentinel{fill:var(--c-red);filter:drop-shadow(0 0 6px var(--c-red))}
.hs-sentinel--green{fill:var(--c-accent);filter:drop-shadow(0 0 6px var(--c-accent))}
.hs-layer{animation:hs-lift 7s var(--ease) infinite;animation-delay:calc(var(--i) * -.35s)}
.hs-layer--cloud{--lift:-6px}.hs-layer--data{--lift:-12px}.hs-layer--ai{--lift:-20px}.hs-layer--infra{--lift:0px}
.hs-top{fill:#1E2724;stroke:rgba(94,158,126,.42);stroke-width:1.2}
.hs-side--l{fill:#121916;stroke:rgba(94,158,126,.18)}.hs-side--r{fill:#18211D;stroke:rgba(94,158,126,.18)}
.hs-grid{fill:none;stroke:rgba(94,158,126,.14);stroke-width:1}
.hs-layer--ai .hs-top{fill:url(#hs-top-ai);stroke:#A9C7B5}
.hs-layer--ai .hs-side--l{fill:#0F8A45}.hs-layer--ai .hs-side--r{fill:#13A553}
.hs-layer--ai .hs-grid{stroke:rgba(4,17,10,.25)}
.hs-layer--infra .hs-top{stroke:rgba(227,62,51,.5)}.hs-layer--infra .hs-grid{stroke:rgba(227,62,51,.14)}
.hs-label path{stroke:rgba(255,255,255,.25);stroke-dasharray:2 3}
.hs-label text{fill:var(--c-muted);font-family:var(--f-mono);font-size:14px;font-weight:600;letter-spacing:.1em}
.hs-layer--ai .hs-label text{fill:var(--c-accent)}
.hs-packet{fill:var(--c-accent);filter:drop-shadow(0 0 4px var(--c-accent))}
.hs-packet--red{fill:var(--c-red);filter:drop-shadow(0 0 4px var(--c-red))}
.hs-node rect{fill:rgba(20,25,24,.92);stroke:var(--c-border-2)}
.hs-node text{fill:var(--c-text);font-family:var(--f-mono);font-size:13px;font-weight:700;letter-spacing:.08em}
.hs-node__icon{fill:none;stroke:var(--c-accent);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hs-node--sec .hs-node__icon{stroke:var(--c-red)}
.hs-node--sec rect{stroke:color-mix(in srgb,var(--c-red) 55%,transparent)}
.hs-node__float{animation:hs-float 5s ease-in-out infinite;animation-delay:var(--d)}
@keyframes hs-flow{to{stroke-dashoffset:-40}}
@keyframes hs-lift{0%,100%{transform:translateY(0)}50%{transform:translateY(var(--lift))}}
@keyframes hs-breathe{50%{opacity:.6}}
.hs-top{fill:#16231D;stroke:rgba(94,158,126,.55)}
.hs-side--l{fill:#0F1814;stroke:rgba(94,158,126,.22)}.hs-side--r{fill:#13201A;stroke:rgba(94,158,126,.22)}
.hs-grid{stroke:rgba(94,158,126,.18)}
.hs-layer--ai .hs-top{stroke:#FF8A80}
.hs-layer--ai .hs-side--l{fill:#9E0E2C}.hs-layer--ai .hs-side--r{fill:#BF1236}
.hs-layer--ai .hs-grid{stroke:rgba(255,255,255,.18)}
.hs-layer--infra .hs-top{stroke:rgba(227,62,51,.5)}.hs-layer--infra .hs-grid{stroke:rgba(227,62,51,.16)}
.hero__media .hero-stack{transform:translate3d(0,var(--parallax,0px),0) rotateX(var(--ty,0deg)) rotateY(var(--tx,0deg));transform-style:preserve-3d;transition:transform .5s var(--ease-out);will-change:transform}
.hero__media::before{content:"";position:absolute;inset:8% 12%;border-radius:50%;background:radial-gradient(circle,rgba(220,20,60,.20),rgba(45,74,62,.18) 45%,transparent 70%);filter:blur(30px);z-index:-1}
@media (prefers-reduced-motion:reduce){.hero__media .hero-stack{transform:none!important}}
.auto-video{display:block;width:100%;height:100%;object-fit:cover;background:#0A0A0A}
[data-video-toggle] .icon-play{display:none}
[data-video-toggle][aria-pressed=true] .icon-play{display:block}
[data-video-toggle][aria-pressed=true] .icon-pause{display:none}
[data-theme=dark] .about-contact__contact{--c-accent-text:#FFD0CB;--c-accent-hover:#FFFFFF;--c-red-text:#FFC2BC;--c-muted:#CFD8D2;--t4s-accent:#FFD0CB;--t4s-muted:#CFD8D2;--t4s-field-bg:#121815;--t4s-border:#4F7264}
