/* Compact merchant entry; the existing homepage hero remains unchanged. */
.merchant-teaser { background: #f1f3ff; }
.merchant-teaser-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.merchant-teaser-inner > div { max-width: 720px; }
.merchant-teaser h2 { font-size: clamp(28px, 3vw, 42px); line-height: 1.2; margin: 14px 0; }
.merchant-teaser p:not(.eyebrow) { font-size: 17px; line-height: 1.7; color: #536078; margin-bottom: 0; }
.merchant-teaser .button { flex-shrink: 0; }
@media screen and (min-width: 861px) and (max-width: 1100px) {
  .site-header .primary-nav { gap: 18px; }
  .site-header .brand { width: 174px; }
  .site-header .nav-actions .nav-button { display: none; }
}
@media (max-width: 860px) {
  .merchant-teaser-inner { flex-direction: column; align-items: flex-start; gap: 24px; }
}
/* MerchantPaisa brand refresh.
   Presentation only: copy, disclosures and interactions stay intact.
   Screen-scoped so the existing printable buyer tools retain their print layout. */
@media screen {
  :root {
    --ink: #111c35;
    --muted: #536078;
    --subtle: #66738b;
    --purple: #4045e8;
    --purple-dark: #3034bd;
    --navy: #101a32;
    --line: #dde3ed;
    --soft: #f3f6fb;
    --lavender: #edf0ff;
    --mint: #fff3e8;
    --lime: #ffb477;
    --brand-orange: #ff9c53;
    --radius: 20px;
    --shadow: 0 24px 60px #13254a12;
    --font: "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  }

  body { background: #fff; }
  h1, h2, h3 { font-weight: 600; }
  h1 { letter-spacing: -.055em; }
  h2 { font-size: clamp(34px, 3.6vw, 54px); letter-spacing: -.045em; }
  h3 { letter-spacing: -.025em; }
  ::selection { background: #ffceaa; color: #101a32; }
  :focus-visible { outline-color: #687cff; }
  .container { width: min(1280px, calc(100% - 96px)); }
  .eyebrow { font-size: 12px; letter-spacing: .14em; gap: 12px; }
  .eyebrow-line { width: 22px; height: 7px; border-radius: 5px; background: var(--brand-orange); }
  .button { min-height: 52px; border-radius: 10px; padding: 14px 22px; gap: 22px; font-weight: 600; }
  .button.primary { background: var(--purple); box-shadow: 0 5px 0 #101a320d; }
  .button.primary:hover { background: var(--purple-dark); box-shadow: 0 8px 22px #4045e829; }
  .button.secondary { background: #fff; border-color: #cbd3e1; }
  .button.lime { background: var(--brand-orange); color: #17213a; }
  .button.lime:hover { background: #ffb477; }
  .button.small { min-height: 44px; }
  .text-link { font-weight: 650; }
  .text-link.light { color: #ffbb86; }
  .icon-box { width: 50px; height: 50px; border: 0; border-radius: 14px; background: var(--lavender); }
  .badge { border-radius: 6px; font-weight: 600; }
  .notice { border-radius: 14px; border-left: 3px solid #b3bef3; background: #f5f7fc; }
  .notice p { color: #536078; }

  /* One fixed-aspect logo image prevents the mark and wordmark separating. */
  .site-header { background: #fffffff5; border-bottom-color: #e5e9f0; }
  .nav-wrap { height: 92px; gap: 28px; }
  .brand { display: block; width: 220px; }
  .brand img { display: block; width: 100%; height: auto; }
  .primary-nav { gap: 30px; }
  .primary-nav > a, .nav-trigger { font-size: 14px; color: #34415a; }
  .nav-actions { gap: 16px; }
  .button.nav-button { border-radius: 10px; background: var(--purple); min-height: 46px; padding: 12px 18px; }
  .button.nav-button:hover { background: var(--purple-dark); }
  .nav-dropdown { border-radius: 18px; padding: 16px; box-shadow: 0 24px 64px #101a3226; }
  .nav-dropdown > a { border-radius: 10px; }
  .nav-dropdown a small { color: #647088; }

  /* The brand's connected-path motif is CSS, not a replacement logo. */
  .home-hero, .product-hero, .compact-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: white;
    background: #101a32;
  }
  .home-hero::before, .product-hero::before, .compact-hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 700px;
    height: 700px;
    right: -230px;
    top: -320px;
    border: 1px solid #566b9c40;
    border-radius: 50%;
    box-shadow: 0 0 0 80px #566b9c0c, 0 0 0 160px #566b9c08;
    pointer-events: none;
  }
  .home-hero { padding: 90px 0 64px; background: radial-gradient(ellipse at 87% 57%, #243d79 0, transparent 51%), #101a32; }
  .hero-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 62px; align-items: center; }
  .home-hero h1 { font-size: clamp(52px, 5.1vw, 76px); line-height: 1.07; font-weight: 600; }
  .home-hero h1 span, .product-hero h1 span, .compact-hero h1 span { color: var(--brand-orange); }
  .home-hero .eyebrow, .product-hero .eyebrow, .compact-hero .eyebrow { color: #b9c6ff; }
  .hero-description { font-size: 17px; line-height: 1.8; }
  .home-hero .hero-description, .product-hero .hero-description, .compact-hero .hero-description { color: #c2cde1; }
  .hero-actions { gap: 14px; margin-top: 32px; }
  .home-hero .button.primary, .product-hero .button.primary { background: #5159f7; }
  .home-hero .button.primary:hover, .product-hero .button.primary:hover { background: #6870ff; }
  .home-hero .button.secondary, .product-hero .button.secondary { color: #fff; background: #ffffff05; border-color: #73809c; }
  .home-hero .button.secondary:hover, .product-hero .button.secondary:hover { background: #ffffff10; }
  .hero-footnote { color: #abbad3; font-size: 12px; letter-spacing: .09em; margin-top: 34px; }
  .mini-line { background: #ff9c53; }
  .hero-visual { padding-top: 0; }
  .hero-visual::before { inset: -18px -18px 42px; transform: rotate(-3deg); border: 1px solid #7d92c047; border-radius: 24px; background: #ffffff06; }
  .product-hero { padding: 80px 0 70px; }
  .split-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; }
  .product-hero h1 { font-size: clamp(44px, 4.4vw, 65px); line-height: 1.09; }
  .product-hero .hero-description { font-size: 16px; }
  .release-note { max-width: 500px; gap: 12px; }
  .release-note > span:last-child { color: #b5c1d8; font-size: 13px; }
  .compact-hero { padding: 82px 0; }
  .compact-hero h1 { font-size: clamp(44px, 5.1vw, 72px); line-height: 1.1; }
  .compact-hero .hero-description { max-width: 700px; font-size: 17px; }
  .checklist-hero-count { border-color: #44506a; }
  .checklist-hero-count strong { color: #ffad6f; font-size: 100px; }
  .checklist-hero-count span { color: #b8c6df; }
  .page-subnav { background: #f8faff; }
  .page-subnav .container { padding-block: 22px; gap: 34px; }
  .page-subnav a { color: #51607b; font-size: 13px; }

  /* Product previews: intentional surfaces and readable sample data. */
  .dashboard { color: var(--ink); border-color: #c9d2e2; border-radius: 16px; box-shadow: 0 24px 60px #060e242b; min-height: 0; }
  .home-hero .dashboard-sidebar, .product-hero .dashboard-sidebar { width: 106px; font-size: 12px; background: #172544; padding: 18px 7px; }
  .dashboard-sidebar > div:not(.mini-monogram) { padding: 11px 5px; gap: 6px; }
  .dashboard-sidebar .dash-side-selected { background: #4045e8; }
  .mini-monogram { margin-bottom: 28px; }
  .mini-monogram span { color: #ffad6f; }
  .dashboard-topbar, .product-hero .dashboard-topbar { height: 47px; padding-inline: 18px; font-size: 12px; }
  .sample-label { font-size: 12px !important; color: #516079; background: #edf1f8; }
  .dashboard-body, .product-hero .dashboard-body { padding: 20px 18px 16px; }
  .small-muted { font-size: 12px; letter-spacing: .06em; color: #5f6e85; }
  .dash-title { align-items: flex-start; flex-wrap: wrap; }
  .dash-title h3, .product-hero .dash-title h3 { font-size: 20px; margin-top: 5px; }
  .dash-date { font-size: 12px; padding: 6px 8px; }
  .metric-grid, .product-hero .metric-grid { gap: 12px; margin-top: 22px; grid-template-columns: 1.35fr 1fr 1fr; }
  .metric-grid > div { min-width: 0; }
  .metric-grid > div + div, .product-hero .metric-grid > div + div { padding-left: 12px; }
  .metric-grid > div > span, .metric-grid small { font-size: 12px; line-height: 1.6; color: #606d83; }
  .metric-grid strong, .product-hero .metric-grid strong { font-size: 22px; white-space: nowrap; }
  .metric-grid strong span { font-size: 12px; }
  .dash-visual-grid, .product-hero .dash-visual-grid { grid-template-columns: minmax(0, 2fr) minmax(95px, 1fr); gap: 16px; }
  .chart-heading strong { font-size: 12px; }
  .chart-heading > span, .chart-labels { font-size: 12px; color: #65738b; }
  .chart-svg, .product-hero .chart-svg { height: 108px; }
  .dash-settlement { padding-left: 12px; }
  .donut, .product-hero .donut { width: 78px; height: 78px; padding: 9px; }
  .donut small { font-size: 12px; }
  .dash-settlement > div:not(.donut), .dash-settlement > div > strong { font-size: 12px; }
  .dash-table-row { grid-template-columns: 1.35fr 1fr .8fr .9fr; font-size: 12px; gap: 7px; padding-block: 11px; }
  .dash-table-row.head { font-size: 12px; color: #637188; }
  .merchant-avatar { flex-shrink: 0; font-size: 12px; }
  .pill-success, .pill-review { font-size: 12px; }
  .floating-core, .portal.dashboard-scene .floating-core { margin: -3px auto 0; border-radius: 12px; padding: 14px 18px; box-shadow: 0 12px 25px #06112514; color: var(--ink); }
  .floating-core strong { font-size: 12px; }
  .floating-core div > span { font-size: 12px; color: #5f6d83; }
  .visual-caption { color: #627189 !important; font-size: 12px !important; }
  .home-hero .visual-caption, .product-hero .dashboard-scene .visual-caption, .dark-section .visual-caption { color: #b0bed6 !important; }
  .code-panel { border-radius: 18px; border-color: #465579; background: #14223e; box-shadow: 0 24px 60px #030c2426; }
  .code-header, .code-footer { background: #1c2b49; border-color: #3a4a68; }
  .code-header, .code-disclaimer { color: #aebfdb; }
  .code-tag { color: #ffba84; }
  .code-panel pre { font-size: 13px; }
  .code-tabs { border-color: #3a4a68; }
  .code-tabs button[aria-selected=true] { color: #ffbb89; border-color: #ff9c53; }
  .syntax-key { color: #b3bdff; }
  .syntax-string { color: #a1ddcd; }
  .routing-window { color: var(--ink); border-radius: 20px; padding: 26px; }
  .route-engine { background: #233c80; border-radius: 14px; }
  .route-engine > span { color: #c4d1ff; }
  .engine-icon { background: #ffffff15; border-color: #ffffff30; color: #ffb67d; }
  .route-engine > div:last-child > span { background: #ffffff10; border-color: #ffffff30; color: #e6ebff; }
  .route-branches .selected-route { background: #edf0ff !important; border-color: #a4b2ef !important; }

  /* Editorial rhythm and the three product identities. */
  .section { padding: 100px 0; }
  .section-heading { margin-bottom: 48px; }
  .section-heading p:not(.eyebrow) { font-size: 16px; }
  .split-section { gap: 80px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .audience-strip { background: #f6f8fc; border-color: #e1e6ef; }
  .audience-strip > .container { padding-block: 30px; gap: 50px; }
  .audience-strip p { font-size: 13px; color: #66718a; }
  .audience-strip span { font-size: 14px; color: #253752; }
  .audience-strip .icon { color: var(--purple); }
  .product-grid { gap: 24px; }
  .product-card { display: flex; flex-direction: column; position: relative; border-radius: 20px; padding: 30px; border-color: #dce3f0; box-shadow: 0 4px 10px #13254a03; }
  .product-card:hover { border-color: #a7b5ef; box-shadow: 0 20px 46px #13254a12; }
  .product-card-top { margin-bottom: 28px; }
  .product-card-top > .icon { width: 28px; height: 28px; }
  .product-number { letter-spacing: .12em; color: #68768e; }
  .product-card h3 { font-size: 34px; }
  .product-card h3 br { display: initial; }
  .product-card > p { flex: 1; font-size: 15px; line-height: 1.85; }
  .product-card:nth-child(2) { background: #f3f5ff; border-color: #dbe1fb; }
  .product-card:nth-child(3) { background: #fff9f3; border-color: #efdfd0; }
  .product-card:nth-child(3) .product-card-top { color: #a9501c; }
  .product-card > .text-link { margin-top: 22px; padding-top: 22px; }
  .mini-preview { flex-shrink: 0; border-radius: 12px; height: 155px; padding: 22px; margin-top: 25px; }
  .mini-portal { background: #edf1ff; }
  .mini-bars b { background: #94a8f6; }
  .mini-api { background: #14233f; }
  .mini-acquirer { background: #ffecd9; }
  .mini-acquirer b { color: #fff; background: #ae5825; }
  .mini-acquirer > span, .mini-acquirer small, .mini-acquirer > .icon { color: #87502c; }
  .mini-portal > span { color: #566895; }
  .dark-section { background: #101a32; }
  .dark-section .eyebrow { color: #ffb67e; }
  .dark-section .body-copy, .dark-section .section-heading p:not(.eyebrow) { color: #b9c8df; }
  .editorial-points { gap: 25px; }
  .editorial-points > div > span { color: #b8c7ff; }
  .stack-visual { border-radius: 20px; background: #162541; border-color: #3c4e70; padding: 28px; }
  .stack-top-label { color: #c3cfe6; font-size: 12px; }
  .stack-layer { background: #1c3053; border-color: #3c5277; border-radius: 12px; padding: 24px 18px; }
  .stack-layer h3 { color: #fff; font-size: 21px; }
  .stack-layer p { color: #b7c6de; font-size: 12px; }
  .stack-layer .stack-number { color: #aabfe8; }
  .stack-layer > .icon { color: #aabaff; }
  .stack-layer.emphasized { background: #3545a4; border-color: #6578d9; }
  .stack-layer.emphasized > .icon { color: #ffc08e; }
  .stack-connector small { color: #b0bfd6; font-size: 12px; }
  .stack-partners > span { color: #bccae1; border-color: #405779; background: #ffffff04; }
  .stack-visual .visual-caption { color: #aebfd8 !important; }
  .lifecycle-ribbon { border-color: #dfe5f0; padding-block: 34px; }
  .lifecycle-ribbon > div > span { color: var(--purple); font-size: 13px; font-weight: 650; }
  .lifecycle-ribbon strong { font-size: 18px; }
  .lifecycle-ribbon small { color: #5c6b82; }
  .wide-feature { border-radius: 20px; padding: 40px; }
  .violet-tint { background: #edf1ff; border-color: #dce3ff; }
  .mint-tint { background: #fff3e7; border-color: #f6dfc9; }
  .mint-tint > .icon, .mint-tint .text-link { color: #a45524; }
  .wide-feature h3 { font-size: 33px; }
  .wide-feature p { font-size: 16px; line-height: 1.8; }
  .feature-grid { gap: 24px; }
  .feature-card { border-radius: 18px; padding: 30px; border-color: #e0e5ef; }
  .feature-card .icon-box { margin-bottom: 24px; }
  .feature-card h3 { font-size: 23px; }
  .feature-card p { font-size: 15px; line-height: 1.8; }
  .brand-preview, .white-label-card { border-radius: 20px; box-shadow: var(--shadow); }
  .brand-preview { background: #f3f6fc; border-color: #dce3ee; }
  .brand-square { background: var(--purple); }
  .checklist-banner-right > div > span { color: var(--purple); font-weight: 500; }
  .checklist-banner { gap: 70px; }
  .role-board, .recovery-panel, .architecture-flow { background: #172742; border-color: #3f5376; border-radius: 18px; }
  .role-tabs button, .scenario-tabs button { border-radius: 8px; min-height: 44px; }
  .role-tabs button[aria-selected=true], .scenario-tabs button[aria-selected=true] { background: #ffb477; color: #15203a; }
  .role-content { gap: 70px; }
  .role-content > div > p { font-size: 16px; }
  .step-grid h3 { font-size: 21px; }
  .step-grid p, .financial-grid p, .protocol-list p { font-size: 15px; }
  .financial-grid { border-radius: 20px; }
  .financial-grid > article { padding: 30px; }
  .financial-number { color: #a55223; }
  .scheme-note { border-radius: 18px; padding: 30px; }
  .scheme-note p { font-size: 15px; }
  .faq-list summary { font-size: 17px; padding-block: 27px; }
  .faq-list details p { font-size: 15px; }
  .faq-list details[open] summary { color: var(--purple); }

  /* Buyer tools keep native controls, clear focus states and saved behavior. */
  .checklist-view-tabs button { font-size: 15px; min-height: 64px; }
  .checklist-intro p { font-size: 15px; }
  .status-legend { background: #f6f8fc; border-radius: 14px; padding: 22px; }
  .search-field, .checklist-toolbar select { border-radius: 9px; min-height: 50px; }
  .checklist-toolbar select, .search-field input { font-size: 14px; }
  .capability-table-wrap, .launch-list { border-radius: 16px; }
  .capability-table th { color: #4d5f7a; background: #eef3fb; font-size: 12px; }
  .capability-table label { font-size: 16px; }
  .capability-table td p, .capability-table small { color: #5d6b80; }
  .capability-table tr:has(input:checked) { background: #eff3ff; }
  .capability-table input[type=checkbox] { width: 20px; height: 20px; }
  .selection-bar { background: #fff; border-radius: 14px; border-color: #bfcbed; box-shadow: 0 8px 32px #162f571c; }
  .readiness-summary { background: #edf2ff; border-color: #d5def5; border-radius: 16px; }
  .launch-item h3 { font-size: 18px; }
  .launch-item select { min-height: 44px; border-radius: 8px; }
  .launch-category { color: #5e6d86; }
  .big-search { color: var(--ink); border-radius: 14px; box-shadow: 0 20px 35px #020a201f; }
  .suggested-searches > span, .search-privacy { color: #b6c5dd; }
  .suggested-searches button { color: #d9e4fa; border-color: #566783; background: #ffffff07; border-radius: 7px; min-height: 36px; }
  .suggested-searches button:hover { color: #fff; background: #334770; }
  .search-result { border-radius: 16px; padding: 30px; }
  .search-result h2 { font-size: 28px; }
  .search-result p { font-size: 16px; }
  .search-empty { border-radius: 16px; }
  .large-statement { font-size: clamp(32px, 3.4vw, 48px); line-height: 1.3; }
  .about-statement > div p, .prose p { font-size: 16px; line-height: 1.9; }
  .company-contact-strip { border-color: #dce3ef; }

  /* Contact: a branded introduction and a calm, high-contrast form. */
  .contact-section { position: relative; padding: 80px 0 90px; background: radial-gradient(ellipse at 0% 90%, #223c73, transparent 55%), #101a32; }
  .contact-grid { gap: 76px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); align-items: start; }
  .contact-copy { color: #fff; padding-top: 24px; }
  .contact-copy .eyebrow { color: #b8c6ff; }
  .contact-copy h1 { font-size: clamp(44px, 4.6vw, 66px); line-height: 1.1; }
  .contact-copy h1 span { color: var(--brand-orange); }
  .contact-copy .hero-description { color: #c1cde3; font-size: 17px; }
  .contact-methods { border-color: #4a5b7a; margin-top: 40px; }
  .contact-methods > a { border-color: #4a5b7a; padding-block: 24px; }
  .contact-methods strong { color: #fff; font-size: 18px; }
  .contact-methods small { color: #b9c8e0; font-size: 12px; letter-spacing: .1em; }
  .contact-methods .icon-box { color: #ffb47d; background: #ffffff09; border: 1px solid #536385; }
  .contact-methods > a:hover strong { color: #ffbb89; }
  .discussion-topics { margin-top: 35px; }
  .discussion-topics p { color: #bdcce2; font-size: 15px; line-height: 1.85; }
  .contact-card { border-radius: 22px; padding: 38px; background: #fff; border: 1px solid #dae1ee; box-shadow: 0 24px 70px #050e2633; }
  .contact-card h2 { font-size: 30px; line-height: 1.2; }
  .contact-card > p { font-size: 15px; margin-top: 12px; }
  .contact-card label { font-size: 13px; font-weight: 600; color: #394963; }
  .contact-card input:not([type=checkbox]), .contact-card select, .contact-card textarea { border-color: #cbd4e3; background: #f8faff; border-radius: 9px; padding: 13px 14px; font-size: 16px; min-height: 48px; }
  .contact-card input:not([type=checkbox]):focus, .contact-card select:focus, .contact-card textarea:focus { background: white; }
  .contact-card input::placeholder, .contact-card textarea::placeholder { font-size: 14px; color: #6a778d; }
  .contact-card .consent-label { font-weight: 400; font-size: 13px; color: #58677e; }
  .form-help { font-size: 12px; color: #627088; }
  .contact-card .button { font-size: 15px; min-height: 54px; }
  .contact-result { border-radius: 14px; }

  /* A blue endcap and a navy footer give every page a recognizable finish. */
  .cta-section { position: relative; overflow: hidden; background: #3543ce; }
  .cta-inner { padding-block: 84px; gap: 60px; }
  .cta-inner h2 { font-size: clamp(36px, 4vw, 56px); }
  .cta-inner .eyebrow { color: #e0e6ff; }
  .cta-inner p:not(.eyebrow) { color: #d8e0ff; font-size: 16px; max-width: 570px; }
  .cta-actions { gap: 24px; position: relative; z-index: 1; }
  .cta-actions .text-link { color: white; font-size: 14px; }
  .cta-orbit { border-color: #ffffff24; box-shadow: 0 0 0 60px #ffffff05, 0 0 0 120px #ffffff04; }
  .site-footer { background: #0e182e; color: #e5ecfa; padding: 66px 0 24px; }
  .footer-top { gap: 42px; padding-bottom: 44px; }
  .footer-brand > a { display: block; width: 220px; padding: 0; background: none; border-radius: 0; margin-bottom: 22px; }
  .footer-brand > a img { display: block; width: 100%; height: auto; }
  .footer-brand p { font-size: 16px; color: #c2cde3; line-height: 1.7; }
  .footer-signature { color: #9fafcb; font-size: 12px; line-height: 1.9; }
  .footer-signature a:hover { color: #ffb67c; }
  .footer-top > div > h3 { font-size: 13px; color: #fff; letter-spacing: .02em; font-weight: 600; }
  .footer-top > div:not(.footer-brand) > a { color: #b4c2dc; font-size: 14px; margin-top: 14px; }
  .footer-top > div:not(.footer-brand) > a:hover { color: #ffb77f; }
  .footer-note { border-color: #2a3b58; color: #9aabc7; font-size: 12px; line-height: 1.9; padding-block: 26px; }
  .footer-bottom { border-color: #2a3b58; color: #a3b3ce; font-size: 12px; padding-top: 24px; }
  .footer-bottom a:hover { color: #fff; }
  .footer-bottom .icon { color: #ffaf72; }
  .cookie-settings-link { border: 0; padding: 0; background: transparent; color: inherit; font: inherit; line-height: inherit; }
  .cookie-settings-link:hover { color: #fff; }
  .cookie-consent { position: fixed; z-index: 200; left: 28px; right: 28px; bottom: 24px; max-width: 1180px; margin-inline: auto; color: var(--ink); background: #fff; border: 1px solid #ccd6e6; border-radius: 18px; box-shadow: 0 28px 90px #08132942; }
  .cookie-consent-inner { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 22px 24px; }
  .cookie-consent-icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; color: #fff; background: var(--purple); border-radius: 14px; }
  .cookie-consent-icon .icon { width: 24px; height: 24px; }
  .cookie-consent-copy { min-width: 0; }
  .cookie-consent-kicker { margin-bottom: 5px; color: var(--purple); font-size: 12px; line-height: 1.4; font-weight: 700; letter-spacing: .12em; }
  .cookie-consent-copy h2 { font-size: 22px; line-height: 1.2; letter-spacing: -.025em; }
  .cookie-consent-copy > p:not(.cookie-consent-kicker) { max-width: 760px; margin-top: 7px; font-size: 13px; line-height: 1.65; color: #56647b; }
  .cookie-consent-copy > a { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; color: var(--purple); font-size: 12px; font-weight: 650; }
  .cookie-consent-copy > a .icon { width: 14px; height: 14px; }
  .cookie-consent-actions { display: flex; align-items: center; gap: 10px; }
  .cookie-consent-actions .button { min-width: 108px; min-height: 46px; padding: 11px 17px; font-size: 13px; }
}

@media screen and (max-width: 1199px) {
  .container { width: calc(100% - 64px); }
  .nav-wrap { gap: 20px; }
  .brand { width: 196px; }
  .primary-nav { gap: 22px; }
  .nav-actions { margin-left: 0; gap: 10px; }
  .hero-grid, .split-hero { gap: 34px; }
  .home-hero h1 { font-size: 58px; }
  .home-hero .dashboard-sidebar, .product-hero .dashboard-sidebar { display: none; }
  .split-section, .contact-grid, .role-content { gap: 44px; }
  .product-card { padding: 25px; }
  .product-card h3 { font-size: 30px; }
  .mini-preview { padding-inline: 16px; }
  .contact-card { padding: 30px; }
  .footer-top { gap: 28px; }
}

@media screen and (max-width: 1023px) {
  .home-hero { padding-top: 64px; }
  .hero-grid, .split-hero { grid-template-columns: minmax(0, 1fr); gap: 50px; }
  .hero-copy { max-width: 700px; }
  .home-hero h1 { font-size: 72px; }
  .hero-description { max-width: 580px; }
  .hero-visual, .product-hero-visual { width: 100%; max-width: 720px; margin-inline: auto; }
  .home-hero .dashboard-sidebar, .product-hero .dashboard-sidebar { display: block; width: 116px; }
  .audience-strip > .container { gap: 26px; flex-direction: column; align-items: stretch; }
  .audience-strip .container > div { gap: 24px; }
  .product-grid { grid-template-columns: minmax(0, 1fr); }
  .product-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); column-gap: 36px; padding: 30px; }
  .product-card-top, .product-card h3, .product-card > p { grid-column: 1; }
  .product-card-top { margin-bottom: 18px; }
  .product-card .mini-preview { grid-column: 2; grid-row: 1 / 4; align-self: center; margin: 0; height: 175px; }
  .product-card .badge { grid-column: 1; }
  .product-card > .text-link { grid-column: 1 / -1; }
  .product-card > p { margin-top: 16px; }
  .split-section, .role-content { gap: 44px; }
  .contact-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; max-width: 760px; }
  .contact-copy { padding-top: 0; }
  .contact-methods { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
  .contact-copy h1 { max-width: 650px; }
  .contact-card { padding: 40px; }
  .footer-brand { display: block; }
}

@media screen and (max-width: 860px) {
  .nav-wrap { height: 78px; gap: 16px; }
  .brand { width: 200px; }
  .primary-nav { padding: 22px 32px 32px; border-bottom: 1px solid #d9e1f0; background: #fff; }
  .primary-nav > a, .nav-trigger { font-size: 17px; min-height: 50px; }
  .nav-dropdown { box-shadow: none; border-radius: 12px; }
  .nav-toggle { border: 1px solid #dbe2ee; border-radius: 10px; width: 44px; height: 44px; }
  .nav-actions .search-button { width: 44px; height: 44px; }
  .split-section, .role-content { grid-template-columns: minmax(0, 1fr); }
  .section { padding-block: 76px; }
  .stack-visual { max-width: 700px; width: 100%; margin-inline: auto; }
  .feature-card { padding: 26px; }
  .feature-card h3 { font-size: 22px; }
  .financial-grid > article { padding: 26px; }
  .cta-inner { padding-block: 64px; gap: 34px; }
  .footer-top { gap: 34px; }
  .cookie-consent { left: 18px; right: 18px; bottom: 18px; }
  .cookie-consent-inner { grid-template-columns: auto minmax(0, 1fr); padding: 20px; }
  .cookie-consent-actions { grid-column: 2; }
}

@media screen and (max-width: 599px) {
  .container { width: calc(100% - 40px); }
  .nav-wrap { height: 76px; gap: 10px; }
  .brand { width: 180px; }
  .primary-nav { padding-inline: 20px; }
  .home-hero, .product-hero { padding: 52px 0 42px; }
  .home-hero h1 { font-size: clamp(39px, 11.2vw, 64px); line-height: 1.1; }
  .home-hero h1 span { white-space: normal; }
  .eyebrow { font-size: 12px; gap: 10px; margin-bottom: 24px; letter-spacing: .1em; }
  .eyebrow-line { width: 17px; height: 6px; }
  .hero-description, .product-hero .hero-description, .compact-hero .hero-description { font-size: 16px; line-height: 1.8; margin-top: 23px; }
  .hero-actions { gap: 10px; align-items: stretch; }
  .button { white-space: normal; max-width: 100%; }
  .hero-actions .button { font-size: 13px; gap: 14px; padding: 13px 16px; min-height: 50px; }
  .hero-footnote { font-size: 12px; line-height: 1.7; margin-top: 25px; gap: 10px; }
  .hero-grid, .split-hero { gap: 42px; }
  .hero-visual::before { inset: -10px -8px 42px; border-radius: 20px; transform: rotate(-2deg); }
  .home-hero .dashboard-sidebar, .product-hero .dashboard-sidebar { display: none; }
  .dashboard-topbar, .product-hero .dashboard-topbar { padding-inline: 14px; }
  .dashboard-body, .product-hero .dashboard-body { padding: 18px 14px 14px; }
  .dash-title h3, .product-hero .dash-title h3 { font-size: 19px; }
  .dash-date { font-size: 12px; }
  .dash-title { gap: 10px; }
  .metric-grid, .product-hero .metric-grid { gap: 10px; }
  .metric-grid > div + div, .product-hero .metric-grid > div + div { padding-left: 10px; }
  .metric-grid strong, .product-hero .metric-grid strong { font-size: 20px; }
  .metric-grid > div > span, .metric-grid small { font-size: 12px; }
  .dash-visual-grid, .product-hero .dash-visual-grid { grid-template-columns: minmax(0, 1fr) 95px; gap: 12px; }
  .chart-heading { flex-wrap: wrap; gap: 4px; }
  .chart-heading strong { font-size: 12px; }
  .chart-heading > span, .chart-labels { font-size: 12px; }
  .chart-labels { flex-wrap: wrap; gap: 5px; }
  .chart-svg, .product-hero .chart-svg { height: 94px; }
  .donut, .product-hero .donut { width: 70px; height: 70px; }
  .dash-table-row { grid-template-columns: 1.4fr 1fr .8fr 1fr; gap: 5px; font-size: 12px; }
  .dash-table-row > span:first-child { gap: 5px; }
  .dash-table-row .merchant-avatar { display: none; }
  .pill-success, .pill-review { font-size: 12px; padding: 3px 4px; }
  .floating-core, .portal.dashboard-scene .floating-core, .product-hero .floating-core { margin: -2px auto 0; gap: 9px; padding: 13px 12px; max-width: 100%; }
  .floating-core > .icon { width: 21px; height: 21px; }
  .floating-core > .connection-dot { margin-left: 2px; }
  .home-hero .floating-core div > span, .product-hero .floating-core div > span { font-size: 12px; }
  .visual-caption { line-height: 1.7; font-size: 12px !important; }
  .product-hero h1, .compact-hero h1 { font-size: clamp(38px, 10.8vw, 56px); }
  .compact-hero { padding: 54px 0; }
  .release-note { flex-wrap: wrap; }
  .release-note > span:last-child { font-size: 12px; }
  .audience-strip > .container { padding-block: 26px; gap: 20px; }
  .audience-strip .container > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 18px; }
  .audience-strip span { font-size: 13px; gap: 10px; white-space: normal; min-width: 0; }
  .audience-strip .icon { width: 20px; height: 20px; }
  .section { padding-block: 62px; }
  .section-heading { margin-bottom: 32px; }
  .section-heading h2, .checklist-banner h2 { font-size: 35px; }
  .section-heading p:not(.eyebrow), .body-copy { font-size: 16px; }
  .product-card { display: block; padding: 26px; border-radius: 18px; }
  .product-card-top { margin-bottom: 24px; }
  .product-card h3 { font-size: 34px; }
  .product-card .mini-preview { margin-top: 24px; height: 158px; }
  .mini-acquirer { gap: 10px; }
  .mini-acquirer > span { font-size: 12px; }
  .stack-visual { padding: 20px; }
  .stack-top-label { font-size: 12px; letter-spacing: .07em; }
  .stack-layer { padding: 22px 14px; gap: 12px; }
  .stack-layer h3 { font-size: 17px; }
  .stack-layer p { font-size: 12px; line-height: 1.7; }
  .stack-layer .stack-number { display: none; }
  .stack-layer > .icon:first-of-type { width: 23px; height: 23px; }
  .stack-layer > .icon:last-child { width: 14px; height: 14px; }
  .stack-connector small { font-size: 12px; }
  .stack-partners > span { font-size: 12px; padding-inline: 5px; }
  .wide-feature { padding: 28px; }
  .wide-feature h3 { font-size: 30px; }
  .wide-feature p { font-size: 15px; }
  .feature-card { padding: 26px; }
  .feature-card p { font-size: 15px; }
  .lifecycle-ribbon { gap: 26px 20px; }
  .lifecycle-ribbon strong { font-size: 16px; }
  .lifecycle-ribbon small { font-size: 12px; }
  .checklist-banner { gap: 30px; }
  .brand-preview, .white-label-card { padding: 24px; }
  .brand-top { flex-wrap: wrap; }
  .brand-top > span:last-child { font-size: 12px; }
  .brand-rows > div { flex-wrap: wrap; }
  .role-tabs { gap: 6px; flex-wrap: wrap; justify-content: flex-start; }
  .role-tabs button { padding: 10px 12px; font-size: 13px; }
  .role-content { gap: 32px; padding-top: 32px; }
  .role-item { flex-wrap: wrap; }
  .role-item > div { flex: 1; }
  .role-item > span:last-child { font-size: 12px; }
  .role-content > div > p { font-size: 15px; }
  .code-header { flex-wrap: wrap; padding: 16px; gap: 10px; }
  .code-header > span:nth-child(2) { font-size: 12px; }
  .code-tag { font-size: 12px; }
  .code-panel pre { font-size: 12px; padding: 20px 16px; }
  .code-tabs button { font-size: 12px; padding-inline: 10px; min-height: 44px; }
  .code-disclaimer { font-size: 12px; }
  .routing-window { padding: 20px; }
  .routing-window-head { flex-wrap: wrap; gap: 10px; }
  .route-engine { padding-inline: 16px; }
  .route-engine > div:last-child { flex-wrap: wrap; }
  .route-engine > div:last-child > span { font-size: 12px; }
  .route-branches { gap: 6px; }
  .route-branches strong, .route-branches span { font-size: 12px; text-align: center; }
  .scenario-tabs { flex-wrap: wrap; gap: 6px; }
  .scenario-tabs button { flex: 1 1 auto; font-size: 12px; }
  .step-grid { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .step-grid p, .financial-grid p, .protocol-list p { font-size: 15px; }
  .scheme-note { padding: 24px; }
  .scheme-note .text-link { font-size: 13px; }
  .notice { padding: 18px; }
  .notice p { font-size: 13px; }
  .faq-list summary { font-size: 16px; padding-block: 23px; }
  .faq-list details p { font-size: 15px; }
  .checklist-view-tabs { gap: 20px; }
  .checklist-view-tabs button { font-size: 13px; }
  .status-legend { padding: 18px; }
  .status-legend > span { flex-wrap: wrap; font-size: 12px; }
  .capability-table-wrap { border-radius: 0; }
  .capability-table tr { border-radius: 14px; padding: 22px 18px; }
  .capability-table label { font-size: 16px; }
  .capability-table small, .capability-table td p { font-size: 13px; }
  .capability-table .badge { white-space: normal; }
  .selection-bar > div:last-child { grid-template-columns: 1fr 1fr 30px; }
  .selection-bar .button { font-size: 12px; gap: 5px; min-height: 44px; }
  .selection-bar > div:first-child { flex-wrap: wrap; gap: 6px; }
  .launch-item { padding: 22px 18px; }
  .launch-item h3 { font-size: 17px; }
  .launch-item select { font-size: 14px; }
  .readiness-summary { padding: 24px; }
  .planner-actions .button { font-size: 13px; }
  .big-search { padding: 10px; }
  .big-search .button { min-height: 48px; }
  .suggested-searches { gap: 9px; }
  .suggested-searches > span { flex-basis: 100%; }
  .search-result { padding: 24px; }
  .search-result h2 { font-size: 25px; }
  .search-result p { font-size: 15px; }
  .contact-section { padding: 50px 0 60px; }
  .contact-copy h1 { font-size: clamp(39px, 11vw, 56px); }
  .contact-copy .hero-description { font-size: 16px; }
  .contact-methods { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 28px; }
  .contact-methods strong { font-size: 17px; }
  .contact-card { padding: 26px 22px; border-radius: 18px; }
  .contact-card h2 { font-size: 28px; }
  .contact-card > p { font-size: 15px; }
  .form-grid { gap: 20px; }
  .contact-card .consent-label { font-size: 12px; }
  .discussion-topics p { font-size: 15px; }
  .cta-inner { padding-block: 60px; gap: 30px; }
  .cta-inner h2 { font-size: 38px; }
  .cta-inner p:not(.eyebrow) { font-size: 15px; }
  .cta-actions { width: 100%; align-items: flex-start; }
  .cta-actions .button { font-size: 14px; white-space: normal; text-align: left; }
  .cta-actions .text-link { font-size: 13px; }
  .site-footer { padding: 46px 0 26px; }
  .footer-top { gap: 34px 24px; }
  .footer-brand > a { width: 220px; }
  .footer-top > div > h3 { font-size: 14px; }
  .footer-top > div:not(.footer-brand) > a { font-size: 13px; }
  .footer-note, .footer-bottom { font-size: 12px; }
  .footer-bottom { gap: 16px; }
  .cookie-consent { left: 12px; right: 12px; bottom: 12px; border-radius: 16px; }
  .cookie-consent-inner { display: flex; flex-direction: column; align-items: stretch; gap: 15px; padding: 20px; }
  .cookie-consent-icon { width: 42px; height: 42px; }
  .cookie-consent-copy h2 { font-size: 21px; }
  .cookie-consent-copy > p:not(.cookie-consent-kicker) { font-size: 13px; line-height: 1.6; }
  .cookie-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
  .cookie-consent-actions .button { min-width: 0; width: 100%; }
}

@media screen and (max-width: 390px) {
  .product-card h3 { font-size: 30px; }
  .brand { width: 160px; }
  .nav-wrap { gap: 8px; }
  .nav-actions { gap: 0; }
  .hero-actions { flex-direction: column; }
  .hero-actions .button { justify-content: space-between; }
  .metric-grid, .product-hero .metric-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .metric-grid > div:first-child { grid-column: 1 / -1; padding-bottom: 10px; border-bottom: 1px solid var(--line); }
  .metric-grid > div:nth-child(2), .product-hero .metric-grid > div:nth-child(2) { padding-left: 0; border-left: 0; }
  .metric-grid strong, .product-hero .metric-grid strong { font-size: 24px; }
  .dash-date { font-size: 12px; }
  .dash-table-row { grid-template-columns: 1.1fr 1fr .8fr 1fr; font-size: 12px; }
  .dash-table-row.head, .pill-success, .pill-review { font-size: 12px; }
  .floating-core > .connection-dot { display: none; }
  .stack-visual { padding: 16px; }
  .stack-layer { padding: 20px 12px; gap: 10px; }
  .stack-layer h3 { font-size: 16px; }
  .stack-partners { flex-wrap: wrap; }
  .stack-partners > span { flex: 1 1 auto; }
  .checklist-view-tabs { gap: 14px; }
  .checklist-view-tabs button { font-size: 12px; gap: 6px; }
  .checklist-view-tabs button span { font-size: 12px; }
  .selection-bar > div:last-child { grid-template-columns: minmax(0, 1fr) 30px; }
  .selection-bar .button { grid-column: 1; justify-content: space-between; }
  .selection-bar .icon-button { grid-column: 2; grid-row: 1 / 3; }
  .contact-card { padding-inline: 20px; }
  .contact-methods strong { font-size: 15px; }
}

/* Small interaction cues for menus and controls. The existing reduced-motion
   rule in site.css removes them when the visitor requests less motion. */
@media screen and (prefers-reduced-motion: no-preference) {
  @keyframes merchant-menu-enter {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
  }
  @keyframes merchant-control-press {
    0% { transform: scale(.96); }
    65% { transform: scale(1.015); }
    100% { transform: scale(1); }
  }
  .nav-dropdown:not([hidden]) { animation: merchant-menu-enter 220ms ease-out both; }
  .nav-toggle, .nav-toggle .menu-lines, .nav-toggle .menu-lines::before,
  .nav-trigger > .icon, .button, .icon-button {
    transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
  }
  .nav-toggle[aria-expanded="true"] { background: #edf0ff; border-color: #9da8f6; }
  .button:not(:disabled):hover, a.button:hover, .icon-button:not(:disabled):hover { transform: translateY(-2px); }
  .button:not(:disabled):active, a.button:active, .icon-button:not(:disabled):active,
  .nav-trigger:active { transform: translateY(1px) scale(.98); }
  button:not(:disabled).is-pressed, a.button.is-pressed, summary.is-pressed {
    animation: merchant-control-press 260ms ease-out;
  }
}
@media screen and (max-width: 860px) and (prefers-reduced-motion: no-preference) {
  .primary-nav.is-open { animation: merchant-menu-enter 240ms ease-out both; }
}

@media print {
  .cookie-consent { display: none !important; }
}

/* Shared reading scale. Keep this after responsive presentation rules so smaller
   screens reflow content instead of reducing customer-facing text sizes. */
@media screen {
  :root {
    --text-caption: 12px;
    --text-label: 13px;
    --text-secondary: 14px;
    --text-body: 16px;
    --text-lead: 18px;
  }
  body { font-size: var(--text-body); line-height: 1.65; }
  h4 { font-size: 20px; line-height: 1.3; }
  .hero-description, .product-hero .hero-description,
  .compact-hero .hero-description, .contact-copy .hero-description {
    font-size: clamp(16px, 1.3vw, var(--text-lead)); line-height: 1.7;
  }
  .body-copy, .section-heading p:not(.eyebrow), .checklist-banner .section-heading p:not(.eyebrow), .product-card > p,
  .wide-feature p, .feature-card p, .role-content > div > p,
  .step-grid p, .financial-grid p, .scheme-note p, .protocol-list p,
  .faq-list details p, .checklist-intro p, .readiness-summary p,
  .launch-item p, .about-statement > div p, .prose p,
  .contact-card > p, .contact-result p, .discussion-topics p,
  .search-result p, .search-empty p, .not-found p, dialog p,
  .cta-inner p:not(.eyebrow), .cta-inner > div > p:not(.eyebrow) {
    font-size: var(--text-body); line-height: 1.7;
  }
  .editorial-points p, .split-intro > p, .security-boundaries p,
  .recovery-panel #scenario-content > p {
    font-size: var(--text-body); line-height: 1.7;
  }
  .notice p, .section-footnote, .prose .section-footnote,
  .release-note > span:last-child, .local-storage-note, .search-privacy,
  .code-disclaimer, .architecture-flow > p, .footer-brand p,
  .footer-note, .form-help, .contact-card .consent-label {
    font-size: var(--text-secondary); line-height: 1.65;
  }
  .eyebrow, .hero-footnote, .cookie-consent-kicker,
  .readiness-summary .eyebrow, .company-contact-strip .eyebrow,
  .discussion-topics .eyebrow, .cta-inner .eyebrow {
    font-size: var(--text-caption); line-height: 1.6;
  }
  .button, .hero-actions .button, .button.nav-button,
  .nav-actions .button, .cta-actions .button, .contact-card .button,
  .cookie-consent-actions .button { font-size: 15px; min-height: 48px; }
  .button.small, .selection-bar .button, .planner-actions .button,
  .contact-result .button, .big-search .button, dialog .button {
    font-size: var(--text-secondary); min-height: 44px;
  }
  .text-link, .product-card .text-link, .scheme-note .text-link,
  .cta-actions .text-link, .text-button, .checklist-result-bar .text-button,
  .planner-actions .text-button, .small-dropdown a,
  .nav-dropdown .menu-bottom, .cookie-consent-copy > a {
    font-size: var(--text-secondary); line-height: 1.6;
  }
  .nav-dropdown a small { font-size: var(--text-secondary); }
  .nav-dropdown a strong { font-size: var(--text-body); }
  .page-subnav .container { flex-wrap: wrap; gap: 16px 30px; overflow: visible; }
  .page-subnav a { white-space: normal; font-size: var(--text-secondary); }
  .audience-strip p, .audience-strip span { font-size: var(--text-secondary); }
  .checklist-banner-right > div p { font-size: var(--text-secondary); }
  .product-card > p { min-height: 0; }
  .mini-preview, .product-card .mini-preview { height: auto; min-height: 165px; }
  .mini-api code { overflow-wrap: anywhere; }
  .stack-layer p, .brand-rows > div, .brand-bottom, .inline-status,
  .white-label-action, .role-item small, .scenario-steps > span {
    font-size: var(--text-secondary); line-height: 1.65;
  }
  .stack-layer h3 { font-size: clamp(18px, 1.5vw, 22px); line-height: 1.3; }
  .stack-connector { min-height: 38px; height: auto; padding-block: 5px; }
  .stack-connector small { font-size: var(--text-caption); line-height: 1.5; }
  .stack-partners { flex-wrap: wrap; }
  .stack-partners > span { white-space: normal; }
  .brand-rows > div, .role-item, .white-label-top { flex-wrap: wrap; }
  .role-item > div { min-width: 0; }
  .role-item strong, .white-label-top strong, .white-label-stats strong,
  .editorial-points strong { font-size: var(--text-body); line-height: 1.5; }
  .theme-option, .role-tabs button, .scenario-tabs button,
  .code-tabs button { font-size: var(--text-secondary); min-height: 44px; }
  .code-header { flex-wrap: wrap; }
  .code-panel pre { font-size: var(--text-secondary); line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
  .code-tabs { flex-wrap: wrap; }
  .resource-row, .resource-row > span:nth-child(2) { font-size: var(--text-secondary); line-height: 1.65; }
  .resource-row strong { font-size: var(--text-body); line-height: 1.5; }
  .resource-head, .resource-owner { font-size: var(--text-caption); }
  .resource-row > * { min-width: 0; overflow-wrap: anywhere; }
  .routing-input strong, .route-branches strong { font-size: var(--text-secondary); }
  .routing-input small, .route-branches span { color: var(--muted); }
  .route-branches > div { min-width: 0; overflow-wrap: anywhere; text-align: center; }
  .route-engine > div:last-child { flex-wrap: wrap; }
  .badge, .release-note .badge, .product-card .badge, .protocol-list .badge,
  .status-legend .badge, .capability-table .badge {
    font-size: var(--text-label); line-height: 1.5; padding: 7px 10px;
    max-width: 100%; white-space: normal; flex-shrink: 0;
  }
  .protocol-list .badge { max-width: 175px; }
  .protocol-list article { flex-wrap: wrap; gap: 16px; }
  .protocol-list article > div { flex: 1 1 230px; }
  .status-legend { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 24px; }
  .status-legend > span { flex-wrap: wrap; align-content: start; font-size: var(--text-secondary); line-height: 1.6; color: var(--muted); }
  .capability-table { font-size: var(--text-secondary); }
  .capability-table th { font-size: var(--text-caption); }
  .capability-table th:first-child { width: 88px; }
  .capability-table label { font-size: var(--text-body); }
  .capability-table td p, .table-product { font-size: var(--text-secondary); line-height: 1.65; }
  .capability-table small { font-size: var(--text-caption); line-height: 1.6; }
  .capability-table th:last-child { width: 205px; }
  .capability-table td { padding-block: 24px; }
  .selection-bar strong { font-size: var(--text-body); }
  .selection-bar span { font-size: var(--text-caption); }
  .selection-bar > div:last-child { flex-wrap: wrap; }
  .launch-item select, .checklist-toolbar select, .search-field input,
  .big-search input { font-size: var(--text-body); }
  .launch-category, .readiness-summary .eyebrow { font-size: var(--text-caption); }
  .checklist-view-tabs button { font-size: var(--text-secondary); }
  .launch-item h3 { font-size: 18px; }
  .contact-card label { font-size: var(--text-secondary); }
  .contact-methods strong { overflow-wrap: anywhere; }
  .contact-methods > a > div { min-width: 0; }
  .footer-top > div:not(.footer-brand) > a { font-size: var(--text-secondary); overflow-wrap: anywhere; }
  .footer-top > div > h3 { font-size: var(--text-body); }
  .footer-signature, .footer-bottom { font-size: var(--text-caption); }
  .cookie-consent-copy > p:not(.cookie-consent-kicker) { font-size: var(--text-body); line-height: 1.65; }
  .cookie-consent-inner { align-items: start; }
  .cookie-consent-actions { flex-wrap: wrap; }
  .cookie-consent { max-height: calc(100dvh - 32px); overflow-y: auto; }

  /* The illustrative dashboard adapts to its own column width. */
  .dashboard-scene { container-type: inline-size; }
  .home-hero .dashboard-sidebar, .product-hero .dashboard-sidebar { width: 128px; font-size: var(--text-caption); }
  .dashboard-sidebar > div:not(.mini-monogram) { white-space: normal; }
  .dashboard-topbar, .product-hero .dashboard-topbar { height: auto; min-height: 50px; padding-block: 10px; flex-wrap: wrap; font-size: var(--text-caption); }
  .sample-label, .visual-caption { font-size: var(--text-caption) !important; }
  .small-muted, .dash-date, .metric-grid > div > span, .metric-grid small,
  .metric-grid strong span, .chart-heading > span, .chart-labels, .donut small,
  .dash-settlement > div:not(.donut), .dash-settlement > div > strong,
  .dash-table-row.head, .merchant-avatar, .pill-success, .pill-review,
  .home-hero .floating-core div > span, .product-hero .floating-core div > span {
    font-size: var(--text-caption); line-height: 1.5;
  }
  .chart-heading { flex-wrap: wrap; }
  .chart-heading strong { font-size: var(--text-secondary); }
  .chart-labels { flex-wrap: wrap; gap: 4px 8px; }
  .dash-table-row { font-size: var(--text-secondary); grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, .9fr) minmax(0, 1fr); gap: 10px; }
  .dash-table-row > span { min-width: 0; overflow-wrap: anywhere; }
  .pill-success, .pill-review { max-width: 100%; white-space: normal; }
  .floating-core { width: fit-content; }
}

@container (max-width: 620px) {
  .home-hero .dashboard-sidebar, .product-hero .dashboard-sidebar { display: none; }
}
@container (max-width: 480px) {
  .dash-table-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 12px 20px; padding-block: 16px; }
  .dash-table-row.head { display: none; }
  .dash-table-row > span:first-child { display: block; }
  .dash-table-row > span::before { display: block; font-size: 12px; color: var(--muted); font-weight: 400; margin-bottom: 4px; }
  .dash-table-row > span:nth-child(1)::before { content: "Merchant"; }
  .dash-table-row > span:nth-child(2)::before { content: "Reference"; }
  .dash-table-row > span:nth-child(3)::before { content: "Amount"; }
  .dash-table-row > span:nth-child(4)::before { content: "Status"; }
  .dash-table-row .merchant-avatar { display: none; }
  .dash-table-row .pill-success, .dash-table-row .pill-review { background: transparent; padding: 0; font-size: 14px; }
  .metric-grid, .product-hero .metric-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .metric-grid > div:first-child { grid-column: 1 / -1; border-bottom: 1px solid var(--line); padding-bottom: 12px; }
  .metric-grid > div:nth-child(2), .product-hero .metric-grid > div:nth-child(2) { border-left: 0; padding-left: 0; }
}
@media screen and (max-width: 1023px) {
  .capability-table th:nth-child(3) { width: 155px; }
  .capability-table th:last-child { width: 175px; }
  .capability-table td, .capability-table th { padding-inline: 14px; }
  .selection-bar { flex-wrap: wrap; }
  .cookie-consent-inner { grid-template-columns: auto minmax(0, 1fr); }
  .cookie-consent-actions { grid-column: 2; }
}
@media screen and (max-width: 599px) {
  .hero-actions .button { flex: 0 1 auto; }
  .hero-actions, .hero-actions .button { min-width: 0; }
  .status-legend { grid-template-columns: minmax(0, 1fr); }
  .selection-bar { position: static; }
  .selection-bar > div:last-child { grid-template-columns: minmax(0, 1fr) 32px; gap: 10px; }
  .selection-bar .button { grid-column: 1; justify-content: space-between; padding: 12px; }
  .selection-bar .icon-button { grid-column: 2; grid-row: 1 / 3; }
  .checklist-view-tabs { gap: 18px; }
  .checklist-view-tabs button { flex-wrap: wrap; gap: 6px; text-align: left; }
  .checklist-toolbar { grid-template-columns: minmax(0, 1fr); }
  .capability-table td { padding-block: 0; }
  .white-label-stats { grid-template-columns: minmax(0, 1fr); }
  .cookie-consent-inner { align-items: stretch; }
  .cookie-consent-actions { width: 100%; }
  .cookie-consent-actions .button { flex: 1; }
  .mini-acquirer { gap: 8px; }
}
