/* Controlled SEO site engine 3.0 | site salt: 240e2d1d */
:root {
  --primary: #e60012;
  --accent: #ffb800;
  --background: #2b0000;
  --surface: #3d0505;
  --text: #ffffff;
  --muted: color-mix(in srgb, var(--text) 68%, transparent);
  --border: color-mix(in srgb, var(--text) 14%, transparent);
  --soft: color-mix(in srgb, var(--primary) 9%, var(--surface));
  --radius: 8px;
  --section-gap: 48px;
  --max-width: 1220px;
  --font-display: "Segoe UI", Tahoma, Arial, sans-serif;
  --font-body: "Segoe UI", Tahoma, Arial, sans-serif;
  --shadow: 0 18px 55px color-mix(in srgb, var(--text) 13%, transparent);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body { margin: 0; padding-bottom: 0; color: var(--text); background: var(--background); font-family: var(--font-body); font-size: 16px; line-height: 1.65; transition: padding-bottom .28s ease; }
body.xci-has-bottom-register { padding-bottom: var(--xci-bottom-register-space, 128px); }
body[data-typography="editorial"] h1, body[data-typography="editorial"] h2, body[data-typography="editorial"] h3 { font-family: var(--font-display); font-weight: 720; letter-spacing: -.025em; }
body[data-typography="compact"] { font-size: 15px; line-height: 1.52; }
body[data-typography="rounded"] h1, body[data-typography="rounded"] h2, body[data-typography="rounded"] h3 { letter-spacing: -.035em; }
body[data-background="soft-grid"] { background-color: var(--background); background-image: linear-gradient(color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px); background-size: 34px 34px; }
body[data-background="paper"] { background-color: var(--background); background-image: radial-gradient(color-mix(in srgb, var(--text) 5%, transparent) .7px, transparent .8px); background-size: 7px 7px; }
body[data-background="ambient-glow"] { background: radial-gradient(circle at 8% 20%, color-mix(in srgb, var(--primary) 15%, transparent), transparent 34rem), radial-gradient(circle at 90% 62%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 38rem), var(--background); }
body[data-background="split-tone"] { background: linear-gradient(90deg, var(--background) 0 48%, color-mix(in srgb, var(--surface) 72%, var(--background)) 48% 100%); }
body, button, a { -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
p, h1, h2, h3, li, td, th, summary, a { overflow-wrap: break-word; word-break: normal; }
h1, h2, h3, p { margin-top: 0; }
button, input, textarea, select { font: inherit; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 999; top: 8px; left: 8px; padding: 10px 14px; color: white; background: #111827; transform: translateY(-140%); }
.skip-link:focus { transform: translateY(0); }

.site-header { --header-ink: var(--text); --header-muted: color-mix(in srgb, var(--header-ink) 76%, transparent); --header-panel: color-mix(in srgb, var(--surface) 94%, transparent); position: sticky; z-index: 80; top: 0; border-bottom: 1px solid color-mix(in srgb, var(--header-ink) 16%, transparent); color: var(--header-ink); background: var(--header-panel); box-shadow: 0 8px 28px color-mix(in srgb, var(--text) 7%, transparent); backdrop-filter: blur(18px); }
.site-header[data-surface="dark"] { --header-ink: #f8fbff; --header-muted: color-mix(in srgb, white 76%, transparent); --header-panel: #091426; border-bottom-color: color-mix(in srgb, var(--accent) 60%, transparent); }
.site-header[data-surface="light"] { --header-ink: var(--text); --header-panel: color-mix(in srgb, var(--surface) 96%, white); }
.site-header[data-surface="gradient"] { --header-ink: #fff; --header-muted: color-mix(in srgb, white 82%, transparent); --header-panel: linear-gradient(105deg, color-mix(in srgb, var(--primary) 88%, #071426), var(--primary) 54%, var(--accent)); }
.site-header[data-surface="brand"] { --header-panel: var(--primary); }
.site-header[data-surface="brand"][data-text="light"] { --header-ink: #fff; --header-muted: color-mix(in srgb, white 82%, transparent); }
.site-header[data-surface="glass"] { --header-panel: color-mix(in srgb, var(--surface) 78%, transparent); }
.site-header[data-surface="warm"] { --header-panel: linear-gradient(100deg, #fff9ee, color-mix(in srgb, var(--accent) 10%, #fffdf8)); }
.header-inner { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: clamp(14px, 2vw, 30px); width: min(1320px, calc(100% - 36px)); min-height: 76px; margin: 0 auto; }
.site-header[data-layout="wide"] .header-inner { width: min(1440px, calc(100% - 32px)); min-height: 82px; }
.site-header[data-layout="compact"] .header-inner { min-height: 66px; gap: clamp(10px, 1.4vw, 21px); }
.site-header[data-layout="floating"] { border-bottom: 0; background: transparent; box-shadow: none; }
.site-header[data-layout="floating"] .header-inner { width: min(1340px, calc(100% - 32px)); margin-top: 10px; padding: 0 18px; border: 1px solid color-mix(in srgb, var(--header-ink) 15%, transparent); border-radius: calc(var(--radius) + 8px); background: var(--header-panel); box-shadow: 0 14px 38px color-mix(in srgb, var(--text) 14%, transparent); }
.brand { display: inline-flex; align-items: center; min-width: 0; white-space: nowrap; }
.brand-desktop { display: block; width: clamp(158px, 15vw, 222px); line-height: 0; }
.brand-wordmark { display: block; width: 100%; max-width: 222px; height: 52px; object-fit: contain; object-position: left center; filter: drop-shadow(0 3px 4px color-mix(in srgb, black 28%, transparent)); }
.brand-wordmark--manual { width: auto; max-width: 222px; }
.brand-mobile { display: none; align-items: center; gap: 8px; }
.brand-mark { flex: 0 0 38px; width: 38px; height: 38px; }
.brand-short { max-width: 104px; overflow: hidden; font-size: 16px; font-weight: 900; letter-spacing: -.025em; text-overflow: ellipsis; }
.site-nav { display: flex; min-width: 0; align-items: center; justify-content: center; gap: clamp(7px, .95vw, 15px); }
.site-nav a { position: relative; flex: 0 0 auto; padding: 25px 1px 22px; color: var(--header-muted); font-size: clamp(12px, .9vw, 14px); font-weight: 760; line-height: 1.2; white-space: nowrap; }
.site-nav a::after { position: absolute; right: 0; bottom: 15px; left: 0; height: 2px; content: ""; border-radius: 2px; background: var(--accent); transform: scaleX(0); transition: transform .2s ease; }
.site-nav a:hover, .site-nav a[aria-current="page"] { color: var(--header-ink); }
.site-nav a:hover::after, .site-nav a[aria-current="page"]::after { transform: scaleX(1); }
.site-header[data-active="top-line"] .site-nav a::after { top: 0; bottom: auto; height: 3px; }
.site-header[data-active="soft-block"] .site-nav a[aria-current="page"], .site-header[data-active="pill"] .site-nav a[aria-current="page"] { padding-right: 11px; padding-left: 11px; color: var(--header-ink); background: color-mix(in srgb, var(--accent) 16%, transparent); }
.site-header[data-active="soft-block"] .site-nav a[aria-current="page"] { border-radius: 8px; }
.site-header[data-active="pill"] .site-nav a[aria-current="page"] { border: 1px solid color-mix(in srgb, var(--accent) 58%, transparent); border-radius: 999px; }
.site-header[data-active="soft-block"] .site-nav a[aria-current="page"]::after, .site-header[data-active="pill"] .site-nav a[aria-current="page"]::after { display: none; }
.auth-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 9px; }
.auth-button { display: inline-grid; min-width: 88px; min-height: 40px; place-items: center; padding: 8px 15px; border: 1px solid color-mix(in srgb, var(--header-ink) 38%, transparent); border-radius: 10px; color: var(--header-ink); font-size: 13px; font-weight: 850; line-height: 1; white-space: nowrap; transition: transform .18s ease, box-shadow .18s ease; }
.auth-button:hover { transform: translateY(-1px); }
.auth-register { border-color: var(--accent); color: #101827; background: var(--accent); box-shadow: 0 8px 20px color-mix(in srgb, var(--accent) 28%, transparent); }
.site-header[data-cta="metallic"] .auth-register { border-color: #f0c44e; background: linear-gradient(#ffe47e, #e7ad1d); box-shadow: inset 0 1px white, 0 8px 22px color-mix(in srgb, #d89b12 34%, transparent); }
.site-header[data-cta="contrast-solid"] .auth-register { border-color: #fff; background: #fff; }
.site-header[data-cta="glass-solid"] .auth-login { background: color-mix(in srgb, var(--surface) 28%, transparent); backdrop-filter: blur(8px); }
.nav-toggle { display: none; width: 44px; height: 42px; padding: 9px; border: 1px solid color-mix(in srgb, var(--header-ink) 28%, transparent); border-radius: 11px; color: var(--header-ink); background: color-mix(in srgb, var(--header-ink) 10%, transparent); cursor: pointer; }
.nav-toggle span { display: block; width: 100%; height: 3px; margin: 4px 0; border-radius: 2px; background: var(--accent); transition: transform .2s ease, opacity .2s ease; }
.site-header.menu-open .nav-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.site-header.menu-open .nav-toggle span:nth-child(2) { opacity: 0; }
.site-header.menu-open .nav-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.source-frame { display: block; min-width: 0; }
.hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--border); background: linear-gradient(135deg, var(--soft), var(--background)); }
.hero::before { position: absolute; top: -180px; right: -100px; width: 480px; height: 480px; border-radius: 50%; content: ""; background: color-mix(in srgb, var(--accent) 13%, transparent); filter: blur(2px); }
.hero-inner { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, .88fr); align-items: center; gap: clamp(34px, 6vw, 86px); width: min(var(--max-width), calc(100% - 36px)); min-height: clamp(510px, 65vw, 680px); margin: 0 auto; padding: 76px 0; }
.hero-copy, .hero-media, .content-card, .article-item, .service-item, .step-item, .section-heading > div { min-width: 0; }
.eyebrow { margin-bottom: 16px; color: var(--primary); font-size: 13px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.hero h1 { max-width: 780px; margin-bottom: 20px; font-size: clamp(38px, 6vw, 72px); line-height: 1.06; letter-spacing: -.045em; }
.hero-subtitle { max-width: 720px; margin-bottom: 28px; color: var(--muted); font-size: clamp(17px, 1.7vw, 21px); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 11px 22px; border: 1px solid transparent; border-radius: calc(var(--radius) * .75); font-weight: 800; transition: transform .2s ease, box-shadow .2s ease; }
.button:hover { transform: translateY(-2px); }
.button--primary { color: white; background: var(--primary); box-shadow: 0 13px 28px color-mix(in srgb, var(--primary) 28%, transparent); }
.button--secondary { border-color: var(--border); background: var(--surface); }
.hero-media { position: relative; }
.hero-image { width: 100%; aspect-ratio: 16 / 10; border: 1px solid color-mix(in srgb, var(--surface) 65%, transparent); border-radius: calc(var(--radius) * 1.5); object-fit: cover; box-shadow: var(--shadow); }
.hero-media--css { display: grid; min-height: 390px; place-items: center; border: 1px solid var(--border); border-radius: calc(var(--radius) * 1.5); background: linear-gradient(145deg, var(--primary), color-mix(in srgb, var(--primary) 45%, var(--accent))); box-shadow: var(--shadow); }
.hero-media--css span { position: absolute; display: block; border: 1px solid color-mix(in srgb, white 38%, transparent); border-radius: 50%; }
.hero-media--css span:nth-child(1) { width: 68%; aspect-ratio: 1; }
.hero-media--css span:nth-child(2) { width: 43%; aspect-ratio: 1; }
.hero-media--css span:nth-child(3) { width: 17%; aspect-ratio: 1; background: color-mix(in srgb, white 22%, transparent); }
.hero[data-variant="2"] .hero-inner { grid-template-columns: minmax(340px, .9fr) minmax(0, 1fr); }
.hero[data-variant="2"] .hero-media { grid-column: 1; grid-row: 1; }
.hero[data-variant="2"] .hero-copy { grid-column: 2; }
.hero[data-variant="3"] .hero-inner { grid-template-columns: minmax(0, 1.2fr) minmax(300px, .65fr); }
.hero[data-variant="3"] .hero-image { aspect-ratio: 4 / 5; }
.hero[data-variant="4"] .hero-inner { min-height: 590px; }
.hero[data-variant="4"] .hero-copy { padding: 38px; border: 1px solid var(--border); border-radius: calc(var(--radius) * 1.4); background: color-mix(in srgb, var(--surface) 84%, transparent); box-shadow: var(--shadow); backdrop-filter: blur(8px); }
.hero[data-variant="5"] .hero-inner { display: block; padding: 88px 0 52px; text-align: center; }
.hero[data-variant="5"] .hero-copy { width: min(820px, 100%); margin: 0 auto 38px; }
.hero[data-variant="5"] .hero-actions { justify-content: center; }
.hero[data-variant="5"] .hero-media { width: min(1000px, 100%); margin: 0 auto; }
.hero[data-variant="5"] .hero-image { aspect-ratio: 21 / 8; }

.hero-support { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 28px; }
.hero-support-item { display: grid; min-width: 90px; gap: 1px; }
.hero-support-item strong { color: var(--primary); font-size: clamp(18px, 2vw, 25px); line-height: 1.1; }
.hero-support-item span { color: var(--muted); font-size: 12px; }
.hero-support[data-variant="benefits-chips"] .hero-support-item, .hero-support[data-variant="payments"] .hero-support-item { display: flex; min-width: 0; align-items: center; gap: 8px; padding: 9px 13px; border: 1px solid var(--border); border-radius: 999px; background: color-mix(in srgb, var(--surface) 88%, transparent); }
.hero-support[data-variant="benefits-chips"] .hero-support-item strong, .hero-support[data-variant="payments"] .hero-support-item strong { font-size: 15px; }
.hero-support[data-variant="benefits-chips"] .hero-support-item span, .hero-support[data-variant="payments"] .hero-support-item span { font-size: 12px; }
.hero > .hero-support[data-position="hero-bottom"] { position: relative; z-index: 2; width: min(var(--max-width), calc(100% - 36px)); margin: -32px auto 28px; padding: 16px 20px; border: 1px solid var(--border); border-radius: var(--radius); background: color-mix(in srgb, var(--surface) 94%, transparent); box-shadow: 0 14px 34px color-mix(in srgb, var(--text) 10%, transparent); }
.hero[data-variant="5"] .hero-copy > .hero-support { justify-content: center; }

.trust-strip { position: relative; z-index: 2; border-bottom: 1px solid var(--border); background: var(--surface); }
.trust-inner { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: min(var(--max-width), calc(100% - 36px)); margin: 0 auto; }
.trust-item { display: flex; gap: 13px; padding: 21px clamp(12px, 2.5vw, 30px); }
.trust-item + .trust-item { border-left: 1px solid var(--border); }
.trust-item > span { display: grid; flex: 0 0 28px; width: 28px; height: 28px; place-items: center; border-radius: 50%; color: white; background: var(--primary); }
.trust-item strong { display: block; margin-bottom: 3px; font-size: 14px; }
.trust-item p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }

.page-shell { width: min(var(--max-width), calc(100% - 36px)); margin: 0 auto; padding: var(--section-gap) 0 calc(var(--section-gap) * 1.4); }
.page-shell[data-layout="editorial-flow"], .page-shell[data-layout="minimal-index"] { width: min(var(--max-width), calc(100% - 36px)); }
.page-shell[data-layout="banded-stack"] { width: 100%; max-width: none; padding-top: 0; }
.module-sequence { display: grid; gap: var(--section-gap); width: 100%; }
.architecture-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--section-gap); align-items: start; }
.module-row { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: clamp(16px, 2vw, 28px); width: 100%; min-width: 0; align-items: start; }
.module-row .content-section { grid-column: 1 / -1; width: 100%; min-width: 0; margin: 0; }
.module-row--pair .content-section[data-row-role="pair-start"], .module-row--pair .content-section[data-row-role="pair-end"] { grid-column: span 6; height: 100%; }
.banded-sequence { gap: 0; }
.banded-sequence .content-section { border-right: 0; border-left: 0; border-radius: 0; }
.banded-sequence .content-section .section-inner { width: min(var(--max-width), calc(100% - 36px)); margin: 0 auto; }
.minimal-sequence { gap: calc(var(--section-gap) * .55); }
