/* ==========================================================================
   Swiftex v2 — Main CSS Entry Point (ITCSS)
   HubL include directives compile all stylesheets into one at render time.
   ========================================================================== */

/* Generic — reset & normalize */
*, *:before, *:after {
  box-sizing: border-box;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */



/* Grouping content
   ========================================================================== */

/**
 * Add the correct box sizing in Firefox.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Objects — DND area & layout (REQUIRED for page editor DND controls) */


/* CSS variables */

:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}

/* Mobile layout */

.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}


  .row-fluid .span1,
  .row-fluid .span2,
  .row-fluid .span3,
  .row-fluid .span4,
  .row-fluid .span5,
  .row-fluid .span6,
  .row-fluid .span7,
  .row-fluid .span8,
  .row-fluid .span9,
  .row-fluid .span10,
  .row-fluid .span11,
  .row-fluid .span12{
  min-height: 1px;
  width: 100%;
}

/* Desktop layout */

@media (min-width: 768px) {
  .row-fluid {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  
    .row-fluid .span1 {
      width: calc(var(--column-width-multiplier) * 1% * 1 - var(--column-gap) * (11 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span2 {
      width: calc(var(--column-width-multiplier) * 1% * 2 - var(--column-gap) * (10 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span3 {
      width: calc(var(--column-width-multiplier) * 1% * 3 - var(--column-gap) * (9 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span4 {
      width: calc(var(--column-width-multiplier) * 1% * 4 - var(--column-gap) * (8 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span5 {
      width: calc(var(--column-width-multiplier) * 1% * 5 - var(--column-gap) * (7 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span6 {
      width: calc(var(--column-width-multiplier) * 1% * 6 - var(--column-gap) * (6 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span7 {
      width: calc(var(--column-width-multiplier) * 1% * 7 - var(--column-gap) * (5 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span8 {
      width: calc(var(--column-width-multiplier) * 1% * 8 - var(--column-gap) * (4 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span9 {
      width: calc(var(--column-width-multiplier) * 1% * 9 - var(--column-gap) * (3 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span10 {
      width: calc(var(--column-width-multiplier) * 1% * 10 - var(--column-gap) * (2 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span11 {
      width: calc(var(--column-width-multiplier) * 1% * 11 - var(--column-gap) * (1 * var(--column-width-multiplier) / 100));
    }
  
}
.content-wrapper {
  margin: 0 auto;
  padding: 0 1rem;
}

@media screen and (min-width: 1380px) {
  .content-wrapper {
    padding: 0;
  }
}

.dnd-section > .row-fluid {
  margin: 0 auto;
}

/* Zero default padding on DND columns so editors control padding via the DND UI. */
.dnd-section .dnd-column {
  padding: 0;
}

/* Elements — buttons, forms, tables
   NOTE: _typography.css disabled — shared.css owns all typography. */
button,
.button,
.hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

button:disabled,
.button:disabled,
.hs-button:disabled {
  background-color: #D0D0D0;
  border-color: #D0D0D0;
  color: #E6E6E6;
}

/* No button */

.no-button,
.no-button:hover,
.no-button:focus,
.no-button:active {
  background: none;
  border: none;
  border-radius: 0;
  color: initial;
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
  transition: none;
}
/* Fields */

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.35rem;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: 0.875rem;
}

/* Inputs */

form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
  display: inline-block;
  font-size: 0.875rem;
  padding: 0.7rem;
  width: 100%;
}

form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !important;
}

/* Inputs - checkbox/radio */

form .inputs-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
  border-radius: 0;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  border-radius: 0 !important;
  color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

form .hs-richtext img {
  max-width: 100% !important;
}

/* GDPR */

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin-left: 1rem !important;
}

/* Validation */

.hs-form-required {
  color: #EF6B51;
}

.hs-input.invalid.error {
  border-color: #EF6B51;
}

.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


  /* Search button input field and suggestions */
  .body-container-wrapper .hs-search-field__button {
    padding: 15px;
  }

  .body-container-wrapper .hs-search-field__bar--button-inline .hs-search-field__button {
    margin-left: 6px;
    margin-bottom: 0;
  }

  .body-container-wrapper .hs-search-field__button svg {
    height: 15px;
    fill: #fff;
  }

  .body-container-wrapper .hs-search-field__bar > form > .hs-search-field__input {
    padding: 10px;
  }

  .body-container-wrapper .hs-search-field__suggestions li a {
    color: #494A52;
    padding: 0.35rem 0.7rem;
    text-decoration: none;
    transition: background-color 0.3s;
  }

/* Table */

table {
  border-collapse: collapse;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}

/* Components — default module styles (note: we use our own header module, so _header.css omitted) */
/* Menu and simple menu */

.hs-menu-wrapper ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Horizontal menu */

.hs-menu-wrapper.hs-menu-flow-horizontal .hs-menu-children-wrapper {
  flex-direction: column;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    flex-direction: column;
  }
}

/* Vertical menu */

.hs-menu-wrapper.hs-menu-flow-vertical ul {
  flex-direction: column;
}

/* Flyouts */

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts ul {
  display: inline-flex;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-vertical ul {
    display: flex;
  }
}

.hs-menu-wrapper.flyouts .hs-item-has-children {
  position: relative;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper {
  left: -9999px;
  opacity: 0;
  position: absolute;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper a {
  display: block;
  white-space: nowrap;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 0;
  opacity: 1;
  top: 100%;
}

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 100%;
  opacity: 1;
  top: 0;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.flyouts .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
    left: 0;
    opacity: 1;
    position: relative;
    top: auto;
  }
}

/* CTA, logo, and rich text images */

.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}

/* ============================================================================
   SWIFTEX BRAND LAYER — loaded AFTER boilerplate so Swiftex design wins.
   ============================================================================ */

/* Shared css */
/* Swiftex shared styles — tokens, nav, footer, common components */
:root{
  --ink:#0A0B0E; --ink-2:#121318; --ink-3:#1A1C22;
  --paper:#F7F6F2; --paper-2:#ECEAE2;
  --mute:#8A8F98; --mute-2:#5A5E66;
  --line:rgba(255,255,255,0.08); --line-dk:rgba(10,11,14,0.10);
  --volt:#D6FF4A; --volt-ink:#0A0B0E;
  --leak:#FF5B3A; --ok:#7CFFB2;
  --container:1240px;
  --ease:cubic-bezier(0.22,1,0.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;background:var(--ink);color:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;border:0;background:none;color:inherit;cursor:pointer}
h1,h2,h3,h4,.display{font-family:'Inter Tight','Inter',sans-serif;letter-spacing:-0.03em;font-weight:600;line-height:1.08}
::selection{background:var(--volt);color:var(--volt-ink)}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.wrap{max-width:var(--container);margin:0 auto;padding:0 32px}
@media(max-width:720px){.wrap{padding:0 20px}}

/* NAV */
.nav{position:fixed;top:16px;left:0;right:0;z-index:60;display:flex;justify-content:center;pointer-events:none}
.nav-inner{pointer-events:auto;display:flex;align-items:center;gap:20px;padding:8px 8px 8px 20px;background:rgba(18,19,24,0.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:999px;min-width:min(1040px, calc(100% - 24px));justify-content:space-between;position:relative}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;letter-spacing:-0.02em;color:var(--paper)}
.brand svg.brand-mark{width:22px;height:auto;flex-shrink:0;color:var(--paper)}
.brand svg.brand-mark path{fill:currentColor}
.brand-word-text{font-family:'Inter Tight',sans-serif;font-size:17px;font-weight:600;letter-spacing:-0.03em}
.nav-links{display:flex;gap:4px;font-size:13.5px;color:var(--mute);list-style:none;align-items:center}
.nav-links > li{position:static}
.nav-links > li > a,.nav-links > li > button{display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border-radius:999px;color:var(--mute);font-size:13.5px;transition:color .15s var(--ease),background .15s var(--ease);white-space:nowrap}
.nav-links > li > a:hover,.nav-links > li > button:hover,.nav-links > li.open > button,.nav-links > li > a.on{color:var(--paper);background:rgba(255,255,255,.05)}
.nav-links .caret{width:10px;height:10px;opacity:.7;transition:transform .2s var(--ease)}
.nav-links > li.open .caret{transform:rotate(180deg);color:var(--volt);opacity:1}
.mega{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(-4px);width:min(1100px,calc(100vw - 40px));background:rgba(10,11,14,0.82);backdrop-filter:blur(32px) saturate(1.4);-webkit-backdrop-filter:blur(32px) saturate(1.4);border:1px solid var(--line);border-radius:20px;box-shadow:0 40px 100px -30px rgba(0,0,0,.8);padding:28px;display:grid;gap:24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s var(--ease),transform .25s var(--ease),visibility .2s}
.nav-links > li.open .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.mega-platform{grid-template-columns:1.15fr 1fr 1fr 1fr}
.mega-industries{grid-template-columns:1fr 1fr;max-width:720px}
.mega-solutions{grid-template-columns:1fr 1fr 1fr;max-width:860px}
.mega-resources{grid-template-columns:1.1fr 1fr 1fr;max-width:880px}
.mega-company{grid-template-columns:1fr 1fr;max-width:680px}
@media(max-width:900px){.mega,.mega-platform,.mega-industries,.mega-solutions,.mega-resources,.mega-company{grid-template-columns:1fr 1fr;width:min(560px,calc(100vw - 40px))}}
.mega h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.14em;margin:0 0 12px;font-weight:500}
.mega-link{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:9px;border-radius:10px;margin:-2px -9px;transition:background .15s var(--ease);align-items:flex-start;color:var(--paper)}
.mega-link:hover{background:rgba(214,255,74,0.06)}
.mega-link .mi{width:32px;height:32px;border-radius:8px;background:rgba(214,255,74,.08);border:1px solid var(--line);display:grid;place-items:center;color:var(--volt);flex-shrink:0}
.mega-link .mt{display:block;font-size:13.5px;font-weight:500;color:var(--paper);letter-spacing:-.005em;line-height:1.3}
.mega-link .md{display:block;font-size:12px;color:var(--mute);margin-top:3px;line-height:1.4}
.mega-feature{background:linear-gradient(160deg,rgba(214,255,74,.10),rgba(214,255,74,0) 60%);border:1px solid rgba(214,255,74,.2);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px;min-height:200px;justify-content:space-between;position:relative;overflow:hidden}
.mega-feature::before{content:"";position:absolute;top:-50px;right:-50px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(214,255,74,.25),transparent 70%)}
.mega-feature .ft{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);text-transform:uppercase;letter-spacing:.14em;position:relative}
.mega-feature h4{font-size:18px;color:var(--paper);letter-spacing:-0.02em;line-height:1.2;position:relative;font-weight:600}
.mega-feature p{font-size:12.5px;color:var(--mute);line-height:1.5;position:relative}
.mega-feature .go{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--volt);font-weight:500;position:relative;margin-top:4px}
.nav-burger{display:none;width:38px;height:38px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--line);align-items:center;justify-content:center;color:var(--paper)}
.nav-burger svg{width:18px;height:18px}
.nav-cta{background:var(--volt);color:var(--volt-ink);font-weight:600;padding:9px 16px;border-radius:999px;font-size:13.5px;transition:transform .2s var(--ease),box-shadow .2s var(--ease);white-space:nowrap}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 10px 24px -10px rgba(214,255,74,0.6)}
@media(max-width:960px){.nav-links{display:none}.nav-burger{display:inline-flex}.nav-inner{min-width:calc(100% - 24px);padding:8px 8px 8px 18px}}

/* Mobile drawer */
.mobile-drawer{position:fixed;inset:0;z-index:80;background:rgba(10,11,14,0.7);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity .25s var(--ease),visibility .25s}
.mobile-drawer.show{opacity:1;visibility:visible}
.mobile-panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--ink);border-left:1px solid var(--line);padding:20px 20px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s var(--ease);overflow-y:auto}
.mobile-drawer.show .mobile-panel{transform:translateX(0)}
.m-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line)}
.m-close{width:38px;height:38px;border-radius:999px;background:var(--volt);color:var(--volt-ink);display:grid;place-items:center}
.m-search{margin:14px 0 6px;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--line);display:flex;align-items:center;gap:10px;color:var(--mute);font-size:13px}
.m-group{border-bottom:1px solid var(--line)}
.m-group > summary{list-style:none;cursor:pointer;padding:16px 4px;display:flex;align-items:center;justify-content:space-between;font-size:15.5px;color:var(--paper);font-family:'Inter Tight',sans-serif;font-weight:500}
.m-group > summary::-webkit-details-marker{display:none}
.m-group .chev{transition:transform .2s var(--ease);opacity:.6}
.m-group[open] .chev{transform:rotate(180deg);color:var(--volt);opacity:1}
.m-sub{display:flex;flex-direction:column;padding:0 4px 14px 8px;gap:2px}
.m-sub a{padding:10px 6px;font-size:13.5px;color:var(--mute);border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.m-sub a:hover{color:var(--paper);background:rgba(255,255,255,.03)}
.m-cta{margin-top:auto;padding-top:16px;display:flex;flex-direction:column;gap:8px}
.m-cta .primary{padding:14px;border-radius:12px;background:var(--volt);color:var(--volt-ink);font-weight:600;text-align:center;font-size:15px}
.m-cta .ghost{padding:13px;border-radius:12px;border:1px solid var(--line);text-align:center;font-size:14px;color:var(--paper)}
.m-foot{padding-top:14px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--mute)}

/* Page shell helpers */
.page-hero{padding:150px 0 80px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.35;background-image:linear-gradient(to right,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 20% 30%,#000 40%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 20% 30%,#000 40%,transparent 75%)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em;margin-bottom:22px}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--volt);box-shadow:0 0 10px var(--volt)}
h1.page-h{font-size:clamp(40px,6vw,76px);margin-bottom:20px;max-width:18ch;letter-spacing:-0.045em}
h1.page-h em{font-style:normal;color:var(--volt)}
.lede{font-size:clamp(16px,1.2vw,19px);color:var(--mute);max-width:68ch;line-height:1.55}
.crumbs{display:flex;gap:6px;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mute);margin-bottom:24px;text-transform:uppercase;letter-spacing:.1em}
.crumbs a:hover{color:var(--volt)}
.crumbs .sep{opacity:.5}
.section{padding:96px 0;border-bottom:1px solid var(--line)}
@media(max-width:720px){.section{padding:64px 0}.page-hero{padding:120px 0 56px}}
.section-paper{background:var(--paper);color:var(--ink)}
.section-paper .lede{color:var(--mute-2)}
.kicker{display:inline-flex;align-items:center;gap:10px;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.12em;margin-bottom:22px}
.kicker .num{color:var(--volt)}
.section-paper .kicker{color:var(--mute-2)}
.section-paper .kicker .num{color:var(--ink)}
h2{font-size:clamp(30px,3.6vw,48px);margin-bottom:18px;max-width:28ch;letter-spacing:-0.035em}
h3{font-size:22px;font-weight:600}

/* Cards grid */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:40px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
@media(max-width:960px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grid-3,.grid-2,.grid-4{grid-template-columns:1fr}}
.tile{background:var(--ink-2);border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:14px;transition:border-color .2s var(--ease),transform .2s var(--ease)}
.tile:hover{border-color:rgba(214,255,74,.3);transform:translateY(-2px)}
.section-paper .tile{background:#fff;border-color:var(--line-dk)}
.section-paper .tile p{color:var(--mute-2)}
.tile .ic{width:48px;height:48px;border-radius:10px;background:rgba(214,255,74,.08);border:1px solid var(--line);display:grid;place-items:center;color:var(--volt)}
.section-paper .tile .ic{background:var(--ink);color:var(--volt);border-color:var(--ink)}
.tile h3{font-size:20px;letter-spacing:-0.02em}
.tile p{color:var(--mute);font-size:14px;line-height:1.55}
.tile .tg{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.12em}

/* Buttons — authoritative definitions live in base/buttons.css */

/* FAQ */
.faq{margin-top:40px;border-top:1px solid var(--line)}
.section-paper .faq{border-top-color:var(--line-dk)}
.qa{border-bottom:1px solid var(--line);padding:4px 0}
.section-paper .qa{border-bottom-color:var(--line-dk)}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 4px;font-family:'Inter Tight',sans-serif;font-weight:500;font-size:clamp(17px,1.25vw,20px);letter-spacing:-.02em}
.qa summary::-webkit-details-marker{display:none}
.qa .ic,.qa .ic-q{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--mute);font-size:16px;font-weight:400;line-height:1;font-family:'Inter',sans-serif;transition:transform .3s var(--ease),background .2s var(--ease),color .2s var(--ease);flex-shrink:0}
.section-paper .qa .ic,.section-paper .qa .ic-q{border-color:var(--line-dk);color:var(--mute-2)}
.qa[open] .ic,.qa[open] .ic-q{transform:rotate(45deg);background:var(--ink);color:var(--volt);border-color:var(--ink)}
.qa .ans{padding:0 4px 24px;color:var(--mute);font-size:15px;line-height:1.65;max-width:78ch}
.section-paper .qa .ans{color:var(--mute-2)}

/* CTA band */
.cta-band{padding:120px 0;background:var(--paper);color:var(--ink);text-align:center}
.cta-band h2{margin:0 auto 20px;max-width:20ch;font-size:clamp(36px,5vw,64px)}
.cta-band p{color:var(--mute-2);max-width:52ch;margin:0 auto 28px;font-size:17px}
.cta-band p a{color:var(--ink);font-weight:500;border-bottom:1px solid rgba(10,11,14,.3);text-decoration:none;transition:border-color .15s}
.cta-band p a:hover{border-bottom-color:var(--ink)}
.cta-band .btn-ghost{border-color:rgba(10,11,14,.18);color:var(--ink);background:transparent}
.cta-band .btn-ghost:hover{background:rgba(10,11,14,.04);border-color:rgba(10,11,14,.3)}

/* FOOTER */
.footer{background:#070709;color:var(--paper);padding:100px 0 32px;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(5,1fr);gap:40px}
@media(max-width:1080px){.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:32px}}
@media(max-width:720px){.footer-grid{grid-template-columns:1fr 1fr;gap:24px}}
.footer-brand{display:flex;flex-direction:column;gap:16px}
.footer-brand .tag{color:var(--mute);font-size:13.5px;line-height:1.6;max-width:36ch}
.footer-col h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);text-transform:uppercase;letter-spacing:.14em;margin-bottom:18px;font-weight:500}
.footer-col a{display:block;padding:6px 0;font-size:13.5px;color:var(--mute);transition:color .15s var(--ease)}
.footer-col a:hover{color:var(--paper)}
.footer-bottom{margin-top:72px;padding-top:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--mute);font-family:'JetBrains Mono',monospace}
.footer-bottom .socials{display:flex;gap:8px}
.footer-bottom .socials a{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--mute)}
.footer-bottom .socials a:hover{color:var(--volt);border-color:var(--volt)}
.footer-geo{margin-top:36px;padding:18px;border:1px dashed rgba(214,255,74,.25);border-radius:12px;display:flex;align-items:center;gap:14px;font-size:13px;color:var(--mute)}
.footer-geo svg{color:var(--volt);flex-shrink:0}
/* buttons css */
/* ==========================================================================
   Swiftex Buttons — 5 variants
   Primary / Secondary / Primary Outline / Secondary Outline / Link
   ========================================================================== */

.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 20px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.25;
  transition: transform .15s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease), color .15s var(--ease), border-color .15s var(--ease);
  cursor: pointer;
  white-space: nowrap;
  border: 0;
  font-family: inherit;
}
.btn__text { display: inline-block; }
.btn__icon { display: inline-flex; align-items: center; }
.btn__icon--before { margin-right: -2px; }
.btn__icon--after  { margin-left: -2px; }

/* ── Primary: solid primary/volt bg ── */
.btn-primary {
  background: var(--primary);
  color: var(--volt-ink);
  font-weight: 600;
}
.btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px -10px rgba(214, 255, 74, 0.6);
}

/* ── Secondary: solid foreground/paper bg (inverted on dark sections) ── */
.btn-secondary {
  background: var(--foreground);
  color: var(--background);
  font-weight: 600;
}
.btn-secondary:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px -10px rgba(247, 246, 242, 0.35);
}
/* On paper sections + cta-band, secondary auto-inverts → dark bg, light text */
.section-paper .btn-secondary,
.cta-band .btn-secondary {
  background: var(--background);
  color: var(--foreground);
}
.section-paper .btn-secondary:hover,
.cta-band .btn-secondary:hover {
  box-shadow: 0 10px 24px -10px rgba(10, 11, 14, 0.45);
}

/* ── Dark: always dark-filled (volt-ink bg + paper text). Safe on any bg ── */
.btn-dark {
  background: var(--background);
  color: var(--foreground);
  font-weight: 600;
}
.btn-dark:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px -10px rgba(10, 11, 14, 0.45);
}

/* ── Primary Outline: primary border + primary text + transparent bg ── */
.btn-primary-outline {
  border: 1.5px solid var(--primary);
  color: var(--primary);
  background: transparent;
}
.btn-primary-outline:hover {
  background: var(--primary);
  color: var(--volt-ink);
}

/* ── Secondary Outline: paper/muted border + paper text (legacy "ghost") ── */
.btn-secondary-outline {
  border: 1px solid var(--line);
  color: var(--foreground);
  background: transparent;
}
.btn-secondary-outline:hover {
  background: rgba(255, 255, 255, .05);
  border-color: rgba(255, 255, 255, .2);
}

/* Paper-section variant: secondary outline flips to dark.
   Includes .cta-band which uses paper bg but isn't classed .section-paper. */
.section-paper .btn-secondary-outline,
.cta-band .btn-secondary-outline {
  border-color: rgba(10, 11, 14, .18);
  color: var(--background);
  background: transparent;
}
.section-paper .btn-secondary-outline:hover,
.cta-band .btn-secondary-outline:hover {
  background: rgba(10, 11, 14, .04);
  border-color: rgba(10, 11, 14, .3);
}

/* ── Link: text only with underline ── */
.btn-link {
  color: var(--primary);
  background: transparent;
  padding: 8px 0;
  border-radius: 0;
  border-bottom: 1px solid transparent;
  font-weight: 500;
}
.btn-link:hover {
  border-bottom-color: var(--primary);
}
.section-paper .btn-link,
.cta-band .btn-link {
  color: var(--background);
}
.section-paper .btn-link:hover,
.cta-band .btn-link:hover {
  border-bottom-color: var(--background);
}

/* ── Legacy "ghost" alias (maps to secondary-outline for backward compat) ── */
.btn-ghost {
  border: 1px solid var(--line);
  color: var(--foreground);
  background: transparent;
}
.btn-ghost:hover {
  background: rgba(255, 255, 255, .05);
}
.section-paper .btn-ghost {
  border-color: var(--line-dk);
  color: var(--background);
}
.section-paper .btn-ghost:hover {
  background: rgba(10, 11, 14, .04);
  border-color: rgba(10, 11, 14, .3);
}

/* ── CTA row layout ── */
.cta-row {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px;
}
.cta-row--center { justify-content: center; }

/* Unicode arrow character — matches source HTML <span class="arrow">→</span> */
.btn .arrow {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  transition: transform .2s var(--ease);
}
.btn:hover .arrow { transform: translateX(3px); }
.btn:hover .arrow--left { transform: translateX(-3px); }


/* pages-global css */
/* Swiftex v2 — Page-migrated GLOBAL rules
   Rules whose primary class matches a module — loads everywhere so
   modules work on any page. Deduplicated across pages. */

.brand-word-text{font-family:'Inter Tight',sans-serif;font-size:17px;font-weight:600;letter-spacing:-0.03em}
.mega-platform{grid-template-columns:1.15fr 1fr 1fr 1fr}
.mega-industries{grid-template-columns:1fr 1fr;max-width:720px}
.mega-solutions{grid-template-columns:1fr 1fr 1fr;max-width:860px}
.mega-resources{grid-template-columns:1.1fr 1fr 1fr;max-width:880px}
.mega-company{grid-template-columns:1fr 1fr;max-width:680px}
.mega-link{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:9px;border-radius:10px;
    margin:-2px -9px;transition:background .15s var(--ease);
    align-items:flex-start;color:var(--paper);}
.mega-link:hover{background:rgba(214,255,74,0.06)}
.mega-link .mi{width:32px;height:32px;border-radius:8px;
    background:rgba(214,255,74,.08);border:1px solid var(--line);
    display:grid;place-items:center;color:var(--volt);flex-shrink:0;}
.mega-link .mt{display:block;font-size:13.5px;font-weight:500;color:var(--paper);letter-spacing:-.005em;line-height:1.3}
.mega-link .md{display:block;font-size:12px;color:var(--mute);margin-top:3px;line-height:1.4}
.mega-feature{background:linear-gradient(160deg, rgba(214,255,74,.10), rgba(214,255,74,0) 60%);
    border:1px solid rgba(214,255,74,.2);border-radius:14px;padding:22px;
    display:flex;flex-direction:column;gap:10px;min-height:200px;
    justify-content:space-between;position:relative;overflow:hidden;}
.mega-feature::before{content:"";position:absolute;top:-50px;right:-50px;width:180px;height:180px;
    border-radius:50%;background:radial-gradient(circle, rgba(214,255,74,.25), transparent 70%);}
.mega-feature .ft{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);
    text-transform:uppercase;letter-spacing:.14em;position:relative;}
.mega-feature h4{font-size:18px;color:var(--paper);letter-spacing:-0.02em;line-height:1.2;position:relative;font-family:'Inter Tight',sans-serif;font-weight:600}
.mega-feature p{font-size:12.5px;color:var(--mute);line-height:1.5;position:relative}
.mega-feature .go{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--volt);
    font-weight:500;position:relative;margin-top:4px;}
.hero{position:relative;
    padding:160px 0 80px;
    overflow:hidden;
    isolation:isolate;}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;
    background:
      radial-gradient(1100px 600px at 85% 10%, rgba(214,255,74,0.10), transparent 60%),
      radial-gradient(900px 500px at 10% 90%, rgba(255,91,58,0.06), transparent 60%),
      var(--ink);}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.35;
    background-image:
      linear-gradient(to right, rgba(255,255,255,.04) 1px, transparent 1px),
      linear-gradient(to bottom, rgba(255,255,255,.04) 1px, transparent 1px);
    background-size:56px 56px;
    mask-image:radial-gradient(ellipse at 50% 40%, #000 40%, transparent 75%);
    -webkit-mask-image:radial-gradient(ellipse at 50% 40%, #000 40%, transparent 75%);}
.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center;
    margin-top:28px;}
@media (max-width:1000px){.hero-grid{grid-template-columns:1fr;gap:48px}}
h1.hero-h{font-size:clamp(44px, 6.8vw, 96px);
    letter-spacing:-0.045em;
    margin:22px 0 24px;
    line-height:.98;}
.hero-h .reveal{display:inline-block;vertical-align:bottom}
.hero-h .reveal > span{display:inline-block}
.hero-h .mark{position:relative;color:var(--volt);}
.hero-h .mark::after{content:"";position:absolute;left:-.05em;right:-.05em;bottom:.04em;height:.18em;
    background:rgba(214,255,74,.18);border-radius:3px;z-index:-1;}
.hero-sub{font-size:clamp(16px,1.3vw,18.5px);color:var(--mute);
    max-width:560px;line-height:1.55;}
.hero-ctas{display:flex;gap:12px;margin-top:36px;flex-wrap:wrap}
.hero-meta{display:flex;gap:28px;margin-top:44px;color:var(--mute);font-size:13px;
    font-family:'JetBrains Mono',monospace;flex-wrap:wrap;}
.hero-meta strong{color:var(--paper);font-weight:500}
.funnel-stage{position:relative;aspect-ratio:1/1.1;width:100%;max-width:520px;margin-left:auto;}
.funnel-stage svg{width:100%;height:100%;display:block}
.funnel-card{position:absolute;left:-8%;bottom:8%;
    background:rgba(18,19,24,.85);backdrop-filter:blur(10px);
    border:1px solid var(--line);border-radius:12px;
    padding:14px 16px;min-width:240px;
    box-shadow:0 20px 50px -20px rgba(0,0,0,.5);}
.funnel-card .row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}
.funnel-card .row:last-child{margin-bottom:0}
.funnel-card .row .k{color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em}
.funnel-card .row .v{color:var(--paper);font-weight:500}
.funnel-card .row .v.good{color:var(--volt)}
.pulse{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--volt);
    box-shadow:0 0 0 0 rgba(214,255,74,.6);animation:pulse 2.4s var(--ease) infinite;}
@keyframes pulse{
    0%{box-shadow:0 0 0 0 rgba(214,255,74,.55)}
    70%{box-shadow:0 0 0 14px rgba(214,255,74,0)}
    100%{box-shadow:0 0 0 0 rgba(214,255,74,0)}
  }
@media(max-width:720px){.hero{padding:130px 0 60px}}
h2.big{font-size:clamp(36px,5.2vw,72px);max-width:22ch;letter-spacing:-0.04em}
.problem-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center;margin-top:64px;}
@media (max-width:960px){.problem-grid{grid-template-columns:1fr}}
.leak-list{display:flex;flex-direction:column;gap:2px}
.leak-row{display:grid;grid-template-columns:44px 1fr auto;gap:18px;align-items:center;
    padding:20px 0;border-top:1px solid var(--line);}
.leak-row:last-child{border-bottom:1px solid var(--line)}
.leak-num{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--mute)}
.leak-title{font-size:18px;font-weight:500;letter-spacing:-0.01em}
.leak-title .red{color:var(--leak)}
.leak-bar{width:120px;height:6px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden;}
.leak-bar > i{display:block;height:100%;background:linear-gradient(90deg,var(--leak), #ff8966);
    transform:scaleX(var(--w,.5));transform-origin:left;
    transition:transform 1.2s var(--ease);}
.leaky-funnel{aspect-ratio:1/1;width:100%;max-width:460px;margin-left:auto}
.leaky-funnel svg{width:100%;height:100%}
.shift{padding:160px 0;background:var(--paper);color:var(--ink);position:relative;overflow:hidden}
.shift .wrap{position:relative;z-index:1}
.shift-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:center;margin-top:28px}
@media(max-width:960px){.shift-grid{grid-template-columns:1fr;gap:48px}}
.shift h2{font-family:'Inter Tight',sans-serif;font-weight:500;
    font-size:clamp(36px,5.6vw,84px);line-height:1;letter-spacing:-0.04em;
    max-width:18ch;}
.shift h2 s{text-decoration:line-through;text-decoration-thickness:3px;color:var(--mute-2);text-decoration-color:var(--leak)}
.shift h2 em{font-style:normal;font-weight:600;position:relative}
.shift h2 em::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:.5em;
    background:var(--volt);opacity:.55;z-index:-1;border-radius:2px;}
.shift-foot{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:56px;color:var(--mute-2);font-size:15px;line-height:1.55;}
@media(max-width:720px){.shift-foot{grid-template-columns:1fr;gap:24px}}
.shift-card{background:#0A0B0E;color:var(--paper);border-radius:20px;padding:36px;position:relative;overflow:hidden;
    box-shadow:0 40px 80px -40px rgba(0,0,0,.35);}
.shift-card .sc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.12em}
.shift-card .sc-head .live{display:inline-flex;align-items:center;gap:6px;color:var(--volt)}
.shift-card .sc-head .live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--volt);box-shadow:0 0 10px var(--volt);animation:blink 1.6s infinite}
@keyframes blink{50%{opacity:.35}}
.shift-card .rows{display:flex;flex-direction:column;gap:14px}
.shift-card .row{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--line)}
.shift-card .row .k{font-size:12.5px;color:var(--mute);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.shift-card .row .old{font-size:15px;color:var(--mute);text-decoration:line-through;text-decoration-color:rgba(255,91,58,.7);text-decoration-thickness:2px;text-align:right}
.shift-card .row .new{font-size:15px;color:var(--paper);font-weight:500;text-align:right}
.shift-card .row .new b{color:var(--volt);font-weight:600}
.shift-card .row .arr{color:var(--mute-2);font-family:'JetBrains Mono',monospace;font-size:12px}
.shift-card .foot-line{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}
.shift-card .foot-line .tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em}
.shift-card .foot-line .big{font-family:'Inter Tight',sans-serif;font-size:34px;font-weight:600;letter-spacing:-.03em;line-height:1}
.shift-card .foot-line .big .u{color:var(--mute);font-size:.5em;margin-left:4px}
.sol-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:64px;}
.sol{grid-column:span 4;
    background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);
    padding:28px;position:relative;overflow:hidden;min-height:260px;
    transition:border-color .3s var(--ease), transform .3s var(--ease);}
.sol:hover{border-color:rgba(214,255,74,.35);transform:translateY(-3px)}
.sol-icon{width:36px;height:36px;display:grid;place-items:center;
    border-radius:10px;background:rgba(214,255,74,.08);border:1px solid rgba(214,255,74,.18);
    margin-bottom:22px;}
.sol h3{font-size:20px;letter-spacing:-0.02em;margin-bottom:8px}
.sol p{font-size:14.5px;color:var(--mute);line-height:1.55}
.sol .micro{position:absolute;right:20px;bottom:20px;opacity:.7}
@media(max-width:960px){.sol{grid-column:span 6}}
@media(max-width:640px){.sol{grid-column:span 12}}
.sol.wide{grid-column:span 8}
@media(max-width:960px){.sol.wide{grid-column:span 12}}
.steps-wrap{margin-top:64px;position:relative}
.steps{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px) / 3.5);
    gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
    padding:4px 4px 28px;scroll-padding-left:4px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;}
.steps::-webkit-scrollbar{display:none}
@media(max-width:900px){.steps{grid-auto-columns:calc((100% - 24px) / 1.4);gap:14px}}
@media(max-width:560px){.steps{grid-auto-columns:calc((100% - 24px) / 1.15)}}
/* Home steps carousel cards — scoped to .steps so they don't leak into article-content .step (Playbook). */
.steps .step{scroll-snap-align:start;
    background:#fff;border:1px solid rgba(10,11,14,0.10);border-radius:16px;
    padding:28px;min-height:340px;
    display:grid;grid-template-rows:auto 1fr auto auto;row-gap:14px;
    transition:transform .25s var(--ease), border-color .25s var(--ease), box-shadow .25s var(--ease);}
.steps .step:hover{transform:translateY(-3px);border-color:rgba(10,11,14,.25);box-shadow:0 20px 40px -24px rgba(10,11,14,.18)}
.steps .step .n{font-family:'JetBrains Mono',monospace;font-size:11px;color:#5A5E66;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:10px}
.steps .step .n::before{content:"";width:8px;height:8px;border-radius:50%;background:#5A5E66}
.steps .step.active .n::before,.steps .step:hover .n::before{background:var(--volt);box-shadow:0 0 10px var(--volt)}
.steps .step .ill{align-self:center;height:96px;width:auto}
.steps .step h3{font-size:22px;letter-spacing:-0.025em;color:#0A0B0E;font-weight:600;line-height:1.1}
.steps .step p{font-size:14px;color:#5A5E66;line-height:1.55;min-height:66px}
.rail-nav{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}
.rail-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(10,11,14,.15);
    background:#fff;color:#0A0B0E;display:grid;place-items:center;cursor:pointer;
    transition:background .15s var(--ease), border-color .15s var(--ease), opacity .15s var(--ease);}
.rail-btn:hover{background:#0A0B0E;color:#fff;border-color:#0A0B0E}
.rail-btn[disabled]{opacity:.35;cursor:default}
.rail-btn[disabled]:hover{background:#fff;color:#0A0B0E;border-color:rgba(10,11,14,.15)}
.rail-progress{flex:1;height:2px;background:rgba(10,11,14,.08);border-radius:2px;margin:auto 16px auto 0;overflow:hidden;align-self:center}
.rail-progress > i{display:block;height:100%;background:#0A0B0E;width:28%;transition:width .3s var(--ease), transform .3s var(--ease)}
.rail-head{display:flex;align-items:center;gap:16px;margin-top:12px}
.bens{margin-top:64px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;
    border-top:1px solid var(--line-dk);}
@media(max-width:900px){.bens{grid-template-columns:repeat(2,1fr)}}
/* Partner-benefits dark cards — scoped to .ben-tabs so they don't leak into home-benefits .bens grid (cell-divider design). */
.ben-tabs .ben{background:var(--ink-2);border:1px solid var(--line);border-radius:16px;padding:30px}
.ben-tabs .ben:last-child{border-right:0}
.ben-tabs .ben .stat{font-family:'Inter Tight',sans-serif;font-weight:600;
    font-size:clamp(48px,6vw,84px);letter-spacing:-0.045em;line-height:1;}
.ben-tabs .ben .stat .u{font-size:.5em;color:var(--mute-2);margin-left:2px}
.ben-tabs .ben .label{margin-top:12px;font-size:14px;color:var(--mute-2)}
.ben-tabs .ben .sub{margin-top:8px;font-size:13px;color:var(--mute-2);font-family:'JetBrains Mono',monospace}
.cases{margin-top:64px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:960px){.cases{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cases{grid-template-columns:1fr}}
.case{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);
    padding:28px;position:relative;
    display:grid;grid-template-rows:auto 72px 1fr auto;row-gap:18px;
    min-height:320px;overflow:hidden;
    transition:border-color .25s var(--ease), transform .25s var(--ease);}
.case:hover{border-color:rgba(214,255,74,.35);transform:translateY(-3px)}
.case .tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);
    text-transform:uppercase;letter-spacing:.1em;}
.case .pict{width:56px;height:56px;border-radius:12px;
    background:linear-gradient(135deg, rgba(214,255,74,.12), rgba(214,255,74,0));
    border:1px solid var(--line);display:grid;place-items:center;}
.case h3{font-size:20px;letter-spacing:-0.025em;color:var(--paper);font-weight:600;line-height:1.15;align-self:end}
.case p{font-size:13.5px;color:var(--mute);line-height:1.55}
.logos{margin-top:56px;
    display:grid;grid-template-columns:repeat(6,1fr);gap:0;
    border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
@media(max-width:900px){.logos{grid-template-columns:repeat(3,1fr)}}
.logo-cell{padding:36px 20px;display:grid;place-items:center;
    border-right:1px solid var(--line);border-bottom:1px solid var(--line);
    color:var(--mute);font-family:'Inter Tight',sans-serif;font-weight:500;letter-spacing:-0.02em;
    font-size:22px;transition:color .2s var(--ease);}
.logo-cell:hover{color:var(--paper)}
.quotes{margin-top:64px;display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
@media(max-width:900px){.quotes{grid-template-columns:1fr}}
.quote{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);
    padding:36px;}
.quote blockquote{font-family:'Inter Tight',sans-serif;font-size:26px;letter-spacing:-0.02em;line-height:1.25;
    font-weight:500;}
.quote.small blockquote{font-size:20px}
.quote .who{margin-top:28px;display:flex;align-items:center;gap:12px;color:var(--mute);font-size:14px;}
.quote .av{width:38px;height:38px;border-radius:50%;
    background:linear-gradient(135deg,#3b3f48,#1a1c22);border:1px solid var(--line);}
.faq-wrap{margin-top:64px;border-top:1px solid var(--line)}
.final{margin:0 auto;padding:120px 32px 140px;max-width:var(--container);
    position:relative;text-align:left;}
.final-card{position:relative;overflow:hidden;
    background:radial-gradient(800px 400px at 100% 0%, rgba(214,255,74,.16), transparent 55%), var(--ink-2);
    border:1px solid var(--line);border-radius:28px;
    padding:72px 56px;}
@media(max-width:720px){.final-card{padding:48px 28px;border-radius:20px}.final{padding:80px 20px 100px}}
.final-card h2{font-size:clamp(36px,5vw,72px);letter-spacing:-0.04em;max-width:20ch}
.final-card p{color:var(--mute);margin-top:20px;max-width:52ch;font-size:17px}
.final-ctas{display:flex;gap:12px;margin-top:36px;flex-wrap:wrap}
.orb{position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle at 30% 30%, rgba(214,255,74,.4), rgba(214,255,74,0) 60%);
    filter:blur(20px);animation:drift 16s ease-in-out infinite alternate;pointer-events:none;}
@keyframes drift{to{transform:translate(-40px, 40px) scale(1.06)}}
#tweaks .row{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
#tweaks .chip{padding:7px 12px;border-radius:999px;border:1px solid var(--line);
    background:transparent;color:var(--paper);font-size:12px;cursor:pointer;
    transition:all .15s var(--ease);}
#tweaks .chip.sel{background:var(--volt);color:var(--volt-ink);border-color:var(--volt)}
@media (prefers-reduced-motion: reduce){.hero-h .reveal > span{animation:none;transform:none}.pulse, .orb, .flowing{animation:none}}
.platform-diagram{padding:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:24px;margin-top:60px;position:relative;overflow:hidden}
.pd-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
@media(max-width:900px){.pd-grid{grid-template-columns:repeat(2,1fr)}}
.pd-node{background:var(--ink);border:1px solid var(--line);border-radius:14px;padding:22px;position:relative;transition:all .2s var(--ease)}
.pd-node:hover{border-color:rgba(214,255,74,.4);transform:translateY(-3px)}
.pd-node .n{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--volt);letter-spacing:.14em;text-transform:uppercase}
.pd-node h4{font-size:17px;margin:8px 0 6px;letter-spacing:-.02em}
.pd-node p{font-size:12.5px;color:var(--mute);line-height:1.5}
.pd-node a{display:inline-flex;gap:4px;font-size:12px;color:var(--volt);margin-top:10px;font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.pd-head{text-align:center;margin-bottom:32px}
.pd-head .t{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);text-transform:uppercase;letter-spacing:.14em;margin-bottom:10px}
.pd-head h3{font-size:clamp(24px,3vw,36px);letter-spacing:-.03em}
.pd-layer{margin-top:28px;padding:22px;border:1px dashed var(--line);border-radius:14px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}
.pd-layer .lb{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.12em;margin-right:auto}
.pd-chip{padding:7px 13px;border-radius:999px;background:var(--ink-3);font-size:12.5px;color:var(--paper)}
.funnel-before-after{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
@media(max-width:720px){.funnel-before-after{grid-template-columns:1fr}}
.ba{background:#ffffff;border:1px solid rgba(10,11,14,.08);border-radius:18px;padding:30px;color:var(--ink)}
.ba h4{font-size:20px;margin-bottom:20px;letter-spacing:-.02em;color:var(--ink)}
.ba-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed rgba(10,11,14,.1);font-size:13.5px}
.ba-row:last-child{border-bottom:0}
.ba-row .k{color:rgba(10,11,14,.55)}
.ba-row .v{font-family:'JetBrains Mono',monospace;color:var(--ink)}
.ba.after{border-color:rgba(10,11,14,.14);background:linear-gradient(160deg,rgba(10,11,14,.04),#ffffff 60%);position:relative}
.ba.after::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ink);border-radius:18px 0 0 18px}
.ba.after h4 span{color:rgba(10,11,14,.5);font-weight:500}
.ba.after .ba-row .v{font-weight:600}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
/* Paper-section integration pills (Platform "Architecture" band, etc.) — white pill, dark text, mute mono prefix.
   Scoped to .section-paper so they don't collide with solutions.css's dark-hero .pill rule. */
.section-paper .pill{padding:8px 14px;border-radius:999px;border:1px solid rgba(10,11,14,.12);font-size:13px;color:var(--ink);background:#ffffff;font-family:'Inter',sans-serif;letter-spacing:normal;text-transform:none}
.section-paper .pill .c{color:rgba(10,11,14,.45);font-family:'JetBrains Mono',monospace;margin-right:6px;font-size:11px;letter-spacing:.05em;text-transform:uppercase}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}
@media(max-width:820px){.principles{grid-template-columns:1fr}}
.pr{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:22px}
.pr .pr-n{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);letter-spacing:.12em;margin-bottom:10px}
.pr h4{font-family:'Inter Tight',sans-serif;font-size:17px;font-weight:600;color:var(--paper);letter-spacing:-.01em;margin-bottom:6px;line-height:1.3}
.pr p{font-size:13px;color:var(--mute-2);line-height:1.55}
.priceGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}
@media(max-width:900px){.priceGrid{grid-template-columns:1fr}}
.pg-col h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:14px}
.svc{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:22px 24px;margin-bottom:12px;display:grid;grid-template-columns:46px 1fr;gap:18px;align-items:start;position:relative;overflow:hidden}
.svc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}
.svc.sA::before{background:#4F7CFF}
.svc.sB::before{background:#3FB984}
.svc.sC::before{background:#F5A623}
.svc .sI{width:46px;height:46px;border-radius:10px;background:rgba(255,255,255,.03);border:1px solid var(--line);display:grid;place-items:center;color:var(--paper)}
.svc .sI svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.svc h4{font-family:'Inter Tight',sans-serif;font-size:18px;font-weight:600;color:var(--paper);letter-spacing:-.01em;margin-bottom:8px}
.svc .stag{display:inline-block;padding:4px 12px;border-radius:999px;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;font-weight:500;margin-bottom:10px}
.svc.sA .stag{background:rgba(79,124,255,.14);color:#6B8FFF}
.svc.sB .stag{background:rgba(63,185,132,.14);color:#4FCB93}
.svc.sC .stag{background:rgba(245,166,35,.14);color:#FFBE59}
.svc p{font-size:13px;color:var(--mute-2);line-height:1.55}
.wa-box{background:rgba(63,185,132,.05);border:1px solid rgba(63,185,132,.18);border-radius:14px;padding:24px}
.wa-head{display:grid;grid-template-columns:46px 1fr;gap:18px;margin-bottom:18px;align-items:start}
.wa-head .wI{width:46px;height:46px;border-radius:10px;background:rgba(63,185,132,.12);display:grid;place-items:center;color:#4FCB93}
.wa-head .wI svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.wa-head h4{font-family:'Inter Tight',sans-serif;font-size:18px;font-weight:600;color:var(--paper);letter-spacing:-.01em;margin-bottom:4px}
.wa-head p{font-size:12.5px;color:var(--mute-2);line-height:1.5}
.wa-sub{background:var(--ink-2);border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:10px}
.wa-sub:last-child{margin-bottom:0}
.wa-sub h5{font-family:'Inter Tight',sans-serif;font-size:15.5px;font-weight:600;color:#4FCB93;letter-spacing:-.01em;margin-bottom:6px}
.wa-sub p{font-size:13px;color:var(--paper);line-height:1.5}
.shapers{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
@media(max-width:900px){.shapers{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.shapers{grid-template-columns:1fr}}
.shp{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:22px}
.shp .shp-n{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);letter-spacing:.1em;margin-bottom:10px}
.shp h4{font-family:'Inter Tight',sans-serif;font-size:16px;font-weight:600;color:var(--paper);letter-spacing:-.01em;margin-bottom:6px}
.shp p{font-size:12.5px;color:var(--mute-2);line-height:1.55}
.scope{margin-top:48px;background:var(--ink);border:1px solid rgba(214,255,74,.2);border-radius:20px;padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
@media(max-width:820px){.scope{grid-template-columns:1fr;padding:28px}}
.scope h3{font-family:'Inter Tight',sans-serif;font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--paper);line-height:1.2;margin-bottom:12px}
.scope p{font-size:14px;color:var(--mute-2);line-height:1.55;margin-bottom:18px}
.scope ol{list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:12px}
.scope ol li{padding-left:38px;position:relative;font-size:14px;color:var(--paper);line-height:1.4;counter-increment:s}
.scope ol li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:0;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.08em;padding-top:2px}
.foot-note{margin-top:28px;text-align:center;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mute);letter-spacing:.06em}
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
@media(max-width:900px){.people{grid-template-columns:repeat(2,1fr)}}
.person{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:10px}
.person .av{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#D6FF4A,#7CFFB2);display:grid;place-items:center;color:var(--volt-ink);font-weight:700;font-size:18px;letter-spacing:-.02em}
.person h4{font-size:16px;letter-spacing:-.02em;color:var(--paper)}
.person p{color:var(--mute)}
.person .t{font-size:12.5px;color:var(--mute);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
/* ============================================================
   Contact form-wrap: dark card containing either the static .form
   OR an embedded HubSpot form. HubSpot injects its own CSS with
   inline floats / widths / margins — every property uses !important
   so source design wins.
   ============================================================ */
.form-wrap{background:var(--ink-2);border:1px solid var(--line);border-radius:20px;padding:36px;color:var(--paper)}
.form-wrap > h3{font-size:22px;letter-spacing:-.02em;margin-bottom:20px;color:var(--paper);font-weight:600}
.form-wrap .form-privacy{font-size:11.5px;color:var(--mute);text-align:center;margin-top:12px;line-height:1.55}
.form-wrap .hs_cos_wrapper_type_form > .form-title:empty{display:none}
.form-wrap .hs_cos_wrapper_type_form > .form-title:not(:empty){display:block;font-size:22px;letter-spacing:-.02em;margin-bottom:20px;color:var(--paper);font-weight:600}

/* Reset HubSpot form floats / widths / margins */
.form-wrap form.hs-form,
.form-wrap form.hs-form *{box-sizing:border-box;line-height:1.4}
.form-wrap form.hs-form ::-webkit-input-placeholder{line-height:1.4 !important}
.form-wrap form.hs-form{display:block !important;width:100% !important;max-width:none !important;float:none !important}
.form-wrap form.hs-form fieldset{max-width:none !important;margin:0 !important;padding:0 !important;border:0 !important;width:100% !important}
.form-wrap form.hs-form fieldset.form-columns-1{display:block !important;margin-bottom:16px !important}
.form-wrap form.hs-form fieldset.form-columns-2{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;margin-bottom:16px !important}
.form-wrap form.hs-form fieldset.form-columns-3{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:12px !important;margin-bottom:16px !important}
.form-wrap form.hs-form fieldset > div.hs-form-field{width:100% !important;float:none !important;padding:0 !important;margin:0 !important}
.form-wrap form.hs-form fieldset.form-columns-1 > div.hs-form-field + div.hs-form-field{margin-top:0 !important}

/* Field group: stack label + input vertically */
.form-wrap form.hs-form .hs-form-field{display:flex !important;flex-direction:column !important;gap:6px !important}
.form-wrap form.hs-form .hs-form-field > label{font-size:12px !important;color:var(--mute) !important;text-transform:uppercase !important;font-family:'JetBrains Mono',monospace !important;letter-spacing:.1em !important;font-weight:400 !important;line-height:1.55 !important;display:block !important;padding:0 !important;margin:0 !important;vertical-align:baseline !important}
.form-wrap form.hs-form .hs-form-field > label > span{line-height:1.55 !important;font-weight:400 !important;font-size:12px !important;color:var(--mute) !important;text-transform:uppercase !important;font-family:'JetBrains Mono',monospace !important;letter-spacing:.1em !important}
.form-wrap form.hs-form .hs-form-field > label > span{font-weight:400 !important}
.form-wrap form.hs-form .hs-form-field > label .hs-form-required{color:var(--volt) !important;margin-left:4px !important}
.form-wrap form.hs-form .hs-field-desc,
.form-wrap form.hs-form legend.hs-field-desc{display:none !important;padding:0 !important;margin:0 !important}
.form-wrap form.hs-form .input{margin:0 !important;padding:0 !important;width:100% !important}

/* Inputs / selects / textareas */
.form-wrap form.hs-form input.hs-input,
.form-wrap form.hs-form select.hs-input,
.form-wrap form.hs-form textarea.hs-input{
  background:var(--ink) !important;
  border:1px solid var(--line) !important;
  border-radius:10px !important;
  padding:13px 14px !important;
  color:var(--paper) !important;
  font:inherit !important;
  font-size:14px !important;
  font-family:'Inter',sans-serif !important;
  line-height:1.55 !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  min-height:0 !important;
  display:block !important;
  margin:0 !important;
  box-sizing:border-box !important;
  transition:border-color .15s var(--ease) !important;
  vertical-align:baseline !important;
}
.form-wrap form.hs-form .hs-input:focus{outline:none !important;border-color:var(--volt) !important;box-shadow:none !important}
.form-wrap form.hs-form .hs-input::placeholder{color:var(--mute) !important;opacity:1 !important}
.form-wrap form.hs-form textarea.hs-input{min-height:110px !important;resize:vertical !important}
.form-wrap form.hs-form select.hs-input{
  appearance:none !important;-webkit-appearance:none !important;-moz-appearance:none !important;
  background-image:linear-gradient(45deg,transparent 50%,var(--mute) 50%),linear-gradient(135deg,var(--mute) 50%,transparent 50%) !important;
  background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50% !important;
  background-size:5px 5px,5px 5px !important;
  background-repeat:no-repeat !important;
  padding-right:36px !important;
  cursor:pointer !important;
}

/* Checkbox / radio / boolean fields */
.form-wrap form.hs-form .hs-fieldtype-checkbox ul,
.form-wrap form.hs-form .hs-fieldtype-radio ul,
.form-wrap form.hs-form .hs-fieldtype-booleancheckbox ul,
.form-wrap form.hs-form ul.inputs-list{list-style:none !important;padding:0 !important;margin:0 !important;display:flex !important;flex-direction:column !important;gap:8px !important}
.form-wrap form.hs-form ul.inputs-list li{display:flex !important;align-items:center !important;gap:8px !important;font-size:13.5px !important;color:var(--paper) !important}
.form-wrap form.hs-form input[type=checkbox],
.form-wrap form.hs-form input[type=radio]{accent-color:var(--volt) !important;width:auto !important;margin:0 !important;flex:0 0 auto !important}
.form-wrap form.hs-form li.hs-form-checkbox label,
.form-wrap form.hs-form li.hs-form-radio label,
.form-wrap form.hs-form li.hs-form-booleancheckbox label{font-family:'Inter',sans-serif !important;font-size:13.5px !important;text-transform:none !important;letter-spacing:0 !important;color:var(--paper) !important;font-weight:400 !important}

/* Submit */
.form-wrap form.hs-form .hs_submit,
.form-wrap form.hs-form .hs-submit{margin-top:0 !important;width:100% !important;display:block !important}
.form-wrap form.hs-form .hs_submit .actions,
.form-wrap form.hs-form .hs-submit .actions{padding:0 !important;margin:0 !important;width:100% !important;display:block !important}
.form-wrap form.hs-form .hs-button,
.form-wrap form.hs-form input.hs-button,
.form-wrap form.hs-form input[type=submit]{
  width:100% !important;margin-top:10px !important;padding:14px !important;border:0 !important;
  border-radius:999px !important;background:var(--volt) !important;color:var(--volt-ink) !important;
  font-weight:600 !important;font-size:14px !important;font-family:'Inter',sans-serif !important;
  cursor:pointer !important;display:block !important;line-height:1.55 !important;letter-spacing:0 !important;
  text-transform:none !important;transition:filter .15s var(--ease) !important;height:auto !important;
  min-height:0 !important;
  -webkit-appearance:none !important;appearance:none !important;
}
.form-wrap form.hs-form .hs-button:hover{filter:brightness(1.05) !important}

/* Errors / success / legal */
.form-wrap form.hs-form .hs-error-msgs{list-style:none !important;padding:0 !important;margin:6px 0 0 !important;font-size:12px !important;color:#ff5c5c !important}
.form-wrap form.hs-form .hs-error-msgs li label{color:#ff5c5c !important;font-family:'Inter',sans-serif !important;font-size:12px !important;text-transform:none !important;letter-spacing:0 !important}
.form-wrap form.hs-form input.invalid.error,
.form-wrap form.hs-form select.invalid.error,
.form-wrap form.hs-form textarea.invalid.error{border-color:#ff5c5c !important}
.form-wrap form.hs-form .submitted-message,
.form-wrap .submitted-message{color:var(--paper) !important;padding:20px 0 !important;text-align:center !important;font-size:14px !important}
.form-wrap form.hs-form .legal-consent-container{margin-top:14px !important;font-size:11.5px !important;color:var(--mute) !important;line-height:1.45 !important}
.form-wrap form.hs-form .legal-consent-container p{margin:0 !important;font-size:11.5px !important;color:var(--mute) !important}
.form-wrap form.hs-form .legal-consent-container a{color:var(--volt) !important;text-decoration:none !important}

@media(max-width:560px){
  .form-wrap{padding:28px 22px}
  .form-wrap form.hs-form fieldset.form-columns-2,
  .form-wrap form.hs-form fieldset.form-columns-3{grid-template-columns:1fr !important}
}

/* dark card on .section-paper: keep text white inside the card despite section-paper's color:var(--ink) cascade */
.section-paper .person{color:var(--paper)}
.timeline{margin-top:40px;margin-left:6px;border-left:1px solid var(--line);padding-left:32px;display:flex;flex-direction:column;gap:28px}
.tl{position:relative}
.tl::before{content:"";position:absolute;left:-38px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--volt);box-shadow:0 0 0 4px var(--ink)}
.tl .y{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.1em;text-transform:uppercase}
.tl h4{font-size:18px;letter-spacing:-.02em;margin:4px 0 4px}
.tl p{color:var(--mute);font-size:14px;line-height:1.55}
.jobs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:30px}
@media(max-width:720px){.jobs{grid-template-columns:1fr}}
.job{padding:22px;background:var(--ink-2);border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:6px}
.job h4{font-size:15.5px;letter-spacing:-.015em}
.job .ms{font-size:12px;color:var(--mute);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.press{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.press span{padding:10px 16px;border:1px solid var(--line);border-radius:999px;color:var(--mute);font-size:13.5px;font-family:'Inter Tight',sans-serif;font-weight:500}
.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;margin-top:48px;align-items:start}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}}
.form{background:var(--ink-2);border:1px solid var(--line);border-radius:20px;padding:36px}
.form h3{font-size:22px;letter-spacing:-.02em;margin-bottom:20px}
.form .fg{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.form label{font-size:12px;color:var(--mute);text-transform:uppercase;font-family:'JetBrains Mono',monospace;letter-spacing:.1em}
.form input,.form select,.form textarea{background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:13px 14px;color:var(--paper);font:inherit;font-size:14px;transition:border-color .15s var(--ease)}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--volt)}
.form textarea{min-height:110px;resize:vertical}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form button{width:100%;margin-top:10px;padding:14px;border-radius:999px;background:var(--volt);color:var(--volt-ink);font-weight:600;font-size:14px;cursor:pointer}
.side{display:flex;flex-direction:column;gap:14px}
.side .blk{background:var(--ink-2);border:1px solid var(--line);border-radius:16px;padding:24px}
.side .blk h4{font-size:15px;letter-spacing:-.01em;margin-bottom:6px}
.side .blk p{font-size:13.5px;color:var(--mute);line-height:1.55}
.side .blk a.lk{display:inline-block;margin-top:10px;font-size:13px;color:var(--volt);font-family:'JetBrains Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.offices{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
@media(max-width:720px){.offices{grid-template-columns:repeat(2,1fr)}}
.off{padding:22px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px}
.off .c{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);text-transform:uppercase;letter-spacing:.14em}
.off h4{font-size:16px;margin:6px 0 6px;letter-spacing:-.02em;color:var(--paper);font-weight:600}
.off p{font-size:13px;color:var(--mute);line-height:1.55}
.p-models{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
@media(max-width:960px){.p-models{grid-template-columns:1fr}}
.pm{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:30px;display:flex;flex-direction:column;gap:18px;position:relative}
.pm .pm-n{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;color:var(--volt);text-transform:uppercase}
.pm h3{font-size:22px;letter-spacing:-.02em;color:var(--paper);line-height:1.2}
.pm .pm-block h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:10px;font-weight:500}
.pm ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.pm ul li{padding-left:18px;position:relative;font-size:13.5px;color:var(--paper);line-height:1.5}
.pm ul li::before{content:"→";position:absolute;left:0;top:0;color:var(--volt);font-weight:500}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
@media(max-width:1000px){.why-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.why-grid{grid-template-columns:1fr}}
.why{background:#fff;border:1px solid rgba(10,11,14,.08);border-radius:16px;padding:26px}
.why .w-ic{width:40px;height:40px;border-radius:10px;background:var(--ink);color:var(--volt);display:grid;place-items:center;margin-bottom:16px}
.why .w-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.why h4{font-size:16px;letter-spacing:-.015em;color:var(--ink);margin-bottom:10px}
.why ul{list-style:none;display:flex;flex-direction:column;gap:6px}
.why ul li{font-size:13px;color:rgba(10,11,14,.65);line-height:1.5;padding-left:16px;position:relative}
.why ul li::before{content:"";position:absolute;left:0;top:8px;width:4px;height:4px;border-radius:50%;background:var(--ink);opacity:.35}
.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(max-width:900px){.journey{grid-template-columns:1fr}}
.jstep{padding:30px 26px;border-right:1px solid var(--line);position:relative}
.jstep:last-child{border-right:0}
@media(max-width:900px){.jstep{border-right:0;border-bottom:1px solid var(--line)}.jstep:last-child{border-bottom:0}}
.jstep .jn{font-family:'JetBrains Mono',monospace;font-size:30px;color:var(--volt);margin-bottom:18px;line-height:1;font-weight:500}
.jstep h4{font-size:17px;color:var(--paper);letter-spacing:-.015em;margin-bottom:10px;line-height:1.25}
.jstep p{font-size:13.5px;color:var(--mute);line-height:1.55}
.logo-wall{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:40px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--ink-2)}
@media(max-width:760px){.logo-wall{grid-template-columns:repeat(3,1fr)}}
.lw{padding:32px 20px;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:100px}
.lw:nth-child(5n){border-right:0}
@media(max-width:760px){.lw{border-right:1px solid var(--line)}.lw:nth-child(5n){border-right:1px solid var(--line)}.lw:nth-child(3n){border-right:0}}
.lw .lname{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:15px;letter-spacing:-.015em;color:var(--paper);text-align:center}
.lw .lname small{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:400;color:var(--mute);margin-top:4px;letter-spacing:.08em;text-transform:uppercase}
.ben-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
@media(max-width:900px){.ben-tabs{grid-template-columns:1fr}}
.ben-tabs .ben .bn{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--volt);text-transform:uppercase;margin-bottom:10px}
.ben-tabs .ben h3{font-size:20px;color:var(--paper);letter-spacing:-.02em;margin-bottom:8px}
.ben-tabs .ben p{font-size:13.5px;color:var(--mute);line-height:1.55;margin-bottom:18px}
.ben-tabs .ben ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.ben-tabs .ben ul li{padding-left:20px;position:relative;font-size:13.5px;color:var(--paper);line-height:1.5}
.ben-tabs .ben ul li::before{content:"✓";position:absolute;left:0;top:0;color:var(--volt);font-weight:600}
.apply-card{margin-top:40px;background:linear-gradient(160deg,rgba(214,255,74,.12),transparent 60%);border:1px solid rgba(214,255,74,.22);border-radius:22px;padding:44px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}
@media(max-width:820px){.apply-card{grid-template-columns:1fr;padding:32px}}
.apply-card h3{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.025em;line-height:1.2;margin-bottom:12px}
.apply-card p{color:var(--mute);font-size:14.5px;line-height:1.6;margin-bottom:20px;max-width:52ch}
.apply-card form,.apply-card .hs-form{display:grid;gap:10px}
.apply-card input,.apply-card select,.apply-card .hs-input,.apply-card textarea.hs-input{background:rgba(0,0,0,.3);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--paper);font-family:'Inter',sans-serif;font-size:14px;width:100%;box-sizing:border-box;margin:0}
.apply-card input::placeholder,.apply-card .hs-input::placeholder,.apply-card textarea.hs-input::placeholder{color:var(--mute)}
.apply-card button,.apply-card .hs-button,.apply-card input[type=submit].hs-button{background:var(--volt);color:var(--volt-ink);border:0;border-radius:999px;padding:12px;font-weight:600;font-size:14px;cursor:pointer;font-family:'Inter',sans-serif;width:100%;text-align:center}
.apply-card .hs-form-field{margin-bottom:0}
.apply-card .hs-form-field>label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.apply-card .hs-form-field .input{margin:0}
.apply-card .hs-error-msgs{list-style:none;padding:0;margin:4px 0 0;color:var(--leak,#ff5a5a);font-size:12px}
.apply-card .hs_error_rollup{display:none}
.apply-card .submitted-message{color:var(--paper);font-size:14.5px;line-height:1.55}
@media(max-width:720px){.hero{padding:130px 0 60px}.case-body,.case-metrics{padding:32px !important}.pcard{padding:28px !important}.final-card{padding:48px 28px !important;border-radius:20px}.final{padding:80px 20px 100px !important}.device{padding:14px}}
@media (max-width:1000px){.hero-grid{grid-template-columns:1fr}}
.hero-h em{font-style:normal;color:var(--volt);position:relative}
.hero-h em::after{content:"";position:absolute;left:-.04em;right:-.04em;bottom:.06em;height:.18em;background:rgba(214,255,74,.18);border-radius:3px;z-index:-1}
.device{position:relative;background:var(--ink-2);border:1px solid var(--line);border-radius:24px;
    padding:18px;display:flex;flex-direction:column;gap:10px;
    box-shadow:0 40px 100px -40px rgba(0,0,0,.8), 0 0 0 1px rgba(214,255,74,.04);
    max-width:440px;margin-left:auto;}
.device .bar{display:flex;align-items:center;gap:10px;padding:4px 6px 10px;border-bottom:1px solid var(--line);margin-bottom:4px;}
.device .bar .avatar{width:30px;height:30px;border-radius:50%;
    background:linear-gradient(135deg,#D6FF4A,#9ccb2e);
    display:grid;place-items:center;color:var(--ink);font-weight:700;font-size:13px;font-family:'Inter Tight',sans-serif;}
.device .bar .who{display:flex;flex-direction:column;line-height:1.2}
.device .bar .who .n{font-size:13.5px;font-weight:500}
.device .bar .who .s{font-size:11px;color:var(--mute);font-family:'JetBrains Mono',monospace}
.device .bar .wa{margin-left:auto;font-size:10.5px;padding:3px 8px;border-radius:999px;
    background:rgba(214,255,74,.1);color:var(--volt);border:1px solid rgba(214,255,74,.25);
    font-family:'JetBrains Mono',monospace;letter-spacing:.08em;}
.msg{max-width:82%;padding:10px 12px;border-radius:14px;font-size:13.5px;line-height:1.45;opacity:0;transform:translateY(6px);animation:msgIn .45s var(--ease) forwards}
.msg.in{background:rgba(255,255,255,.06);color:var(--paper);border-top-left-radius:4px;align-self:flex-start}
.msg.out{background:var(--volt);color:var(--volt-ink);border-top-right-radius:4px;align-self:flex-end}
.msg .t{display:block;margin-top:4px;font-size:10px;color:var(--mute-2);font-family:'JetBrains Mono',monospace}
.msg.out .t{color:rgba(10,11,14,.55)}
.msg:nth-child(3){animation-delay:.2s}
.msg:nth-child(4){animation-delay:.6s}
.msg:nth-child(5){animation-delay:1.1s}
.msg:nth-child(6){animation-delay:1.7s}
.msg:nth-child(7){animation-delay:2.3s}
@keyframes msgIn{to{opacity:1;transform:none}}
.booked{margin-top:6px;padding:12px;border-radius:12px;border:1px dashed rgba(214,255,74,.35);
    background:rgba(214,255,74,.05);display:flex;align-items:center;gap:10px;
    opacity:0;animation:msgIn .6s var(--ease) 2.8s forwards;}
.booked .ic{width:34px;height:34px;border-radius:10px;background:var(--volt);color:var(--ink);display:grid;place-items:center;flex-shrink:0}
.booked .b-title{font-size:13px;font-weight:600}
.booked .b-sub{font-size:11.5px;color:var(--mute);font-family:'JetBrains Mono',monospace}
.strip{padding:64px 0;background:var(--ink-2);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
@media(max-width:900px){.strip-grid{grid-template-columns:repeat(2,1fr)}}
.strip-cell{padding:12px 24px;border-right:1px solid var(--line)}
.strip-cell:last-child{border-right:0}
.strip-cell .v{font-family:'Inter Tight',sans-serif;font-size:clamp(34px,3.6vw,52px);letter-spacing:-.04em;font-weight:600;line-height:1}
.strip-cell .v .u{color:var(--mute);font-size:.55em;margin-left:4px}
.strip-cell .l{margin-top:10px;font-size:13px;color:var(--mute);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.journey-grid{margin-top:72px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:960px){.journey-grid{grid-template-columns:1fr}}
.jcard{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);
    padding:28px;position:relative;min-height:220px;display:flex;flex-direction:column;gap:10px;
    transition:border-color .3s var(--ease), transform .3s var(--ease);}
.jcard:hover{border-color:rgba(214,255,74,.35);transform:translateY(-3px)}
.jcard .num{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.08em}
.jcard h3{font-size:22px;letter-spacing:-0.025em;margin-top:auto}
.jcard p{font-size:14.5px;color:var(--mute);line-height:1.55}
.jcard .chans{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.jcard .chip{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);padding:4px 8px;border-radius:999px;border:1px solid var(--line);text-transform:uppercase;letter-spacing:.08em}
.persona{margin-top:64px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:900px){.persona{grid-template-columns:1fr}}
.persona .pcard{background:#fff;border:1px solid var(--line-dk);border-radius:var(--radius);
    padding:40px;position:relative;}
.persona .pcard .tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute-2);text-transform:uppercase;letter-spacing:.1em}
.persona .pcard h3{font-size:28px;letter-spacing:-0.03em;margin-top:10px;margin-bottom:22px;color:var(--ink)}
.persona .pcard ul{list-style:none;display:flex;flex-direction:column;gap:14px}
.persona .pcard ul li{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:flex-start;
    font-size:15px;color:var(--ink);line-height:1.55;}
.persona .pcard ul li svg{margin-top:3px;color:var(--ink)}
.persona .pcard .stat-foot{margin-top:28px;padding-top:22px;border-top:1px solid var(--line-dk);
    display:flex;gap:24px;flex-wrap:wrap;}
.persona .pcard .stat-foot .sv{font-family:'Inter Tight',sans-serif;font-size:28px;font-weight:600;letter-spacing:-0.03em;color:var(--ink);line-height:1}
.persona .pcard .stat-foot .sl{font-size:12px;color:var(--mute-2);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em;margin-top:6px}
.stack{margin-top:64px;position:relative}
.stack-svg{width:100%;height:auto;display:block}
.cmp{margin-top:64px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--ink-2)}
.cmp-row{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:0;
    border-bottom:1px solid var(--line);}
.cmp-row:last-child{border-bottom:0}
.cmp-row > div{padding:20px 24px;border-right:1px solid var(--line);font-size:14.5px}
.cmp-row > div:last-child{border-right:0}
.cmp-row.head > div{background:rgba(255,255,255,.03);font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
.cmp-row.head .swiftex{color:var(--volt)}
.cmp-row .old{color:var(--mute)}
.cmp-row .new{color:var(--paper);font-weight:500}
.cmp-row .new::before{content:"↗ ";color:var(--volt)}
@media(max-width:720px){.cmp-row{grid-template-columns:1fr}.cmp-row > div{border-right:0;border-bottom:1px solid var(--line)}.cmp-row > div:last-child{border-bottom:0}}
.case-hero{margin-top:64px;display:grid;grid-template-columns:1.2fr 1fr;gap:0;
    background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
@media(max-width:960px){.case-hero{grid-template-columns:1fr}}
.case-body{padding:48px}
.case-body .tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em}
.case-body blockquote{font-family:'Inter Tight',sans-serif;font-size:26px;line-height:1.25;letter-spacing:-0.02em;font-weight:500;margin-top:18px}
.case-body .who{margin-top:22px;display:flex;align-items:center;gap:10px;color:var(--mute);font-size:14px}
.case-body .who .av{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#3b3f48,#1a1c22);border:1px solid var(--line)}
.case-metrics{padding:48px;background:radial-gradient(500px 300px at 80% 10%, rgba(214,255,74,.12), transparent 60%);display:flex;flex-direction:column;justify-content:center;gap:28px;border-left:1px solid var(--line)}
.case-metrics .m .v{font-family:'Inter Tight',sans-serif;font-size:clamp(40px,4vw,60px);font-weight:600;letter-spacing:-.04em;line-height:1}
.case-metrics .m .v .u{color:var(--mute);font-size:.5em;margin-left:4px}
.case-metrics .m .l{margin-top:6px;font-size:13px;color:var(--mute);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
@media (prefers-reduced-motion: reduce){.msg,.booked{opacity:1;transform:none;animation:none}}
.feat-row{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:60px}
.feat-row.rev{direction:rtl}
.feat-row.rev > *{direction:ltr}
@media(max-width:900px){.feat-row{grid-template-columns:1fr;gap:28px}.feat-row.rev{direction:ltr}}
.feat-row .copy .h{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);text-transform:uppercase;letter-spacing:.14em;margin-bottom:12px}
.feat-row .copy h3{font-size:clamp(24px,3vw,36px);letter-spacing:-.03em;margin-bottom:14px}
.feat-row .copy p{color:var(--mute);font-size:15.5px;max-width:52ch;line-height:1.6}
.feat-row ul{margin-top:18px;list-style:none;display:flex;flex-direction:column;gap:8px}
.feat-row ul li{padding-left:26px;position:relative;font-size:14px;color:var(--paper)}
.feat-row ul li::before{content:"";position:absolute;left:0;top:8px;width:14px;height:2px;background:var(--volt)}
.visual{background:var(--ink-2);border:1px solid var(--line);border-radius:20px;padding:28px;min-height:320px;position:relative;overflow:hidden}
.v-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:rgba(214,255,74,.08);border:1px solid rgba(214,255,74,.25);font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);text-transform:uppercase;letter-spacing:.08em}
.v-stack{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.v-line{display:flex;justify-content:space-between;padding:12px 14px;background:var(--ink);border:1px solid var(--line);border-radius:10px;font-size:13px}
.v-line .k{color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.05em}
.v-line .v{color:var(--paper);font-weight:500}
.v-line.good .v{color:var(--volt)}
.v-line.bad .v{color:var(--leak)}
.v-bars{display:flex;flex-direction:column;gap:14px;margin-top:20px}
.v-bar{display:grid;grid-template-columns:100px 1fr 56px;gap:12px;align-items:center;font-size:12.5px}
.v-bar .lb{color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.v-bar .tk{height:10px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden;position:relative}
.v-bar .tk i{position:absolute;left:0;top:0;bottom:0;background:var(--volt);border-radius:999px}
.v-bar .vl{text-align:right;font-family:'JetBrains Mono',monospace;color:var(--paper)}
.quote-band{padding:80px 0;border-bottom:1px solid var(--line);background:var(--ink-2)}
.quote-band blockquote{max-width:900px;margin:0 auto;padding:0 32px;font-family:'Inter Tight',sans-serif;font-size:clamp(22px,2.5vw,32px);letter-spacing:-.025em;line-height:1.3}
.quote-band .attrib{margin-top:18px;font-size:13px;color:var(--mute);font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:44px}
@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,1fr)}}
.metric{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:6px}
.metric .n{font-family:'Inter Tight',sans-serif;font-size:44px;font-weight:600;letter-spacing:-.04em;color:var(--volt)}
.metric .l{font-size:12.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.08em;font-family:'JetBrains Mono',monospace}
.metric .d{font-size:13px;color:var(--mute);margin-top:8px;line-height:1.5}
@keyframes wave{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1)}}
.lang-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:32px}
@media(max-width:720px){.lang-grid{grid-template-columns:repeat(3,1fr)}}
.latency{margin-top:36px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px}
.lat-bar{margin-top:24px;position:relative;height:48px;background:rgba(255,255,255,.03);border-radius:24px;overflow:hidden}
.cmp-logos{display:flex;align-items:center;gap:18px;margin-bottom:32px}
.cmp-logo{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;background:var(--ink-2);border:1px solid var(--line);border-radius:999px;font-family:'Inter Tight',sans-serif;font-size:14px;font-weight:600;color:var(--paper);letter-spacing:-.01em}
.cmp-logo.sw{border-color:rgba(214,255,74,.3);color:var(--volt)}
.cmp-logo .dot{width:9px;height:9px;border-radius:50%}
.cmp-logo.sw .dot{background:var(--volt);box-shadow:0 0 10px var(--volt)}
.cmp-logo.them .dot{background:#00A1E0}
.cmp-vs{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.18em;color:var(--mute);text-transform:uppercase}
.pcomp{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
@media(max-width:760px){.pcomp{grid-template-columns:1fr}}
.pcomp .pcard{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:28px}
.pcomp .pcard table{margin:0}
.pcard.sw{border-color:rgba(214,255,74,.25);background:linear-gradient(180deg,rgba(214,255,74,.04),transparent 60%)}
.pcard h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:16px}
.pcard .p-model{font-family:'Inter Tight',sans-serif;font-size:24px;font-weight:600;color:var(--paper);letter-spacing:-.02em;margin-bottom:8px}
.pcard.sw .p-model{color:var(--volt)}
.pcard .p-basis{font-size:13.5px;color:var(--mute-2);margin-bottom:20px}
.pcard table{width:100%;border-collapse:collapse;font-size:13px}
.pcard td{padding:10px 0;border-bottom:1px solid var(--line);color:var(--paper)}
.pcard tr:last-child td{border-bottom:0}
.pcard td:last-child{text-align:right;color:var(--paper);font-family:'JetBrains Mono',monospace;font-size:12.5px}
.pcard .total td{color:var(--volt);font-weight:600;padding-top:14px;font-size:14px}
.article-content h2{font-size:clamp(26px,2.8vw,36px);letter-spacing:-.025em;color:var(--paper);margin:48px 0 16px}
.article-content h2:first-child{margin-top:0}
.article-content h3{font-size:19px;color:var(--paper);letter-spacing:-.02em;margin:28px 0 10px}
.article-content p{font-size:16.5px;color:var(--mute-2);line-height:1.72;margin-bottom:18px}
.article-content p strong{color:var(--paper);font-weight:500}
.article-content ul{margin:14px 0 22px;padding-left:22px}
.article-content ul li{font-size:16px;color:var(--mute-2);line-height:1.7;margin-bottom:8px}
.article-content ul li::marker{color:var(--volt)}
.article-content .step{margin-bottom:64px;padding-top:28px;border-top:1px solid var(--line)}
.article-content .step:first-child{padding-top:0;border-top:0}
.article-content .step-header{display:flex;align-items:baseline;gap:18px;margin-bottom:18px;flex-wrap:wrap}
.article-content .step-num{font-family:'JetBrains Mono',monospace;font-size:44px;color:var(--volt);line-height:1;letter-spacing:-.02em}
.article-content .step h2{font-size:clamp(26px,2.8vw,36px);letter-spacing:-.025em;color:var(--paper);line-height:1.15;margin:0;flex:1;min-width:280px}
.article-content .step .time{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;background:rgba(255,255,255,.04);border-radius:999px}
.article-content ul, .article-content ol{margin:14px 0 22px;padding-left:22px}
.article-content ul li, .article-content ol li{font-size:16px;color:var(--mute-2);line-height:1.7;margin-bottom:8px}
.article-content ul li::marker, .article-content ol li::marker{color:var(--volt)}
.role-hero{padding:clamp(80px,10vh,140px) 0 clamp(60px,8vh,100px);position:relative;overflow:hidden}
.role-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 520px at 100% 0%, rgba(214,255,74,.07), transparent 60%);pointer-events:none}
@keyframes pls{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.2)}}
.obj{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:900px){.obj{grid-template-columns:1fr}}
.ns{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
@media(max-width:820px){.ns{grid-template-columns:1fr}}
/* pages-scoped css */
/* Swiftex v2 — Page-migrated SCOPED rules
   Each rule prefixed with body.page-<slug> so cross-page selectors
   (e.g. .hero differs on home vs automotive) do not collide. */

/* ---- page: about ---- */
body.page-about .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);margin-top:40px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
@media(max-width:720px){body.page-about .stats{grid-template-columns:repeat(2,1fr)}}
body.page-about .stats .st{background:var(--ink);padding:28px;display:flex;flex-direction:column;gap:6px}
body.page-about .stats .n{font-family:'Inter Tight',sans-serif;font-size:44px;font-weight:600;letter-spacing:-.04em;color:var(--volt);line-height:1}
body.page-about .stats .l{font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em;font-family:'JetBrains Mono',monospace}

/* ---- page: resources ---- */
body.page-resources .feat-card{background:linear-gradient(160deg,rgba(214,255,74,.1),transparent 60%);border:1px solid rgba(214,255,74,.2);border-radius:24px;padding:48px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;margin-top:40px}
@media(max-width:900px){body.page-resources .feat-card{grid-template-columns:1fr;padding:32px}}
body.page-resources .feat-card .tg{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);text-transform:uppercase;letter-spacing:.14em}
body.page-resources .feat-card h3{font-size:clamp(26px,3.5vw,40px);letter-spacing:-.035em;margin:14px 0 14px}
body.page-resources .feat-card p{color:var(--mute);font-size:15.5px;line-height:1.6;max-width:58ch}
body.page-resources .feat-card .cover{aspect-ratio:4/3;background:linear-gradient(140deg,#1A1C22,#0A0B0E);border:1px solid var(--line);border-radius:16px;display:grid;place-items:center;color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
body.page-resources .res-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-top:30px;padding-top:14px;border-top:1px solid var(--line)}
body.page-resources .res-tabs a{padding:9px 16px;border-radius:999px;font-size:13px;color:var(--mute);border:1px solid var(--line)}
body.page-resources .res-tabs a:hover, body.page-resources .res-tabs a.on{color:var(--paper);background:rgba(214,255,74,.06);border-color:rgba(214,255,74,.3)}
body.page-resources .post{background:var(--ink-2);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s var(--ease),border-color .2s var(--ease);color:var(--paper)}
body.page-resources .post:hover{transform:translateY(-3px);border-color:rgba(214,255,74,.3)}
body.page-resources .post .thumb{aspect-ratio:16/10;border-bottom:1px solid var(--line);position:relative;overflow:hidden;display:grid;place-items:center;background:#0d0e12}
body.page-resources .post .thumb img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;display:block}
body.page-resources .post .thumb:not(:has(img))::before{content:"";position:absolute;inset:0;background:var(--thumb-bg, linear-gradient(135deg,#1a1d26 0%,#0d0e12 100%))}
body.page-resources .post .thumb:not(:has(img))::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);background-size:28px 28px;mask-image:radial-gradient(circle at center, black 30%, transparent 75%)}
body.page-resources .post .glyph{position:relative;z-index:2;width:56px;height:56px;border-radius:14px;background:rgba(0,0,0,.4);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;color:var(--volt)}
body.page-resources .post .glyph svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.page-resources .post.tA{--thumb-bg:radial-gradient(circle at 25% 35%, rgba(214,255,74,.18), transparent 50%),radial-gradient(circle at 80% 70%, rgba(79,124,255,.14), transparent 55%),linear-gradient(135deg,#1a1d26,#0d0e12)}
body.page-resources .post.tB{--thumb-bg:radial-gradient(circle at 70% 30%, rgba(255,107,90,.16), transparent 50%),radial-gradient(circle at 20% 75%, rgba(214,255,74,.12), transparent 55%),linear-gradient(135deg,#201a1d,#0f0c0e)}
body.page-resources .post.tC{--thumb-bg:radial-gradient(circle at 50% 30%, rgba(79,203,147,.16), transparent 50%),radial-gradient(circle at 30% 80%, rgba(79,124,255,.12), transparent 55%),linear-gradient(135deg,#131c18,#0a0c0d)}
body.page-resources .post.tD{--thumb-bg:radial-gradient(circle at 80% 20%, rgba(245,166,35,.18), transparent 55%),radial-gradient(circle at 25% 70%, rgba(214,255,74,.1), transparent 55%),linear-gradient(135deg,#1e1a14,#0d0b08)}
body.page-resources .post.tE{--thumb-bg:radial-gradient(circle at 35% 40%, rgba(180,120,255,.18), transparent 55%),radial-gradient(circle at 75% 75%, rgba(79,124,255,.14), transparent 55%),linear-gradient(135deg,#171726,#0b0b14)}
body.page-resources .post.tF{--thumb-bg:radial-gradient(circle at 65% 30%, rgba(255,180,90,.14), transparent 55%),radial-gradient(circle at 30% 80%, rgba(214,255,74,.1), transparent 55%),linear-gradient(135deg,#1c1914,#0c0a08)}
body.page-resources .post .bd{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
body.page-resources .post .tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:2px}
body.page-resources .post .tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:rgba(214,255,74,.1);border:1px solid rgba(214,255,74,.22);color:var(--volt);font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
body.page-resources .post .tag.neutral{background:rgba(255,255,255,.04);border-color:var(--line);color:var(--mute)}
body.page-resources .post .meta{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.12em}
body.page-resources .post h4{font-size:17px;letter-spacing:-.02em;line-height:1.3;color:var(--paper)}
body.page-resources .post p{color:var(--mute);font-size:13.5px;line-height:1.55}
body.page-resources .post .go{margin-top:auto;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);text-transform:uppercase;letter-spacing:.1em}
body.page-resources .post.term{aspect-ratio:auto}
body.page-resources .post.term .bd{padding:24px}

/* ---- page: automotive ---- */
.page-automotive .lede{margin-top:24px}

/* ---- page: ai-voice-agents ----
   Shared component rules (.voice-demo, .voice-wave, .voice-transcript,
   .lang-chip, .lat-bar, .lat-seg, .lat-key) now live in css/base/module-styles.css
   since those modules are shared across pages. */

/* ---- page: whatsapp-automation ----
   .wa-* (chat-demo module) and .tiers/.tier (quality-tiers module) now live
   in module-styles.css since those modules are shared across pages. */

/* ---- page: faster-response ---- */
body.page-faster-response .decay-chart{margin-top:36px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px;position:relative}
body.page-faster-response .decay-chart h5{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:26px}
body.page-faster-response .decay-svg{width:100%;height:280px;display:block}
/* When two adjacent .section-paper DND rows render on Faster Response / Zero Leakage,
   collapse the page body dark bg between them by giving the DND row wrapper a paper bg */
body.page-faster-response .dnd-row:has(> .row-fluid > .widget-span > [data-hs-cos-type="module"] > .section-paper),
body.page-zero-leakage .dnd-row:has(> .row-fluid > .widget-span > [data-hs-cos-type="module"] > .section-paper){background:var(--paper)}
body.page-faster-response .decay-legend{display:flex;gap:24px;margin-top:20px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);flex-wrap:wrap}
body.page-faster-response .decay-legend span::before{content:"●";margin-right:6px}
body.page-faster-response .decay-legend .lk1::before{color:var(--volt)}
body.page-faster-response .decay-legend .lk2::before{color:var(--leak)}
body.page-faster-response .time-ribbon{margin-top:36px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px}
body.page-faster-response .time-row{display:grid;grid-template-columns:120px 1fr 110px;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
body.page-faster-response .time-row:last-child{border-bottom:0}
body.page-faster-response .time-row .t-when{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--volt);letter-spacing:.06em}
body.page-faster-response .time-row .t-what{font-size:14.5px;color:var(--paper)}
body.page-faster-response .time-row .t-what span{color:var(--mute);font-size:13px}
body.page-faster-response .time-row .t-agent{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-align:right}

/* ---- page: better-qualification ---- */
body.page-better-qualification .signals{margin-top:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:28px;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
@media(max-width:900px){body.page-better-qualification .signals{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){body.page-better-qualification .signals{grid-template-columns:repeat(2,1fr)}}
body.page-better-qualification .signals .sig{background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:10px;padding:14px 12px}
body.page-better-qualification .signals .sig .s-c{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--mute);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
body.page-better-qualification .signals .sig .s-n{font-size:13.5px;color:var(--paper);font-weight:500;letter-spacing:-.01em}
body.page-better-qualification .score-card{margin-top:36px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:40px;align-items:start}
@media(max-width:800px){body.page-better-qualification .score-card{grid-template-columns:1fr}}
body.page-better-qualification .score-turns{display:flex;flex-direction:column;gap:10px}
body.page-better-qualification .turn{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:12px;background:var(--ink);border:1px solid var(--line);border-radius:10px}
body.page-better-qualification .turn .t-tag{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);letter-spacing:.06em}
body.page-better-qualification .turn .t-msg{font-size:13px;color:var(--paper);line-height:1.5}
body.page-better-qualification .turn .t-score{width:48px;height:48px;border-radius:10px;display:grid;place-items:center;font-family:'Inter Tight',sans-serif;font-size:18px;font-weight:600;letter-spacing:-.02em}
body.page-better-qualification .turn .t-score.low{background:rgba(255,91,58,.15);color:#FF7B5F;border:1px solid rgba(255,91,58,.3)}
body.page-better-qualification .turn .t-score.mid{background:rgba(255,180,90,.15);color:#FFB45A;border:1px solid rgba(255,180,90,.3)}
body.page-better-qualification .turn .t-score.high{background:rgba(214,255,74,.15);color:var(--volt);border:1px solid rgba(214,255,74,.3)}
body.page-better-qualification .reason-side{background:rgba(214,255,74,.04);border:1px solid rgba(214,255,74,.12);border-radius:12px;padding:22px}
body.page-better-qualification .reason-side h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:14px;font-weight:500}
body.page-better-qualification .reason-side .rn{font-family:'Inter Tight',sans-serif;font-size:42px;font-weight:600;color:var(--volt);letter-spacing:-.04em;line-height:1}
body.page-better-qualification .reason-side .rl{font-size:11.5px;color:var(--mute);margin-top:4px;margin-bottom:18px;font-family:'JetBrains Mono',monospace;letter-spacing:.04em}
body.page-better-qualification .reason-side ul{list-style:none;display:flex;flex-direction:column;gap:9px}
body.page-better-qualification .reason-side li{padding-left:18px;position:relative;font-size:13px;color:var(--paper);line-height:1.4}
body.page-better-qualification .reason-side li::before{content:"+";position:absolute;left:0;top:0;color:var(--volt);font-weight:700}
body.page-better-qualification .reason-side .rsep{height:1px;background:var(--line);margin:16px 0}
body.page-better-qualification .reason-side .rx{font-size:12px;color:var(--mute);line-height:1.55}

/* ---- page: zero-leakage ---- */
body.page-zero-leakage .leak-wrap{margin-top:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px}
body.page-zero-leakage .leak-wrap h5{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:26px}
body.page-zero-leakage .leak-svg{width:100%;height:340px;display:block}
body.page-zero-leakage .leak-legend{display:flex;gap:28px;margin-top:20px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);flex-wrap:wrap}
body.page-zero-leakage .leak-legend span::before{content:"■";margin-right:7px}
body.page-zero-leakage .leak-legend .lk-k::before{color:var(--volt)}
body.page-zero-leakage .leak-legend .lk-l::before{color:#FF5B3A}
body.page-zero-leakage .channels{margin-top:40px;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
@media(max-width:900px){body.page-zero-leakage .channels{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){body.page-zero-leakage .channels{grid-template-columns:repeat(2,1fr)}}
body.page-zero-leakage .chan{background:var(--ink-2);border:1px solid var(--line);border-radius:12px;padding:18px 14px;text-align:center;transition:all .2s}
body.page-zero-leakage .chan:hover{border-color:rgba(214,255,74,.3);transform:translateY(-2px)}
body.page-zero-leakage .chan .c-n{font-size:13px;color:var(--paper);font-weight:500;margin-top:8px}
body.page-zero-leakage .chan .c-c{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;color:var(--volt);margin-top:4px;text-transform:uppercase}
body.page-zero-leakage .chan svg{width:22px;height:22px;stroke:var(--paper);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;margin:0 auto;display:block;opacity:.8}
body.page-zero-leakage .audit{margin-top:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;overflow:hidden;font-family:'JetBrains Mono',monospace}
body.page-zero-leakage .audit-head{padding:16px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
body.page-zero-leakage .audit-head .a-id{color:var(--paper)}
body.page-zero-leakage .audit-body{padding:0}
body.page-zero-leakage .a-row{display:grid;grid-template-columns:96px 1fr 110px;padding:14px 24px;border-bottom:1px solid var(--line);font-size:12.5px;color:var(--paper);align-items:center;gap:16px}
body.page-zero-leakage .a-row:last-child{border-bottom:0}
body.page-zero-leakage .a-row .a-t{color:var(--volt)}
body.page-zero-leakage .a-row .a-e{font-family:'Inter Tight',sans-serif;font-size:13px}
body.page-zero-leakage .a-row .a-e em{color:var(--mute);font-style:normal;font-size:12px;margin-left:6px;font-weight:400}
body.page-zero-leakage .a-row .a-s{text-align:right;font-size:10px;letter-spacing:.1em;color:var(--mute)}
body.page-zero-leakage .a-row .a-s.ok{color:var(--volt)}

/* ---- page: vs-salesforce ---- */
body.page-vs-salesforce .roles{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
@media(max-width:820px){body.page-vs-salesforce .roles{grid-template-columns:1fr}}
body.page-vs-salesforce .role{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:30px;position:relative}
body.page-vs-salesforce .role.sw{border-color:rgba(214,255,74,.2);background:linear-gradient(180deg,rgba(214,255,74,.04),transparent 60%)}
body.page-vs-salesforce .role h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:12px}
body.page-vs-salesforce .role h3{font-family:'Inter Tight',sans-serif;font-size:28px;font-weight:600;letter-spacing:-.02em;color:var(--paper);line-height:1.15;margin-bottom:10px}
body.page-vs-salesforce .role.sw h3{color:var(--volt)}
body.page-vs-salesforce .role p{font-size:14px;color:var(--mute-2);line-height:1.55;margin-bottom:18px}
body.page-vs-salesforce .role ul{list-style:none;display:flex;flex-direction:column;gap:10px}
body.page-vs-salesforce .role li{padding-left:22px;position:relative;font-size:13.5px;color:var(--paper);line-height:1.4}
body.page-vs-salesforce .role li::before{content:"→";position:absolute;left:0;top:0;color:var(--mute);font-size:12px}
body.page-vs-salesforce .role.sw li::before{color:var(--volt)}
body.page-vs-salesforce .stack-dia{margin-top:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:36px}
body.page-vs-salesforce .stack-layer{padding:18px 22px;margin-bottom:10px;border-radius:10px;display:grid;grid-template-columns:minmax(140px,180px) 1fr;gap:24px;align-items:center}
body.page-vs-salesforce .stack-layer:last-child{margin-bottom:0}
body.page-vs-salesforce .stack-layer .sl-k{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
body.page-vs-salesforce .stack-layer .sl-n{font-family:'Inter Tight',sans-serif;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--paper)}
body.page-vs-salesforce .stack-layer .sl-d{font-size:12.5px;color:var(--mute);margin-top:2px;line-height:1.5}
body.page-vs-salesforce .stack-layer.buyer{background:rgba(255,255,255,.02);border:1px solid var(--line)}
body.page-vs-salesforce .stack-layer.swiftex{background:rgba(214,255,74,.06);border:1px solid rgba(214,255,74,.25)}
body.page-vs-salesforce .stack-layer.swiftex .sl-k{color:var(--volt)}
body.page-vs-salesforce .stack-layer.sf{background:rgba(0,161,224,.06);border:1px solid rgba(0,161,224,.2)}
body.page-vs-salesforce .stack-layer.sf .sl-k{color:#00A1E0}
body.page-vs-salesforce .stack-layer.ops{background:rgba(255,255,255,.02);border:1px solid var(--line)}
body.page-vs-salesforce .migrate{margin-top:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:900px){body.page-vs-salesforce .migrate{grid-template-columns:repeat(2,1fr)}}
body.page-vs-salesforce .mstep{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:22px}
body.page-vs-salesforce .mstep .m-n{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.1em;margin-bottom:8px}
body.page-vs-salesforce .mstep h4{font-family:'Inter Tight',sans-serif;font-size:17px;font-weight:600;color:var(--paper);letter-spacing:-.01em;margin-bottom:6px}
body.page-vs-salesforce .mstep .m-w{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);letter-spacing:.06em;margin-bottom:12px}
body.page-vs-salesforce .mstep p{font-size:13px;color:var(--mute-2);line-height:1.5}

/* ---- page: vs-hubspot ---- */
body.page-vs-hubspot .funnel{margin-top:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px}
body.page-vs-hubspot .funnel-rows{display:flex;flex-direction:column;gap:8px}
body.page-vs-hubspot .fr{display:grid;grid-template-columns:180px 1fr 1fr;gap:14px;align-items:stretch;padding:16px;border-radius:10px;background:var(--ink);border:1px solid var(--line)}
body.page-vs-hubspot .fr .f-stage{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);display:flex;align-items:center}
body.page-vs-hubspot .fr .f-stage strong{display:block;font-family:'Inter Tight',sans-serif;font-size:15px;color:var(--paper);letter-spacing:-.01em;text-transform:none;font-weight:600;margin-top:2px}
body.page-vs-hubspot .fr .fbox{padding:12px 14px;border-radius:8px;font-size:13px;line-height:1.5}
body.page-vs-hubspot .fr .fbox.hs{background:rgba(255,122,89,.08);border:1px solid rgba(255,122,89,.18);color:var(--paper)}
body.page-vs-hubspot .fr .fbox.sw{background:rgba(214,255,74,.06);border:1px solid rgba(214,255,74,.22);color:var(--paper)}
body.page-vs-hubspot .fr .fbox .fk{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;display:block;margin-bottom:4px}
body.page-vs-hubspot .fr .fbox.hs .fk{color:#FF7A59}
body.page-vs-hubspot .fr .fbox.sw .fk{color:var(--volt)}
body.page-vs-hubspot .pcomp{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
@media(max-width:760px){body.page-vs-hubspot .pcomp{grid-template-columns:1fr}}

/* ---- page: vs-chatbots ---- */
body.page-vs-chatbots .cats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
@media(max-width:820px){body.page-vs-chatbots .cats{grid-template-columns:1fr}}
body.page-vs-chatbots .cat{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:30px;position:relative}
body.page-vs-chatbots .cat.sw{border-color:rgba(214,255,74,.2);background:linear-gradient(180deg,rgba(214,255,74,.04),transparent 60%)}
body.page-vs-chatbots .cat h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:8px}
body.page-vs-chatbots .cat h3{font-family:'Inter Tight',sans-serif;font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--paper);line-height:1.15;margin-bottom:14px}
body.page-vs-chatbots .cat.sw h3{color:var(--volt)}
body.page-vs-chatbots .cat dl{display:grid;grid-template-columns:130px 1fr;gap:10px 18px;margin-top:20px}
body.page-vs-chatbots .cat dt{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);letter-spacing:.08em;padding-top:2px;text-transform:uppercase}
body.page-vs-chatbots .cat dd{font-size:13.5px;color:var(--paper);line-height:1.5}
body.page-vs-chatbots .fail-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
@media(max-width:900px){body.page-vs-chatbots .fail-reasons{grid-template-columns:1fr}}
body.page-vs-chatbots .fr-card{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:24px;position:relative}
body.page-vs-chatbots .fr-card .fr-n{font-family:'JetBrains Mono',monospace;font-size:11px;color:#FF7B5F;letter-spacing:.1em;margin-bottom:10px}
body.page-vs-chatbots .fr-card h4{font-family:'Inter Tight',sans-serif;font-size:18px;font-weight:600;color:var(--paper);letter-spacing:-.02em;margin-bottom:10px;line-height:1.25}
body.page-vs-chatbots .fr-card p{font-size:13.5px;color:var(--mute-2);line-height:1.55}
body.page-vs-chatbots .convo-compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:36px}
@media(max-width:820px){body.page-vs-chatbots .convo-compare{grid-template-columns:1fr}}
body.page-vs-chatbots .cv{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;overflow:hidden}
body.page-vs-chatbots .cv.bot{border-color:var(--line)}
body.page-vs-chatbots .cv.sw{border-color:rgba(214,255,74,.25)}
body.page-vs-chatbots .cv-head{padding:14px 20px;border-bottom:1px solid var(--line);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);display:flex;justify-content:space-between}
body.page-vs-chatbots .cv.sw .cv-head{color:var(--volt)}
body.page-vs-chatbots .cv-body{padding:20px;display:flex;flex-direction:column;gap:10px}
body.page-vs-chatbots .bub{padding:10px 14px;border-radius:14px;max-width:85%;font-size:13.5px;line-height:1.45}
body.page-vs-chatbots .bub.u{background:rgba(255,255,255,.05);color:var(--paper);align-self:flex-start}
body.page-vs-chatbots .bub.b{background:rgba(255,255,255,.07);color:var(--paper);align-self:flex-end}
body.page-vs-chatbots .bub.s{background:rgba(214,255,74,.1);color:var(--paper);align-self:flex-end;border:1px solid rgba(214,255,74,.2)}
body.page-vs-chatbots .bub .bx{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--mute);letter-spacing:.08em;display:block;margin-bottom:4px;text-transform:uppercase}
body.page-vs-chatbots .cv-foot{padding:14px 20px;border-top:1px solid var(--line);font-size:12.5px;color:var(--mute)}
body.page-vs-chatbots .cv-foot strong{color:var(--paper)}
body.page-vs-chatbots .cv.sw .cv-foot strong{color:var(--volt)}

/* ---- page: case-study-auto-oem ---- */
body.page-case-study-auto-oem .article-hero{padding:clamp(80px,10vh,140px) 0 clamp(50px,6vh,80px);border-bottom:1px solid var(--line)}
body.page-case-study-auto-oem .article-hero .tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
body.page-case-study-auto-oem .article-hero .tag{padding:5px 12px;border-radius:999px;background:rgba(214,255,74,.1);border:1px solid rgba(214,255,74,.22);color:var(--volt);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
body.page-case-study-auto-oem .article-hero .tag.neutral{background:rgba(255,255,255,.04);border-color:var(--line);color:var(--mute)}
body.page-case-study-auto-oem .article-hero h1{font-family:'Inter Tight',sans-serif;font-size:clamp(36px,4.6vw,64px);font-weight:600;line-height:1.05;letter-spacing:-.03em;color:var(--paper);max-width:24ch;margin-bottom:22px}
body.page-case-study-auto-oem .article-hero .lede{font-size:clamp(16px,1.2vw,18px);color:var(--mute-2);max-width:70ch;line-height:1.6}
body.page-case-study-auto-oem .meta-strip{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:40px}
body.page-case-study-auto-oem .meta-strip .m{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em}
body.page-case-study-auto-oem .meta-strip .m strong{display:block;color:var(--paper);font-weight:500;font-size:14px;margin-top:4px;letter-spacing:-.005em;text-transform:none;font-family:'Inter',sans-serif}
body.page-case-study-auto-oem .hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:48px;border:1px solid var(--line);border-radius:18px;overflow:hidden}
@media(max-width:900px){body.page-case-study-auto-oem .hero-stats{grid-template-columns:repeat(2,1fr)}}
body.page-case-study-auto-oem .hero-stats .hs{padding:28px;border-right:1px solid var(--line);background:var(--ink-2)}
body.page-case-study-auto-oem .hero-stats .hs:last-child{border-right:0}
@media(max-width:900px){body.page-case-study-auto-oem .hero-stats .hs{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}body.page-case-study-auto-oem .hero-stats .hs:nth-child(2n){border-right:0}body.page-case-study-auto-oem .hero-stats .hs:nth-last-child(-n+2){border-bottom:0}}
body.page-case-study-auto-oem .hero-stats .hs .hn{font-family:'Inter Tight',sans-serif;font-size:clamp(36px,3.6vw,48px);font-weight:600;color:var(--volt);letter-spacing:-.03em;line-height:1}
body.page-case-study-auto-oem .hero-stats .hs .hl{font-size:13px;color:var(--mute);margin-top:10px;line-height:1.4}
body.page-case-study-auto-oem .article-body{display:grid;grid-template-columns:1fr 300px;gap:64px;padding:80px 0}
@media(max-width:1000px){body.page-case-study-auto-oem .article-body{grid-template-columns:1fr;gap:40px}}
/* Case-study source spec: H2 48/18, H3 21px/32/12 (overrides global 48/16 + 19px/28/10) */
body.page-case-study-auto-oem .article-content h2{margin:48px 0 18px}
body.page-case-study-auto-oem .article-content h2:first-child{margin-top:0}
body.page-case-study-auto-oem .article-content h3{font-size:21px;margin:32px 0 12px}
body.page-case-study-auto-oem .pull-quote{margin:36px 0;padding:28px 34px;background:rgba(214,255,74,.05);border-left:3px solid var(--volt);border-radius:0 12px 12px 0}
body.page-case-study-auto-oem .pull-quote blockquote{font-family:'Inter Tight',sans-serif;font-size:22px;color:var(--paper);letter-spacing:-.015em;line-height:1.4}
body.page-case-study-auto-oem .pull-quote cite{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);margin-top:14px;letter-spacing:.1em;text-transform:uppercase;font-style:normal}
body.page-case-study-auto-oem .pull-quote cite strong{color:var(--paper);font-weight:500}
body.page-case-study-auto-oem .toc{position:sticky;top:120px;align-self:start;padding:24px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px}
body.page-case-study-auto-oem .toc h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:14px;font-weight:500}
body.page-case-study-auto-oem .toc ol{list-style:none;counter-reset:t;padding:0}
body.page-case-study-auto-oem .toc ol li{counter-increment:t;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px}
body.page-case-study-auto-oem .toc ol li:last-child{border-bottom:0}
body.page-case-study-auto-oem .toc ol li::before{content:counter(t, decimal-leading-zero) " · ";font-family:'JetBrains Mono',monospace;color:var(--mute);font-size:11px;margin-right:6px}
body.page-case-study-auto-oem .toc ol li a{color:var(--paper)}
body.page-case-study-auto-oem .toc ol li a:hover{color:var(--volt)}
body.page-case-study-auto-oem .toc .toc-cta{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
body.page-case-study-auto-oem .toc .toc-cta a{display:block;padding:10px;background:var(--volt);color:var(--volt-ink);border-radius:8px;text-align:center;font-weight:600;font-size:13px}
body.page-case-study-auto-oem .kv-table{width:100%;margin:24px 0;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;overflow:hidden}
body.page-case-study-auto-oem .kv-table th, body.page-case-study-auto-oem .kv-table td{padding:14px 20px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}
body.page-case-study-auto-oem .kv-table th{background:var(--ink-2);color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
body.page-case-study-auto-oem .kv-table td{color:var(--paper)}
body.page-case-study-auto-oem .kv-table tr:last-child td{border-bottom:0}
/* Case-study "Related field notes" band.
   Module emits <section class="section"><div class="related">cards</div></section>.
   Source design wants ONE band: bg var(--ink-2) + border-top on the outer section, NO extra padding on the inner .related.
   Earlier rule double-padded (96px section + 80px related), creating an inset frame. */
body.page-case-study-auto-oem .section:has(> .wrap > .related){background:var(--ink-2);border-top:1px solid var(--line);border-bottom:0}
/* Source has volt-yellow kicker on each card; solutions.css default is mute. Override only on case-study. */
body.page-case-study-auto-oem .rel-card .rc-k{color:var(--volt);letter-spacing:.1em}

/* ---- page: guide-whatsapp-bsps ---- */
body.page-guide-whatsapp-bsps .article-hero{padding:clamp(80px,10vh,140px) 0 clamp(40px,5vh,70px);border-bottom:1px solid var(--line)}
body.page-guide-whatsapp-bsps .article-hero .tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
body.page-guide-whatsapp-bsps .article-hero .tag{padding:5px 12px;border-radius:999px;background:rgba(214,255,74,.1);border:1px solid rgba(214,255,74,.22);color:var(--volt);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
body.page-guide-whatsapp-bsps .article-hero .tag.neutral{background:rgba(255,255,255,.04);border-color:var(--line);color:var(--mute)}
body.page-guide-whatsapp-bsps .article-hero h1{font-family:'Inter Tight',sans-serif;font-size:clamp(36px,4.6vw,60px);font-weight:600;line-height:1.05;letter-spacing:-.03em;color:var(--paper);max-width:22ch;margin-bottom:22px}
body.page-guide-whatsapp-bsps .article-hero .lede{font-size:clamp(16px,1.2vw,18px);color:var(--mute-2);max-width:68ch;line-height:1.6}
body.page-guide-whatsapp-bsps .tldr{margin-top:36px;padding:28px;background:rgba(214,255,74,.05);border:1px solid rgba(214,255,74,.22);border-radius:16px;display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:flex-start}
@media(max-width:700px){body.page-guide-whatsapp-bsps .tldr{grid-template-columns:1fr}}
body.page-guide-whatsapp-bsps .tldr .tldr-tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.1em;text-transform:uppercase;padding-top:3px}
body.page-guide-whatsapp-bsps .tldr h3{font-size:18px;color:var(--paper);letter-spacing:-.015em;margin-bottom:10px}
body.page-guide-whatsapp-bsps .tldr p{font-size:14.5px;color:var(--mute-2);line-height:1.65;margin:0}
body.page-guide-whatsapp-bsps .article-body{display:grid;grid-template-columns:1fr 290px;gap:64px;padding:70px 0}
@media(max-width:1000px){body.page-guide-whatsapp-bsps .article-body{grid-template-columns:1fr;gap:40px}}
/* Article-body sits inside .section wrapper. Neutralize the section's 96px+border so .article-body{padding} is the only vertical rhythm. */
body.page-guide-whatsapp-bsps .section:has(> .wrap > .article-body),
body.page-case-study-auto-oem .section:has(> .wrap > .article-body),
body.page-playbook-zero-leakage-audit .section:has(> .wrap > .article-body){padding-top:0;padding-bottom:0;border-bottom:0}
body.page-guide-whatsapp-bsps .vs-grid{margin:28px 0;overflow-x:auto}
body.page-guide-whatsapp-bsps .vs-grid table{min-width:700px;width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;overflow:hidden}
body.page-guide-whatsapp-bsps .vs-grid th, body.page-guide-whatsapp-bsps .vs-grid td{padding:12px 14px;font-size:13px;text-align:left;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
body.page-guide-whatsapp-bsps .vs-grid th:last-child, body.page-guide-whatsapp-bsps .vs-grid td:last-child{border-right:0}
body.page-guide-whatsapp-bsps .vs-grid th{background:var(--ink-2);color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;white-space:nowrap}
body.page-guide-whatsapp-bsps .vs-grid td{color:var(--paper)}
body.page-guide-whatsapp-bsps .vs-grid td.good{color:var(--volt)}
body.page-guide-whatsapp-bsps .vs-grid td.mid{color:#ffcd70}
body.page-guide-whatsapp-bsps .vs-grid td.bad{color:#ff8c8c}
body.page-guide-whatsapp-bsps .vs-grid tr:last-child td{border-bottom:0}
body.page-guide-whatsapp-bsps .criterion{margin:22px 0;padding:22px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px}
body.page-guide-whatsapp-bsps .criterion .cn{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
body.page-guide-whatsapp-bsps .criterion h4{font-size:18px;color:var(--paper);letter-spacing:-.015em;margin-bottom:8px}
body.page-guide-whatsapp-bsps .criterion p{font-size:14.5px;color:var(--mute-2);line-height:1.6;margin:0}
body.page-guide-whatsapp-bsps .toc{position:sticky;top:120px;align-self:start;padding:24px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px}
body.page-guide-whatsapp-bsps .toc h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:14px;font-weight:500}
body.page-guide-whatsapp-bsps .toc ol{list-style:none;padding:0}
body.page-guide-whatsapp-bsps .toc ol li{padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px}
body.page-guide-whatsapp-bsps .toc ol li:last-child{border-bottom:0}
body.page-guide-whatsapp-bsps .toc ol li a{color:var(--paper)}
body.page-guide-whatsapp-bsps .toc .toc-cta{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
body.page-guide-whatsapp-bsps .toc .toc-cta a{display:block;padding:10px;background:var(--volt);color:var(--volt-ink);border-radius:8px;text-align:center;font-weight:600;font-size:13px}

/* ---- page: playbook-zero-leakage-audit ---- */
body.page-playbook-zero-leakage-audit .article-hero{padding:clamp(80px,10vh,140px) 0 clamp(40px,5vh,70px);border-bottom:1px solid var(--line)}
body.page-playbook-zero-leakage-audit .article-hero .tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
body.page-playbook-zero-leakage-audit .article-hero .tag{padding:5px 12px;border-radius:999px;background:rgba(214,255,74,.1);border:1px solid rgba(214,255,74,.22);color:var(--volt);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
body.page-playbook-zero-leakage-audit .article-hero .tag.neutral{background:rgba(255,255,255,.04);border-color:var(--line);color:var(--mute)}
body.page-playbook-zero-leakage-audit .article-hero h1{font-family:'Inter Tight',sans-serif;font-size:clamp(38px,4.8vw,64px);font-weight:600;line-height:1.04;letter-spacing:-.03em;color:var(--paper);max-width:22ch;margin-bottom:22px}
body.page-playbook-zero-leakage-audit .article-hero .lede{font-size:clamp(16px,1.2vw,18px);color:var(--mute-2);max-width:66ch;line-height:1.6}
body.page-playbook-zero-leakage-audit .steps-overview{margin-top:40px;display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
@media(max-width:900px){body.page-playbook-zero-leakage-audit .steps-overview{grid-template-columns:repeat(3,1fr)}}
@media(max-width:500px){body.page-playbook-zero-leakage-audit .steps-overview{grid-template-columns:repeat(2,1fr)}}
body.page-playbook-zero-leakage-audit .step-chip{padding:14px;background:var(--ink-2);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:6px}
body.page-playbook-zero-leakage-audit .step-chip .sn{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.1em}
body.page-playbook-zero-leakage-audit .step-chip .st{font-size:13px;color:var(--paper);line-height:1.3;letter-spacing:-.01em}
body.page-playbook-zero-leakage-audit .article-body{display:grid;grid-template-columns:1fr 290px;gap:64px;padding:80px 0}
@media(max-width:1000px){body.page-playbook-zero-leakage-audit .article-body{grid-template-columns:1fr;gap:40px}}
body.page-playbook-zero-leakage-audit .inline-card{margin:26px 0;padding:26px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px}
body.page-playbook-zero-leakage-audit .inline-card .ic-tag{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
body.page-playbook-zero-leakage-audit .inline-card h4{font-size:17px;color:var(--paper);letter-spacing:-.015em;margin-bottom:10px}
body.page-playbook-zero-leakage-audit .inline-card p{font-size:14.5px;color:var(--mute-2);line-height:1.6;margin:0}
body.page-playbook-zero-leakage-audit .inline-card.warn{border-color:rgba(255,180,80,.25);background:rgba(255,180,80,.04)}
body.page-playbook-zero-leakage-audit .inline-card.warn .ic-tag{color:#ffb450}
body.page-playbook-zero-leakage-audit .benchmark{width:100%;margin:24px 0;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;overflow:hidden}
body.page-playbook-zero-leakage-audit .benchmark th, body.page-playbook-zero-leakage-audit .benchmark td{padding:13px 18px;text-align:left;font-size:13.5px;border-bottom:1px solid var(--line)}
body.page-playbook-zero-leakage-audit .benchmark th{background:var(--ink-2);color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
body.page-playbook-zero-leakage-audit .benchmark td{color:var(--paper)}
body.page-playbook-zero-leakage-audit .benchmark td.good{color:var(--volt)}
body.page-playbook-zero-leakage-audit .benchmark td.bad{color:#ff8c8c}
body.page-playbook-zero-leakage-audit .benchmark tr:last-child td{border-bottom:0}
body.page-playbook-zero-leakage-audit .toc{position:sticky;top:120px;align-self:start;padding:24px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px}
body.page-playbook-zero-leakage-audit .toc h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:14px;font-weight:500}
body.page-playbook-zero-leakage-audit .toc ol{list-style:none;counter-reset:t;padding:0}
body.page-playbook-zero-leakage-audit .toc ol li{counter-increment:t;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px}
body.page-playbook-zero-leakage-audit .toc ol li:last-child{border-bottom:0}
body.page-playbook-zero-leakage-audit .toc ol li::before{content:counter(t, decimal-leading-zero) " · ";font-family:'JetBrains Mono',monospace;color:var(--mute);font-size:11px;margin-right:6px}
body.page-playbook-zero-leakage-audit .toc ol li a{color:var(--paper)}
body.page-playbook-zero-leakage-audit .toc .toc-cta{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
body.page-playbook-zero-leakage-audit .toc .toc-cta a{display:block;padding:10px;background:var(--volt);color:var(--volt-ink);border-radius:8px;text-align:center;font-weight:600;font-size:13px}
/* Playbook .step wrapper — each step rendered as a dark card per design ref.
   Source CSS file shows flat steps but the design ref wraps them in cards;
   we go with the design ref. */
body.page-playbook-zero-leakage-audit .article-content .step{margin-bottom:32px;padding:36px 40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px}
body.page-playbook-zero-leakage-audit .article-content .step-header{display:flex;align-items:baseline;gap:18px;margin-bottom:18px;flex-wrap:wrap}
body.page-playbook-zero-leakage-audit .article-content .step-num{font-family:'JetBrains Mono',monospace;font-size:44px;color:var(--volt);line-height:1;letter-spacing:-.02em}
body.page-playbook-zero-leakage-audit .article-content .step h2{font-size:clamp(26px,2.8vw,36px);letter-spacing:-.025em;color:var(--paper);line-height:1.15;margin:0;flex:1;min-width:280px}
body.page-playbook-zero-leakage-audit .article-content .step .time{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;background:rgba(255,255,255,.04);border-radius:999px}
/* Playbook source spec: H3 19px / -.015em / margin 26 0 10 (overrides global 19px / -.02em / 28 0 10). */
body.page-playbook-zero-leakage-audit .article-content h3{font-size:19px;color:var(--paper);letter-spacing:-.015em;margin:26px 0 10px}
/* Inline-card callout boxes (Field note / Warning sign / Formula / What next).
   Source: Swiftex Playbook Zero Leakage Audit.html lines 45-50. */
body.page-playbook-zero-leakage-audit .article-content .inline-card{margin:26px 0 0;padding:26px;background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:14px}
body.page-playbook-zero-leakage-audit .article-content .inline-card .ic-tag{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;display:block}
body.page-playbook-zero-leakage-audit .article-content .inline-card h4{font-size:17px;color:var(--paper);letter-spacing:-.015em;margin:0 0 10px}
body.page-playbook-zero-leakage-audit .article-content .inline-card p{font-size:14.5px;color:var(--mute-2);line-height:1.6;margin:0}
body.page-playbook-zero-leakage-audit .article-content .inline-card.warn{border-color:rgba(255,180,80,.25);background:rgba(255,180,80,.04)}
body.page-playbook-zero-leakage-audit .article-content .inline-card.warn .ic-tag{color:#ffb450}
/* Benchmark table inside steps */
body.page-playbook-zero-leakage-audit .article-content .benchmark{width:100%;margin:24px 0;border-collapse:collapse;border:1px solid var(--line);border-radius:12px;overflow:hidden}
body.page-playbook-zero-leakage-audit .article-content .benchmark th, body.page-playbook-zero-leakage-audit .article-content .benchmark td{padding:13px 18px;text-align:left;font-size:13.5px;border-bottom:1px solid var(--line)}
body.page-playbook-zero-leakage-audit .article-content .benchmark th{background:rgba(255,255,255,.03);color:var(--mute);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
body.page-playbook-zero-leakage-audit .article-content .benchmark td{color:var(--paper)}
body.page-playbook-zero-leakage-audit .article-content .benchmark tr:last-child td{border-bottom:0}

/* ---- page: revenue-leaders ---- */
body.page-revenue-leaders .role-hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:center;position:relative}
@media(max-width:1000px){body.page-revenue-leaders .role-hero-grid{grid-template-columns:1fr;gap:48px}}
body.page-revenue-leaders .role-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 11.5px;
    letter-spacing: .14em;
    color: var(--mute);
    text-transform: uppercase;
    margin-bottom: 18px;
}

body.page-revenue-leaders .role-eyebrow .pill {
    padding: 4px 10px;
    border: 1px solid var(--line);
    background: rgba(214, 255, 74, .12);
    color: var(--volt);
    letter-spacing: .08em;
    font-weight: 500;
    font-size: 11px;
    font-family: inherit;
}
body.page-revenue-leaders .role-h{font-family:'Inter Tight',sans-serif;font-size:clamp(42px,5.4vw,76px);font-weight:600;line-height:1.02;letter-spacing:-.03em;color:var(--paper);max-width:18ch;margin-bottom:22px}
body.page-revenue-leaders .role-h em{font-style:normal;color:var(--volt)}
body.page-revenue-leaders .role-sub{font-size:clamp(16px,1.25vw,19px);color:var(--mute-2);line-height:1.6;max-width:52ch;margin-bottom:32px}
body.page-revenue-leaders .role-cta{display:flex;gap:12px;flex-wrap:wrap}
body.page-revenue-leaders .kpi-card{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:26px;position:relative;overflow:hidden}
body.page-revenue-leaders .kpi-card::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--volt)}
body.page-revenue-leaders .kpi-card .kpi-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
body.page-revenue-leaders .kpi-card .kpi-title{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
body.page-revenue-leaders .kpi-card .kpi-date{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--paper)}
body.page-revenue-leaders .kpi-card .kpi-row{display:grid;grid-template-columns:1.3fr .9fr .8fr;gap:8px;padding:14px 0;border-bottom:1px solid var(--line);align-items:baseline}
body.page-revenue-leaders .kpi-card .kpi-row:last-child{border-bottom:0}
body.page-revenue-leaders .kpi-card .kpi-k{font-size:12.5px;color:var(--mute);line-height:1.3}
body.page-revenue-leaders .kpi-card .kpi-v{font-family:'Inter Tight',sans-serif;font-size:22px;font-weight:600;letter-spacing:-.025em;color:var(--paper)}
body.page-revenue-leaders .kpi-card .kpi-v.good{color:var(--volt)}
body.page-revenue-leaders .kpi-card .kpi-delta{font-family:'JetBrains Mono',monospace;font-size:11px;color:#4FCB93;text-align:right}
body.page-revenue-leaders .kpi-card .kpi-delta.down{color:#4FCB93}
body.page-revenue-leaders .kpi-card .kpi-foot{margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);display:flex;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);letter-spacing:.06em}
body.page-revenue-leaders .kpi-card .pulse-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--volt);margin-right:6px;animation:pls 1.8s infinite}
body.page-revenue-leaders .pains{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:48px}
@media(max-width:960px){body.page-revenue-leaders .pains{grid-template-columns:1fr}}
body.page-revenue-leaders .pain{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:30px;position:relative}
body.page-revenue-leaders .pain .pn{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;color:var(--leak,#FF6B5A);margin-bottom:14px;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px}
body.page-revenue-leaders .pain .pn::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
body.page-revenue-leaders .pain h3{font-family:'Inter Tight',sans-serif;font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--paper);line-height:1.2;margin-bottom:12px}
body.page-revenue-leaders .pain .quote{display:block;background:transparent;border:0;border-left:2px solid var(--line);border-radius:0;padding:0 0 0 14px;margin:0 0 16px 0;font-family:'Inter',sans-serif;font-size:14px;font-weight:400;color:var(--paper);line-height:1.55;font-style:italic;letter-spacing:normal}
body.page-revenue-leaders .pain .quote cite{display:block;font-style:normal;font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);margin-top:8px;letter-spacing:.06em}
body.page-revenue-leaders .pain .fix{font-size:13.5px;color:var(--mute-2);line-height:1.55;padding-top:14px;border-top:1px dashed var(--line)}
body.page-revenue-leaders .pain .fix strong{color:var(--volt);font-weight:500;display:block;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}
body.page-revenue-leaders .outcomes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
@media(max-width:1000px){body.page-revenue-leaders .outcomes-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){body.page-revenue-leaders .outcomes-grid{grid-template-columns:1fr}}
body.page-revenue-leaders .oc{background:#ffffff;border:1px solid rgba(10,11,14,.08);border-radius:16px;padding:28px 24px;position:relative}
body.page-revenue-leaders .oc .oc-n{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:rgba(10,11,14,.4);letter-spacing:.12em;margin-bottom:18px}
body.page-revenue-leaders .oc .oc-metric{font-family:'Inter Tight',sans-serif;font-size:52px;font-weight:600;letter-spacing:-.04em;color:var(--ink);line-height:.95}
body.page-revenue-leaders .oc .oc-metric .u,body.page-revenue-leaders .oc .oc-metric sub{font-size:.4em;color:rgba(10,11,14,.45);margin-left:4px;letter-spacing:0;vertical-align:baseline;font-weight:500;display:inline}
body.page-revenue-leaders .oc .oc-label{font-family:'Inter Tight',sans-serif;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.01em;margin:16px 0 6px}
body.page-revenue-leaders .oc .oc-desc{font-size:13px;color:rgba(10,11,14,.6);line-height:1.55}
body.page-revenue-leaders .week-wrap{margin-top:48px;background:var(--ink-2);border:1px solid var(--line);border-radius:20px;overflow:hidden}
body.page-revenue-leaders .week-head{padding:26px 30px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
body.page-revenue-leaders .week-head h3{font-family:'Inter Tight',sans-serif;font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--paper)}
body.page-revenue-leaders .week-head .tag{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--volt);text-transform:uppercase}
body.page-revenue-leaders .week-grid{display:grid;grid-template-columns:repeat(5,1fr)}
@media(max-width:900px){body.page-revenue-leaders .week-grid{grid-template-columns:1fr}}
body.page-revenue-leaders .day{padding:28px 24px;border-right:1px solid var(--line);position:relative}
body.page-revenue-leaders .day:last-child{border-right:0}
@media(max-width:900px){body.page-revenue-leaders .day{border-right:0;border-bottom:1px solid var(--line)}body.page-revenue-leaders .day:last-child{border-bottom:0}}
body.page-revenue-leaders .day .d-n{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:12px;display:flex;justify-content:space-between}
body.page-revenue-leaders .day h4{font-family:'Inter Tight',sans-serif;font-size:16px;font-weight:600;color:var(--paper);letter-spacing:-.015em;line-height:1.25;margin-bottom:14px}
body.page-revenue-leaders .day ul{list-style:none;display:flex;flex-direction:column;gap:10px}
body.page-revenue-leaders .day ul li{font-size:12.5px;color:var(--mute-2);line-height:1.5;padding-left:16px;position:relative}
body.page-revenue-leaders .day ul li::before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--volt);opacity:.6}
body.page-revenue-leaders .dash-card{margin-top:40px;background:var(--ink);border:1px solid var(--line);border-radius:20px;overflow:hidden}
body.page-revenue-leaders .dash-top{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.02)}
body.page-revenue-leaders .dash-title{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase}
body.page-revenue-leaders .dash-title strong{color:var(--paper);font-weight:500}
body.page-revenue-leaders .dash-dots{display:flex;gap:6px}
body.page-revenue-leaders .dash-dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
body.page-revenue-leaders .dash-body{display:grid;grid-template-columns:1.3fr 1fr;gap:0}
@media(max-width:900px){body.page-revenue-leaders .dash-body{grid-template-columns:1fr}}
body.page-revenue-leaders .dash-left{padding:30px;border-right:1px solid var(--line)}
@media(max-width:900px){body.page-revenue-leaders .dash-left{border-right:0;border-bottom:1px solid var(--line)}}
body.page-revenue-leaders .dash-left h4{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:20px}
body.page-revenue-leaders .funnel-sim{display:flex;flex-direction:column;gap:10px}
body.page-revenue-leaders .funnel-row{display:grid;grid-template-columns:110px 1fr 56px;gap:14px;align-items:center;font-size:13px}
body.page-revenue-leaders .funnel-row .fk{font-family:'JetBrains Mono',monospace;color:var(--mute);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase}
body.page-revenue-leaders .funnel-row .fbar{height:22px;border-radius:5px;background:linear-gradient(90deg,var(--volt),rgba(214,255,74,.3));display:flex;align-items:center;padding:0 10px;color:var(--volt-ink);font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:600}
body.page-revenue-leaders .funnel-row .fv{font-family:'JetBrains Mono',monospace;color:var(--paper);font-size:12.5px;text-align:right}
body.page-revenue-leaders .dash-right{padding:30px}
body.page-revenue-leaders .dash-right h4{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-bottom:20px}
body.page-revenue-leaders .forecast{display:flex;flex-direction:column;gap:16px}
body.page-revenue-leaders .fcast-row{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:12px;border-bottom:1px dashed var(--line)}
body.page-revenue-leaders .fcast-row:last-child{border-bottom:0;padding-bottom:0}

/* Mobile: stack funnel rows (label / bar / pct) vertically so nothing overflows */
@media (max-width: 640px) {
  body.page-revenue-leaders .dash-card { margin-top: 32px; }
  body.page-revenue-leaders .dash-top { padding: 14px 18px; flex-wrap: wrap; gap: 8px; }
  body.page-revenue-leaders .dash-title { font-size: 10.5px; white-space: normal; line-height: 1.4; }
  body.page-revenue-leaders .dash-left,
  body.page-revenue-leaders .dash-right { padding: 24px 20px; }
  body.page-revenue-leaders .dash-left h4,
  body.page-revenue-leaders .dash-right h4 { margin-bottom: 18px; letter-spacing: .1em; }
  body.page-revenue-leaders .funnel-sim { gap: 18px; }
  body.page-revenue-leaders .funnel-row {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: stretch;
    grid-template-columns: none;
  }
  body.page-revenue-leaders .funnel-row .fk { font-size: 11px; letter-spacing: .1em; }
  body.page-revenue-leaders .funnel-row .fbar { height: 26px; padding: 0 12px; font-size: 12px; border-radius: 4px; align-self: flex-start; max-width: 100%; }
  body.page-revenue-leaders .funnel-row .fv { text-align: left; font-size: 12.5px; color: var(--mute); }
  body.page-revenue-leaders .forecast { gap: 20px; }
  body.page-revenue-leaders .fcast-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding-bottom: 16px;
  }
  body.page-revenue-leaders .fcast-k { font-size: 13px; }
  body.page-revenue-leaders .fcast-v { font-size: 19px; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
  body.page-revenue-leaders .fcast-v .pct { font-size: 11px; margin-left: 0; }
}
body.page-revenue-leaders .fcast-k{font-size:13px;color:var(--mute)}
body.page-revenue-leaders .fcast-v{font-family:'Inter Tight',sans-serif;font-size:19px;font-weight:600;color:var(--paper);letter-spacing:-.02em}
body.page-revenue-leaders .fcast-v .pct{font-family:'JetBrains Mono',monospace;font-size:11px;color:#4FCB93;margin-left:8px;font-weight:500}
body.page-revenue-leaders .fcast-v .pct.red{color:#FF6B5A}
body.page-revenue-leaders .board-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px}
@media(max-width:820px){body.page-revenue-leaders .board-2{grid-template-columns:1fr}}
body.page-revenue-leaders .board-card{background:#ffffff;border:1px solid rgba(10,11,14,.08);border-radius:18px;padding:32px;position:relative}
body.page-revenue-leaders .board-card .bc-n{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:rgba(10,11,14,.45);text-transform:uppercase;margin-bottom:14px}
body.page-revenue-leaders .board-card h3{font-family:'Inter Tight',sans-serif;font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--ink);line-height:1.25;margin-bottom:14px}
body.page-revenue-leaders .board-card p{font-size:14px;color:rgba(10,11,14,.65);line-height:1.6;margin-bottom:20px}
body.page-revenue-leaders .board-card ul{list-style:none;display:flex;flex-direction:column;gap:10px}
body.page-revenue-leaders .board-card ul li{font-size:13.5px;color:var(--ink);line-height:1.5;padding-left:22px;position:relative}
body.page-revenue-leaders .board-card ul li::before{content:"→";position:absolute;left:0;top:0;color:rgba(10,11,14,.35);font-weight:500}
body.page-revenue-leaders .obj-card{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:26px}
body.page-revenue-leaders .obj-card .obq{font-family:'Inter Tight',sans-serif;font-size:16px;font-weight:600;color:var(--paper);letter-spacing:-.01em;line-height:1.35;margin-bottom:14px}
body.page-revenue-leaders .obj-card .oba{font-size:13.5px;color:var(--mute-2);line-height:1.6}
body.page-revenue-leaders .obj-card .oba strong{color:var(--volt);font-weight:500}
body.page-revenue-leaders .peer{margin-top:56px;background:var(--ink);border:1px solid rgba(214,255,74,.15);border-radius:22px;padding:48px 52px;display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}
@media(max-width:820px){body.page-revenue-leaders .peer{grid-template-columns:1fr;padding:36px 30px}}
body.page-revenue-leaders .peer blockquote{font-family:'Inter Tight',sans-serif;font-size:clamp(22px,2.4vw,30px);font-weight:500;color:var(--paper);letter-spacing:-.02em;line-height:1.3}
body.page-revenue-leaders .peer blockquote::before{content:"\201C";font-size:52px;color:var(--volt);line-height:0;vertical-align:-10px;margin-right:4px}
body.page-revenue-leaders .peer .p-attrib{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--mute);text-transform:uppercase;margin-top:20px}
body.page-revenue-leaders .peer .p-attrib strong{color:var(--paper);font-weight:500}
body.page-revenue-leaders .peer-metric{text-align:right}
body.page-revenue-leaders .peer-metric .pn{font-family:'Inter Tight',sans-serif;font-size:72px;font-weight:600;letter-spacing:-.04em;color:var(--volt);line-height:.9}
body.page-revenue-leaders .peer-metric .pl{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--mute);text-transform:uppercase;margin-top:10px}
@media(max-width:820px){body.page-revenue-leaders .peer-metric{text-align:left}}
body.page-revenue-leaders .ns-card{background:var(--ink-2);border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column}
body.page-revenue-leaders .ns-card .nn{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;color:var(--volt);text-transform:uppercase;margin-bottom:12px}
body.page-revenue-leaders .ns-card h4{font-family:'Inter Tight',sans-serif;font-size:19px;font-weight:600;color:var(--paper);letter-spacing:-.015em;line-height:1.25;margin-bottom:10px}
body.page-revenue-leaders .ns-card p{font-size:13.5px;color:var(--mute-2);line-height:1.55;margin-bottom:18px;flex:1}
body.page-revenue-leaders .ns-card a{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.08em;color:var(--volt);text-transform:uppercase;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
body.page-revenue-leaders .ns-card a:hover{transform:translateX(2px)}

/* ---- page: ia ---- */
body.page-ia a{color:inherit;text-decoration:none}
body.page-ia h1, body.page-ia h2, body.page-ia h3, body.page-ia h4{font-family:'Inter Tight','Inter',sans-serif;letter-spacing:-0.03em;font-weight:600;line-height:1.08}
body.page-ia .crumb{display:inline-flex;align-items:center;gap:10px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em}
body.page-ia .crumb .dot{width:6px;height:6px;border-radius:50%;background:var(--volt);box-shadow:0 0 10px var(--volt)}
body.page-ia h1{font-size:clamp(40px,6.2vw,84px);margin:22px 0 20px;letter-spacing:-0.045em}
body.page-ia h1 em{font-style:normal;color:var(--volt);position:relative}
body.page-ia h1 em::after{content:"";position:absolute;left:-.04em;right:-.04em;bottom:.04em;height:.16em;background:rgba(214,255,74,.18);border-radius:3px;z-index:-1}
body.page-ia .meta-row{display:flex;gap:28px;flex-wrap:wrap;margin-top:36px;color:var(--mute);font-size:13px;font-family:'JetBrains Mono',monospace}
body.page-ia .meta-row strong{color:var(--paper);font-weight:500}
body.page-ia .whatsnew{margin-top:24px;padding:12px 16px;border-radius:10px;border:1px dashed rgba(214,255,74,.35);background:rgba(214,255,74,.04);color:var(--paper);font-size:13.5px;display:inline-flex;align-items:center;gap:10px}
body.page-ia .whatsnew .pill{padding:3px 9px;border-radius:999px;background:var(--volt);color:var(--volt-ink);font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}
body.page-ia section{padding:96px 0;border-bottom:1px solid var(--line)}
@media(max-width:720px){body.page-ia section{padding:64px 0}}
body.page-ia h2{font-size:clamp(30px,3.8vw,52px);margin-bottom:18px;max-width:32ch}
body.page-ia h3{font-size:22px;letter-spacing:-0.025em;font-weight:600}
body.page-ia h4{font-size:16px;font-weight:600;letter-spacing:-0.015em}
body.page-ia .mute{color:var(--mute)}
body.page-ia .toc{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--ink-2);margin-top:36px}
@media(max-width:900px){body.page-ia .toc{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){body.page-ia .toc{grid-template-columns:1fr}}
body.page-ia .toc a{display:block;padding:18px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;transition:background .15s var(--ease), color .15s var(--ease)}
body.page-ia .toc a .n{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);display:block;margin-bottom:6px;letter-spacing:.08em}
body.page-ia .toc a:hover{background:rgba(214,255,74,.05);color:var(--volt)}
body.page-ia .toc a:hover .n{color:var(--volt)}
body.page-ia .nav-mock{position:relative;margin-top:40px;border:1px solid var(--line);border-radius:20px;background:var(--ink-2)}
body.page-ia .nav-browser{display:flex;align-items:center;gap:10px;padding:12px 16px;background:rgba(255,255,255,.02);border-bottom:1px solid var(--line);border-radius:19px 19px 0 0;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--mute)}
body.page-ia .nav-browser .tl{display:flex;gap:6px}
body.page-ia .nav-browser .tl i{width:11px;height:11px;border-radius:50%;background:#3a3b40}
body.page-ia .nav-browser .url{flex:1;padding:5px 10px;border-radius:6px;background:rgba(255,255,255,.03);border:1px solid var(--line)}
body.page-ia .navbar{display:flex;align-items:center;gap:20px;padding:16px 22px;background:rgba(10,11,14,0.8);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:relative;z-index:10;flex-wrap:nowrap}
body.page-ia .logo{display:flex;align-items:center;gap:10px;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:17px;letter-spacing:-0.03em;flex-shrink:0}
body.page-ia .logo .mk{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg, var(--volt), #8BC34A);display:grid;place-items:center;color:var(--volt-ink);font-weight:700;font-size:14px}
body.page-ia .search-btn{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--line);color:var(--mute);flex-shrink:0}
@media(max-width:860px){body.page-ia .navbar{gap:12px;padding:14px 16px}}
body.page-ia .mega-wrap{padding:16px;background:var(--ink);border-radius:0 0 19px 19px}
body.page-ia .mobile-grid{display:grid;grid-template-columns:390px 1fr;gap:40px;align-items:start;margin-top:40px}
@media(max-width:960px){body.page-ia .mobile-grid{grid-template-columns:1fr}}
body.page-ia .phone{width:390px;max-width:100%;margin:0 auto;border-radius:44px;background:#000;border:10px solid #1a1c22;box-shadow:0 40px 80px -20px rgba(0,0,0,0.6);position:relative;overflow:hidden;aspect-ratio:390/780}
body.page-ia .phone .notch{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:110px;height:28px;background:#000;border-radius:16px;z-index:10}
body.page-ia .phone-inner{position:absolute;inset:0;background:var(--ink);padding:46px 16px 20px;overflow:hidden;display:flex;flex-direction:column}
body.page-ia .m-topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 6px 16px;border-bottom:1px solid var(--line)}
body.page-ia .m-topbar .logo{font-size:16px}
body.page-ia .m-topbar .icons{display:flex;gap:10px}
body.page-ia .m-topbar .icons button{all:unset;width:34px;height:34px;border-radius:8px;border:1px solid var(--line);display:grid;place-items:center;color:var(--paper)}
body.page-ia .m-topbar .icons .xbtn{background:var(--volt);color:var(--volt-ink);border-color:var(--volt)}
body.page-ia .m-nav{display:flex;flex-direction:column;gap:2px;margin-top:6px;overflow-y:auto;flex:1}
body.page-ia .m-item{display:flex;align-items:center;justify-content:space-between;padding:14px 10px;border-bottom:1px solid var(--line);font-size:15.5px;color:var(--paper)}
body.page-ia .m-item .l{display:flex;align-items:center;gap:12px}
body.page-ia .m-item .l .mi{width:30px;height:30px;border-radius:7px;background:rgba(214,255,74,.08);border:1px solid var(--line);color:var(--volt);display:grid;place-items:center}
body.page-ia .m-item.expanded{padding-bottom:4px;border-bottom:none}
body.page-ia .annot-list{display:flex;flex-direction:column;gap:14px}
body.page-ia .annot{padding:18px 20px;background:var(--ink-2);border:1px solid var(--line);border-radius:12px;display:grid;grid-template-columns:36px 1fr;gap:14px;align-items:flex-start}
body.page-ia .annot .n{width:28px;height:28px;border-radius:7px;background:var(--volt);color:var(--volt-ink);display:grid;place-items:center;font-weight:700;font-family:'JetBrains Mono',monospace;font-size:13px}
body.page-ia .annot h4{margin-bottom:4px}
body.page-ia .annot p{font-size:13.5px;color:var(--mute);line-height:1.55}
body.page-ia .tree{margin-top:36px;background:#fff;color:var(--ink);border:1px solid var(--line-dk);border-radius:18px;padding:40px 36px;font-family:'JetBrains Mono',monospace;font-size:13.5px;line-height:1.9;overflow-x:auto}
body.page-ia .tree .t-root{font-weight:600;color:var(--ink);font-size:15px}
body.page-ia .tree ul{list-style:none;padding-left:22px;border-left:1px dashed rgba(10,11,14,.18);margin-left:6px}
body.page-ia .tree li{position:relative;padding:1px 0}
body.page-ia .tree li::before{content:"";position:absolute;left:-22px;top:16px;width:18px;height:1px;background:rgba(10,11,14,.18)}
body.page-ia .tree a{color:var(--ink);border-bottom:1px dotted rgba(10,11,14,.25)}
body.page-ia .tree a:hover{background:var(--volt)}
body.page-ia .tree .tag{display:inline-block;margin-left:10px;padding:2px 8px;border-radius:999px;font-size:10px;background:rgba(10,11,14,.08);color:var(--mute-2);text-transform:uppercase;letter-spacing:.1em;font-weight:500}
body.page-ia .tree .tag.new{background:var(--volt);color:var(--ink)}
body.page-ia .tree .tag.seo{background:rgba(214,255,74,.4);color:var(--ink)}
body.page-ia .tree .tag.geo{background:#0A0B0E;color:var(--volt)}
body.page-ia .tree .tag.pkg{background:#0A0B0E;color:#fff}
body.page-ia .tree .note{color:var(--mute-2);font-family:'Inter',sans-serif;font-size:12.5px;margin-left:8px;font-style:italic}
body.page-ia .tbl{margin-top:36px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--ink-2)}
body.page-ia .tbl-row{display:grid;grid-template-columns:260px 1fr 1.2fr 1.3fr;gap:0;border-bottom:1px solid var(--line)}
body.page-ia .tbl-row:last-child{border-bottom:0}
body.page-ia .tbl-row > div{padding:18px 22px;border-right:1px solid var(--line);font-size:13.5px;line-height:1.55}
body.page-ia .tbl-row > div:last-child{border-right:0}
body.page-ia .tbl-row.head > div{background:rgba(255,255,255,.03);font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--mute)}
body.page-ia .tbl-row .url{font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--volt);word-break:break-all}
body.page-ia .tbl-row h4{color:var(--paper);margin-bottom:6px}
body.page-ia .tbl-row .m{color:var(--mute)}
body.page-ia .tbl-row .kw{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
body.page-ia .tbl-row .kw span{font-size:10.5px;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--mute);font-family:'JetBrains Mono',monospace}
@media(max-width:1000px){body.page-ia .tbl-row{grid-template-columns:1fr}body.page-ia .tbl-row > div{border-right:0;border-bottom:1px solid var(--line);padding:14px 18px}body.page-ia .tbl-row > div:last-child{border-bottom:0}body.page-ia .tbl-row.head{display:none}}
body.page-ia .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}
@media(max-width:960px){body.page-ia .grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){body.page-ia .grid{grid-template-columns:1fr}}
body.page-ia .urls{margin-top:36px;background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:32px;font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.8}
body.page-ia .urls .row{display:grid;grid-template-columns:340px 1fr;gap:24px;padding:8px 0;border-bottom:1px dashed var(--line)}
body.page-ia .urls .row:last-child{border-bottom:0}
body.page-ia .urls .k{color:var(--volt)}
body.page-ia .urls .v{color:var(--mute)}
@media(max-width:720px){body.page-ia .urls .row{grid-template-columns:1fr;gap:4px;padding:10px 0}}
body.page-ia .checklist{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:900px){body.page-ia .checklist{grid-template-columns:1fr}}
body.page-ia .check-col{background:#fff;color:var(--ink);border:1px solid var(--line-dk);border-radius:14px;padding:32px}
body.page-ia .check-col h3{color:var(--ink);margin-bottom:6px}
body.page-ia .check-col .sub{color:var(--mute-2);font-size:13px;font-family:'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.08em;margin-bottom:22px}
body.page-ia .check-col ul{list-style:none;display:flex;flex-direction:column;gap:12px}
body.page-ia .check-col li{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.55}
body.page-ia .check-col li svg{margin-top:3px;color:var(--ink);flex-shrink:0}
body.page-ia .callout{margin-top:36px;padding:28px 32px;background:linear-gradient(180deg, rgba(214,255,74,.06), transparent);border:1px solid var(--line);border-left:3px solid var(--volt);border-radius:10px;font-size:14.5px;color:var(--paper)}
body.page-ia .callout b{color:var(--volt)}
body.page-ia footer{padding:48px 0;color:var(--mute);font-size:13px}
body.page-ia .f-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* solutions.css — shared component styles used across Use case / Outcome / Compare pages
   Loaded BEFORE module-styles.css so our theme overrides win. */
/* Solution pages — shared component styles (used across Use case / Outcome / Compare pages) */

/* ——— Definition card (GEO money block) ——— */
.def-card{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:clamp(28px,3.4vw,44px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:start}
@media(max-width:860px){.def-card{grid-template-columns:1fr}}
.def-card .def-label{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--volt);letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.def-card h2{font-size:clamp(24px,2.6vw,32px);letter-spacing:-0.025em;margin-bottom:16px;max-width:22ch}
.def-card .def-body p{color:var(--paper);font-size:clamp(15px,1.1vw,17px);line-height:1.65}
.def-card .def-body p + p{margin-top:12px;color:var(--mute)}
.def-card .def-side{background:rgba(214,255,74,.04);border:1px solid rgba(214,255,74,.12);border-radius:12px;padding:22px}
.def-card .def-side h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:14px;font-weight:500}
.def-card .def-side dl{display:grid;gap:14px}
.def-card .def-side dt{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--mute);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}
.def-card .def-side dd{font-size:14.5px;color:var(--paper);line-height:1.4}

/* ——— Metrics strip ——— */
.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(max-width:900px){.metric-strip{grid-template-columns:repeat(2,1fr)}}
.metric-strip .met{padding:28px 20px;border-right:1px solid var(--line)}
.metric-strip .met:last-child{border-right:0}
@media(max-width:900px){.metric-strip .met:nth-child(2){border-right:0}.metric-strip .met:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.metric-strip .met .n{font-family:'Inter Tight',sans-serif;font-size:clamp(30px,3.4vw,44px);font-weight:600;letter-spacing:-0.035em;color:var(--paper);line-height:1}
.metric-strip .met .n sup{font-size:.5em;color:var(--volt);font-weight:500;margin-left:2px;letter-spacing:0}
.metric-strip .met .l{font-size:13px;color:var(--mute);margin-top:10px;line-height:1.4}
/* metric-strip on paper (light) bg: flip colors so numbers stay readable */
.section-paper .metric-strip{border-top-color:var(--line-dk);border-bottom-color:var(--line-dk)}
.section-paper .metric-strip .met{border-right-color:var(--line-dk)}
.section-paper .metric-strip .met .n{color:var(--ink)}
.section-paper .metric-strip .met .n sup{color:#0A0B0E}
.section-paper .metric-strip .met .l{color:var(--mute-2)}
/* pullquote on paper: strong in attribution must stay dark, not inherit muted */
.section-paper .pullquote footer strong{color:var(--ink)}

/* ——— Numbered steps (process-flow module only — marker class .steps-flow keeps these
   rules from leaking into home-steps carousel which also uses .steps) ——— */
.steps-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px;counter-reset:step}
@media(max-width:900px){.steps-flow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.steps-flow{grid-template-columns:1fr}}
.steps-flow .step{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:10px;position:relative;counter-increment:step}
.steps-flow .step::before{content:"0" counter(step);font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--volt);letter-spacing:.14em}
.steps-flow .step h4{font-size:17px;letter-spacing:-0.02em;font-weight:600}
.steps-flow .step p{font-size:13.5px;color:var(--mute);line-height:1.55}
.section-paper .steps-flow .step{background:#fff;border-color:var(--line-dk)}
.section-paper .steps-flow .step p{color:var(--mute-2)}

/* ——— Big feature list ——— */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
@media(max-width:900px){.features{grid-template-columns:1fr}}
.feat{background:var(--ink-2);border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:12px}
.feat .feat-ic{width:40px;height:40px;border-radius:10px;background:rgba(214,255,74,.08);border:1px solid var(--line);display:grid;place-items:center;color:var(--volt)}
.feat h3{font-size:18px;letter-spacing:-0.02em;color:var(--paper)}
.feat p{font-size:14px;color:var(--mute);line-height:1.55}
.feat ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:6px}
.feat ul li{padding-left:18px;position:relative;font-size:13px;color:var(--paper)}
.feat ul li::before{content:"+";position:absolute;left:0;top:0;color:var(--volt);font-weight:600}

/* Light-background variant */
.section-paper .feat{background:#ffffff;border-color:rgba(10,11,14,.08);color:var(--ink)}
.section-paper .feat h3{color:var(--ink)}
.section-paper .feat p{color:rgba(10,11,14,.6)}
.section-paper .feat ul li{color:var(--ink)}
.section-paper .feat ul li::before{color:var(--ink)}
.section-paper .feat .feat-ic{background:rgba(10,11,14,.05);border-color:rgba(10,11,14,.12);color:var(--ink)}

/* ——— Compare table (competitive) ——— */
.vs-table{width:100%;border-collapse:collapse;font-size:14px;margin-top:40px}
.vs-table th,.vs-table td{padding:18px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.vs-table thead th{font-family:'Inter Tight',sans-serif;font-size:15px;color:var(--paper);font-weight:600;letter-spacing:-0.01em;background:rgba(255,255,255,.02)}
.vs-table thead th:first-child{width:28%}
.vs-table tbody td:first-child{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.vs-table .yes{color:var(--volt);font-weight:500}
.vs-table .no{color:var(--mute-2)}
.vs-table .mid{color:var(--paper)}
.vs-table .swiftex-col{background:rgba(214,255,74,.04);position:relative}
.vs-table .swiftex-col::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--volt)}
.vs-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* vs-table STYLE toggles (fields: show_row_borders, show_header_border, show_swiftex_marker) */
.vs-table.no-row-borders tbody td{border-bottom:0}
.vs-table.no-header-border thead th{border-bottom:0;background:transparent}
.vs-table.no-swiftex-marker .swiftex-col::before{display:none}
.vs-table.no-swiftex-marker .swiftex-col{padding-top:18px}
.section-paper .vs-table.no-row-borders tbody td{border-bottom-color:transparent}
.vs-table.no-bottom-border tbody tr:last-child td{border-bottom:0}
.section-paper .vs-table.no-bottom-border tbody tr:last-child td{border-bottom-color:transparent}

/* Light-background variant */
.section-paper .vs-table th,
.section-paper .vs-table td{border-bottom-color:rgba(10,11,14,.1);color:var(--ink)}
.section-paper .vs-table thead th{color:var(--ink);background:rgba(10,11,14,.03)}
.section-paper .vs-table tbody td:first-child{color:rgba(10,11,14,.55)}
.section-paper .vs-table .yes{color:#1F7A3F;font-weight:600}
.section-paper .vs-table .no{color:rgba(10,11,14,.4)}
.section-paper .vs-table .mid{color:var(--ink)}
.section-paper .vs-table .swiftex-col{background:rgba(10,11,14,.05)}
.section-paper .vs-table .swiftex-col::before{background:var(--ink);height:3px}
.section-paper .vs-table thead th.swiftex-col{background:rgba(10,11,14,.08)}

/* ——— Quote pullout ——— */
.pullquote{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:clamp(32px,4vw,56px);margin-top:40px;position:relative;overflow:hidden}
.pullquote::before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--volt)}
.pullquote q{font-family:'Inter Tight',sans-serif;font-size:clamp(20px,2vw,28px);font-weight:500;letter-spacing:-0.02em;line-height:1.35;color:var(--paper);display:block;max-width:38ch}
.pullquote q::before,.pullquote q::after{display:none}
.pullquote footer{margin-top:22px;display:flex;align-items:center;gap:14px;color:var(--mute);font-size:13.5px}
.pullquote footer strong{color:var(--paper);font-weight:500;margin-right:6px}

/* ——— Use-case specific: workflow rail ——— */
.flow-rail{margin-top:40px;background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:32px;position:relative;overflow:hidden}
.flow-rail h5{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:500;margin-bottom:22px}
.flow-chain{display:grid;grid-template-columns:repeat(5,1fr) auto repeat(1,1fr);gap:8px;align-items:center}
@media(max-width:900px){.flow-chain{grid-template-columns:1fr;gap:4px}}
.flow-node{background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:14px 12px;text-align:center}
.flow-node .fn-ic{width:28px;height:28px;border-radius:8px;background:rgba(214,255,74,.1);color:var(--volt);display:grid;place-items:center;margin:0 auto 10px}
.flow-node .fn-l{font-size:11px;color:var(--mute);letter-spacing:.04em}
.flow-node .fn-t{font-size:13px;color:var(--paper);font-weight:500;margin-top:2px;letter-spacing:-.01em}
.flow-arrow{color:var(--mute-2);display:grid;place-items:center}
@media(max-width:900px){.flow-arrow{transform:rotate(90deg);margin:2px 0}}

/* ——— Outcome hero metric ——— */
.hero-metric{display:inline-flex;flex-direction:column;gap:6px;margin-top:32px;padding:20px 28px;background:rgba(214,255,74,.06);border:1px solid rgba(214,255,74,.2);border-radius:14px}
.hero-metric .hm-n{font-family:'Inter Tight',sans-serif;font-size:clamp(36px,4vw,56px);font-weight:600;letter-spacing:-0.04em;color:var(--volt);line-height:1}
.hero-metric .hm-l{font-size:13px;color:var(--mute);letter-spacing:.02em}

/* ——— Related solutions cards ——— */
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
@media(max-width:720px){.related{grid-template-columns:1fr}}
.rel-card{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:8px;transition:border-color .2s var(--ease),transform .2s var(--ease)}
.rel-card:hover{border-color:rgba(214,255,74,.3);transform:translateY(-2px)}
.rel-card .rc-k{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.rel-card h4{font-size:17px;letter-spacing:-0.02em}
.rel-card p{font-size:13px;color:var(--mute);line-height:1.5;flex-grow:1}
.rel-card .rc-go{font-size:13px;color:var(--volt);margin-top:6px}
.section-paper .rel-card{background:#fff;border-color:var(--line-dk)}
.section-paper .rel-card p{color:var(--mute-2)}

/* ——— Hero "with-pills" variant pill row ———
   Scoped to .page-hero so the 28px margin-top + dark-mono pill styling
   don't leak into other contexts (Platform paper integrations, etc.). */
.page-hero .pill-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.page-hero .pill{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid var(--line);color:var(--mute)}
.page-hero .pill .d{color:var(--volt);margin-right:6px}

/* ——— Section intro helper ——— */
.s-intro{max-width:60ch;margin-bottom:8px}
.s-intro .lede{margin-top:10px}

/* ——— Split hero for outcomes ——— */
.hero-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:56px;align-items:center}
@media(max-width:900px){.hero-split{grid-template-columns:1fr;gap:32px}}
/* module-specific styles — classes modules render that aren't in source HTML */
/* ===========================================================================
   Swiftex v2 — Module-specific styles
   ---------------------------------------------------------------------------
   Only contains CSS for module classes that are NOT already represented in
   shared.css, pages-global.css, or pages-scoped.css. Each rule here has a
   comment explaining why it exists (what's missing from the extracted CSS).

   Loaded AFTER pages-global.css and pages-scoped.css, BEFORE mobile-overrides.
   =========================================================================== */

/* ============================================================================
   page-hero.module — variant styles
   ---------------------------------------------------------------------------
   The base .page-hero layout lives in shared.css. These rules add the
   variant-specific bits:
     - with-metric   → .hero-split + .hero-metric card
     - with-pills    → .hero-pills row
     - vs-compare    → .cmp-logos + .cmp-vs divider
     - article       → .article-hero + .tag-row + .meta-strip + .hero-stats
   ============================================================================ */

/* --- with-metric: hero-split layout (source: solutions.css) --- */
.hero-split {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}
@media (max-width: 900px) {
  .hero-split { grid-template-columns: 1fr; gap: 32px; }
}
.hero-metric {
  display: inline-flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 32px;
  padding: 20px 28px;
  background: rgba(214, 255, 74, .06);
  border: 1px solid rgba(214, 255, 74, .2);
  border-radius: 14px;
}
.hero-metric .hm-n {
  font-family: 'Inter Tight', sans-serif;
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 600;
  letter-spacing: -0.04em;
  color: var(--volt);
  line-height: 1;
}
.hero-metric .hm-l {
  font-size: 13px;
  color: var(--mute);
  letter-spacing: .02em;
}
.section-paper .hero-metric {
  background: rgba(10, 11, 14, .04);
  border-color: var(--line-dk);
}
.section-paper .hero-metric .hm-n { color: var(--ink); }
.section-paper .hero-metric .hm-l { color: var(--mute-2); }

/* page-hero pill-row — source .pill-row + .pill rules from solutions.css apply as-is;
   no theme overrides needed. */

/* --- vs-compare: logo row with vs divider --- */
.cmp-logos {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 32px;
}
.cmp-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  background: var(--ink-2);
  border: 1px solid var(--line);
  border-radius: 999px;
  font-family: 'Inter Tight', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--paper);
  letter-spacing: -.01em;
}
.cmp-logo.sw {
  border-color: rgba(214, 255, 74, .3);
  color: var(--volt);
}
.cmp-logo .dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
}
.cmp-logo.sw .dot {
  background: var(--volt);
  box-shadow: 0 0 10px var(--volt);
}
.cmp-vs {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  letter-spacing: .18em;
  color: var(--mute);
  text-transform: uppercase;
}

/* --- article: tag-row + meta-strip + hero-stats --- */
.article-hero {
  padding: 150px 0 80px;
  border-bottom: 1px solid var(--line);
  position: relative;
  overflow: hidden;
}
.article-hero .tag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 28px;
}
.article-hero .tag {
  display: inline-block;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(214, 255, 74, .1);
  border: 1px solid rgba(214, 255, 74, .3);
  color: var(--volt);
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-weight: 500;
}
.article-hero .tag.neutral {
  background: rgba(255, 255, 255, .04);
  border-color: var(--line);
  color: var(--mute);
}
.article-hero h1 {
  font-family: 'Inter Tight', sans-serif;
  font-size: clamp(36px, 5vw, 64px);
  font-weight: 600;
  letter-spacing: -.035em;
  line-height: 1.05;
  color: var(--paper);
  max-width: 20ch;
  margin: 0 0 22px;
}
.article-hero .lede {
  font-size: clamp(16px, 1.2vw, 19px);
  color: var(--mute);
  max-width: 70ch;
  line-height: 1.55;
  margin-bottom: 36px;
}
/* Article-hero meta strip — flat top-border flex row, mono labels above value */
.meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}
.meta-strip .m {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: var(--mute);
  text-transform: uppercase;
  letter-spacing: .1em;
}
.meta-strip .m strong {
  display: block;
  color: var(--paper);
  font-weight: 500;
  font-size: 14px;
  margin-top: 4px;
  letter-spacing: -.005em;
  text-transform: none;
  font-family: 'Inter', sans-serif;
}
.hero-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1px;
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
  margin-top: 32px;
}
.hero-stats .hs {
  background: var(--ink-2);
  padding: 26px 24px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.hero-stats .hn {
  font-family: 'Inter Tight', sans-serif;
  font-size: 36px;
  font-weight: 600;
  letter-spacing: -.035em;
  color: var(--volt);
  line-height: 1;
}
.hero-stats .hl {
  font-size: 12.5px;
  color: var(--mute);
  line-height: 1.5;
}

@media (max-width: 720px) {
  .article-hero { padding: 120px 0 56px; }
  .cmp-logos { flex-wrap: wrap; gap: 12px; margin-bottom: 24px; }
  .cmp-logo { font-size: 13px; padding: 8px 14px; }
}

/* ============================================================================
   pricing-card.module
   ---------------------------------------------------------------------------
   The module renders .pr-grid / .pr / .pr--featured / .pr-tag / .pr-price*
   / .pr-features with a NEW structure (h3 + tag + price + features-list +
   button) that differs from source HTML's principle-card .pr usage. Not in
   pages-scoped.css — entirely new.
   All selectors scoped under .pr-grid so they don't collide with the
   principle-card .pr (which uses h4 + p inside .principles).
   ============================================================================ */

.pr-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 56px;
}

.pr-grid .pr {
  background: var(--ink-2);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 32px 28px;
  display: flex;
  flex-direction: column;
  gap: 0;
  transition: border-color .25s var(--ease), transform .25s var(--ease);
}
.pr-grid .pr:hover {
  border-color: rgba(214, 255, 74, .3);
  transform: translateY(-3px);
}

.pr-grid .pr--featured {
  border-color: rgba(214, 255, 74, .55);
  background:
    radial-gradient(520px 280px at 50% 0%, rgba(214, 255, 74, .09), transparent 70%),
    var(--ink-2);
  position: relative;
}
.pr-grid .pr--featured::before {
  content: "Most popular";
  position: absolute;
  top: -12px; left: 50%;
  transform: translateX(-50%);
  background: var(--volt);
  color: var(--volt-ink);
  font-family: 'JetBrains Mono', monospace;
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  padding: 6px 14px;
  border-radius: 999px;
}

.pr-grid .pr h3 {
  font-family: 'Inter Tight', sans-serif;
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--paper);
  margin: 0 0 6px;
}

.pr-grid .pr-tag {
  font-size: 13.5px;
  color: var(--mute);
  line-height: 1.5;
  margin: 0 0 24px;
}

.pr-grid .pr-price {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 26px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--line);
}
.pr-grid .pr-price-v {
  font-family: 'Inter Tight', sans-serif;
  font-size: 42px;
  font-weight: 600;
  letter-spacing: -0.03em;
  color: var(--paper);
  line-height: 1;
}
.pr-grid .pr--featured .pr-price-v { color: var(--volt); }
.pr-grid .pr-price-u {
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  color: var(--mute);
  letter-spacing: .02em;
}

.pr-grid .pr-features {
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex-grow: 1;
}
.pr-grid .pr-features li {
  position: relative;
  padding-left: 26px;
  font-size: 14px;
  color: var(--paper);
  line-height: 1.55;
}
.pr-grid .pr-features li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 7px;
  width: 14px;
  height: 8px;
  border-left: 2px solid var(--volt);
  border-bottom: 2px solid var(--volt);
  transform: rotate(-45deg);
}

/* Paper section variant */
.section-paper .pr-grid .pr {
  background: #fff;
  border-color: var(--line-dk);
}
.section-paper .pr-grid .pr h3,
.section-paper .pr-grid .pr-price-v { color: var(--ink); }
.section-paper .pr-grid .pr-tag,
.section-paper .pr-grid .pr-features li,
.section-paper .pr-grid .pr-price-u { color: var(--mute-2); }
.section-paper .pr-grid .pr-features li::before { border-color: var(--ink); }
.section-paper .pr-grid .pr--featured {
  border-color: var(--volt);
  background:
    radial-gradient(520px 280px at 50% 0%, rgba(214, 255, 74, .18), transparent 70%),
    #fff;
}
.section-paper .pr-grid .pr--featured .pr-price-v { color: var(--ink); }
.section-paper .pr-grid .pr--featured::before {
  background: var(--ink);
  color: var(--volt);
}

/* Tablet */
@media (max-width: 960px) {
  .pr-grid { gap: 14px; }
  .pr-grid .pr { padding: 28px 22px; }
  .pr-grid .pr-price-v { font-size: 36px; }
}

/* Narrow tablet / large mobile → 1 col */
@media (max-width: 780px) {
  .pr-grid { grid-template-columns: 1fr; gap: 16px; max-width: 440px; margin-left: auto; margin-right: auto; }
  .pr-grid .pr--featured::before { top: -11px; }
}

/* ============================================================================
   pricing-included.module — .feats / .feat
   ---------------------------------------------------------------------------
   Source Swiftex Pricing.html used these classes in markup but never defined
   any CSS for them (relied on browser defaults). Designed here to match the
   visual intent of the "What's Included" paper-section panel.
   Not in pages-global.css or pages-scoped.css.
   ============================================================================ */

.feats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 40px;
}
@media (max-width: 900px) {
  .feats { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  .feats { grid-template-columns: 1fr; }
}

/* Legacy .feat card design — used by pricing-included/resource-featured modules via .feats container.
   Scoped to .feats so it does NOT override source .features .feat (which comes from solutions.css). */
.feats .feat {
  background: var(--ink-2);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 28px 26px;
}
.feats .feat h3 {
  font-family: 'Inter Tight', sans-serif;
  font-size: 17px;
  font-weight: 600;
  color: var(--paper);
  letter-spacing: -.01em;
  margin-bottom: 16px;
}
.feats .feat ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.feats .feat li {
  position: relative;
  padding-left: 22px;
  font-size: 13.5px;
  color: var(--mute-2);
  line-height: 1.55;
}
/* Bullet style variants for .features (source class preserved; variant picked via data-bullet attr).
   Source .feat ul li::before already has content:"+" — overrides below swap the glyph. */
.features[data-bullet="plus"] .feat ul li::before { content: "+"; color: var(--volt); font-weight: 600; width: auto; height: auto; border: 0; transform: none; top: 0; left: 0; }
.features[data-bullet="check"] .feat ul li { padding-left: 22px; }
.features[data-bullet="check"] .feat ul li::before {
  content: ""; position: absolute; left: 4px; top: 6px;
  width: 10px; height: 5px;
  border-left: 2px solid var(--volt); border-bottom: 2px solid var(--volt);
  transform: rotate(-45deg);
}
.features[data-bullet="arrow"] .feat ul li::before { content: "→"; color: var(--volt); font-weight: 600; width: auto; height: auto; border: 0; transform: none; top: 0; left: 0; }
.features[data-bullet="dot"] .feat ul li::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--volt); border: 0; transform: none; top: 9px; left: 2px; }
.section-paper .features[data-bullet="plus"] .feat ul li::before,
.section-paper .features[data-bullet="arrow"] .feat ul li::before { color: var(--ink); }
.section-paper .features[data-bullet="check"] .feat ul li::before { border-color: var(--ink); }
.section-paper .features[data-bullet="dot"] .feat ul li::before { background: var(--ink); }

/* Paper variant for legacy .feats .feat (pricing-included/resource-featured) */
.section-paper .feats .feat {
  background: #fff;
  border-color: var(--line-dk);
}
.section-paper .feats .feat h3 { color: var(--ink); }
.section-paper .feats .feat li { color: var(--mute-2); }
.section-paper .feats .feat li::before { border-color: var(--ink); }

/* ============================================================================
   compare-table.module — N-col variant (.cmp-ncol)
   ---------------------------------------------------------------------------
   The legacy 3-col .cmp / .cmp-row lives in pages-global.css with a hardcoded
   grid-template-columns: 1.4fr 1fr 1fr. When the editor configures N columns
   via columns_v2, module.html emits inline style="grid-template-columns:
   repeat(N, minmax(0,1fr));" which overrides the legacy rule. These rules
   cover the N-col-specific display bits that don't carry over from the legacy
   path (mobile stack, highlight column color in head row).
   ============================================================================ */
.cmp-ncol .cmp-row.head .swiftex { color: var(--volt); }
@media (max-width: 720px) {
  .cmp-ncol .cmp-row { grid-template-columns: 1fr !important; }
  .cmp-ncol .cmp-row > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .cmp-ncol .cmp-row > div:last-child { border-bottom: 0; }
}

/* ============================================================================
   Revenue Leaders page — module classes
   Extracted from Swiftex Revenue Leaders.html (source design reference)
   Used by: role-hero (kpi variant), pains-grid, metric-grid (outcomes variant),
            week-schedule (timeline variant), revenue-cockpit, board-narratives,
            quote-band (peer variant), objections, next-steps-grid
   ============================================================================ */

/* Section-intro helper — source class .s-intro defined in solutions.css at max-width:60ch.
   Modules wrap kicker+h2+lede in .s-intro conditionally via full_width_intro field.
   When full_width_intro=true, the .s-intro wrapper is omitted so heading spans full width. */

/* Border-toggle modifier classes — editor toggles in STYLE tab */
.pullquote.no-border, .peer.no-border { border: 0; }
.pullquote.no-volt-bar::before { display: none; }
.rel-card.no-border { border: 0; }

/* FAQ answer — zero browser default <p> margins so richtext-wrapped answers
   match source plain-text spacing inside .qa .ans */
.qa .ans > p { margin: 0; }
.qa .ans > p + p { margin-top: 12px; }

/* ============================================================================
   WhatsApp Automation — .wa-demo / .wa-phone / .wa-side chat mock
   (ported from source inline <style>, shared across any page that renders the
   chat-demo module with .wa-* classes)
   ============================================================================ */
.wa-demo { margin-top: 40px; display: grid; grid-template-columns: minmax(300px, 360px) 1fr; gap: 48px; align-items: start; }
@media (max-width: 900px) { .wa-demo { grid-template-columns: 1fr; } }
.wa-phone { background: #0B141A; border: 1px solid var(--line); border-radius: 28px; padding: 18px 14px; box-shadow: 0 30px 60px -20px rgba(0,0,0,.5); max-width: 360px; margin: 0 auto; width: 100%; }
.wa-header { display: flex; align-items: center; gap: 10px; padding: 4px 6px 14px; border-bottom: 1px solid rgba(255,255,255,.08); }
.wa-avatar { width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg, #00A884, #008069); display: grid; place-items: center; color: #fff; font-weight: 600; font-size: 13px; }
.wa-h-name { font-size: 14.5px; color: #E9EDEF; font-weight: 500; }
.wa-h-sub { font-size: 11.5px; color: #8696A0; }
.wa-h-tick { margin-left: auto; font-size: 10px; color: #25D366; letter-spacing: .05em; font-family: 'JetBrains Mono', monospace; }
.wa-body { padding: 16px 4px; display: flex; flex-direction: column; gap: 8px; }
.wa-msg { max-width: 78%; padding: 8px 10px; border-radius: 8px; font-size: 13.5px; line-height: 1.45; color: #E9EDEF; position: relative; word-wrap: break-word; }
.wa-msg.them { background: #202C33; align-self: flex-start; border-top-left-radius: 2px; }
.wa-msg.me { background: #005C4B; align-self: flex-end; border-top-right-radius: 2px; }
.wa-time { font-size: 10px; color: #8696A0; margin-top: 3px; text-align: right; letter-spacing: .02em; }
.wa-me-time { color: #b7dfd7; }
.wa-btn { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); color: #25D366; padding: 6px 10px; border-radius: 6px; font-size: 12.5px; margin-top: 6px; display: inline-block; }
.wa-card { background: #202C33; border-radius: 8px; padding: 8px; margin-bottom: 4px; max-width: 78%; align-self: flex-start; }
.wa-card img { width: 100%; height: 100px; border-radius: 6px; background: linear-gradient(135deg, #333, #222); display: block; object-fit: cover; }
.wa-card .wc-t { color: #E9EDEF; font-size: 13px; font-weight: 500; margin-top: 6px; }
.wa-card .wc-p { color: #25D366; font-size: 12.5px; margin-top: 2px; font-weight: 500; }
.wa-side h3 { font-size: 22px; letter-spacing: -0.02em; margin-bottom: 12px; }
.wa-side .wa-feat { display: grid; gap: 16px; margin-top: 20px; list-style: none; padding: 0; }
.wa-side .wa-feat li { display: grid; grid-template-columns: 30px 1fr; gap: 14px; padding: 12px 14px; background: var(--ink-2); border: 1px solid var(--line); border-radius: 10px; }
.wa-side .wa-feat .wfi { width: 30px; height: 30px; border-radius: 8px; background: rgba(37,211,102,.1); color: #25D366; display: grid; place-items: center; }
.wa-side .wa-feat strong { font-size: 14px; color: var(--paper); font-weight: 500; letter-spacing: -.01em; display: block; }
.wa-side .wa-feat span { font-size: 12.5px; color: var(--mute); line-height: 1.45; }

/* Quality tiers (quality-tiers module) */
.tiers { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 32px; }
@media (max-width: 720px) { .tiers { grid-template-columns: repeat(2, 1fr); } }
.tier { background: var(--ink-2); border: 1px solid var(--line); border-radius: 12px; padding: 20px; }
.tier .t-n { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; color: var(--mute); text-transform: uppercase; margin-bottom: 10px; }
.tier .t-cap { font-family: 'Inter Tight', sans-serif; font-size: 24px; color: var(--paper); font-weight: 600; letter-spacing: -0.02em; line-height: 1; }
.tier .t-l { font-size: 12px; color: var(--mute); margin-top: 8px; line-height: 1.4; }
.tier.tu { background: linear-gradient(160deg, rgba(37,211,102,.08), rgba(37,211,102,0) 60%); border-color: rgba(37,211,102,.3); }
.tier.tu .t-n { color: #25D366; }
/* Paper-section variant: inverts tier cards 1..N-1 to white; the .tu tier keeps its green gradient */
.section-paper .tier:not(.tu) { background: #fff; border-color: var(--line-dk); }
.section-paper .tier:not(.tu) .t-n { color: var(--mute-2); }
.section-paper .tier:not(.tu) .t-cap { color: var(--ink); }
.section-paper .tier:not(.tu) .t-l { color: var(--mute-2); }
.section-paper .tier.tu .t-cap { color: var(--ink); }
.section-paper .tier.tu .t-l { color: var(--mute-2); }

/* ============================================================================
   AI Voice Agents page — component CSS (ported from source inline <style>)
   .voice-demo + .voice-wave (animated bars) + .voice-transcript
   .lang-grid + .lang-chip (with highlighted variant)
   .lat-bar + .lat-seg.s1-4 + .lat-key color legend
   ============================================================================ */

/* Voice waveform visual */
.voice-demo { margin-top: 40px; background: var(--ink-2); border: 1px solid var(--line); border-radius: 18px; padding: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: center; }
@media (max-width: 900px) { .voice-demo { grid-template-columns: 1fr; } }
.voice-wave { display: flex; align-items: center; gap: 3px; height: 100px; justify-content: center; }
.voice-wave span { display: block; width: 5px; border-radius: 3px; background: var(--volt); animation: wave 1.2s ease-in-out infinite; }
.voice-wave span:nth-child(1) { animation-delay: 0s; height: 30%; }
.voice-wave span:nth-child(2) { animation-delay: .1s; height: 55%; }
.voice-wave span:nth-child(3) { animation-delay: .2s; height: 80%; }
.voice-wave span:nth-child(4) { animation-delay: .3s; height: 100%; }
.voice-wave span:nth-child(5) { animation-delay: .4s; height: 90%; }
.voice-wave span:nth-child(6) { animation-delay: .5s; height: 65%; }
.voice-wave span:nth-child(7) { animation-delay: .6s; height: 40%; }
.voice-wave span:nth-child(8) { animation-delay: .7s; height: 75%; }
.voice-wave span:nth-child(9) { animation-delay: .8s; height: 95%; }
.voice-wave span:nth-child(10) { animation-delay: .9s; height: 60%; }
.voice-wave span:nth-child(11) { animation-delay: 1s; height: 35%; }
.voice-wave span:nth-child(12) { animation-delay: 1.1s; height: 70%; }
@keyframes wave { 0%, 100% { transform: scaleY(.4); } 50% { transform: scaleY(1); } }
.voice-transcript { font-family: 'JetBrains Mono', monospace; font-size: 13px; line-height: 1.7; color: var(--paper); }
.voice-transcript .spk { color: var(--volt); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; display: block; margin-top: 10px; }
.voice-transcript .spk:first-child { margin-top: 0; }
.voice-transcript .mute { color: var(--mute); }

/* Language chips */
.lang-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; margin-top: 32px; }
@media (max-width: 720px) { .lang-grid { grid-template-columns: repeat(3, 1fr); } }
.lang-chip { background: var(--ink-2); border: 1px solid var(--line); border-radius: 10px; padding: 14px 10px; text-align: center; }
.lang-chip .lc-n { font-size: 15px; color: var(--paper); font-weight: 500; }
.lang-chip .lc-s { font-size: 11px; color: var(--mute); margin-top: 2px; font-family: 'JetBrains Mono', monospace; letter-spacing: .04em; }
/* Paper section variant for regular chips */
.section-paper .lang-chip { background: #fff; border-color: var(--line-dk); }
.section-paper .lang-chip .lc-n { color: var(--ink); }
.section-paper .lang-chip .lc-s { color: var(--mute-2); }
/* Highlighted variant (Hinglish, Tanglish etc) */
.lang-chip--hi, .section-paper .lang-chip--hi { background: var(--ink); border-color: var(--ink); }
.lang-chip--hi .lc-n, .section-paper .lang-chip--hi .lc-n { color: var(--volt); }
.lang-chip--hi .lc-s, .section-paper .lang-chip--hi .lc-s { color: var(--volt); }

/* Latency segmented bar */
.latency { margin-top: 36px; background: var(--ink-2); border: 1px solid var(--line); border-radius: 18px; padding: 32px; }
.lat-bar { margin-top: 24px; position: relative; height: 48px; background: rgba(255,255,255,.03); border-radius: 24px; overflow: hidden; }
.lat-seg { position: absolute; top: 0; bottom: 0; display: flex; align-items: center; justify-content: center; font-family: 'JetBrains Mono', monospace; font-size: 11px; color: var(--ink); font-weight: 500; letter-spacing: .04em; }
.lat-seg.s1 { background: #A8D030; }
.lat-seg.s2 { background: #D6FF4A; }
.lat-seg.s3 { background: #9FE85B; }
.lat-seg.s4 { background: #7CC742; }
.lat-key { display: flex; gap: 20px; margin-top: 18px; flex-wrap: wrap; font-family: 'JetBrains Mono', monospace; font-size: 11px; color: var(--mute); }
.lat-key span::before { content: "\25A0"; margin-right: 6px; }
.lat-key .k1::before { color: #A8D030; }
.lat-key .k2::before { color: #D6FF4A; }
.lat-key .k3::before { color: #9FE85B; }
.lat-key .k4::before { color: #7CC742; }

/* compare-matrix: zero the table's outer spacing; keep source border-bottom on every row. */
.vs-table-wrap { margin: 0; padding: 0; }
.vs-table { margin-bottom: 0; }
.vs-table-wrap + .cta-row { margin-top: 28px; }

/* Process-flow: override pages-global.css .steps/.step (homepage scroll-snap design with
   min-height:340px + padding:4px 4px 28px + scroll-snap) when used in solutions-page context. */
.flow-rail ~ .steps,
body.page-lead-management .steps,
body.page-revenue-leaders .steps { padding: 0; overflow: visible; scroll-snap-type: none; }
.flow-rail ~ .steps .step,
body.page-lead-management .steps .step,
body.page-revenue-leaders .steps .step { min-height: auto; grid-template-rows: none; scroll-snap-align: unset; }

/* Process-flow: override source .flow-chain (which has fixed repeat(5,1fr) that only works
   for 5-node chains) with a flex layout that handles variable node counts. Keeps source class. */
.flow-chain { display: flex; align-items: center; gap: 8px; grid-template-columns: none; }
.flow-chain .flow-node { flex: 1 1 0; min-width: 0; }
.flow-chain .flow-arrow { flex: 0 0 auto; }
@media (max-width: 900px) {
  .flow-chain { flex-direction: column; gap: 4px; }
  .flow-chain .flow-node { width: 100%; }
  .flow-chain .flow-arrow { transform: rotate(90deg); margin: 2px 0; }
}

/* Capabilities on paper section — match source inline styles (white card bg + inverted volt icon).
   Source .section-paper .feat is already in solutions.css but uses muted-icon colors; this block
   restores the source inline-style look with dark icon bg + volt icon glyph. */
.section-paper .feat { background: #fff; border-color: var(--line-dk); color: var(--ink); }
.section-paper .feat h3 { color: var(--ink); }
.section-paper .feat p { color: var(--mute-2); }
.section-paper .feat ul li { color: var(--ink); }
.section-paper .feat .feat-ic { background: var(--ink); color: var(--volt); border-color: var(--ink); }

/* Role hero — KPI variant (2-col + KPI card) */
.role-hero.role-hero--kpi { padding: clamp(80px, 10vh, 140px) 0 clamp(60px, 8vh, 100px); position: relative; overflow: hidden; }
.role-hero.role-hero--kpi::before { content: ""; position: absolute; inset: 0; background: radial-gradient(900px 520px at 100% 0%, rgba(214,255,74,.07), transparent 60%); pointer-events: none; }
.role-hero--kpi .role-hero-grid { display: grid; grid-template-columns: 1.25fr 1fr; gap: 64px; align-items: center; position: relative; }
@media (max-width: 1000px) { .role-hero--kpi .role-hero-grid { grid-template-columns: 1fr; gap: 48px; } }
.role-hero--kpi .role-eyebrow { display: inline-flex; align-items: center; gap: 10px; font-family: 'JetBrains Mono', monospace; font-size: 11.5px; letter-spacing: .14em; color: var(--mute); text-transform: uppercase; margin-bottom: 18px; }
.role-hero--kpi .role-eyebrow .pill { padding: 4px 10px; border-radius: 999px; border: 0; background: rgba(214,255,74,.12); color: var(--volt); letter-spacing: .08em; font-weight: 500; font-size: inherit; font-family: inherit; }
.role-hero--kpi .role-h { font-family: 'Inter Tight', sans-serif; font-size: clamp(42px, 5.4vw, 76px); font-weight: 600; line-height: 1.02; letter-spacing: -.03em; color: var(--paper); max-width: 18ch; margin-bottom: 22px; }
.role-hero--kpi .role-h em { font-style: normal; color: var(--volt); }
.role-hero--kpi .role-sub { font-size: clamp(16px, 1.25vw, 19px); color: var(--mute-2); line-height: 1.6; max-width: 52ch; margin-bottom: 32px; }
.role-hero--kpi .role-cta { display: flex; gap: 12px; flex-wrap: wrap; }

/* Hero KPI card */
.kpi-card { background: var(--ink-2); border: 1px solid var(--line); border-radius: 18px; padding: 26px; position: relative; overflow: hidden; }
.kpi-card::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--volt); }
.kpi-card .kpi-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
.kpi-card .kpi-title { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--mute); }
.kpi-card .kpi-date { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; color: var(--paper); }
.kpi-card .kpi-row { display: grid; grid-template-columns: 1.3fr .9fr .8fr; gap: 8px; padding: 14px 0; border-bottom: 1px solid var(--line); align-items: baseline; }
.kpi-card .kpi-row:last-child { border-bottom: 0; }
.kpi-card .kpi-k { font-size: 12.5px; color: var(--mute); line-height: 1.3; }
.kpi-card .kpi-v { font-family: 'Inter Tight', sans-serif; font-size: 22px; font-weight: 600; letter-spacing: -.025em; color: var(--paper); }
.kpi-card .kpi-v.good { color: var(--volt); }
.kpi-card .kpi-delta { font-family: 'JetBrains Mono', monospace; font-size: 11px; color: #4FCB93; text-align: right; }
.kpi-card .kpi-foot { margin-top: 16px; padding-top: 14px; border-top: 1px dashed var(--line); display: flex; justify-content: space-between; font-family: 'JetBrains Mono', monospace; font-size: 10.5px; color: var(--mute); letter-spacing: .06em; }
.kpi-card .pulse-dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--volt); margin-right: 6px; animation: pls 1.8s infinite; }
@keyframes pls { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .4; transform: scale(1.2); } }

/* Three Pains */
.pains { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 48px; }
@media (max-width: 960px) { .pains { grid-template-columns: 1fr; } }
.pain { background: var(--ink-2); border: 1px solid var(--line); border-radius: 18px; padding: 30px; position: relative; }
.pain .pn { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .14em; color: #FF6B5A; margin-bottom: 14px; text-transform: uppercase; display: inline-flex; align-items: center; gap: 8px; }
.pain .pn::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.pain h3 { font-family: 'Inter Tight', sans-serif; font-size: 22px; font-weight: 600; letter-spacing: -.02em; color: var(--paper); line-height: 1.2; margin-bottom: 12px; }
.pain .quote { display: block; background: transparent; border: 0; border-left: 2px solid var(--line); border-radius: 0; padding: 0 0 0 14px; margin: 0 0 16px 0; font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 400; color: var(--paper); line-height: 1.55; font-style: italic; letter-spacing: normal; }
.pain .quote cite { display: block; font-style: normal; font-family: 'JetBrains Mono', monospace; font-size: 10.5px; color: var(--mute); margin-top: 8px; letter-spacing: .06em; }
.pain .fix { font-size: 13.5px; color: var(--mute-2); line-height: 1.55; padding-top: 14px; border-top: 1px dashed var(--line); }
.pain .fix strong { color: var(--volt); font-weight: 500; display: block; font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; margin-bottom: 6px; text-transform: uppercase; }

/* Outcomes grid (metric-grid outcomes variant) */
.outcomes-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 40px; }
@media (max-width: 1000px) { .outcomes-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .outcomes-grid { grid-template-columns: 1fr; } }
.oc { background: #ffffff; border: 1px solid rgba(10,11,14,.08); border-radius: 16px; padding: 28px 24px; position: relative; }
.oc .oc-n { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; color: rgba(10,11,14,.4); letter-spacing: .12em; margin-bottom: 18px; }
.oc .oc-metric { font-family: 'Inter Tight', sans-serif; font-size: 52px; font-weight: 600; letter-spacing: -.04em; color: var(--ink); line-height: .95; }
.oc .oc-metric .u, .oc .oc-metric sub { font-size: .4em; color: rgba(10,11,14,.45); margin-left: 4px; letter-spacing: 0; vertical-align: baseline; font-weight: 500; display: inline; }
.oc .oc-label { font-family: 'Inter Tight', sans-serif; font-size: 16px; font-weight: 600; color: var(--ink); letter-spacing: -.01em; margin: 16px 0 6px; }
.oc .oc-desc { font-size: 13px; color: rgba(10,11,14,.6); line-height: 1.55; }

/* Your Week — timeline variant */
.week-wrap { margin-top: 48px; background: var(--ink-2); border: 1px solid var(--line); border-radius: 20px; overflow: hidden; }
.week-head { padding: 26px 30px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }
.week-head h3 { font-family: 'Inter Tight', sans-serif; font-size: 22px; font-weight: 600; letter-spacing: -.02em; color: var(--paper); }
.week-head .tag { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; color: var(--volt); text-transform: uppercase; }
.week-grid { display: grid; grid-template-columns: repeat(5, 1fr); }
@media (max-width: 900px) { .week-grid { grid-template-columns: 1fr; } }
.day { padding: 28px 24px; border-right: 1px solid var(--line); position: relative; }
.day:last-child { border-right: 0; }
@media (max-width: 900px) { .day { border-right: 0; border-bottom: 1px solid var(--line); } .day:last-child { border-bottom: 0; } }
.day .d-n { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; color: var(--mute); text-transform: uppercase; margin-bottom: 12px; display: flex; justify-content: space-between; }
.day h4 { font-family: 'Inter Tight', sans-serif; font-size: 16px; font-weight: 600; color: var(--paper); letter-spacing: -.015em; line-height: 1.25; margin-bottom: 14px; }
.day ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.day ul li { font-size: 12.5px; color: var(--mute-2); line-height: 1.5; padding-left: 16px; position: relative; }
.day ul li::before { content: ""; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; border-radius: 50%; background: var(--volt); opacity: .6; }

/* Revenue Cockpit — dashboard showcase */
.dash-card { margin-top: 40px; background: var(--ink); border: 1px solid var(--line); border-radius: 20px; overflow: hidden; }
.dash-top { display: flex; justify-content: space-between; align-items: center; padding: 18px 24px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.02); }
.dash-title { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: .12em; color: var(--mute); text-transform: uppercase; }
.dash-title strong { color: var(--paper); font-weight: 500; }
.dash-dots { display: flex; gap: 6px; }
.dash-dots i { width: 10px; height: 10px; border-radius: 50%; background: var(--line); }
.dash-body { display: grid; grid-template-columns: 1.3fr 1fr; gap: 0; }
@media (max-width: 900px) { .dash-body { grid-template-columns: 1fr; } }
.dash-left { padding: 30px; border-right: 1px solid var(--line); }
@media (max-width: 900px) { .dash-left { border-right: 0; border-bottom: 1px solid var(--line); } }
.dash-left h4, .dash-right h4 { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; color: var(--mute); text-transform: uppercase; margin-bottom: 20px; }
.funnel-sim { display: flex; flex-direction: column; gap: 10px; }
.funnel-row { display: grid; grid-template-columns: 110px 1fr 56px; gap: 14px; align-items: center; font-size: 13px; }
.funnel-row .fk { font-family: 'JetBrains Mono', monospace; color: var(--mute); font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase; }
.funnel-row .fbar { height: 22px; border-radius: 5px; background: linear-gradient(90deg, var(--volt), rgba(214,255,74,.3)); display: flex; align-items: center; padding: 0 10px; color: var(--volt-ink); font-family: 'JetBrains Mono', monospace; font-size: 11px; font-weight: 600; }
.funnel-row .fv { font-family: 'JetBrains Mono', monospace; color: var(--paper); font-size: 12.5px; text-align: right; }
.dash-right { padding: 30px; }
.forecast { display: flex; flex-direction: column; gap: 16px; }
.fcast-row { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 12px; border-bottom: 1px dashed var(--line); }
.fcast-row:last-child { border-bottom: 0; padding-bottom: 0; }
.fcast-k { font-size: 13px; color: var(--mute); }
.fcast-v { font-family: 'Inter Tight', sans-serif; font-size: 19px; font-weight: 600; color: var(--paper); letter-spacing: -.02em; }
.fcast-v .pct { font-family: 'JetBrains Mono', monospace; font-size: 11px; color: #4FCB93; margin-left: 8px; font-weight: 500; }
.fcast-v .pct.red { color: #FF6B5A; }

/* Revenue cockpit — MOBILE: stack funnel rows label/bar/pct vertically */
@media (max-width: 640px) {
  .dash-left, .dash-right { padding: 24px 20px; }
  .dash-left h4, .dash-right h4 { margin-bottom: 18px; letter-spacing: .1em; }
  .funnel-sim { gap: 18px; }
  .funnel-row {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: stretch;
  }
  .funnel-row .fk { font-size: 11px; letter-spacing: .1em; }
  .funnel-row .fbar { height: 26px; padding: 0 12px; font-size: 12px; border-radius: 4px; }
  .funnel-row .fv { text-align: left; font-size: 12.5px; color: var(--mute); }
  .forecast { gap: 20px; }
  .fcast-row { padding-bottom: 16px; }
  .fcast-k { font-size: 13px; }
  .fcast-v { font-size: 17px; }
  .fcast-v .pct { font-size: 10.5px; margin-left: 6px; }
}

/* Board narratives — 2-col card grid w/ bullets */
.board-stories { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 40px; }
@media (max-width: 820px) { .board-stories { grid-template-columns: 1fr; } }
.board-card { background: #ffffff; border: 1px solid rgba(10,11,14,.08); border-radius: 18px; padding: 32px; position: relative; }
.board-card .bc-n { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; color: rgba(10,11,14,.45); text-transform: uppercase; margin-bottom: 14px; }
.board-card h3 { font-family: 'Inter Tight', sans-serif; font-size: 22px; font-weight: 600; letter-spacing: -.02em; color: var(--ink); line-height: 1.25; margin-bottom: 14px; }
.board-card p, .board-card .bs-body p { font-size: 14px; color: rgba(10,11,14,.65); line-height: 1.6; margin-bottom: 20px; }
.board-card ul { list-style: none; display: flex; flex-direction: column; gap: 10px; margin-top: 0; padding: 0; }
.board-card ul li { font-size: 13.5px; color: var(--ink); line-height: 1.5; padding-left: 22px; position: relative; }
.board-card ul li::before { content: "→"; position: absolute; left: 0; top: 0; color: rgba(10,11,14,.35); font-weight: 500; }

/* Objections grid — 3-col cards (source: .obj > .obj-card > .obq + .oba) */
.obj { margin-top: 40px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
@media (max-width: 900px) { .obj { grid-template-columns: 1fr; } }
.obj-card { background: var(--ink-2); border: 1px solid var(--line); border-radius: 14px; padding: 26px; }
.obj-card .obq { font-family: 'Inter Tight', sans-serif; font-size: 16px; font-weight: 600; color: var(--paper); letter-spacing: -.01em; line-height: 1.35; margin-bottom: 14px; }
.obj-card .oba { font-size: 13.5px; color: var(--mute-2); line-height: 1.6; }
.obj-card .oba strong { color: var(--volt); font-weight: 500; }
.obj-card .oba p { margin: 0; font-size: inherit; color: inherit; line-height: inherit; }

/* Peer quote — 2-col with right metric */
.peer { margin-top: 56px; background: var(--ink); border: 1px solid rgba(214,255,74,.15); border-radius: 22px; padding: 48px 52px; display: grid; grid-template-columns: 1fr auto; gap: 48px; align-items: center; }
@media (max-width: 820px) { .peer { grid-template-columns: 1fr; padding: 36px 30px; } }
.peer blockquote { font-family: 'Inter Tight', sans-serif; font-size: clamp(22px, 2.4vw, 30px); font-weight: 500; color: var(--paper); letter-spacing: -.02em; line-height: 1.3; margin: 0; }
.peer blockquote::before { content: "\201C"; font-size: 52px; color: var(--volt); line-height: 0; vertical-align: -10px; margin-right: 4px; }
.peer .p-attrib { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: .1em; color: var(--mute); text-transform: uppercase; margin-top: 20px; }
.peer .p-attrib strong { color: var(--paper); font-weight: 500; }
.peer-metric { text-align: right; }
.peer-metric .pn { font-family: 'Inter Tight', sans-serif; font-size: 72px; font-weight: 600; letter-spacing: -.04em; color: var(--volt); line-height: .9; }
.peer-metric .pl { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .12em; color: var(--mute); text-transform: uppercase; margin-top: 10px; }
@media (max-width: 820px) { .peer-metric { text-align: left; } }

/* Next-steps grid (source classes: .ns > .ns-card > .nn + h4 + p + a) */
.ns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 40px; }
@media (max-width: 820px) { .ns { grid-template-columns: 1fr; } }
.ns-card { background: var(--ink-2); border: 1px solid var(--line); border-radius: 16px; padding: 28px; display: flex; flex-direction: column; }
.section-paper .ns-card { background: #fff; border-color: rgba(10,11,14,.08); }
.ns-card .nn { font-family: 'JetBrains Mono', monospace; font-size: 10.5px; letter-spacing: .14em; color: var(--volt); text-transform: uppercase; margin-bottom: 12px; }
.section-paper .ns-card .nn { color: var(--ink); }
.ns-card h4 { font-family: 'Inter Tight', sans-serif; font-size: 19px; font-weight: 600; color: var(--paper); letter-spacing: -.015em; line-height: 1.25; margin-bottom: 10px; }
.section-paper .ns-card h4 { color: var(--ink); }
.ns-card p { font-size: 13.5px; color: var(--mute-2); line-height: 1.55; margin-bottom: 18px; flex: 1; }
.ns-card a { font-family: 'JetBrains Mono', monospace; font-size: 11.5px; letter-spacing: .08em; color: var(--volt); text-transform: uppercase; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; transition: transform .2s var(--ease); }
.ns-card a:hover { transform: translateX(2px); }
.section-paper .ns-card a { color: var(--ink); }
/* mobile overrides — module-level responsive tuning */
/* ===========================================================================
   Swiftex v2 — Mobile overrides for module + global classes
   ---------------------------------------------------------------------------
   Responsive breakpoints that the source HTML inline CSS didn't include.
   Loaded AFTER pages-global.css and pages-scoped.css so these rules win.
   Two tiers:
     - @media (max-width: 900px) — tablet tuning
     - @media (max-width: 640px) — narrow mobile (single-column stacks)
   =========================================================================== */

/* ============================================================================
   Tablet (≤ 900px)
   ============================================================================ */
@media (max-width: 900px) {

  /* feat-row visual card — tighter inner padding */
  .feat-row .visual { padding: 20px; }
  .v-bar .tk { height: 8px; }

  /* Industry pages: persona + journey default to 2-col → 1-col on small tablet */
  .persona,
  .journey-grid { grid-template-columns: 1fr; }

  /* Section padding relief on tablet */
  .section { padding: 72px 0; }
  .hero { padding: 120px 0 56px; }
  .final { padding: 80px 24px 100px; }
  .final-card { padding: 48px 32px; }
  .final-card h2 { font-size: clamp(28px, 6vw, 48px); }

  /* Contact form — 2-col inputs collapse */
  .form .two { grid-template-columns: 1fr; }

  /* Shift card row — keep 3-col but compress gap */
  .shift-card { padding: 28px; }
  .shift-card .row { padding: 10px 12px; gap: 10px; }
}

/* ============================================================================
   Narrow mobile (≤ 640px)
   ============================================================================ */
@media (max-width: 640px) {

  /* --- Section chrome --- */
  .section { padding: 56px 0; }
  .wrap { padding: 0 20px; }
  .hero { padding: 96px 0 48px; }

  /* --- Typography --- */
  h1.page-h { font-size: clamp(32px, 8vw, 48px); }
  .lede { font-size: 15px; }

  /* --- feat-row .v-bars: stack label / bar / value vertically --- */
  .v-bar {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .v-bar .vl {
    text-align: right;
    font-size: 13px;
  }

  /* --- feat-row .v-stack lines: stack key/value vertically --- */
  .v-line {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .v-line .v {
    text-align: left;
    width: 100%;
  }

  /* --- Stat / card grids → single column --- */
  .metric-grid,
  .bens,
  .people,
  .stats,
  .jobs,
  .offices,
  .strip-grid,
  .grid-3,
  .grid-4 {
    grid-template-columns: 1fr !important;
  }

  /* --- Logos: 3-col → 2-col on very narrow --- */
  .logos { grid-template-columns: repeat(2, 1fr) !important; }

  /* --- Ben cells lose right border when full-width stacked --- */
  .ben { border-right: 0; }

  /* --- shift-card row: stack old/new values below label --- */
  .shift-card .row {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 12px 14px;
  }
  .shift-card .row .old,
  .shift-card .row .new { text-align: left; }
  .shift-card .row .arr { display: none; }

  /* --- Final CTA (orb card) --- */
  .final { padding: 56px 16px 72px; }
  .final-card {
    padding: 36px 24px;
    border-radius: 20px;
  }
  .final-card h2 {
    font-size: clamp(26px, 7vw, 38px);
    max-width: none;
  }
  .final-card p { font-size: 15px; margin-top: 14px; }
  .orb {
    width: 260px;
    height: 260px;
    right: -80px;
    top: -80px;
  }
  .final-ctas {
    flex-direction: column;
    width: 100%;
  }
  .final-ctas .btn { width: 100%; justify-content: center; }

  /* --- cta-band variant --- */
  .cta-band { padding: 80px 20px; }
  .cta-row { flex-direction: column; width: 100%; }
  .cta-row .btn { width: 100%; justify-content: center; }

  /* --- Footer: single column on narrow mobile --- */
  .footer { padding: 72px 0 28px; }
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 36px;
  }
  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  /* --- Compare / vs-* tables lose density --- */
  .compare-matrix,
  .compare-table { font-size: 13px; }

  /* --- Pricing cards --- */
  .pricing-grid { grid-template-columns: 1fr !important; }

  /* --- Timeline indentation softened --- */
  .timeline { padding-left: 20px; }
}

/* ============================================================================
   Tiny mobile (≤ 380px) — just in case
   ============================================================================ */
@media (max-width: 380px) {
  .wrap { padding: 0 16px; }
  .section { padding: 48px 0; }
  .hero { padding: 88px 0 40px; }
  h1.page-h { font-size: 30px; }
  .logos { grid-template-columns: 1fr !important; }
}


/* Utilities — highest specificity helpers (must load last) */
/* For content that needs to be visually hidden but stay visible for screenreaders */

.show-for-sr {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

@media (max-width: 767px) {
  .show-for-sr--mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}