
    :root {
      --bg:        #FAF8F6;
      --bg-card:   #FFFFFF;
      --border:    #EDE6DF;
      --accent:    #D45B3A;
      --accent-lt: #E06D4C;
      --accent-dim: rgba(212,91,58,0.1);
      --text:      #1A1410;
      --text-2:    #3D3530;
      --muted:     #7A6E68;
      --muted-lt:  #9E9590;
      --ff-head:   "Cal Sans", sans-serif;
      --ff-body:   "Google Sans Flex", sans-serif;
      --ease:      cubic-bezier(0.4, 0, 0.2, 1);
      --shadow-sm: 0 1px 4px rgba(0,0,0,0.05), 0 4px 16px rgba(0,0,0,0.06);
      --shadow-md: 0 2px 8px rgba(0,0,0,0.05), 0 8px 28px rgba(0,0,0,0.09);
      --shadow-lg: 0 4px 16px rgba(0,0,0,0.06), 0 16px 48px rgba(0,0,0,0.11);
    }

    .wave-bg { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: -1; pointer-events: none; }
    .wave-bg canvas { display: block; width: 100%; height: 100%; }

    .sl, .sr, .su {
      opacity: 1;
      transform: none;
    }
    .sl.is-revealed, .sr.is-revealed, .su.is-revealed {
      opacity: 1;
      transform: none;
    }
    @media (prefers-reduced-motion: reduce) {
      .sl, .sr, .su { opacity: 1; transform: none; transition: none; }
    }

    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; overflow-x: clip; }
    body {
      font-family: var(--ff-body);
      background: var(--bg);
      color: var(--text);
      font-size: 16px;
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      overflow-x: clip;
    }
    a    { text-decoration: none; color: inherit; }
    ul   { list-style: none; }
    img  { max-width: 100%; display: block; }
    button { cursor: pointer; border: none; background: none; font-family: inherit; color: inherit; }
    .wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

    .btn {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 14px 28px; border-radius: 6px;
      font-family: var(--ff-body); font-size: 0.95rem; font-weight: 600;
      transition: all 0.2s var(--ease); cursor: pointer;
      border: 2px solid transparent; white-space: nowrap;
    }
    .btn-yellow {
      background: var(--accent); color: #fff; border-color: var(--accent);
      box-shadow: 0 4px 16px rgba(212,91,58,0.28);
    }
    .btn-yellow:hover {
      background: var(--accent-lt); border-color: var(--accent-lt);
      transform: translateY(-2px); box-shadow: 0 8px 28px rgba(212,91,58,0.38);
    }
    .btn-ghost {
      background: transparent; color: var(--text-2);
      border-color: var(--border);
    }
    .btn-ghost:hover { background: var(--bg-card); border-color: #ccc; }
    .btn-outline {
      background: transparent; color: var(--text-2);
      border-color: var(--border);
    }
    .btn-outline:hover { border-color: var(--accent); color: var(--accent); }
    .btn-lg { padding: 16px 40px; font-size: 1rem; }

    .site-header {
      position: fixed; top: 0; left: 0; right: 0;
      z-index: 1000; height: 72px;
      background: rgba(255,255,255,0.92);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border-bottom: 1px solid var(--border);
      transition: box-shadow 0.3s var(--ease);
    }
    .site-header.header-scrolled {
      box-shadow: 0 2px 24px rgba(0,0,0,0.08);
    }
    .nav-inner {
      display: flex; align-items: center; justify-content: space-between;
      height: 72px; gap: 20px;
    }
    .nav-brand { display: inline-flex; align-items: center; flex-shrink: 0; }
    .nav-brand img { height: 38px; width: auto; }

    .nav-menu { display: flex; align-items: center; gap: 2px; flex: 1; }
    .nav-item { position: relative; }
    .nav-link {
      display: flex; align-items: center; gap: 5px;
      padding: 8px 12px; border-radius: 6px;
      font-size: 0.875rem; font-weight: 500;
      color: var(--text-2); transition: all 0.18s var(--ease); white-space: nowrap;
    }
    .nav-link:hover { color: var(--text); background: var(--bg-card); }
    .nav-link i { font-size: 0.6rem; transition: transform 0.2s; }
    .nav-item:hover .nav-link i,
    .nav-item:focus-within .nav-link i { transform: rotate(180deg); }
    .nav-dropdown {
      position: absolute; top: 100%; left: 0;
      min-width: 200px; background: #fff;
      border: 1px solid var(--border); border-radius: 10px;
      padding: 10px 6px 6px; opacity: 0; pointer-events: none;
      transform: translateY(-6px);
      transition: opacity 0.16s, transform 0.16s;
      box-shadow: var(--shadow-md);
      z-index: 12;
    }
    .nav-item:hover .nav-dropdown,
    .nav-item:focus-within .nav-dropdown {
      opacity: 1;
      pointer-events: auto;
      transform: translateY(0);
    }
    .nav-dropdown a {
      display: block; padding: 8px 12px;
      font-size: 0.86rem; color: var(--text-2);
      border-radius: 6px; transition: background 0.14s, color 0.14s;
    }
    .nav-dropdown a:hover { background: var(--bg-card); color: var(--accent); }
    .nav-item.is-dropdown-dismissed .nav-dropdown { visibility: hidden; pointer-events: none; }
    .nav-dropdown--platform { display: grid; width: 470px; grid-template-columns: 1fr 1fr; }
    .nav-dropdown--platform a:last-child { grid-column: 1 / -1; border-top: 1px solid var(--border); margin-top: 2px; padding-top: 10px; }
    .nav-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
    .nav-login {
      font-size: 0.875rem; font-weight: 500; color: var(--text-2);
      padding: 8px 14px; border-radius: 6px; transition: all 0.18s;
    }
    .nav-login:hover { color: var(--text); background: var(--bg-card); }
    .nav-trial {
      padding: 9px 20px; border-radius: 6px;
      font-size: 0.875rem; font-weight: 600;
      background: var(--accent); color: #fff;
      box-shadow: 0 2px 10px rgba(212,91,58,0.25); transition: all 0.18s;
    }
    .nav-trial:hover { background: var(--accent-lt); transform: translateY(-1px); }
    .mobile-toggle {
      display: none; flex-direction: column; gap: 5px; padding: 8px; cursor: pointer;
    }
    .mobile-toggle span {
      display: block; width: 22px; height: 2px;
      background: var(--text); border-radius: 2px; transition: all 0.3s;
    }
    .mobile-toggle.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .mobile-toggle.open span:nth-child(2) { opacity: 0; }
    .mobile-toggle.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    .mobile-nav {
      display: none; position: fixed; top: 72px; left: 0; right: 0;
      background: #fff; border-bottom: 1px solid var(--border);
      padding: 16px 24px 24px; z-index: 999;
      flex-direction: column; gap: 4px;
      box-shadow: 0 8px 32px rgba(0,0,0,0.1);
    }
    .mobile-nav.open { display: flex; }
    .mobile-nav a {
      display: block; padding: 11px 14px;
      font-size: 0.93rem; color: var(--text-2);
      border-radius: 6px; transition: all 0.18s;
    }
    .mobile-nav a:hover { color: var(--accent); background: var(--bg-card); }
    .mobile-nav-btns { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }

    .hero-wrap {
      display: flex; flex-direction: column;
      align-items: center; justify-content: center;
      position: relative; overflow: visible;
      padding: 100px 24px 60px;
    }
    .hero-inner {
      position: relative; z-index: 1;
      text-align: center; max-width: 860px; margin: 0 auto;
    }
    .hero-eyebrow {
      display: inline-flex; align-items: center; gap: 8px;
      font-size: 0.78rem; font-weight: 700; letter-spacing: 0.1em;
      text-transform: uppercase; color: var(--accent);
      background: rgba(212,91,58,0.08); border: 1px solid rgba(212,91,58,0.2);
      padding: 6px 14px; border-radius: 100px; margin-bottom: 28px;
    }
    .hero-title {
      font-family: var(--ff-head);
      font-size: clamp(2.8rem, 6vw, 5.2rem);
      font-weight: 400; line-height: 1.04;
      letter-spacing: -0.02em; color: var(--text);
      margin-bottom: 22px;
    }
    .hero-sub {
      font-size: clamp(1rem, 1.8vw, 1.15rem);
      color: var(--muted); max-width: 640px;
      margin: 0 auto 40px; line-height: 1.75;
    }
    .hero-sub strong { color: var(--text-2); font-weight: 600; }
    .hero-actions {
      display: flex; align-items: center;
      justify-content: center; gap: 12px;
      flex-wrap: wrap; margin-bottom: 40px;
    }
    .hero-tag-row {
      display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;
      margin-bottom: 36px;
    }
    .hero-tag {
      display: inline-flex; align-items: center; gap: 6px;
      padding: 8px 14px; border-radius: 100px;
      background: var(--bg-card); border: 1px solid var(--border);
      font-size: 0.82rem; font-weight: 600; color: var(--text-2);
      transition: all 0.18s;
    }

    .section-block { padding: 96px 0; }
    .section-hdr   { text-align: center; max-width: 720px; margin: 0 auto 64px; }
    .eyebrow {
      display: block; font-size: 0.72rem; font-weight: 700;
      letter-spacing: 0.12em; text-transform: uppercase;
      color: var(--accent); margin-bottom: 12px;
    }
    .section-title {
      font-family: var(--ff-head);
      font-size: clamp(1.9rem, 3.5vw, 3.1rem);
      font-weight: 400; line-height: 1.1;
      letter-spacing: -0.02em; color: var(--text);
    }
    .section-sub { font-size: 1rem; color: var(--muted); line-height: 1.7; margin-top: 14px; }

    .hero-proof { display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
    .hero-proof__stars { color: #f59e0b; letter-spacing: 2px; font-size: 0.95rem; }
    .hero-proof__txt { font-size: 0.82rem; color: var(--muted); }
    .hero-proof__txt strong { color: var(--text-2); font-weight: 600; }

    .stats-band { padding: 40px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
    .stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; text-align: center; }
    .stats-grid .stat-num { font-family: var(--ff-head); font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 400; color: var(--accent); line-height: 1; }
    .stats-grid .stat-label { font-size: 0.82rem; color: var(--muted); margin-top: 6px; }
    .stats-band__inner { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; text-align: center; padding: 16px 0; }
    .stat-item { }
    .stat-item .stat-num { font-family: var(--ff-head); font-size: clamp(1.6rem, 2.8vw, 2.4rem); font-weight: 400; color: var(--text); line-height: 1; }
    .stat-item .stat-num em { font-style: normal; color: var(--accent); font-size: 0.7em; }
    .stat-label { display: block; font-size: 0.85rem; font-weight: 600; color: var(--text-2); margin-top: 8px; }
    .stat-sub { font-size: 0.78rem; color: var(--muted); margin-top: 4px; }
    @media (max-width: 768px) { .stats-grid, .stats-band__inner { grid-template-columns: repeat(2, 1fr); gap: 20px; } }

    .stat-band { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; text-align: center; }
    .stat-band__item { }
    .stat-band__num { font-family: var(--ff-head); font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 400; color: var(--accent); line-height: 1; }
    .stat-band__label { display: block; font-size: 0.82rem; color: var(--muted); margin-top: 6px; }
    @media (max-width: 768px) { .stat-band { grid-template-columns: repeat(2, 1fr); } }

    .logo-marquee { padding: 40px 0; text-align: center; overflow: hidden; }
    .logo-marquee__label { font-size: 0.78rem; font-weight: 600; color: var(--muted-lt); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 24px; }
    .marquee-wrap { overflow: hidden; width: 100%; }
    .marquee-track { display: flex; gap: 48px; animation: marqueeScroll 30s linear infinite; width: max-content; }
    .marquee-logo { font-size: 1.1rem; font-weight: 600; color: var(--muted-lt); white-space: nowrap; transition: color 0.2s; }
    .marquee-logo:hover { color: var(--text); }
    @keyframes marqueeScroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

    .logo-cloud { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
    .logo-name { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: 100px; background: var(--bg-card); border: 1px solid var(--border); font-size: 0.85rem; font-weight: 500; color: var(--text-2); transition: all 0.2s; }
    .logo-name:hover { border-color: var(--accent); color: var(--accent); }

    .industry-cloud__grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 28px; }
    .ind-pill { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: 100px; background: var(--bg-card); border: 1px solid var(--border); font-size: 0.88rem; font-weight: 500; color: var(--text-2); transition: all 0.2s; }
    .ind-pill:hover { border-color: var(--accent); color: var(--accent); transform: translateY(-1px); box-shadow: var(--shadow-sm); }
    .ind-pill i { font-size: 0.9rem; color: var(--accent); }
    .ind-pill--lg { padding: 12px 26px; font-size: 0.95rem; font-weight: 600; }
    .industry-cloud__cta { text-align: center; }
    .industry-cloud__cta a { display: inline-flex; align-items: center; gap: 6px; font-size: 0.9rem; font-weight: 600; color: var(--accent); transition: gap 0.2s; }
    .industry-cloud__cta a:hover { gap: 10px; }

    .feature-checklist__layout { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
    .fcol { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; padding: 32px; box-shadow: var(--shadow-sm); }
    .fcol__header { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--border); }
    .fcol__icon { width: 44px; height: 44px; border-radius: 12px; background: var(--accent-dim); display: flex; align-items: center; justify-content: center; font-size: 1.2rem; color: var(--accent); flex-shrink: 0; }
    .fcol__title { font-family: var(--ff-head); font-size: 1.2rem; font-weight: 400; color: var(--text); line-height: 1.2; }
    .fcol__title span { display: block; font-family: var(--ff-body); font-size: 0.82rem; font-weight: 400; color: var(--muted); margin-top: 4px; }
    .fcol__list { display: flex; flex-direction: column; gap: 16px; }
    .fcol__item { display: flex; align-items: flex-start; gap: 12px; }
    .fcol__item-icon { width: 36px; height: 36px; border-radius: 10px; background: var(--bg); display: flex; align-items: center; justify-content: center; font-size: 0.95rem; color: var(--accent); flex-shrink: 0; }
    .fcol__item-text { }
    .fcol__item-text strong { display: block; font-size: 0.92rem; font-weight: 600; color: var(--text); margin-bottom: 2px; }
    .fcol__item-text span { font-size: 0.82rem; color: var(--muted); line-height: 1.5; display: block; }
    @media (max-width: 820px) { .feature-checklist__layout { grid-template-columns: 1fr; } }

    .reviews-reel { }
    .review-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; padding: 32px; box-shadow: var(--shadow-sm); height: 100%; display: flex; flex-direction: column; gap: 16px; }
    .review-card__stars { color: #f59e0b; letter-spacing: 2px; font-size: 0.95rem; }
    .review-card__quote { font-size: 0.9rem; color: var(--text-2); line-height: 1.7; flex: 1; font-style: italic; }
    .review-card__author { display: flex; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid var(--border); }
    .review-card__avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--accent-dim); color: var(--accent); display: flex; align-items: center; justify-content: center; font-family: var(--ff-head); font-size: 1rem; font-weight: 400; flex-shrink: 0; }
    .review-card__info { }
    .review-card__info strong { display: block; font-size: 0.88rem; font-weight: 600; color: var(--text); }
    .review-card__info span { font-size: 0.78rem; color: var(--muted); }

    .testimonial-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; padding: 32px; box-shadow: var(--shadow-sm); height: 100%; }
    .testimonial .eyebrow { margin-bottom: 12px; }
    .tc-stars { color: #f59e0b; font-size: 0.85rem; display: flex; gap: 3px; margin-bottom: 16px; }
    .tc-text { font-size: 0.95rem; color: var(--text-2); line-height: 1.7; margin-bottom: 20px; font-style: italic; }
    .tc-author { display: flex; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid var(--border); }
    .tc-avatar { width: 44px; height: 44px; border-radius: 50%; background: var(--accent-dim); display: flex; align-items: center; justify-content: center; color: var(--accent); flex-shrink: 0; }
    .tc-author strong { font-size: 0.9rem; color: var(--text); }
    .tc-author span { font-size: 0.8rem; color: var(--muted); }
    .testimonial-swiper .swiper-pagination-bullet-active { background: var(--accent); }
    .testimonial-section { padding: 80px 0; }
    .featured-testimonial { background: var(--bg-card); border: 1px solid var(--border); border-radius: 20px; padding: 48px; box-shadow: var(--shadow-sm); }

    .apps-connect__layout { display: grid; grid-template-columns: 1fr 1.3fr; gap: 60px; align-items: center; }
    .apps-connect__text p { color: var(--muted); font-size: 0.98rem; line-height: 1.7; margin-top: 14px; }
    .apps-connect__link { display: inline-flex; align-items: center; gap: 6px; font-size: 0.9rem; font-weight: 600; color: var(--accent); margin-top: 20px; transition: gap 0.2s; }
    .apps-connect__link:hover { gap: 10px; }
    .app-logo-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
    .app-logo-item { display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-radius: 12px; background: var(--bg-card); border: 1px solid var(--border); font-size: 0.85rem; font-weight: 500; color: var(--text-2); transition: all 0.2s; }
    .app-logo-item:hover { border-color: var(--accent); box-shadow: var(--shadow-sm); }
    .app-logo-item i { font-size: 1rem; color: var(--muted-lt); width: 20px; text-align: center; }
    @media (max-width: 860px) { .apps-connect__layout { grid-template-columns: 1fr; gap: 40px; } .app-logo-grid { grid-template-columns: repeat(2, 1fr); } }

    .news-reel__header { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 40px; }
    .news-reel__link { display: inline-flex; align-items: center; gap: 6px; font-size: 0.9rem; font-weight: 600; color: var(--accent); transition: gap 0.2s; white-space: nowrap; }
    .news-reel__link:hover { gap: 10px; }
    .news-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; overflow: hidden; box-shadow: var(--shadow-sm); transition: all 0.2s; height: 100%; }
    .news-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
    .news-card__img { height: 140px; background: linear-gradient(135deg, var(--accent-dim), rgba(245,158,11,0.06)); display: flex; align-items: center; justify-content: center; font-size: 2.2rem; color: var(--muted-lt); }
    .news-card__body { padding: 20px; display: flex; flex-direction: column; gap: 10px; }
    .news-card__tag { display: inline-block; font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--accent); background: var(--accent-dim); padding: 3px 10px; border-radius: 100px; align-self: flex-start; }
    .news-card__title { font-family: var(--ff-head); font-size: 1rem; font-weight: 400; color: var(--text); line-height: 1.4; }
    .news-card__cta { display: inline-flex; align-items: center; gap: 5px; font-size: 0.82rem; font-weight: 600; color: var(--accent); transition: gap 0.2s; margin-top: 4px; }
    .news-card__cta:hover { gap: 8px; }

    .sticky-cta {
      position: fixed; right: 24px; bottom: 24px; max-width: 560px;
      background: var(--text); color: #fff; padding: 14px 16px 14px 20px;
      display: flex; align-items: center; justify-content: space-between; gap: 20px;
      z-index: 999; border-radius: 16px; box-shadow: 0 18px 50px rgba(20,16,14,0.28);
    }
    .sticky-cta-text { font-size: 0.95rem; font-weight: 600; }
    .sticky-cta-text em { font-style: normal; color: var(--accent); }
    .sticky-cta-sub { font-size: 0.78rem; color: rgba(255,255,255,0.5); margin-top: 2px; }
    .sticky-cta-actions { display: flex; align-items: center; gap: 8px; }
    .sticky-cta-close { width: 32px; height: 32px; border-radius: 8px; background: rgba(255,255,255,0.1); color: rgba(255,255,255,0.5); display: flex; align-items: center; justify-content: center; font-size: 0.9rem; transition: all 0.18s; }
    .sticky-cta-close:hover { background: rgba(255,255,255,0.2); color: #fff; }
    .sticky-cta.is-dismissed { display: none; }
    .architecture-band { background: var(--text); color: #fff; }
    .architecture-band .eyebrow { color: #f3a184; }
    .architecture-band .section-title { color: #fff; }
    .architecture-band .section-sub { color: rgba(255,255,255,0.62); }
    .truth-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
    .truth-card {
      background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1);
      border-radius: 16px; padding: 26px; min-height: 190px;
    }
    .truth-card i { color: #f3a184; font-size: 1.45rem; margin-bottom: 24px; }
    .truth-card h3 { font-family: var(--ff-head); font-size: 1.25rem; font-weight: 400; color: #fff; margin-bottom: 9px; }
    .truth-card p { color: rgba(255,255,255,0.58); font-size: 0.88rem; line-height: 1.65; }
    .lifecycle { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
    .lifecycle-step {
      position: relative; background: var(--bg-card); border: 1px solid var(--border);
      border-radius: 14px; padding: 22px 18px; min-height: 150px; box-shadow: var(--shadow-sm);
    }
    .lifecycle-step::after {
      content: '\f061'; font-family: 'Font Awesome 6 Free'; font-weight: 900;
      position: absolute; right: -11px; top: 50%; transform: translateY(-50%);
      color: var(--accent); background: var(--bg); width: 22px; height: 22px;
      display: flex; align-items: center; justify-content: center; z-index: 2; font-size: 0.65rem;
    }
    .lifecycle-step:last-child::after { display: none; }
    .lifecycle-step span { display: block; color: var(--accent); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; margin-bottom: 12px; }
    .lifecycle-step h3 { font-family: var(--ff-head); font-size: 1.05rem; font-weight: 400; color: var(--text); margin-bottom: 7px; }
    .lifecycle-step p { color: var(--muted); font-size: 0.78rem; line-height: 1.55; }
    .scale-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
    .scale-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; padding: 28px 24px; box-shadow: var(--shadow-sm); }
    .scale-card__num { font-family: var(--ff-head); color: var(--accent); font-size: 2rem; line-height: 1; margin-bottom: 20px; }
    .scale-card h3 { font-family: var(--ff-head); font-size: 1.2rem; font-weight: 400; margin-bottom: 8px; }
    .scale-card p { color: var(--muted); font-size: 0.86rem; line-height: 1.65; }
    .challenge-panel {
      background: linear-gradient(135deg, rgba(212,91,58,0.12), rgba(212,91,58,0.035));
      border: 1px solid rgba(212,91,58,0.22); border-radius: 22px; padding: 54px;
      display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 52px; align-items: center;
    }
    .challenge-panel h2 { font-family: var(--ff-head); font-size: clamp(2rem, 3.8vw, 3.5rem); font-weight: 400; line-height: 1.05; margin: 10px 0 18px; }
    .challenge-panel p { color: var(--muted); font-size: 1rem; line-height: 1.75; }
    .challenge-points { display: flex; flex-direction: column; gap: 12px; }
    .challenge-point { background: rgba(255,255,255,0.72); border: 1px solid var(--border); border-radius: 12px; padding: 15px 17px; color: var(--text-2); font-size: 0.9rem; font-weight: 600; }
    .challenge-point i { color: var(--accent); margin-right: 8px; }
    .capability-depth {
      background: #f4f0ec;
      border-top: 1px solid var(--border);
      border-bottom: 1px solid var(--border);
    }
    .capability-depth .section-hdr { max-width: 820px; }
    .capability-wall {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      border-top: 1px solid #ddd3ca;
      border-left: 1px solid #ddd3ca;
      background: #ddd3ca;
      gap: 1px;
    }
    .capability-tile {
      min-height: 250px;
      padding: 26px 24px;
      background: #faf8f6;
      position: relative;
      transition: background .2s var(--ease), transform .2s var(--ease);
    }
    .capability-tile:hover { background: #fff; transform: translateY(-3px); z-index: 1; }
    .capability-tile__num {
      position: absolute;
      top: 20px;
      right: 20px;
      font-size: .66rem;
      font-weight: 750;
      letter-spacing: .12em;
      color: var(--muted-lt);
    }
    .capability-tile i {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      background: var(--accent-dim);
      color: var(--accent);
      font-size: 1rem;
      margin-bottom: 42px;
    }
    .capability-tile h3 {
      font-family: var(--ff-head);
      font-size: 1.2rem;
      font-weight: 400;
      line-height: 1.2;
      margin-bottom: 9px;
    }
    .capability-tile p { color: var(--muted); font-size: .84rem; line-height: 1.62; }
    .availability-note {
      display: flex;
      align-items: flex-start;
      justify-content: center;
      gap: 9px;
      color: var(--muted);
      font-size: .8rem;
      margin-top: 24px;
      text-align: center;
    }
    .availability-note i { color: var(--accent); margin-top: 3px; }
    .integration-section {
      background-color: #fff;
      background-image: linear-gradient(rgba(237,230,223,.45) 1px, transparent 1px), linear-gradient(90deg, rgba(237,230,223,.45) 1px, transparent 1px);
      background-size: 48px 48px;
    }
    .integration-lead {
      display: grid;
      grid-template-columns: 1.25fr .75fr;
      gap: 72px;
      align-items: end;
      padding-bottom: 48px;
      margin-bottom: 0;
    }
    .integration-lead h2 {
      font-family: var(--ff-head);
      font-size: clamp(2.4rem, 5vw, 4.8rem);
      font-weight: 400;
      letter-spacing: -.035em;
      line-height: .98;
      color: var(--text);
    }
    .integration-lead > p { color: var(--muted); font-size: 1rem; line-height: 1.75; padding-bottom: 4px; }
    .integration-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      border: 1px solid #ded6cf;
      background: #ded6cf;
      gap: 1px;
      box-shadow: var(--shadow-sm);
    }
    .integration-item {
      min-height: 180px;
      background: rgba(250,248,246,.96);
      padding: 24px;
      display: grid;
      grid-template-columns: 42px 1fr;
      grid-template-rows: 1fr auto;
      column-gap: 15px;
      transition: background .18s var(--ease);
    }
    .integration-item:hover { background: #fff; }
    .integration-item > i {
      width: 42px;
      height: 42px;
      border: 1px solid rgba(212,91,58,.25);
      border-radius: 11px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--accent);
      background: rgba(212,91,58,.06);
    }
    .integration-item h3 { font-family: var(--ff-head); font-size: 1.08rem; font-weight: 400; line-height: 1.2; margin-bottom: 7px; }
    .integration-item p { color: var(--muted); font-size: .8rem; line-height: 1.55; }
    .integration-item > span {
      grid-column: 2;
      align-self: end;
      justify-self: start;
      margin-top: 20px;
      padding: 4px 9px;
      border-radius: 100px;
      background: #e9f3eb;
      color: #2c6b3d;
      font-size: .62rem;
      line-height: 1;
      font-weight: 800;
      letter-spacing: .1em;
      text-transform: uppercase;
    }
    .integration-foot {
      background: var(--text);
      color: #fff;
      padding: 30px 34px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 36px;
    }
    .integration-foot p { color: rgba(255,255,255,.65); max-width: 850px; font-size: .86rem; line-height: 1.68; }
    .integration-foot p strong { color: #fff; }
    .integration-foot .btn { flex-shrink: 0; }


    .marketing-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
    .marketing-card {
      background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px;
      padding: 28px 24px; box-shadow: var(--shadow-sm); transition: all 0.2s var(--ease);
    }
    .marketing-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); border-color: rgba(212,91,58,0.28); }
    .marketing-card i { color: var(--accent); font-size: 1.3rem; margin-bottom: 20px; }
    .marketing-card h3 { font-family: var(--ff-head); font-size: 1.25rem; font-weight: 400; color: var(--text); margin-bottom: 8px; }
    .marketing-card p { color: var(--muted); font-size: 0.87rem; line-height: 1.65; }
    .marketing-card__link { display: inline-flex; align-items: center; gap: 6px; color: var(--accent); font-size: 0.82rem; font-weight: 700; margin-top: 16px; }
    .marketing-card__link:hover { gap: 9px; }

    .footer-inner--focused { grid-template-columns: 1.7fr repeat(4, 1fr); }

    .counter { display: inline; }


    .feature-strips { padding: 80px 0 96px; }
    .feature-strips .section-hdr { margin-bottom: 72px; }
    .fstrip {
      display: flex; align-items: center; gap: 80px;
      padding: 56px 0; border-top: 1px solid var(--border);
    }
    .fstrip:last-child { border-bottom: 1px solid var(--border); }
    .fstrip.flip { flex-direction: row-reverse; }
    .fstrip__visual, .fstrip__copy { flex: 1; }
    .fstrip__visual {
      background: var(--bg-card); border: 1px solid var(--border);
      border-radius: 20px; aspect-ratio: 4/3;
      display: flex; align-items: center; justify-content: center;
      box-shadow: var(--shadow-md); overflow: hidden; position: relative;
    }
    .fstrip__visual::before {
      content: ''; position: absolute; inset: 0;
      background: transparent;
    }
    .fstrip__visual-inner { text-align: center; color: var(--muted-lt); position: relative; }
    .fstrip__visual-inner i { font-size: 3.8rem; color: rgba(212,91,58,0.25); display: block; margin-bottom: 12px; }
    .fstrip__visual-inner p { font-size: 0.85rem; }
    .fstrip__copy { max-width: 520px; }
    .fstrip__copy .eyebrow { margin-bottom: 10px; }
    .fstrip__copy h2 {
      font-family: var(--ff-head); font-size: clamp(1.8rem, 3vw, 2.8rem);
      font-weight: 400; letter-spacing: -0.02em; line-height: 1.1;
      color: var(--text); margin-bottom: 14px;
    }
    .fstrip__copy p { color: var(--muted); font-size: 1rem; line-height: 1.75; margin-bottom: 20px; }
    .check-list { display: flex; flex-direction: column; gap: 10px; }
    .check-list li {
      display: flex; align-items: center; gap: 10px;
      font-size: 0.9rem; font-weight: 500; color: var(--text-2);
    }
    .check-list li::before {
      content: ''; width: 20px; height: 20px; border-radius: 50%;
      background: var(--accent); flex-shrink: 0;
      background-image: url("data:image/svg+xml,%3Csvg width='12' height='10' viewBox='0 0 12 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5L4.5 8.5L11 1.5' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
      background-repeat: no-repeat; background-position: center;
    }
    @media (max-width: 860px) {
      .fstrip, .fstrip.flip { flex-direction: column; gap: 40px; }
      .fstrip__copy { max-width: 100%; }
    }

    .subpage-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
    }
    .subpage-card {
      background: var(--bg-card); border: 1px solid var(--border);
      border-radius: 16px; padding: 28px 24px;
      transition: all 0.2s var(--ease);
      display: flex; flex-direction: column; gap: 8px;
      box-shadow: var(--shadow-sm);
    }
    .subpage-card:hover {
      transform: translateY(-3px); box-shadow: var(--shadow-md);
      border-color: rgba(212,91,58,0.25);
    }
    .subpage-card h3 {
      font-family: var(--ff-head);
      font-size: 1.2rem; font-weight: 400; color: var(--text);
    }
    .subpage-card p {
      font-size: 0.88rem; color: var(--muted); line-height: 1.6;
    }
    .subpage-card__link {
      font-size: 0.82rem; font-weight: 600; color: var(--accent);
      display: inline-flex; align-items: center; gap: 5px; margin-top: 4px;
      transition: gap 0.2s;
    }
    .subpage-card__link:hover { gap: 8px; }
    @media (max-width: 820px) { .subpage-grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 520px) { .subpage-grid { grid-template-columns: 1fr; } }

    .related-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
    }
    .related-card {
      background: var(--bg-card); border: 1px solid var(--border);
      border-radius: 16px; padding: 24px;
      transition: all 0.2s var(--ease);
      display: flex; flex-direction: column; gap: 6px;
      box-shadow: var(--shadow-sm);
    }
    .related-card:hover {
      transform: translateY(-3px); box-shadow: var(--shadow-md);
      border-color: rgba(212,91,58,0.25);
    }
    .related-card h3 {
      font-family: var(--ff-head);
      font-size: 1.1rem; font-weight: 400; color: var(--text);
    }
    .related-card p {
      font-size: 0.85rem; color: var(--muted); line-height: 1.5;
    }
    .related-card__link {
      font-size: 0.8rem; font-weight: 600; color: var(--accent);
      display: inline-flex; align-items: center; gap: 5px;
      transition: gap 0.2s;
    }
    .related-card__link:hover { gap: 8px; }
    @media (max-width: 820px) { .related-grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 520px) { .related-grid { grid-template-columns: 1fr; } }

    .promo-band { background: var(--accent); padding: 96px 0; overflow: hidden; }
    .promo-band__layout {
      display: grid; grid-template-columns: 1fr 1.3fr;
      gap: 80px; align-items: center;
    }
    .promo-band__text .eyebrow { color: rgba(255,255,255,0.7); }
    .promo-band__text h2 {
      font-family: var(--ff-head); font-size: clamp(2rem, 3.5vw, 3.2rem);
      font-weight: 400; letter-spacing: -0.02em; line-height: 1.1;
      color: #fff; margin: 12px 0 18px;
    }
    .promo-band__text p { color: rgba(255,255,255,0.8); font-size: 1rem; line-height: 1.7; margin-bottom: 32px; }
    .promo-band .btn-yellow {
      background: #fff; color: var(--accent); border-color: #fff;
      box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    }
    .promo-band .btn-yellow:hover { background: #FFF5F2; border-color: #FFF5F2; }
    .promo-band__media { position: relative; }
    .promo-mockup {
      background: rgba(255,255,255,0.15); border: 1px solid rgba(255,255,255,0.3);
      border-radius: 16px; aspect-ratio: 16/10;
      display: flex; align-items: center; justify-content: center;
      position: relative; overflow: hidden;
    }
    .promo-mockup__inner { color: rgba(255,255,255,0.6); text-align: center; }
    .promo-mockup__inner i { font-size: 3rem; color: rgba(255,255,255,0.5); display: block; margin-bottom: 10px; }
    .promo-mockup__inner p { font-size: 0.85rem; }

    .faq-wrap { padding: 96px 0; }
    .faq-wrap__layout {
      display: grid; grid-template-columns: 1fr 1.6fr;
      gap: 80px; align-items: start;
    }
    .faq-wrap__left .section-title { margin-top: 12px; }
    .faq-wrap__left p { color: var(--muted); font-size: 0.98rem; line-height: 1.7; margin-top: 14px; }
    .faq-list { display: flex; flex-direction: column; }
    .faq-item { border-bottom: 1px solid var(--border); }
    .faq-question {
      display: flex; align-items: center; justify-content: space-between;
      gap: 16px; padding: 20px 0; font-weight: 600; font-size: 0.97rem;
      color: var(--text); cursor: pointer; user-select: none; transition: color 0.18s;
    }
    .faq-question:hover { color: var(--accent); }
    .faq-question i {
      font-size: 0.78rem; color: var(--muted-lt); transition: transform 0.3s ease; flex-shrink: 0;
    }
    .faq-item.open .faq-question i { transform: rotate(180deg); color: var(--accent); }
    .faq-answer { overflow: hidden; max-height: 0; transition: max-height 0.4s ease; }
    .faq-answer__inner { padding-bottom: 20px; color: var(--muted); font-size: 0.92rem; line-height: 1.75; }
    .faq-item.open .faq-answer { max-height: 400px; }

    .site-footer {
      background: var(--text); color: rgba(255,255,255,0.5);
      padding: 72px 0 36px;
    }
    .footer-inner {
      display: grid; grid-template-columns: 1.8fr repeat(5, 1fr);
      gap: 40px; padding-bottom: 60px;
      border-bottom: 1px solid rgba(255,255,255,0.08);
    }
    .footer-brand { display: flex; flex-direction: column; gap: 14px; }
    .footer-brand__img { height: 36px; width: auto; }
    .footer-brand p { font-size: 0.875rem; line-height: 1.65; max-width: 260px; }
    .footer-brand__phone {
      display: inline-flex; align-items: center; gap: 8px;
      color: rgba(255,255,255,0.85); font-weight: 600; font-size: 0.9rem;
    }
    .footer-brand__phone i { color: var(--accent); }
    .footer-heading {
      font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em;
      text-transform: uppercase; color: rgba(255,255,255,0.55); margin-bottom: 16px;
    }
    .footer-col ul { display: flex; flex-direction: column; gap: 10px; }
    .footer-link { display: block; font-size: 0.86rem; color: rgba(255,255,255,0.4); transition: color 0.18s; }
    .footer-link:hover { color: rgba(255,255,255,0.85); }
    .footer-bottom {
      display: flex; align-items: center; justify-content: space-between;
      padding-top: 32px; gap: 16px; flex-wrap: wrap;
    }
    .footer-bottom__copy { font-size: 0.8rem; color: rgba(255,255,255,0.25); }
    .footer-socials { display: flex; align-items: center; gap: 8px; }
    .footer-social-link {
      width: 34px; height: 34px; background: rgba(255,255,255,0.06);
      border-radius: 8px; display: flex; align-items: center; justify-content: center;
      font-size: 0.82rem; color: rgba(255,255,255,0.4); transition: background 0.18s, color 0.18s;
    }
    .footer-social-link:hover { background: var(--accent); color: #fff; }

    .pricing-main { padding: 0 0 80px; }
    .pricing-controls { display: flex; flex-direction: column; align-items: center; gap: 20px; margin-bottom: 48px; }
    .pricing-toggle { display: inline-flex; align-items: center; gap: 8px; background: var(--bg-card); border: 1px solid var(--border); border-radius: 100px; padding: 4px; }
    .pricing-toggle__btn { padding: 10px 24px; border-radius: 100px; font-family: var(--ff-body); font-size: 0.88rem; font-weight: 600; color: var(--muted); background: transparent; border: none; cursor: pointer; transition: all 0.2s; }
    .pricing-toggle__btn.active { background: var(--accent); color: #fff; box-shadow: 0 2px 8px rgba(212,91,58,0.2); }
    .pricing-toggle__btn:not(.active):hover { color: var(--text); }
    .pricing-toggle__save { font-size: 0.7rem; font-weight: 700; color: var(--accent); margin-left: 4px; }
    .pricing-segment { display: inline-flex; align-items: center; gap: 6px; background: var(--bg-card); border: 1px solid var(--border); border-radius: 100px; padding: 4px; }
    .pricing-segment__btn { padding: 10px 20px; border-radius: 100px; font-family: var(--ff-body); font-size: 0.85rem; font-weight: 600; color: var(--muted); background: transparent; border: none; cursor: pointer; transition: all 0.2s; white-space: nowrap; }
    .pricing-segment__btn small { display: inline-block; font-size: 0.7rem; font-weight: 400; color: var(--muted-lt); margin-left: 4px; }
    .pricing-segment__btn.active { background: var(--text); color: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
    .pricing-segment__btn.active small { color: rgba(255,255,255,0.5); }
    .pricing-segment__btn:not(.active):hover { color: var(--text); }
    .pricing-cards-wrap { max-width: 1120px; margin: 0 auto; }
    .pricing-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
    .pricing-card { background: var(--bg-card); border: 1px solid var(--border); border-radius: 20px; padding: 32px 24px; box-shadow: var(--shadow-sm); position: relative; display: flex; flex-direction: column; transition: all 0.2s var(--ease); }
    .pricing-card:hover { box-shadow: var(--shadow-md); transform: translateY(-2px); }
    .pricing-card--featured { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent-dim), var(--shadow-sm); }
    .pricing-card--featured:hover { box-shadow: 0 0 0 2px var(--accent-dim), var(--shadow-md); }
    .pricing-card__badge { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--muted-lt); margin-bottom: 12px; }
    .pricing-card__badge--pop { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--accent); color: #fff; padding: 4px 18px; border-radius: 100px; }
    .pricing-card__name { font-family: var(--ff-head); font-size: 1.4rem; font-weight: 400; margin-bottom: 12px; }
    .pricing-card__price { display: flex; align-items: baseline; gap: 3px; margin-bottom: 8px; }
    .pricing-card__currency { font-size: 1.2rem; color: var(--muted); align-self: flex-start; margin-top: 4px; }
    .pricing-card__amount { font-family: var(--ff-head); font-size: 2.6rem; font-weight: 400; color: var(--accent); letter-spacing: -0.03em; line-height: 1; }
    .pricing-card__period { font-size: 0.9rem; color: var(--muted); }
    .pricing-card__desc { font-size: 0.82rem; color: var(--muted); line-height: 1.5; margin-bottom: 20px; min-height: 60px; flex: 1; }
    .pricing-card__features { display: flex; flex-direction: column; gap: 10px; margin-bottom: 24px; }
    .pricing-card__features li { font-size: 0.85rem; color: var(--text-2); display: flex; align-items: center; gap: 8px; }
    .pricing-card__features li i { color: var(--accent); font-size: 0.72rem; width: 16px; flex-shrink: 0; }
    .pricing-card__footnote { text-align: center; font-size: 0.73rem; color: var(--muted-lt); margin-top: 10px; }
    .pricing-trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px 32px; margin-top: 48px; padding-top: 36px; border-top: 1px solid var(--border); }
    .pricing-trust span { font-size: 0.82rem; color: var(--muted); display: flex; align-items: center; gap: 6px; }
    .pricing-trust span i { color: var(--accent); font-size: 0.78rem; }
    @media (max-width: 1024px) { .pricing-cards { grid-template-columns: repeat(2, 1fr); } }
    @media (max-width: 640px) { .pricing-cards { grid-template-columns: 1fr; max-width: 380px; margin: 0 auto; } }

    .pricing-categories { padding: 80px 0; }
    .pricing-categories__layout { display: grid; grid-template-columns: 220px 1fr; gap: 48px; align-items: start; }
    .pricing-nav { display: flex; flex-direction: column; gap: 4px; position: sticky; top: 100px; }
    .pricing-nav__btn { text-align: left; padding: 12px 16px; border-radius: 12px; font-size: 0.88rem; font-weight: 500; color: var(--text-2); background: transparent; border: none; cursor: pointer; transition: all 0.18s; }
    .pricing-nav__btn:hover { background: var(--bg); color: var(--text); }
    .pricing-nav__btn.active { background: var(--accent-dim); color: var(--accent); font-weight: 600; }
    .pricing-panels { min-height: 400px; }
    .pricing-panel { display: none; }
    .pricing-panel.active { display: block; }
    .pricing-panel__hdr { margin-bottom: 36px; }
    .pricing-panel__cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
    .ppc { background: var(--bg-card); border: 1px solid var(--border); border-radius: 16px; padding: 24px 20px; box-shadow: var(--shadow-sm); }
    .ppc--feat { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent-dim), var(--shadow-sm); }
    .ppc h4 { font-family: var(--ff-head); font-size: 1.1rem; font-weight: 400; margin-bottom: 8px; }
    .ppc__price { font-size: 1.6rem; font-weight: 400; color: var(--accent); margin-bottom: 12px; font-family: var(--ff-head); }
    .ppc__amt { letter-spacing: -0.02em; }
    .ppc__per { font-size: 0.82rem; color: var(--muted); font-family: var(--ff-body); }
    .ppc__desc { font-size: 0.8rem; color: var(--muted); line-height: 1.5; margin-bottom: 16px; }
    .ppc__list { display: flex; flex-direction: column; gap: 8px; margin-bottom: 20px; }
    .ppc__list li { font-size: 0.82rem; color: var(--text-2); display: flex; align-items: center; gap: 8px; }
    .ppc__list li i { color: var(--accent); font-size: 0.7rem; width: 14px; flex-shrink: 0; }
    .ppc__x i { color: var(--muted-lt); }
    @media (max-width: 1024px) { .pricing-categories__layout { grid-template-columns: 1fr; } .pricing-nav { flex-direction: row; flex-wrap: wrap; position: static; gap: 6px; } .pricing-nav__btn { padding: 8px 16px; font-size: 0.82rem; } .pricing-panel__cards { grid-template-columns: repeat(2, 1fr); } }
    @media (max-width: 640px) { .pricing-panel__cards { grid-template-columns: 1fr; } }

    .pricing-compare { padding: 48px 0 80px; }
    .pricing-compare__wrap { overflow-x: auto; }
    .pricing-compare__table { width: 100%; border-collapse: collapse; font-size: 0.88rem; min-width: 640px; }
    .pricing-compare__th { text-align: left; padding: 14px 16px; font-weight: 600; color: var(--text); background: var(--bg); border-bottom: 2px solid var(--border); font-size: 0.85rem; }
    .pricing-compare__th:first-child { width: 34%; }
    .pricing-compare__th--hl { color: var(--accent); }
    .pricing-compare__table td { padding: 12px 16px; border-bottom: 1px solid var(--border); color: var(--text-2); }
    .pricing-compare__table td i.fa-check { color: var(--accent); font-size: 0.85rem; }
    .pricing-compare__table td i.fa-minus { color: var(--muted-lt); font-size: 0.8rem; }
    .pricing-compare__section td { font-weight: 700; color: var(--text); background: var(--bg); padding: 16px 16px 10px; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.06em; border-bottom: none; }
    .pricing-compare__table tr:last-child td { border-bottom: none; }

    .awards-band { padding: 60px 0; text-align: center; }
    .awards-grid { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 32px 48px; }
    .award-item { text-align: center; }
    .award-badge { width: 64px; height: 64px; border-radius: 16px; display: flex; align-items: center; justify-content: center; margin: 0 auto 8px; font-size: 1.2rem; font-weight: 700; }
    .award-label { font-size: 0.75rem; color: var(--muted); font-weight: 600; }

    @media (max-width: 1024px) {
      .promo-band__layout    { grid-template-columns: 1fr; gap: 48px; }
      .faq-wrap__layout      { grid-template-columns: 1fr; gap: 40px; }
      .footer-inner          { grid-template-columns: repeat(3, 1fr); }
      .footer-brand          { grid-column: 1 / -1; }
      .truth-grid, .scale-grid { grid-template-columns: repeat(2, 1fr); }
      .lifecycle { grid-template-columns: repeat(3, 1fr); }
      .lifecycle-step:nth-child(3)::after { display: none; }
      .capability-wall { grid-template-columns: repeat(3, 1fr); }
      .integration-grid { grid-template-columns: repeat(2, 1fr); }
    }
      @media (max-width: 768px) {
      .nav-menu, .nav-actions { display: none; }
      .mobile-toggle { display: flex; }
      .section-block { padding: 64px 0; }
      .hero-actions { flex-direction: column; align-items: center; }
      .footer-inner { grid-template-columns: 1fr 1fr; }
      .challenge-panel { grid-template-columns: 1fr; padding: 34px 24px; gap: 30px; }
      .marketing-card-grid { grid-template-columns: 1fr 1fr; }
      .capability-wall { grid-template-columns: repeat(2, 1fr); }
      .capability-tile { min-height: 225px; }
      .integration-lead { grid-template-columns: 1fr; gap: 22px; padding-bottom: 34px; }
      .integration-foot { align-items: flex-start; flex-direction: column; padding: 26px 24px; gap: 22px; }
      .sticky-cta { left: 12px; right: 12px; bottom: 12px; max-width: none; padding: 11px 12px 11px 15px; gap: 10px; }
      .sticky-cta-sub { display: none; }
      .sticky-cta-text { font-size: 0.82rem; max-width: 170px; }
      .site-footer { padding-bottom: 132px; }
    }
    @media (max-width: 520px) {
      .truth-grid, .scale-grid, .marketing-card-grid { grid-template-columns: 1fr; }
      .lifecycle { grid-template-columns: 1fr; }
      .lifecycle-step::after { display: none; }
      .capability-wall, .integration-grid { grid-template-columns: 1fr; }
      .capability-tile { min-height: 0; }
      .integration-item { min-height: 160px; }
      .integration-lead h2 { font-size: clamp(2.2rem, 12vw, 3.5rem); }
      .sticky-cta-text { display: none; }
      .sticky-cta { left: auto; right: 12px; width: auto; }
    }

    /* Flagship product stories */
    .story-page {
      --story-accent: var(--accent);
      --story-paper: #f7f3ed;
      --story-ink: #18201b;
      background: var(--story-paper);
    }
    .story-page .wave-bg { display: none; }
    .story-hero {
      padding: 132px 0 82px;
      border-bottom: 1px solid rgba(26,20,16,.14);
      background: #fffdf9;
      overflow: hidden;
    }
    .story-hero__grid {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr);
      gap: clamp(48px, 7vw, 104px);
      align-items: center;
    }
    .story-kicker,
    .story-index {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      color: var(--story-accent);
      font-family: "IBM Plex Mono", monospace;
      font-size: .72rem;
      font-weight: 600;
      letter-spacing: .08em;
      line-height: 1.3;
      text-transform: uppercase;
    }
    .story-kicker {
      padding: 8px 12px;
      border: 1px solid color-mix(in srgb, var(--story-accent) 35%, transparent);
      background: color-mix(in srgb, var(--story-accent) 7%, white);
      border-radius: 100px;
    }
    .story-hero h1 {
      max-width: 760px;
      margin: 24px 0 24px;
      font-family: var(--ff-head);
      font-size: clamp(3rem, 5.2vw, 5.1rem);
      font-weight: 400;
      letter-spacing: -.055em;
      line-height: .96;
    }
    .story-hero__intro {
      max-width: 720px;
      color: var(--text-2);
      font-size: clamp(1.05rem, 1.6vw, 1.3rem);
      line-height: 1.65;
    }
    .story-hero__actions { margin-top: 32px; }
    .story-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }
    .story-tags span {
      padding: 7px 11px;
      border: 1px solid var(--border);
      border-radius: 4px;
      background: #fff;
      color: var(--text-2);
      font-family: "IBM Plex Mono", monospace;
      font-size: .68rem;
      font-weight: 500;
      letter-spacing: .02em;
      text-transform: uppercase;
    }
    .story-visual {
      min-height: 520px;
      border: 2px solid var(--story-ink);
      border-radius: 20px;
      background: #fff;
      box-shadow: 12px 14px 0 var(--story-ink);
      overflow: hidden;
      transform: rotate(1deg);
    }
    .story-visual__top {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      padding: 13px 16px;
      border-bottom: 2px solid var(--story-ink);
      background: color-mix(in srgb, var(--story-accent) 12%, white);
      font-family: "IBM Plex Mono", monospace;
      font-size: .62rem;
      font-weight: 600;
      letter-spacing: .06em;
    }
    .builder-shell { display: grid; grid-template-columns: 58px 1fr 112px; min-height: 468px; }
    .builder-rail {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 18px;
      padding: 18px 12px;
      border-right: 1px solid var(--story-ink);
      background: #f4f0e9;
    }
    .builder-rail b {
      display: grid;
      width: 32px;
      height: 32px;
      place-items: center;
      border-radius: 50%;
      background: var(--story-accent);
      color: #fff;
      font-size: 1.3rem;
    }
    .builder-rail span { width: 26px; height: 18px; border: 1px solid var(--story-ink); background: white; }
    .builder-canvas {
      align-self: center;
      min-height: 350px;
      margin: 26px;
      padding: 34px 30px;
      border: 1px solid #bcb6ad;
      background: white;
      box-shadow: 0 8px 30px rgba(0,0,0,.08);
    }
    .builder-canvas small,
    .builder-panel small { color: var(--story-accent); font: 600 .62rem/1.2 "IBM Plex Mono", monospace; letter-spacing: .08em; }
    .builder-line { width: 68%; height: 9px; margin-top: 18px; background: #ded9d1; }
    .builder-line.wide { width: 92%; height: 16px; background: var(--story-ink); }
    .builder-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 34px 0; }
    .builder-columns i { display: block; height: 100px; background: color-mix(in srgb, var(--story-accent) 12%, white); border: 1px solid color-mix(in srgb, var(--story-accent) 35%, white); }
    .builder-canvas button { padding: 10px 16px; background: var(--story-accent); color: #fff; font: 600 .6rem/1 "IBM Plex Mono", monospace; }
    .builder-panel { padding: 18px 12px; border-left: 1px solid var(--story-ink); background: #f4f0e9; }
    .builder-panel label { display: block; margin: 22px 0 6px; color: var(--muted); font: 600 .55rem/1 "IBM Plex Mono", monospace; }
    .builder-panel i { display: block; height: 36px; border: 1px solid #bbb4aa; background: white; }
    .library-shell { display: grid; grid-template-columns: 150px 1fr; min-height: 468px; }
    .library-nav { display: flex; flex-direction: column; gap: 8px; padding: 24px 16px; border-right: 2px solid var(--story-ink); background: var(--story-ink); color: white; }
    .library-nav b { margin-bottom: 18px; color: color-mix(in srgb, var(--story-accent) 60%, white); font: 600 .7rem/1.2 "IBM Plex Mono", monospace; }
    .library-nav span { padding: 10px; border: 1px solid rgba(255,255,255,.12); font-size: .72rem; }
    .library-list { display: grid; gap: 14px; align-content: center; padding: 34px; background: #f7f2e9; }
    .library-list article { padding: 22px; border: 1px solid var(--story-ink); background: white; box-shadow: 5px 5px 0 color-mix(in srgb, var(--story-accent) 35%, transparent); }
    .library-list small { color: var(--story-accent); font: 600 .6rem/1 "IBM Plex Mono", monospace; }
    .library-list strong { display: block; margin: 8px 0 3px; font-size: 1rem; }
    .library-list p { color: var(--muted); font-size: .75rem; }
    .ops-shell { min-height: 468px; padding: 28px; background: #f4eee7; }
    .ops-route { display: flex; justify-content: space-between; padding: 16px; border: 2px solid var(--story-ink); background: var(--story-accent); color: white; font: 600 .72rem/1 "IBM Plex Mono", monospace; }
    .ops-flow { display: grid; gap: 14px; margin-top: 20px; }
    .ops-flow article { display: grid; grid-template-columns: 32px 110px 1fr; gap: 14px; align-items: center; padding: 18px; border: 1px solid var(--story-ink); background: white; }
    .ops-flow small { color: var(--story-accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .ops-flow strong { font: 600 .72rem/1 "IBM Plex Mono", monospace; }
    .ops-meter { height: 10px; background: #e1ddd6; }
    .ops-meter i { display: block; height: 100%; background: var(--story-accent); }
    .ops-foot { display: flex; justify-content: space-between; margin-top: 24px; padding-top: 14px; border-top: 1px solid var(--story-ink); font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .finance-shell { min-height: 468px; padding: 38px; background: #f4eee6; }
    .finance-source { padding: 24px; border: 2px solid var(--story-ink); background: white; box-shadow: 7px 7px 0 var(--story-accent); }
    .finance-source small, .finance-source span { display: block; color: var(--muted); font: 600 .62rem/1.2 "IBM Plex Mono", monospace; }
    .finance-source strong { display: block; margin: 12px 0; font-family: var(--ff-head); font-size: 1.8rem; }
    .finance-arrow { padding: 12px; color: var(--story-accent); text-align: center; font-size: 1.8rem; }
    .finance-queue { display: grid; gap: 12px; }
    .finance-queue article { display: grid; grid-template-columns: 12px 1fr auto; gap: 14px; align-items: center; padding: 18px; border: 1px solid var(--story-ink); background: white; }
    .finance-queue article > i { width: 10px; height: 10px; border-radius: 50%; background: #71a849; }
    .finance-queue article.muted > i { background: #e7a63d; }
    .finance-queue small { display: block; color: var(--muted); font: 600 .55rem/1.2 "IBM Plex Mono", monospace; }
    .finance-queue strong { font-size: .84rem; }
    .finance-queue b { padding: 7px 9px; background: var(--story-ink); color: white; font: 600 .55rem/1 "IBM Plex Mono", monospace; }
    .pipeline-shell { display: grid; align-content: center; min-height: 468px; padding: 28px; background: #f5eee9; }
    .pipeline-shell article { display: grid; grid-template-columns: 40px 1fr 18px; gap: 14px; align-items: center; padding: 14px 16px; border: 1px solid var(--story-ink); border-bottom: 0; background: white; }
    .pipeline-shell article:last-child { border-bottom: 1px solid var(--story-ink); }
    .pipeline-shell article > span { color: var(--story-accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .pipeline-shell small { display: block; color: var(--muted); font: 600 .54rem/1 "IBM Plex Mono", monospace; }
    .pipeline-shell strong { display: block; margin-top: 5px; font-size: .84rem; }
    .pipeline-shell i { color: var(--story-accent); font-style: normal; }
    .governance-shell { display: grid; align-content: center; min-height: 468px; padding: 38px; background: #f3eee8; }
    .governance-parent { width: 68%; margin: 0 auto; padding: 24px; border: 2px solid var(--story-ink); background: var(--story-accent); color: white; text-align: center; }
    .governance-parent small { display: block; font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .governance-parent strong { display: block; margin-top: 9px; font-size: 1.05rem; }
    .governance-lines { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); width: 80%; height: 72px; margin: 0 auto; border-top: 2px solid var(--story-ink); transform: translateY(40px); }
    .governance-lines::before { position: absolute; top: -42px; left: 50%; width: 2px; height: 42px; background: var(--story-ink); content: ""; }
    .governance-lines i { justify-self: center; width: 2px; height: 32px; background: var(--story-ink); }
    .governance-children { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
    .governance-children article { padding: 24px 10px; border: 1px solid var(--story-ink); background: white; text-align: center; }
    .governance-children b { display: block; color: var(--story-accent); font: 600 .8rem/1 "IBM Plex Mono", monospace; }
    .governance-children span { display: block; margin-top: 10px; font: 600 .55rem/1.2 "IBM Plex Mono", monospace; }
    .message-shell { display: grid; grid-template-columns: 92px 1fr 110px; min-height: 468px; background: #f4eee7; }
    .message-shell aside, .message-data { display: flex; flex-direction: column; gap: 12px; padding: 20px 12px; background: var(--story-ink); color: white; }
    .message-shell aside b, .message-data b { margin-bottom: 12px; color: var(--accent); font: 600 .62rem/1 "IBM Plex Mono", monospace; }
    .message-shell aside span, .message-data span { padding: 9px 7px; border: 1px solid rgba(255,255,255,.18); font: 500 .5rem/1 "IBM Plex Mono", monospace; }
    .message-canvas { align-self: center; min-height: 350px; margin: 26px; padding: 42px 34px; border: 1px solid var(--story-ink); background: white; text-align: center; box-shadow: 6px 6px 0 var(--accent); }
    .message-canvas small { color: var(--accent); font: 600 .56rem/1 "IBM Plex Mono", monospace; }
    .message-canvas strong { display: block; margin: 34px 0 20px; font-family: var(--ff-head); font-size: 1.75rem; font-weight: 400; }
    .message-canvas i { display: block; width: 80%; height: 90px; margin: 0 auto 22px; background: #f4eee7; }
    .message-canvas p { color: var(--muted); font-size: .7rem; }
    .message-canvas button { margin-top: 25px; padding: 10px 16px; background: var(--accent); color: white; font: 600 .56rem/1 "IBM Plex Mono", monospace; }
    .asset-shell { min-height: 468px; padding: 28px; background: #f4eee7; }
    .asset-head { display: flex; justify-content: space-between; padding: 18px; border: 2px solid var(--story-ink); background: var(--story-ink); color: white; font: 600 .7rem/1 "IBM Plex Mono", monospace; }
    .asset-head b { color: var(--accent); }
    .asset-gauges { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 18px 0; }
    .asset-gauges article { padding: 20px; border: 1px solid var(--story-ink); background: white; }
    .asset-gauges small { color: var(--muted); font: 600 .54rem/1 "IBM Plex Mono", monospace; }
    .asset-gauges strong { display: block; margin: 12px 0; font-family: var(--ff-head); font-size: 1.8rem; font-weight: 400; }
    .asset-gauges i { display: block; height: 8px; background: #ddd5cb; }
    .asset-gauges i b { display: block; height: 100%; background: var(--accent); }
    .asset-orders { display: grid; grid-template-columns: 90px 1fr auto; gap: 14px; padding: 18px; border: 1px solid var(--story-ink); border-bottom: 0; background: white; }
    .asset-orders:last-child { border-bottom: 1px solid var(--story-ink); }
    .asset-orders span { color: var(--accent); font: 600 .58rem/1.4 "IBM Plex Mono", monospace; }
    .asset-orders strong { font-size: .84rem; }
    .asset-orders small { color: var(--muted); font-size: .68rem; }
    .signal-shell { min-height: 468px; padding: 28px; background: #1b1714; color: white; }
    .signal-now { padding: 30px; border: 1px solid rgba(255,255,255,.3); background: var(--accent); }
    .signal-now small, .signal-now span { display: block; font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .signal-now strong { display: block; margin: 18px 0; font-family: var(--ff-head); font-size: 4rem; font-weight: 400; }
    .signal-context { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 18px; border: 1px solid rgba(255,255,255,.28); }
    .signal-context article { padding: 20px 14px; border-right: 1px solid rgba(255,255,255,.22); }
    .signal-context article:last-child { border-right: 0; }
    .signal-context b { color: var(--accent); font: 600 .62rem/1 "IBM Plex Mono", monospace; }
    .signal-context span, .signal-context strong { display: block; }
    .signal-context span { margin: 26px 0 8px; color: rgba(255,255,255,.55); font: 600 .5rem/1 "IBM Plex Mono", monospace; }
    .signal-context strong { font-size: .72rem; }
    .signal-shell > p { margin-top: 24px; color: rgba(255,255,255,.55); text-align: center; font: 600 .56rem/1 "IBM Plex Mono", monospace; }

    .story-thesis { background: var(--story-ink); color: white; }
    .story-thesis__grid { display: grid; grid-template-columns: 150px 1.25fr .8fr; gap: 50px; align-items: start; }
    .story-thesis h2 { font-family: var(--ff-head); font-size: clamp(2.4rem, 4.7vw, 5rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .story-thesis p { color: rgba(255,255,255,.65); font-size: 1.08rem; line-height: 1.75; }
    .story-section-head { display: grid; grid-template-columns: 180px 1fr .65fr; gap: 40px; align-items: end; margin-bottom: 52px; }
    .story-section-head h2 { font-family: var(--ff-head); font-size: clamp(2.4rem, 4.4vw, 4.6rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .story-section-head p { color: var(--muted); line-height: 1.7; }
    .story-sequence { background: #fffdf9; }
    .story-step-list { display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--story-ink); }
    .story-step-list li { position: relative; min-height: 300px; padding: 24px 20px; border-right: 1px solid var(--story-ink); }
    .story-step-list li:last-child { border-right: 0; }
    .story-step-list li > span { color: var(--story-accent); font: 600 .62rem/1.2 "IBM Plex Mono", monospace; }
    .story-step-list h3 { margin: 46px 0 14px; font-family: var(--ff-head); font-size: 1.45rem; font-weight: 400; line-height: 1.1; }
    .story-step-list p { color: var(--muted); font-size: .86rem; line-height: 1.65; }
    .story-step-list li::after { position: absolute; right: -12px; top: 55px; z-index: 2; display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid var(--story-ink); border-radius: 50%; background: var(--story-accent); color: white; content: "→"; font-size: .7rem; }
    .story-step-list li:last-child::after { display: none; }
    .story-details { background: var(--story-paper); }
    .story-detail-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .story-detail-card { min-height: 440px; padding: 34px; border: 1px solid var(--story-ink); background: #fff; box-shadow: 7px 7px 0 color-mix(in srgb, var(--story-accent) 28%, transparent); }
    .story-detail-card > i { color: var(--story-accent); font-size: 1.7rem; }
    .story-detail-card h3 { margin: 60px 0 12px; font-family: var(--ff-head); font-size: 1.8rem; font-weight: 400; line-height: 1.1; }
    .story-detail-card p { min-height: 75px; color: var(--muted); line-height: 1.65; }
    .story-detail-card ul { display: grid; gap: 11px; margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--border); }
    .story-detail-card li { display: flex; gap: 9px; color: var(--text-2); font-size: .84rem; }
    .story-detail-card li span { color: var(--story-accent); font-weight: 700; }
    .story-proof { background: color-mix(in srgb, var(--story-accent) 11%, #fffdf9); }
    .story-proof__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 80px; align-items: start; }
    .story-proof__statement h2 { margin: 20px 0 24px; font-family: var(--ff-head); font-size: clamp(2.5rem, 4.6vw, 4.8rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .story-proof__statement p { max-width: 650px; color: var(--muted); line-height: 1.7; }
    .story-outcomes { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--story-ink); }
    .story-outcomes article { min-height: 150px; padding: 24px; border-right: 1px solid var(--story-ink); border-bottom: 1px solid var(--story-ink); background: #fff; }
    .story-outcomes article:nth-child(2n) { border-right: 0; }
    .story-outcomes article:nth-last-child(-n+2) { border-bottom: 0; }
    .story-outcomes span { color: var(--story-accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .story-outcomes strong { display: block; margin-top: 32px; font-size: .95rem; line-height: 1.35; }
    .story-connected { background: #fffdf9; }
    .story-link-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--story-ink); }
    .story-link-grid a { display: flex; min-height: 130px; justify-content: space-between; align-items: flex-end; gap: 20px; padding: 24px; border-right: 1px solid var(--story-ink); background: #fff; transition: background .18s, color .18s; }
    .story-link-grid a:last-child { border-right: 0; }
    .story-link-grid a:hover { background: var(--story-accent); color: white; }
    .story-link-grid span { font-family: var(--ff-head); font-size: 1.3rem; line-height: 1.1; }
    .story-link-grid i { font-size: .8rem; }
    .story-dedicated { background: var(--story-ink); color: white; }
    .story-dedicated__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: end; }
    .story-dedicated h2 { margin-top: 20px; font-family: var(--ff-head); font-size: clamp(2.2rem, 4vw, 4rem); font-weight: 400; letter-spacing: -.03em; line-height: 1; }
    .story-dedicated__facts { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid rgba(255,255,255,.28); }
    .story-dedicated__facts span { min-height: 90px; padding: 24px; border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.75); font: 600 .7rem/1.3 "IBM Plex Mono", monospace; text-transform: uppercase; }
    .story-dedicated__facts span:nth-child(2n) { border-right: 0; }
    .story-dedicated__facts span:nth-last-child(-n+2) { border-bottom: 0; }

    @media (min-width: 1051px) {
      /* Library stories read like a reference system instead of a product tour. */
      .story-page--library .story-hero__grid { grid-template-columns: minmax(460px, 1.05fr) minmax(0, .95fr); }
      .story-page--library .story-hero__copy { order: 2; }
      .story-page--library .story-visual { order: 1; transform: rotate(-1deg); }
      .story-page--library .story-thesis__grid { grid-template-columns: 1fr 1.2fr; }
      .story-page--library .story-thesis__grid .story-index { grid-column: 1 / -1; }
      .story-page--library .story-detail-grid { grid-template-columns: 1fr; gap: 14px; }
      .story-page--library .story-detail-card {
        display: grid;
        grid-template-columns: 64px minmax(240px, .75fr) 1fr;
        gap: 32px;
        align-items: start;
        min-height: 0;
        box-shadow: 7px 7px 0 color-mix(in srgb, var(--story-accent) 28%, transparent);
      }
      .story-page--library .story-detail-card h3 { margin: 0; }
      .story-page--library .story-detail-card p { min-height: 0; }
      .story-page--library .story-detail-card ul { margin-top: 0; padding-top: 0; border-top: 0; }

      .story-page--communication .story-hero__grid { grid-template-columns: minmax(460px, 1fr) minmax(0, 1fr); }
      .story-page--communication .story-hero__copy { order: 2; }
      .story-page--communication .story-visual { order: 1; transform: rotate(-1deg); }
      .story-page--communication .story-step-list { grid-template-columns: repeat(6, 1fr); border: 0; gap: 12px; }
      .story-page--communication .story-step-list li { grid-column: span 2; border: 1px solid var(--story-ink); }
      .story-page--communication .story-step-list li:nth-child(4), .story-page--communication .story-step-list li:nth-child(5) { grid-column: span 3; min-height: 240px; }
      .story-page--communication .story-step-list li::after { display: none; }

      /* Operational systems are presented as a live sequence of accountable stages. */
      .story-page--operations .story-step-list { grid-template-columns: 1fr; border: 0; gap: 10px; }
      .story-page--operations .story-step-list li {
        display: grid;
        grid-template-columns: 90px minmax(220px, .65fr) 1fr;
        gap: 28px;
        align-items: center;
        min-height: 0;
        padding: 24px 28px;
        border: 1px solid var(--story-ink);
        background: #fff;
      }
      .story-page--operations .story-step-list h3 { margin: 0; }
      .story-page--operations .story-step-list li::after { display: none; }
      .story-page--operations .story-detail-grid { grid-template-columns: 1.15fr .85fr; }
      .story-page--operations .story-detail-card:first-child { grid-row: span 2; min-height: 720px; }
      .story-page--operations .story-detail-card:not(:first-child) { min-height: 350px; }
      .story-page--operations .story-detail-card:not(:first-child) h3 { margin-top: 34px; }
      .story-page--operations .story-detail-card:not(:first-child) p { min-height: 0; }

      .story-page--asset .story-detail-grid { grid-template-columns: 1.15fr .85fr; }
      .story-page--asset .story-detail-card:first-child { grid-row: span 2; min-height: 700px; background: #eee3d4; }
      .story-page--asset .story-detail-card:not(:first-child) { min-height: 340px; }
      .story-page--asset .story-detail-card:not(:first-child) h3 { margin-top: 32px; }
      .story-page--asset .story-detail-card:not(:first-child) p { min-height: 0; }

      /* Finance pages use a review-board rhythm and a darker proof section. */
      .story-page--finance .story-step-list { grid-template-columns: repeat(6, 1fr); border: 0; gap: 12px; }
      .story-page--finance .story-step-list li { grid-column: span 2; border: 1px solid var(--story-ink); background: #fff; }
      .story-page--finance .story-step-list li:nth-child(4),
      .story-page--finance .story-step-list li:nth-child(5) { grid-column: span 3; min-height: 245px; }
      .story-page--finance .story-step-list li::after { display: none; }
      .story-page--finance .story-detail-card { border-radius: 18px; box-shadow: none; border-top: 8px solid var(--story-accent); }
      .story-page--finance .story-proof { background: #241d1a; color: white; }
      .story-page--finance .story-proof__statement p { color: rgba(255,255,255,.62); }
      .story-page--finance .story-outcomes { border-color: rgba(255,255,255,.34); }

      /* Recruiting is a pipeline, so its core stages and records stack vertically. */
      .story-page--pipeline .story-hero { background: color-mix(in srgb, var(--story-accent) 6%, #fffdf9); }
      .story-page--pipeline .story-step-list { grid-template-columns: 1fr; border: 0; gap: 0; }
      .story-page--pipeline .story-step-list li {
        display: grid;
        grid-template-columns: 80px 1fr 1.25fr;
        gap: 28px;
        align-items: center;
        min-height: 0;
        border: 1px solid var(--story-ink);
        border-bottom: 0;
      }
      .story-page--pipeline .story-step-list li:last-child { border-bottom: 1px solid var(--story-ink); }
      .story-page--pipeline .story-step-list h3 { margin: 0; }
      .story-page--pipeline .story-step-list li::after { display: none; }
      .story-page--pipeline .story-detail-grid { grid-template-columns: 1fr 1fr; align-items: start; }
      .story-page--pipeline .story-detail-card:first-child { grid-column: 1 / -1; min-height: 320px; }
      .story-page--pipeline .story-detail-card:not(:first-child) { min-height: 410px; }

      .story-page--signal .story-proof { background: #1b1714; color: white; }
      .story-page--signal .story-proof__statement p { color: rgba(255,255,255,.6); }
      .story-page--signal .story-detail-grid { grid-template-columns: 1fr; }
      .story-page--signal .story-detail-card { display: grid; grid-template-columns: 64px .8fr 1fr; gap: 32px; min-height: 0; }
      .story-page--signal .story-detail-card h3 { margin: 0; }
      .story-page--signal .story-detail-card p { min-height: 0; }
      .story-page--signal .story-detail-card ul { margin: 0; padding: 0; border: 0; }

      /* Governance pages give the hierarchy room to become the main visual. */
      .story-page--governance .story-hero__grid { grid-template-columns: minmax(0, .8fr) minmax(560px, 1.2fr); }
      .story-page--governance .story-thesis__grid { grid-template-columns: 1fr 1fr; }
      .story-page--governance .story-thesis__grid .story-index { grid-column: 1 / -1; }
      .story-page--governance .story-detail-grid { grid-template-columns: 1fr; }
      .story-page--governance .story-detail-card {
        display: grid;
        grid-template-columns: 64px 1fr 1fr;
        gap: 34px;
        min-height: 0;
        align-items: start;
      }
      .story-page--governance .story-detail-card h3 { margin: 0; }
      .story-page--governance .story-detail-card p { min-height: 0; }
      .story-page--governance .story-detail-card ul { margin-top: 0; padding-top: 0; border-top: 0; }
    }

    @media (max-width: 1050px) {
      .story-hero__grid { grid-template-columns: 1fr; }
      .story-visual { width: min(720px, calc(100% - 14px)); }
      .story-thesis__grid { grid-template-columns: 130px 1fr; }
      .story-thesis__grid p { grid-column: 2; }
      .story-section-head { grid-template-columns: 140px 1fr; }
      .story-section-head p { grid-column: 2; }
      .story-step-list { grid-template-columns: 1fr 1fr; }
      .story-step-list li { min-height: 240px; border-bottom: 1px solid var(--story-ink); }
      .story-step-list li:nth-child(2n) { border-right: 0; }
      .story-step-list li:last-child { border-bottom: 0; }
      .story-step-list li::after { display: none; }
      .story-detail-grid { grid-template-columns: 1fr 1fr; }
      .story-detail-card:last-child { grid-column: 1 / -1; min-height: 360px; }
      .story-proof__grid { grid-template-columns: 1fr; gap: 50px; }
    }
    @media (max-width: 760px) {
      .story-hero { padding: 110px 0 60px; }
      .story-hero h1 { font-size: clamp(2.45rem, 10.8vw, 3.6rem); }
      .story-visual { min-height: 410px; border-radius: 12px; box-shadow: 8px 9px 0 var(--story-ink); }
      .builder-shell { grid-template-columns: 42px 1fr; min-height: 360px; }
      .builder-panel { display: none; }
      .builder-canvas { min-height: 286px; margin: 18px; padding: 24px 18px; }
      .builder-columns i { height: 76px; }
      .library-shell { grid-template-columns: 95px 1fr; min-height: 360px; }
      .library-list { padding: 18px; }
      .library-list article { padding: 15px; }
      .ops-shell, .finance-shell, .pipeline-shell, .governance-shell, .asset-shell, .signal-shell { min-height: 360px; padding: 18px; }
      .message-shell { grid-template-columns: 64px 1fr; min-height: 360px; }
      .message-data { display: none; }
      .message-canvas { min-height: 290px; margin: 16px; padding: 28px 18px; }
      .message-canvas i { height: 64px; }
      .asset-orders { grid-template-columns: 72px 1fr; }
      .asset-orders small { grid-column: 2; }
      .signal-now strong { font-size: 3rem; }
      .ops-flow article { grid-template-columns: 28px 80px 1fr; padding: 14px; }
      .governance-parent { width: 84%; }
      .governance-children span { font-size: .48rem; }
      .story-thesis__grid, .story-section-head, .story-dedicated__grid { grid-template-columns: 1fr; gap: 26px; }
      .story-thesis__grid p, .story-section-head p { grid-column: auto; }
      .story-step-list, .story-detail-grid, .story-link-grid { grid-template-columns: 1fr; }
      .story-step-list li { min-height: 0; border-right: 0; }
      .story-detail-card, .story-detail-card:last-child { min-height: 0; grid-column: auto; }
      .story-detail-card h3 { margin-top: 36px; }
      .story-detail-card p { min-height: 0; }
      .story-link-grid a { min-height: 94px; border-right: 0; border-bottom: 1px solid var(--story-ink); }
      .story-link-grid a:last-child { border-bottom: 0; }
      .story-outcomes { grid-template-columns: 1fr; }
      .story-outcomes article { min-height: 110px; border-right: 0; border-bottom: 1px solid var(--story-ink); }
      .story-outcomes article:nth-last-child(-n+2) { border-bottom: 1px solid var(--story-ink); }
      .story-outcomes article:last-child { border-bottom: 0; }
      .story-outcomes strong { margin-top: 18px; }
    }

    /* Industry operating stories */
    .trade-story {
      --trade-accent: var(--accent);
      --trade-ink: #18201b;
      --trade-paper: #f6f3ec;
      background: var(--trade-paper);
    }
    .trade-story .wave-bg { display: none; }
    .trade-hero { padding: 132px 0 80px; border-bottom: 1px solid rgba(26,20,16,.18); background: #fffdf9; overflow: hidden; }
    .trade-hero__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(420px, .85fr); gap: clamp(50px, 7vw, 100px); align-items: center; }
    .trade-kicker,
    .trade-index { color: var(--trade-accent); font: 600 .7rem/1.35 "IBM Plex Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
    .trade-kicker { display: inline-flex; align-items: center; gap: 9px; padding: 8px 12px; border: 1px solid color-mix(in srgb, var(--trade-accent) 40%, transparent); border-radius: 100px; background: color-mix(in srgb, var(--trade-accent) 8%, white); }
    .trade-hero h1 { max-width: 760px; margin: 24px 0; font-family: var(--ff-head); font-size: clamp(3rem, 5.1vw, 5rem); font-weight: 400; letter-spacing: -.05em; line-height: .98; }
    .trade-hero__copy > p { max-width: 730px; color: var(--text-2); font-size: clamp(1.05rem, 1.5vw, 1.25rem); line-height: 1.68; }
    .trade-hero__actions { margin-top: 30px; }
    .trade-hero__facts { display: flex; flex-wrap: wrap; gap: 0; margin-top: 30px; }
    .trade-hero__facts span { padding: 7px 11px; border: 1px solid var(--border); border-right: 0; background: white; color: var(--muted); font: 600 .62rem/1.2 "IBM Plex Mono", monospace; text-transform: uppercase; }
    .trade-hero__facts span:last-child { border-right: 1px solid var(--border); }
    .trade-model-visual { min-height: 500px; border: 2px solid var(--trade-ink); border-radius: 18px; background: white; box-shadow: 11px 12px 0 var(--trade-ink); overflow: hidden; transform: rotate(.7deg); }
    .trade-model-visual__head { display: flex; justify-content: space-between; gap: 15px; padding: 13px 16px; border-bottom: 2px solid var(--trade-ink); background: color-mix(in srgb, var(--trade-accent) 15%, white); font: 600 .6rem/1.2 "IBM Plex Mono", monospace; letter-spacing: .05em; }
    .trade-model-visual__head b { color: var(--trade-accent); }
    .route-week { min-height: 446px; padding: 26px; background: #edf1e9; }
    .route-week__days { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; margin-bottom: 24px; }
    .route-week__days b { padding: 10px 5px; border: 1px solid var(--trade-ink); background: white; text-align: center; font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .route-week__lines { display: grid; gap: 13px; }
    .route-week__lines article { display: grid; grid-template-columns: 32px 1fr 55px; gap: 10px; align-items: center; padding: 14px; border: 1px solid var(--trade-ink); background: white; }
    .route-week__lines span, .route-week__lines small { font: 600 .56rem/1 "IBM Plex Mono", monospace; }
    .route-week__lines i { display: block; height: 9px; background: var(--trade-accent); }
    .route-week__footer { display: flex; justify-content: space-between; gap: 8px; margin-top: 24px; padding-top: 15px; border-top: 1px solid var(--trade-ink); color: var(--trade-accent); font: 600 .52rem/1 "IBM Plex Mono", monospace; }
    .weather-board { min-height: 446px; padding: 26px; background: #e7eef2; }
    .weather-board__event { padding: 25px; border: 2px solid var(--trade-ink); background: var(--trade-accent); color: white; }
    .weather-board__event small, .weather-board__event span { display: block; font: 600 .58rem/1.2 "IBM Plex Mono", monospace; }
    .weather-board__event strong { display: block; margin: 12px 0; font-family: var(--ff-head); font-size: 1.8rem; }
    .weather-board__metrics { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--trade-ink); border-top: 0; }
    .weather-board__metrics article { padding: 18px 8px; border-right: 1px solid var(--trade-ink); background: white; text-align: center; }
    .weather-board__metrics article:last-child { border-right: 0; }
    .weather-board__metrics b { display: block; font-family: var(--ff-head); font-size: 1.8rem; }
    .weather-board__metrics span { font: 600 .52rem/1 "IBM Plex Mono", monospace; }
    .weather-board__list { display: grid; gap: 8px; margin-top: 18px; }
    .weather-board__list span { padding: 11px 13px; border: 1px solid var(--trade-ink); background: white; font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .dispatch-board { min-height: 446px; padding: 26px; background: #f3ebe7; }
    .dispatch-call { display: flex; align-items: center; gap: 16px; padding: 20px; border: 2px solid var(--trade-ink); background: var(--trade-accent); color: white; }
    .dispatch-call > i { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: white; color: var(--trade-accent); }
    .dispatch-call small { display: block; font: 600 .55rem/1 "IBM Plex Mono", monospace; }
    .dispatch-call strong { display: block; margin-top: 6px; font-size: .82rem; }
    .dispatch-path { display: grid; margin-top: 18px; border: 1px solid var(--trade-ink); }
    .dispatch-path article { display: grid; grid-template-columns: 34px 1fr 12px; gap: 12px; align-items: center; padding: 14px; border-bottom: 1px solid var(--trade-ink); background: white; }
    .dispatch-path article:last-child { border-bottom: 0; }
    .dispatch-path span, .dispatch-path b { font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .dispatch-path span { color: var(--trade-accent); }
    .dispatch-path i { width: 9px; height: 9px; border-radius: 50%; background: #73a34f; }
    .dispatch-foot { display: flex; justify-content: space-between; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--trade-ink); font: 600 .52rem/1 "IBM Plex Mono", monospace; }
    .project-board { min-height: 446px; padding: 26px; background: #eee8df; }
    .project-sheet { padding: 28px; border: 1px solid var(--trade-ink); background: white; box-shadow: 7px 7px 0 var(--trade-accent); }
    .project-sheet small { color: var(--trade-accent); font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .project-sheet > strong { display: block; margin: 12px 0 24px; font-family: var(--ff-head); font-size: 1.6rem; }
    .project-lines { display: grid; gap: 8px; margin-bottom: 24px; }
    .project-lines i { display: block; height: 8px; background: #dfdad2; }
    .project-lines i:nth-child(2) { width: 78%; }
    .project-lines i:nth-child(3) { width: 63%; }
    .project-costs { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding-top: 18px; border-top: 1px solid var(--trade-ink); }
    .project-costs span { font: 600 .58rem/1.2 "IBM Plex Mono", monospace; }
    .project-costs b { text-align: right; font-size: .78rem; }
    .project-status { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 22px; border: 1px solid var(--trade-ink); }
    .project-status span { padding: 13px 5px; border-right: 1px solid var(--trade-ink); background: white; text-align: center; font: 600 .5rem/1 "IBM Plex Mono", monospace; }
    .project-status span:last-child { border-right: 0; background: var(--trade-accent); color: white; }
    .status-board { display: grid; grid-template-columns: .9fr 1.1fr; min-height: 446px; background: #efe9f1; }
    .status-board__map { position: relative; min-height: 446px; border-right: 1px solid var(--trade-ink); overflow: hidden; background: repeating-linear-gradient(35deg, #e8e1ea 0 16px, #f7f3f8 16px 32px); }
    .status-board__map::before { position: absolute; inset: 28% -20%; border-top: 4px solid var(--trade-accent); border-radius: 50%; content: ""; transform: rotate(-24deg); }
    .status-board__map i { position: absolute; width: 18px; height: 18px; border: 3px solid var(--trade-ink); border-radius: 50%; background: var(--trade-accent); }
    .status-board__map i:nth-child(1) { left: 22%; top: 25%; }
    .status-board__map i:nth-child(2) { left: 58%; top: 48%; }
    .status-board__map i:nth-child(3) { left: 36%; top: 72%; }
    .status-board__map span { position: absolute; left: 15px; right: 15px; bottom: 18px; padding: 10px; background: var(--trade-ink); color: white; text-align: center; font: 600 .54rem/1 "IBM Plex Mono", monospace; }
    .status-board__rows { display: grid; align-content: center; gap: 10px; padding: 22px; }
    .status-board__rows article { display: grid; grid-template-columns: 30px 1fr 12px; gap: 10px; align-items: center; padding: 14px; border: 1px solid var(--trade-ink); background: white; }
    .status-board__rows b, .status-board__rows span { font: 600 .55rem/1.2 "IBM Plex Mono", monospace; }
    .status-board__rows b { color: var(--trade-accent); }
    .status-board__rows i { width: 9px; height: 9px; border: 1px solid var(--trade-ink); border-radius: 50%; }
    .status-board__rows i.done { background: #75a850; }
    .account-board { min-height: 446px; padding: 26px; background: #e8f0ef; }
    .account-board__customer { padding: 26px; border: 2px solid var(--trade-ink); background: var(--trade-accent); color: white; }
    .account-board__customer small { display: block; font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .account-board__customer strong { display: block; margin-top: 11px; font-family: var(--ff-head); font-size: 1.5rem; }
    .account-board__tabs { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--trade-ink); border-top: 0; }
    .account-board__tabs span { padding: 12px 5px; border-right: 1px solid var(--trade-ink); background: white; text-align: center; font: 600 .48rem/1 "IBM Plex Mono", monospace; }
    .account-board__tabs span:last-child { border-right: 0; }
    .account-board__records { display: grid; gap: 11px; margin-top: 20px; }
    .account-board__records article { display: grid; grid-template-columns: 82px 1fr; gap: 14px; padding: 15px; border: 1px solid var(--trade-ink); background: white; }
    .account-board__records b, .account-board__records span { font: 600 .58rem/1.2 "IBM Plex Mono", monospace; }
    .account-board__records b { color: var(--trade-accent); }
    .trade-rhythm { background: var(--trade-ink); color: white; }
    .trade-rhythm__grid { display: grid; grid-template-columns: 150px 1.25fr .75fr; gap: 50px; align-items: start; }
    .trade-rhythm h2 { font-family: var(--ff-head); font-size: clamp(2.3rem, 4.4vw, 4.7rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .trade-rhythm p { color: rgba(255,255,255,.65); line-height: 1.75; }
    .trade-spine { background: #fffdf9; }
    .trade-section-head { display: grid; grid-template-columns: 190px 1fr; gap: 44px; align-items: end; margin-bottom: 50px; }
    .trade-section-head h2 { max-width: 780px; font-family: var(--ff-head); font-size: clamp(2.4rem, 4.4vw, 4.7rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .trade-stage-list { display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--trade-ink); }
    .trade-stage-list li { min-height: 290px; padding: 24px 20px; border-right: 1px solid var(--trade-ink); background: white; }
    .trade-stage-list li:last-child { border-right: 0; }
    .trade-stage-list li > span { color: var(--trade-accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .trade-stage-list h3 { margin: 50px 0 14px; font-family: var(--ff-head); font-size: 1.35rem; font-weight: 400; }
    .trade-stage-list p { color: var(--muted); font-size: .84rem; line-height: 1.65; }
    .trade-story--emergency .trade-stage-list { border: 0; gap: 12px; }
    .trade-story--emergency .trade-stage-list li { min-height: 255px; border: 1px solid var(--trade-ink); border-top: 7px solid var(--trade-accent); }
    .trade-story--project .trade-stage-list li:nth-child(2),
    .trade-story--project .trade-stage-list li:nth-child(4) { background: color-mix(in srgb, var(--trade-accent) 9%, white); }
    .trade-story--rapid .trade-stage-list { grid-template-columns: 1fr; border: 0; counter-reset: status; }
    .trade-story--rapid .trade-stage-list li { display: grid; grid-template-columns: 60px 160px 1fr; gap: 20px; align-items: center; min-height: 0; padding: 22px; border: 1px solid var(--trade-ink); border-bottom: 0; }
    .trade-story--rapid .trade-stage-list li:last-child { border-bottom: 1px solid var(--trade-ink); }
    .trade-story--rapid .trade-stage-list h3 { margin: 0; }
    .trade-story--weather .trade-spine { background: #f2ece5; }
    .trade-story--weather .trade-stage-list li { background: #fffdf9; }
    .trade-story--contract .trade-stage-list { border-radius: 18px; overflow: hidden; }
    .trade-chapters { background: var(--trade-paper); }
    .trade-chapter-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .trade-chapter-card { min-height: 460px; padding: 34px; border: 1px solid var(--trade-ink); background: white; box-shadow: 7px 7px 0 color-mix(in srgb, var(--trade-accent) 28%, transparent); }
    .trade-chapter-card__num { color: var(--trade-accent); font: 600 .68rem/1 "IBM Plex Mono", monospace; }
    .trade-chapter-card h3 { margin: 70px 0 14px; font-family: var(--ff-head); font-size: 1.9rem; font-weight: 400; line-height: 1.06; }
    .trade-chapter-card p { min-height: 104px; color: var(--muted); font-size: .9rem; line-height: 1.7; }
    .trade-chapter-card ul { display: grid; gap: 10px; margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--border); }
    .trade-chapter-card li { display: flex; gap: 9px; color: var(--text-2); font-size: .82rem; }
    .trade-chapter-card li i { color: var(--trade-accent); font-style: normal; font-weight: 700; }
    .trade-story--project .trade-chapter-grid { grid-template-columns: 1.25fr .75fr; }
    .trade-story--project .trade-chapter-card:first-child { grid-row: span 2; min-height: 690px; }
    .trade-story--project .trade-chapter-card:not(:first-child) { min-height: 335px; }
    .trade-story--project .trade-chapter-card:not(:first-child) h3 { margin-top: 36px; }
    .trade-story--project .trade-chapter-card:not(:first-child) p { min-height: 0; }
    .trade-story--weather .trade-chapter-card { border-radius: 18px; box-shadow: none; border-top: 8px solid var(--trade-accent); }
    .trade-story--contract .trade-chapter-grid { grid-template-columns: 1fr; }
    .trade-story--contract .trade-chapter-card { display: grid; grid-template-columns: 70px 1fr 1fr; gap: 30px; min-height: 0; align-items: start; }
    .trade-story--contract .trade-chapter-card h3 { margin: 0; }
    .trade-story--contract .trade-chapter-card p { min-height: 0; }
    .trade-story--contract .trade-chapter-card ul { margin-top: 0; padding-top: 0; border-top: 0; }
    .trade-challenge { background: color-mix(in srgb, var(--trade-accent) 12%, #fffdf9); }
    .trade-challenge__grid { display: grid; grid-template-columns: 1fr .8fr; gap: 90px; align-items: start; }
    .trade-challenge__copy h2 { margin-top: 22px; font-family: var(--ff-head); font-size: clamp(2.5rem, 4.7vw, 5rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .trade-system-list { border: 1px solid var(--trade-ink); }
    .trade-system-list a { display: grid; grid-template-columns: 38px 1fr auto; gap: 16px; align-items: center; padding: 18px; border-bottom: 1px solid var(--trade-ink); background: white; transition: background .18s, color .18s; }
    .trade-system-list a:last-child { border-bottom: 0; }
    .trade-system-list a:hover { background: var(--trade-accent); color: white; }
    .trade-system-list span { color: var(--trade-accent); font: 600 .62rem/1 "IBM Plex Mono", monospace; }
    .trade-system-list a:hover span { color: white; }
    .trade-system-list strong { font-size: .88rem; }
    .trade-system-list i { font-size: .7rem; }
    .trade-growth { background: #fffdf9; }
    .trade-growth-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--trade-ink); }
    .trade-growth-grid article { min-height: 260px; padding: 26px; border-right: 1px solid var(--trade-ink); }
    .trade-growth-grid article:last-child { border-right: 0; }
    .trade-growth-grid b { color: var(--trade-accent); font: 600 1rem/1 "IBM Plex Mono", monospace; }
    .trade-growth-grid h3 { margin: 50px 0 12px; font-family: var(--ff-head); font-size: 1.3rem; font-weight: 400; }
    .trade-growth-grid p { color: var(--muted); font-size: .82rem; line-height: 1.65; }
    .trade-dedicated { background: var(--trade-ink); color: white; }
    .trade-dedicated__grid { display: grid; grid-template-columns: 1fr .7fr; gap: 90px; align-items: center; }
    .trade-dedicated h2 { margin: 20px 0; font-family: var(--ff-head); font-size: clamp(2.5rem, 4.7vw, 5rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .trade-dedicated p { max-width: 700px; color: rgba(255,255,255,.62); line-height: 1.7; }
    .trade-dedicated__mark { display: grid; min-height: 300px; align-content: center; justify-items: center; padding: 34px; border: 1px solid rgba(255,255,255,.3); background: color-mix(in srgb, var(--trade-accent) 28%, transparent); text-align: center; }
    .trade-dedicated__mark i { color: var(--trade-accent); font-size: 3rem; }
    .trade-dedicated__mark b { margin-top: 26px; font-family: var(--ff-head); font-size: 1.8rem; }
    .trade-dedicated__mark span { margin-top: 10px; color: rgba(255,255,255,.55); font: 600 .58rem/1.3 "IBM Plex Mono", monospace; }
    .trade-related { background: var(--trade-paper); }

    /* Industry compositions: one brand system, six genuinely different stories. */
    .model-lead h2, .model-challenge h2, .model-heading h2 {
      margin-top: 22px;
      font-family: var(--ff-head);
      font-size: clamp(2.45rem, 4.5vw, 4.7rem);
      font-weight: 400;
      letter-spacing: -.04em;
      line-height: 1;
    }
    .model-lead p { margin-top: 26px; color: var(--muted); font-size: 1.05rem; line-height: 1.75; }
    .model-heading { display: grid; grid-template-columns: 180px 1fr; gap: 42px; align-items: end; margin-bottom: 50px; }
    .model-chapter { padding: 34px; border: 1px solid var(--trade-ink); background: #fff; }
    .model-chapter > span { color: var(--accent); font: 600 .68rem/1 "IBM Plex Mono", monospace; }
    .model-chapter h3 { margin: 44px 0 14px; font-family: var(--ff-head); font-size: 1.75rem; font-weight: 400; line-height: 1.08; }
    .model-chapter p { color: var(--muted); line-height: 1.68; }
    .model-chapter ul { display: grid; gap: 10px; margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--border); }
    .model-chapter li { display: flex; gap: 9px; color: var(--text-2); font-size: .84rem; }
    .model-chapter li i { color: var(--accent); font-style: normal; }
    .model-system-links { border: 1px solid var(--trade-ink); background: #fff; }
    .model-system-links a { display: grid; grid-template-columns: 42px 1fr auto; gap: 14px; align-items: center; padding: 18px 20px; border-bottom: 1px solid var(--trade-ink); transition: background .18s, color .18s; }
    .model-system-links a:last-child { border-bottom: 0; }
    .model-system-links a:hover { background: var(--accent); color: white; }
    .model-system-links span { color: var(--accent); font: 600 .62rem/1 "IBM Plex Mono", monospace; }
    .model-system-links a:hover span { color: white; }
    .model-system-links strong { font-size: .88rem; }
    .model-system-links i { font-size: .7rem; }
    .model-system-band { background: #eee3d4; }
    .model-system-band__grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 80px; align-items: start; }

    .model-route-overview { background: var(--trade-ink); color: white; }
    .model-route-overview__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
    .model-route-overview .model-lead p { color: rgba(255,255,255,.62); }
    .model-route-loop { border: 1px solid rgba(255,255,255,.28); }
    .model-route-loop li { display: grid; grid-template-columns: 54px 1fr; gap: 18px; padding: 20px; border-bottom: 1px solid rgba(255,255,255,.22); }
    .model-route-loop li:last-child { border-bottom: 0; }
    .model-route-loop b { color: var(--accent); font: 600 .7rem/1.3 "IBM Plex Mono", monospace; }
    .model-route-loop strong, .model-route-loop span { display: block; }
    .model-route-loop strong { font-family: var(--ff-head); font-size: 1.3rem; font-weight: 400; }
    .model-route-loop span { margin-top: 5px; color: rgba(255,255,255,.58); font-size: .8rem; }
    .model-route-prep { background: #fffdf9; }
    .model-route-prep__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .model-route-prep .model-chapter { min-height: 470px; box-shadow: 7px 7px 0 rgba(212,91,58,.2); }

    .model-weather-command { background: #fffdf9; }
    .model-weather-command__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
    .model-weather-command__panel { padding: 30px; border: 2px solid var(--trade-ink); background: #1b1714; color: white; box-shadow: 10px 10px 0 var(--accent); }
    .model-weather-command__panel > span { color: var(--accent); font: 600 .66rem/1 "IBM Plex Mono", monospace; }
    .model-weather-command__panel > strong { display: block; margin: 24px 0; font-family: var(--ff-head); font-size: 2rem; font-weight: 400; line-height: 1.1; }
    .model-weather-command__panel .model-system-links { border-color: rgba(255,255,255,.26); background: transparent; }
    .model-weather-command__panel .model-system-links a { border-color: rgba(255,255,255,.2); }
    .model-weather-phases { background: #eee3d4; }
    .model-weather-phases__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
    .model-weather-phases .model-chapter { min-height: 480px; border-right: 0; }
    .model-weather-phases .model-chapter:last-child { border-right: 1px solid var(--trade-ink); }
    .model-weather-phases .model-chapter.active { background: var(--accent); color: white; transform: translateY(-18px); }
    .model-weather-phases .model-chapter.active > span, .model-weather-phases .model-chapter.active p, .model-weather-phases .model-chapter.active li, .model-weather-phases .model-chapter.active li i { color: white; }
    .model-weather-timeline { background: #fffdf9; }
    .model-weather-timeline .model-challenge { max-width: 900px; margin-bottom: 50px; }
    .model-weather-timeline ol { display: grid; grid-template-columns: repeat(5, 1fr); border-top: 3px solid var(--accent); }
    .model-weather-timeline li { padding: 25px 20px; border-right: 1px solid var(--trade-ink); border-bottom: 1px solid var(--trade-ink); background: #fff; }
    .model-weather-timeline li:first-child { border-left: 1px solid var(--trade-ink); }
    .model-weather-timeline b { color: var(--accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .model-weather-timeline strong { display: block; margin: 34px 0 12px; font-family: var(--ff-head); font-size: 1.25rem; }
    .model-weather-timeline p { color: var(--muted); font-size: .8rem; }

    .model-emergency-dispatch { background: #1b1714; color: white; }
    .model-emergency-dispatch__grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: start; }
    .model-emergency-dispatch .model-lead p { color: rgba(255,255,255,.62); }
    .model-dispatch-chain { position: relative; display: grid; gap: 12px; }
    .model-dispatch-chain::before { position: absolute; top: 0; bottom: 0; left: 30px; width: 2px; background: var(--accent); content: ""; }
    .model-dispatch-chain li { position: relative; display: grid; grid-template-columns: 62px 1fr; gap: 18px; padding: 20px; border: 1px solid rgba(255,255,255,.24); background: #241f1b; }
    .model-dispatch-chain b { position: relative; z-index: 1; display: grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: var(--accent); font: 600 .58rem/1 "IBM Plex Mono", monospace; }
    .model-dispatch-chain strong { font-family: var(--ff-head); font-size: 1.35rem; font-weight: 400; }
    .model-dispatch-chain p { margin-top: 6px; color: rgba(255,255,255,.58); font-size: .82rem; }
    .model-emergency-continuity { background: #fffdf9; }
    .model-emergency-continuity__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 18px; }
    .model-emergency-continuity .model-chapter.primary { grid-row: span 2; min-height: 650px; background: #eee3d4; }

    .model-project-scope { background: #eee3d4; }
    .model-project-scope__grid { display: grid; grid-template-columns: .76fr 1.24fr; gap: 80px; align-items: start; }
    .model-project-sheet { padding: 18px; border: 2px solid var(--trade-ink); background: #fffdf9; box-shadow: 10px 10px 0 var(--accent); }
    .model-project-sheet .model-chapter { display: grid; grid-template-columns: 48px .8fr 1fr; gap: 22px; min-height: 0; border: 0; border-bottom: 1px solid var(--trade-ink); }
    .model-project-sheet .model-chapter:last-child { border-bottom: 0; }
    .model-project-sheet .model-chapter h3 { margin: 0; }
    .model-project-sheet .model-chapter ul { margin: 0; padding: 0; border: 0; }
    .model-project-path { background: #fffdf9; }
    .model-project-path ol { display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid var(--trade-ink); }
    .model-project-path li { min-height: 260px; padding: 24px; border-right: 1px solid var(--trade-ink); }
    .model-project-path li:last-child { border-right: 0; background: var(--accent); color: white; }
    .model-project-path span { color: var(--accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .model-project-path li:last-child span, .model-project-path li:last-child p { color: white; }
    .model-project-path strong { display: block; margin: 44px 0 14px; font-family: var(--ff-head); font-size: 1.35rem; }
    .model-project-path p { color: var(--muted); font-size: .82rem; }

    .model-rapid-status { background: #fffdf9; }
    .model-rapid-status__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 90px; align-items: start; }
    .model-status-stack { border: 1px solid var(--trade-ink); }
    .model-status-stack li { display: grid; grid-template-columns: 54px 46px 1fr; gap: 16px; align-items: center; padding: 20px; border-bottom: 1px solid var(--trade-ink); }
    .model-status-stack li:last-child { border-bottom: 0; }
    .model-status-stack > li > span { padding: 6px; background: var(--accent); color: white; text-align: center; font: 600 .52rem/1 "IBM Plex Mono", monospace; }
    .model-status-stack b { color: var(--accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .model-status-stack strong { font-family: var(--ff-head); font-size: 1.25rem; font-weight: 400; }
    .model-status-stack p { margin-top: 5px; color: var(--muted); font-size: .8rem; }
    .model-rapid-proof { background: #1b1714; color: white; }
    .model-rapid-proof__grid { display: grid; grid-template-columns: 1fr .9fr; gap: 80px; align-items: start; }
    .model-rapid-proof .model-system-links { border-color: rgba(255,255,255,.25); background: transparent; }
    .model-rapid-proof .model-system-links a { border-color: rgba(255,255,255,.2); }
    .model-rapid-ops { background: #eee3d4; }
    .model-rapid-ops__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }

    .model-contract-account { background: #eee3d4; }
    .model-contract-account__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
    .model-account-stack { padding: 18px; border: 2px solid var(--trade-ink); background: #fffdf9; box-shadow: 10px 10px 0 var(--accent); }
    .model-contract-depth { background: #fffdf9; }
    .model-contract-depth__grid { border: 1px solid var(--trade-ink); }
    .model-contract-depth .model-chapter { display: grid; grid-template-columns: 60px .75fr 1fr 1fr; gap: 26px; min-height: 0; border: 0; border-bottom: 1px solid var(--trade-ink); }
    .model-contract-depth .model-chapter:last-child { border-bottom: 0; }
    .model-contract-depth .model-chapter h3 { margin: 0; }
    .model-contract-depth .model-chapter ul { margin: 0; padding: 0; border: 0; }
    .model-contract-lifecycle { background: #1b1714; color: white; }
    .model-contract-lifecycle .model-challenge { max-width: 900px; }
    .model-contract-lifecycle ol { display: grid; grid-template-columns: repeat(5, 1fr); margin-top: 50px; border: 1px solid rgba(255,255,255,.28); }
    .model-contract-lifecycle li { min-height: 260px; padding: 24px; border-right: 1px solid rgba(255,255,255,.22); }
    .model-contract-lifecycle li:last-child { border-right: 0; }
    .model-contract-lifecycle b { color: var(--accent); font: 600 .65rem/1 "IBM Plex Mono", monospace; }
    .model-contract-lifecycle strong { display: block; margin: 42px 0 12px; font-family: var(--ff-head); font-size: 1.3rem; font-weight: 400; }
    .model-contract-lifecycle p { color: rgba(255,255,255,.58); font-size: .8rem; }

    @media (max-width: 1050px) {
      .trade-hero__grid { grid-template-columns: 1fr; }
      .trade-model-visual { width: min(720px, calc(100% - 14px)); }
      .trade-rhythm__grid { grid-template-columns: 140px 1fr; }
      .trade-rhythm__grid p { grid-column: 2; }
      .trade-stage-list { grid-template-columns: 1fr 1fr; }
      .trade-stage-list li { min-height: 230px; border-bottom: 1px solid var(--trade-ink); }
      .trade-stage-list li:nth-child(2n) { border-right: 0; }
      .trade-stage-list li:last-child { border-bottom: 0; }
      .trade-story--emergency .trade-stage-list { grid-template-columns: 1fr 1fr; }
      .trade-chapter-grid { grid-template-columns: 1fr 1fr; }
      .trade-chapter-card:last-child { grid-column: 1 / -1; min-height: 360px; }
      .trade-story--project .trade-chapter-grid { grid-template-columns: 1fr; }
      .trade-story--project .trade-chapter-card:first-child { grid-row: auto; min-height: 460px; }
      .trade-story--project .trade-chapter-card:not(:first-child) { min-height: 360px; }
      .trade-challenge__grid { grid-template-columns: 1fr; gap: 50px; }
      .model-route-overview__grid, .model-weather-command__grid, .model-emergency-dispatch__grid,
      .model-project-scope__grid, .model-rapid-status__grid, .model-rapid-proof__grid,
      .model-contract-account__grid, .model-system-band__grid { grid-template-columns: 1fr; gap: 52px; }
      .model-route-prep__grid, .model-weather-phases__grid, .model-rapid-ops__grid { grid-template-columns: 1fr 1fr; }
      .model-route-prep .model-chapter:last-child, .model-weather-phases .model-chapter:last-child,
      .model-rapid-ops .model-chapter:last-child { grid-column: 1 / -1; }
      .model-weather-timeline ol, .model-project-path ol, .model-contract-lifecycle ol { grid-template-columns: 1fr 1fr; }
      .model-emergency-continuity__grid { grid-template-columns: 1fr; }
      .model-emergency-continuity .model-chapter.primary { grid-row: auto; min-height: 0; }
      .model-project-sheet .model-chapter, .model-contract-depth .model-chapter { grid-template-columns: 54px 1fr 1fr; }
      .model-project-sheet .model-chapter ul, .model-contract-depth .model-chapter ul { grid-column: 2 / -1; }
      .trade-growth-grid { grid-template-columns: 1fr 1fr; }
      .trade-growth-grid article { border-bottom: 1px solid var(--trade-ink); }
      .trade-growth-grid article:nth-child(2n) { border-right: 0; }
      .trade-growth-grid article:nth-last-child(-n+2) { border-bottom: 0; }
    }
    @media (max-width: 760px) {
      .trade-hero { padding: 110px 0 60px; }
      .trade-hero h1 { font-size: clamp(2.45rem, 10.8vw, 3.6rem); }
      .trade-model-visual { min-height: 400px; border-radius: 12px; box-shadow: 8px 9px 0 var(--trade-ink); }
      .route-week, .weather-board, .dispatch-board, .project-board, .account-board { min-height: 350px; padding: 18px; }
      .status-board { grid-template-columns: .72fr 1.28fr; min-height: 350px; }
      .status-board__map { min-height: 350px; }
      .status-board__rows { padding: 12px; gap: 7px; }
      .status-board__rows article { grid-template-columns: 24px 1fr 10px; padding: 11px 9px; }
      .route-week__footer { font-size: .44rem; }
      .trade-rhythm__grid, .trade-section-head, .trade-dedicated__grid { grid-template-columns: 1fr; gap: 26px; }
      .trade-rhythm__grid p { grid-column: auto; }
      .trade-stage-list,
      .trade-story--emergency .trade-stage-list,
      .trade-chapter-grid,
      .trade-story--project .trade-chapter-grid,
      .trade-growth-grid { grid-template-columns: 1fr; }
      .trade-stage-list li { min-height: 0; border-right: 0; }
      .trade-story--rapid .trade-stage-list li { grid-template-columns: 46px 1fr; }
      .trade-story--rapid .trade-stage-list li p { grid-column: 2; }
      .trade-chapter-card,
      .trade-chapter-card:last-child,
      .trade-story--project .trade-chapter-card:first-child,
      .trade-story--project .trade-chapter-card:not(:first-child) { min-height: 0; grid-column: auto; }
      .trade-chapter-card h3 { margin-top: 42px; }
      .trade-chapter-card p { min-height: 0; }
      .trade-story--contract .trade-chapter-card { grid-template-columns: 1fr; }
      .model-heading { grid-template-columns: 1fr; gap: 24px; }
      .model-route-prep__grid, .model-weather-phases__grid, .model-rapid-ops__grid,
      .model-weather-timeline ol, .model-project-path ol, .model-contract-lifecycle ol { grid-template-columns: 1fr; }
      .model-route-prep .model-chapter:last-child, .model-weather-phases .model-chapter:last-child,
      .model-rapid-ops .model-chapter:last-child { grid-column: auto; }
      .model-weather-phases .model-chapter { min-height: 0; border-right: 1px solid var(--trade-ink); border-bottom: 0; }
      .model-weather-phases .model-chapter:last-child { border-bottom: 1px solid var(--trade-ink); }
      .model-weather-phases .model-chapter.active { transform: none; }
      .model-project-sheet .model-chapter, .model-contract-depth .model-chapter { grid-template-columns: 1fr; }
      .model-project-sheet .model-chapter ul, .model-contract-depth .model-chapter ul { grid-column: auto; }
      .model-status-stack li { grid-template-columns: 48px 36px 1fr; padding: 16px 12px; }
      .model-route-prep .model-chapter, .model-chapter { min-height: 0; }
      .model-weather-timeline li, .model-project-path li, .model-contract-lifecycle li { min-height: 0; border-right: 0; border-bottom: 1px solid currentColor; }
      .trade-growth-grid article { min-height: 0; border-right: 0; border-bottom: 1px solid var(--trade-ink); }
      .trade-growth-grid article:nth-last-child(-n+2) { border-bottom: 1px solid var(--trade-ink); }
      .trade-growth-grid article:last-child { border-bottom: 0; }
      .trade-growth-grid h3 { margin-top: 28px; }
      .trade-dedicated__mark { min-height: 240px; }
    }

    /* Platform operating-system hub */
    .platform-hub { background: #f6f3ec; }
    .platform-hub .wave-bg { display: none; }
    .platform-hub-hero { padding: 150px 0 92px; border-bottom: 2px solid #18201b; background: #fffdf9; }
    .platform-hub-kicker { color: var(--accent); font: 600 .72rem/1 "IBM Plex Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
    .platform-hub-hero h1 { max-width: 1060px; margin: 30px 0 42px; font-family: var(--ff-head); font-size: clamp(3.4rem, 6.4vw, 6.5rem); font-weight: 400; letter-spacing: -.055em; line-height: .94; }
    .platform-hub-hero h1 em { color: var(--accent); font-style: normal; }
    .platform-hub-hero__foot { display: grid; grid-template-columns: minmax(0, 720px) auto; gap: 70px; align-items: center; justify-content: space-between; }
    .platform-hub-hero__foot p { color: var(--text-2); font-size: 1.15rem; line-height: 1.75; }
    .platform-system-index { background: #f6f3ec; }
    .platform-system-index__head { display: flex; justify-content: space-between; gap: 30px; padding-bottom: 20px; border-bottom: 2px solid #18201b; font: 600 .65rem/1.3 "IBM Plex Mono", monospace; letter-spacing: .06em; }
    .platform-system-row { --system-color: var(--accent); display: grid; grid-template-columns: 80px 1.05fr .9fr .8fr; gap: 34px; align-items: start; padding: 42px 0; border-bottom: 1px solid #18201b; }
    .platform-system-row__num { color: var(--system-color); font: 600 1rem/1 "IBM Plex Mono", monospace; }
    .platform-system-row__title > span { color: var(--system-color); font: 600 .62rem/1 "IBM Plex Mono", monospace; letter-spacing: .07em; }
    .platform-system-row__title h2 { margin-top: 14px; font-family: var(--ff-head); font-size: clamp(2rem, 3.3vw, 3.6rem); font-weight: 400; letter-spacing: -.04em; line-height: 1; }
    .platform-system-row > p { color: var(--muted); line-height: 1.7; }
    .platform-system-row__links { display: grid; border: 1px solid #18201b; }
    .platform-system-row__links a { display: flex; justify-content: space-between; padding: 11px 13px; border-bottom: 1px solid #18201b; background: white; font: 600 .63rem/1.2 "IBM Plex Mono", monospace; text-transform: uppercase; transition: background .18s, color .18s; }
    .platform-system-row__links a:last-child { border-bottom: 0; }
    .platform-system-row__links a::after { content: "→"; }
    .platform-system-row__links a:hover { background: var(--system-color); color: white; }
    .platform-flagships { background: #18201b; color: white; }
    .platform-flagships__head { display: grid; grid-template-columns: 170px 1fr .65fr; gap: 45px; align-items: end; margin-bottom: 55px; }
    .platform-flagships__head > span { color: #e98a68; font: 600 .66rem/1 "IBM Plex Mono", monospace; }
    .platform-flagships__head h2 { font-family: var(--ff-head); font-size: clamp(2.7rem, 5vw, 5.3rem); font-weight: 400; letter-spacing: -.045em; line-height: .98; }
    .platform-flagships__head p { color: rgba(255,255,255,.58); line-height: 1.7; }
    .platform-flagship-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.35); border-left: 1px solid rgba(255,255,255,.35); }
    .platform-flagship-card { display: flex; min-height: 380px; flex-direction: column; padding: 28px; border-right: 1px solid rgba(255,255,255,.35); border-bottom: 1px solid rgba(255,255,255,.35); transition: background .2s, color .2s; }
    .platform-flagship-card:hover { background: var(--accent); color: white; }
    .platform-flagship-card > span { color: #e98a68; font: 600 .6rem/1 "IBM Plex Mono", monospace; }
    .platform-flagship-card:hover > span { color: white; }
    .platform-flagship-card > i { margin-top: 54px; color: #e98a68; font-size: 1.7rem; }
    .platform-flagship-card:hover > i { color: white; }
    .platform-flagship-card h3 { margin: 24px 0 12px; font-family: var(--ff-head); font-size: 1.6rem; font-weight: 400; line-height: 1.05; }
    .platform-flagship-card p { color: rgba(255,255,255,.58); font-size: .84rem; line-height: 1.65; }
    .platform-flagship-card:hover p { color: rgba(255,255,255,.8); }
    .platform-flagship-card b { margin-top: auto; padding-top: 25px; font: 600 .62rem/1 "IBM Plex Mono", monospace; }
    .platform-built-in { background: #e8dfcf; }
    .platform-built-in__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
    .platform-built-in__copy > span,
    .platform-dedicated span { color: var(--accent); font: 600 .65rem/1.2 "IBM Plex Mono", monospace; letter-spacing: .08em; }
    .platform-built-in__copy h2 { margin: 22px 0; font-family: var(--ff-head); font-size: clamp(3rem, 5.5vw, 6rem); font-weight: 400; letter-spacing: -.05em; line-height: .93; }
    .platform-built-in__copy p { max-width: 620px; color: var(--text-2); font-size: 1.03rem; line-height: 1.75; }
    .platform-built-in__list { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #18201b; }
    .platform-built-in__list span { min-height: 90px; padding: 22px; border-right: 1px solid #18201b; border-bottom: 1px solid #18201b; background: #fffdf9; font: 600 .68rem/1.35 "IBM Plex Mono", monospace; text-transform: uppercase; }
    .platform-built-in__list span:nth-child(2n) { border-right: 0; }
    .platform-built-in__list span:nth-last-child(-n+2) { border-bottom: 0; }
    .platform-dedicated { background: #fffdf9; }
    .platform-dedicated__grid { display: grid; grid-template-columns: 1fr .8fr; gap: 90px; align-items: end; }
    .platform-dedicated h2 { margin: 22px 0; font-family: var(--ff-head); font-size: clamp(3rem, 5.5vw, 6rem); font-weight: 400; letter-spacing: -.05em; line-height: .93; }
    .platform-dedicated p { max-width: 650px; color: var(--muted); line-height: 1.75; }
    .platform-dedicated__facts { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #18201b; }
    .platform-dedicated__facts article { min-height: 150px; padding: 24px; border-right: 1px solid #18201b; border-bottom: 1px solid #18201b; }
    .platform-dedicated__facts article:nth-child(2n) { border-right: 0; }
    .platform-dedicated__facts article:nth-last-child(-n+2) { border-bottom: 0; }
    .platform-dedicated__facts b { color: var(--accent); font: 600 .7rem/1 "IBM Plex Mono", monospace; }
    .platform-dedicated__facts article > span { display: block; margin-top: 42px; color: var(--text); font-family: var(--ff-body); font-size: .9rem; font-weight: 650; letter-spacing: 0; }
    @media (max-width: 1050px) {
      .platform-system-row { grid-template-columns: 60px 1fr 1fr; }
      .platform-system-row__links { grid-column: 2 / -1; grid-template-columns: repeat(4, 1fr); }
      .platform-system-row__links a { border-bottom: 0; border-right: 1px solid #18201b; }
      .platform-system-row__links a:last-child { border-right: 0; }
      .platform-flagships__head { grid-template-columns: 140px 1fr; }
      .platform-flagships__head p { grid-column: 2; }
      .platform-flagship-grid { grid-template-columns: repeat(2, 1fr); }
      .platform-built-in__grid, .platform-dedicated__grid { grid-template-columns: 1fr; gap: 55px; }
    }
    @media (max-width: 760px) {
      .platform-hub-hero { padding: 120px 0 65px; }
      .platform-hub-hero h1 { font-size: clamp(2.8rem, 11.8vw, 4.3rem); }
      .platform-hub-hero__foot { grid-template-columns: 1fr; gap: 30px; }
      .platform-system-index__head { flex-direction: column; }
      .platform-system-row { grid-template-columns: 42px 1fr; gap: 18px; }
      .platform-system-row > p, .platform-system-row__links { grid-column: 2; }
      .platform-system-row__links { grid-template-columns: 1fr; }
      .platform-system-row__links a { border-right: 0; border-bottom: 1px solid #18201b; }
      .platform-system-row__links a:last-child { border-bottom: 0; }
      .platform-flagships__head { grid-template-columns: 1fr; gap: 24px; }
      .platform-flagships__head p { grid-column: auto; }
      .platform-flagship-grid { grid-template-columns: 1fr; }
      .platform-flagship-card { min-height: 300px; }
      .platform-built-in__list, .platform-dedicated__facts { grid-template-columns: 1fr; }
      .platform-built-in__list span, .platform-built-in__list span:nth-child(2n) { min-height: 70px; border-right: 0; border-bottom: 1px solid #18201b; }
      .platform-built-in__list span:last-child { border-bottom: 0; }
      .platform-dedicated__facts article, .platform-dedicated__facts article:nth-child(2n) { min-height: 110px; border-right: 0; border-bottom: 1px solid #18201b; }
      .platform-dedicated__facts article:last-child { border-bottom: 0; }
      .platform-dedicated__facts article > span { margin-top: 24px; }
    }

    .inline-explore { display: inline-flex; align-items: center; gap: 8px; margin-top: 22px; color: var(--accent); font-size: .82rem; font-weight: 700; }
    .inline-explore i { font-size: .7rem; transition: transform .18s; }
    .inline-explore:hover i { transform: translateX(4px); }
    .home-product-stories { background: #18201b; color: white; }
    .home-product-stories__head { display: grid; grid-template-columns: 170px 1fr .65fr; gap: 44px; align-items: end; margin-bottom: 54px; }
    .home-product-stories__head > span { color: #e98a68; font: 600 .65rem/1.2 "IBM Plex Mono", monospace; }
    .home-product-stories__head h2 { font-family: var(--ff-head); font-size: clamp(2.7rem, 5vw, 5.3rem); font-weight: 400; letter-spacing: -.045em; line-height: .98; }
    .home-product-stories__head p { color: rgba(255,255,255,.6); line-height: 1.7; }
    .home-product-story-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.32); border-left: 1px solid rgba(255,255,255,.32); }
    .home-product-story { display: flex; min-height: 360px; flex-direction: column; padding: 30px; border-right: 1px solid rgba(255,255,255,.32); border-bottom: 1px solid rgba(255,255,255,.32); transition: background .18s; }
    .home-product-story:hover { background: var(--accent); }
    .home-product-story > span { color: #e98a68; font: 600 .6rem/1 "IBM Plex Mono", monospace; }
    .home-product-story:hover > span { color: white; }
    .home-product-story > i { margin-top: 45px; color: #e98a68; font-size: 1.7rem; }
    .home-product-story:hover > i { color: white; }
    .home-product-story h3 { margin: 22px 0 12px; font-family: var(--ff-head); font-size: 1.7rem; font-weight: 400; line-height: 1.05; }
    .home-product-story p { color: rgba(255,255,255,.58); font-size: .86rem; line-height: 1.65; }
    .home-product-story:hover p { color: rgba(255,255,255,.82); }
    .home-product-story b { margin-top: auto; padding-top: 24px; font: 600 .62rem/1 "IBM Plex Mono", monospace; }
    @media (max-width: 960px) {
      .home-product-stories__head { grid-template-columns: 140px 1fr; }
      .home-product-stories__head p { grid-column: 2; }
      .home-product-story-grid { grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 640px) {
      .home-product-stories__head { grid-template-columns: 1fr; gap: 24px; }
      .home-product-stories__head p { grid-column: auto; }
      .home-product-story-grid { grid-template-columns: 1fr; }
      .home-product-story { min-height: 300px; }
    }

    /* Satellite product page families */
    .platform-detail--builder .feature-strips { background: #efeae2; }
    .platform-detail--builder .feature-strips > .wrap { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
    .platform-detail--builder .feature-strips .section-hdr { grid-column: 1 / -1; }
    .platform-detail--builder .fstrip,
    .platform-detail--builder .fstrip.flip { display: flex; min-height: 510px; flex-direction: column; gap: 0; margin: 0; padding: 0; border: 1px solid var(--text); background: white; }
    .platform-detail--builder .fstrip__visual,
    .platform-detail--builder .fstrip.flip .fstrip__visual { width: 100%; min-height: 210px; order: 0; border: 0; border-bottom: 1px solid var(--text); border-radius: 0; box-shadow: none; }
    .platform-detail--builder .fstrip__copy,
    .platform-detail--builder .fstrip.flip .fstrip__copy { width: auto; order: 1; padding: 28px; }
    .platform-detail--builder .fstrip__copy h2 { font-size: 1.7rem; }
    .platform-detail--workflow .feature-strips { background: #fffdf9; }
    .platform-detail--workflow .fstrip,
    .platform-detail--workflow .fstrip.flip { position: relative; grid-template-columns: 120px 1fr; gap: 45px; margin: 0; padding: 40px 0; border-top: 1px solid var(--text); }
    .platform-detail--workflow .fstrip:last-child { border-bottom: 1px solid var(--text); }
    .platform-detail--workflow .fstrip__visual,
    .platform-detail--workflow .fstrip.flip .fstrip__visual { width: 110px; min-height: 110px; order: 0; border: 1px solid var(--text); border-radius: 50%; box-shadow: none; aspect-ratio: 1; }
    .platform-detail--workflow .fstrip__copy,
    .platform-detail--workflow .fstrip.flip .fstrip__copy { width: auto; max-width: 860px; order: 1; }
    .platform-detail--record .feature-strips { background: var(--text); color: white; }
    .platform-detail--record .feature-strips .section-sub,
    .platform-detail--record .fstrip__copy p,
    .platform-detail--record .check-list li { color: rgba(255,255,255,.62); }
    .platform-detail--record .fstrip { padding: 34px; border: 1px solid rgba(255,255,255,.28); background: rgba(255,255,255,.04); }
    .platform-detail--record .fstrip__visual { border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.07); box-shadow: none; }
    .platform-detail--record .fstrip__visual-inner { color: rgba(255,255,255,.45); }
    .platform-detail--record .fstrip__copy h2 { color: white; }
    .platform-detail--governance .feature-strips { background: #eee3d4; }
    .platform-detail--governance .fstrip { grid-template-columns: .72fr 1.28fr; padding: 40px; border: 1px solid var(--text); background: white; }
    .platform-detail--governance .fstrip.flip { grid-template-columns: 1.28fr .72fr; }
    .platform-detail--governance .fstrip__visual { min-height: 300px; border-radius: 0; box-shadow: 8px 8px 0 var(--text); }
    @media (max-width: 900px) {
      .platform-detail--builder .feature-strips > .wrap { grid-template-columns: 1fr; }
      .platform-detail--builder .feature-strips .section-hdr { grid-column: auto; }
      .platform-detail--workflow .fstrip,
      .platform-detail--workflow .fstrip.flip { grid-template-columns: 80px 1fr; }
      .platform-detail--workflow .fstrip__visual,
      .platform-detail--workflow .fstrip.flip .fstrip__visual { width: 74px; min-height: 74px; }
      .platform-detail--governance .fstrip,
      .platform-detail--governance .fstrip.flip { grid-template-columns: 1fr; padding: 26px; }
    }
    @media (max-width: 620px) {
      .platform-detail--workflow .fstrip,
      .platform-detail--workflow .fstrip.flip { grid-template-columns: 1fr; }
      .platform-detail--record .fstrip { padding: 22px; }
    }

    /* Industry operating-model hub */
    .industry-hub { background: #f6f3ec; }
    .industry-hub .wave-bg { display: none; }
    .industry-hub-hero { padding: 150px 0 92px; border-bottom: 2px solid #18201b; background: #fffdf9; }
    .industry-hub-kicker { color: var(--accent); font: 600 .72rem/1 "IBM Plex Mono", monospace; letter-spacing: .1em; text-transform: uppercase; }
    .industry-hub-hero h1 { max-width: 1020px; margin: 30px 0 42px; font-family: var(--ff-head); font-size: clamp(3.4rem, 6.5vw, 6.6rem); font-weight: 400; letter-spacing: -.055em; line-height: .94; }
    .industry-hub-hero h1 em { color: var(--accent); font-style: normal; }
    .industry-hub-hero__foot { display: grid; grid-template-columns: minmax(0, 740px) auto; gap: 70px; justify-content: space-between; align-items: center; }
    .industry-hub-hero__foot p { color: var(--text-2); font-size: 1.15rem; line-height: 1.75; }
    .industry-models { background: #f6f3ec; }
    .industry-models__intro { display: grid; grid-template-columns: 180px 1fr; gap: 40px; margin-bottom: 60px; }
    .industry-models__intro span { color: var(--accent); font: 600 .65rem/1.2 "IBM Plex Mono", monospace; }
    .industry-models__intro h2 { font-family: var(--ff-head); font-size: clamp(3rem, 5vw, 5.4rem); font-weight: 400; letter-spacing: -.045em; line-height: .95; }
    .industry-model-group { display: grid; grid-template-columns: .75fr 1.25fr; gap: 60px; padding: 44px 0; border-top: 1px solid #18201b; }
    .industry-model-group:last-child { border-bottom: 1px solid #18201b; }
    .industry-model-group__head { display: grid; grid-template-columns: 42px 1fr; gap: 20px; align-items: start; }
    .industry-model-group__head > span { color: var(--accent); font: 600 .72rem/1 "IBM Plex Mono", monospace; }
    .industry-model-group__head h3 { font-family: var(--ff-head); font-size: clamp(2rem, 3.3vw, 3.4rem); font-weight: 400; letter-spacing: -.035em; line-height: 1; }
    .industry-model-group__head p { max-width: 430px; margin-top: 16px; color: var(--muted); line-height: 1.65; }
    .industry-model-group__list { border: 1px solid #18201b; }
    .industry-model-group__list a { display: grid; grid-template-columns: 42px 1fr auto; gap: 16px; align-items: center; padding: 18px; border-bottom: 1px solid #18201b; background: white; transition: background .18s, color .18s; }
    .industry-model-group__list a:last-child { border-bottom: 0; }
    .industry-model-group__list a:hover { background: var(--accent); color: white; }
    .industry-model-group__list a > i { color: var(--accent); font-size: 1.1rem; }
    .industry-model-group__list a:hover > i { color: white; }
    .industry-model-group__list strong { display: block; font-size: .9rem; }
    .industry-model-group__list span { display: block; margin-top: 4px; color: var(--muted); font: 500 .55rem/1.3 "IBM Plex Mono", monospace; }
    .industry-model-group__list a:hover span { color: rgba(255,255,255,.75); }
    .industry-model-group__list b { font: 600 .55rem/1 "IBM Plex Mono", monospace; }
    .industry-proof { background: #e8dfcf; }
    .industry-proof__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
    .industry-proof__copy > span,
    .industry-dedicated__grid > div > span { color: var(--accent); font: 600 .65rem/1.2 "IBM Plex Mono", monospace; }
    .industry-proof__copy h2,
    .industry-dedicated h2 { margin: 22px 0; font-family: var(--ff-head); font-size: clamp(3rem, 5.3vw, 5.7rem); font-weight: 400; letter-spacing: -.05em; line-height: .94; }
    .industry-proof__copy p,
    .industry-dedicated p { color: var(--text-2); line-height: 1.75; }
    .industry-proof__list { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #18201b; }
    .industry-proof__list span { min-height: 100px; padding: 23px; border-right: 1px solid #18201b; border-bottom: 1px solid #18201b; background: #fffdf9; font: 600 .66rem/1.4 "IBM Plex Mono", monospace; text-transform: uppercase; }
    .industry-proof__list span:nth-child(2n) { border-right: 0; }
    .industry-proof__list span:nth-last-child(-n+2) { border-bottom: 0; }
    .industry-dedicated { background: #fffdf9; }
    .industry-dedicated__grid { display: grid; grid-template-columns: 1fr .9fr; gap: 80px; align-items: center; }
    .industry-dedicated__path { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
    .industry-dedicated__path article { display: grid; width: 100px; min-height: 115px; align-content: center; justify-items: center; padding: 12px; border: 1px solid #18201b; text-align: center; }
    .industry-dedicated__path b { color: var(--accent); font: 600 1.1rem/1 "IBM Plex Mono", monospace; }
    .industry-dedicated__path span { margin-top: 16px; font: 600 .5rem/1.2 "IBM Plex Mono", monospace; }
    .industry-dedicated__path > i { color: var(--accent); font-style: normal; }
    @media (max-width: 960px) {
      .industry-model-group { grid-template-columns: 1fr; gap: 30px; }
      .industry-proof__grid, .industry-dedicated__grid { grid-template-columns: 1fr; gap: 50px; }
    }
    @media (max-width: 700px) {
      .industry-hub-hero { padding: 120px 0 65px; }
      .industry-hub-hero h1 { font-size: clamp(2.8rem, 11.8vw, 4.3rem); }
      .industry-hub-hero__foot, .industry-models__intro { grid-template-columns: 1fr; gap: 28px; }
      .industry-model-group__list a { grid-template-columns: 34px 1fr; }
      .industry-model-group__list b { grid-column: 2; }
      .industry-proof__list { grid-template-columns: 1fr; }
      .industry-proof__list span, .industry-proof__list span:nth-child(2n) { min-height: 75px; border-right: 0; border-bottom: 1px solid #18201b; }
      .industry-proof__list span:last-child { border-bottom: 0; }
      .industry-dedicated__path { display: grid; grid-template-columns: 1fr; }
      .industry-dedicated__path article { width: 100%; min-height: 85px; }
      .industry-dedicated__path > i { text-align: center; transform: rotate(90deg); }
    }

    /* Established OrdexisOne website visual system
       Layouts remain distinct. Surfaces, type scale, spacing, and interaction styling match index.php. */
    .story-page,
    .trade-story,
    .platform-hub,
    .industry-hub { background: var(--bg); }

    .story-page {
      --story-paper: var(--bg);
      --story-ink: var(--text);
    }

    .trade-story {
      --trade-paper: var(--bg);
      --trade-ink: var(--text);
    }

    .story-kicker,
    .story-index,
    .trade-kicker,
    .trade-index,
    .platform-hub-kicker,
    .industry-hub-kicker,
    .platform-project-showcase__head > span,
    .industry-models__intro > span,
    .model-chapter > span {
      font-family: var(--ff-body);
      font-weight: 700;
      letter-spacing: .1em;
    }

    .story-kicker,
    .trade-kicker {
      padding: 6px 14px;
      border: 1px solid rgba(212,91,58,.2);
      border-radius: 100px;
      background: rgba(212,91,58,.08);
      color: var(--accent);
    }

    .story-hero,
    .trade-hero,
    .platform-hub-hero,
    .industry-hub-hero {
      padding: 132px 0 80px;
      border-bottom: 1px solid var(--border);
      background: var(--bg);
    }
    .story-hero__grid,
    .trade-hero__grid { gap: clamp(42px, 6vw, 76px); }
    .story-hero h1,
    .trade-hero h1 {
      max-width: 680px;
      margin: 22px 0 20px;
      font-size: clamp(2.45rem, 4vw, 3.85rem);
      line-height: 1.04;
      letter-spacing: -.025em;
    }
    .platform-hub-hero h1,
    .industry-hub-hero h1 {
      max-width: 900px;
      margin: 26px 0 34px;
      font-size: clamp(2.7rem, 4.8vw, 4.55rem);
      line-height: 1.02;
      letter-spacing: -.03em;
    }
    .story-hero__intro,
    .trade-hero__copy > p,
    .platform-hub-hero__foot p,
    .industry-hub-hero__foot p {
      color: var(--muted);
      font-size: 1.05rem;
      line-height: 1.75;
    }

    .story-visual,
    .trade-model-visual {
      border: 1px solid var(--border);
      border-radius: 20px;
      background: var(--bg-card);
      box-shadow: var(--shadow-md);
      transform: none;
    }
    .story-page--library .story-visual,
    .story-page--communication .story-visual { transform: none; }
    .story-visual__top,
    .trade-model-visual__head {
      border-bottom: 1px solid var(--border);
      background: #fff;
      color: var(--text-2);
    }

    .story-page h2,
    .trade-story h2,
    .platform-hub h2,
    .industry-hub h2,
    .model-lead h2,
    .model-challenge h2,
    .model-heading h2 {
      font-size: clamp(1.9rem, 3.5vw, 3.1rem);
      line-height: 1.1;
      letter-spacing: -.025em;
    }
    .story-section-head,
    .trade-section-head,
    .model-heading { margin-bottom: 48px; }

    .story-detail-card,
    .model-chapter,
    .trade-chapter-card,
    .trade-growth-grid,
    .story-outcomes,
    .story-link-grid,
    .model-system-links,
    .model-route-loop,
    .model-dispatch-chain li,
    .model-status-stack,
    .model-account-stack,
    .model-project-sheet,
    .industry-model-group,
    .industry-proof__list,
    .industry-dedicated__path article {
      border-color: var(--border);
      border-radius: 16px;
      background: var(--bg-card);
      box-shadow: var(--shadow-sm);
    }
    .story-detail-card,
    .trade-chapter-card,
    .model-chapter { box-shadow: var(--shadow-sm); }
    .story-page--finance .story-detail-card { border-top: 1px solid var(--border); }
    .story-page--asset .story-detail-card:first-child,
    .model-emergency-continuity .model-chapter.primary { background: var(--bg-card); }

    .story-step-list,
    .trade-stage-list,
    .model-weather-timeline ol,
    .model-project-path ol,
    .model-contract-lifecycle ol {
      overflow: hidden;
      border-color: var(--border);
      border-radius: 16px;
      background: var(--bg-card);
      box-shadow: var(--shadow-sm);
    }
    .story-step-list li,
    .trade-stage-list li,
    .model-weather-timeline li,
    .model-project-path li,
    .model-contract-lifecycle li,
    .story-link-grid a,
    .story-outcomes article,
    .model-system-links a,
    .trade-growth-grid article {
      border-color: var(--border);
    }

    .story-details,
    .model-route-prep,
    .model-emergency-continuity,
    .model-project-path,
    .model-rapid-status,
    .model-contract-depth,
    .model-weather-timeline,
    .trade-growth,
    .trade-related,
    .industry-dedicated { background: var(--bg); }
    .story-sequence,
    .story-connected,
    .model-weather-command { background: var(--bg-card); }
    .story-proof,
    .model-system-band,
    .model-weather-phases,
    .model-project-scope,
    .model-rapid-ops,
    .model-contract-account,
    .industry-proof { background: #f4efea; }

    .story-thesis,
    .story-dedicated,
    .trade-dedicated,
    .model-route-overview,
    .model-emergency-dispatch,
    .model-rapid-proof,
    .model-contract-lifecycle,
    .story-page--finance .story-proof,
    .story-page--signal .story-proof {
      background: var(--text);
      color: #fff;
    }

    .model-route-prep .model-chapter,
    .model-weather-command__panel,
    .model-project-sheet,
    .model-account-stack,
    .message-canvas,
    .finance-source {
      box-shadow: var(--shadow-md);
    }
    .model-weather-command__panel,
    .model-project-sheet,
    .model-account-stack,
    .finance-source { border-color: var(--border); }

    .platform-system-index { background: var(--bg); }
    .platform-system-index__head { border-color: var(--border); }
    .platform-system-row {
      margin: 18px 0;
      padding: 32px;
      border: 1px solid var(--border);
      border-radius: 16px;
      background: var(--bg-card);
      box-shadow: var(--shadow-sm);
    }
    .platform-system-row__title h2 { font-size: clamp(1.7rem, 2.6vw, 2.35rem); }
    .platform-system-row__links a {
      margin-bottom: 7px;
      border: 1px solid var(--border);
      border-radius: 8px;
      background: var(--bg);
    }

    .industry-models { background: var(--bg); }
    .industry-model-group {
      margin-bottom: 24px;
      padding: 30px;
      border: 1px solid var(--border);
    }
    .industry-model-group__list { border-color: var(--border); border-radius: 14px; overflow: hidden; }
    .industry-model-group__list a { border-color: var(--border); }
    .industry-proof__copy h2,
    .industry-dedicated h2 { font-size: clamp(1.9rem, 3.5vw, 3.1rem); }
    .industry-proof__list span,
    .industry-dedicated__path article { border-color: var(--border); }

    .platform-project-card,
    .home-product-story,
    .trade-dedicated__mark,
    .promo-mockup {
      border-radius: 16px;
    }

    @media (max-width: 760px) {
      .story-hero,
      .trade-hero,
      .platform-hub-hero,
      .industry-hub-hero { padding: 104px 0 56px; }
      .story-hero h1,
      .trade-hero h1,
      .platform-hub-hero h1,
      .industry-hub-hero h1 {
        max-width: 100%;
        font-size: clamp(2.15rem, 9.5vw, 2.85rem);
        line-height: 1.06;
        letter-spacing: -.02em;
      }
      .story-visual,
      .trade-model-visual { border-radius: 16px; box-shadow: var(--shadow-md); }
      .platform-system-row,
      .industry-model-group { padding: 22px; }
    }

    /* Final story-page alignment with the established index.php brand system. */
    .story-page .wave-bg,
    .trade-story .wave-bg,
    .platform-hub .wave-bg,
    .industry-hub .wave-bg {
      display: block;
    }

    .story-hero,
    .trade-hero,
    .platform-hub-hero,
    .industry-hub-hero {
      background: transparent;
    }

    .story-hero h1,
    .trade-hero h1 {
      max-width: 620px;
      font-size: clamp(2.3rem, 3.6vw, 3.55rem);
      line-height: 1.06;
      letter-spacing: -.02em;
    }

    .story-page h2,
    .trade-story h2,
    .model-lead h2,
    .model-challenge h2,
    .model-heading h2,
    .story-dedicated h2,
    .trade-dedicated h2 {
      font-size: clamp(1.85rem, 3.2vw, 3rem);
      line-height: 1.1;
      letter-spacing: -.02em;
    }

    .story-tags span,
    .story-dedicated__facts span,
    .trade-dedicated__mark span,
    .model-system-links span,
    .model-route-loop b,
    .model-weather-timeline b,
    .model-project-path span,
    .model-contract-lifecycle b,
    .trade-hero__facts span {
      font-family: var(--ff-body);
    }

    .story-tags span {
      border-radius: 100px;
      font-weight: 650;
    }

    .story-detail-card,
    .trade-chapter-card,
    .model-chapter,
    .story-page--operations .story-detail-card:first-child,
    .story-page--operations .story-detail-card:not(:first-child),
    .story-page--asset .story-detail-card:first-child,
    .story-page--asset .story-detail-card:not(:first-child),
    .story-page--pipeline .story-detail-card:first-child,
    .story-page--pipeline .story-detail-card:not(:first-child),
    .trade-story--project .trade-chapter-card:first-child,
    .trade-story--project .trade-chapter-card:not(:first-child),
    .model-route-prep .model-chapter,
    .model-weather-phases .model-chapter,
    .model-emergency-continuity .model-chapter.primary {
      min-height: 0;
    }

    .story-detail-card,
    .trade-chapter-card,
    .model-chapter {
      padding: 28px 24px;
    }

    .story-detail-card h3,
    .trade-chapter-card h3,
    .model-chapter h3,
    .story-page--operations .story-detail-card:not(:first-child) h3,
    .story-page--asset .story-detail-card:not(:first-child) h3 {
      margin: 20px 0 12px;
    }

    .story-detail-card p,
    .trade-chapter-card p {
      min-height: 0;
    }

    .story-step-list li,
    .trade-stage-list li,
    .model-weather-timeline li,
    .model-project-path li,
    .model-contract-lifecycle li {
      min-height: 0;
    }

    .model-rhythm-copy,
    .model-challenge-copy,
    .story-proof__copy {
      max-width: 680px;
      margin-top: 16px;
      color: var(--text-2);
      font-size: 1rem;
      line-height: 1.75;
    }

    .model-lead .model-rhythm-copy + p {
      margin-top: 14px;
      font-size: .95rem;
    }

    .model-challenge-copy {
      margin-bottom: 4px;
    }

    .story-status-note {
      display: block;
      max-width: 650px;
      margin-top: 22px;
      color: var(--muted);
      font-size: .78rem;
      line-height: 1.55;
    }

    .model-route-overview .model-rhythm-copy,
    .model-route-overview .model-rhythm-copy + p,
    .model-emergency-dispatch .model-rhythm-copy,
    .model-emergency-dispatch .model-rhythm-copy + p,
    .model-rapid-proof .model-challenge-copy,
    .model-contract-lifecycle .model-challenge-copy,
    .story-thesis p {
      color: rgba(255,255,255,.68);
    }

    .story-dedicated,
    .trade-dedicated {
      border-top: 1px solid var(--border);
      border-bottom: 1px solid var(--border);
      background: var(--bg-card);
      color: var(--text);
    }

    .story-dedicated__facts {
      overflow: hidden;
      border-color: var(--border);
      border-radius: 16px;
      background: var(--bg);
      box-shadow: var(--shadow-sm);
    }

    .story-dedicated__facts span {
      min-height: 78px;
      border-color: var(--border);
      color: var(--text-2);
    }

    .trade-dedicated p {
      color: var(--muted);
    }

    .trade-dedicated__mark {
      min-height: 230px;
      border: 1px solid var(--border);
      background: var(--accent-dim);
      box-shadow: var(--shadow-sm);
    }

    .trade-dedicated__mark b { color: var(--text); }
    .trade-dedicated__mark span { color: var(--muted); }

    .story-page--finance .story-proof,
    .story-page--signal .story-proof {
      background: #f4efea;
      color: var(--text);
    }

    .story-page--finance .story-proof__statement p,
    .story-page--signal .story-proof__statement p {
      color: var(--text-2);
    }

    .story-page--finance .story-outcomes,
    .story-page--signal .story-outcomes {
      border-color: var(--border);
      background: var(--bg-card);
    }

    @media (max-width: 760px) {
      .story-hero h1,
      .trade-hero h1 {
        font-size: clamp(2.05rem, 9vw, 2.65rem);
      }

      .story-detail-card,
      .trade-chapter-card,
      .model-chapter {
        padding: 24px 20px;
      }

      .story-dedicated__facts span,
      .trade-dedicated__mark {
        min-height: 0;
      }
    }

    .trade-hero__facts {
      gap: 8px;
    }

    .trade-hero__facts span,
    .trade-hero__facts span:last-child {
      border: 1px solid var(--border);
      border-radius: 100px;
      background: var(--bg-card);
    }

    .model-route-overview .model-route-loop,
    .model-contract-lifecycle ol {
      border-color: rgba(255,255,255,.24);
      background: rgba(255,255,255,.04);
      box-shadow: none;
    }

    .model-route-overview .model-route-loop li,
    .model-contract-lifecycle li {
      border-color: rgba(255,255,255,.2);
    }

    .model-route-overview .model-route-loop strong,
    .model-contract-lifecycle strong {
      color: #fff;
    }

    .model-route-overview .model-route-loop span,
    .model-contract-lifecycle p {
      color: rgba(255,255,255,.64);
    }

    .model-emergency-dispatch .model-dispatch-chain li {
      border-color: rgba(255,255,255,.22);
      background: rgba(255,255,255,.05);
      color: #fff;
      box-shadow: none;
    }

    .model-emergency-dispatch .model-dispatch-chain p {
      color: rgba(255,255,255,.64);
    }

    .route-week,
    .weather-board,
    .dispatch-board,
    .project-board,
    .account-board,
    .status-board {
      background: #f4efea;
    }

    .status-board__map {
      border-color: var(--border);
      background: repeating-linear-gradient(35deg, #f1ebe6 0 16px, #fff 16px 32px);
    }

    .story-page--pipeline .story-hero {
      background: transparent;
    }

    .story-page--library .story-detail-card {
      border-color: var(--border);
      border-radius: 16px;
      box-shadow: var(--shadow-sm);
    }

    .story-page--communication .story-step-list li,
    .story-page--operations .story-step-list li,
    .story-page--finance .story-step-list li,
    .story-page--pipeline .story-step-list li,
    .story-page--pipeline .story-step-list li:last-child {
      min-height: 0;
      border-color: var(--border);
      background: var(--bg-card);
    }

    .story-page--communication .story-step-list li:nth-child(4),
    .story-page--communication .story-step-list li:nth-child(5),
    .story-page--finance .story-step-list li:nth-child(4),
    .story-page--finance .story-step-list li:nth-child(5) {
      min-height: 0;
    }

    .model-weather-phases .model-chapter,
    .model-weather-phases .model-chapter:last-child {
      border-color: var(--border);
    }

    .model-project-sheet .model-chapter,
    .model-contract-depth .model-chapter {
      border-bottom-color: var(--border);
    }

    /* Correct multi-part card placement at wide desktop sizes. */
    @media (min-width: 1051px) {
      .story-page--library .story-detail-card,
      .story-page--signal .story-detail-card,
      .story-page--governance .story-detail-card {
        grid-template-columns: 56px minmax(190px, .85fr) minmax(230px, 1fr) minmax(230px, 1fr);
        gap: 28px;
        align-items: center;
      }

      .story-page--library .story-detail-card > i,
      .story-page--signal .story-detail-card > i,
      .story-page--governance .story-detail-card > i {
        align-self: start;
      }

      .story-page--library .story-detail-card ul,
      .story-page--signal .story-detail-card ul,
      .story-page--governance .story-detail-card ul {
        grid-column: auto;
        margin: 0;
        padding: 0;
        border: 0;
      }

      .model-project-scope__grid {
        gap: 58px;
        align-items: center;
      }

      .model-project-sheet {
        padding: 0;
        overflow: hidden;
      }

      .model-project-sheet .model-chapter {
        grid-template-columns: 44px minmax(180px, .85fr) minmax(240px, 1.15fr);
        gap: 20px 26px;
        padding: 30px 28px;
        align-items: start;
      }

      .model-project-sheet .model-chapter > span {
        grid-column: 1;
        grid-row: 1 / span 2;
      }

      .model-project-sheet .model-chapter h3 {
        grid-column: 2;
        grid-row: 1;
      }

      .model-project-sheet .model-chapter > p {
        grid-column: 3;
        grid-row: 1;
      }

      .model-project-sheet .model-chapter ul {
        grid-column: 2 / -1;
        grid-row: 2;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px 24px;
        margin-top: 4px;
        padding-top: 18px;
        border-top: 1px solid var(--border);
      }
    }

    .sticky-cta {
      max-width: 430px;
      padding: 12px 13px 12px 16px;
      gap: 14px;
    }

    .sticky-cta-text { font-size: .86rem; }
    .sticky-cta-sub { font-size: .7rem; }
    .sticky-cta .btn { padding: 11px 18px; font-size: .86rem; }

    @media (min-width: 769px) {
      .sticky-cta {
        max-width: none;
        padding: 8px;
        gap: 8px;
      }

      .sticky-cta > div:first-child { display: none; }

      .story-connected .wrap,
      .story-link-grid {
        width: 100%;
        margin-inline: auto;
      }

      .story-link-grid a {
        min-height: 112px;
        align-items: center;
      }
    }

    @media (max-width: 520px) {
      .sticky-cta {
        right: 8px;
        bottom: 8px;
        padding: 6px;
        gap: 5px;
        border-radius: 12px;
      }

      .sticky-cta-actions { gap: 5px; }
      .sticky-cta .btn { padding: 10px 14px; font-size: .78rem; }
      .sticky-cta-close { width: 30px; height: 30px; }
    }




/* Email addresses in body copy must be distinguishable without relying on colour
   alone (WCAG 1.4.1). They were rendering at 1.00:1 against body text with no
   underline at rest or on hover. */
a[href^="mailto:"] { text-decoration: underline; text-underline-offset: 2px; }

