/**
 * Aigenttra Theme — main.css
 *
 * Phase 2 scope: design tokens, base reset, accessibility helpers,
 * layout primitives, button system, announcement bar, site header,
 * mega menu, mobile navigation, site footer, and print rules.
 *
 * All colour values reference CSS custom properties so that the dark
 * mode variant (applied via the .dark class on <html>) is handled
 * automatically with zero duplication.
 *
 * Section map:
 *   1.  Design tokens — light mode
 *   2.  Design tokens — dark mode (.dark class + prefers-color-scheme)
 *   3.  Base reset
 *   4.  Accessibility helpers
 *   5.  Layout — .site, .container
 *   6.  Button system — .btn
 *   7.  Announcement bar
 *   8.  Site header — #masthead
 *   9.  Header logo
 *  10.  Header navigation (desktop)
 *  11.  Mega menu panel
 *  12.  Header actions
 *  13.  Mobile navigation
 *  14.  Site footer — #colophon
 *  15.  Footer branding
 *  16.  Footer navigation
 *  17.  Footer newsletter
 *  18.  Footer legal bar
 *  19.  WordPress nav menu reset
 *  20.  Print
 */

/* ─────────────────────────────────────────────────────────────────────────────
   1. Design tokens — light mode
   ───────────────────────────────────────────────────────────────────────────── */

:root {
  /* Colour primitives */
  --background:          0 0% 98%;
  --foreground:          240 10% 4%;
  --border:              240 6% 90%;
  --input:               240 6% 90%;
  --ring:                240 5% 65%;

  --card:                0 0% 100%;
  --card-foreground:     240 10% 4%;

  --popover:             0 0% 100%;
  --popover-foreground:  240 10% 4%;

  --primary:             235 85% 55%;
  --primary-foreground:  0 0% 100%;

  --secondary:           240 5% 96%;
  --secondary-foreground:240 6% 10%;

  --muted:               240 5% 96%;
  --muted-foreground:    240 4% 46%;

  --accent:              240 5% 96%;
  --accent-foreground:   240 6% 10%;

  --destructive:         0 84% 60%;
  --destructive-foreground: 0 0% 100%;

  /* Semantic aliases — used throughout this stylesheet */
  --color-bg:            hsl(var(--background));
  --color-fg:            hsl(var(--foreground));
  --color-border:        hsl(var(--border));
  --color-primary:       hsl(var(--primary));
  --color-primary-fg:    hsl(var(--primary-foreground));
  --color-secondary:     hsl(var(--secondary));
  --color-secondary-fg:  hsl(var(--secondary-foreground));
  --color-muted:         hsl(var(--muted));
  --color-muted-fg:      hsl(var(--muted-foreground));
  --color-card:          hsl(var(--card));

  /* Typography */
  --font-sans:           'Inter', system-ui, -apple-system, sans-serif;
  --font-mono:           'Menlo', 'Monaco', 'Consolas', monospace;

  /* Sizing */
  --radius:              0.375rem;   /* 6 px */
  --radius-sm:           calc(var(--radius) - 2px);
  --radius-lg:           calc(var(--radius) + 4px);
  --radius-xl:           calc(var(--radius) + 8px);
  --radius-full:         9999px;

  /* Shadows */
  --shadow-sm:   0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow:      0 2px 4px 0 rgb(0 0 0 / 0.06), 0 1px 2px -1px rgb(0 0 0 / 0.06);
  --shadow-md:   0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --shadow-lg:   0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --shadow-xl:   0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --shadow-2xl:  0 25px 50px -12px rgb(0 0 0 / 0.25);

  /* Layout */
  --container-max:       90rem;       /* 1440 px */
  --container-padding:   1.5rem;      /* 24 px */

  /* Header */
  --header-height:       5rem;        /* 80 px — unscrolled */
  --header-height-scrolled: 4rem;     /* 64 px — scrolled */
  --header-height-mobile:   3.5rem;   /* 56 px */

  /* Animation */
  --ease-out-expo:       cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out:         cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast:       150ms;
  --duration-normal:     250ms;
  --duration-slow:       400ms;

  /* Z-index scale */
  --z-header:     100;
  --z-mega-menu:  110;
  --z-mobile-nav: 200;
  --z-backdrop:   190;
}

/* ─────────────────────────────────────────────────────────────────────────────
   2. Design tokens — dark mode
   Applied via: (a) .dark class on <html> set by main.js theme toggle,
                (b) @media prefers-color-scheme: dark as the auto fallback.
   ───────────────────────────────────────────────────────────────────────────── */

.dark,
html[data-theme="dark"] {
  --background:          240 10% 4%;
  --foreground:          0 0% 98%;
  --border:              240 4% 16%;
  --input:               240 4% 16%;
  --ring:                240 5% 65%;

  --card:                240 6% 6%;
  --card-foreground:     0 0% 98%;

  --popover:             240 6% 6%;
  --popover-foreground:  0 0% 98%;

  --primary:             235 85% 65%;
  --primary-foreground:  0 0% 100%;

  --secondary:           240 4% 16%;
  --secondary-foreground:0 0% 98%;

  --muted:               240 4% 16%;
  --muted-foreground:    240 5% 65%;

  --accent:              240 4% 16%;
  --accent-foreground:   0 0% 98%;

  --destructive:         0 63% 31%;
  --destructive-foreground: 0 0% 98%;

  --shadow-2xl:          0 25px 50px -12px rgb(0 0 0 / 0.6);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not(.light) {
    --background:          240 10% 4%;
    --foreground:          0 0% 98%;
    --border:              240 4% 16%;
    --input:               240 4% 16%;
    --ring:                240 5% 65%;
    --card:                240 6% 6%;
    --card-foreground:     0 0% 98%;
    --popover:             240 6% 6%;
    --popover-foreground:  0 0% 98%;
    --primary:             235 85% 65%;
    --primary-foreground:  0 0% 100%;
    --secondary:           240 4% 16%;
    --secondary-foreground:0 0% 98%;
    --muted:               240 4% 16%;
    --muted-foreground:    240 5% 65%;
    --accent:              240 4% 16%;
    --accent-foreground:   0 0% 98%;
    --destructive:         0 63% 31%;
    --destructive-foreground: 0 0% 98%;
    --shadow-2xl:          0 25px 50px -12px rgb(0 0 0 / 0.6);
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   3. Base reset
   ───────────────────────────────────────────────────────────────────────────── */

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-sans);
  background-color: var(--color-bg);
  color: var(--color-fg);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img,
svg {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  cursor: pointer;
  font-family: inherit;
  background: none;
  border: none;
}

ul,
ol {
  list-style: none;
}

/* ─────────────────────────────────────────────────────────────────────────────
   4. Accessibility helpers
   ───────────────────────────────────────────────────────────────────────────── */

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  clip: auto !important;
  clip-path: none;
  background-color: var(--color-bg);
  color: var(--color-fg);
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  height: auto;
  left: 0.5rem;
  line-height: normal;
  padding: 1rem 1.5rem;
  text-decoration: none;
  top: 0.5rem;
  width: auto;
  z-index: calc(var(--z-mobile-nav) + 10);
}

.skip-link {
  position: fixed;
  top: -100%;
  left: 0.5rem;
  z-index: calc(var(--z-mobile-nav) + 10);
  padding: 0.75rem 1.25rem;
  background: var(--color-primary);
  color: var(--color-primary-fg);
  font-size: 0.875rem;
  font-weight: 600;
  border-radius: var(--radius);
  transition: top var(--duration-fast) var(--ease-in-out);
}

.skip-link:focus {
  top: 0.5rem;
}

/* Focus ring — applied to interactive elements throughout this theme */
:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* ─────────────────────────────────────────────────────────────────────────────
   5. Layout
   ───────────────────────────────────────────────────────────────────────────── */

.site {
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
}

.site > #main,
.site > main {
  flex: 1 0 auto;
}

.container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-padding);
}

@media (min-width: 768px) {
  .container {
    padding-inline: 1.5rem;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   6. Button system
   Mirrors the React <Button> component variants: primary, outline.
   ───────────────────────────────────────────────────────────────────────────── */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
  border-radius: var(--radius);
  border: 1px solid transparent;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background-color var(--duration-fast) var(--ease-in-out),
    color            var(--duration-fast) var(--ease-in-out),
    border-color     var(--duration-fast) var(--ease-in-out),
    box-shadow       var(--duration-fast) var(--ease-in-out),
    opacity          var(--duration-fast) var(--ease-in-out);
  user-select: none;
}

.btn:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* Primary */
.btn--primary {
  background-color: var(--color-primary);
  color: var(--color-primary-fg);
  border-color: var(--color-primary);
}

.btn--primary:hover {
  opacity: 0.9;
}

.btn--primary:active {
  opacity: 0.8;
}

/* Outline */
.btn--outline {
  background-color: transparent;
  color: var(--color-fg);
  border-color: var(--color-border);
}

.btn--outline:hover {
  background-color: var(--color-secondary);
}

/* Full-width modifier — used in mobile nav CTAs */
.btn--full {
  width: 100%;
}

/* ─────────────────────────────────────────────────────────────────────────────
   7. Announcement bar
   announcement-bar.js hides the bar instantly if dismissed via localStorage.
   The bar is rendered in DOM; JS adds .is-hidden to suppress it.
   ───────────────────────────────────────────────────────────────────────────── */

.announcement-bar {
  display: block;
  overflow: hidden;
  transition: max-height var(--duration-normal) var(--ease-out-expo),
              opacity    var(--duration-normal) var(--ease-out-expo);
}

.announcement-bar.is-hidden {
  display: none;
}

.announcement-bar__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 2.5rem;
}

.announcement-bar__content {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-align: center;
  font-size: 0.875rem;
  font-weight: 500;
}

.announcement-bar__icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.announcement-bar__cta {
  margin-left: 0.25rem;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: opacity var(--duration-fast);
}

.announcement-bar__cta:hover {
  opacity: 0.8;
}

.announcement-bar__dismiss {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: var(--radius-full);
  opacity: 0.7;
  transition: opacity var(--duration-fast), background-color var(--duration-fast);
}

.announcement-bar__dismiss:hover {
  opacity: 1;
}

/* Type variants */
.announcement-bar--info {
  background-color: var(--color-secondary);
  color: var(--color-secondary-fg);
}

.announcement-bar--info .announcement-bar__dismiss:hover {
  background-color: rgb(0 0 0 / 0.08);
}

.announcement-bar--success {
  background-color: hsl(142 76% 36% / 0.12);
  color: hsl(142 76% 28%);
}

.dark .announcement-bar--success,
html[data-theme="dark"] .announcement-bar--success {
  color: hsl(142 76% 52%);
}

.announcement-bar--warning {
  background-color: hsl(38 92% 50% / 0.12);
  color: hsl(38 92% 30%);
}

.dark .announcement-bar--warning,
html[data-theme="dark"] .announcement-bar--warning {
  color: hsl(38 92% 65%);
}

.announcement-bar--promo {
  background-color: var(--color-primary);
  color: var(--color-primary-fg);
}

.announcement-bar--promo .announcement-bar__dismiss:hover {
  background-color: rgb(255 255 255 / 0.2);
}

/* ─────────────────────────────────────────────────────────────────────────────
   8. Site header
   ───────────────────────────────────────────────────────────────────────────── */

.site-header {
  position: sticky;
  top: 0;
  width: 100%;
  z-index: var(--z-header);
}

.header-inner {
  height: var(--header-height-mobile);
  background-color: transparent;
  border-bottom: 1px solid transparent;
  transition:
    height                var(--duration-normal) var(--ease-in-out),
    background-color      var(--duration-normal) var(--ease-in-out),
    border-color          var(--duration-normal) var(--ease-in-out),
    box-shadow            var(--duration-normal) var(--ease-in-out),
    backdrop-filter       var(--duration-normal) var(--ease-in-out);
}

.header-inner .container {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

/* Scrolled state — applied by mega-menu.js */
.site-header.is-scrolled .header-inner {
  background-color: hsl(var(--background) / 0.85);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border-color: var(--color-border);
  box-shadow: var(--shadow-sm);
}

@media (min-width: 768px) {
  .header-inner {
    height: var(--header-height);
  }

  .site-header.is-scrolled .header-inner {
    height: var(--header-height-scrolled);
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   9. Header logo
   ───────────────────────────────────────────────────────────────────────────── */

.header-logo {
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.header-logo .custom-logo-link,
.header-logo__wordmark {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  border-radius: var(--radius-sm);
  transition: opacity var(--duration-fast);
}

.header-logo .custom-logo-link:hover,
.header-logo__wordmark:hover {
  opacity: 0.85;
}

.header-logo .custom-logo {
  height: 2rem;
  width: auto;
}

.header-logo__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: var(--radius);
  background-color: var(--color-primary);
  color: var(--color-primary-fg);
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .header-logo__mark {
    width: 2.5rem;
    height: 2.5rem;
  }
}

.header-logo__name {
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  display: none;
}

@media (min-width: 480px) {
  .header-logo__name {
    display: block;
  }
}

@media (min-width: 768px) {
  .header-logo__name {
    font-size: 1.25rem;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   10. Header navigation (desktop)
   Hidden on mobile; the mobile drawer handles smaller viewports.
   ───────────────────────────────────────────────────────────────────────────── */

.header-nav {
  display: none;
  flex: 1;
  justify-content: center;
  height: 100%;
}

@media (min-width: 1024px) {
  .header-nav {
    display: flex;
  }
}

.header-nav__list {
  display: flex;
  align-items: center;
  gap: 0.125rem;
  height: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Top-level nav item wrapper */
.menu-item[data-nav-item] {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}

/* Shared styles for trigger buttons and plain links */
.nav-trigger,
.nav-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: var(--radius);
  color: var(--color-fg);
  background: none;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition:
    background-color var(--duration-fast) var(--ease-in-out),
    color            var(--duration-fast) var(--ease-in-out);
  white-space: nowrap;
  position: relative;
}

.nav-trigger:hover,
.nav-link:hover {
  background-color: var(--color-secondary);
}

.nav-trigger.is-active,
.nav-link.is-active,
.nav-trigger[aria-expanded="true"] {
  color: var(--color-primary);
}

/* Active underline indicator */
.nav-trigger.is-active::after,
.nav-link.is-active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0.5rem;
  right: 0.5rem;
  height: 2px;
  background-color: var(--color-primary);
  border-radius: var(--radius-full);
}

/* Chevron icon inside triggers */
.nav-chevron {
  transition: transform var(--duration-fast) var(--ease-in-out);
  flex-shrink: 0;
}

.nav-trigger[aria-expanded="true"] .nav-chevron {
  transform: rotate(180deg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   11. Mega menu panel
   Shown/hidden by mega-menu.js via the hidden attribute + .is-open class.
   Matches the React MegaMenu component: frosted glass, 300px wide card.
   ───────────────────────────────────────────────────────────────────────────── */

.mega-menu-panel {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(-4px);
  width: 18.75rem;              /* 300px */
  margin-top: 0.75rem;
  z-index: var(--z-mega-menu);
  background-color: rgb(255 255 255 / 0.92);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  border: 1px solid rgb(0 0 0 / 0.08);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-2xl);
  overflow: hidden;

  /* Entry animation */
  opacity: 0;
  pointer-events: none;
  transition:
    opacity   var(--duration-fast) var(--ease-out-expo),
    transform var(--duration-fast) var(--ease-out-expo);
}

.dark .mega-menu-panel,
html[data-theme="dark"] .mega-menu-panel {
  background-color: hsl(240 10% 4% / 0.96);
  border-color: rgb(255 255 255 / 0.1);
}

/* mega-menu.js toggles .is-open on the parent [data-nav-item] */
.menu-item.is-open > .mega-menu-panel {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}

/* Remove the hidden attribute's visual effect — JS manages visibility */
.mega-menu-panel[hidden] {
  display: block; /* override HTML hidden; opacity + pointer-events handle it */
}

/* Panel content */
.mega-menu-panel__heading {
  display: block;
  padding: 0.5rem 0.75rem 0.25rem;
  font-size: 0.625rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-muted-fg);
  opacity: 0.6;
  user-select: none;
}

.mega-menu-list {
  padding: 0.5rem;
  list-style: none;
}

.mega-menu-item {
  list-style: none;
}

.mega-menu-link {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  padding: 0.625rem 0.75rem;
  border-radius: var(--radius-lg);
  text-decoration: none;
  transition: background-color var(--duration-fast) var(--ease-in-out);
}

.mega-menu-link:hover {
  background-color: rgb(0 0 0 / 0.05);
}

.dark .mega-menu-link:hover,
html[data-theme="dark"] .mega-menu-link:hover {
  background-color: rgb(255 255 255 / 0.08);
}

.mega-menu-link__title {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-fg);
  opacity: 0.9;
  transition: opacity var(--duration-fast);
}

.mega-menu-link:hover .mega-menu-link__title {
  opacity: 1;
}

.mega-menu-link__desc {
  font-size: 0.75rem;
  color: var(--color-muted-fg);
  line-height: 1.4;
  transition: color var(--duration-fast);
}

.mega-menu-link:hover .mega-menu-link__desc {
  color: var(--color-muted-fg);
  opacity: 0.8;
}

/* ─────────────────────────────────────────────────────────────────────────────
   12. Header actions
   ───────────────────────────────────────────────────────────────────────────── */

.header-actions {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.header-actions__icon-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--radius-full);
  color: var(--color-fg);
  background: none;
  border: none;
  cursor: pointer;
  transition: background-color var(--duration-fast) var(--ease-in-out);
}

.header-actions__icon-btn:hover {
  background-color: var(--color-secondary);
}

/* CTA button — hidden on small screens */
.header-actions__cta {
  display: none;
}

@media (min-width: 768px) {
  .header-actions__cta {
    display: inline-flex;
    margin-left: 0.25rem;
  }
}

/* Mobile toggle — hidden on desktop */
.header-actions__mobile-toggle {
  display: flex;
}

@media (min-width: 1024px) {
  .header-actions__mobile-toggle {
    display: none;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   13. Mobile navigation
   ───────────────────────────────────────────────────────────────────────────── */

/* Backdrop */
.mobile-nav-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background-color: hsl(var(--background) / 0.75);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  z-index: var(--z-backdrop);
  opacity: 0;
  transition: opacity var(--duration-normal) var(--ease-in-out);
}

.mobile-nav-backdrop.is-visible {
  display: block;
  opacity: 1;
}

/* Drawer panel */
.mobile-nav {
  position: fixed;
  inset-block: 0;
  right: 0;
  width: 100%;
  max-width: 24rem;
  background-color: var(--color-card);
  border-left: 1px solid var(--color-border);
  box-shadow: var(--shadow-2xl);
  z-index: var(--z-mobile-nav);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transform: translateX(100%);
  transition: transform var(--duration-normal) var(--ease-out-expo);
}

.mobile-nav.is-open {
  transform: translateX(0);
}

/* Header row */
.mobile-nav__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem;
  border-bottom: 1px solid var(--color-border);
  flex-shrink: 0;
}

.mobile-nav__wordmark {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  border-radius: var(--radius-sm);
}

.mobile-nav__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: var(--radius);
  background-color: var(--color-primary);
  color: var(--color-primary-fg);
  flex-shrink: 0;
}

.mobile-nav__name {
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.mobile-nav__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--radius-full);
  color: var(--color-fg);
  transition: background-color var(--duration-fast);
}

.mobile-nav__close:hover {
  background-color: var(--color-secondary);
}

/* Custom logo in drawer header */
.mobile-nav__header .custom-logo-link {
  display: inline-flex;
}

.mobile-nav__header .custom-logo {
  height: 1.75rem;
  width: auto;
}

/* Navigation list */
.mobile-nav__nav {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 0.75rem;
}

.mobile-nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.mobile-nav__item {
  border-bottom: 1px solid hsl(var(--border) / 0.5);
}

.mobile-nav__item:last-child {
  border-bottom: none;
}

/* Top-level link */
.mobile-nav__link {
  display: block;
  width: 100%;
  padding: 0.625rem 0.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--color-fg);
  text-decoration: none;
  border-radius: var(--radius-sm);
  transition: color var(--duration-fast);
}

.mobile-nav__link.is-active,
.mobile-nav__link:hover {
  color: var(--color-primary);
}

/* Accordion toggle button */
.mobile-nav__accordion-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 0.625rem 0.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--color-fg);
  text-align: left;
  border-radius: var(--radius-sm);
  transition: color var(--duration-fast);
}

.mobile-nav__accordion-toggle:hover {
  color: var(--color-primary);
}

.mobile-nav__accordion-toggle[aria-expanded="true"] {
  color: var(--color-primary);
}

.mobile-nav__chevron {
  flex-shrink: 0;
  transition: transform var(--duration-fast) var(--ease-in-out);
}

.mobile-nav__accordion-toggle[aria-expanded="true"] .mobile-nav__chevron {
  transform: rotate(180deg);
}

/* Sub-navigation */
.mobile-nav__subnav {
  list-style: none;
  margin: 0;
  padding: 0.25rem 0 0.5rem 0.75rem;
  overflow: hidden;
}

.mobile-nav__subitem {
  list-style: none;
}

.mobile-nav__sublink {
  display: block;
  padding: 0.375rem 0.5rem;
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  text-decoration: none;
  border-radius: var(--radius-sm);
  transition: color var(--duration-fast);
}

.mobile-nav__sublink:hover {
  color: var(--color-primary);
}

/* Footer area */
.mobile-nav__footer {
  padding: 1rem;
  border-top: 1px solid var(--color-border);
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.mobile-nav__ctas {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.mobile-nav__social {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.mobile-nav__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  color: var(--color-muted-fg);
  border-radius: var(--radius-sm);
  transition: color var(--duration-fast);
}

.mobile-nav__social-link:hover {
  color: var(--color-fg);
}

/* Custom logo in mobile nav header */
.mobile-nav .custom-logo-link {
  display: inline-flex;
  align-items: center;
}

.mobile-nav .custom-logo {
  height: 1.75rem;
  width: auto;
}

/* ─────────────────────────────────────────────────────────────────────────────
   14. Site footer
   ───────────────────────────────────────────────────────────────────────────── */

.site-footer {
  background-color: var(--color-card);
  border-top: 1px solid var(--color-border);
  margin-top: auto;
}

/* ─────────────────────────────────────────────────────────────────────────────
   15. Footer branding
   ───────────────────────────────────────────────────────────────────────────── */

.footer-branding {
  padding-block: 3.5rem;
  border-bottom: 1px solid var(--color-border);
}

.footer-branding__logo {
  margin-bottom: 1.25rem;
}

.footer-branding__wordmark {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  text-decoration: none;
  border-radius: var(--radius-sm);
}

.footer-branding__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--radius-lg);
  background-color: var(--color-primary);
  color: var(--color-primary-fg);
  flex-shrink: 0;
  box-shadow: 0 0 0 4px hsl(var(--primary) / 0.15);
}

.footer-branding__name {
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: -0.02em;
}

/* Custom logo in footer */
.footer-branding .custom-logo-link {
  display: inline-flex;
}

.footer-branding .custom-logo {
  height: 2rem;
  width: auto;
}

.footer-branding__desc {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  line-height: 1.625;
  max-width: 24rem;
  margin-bottom: 1.75rem;
}

/* Contact list */
.footer-branding__contact {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin-bottom: 1.75rem;
}

.footer-branding__contact-item {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  font-size: 0.875rem;
  color: var(--color-muted-fg);
}

.footer-branding__contact-item a {
  color: var(--color-muted-fg);
  text-decoration: none;
  transition: color var(--duration-fast);
}

.footer-branding__contact-item a:hover {
  color: var(--color-fg);
}

.footer-branding__contact-icon {
  flex-shrink: 0;
  margin-top: 0.125rem;
  color: hsl(var(--primary) / 0.5);
}

/* Social icons */
.footer-branding__social {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}

.footer-branding__social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--radius-xl);
  border: 1px solid hsl(var(--border) / 0.5);
  color: var(--color-muted-fg);
  background-color: hsl(var(--secondary) / 0.4);
  text-decoration: none;
  transition:
    color             var(--duration-fast),
    background-color  var(--duration-fast),
    border-color      var(--duration-fast),
    transform         var(--duration-fast),
    box-shadow        var(--duration-fast);
}

.footer-branding__social-icon:not(.footer-branding__social-icon--placeholder):hover {
  color: var(--color-primary);
  background-color: hsl(var(--primary) / 0.08);
  border-color: hsl(var(--primary) / 0.25);
  transform: translateY(-2px);
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.15);
}

.footer-branding__social-icon--placeholder {
  opacity: 0.3;
  cursor: default;
}

/* ─────────────────────────────────────────────────────────────────────────────
   16. Footer navigation
   ───────────────────────────────────────────────────────────────────────────── */

.footer-nav {
  padding-block: 3rem;
  border-bottom: 1px solid var(--color-border);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem 1.5rem;
}

@media (min-width: 640px) {
  .footer-nav {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 1024px) {
  .footer-nav {
    grid-template-columns: repeat(6, 1fr);
    gap: 1.5rem;
  }
}

.footer-nav__heading {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--color-fg);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
}

.footer-nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* WordPress injects <li> → <a> structure */
.footer-nav__list li a {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  text-decoration: none;
  transition: color var(--duration-fast);
  border-radius: var(--radius-sm);
}

.footer-nav__list li a:hover {
  color: var(--color-fg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   17. Footer newsletter
   ───────────────────────────────────────────────────────────────────────────── */

.footer-newsletter {
  padding-block: 2.5rem;
  border-bottom: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@media (min-width: 1024px) {
  .footer-newsletter {
    flex-direction: row;
    align-items: center;
    gap: 4rem;
  }
}

.footer-newsletter__copy {
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .footer-newsletter__copy {
    width: 40%;
  }
}

.footer-newsletter__title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-fg);
  margin-bottom: 0.375rem;
}

.footer-newsletter__desc {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  line-height: 1.625;
}

.footer-newsletter__form-wrap {
  flex: 1;
  min-width: 0;
}

.footer-newsletter__input-row {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

@media (min-width: 640px) {
  .footer-newsletter__input-row {
    flex-direction: row;
  }
}

.footer-newsletter__input {
  flex: 7;
  min-width: 0;
  padding: 0.625rem 1rem;
  font-size: 0.875rem;
  font-family: var(--font-sans);
  background-color: var(--color-secondary);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  color: var(--color-fg);
  transition: border-color var(--duration-fast), box-shadow var(--duration-fast);
}

.footer-newsletter__input::placeholder {
  color: hsl(var(--muted-foreground) / 0.5);
}

.footer-newsletter__input:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.15);
}

.footer-newsletter__submit {
  flex: 3;
  justify-content: center;
}

.footer-newsletter__disclaimer {
  margin-top: 0.625rem;
  font-size: 0.75rem;
  color: var(--color-muted-fg);
  line-height: 1.5;
}

.footer-newsletter__privacy-link {
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color var(--duration-fast);
}

.footer-newsletter__privacy-link:hover {
  color: var(--color-fg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   18. Footer legal bar
   ───────────────────────────────────────────────────────────────────────────── */

.footer-legal-bar {
  padding-block: 1.75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
}

@media (min-width: 640px) {
  .footer-legal-bar {
    flex-direction: row;
    justify-content: space-between;
  }
}

.footer-legal-bar__copyright {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  order: 2;
}

@media (min-width: 640px) {
  .footer-legal-bar__copyright {
    order: 1;
  }
}

.footer-legal-bar__nav {
  order: 1;
}

@media (min-width: 640px) {
  .footer-legal-bar__nav {
    order: 2;
  }
}

.footer-legal-bar__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.25rem 1.25rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-legal-bar__list li a {
  font-size: 0.75rem;
  color: var(--color-muted-fg);
  text-decoration: none;
  transition: color var(--duration-fast);
  border-radius: var(--radius-sm);
}

.footer-legal-bar__list li a:hover {
  color: var(--color-fg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   19. WordPress nav menu reset
   Removes WordPress's default ul/li styles injected via wp_nav_menu().
   ───────────────────────────────────────────────────────────────────────────── */

.header-nav__list,
.mobile-nav__list,
.mobile-nav__subnav,
.footer-nav__list,
.footer-legal-bar__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* WordPress adds .current-menu-item to active items */
.footer-nav__list .current-menu-item > a,
.footer-legal-bar__list .current-menu-item > a {
  color: var(--color-fg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   20. Print
   ───────────────────────────────────────────────────────────────────────────── */

@media print {
  .site-header,
  .mobile-nav-backdrop,
  .mobile-nav,
  #announcement-bar,
  .header-actions__mobile-toggle {
    display: none !important;
  }

  .site-footer {
    border-top: 1px solid #ccc;
  }

  .footer-newsletter,
  .footer-branding__social {
    display: none !important;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   21. Homepage — Section base & shared utilities
   ───────────────────────────────────────────────────────────────────────────── */

/* Section base */
.home-section {
  padding-block: 5rem;
  position: relative;
}

.home-section--muted {
  background-color: var(--color-muted);
}

.home-section--card {
  background-color: var(--color-card);
}

.home-section--transparent {
  background-color: transparent;
}

/* Container width variants */
.container--lg {
  max-width: 72rem;
  margin-inline: auto;
  padding-inline: var(--container-padding);
}

.container--md {
  max-width: 48rem;
  margin-inline: auto;
  padding-inline: var(--container-padding);
}

/* Section header — centred, max-width 2xl */
.section-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 4rem;
  max-width: 42rem;
  margin-inline: auto;
  margin-bottom: 4rem;
}

.section-title {
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: var(--color-fg);
  margin-bottom: 1rem;
}

.section-subtitle {
  font-size: 1.125rem;
  line-height: 1.6;
  color: var(--color-muted-fg);
}

/* Text gradient utility (shared across Hero, Metrics, etc.) */
.text-gradient {
  background: linear-gradient(
    135deg,
    var(--color-primary) 0%,
    hsl(var(--primary) / 0.7) 50%,
    hsl(265 85% 65%) 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

/* Shared card */
.card {
  border-radius: var(--radius-xl);
  background-color: var(--color-card);
}

.card--outlined {
  border: 1px solid var(--color-border);
}

/* Shared badge */
.badge {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.75rem;
  border-radius: var(--radius-full);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.025em;
}

.badge--outline {
  border: 1px solid hsl(var(--primary) / 0.3);
  color: var(--color-primary);
  background: transparent;
}

/* Visually hidden (for aria-live etc.) */
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   22. Hero section
   ───────────────────────────────────────────────────────────────────────────── */

.home-hero {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;   /* required: contains position:absolute background layers */
  overflow: hidden;
  padding-top: 5rem;    /* header clearance */
  padding-bottom: 2rem;
}

/* Background layers */
.home-hero__background {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.home-hero__grid-pattern {
  position: absolute;
  inset: 0;
  opacity: 0.03;
  background-image:
    linear-gradient(to right,  rgba(0,0,0,1) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0,0,0,1) 1px, transparent 1px);
  background-size: 40px 40px;
  background-position: center center;
}

.dark .home-hero__grid-pattern {
  opacity: 0.05;
}

.home-hero__glow {
  position: absolute;
  border-radius: var(--radius-full);
  filter: blur(120px);
  mix-blend-mode: screen;
  pointer-events: none;
}

.home-hero__glow--primary {
  top: -10%;
  left: -10%;
  width: 40%;
  height: 40%;
  background: hsl(var(--primary) / 0.2);
}

.dark .home-hero__glow--primary {
  background: hsl(var(--primary) / 0.3);
}

.home-hero__glow--violet {
  bottom: -10%;
  right: -10%;
  width: 40%;
  height: 40%;
  background: hsl(265 85% 65% / 0.1);
}

.dark .home-hero__glow--violet {
  background: hsl(265 85% 65% / 0.2);
}

.home-hero__orb {
  position: absolute;
  border-radius: var(--radius-full);
  filter: blur(80px);
  pointer-events: none;
}

@keyframes hero-float {
  0%, 100% { transform: translateY(-15px); opacity: 0.5; }
  50%       { transform: translateY(15px);  opacity: 0.8; }
}

@keyframes hero-float-reverse {
  0%, 100% { transform: translateY(15px);  opacity: 0.5; }
  50%       { transform: translateY(-15px); opacity: 0.7; }
}

@media (prefers-reduced-motion: no-preference) {
  .home-hero__orb--top {
    top: 20%;
    right: 15%;
    width: 16rem;
    height: 16rem;
    background: hsl(var(--primary) / 0.05);
    animation: hero-float 8s ease-in-out infinite;
  }

  .home-hero__orb--bottom {
    bottom: 30%;
    left: 10%;
    width: 18rem;
    height: 18rem;
    background: hsl(265 85% 65% / 0.05);
    animation: hero-float-reverse 10s ease-in-out infinite;
    animation-delay: 1s;
  }
}

/* Content */
.home-hero__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 52rem;
  margin-inline: auto;
  width: 100%;
}

/* Trust badge */
.home-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: var(--radius-full);
  border: 1px solid hsl(var(--border) / 0.5);
  background: hsl(var(--background) / 0.5);
  backdrop-filter: blur(8px);
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-fg);
  margin-bottom: 1.5rem;
  box-shadow: var(--shadow-sm);
}

.home-hero__badge-dot {
  position: relative;
  display: inline-flex;
  width: 0.625rem;
  height: 0.625rem;
}

.home-hero__badge-ping {
  position: absolute;
  inset: 0;
  border-radius: var(--radius-full);
  background-color: #22c55e;
  opacity: 0.75;
}

@media (prefers-reduced-motion: no-preference) {
  .home-hero__badge-ping {
    animation: ping 1.5s cubic-bezier(0, 0, 0.2, 1) infinite;
  }
}

@keyframes ping {
  75%, 100% { transform: scale(2); opacity: 0; }
}

.home-hero__badge-dot::after {
  content: '';
  position: relative;
  display: inline-flex;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: var(--radius-full);
  background-color: #22c55e;
}

/* Eyebrow */
.home-hero__eyebrow {
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-muted-fg);
  margin-bottom: 1.25rem;
}

/* Headline */
.home-hero__headline {
  font-size: clamp(2.5rem, 6vw, 4rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: var(--color-fg);
  margin-bottom: 2rem;
  max-width: 51rem;
}

.home-hero__headline-break {
  display: none;
}

@media (min-width: 768px) {
  .home-hero__headline-break {
    display: block;
  }
}

/* Description */
.home-hero__description {
  font-size: 1.125rem;
  line-height: 1.65;
  color: var(--color-muted-fg);
  max-width: 36rem;
  text-wrap: balance;
  margin-bottom: 3rem;
}

/* CTA row */
.home-hero__cta-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 100%;
}

@media (min-width: 640px) {
  .home-hero__cta-row {
    flex-direction: row;
    width: auto;
  }
}

.home-hero__cta-primary {
  box-shadow: 0 4px 24px hsl(var(--primary) / 0.3);
}

.home-hero__cta-secondary {
  background: hsl(var(--background) / 0.5);
  backdrop-filter: blur(8px);
}

/* Social proof */
.home-hero__social-proof {
  font-size: 0.75rem;
  color: var(--color-muted-fg);
  opacity: 0.6;
  letter-spacing: 0.03em;
  margin-top: 1.25rem;
}

/* Metrics grid */
.home-hero__metrics {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
  margin-top: 3rem;
}

@media (min-width: 768px) {
  .home-hero__metrics {
    grid-template-columns: repeat(4, 1fr);
    margin-top: 5rem;
  }
}

.home-hero__metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border-left: 1px solid hsl(var(--border) / 0.4);
}

/* First in each row has no left border */
.home-hero__metric--0,
.home-hero__metric--2 {
  border-left: none;
}

@media (min-width: 768px) {
  .home-hero__metric--2 {
    border-left: 1px solid hsl(var(--border) / 0.4);
  }
  .home-hero__metric--0 {
    border-left: none;
  }
}

.home-hero__metric-value {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  display: block;
  line-height: 1;
}

.home-hero__metric-label {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  font-weight: 500;
  letter-spacing: 0.025em;
  margin-top: 0.25rem;
  display: block;
}

/* Hero preview (decorative dashboard) */
.home-hero__preview {
  width: 100%;
  max-width: 64rem;
  margin-inline: auto;
  margin-top: 5rem;
  position: relative;
  z-index: 10;
}

.home-hero__preview-glow {
  position: absolute;
  inset: 2rem;
  background: hsl(var(--primary) / 0.15);
  filter: blur(80px);
  border-radius: 1.5rem;
  pointer-events: none;
}

.home-hero__preview-card {
  width: 100%;
  position: relative;
  transform: perspective(1400px) rotateX(4deg) rotateY(-2deg);
  transform-style: preserve-3d;
}

@media (prefers-reduced-motion: reduce) {
  .home-hero__preview-card {
    transform: none;
  }
}

.home-hero__chrome {
  height: 2.75rem;
  border-bottom: 1px solid hsl(var(--border) / 0.5);
  display: flex;
  align-items: center;
  padding-inline: 1rem;
  gap: 1rem;
  background: hsl(var(--muted) / 0.3);
  border-radius: 1rem 1rem 0 0;
}

.home-hero__preview-card > .home-hero__chrome {
  overflow: hidden;
  border-radius: 1rem 1rem 0 0;
}

/* Wrapper card shell */
.home-hero__preview-card {
  overflow: hidden;
  border-radius: 1rem;
  border: 1px solid hsl(var(--border) / 0.6);
  box-shadow: 0 40px 100px rgba(0,0,0,0.3);
  background: hsl(var(--card) / 0.7);
  backdrop-filter: blur(24px);
}

.home-hero__chrome-dots {
  display: flex;
  gap: 0.375rem;
  flex-shrink: 0;
}

.home-hero__chrome-dot {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: var(--radius-full);
}

.home-hero__chrome-dot--red    { background: rgba(239,68,68,0.8); }
.home-hero__chrome-dot--yellow { background: rgba(234,179,8,0.8); }
.home-hero__chrome-dot--green  { background: rgba(34,197,94,0.8); }

.home-hero__chrome-url {
  flex: 1;
  display: flex;
  justify-content: center;
}

.home-hero__chrome-url > div,
.home-hero__chrome-url-text {
  width: 12rem;
  height: 1.5rem;
  border-radius: 0.375rem;
  background: hsl(var(--background) / 0.5);
  border: 1px solid hsl(var(--border) / 0.5);
  display: flex;
  align-items: center;
  padding-inline: 0.75rem;
  gap: 0.5rem;
}

.home-hero__chrome-indicator {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: var(--radius-full);
  background: rgba(34,197,94,0.7);
  flex-shrink: 0;
}

.home-hero__chrome-url-text {
  height: 0.5rem;
  width: 6rem;
  background: hsl(var(--muted-foreground) / 0.2);
  border-radius: 0.25rem;
  border: none;
  padding: 0;
}

.home-hero__chrome-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}

.home-hero__chrome-btn {
  height: 1.5rem;
  width: 1.5rem;
  border-radius: 0.375rem;
  background: hsl(var(--muted) / 0.5);
  border: 1px solid hsl(var(--border) / 0.4);
}

.home-hero__chrome-btn--wide {
  width: 4rem;
  background: hsl(var(--primary) / 0.2);
  border-color: hsl(var(--primary) / 0.2);
}

.home-hero__preview-body {
  display: flex;
  height: 26rem;
}

@media (min-width: 768px) {
  .home-hero__preview-body {
    height: 31rem;
  }
}

/* Sidebar */
.home-hero__sidebar {
  width: 3.5rem;
  border-right: 1px solid hsl(var(--border) / 0.4);
  display: flex;
  flex-direction: column;
  background: hsl(var(--background) / 0.2);
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .home-hero__sidebar {
    width: 13rem;
  }
}

.home-hero__sidebar-logo {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid hsl(var(--border) / 0.4);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.home-hero__sidebar-logo-icon {
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 0.5rem;
  background: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.home-hero__sidebar-logo-inner {
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 0.25rem;
  background: rgba(255,255,255,0.6);
}

.home-hero__sidebar-logo-text {
  display: none;
  height: 0.5rem;
  width: 4rem;
  background: hsl(var(--muted-foreground) / 0.3);
  border-radius: 0.25rem;
}

@media (min-width: 768px) {
  .home-hero__sidebar-logo-text {
    display: block;
  }
}

.home-hero__sidebar-nav {
  padding: 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.home-hero__sidebar-item {
  padding: 0.5rem;
  border-radius: 0.375rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: default;
}

.home-hero__sidebar-item.is-active {
  background: hsl(var(--primary) / 0.1);
}

.home-hero__sidebar-icon {
  width: 1rem;
  height: 1rem;
  border-radius: 0.25rem;
  background: hsl(var(--muted-foreground) / 0.3);
  flex-shrink: 0;
}

.is-active .home-hero__sidebar-icon {
  background: var(--color-primary);
}

.home-hero__sidebar-label {
  display: none;
  height: 0.375rem;
  border-radius: 0.25rem;
  background: hsl(var(--muted-foreground) / 0.2);
}

@media (min-width: 768px) {
  .home-hero__sidebar-label { display: block; }
  .home-hero__sidebar-label--0 { width: 80%; }
  .home-hero__sidebar-label--1 { width: 75%; }
  .home-hero__sidebar-label--2 { width: 66%; }
  .home-hero__sidebar-label--3 { width: 50%; }
  .home-hero__sidebar-label--4 { width: 60%; }
}

.home-hero__preview-main {
  flex: 1;
  overflow: hidden;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* KPI cards */
.home-hero__kpi-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
}

@media (min-width: 768px) {
  .home-hero__kpi-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.home-hero__kpi-card {
  border-radius: 0.75rem;
  border: 1px solid hsl(var(--border) / 0.6);
  background: hsl(var(--card) / 0.8);
  overflow: hidden;
}

.home-hero__kpi-bar {
  height: 3px;
  width: 100%;
}

.home-hero__kpi-bar--primary  { background: var(--color-primary); }
.home-hero__kpi-bar--emerald  { background: #10b981; }
.home-hero__kpi-bar--violet   { background: #8b5cf6; }
.home-hero__kpi-bar--amber    { background: #f59e0b; }

.home-hero__kpi-inner {
  padding: 0.5rem 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.home-hero__kpi-dot-bg {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.home-hero__kpi-dot-bg--primary { background: hsl(var(--primary) / 0.1); }
.home-hero__kpi-dot-bg--emerald { background: rgba(16,185,129,0.1); }
.home-hero__kpi-dot-bg--violet  { background: rgba(139,92,246,0.1); }
.home-hero__kpi-dot-bg--amber   { background: rgba(245,158,11,0.1); }

.home-hero__kpi-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: var(--radius-full);
}

.home-hero__kpi-dot--primary { background: var(--color-primary); }
.home-hero__kpi-dot--emerald { background: #10b981; }
.home-hero__kpi-dot--violet  { background: #8b5cf6; }
.home-hero__kpi-dot--amber   { background: #f59e0b; }

.home-hero__kpi-value {
  height: 0.625rem;
  width: 2.5rem;
  background: hsl(var(--muted-foreground) / 0.3);
  border-radius: 0.25rem;
  margin-bottom: 0.25rem;
}

.home-hero__kpi-label {
  font-size: 0.625rem;
  color: var(--color-muted-fg);
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Mini chart — restructured to match React HeroPreview chart layout */
.home-hero__chart {
  flex: 1;
  border: 1px solid hsl(var(--border) / 0.4);
  border-radius: 0.75rem;
  background: hsl(var(--card) / 0.2);   /* bg-card/20 */
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  /* no gap — children use specific margins */
}

/* Chart header (title placeholder, legend, period buttons) */
.home-hero__chart-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem;
  flex-shrink: 0;
}

.home-hero__chart-header-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.home-hero__chart-title-bar {
  height: 0.75rem;
  width: 5rem;
  background: hsl(var(--foreground) / 0.15);
  border-radius: 0.25rem;
}

.home-hero__chart-legend {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.home-hero__chart-legend-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: var(--radius-full);
  background: hsl(var(--primary) / 0.6);
  flex-shrink: 0;
}

.home-hero__chart-legend-label {
  height: 0.5rem;
  width: 3rem;
  background: hsl(var(--muted-foreground) / 0.2);
  border-radius: 0.25rem;
}

.home-hero__chart-header-right {
  display: flex;
  gap: 0.375rem;
}

.home-hero__chart-period {
  height: 1.25rem;
  width: 2rem;
  border-radius: 0.25rem;
  background: hsl(var(--muted) / 0.4);
  border: 1px solid hsl(var(--border) / 0.4);
}

.home-hero__chart-period--active {
  background: hsl(var(--primary) / 0.15);
  border-color: hsl(var(--primary) / 0.2);
}

/* Chart body: relative container for absolute grid lines, gradient, and bars */
.home-hero__chart-body {
  flex: 1;
  position: relative;
  min-height: 3rem;
}

.home-hero__chart-gridline {
  position: absolute;
  left: 0;
  right: 0;
  border-top: 1px solid hsl(var(--border) / 0.2);
  pointer-events: none;
}

/* Gradient area fill — clip-path polygon mirrors React HeroPreview */
.home-hero__chart-area {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 75%;
  background: linear-gradient(to top, hsl(var(--primary)), transparent);
  clip-path: polygon(0 100%,0 72%,8% 48%,17% 58%,25% 22%,33% 34%,42% 12%,50% 0%,58% 20%,67% 2%,75% 18%,83% 8%,92% 16%,100% 0%,100% 100%);
  opacity: 0.08;
  pointer-events: none;
}

/* Bars — absolute positioned inside chart-body */
.home-hero__chart-bars {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  gap: 3px;
}

.home-hero__chart-bar-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}

.home-hero__chart-bar {
  width: 100%;
  border-radius: 2px 2px 0 0;
  background: hsl(var(--primary) / 0.25);
  min-height: 4px;
}

/* Bar index 7 (value 100) — primary colour + glow */
.home-hero__chart-bar--highlight {
  background: var(--color-primary);
  box-shadow: 0 0 16px 4px hsl(var(--primary) / 0.5);
}

.home-hero__chart-baseline {
  display: flex;
  gap: 3px;
}

.home-hero__chart-tick {
  flex: 1;
  height: 0.375rem;
  background: hsl(var(--muted-foreground) / 0.1);
  border-radius: 0.125rem;
}

/* Floating status badges */
.home-hero__badge-status,
.home-hero__badge-agents {
  position: absolute;
  background: var(--color-card);
  border: 1px solid hsl(var(--border) / 0.8);
  box-shadow: var(--shadow-lg);
  border-radius: 0.75rem;
  padding: 0.5rem 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 500;
  color: var(--color-fg);
  white-space: nowrap;
}

.home-hero__badge-status {
  right: -0.5rem;
  top: 5rem;
}

@media (min-width: 768px) {
  .home-hero__badge-status {
    right: -1.5rem;
    top: 7rem;
  }
}

.home-hero__badge-agents {
  left: -0.5rem;
  bottom: 5rem;
}

@media (min-width: 768px) {
  .home-hero__badge-agents {
    left: -1.5rem;
    bottom: 7rem;
  }
}

.home-hero__status-dot {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: var(--radius-full);
  background: #10b981;
  flex-shrink: 0;
}

.home-hero__avatar-stack {
  display: flex;
}

.home-hero__avatar-stack .home-hero__avatar + .home-hero__avatar {
  margin-left: -0.25rem;
}

.home-hero__avatar {
  width: 1.25rem;
  height: 1.25rem;
  border-radius: var(--radius-full);
  border: 2px solid var(--color-card);
}

.home-hero__avatar--primary { background: hsl(var(--primary) / 0.6); }
.home-hero__avatar--emerald { background: rgba(16,185,129,0.6); }
.home-hero__avatar--violet  { background: rgba(139,92,246,0.6); }

/* KPI sparklines (mini bar charts matching React HeroPreview) */
.home-hero__kpi-sparkline {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  height: 1rem;           /* h-4 */
  padding: 0 0.75rem 0.5rem;
}

.home-hero__kpi-spark {
  flex: 1;
  border-radius: 2px 2px 0 0;
  opacity: 0.6;           /* opacity-60 */
  min-height: 2px;
}

.home-hero__kpi-spark--primary { background: var(--color-primary); }
.home-hero__kpi-spark--emerald { background: #10b981; }
.home-hero__kpi-spark--violet  { background: #8b5cf6; }
.home-hero__kpi-spark--amber   { background: #f59e0b; }

/* Content header row above KPI cards (matches React HeroPreview) */
.home-hero__content-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid hsl(var(--border) / 0.4);
  background: hsl(var(--background) / 0.1);
  margin: -0.75rem -0.75rem 0.75rem;   /* bleed to card edges */
}

.home-hero__content-header-titles {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.home-hero__content-header-title-bar {
  height: 1rem;
  width: 8rem;
  background: hsl(var(--foreground) / 0.15);
  border-radius: 0.25rem;
}

.home-hero__content-header-subtitle-bar {
  height: 0.625rem;
  width: 5rem;
  background: hsl(var(--muted-foreground) / 0.2);
  border-radius: 0.25rem;
}

.home-hero__content-header-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* Filter dropdown (hidden on small screens) */
.home-hero__content-header-filter {
  display: none;
  height: 2rem;
  width: 7rem;
  border-radius: 0.5rem;
  background: hsl(var(--muted) / 0.4);
  border: 1px solid hsl(var(--border) / 0.4);
  align-items: center;
  gap: 0.5rem;
  padding: 0 0.75rem;
}

@media (min-width: 768px) {
  .home-hero__content-header-filter {
    display: flex;
  }
}

.home-hero__content-header-filter-bar {
  height: 0.5rem;
  width: 3rem;
  background: hsl(var(--muted-foreground) / 0.25);
  border-radius: 0.25rem;
}

.home-hero__content-header-filter-icon {
  height: 0.75rem;
  width: 0.75rem;
  border-radius: 0.2rem;
  background: hsl(var(--muted-foreground) / 0.2);
  flex-shrink: 0;
}

/* Primary action button skeleton */
.home-hero__content-header-action {
  height: 2rem;
  width: 5rem;
  border-radius: 0.5rem;
  background: hsl(var(--primary) / 0.2);
  border: 1px solid hsl(var(--primary) / 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  padding: 0 0.75rem;
}

.home-hero__content-header-action-dot {
  width: 0.375rem;
  height: 0.375rem;
  border-radius: var(--radius-full);
  background: hsl(var(--primary) / 0.7);
  flex-shrink: 0;
}

.home-hero__content-header-action-bar {
  height: 0.5rem;
  width: 2rem;
  background: hsl(var(--primary) / 0.5);
  border-radius: 0.25rem;
}

/* Bottom gradient fade */
.home-hero__fade-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8rem;
  background: linear-gradient(to top, var(--color-bg), transparent);
  z-index: 20;
  pointer-events: none;
}

/* ─────────────────────────────────────────────────────────────────────────────
   23. Trust Indicators
   ───────────────────────────────────────────────────────────────────────────── */

.home-trust-indicators__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 640px) {
  .home-trust-indicators__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .home-trust-indicators__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.home-trust-indicators__card {
  height: 100%;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  background: hsl(var(--card) / 0.5);
  backdrop-filter: blur(4px);
  transition: background-color var(--duration-normal);
}

.home-trust-indicators__card:hover {
  background: var(--color-card);
}

.home-trust-indicators__icon-wrap {
  width: 3rem;
  height: 3rem;
  border-radius: 0.5rem;
  background: hsl(var(--primary) / 0.1);
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.home-trust-indicators__icon-wrap svg {
  width: 1.5rem;
  height: 1.5rem;
}

.home-trust-indicators__card-title {
  font-size: 1.5rem;          /* text-2xl — matches React Heading size="xl" */
  font-weight: 600;
  color: var(--color-fg);
  margin-bottom: 0.5rem;
  letter-spacing: -0.015em;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .home-trust-indicators__card-title {
    font-size: 1.875rem;      /* text-3xl */
  }
}

.home-trust-indicators__card-desc {
  font-size: 0.9375rem;
  color: var(--color-muted-fg);
  line-height: 1.5;
}

/* ─────────────────────────────────────────────────────────────────────────────
   24. Solutions Overview
   ───────────────────────────────────────────────────────────────────────────── */

.home-solutions__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: stretch;
  grid-auto-rows: 1fr;        /* auto-rows-fr — equal row heights across all rows */
}

@media (min-width: 768px) {
  .home-solutions__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .home-solutions__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.home-solutions__item {
  display: flex;
}

@media (min-width: 768px) {
  .home-solutions__item--featured {
    grid-column: span 2;
  }
}

.home-solutions__card {
  width: 100%;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  transition: border-color var(--duration-normal), box-shadow var(--duration-normal);
}

.home-solutions__card:hover {
  border-color: hsl(var(--primary) / 0.3);
  box-shadow: var(--shadow-md);
}

.home-solutions__card--featured {
  background: hsl(var(--card) / 0.4);
  border-color: hsl(var(--primary) / 0.2);
}

.home-solutions__card-top {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.home-solutions__icon-wrap {
  padding: 0.75rem;
  border-radius: 0.75rem;
  background: var(--color-muted);
  color: var(--color-fg);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.home-solutions__icon-wrap svg {
  width: 1.5rem;
  height: 1.5rem;
}

.home-solutions__icon-wrap--featured {
  background: var(--color-primary);
  color: hsl(var(--primary-foreground));
}

.home-solutions__card-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--color-fg);
  padding-top: 0.25rem;
}

.home-solutions__card-desc {
  font-size: 0.9375rem;
  color: var(--color-muted-fg);
  line-height: 1.6;
  flex-grow: 1;
  margin-bottom: 1.5rem;
}

.home-solutions__features {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.home-solutions__feature {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.home-solutions__check-icon {
  width: 1rem;
  height: 1rem;
  color: var(--color-primary);
  flex-shrink: 0;
}

.home-solutions__feature > span {
  font-size: 0.875rem;
  color: var(--color-fg);
}

.home-solutions__card-footer {
  margin-top: auto;
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-border);
}

.home-solutions__learn-more {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-primary);
  text-decoration: none;
}

.home-solutions__learn-more:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.home-solutions__arrow-icon {
  width: 1rem;
  height: 1rem;
  transition: transform var(--duration-fast);
}

.home-solutions__learn-more:hover .home-solutions__arrow-icon {
  transform: translateX(0.25rem);
}

.home-solutions__cta-wrap {
  margin-top: 3rem;
  display: flex;
  justify-content: center;
}

/* ─────────────────────────────────────────────────────────────────────────────
   25. Products Overview
   ───────────────────────────────────────────────────────────────────────────── */

.home-products__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 1024px) {
  .home-products__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.home-products__card {
  position: relative;
  height: 100%;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: border-color var(--duration-normal), box-shadow var(--duration-normal);
}

.home-products__card--highlighted {
  background: linear-gradient(
    135deg,
    hsl(var(--primary) / 0.05) 0%,
    hsl(265 85% 65% / 0.03) 100%
  );
  border-color: hsl(var(--primary) / 0.4);
  /* ring + outer ambient glow matching React shadow-[0_0_40px_rgba(...primary...,0.08)] */
  box-shadow:
    0 0 0 1px hsl(var(--primary) / 0.1),
    0 0 40px hsl(var(--primary) / 0.08);
}

.home-products__card--coming-soon {
  filter: grayscale(50%);
  opacity: 0.7;               /* opacity-70 */
  transition: filter var(--duration-normal), opacity var(--duration-normal);
}

.home-products__card--coming-soon:hover {
  filter: grayscale(0);       /* hover:grayscale-0 */
  opacity: 1;
}

.home-products__highlight-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;                /* h-0.5 = 2px — matches React */
  /* from-primary/80 via-primary to-primary/40 */
  background: linear-gradient(
    to right,
    hsl(var(--primary) / 0.8),
    hsl(var(--primary)),
    hsl(var(--primary) / 0.4)
  );
  border-radius: 0.75rem 0.75rem 0 0; /* rounded-t-xl */
}

.home-products__card-header {
  margin-bottom: 1rem;
}

.home-products__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.625rem;
  border-radius: var(--radius-full);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

/* Flagship — separate outlined badge with filled Star icon (matches React) */
.home-products__badge--flagship {
  background: transparent;
  border: 1px solid hsl(var(--primary) / 0.4);
  color: var(--color-primary);
}

.home-products__badge--flagship .home-products__badge-icon {
  fill: currentColor;   /* Star is filled, not just stroked */
}

.home-products__badge--live {
  background: hsl(var(--primary) / 0.1);
  color: var(--color-primary);
  border: 1px solid hsl(var(--primary) / 0.2);
}

.home-products__badge--soon {
  background: var(--color-muted);
  color: var(--color-muted-fg);
  border: 1px solid var(--color-border);
}

.home-products__badge-icon {
  width: 0.75rem;
  height: 0.75rem;
}

.home-products__card-body {
  flex-grow: 1;
}

.home-products__product-name {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--color-fg);
  margin-bottom: 0.375rem;
}

.home-products__product-tagline {
  font-size: 0.9375rem;
  color: var(--color-muted-fg);
  margin-bottom: 1.5rem;
}

.home-products__features {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.home-products__feature {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.home-products__check-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-primary);
  flex-shrink: 0;
  margin-top: 0.125rem;
}

.home-products__check-icon--muted {
  color: var(--color-muted-fg);
}

.home-products__feature > span {
  font-size: 0.875rem;
  color: var(--color-fg);
  line-height: 1.5;
}

.home-products__feature--muted > span {
  color: var(--color-muted-fg);
}

.home-products__card-footer {
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-border);
  margin-top: auto;
}

.home-products__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.home-products__cta--highlighted {
  box-shadow: 0 4px 12px hsl(var(--primary) / 0.2);
}

.home-products__cta--disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* Lock overlay for coming-soon products */
.home-products__lock-overlay {
  position: absolute;
  inset: 0;
  background: hsl(var(--background) / 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.home-products__lock-badge {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  border-radius: var(--radius-full);
  background: hsl(var(--card) / 0.9);
  border: 1px solid var(--color-border);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--color-muted-fg);
  backdrop-filter: blur(4px);
}

.home-products__lock-icon {
  width: 0.875rem;
  height: 0.875rem;
}

/* ─────────────────────────────────────────────────────────────────────────────
   26. Enterprise Services
   ───────────────────────────────────────────────────────────────────────────── */

.home-services__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}

@media (min-width: 640px) {
  .home-services__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .home-services__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.home-services__item {
  display: flex;
}

.home-services__link {
  display: block;
  width: 100%;
  text-decoration: none;
}

.home-services__card {
  height: 100%;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  transition: border-color var(--duration-normal), box-shadow var(--duration-normal);
}

.home-services__link:hover .home-services__card {
  border-color: hsl(var(--primary) / 0.4);
  box-shadow: var(--shadow-md);
}

.home-services__icon-wrap {
  width: 3rem;
  height: 3rem;
  border-radius: 0.75rem;
  background: var(--color-muted);
  color: var(--color-muted-fg);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  flex-shrink: 0;
  transition: background-color var(--duration-normal), color var(--duration-normal);
}

.home-services__icon-wrap svg {
  width: 1.5rem;
  height: 1.5rem;
}

.home-services__link:hover .home-services__icon-wrap {
  background: hsl(var(--primary) / 0.1);
  color: var(--color-primary);
}

.home-services__card-title {
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--color-fg);
  margin-bottom: 0.75rem;
  transition: color var(--duration-normal);
}

.home-services__link:hover .home-services__card-title {
  color: var(--color-primary);
}

.home-services__card-desc {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  line-height: 1.6;
  flex-grow: 1;
  margin-bottom: 1.5rem;
}

.home-services__learn-more {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-muted-fg);
  margin-top: auto;
  transition: color var(--duration-normal);
}

.home-services__link:hover .home-services__learn-more {
  color: var(--color-primary);
}

.home-services__arrow-icon {
  width: 1rem;
  height: 1rem;
  transform: translateX(-0.25rem);
  transition: transform var(--duration-normal);
}

.home-services__link:hover .home-services__arrow-icon {
  transform: translateX(0);
}

/* ─────────────────────────────────────────────────────────────────────────────
   27. Tech Stack
   ───────────────────────────────────────────────────────────────────────────── */

.home-techstack__wrapper {
  max-width: 56rem;
  margin-inline: auto;
}

/* Tablist pill container */
.home-techstack__tablist {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
  margin-bottom: 2.5rem;
  background: hsl(var(--muted) / 0.5);
  padding: 0.375rem;
  border-radius: var(--radius-full);
  border: 1px solid hsl(var(--border) / 0.5);
}

/* Tab button */
.home-techstack__tab {
  padding: 0.5rem 1.25rem;
  border-radius: var(--radius-full);
  font-size: 0.875rem;
  font-weight: 500;
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--color-muted-fg);
  transition: background-color var(--duration-normal), color var(--duration-normal), box-shadow var(--duration-normal);
  white-space: nowrap;
}

.home-techstack__tab:hover {
  color: var(--color-fg);
  background: hsl(var(--background) / 0.5);
}

.home-techstack__tab.is-active {
  background: var(--color-bg);
  color: var(--color-fg);
  border: 1px solid hsl(var(--border) / 0.5);
  box-shadow: var(--shadow-sm);
}

.home-techstack__tab:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* Panel — CSS fade-in animation mirrors React AnimatePresence opacity:0,y:6 → opacity:1,y:0 */
.home-techstack__panel {
  outline: none;
}

@media (prefers-reduced-motion: no-preference) {
  /* Fires every time the hidden attribute is removed (panel becomes active) */
  .home-techstack__panel:not([hidden]) {
    animation: techstack-panel-fadein 0.2s ease-out both;
  }
}

@keyframes techstack-panel-fadein {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

.home-techstack__panel-desc {
  text-align: center;
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  font-weight: 500;
  margin-bottom: 2rem;
}

/* Tech tiles grid */
.home-techstack__tiles {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}

@media (min-width: 640px) {
  .home-techstack__tiles {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 1024px) {
  .home-techstack__tiles {
    grid-template-columns: repeat(5, 1fr);
  }
}

.home-techstack__tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 1.75rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid var(--color-border);
  background: var(--color-card);
  transition: border-color var(--duration-normal), background-color var(--duration-normal), box-shadow var(--duration-normal);
  cursor: default;
}

.home-techstack__tile:hover {
  border-color: hsl(var(--primary) / 0.4);
  background: hsl(var(--primary) / 0.05);
  box-shadow: var(--shadow-sm);
}

.home-techstack__tile-badge {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.5rem;
  background: var(--color-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--color-muted-fg);
  transition: background-color var(--duration-normal), color var(--duration-normal);
}

.home-techstack__tile:hover .home-techstack__tile-badge {
  background: hsl(var(--primary) / 0.1);
  color: var(--color-primary);
}

.home-techstack__tile-name {
  font-weight: 500;
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  text-align: center;
  transition: color var(--duration-normal);
}

.home-techstack__tile:hover .home-techstack__tile-name {
  color: var(--color-fg);
}

/* ─────────────────────────────────────────────────────────────────────────────
   28. Trust Center Preview
   ───────────────────────────────────────────────────────────────────────────── */

.home-trust-preview__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 48rem;
  margin-inline: auto;
  margin-bottom: 3rem;
}

.home-trust-preview__icon-wrap {
  width: 3rem;
  height: 3rem;
  border-radius: var(--radius-full);
  background: hsl(var(--primary) / 0.1);
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.home-trust-preview__icon-wrap svg {
  width: 1.5rem;
  height: 1.5rem;
}

.home-trust-preview__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-bottom: 3rem;
}

@media (min-width: 768px) {
  .home-trust-preview__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .home-trust-preview__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.home-trust-preview__card {
  height: 100%;
  padding: 2rem;
  background: hsl(var(--card) / 0.5);
  transition: border-color var(--duration-normal), background-color var(--duration-normal);
}

.home-trust-preview__card:hover {
  border-color: hsl(var(--primary) / 0.3);
  background: var(--color-card);
}

.home-trust-preview__card-title {
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--color-fg);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}

.home-trust-preview__check-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-primary);
  flex-shrink: 0;
}

.home-trust-preview__card-desc {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  line-height: 1.6;
}

.home-trust-preview__cta-wrap {
  display: flex;
  justify-content: center;
}

/* ─────────────────────────────────────────────────────────────────────────────
   29. Developer Experience
   ───────────────────────────────────────────────────────────────────────────── */

.home-developer__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
}

@media (min-width: 1024px) {
  .home-developer__grid {
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    gap: 4rem;
  }
}

.home-developer__left {
  display: flex;
  flex-direction: column;
}

.home-developer__title {
  font-size: clamp(1.75rem, 3.5vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--color-fg);
  margin-bottom: 1rem;
}

.home-developer__subtitle {
  font-size: 1.125rem;
  color: var(--color-muted-fg);
  line-height: 1.6;
  margin-bottom: 2.5rem;
}

.home-developer__features {
  list-style: none;
  margin: 0 0 2.5rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.home-developer__feature {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}

.home-developer__feat-icon-wrap {
  margin-top: 0.25rem;
  background: var(--color-muted);
  padding: 0.5rem;
  border-radius: 0.5rem;
  flex-shrink: 0;
  color: var(--color-fg);
}

.home-developer__feat-icon-wrap svg {
  width: 1rem;
  height: 1rem;
}

.home-developer__feat-title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-fg);
  margin-bottom: 0.25rem;
}

.home-developer__feat-desc {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  line-height: 1.5;
}

.home-developer__github-mobile {
  display: block;
}

@media (min-width: 640px) {
  .home-developer__github-mobile {
    display: none;
  }
}

/* Code window */
.home-developer__right {
  display: flex;
}

.home-developer__code-window {
  width: 100%;
  border-radius: 0.75rem;
  border: 1px solid var(--color-border);
  /* Light mode: bg-card (matches React's `bg-card dark:bg-[#0d0d12]`) */
  background: var(--color-card);
  overflow: hidden;
  box-shadow: var(--shadow-xl);
}

/* Dark mode: always-dark code window */
.dark .home-developer__code-window,
html[data-theme="dark"] .home-developer__code-window {
  background: hsl(240 6% 5%);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not(.light) .home-developer__code-window {
    background: hsl(240 6% 5%);
  }
}

.home-developer__code-chrome {
  height: 2.75rem;
  /* Light mode: bg-muted/60 (matches React `bg-muted/60 dark:bg-white/5`) */
  border-bottom: 1px solid var(--color-border);
  display: flex;
  align-items: center;
  padding-inline: 1rem;
  gap: 0.75rem;
  background: hsl(var(--muted) / 0.6);
}

.dark .home-developer__code-chrome,
html[data-theme="dark"] .home-developer__code-chrome {
  background: rgba(255, 255, 255, 0.05);
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not(.light) .home-developer__code-chrome {
    background: rgba(255, 255, 255, 0.05);
    border-bottom-color: rgba(255, 255, 255, 0.1);
  }
}

.home-developer__code-dots {
  display: flex;
  gap: 0.375rem;
}

.home-developer__code-dot {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: var(--radius-full);
}

.home-developer__code-dot--red    { background: #ff5f57; }
.home-developer__code-dot--yellow { background: #febc2e; }
.home-developer__code-dot--green  { background: #28c840; }

.home-developer__code-filename {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  color: var(--color-muted-fg);  /* light mode: muted-fg; inherits dark via token */
}

.dark .home-developer__code-filename,
html[data-theme="dark"] .home-developer__code-filename {
  color: hsl(240 5% 55%);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not(.light) .home-developer__code-filename {
    color: hsl(240 5% 55%);
  }
}

.home-developer__code-body {
  overflow-x: auto;
}

.home-developer__pre {
  margin: 0;
  padding: 1.5rem;
  font-size: 0.8125rem;
  line-height: 1.7;
  overflow-x: auto;
}

.home-developer__code {
  font-family: var(--font-mono);
  color: hsl(220 14% 71%);   /* base text — One Dark palette */
  display: block;
  white-space: pre;
}

.home-developer__code-footer {
  padding: 0.75rem 1.5rem;
  /* Light mode: bg-muted/60 (mirrors chrome) */
  border-top: 1px solid var(--color-border);
  background: hsl(var(--muted) / 0.6);
  display: none;
  justify-content: flex-end;
}

.dark .home-developer__code-footer,
html[data-theme="dark"] .home-developer__code-footer {
  background: rgba(255, 255, 255, 0.05);
  border-top-color: rgba(255, 255, 255, 0.1);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not(.light) .home-developer__code-footer {
    background: rgba(255, 255, 255, 0.05);
    border-top-color: rgba(255, 255, 255, 0.1);
  }
}

@media (min-width: 640px) {
  .home-developer__code-footer {
    display: flex;
  }
}

.home-developer__github-desktop {
  font-size: 0.8125rem;
}

/* ─────────────────────────────────────────────────────────────────────────────
   30. Company Vision
   ───────────────────────────────────────────────────────────────────────────── */

.home-vision__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3rem;
  align-items: center;
}

@media (min-width: 1024px) {
  .home-vision__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem;
  }
}

/* Left column */
.home-vision__left {
  display: flex;
  flex-direction: column;
}

.home-vision__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 1.5rem;
}

.home-vision__title {
  font-size: clamp(1.75rem, 3.5vw, 2.25rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: var(--color-fg);
  margin-bottom: 1.5rem;
}

.home-vision__text {
  font-size: 1.125rem;
  color: var(--color-muted-fg);
  line-height: 1.7;
  margin-bottom: 2.5rem;
}

.home-vision__points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.home-vision__point {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}

.home-vision__point-icon {
  width: 1.5rem;
  height: 1.5rem;
  border-radius: var(--radius-full);
  background: hsl(var(--primary) / 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 0.125rem;
  color: var(--color-primary);
}

.home-vision__point-icon svg {
  width: 0.875rem;
  height: 0.875rem;
}

.home-vision__point > span {
  font-weight: 500;
  line-height: 1.6;
  color: var(--color-fg);
}

/* Right column: timeline */
.home-vision__right {
  position: relative;
  padding-left: 1.5rem;
}

@media (min-width: 768px) {
  .home-vision__right {
    padding-left: 2.5rem;
  }
}

.home-vision__timeline-line {
  position: absolute;
  left: 19px;
  top: 0.75rem;
  bottom: 0.75rem;
  width: 1px;
  background: linear-gradient(to bottom, hsl(var(--primary) / 0.4), var(--color-border), transparent);
}

@media (min-width: 768px) {
  .home-vision__timeline-line {
    left: 27px;
  }
}

.home-vision__timeline {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.home-vision__timeline-item {
  position: relative;
  padding-left: 2rem;
}

.home-vision__dot {
  position: absolute;
  left: 0;
  top: 0.5rem;
  width: 0.875rem;
  height: 0.875rem;
  border-radius: var(--radius-full);
  border: 2px solid var(--color-bg);
  z-index: 1;
  transition: background-color var(--duration-normal);
}

.home-vision__dot--active {
  background: var(--color-primary);
  box-shadow: 0 0 0 4px hsl(var(--primary) / 0.2);
}

.home-vision__dot--planned {
  background: var(--color-border);
}

.home-vision__item-content {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.home-vision__item-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.5rem;
}

.home-vision__year-badge {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  border-radius: var(--radius-sm);
  font-size: 0.75rem;
  font-family: var(--font-mono);
  background: var(--color-primary);
  color: hsl(var(--primary-foreground));
  font-weight: 600;
}

.home-vision__year-badge--secondary {
  background: var(--color-secondary);
  color: var(--color-muted-fg);
}

.home-vision__item-title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-fg);
}

.home-vision__item-title--muted {
  color: var(--color-muted-fg);
}

.home-vision__item-desc {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  line-height: 1.6;
}

/* ─────────────────────────────────────────────────────────────────────────────
   31. Testimonials
   ───────────────────────────────────────────────────────────────────────────── */

.home-testimonials__subtitle {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  font-style: italic;
  opacity: 0.7;
}

.home-testimonials__carousel {
  position: relative;
}

.home-testimonials__track {
  position: relative;
}

/* Testimonial card */
.home-testimonials__card {
  background: var(--color-card);
  border: 1px solid hsl(var(--border) / 0.6);
  border-radius: 1rem;
  /* px-8 py-10 — 2rem horizontal / 2.5rem vertical (mobile) */
  padding: 2.5rem 2rem;
  position: relative;
  overflow: hidden;
}

@media (min-width: 768px) {
  /* md:px-14 md:py-14 — 3.5rem both */
  .home-testimonials__card {
    padding: 3.5rem;
  }
}

/* Colour accent top bar */
.home-testimonials__accent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;                /* h-0.5 = 2px — matches React */
}

.home-testimonials__card--primary  .home-testimonials__accent { background: var(--color-primary); }
.home-testimonials__card--emerald  .home-testimonials__accent { background: #10b981; }
.home-testimonials__card--violet   .home-testimonials__accent { background: #8b5cf6; }
.home-testimonials__card--amber    .home-testimonials__accent { background: #f59e0b; }

/* Large decorative quote icon — rotate-180 (closing-quote orientation, matches React) */
.home-testimonials__quote-icon {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  opacity: 0.04;
  color: var(--color-fg);
}

@media (min-width: 768px) {
  .home-testimonials__quote-icon {
    top: 2rem;
    right: 2rem;
  }
}

.home-testimonials__quote-icon svg {
  /* w-16 h-16 mobile / md:w-20 md:h-20 desktop */
  width: 4rem;
  height: 4rem;
  transform: rotate(180deg);  /* rotate-180 — matches React <Quote className="rotate-180" /> */
}

@media (min-width: 768px) {
  .home-testimonials__quote-icon svg {
    width: 5rem;
    height: 5rem;
  }
}

/* Blockquote */
.home-testimonials__blockquote {
  margin: 0 0 2rem;
  padding: 0;
  border: none;
}

.home-testimonials__blockquote p {
  font-size: 1.125rem;
  line-height: 1.7;
  color: var(--color-fg);
  font-style: normal;
  font-weight: 500;           /* font-medium — matches React */
}

@media (min-width: 768px) {
  .home-testimonials__blockquote p {
    font-size: 1.25rem;       /* md:text-xl */
  }
}

/* Attribution */
.home-testimonials__attribution {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.home-testimonials__avatar {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
  font-weight: 700;
  color: #fff;
  flex-shrink: 0;
}

.home-testimonials__avatar--primary { background: var(--color-primary); }
.home-testimonials__avatar--emerald { background: #10b981; }
.home-testimonials__avatar--violet  { background: #8b5cf6; }
.home-testimonials__avatar--amber   { background: #f59e0b; }

.home-testimonials__meta {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}

.home-testimonials__name {
  font-style: normal;
  font-weight: 600;
  font-size: 0.9375rem;
  color: var(--color-fg);
}

.home-testimonials__role {
  font-size: 0.75rem;          /* text-xs — matches React */
  color: var(--color-muted-fg);
}

/* Company rendered as a separate element below role (matches React layout) */
.home-testimonials__company {
  font-size: 0.75rem;          /* text-xs */
  color: var(--color-muted-fg);
  font-weight: 500;            /* font-medium mt-0.5 */
  margin-top: 0.125rem;
}

/* Controls */
.home-testimonials__controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.5rem;
  padding-inline: 0.5rem;
}

.home-testimonials__dots {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.home-testimonials__dot {
  height: 0.5rem;
  border-radius: var(--radius-full);
  background: var(--color-border);
  border: none;
  cursor: pointer;
  transition: width var(--duration-normal), background-color var(--duration-normal);
  width: 0.5rem;
  padding: 0;
}

.home-testimonials__dot:hover {
  background: var(--color-muted-fg);
}

.home-testimonials__dot.is-active,
.home-testimonials__dot[aria-selected="true"] {
  background: var(--color-primary);
  width: 2rem;
}

.home-testimonials__dot:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* ─────────────────────────────────────────────────────────────────────────────
   32. FAQ
   ───────────────────────────────────────────────────────────────────────────── */

.home-faq__header {
  text-align: center;
}

.home-faq__eyebrow {
  margin-bottom: 1rem;
}

.home-faq__accordion {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;                /* space-y-2 — individually-carded items with 8px gap */
}

/* Each item is a bordered, rounded card — matches React AccordionItem */
.home-faq__item {
  border: 1px solid hsl(var(--border) / 0.6);
  border-radius: 0.75rem;     /* rounded-xl */
  padding-inline: 0.5rem;     /* px-2 */
  transition: border-color var(--duration-normal), background-color var(--duration-normal);
}

.home-faq__item.is-open {
  border-color: hsl(var(--primary) / 0.3);        /* data-[state=open]:border-primary/30 */
  background: hsl(var(--primary) / 0.02);          /* data-[state=open]:bg-primary/[0.02] */
}

.home-faq__question-wrap {
  margin: 0;
  font-size: inherit;
}

.home-faq__question-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  /* py-6 px-4 = 1.5rem vertical / 1rem horizontal (matches React AccordionTrigger) */
  padding: 1.5rem 1rem;
  background: transparent;
  border: none;
  cursor: pointer;
  text-align: left;
  font-size: 1rem;            /* text-base */
  font-weight: 500;           /* font-medium */
  color: var(--color-fg);
  border-radius: 0.75rem;     /* rounded-xl */
  transition: color var(--duration-fast);
}

@media (min-width: 768px) {
  .home-faq__question-btn {
    font-size: 1.125rem;      /* md:text-lg */
  }
}

.home-faq__question-btn:hover {
  color: var(--color-primary);
}

.home-faq__question-btn:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
  border-radius: var(--radius-sm);
}

.home-faq__chevron {
  flex-shrink: 0;
  color: var(--color-muted-fg);
  transition: transform var(--duration-normal);
}

.home-faq__chevron svg {
  width: 1.25rem;
  height: 1.25rem;
}

.home-faq__item.is-open .home-faq__chevron {
  transform: rotate(180deg);
  color: var(--color-primary);
}

.home-faq__answer-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--duration-slow) var(--ease-in-out);
}

.home-faq__answer-panel:not([hidden]) {
  /* When visible, max-height is set inline by JS */
}

.home-faq__answer {
  /* pb-8 px-4 pr-12 — matches React AccordionContent */
  padding-top: 0;
  padding-bottom: 2rem;       /* pb-8 */
  padding-left: 1rem;         /* px-4 */
  padding-right: 3rem;        /* pr-12 — prevents text running under chevron */
}

.home-faq__answer p {
  font-size: 0.9375rem;
  color: var(--color-muted-fg);
  line-height: 1.7;
}

/* ─────────────────────────────────────────────────────────────────────────────
   33. Final CTA
   ───────────────────────────────────────────────────────────────────────────── */

.home-final-cta {
  padding-block: 6rem;
}

/* Background layers */
.home-final-cta__bg-tint {
  position: absolute;
  inset: 0;
  background: hsl(var(--primary) / 0.05);
  pointer-events: none;
}

.home-final-cta__bg-radial {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 43.75rem;
  height: 43.75rem;
  background: hsl(var(--primary) / 0.1);
  border-radius: var(--radius-full);
  filter: blur(120px);
  pointer-events: none;
}

.home-final-cta__bg-violet {
  position: absolute;
  top: 0;
  right: 0;
  width: 25rem;
  height: 25rem;
  background: hsl(265 85% 65% / 0.05);
  border-radius: var(--radius-full);
  filter: blur(100px);
  pointer-events: none;
}

.home-final-cta__outer {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 48rem;
  margin-inline: auto;
}

/* Glass card */
.home-final-cta__card {
  width: 100%;
  border-radius: 1.5rem;
  border: 1px solid hsl(var(--border) / 0.6);
  background: hsl(var(--card) / 0.4);
  backdrop-filter: blur(4px);
  box-shadow: 0 4px 32px rgba(0,0,0,0.06);
  /* px-8 py-14 mobile = 2rem/3.5rem (matches React) */
  padding: 3.5rem 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 768px) {
  /* md:px-16 md:py-20 = 4rem/5rem */
  .home-final-cta__card {
    padding: 5rem 4rem;
  }
}

.home-final-cta__headline {
  /* Heading size="4xl" → text-5xl md:text-6xl lg:text-7xl = 3rem/3.75rem/4.5rem */
  font-size: clamp(3rem, 6vw, 4.5rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: var(--color-fg);
  margin-bottom: 2rem;
}

.home-final-cta__subline {
  font-size: 1.25rem;
  color: var(--color-muted-fg);
  line-height: 1.6;
  max-width: 32rem;
  margin-bottom: 3rem;
}

/* CTA row */
.home-final-cta__cta-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 100%;
  margin-bottom: 2.5rem;
}

@media (min-width: 640px) {
  .home-final-cta__cta-row {
    flex-direction: row;
    width: auto;
  }
}

.home-final-cta__btn-primary {
  box-shadow: 0 4px 24px hsl(var(--primary) / 0.3);
}

.home-final-cta__btn-secondary {
  background: hsl(var(--background) / 0.6);
  backdrop-filter: blur(4px);
}

/* Trust signals */
.home-final-cta__trust-signals {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.home-final-cta__signal {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  font-weight: 500;
}

.home-final-cta__signal-icon {
  width: 1rem;
  height: 1rem;
  color: var(--color-primary);
}

.home-final-cta__fine-print {
  font-size: 0.875rem;
  color: var(--color-muted-fg);
  opacity: 0.6;
  font-weight: 500;
  letter-spacing: 0.025em;
}

/* ─────────────────────────────────────────────────────────────────────────────
   34. Homepage button extras
   ───────────────────────────────────────────────────────────────────────────── */

/* Icon inside buttons */
.btn__icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  transition: transform var(--duration-fast);
}

.btn--primary:hover .btn__icon,
.btn--outline:hover .btn__icon {
  transform: translateX(0.15rem);
}

/* Ghost + icon button used in carousel controls */
.btn--ghost {
  background: transparent;
  border: none;
  color: var(--color-fg);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-full);
  padding: 0.5rem;
  transition: background-color var(--duration-fast);
}

.btn--ghost:hover {
  background: var(--color-muted);
}

.btn--ghost svg {
  width: 1.25rem;
  height: 1.25rem;
}

.btn--icon {
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
}

.btn--sm {
  padding: 0.375rem 0.875rem;
  font-size: 0.8125rem;
}

/* ─────────────────────────────────────────────────────────────────────────────
   35. Scroll animation hooks (used with data-animate attributes)
   ───────────────────────────────────────────────────────────────────────────── */

@media (prefers-reduced-motion: no-preference) {
  [data-animate-item] {
    opacity: 0;
    transform: translateY(12px);
    transition:
      opacity var(--duration-slow) var(--ease-out-expo),
      transform var(--duration-slow) var(--ease-out-expo);
  }

  [data-animate-item].is-visible {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-animate-item] {
    opacity: 1;
    transform: none;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   36. Hero floating badge entrance animations (mirrors React Framer Motion)
   delay: 0.5s / 0.65s, duration: 0.4s — opacity:0,x:±16 → opacity:1,x:0
   ───────────────────────────────────────────────────────────────────────────── */

@media (prefers-reduced-motion: no-preference) {
  .home-hero__badge-status {
    animation: hero-badge-enter-right 0.4s ease-out 0.5s both;
  }

  .home-hero__badge-agents {
    animation: hero-badge-enter-left 0.4s ease-out 0.65s both;
  }
}

@keyframes hero-badge-enter-right {
  from { opacity: 0; transform: translateX(1rem); }
  to   { opacity: 1; transform: translateX(0); }
}

@keyframes hero-badge-enter-left {
  from { opacity: 0; transform: translateX(-1rem); }
  to   { opacity: 1; transform: translateX(0); }
}

/* ─────────────────────────────────────────────────────────────────────────────
   37. Testimonials slide transition (mirrors React AnimatePresence y:12→0)
   Applied via JS .is-entering class on the newly-shown card.
   ───────────────────────────────────────────────────────────────────────────── */

@media (prefers-reduced-motion: no-preference) {
  .home-testimonials__card.is-entering {
    animation: testimonial-slide-in 0.35s ease-out both;
  }
}

@keyframes testimonial-slide-in {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ─────────────────────────────────────────────────────────────────────────────
   38. Shared Inner-Page styles + section-header component
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Eyebrow badge (all inner pages) ── */
.eyebrow-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.75rem;
  background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--color-brand-primary) 30%, transparent);
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-brand-primary);
}
.eyebrow-badge--mono { font-family: var(--font-mono, monospace); letter-spacing: 0; text-transform: none; }

/* ── Section header (centred eyebrow + headline + copy) ── */
.section-header { text-align: center; margin-bottom: 3rem; }
.section-header--left { text-align: left; }
.section-header__eyebrow { margin-bottom: 1rem; }
.section-header__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.section-header__copy { max-width: 64ch; margin: 0 auto; color: var(--color-text-secondary, rgba(255,255,255,0.7)); font-size: 1.0625rem; line-height: 1.65; }
.section-header--left .section-header__copy { margin: 0; }

/* ── Shared hero bg ── */
.industries-hero__bg, .resources-hero__bg, .company-hero__bg, .contact-hero__bg,
.trust-hero__bg, .developers-hero__bg, .legal-hero__bg, .blog-hero__bg {
  position: absolute; inset: 0; pointer-events: none; overflow: hidden; z-index: 0;
}
.industries-hero, .resources-hero, .company-hero, .contact-hero,
.trust-hero, .developers-hero, .legal-hero {
  position: relative; overflow: hidden;
  padding: 6rem 0 4rem;
}
.blog-hero { position: relative; overflow: hidden; padding: 4rem 0 2.5rem; }
.industries-hero__bg-grid, .resources-hero__bg-grid, .company-hero__bg-grid,
.contact-hero__bg-grid, .trust-hero__bg-grid, .developers-hero__bg-grid,
.legal-hero__bg-grid, .blog-hero__bg-grid {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px), linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px);
  background-size: 48px 48px;
}
.industries-hero__bg-glow, .resources-hero__bg-glow, .company-hero__bg-glow,
.contact-hero__bg-glow, .trust-hero__bg-glow, .developers-hero__bg-glow {
  position: absolute; top: -30%; left: 50%; transform: translateX(-50%);
  width: 700px; height: 500px; border-radius: 50%;
  background: radial-gradient(ellipse, color-mix(in srgb, var(--color-brand-primary) 20%, transparent) 0%, transparent 70%);
  filter: blur(60px);
}

/* ── Inner hero shared layout ── */
.industries-hero__inner, .resources-hero__inner, .company-hero__inner,
.contact-hero__inner, .trust-hero__inner, .developers-hero__inner,
.legal-hero__inner, .blog-hero__inner {
  position: relative; z-index: 1; max-width: 860px; margin: 0 auto; text-align: center;
}
.industries-hero__eyebrow, .resources-hero__eyebrow, .company-hero__eyebrow,
.contact-hero__eyebrow, .trust-hero__eyebrow, .developers-hero__eyebrow,
.legal-hero__eyebrow, .blog-hero__eyebrow { margin-bottom: 1.25rem; }
.industries-hero__headline, .resources-hero__headline, .company-hero__headline,
.contact-hero__headline, .trust-hero__headline, .developers-hero__headline,
.legal-hero__headline, .blog-hero__headline {
  font-size: clamp(2rem, 5vw, 3.25rem); font-weight: 800; letter-spacing: -0.03em;
  line-height: 1.1; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff);
}
.industries-hero__subline, .resources-hero__subline, .company-hero__subline,
.contact-hero__subline, .trust-hero__subline, .developers-hero__subline {
  font-size: 1.125rem; line-height: 1.65; max-width: 60ch; margin: 0 auto 2rem;
  color: var(--color-text-secondary, rgba(255,255,255,0.75));
}
.industries-hero__actions, .resources-hero__actions, .company-hero__actions,
.contact-hero__actions, .trust-hero__actions, .developers-hero__actions {
  display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: center; margin-bottom: 2rem;
}

/* ── Page section shared padding ── */
.industries-overview, .industries-grid, .industries-spotlight, .industries-key-caps,
.industries-metrics, .industries-journey,
.trust-philosophy, .trust-platform-security, .trust-privacy, .trust-compliance,
.trust-infrastructure, .trust-responsible-ai, .trust-incident, .trust-metrics,
.developers-why-build, .developers-platform, .developers-sdks, .developers-architecture,
.developers-code-examples, .developers-workflow, .developers-tools, .developers-docs-preview,
.resources-categories, .resources-featured, .resources-docs-hub, .resources-learning-paths,
.resources-case-studies, .resources-download-center, .resources-community, .resources-newsletter,
.company-who-we-are, .company-our-story, .company-mission-vision, .company-core-values,
.company-innovation, .company-leadership, .company-global-impact, .company-future-roadmap,
.contact-choose-path, .contact-methods, .contact-office, .contact-enterprise, .contact-support,
.legal-documents, .blog-filter, .blog-featured, .blog-grid, .blog-newsletter {
  padding: 5rem 0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   39. Products page
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Products Hero ── */
.products-hero { position: relative; overflow: hidden; padding: 6rem 0 4rem; }
.products-hero__bg { position: absolute; inset: 0; pointer-events: none; z-index: 0; overflow: hidden; }
.products-hero__bg-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.03) 1px,transparent 1px); background-size: 48px 48px; }
.products-hero__bg-glow { position: absolute; top: -20%; left: 50%; transform: translateX(-50%); width: 800px; height: 600px; border-radius: 50%; background: radial-gradient(ellipse, color-mix(in srgb, var(--color-brand-primary) 18%, transparent) 0%, transparent 70%); filter: blur(60px); }
.products-hero__inner { position: relative; z-index: 1; max-width: 860px; margin: 0 auto; text-align: center; }
.products-hero__eyebrow { margin-bottom: 1.25rem; }
.products-hero__headline { font-size: clamp(2.25rem, 5.5vw, 3.5rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff); }
.products-hero__subline { font-size: 1.125rem; line-height: 1.65; max-width: 60ch; margin: 0 auto 2rem; color: var(--color-text-secondary, rgba(255,255,255,0.75)); }
.products-hero__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: center; margin-bottom: 2rem; }
.products-hero__pills { display: flex; flex-wrap: wrap; gap: 0.5rem; justify-content: center; margin-bottom: 1.5rem; }
.products-hero__pill { padding: 0.3125rem 0.875rem; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.12); border-radius: 9999px; font-size: 0.8125rem; color: rgba(255,255,255,0.8); }
.products-hero__trust-bar { display: flex; flex-wrap: wrap; gap: 1.5rem; justify-content: center; }
.products-hero__trust-item { display: flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.6); }

/* ── Products Key Capabilities grid ── */
.products-key-caps { padding: 5rem 0; }
.products-key-caps__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.products-key-caps__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; transition: border-color 0.2s, background 0.2s; }
.products-key-caps__card:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); background: rgba(255,255,255,0.06); }
.products-key-caps__icon { width: 2.5rem; height: 2.5rem; margin-bottom: 1rem; color: var(--color-brand-primary); display: flex; align-items: center; justify-content: center; }
.products-key-caps__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.products-key-caps__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* ── Products Roadmap ── */
.products-roadmap { padding: 5rem 0; }
.products-roadmap__phases { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.products-roadmap__phase { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.products-roadmap__phase--current { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); }
.products-roadmap__phase-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.products-roadmap__period { font-size: 0.8125rem; font-weight: 600; color: var(--color-brand-primary); }
.products-roadmap__badge { font-size: 0.6875rem; font-weight: 600; padding: 0.125rem 0.5rem; background: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-radius: 9999px; color: var(--color-brand-primary); }
.products-roadmap__phase-title { font-size: 1rem; font-weight: 600; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.products-roadmap__items { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.5rem; }
.products-roadmap__item { display: flex; align-items: flex-start; gap: 0.5rem; font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }

/* ─────────────────────────────────────────────────────────────────────────────
   40. Solutions page
   ───────────────────────────────────────────────────────────────────────────── */

.solutions-hero { position: relative; overflow: hidden; padding: 6rem 0 4rem; }
.solutions-hero__inner { position: relative; z-index: 1; max-width: 860px; margin: 0 auto; text-align: center; }
.solutions-hero__headline { font-size: clamp(2.25rem, 5.5vw, 3.5rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff); }
.solutions-hero__subline { font-size: 1.125rem; line-height: 1.65; max-width: 60ch; margin: 0 auto 2rem; color: var(--color-text-secondary, rgba(255,255,255,0.75)); }
.solutions-hero__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: center; }

.solutions-challenges__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.solutions-challenges__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.solutions-challenges__icon { width: 2.5rem; height: 2.5rem; margin-bottom: 0.75rem; color: var(--color-brand-primary); }
.solutions-challenges__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.solutions-challenges__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 0.75rem; }
.solutions-challenges__badge { display: inline-block; font-size: 0.75rem; font-weight: 600; padding: 0.1875rem 0.625rem; background: rgba(239,68,68,0.15); border: 1px solid rgba(239,68,68,0.3); border-radius: 9999px; color: rgb(252,165,165); }

/* ── Solutions outcomes grid ── */
.solutions-outcomes__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.solutions-outcomes__card { text-align: center; padding: 2rem 1.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; }
.solutions-outcomes__value { display: block; font-size: 2.5rem; font-weight: 800; letter-spacing: -0.03em; color: var(--color-brand-primary); margin-bottom: 0.25rem; }
.solutions-outcomes__label { display: block; font-size: 0.9375rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.solutions-outcomes__sub { display: block; font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }

/* ─────────────────────────────────────────────────────────────────────────────
   41. Industries page
   ───────────────────────────────────────────────────────────────────────────── */

.industries-overview__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .industries-overview__grid { grid-template-columns: 1fr; gap: 2rem; } }
.industries-overview__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.industries-overview__copy { color: var(--color-text-secondary, rgba(255,255,255,0.75)); line-height: 1.7; margin-bottom: 1rem; }
.industries-overview__stat { margin-bottom: 1rem; }
.industries-overview__stat-value { display: block; font-size: 2rem; font-weight: 800; color: var(--color-brand-primary); }
.industries-overview__stat-label { font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.industries-overview__stats { display: flex; flex-direction: column; gap: 1.5rem; }

.industries-grid__list { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem; }
.industries-grid__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; transition: border-color 0.2s; }
.industries-grid__card:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); }
.industries-grid__icon { width: 2.5rem; height: 2.5rem; margin-bottom: 1rem; color: var(--color-brand-primary); }
.industries-grid__name { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.625rem; color: var(--color-text-primary, #fff); }
.industries-grid__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1rem; }
.industries-grid__use-cases { list-style: none; padding: 0; margin: 0 0 1.25rem; display: flex; flex-direction: column; gap: 0.375rem; }
.industries-grid__use-case { display: flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.7); }
.industries-grid__link { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; margin-top: auto; }
.industries-grid__link:hover { gap: 0.625rem; }

.industries-metrics__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.industries-metrics__card { text-align: center; padding: 2rem 1.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; }
.industries-metrics__value { display: block; font-size: 2.25rem; font-weight: 800; letter-spacing: -0.03em; color: var(--color-brand-primary); margin-bottom: 0.25rem; }
.industries-metrics__label { display: block; font-size: 0.9375rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.industries-metrics__sub { display: block; font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }

.industries-journey__timeline { list-style: none; padding: 0; margin: 3rem 0 0; display: flex; flex-direction: column; gap: 0; }
.industries-journey__step { display: grid; grid-template-columns: 3rem 1fr; gap: 1.5rem; padding-bottom: 2rem; position: relative; }
.industries-journey__step:not(:last-child)::before { content: ''; position: absolute; left: 1.375rem; top: 2.5rem; bottom: 0; width: 2px; background: rgba(255,255,255,0.1); }
.industries-journey__step-num { width: 2.75rem; height: 2.75rem; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent); border: 2px solid color-mix(in srgb, var(--color-brand-primary) 40%, transparent); font-size: 0.75rem; font-weight: 700; color: var(--color-brand-primary); flex-shrink: 0; position: relative; z-index: 1; }
.industries-journey__step-header { display: flex; align-items: center; gap: 1rem; margin-bottom: 0.5rem; }
.industries-journey__step-title { font-size: 1.0625rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.industries-journey__step-duration { font-size: 0.8125rem; font-weight: 600; padding: 0.1875rem 0.625rem; background: rgba(255,255,255,0.07); border-radius: 9999px; color: rgba(255,255,255,0.7); white-space: nowrap; }
.industries-journey__step-desc { font-size: 0.9375rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* ─────────────────────────────────────────────────────────────────────────────
   42. Trust Center
   ───────────────────────────────────────────────────────────────────────────── */

.trust-hero__badges { display: flex; flex-wrap: wrap; gap: 0.625rem; justify-content: center; margin-top: 1.5rem; }
.trust-hero__badge { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.12); border-radius: 9999px; color: rgba(255,255,255,0.8); }

.trust-philosophy__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .trust-philosophy__grid { grid-template-columns: 1fr; gap: 2rem; } }
.trust-philosophy__eyebrow { margin-bottom: 1rem; }
.trust-philosophy__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.trust-philosophy__desc { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1rem; }
.trust-philosophy__stat { margin-top: 1.5rem; }
.trust-philosophy__stat-value { display: block; font-size: 1.75rem; font-weight: 800; color: var(--color-brand-primary); }
.trust-philosophy__stat-label { font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.trust-philosophy__principles { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1.5rem; }
.trust-philosophy__principle { display: flex; align-items: flex-start; gap: 1rem; }
.trust-philosophy__principle-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.trust-philosophy__principle-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.trust-philosophy__principle-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.trust-platform-security__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.trust-platform-security__pillar { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.trust-platform-security__icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); margin-bottom: 1rem; }
.trust-platform-security__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.trust-platform-security__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 0.75rem; }
.trust-platform-security__status { font-size: 0.75rem; font-weight: 600; padding: 0.1875rem 0.625rem; background: rgba(34,197,94,0.15); border-radius: 9999px; color: rgb(134,239,172); }

.trust-compliance__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.trust-compliance__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.trust-compliance__card-icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.trust-compliance__card-name { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.trust-compliance__card-badge { display: inline-block; font-size: 0.75rem; font-weight: 600; padding: 0.1875rem 0.625rem; border-radius: 9999px; margin-bottom: 0.75rem; }
.trust-compliance__card-badge--compliant { background: rgba(34,197,94,0.15); color: rgb(134,239,172); }
.trust-compliance__card-badge--in-progress { background: rgba(234,179,8,0.15); color: rgb(253,224,71); }
.trust-compliance__card-badge--aligned,
.trust-compliance__card-badge--ready,
.trust-compliance__card-badge--available { background: rgba(99,102,241,0.15); color: rgb(165,180,252); }
.trust-compliance__card-note { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.trust-compliance__request { text-align: center; margin-top: 3rem; padding: 2rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; display: flex; align-items: center; justify-content: center; gap: 2rem; flex-wrap: wrap; }
.trust-compliance__request p { color: var(--color-text-secondary, rgba(255,255,255,0.7)); }

.trust-metrics__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.trust-metrics__card { text-align: center; padding: 2rem 1.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; }
.trust-metrics__value { display: block; font-size: 2rem; font-weight: 800; color: var(--color-brand-primary); margin-bottom: 0.25rem; }
.trust-metrics__label { display: block; font-size: 0.9375rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.trust-metrics__sub { display: block; font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }

.trust-responsible-ai__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.trust-responsible-ai__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.trust-responsible-ai__icon { width: 2.25rem; height: 2.25rem; color: var(--color-brand-primary); margin-bottom: 0.875rem; }
.trust-responsible-ai__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.trust-responsible-ai__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.trust-incident__phases { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem; }
.trust-incident__phase { display: flex; align-items: flex-start; gap: 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.trust-incident__phase-num { font-size: 2rem; font-weight: 800; color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); flex-shrink: 0; line-height: 1; }
.trust-incident__phase-title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.trust-incident__phase-desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.trust-infrastructure__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .trust-infrastructure__grid { grid-template-columns: 1fr; gap: 2rem; } }
.trust-infrastructure__eyebrow { margin-bottom: 1rem; }
.trust-infrastructure__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.trust-infrastructure__desc { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1.5rem; }
.trust-infrastructure__metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.trust-infrastructure__metric-value { display: block; font-size: 1.5rem; font-weight: 800; color: var(--color-brand-primary); }
.trust-infrastructure__metric-label { display: block; font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.trust-infrastructure__features { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1.5rem; }
.trust-infrastructure__feature { display: flex; align-items: flex-start; gap: 1rem; }
.trust-infrastructure__feature-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.trust-infrastructure__feature-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.trust-infrastructure__feature-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.trust-privacy__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .trust-privacy__grid { grid-template-columns: 1fr; gap: 2rem; } }
.trust-privacy__eyebrow { margin-bottom: 1rem; }
.trust-privacy__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.trust-privacy__desc { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1rem; }
.trust-privacy__principles { list-style: none; padding: 0; margin: 1.5rem 0 0; display: flex; flex-direction: column; gap: 1.25rem; }
.trust-privacy__principle { display: flex; align-items: flex-start; gap: 1rem; }
.trust-privacy__principle-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.trust-privacy__principle-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.trust-privacy__principle-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.trust-privacy__flow-title { font-size: 1rem; font-weight: 600; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.trust-privacy__flow-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.75rem; }
.trust-privacy__flow-item { display: flex; align-items: flex-start; gap: 1rem; }
.trust-privacy__flow-num { font-size: 0.75rem; font-weight: 700; width: 1.5rem; height: 1.5rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 35%, transparent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--color-brand-primary); }

/* ─────────────────────────────────────────────────────────────────────────────
   43. Developers page
   ───────────────────────────────────────────────────────────────────────────── */

.developers-hero__terminal { position: absolute; right: -5%; top: 50%; transform: translateY(-50%); width: 440px; background: rgba(0,0,0,0.7); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.75rem; overflow: hidden; backdrop-filter: blur(8px); }
@media (max-width: 1024px) { .developers-hero__terminal { display: none; } }
.developers-hero__terminal-bar { display: flex; align-items: center; gap: 0.375rem; padding: 0.625rem 0.875rem; background: rgba(255,255,255,0.05); border-bottom: 1px solid rgba(255,255,255,0.08); }
.developers-hero__terminal-dot { width: 0.625rem; height: 0.625rem; border-radius: 50%; }
.developers-hero__terminal-dot--red { background: #ff5f57; }
.developers-hero__terminal-dot--yellow { background: #ffbd2e; }
.developers-hero__terminal-dot--green { background: #28c840; }
.developers-hero__terminal-title { margin-left: auto; margin-right: auto; font-size: 0.75rem; color: rgba(255,255,255,0.5); font-family: var(--font-mono, monospace); }
.developers-hero__terminal-body { padding: 1.25rem; font-family: var(--font-mono, monospace); font-size: 0.8125rem; line-height: 1.7; color: rgba(255,255,255,0.85); white-space: pre-wrap; }
.syn-comment { color: rgba(255,255,255,0.35); }
.syn-keyword { color: #c792ea; }
.syn-name { color: #82aaff; }
.syn-string { color: #c3e88d; }

.developers-why-build__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.developers-why-build__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; transition: border-color 0.2s, background 0.2s; }
.developers-why-build__card:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); background: rgba(255,255,255,0.06); }
.developers-why-build__icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); margin-bottom: 1rem; }
.developers-why-build__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.developers-why-build__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.developers-platform__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .developers-platform__grid { grid-template-columns: 1fr; gap: 2rem; } }
.developers-platform__eyebrow { margin-bottom: 1rem; }
.developers-platform__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.developers-platform__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1.5rem; }
.developers-platform__features { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1.25rem; }
.developers-platform__feature { display: flex; align-items: flex-start; gap: 1rem; }
.developers-platform__feature-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.developers-platform__feature-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.developers-platform__feature-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.developers-sdks__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.developers-sdks__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.developers-sdks__card-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.developers-sdks__card-icon { color: var(--color-brand-primary); width: 1.75rem; height: 1.75rem; }
.developers-sdks__card-lang { font-size: 1rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.125rem; }
.developers-sdks__card-version { font-size: 0.75rem; color: var(--color-text-secondary, rgba(255,255,255,0.55)); font-family: var(--font-mono, monospace); }
.developers-sdks__card-status { margin-left: auto; font-size: 0.7rem; font-weight: 600; padding: 0.1875rem 0.5rem; background: rgba(99,102,241,0.2); border-radius: 9999px; color: rgb(165,180,252); white-space: nowrap; }
.developers-sdks__card-desc { font-size: 0.9rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 1rem; }
.developers-sdks__card-install { display: flex; align-items: center; gap: 0.5rem; background: rgba(0,0,0,0.4); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.5rem; padding: 0.625rem 0.875rem; }
.developers-sdks__card-command { font-family: var(--font-mono, monospace); font-size: 0.8125rem; color: rgba(255,255,255,0.9); flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.developers-sdks__card-copy { padding: 0.25rem; opacity: 0.6; transition: opacity 0.15s; }
.developers-sdks__card-copy:hover { opacity: 1; }

.developers-architecture__diagram { margin-top: 3rem; display: flex; flex-direction: column; gap: 0; border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; overflow: hidden; }
.developers-architecture__layer { padding: 1.5rem 2rem; border-bottom: 1px solid rgba(255,255,255,0.08); }
.developers-architecture__layer:last-child { border-bottom: none; }
.developers-architecture__layer--app { background: rgba(99,102,241,0.08); }
.developers-architecture__layer--api { background: rgba(var(--color-brand-primary-rgb, 99,102,241),0.12); }
.developers-architecture__layer--services { background: rgba(255,255,255,0.03); }
.developers-architecture__layer--infra { background: rgba(0,0,0,0.2); }
.developers-architecture__layer-label { display: block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(255,255,255,0.5); margin-bottom: 0.75rem; }
.developers-architecture__layer-items { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.developers-architecture__box { padding: 0.5rem 1rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.375rem; font-size: 0.875rem; color: rgba(255,255,255,0.85); white-space: nowrap; }
.developers-architecture__box--primary { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); color: var(--color-brand-primary); background: color-mix(in srgb, var(--color-brand-primary) 8%, transparent); }
.developers-architecture__connector { padding: 0.625rem 2rem; background: rgba(0,0,0,0.15); border-bottom: 1px solid rgba(255,255,255,0.05); }
.developers-architecture__connector span { font-size: 0.75rem; color: rgba(255,255,255,0.4); font-family: var(--font-mono, monospace); }

/* Dev Code Examples */
.developers-code-examples__window { border: 1px solid rgba(255,255,255,0.1); border-radius: 0.875rem; overflow: hidden; background: rgba(0,0,0,0.5); margin-top: 3rem; backdrop-filter: blur(8px); }
.dev-code__tabs { display: flex; align-items: center; gap: 0.125rem; padding: 0 1rem; background: rgba(255,255,255,0.04); border-bottom: 1px solid rgba(255,255,255,0.08); overflow-x: auto; }
.dev-code__tab { padding: 0.75rem 1rem; font-size: 0.8125rem; font-weight: 500; color: rgba(255,255,255,0.55); border: none; background: none; cursor: pointer; white-space: nowrap; border-bottom: 2px solid transparent; transition: color 0.15s, border-color 0.15s; }
.dev-code__tab:hover { color: rgba(255,255,255,0.85); }
.dev-code__tab.is-active { color: var(--color-brand-primary); border-bottom-color: var(--color-brand-primary); }
.dev-code__spacer { flex: 1; }
.dev-code__lang-badge { font-size: 0.7rem; font-weight: 600; padding: 0.125rem 0.5rem; background: rgba(255,255,255,0.08); border-radius: 9999px; color: rgba(255,255,255,0.5); white-space: nowrap; }
.dev-code__panel { }
.dev-code__panel-header { display: flex; align-items: center; justify-content: space-between; padding: 0.625rem 1.25rem; background: rgba(255,255,255,0.02); border-bottom: 1px solid rgba(255,255,255,0.06); }
.dev-code__filename { font-family: var(--font-mono, monospace); font-size: 0.75rem; color: rgba(255,255,255,0.45); }
.dev-code__copy { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.75rem; color: rgba(255,255,255,0.5); transition: color 0.15s; }
.dev-code__copy:hover { color: rgba(255,255,255,0.9); }
.dev-code__pre { margin: 0; padding: 1.5rem; overflow-x: auto; font-family: var(--font-mono, monospace); font-size: 0.8125rem; line-height: 1.7; color: rgba(255,255,255,0.9); }

/* Mobile: prevent code window from causing horizontal page overflow */
@media (max-width: 767px) {
  .developers-code-examples { overflow-x: hidden; }
  .developers-code-examples__window { max-width: 100%; box-sizing: border-box; }
  .dev-code__pre { font-size: 0.75rem; padding: 1rem; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .dev-code__panel-header { padding: 0.5rem 1rem; }
}

/* Dev Workflow steps */
.developers-workflow__steps { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1.5rem; }
.developers-workflow__step { display: flex; align-items: flex-start; gap: 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.developers-workflow__step-num { font-size: 2rem; font-weight: 800; color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); flex-shrink: 0; line-height: 1; }
.developers-workflow__step-icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.developers-workflow__step-title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.developers-workflow__step-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 0.75rem; }
.developers-workflow__step-code { display: block; font-family: var(--font-mono, monospace); font-size: 0.75rem; background: rgba(0,0,0,0.4); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.375rem; padding: 0.5rem 0.75rem; color: rgb(195,232,141); white-space: pre-wrap; }

.developers-tools__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.developers-tools__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.developers-tools__card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.75rem; }
.developers-tools__icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); }
.developers-tools__badge { font-size: 0.7rem; font-weight: 600; padding: 0.1875rem 0.5rem; background: rgba(99,102,241,0.15); border-radius: 9999px; color: rgb(165,180,252); }
.developers-tools__name { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.developers-tools__desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 0.75rem; }
.developers-tools__detail { font-family: var(--font-mono, monospace); font-size: 0.75rem; color: rgba(255,255,255,0.45); }

.developers-docs-preview__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .developers-docs-preview__grid { grid-template-columns: 1fr; gap: 2rem; } }
.developers-docs-preview__eyebrow { margin-bottom: 1rem; }
.developers-docs-preview__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.developers-docs-preview__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1.5rem; }
.developers-docs-preview__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.developers-docs-preview__sections { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1rem; }
.developers-docs-preview__section { }
.developers-docs-preview__section-link { display: flex; align-items: flex-start; gap: 1rem; padding: 1rem 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; text-decoration: none; transition: border-color 0.15s, background 0.15s; }
.developers-docs-preview__section-link:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); background: rgba(255,255,255,0.06); }
.developers-docs-preview__section-icon { width: 1.75rem; height: 1.75rem; color: var(--color-brand-primary); flex-shrink: 0; }
.developers-docs-preview__section-body { flex: 1; }
.developers-docs-preview__section-title { font-size: 0.9375rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.developers-docs-preview__section-desc { font-size: 0.8125rem; line-height: 1.55; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.developers-docs-preview__section-label { font-size: 0.7rem; font-weight: 600; padding: 0.125rem 0.5rem; background: rgba(255,255,255,0.07); border-radius: 9999px; color: rgba(255,255,255,0.55); white-space: nowrap; align-self: flex-start; }

/* ── Developers page — React content-parity additions ─────────────────────── */

/* Hero trust badges */
.developers-hero__trust { list-style: none; padding: 2.5rem 0 0; margin: 2.5rem 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem 3rem; border-top: 1px solid rgba(255,255,255,0.1); }
.developers-hero__trust-item { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; color: rgba(255,255,255,0.55); }

/* Why-build wide card (first, spans 2) */
.developers-why-build__grid { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
@media (min-width: 1024px) { .developers-why-build__grid { grid-template-columns: repeat(4, 1fr); } .developers-why-build__card--wide { grid-column: span 2; } }
.developers-why-build__card--wide { background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); border-color: color-mix(in srgb, var(--color-brand-primary) 18%, transparent); }

/* Platform layers list */
.developers-platform__layers { list-style: none; padding: 0.75rem; margin: 0; display: flex; flex-direction: column; gap: 0.5rem; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; }
.developers-platform__layer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.25rem; border-radius: 0.75rem; background: rgba(255,255,255,0.04); border: 1px solid transparent; transition: border-color 0.2s, background 0.2s; }
.developers-platform__layer:hover { border-color: rgba(255,255,255,0.12); background: rgba(255,255,255,0.06); }
.developers-platform__layer-main { display: flex; align-items: center; gap: 1rem; min-width: 0; }
.developers-platform__layer-icon { flex-shrink: 0; width: 2.5rem; height: 2.5rem; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.5rem; color: rgba(255,255,255,0.7); }
.developers-platform__layer-icon svg { width: 1.125rem; height: 1.125rem; }
.developers-platform__layer-text { display: flex; flex-direction: column; min-width: 0; }
.developers-platform__layer-name { font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.developers-platform__layer-desc { font-size: 0.75rem; line-height: 1.4; color: var(--color-text-secondary, rgba(255,255,255,0.55)); margin-top: 0.125rem; }
@media (max-width: 640px) { .developers-platform__layer-desc { display: none; } }
.developers-platform__layer-tags { display: flex; flex-wrap: wrap; gap: 0.375rem; flex-shrink: 0; }
.developers-platform__layer-tag { font-family: var(--font-mono, monospace); font-size: 0.625rem; padding: 0.125rem 0.4375rem; background: rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.375rem; color: rgba(255,255,255,0.55); }
@media (max-width: 767px) { .developers-platform__layer-tags { display: none; } }

/* SDKs — letter badges + tags + feature cards */
.developers-sdks__grid { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
@media (min-width: 1024px) { .developers-sdks__grid { grid-template-columns: repeat(3, 1fr); } }
.developers-sdks__card-badge { width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; border-radius: 0.75rem; font-weight: 700; font-size: 1rem; border: 1px solid rgba(255,255,255,0.12); }
.developers-sdks__card-badge.sdk--yellow { background: rgba(234,179,8,0.2); color: rgb(250,204,21); }
.developers-sdks__card-badge.sdk--blue { background: rgba(59,130,246,0.2); color: rgb(96,165,250); }
.developers-sdks__card-badge.sdk--green { background: rgba(34,197,94,0.2); color: rgb(74,222,128); }
.developers-sdks__card-badge.sdk--cyan { background: rgba(6,182,212,0.2); color: rgb(34,211,238); }
.developers-sdks__card-badge.sdk--orange { background: rgba(249,115,22,0.2); color: rgb(251,146,60); }
.developers-sdks__card-badge.sdk--indigo { background: rgba(99,102,241,0.2); color: rgb(165,180,252); }
.developers-sdks__card-icon { width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); border-radius: 0.75rem; color: rgba(255,255,255,0.85); }
.developers-sdks__card-icon svg { width: 1.375rem; height: 1.375rem; }
.developers-sdks__card-tags { font-family: var(--font-mono, monospace); font-size: 0.75rem; color: var(--color-text-secondary, rgba(255,255,255,0.55)); margin: 0; }
.developers-sdks__features { list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 1.5rem; }
.developers-sdks__feature { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.developers-sdks__feature-icon { flex-shrink: 0; width: 3.5rem; height: 3.5rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-radius: 0.75rem; color: var(--color-brand-primary); }
.developers-sdks__feature-body { flex: 1; min-width: 180px; }
.developers-sdks__feature-title { font-size: 1.0625rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.375rem; }
.developers-sdks__feature-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* Architecture — sticky intro + vertical timeline of nodes */
.developers-architecture__grid { display: grid; grid-template-columns: 1fr 2fr; gap: 3rem; margin-top: 3rem; align-items: start; }
@media (max-width: 900px) { .developers-architecture__grid { grid-template-columns: 1fr; gap: 2rem; } }
.developers-architecture__intro { position: sticky; top: 8rem; }
@media (max-width: 900px) { .developers-architecture__intro { position: static; } }
.developers-architecture__eyebrow { margin-bottom: 1rem; }
.developers-architecture__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.developers-architecture__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }
.developers-architecture__timeline { list-style: none; padding: 0; margin: 0; position: relative; display: flex; flex-direction: column; gap: 1.5rem; }
.developers-architecture__timeline::before { content: ""; position: absolute; top: 0; bottom: 0; left: 1rem; width: 2px; background: rgba(255,255,255,0.1); }
@media (min-width: 768px) { .developers-architecture__timeline::before { left: 50%; transform: translateX(-1px); } }
.developers-architecture__node { position: relative; padding-left: 3rem; }
@media (min-width: 768px) { .developers-architecture__node { padding-left: 0; width: 50%; }
	.developers-architecture__node--left { padding-right: 2.5rem; }
	.developers-architecture__node--right { margin-left: 50%; padding-left: 2.5rem; } }
.developers-architecture__node-dot { position: absolute; top: 1.5rem; left: 1rem; transform: translate(-50%, -50%); width: 0.75rem; height: 0.75rem; border-radius: 50%; border: 2px solid var(--color-bg, #0b0b0f); z-index: 2; }
@media (min-width: 768px) { .developers-architecture__node-dot { left: auto; }
	.developers-architecture__node--left .developers-architecture__node-dot { right: -0.375rem; left: auto; }
	.developers-architecture__node--right .developers-architecture__node-dot { left: -0.375rem; } }
.developers-architecture__node-card { display: flex; align-items: center; gap: 1rem; padding: 1.25rem 1.5rem; background: rgba(255,255,255,0.04); border: 2px solid rgba(255,255,255,0.1); border-radius: 1rem; transition: border-color 0.2s, transform 0.2s; }
.developers-architecture__node-card:hover { transform: scale(1.02); }
.developers-architecture__node-icon { flex-shrink: 0; width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; border-radius: 0.75rem; }
.developers-architecture__node-icon svg { width: 1.375rem; height: 1.375rem; }
.developers-architecture__node-name { font-size: 1.0625rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.125rem; }
.developers-architecture__node-subtitle { font-size: 0.8125rem; line-height: 1.5; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.developers-architecture__node-dot--blue,   .developers-architecture__node-icon--blue   { background: rgba(59,130,246,0.18); color: rgb(96,165,250); }
.developers-architecture__node-dot--purple, .developers-architecture__node-icon--purple { background: rgba(168,85,247,0.18); color: rgb(192,132,252); }
.developers-architecture__node-dot--primary,.developers-architecture__node-icon--primary{ background: color-mix(in srgb, var(--color-brand-primary) 18%, transparent); color: var(--color-brand-primary); }
.developers-architecture__node-dot--amber,  .developers-architecture__node-icon--amber  { background: rgba(245,158,11,0.18); color: rgb(251,191,36); }
.developers-architecture__node-dot--green,  .developers-architecture__node-icon--green  { background: rgba(34,197,94,0.18); color: rgb(74,222,128); }
.developers-architecture__node-dot--orange, .developers-architecture__node-icon--orange { background: rgba(249,115,22,0.18); color: rgb(251,146,60); }
.developers-architecture__node-dot--red,    .developers-architecture__node-icon--red    { background: rgba(239,68,68,0.18); color: rgb(248,113,113); }
.developers-architecture__node-card--blue:hover   { border-color: rgb(59,130,246); }
.developers-architecture__node-card--purple:hover { border-color: rgb(168,85,247); }
.developers-architecture__node-card--primary:hover{ border-color: var(--color-brand-primary); }
.developers-architecture__node-card--amber:hover  { border-color: rgb(245,158,11); }
.developers-architecture__node-card--green:hover  { border-color: rgb(34,197,94); }
.developers-architecture__node-card--orange:hover { border-color: rgb(249,115,22); }
.developers-architecture__node-card--red:hover    { border-color: rgb(239,68,68); }

/* Workflow — 7 steps horizontal on desktop */
@media (min-width: 1024px) { .developers-workflow__steps { grid-template-columns: repeat(7, 1fr); gap: 1rem; } }
.developers-workflow__step { flex-direction: column; align-items: flex-start; }
.developers-workflow__step-num { font-family: var(--font-mono, monospace); font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); margin-bottom: 0.75rem; }

/* Tools — header layout + Explore link */
.developers-tools__header-left { display: flex; align-items: center; gap: 0.75rem; }
.developers-tools__link { display: inline-flex; align-items: center; gap: 0.375rem; margin-top: 1rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; }
.developers-tools__link:hover { color: color-mix(in srgb, var(--color-brand-primary) 80%, #fff); }
.developers-tools__link .btn__icon { display: inline-flex; width: 1rem; height: 1rem; }

/* Docs preview — centred header + card grid + search panel */
.developers-docs-preview__header { text-align: center; max-width: 42rem; margin: 0 auto 3rem; display: flex; flex-direction: column; align-items: center; }
.developers-docs-preview__grid { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-bottom: 3rem; list-style: none; padding: 0; }
@media (min-width: 1024px) { .developers-docs-preview__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px) { .developers-docs-preview__grid { grid-template-columns: 1fr; } }
.developers-docs-preview__card { display: flex; }
.developers-docs-preview__card-link { display: flex; flex-direction: column; width: 100%; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.5rem; text-decoration: none; transition: transform 0.2s, border-color 0.2s; }
.developers-docs-preview__card-link:hover { transform: scale(1.02); border-color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); }
.developers-docs-preview__section-icon { width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; border-radius: 50%; margin-bottom: 1.25rem; color: var(--color-brand-primary); }
.developers-docs-preview__section-icon svg { width: 1.375rem; height: 1.375rem; }
.developers-docs-preview__section-icon--green   { background: rgba(34,197,94,0.12); color: rgb(74,222,128); }
.developers-docs-preview__section-icon--blue    { background: rgba(59,130,246,0.12); color: rgb(96,165,250); }
.developers-docs-preview__section-icon--purple  { background: rgba(168,85,247,0.12); color: rgb(192,132,252); }
.developers-docs-preview__section-icon--amber   { background: rgba(245,158,11,0.12); color: rgb(251,191,36); }
.developers-docs-preview__section-icon--primary { background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); }
.developers-docs-preview__section-icon--orange  { background: rgba(249,115,22,0.12); color: rgb(251,146,60); }
.developers-docs-preview__section-icon--gray    { background: rgba(148,163,184,0.12); color: rgb(148,163,184); }
.developers-docs-preview__card-foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,0.08); }
.developers-docs-preview__count { font-size: 0.75rem; font-weight: 500; color: rgba(255,255,255,0.5); }
.developers-docs-preview__card-arrow { display: inline-flex; color: rgba(255,255,255,0.5); }
.developers-docs-preview__card-link:hover .developers-docs-preview__card-arrow { color: var(--color-brand-primary); }
.developers-docs-preview__search { max-width: 48rem; margin: 0 auto; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.5rem; }
.developers-docs-preview__search-bar { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1.5rem; color: rgba(255,255,255,0.5); }
.developers-docs-preview__search-title { font-family: var(--font-mono, monospace); font-size: 0.75rem; color: rgba(255,255,255,0.5); }
.developers-docs-preview__search-input { position: relative; display: flex; align-items: center; margin-bottom: 1.5rem; }
.developers-docs-preview__search-icon { position: absolute; left: 1rem; display: inline-flex; color: rgba(255,255,255,0.5); pointer-events: none; }
.developers-docs-preview__search-input input { width: 100%; padding: 1rem 3rem; background: rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.75rem; color: var(--color-text-primary, #fff); font-family: var(--font-mono, monospace); font-size: 0.875rem; }
.developers-docs-preview__search-kbd { position: absolute; right: 1rem; font-family: var(--font-mono, monospace); font-size: 0.75rem; color: rgba(255,255,255,0.5); background: rgba(255,255,255,0.08); padding: 0.25rem 0.5rem; border-radius: 0.375rem; }
.developers-docs-preview__search-label { font-family: var(--font-mono, monospace); font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.06em; color: rgba(255,255,255,0.5); margin-bottom: 0.75rem; }
.developers-docs-preview__search-chips { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.developers-docs-preview__search-chip { padding: 0.375rem 0.75rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.5rem; font-size: 0.75rem; font-weight: 500; color: var(--color-text-primary, #fff); }

/* ─────────────────────────────────────────────────────────────────────────────
   44. Resources page
   ───────────────────────────────────────────────────────────────────────────── */

.resources-hero__stats { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; margin-top: 1.5rem; }
.resources-hero__stat { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.7); }

.resources-categories__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.resources-categories__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; overflow: hidden; transition: border-color 0.2s; }
.resources-categories__card:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); }
.resources-categories__card-link { display: flex; align-items: center; gap: 1rem; padding: 1.5rem; text-decoration: none; }
.resources-categories__icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); flex-shrink: 0; }
.resources-categories__card-body { flex: 1; }
.resources-categories__name { font-size: 1rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.resources-categories__desc { font-size: 0.8125rem; line-height: 1.55; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.resources-categories__count { font-size: 0.75rem; font-weight: 600; padding: 0.1875rem 0.625rem; background: rgba(255,255,255,0.08); border-radius: 9999px; color: rgba(255,255,255,0.7); white-space: nowrap; align-self: flex-start; }

.resources-featured__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.resources-featured__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; }
.resources-featured__card-type { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; }
.resources-featured__card-icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); }
.resources-featured__type-label { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); }
.resources-featured__title { font-size: 1.0625rem; font-weight: 600; line-height: 1.4; margin-bottom: 0.75rem; flex: 1; }
.resources-featured__title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.resources-featured__title a:hover { color: var(--color-brand-primary); }
.resources-featured__desc { font-size: 0.9rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 1.25rem; flex: 1; }
.resources-featured__card-footer { display: flex; align-items: center; justify-content: space-between; margin-top: auto; }
.resources-featured__read-time { display: flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.5); }
.resources-featured__read-link { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; }

.resources-docs-hub__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .resources-docs-hub__grid { grid-template-columns: 1fr; gap: 2rem; } }
.resources-docs-hub__eyebrow { margin-bottom: 1rem; }
.resources-docs-hub__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.resources-docs-hub__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1.5rem; }
.resources-docs-hub__sections { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.75rem; }
.resources-docs-hub__section-link { display: flex; align-items: center; gap: 1rem; padding: 1rem 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; text-decoration: none; transition: border-color 0.15s; }
.resources-docs-hub__section-link:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); }
.resources-docs-hub__section-icon { width: 1.75rem; height: 1.75rem; color: var(--color-brand-primary); flex-shrink: 0; }
.resources-docs-hub__section-body { flex: 1; }
.resources-docs-hub__section-title { font-size: 0.9375rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.125rem; }
.resources-docs-hub__section-desc { font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.resources-docs-hub__section-label { font-size: 0.7rem; font-weight: 600; padding: 0.125rem 0.5rem; background: rgba(255,255,255,0.07); border-radius: 9999px; color: rgba(255,255,255,0.55); white-space: nowrap; }

.resources-learning-paths__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.resources-learning-paths__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; }
.resources-learning-paths__card-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; }
.resources-learning-paths__icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); }
.resources-learning-paths__audience { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); }
.resources-learning-paths__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.resources-learning-paths__desc { font-size: 0.9rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1rem; }
.resources-learning-paths__meta { display: flex; gap: 1rem; margin-bottom: 1.25rem; }
.resources-learning-paths__duration,
.resources-learning-paths__modules { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.6); }
.resources-learning-paths__cta { margin-top: auto; }

.resources-case-studies__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.resources-case-studies__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; }
.resources-case-studies__card-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; }
.resources-case-studies__icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); }
.resources-case-studies__industry { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); }
.resources-case-studies__title { font-size: 1rem; font-weight: 600; line-height: 1.4; margin-bottom: 0.625rem; color: var(--color-text-primary, #fff); }
.resources-case-studies__desc { font-size: 0.9rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1rem; }
.resources-case-studies__results { list-style: none; padding: 0; margin: 0 0 1.25rem; display: flex; flex-direction: column; gap: 0.375rem; }
.resources-case-studies__result { display: flex; align-items: flex-start; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.75); }
.resources-case-studies__read-link { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; margin-top: auto; }

.resources-download-center__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.resources-download-center__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; }
.resources-download-center__card-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.resources-download-center__icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); }
.resources-download-center__type { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: rgba(255,255,255,0.5); }
.resources-download-center__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.resources-download-center__desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1rem; }
.resources-download-center__card-footer { display: flex; align-items: center; justify-content: space-between; margin-top: auto; }
.resources-download-center__meta { font-size: 0.75rem; color: rgba(255,255,255,0.4); }

.resources-community__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.resources-community__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; }
.resources-community__card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.75rem; }
.resources-community__icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); }
.resources-community__stat { font-size: 0.7rem; font-weight: 600; padding: 0.125rem 0.5rem; background: rgba(255,255,255,0.07); border-radius: 9999px; color: rgba(255,255,255,0.6); }
.resources-community__name { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.resources-community__desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1.25rem; }

.resources-newsletter__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 3rem; }
@media (max-width: 768px) { .resources-newsletter__inner { grid-template-columns: 1fr; gap: 2rem; padding: 2rem; } }
.resources-newsletter__eyebrow { margin-bottom: 0.75rem; }
.resources-newsletter__headline { font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 700; margin-bottom: 0.875rem; color: var(--color-text-primary, #fff); }
.resources-newsletter__copy { font-size: 0.9375rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1rem; }
.resources-newsletter__types { list-style: none; padding: 0; margin: 0 0 1rem; display: flex; flex-direction: column; gap: 0.375rem; }
.resources-newsletter__type { display: flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; color: rgba(255,255,255,0.75); }
.resources-newsletter__frequency { display: flex; align-items: center; gap: 0.375rem; font-size: 0.8125rem; color: rgba(255,255,255,0.5); }
.resources-newsletter__label { display: block; font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.5rem; }
.resources-newsletter__input-row { display: flex; gap: 0.75rem; margin-bottom: 0.75rem; }
@media (max-width: 480px) { .resources-newsletter__input-row { flex-direction: column; } }
.resources-newsletter__input { flex: 1; padding: 0.75rem 1rem; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.15); border-radius: 0.5rem; color: #fff; font-size: 0.9375rem; transition: border-color 0.15s; }
.resources-newsletter__input::placeholder { color: rgba(255,255,255,0.35); }
.resources-newsletter__input:focus { outline: none; border-color: var(--color-brand-primary); }
.resources-newsletter__legal { font-size: 0.75rem; color: rgba(255,255,255,0.4); }
.resources-newsletter__legal a { color: rgba(255,255,255,0.6); }

/* ─────────────────────────────────────────────────────────────────────────────
   45. Company page
   ───────────────────────────────────────────────────────────────────────────── */

.company-who-we-are__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .company-who-we-are__grid { grid-template-columns: 1fr; gap: 2rem; } }
.company-who-we-are__eyebrow { margin-bottom: 1rem; }
.company-who-we-are__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.company-who-we-are__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1rem; }
.company-who-we-are__stats { display: flex; gap: 2rem; margin-top: 1.5rem; flex-wrap: wrap; }
.company-who-we-are__stat-value { display: block; font-size: 1.75rem; font-weight: 800; color: var(--color-brand-primary); }
.company-who-we-are__stat-label { font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.company-who-we-are__attributes { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1.25rem; }
.company-who-we-are__attribute { display: flex; align-items: flex-start; gap: 1rem; }
.company-who-we-are__attr-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.company-who-we-are__attr-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.company-who-we-are__attr-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.company-our-story__timeline { list-style: none; padding: 0; margin: 3rem 0 0; display: flex; flex-direction: column; gap: 0; }
.company-our-story__milestone { display: grid; grid-template-columns: 5rem 1fr; gap: 1.5rem; padding-bottom: 2rem; position: relative; }
.company-our-story__milestone:not(:last-child)::before { content: ''; position: absolute; left: 2.375rem; top: 2rem; bottom: 0; width: 2px; background: rgba(255,255,255,0.08); }
.company-our-story__year { font-size: 1.25rem; font-weight: 800; color: var(--color-brand-primary); position: relative; z-index: 1; }
.company-our-story__milestone-title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.company-our-story__milestone-desc { font-size: 0.9375rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.company-mission-vision__eyebrow { margin-bottom: 2rem; }
.company-mission-vision__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-bottom: 2rem; }
@media (max-width: 640px) { .company-mission-vision__grid { grid-template-columns: 1fr; } }
.company-mission-vision__block { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 2rem; }
.company-mission-vision__block-icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); margin-bottom: 1rem; }
.company-mission-vision__label { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.company-mission-vision__text { font-size: 1.125rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.8)); font-style: italic; }
.company-mission-vision__north-stars { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 2rem; }
.company-mission-vision__north-stars-title { font-size: 0.875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: rgba(255,255,255,0.5); margin-bottom: 1rem; }
.company-mission-vision__north-stars-list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 0.75rem; }
.company-mission-vision__north-star { display: flex; align-items: flex-start; gap: 0.75rem; font-size: 0.9375rem; color: var(--color-text-secondary, rgba(255,255,255,0.8)); }

.company-core-values__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.company-core-values__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.company-core-values__icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); margin-bottom: 1rem; }
.company-core-values__title { font-size: 1rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.company-core-values__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.company-innovation__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .company-innovation__grid { grid-template-columns: 1fr; gap: 2rem; } }
.company-innovation__eyebrow { margin-bottom: 1rem; }
.company-innovation__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.company-innovation__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }
.company-innovation__pillars { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1.5rem; }
.company-innovation__pillar { display: flex; align-items: flex-start; gap: 1rem; }
.company-innovation__pillar-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.company-innovation__pillar-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.company-innovation__pillar-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.company-leadership__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.company-leadership__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.company-leadership__avatar { width: 3.5rem; height: 3.5rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent); border: 2px solid color-mix(in srgb, var(--color-brand-primary) 30%, transparent); display: flex; align-items: center; justify-content: center; color: var(--color-brand-primary); margin-bottom: 1rem; overflow: hidden; }
.company-leadership__photo { width: 100%; height: 100%; object-fit: cover; }
.company-leadership__name { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.company-leadership__title { font-size: 0.8125rem; font-weight: 600; color: var(--color-brand-primary); margin-bottom: 0.625rem; }
.company-leadership__bio { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.company-global-impact__stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin-top: 2rem; margin-bottom: 3rem; }
@media (max-width: 640px) { .company-global-impact__stats { grid-template-columns: repeat(2, 1fr); } }
.company-global-impact__stat { text-align: center; }
.company-global-impact__stat-value { display: block; font-size: 2rem; font-weight: 800; color: var(--color-brand-primary); margin-bottom: 0.25rem; }
.company-global-impact__stat-label { font-size: 0.8125rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.company-global-impact__regions { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; }
.company-global-impact__region { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.company-global-impact__region-icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.company-global-impact__region-name { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.company-global-impact__region-cities { font-size: 0.8125rem; color: var(--color-brand-primary); margin-bottom: 0.75rem; font-weight: 600; }
.company-global-impact__region-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.company-future-roadmap__phases { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.company-future-roadmap__phase { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.company-future-roadmap__phase--current { border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); }
.company-future-roadmap__phase-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.company-future-roadmap__period { font-size: 0.8125rem; font-weight: 700; color: var(--color-brand-primary); }
.company-future-roadmap__badge { font-size: 0.6875rem; font-weight: 600; padding: 0.125rem 0.5rem; background: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-radius: 9999px; color: var(--color-brand-primary); }
.company-future-roadmap__phase-title { font-size: 1rem; font-weight: 600; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.company-future-roadmap__items { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.5rem; }
.company-future-roadmap__item { display: flex; align-items: flex-start; gap: 0.5rem; font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }

/* ── Company page — React parity additions ─────────────────────────────────── */

/* Hero floating badges + trust strip */
.company-hero__badges { display: none; }
@media (min-width: 1024px) {
	.company-hero__badges { display: block; position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; }
	.company-hero__badge { position: absolute; display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.5rem 0.75rem; font-size: 0.8125rem; font-weight: 500; color: var(--color-text-primary, #fff); background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.75rem; backdrop-filter: blur(6px); }
	.company-hero__badge:nth-child(1) { top: 20%; left: 8%; }
	.company-hero__badge:nth-child(2) { top: 24%; right: 10%; }
	.company-hero__badge:nth-child(3) { bottom: 26%; left: 12%; }
	.company-hero__badge:nth-child(4) { bottom: 22%; right: 12%; }
	.company-hero__badge-icon { display: inline-flex; color: var(--color-brand-primary); }
}
.company-hero__trust { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1.5rem 2.5rem; margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid rgba(255,255,255,0.1); }
.company-hero__trust-item { position: relative; display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.8125rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }
.company-hero__trust-item::before { content: ''; width: 0.375rem; height: 0.375rem; border-radius: 9999px; background: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); }

/* Who We Are — pull quote panel */
.company-who-we-are__quote-panel { position: relative; background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-radius: 1.5rem; padding: 3rem 2rem 2rem; }
.company-who-we-are__quote-mark { position: absolute; top: 0.5rem; left: 1.25rem; font-size: 5rem; line-height: 1; color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); font-family: Georgia, serif; user-select: none; }
.company-who-we-are__quote { font-size: 1.375rem; line-height: 1.5; font-style: italic; font-weight: 400; color: var(--color-text-primary, #fff); margin: 0 0 1rem; border: none; padding: 0; }
.company-who-we-are__quote-attr { font-size: 0.875rem; font-weight: 500; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }

/* Our Story — milestone head */
.company-our-story__milestone { grid-template-columns: 1fr; gap: 0; }
.company-our-story__milestone:not(:last-child)::before { display: none; }
.company-our-story__milestone-head { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
.company-our-story__milestone-icon { display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; border-radius: 0.5rem; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); flex-shrink: 0; }
.company-our-story__phase { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; padding: 0.125rem 0.625rem; border-radius: 9999px; border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent); background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); color: var(--color-brand-primary); }
.company-our-story__milestone-content { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
@media (min-width: 768px) { .company-our-story__timeline { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; } }

/* Mission & Vision */
.company-mission-vision__header { text-align: center; margin-bottom: 3rem; }
.company-mission-vision__header .eyebrow-badge { margin-bottom: 1rem; display: inline-block; }
.company-mission-vision__title { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; color: var(--color-text-primary, #fff); }
.company-mission-vision__block { position: relative; overflow: hidden; }
.company-mission-vision__block--mission { background: var(--color-brand-primary); }
.company-mission-vision__block--mission .company-mission-vision__label { color: rgba(255,255,255,0.6); }
.company-mission-vision__block--mission .company-mission-vision__block-headline,
.company-mission-vision__block--mission .company-mission-vision__text { color: #fff; font-style: normal; }
.company-mission-vision__block-headline { font-size: 1.5rem; font-weight: 700; line-height: 1.25; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.company-mission-vision__block .company-mission-vision__text { font-size: 1rem; font-style: normal; }
.company-mission-vision__block-icon { position: absolute; bottom: 1.5rem; right: 1.5rem; opacity: 0.12; color: currentColor; pointer-events: none; }
.company-mission-vision__block--mission .company-mission-vision__block-icon { color: #fff; }
.company-mission-vision__block--vision .company-mission-vision__block-icon { color: var(--color-brand-primary); }
.company-mission-vision__bullets { list-style: none; padding: 0; margin: 1.5rem 0 0; display: flex; flex-direction: column; gap: 1rem; position: relative; z-index: 1; }
.company-mission-vision__bullet { display: flex; align-items: flex-start; gap: 0.75rem; font-size: 0.9375rem; font-weight: 500; color: var(--color-text-secondary, rgba(255,255,255,0.8)); }
.company-mission-vision__bullet-icon { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border-radius: 0.375rem; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); flex-shrink: 0; }

/* Core Values — large card + link */
.company-core-values__card--large { grid-column: span 2; background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); border-color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); }
@media (max-width: 640px) { .company-core-values__card--large { grid-column: span 1; } }
.company-core-values__link { display: inline-flex; align-items: center; gap: 0.25rem; margin-top: 1rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; }
.company-core-values__link:hover { text-decoration: underline; }

/* Innovation — engineering principles panel */
.company-innovation__panel { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 2rem; }
.company-innovation__panel-title { font-size: 0.8125rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-text-secondary, rgba(255,255,255,0.55)); margin-bottom: 1.5rem; }
.company-innovation__checklist { list-style: none; padding: 0; margin: 0 0 1.5rem; display: flex; flex-direction: column; gap: 1rem; }
.company-innovation__checklist-item { display: flex; align-items: center; gap: 0.75rem; font-size: 0.9375rem; font-weight: 500; color: var(--color-text-primary, #fff); }
.company-innovation__check-icon { display: inline-flex; color: #22c55e; flex-shrink: 0; }
.company-innovation__callout { background: color-mix(in srgb, var(--color-brand-primary) 5%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.75rem; padding: 1rem; font-size: 0.8125rem; font-style: italic; font-weight: 500; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin: 0; }

/* Leadership — numbered principles + quote */
.company-leadership__principles { list-style: none; padding: 0; margin: 3rem auto 0; max-width: 48rem; display: flex; flex-direction: column; gap: 1rem; }
.company-leadership__principle { display: flex; align-items: flex-start; gap: 1.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 2rem; }
.company-leadership__principle-num { font-size: 2rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; color: color-mix(in srgb, var(--color-brand-primary) 30%, transparent); flex-shrink: 0; width: 3rem; }
.company-leadership__principle-title { font-size: 1.125rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.company-leadership__principle-desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.company-leadership__quote-card { max-width: 48rem; margin: 2rem auto 0; text-align: center; background: rgba(255,255,255,0.04); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-radius: 1rem; padding: 2rem; }
.company-leadership__quote-mark { display: block; font-size: 3.5rem; line-height: 1; font-family: Georgia, serif; color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); margin-bottom: 0.5rem; }
.company-leadership__quote { font-size: 1.375rem; line-height: 1.5; font-style: italic; font-weight: 400; color: var(--color-text-primary, #fff); margin: 0 0 1rem; border: none; padding: 0; }
.company-leadership__quote-attr { font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }

/* Global Impact — metric icons + sublabels + features */
.company-global-impact__stat-icon { display: inline-flex; align-items: center; justify-content: center; color: color-mix(in srgb, var(--color-brand-primary) 60%, transparent); margin-bottom: 0.5rem; }
.company-global-impact__stat-sublabel { display: block; font-size: 0.75rem; color: var(--color-text-secondary, rgba(255,255,255,0.5)); margin-top: 0.25rem; }
.company-global-impact__features { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
@media (max-width: 768px) { .company-global-impact__features { grid-template-columns: 1fr; } }
.company-global-impact__feature { display: flex; align-items: flex-start; gap: 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.company-global-impact__feature-icon { display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: 0.75rem; background: color-mix(in srgb, var(--color-brand-primary) 8%, transparent); color: var(--color-brand-primary); flex-shrink: 0; }
.company-global-impact__feature-title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.company-global-impact__feature-desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* Future Roadmap — tabs + panels + initiatives */
.company-future-roadmap__tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem; margin: 3rem 0 2rem; padding: 0.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; }
.company-future-roadmap__tab { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.625rem 1rem; font-size: 0.875rem; font-weight: 600; color: var(--color-text-secondary, rgba(255,255,255,0.6)); background: transparent; border: none; border-radius: 0.5rem; cursor: pointer; }
.company-future-roadmap__tab.is-active { background: var(--color-brand-primary); color: #fff; }
.company-future-roadmap__tab-icon { display: inline-flex; }
.company-future-roadmap__panel[hidden] { display: none; }
.company-future-roadmap__panel-head { text-align: center; max-width: 42rem; margin: 0 auto 3rem; }
.company-future-roadmap__panel-title { font-size: 1.5rem; font-weight: 700; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.company-future-roadmap__panel-desc { font-size: 1rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }
.company-future-roadmap__initiatives { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
@media (max-width: 768px) { .company-future-roadmap__initiatives { grid-template-columns: 1fr; } }
.company-future-roadmap__initiative { display: flex; align-items: flex-start; gap: 1.25rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.company-future-roadmap__initiative-icon { display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: 0.75rem; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); flex-shrink: 0; }
.company-future-roadmap__initiative-title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.company-future-roadmap__initiative-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.company-future-roadmap__disclaimer { max-width: 36rem; margin: 3rem auto 0; text-align: center; font-size: 0.75rem; font-style: italic; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.5)); }

/* ─────────────────────────────────────────────────────────────────────────────
   46. Contact page
   ───────────────────────────────────────────────────────────────────────────── */

.contact-hero__response-times { list-style: none; padding: 0; margin: 1.5rem auto 0; max-width: 560px; text-align: left; display: flex; flex-direction: column; gap: 0.5rem; }
.contact-hero__response-item { display: flex; align-items: center; gap: 0.5rem; font-size: 0.875rem; color: rgba(255,255,255,0.75); }

.contact-choose-path__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.contact-choose-path__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; gap: 0.75rem; }
.contact-choose-path__icon { width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); }
.contact-choose-path__title { font-size: 1.0625rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.contact-choose-path__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; }
.contact-choose-path__badge { font-size: 0.75rem; font-weight: 600; padding: 0.1875rem 0.625rem; background: rgba(255,255,255,0.07); border-radius: 9999px; color: rgba(255,255,255,0.6); align-self: flex-start; }

.contact-methods__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 900px) { .contact-methods__grid { grid-template-columns: 1fr; gap: 2rem; } }
.contact-methods__eyebrow { margin-bottom: 1rem; }
.contact-methods__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1.5rem; color: var(--color-text-primary, #fff); }
.contact-methods__form { display: flex; flex-direction: column; gap: 1rem; }
.contact-methods__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
@media (max-width: 640px) { .contact-methods__row { grid-template-columns: 1fr; } }
.contact-methods__field { display: flex; flex-direction: column; gap: 0.375rem; }
.contact-methods__field label { font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.contact-methods__field input,
.contact-methods__field select,
.contact-methods__field textarea { background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.15); border-radius: 0.5rem; padding: 0.75rem 1rem; color: #fff; font-size: 0.9375rem; transition: border-color 0.15s; width: 100%; }
.contact-methods__field input::placeholder,
.contact-methods__field textarea::placeholder { color: rgba(255,255,255,0.35); }
.contact-methods__field input:focus,
.contact-methods__field select:focus,
.contact-methods__field textarea:focus { outline: none; border-color: var(--color-brand-primary); }
.contact-methods__field select option { background: #1a1a2e; color: #fff; }
.contact-methods__field--checkbox label { display: flex; align-items: flex-start; gap: 0.75rem; font-size: 0.875rem; color: rgba(255,255,255,0.7); font-weight: 400; cursor: pointer; }
.contact-methods__field--checkbox input { width: auto; flex-shrink: 0; margin-top: 0.125rem; }
.contact-methods__submit { width: 100%; margin-top: 0.5rem; }
.contact-methods__status { padding: 0.75rem 1rem; border-radius: 0.5rem; font-size: 0.875rem; }
.contact-methods__info-col { position: sticky; top: 2rem; }
.contact-methods__response-info { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; margin-bottom: 1.5rem; }
.contact-methods__info-title { font-size: 1rem; font-weight: 600; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.contact-methods__next-steps { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.875rem; counter-reset: step; }
.contact-methods__next-steps li { counter-increment: step; padding-left: 2rem; position: relative; font-size: 0.9rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.75)); }
.contact-methods__next-steps li::before { content: counter(step); position: absolute; left: 0; top: 0; width: 1.375rem; height: 1.375rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 35%, transparent); font-size: 0.6875rem; font-weight: 700; color: var(--color-brand-primary); display: flex; align-items: center; justify-content: center; }
.contact-methods__privacy-note { display: flex; align-items: flex-start; gap: 0.75rem; font-size: 0.8125rem; color: rgba(255,255,255,0.5); }

.contact-office__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.contact-office__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; }
.contact-office__icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.contact-office__city-wrap { margin-bottom: 0.75rem; }
.contact-office__city { font-size: 1.125rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.contact-office__region { display: block; font-size: 0.8125rem; font-weight: 600; color: var(--color-brand-primary); }
.contact-office__address { font-style: normal; font-size: 0.875rem; line-height: 1.6; color: rgba(255,255,255,0.65); margin-bottom: 0.625rem; display: block; }
.contact-office__email { font-size: 0.875rem; color: var(--color-brand-primary); text-decoration: none; }
.contact-office__email:hover { text-decoration: underline; }

.contact-enterprise__grid { display: grid; grid-template-columns: 1fr 1.25fr; gap: 4rem; align-items: start; }
@media (max-width: 768px) { .contact-enterprise__grid { grid-template-columns: 1fr; gap: 2rem; } }
.contact-enterprise__eyebrow { margin-bottom: 1rem; }
.contact-enterprise__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.contact-enterprise__copy { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 1.5rem; }
.contact-enterprise__steps { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0; }
.contact-enterprise__step { display: flex; align-items: flex-start; gap: 1.25rem; padding-bottom: 1.75rem; position: relative; }
.contact-enterprise__step:not(:last-child)::before { content: ''; position: absolute; left: 1.25rem; top: 2.5rem; bottom: 0; width: 2px; background: rgba(255,255,255,0.08); }
.contact-enterprise__step-num { width: 2.5rem; height: 2.5rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent); border: 2px solid color-mix(in srgb, var(--color-brand-primary) 40%, transparent); display: flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: 700; color: var(--color-brand-primary); flex-shrink: 0; position: relative; z-index: 1; }
.contact-enterprise__step-title { font-size: 1rem; font-weight: 600; margin-bottom: 0.375rem; color: var(--color-text-primary, #fff); }
.contact-enterprise__step-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.contact-support__tiers { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; }
.contact-support__tier { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.75rem; display: flex; flex-direction: column; }
.contact-support__tier--plus { border-color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); background: color-mix(in srgb, var(--color-brand-primary) 5%, transparent); }
.contact-support__tier--critical { border-color: rgba(234,179,8,0.4); background: rgba(234,179,8,0.04); }
.contact-support__tier-header { margin-bottom: 1rem; }
.contact-support__tier-name { font-size: 1.125rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.contact-support__tier-sla { font-size: 0.8125rem; font-weight: 700; color: var(--color-brand-primary); }
.contact-support__tier-items { list-style: none; padding: 0; margin: 0 0 1.5rem; display: flex; flex-direction: column; gap: 0.5rem; flex: 1; }
.contact-support__tier-item { display: flex; align-items: flex-start; gap: 0.375rem; font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }
.contact-support__tier-cta { margin-top: auto; }

/* ── Contact page — React parity additions ──────────────────────────────── */

/* Hero */
.contact-hero__ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; margin: 2rem 0 2.5rem; }
@media (max-width: 480px) { .contact-hero__ctas { flex-direction: column; align-items: stretch; } }
.contact-hero__trust { list-style: none; padding: 2rem 0 0; margin: 1rem auto 0; max-width: 720px; border-top: 1px solid rgba(255,255,255,0.12); display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 3rem; }
.contact-hero__trust-item { display: flex; align-items: center; gap: 0.5rem; font-size: 0.8125rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; color: rgba(255,255,255,0.6); }
.contact-hero__trust-dot { width: 0.375rem; height: 0.375rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); flex-shrink: 0; }

/* Choose path */
.contact-choose-path__card-head { display: flex; align-items: center; justify-content: space-between; }
.contact-choose-path__link { display: flex; flex-direction: column; gap: 0.75rem; text-decoration: none; }
.contact-choose-path__arrow { width: 1rem; height: 1rem; color: color-mix(in srgb, var(--color-brand-primary) 60%, transparent); margin-top: auto; }

/* Methods — channels column */
.contact-methods__channels-heading { font-size: 1.25rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.contact-methods__channels-copy { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 1.5rem; }
.contact-methods__channels { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 1rem; }
.contact-methods__channel-link { display: flex; flex-direction: column; gap: 0.75rem; height: 100%; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.875rem; padding: 1.25rem; text-decoration: none; transition: border-color 0.15s; }
.contact-methods__channel-link:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 30%, transparent); }
.contact-methods__channel-head { display: flex; align-items: center; gap: 0.75rem; }
.contact-methods__channel-icon { display: inline-flex; padding: 0.5rem; border-radius: 0.5rem; background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent); color: var(--color-brand-primary); }
.contact-methods__channel-label { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; color: rgba(255,255,255,0.6); }
.contact-methods__channel-value { display: block; font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.25rem; }
.contact-methods__channel-note { display: block; font-size: 0.75rem; color: rgba(255,255,255,0.5); }

/* Methods — form card */
.contact-methods__form-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 2rem; }
.contact-methods__form-title { font-size: 1.25rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.contact-methods__form-subtitle { font-size: 0.875rem; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.contact-methods__form-required { font-size: 0.75rem; color: rgba(255,255,255,0.5); margin: 0.375rem 0 1.5rem; }
.contact-methods__req { color: #f87171; font-weight: 600; }

/* Office / global presence */
.contact-office__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; margin-top: 0; }
@media (max-width: 900px) { .contact-office__grid { grid-template-columns: 1fr; gap: 2.5rem; } }
.contact-office__eyebrow { display: block; font-size: 0.8125rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.contact-office__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff); }
.contact-office__copy { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2rem; }
.contact-office__copy p { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin: 0; }
.contact-office__presence-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1rem; }
.contact-office__presence-card { display: flex; gap: 1rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.875rem; padding: 1.25rem; }
.contact-office__presence-icon { color: var(--color-brand-primary); flex-shrink: 0; }
.contact-office__presence-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.375rem; color: var(--color-text-primary, #fff); }
.contact-office__presence-desc { font-size: 0.8125rem; line-height: 1.5; color: rgba(255,255,255,0.6); }
.contact-office__visual { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 2rem; }
.contact-office__visual-title { font-size: 0.8125rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: rgba(255,255,255,0.6); margin-bottom: 1.5rem; }
.contact-office__regions { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 2rem; }
.contact-office__region-tag { font-size: 0.75rem; font-weight: 500; color: rgba(255,255,255,0.6); padding: 0.375rem 0.75rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.08); border-radius: 9999px; }
.contact-office__locations { display: flex; flex-direction: column; gap: 1rem; }
.contact-office__loc-row { display: flex; gap: 1rem; }
@media (max-width: 480px) { .contact-office__loc-row { flex-direction: column; } }
.contact-office__loc { flex: 1; border-radius: 0.75rem; padding: 1rem; }
.contact-office__loc--hq, .contact-office__loc--regional { background: color-mix(in srgb, var(--color-brand-primary) 5%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent); position: relative; }
.contact-office__loc--small { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.06); display: flex; align-items: center; justify-content: center; }
.contact-office__loc--small span { font-size: 0.75rem; font-weight: 500; color: rgba(255,255,255,0.6); text-align: center; }
.contact-office__loc-head { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 0.375rem; }
.contact-office__loc-pin { color: var(--color-brand-primary); display: inline-flex; }
.contact-office__loc-label { font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.contact-office__loc-dot { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: #22c55e; margin-left: auto; }
.contact-office__loc-sub { font-size: 0.75rem; line-height: 1.5; color: rgba(255,255,255,0.6); }
.contact-office__remote { display: flex; align-items: center; justify-content: center; gap: 0.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; padding: 0.875rem; }
.contact-office__remote span:first-child { color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); display: inline-flex; }
.contact-office__remote span:last-child { font-size: 0.75rem; font-weight: 500; color: rgba(255,255,255,0.6); }

/* Enterprise sales process */
.contact-enterprise__head { max-width: 720px; margin: 0 auto 3.5rem; text-align: center; }
.contact-enterprise__head .contact-enterprise__eyebrow { display: block; font-size: 0.8125rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.contact-enterprise__head .contact-enterprise__copy { margin-bottom: 0; }
.contact-enterprise__steps { list-style: none; padding: 0; margin: 0 0 3rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
@media (max-width: 900px) { .contact-enterprise__steps { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .contact-enterprise__steps { grid-template-columns: 1fr; } }
.contact-enterprise__step { position: relative; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 2rem; display: flex; flex-direction: column; align-items: flex-start; }
.contact-enterprise__step::before { content: none; }
.contact-enterprise__step-num { position: absolute; top: 1rem; right: 1.25rem; width: auto; height: auto; border: 0; background: none; font-size: 2.75rem; font-weight: 700; color: color-mix(in srgb, var(--color-brand-primary) 10%, transparent); line-height: 1; }
.contact-enterprise__step-icon { display: inline-flex; width: 3.25rem; height: 3.25rem; align-items: center; justify-content: center; border-radius: 0.875rem; background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent); color: var(--color-brand-primary); margin-bottom: 1.25rem; }
.contact-enterprise__cta { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 2rem; }
.contact-enterprise__cta-heading { font-size: 1.125rem; font-weight: 700; margin-bottom: 0.375rem; color: var(--color-text-primary, #fff); }
.contact-enterprise__cta-text { font-size: 0.9375rem; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }

/* Support experience */
.contact-support__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: start; }
@media (max-width: 900px) { .contact-support__grid { grid-template-columns: 1fr; gap: 2.5rem; } }
.contact-support__eyebrow { display: block; font-size: 0.8125rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--color-brand-primary); margin-bottom: 0.75rem; }
.contact-support__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff); }
.contact-support__copy { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2.5rem; }
.contact-support__copy p { font-size: 0.9375rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin: 0; }
.contact-support__tiers { display: flex; flex-direction: column; gap: 0; margin: 0; grid-template-columns: none; }
.contact-support__tier { flex-direction: row; align-items: flex-start; gap: 1.25rem; background: none; border: 0; border-bottom: 1px solid rgba(255,255,255,0.1); border-radius: 0; padding: 1.5rem 0; }
.contact-support__tier:last-child { border-bottom: 0; padding-bottom: 0; }
.contact-support__tier-icon { display: inline-flex; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center; border-radius: 0.625rem; background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent); color: var(--color-brand-primary); flex-shrink: 0; }
.contact-support__tier-body { flex: 1; }
.contact-support__tier-head { display: flex; align-items: center; flex-wrap: wrap; gap: 0.75rem; margin-bottom: 0.625rem; }
.contact-support__tier-title { font-size: 1rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.contact-support__tier-badge { font-size: 0.6875rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; padding: 0.1875rem 0.5rem; background: rgba(255,255,255,0.08); border-radius: 9999px; color: rgba(255,255,255,0.65); }
.contact-support__tier-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }
.contact-support__resources { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
@media (max-width: 480px) { .contact-support__resources { grid-template-columns: 1fr; } }
.contact-support__resource { display: block; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.875rem; padding: 1.5rem; text-decoration: none; transition: border-color 0.15s; }
.contact-support__resource:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 30%, transparent); }
.contact-support__resource-head { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 1rem; }
.contact-support__resource-icon { display: inline-flex; padding: 0.5rem; border-radius: 0.5rem; background: rgba(255,255,255,0.06); color: var(--color-brand-primary); }
.contact-support__resource-arrow { color: var(--color-brand-primary); opacity: 0; transition: opacity 0.2s; }
.contact-support__resource:hover .contact-support__resource-arrow { opacity: 1; }
.contact-support__resource-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.contact-support__resource-desc { font-size: 0.8125rem; line-height: 1.5; color: rgba(255,255,255,0.6); }

/* ─────────────────────────────────────────────────────────────────────────────
   47. Blog
   ───────────────────────────────────────────────────────────────────────────── */

.blog-hero__subline { font-size: 1.0625rem; line-height: 1.65; max-width: 56ch; margin: 0 auto; color: var(--color-text-secondary, rgba(255,255,255,0.75)); }

.blog-filter { padding: 0; border-bottom: 1px solid rgba(255,255,255,0.08); position: sticky; top: 0; z-index: 10; background: var(--color-bg-primary, #0a0a0f); backdrop-filter: blur(8px); }
.blog-filter__inner { display: flex; gap: 0; overflow-x: auto; scrollbar-width: none; }
.blog-filter__inner::-webkit-scrollbar { display: none; }
.blog-filter__tab { padding: 1rem 1.25rem; font-size: 0.875rem; font-weight: 500; color: rgba(255,255,255,0.55); border: none; background: none; cursor: pointer; white-space: nowrap; border-bottom: 2px solid transparent; transition: color 0.15s, border-color 0.15s; }
.blog-filter__tab:hover { color: rgba(255,255,255,0.85); }
.blog-filter__tab.is-active { color: var(--color-brand-primary); border-bottom-color: var(--color-brand-primary); }

.blog-featured__card { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; overflow: hidden; }
@media (max-width: 768px) { .blog-featured__card { grid-template-columns: 1fr; } }
.blog-featured__image { overflow: hidden; max-height: 360px; }
.blog-featured__image img { width: 100%; height: 100%; object-fit: cover; }
.blog-featured__body { padding: 2.5rem; display: flex; flex-direction: column; gap: 0.75rem; }
.blog-featured__cat { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); }
.blog-featured__title { font-size: clamp(1.25rem, 3vw, 1.875rem); font-weight: 700; line-height: 1.3; letter-spacing: -0.02em; }
.blog-featured__title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.blog-featured__title a:hover { color: var(--color-brand-primary); }
.blog-featured__excerpt { font-size: 0.9375rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.7)); flex: 1; }
.blog-featured__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; font-size: 0.8125rem; color: rgba(255,255,255,0.5); }
.blog-featured__sep { color: rgba(255,255,255,0.25); }

.blog-grid__list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 1.5rem; }
.blog-grid__card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; overflow: hidden; display: flex; flex-direction: column; transition: border-color 0.2s; }
.blog-grid__card:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); }
.blog-grid__card-image { display: block; overflow: hidden; aspect-ratio: 16/9; }
.blog-grid__card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.35s ease; }
.blog-grid__card:hover .blog-grid__card-image img { transform: scale(1.04); }
.blog-grid__card-body { padding: 1.5rem; display: flex; flex-direction: column; flex: 1; }
.blog-grid__cat { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); margin-bottom: 0.5rem; }
.blog-grid__title { font-size: 1rem; font-weight: 600; line-height: 1.4; margin-bottom: 0.5rem; }
.blog-grid__title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.blog-grid__title a:hover { color: var(--color-brand-primary); }
.blog-grid__excerpt { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1rem; }
.blog-grid__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0.375rem; font-size: 0.75rem; color: rgba(255,255,255,0.45); margin-top: auto; }
.blog-grid__sep { color: rgba(255,255,255,0.2); }
.blog-grid.is-loading { opacity: 0.5; pointer-events: none; }

.blog-pagination { padding: 2rem 0; }
.blog-pagination .page-numbers { list-style: none; padding: 0; margin: 0; display: flex; justify-content: center; gap: 0.5rem; flex-wrap: wrap; }
.blog-pagination .page-numbers li a,
.blog-pagination .page-numbers li span { display: flex; align-items: center; justify-content: center; min-width: 2.25rem; height: 2.25rem; padding: 0 0.75rem; border-radius: 0.5rem; font-size: 0.875rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); color: rgba(255,255,255,0.75); text-decoration: none; transition: background 0.15s, border-color 0.15s; }
.blog-pagination .page-numbers li .current { background: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-color: color-mix(in srgb, var(--color-brand-primary) 50%, transparent); color: var(--color-brand-primary); }
.blog-pagination .page-numbers li a:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.2); }

/* Blog single post */
.blog-post-header { padding: 4rem 0 0; }
.blog-post-header__breadcrumb ol { list-style: none; padding: 0; margin: 0 0 1.5rem; display: flex; flex-wrap: wrap; gap: 0.5rem; font-size: 0.8125rem; color: rgba(255,255,255,0.45); }
.blog-post-header__breadcrumb a { color: rgba(255,255,255,0.55); text-decoration: none; }
.blog-post-header__breadcrumb a:hover { color: var(--color-brand-primary); }
.blog-post-header__inner { max-width: 780px; }
.blog-post-header__cat { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); display: block; margin-bottom: 0.75rem; }
.blog-post-header__title { font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; line-height: 1.15; letter-spacing: -0.03em; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff); }
.blog-post-header__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; font-size: 0.875rem; color: rgba(255,255,255,0.5); margin-bottom: 2.5rem; }
.blog-post-header__sep { color: rgba(255,255,255,0.25); }
.blog-post-header__hero-image { margin-bottom: 2rem; }
.blog-post-header__img { width: 100%; border-radius: 1rem; display: block; }

.blog-post-body { display: grid; grid-template-columns: 1fr 280px; gap: 4rem; align-items: start; padding: 3rem 0; }
@media (max-width: 1024px) { .blog-post-body { grid-template-columns: 1fr; } .blog-post-sidebar { display: none; } }
.blog-post-body__article { min-width: 0; }
.blog-post-body__article.entry-content h2 { font-size: 1.5rem; font-weight: 700; margin: 2.5rem 0 1rem; color: var(--color-text-primary, #fff); }
.blog-post-body__article.entry-content h3 { font-size: 1.25rem; font-weight: 600; margin: 2rem 0 0.75rem; color: var(--color-text-primary, #fff); }
.blog-post-body__article.entry-content p { margin-bottom: 1.25rem; line-height: 1.75; color: var(--color-text-secondary, rgba(255,255,255,0.8)); }
.blog-post-body__article.entry-content a { color: var(--color-brand-primary); }
.blog-post-body__article.entry-content ul, .blog-post-body__article.entry-content ol { margin-bottom: 1.25rem; padding-left: 1.5rem; color: var(--color-text-secondary, rgba(255,255,255,0.8)); }
.blog-post-body__article.entry-content li { margin-bottom: 0.5rem; line-height: 1.65; }
.blog-post-body__article.entry-content blockquote { border-left: 3px solid var(--color-brand-primary); padding: 0.75rem 1.5rem; margin: 2rem 0; background: rgba(255,255,255,0.04); border-radius: 0 0.5rem 0.5rem 0; }
.blog-post-body__article.entry-content pre { background: rgba(0,0,0,0.5); border: 1px solid rgba(255,255,255,0.1); border-radius: 0.5rem; padding: 1.25rem; overflow-x: auto; margin-bottom: 1.25rem; }
.blog-post-body__article.entry-content code { font-family: var(--font-mono, monospace); font-size: 0.875em; background: rgba(255,255,255,0.08); padding: 0.125em 0.375em; border-radius: 0.25rem; }

.blog-post-sidebar { position: sticky; top: 5rem; display: flex; flex-direction: column; gap: 1.5rem; }
.blog-post-sidebar__heading, .blog-post-sidebar__share-heading { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: rgba(255,255,255,0.4); margin-bottom: 0.75rem; }
.blog-post-sidebar__toc { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; padding: 1.25rem; }
.blog-post-sidebar__toc-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.25rem; }
.legal-doc-toc__link, .blog-post-sidebar__toc-list a { display: block; font-size: 0.8125rem; color: rgba(255,255,255,0.6); text-decoration: none; padding: 0.25rem 0; transition: color 0.15s; }
.legal-doc-toc__link:hover, .blog-post-sidebar__toc-list a:hover { color: var(--color-text-primary, #fff); }
.legal-doc-toc__link.is-active, .blog-post-sidebar__toc-list a.is-active { color: var(--color-brand-primary); }
.legal-doc-toc__link--sub { padding-left: 0.875rem; font-size: 0.75rem; }
.blog-post-sidebar__share { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; padding: 1.25rem; }
.blog-post-sidebar__share-links { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.5rem; }
.blog-post-sidebar__share-link { display: block; font-size: 0.875rem; color: rgba(255,255,255,0.7); text-decoration: none; padding: 0.375rem 0; background: none; border: none; cursor: pointer; text-align: left; transition: color 0.15s; }
.blog-post-sidebar__share-link:hover { color: var(--color-brand-primary); }
.blog-post-sidebar__cta { background: color-mix(in srgb, var(--color-brand-primary) 8%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 25%, transparent); border-radius: 0.75rem; padding: 1.25rem; text-align: center; }
.blog-post-sidebar__cta-icon { width: 2rem; height: 2rem; color: var(--color-brand-primary); margin: 0 auto 0.625rem; }
.blog-post-sidebar__cta-text { font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); margin-bottom: 0.75rem; }

.blog-post-footer { padding: 3rem 0; border-top: 1px solid rgba(255,255,255,0.08); }
.blog-post-footer__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; margin-bottom: 3rem; }
.blog-post-footer__tags-label { font-size: 0.875rem; font-weight: 600; color: rgba(255,255,255,0.5); }
.blog-post-footer__tag { font-size: 0.75rem; font-weight: 500; padding: 0.25rem 0.75rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 9999px; color: rgba(255,255,255,0.7); text-decoration: none; }
.blog-post-footer__tag:hover { border-color: var(--color-brand-primary); color: var(--color-brand-primary); }
.blog-post-footer__related { margin-bottom: 3rem; }
.blog-post-footer__related-heading { font-size: 1.25rem; font-weight: 600; margin-bottom: 1.5rem; color: var(--color-text-primary, #fff); }
.blog-post-footer__related-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1.5rem; }
.blog-post-footer__related-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; overflow: hidden; }
.blog-post-footer__related-image { display: block; overflow: hidden; aspect-ratio: 16/9; }
.blog-post-footer__related-image img { width: 100%; height: 100%; object-fit: cover; }
.blog-post-footer__related-body { padding: 1rem; }
.blog-post-footer__related-cat { font-size: 0.6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-brand-primary); display: block; margin-bottom: 0.375rem; }
.blog-post-footer__related-title { font-size: 0.9375rem; font-weight: 600; line-height: 1.4; margin-bottom: 0.375rem; }
.blog-post-footer__related-title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.blog-post-footer__related-title a:hover { color: var(--color-brand-primary); }
.blog-post-footer__related-date { font-size: 0.75rem; color: rgba(255,255,255,0.45); }
.blog-post-footer__cta { text-align: center; padding: 3rem 2rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; }
.blog-post-footer__cta-heading { font-size: 1.5rem; font-weight: 700; margin-bottom: 1.5rem; color: var(--color-text-primary, #fff); }

.blog-newsletter__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.25rem; padding: 2.5rem; }
@media (max-width: 768px) { .blog-newsletter__inner { grid-template-columns: 1fr; gap: 1.5rem; padding: 1.75rem; } }
.blog-newsletter__headline { font-size: 1.375rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.blog-newsletter__copy { font-size: 0.9rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.blog-newsletter__input-row { display: flex; gap: 0.75rem; margin-bottom: 0.625rem; }
@media (max-width: 480px) { .blog-newsletter__input-row { flex-direction: column; } }
.blog-newsletter__input { flex: 1; padding: 0.75rem 1rem; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.15); border-radius: 0.5rem; color: #fff; font-size: 0.9375rem; }
.blog-newsletter__input:focus { outline: none; border-color: var(--color-brand-primary); }
.blog-newsletter__legal { font-size: 0.75rem; color: rgba(255,255,255,0.4); }

/* ─────────────────────────────────────────────────────────────────────────────
   48. Legal pages
   ───────────────────────────────────────────────────────────────────────────── */

.legal-hero__subline { font-size: 1.0625rem; line-height: 1.65; max-width: 60ch; margin: 0 auto 1rem; color: var(--color-text-secondary, rgba(255,255,255,0.75)); }
.legal-hero__last-updated { font-size: 0.8125rem; color: rgba(255,255,255,0.4); }

.legal-documents { background: none; }
.legal-documents__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0; }
.legal-documents__card { display: flex; align-items: center; gap: 1.5rem; padding: 1.5rem 0; border-bottom: 1px solid rgba(255,255,255,0.08); }
.legal-documents__card:first-child { border-top: 1px solid rgba(255,255,255,0.08); }
.legal-documents__card-icon { width: 2.5rem; height: 2.5rem; flex-shrink: 0; color: var(--color-brand-primary); background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent); border-radius: 0.5rem; display: flex; align-items: center; justify-content: center; }
.legal-documents__card-body { flex: 1; }
.legal-documents__title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.25rem; }
.legal-documents__title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.legal-documents__title a:hover { color: var(--color-brand-primary); }
.legal-documents__desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 0.25rem; }
.legal-documents__effective { font-size: 0.75rem; color: rgba(255,255,255,0.4); }
.legal-documents__read-link { display: flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; flex-shrink: 0; color: var(--color-brand-primary); opacity: 0.7; transition: opacity 0.15s; }
.legal-documents__read-link:hover { opacity: 1; }
.legal-documents__contact { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,0.08); font-size: 0.9rem; color: rgba(255,255,255,0.55); }
.legal-documents__contact a { color: var(--color-brand-primary); }

/* Legal doc page layout */
.legal-doc-layout { display: grid; grid-template-columns: 260px 1fr; gap: 4rem; align-items: start; padding-top: 3rem; padding-bottom: 4rem; }
@media (max-width: 900px) { .legal-doc-layout { grid-template-columns: 1fr; } }
.legal-doc-toc { position: sticky; top: 5rem; }
.legal-doc-toc__inner { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; padding: 1.25rem; }
.legal-doc-toc__heading { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: rgba(255,255,255,0.4); margin-bottom: 0.75rem; }
.legal-doc-toc__list { list-style: none; padding: 0; margin: 0 0 1.5rem; display: flex; flex-direction: column; gap: 0.125rem; }
.legal-doc-toc__contact { font-size: 0.8125rem; color: rgba(255,255,255,0.45); border-top: 1px solid rgba(255,255,255,0.08); padding-top: 1rem; }
.legal-doc-toc__contact a { color: var(--color-brand-primary); display: block; margin-top: 0.25rem; }
.legal-doc-header { padding: 4rem 0 2rem; }
.legal-doc-header__breadcrumb ol { list-style: none; padding: 0; margin: 0 0 1.5rem; display: flex; flex-wrap: wrap; gap: 0.5rem; font-size: 0.8125rem; color: rgba(255,255,255,0.45); }
.legal-doc-header__breadcrumb a { color: rgba(255,255,255,0.55); text-decoration: none; }
.legal-doc-header__breadcrumb a:hover { color: var(--color-brand-primary); }
.legal-doc-header__inner { display: flex; align-items: flex-start; gap: 1.25rem; }
.legal-doc-header__icon { width: 3rem; height: 3rem; flex-shrink: 0; color: var(--color-brand-primary); background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.75rem; display: flex; align-items: center; justify-content: center; }
.legal-doc-header__title { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 800; letter-spacing: -0.02em; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.legal-doc-header__meta { display: flex; flex-wrap: wrap; gap: 1.5rem; }
.legal-doc-header__meta-item { font-size: 0.8125rem; }
.legal-doc-header__meta-item dt { color: rgba(255,255,255,0.4); display: inline; }
.legal-doc-header__meta-item dd { color: rgba(255,255,255,0.75); display: inline; margin: 0 0 0 0.375rem; }
.legal-doc-content__body { max-width: none; }
.legal-doc-content__body.entry-content h2 { font-size: 1.375rem; font-weight: 700; margin: 2.5rem 0 1rem; scroll-margin-top: 6rem; color: var(--color-text-primary, #fff); }
.legal-doc-content__body.entry-content h3 { font-size: 1.125rem; font-weight: 600; margin: 1.75rem 0 0.75rem; scroll-margin-top: 6rem; color: var(--color-text-primary, #fff); }
.legal-doc-content__body.entry-content p { margin-bottom: 1.25rem; line-height: 1.75; color: var(--color-text-secondary, rgba(255,255,255,0.8)); }
.legal-doc-content__body.entry-content ul, .legal-doc-content__body.entry-content ol { margin-bottom: 1.25rem; padding-left: 1.5rem; color: var(--color-text-secondary, rgba(255,255,255,0.8)); }
.legal-doc-content__body.entry-content li { margin-bottom: 0.5rem; line-height: 1.65; }
.legal-doc-content__footer { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid rgba(255,255,255,0.08); display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; }
.legal-doc-content__footer-note { font-size: 0.875rem; color: rgba(255,255,255,0.55); flex: 1; }
.legal-doc-content__footer-note a { color: var(--color-brand-primary); }

/* ─────────────────────────────────────────────────────────────────────────────
   49. Search results & 404 page
   ───────────────────────────────────────────────────────────────────────────── */

/* Search */
.search-header { padding: 5rem 0 3rem; }
.search-header__inner { max-width: 700px; }
.search-header__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.search-header__headline em { font-style: normal; color: var(--color-brand-primary); }
.search-header__count { font-size: 0.9375rem; color: rgba(255,255,255,0.55); margin-bottom: 1.5rem; }

.search-results-wrap { padding-bottom: 5rem; }
.search-results { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0; }
.search-result { border-bottom: 1px solid rgba(255,255,255,0.08); padding: 1.5rem 0; }
.search-result:first-child { border-top: 1px solid rgba(255,255,255,0.08); }
.search-result__type { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--color-brand-primary); display: block; margin-bottom: 0.25rem; }
.search-result__title { font-size: 1.125rem; font-weight: 600; margin-bottom: 0.5rem; }
.search-result__title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.search-result__title a:hover { color: var(--color-brand-primary); }
.search-result__excerpt { font-size: 0.9375rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 0.75rem; }
.search-result__meta { display: flex; align-items: center; gap: 0.75rem; font-size: 0.8125rem; color: rgba(255,255,255,0.45); }
.search-result__sep { color: rgba(255,255,255,0.2); }
.search-result__read-link { display: inline-flex; align-items: center; gap: 0.375rem; color: var(--color-brand-primary); text-decoration: none; font-weight: 600; font-size: 0.875rem; }
.search-empty { text-align: center; padding: 5rem 0; }
.search-empty__icon { width: 3rem; height: 3rem; color: rgba(255,255,255,0.3); margin: 0 auto 1.5rem; }
.search-empty__heading { font-size: 1.5rem; font-weight: 700; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.search-empty__copy { font-size: 1rem; color: rgba(255,255,255,0.6); margin-bottom: 2rem; max-width: 48ch; margin-left: auto; margin-right: auto; }
.search-empty__actions { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
.search-pagination { margin-top: 3rem; }

/* 404 */
.error-404 { padding: 8rem 0 6rem; }
.error-404__inner { max-width: 640px; margin: 0 auto; text-align: center; }
.error-404__code { font-size: clamp(5rem, 15vw, 8rem); font-weight: 900; letter-spacing: -0.05em; color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); line-height: 1; margin-bottom: 1.5rem; }
.error-404__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.error-404__copy { font-size: 1.0625rem; line-height: 1.65; color: rgba(255,255,255,0.65); margin-bottom: 2rem; }
.error-404__actions { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; margin-bottom: 3rem; }
.error-404__search { margin-bottom: 3rem; }
.error-404__search-label { font-size: 0.875rem; color: rgba(255,255,255,0.5); margin-bottom: 0.75rem; }
.error-404__nav { }
.error-404__nav-label { font-size: 0.875rem; color: rgba(255,255,255,0.45); margin-bottom: 0.75rem; }
.error-404__nav ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 0.75rem; justify-content: center; }
.error-404__nav a { font-size: 0.875rem; font-weight: 500; padding: 0.375rem 0.875rem; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); border-radius: 9999px; color: rgba(255,255,255,0.7); text-decoration: none; transition: border-color 0.15s, color 0.15s; }
.error-404__nav a:hover { border-color: var(--color-brand-primary); color: var(--color-brand-primary); }

/* ── Copy success state ── */
.is-copied .btn__icon, button.is-copied { color: rgb(134,239,172) !important; }

/* ── §50  Utility classes ─────────────────────────────────────────────────────
 *
 *  The PHP templates use a small set of Tailwind-style utility class names
 *  for positioning and stacking. These must be defined here because main.css
 *  is the only stylesheet — Tailwind is not loaded in the WordPress theme.
 *
 * ─────────────────────────────────────────────────────────────────────────── */

/* Positioning */
.relative        { position: relative; }
.absolute        { position: absolute; }

/* Stacking */
.z-0             { z-index: 0; }
.z-10            { z-index: 10; }
.z-20            { z-index: 20; }
.z-50            { z-index: 50; }

/* Overflow */
.overflow-hidden { overflow: hidden; }
.overflow-auto   { overflow: auto; }

/* Display */
.flex            { display: flex; }
.grid            { display: grid; }
.block           { display: block; }
.inline-block    { display: inline-block; }
.hidden          { display: none; }

/* Flex helpers */
.flex-col        { flex-direction: column; }
.items-center    { align-items: center; }
.justify-center  { justify-content: center; }
.flex-1          { flex: 1 1 0%; }
.flex-wrap       { flex-wrap: wrap; }

/* Spacing helpers used inline in templates */
.mx-auto         { margin-inline: auto; }
.w-full          { width: 100%; }
.h-full          { height: 100%; }

/* Text */
.text-center     { text-align: center; }
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border-width: 0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   51. Header — theme toggle & language selector
   Mirrors ThemeToggle.tsx and LanguageSelector.tsx header-actions positions.
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Theme toggle ──────────────────────────────────────────────────────────── */

/* Hidden on mobile (< 640 px), shown as flex on sm+ — matches className="hidden sm:flex" */
.header-actions__theme-toggle {
  display: none;
}

@media ( min-width: 640px ) {
  .header-actions__theme-toggle {
    display: flex;
  }
}

/* Icon variants: all hidden by default; JS adds .is-active to the correct one */
.header-actions__theme-icon {
  display: none;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}

.header-actions__theme-icon.is-active {
  display: flex;
}

/* ── Language selector ─────────────────────────────────────────────────────── */

/* Hidden on mobile (< 640 px), shown on sm+ — matches className="hidden sm:block" */
.header-actions__lang {
  display: none;
  position: relative;
}

@media ( min-width: 640px ) {
  .header-actions__lang {
    display: block;
  }
}

/* Trigger button */
.header-actions__lang-trigger {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.625rem;
  border-radius: var( --radius-full );
  color: var( --color-muted-fg );
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: color var( --duration-fast ) var( --ease-in-out ),
              background-color var( --duration-fast ) var( --ease-in-out );
  white-space: nowrap;
}

.header-actions__lang-trigger:hover {
  color: var( --color-fg );
}

.header-actions__lang-trigger.is-open,
.header-actions__lang-trigger[aria-expanded="true"] {
  color: var( --color-fg );
  background-color: var( --color-secondary );
}

/* Chevron rotates 180° when open */
.header-actions__lang-chevron {
  transition: transform 0.2s ease;
  flex-shrink: 0;
}

.header-actions__lang-trigger.is-open .header-actions__lang-chevron,
.header-actions__lang-trigger[aria-expanded="true"] .header-actions__lang-chevron {
  transform: rotate( 180deg );
}

/* Dropdown panel */
.header-actions__lang-dropdown {
  display: none;
  position: absolute;
  right: 0;
  top: calc( 100% + 0.5rem );
  z-index: 200;
  width: 14rem;
  background: var( --color-popover, var( --color-bg ) );
  border: 1px solid var( --color-border );
  border-radius: var( --radius-xl );
  box-shadow: 0 8px 30px rgba( 0, 0, 0, 0.12 );
  overflow: hidden;
}

.header-actions__lang-dropdown.is-open {
  display: block;
}

/* Dark-mode shadow boost */
.dark .header-actions__lang-dropdown {
  box-shadow: 0 8px 30px rgba( 0, 0, 0, 0.35 );
}

/* Current-language header section */
.header-actions__lang-header {
  padding: 0.625rem 0.75rem 0.375rem;
  border-bottom: 1px solid var( --color-border );
}

.header-actions__lang-header-label {
  font-size: 0.625rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var( --color-muted-fg );
  margin: 0 0 0.375rem;
  display: block;
}

.header-actions__lang-current-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.25rem 0;
}

.header-actions__lang-current-name {
  font-size: 0.875rem;
  font-weight: 600;
  color: var( --color-fg );
  line-height: 1;
}

.header-actions__lang-check {
  color: var( --color-primary );
  flex-shrink: 0;
}

/* Scrollable language list */
.header-actions__lang-list {
  padding: 0.375rem;
  max-height: 13.75rem;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var( --color-border ) transparent;
}

.header-actions__lang-list::-webkit-scrollbar {
  width: 4px;
}

.header-actions__lang-list::-webkit-scrollbar-track {
  background: transparent;
}

.header-actions__lang-list::-webkit-scrollbar-thumb {
  background: var( --color-border );
  border-radius: 9999px;
}

/* Individual language option buttons */
.header-actions__lang-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  padding: 0.5rem 0.75rem;
  border-radius: var( --radius-lg );
  font-size: 0.875rem;
  background: none;
  border: none;
  text-align: left;
  cursor: not-allowed;
  opacity: 0.4;
  color: var( --color-muted-fg );
}

.header-actions__lang-item__names {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 0;
}

.header-actions__lang-item__name {
  font-weight: 500;
  line-height: 1;
  color: var( --color-fg );
}

.header-actions__lang-item__native {
  font-size: 0.75rem;
  color: var( --color-muted-fg );
  line-height: 1;
}

.header-actions__lang-badge {
  font-size: 0.625rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var( --color-muted-fg );
  background: var( --color-secondary );
  padding: 0.125rem 0.375rem;
  border-radius: var( --radius-sm );
  white-space: nowrap;
  flex-shrink: 0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   52. Logos strip (home-logos-strip)
   ───────────────────────────────────────────────────────────────────────────── */

.home-logos-strip {
  padding-top:    2rem;
  padding-bottom: 2rem;
  border-top:    1px solid hsl( var(--border) / 0.4 );
  border-bottom: 1px solid hsl( var(--border) / 0.4 );
  overflow: hidden;
}

.home-logos-strip__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.home-logos-strip__eyebrow {
  margin-bottom: 1.5rem;
  font-size:     0.8125rem;
  font-weight:   500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-muted-fg);
}

/* Wrapper — clip and fade edges */
.home-logos-strip__track-wrap {
  position: relative;
  display:  flex;
  width:    100%;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 10%,
    black 90%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 10%,
    black 90%,
    transparent 100%
  );
}

/* Each track scrolls independently — two identical tracks create the infinite illusion */
.home-logos-strip__track {
  display:         flex;
  align-items:     center;
  justify-content: space-around;
  gap:             3rem;
  padding-right:   3rem;
  min-width:       100%;
  animation:       aigenttra-marquee 30s linear infinite;
  will-change:     transform;
}

@keyframes aigenttra-marquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}

@media (prefers-reduced-motion: reduce) {
  .home-logos-strip__track {
    animation:  none;
    transform:  none !important;
  }
}

.home-logos-strip__logo {
  font-size:      0.8125rem;
  font-weight:    700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  white-space:    nowrap;
  color:          hsl( var(--muted-foreground) / 0.4 );
}

@media (min-width: 768px) {
  .home-logos-strip__logo {
    font-size: 0.9375rem;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   53. Back-to-Top button
   ───────────────────────────────────────────────────────────────────────────── */

.back-to-top {
  position:      fixed;
  right:         1.5rem;
  bottom:        2rem;
  z-index:       40;
  width:         3rem;
  height:        3rem;
  border-radius: var(--radius-full);
  background:    var(--color-card);
  border:        1px solid hsl( var(--border) / 0.5 );
  box-shadow:    var(--shadow-lg);
  display:       flex;
  align-items:   center;
  justify-content: center;
  color:         var(--color-fg);
  cursor:        pointer;

  /* Hidden by default — JS adds .is-visible */
  opacity:       0;
  transform:     scale(0.85);
  pointer-events: none;
  transition:
    opacity        var(--duration-normal) var(--ease-out-expo),
    transform      var(--duration-normal) var(--ease-out-expo),
    bottom         300ms               var(--ease-out-expo),
    box-shadow     var(--duration-fast);
}

.back-to-top:hover {
  color:      var(--color-primary);
  box-shadow: var(--shadow-xl);
}

.back-to-top:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* Shown state */
.back-to-top.is-visible {
  opacity:        1;
  transform:      scale(1);
  pointer-events: auto;
}

/* Lifted above footer */
.back-to-top.is-above-footer {
  bottom: 7.5rem;
}

/* SVG ring — -rotate-90 done in CSS */
.back-to-top__ring {
  position:  absolute;
  inset:     0;
  width:     100%;
  height:    100%;
  transform: rotate(-90deg);
}

.back-to-top__ring-track {
  color: var(--color-border);
}

.back-to-top__ring-progress {
  color:      var(--color-primary);
  transition: stroke-dashoffset 150ms ease-out;
}

/* Arrow icon */
.back-to-top__icon {
  position:   relative;
  z-index:    1;
  transition: transform var(--duration-fast);
}

.back-to-top:hover .back-to-top__icon {
  transform: translateY(-2px);
}

/* ─────────────────────────────────────────────────────────────────────────────
   54. Search modal
   ───────────────────────────────────────────────────────────────────────────── */

.search-modal {
  position: fixed;
  inset:    0;
  z-index:  500;
  display:  flex;
  align-items: flex-start;
  justify-content: center;
  padding:  15vh 1rem 0;

  /* Animation */
  opacity:   0;
  pointer-events: none;
  transition: opacity var(--duration-fast);
}

.search-modal.is-open {
  opacity:        1;
  pointer-events: auto;
}

.search-modal__backdrop {
  position:   fixed;
  inset:      0;
  background: hsl( var(--background) / 0.8 );
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter:         blur(4px);
}

.search-modal__panel {
  position:      relative;
  z-index:       1;
  width:         100%;
  max-width:     42rem;
  background:    var(--color-card);
  border:        1px solid var(--color-border);
  border-radius: var(--radius-xl);
  overflow:      hidden;
  box-shadow:    var(--shadow-2xl);

  transform:     scale(0.97) translateY(-8px);
  transition:
    transform var(--duration-normal) var(--ease-out-expo),
    opacity   var(--duration-normal) var(--ease-out-expo);
}

.search-modal.is-open .search-modal__panel {
  transform: scale(1) translateY(0);
}

/* Form row */
.search-modal__form {
  display:     flex;
  align-items: center;
  padding:     0 1rem;
  border-bottom: 1px solid var(--color-border);
}

.search-modal__form-icon {
  color:       var(--color-muted-fg);
  flex-shrink: 0;
  margin-right: 0.75rem;
}

.search-modal__input {
  flex:        1;
  height:      3.5rem;
  background:  transparent;
  border:      none;
  outline:     none;
  font-size:   1rem;
  color:       var(--color-fg);
}

.search-modal__input::placeholder {
  color: var(--color-muted-fg);
}

.search-modal__kbd {
  display:      none;
  align-items:  center;
  gap:          0.125rem;
  background:   var(--color-secondary);
  border:       1px solid hsl( var(--border) / 0.5 );
  border-radius: var(--radius-sm);
  padding:      0.125rem 0.5rem;
  font-size:    0.75rem;
  color:        var(--color-muted-fg);
  margin-left:  0.75rem;
}

@media (min-width: 640px) {
  .search-modal__kbd {
    display: flex;
  }
}

.search-modal__close {
  padding:       0.5rem;
  margin-left:   0.5rem;
  border-radius: var(--radius);
  color:         var(--color-muted-fg);
  transition:    color var(--duration-fast);
}

.search-modal__close:hover { color: var(--color-fg); }
.search-modal__close:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* Body — suggestions */
.search-modal__body {
  padding:        1rem 1.5rem;
  max-height:     60vh;
  overflow-y:     auto;
}

.search-modal__section + .search-modal__section {
  margin-top: 1.5rem;
}

.search-modal__section-heading {
  font-size:      0.6875rem;
  font-weight:    600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color:          var(--color-muted-fg);
  margin-bottom:  0.75rem;
  padding-left:   0.5rem;
}

/* Recent search buttons */
.search-modal__recent-list {
  display:        flex;
  flex-direction: column;
  list-style:     none;
  margin:         0;
  padding:        0;
}

.search-modal__recent-item {
  width:         100%;
  display:       flex;
  align-items:   center;
  justify-content: space-between;
  gap:           0.75rem;
  padding:       0.75rem 0.5rem;
  border-radius: var(--radius-lg);
  background:    none;
  border:        none;
  cursor:        pointer;
  color:         var(--color-fg);
  transition:    background var(--duration-fast);
}

.search-modal__recent-item:hover,
.search-modal__recent-item:focus-visible {
  background: var(--color-secondary);
}

.search-modal__recent-item:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: -2px;
}

.search-modal__recent-item-inner {
  display:     flex;
  align-items: center;
  gap:         0.75rem;
  font-size:   0.875rem;
  font-weight: 500;
}

.search-modal__recent-icon {
  color: var(--color-muted-fg);
  flex-shrink: 0;
}

.search-modal__recent-arrow {
  color:      var(--color-primary);
  opacity:    0;
  transform:  translateX(-4px);
  transition: opacity var(--duration-fast), transform var(--duration-fast);
  flex-shrink: 0;
}

.search-modal__recent-item:hover .search-modal__recent-arrow,
.search-modal__recent-item:focus-visible .search-modal__recent-arrow {
  opacity:   1;
  transform: translateX(0);
}

/* Popular tags */
.search-modal__tags {
  display:   flex;
  flex-wrap: wrap;
  gap:       0.5rem;
  padding-left: 0.5rem;
}

.search-modal__tag {
  padding:       0.375rem 0.75rem;
  border-radius: var(--radius-full);
  background:    var(--color-secondary);
  border:        1px solid var(--color-border);
  font-size:     0.8125rem;
  font-weight:   500;
  color:         var(--color-secondary-fg);
  cursor:        pointer;
  transition:    background var(--duration-fast), color var(--duration-fast);
}

.search-modal__tag:hover {
  background: var(--color-primary);
  color:      var(--color-primary-fg);
  border-color: var(--color-primary);
}

/* body padding when modal is open */
body.search-modal-open {
  overflow: hidden;
}

/* ─────────────────────────────────────────────────────────────────────────────
   55. Cookie banner + preferences modal
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Banner ── */
.cookie-banner {
  position:     fixed;
  bottom:       0;
  left:         0;
  right:        0;
  z-index:      450;
  padding:      1rem 1rem 1.5rem;
  pointer-events: none;

  transform:    translateY(100%);
  opacity:      0;
  transition:
    transform var(--duration-slow) var(--ease-out-expo),
    opacity   var(--duration-slow) var(--ease-out-expo);
}

.cookie-banner.is-visible {
  transform:      translateY(0);
  opacity:        1;
  pointer-events: auto;
}

.cookie-banner__inner {
  max-width:      56rem;
  margin:         0 auto;
  background:     var(--color-card);
  border:         1px solid var(--color-border);
  border-radius:  1rem;
  padding:        1.5rem;
  box-shadow:     var(--shadow-2xl);
  display:        flex;
  flex-direction: column;
  gap:            1.5rem;
}

@media (min-width: 768px) {
  .cookie-banner__inner {
    flex-direction: row;
    align-items:    center;
    justify-content: space-between;
  }
}

.cookie-banner__copy {
  flex: 1;
}

.cookie-banner__title {
  font-size:   1.125rem;
  font-weight: 700;
  margin-bottom: 0.375rem;
  color: var(--color-fg);
}

.cookie-banner__desc {
  font-size: 0.875rem;
  color:     var(--color-muted-fg);
  line-height: 1.6;
}

.cookie-banner__actions {
  display:        flex;
  flex-direction: column;
  gap:            0.625rem;
  flex-shrink:    0;
}

@media (min-width: 640px) {
  .cookie-banner__actions {
    flex-direction: row;
    align-items:    center;
  }
}

/* ── Preferences modal ── */
/* display:flex below would override the UA's [hidden]{display:none} —
   keep the modal fully out of the tree until JS un-hides it. */
.cookie-modal[hidden] {
  display: none;
}

.cookie-modal {
  position: fixed;
  inset:    0;
  z-index:  460;
  display:  flex;
  align-items:    center;
  justify-content: center;
  padding:  1rem;

  opacity:        0;
  pointer-events: none;
  transition: opacity var(--duration-fast);
}

.cookie-modal.is-open {
  opacity:        1;
  pointer-events: auto;
}

.cookie-modal__backdrop {
  position:   fixed;
  inset:      0;
  background: hsl( var(--background) / 0.8 );
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter:         blur(4px);
}

.cookie-modal__panel {
  position:      relative;
  z-index:       1;
  width:         100%;
  max-width:     38rem;
  background:    var(--color-card);
  border:        1px solid var(--color-border);
  border-radius: 1rem;
  box-shadow:    var(--shadow-2xl);
  overflow:      hidden;

  transform:     scale(0.97);
  transition:    transform var(--duration-normal) var(--ease-out-expo);
}

.cookie-modal.is-open .cookie-modal__panel {
  transform: scale(1);
}

.cookie-modal__header {
  display:     flex;
  align-items: flex-start;
  justify-content: space-between;
  gap:         1rem;
  padding:     1.5rem 1.5rem 0;
}

.cookie-modal__title {
  font-size:   1.25rem;
  font-weight: 700;
  color:       var(--color-fg);
}

.cookie-modal__desc {
  font-size:    0.875rem;
  color:        var(--color-muted-fg);
  margin-top:   0.375rem;
  line-height:  1.5;
}

.cookie-modal__close {
  flex-shrink:   0;
  width:         2rem;
  height:        2rem;
  display:       flex;
  align-items:   center;
  justify-content: center;
  border-radius: var(--radius);
  color:         var(--color-muted-fg);
  background:    none;
  border:        none;
  cursor:        pointer;
  transition:    color var(--duration-fast);
}

.cookie-modal__close:hover { color: var(--color-fg); }

/* Toggle rows */
.cookie-modal__toggles {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap:            1.25rem;
  max-height:     55vh;
  overflow-y:     auto;
}

.cookie-modal__row {
  display:     flex;
  align-items: flex-start;
  justify-content: space-between;
  gap:         1.5rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid var(--color-border);
}

.cookie-modal__row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.cookie-modal__row-label {
  font-size:   1rem;
  font-weight: 600;
  color:       var(--color-fg);
  display:     block;
  margin-bottom: 0.25rem;
}

.cookie-modal__row-desc {
  font-size: 0.875rem;
  color:     var(--color-muted-fg);
  line-height: 1.5;
}

/* Toggle switch */
.cookie-modal__toggle-wrap {
  position:   relative;
  flex-shrink: 0;
}

.cookie-modal__toggle {
  position: absolute;
  inset:    0;
  width:    100%;
  height:   100%;
  opacity:  0;
  margin:   0;
  cursor:   pointer;
  z-index:  1;
}

.cookie-modal__toggle-track {
  display:       block;
  width:         2.75rem;
  height:        1.5rem;
  border-radius: var(--radius-full);
  background:    var(--color-secondary);
  border:        2px solid var(--color-border);
  cursor:        pointer;
  transition:    background var(--duration-fast), border-color var(--duration-fast);
  position:      relative;
}

.cookie-modal__toggle-track::after {
  content:       '';
  position:      absolute;
  top:           2px;
  left:          2px;
  width:         1rem;
  height:        1rem;
  border-radius: var(--radius-full);
  background:    var(--color-muted-fg);
  transition:    transform var(--duration-fast), background var(--duration-fast);
}

.cookie-modal__toggle:checked + .cookie-modal__toggle-track {
  background:   var(--color-primary);
  border-color: var(--color-primary);
}

.cookie-modal__toggle:checked + .cookie-modal__toggle-track::after {
  background:  var(--color-primary-fg);
  transform:   translateX(1.25rem);
}

.cookie-modal__toggle:disabled + .cookie-modal__toggle-track {
  opacity: 0.5;
  cursor:  not-allowed;
}

.cookie-modal__toggle:focus-visible + .cookie-modal__toggle-track {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* Modal footer */
.cookie-modal__footer {
  display:        flex;
  flex-direction: column;
  gap:            0.5rem;
  padding:        1rem 1.5rem 1.5rem;
  border-top:     1px solid var(--color-border);
  background:     var(--color-secondary);
}

@media (min-width: 480px) {
  .cookie-modal__footer {
    flex-direction: row;
    justify-content: flex-end;
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   56. Developers — Security & Auth section
   ───────────────────────────────────────────────────────────────────────────── */

.developers-security-auth__grid {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

@media (min-width: 1024px) {
  .developers-security-auth__grid {
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap:         3rem;
    align-items: center;
  }
}

/* Auth flow card */
.developers-security-auth__flow-card {
  background:    var(--color-card);
  border-radius: 1rem;
  border:        1px solid var(--color-border);
  padding:       2rem;
  position:      relative;
  overflow:      hidden;
  box-shadow:    var(--shadow-xl);
}

.developers-security-auth__flow-topline {
  position:   absolute;
  top:        0;
  left:       0;
  right:      0;
  height:     1px;
  background: linear-gradient(to right, transparent, var(--color-primary), transparent);
}

.developers-security-auth__flow-list {
  list-style:     none;
  margin:         0;
  padding:        0;
  display:        flex;
  flex-direction: column;
  gap:            2rem;
}

.developers-security-auth__flow-step {
  display: flex;
  gap:     1rem;
}

.developers-security-auth__flow-marker {
  display:        flex;
  flex-direction: column;
  align-items:    center;
  flex-shrink:    0;
}

.developers-security-auth__flow-num {
  width:           2rem;
  height:          2rem;
  border-radius:   var(--radius-full);
  background:      hsl( var(--primary) / 0.2 );
  border:          1px solid var(--color-primary);
  color:           var(--color-primary);
  display:         flex;
  align-items:     center;
  justify-content: center;
  font-family:     var(--font-mono);
  font-size:       0.75rem;
  font-weight:     700;
  flex-shrink:     0;
}

.developers-security-auth__flow-num--success {
  background: hsl( 142 76% 36% / 0.2 );
  border-color: hsl(142 76% 36%);
  color:        hsl(142 76% 36%);
}

.dark .developers-security-auth__flow-num--success,
html[data-theme="dark"] .developers-security-auth__flow-num--success {
  color:        hsl(142 76% 52%);
  border-color: hsl(142 76% 52%);
}

.developers-security-auth__flow-connector {
  display:    block;
  width:      1px;
  height:     3rem;
  margin:     0.375rem 0;
  background: hsl( var(--border) / 0.3 );
}

.developers-security-auth__flow-body {
  padding-top: 0.25rem;
  flex: 1;
  min-width: 0;
}

.developers-security-auth__flow-label {
  font-size:   0.875rem;
  font-weight: 600;
  color:       var(--color-fg);
  margin-bottom: 0.375rem;
}

.developers-security-auth__flow-code {
  font-family:   var(--font-mono);
  font-size:     0.625rem;
  color:         var(--color-muted-fg);
  background:    var(--color-secondary);
  padding:       0.5rem 0.625rem;
  border-radius: var(--radius);
  border:        1px solid var(--color-border);
  white-space:   pre;
  overflow-x:    auto;
  margin:        0;
  line-height:   1.6;
}

.developers-security-auth__flow-code .code-method {
  color: var(--color-primary);
  opacity: 0.8;
}

.developers-security-auth__flow-code .code-key {
  color: hsl( var(--muted-foreground) / 0.6 );
}

.developers-security-auth__flow-code .code-success {
  color: hsl(142 76% 36%);
}

.dark .developers-security-auth__flow-code .code-success,
html[data-theme="dark"] .developers-security-auth__flow-code .code-success {
  color: hsl(142 76% 52%);
}

/* Feature grid */
.developers-security-auth__features {
  list-style: none;
  margin:     0;
  padding:    0;
  display:    grid;
  grid-template-columns: 1fr;
  column-gap: 2rem;
  row-gap:    0;
}

@media (min-width: 640px) {
  .developers-security-auth__features {
    grid-template-columns: repeat(2, 1fr);
  }
}

.developers-security-auth__feature {
  display:       flex;
  align-items:   flex-start;
  gap:           0.75rem;
  padding:       1rem 0;
  border-bottom: 1px solid hsl( var(--border) / 0.5 );
}

/* Remove bottom border from last two items in the 2-col layout */
@media (min-width: 640px) {
  .developers-security-auth__feature:nth-last-child(-n+2) {
    border-bottom: none;
  }
}

.developers-security-auth__feature-icon {
  flex-shrink: 0;
  width:       1.25rem;
  height:      1.25rem;
  margin-top:  0.125rem;
  color:       var(--color-primary);
}

.developers-security-auth__feature-icon svg {
  width:  100%;
  height: 100%;
}

.developers-security-auth__feature-title {
  font-size:   0.875rem;
  font-weight: 600;
  color:       var(--color-fg);
  margin-bottom: 0.25rem;
}

.developers-security-auth__feature-desc {
  font-size:   0.8125rem;
  color:       var(--color-muted-fg);
  line-height: 1.5;
}

/* ─────────────────────────────────────────────────────────────────────────────
   57. Mega menu panel CTA footer
   Mirrors the config.cta block from React MegaMenu.tsx
   ───────────────────────────────────────────────────────────────────────────── */

.mega-menu-panel__cta {
  display:          flex;
  align-items:      center;
  justify-content:  space-between;
  gap:              1rem;
  padding:          0.75rem 1rem;
  border-top:       1px solid rgb(0 0 0 / 0.08);
  background:       rgb(0 0 0 / 0.03);
}

.dark .mega-menu-panel__cta,
html[data-theme="dark"] .mega-menu-panel__cta {
  border-top-color: rgb(255 255 255 / 0.1);
  background:       rgb(255 255 255 / 0.05);
}

.mega-menu-panel__cta-desc {
  font-size:   0.75rem;
  color:       hsl( var(--foreground) / 0.5 );
  line-height: 1.4;
}

.dark .mega-menu-panel__cta-desc,
html[data-theme="dark"] .mega-menu-panel__cta-desc {
  color: rgb(255 255 255 / 0.5);
}

.mega-menu-panel__cta-link {
  flex-shrink: 0;
  font-size:   0.75rem;
  font-weight: 600;
  color:       var(--color-primary);
  text-decoration: none;
  white-space: nowrap;
  transition:  color var(--duration-fast);
}

.mega-menu-panel__cta-link:hover {
  color: hsl( var(--primary) / 0.8 );
}

/* ─────────────────────────────────────────────────────────────────────────────
   58. Mobile nav — search bar + bottom-row (theme toggle)
   ───────────────────────────────────────────────────────────────────────────── */

/* Search bar row */
.mobile-nav__search {
  padding:      1rem;
  border-bottom: 1px solid var(--color-border);
  flex-shrink:  0;
}

.mobile-nav__search-form {
  position: relative;
  display:  flex;
  align-items: center;
}

.mobile-nav__search-icon {
  position:  absolute;
  left:      0.75rem;
  top:       50%;
  transform: translateY(-50%);
  color:     var(--color-muted-fg);
  pointer-events: none;
}

.mobile-nav__search-input {
  width:         100%;
  background:    var(--color-secondary);
  border:        1px solid transparent;
  border-radius: var(--radius);
  padding:       0.5rem 1rem 0.5rem 2.25rem;
  font-size:     0.875rem;
  color:         var(--color-fg);
  transition:    border-color var(--duration-fast);
}

.mobile-nav__search-input::placeholder {
  color: var(--color-muted-fg);
}

.mobile-nav__search-input:focus {
  outline:      none;
  border-color: var(--color-primary);
}

/* Bottom row — theme toggle + social */
.mobile-nav__bottom-row {
  display:     flex;
  align-items: center;
  justify-content: space-between;
  gap:         0.75rem;
  padding-top: 0.75rem;
  border-top:  1px solid var(--color-border);
  margin-top:  0.75rem;
}

/* Theme toggle inside mobile nav */
.mobile-nav__theme-toggle {
  display:       flex;
  align-items:   center;
  justify-content: center;
  width:         2.25rem;
  height:        2.25rem;
  border-radius: var(--radius);
  background:    var(--color-secondary);
  border:        1px solid var(--color-border);
  color:         var(--color-muted-fg);
  cursor:        pointer;
  transition:    background var(--duration-fast), color var(--duration-fast);
}

.mobile-nav__theme-toggle:hover {
  background: var(--color-secondary);
  color:      var(--color-primary);
}

.mobile-nav__theme-icon {
  display: none;
}

.mobile-nav__theme-icon[data-theme-icon="dark"] {
  /* shown when data-theme="dark" on <html> — main.js sets this */
}

/* Icon visibility — main.js adds/removes .is-active on the span matching current theme */
.mobile-nav__theme-icon.is-active {
  display: flex;
}

/* ─────────────────────────────────────────────────────────────────────────────
   59. Header hide-on-scroll-down
   Class added by mega-menu.js when scrolling down past 100 px.
   Removed on scroll up — matches React useScrollBehavior.ts isHidden state.
   ───────────────────────────────────────────────────────────────────────────── */

.site-header {
  /* Already sticky via §8 — add the hide transform */
  transition: transform var(--duration-normal) var(--ease-in-out);
}

.site-header.header--hidden {
  transform: translateY(-100%);
}

/* ─────────────────────────────────────────────────────────────────────────────
   60. Responsive corrections — 1280 px xl breakpoint
   React uses Tailwind xl: (1280 px) for several layout switches.
   WordPress previously only had 1024 px as its top large-screen breakpoint.
   Added here: only the layouts that diverge between 1024–1279 px.
   ───────────────────────────────────────────────────────────────────────────── */

@media (min-width: 1280px) {
  /* Hero text sizing — React: text-5xl lg:text-6xl xl:text-7xl */
  .home-hero__headline {
    font-size: clamp(3rem, 5vw, 4.5rem);
  }

  /* Two-column feature grids that React switches at xl: */
  .solutions-overview__grid,
  .products-overview__grid,
  .enterprise-services__grid {
    grid-template-columns: repeat(3, 1fr);
  }

  /* Developer experience — full 2-col at xl */
  .developer-experience__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Trust center preview — side-by-side at xl */
  .trust-center-preview__inner {
    flex-direction: row;
    align-items:    center;
  }

  /* Footer nav columns — full 6-col grid at xl */
  .footer-nav__columns {
    grid-template-columns: repeat(6, 1fr);
  }
}

/* ─────────────────────────────────────────────────────────────────────────────
   61. Archive / taxonomy / CPT single templates (1.1.0)
   ───────────────────────────────────────────────────────────────────────────── */

/* Generic archive header */
.archive-header {
  padding:      3rem 0 2rem;
  border-bottom: 1px solid var(--color-border);
  margin-bottom: 2.5rem;
}

.archive-header__breadcrumb {
  font-size:   0.875rem;
  color:       var(--color-muted-fg);
  margin-bottom: 0.5rem;
}

.archive-header__breadcrumb a {
  color:       var(--color-primary);
  text-decoration: none;
}

.archive-header__breadcrumb a:hover {
  text-decoration: underline;
}

.archive-header__title {
  font-size:   2rem;
  font-weight: 700;
  color:       var(--color-fg);
  margin-bottom: 0.5rem;
}

.archive-header__desc {
  font-size:   1.125rem;
  color:       var(--color-muted-fg);
  max-width:   48rem;
  line-height: 1.6;
}

/* Post grid */
.post-grid,
.product-grid,
.resource-grid {
  display:               grid;
  grid-template-columns: 1fr;
  gap:                   1.5rem;
  margin-bottom:         3rem;
}

@media (min-width: 640px) {
  .post-grid,
  .product-grid,
  .resource-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .post-grid,
  .product-grid,
  .resource-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Post card */
.post-card,
.product-card,
.resource-card {
  background:    var(--color-card);
  border:        1px solid var(--color-border);
  border-radius: var(--radius-lg);
  overflow:      hidden;
  display:       flex;
  flex-direction: column;
  transition:    box-shadow var(--duration-fast), transform var(--duration-fast);
}

.post-card:hover,
.product-card:hover,
.resource-card:hover {
  box-shadow: var(--shadow-md);
  transform:  translateY(-2px);
}

.post-card__thumb,
.product-card__thumb,
.resource-card__thumb {
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
}

.post-card__img,
.product-card__img,
.resource-card__img {
  width:      100%;
  height:     100%;
  object-fit: cover;
  transition: transform var(--duration-slow);
}

.post-card:hover .post-card__img,
.product-card:hover .product-card__img,
.resource-card:hover .resource-card__img {
  transform: scale(1.03);
}

.post-card__body,
.product-card__body,
.resource-card__body {
  padding: 1.25rem;
  flex:    1;
  display: flex;
  flex-direction: column;
  gap:     0.5rem;
}

.post-card__meta,
.post-card__date,
.post-card__type {
  font-size:   0.8125rem;
  color:       var(--color-muted-fg);
}

.post-card__title,
.product-card__title,
.resource-card__title {
  font-size:   1.125rem;
  font-weight: 700;
  color:       var(--color-fg);
}

.post-card__title a,
.product-card__title a,
.resource-card__title a {
  color:           inherit;
  text-decoration: none;
  transition:      color var(--duration-fast);
}

.post-card__title a:hover,
.product-card__title a:hover,
.resource-card__title a:hover {
  color: var(--color-primary);
}

.post-card__excerpt,
.product-card__excerpt,
.resource-card__excerpt {
  font-size:   0.875rem;
  color:       var(--color-muted-fg);
  line-height: 1.6;
  flex:        1;
}

.post-card__read-more,
.resource-card__link {
  font-size:   0.875rem;
  font-weight: 600;
  color:       var(--color-primary);
  text-decoration: none;
  margin-top:  auto;
  padding-top: 0.25rem;
}

.post-card__read-more:hover,
.resource-card__link:hover {
  text-decoration: underline;
}

/* Pagination */
.archive-pagination {
  display:         flex;
  justify-content: center;
  gap:             0.5rem;
  padding:         2rem 0;
}

.archive-pagination .page-numbers {
  display:       flex;
  align-items:   center;
  justify-content: center;
  width:         2.5rem;
  height:        2.5rem;
  border-radius: var(--radius);
  font-size:     0.875rem;
  font-weight:   500;
  color:         var(--color-fg);
  text-decoration: none;
  border:        1px solid var(--color-border);
  transition:    background var(--duration-fast), color var(--duration-fast);
}

.archive-pagination .page-numbers:hover,
.archive-pagination .page-numbers.current {
  background: var(--color-primary);
  color:      var(--color-primary-fg);
  border-color: var(--color-primary);
}

.archive-empty {
  text-align:  center;
  color:       var(--color-muted-fg);
  padding:     4rem 0;
  font-size:   1.125rem;
}

/* Case study single */
.single-case-study__hero {
  padding:         4rem 0 3rem;
  background:      var(--color-secondary);
  border-bottom:   1px solid var(--color-border);
  margin-bottom:   3rem;
}

.single-case-study__meta {
  display:   flex;
  gap:       0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}

.single-case-study__title {
  font-size:   clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 700;
  color:       var(--color-fg);
  margin-bottom: 1.5rem;
}

.single-case-study__hero-img {
  width:         100%;
  max-height:    25rem;
  object-fit:    cover;
  border-radius: var(--radius-lg);
}

.single-case-study__content {
  padding: 3rem 0;
}

.single-case-study__metrics {
  padding:    3rem 0;
  background: var(--color-secondary);
  border-top: 1px solid var(--color-border);
}

.single-case-study__metrics-list {
  list-style: none;
  margin:     0;
  padding:    0;
  display:    grid;
  grid-template-columns: repeat(2, 1fr);
  gap:        2rem;
}

@media (min-width: 768px) {
  .single-case-study__metrics-list {
    grid-template-columns: repeat(4, 1fr);
  }
}

.single-case-study__metric {
  display:        flex;
  flex-direction: column;
  align-items:    center;
  gap:            0.375rem;
  text-align:     center;
}

.single-case-study__metric-value {
  font-size:   2rem;
  font-weight: 700;
  color:       var(--color-primary);
}

.single-case-study__metric-label {
  font-size: 0.875rem;
  color:     var(--color-muted-fg);
}

/* Product single */
.single-product__hero {
  padding:       4rem 0 3rem;
  text-align:    center;
  border-bottom: 1px solid var(--color-border);
}

.single-product__badge {
  margin-bottom: 1rem;
}

.single-product__title {
  font-size:   clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  color:       var(--color-fg);
}

.single-product__tagline {
  font-size:   1.25rem;
  color:       var(--color-muted-fg);
  margin-top:  0.75rem;
}

.single-product__features {
  padding: 3rem 0;
}

.single-product__features-list {
  list-style: none;
  margin:     0;
  padding:    0;
  display:    grid;
  grid-template-columns: 1fr;
  gap:        1.5rem;
}

@media (min-width: 640px) {
  .single-product__features-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .single-product__features-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

.single-product__feature {
  background:    var(--color-card);
  border:        1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding:       1.5rem;
}

.single-product__feature-title {
  font-size:   1.125rem;
  font-weight: 700;
  color:       var(--color-fg);
  margin-bottom: 0.5rem;
}

.single-product__feature-desc {
  font-size:   0.9375rem;
  color:       var(--color-muted-fg);
  line-height: 1.6;
}

/* Legal document single */
.single-legal-doc {
  padding: 3rem 0 6rem;
}

.single-legal-doc__layout {
  display:        flex;
  flex-direction: column;
  gap:            2.5rem;
}

@media (min-width: 1024px) {
  .single-legal-doc__layout {
    display:    grid;
    grid-template-columns: 14rem 1fr;
    gap:        4rem;
    align-items: start;
  }
}

/* TOC sidebar */
.legal-toc {
  position:  sticky;
  top:       calc( var(--header-height-scrolled) + 1.5rem );
}

.legal-toc__title {
  font-size:      0.75rem;
  font-weight:    600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color:          var(--color-muted-fg);
  margin-bottom:  0.75rem;
}

.legal-toc__list {
  list-style: none;
  margin:     0;
  padding:    0;
  display:    flex;
  flex-direction: column;
  gap:        0.25rem;
}

.legal-toc__list a {
  font-size:       0.875rem;
  color:           var(--color-muted-fg);
  text-decoration: none;
  display:         block;
  padding:         0.25rem 0.5rem;
  border-radius:   var(--radius-sm);
  border-left:     2px solid transparent;
  transition:      color var(--duration-fast), border-color var(--duration-fast);
}

.legal-toc__list a:hover,
.legal-toc__list a.is-active {
  color:        var(--color-primary);
  border-color: var(--color-primary);
}

/* Document header */
.single-legal-doc__header {
  margin-bottom: 2rem;
  padding-bottom: 1.5rem;
  border-bottom:  1px solid var(--color-border);
}

.single-legal-doc__title {
  font-size:   clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 800;
  color:       var(--color-fg);
  margin-bottom: 0.75rem;
}

.single-legal-doc__meta {
  display:   flex;
  gap:       0.5rem;
  flex-wrap: wrap;
}

/* Document prose */
.single-legal-doc__prose h2 {
  font-size:     1.5rem;
  font-weight:   700;
  color:         var(--color-fg);
  margin:        2.5rem 0 1rem;
  scroll-margin-top: calc( var(--header-height-scrolled) + 1rem );
}

.single-legal-doc__prose h3 {
  font-size:   1.125rem;
  font-weight: 600;
  color:       var(--color-fg);
  margin:      2rem 0 0.75rem;
  scroll-margin-top: calc( var(--header-height-scrolled) + 1rem );
}

.single-legal-doc__prose p {
  margin-bottom: 1rem;
  color:         var(--color-muted-fg);
  line-height:   1.75;
}

.single-legal-doc__prose ul,
.single-legal-doc__prose ol {
  margin:      0 0 1rem 1.5rem;
  color:       var(--color-muted-fg);
  line-height: 1.75;
}

/* Narrow container used by content templates */
.container--narrow {
  max-width: 48rem;
  margin:    0 auto;
}

/* ─────────────────────────────────────────────────────────────────────────────
   62. Legal — Related Documents section
   Mirrors React LegalRelatedDocuments.tsx
   ───────────────────────────────────────────────────────────────────────────── */

.legal-related-docs {
  padding:       3.5rem 0 4rem;
  border-top:    1px solid var(--color-border);
  background:    var(--color-secondary);
}

@media print {
  .legal-related-docs,
  .print-hidden {
    display: none !important;
  }
}

.legal-related-docs__header {
  margin-bottom: 2rem;
}

.legal-related-docs__headline {
  font-size:     1.25rem;
  font-weight:   700;
  color:         var(--color-fg);
  margin-bottom: 0.375rem;
}

.legal-related-docs__desc {
  font-size: 0.875rem;
  color:     var(--color-muted-fg);
}

/* ── Card grid — mirrors sm:grid-cols-2 lg:grid-cols-3 ── */
.legal-related-docs__grid {
  list-style: none;
  margin:     0;
  padding:    0;
  display:    grid;
  grid-template-columns: 1fr;
  gap:        1rem;
}

@media (min-width: 640px) {
  .legal-related-docs__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .legal-related-docs__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* ── Card ── */
.legal-related-docs__card {
  display:         flex;
  align-items:     flex-start;
  gap:             1rem;
  padding:         1.25rem;
  background:      var(--color-card);
  border:          1px solid var(--color-border);
  border-radius:   var(--radius-xl);
  text-decoration: none;
  transition:
    border-color var(--duration-fast),
    box-shadow   var(--duration-fast);
  outline:         none;
}

.legal-related-docs__card:hover,
.legal-related-docs__card:focus-visible {
  border-color: hsl( var(--primary) / 0.3 );
  box-shadow:   var(--shadow-sm);
}

.legal-related-docs__card:focus-visible {
  outline:        2px solid var(--color-primary);
  outline-offset: 2px;
}

/* Icon wrapper */
.legal-related-docs__card-icon {
  flex-shrink:     0;
  display:         flex;
  align-items:     center;
  justify-content: center;
  width:           2.25rem;
  height:          2.25rem;
  margin-top:      0.125rem;
  background:      hsl( var(--primary) / 0.1 );
  border-radius:   var(--radius-lg);
  color:           var(--color-primary);
  transition:      background var(--duration-fast);
}

.legal-related-docs__card:hover .legal-related-docs__card-icon {
  background: hsl( var(--primary) / 0.2 );
}

.legal-related-docs__card-icon svg {
  width:  1rem;
  height: 1rem;
}

/* Text body */
.legal-related-docs__card-body {
  flex:    1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap:     0.125rem;
}

.legal-related-docs__card-title {
  display:     block;
  font-size:   0.875rem;
  font-weight: 600;
  color:       var(--color-fg);
  line-height: 1.3;
  transition:  color var(--duration-fast);
}

.legal-related-docs__card:hover .legal-related-docs__card-title {
  color: var(--color-primary);
}

.legal-related-docs__card-desc {
  display:     block;
  font-size:   0.75rem;
  color:       var(--color-muted-fg);
  line-height: 1.5;

  /* Mirrors React's line-clamp-2 */
  overflow:         hidden;
  display:          -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* Arrow */
.legal-related-docs__card-arrow {
  flex-shrink: 0;
  display:     flex;
  align-items: center;
  margin-top:  0.125rem;
  color:       hsl( var(--muted-foreground) / 0.5 );
  transition:
    color     var(--duration-fast),
    transform var(--duration-fast);
}

.legal-related-docs__card-arrow svg {
  width:  1rem;
  height: 1rem;
}

.legal-related-docs__card:hover .legal-related-docs__card-arrow {
  color:     var(--color-primary);
  transform: translateX(2px);
}

/* ─────────────────────────────────────────────────────────────────────────────
   63. Footer nav — fallback link styles (rendered when WP menus are empty)
   ───────────────────────────────────────────────────────────────────────────── */

.footer-nav__link {
  font-size:       0.875rem;
  color:           var(--color-muted-fg);
  text-decoration: none;
  transition:      color var(--duration-fast);
  display:         block;
}

.footer-nav__link:hover,
.footer-nav__link:focus-visible {
  color: var(--color-fg);
}

.footer-nav__link--placeholder {
  color:  hsl( var(--muted-foreground) / 0.4 );
  cursor: default;
}

/*
 * WP-menu-rendered placeholder links (href="#") must match the React
 * disabled style (opacity-50, no pointer) — wp_nav_menu outputs plain
 * anchors, so target them by href.
 */
.footer-nav__list a[href="#"],
.footer-legal-bar a[href="#"] {
  color:          hsl( var(--muted-foreground) / 0.4 );
  cursor:         default;
  pointer-events: none;
}

/* ─────────────────────────────────────────────────────────────────────────────
   64. Cookie banner — legal footer strip
   ───────────────────────────────────────────────────────────────────────────── */

.cookie-banner__footer {
  padding-top:   0.75rem;
  border-top:    1px solid hsl(var(--border) / 0.25);
  text-align:    center;
}

.cookie-banner__legal {
  font-size:  0.6875rem;
  color:      hsl(var(--muted-foreground) / 0.7);
  line-height: 1.6;
  margin:     0;
}

.cookie-banner__legal-link {
  color:               hsl(var(--muted-foreground) / 0.8);
  text-decoration:     underline;
  text-decoration-color: hsl(var(--border));
  text-underline-offset: 2px;
  white-space:         nowrap;
  transition:          color var(--duration-fast), text-decoration-color var(--duration-fast);
}

.cookie-banner__legal-link:hover,
.cookie-banner__legal-link:focus-visible {
  color:                 var(--color-primary);
  text-decoration-color: hsl(var(--primary) / 0.45);
}

/* ─────────────────────────────────────────────────────────────────────────────
   65. Footer legal bar — persistent Cookie Settings button
   ─────────────────────────────────────────────────────────────────────────────
   The [data-cookie-settings] button sits inside .footer-legal-bar__list
   alongside the legal links. It must look identical to the <a> items but
   use <button> semantics since it triggers JS, not navigation.
   ───────────────────────────────────────────────────────────────────────────── */

.footer-legal-bar__cookie-btn {
  font-size:     0.75rem;
  font-family:   inherit;
  color:         var(--color-muted-fg);
  background:    none;
  border:        none;
  padding:       0;
  margin:        0;
  cursor:        pointer;
  border-radius: var(--radius-sm);
  transition:    color var(--duration-fast);
  line-height:   inherit;
}

.footer-legal-bar__cookie-btn:hover,
.footer-legal-bar__cookie-btn:focus-visible {
  color:   var(--color-fg);
  outline: none;
}

.footer-legal-bar__cookie-btn:focus-visible {
  outline:        2px solid var(--color-primary);
  outline-offset: 2px;
}


/* ═══ Merged from parity-blog.css — page parity additions ═══ */
/**
 * parity-blog.css
 *
 * Blog landing parity styles — mirrors React BlogPage.tsx sections:
 *   BlogHero, FeaturedArticle, BlogCategories, LatestArticles, Newsletter.
 * Reuses existing main.css primitives (.container, .badge, .btn) where possible.
 *
 * Merged into the theme build later. Do not import directly.
 */

/* ── Shared helpers ───────────────────────────────────────────────────────── */
.parity-sep {
	color: var(--color-muted-fg);
	opacity: 0.5;
	margin: 0 0.35rem;
}

/* ── BlogHero ─────────────────────────────────────────────────────────────── */
.parity-blog-hero {
	background: var(--color-muted);
	border-bottom: 1px solid var(--color-border);
	padding: 3.5rem 0;
}
@media (min-width: 768px) {
	.parity-blog-hero { padding: 4rem 0; }
}
.parity-blog-hero__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.parity-blog-hero__eyebrow {
	background: var(--color-bg);
	margin-bottom: 1.5rem;
}
.parity-blog-hero__headline {
	font-size: clamp(2rem, 5vw, 3rem);
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 1.5rem;
	max-width: 20ch;
}
.parity-blog-hero__subheadline {
	font-size: 1.125rem;
	color: var(--color-muted-fg);
	max-width: 42rem;
	margin: 0 auto 3rem;
	line-height: 1.6;
}
.parity-blog-hero__filter {
	width: 100%;
	overflow-x: auto;
}
.parity-blog-hero__pills {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Category pill — shared blog/hero pill */
.parity-pill {
	display: inline-flex;
	align-items: center;
	font-size: 0.875rem;
	padding: 0.5rem 1rem;
	border-radius: var(--radius-full);
	border: 1px solid var(--color-border);
	background: var(--color-card);
	color: var(--color-fg);
	font-weight: 500;
	white-space: nowrap;
	text-decoration: none;
	transition: border-color 0.2s, color 0.2s, background-color 0.2s, box-shadow 0.2s;
}
.parity-pill:hover {
	border-color: var(--color-primary);
	color: var(--color-primary);
}
.parity-pill.is-active {
	background: var(--color-primary);
	color: var(--color-primary-fg);
	border-color: var(--color-primary);
	font-weight: 600;
	box-shadow: 0 1px 3px hsl(var(--primary) / 0.2);
}

/* ── FeaturedArticle ──────────────────────────────────────────────────────── */
.parity-blog-featured {
	padding: 4rem 0;
}
.parity-blog-featured__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 3rem;
	gap: 1rem;
}
.parity-blog-featured__headline {
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	font-weight: 700;
	letter-spacing: -0.02em;
}
.parity-blog-featured__layout {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}
@media (min-width: 1024px) {
	.parity-blog-featured__layout { flex-direction: row; }
	.parity-blog-featured__main { width: 60%; }
	.parity-blog-featured__sidebar { width: 40%; }
}
.parity-blog-featured__main {
	display: flex;
	flex-direction: column;
	background: var(--color-card);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-xl);
	overflow: hidden;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.parity-blog-featured__main:hover {
	border-color: hsl(var(--primary) / 0.3);
	box-shadow: 0 4px 12px hsl(0 0% 0% / 0.08);
}
.parity-blog-featured__image {
	position: relative;
	height: 16rem;
	margin: 0;
	overflow: hidden;
	border-bottom: 1px solid hsl(var(--border) / 0.5);
}
.parity-blog-featured__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.parity-blog-featured__image-fallback {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, hsl(var(--primary) / 0.05), hsl(var(--primary) / 0.1), hsl(var(--primary) / 0.05));
	display: flex;
	align-items: flex-end;
	padding: 1.5rem;
}
.parity-blog-featured__image-label {
	font-size: 0.75rem;
	font-weight: 500;
	color: hsl(var(--muted-foreground) / 0.5);
	text-transform: uppercase;
	letter-spacing: 0.15em;
}
.parity-blog-featured__body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: 2rem;
}
.parity-blog-featured__cat {
	align-self: flex-start;
	margin-bottom: 1rem;
	color: var(--color-primary);
	border-color: hsl(var(--primary) / 0.2);
	background: hsl(var(--primary) / 0.05);
}
.parity-blog-featured__title {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 1rem;
}
.parity-blog-featured__title a {
	color: inherit;
	text-decoration: none;
}
.parity-blog-featured__main:hover .parity-blog-featured__title a { color: var(--color-primary); }
.parity-blog-featured__excerpt {
	color: var(--color-muted-fg);
	line-height: 1.6;
	margin-bottom: 2rem;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.parity-blog-featured__footer {
	margin-top: auto;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid hsl(var(--border) / 0.5);
}
@media (min-width: 640px) {
	.parity-blog-featured__footer {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
}
.parity-blog-featured__author,
.parity-article-card__author {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}
.parity-blog-featured__avatar {
	width: 2rem;
	height: 2rem;
	border-radius: var(--radius-full);
	background: hsl(var(--primary) / 0.2);
	border: 1px solid hsl(var(--primary) / 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.625rem;
	font-weight: 700;
	color: var(--color-primary);
	flex-shrink: 0;
}
.parity-blog-featured__author-meta,
.parity-article-card__author-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	font-size: 0.875rem;
	color: var(--color-muted-fg);
}
.parity-blog-featured__author-name { font-weight: 500; color: var(--color-fg); }
.parity-blog-featured__cta { flex-shrink: 0; }

/* Supporting cards */
.parity-blog-featured__sidebar {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}
.parity-blog-featured__supporting {
	display: flex;
	flex-direction: column;
	flex: 1;
	background: var(--color-card);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-lg);
	padding: 1.5rem;
	text-decoration: none;
	min-height: 120px;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.parity-blog-featured__supporting:hover {
	border-color: hsl(var(--primary) / 0.3);
	box-shadow: 0 2px 6px hsl(0 0% 0% / 0.06);
}
.parity-blog-featured__supporting-cat {
	align-self: flex-start;
	margin-bottom: 0.75rem;
	background: hsl(var(--secondary) / 0.5);
}
.parity-blog-featured__supporting-title {
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.35;
	flex-grow: 1;
	margin-bottom: 1rem;
	color: var(--color-fg);
}
.parity-blog-featured__supporting:hover .parity-blog-featured__supporting-title { color: var(--color-primary); }
.parity-blog-featured__supporting-meta {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.75rem;
	color: var(--color-muted-fg);
	padding-top: 1rem;
	border-top: 1px solid hsl(var(--border) / 0.5);
}
.parity-blog-featured__supporting-arrow { color: var(--color-primary); opacity: 0.6; }
.parity-blog-featured__supporting:hover .parity-blog-featured__supporting-arrow { opacity: 1; }

/* ── BlogCategories ───────────────────────────────────────────────────────── */
.parity-blog-categories {
	background: var(--color-muted);
	border-top: 1px solid var(--color-border);
	border-bottom: 1px solid var(--color-border);
	padding: 4rem 0;
}
.parity-blog-categories__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 1rem;
	margin-bottom: 4rem;
}
.parity-blog-categories__header .badge { background: var(--color-bg); }
.parity-blog-categories__headline {
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	font-weight: 700;
	letter-spacing: -0.02em;
}
.parity-blog-categories__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}
@media (min-width: 768px) {
	.parity-blog-categories__grid { grid-template-columns: repeat(2, 1fr); }
	.parity-cat-card--large { grid-column: span 2; }
}
@media (min-width: 1280px) {
	.parity-blog-categories__grid { grid-template-columns: repeat(4, 1fr); }
	.parity-cat-card--large { grid-column: span 2; }
}
.parity-cat-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--color-card);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-xl);
	padding: 1.5rem;
	text-decoration: none;
	transition: border-color 0.2s, box-shadow 0.2s, background-color 0.2s;
}
.parity-cat-card:hover {
	border-color: hsl(var(--primary) / 0.3);
	box-shadow: 0 4px 12px hsl(0 0% 0% / 0.08);
}
.parity-cat-card--large {
	background: hsl(var(--primary) / 0.05);
	border-color: hsl(var(--primary) / 0.2);
	padding: 2rem;
}
.parity-cat-card--large:hover {
	background: hsl(var(--primary) / 0.1);
	border-color: hsl(var(--primary) / 0.4);
}
.parity-cat-card__icon {
	width: 2.5rem;
	height: 2.5rem;
	border-radius: var(--radius-lg);
	background: hsl(var(--primary) / 0.1);
	color: var(--color-primary);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.25rem;
	transition: background-color 0.2s;
}
.parity-cat-card--large .parity-cat-card__icon { width: 3.5rem; height: 3.5rem; }
.parity-cat-card:hover .parity-cat-card__icon { background: hsl(var(--primary) / 0.2); }
.parity-cat-card__title {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--color-fg);
}
.parity-cat-card--large .parity-cat-card__title { font-size: 1.5rem; }
.parity-cat-card:hover .parity-cat-card__title { color: var(--color-primary); }
.parity-cat-card__desc {
	font-size: 0.75rem;
	color: var(--color-muted-fg);
	flex-grow: 1;
	margin-bottom: 1.5rem;
	line-height: 1.5;
}
.parity-cat-card--large .parity-cat-card__desc { font-size: 1rem; max-width: 28rem; }
.parity-cat-card__footer {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.75rem;
	color: var(--color-muted-fg);
	padding-top: 1rem;
	border-top: 1px solid hsl(var(--border) / 0.5);
}
.parity-cat-card__browse {
	display: flex;
	align-items: center;
	gap: 0.25rem;
	color: var(--color-primary);
	font-weight: 500;
	opacity: 0;
	transform: translateX(-0.5rem);
	transition: opacity 0.2s, transform 0.2s;
}
.parity-cat-card:hover .parity-cat-card__browse { opacity: 1; transform: translateX(0); }

/* ── LatestArticles ───────────────────────────────────────────────────────── */
.parity-blog-latest {
	padding: 5rem 0;
}
.parity-blog-latest__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 1rem;
	margin-bottom: 4rem;
}
.parity-blog-latest__headline {
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	font-weight: 700;
	letter-spacing: -0.02em;
}
.parity-blog-latest__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin-bottom: 4rem;
}
@media (min-width: 768px) {
	.parity-blog-latest__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
	.parity-blog-latest__grid { grid-template-columns: repeat(3, 1fr); }
}
.parity-article-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--color-card);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-xl);
	overflow: hidden;
	text-decoration: none;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.parity-article-card:hover {
	border-color: hsl(var(--primary) / 0.3);
	box-shadow: 0 6px 16px hsl(0 0% 0% / 0.1);
}
.parity-article-card__image {
	position: relative;
	height: 11rem;
	margin: 0;
	overflow: hidden;
	border-bottom: 1px solid hsl(var(--border) / 0.4);
	flex-shrink: 0;
}
.parity-article-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.parity-article-card__image-fallback {
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, hsl(var(--primary) / 0.05), hsl(var(--primary) / 0.15));
}
.parity-article-card__cat {
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	background: hsl(var(--background) / 0.85);
	backdrop-filter: blur(4px);
	border-color: transparent;
	font-size: 0.75rem;
}
.parity-article-card__body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: 1.25rem;
}
@media (min-width: 768px) {
	.parity-article-card__body { padding: 1.5rem; }
}
.parity-article-card__title {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: 0.75rem;
	color: var(--color-fg);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.parity-article-card:hover .parity-article-card__title { color: var(--color-primary); }
.parity-article-card__excerpt {
	font-size: 0.875rem;
	color: var(--color-muted-fg);
	line-height: 1.6;
	margin-bottom: 1.5rem;
	flex-grow: 1;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.parity-article-card__footer {
	margin-top: auto;
	display: flex;
	align-items: center;
	padding-top: 1rem;
	border-top: 1px solid hsl(var(--border) / 0.5);
}
.parity-article-card__avatar {
	width: 1.5rem;
	height: 1.5rem;
	border-radius: var(--radius-full);
	background: hsl(var(--primary) / 0.2);
	border: 1px solid hsl(var(--primary) / 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.5rem;
	font-weight: 700;
	color: var(--color-primary);
	flex-shrink: 0;
}
.parity-article-card__author-meta { font-size: 0.75rem; gap: 0.25rem; }
.parity-article-card__author-name { font-weight: 500; color: var(--color-fg); }
.parity-article-card__arrow {
	margin-left: auto;
	color: hsl(var(--primary) / 0.6);
	flex-shrink: 0;
}
.parity-article-card:hover .parity-article-card__arrow { color: var(--color-primary); }

.parity-blog-latest__more {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 1rem;
}
.parity-blog-latest__more-btn { min-width: 200px; }
.parity-blog-latest__count {
	font-size: 0.75rem;
	color: var(--color-muted-fg);
}
.parity-blog-latest__empty {
	text-align: center;
	color: var(--color-muted-fg);
	padding: 3rem 0;
}

/* ── Newsletter ───────────────────────────────────────────────────────────── */
.parity-newsletter {
	background: var(--color-primary);
	color: #fff;
	padding: 5rem 0;
}
.parity-newsletter__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.parity-newsletter__eyebrow {
	font-size: 0.875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	color: hsl(0 0% 100% / 0.6);
	margin-bottom: 1rem;
}
.parity-newsletter__headline {
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	font-weight: 700;
	color: #fff;
	margin-bottom: 1.5rem;
}
.parity-newsletter__copy {
	font-size: 1.125rem;
	color: hsl(0 0% 100% / 0.8);
	max-width: 36rem;
	margin: 0 auto 2.5rem;
}
.parity-newsletter__form {
	width: 100%;
	max-width: 28rem;
	margin: 0 auto;
}
.parity-newsletter__input-row {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}
@media (min-width: 640px) {
	.parity-newsletter__input-row { flex-direction: row; }
}
.parity-newsletter__input {
	flex: 1;
	background: hsl(0 0% 100% / 0.1);
	border: 1px solid hsl(0 0% 100% / 0.2);
	border-radius: var(--radius-lg);
	padding: 0.75rem 1rem;
	color: #fff;
}
.parity-newsletter__input::placeholder { color: hsl(0 0% 100% / 0.4); }
.parity-newsletter__input:focus {
	outline: none;
	border-color: hsl(0 0% 100% / 0.6);
}
.parity-newsletter__submit {
	background: #fff;
	color: var(--color-primary);
	font-weight: 600;
	padding: 0.75rem 1.5rem;
	border-radius: var(--radius-lg);
	border: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color 0.2s;
}
.parity-newsletter__submit:hover { background: hsl(0 0% 100% / 0.9); }
.parity-newsletter__message { margin-top: 0.75rem; color: #fff; }
.parity-newsletter__fine-print {
	font-size: 0.75rem;
	color: hsl(0 0% 100% / 0.5);
	margin: 2rem 0 1.5rem;
}
.parity-newsletter__bullets {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.75rem 1.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.parity-newsletter__bullet {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.75rem;
	color: hsl(0 0% 100% / 0.8);
}
.parity-newsletter__bullet-icon { color: hsl(0 0% 100% / 0.6); display: inline-flex; }


/* ═══ Merged from parity-industries.css — page parity additions ═══ */
/* ─────────────────────────────────────────────────────────────────────────────
   Industries page — React parity additions
   (merge into main.css; classes here supplement §41 Industries page)
   React truth: src/pages/IndustriesPage.tsx + src/sections/industries/*
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Hero: floating industry pills + trust bar ── */
.industries-hero__floating { position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; }
@media (max-width: 1024px) { .industries-hero__floating { display: none; } }
.industries-hero__pill { position: absolute; display: inline-flex; align-items: center; gap: 0.625rem; padding: 0.5rem 1rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.1); border-radius: 9999px; backdrop-filter: blur(12px); }
.industries-hero__pill-icon { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); }
.industries-hero__pill-label { font-size: 0.875rem; font-weight: 500; color: var(--color-text-primary, #fff); }
.industries-hero__pill--1 { top: 15%; left: 8%; }
.industries-hero__pill--2 { top: 25%; right: 12%; }
.industries-hero__pill--3 { bottom: 35%; left: 10%; }
.industries-hero__pill--4 { bottom: 20%; right: 15%; }
.industries-hero__pill--5 { top: 45%; left: 5%; }
.industries-hero__pill--6 { top: 50%; right: 8%; }

.industries-hero__trust { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: 3rem; opacity: 0.8; }
.industries-hero__trust-rule { display: none; width: 3rem; height: 1px; background: rgba(255,255,255,0.2); }
@media (min-width: 640px) { .industries-hero__trust-rule { display: block; } }
.industries-hero__trust-text { font-size: 0.8125rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.15em; color: var(--color-text-secondary, rgba(255,255,255,0.6)); }

/* ── Overview: pillars + network visual ── */
.industries-overview__pillars { list-style: none; padding: 0; margin: 1.5rem 0 2rem; display: flex; flex-direction: column; gap: 1.5rem; }
.industries-overview__pillar { display: flex; align-items: flex-start; gap: 1rem; }
.industries-overview__pillar-icon { display: inline-flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; border-radius: 0.625rem; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); flex-shrink: 0; margin-top: 0.125rem; }
.industries-overview__pillar-body { display: flex; flex-direction: column; }
.industries-overview__pillar-title { font-size: 1rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }
.industries-overview__pillar-desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

.industries-overview__visual { display: flex; align-items: center; justify-content: center; }
.industries-overview__hub-card { position: relative; width: 100%; max-width: 460px; aspect-ratio: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.5rem; padding: 2rem; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); border-radius: 1.5rem; overflow: hidden; }
.industries-overview__hub-card::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at top left, color-mix(in srgb, var(--color-brand-primary) 8%, transparent), transparent 60%); pointer-events: none; }
.industries-overview__hub { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 8rem; height: 8rem; border-radius: 50%; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 25%, transparent); color: var(--color-brand-primary); }
.industries-overview__hub-icon { margin-bottom: 0.5rem; }
.industries-overview__hub-label { font-size: 0.75rem; font-weight: 700; line-height: 1.15; text-align: center; color: var(--color-text-primary, #fff); }
.industries-overview__nodes { position: relative; z-index: 1; list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 0.5rem; justify-content: center; }
.industries-overview__node { display: inline-flex; align-items: center; gap: 0.375rem; padding: 0.375rem 0.75rem; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 9999px; }
.industries-overview__node-icon { color: var(--color-brand-primary); display: inline-flex; }
.industries-overview__node-label { font-size: 0.75rem; font-weight: 600; color: var(--color-text-primary, #fff); }

/* ── Industry grid: challenge / solution / outcome cards ── */
.industries-grid__card-head { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(255,255,255,0.08); }
.industries-grid__card-head .industries-grid__icon { width: 2.5rem; height: 2.5rem; margin: 0; display: inline-flex; align-items: center; justify-content: center; border-radius: 0.75rem; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); flex-shrink: 0; }
.industries-grid__block { margin-bottom: 1rem; }
.industries-grid__label { display: block; font-size: 0.6875rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 0.25rem; }
.industries-grid__label--challenge { color: var(--color-text-secondary, rgba(255,255,255,0.55)); }
.industries-grid__label--solution { color: var(--color-brand-primary); }
.industries-grid__text { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.75)); margin: 0; }
.industries-grid__outcome { margin-top: auto; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,0.08); display: flex; justify-content: flex-end; }
.industries-grid__badge { display: inline-block; font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem; border-radius: 9999px; background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent); color: var(--color-brand-primary); }

/* ── Metrics: icon accent ── */
.industries-metrics__card { position: relative; text-align: left; }
.industries-metrics__icon { position: absolute; top: 1.5rem; right: 1.5rem; color: var(--color-text-primary, #fff); opacity: 0.2; display: inline-flex; }

/* ── Journey: icon in node ── */
.industries-journey__step-num { color: var(--color-brand-primary); }

/* ── Spotlight: intro + tabs + panels ── */
.industries-spotlight__intro { max-width: 48rem; margin-bottom: 3rem; }
.industries-spotlight__eyebrow { margin-bottom: 1rem; }
.industries-spotlight__headline { font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; margin-bottom: 1.25rem; color: var(--color-text-primary, #fff); }
.industries-spotlight__copy { font-size: 1.0625rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.75)); margin: 0; }

.industries-spotlight__tabs { display: flex; gap: 0.5rem; overflow-x: auto; padding-bottom: 0.5rem; margin-bottom: 2.5rem; scrollbar-width: none; -ms-overflow-style: none; }
.industries-spotlight__tabs::-webkit-scrollbar { display: none; }
.industries-spotlight__tab { flex-shrink: 0; padding: 0.75rem 1.5rem; border: none; border-radius: 9999px; font-size: 0.875rem; font-weight: 600; white-space: nowrap; cursor: pointer; background: rgba(255,255,255,0.06); color: var(--color-text-primary, #fff); transition: background-color 0.2s, color 0.2s; }
.industries-spotlight__tab:hover { background: rgba(255,255,255,0.1); }
.industries-spotlight__tab.is-active { background: var(--color-brand-primary); color: #fff; box-shadow: 0 4px 14px color-mix(in srgb, var(--color-brand-primary) 30%, transparent); }
.industries-spotlight__tab:focus-visible { outline: 2px solid var(--color-brand-primary); outline-offset: 2px; }

.industries-spotlight__panel { opacity: 0; transition: opacity 0.2s ease-out; }
.industries-spotlight__panel[hidden] { display: none; }
.industries-spotlight__panel.is-visible { opacity: 1; }
.industries-spotlight__panel-grid { display: grid; grid-template-columns: 7fr 5fr; gap: 3rem; }
@media (max-width: 900px) { .industries-spotlight__panel-grid { grid-template-columns: 1fr; gap: 2rem; } }
.industries-spotlight__panel-main { display: flex; flex-direction: column; gap: 2rem; }
.industries-spotlight__overview { font-size: 1.0625rem; line-height: 1.7; color: var(--color-text-primary, rgba(255,255,255,0.9)); margin: 0; }
.industries-spotlight__lists { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
@media (max-width: 560px) { .industries-spotlight__lists { grid-template-columns: 1fr; } }
.industries-spotlight__list-title { font-size: 0.8125rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-brand-primary); margin: 0 0 1rem; }
.industries-spotlight__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.75rem; }
.industries-spotlight__list-item { display: flex; align-items: flex-start; gap: 0.5rem; font-size: 0.875rem; line-height: 1.5; color: var(--color-text-secondary, rgba(255,255,255,0.75)); }
.industries-spotlight__dot { width: 0.375rem; height: 0.375rem; border-radius: 50%; background: var(--color-brand-primary); flex-shrink: 0; margin-top: 0.5rem; }

.industries-spotlight__panel-side { display: flex; flex-direction: column; gap: 2rem; }
.industries-spotlight__benefits-card { padding: 2rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; }
.industries-spotlight__benefits-title { font-size: 1.0625rem; font-weight: 600; margin: 0 0 1.5rem; color: var(--color-text-primary, #fff); }
.industries-spotlight__benefits { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1rem; }
.industries-spotlight__benefit { display: flex; align-items: center; gap: 0.75rem; font-size: 0.875rem; font-weight: 500; color: var(--color-text-primary, rgba(255,255,255,0.9)); }
.industries-spotlight__benefit-icon { color: var(--color-brand-primary); flex-shrink: 0; display: inline-flex; }
.industries-spotlight__roi { padding: 2rem; background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent); border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent); border-radius: 1rem; }
.industries-spotlight__roi-eyebrow { display: block; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--color-brand-primary); margin-bottom: 0.5rem; }
.industries-spotlight__roi-text { font-size: 1.0625rem; font-weight: 600; line-height: 1.5; color: var(--color-brand-primary); margin: 0; }


/* ═══ Merged from parity-legal.css — page parity additions ═══ */
/**
 * parity-legal.css
 *
 * Legal hub + single legal document parity styles — mirrors React
 * LegalPage.tsx and LegalDocPage.tsx (LegalHero, LegalDocuments,
 * breadcrumb, two-column body + TOC, LegalRelatedDocuments).
 * Reuses existing main.css primitives (.container, .badge, .btn) where possible.
 *
 * Merged into the theme build later. Do not import directly.
 */

.parity-sep {
	color: var(--color-muted-fg);
	opacity: 0.5;
	margin: 0 0.35rem;
}

/* ── LegalHero ────────────────────────────────────────────────────────────── */
.parity-legal-hero {
	background: var(--color-muted);
	border-bottom: 1px solid var(--color-border);
	padding: 3.5rem 0;
}
@media (min-width: 768px) {
	.parity-legal-hero { padding: 5rem 0; }
}
.parity-legal-hero__inner {
	max-width: 48rem;
	margin: 0 auto;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.parity-legal-hero__eyebrow {
	margin-bottom: 1.5rem;
	background: var(--color-secondary);
	color: var(--color-secondary-fg);
}
.parity-legal-hero__headline {
	font-size: clamp(1.75rem, 4vw, 2.5rem);
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 1.25rem;
}
.parity-legal-hero__description {
	font-size: 1.125rem;
	color: var(--color-muted-fg);
	max-width: 36rem;
	margin: 0 auto 2rem;
	line-height: 1.6;
}
.parity-legal-hero__metadata {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem 1.5rem;
	margin-bottom: 2rem;
	font-size: 0.875rem;
	color: var(--color-muted-fg);
}
.parity-legal-hero__meta-item {
	display: flex;
	align-items: center;
	gap: 0.375rem;
}
.parity-legal-hero__meta-label { font-weight: 500; color: var(--color-fg); }
.parity-legal-hero__version {
	font-family: var(--font-mono);
	font-size: 0.75rem;
	background: var(--color-muted);
	padding: 0.125rem 0.5rem;
	border-radius: var(--radius-sm);
	border: 1px solid var(--color-border);
}
.parity-legal-hero__status {
	display: inline-flex;
	align-items: center;
	padding: 0.125rem 0.625rem;
	border-radius: var(--radius-full);
	font-size: 0.75rem;
	font-weight: 600;
	border: 1px solid;
}
.parity-legal-hero__status--current { background: hsl(142 71% 45% / 0.1); color: hsl(142 71% 32%); border-color: hsl(142 71% 45% / 0.2); }
.parity-legal-hero__status--draft { background: hsl(38 92% 50% / 0.1); color: hsl(38 92% 38%); border-color: hsl(38 92% 50% / 0.2); }
.parity-legal-hero__status--review { background: hsl(217 91% 60% / 0.1); color: hsl(217 91% 45%); border-color: hsl(217 91% 60% / 0.2); }
.parity-legal-hero__status--archived { background: var(--color-muted); color: var(--color-muted-fg); border-color: var(--color-border); }
.parity-legal-hero__badges {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
}
.parity-legal-hero__trust-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.375rem 1rem;
	border-radius: var(--radius-full);
	background: var(--color-bg);
	border: 1px solid var(--color-border);
	font-size: 0.875rem;
	font-weight: 500;
	color: var(--color-muted-fg);
	box-shadow: 0 1px 2px hsl(0 0% 0% / 0.05);
}

/* ── LegalDocuments (hub grid) ────────────────────────────────────────────── */
.parity-legal-documents {
	padding: 5rem 0;
}
.parity-legal-documents__header {
	max-width: 48rem;
	margin-bottom: 4rem;
}
.parity-legal-documents__header .badge { margin-bottom: 1rem; }
.parity-legal-documents__headline {
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 1rem;
}
.parity-legal-documents__description {
	font-size: 1.125rem;
	color: var(--color-muted-fg);
}
.parity-legal-documents__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}
@media (min-width: 768px) {
	.parity-legal-documents__grid { grid-template-columns: repeat(2, 1fr); }
}
.parity-legal-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--color-card);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-xl);
	padding: 1.5rem;
	text-decoration: none;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.parity-legal-card:hover {
	border-color: hsl(var(--primary) / 0.3);
	box-shadow: 0 4px 12px hsl(0 0% 0% / 0.08);
}
.parity-legal-card__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1rem;
}
.parity-legal-card__icon {
	background: hsl(var(--primary) / 0.1);
	color: var(--color-primary);
	border-radius: var(--radius-lg);
	padding: 0.625rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.parity-legal-card__required {
	display: inline-flex;
	align-items: center;
	border-radius: var(--radius-full);
	border: 1px solid hsl(0 84% 60% / 0.3);
	background: hsl(0 84% 60% / 0.1);
	padding: 0.125rem 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: hsl(0 72% 45%);
}
.parity-legal-card__title {
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
	color: var(--color-fg);
}
.parity-legal-card__desc {
	font-size: 0.875rem;
	color: var(--color-muted-fg);
	flex-grow: 1;
	line-height: 1.6;
}
.parity-legal-card__meta {
	margin-top: 1.5rem;
	display: flex;
	align-items: center;
	gap: 0.375rem;
	padding-top: 1rem;
	border-top: 1px solid var(--color-border);
	font-size: 0.75rem;
	color: var(--color-muted-fg);
}
.parity-legal-card__version { font-family: var(--font-mono); }
.parity-legal-card__arrow {
	margin-left: auto;
	color: hsl(var(--primary) / 0.6);
	display: inline-flex;
}
.parity-legal-card:hover .parity-legal-card__arrow { color: var(--color-primary); }

/* ── Single doc: breadcrumb ───────────────────────────────────────────────── */
.parity-legal-breadcrumb {
	border-bottom: 1px solid var(--color-border);
	background: hsl(var(--background) / 0.95);
	backdrop-filter: blur(4px);
}
.parity-legal-breadcrumb__inner {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.75rem 0;
}
.parity-legal-breadcrumb__back {
	gap: 0.375rem;
	font-size: 0.875rem;
	color: var(--color-muted-fg);
}
.parity-legal-breadcrumb__back:hover { color: var(--color-fg); }
.parity-legal-breadcrumb__sep {
	color: hsl(var(--muted-foreground) / 0.4);
	font-size: 0.875rem;
}
.parity-legal-breadcrumb__current {
	font-size: 0.875rem;
	color: var(--color-fg);
	font-weight: 500;
}

/* ── Single doc: two-column body + TOC ────────────────────────────────────── */
.parity-legal-main {
	padding: 0;
}
.parity-legal-main__layout {
	display: flex;
	align-items: flex-start;
	gap: 3rem;
}
@media (min-width: 1280px) {
	.parity-legal-main__layout { gap: 4rem; }
}
.parity-legal-main__toc-col {
	display: none;
	flex-shrink: 0;
	width: 16rem;
	position: sticky;
	top: 6rem;
}
@media (min-width: 1024px) {
	.parity-legal-main__toc-col { display: block; }
}
.parity-legal-main__content {
	flex: 1;
	min-width: 0;
}
.parity-legal-main__prose {
	max-width: 780px;
	width: 100%;
	margin: 0 auto;
	padding: 3rem 0;
}
@media (min-width: 768px) {
	.parity-legal-main__prose { padding: 4rem 0; }
}

/* ── Print ───────────────────────────────────────────────────────────────── */
@media print {
	.print-hidden,
	.parity-legal-breadcrumb,
	.parity-legal-hero__badges { display: none !important; }
}


/* ═══ Merged from parity-resources.css — page parity additions ═══ */
/**
 * Aigenttra Theme — parity-resources.css
 *
 * Parity styles for the Resources page rewrite. These rules cover the NEW
 * structural elements introduced to match the React source of truth
 * (artifacts/aigenttra-web/src/pages/ResourcesPage.tsx and its sections).
 * Base wrappers, hero, and grid classes already live in assets/css/main.css
 * and are reused wherever possible — this file only adds what is missing.
 *
 * To be merged into main.css later.
 *
 * @package Aigenttra
 * @since   1.0.0
 */

/* ─── Hero: trust line + floating document cards ──────────────────────────── */
.resources-hero__trust {
	margin-top: 1.5rem;
	font-size: 0.75rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.18em;
	color: rgba(255, 255, 255, 0.6);
}
.resources-hero__cards {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	overflow: hidden;
	display: none;
}
@media (min-width: 1024px) {
	.resources-hero__cards { display: block; }
}
.resources-hero__card {
	position: absolute;
	min-width: 200px;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1rem;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 0.75rem;
	backdrop-filter: blur(16px);
}
.resources-hero__card:nth-child(1) { top: 15%; left: 5%; }
.resources-hero__card:nth-child(2) { top: 25%; right: 8%; }
.resources-hero__card:nth-child(3) { bottom: 25%; left: 8%; }
.resources-hero__card:nth-child(4) { bottom: 15%; right: 5%; }
.resources-hero__card-top { display: flex; align-items: flex-start; justify-content: space-between; }
.resources-hero__card-icon {
	width: 2rem; height: 2rem;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 0.375rem;
	background: color-mix(in srgb, var(--color-brand-primary) 15%, transparent);
	color: var(--color-brand-primary);
}
.resources-hero__card-icon svg { width: 16px; height: 16px; }
.resources-hero__card-badge {
	font-size: 0.625rem;
	font-family: var(--font-mono, monospace);
	padding: 0.125rem 0.5rem;
	border-radius: 9999px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: rgba(255, 255, 255, 0.7);
}
.resources-hero__card-title { font-size: 0.875rem; font-weight: 600; color: #fff; }

/* ─── Knowledge categories: span + tags ───────────────────────────────────── */
.resources-categories__grid { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1024px) { .resources-categories__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { .resources-categories__grid { grid-template-columns: 1fr; } }
.resources-categories__card--span-2 { grid-column: span 2; }
@media (max-width: 640px) { .resources-categories__card--span-2 { grid-column: span 1; } }
.resources-categories__card-link { align-items: flex-start; flex-direction: column; }
.resources-categories__tags { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1rem; }
.resources-categories__tag {
	font-size: 0.625rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.08em;
	padding: 0.25rem 0.5rem; border-radius: 0.375rem;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.65);
}

/* ─── Featured resources: lead + aside layout ─────────────────────────────── */
.resources-featured__layout { display: grid; grid-template-columns: 6fr 4fr; gap: 3rem; margin-top: 2rem; }
@media (max-width: 1024px) { .resources-featured__layout { grid-template-columns: 1fr; gap: 2rem; } }
.resources-featured__lead { display: flex; flex-direction: column; }
.resources-featured__lead-visual {
	aspect-ratio: 16 / 9;
	border-radius: 1rem;
	background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent);
	border: 1px solid rgba(255, 255, 255, 0.1);
	display: flex; align-items: center; justify-content: center;
	margin-bottom: 2rem;
}
.resources-featured__lead-visual-label {
	font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.18em;
	color: var(--color-brand-primary);
	padding: 1rem 1.5rem; border-radius: 0.75rem;
	background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1);
}
.resources-featured__lead-body { display: flex; flex-direction: column; flex: 1; }
.resources-featured__lead-meta { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; }
.resources-featured__badge {
	font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem; border-radius: 9999px;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	color: var(--color-brand-primary);
}
.resources-featured__lead-title { font-size: clamp(1.25rem, 2.5vw, 1.75rem); font-weight: 700; line-height: 1.3; margin-bottom: 1rem; }
.resources-featured__lead-title a { color: var(--color-text-primary, #fff); text-decoration: none; }
.resources-featured__lead-title a:hover { color: var(--color-brand-primary); }
.resources-featured__lead-excerpt { font-size: 1rem; line-height: 1.7; color: var(--color-text-secondary, rgba(255,255,255,0.7)); margin-bottom: 2rem; }
.resources-featured__lead-footer { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: auto; flex-wrap: wrap; }
.resources-featured__author { display: flex; align-items: center; gap: 0.75rem; }
.resources-featured__author-avatar {
	width: 2rem; height: 2rem; border-radius: 9999px;
	background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.12);
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 0.75rem; font-weight: 600; color: #fff;
}
.resources-featured__author-meta { display: flex; flex-direction: column; }
.resources-featured__author-name { font-size: 0.875rem; font-weight: 500; color: #fff; }
.resources-featured__author-date { font-size: 0.75rem; color: rgba(255, 255, 255, 0.55); }
.resources-featured__aside { display: flex; flex-direction: column; gap: 1rem; }
.resources-featured__aside-label { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.18em; color: rgba(255, 255, 255, 0.55); }
.resources-featured__card {
	display: flex; flex-direction: column;
	padding: 1.5rem; border-radius: 0.75rem; text-decoration: none;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-left: 2px solid var(--color-brand-primary);
	transition: box-shadow 0.2s, border-color 0.2s;
}
.resources-featured__card:hover { box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2); }
.resources-featured__card-badge {
	align-self: flex-start;
	font-size: 0.625rem; text-transform: uppercase; letter-spacing: 0.08em;
	padding: 0.25rem 0.5rem; border-radius: 0.375rem; margin-bottom: 1rem;
	background: rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.7);
}
.resources-featured__card-title { font-size: 1rem; font-weight: 600; line-height: 1.4; color: #fff; margin-bottom: 1.5rem; }
.resources-featured__card-footer { display: flex; align-items: center; gap: 1rem; margin-top: auto; }
.resources-featured__card-meta { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.75rem; color: rgba(255, 255, 255, 0.55); }
.resources-featured__prompt {
	margin-top: 1rem; padding: 1.5rem; border-radius: 0.75rem; text-align: center;
	border: 1px dashed rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.03);
	display: flex; flex-direction: column; align-items: center; gap: 0.75rem;
}
.resources-featured__prompt-text { font-size: 0.875rem; color: rgba(255, 255, 255, 0.7); }
.resources-featured__prompt-link { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; }

/* ─── Documentation Hub: intro + tabs + panels ────────────────────────────── */
.resources-docs-hub__intro { max-width: 48rem; margin-bottom: 3rem; }
.resources-docs-hub__layout { display: grid; grid-template-columns: 1fr 2fr; gap: 3rem; align-items: start; }
@media (max-width: 1024px) { .resources-docs-hub__layout { grid-template-columns: 1fr; gap: 2rem; } }
.resources-docs-hub__tablist { display: flex; flex-direction: column; gap: 0.25rem; position: sticky; top: 6rem; }
@media (max-width: 1024px) { .resources-docs-hub__tablist { position: static; flex-direction: row; flex-wrap: wrap; } }
.resources-docs-hub__tab {
	display: flex; align-items: center; gap: 0.75rem;
	padding: 0.75rem 1rem; border-radius: 0.5rem; text-align: left;
	background: transparent; border: 0; border-left: 2px solid transparent;
	color: rgba(255, 255, 255, 0.6); font-size: 0.9375rem; cursor: pointer;
	transition: background 0.2s, color 0.2s;
}
.resources-docs-hub__tab:hover { background: rgba(255, 255, 255, 0.04); color: #fff; }
.resources-docs-hub__tab.is-active {
	background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent);
	border-left-color: var(--color-brand-primary);
	color: var(--color-brand-primary); font-weight: 500;
}
.resources-docs-hub__tab-icon { display: inline-flex; }
.resources-docs-hub__panel {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 1rem; padding: 2rem;
	display: flex; flex-direction: column;
}
.resources-docs-hub__panel[hidden] { display: none; }
.resources-docs-hub__panel-head { display: flex; align-items: center; gap: 0.75rem; padding-bottom: 1.5rem; margin-bottom: 2rem; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__panel-icon {
	width: 3rem; height: 3rem; border-radius: 0.75rem;
	display: inline-flex; align-items: center; justify-content: center;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	color: var(--color-brand-primary);
}
.resources-docs-hub__panel-title { font-size: 1.25rem; font-weight: 700; color: #fff; }
.resources-docs-hub__panel-sub { font-size: 0.875rem; color: rgba(255, 255, 255, 0.55); }
.resources-docs-hub__panel-body { flex: 1; margin-bottom: 2rem; }
.resources-docs-hub__note {
	font-size: 0.75rem; font-style: italic; color: rgba(255, 255, 255, 0.6);
	padding: 0.75rem; margin-bottom: 1rem; border-radius: 0.5rem;
	background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent);
	border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent);
}
.resources-docs-hub__steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 1rem; }
.resources-docs-hub__step { display: flex; align-items: flex-start; gap: 1rem; padding: 1rem; border-radius: 0.75rem; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__step-num {
	flex-shrink: 0; width: 2rem; height: 2rem; border-radius: 9999px;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 0.875rem; font-weight: 700;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary);
}
.resources-docs-hub__step-title { font-size: 0.875rem; font-weight: 600; color: #fff; margin-bottom: 0.25rem; }
.resources-docs-hub__code {
	display: inline-block; font-family: var(--font-mono, monospace); font-size: 0.75rem;
	padding: 0.25rem 0.5rem; border-radius: 0.375rem;
	background: rgba(0, 0, 0, 0.35); border: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.8);
}
.resources-docs-hub__table { width: 100%; border-collapse: collapse; font-size: 0.875rem; border-radius: 0.75rem; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__table th { text-align: left; font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.06em; padding: 0.75rem 1rem; background: rgba(255, 255, 255, 0.05); color: rgba(255, 255, 255, 0.6); }
.resources-docs-hub__table td { padding: 0.75rem 1rem; border-top: 1px solid rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.75); }
.resources-docs-hub__method { font-family: var(--font-mono, monospace); font-size: 0.75rem; font-weight: 600; padding: 0.125rem 0.5rem; border-radius: 0.375rem; background: rgba(255, 255, 255, 0.08); color: #fff; }
.resources-docs-hub__stack { display: flex; flex-direction: column; gap: 1rem; }
.resources-docs-hub__row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.25rem; border-radius: 0.75rem; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__row-title { font-size: 0.9375rem; font-weight: 600; color: #fff; margin-bottom: 0.25rem; }
.resources-docs-hub__row-desc { font-size: 0.875rem; line-height: 1.6; color: rgba(255, 255, 255, 0.7); margin-bottom: 1rem; }
.resources-docs-hub__badge { flex-shrink: 0; font-size: 0.75rem; padding: 0.25rem 0.625rem; border-radius: 9999px; border: 1px solid rgba(255, 255, 255, 0.15); color: rgba(255, 255, 255, 0.75); }
.resources-docs-hub__sdk-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.resources-docs-hub__sdk { display: flex; align-items: flex-start; justify-content: space-between; gap: 0.5rem; padding: 1rem; border-radius: 0.75rem; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__sdk-lang { font-size: 0.875rem; font-weight: 600; color: #fff; }
.resources-docs-hub__terminal { background: #0d1117; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 0.75rem; padding: 1.5rem; overflow-x: auto; }
.resources-docs-hub__terminal code { font-family: var(--font-mono, monospace); font-size: 0.8125rem; line-height: 1.8; color: rgba(255, 255, 255, 0.75); white-space: pre; }
.resources-docs-hub__integrations { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
@media (max-width: 640px) { .resources-docs-hub__integrations { grid-template-columns: repeat(2, 1fr); } }
.resources-docs-hub__integration { height: 6rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.5rem; border-radius: 0.75rem; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__integration-icon { color: rgba(255, 255, 255, 0.6); }
.resources-docs-hub__integration-name { font-size: 0.75rem; font-weight: 500; color: rgba(255, 255, 255, 0.8); }
.resources-docs-hub__arch { display: flex; flex-direction: column; align-items: stretch; }
.resources-docs-hub__arch-layer { text-align: center; padding: 1rem; border-radius: 0.75rem; border: 2px dashed rgba(255, 255, 255, 0.15); background: rgba(255, 255, 255, 0.03); }
.resources-docs-hub__arch-layer--gateway { border-color: color-mix(in srgb, var(--color-brand-primary) 30%, transparent); background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); }
.resources-docs-hub__arch-title { display: block; font-weight: 700; color: #fff; margin-bottom: 0.25rem; }
.resources-docs-hub__arch-desc { display: block; font-size: 0.75rem; color: rgba(255, 255, 255, 0.65); }
.resources-docs-hub__arch-connector { display: block; width: 1px; height: 1.5rem; margin: 0 auto; background: rgba(255, 255, 255, 0.15); }
.resources-docs-hub__events { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.75rem; }
.resources-docs-hub__event { display: flex; align-items: center; gap: 0.75rem; padding: 0.75rem; border-radius: 0.5rem; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__event-dot { width: 0.5rem; height: 0.5rem; border-radius: 9999px; background: color-mix(in srgb, var(--color-brand-primary) 60%, transparent); flex-shrink: 0; }
.resources-docs-hub__panel-foot { margin-top: auto; padding-top: 1.5rem; border-top: 1px solid rgba(255, 255, 255, 0.08); }
.resources-docs-hub__panel-link { display: inline-flex; align-items: center; gap: 0.5rem; font-weight: 500; color: var(--color-brand-primary); text-decoration: none; }

/* ─── Learning Paths: tabs + panels ───────────────────────────────────────── */
.resources-learning-paths__tablist { display: flex; flex-wrap: wrap; gap: 0.5rem; justify-content: center; margin: 2rem 0 3rem; }
.resources-learning-paths__tab {
	display: inline-flex; align-items: center; gap: 0.5rem;
	padding: 0.75rem 1.5rem; border-radius: 9999px; border: 0; cursor: pointer;
	font-size: 0.875rem; font-weight: 500;
	background: rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.7);
	transition: background 0.2s, color 0.2s;
}
.resources-learning-paths__tab:hover { background: rgba(255, 255, 255, 0.1); color: #fff; }
.resources-learning-paths__tab.is-active { background: var(--color-brand-primary); color: #fff; }
.resources-learning-paths__tab-icon { display: inline-flex; }
.resources-learning-paths__panel {
	display: grid; grid-template-columns: 5fr 7fr; overflow: hidden;
	border-radius: 1.5rem; border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.03);
}
.resources-learning-paths__panel[hidden] { display: none; }
@media (max-width: 768px) { .resources-learning-paths__panel { grid-template-columns: 1fr; } }
.resources-learning-paths__panel-info { padding: 3rem; border-right: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.02); display: flex; flex-direction: column; justify-content: center; }
@media (max-width: 768px) { .resources-learning-paths__panel-info { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.08); padding: 2rem; } }
.resources-learning-paths__panel-meta { display: flex; gap: 0.75rem; margin-bottom: 1.5rem; }
.resources-learning-paths__badge { font-size: 0.75rem; padding: 0.25rem 0.75rem; border-radius: 9999px; border: 1px solid rgba(255, 255, 255, 0.15); color: rgba(255, 255, 255, 0.75); }
.resources-learning-paths__panel-head { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1rem; }
.resources-learning-paths__panel-icon { width: 2.75rem; height: 2.75rem; border-radius: 0.75rem; display: inline-flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); color: var(--color-brand-primary); }
.resources-learning-paths__panel-title { font-size: 1.5rem; font-weight: 700; color: #fff; }
.resources-learning-paths__panel-desc { font-size: 1rem; line-height: 1.7; color: rgba(255, 255, 255, 0.7); margin-bottom: 2rem; }
.resources-learning-paths__cta { width: fit-content; }
.resources-learning-paths__panel-modules { padding: 3rem; }
@media (max-width: 768px) { .resources-learning-paths__panel-modules { padding: 2rem; } }
.resources-learning-paths__curriculum-title { font-size: 1.125rem; font-weight: 600; color: #fff; margin-bottom: 2rem; }
.resources-learning-paths__modules { list-style: none; margin: 0 0 0 0.75rem; padding: 0 0 0 2rem; border-left: 2px solid rgba(255, 255, 255, 0.1); display: flex; flex-direction: column; gap: 2rem; }
.resources-learning-paths__module { position: relative; }
.resources-learning-paths__module-num {
	position: absolute; left: -2.7rem; top: -0.25rem;
	width: 2rem; height: 2rem; border-radius: 9999px;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--font-mono, monospace); font-size: 0.75rem; font-weight: 700;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary);
	border: 2px solid var(--color-bg, #0b0b0f);
}
.resources-learning-paths__module-name { font-size: 1rem; font-weight: 500; color: #fff; }

/* ─── Case Studies: company + metrics + tags + footer ─────────────────────── */
.resources-case-studies__grid { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1024px) { .resources-case-studies__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { .resources-case-studies__grid { grid-template-columns: 1fr; } }
.resources-case-studies__card { display: flex; flex-direction: column; }
.resources-case-studies__card-header { justify-content: space-between; }
.resources-case-studies__company { font-size: 0.8125rem; font-weight: 600; color: rgba(255, 255, 255, 0.55); margin-bottom: 0.5rem; }
.resources-case-studies__metrics { display: flex; align-items: center; gap: 1rem; margin: 1.5rem 0; }
.resources-case-studies__metric { display: flex; flex-direction: column; }
.resources-case-studies__metric-value { font-size: 1.25rem; font-weight: 700; color: var(--color-brand-primary); line-height: 1; margin-bottom: 0.25rem; }
.resources-case-studies__metric-label { font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.06em; color: rgba(255, 255, 255, 0.55); }
.resources-case-studies__metric-divider { width: 1px; height: 2rem; background: rgba(255, 255, 255, 0.12); }
.resources-case-studies__card-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: auto; padding-top: 1.5rem; border-top: 1px solid rgba(255, 255, 255, 0.08); }
.resources-case-studies__tags { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.resources-case-studies__tag { font-size: 0.625rem; padding: 0.1875rem 0.5rem; border-radius: 0.375rem; background: rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.7); }
.resources-case-studies__link {
	flex-shrink: 0; width: 2rem; height: 2rem; border-radius: 9999px;
	display: inline-flex; align-items: center; justify-content: center;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary);
	transition: background 0.2s, color 0.2s;
}
.resources-case-studies__link:hover { background: var(--color-brand-primary); color: #fff; }

/* ─── Download Center: header + tags + footer ─────────────────────────────── */
.resources-download-center__grid { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1024px) { .resources-download-center__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { .resources-download-center__grid { grid-template-columns: 1fr; } }
.resources-download-center__card { display: flex; flex-direction: column; }
.resources-download-center__card-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.5rem; }
.resources-download-center__size { font-size: 0.75rem; color: rgba(255, 255, 255, 0.55); white-space: nowrap; }
.resources-download-center__icon { width: 3rem; height: 3rem; border-radius: 0.75rem; display: inline-flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); margin-bottom: 1rem; }
.resources-download-center__meta-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 1rem 0; }
.resources-download-center__tags { display: flex; flex-wrap: wrap; gap: 0.375rem; justify-content: flex-end; }
.resources-download-center__tag { font-size: 0.625rem; padding: 0.1875rem 0.5rem; border-radius: 0.375rem; background: rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.7); }
.resources-download-center__card-footer { margin-top: auto; padding-top: 1rem; border-top: 1px solid rgba(255, 255, 255, 0.08); }
.resources-download-center__cta { width: 100%; justify-content: center; }

/* ─── Community: featured (2) + standard (4) ──────────────────────────────── */
.resources-community__featured { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 2rem; }
@media (max-width: 768px) { .resources-community__featured { grid-template-columns: 1fr; } }
.resources-community__featured-card { display: flex; flex-direction: column; padding: 2rem; border-radius: 1rem; border: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.04); }
.resources-community__icon { width: 3rem; height: 3rem; border-radius: 0.75rem; display: inline-flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, 0.06); color: #fff; }
.resources-community__desc { font-size: 0.9375rem; line-height: 1.7; color: rgba(255, 255, 255, 0.7); margin-bottom: 2rem; flex: 1; }
.resources-community__card-footer { margin-top: auto; }
.resources-community__standard { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin-top: 1.5rem; }
@media (max-width: 1024px) { .resources-community__standard { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { .resources-community__standard { grid-template-columns: 1fr; } }
.resources-community__standard-card { display: flex; flex-direction: column; padding: 1.5rem; border-radius: 1rem; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.03); }
.resources-community__standard-icon { width: 2.25rem; height: 2.25rem; border-radius: 0.5rem; display: inline-flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); margin-bottom: 1rem; }
.resources-community__standard-stat { font-size: 0.8125rem; font-weight: 700; color: var(--color-brand-primary); margin-bottom: 0.25rem; }
.resources-community__standard-name { font-size: 1rem; font-weight: 600; color: #fff; margin-bottom: 0.5rem; }
.resources-community__standard-desc { font-size: 0.75rem; line-height: 1.6; color: rgba(255, 255, 255, 0.65); margin-bottom: 1.5rem; flex: 1; }
.resources-community__standard-link { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 500; color: var(--color-brand-primary); text-decoration: none; margin-top: auto; }

/* ─── Newsletter: centred brand block ─────────────────────────────────────── */
.resources-newsletter { background: var(--color-brand-primary); color: #fff; }
.resources-newsletter__inner { display: flex; flex-direction: column; align-items: center; text-align: center; max-width: 42rem; margin: 0 auto; }
.resources-newsletter__eyebrow { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.18em; color: rgba(255, 255, 255, 0.6); margin-bottom: 1rem; }
.resources-newsletter__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; color: #fff; margin-bottom: 1.5rem; }
.resources-newsletter__copy { font-size: 1.0625rem; line-height: 1.7; color: rgba(255, 255, 255, 0.8); margin-bottom: 2.5rem; max-width: 34rem; }
.resources-newsletter__form-wrap { width: 100%; max-width: 28rem; }
.resources-newsletter__input-row { display: flex; gap: 0.75rem; }
@media (max-width: 640px) { .resources-newsletter__input-row { flex-direction: column; } }
.resources-newsletter__input { flex: 1; padding: 0.75rem 1rem; border-radius: 0.75rem; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); color: #fff; }
.resources-newsletter__input::placeholder { color: rgba(255, 255, 255, 0.4); }
.resources-newsletter__input:focus { outline: none; border-color: rgba(255, 255, 255, 0.6); }
.resources-newsletter__submit { padding: 0.75rem 1.5rem; border-radius: 0.75rem; border: 0; cursor: pointer; font-weight: 600; white-space: nowrap; background: #fff; color: var(--color-brand-primary); }
.resources-newsletter__submit:hover { background: rgba(255, 255, 255, 0.9); }
.resources-newsletter__message { margin-top: 0.75rem; font-size: 0.875rem; }
.resources-newsletter__fine-print { font-size: 0.75rem; color: rgba(255, 255, 255, 0.5); margin-top: 2rem; }
.resources-newsletter__bullets { list-style: none; margin: 1.5rem 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 0.75rem 1.5rem; }
.resources-newsletter__bullet { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.75rem; color: rgba(255, 255, 255, 0.8); }


/* ═══ Merged from parity-solutions.css — page parity additions ═══ */
/* ─────────────────────────────────────────────────────────────────────────────
   Solutions page — React parity styles
   (merge into main.css §40. Solutions page)
   React truth: src/pages/SolutionsPage.tsx + src/sections/solutions/*
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Section vertical rhythm ── */
.solutions-challenges,
.solutions-pillars,
.solutions-industry,
.solutions-process,
.solutions-key-caps,
.solutions-outcomes,
.solutions-why { padding: 5rem 0; }

.solutions-challenges,
.solutions-pillars,
.solutions-process { background: rgba(255,255,255,0.02); }

.solutions-why { background: rgba(255,255,255,0.03); }

/* ── Hero: floating cards + trust badges ── */
.solutions-hero__floating { position: absolute; inset: 0; pointer-events: none; }
.solutions-hero__float-card {
	position: absolute; display: none; flex-direction: column; gap: 0.375rem;
	padding: 0.875rem 1rem; min-width: 160px;
	background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1);
	border-radius: 0.75rem; backdrop-filter: blur(12px);
}
@media (min-width: 1024px) { .solutions-hero__float-card { display: flex; } }
.solutions-hero__float-card--1 { top: 15%; left: 4%; }
.solutions-hero__float-card--2 { top: 20%; right: 6%; }
.solutions-hero__float-card--3 { bottom: 26%; left: 6%; }
.solutions-hero__float-card--4 { bottom: 22%; right: 7%; }
.solutions-hero__float-before { font-size: 0.75rem; font-weight: 500; color: rgba(255,255,255,0.5); text-decoration: line-through; }
.solutions-hero__float-after { display: inline-flex; align-items: center; gap: 0.375rem; font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.solutions-hero__float-after svg { color: var(--color-brand-primary); }

.solutions-hero__eyebrow { margin-bottom: 1.25rem; }
.solutions-hero__trust { list-style: none; padding: 0; margin: 2.5rem 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem; }
.solutions-hero__trust-item { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(255,255,255,0.65); }
.solutions-hero__trust-item svg { color: var(--color-brand-primary); }

/* ── Business Challenges: sticky intro + list ── */
.solutions-challenges__layout { display: grid; grid-template-columns: 5fr 7fr; gap: 3rem; align-items: start; }
@media (max-width: 900px) { .solutions-challenges__layout { grid-template-columns: 1fr; gap: 2rem; } }
.solutions-challenges__intro { position: sticky; top: 6rem; }
@media (max-width: 900px) { .solutions-challenges__intro { position: static; } }
.solutions-challenges__eyebrow {
	display: inline-block; font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem;
	background: rgba(239,68,68,0.12); border: 1px solid rgba(239,68,68,0.3);
	border-radius: 9999px; color: rgb(252,165,165); margin-bottom: 1.25rem;
}
.solutions-challenges__headline { font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; margin-bottom: 1rem; color: var(--color-text-primary, #fff); }
.solutions-challenges__subheadline { font-size: 1.0625rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.7)); }
.solutions-challenges__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 1rem; }
.solutions-challenges__item {
	display: flex; gap: 1.25rem; padding: 1.5rem;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-radius: 1rem; transition: border-color 0.2s, box-shadow 0.2s;
}
.solutions-challenges__item:hover { border-color: rgba(255,255,255,0.16); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }
.solutions-challenges__icon {
	flex-shrink: 0; width: 3.5rem; height: 3.5rem; border-radius: 0.75rem;
	display: flex; align-items: center; justify-content: center;
	background: rgba(239,68,68,0.12); color: rgb(248,113,113);
}
.solutions-challenges__item-content { display: flex; flex-direction: column; gap: 0.5rem; justify-content: center; }
.solutions-challenges__title { font-size: 1.0625rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.solutions-challenges__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* ── Aigenttra Solutions: featured pillar + grid ── */
.solutions-pillars__featured {
	position: relative; overflow: hidden; display: flex; gap: 2rem; align-items: center;
	padding: 2.5rem; margin-bottom: 1.5rem;
	background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent);
	border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent);
	border-radius: 1.25rem;
}
@media (max-width: 768px) { .solutions-pillars__featured { flex-direction: column; align-items: flex-start; padding: 1.75rem; gap: 1.5rem; } }
.solutions-pillars__featured-icon {
	flex-shrink: 0; width: 5rem; height: 5rem; border-radius: 1rem;
	display: flex; align-items: center; justify-content: center;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	color: var(--color-brand-primary);
}
.solutions-pillars__featured-title { font-size: 1.5rem; font-weight: 700; letter-spacing: -0.02em; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.solutions-pillars__featured-desc { font-size: 1.0625rem; line-height: 1.65; color: var(--color-text-secondary, rgba(255,255,255,0.72)); margin-bottom: 1.5rem; max-width: 60ch; }

.solutions-pillars__grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
@media (max-width: 900px) { .solutions-pillars__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .solutions-pillars__grid { grid-template-columns: 1fr; } }
.solutions-pillars__card {
	display: flex; flex-direction: column; padding: 1.75rem;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-radius: 1rem; transition: border-color 0.2s, box-shadow 0.2s;
}
.solutions-pillars__card:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 30%, transparent); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }
.solutions-pillars__icon {
	width: 3rem; height: 3rem; border-radius: 0.75rem; margin-bottom: 1.5rem;
	display: flex; align-items: center; justify-content: center;
	background: rgba(255,255,255,0.06); color: rgba(255,255,255,0.85);
	transition: background 0.2s, color 0.2s;
}
.solutions-pillars__card:hover .solutions-pillars__icon { background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); color: var(--color-brand-primary); }
.solutions-pillars__title { font-size: 1.125rem; font-weight: 600; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.solutions-pillars__card:hover .solutions-pillars__title { color: var(--color-brand-primary); }
.solutions-pillars__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1.25rem; }
.solutions-pillars__link { display: inline-flex; align-items: center; font-size: 0.875rem; font-weight: 500; color: var(--color-brand-primary); text-decoration: none; margin-top: auto; }
.solutions-pillars__link:hover { opacity: 0.8; }

/* ── Industry Solutions: sector card grid ── */
.solutions-industry__grid { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.5rem; }
@media (max-width: 1100px) { .solutions-industry__grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px) { .solutions-industry__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .solutions-industry__grid { grid-template-columns: 1fr; } }
.solutions-industry__card {
	display: flex; flex-direction: column; padding: 1.5rem;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-radius: 1rem; transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s;
}
.solutions-industry__card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); box-shadow: 0 10px 28px rgba(0,0,0,0.22); }
.solutions-industry__icon {
	width: 3rem; height: 3rem; border-radius: 9999px; margin-bottom: 1.25rem;
	display: flex; align-items: center; justify-content: center;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	color: var(--color-brand-primary);
}
.solutions-industry__name { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.solutions-industry__desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); flex: 1; margin-bottom: 1.5rem; }
.solutions-industry__outcome { margin-top: auto; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,0.08); }
.solutions-industry__badge {
	display: inline-block; font-size: 0.75rem; font-weight: 600; padding: 0.1875rem 0.625rem;
	background: rgba(34,197,94,0.15); border: 1px solid rgba(34,197,94,0.3);
	border-radius: 9999px; color: rgb(134,239,172);
}

/* ── Implementation Process: 7-phase steps ── */
.solutions-process__steps { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(7, 1fr); gap: 1.5rem; position: relative; }
@media (max-width: 1024px) { .solutions-process__steps { grid-template-columns: 1fr; gap: 2rem; } }
.solutions-process__step { display: flex; flex-direction: column; align-items: center; text-align: center; }
@media (max-width: 1024px) { .solutions-process__step { flex-direction: row; align-items: flex-start; text-align: left; gap: 1.25rem; } }
.solutions-process__step-marker {
	position: relative; flex-shrink: 0; width: 3.5rem; height: 3.5rem; border-radius: 9999px;
	display: flex; align-items: center; justify-content: center; margin-bottom: 1rem;
	background: var(--color-surface, rgba(255,255,255,0.04)); border: 2px solid rgba(255,255,255,0.14);
	color: var(--color-text-primary, #fff); transition: border-color 0.2s;
}
@media (max-width: 1024px) { .solutions-process__step-marker { margin-bottom: 0; } }
.solutions-process__step:hover .solutions-process__step-marker { border-color: var(--color-brand-primary); }
.solutions-process__step:hover .solutions-process__step-icon svg { color: var(--color-brand-primary); }
.solutions-process__step-num {
	position: absolute; top: -0.5rem; right: -0.5rem; width: 1.5rem; height: 1.5rem;
	display: flex; align-items: center; justify-content: center;
	font-size: 0.6875rem; font-weight: 700; border-radius: 9999px;
	background: var(--color-brand-primary); color: #fff;
}
.solutions-process__step-title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.5rem; color: var(--color-text-primary, #fff); }
.solutions-process__step-desc { font-size: 0.8125rem; line-height: 1.55; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* ── Key Capabilities: bento grid ── */
.solutions-key-caps__grid { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
@media (max-width: 900px) { .solutions-key-caps__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .solutions-key-caps__grid { grid-template-columns: 1fr; } }
.solutions-key-caps__card {
	position: relative; overflow: hidden; display: flex; flex-direction: column;
	padding: 1.75rem; min-height: 220px;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-radius: 1rem; transition: box-shadow 0.3s;
}
.solutions-key-caps__card:hover { box-shadow: 0 12px 32px rgba(0,0,0,0.25); }
.solutions-key-caps__card--featured {
	grid-column: span 2; grid-row: span 2; min-height: 300px;
	background: color-mix(in srgb, var(--color-brand-primary) 10%, transparent);
	border-color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent);
}
@media (max-width: 560px) { .solutions-key-caps__card--featured { grid-column: span 1; grid-row: auto; } }
.solutions-key-caps__icon {
	width: 3.25rem; height: 3.25rem; border-radius: 0.875rem; margin-bottom: 2rem;
	display: inline-flex; align-items: center; justify-content: center;
	background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1);
	color: var(--color-text-primary, #fff); transition: color 0.2s;
}
.solutions-key-caps__card:hover .solutions-key-caps__icon { color: var(--color-brand-primary); }
.solutions-key-caps__title { font-size: 1.25rem; font-weight: 600; margin-top: auto; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.solutions-key-caps__card:hover .solutions-key-caps__title { color: var(--color-brand-primary); }
.solutions-key-caps__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.68)); }

/* ── Business Outcomes: metrics + cards ── */
.solutions-outcomes__layout { display: grid; grid-template-columns: 4fr 8fr; gap: 4rem; align-items: start; }
@media (max-width: 900px) { .solutions-outcomes__layout { grid-template-columns: 1fr; gap: 2.5rem; } }
.solutions-outcomes__intro { position: sticky; top: 6rem; }
@media (max-width: 900px) { .solutions-outcomes__intro { position: static; } }
.solutions-outcomes__eyebrow {
	display: inline-block; font-size: 0.75rem; font-weight: 600; padding: 0.25rem 0.75rem;
	background: color-mix(in srgb, var(--color-brand-primary) 8%, transparent);
	border: 1px solid color-mix(in srgb, var(--color-brand-primary) 20%, transparent);
	border-radius: 9999px; color: var(--color-brand-primary); margin-bottom: 1rem;
}
.solutions-outcomes__headline { font-size: clamp(1.75rem, 4vw, 2.25rem); font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; margin-bottom: 2rem; color: var(--color-text-primary, #fff); }
.solutions-outcomes__metrics { display: flex; flex-direction: column; }
.solutions-outcomes__metric { padding: 1.5rem 0; border-bottom: 1px solid rgba(255,255,255,0.08); }
.solutions-outcomes__metric:last-child { border-bottom: 0; }
.solutions-outcomes__metric-value { display: block; font-size: 2.75rem; font-weight: 800; letter-spacing: -0.03em; line-height: 1; color: var(--color-text-primary, #fff); }
.solutions-outcomes__metric-value :first-child { color: var(--color-brand-primary); }
.solutions-outcomes__metric-label { display: block; font-size: 0.875rem; font-weight: 500; line-height: 1.5; max-width: 26ch; margin-top: 0.75rem; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }
.solutions-outcomes__grid {
	list-style: none; padding: 0; margin: 0; text-align: left;
	display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem;
}
@media (max-width: 560px) { .solutions-outcomes__grid { grid-template-columns: 1fr; } }
.solutions-outcomes__card {
	display: flex; align-items: flex-start; gap: 1.25rem; padding: 1.5rem;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-left: 4px solid var(--color-brand-primary); border-radius: 0.75rem;
	transition: transform 0.2s, box-shadow 0.2s;
}
.solutions-outcomes__card:hover { transform: translateY(-2px); box-shadow: 0 10px 26px rgba(0,0,0,0.22); }
.solutions-outcomes__icon {
	flex-shrink: 0; width: 2.5rem; height: 2.5rem; border-radius: 0.5rem; margin-top: 0.125rem;
	display: flex; align-items: center; justify-content: center;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	border: 1px solid color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	color: var(--color-brand-primary);
}
.solutions-outcomes__card-title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.375rem; color: var(--color-text-primary, #fff); }
.solutions-outcomes__card-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* ── Why Aigenttra: differentiator bento ── */
.solutions-why__grid { list-style: none; padding: 0; margin: 3rem 0 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
@media (max-width: 900px) { .solutions-why__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .solutions-why__grid { grid-template-columns: 1fr; } }
.solutions-why__card {
	display: flex; flex-direction: column; padding: 1.75rem;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-radius: 1rem; transition: border-color 0.3s;
}
.solutions-why__card:hover { border-color: rgba(255,255,255,0.16); }
.solutions-why__card--large {
	grid-column: span 2;
	background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent);
	border-color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent);
	padding: 2.25rem;
}
.solutions-why__card--large:hover { border-color: color-mix(in srgb, var(--color-brand-primary) 40%, transparent); }
@media (max-width: 560px) { .solutions-why__card--large { grid-column: span 1; } }
.solutions-why__icon {
	width: 3rem; height: 3rem; border-radius: 0.75rem; margin-bottom: 1.5rem;
	display: inline-flex; align-items: center; justify-content: center;
	background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.85);
}
.solutions-why__card--large .solutions-why__icon {
	width: 4rem; height: 4rem;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	border-color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent);
	color: var(--color-brand-primary);
}
.solutions-why__title { font-size: 1.125rem; font-weight: 600; margin-top: auto; margin-bottom: 0.75rem; color: var(--color-text-primary, #fff); }
.solutions-why__card--large .solutions-why__title { font-size: 1.375rem; }
.solutions-why__desc { font-size: 0.9375rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.68)); }


/* ═══ Merged from parity-trust.css — page parity additions ═══ */
/* ─────────────────────────────────────────────────────────────────────────────
   Trust Center — parity additions (merge into main.css)
   New structural classes introduced to match the React source exactly.
   Reuses existing .trust-* tokens/patterns where possible.
   ───────────────────────────────────────────────────────────────────────────── */

/* ── Hero: floating security cards + trust-bar dot ── */
.trust-hero__cards { position: absolute; inset: 0; z-index: 1; pointer-events: none; overflow: hidden; }
@media (max-width: 1024px) { .trust-hero__cards { display: none; } }
.trust-hero__card {
	position: absolute; display: inline-flex; align-items: center; gap: 0.75rem;
	padding: 0.75rem; min-width: 200px;
	background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12);
	border-radius: 0.75rem; backdrop-filter: blur(12px);
	box-shadow: 0 1px 2px rgba(0,0,0,0.15);
}
.trust-hero__card-icon {
	display: flex; align-items: center; justify-content: center;
	width: 2.25rem; height: 2.25rem; border-radius: 0.5rem;
	background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent);
	color: var(--color-brand-primary); flex-shrink: 0;
}
.trust-hero__card-text { font-size: 0.875rem; font-weight: 600; color: var(--color-text-primary, #fff); }
.trust-hero__card--1 { top: 15%; left: 5%; }
.trust-hero__card--2 { top: 22%; right: 8%; }
.trust-hero__card--3 { bottom: 30%; left: 8%; }
.trust-hero__card--4 { bottom: 25%; right: 10%; }
@media (prefers-reduced-motion: no-preference) {
	.trust-hero__card--1 { animation: trust-float-1 8s ease-in-out infinite alternate; }
	.trust-hero__card--2 { animation: trust-float-2 10s ease-in-out infinite alternate; }
	.trust-hero__card--3 { animation: trust-float-3 12s ease-in-out infinite alternate; }
	.trust-hero__card--4 { animation: trust-float-4 9s ease-in-out infinite alternate; }
}
@keyframes trust-float-1 { from { transform: translate(0,0); } to { transform: translate(10px,-15px); } }
@keyframes trust-float-2 { from { transform: translate(0,0); } to { transform: translate(-10px,20px); } }
@keyframes trust-float-3 { from { transform: translate(0,0); } to { transform: translate(15px,-20px); } }
@keyframes trust-float-4 { from { transform: translate(0,0); } to { transform: translate(-15px,25px); } }

.trust-hero__badge-dot {
	width: 0.375rem; height: 0.375rem; border-radius: 50%;
	background: color-mix(in srgb, var(--color-brand-primary) 50%, transparent);
	flex-shrink: 0;
}

/* ── Security Philosophy: spotlight card (stat + principles) ── */
.trust-philosophy__spotlight {
	display: grid; grid-template-columns: 1fr 3fr; gap: 3rem;
	background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
	border-radius: 1.5rem; padding: 2.5rem;
}
@media (max-width: 768px) { .trust-philosophy__spotlight { grid-template-columns: 1fr; gap: 2rem; padding: 1.75rem; } }
.trust-philosophy__spotlight .trust-philosophy__stat { margin-top: 0; }
.trust-philosophy__spotlight .trust-philosophy__stat-value { display: block; font-size: clamp(2.5rem, 6vw, 3.5rem); font-weight: 800; color: var(--color-brand-primary); line-height: 1; margin-bottom: 0.75rem; }
.trust-philosophy__spotlight .trust-philosophy__stat-label { display: block; font-size: 1.0625rem; font-weight: 500; color: var(--color-text-primary, #fff); }
.trust-philosophy__spotlight .trust-philosophy__principles { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; }
.trust-philosophy__spotlight .trust-philosophy__principle { display: flex; align-items: flex-start; gap: 1.25rem; padding: 1.25rem 0; border-bottom: 1px solid rgba(255,255,255,0.08); }
.trust-philosophy__spotlight .trust-philosophy__principle:last-child { border-bottom: none; }
.trust-philosophy__principle-icon { width: 2.25rem; height: 2.25rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.5rem; flex-shrink: 0; color: var(--color-brand-primary); }
.trust-philosophy__principle-title { font-size: 1.0625rem; font-weight: 600; margin-bottom: 0.25rem; color: var(--color-text-primary, #fff); }

/* ── Platform Security: status dot before "Architecture Design" ── */
.trust-platform-security__status { display: inline-flex; align-items: center; gap: 0.5rem; }
.trust-platform-security__status-dot { width: 0.5rem; height: 0.5rem; border-radius: 50%; background: rgb(34,197,94); flex-shrink: 0; }

/* ── Privacy: CTA button + flow icon/label + arrow ── */
.trust-privacy__cta { margin-top: 2rem; }
.trust-privacy__flow-icon { display: inline-flex; align-items: center; justify-content: center; color: var(--color-text-primary, #fff); flex-shrink: 0; }
.trust-privacy__flow-icon--accent { color: rgb(34,197,94); }
.trust-privacy__flow-label { font-size: 0.875rem; font-weight: 500; color: var(--color-text-primary, #fff); }
.trust-privacy__flow-item { align-items: center; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 0.75rem; padding: 0.875rem 1rem; }
.trust-privacy__flow-arrow { display: flex; justify-content: center; color: var(--color-brand-primary); }
.trust-privacy__flow-arrow svg { width: 20px; height: 20px; }

/* ── Compliance: card head row, description, roadmap badge colours, disclaimer ── */
.trust-compliance__card { display: flex; flex-direction: column; }
.trust-compliance__card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 0.75rem; margin-bottom: 1.25rem; }
.trust-compliance__card-desc { font-size: 0.875rem; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.65)); margin-bottom: 1.25rem; }
.trust-compliance__card-note { margin-top: auto; }
.trust-compliance__card-badge--amber { background: rgba(234,179,8,0.15); color: rgb(253,224,71); }
.trust-compliance__card-badge--green { background: rgba(34,197,94,0.15); color: rgb(134,239,172); }
.trust-compliance__card-badge--gray  { background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.7); }
.trust-compliance__disclaimer { max-width: 64ch; margin: 2.5rem auto 0; text-align: center; }
.trust-compliance__disclaimer p { font-size: 0.8125rem; font-style: italic; line-height: 1.6; color: var(--color-text-secondary, rgba(255,255,255,0.55)); }

/* ── Infrastructure: header block + metric sublabel ── */
.trust-infrastructure__header { max-width: 42rem; margin-bottom: 3rem; }
.trust-infrastructure__metric-sub { display: block; font-size: 0.75rem; color: var(--color-text-secondary, rgba(255,255,255,0.5)); margin-top: 0.25rem; }

/* ── Responsible AI: featured (large) card + "Learn More" link ── */
.trust-responsible-ai__grid { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1024px) { .trust-responsible-ai__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .trust-responsible-ai__grid { grid-template-columns: 1fr; } }
.trust-responsible-ai__card { display: flex; flex-direction: column; }
.trust-responsible-ai__card--large { grid-column: span 2; background: color-mix(in srgb, var(--color-brand-primary) 6%, transparent); border-color: color-mix(in srgb, var(--color-brand-primary) 20%, transparent); }
@media (max-width: 640px) { .trust-responsible-ai__card--large { grid-column: span 1; } }
.trust-responsible-ai__link { margin-top: auto; padding-top: 1rem; display: inline-flex; align-items: center; gap: 0.25rem; font-size: 0.875rem; font-weight: 600; color: var(--color-brand-primary); text-decoration: none; }
.trust-responsible-ai__link:hover { text-decoration: underline; }
.trust-responsible-ai__link-icon { display: inline-flex; }
.trust-responsible-ai__link-icon svg { width: 1rem; height: 1rem; }

/* ── Incident Response: callout cards below the phase row ── */
.trust-incident__callouts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; max-width: 56rem; margin: 3rem auto 0; }
@media (max-width: 640px) { .trust-incident__callouts { grid-template-columns: 1fr; } }
.trust-incident__callout { display: flex; align-items: center; gap: 1.5rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 1rem; padding: 1.5rem; }
.trust-incident__callout-icon { width: 3rem; height: 3rem; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--color-brand-primary) 12%, transparent); border-radius: 0.75rem; color: var(--color-brand-primary); flex-shrink: 0; }
.trust-incident__callout-value { font-size: 1.25rem; font-weight: 700; color: var(--color-brand-primary); margin-bottom: 0.25rem; }
.trust-incident__callout-label { font-size: 0.875rem; font-weight: 500; color: var(--color-text-secondary, rgba(255,255,255,0.65)); }

/* ── Trust Metrics: 4-col grid + card icon watermark ── */
.trust-metrics__grid { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1024px) { .trust-metrics__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .trust-metrics__grid { grid-template-columns: 1fr; } }
.trust-metrics__card { position: relative; overflow: hidden; text-align: left; }
.trust-metrics__icon { position: absolute; top: 1.25rem; right: 1.25rem; width: 2.5rem; height: 2.5rem; color: var(--color-brand-primary); opacity: 0.06; }
.trust-metrics__value { font-size: 1.375rem; }
