:root {
  --ink: #111a31;
  --ink-2: #202a44;
  --muted: #5d667b;
  --muted-2: #8992a6;
  --blue: #104ee7;
  --blue-dark: #0a3bc0;
  --blue-soft: #e9eeff;
  --blue-pale: #f0f3ff;
  --page: #f8f8fd;
  --section: #f1f3fc;
  --white: #ffffff;
  --border: #e2e6f1;
  --border-strong: #cdd3e3;
  --green: #0a9b73;
  --amber: #b56b09;
  --shadow-sm: 0 8px 24px rgba(24, 40, 90, 0.07);
  --shadow-md: 0 22px 60px rgba(32, 52, 112, 0.12);
  --shadow-blue: 0 12px 28px rgba(16, 78, 231, 0.25);
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 28px;
  --container: 1180px;
  --font-display: 'Manrope', 'Inter', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, sans-serif;
  --font-mono: 'Inter', system-ui, sans-serif;
  --paper: var(--page);
  --paper-2: var(--blue-pale);
  --text-on-paper: var(--ink);
  --text-on-paper-dim: var(--muted);
  --teal-dark: var(--blue);
  --ease: cubic-bezier(.2,.8,.2,1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 82px; -webkit-text-size-adjust: 100%; }
body { margin: 0; overflow-x: hidden; background: var(--page); color: var(--ink); font-family: var(--font-body); font-size: 16px; line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.menu-open, body.modal-open { overflow: hidden; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { border: 0; padding: 0; font: inherit; color: inherit; background: none; cursor: pointer; }
h1, h2, h3, h4, p, ul { margin: 0; }
ul { padding: 0; list-style: none; }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.section { padding: 112px 0; }
.skip-link { position: fixed; top: 12px; left: -9999px; z-index: 1000; padding: 12px 18px; border-radius: 10px; background: var(--ink); color: var(--white); font-weight: 700; }
.skip-link:focus { left: 12px; }

.btn { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 22px; border: 1px solid transparent; border-radius: 12px; font-size: 14px; font-weight: 600; white-space: nowrap; transition: transform .35s var(--ease), box-shadow .35s var(--ease), background .3s, border-color .3s; }
.btn:hover { transform: translateY(-3px); }
.btn:active { transform: translateY(0) scale(.98); transition-duration: .12s; }
.btn svg, .text-link svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .35s var(--ease); }
.btn:hover svg { transform: translateX(3px); }
.btn-primary { background: var(--blue); color: var(--white); box-shadow: var(--shadow-blue); }
.btn-primary:hover { background: var(--blue-dark); }
.btn-secondary { border-color: var(--border-strong); background: rgba(255,255,255,.82); color: var(--ink); box-shadow: 0 3px 8px rgba(30,45,90,.05); }
.btn-secondary:hover { border-color: #abb6d2; background: var(--white); }
.btn-white { background: var(--white); color: var(--blue); box-shadow: 0 12px 28px rgba(0,0,0,.14); }
.btn-ghost { border-color: rgba(255,255,255,.35); color: var(--white); }
.btn-small { min-height: 42px; padding-inline: 20px; }
.btn-large { min-height: 52px; padding-inline: 26px; }
.btn-block { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--blue); font-weight: 700; font-size: 15px; }
.text-link:hover svg { transform: translateX(3px); }
.text-link svg { transition: transform .2s var(--ease); }

.site-header { position: fixed; inset: 0 0 auto; z-index: 100; height: 72px; border-bottom: 1px solid rgba(220,224,237,.8); background: rgba(249,249,253,.86); backdrop-filter: blur(18px); transition: box-shadow .4s var(--ease), background .4s var(--ease), border-color .4s var(--ease); }
.site-header.scrolled { background: rgba(255,255,255,.94); box-shadow: 0 8px 28px rgba(18,30,70,.08); }
.nav-wrap { height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.brand { width: 164px; flex: 0 0 auto; }
.brand img { width: 164px; height: auto; }
.desktop-nav { display: flex; align-items: center; gap: 30px; }
.desktop-nav a { position: relative; padding: 24px 0 22px; color: #485066; font-size: 14px; font-weight: 500; transition: color .2s; }
.desktop-nav a::after { content: ''; position: absolute; right: 0; bottom: 15px; left: 0; height: 2px; border-radius: 2px; background: var(--blue); transform: scaleX(0); transition: transform .2s var(--ease); }
.desktop-nav a:hover, .desktop-nav a.active { color: var(--blue); }
.desktop-nav a.active::after { transform: scaleX(1); }
.nav-actions { display: flex; align-items: center; gap: 12px; }
.theme-toggle { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid var(--border-strong); border-radius: 12px; background: rgba(255,255,255,.78); color: var(--ink); box-shadow: 0 3px 8px rgba(30,45,90,.05); transition: transform .3s var(--ease), background .3s, border-color .3s, color .3s; }
.theme-toggle:hover { transform: translateY(-2px) rotate(-4deg); border-color: #aeb9d5; background: var(--white); color: var(--blue); }
.theme-icon { width: 19px; height: 19px; grid-area: 1 / 1; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: opacity .25s, transform .35s var(--ease); }
.theme-sun { opacity: 0; transform: rotate(-35deg) scale(.65); }
[data-theme="dark"] .theme-moon { opacity: 0; transform: rotate(35deg) scale(.65); }
[data-theme="dark"] .theme-sun { opacity: 1; transform: rotate(0) scale(1); }
.login-button { min-width: 82px; }
.menu-toggle { width: 42px; height: 42px; display: none; align-items: center; justify-content: center; border: 1px solid var(--border); border-radius: 11px; }
.menu-toggle svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.menu-close { display: none; }
.menu-toggle[aria-expanded="true"] .menu-open { display: none; }
.menu-toggle[aria-expanded="true"] .menu-close { display: block; }
.mobile-nav { position: fixed; inset: 72px 0 auto; z-index: 99; display: none; padding: 18px 24px 26px; border-bottom: 1px solid var(--border); background: var(--white); box-shadow: var(--shadow-md); transform: translateY(-120%); transition: transform .3s var(--ease); }
.mobile-nav.open { transform: translateY(0); }
.mobile-nav > a:not(.btn) { padding: 13px 2px; border-bottom: 1px solid var(--border); font-weight: 600; }
.mobile-nav .btn { margin-top: 18px; }
.mobile-nav .portal-mobile + .btn { margin-top: 10px; }

.hero { position: relative; overflow: hidden; padding: 148px 0 52px; background: linear-gradient(180deg, #fafaff 0%, #f4f6ff 72%, #f7f8fd 100%); }
.hero::before { content: ''; position: absolute; inset: 0; opacity: .36; background-image: linear-gradient(rgba(31,76,190,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(31,76,190,.045) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, black, transparent 76%); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(8px); pointer-events: none; animation: ambient-drift 14s ease-in-out infinite alternate; }
.hero-glow-one { width: 520px; height: 520px; top: -180px; left: 22%; background: radial-gradient(circle, rgba(83,126,255,.15), transparent 68%); }
.hero-glow-two { width: 500px; height: 500px; top: 90px; right: -220px; background: radial-gradient(circle, rgba(139,108,255,.12), transparent 68%); animation-delay: -7s; animation-direction: alternate-reverse; }
.hero-inner { position: relative; z-index: 1; }
.hero-copy { width: min(880px, 100%); margin: 0 auto; text-align: center; }
.badge { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 25px; padding: 7px 13px; border: 1px solid #d3dcff; border-radius: 999px; background: #e7ecff; color: #18357e; box-shadow: inset 0 1px 0 rgba(255,255,255,.7); font-size: 12px; font-weight: 700; }
.badge svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.hero h1 { font-family: var(--font-display); font-size: clamp(44px, 6vw, 72px); line-height: 1.08; letter-spacing: -.045em; }
.hero h1 em { color: var(--blue); font-style: normal; }
.hero-brand-glow { color: var(--blue); text-shadow: 0 0 0 rgba(16,78,231,0); animation: brand-glow 4.8s ease-in-out infinite; }
.hero-copy > p { width: min(760px, 100%); margin: 24px auto 0; color: var(--muted); font-size: clamp(17px, 2vw, 20px); line-height: 1.7; }
.hero-actions { display: flex; justify-content: center; gap: 14px; margin-top: 34px; }
.hero-trust { display: flex; justify-content: center; flex-wrap: wrap; gap: 24px; margin-top: 24px; color: #626b80; font-size: 13px; }
.hero-trust li { display: inline-flex; align-items: center; gap: 7px; }
.hero-trust svg { width: 15px; height: 15px; fill: none; stroke: var(--blue); stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; }

.dashboard-frame { position: relative; width: calc(100% - 8px); margin: 72px auto 0; overflow: hidden; border: 0; border-radius: 18px; background: #0d1838; box-shadow: 0 32px 80px rgba(18,39,99,.18); }
.dashboard-image { width: 100%; height: auto; background: #f5f7fc; opacity: 1; transform: scale(1.001); transition: transform 1.2s var(--ease), opacity .2s ease; }
.dashboard-image.is-switching { opacity: .35; }
.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; }
.window-bar { height: 38px; display: flex; align-items: center; gap: 7px; padding: 0 15px; border: 0; background: linear-gradient(90deg, #0c1736, #10275f); }
.window-bar span { width: 7px; height: 7px; border-radius: 50%; background: #7d8bad; }
.window-bar span:first-child { background: #ffb7ae; }
.window-bar span:nth-child(2) { background: #ffd991; }
.window-bar span:nth-child(3) { background: #9ce1bf; }
.window-bar b { margin-left: auto; margin-right: auto; color: rgba(255,255,255,.55); font-size: 8px; font-weight: 600; letter-spacing: .03em; }

.dashboard-ui { min-height: 620px; display: grid; grid-template-columns: 194px 1fr; background: #f5f7fc; font-size: 10px; }
.dash-sidebar { position: relative; padding: 17px 13px; border-right: 1px solid #e5e8f1; background: var(--white); }
.dash-brand { display: flex; align-items: center; gap: 8px; padding: 0 4px 15px; color: #171f35; }
.dash-brand img { width: 28px; height: 28px; padding: 6px; border-radius: 8px; background: var(--blue); filter: invert(1); }
.dash-brand strong { font-size: 10px; }
.dash-search { margin: 4px 0 9px; padding: 9px 10px; border: 1px solid #e7e9f1; border-radius: 8px; color: #8a91a4; }
.dash-sidebar ul { display: grid; gap: 4px; }
.dash-sidebar li { display: flex; align-items: center; gap: 8px; padding: 8px 9px; border-radius: 7px; color: #687087; font-weight: 500; }
.dash-sidebar li.active { background: #eaf0ff; color: var(--blue); font-weight: 700; }
.dash-sidebar li svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.dash-sidebar li:first-child svg { fill: currentColor; stroke: none; }
.dash-security { position: absolute; right: 13px; bottom: 15px; left: 13px; display: flex; align-items: center; gap: 9px; padding: 11px; border: 1px solid #dde4fa; border-radius: 10px; background: #f7f9ff; }
.dash-security svg { width: 19px; height: 19px; fill: none; stroke: var(--blue); stroke-width: 1.7; }
.dash-security div { display: grid; line-height: 1.25; }
.dash-security b { font-size: 8px; }
.dash-security small { color: #8991a5; font-size: 6px; }
.dash-main { min-width: 0; }
.dash-top { height: 50px; display: flex; align-items: center; justify-content: space-between; padding: 0 18px; border-bottom: 1px solid #e5e8f1; background: var(--white); color: #7d8598; font-size: 8px; }
.dash-top > div { display: flex; align-items: center; gap: 7px; color: #2a3248; }
.notify { color: var(--blue); font-size: 16px; }
.avatar { width: 23px; height: 23px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #dfe7ff; color: var(--blue); font-size: 7px; font-weight: 800; }
.dash-content { padding: 18px; }
.dash-title { display: flex; align-items: center; justify-content: space-between; }
.dash-title h3 { font-family: var(--font-display); font-size: 16px; line-height: 1.2; }
.dash-title p { margin-top: 2px; color: #8c94a7; font-size: 7px; }
.dash-title button { padding: 8px 11px; border-radius: 7px; background: var(--blue); color: var(--white); font-size: 8px; font-weight: 700; }
.metric-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 9px; margin-top: 15px; }
.metric { min-height: 85px; padding: 13px; border: 1px solid #e6e9f2; border-radius: 11px; background: var(--white); box-shadow: 0 5px 12px rgba(31,47,92,.035); }
.metric span, .metric small { display: block; color: #81899b; font-size: 7px; }
.metric strong { display: block; margin: 6px 0 7px; color: #151c2f; font-size: 20px; line-height: 1; }
.metric.primary { border-color: var(--blue); background: var(--blue); }
.metric.primary span, .metric.primary small { color: rgba(255,255,255,.75); }
.metric.primary strong { color: var(--white); }
.dash-panels { display: grid; grid-template-columns: 1.8fr .82fr; gap: 11px; margin-top: 11px; }
.chart-panel, .activity-panel { height: 218px; padding: 14px; border: 1px solid #e5e8f1; border-radius: 12px; background: var(--white); }
.panel-head { display: flex; align-items: flex-start; justify-content: space-between; }
.panel-head h4 { font-size: 10px; }
.panel-head span { display: block; color: #939bad; font-size: 6px; }
.panel-head > b { color: var(--blue); font-size: 7px; }
.bars { height: 130px; display: flex; align-items: flex-end; gap: 10px; margin: 13px 8px 0; border-bottom: 1px solid #dfe3ed; background: repeating-linear-gradient(to top, #eef1f7 0 1px, transparent 1px 32px); }
.bars i { width: 100%; height: var(--h); border-radius: 4px 4px 0 0; background: linear-gradient(180deg, #3d75f5, #114bcc); box-shadow: inset 0 1px rgba(255,255,255,.3); }
.bars .bar-1 { --h: 48%; }
.bars .bar-2 { --h: 62%; }
.bars .bar-3 { --h: 45%; }
.bars .bar-4 { --h: 74%; }
.bars .bar-5 { --h: 67%; }
.bars .bar-6 { --h: 84%; }
.bars .bar-7 { --h: 70%; }
.bars .bar-8 { --h: 92%; }
.bar-labels { display: flex; justify-content: space-around; margin-top: 6px; color: #9aa2b3; font-size: 5px; }
.activity-panel { text-align: center; }
.activity-panel .panel-head { text-align: left; }
.ring { width: 105px; height: 105px; display: grid; place-items: center; margin: 13px auto 6px; border-radius: 50%; background: conic-gradient(var(--blue) 0 72%, #e7eaf2 72% 100%); }
.ring::before { content: ''; grid-area: 1/1; width: 72px; height: 72px; border-radius: 50%; background: var(--white); }
.ring div { z-index: 1; grid-area: 1/1; display: grid; }
.ring strong { font-size: 14px; }
.ring span { color: #8b93a5; font-size: 6px; }
.activity-stats { display: flex; justify-content: space-around; color: #8a92a5; font-size: 6px; }
.activity-stats span { display: grid; }
.activity-stats b { color: var(--ink); font-size: 10px; }
.lead-table { margin-top: 11px; overflow: hidden; border: 1px solid #e5e8f1; border-radius: 12px; background: var(--white); }
.table-head { display: flex; justify-content: space-between; padding: 10px 13px; border-bottom: 1px solid #e9ecf4; }
.table-head span { color: var(--blue); font-weight: 700; }
.table-row { display: grid; grid-template-columns: 1.35fr 1fr 1fr .9fr .7fr; align-items: center; min-height: 34px; padding: 0 13px; border-bottom: 1px solid #f0f2f6; color: #596176; font-size: 7px; }
.table-row:last-child { border: 0; }
.table-row span:first-child { display: grid; }
.table-row small { color: #9aa1b0; font-size: 5px; }
.table-label { min-height: 25px; background: #fafbfe; color: #959cad; font-size: 6px; }
.status { padding: 4px 7px; border-radius: 999px; font-style: normal; font-weight: 700; }
.status.won { background: #e6f8f1; color: #087c5d; }
.status.follow { background: #fff2dd; color: #a46109; }

.section-heading { margin-bottom: 54px; }
.section-heading.centered { width: min(780px, 100%); margin-right: auto; margin-left: auto; text-align: center; }
.eyebrow { display: inline-block; margin-bottom: 13px; color: var(--blue); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.eyebrow.light { color: #a9c0ff; }
.section-heading h2, .workflow-copy h2, .proof-card h2, .faq-intro h2, .contact-copy h2 { font-family: var(--font-display); font-size: clamp(34px, 4.2vw, 52px); line-height: 1.14; letter-spacing: -.035em; }
.section-heading > p, .section-heading.centered > p, .split-heading > p { margin-top: 18px; color: var(--muted); font-size: 17px; line-height: 1.75; }
.split-heading { display: grid; grid-template-columns: 1.1fr .8fr; align-items: end; gap: 80px; }
.split-heading > p { margin: 0 0 2px; }

.advantage { background: var(--page); }
.advantage-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.feature-card { min-height: 300px; padding: 32px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--white); box-shadow: var(--shadow-sm); transition: transform .42s var(--ease), border-color .42s var(--ease), box-shadow .42s var(--ease); }
.feature-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.feature-icon { width: 50px; height: 50px; display: grid; place-items: center; margin-bottom: 28px; border-radius: 13px; background: #dfe5ff; color: #142b78; transition: transform .42s var(--ease), background .42s var(--ease), color .42s var(--ease); }
.feature-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.feature-card h3 { font-family: var(--font-display); font-size: 23px; line-height: 1.35; letter-spacing: -.02em; }
.feature-card p { margin-top: 14px; color: var(--muted); line-height: 1.75; }

.toolkit { background: var(--section); }
.toolkit-heading { max-width: 700px; }
.toolkit-heading h2 { font-family: var(--font-display); font-size: clamp(34px, 4.2vw, 52px); line-height: 1.14; letter-spacing: -.035em; }
.toolkit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.tool-card { min-height: 270px; padding: 28px; border: 1px solid rgba(210,216,233,.95); border-radius: 15px; background: rgba(255,255,255,.96); box-shadow: 0 3px 10px rgba(24,40,90,.045); transition: transform .42s var(--ease), border-color .42s var(--ease), box-shadow .42s var(--ease); }
.tool-card:hover { transform: translateY(-4px); border-color: #cbd6ff; box-shadow: var(--shadow-sm); }
.tool-icon { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 22px; border-radius: 11px; background: #e7edff; color: var(--blue); transition: transform .42s var(--ease), background .42s var(--ease), color .42s var(--ease); }
.tool-icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.tool-card h3 { font-family: var(--font-display); font-size: 20px; line-height: 1.3; letter-spacing: -.025em; }
.tool-card p { margin-top: 10px; color: var(--muted); font-size: 14px; line-height: 1.7; }

.comparison { background: var(--white); }
.comparison-heading { width: min(940px,100%) !important; }
.comparison-heading h2 em { color: var(--blue); font-style: normal; }
.comparison-heading p { width: min(760px,100%); margin-inline: auto; }
.comparison-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 42px; }
.comparison-column { display: grid; gap: 13px; }
.comparison-column > h3 { margin-bottom: 9px; font-family: var(--font-display); font-size: 22px; letter-spacing: -.02em; text-align: center; }
.comparison-without > h3 { color: #5e626e; }
.comparison-with > h3 { color: var(--blue); }
.comparison-column article { min-height: 97px; display: grid; grid-template-columns: 40px 1fr; align-items: start; gap: 14px; padding: 18px; border: 1px solid #e2e3e8; border-radius: 13px; background: #f7f7f8; }
.comparison-with article { border-color: #d5ddf8; background: #f0f3ff; }
.comparison-column article > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; background: #fce8e8; color: #5b6070; }
.comparison-with article > span { background: #bfdbff; color: #123d82; }
.comparison-column article svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.comparison-column article b { display: block; font-size: 14px; }
.comparison-column article p { margin-top: 2px; color: #606572; font-size: 13px; line-height: 1.55; }

.workflow { background: var(--white); }
.workflow-grid { display: grid; grid-template-columns: .9fr 1fr; align-items: center; gap: 90px; }
.workflow-copy > p { margin-top: 20px; color: var(--muted); font-size: 17px; }
.check-list { display: grid; gap: 20px; margin: 34px 0 32px; }
.check-list li { display: flex; align-items: flex-start; gap: 14px; }
.check-list li > span { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: var(--blue-soft); color: var(--blue); }
.check-list svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.check-list b { font-size: 15px; }
.check-list p { margin-top: 2px; color: var(--muted); font-size: 14px; }
.flow-visual { position: relative; padding: 25px; border: 1px solid #dfe5f2; border-radius: 24px; background: linear-gradient(150deg, #f7f9ff, #eef2ff); box-shadow: var(--shadow-md); }
.flow-top { display: flex; justify-content: space-between; padding: 0 3px 16px; border-bottom: 1px solid #dfe4ef; color: #5d667a; font-size: 12px; font-weight: 700; }
.flow-top b { display: flex; align-items: center; gap: 7px; color: var(--green); }
.flow-top i { width: 7px; height: 7px; border-radius: 50%; background: #10b981; box-shadow: 0 0 0 4px rgba(16,185,129,.12); }
.flow-line { position: absolute; top: 95px; bottom: 50px; left: 48px; width: 2px; overflow: hidden; background: #d8def0; }
.flow-line::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 0%, #6e91f4 38%, var(--blue) 52%, transparent 100%); transform: translateY(-100%); }
.flow-step { position: relative; z-index: 1; display: grid; grid-template-columns: 46px 1fr auto; align-items: center; gap: 14px; min-height: 79px; padding: 11px 14px 11px 0; border-bottom: 1px solid #e1e6f2; transition: background .35s var(--ease), transform .35s var(--ease); }
.flow-step:last-child { border: 0; }
.flow-step > span { width: 40px; height: 40px; display: grid; place-items: center; border: 5px solid #f3f6ff; border-radius: 50%; background: var(--white); color: var(--blue); font-size: 11px; font-weight: 800; box-shadow: 0 0 0 1px #d5dcf0; }
.flow-step.active > span { background: var(--blue); color: var(--white); box-shadow: 0 0 0 1px var(--blue), 0 8px 18px rgba(16,78,231,.23); }
.flow-step div { display: grid; }
.flow-step b { font-size: 14px; }
.flow-step small { color: #848da2; font-size: 11px; }
.flow-step em { padding: 5px 8px; border-radius: 999px; background: #e4ebff; color: var(--blue); font-size: 9px; font-style: normal; font-weight: 700; }

.business-types { background: var(--page); }
.business-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.business-card { padding: 29px; border: 1px solid var(--border); border-radius: 16px; background: var(--white); transition: transform .42s var(--ease), border-color .42s var(--ease), box-shadow .42s var(--ease); }
.business-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-sm); }
.business-card > span { display: inline-block; margin-bottom: 28px; color: var(--blue); font-family: var(--font-display); font-size: 12px; font-weight: 800; transition: transform .42s var(--ease); }
.business-card h3 { font-family: var(--font-display); font-size: 20px; }
.business-card p { margin-top: 10px; color: var(--muted); font-size: 14px; }

.proof { padding-top: 20px; background: var(--page); }
.proof-card { position: relative; overflow: hidden; display: grid; grid-template-columns: 1.05fr .8fr; gap: 80px; padding: 64px; border-radius: 26px; background: linear-gradient(135deg, #0d1b42, #0c329b); color: var(--white); box-shadow: var(--shadow-md); }
.proof-card::after { content: ''; position: absolute; width: 420px; height: 420px; right: -160px; bottom: -250px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; box-shadow: 0 0 0 50px rgba(255,255,255,.035), 0 0 0 100px rgba(255,255,255,.025); }
.proof-card p { margin-top: 20px; color: rgba(255,255,255,.7); }
.proof-points { position: relative; z-index: 1; display: grid; gap: 14px; align-content: center; }
.proof-points span { display: grid; padding: 17px 20px; border: 1px solid rgba(255,255,255,.15); border-radius: 13px; background: rgba(255,255,255,.07); color: rgba(255,255,255,.7); font-size: 13px; backdrop-filter: blur(8px); }
.proof-points b { margin-bottom: 2px; color: var(--white); font-size: 14px; }

.testimonials { overflow: hidden; padding-bottom: 96px; background: var(--page); }
.testimonials-head { position: relative; }
.testimonials-head .section-heading { max-width: 900px; margin-bottom: 46px; }
.testimonial-controls { display: none; justify-content: flex-end; gap: 9px; margin: -20px 0 24px; }
.testimonials.has-overflow .testimonial-controls { display: flex; }
.testimonial-controls button { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--border-strong); border-radius: 11px; background: var(--white); color: var(--ink); font-size: 19px; transition: border-color .2s, color .2s, transform .2s var(--ease); }
.testimonial-controls button:hover:not(:disabled) { transform: translateY(-2px); border-color: var(--blue); color: var(--blue); }
.testimonial-controls button:disabled { opacity: .38; cursor: default; }
.testimonial-track { display: grid; grid-auto-flow: column; grid-auto-columns: min(100%, 980px); gap: 22px; overflow-x: auto; padding: 2px 2px 18px; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-inline: contain; }
.testimonials:not(.has-overflow) .testimonial-track { justify-content: center; }
.testimonial-track::-webkit-scrollbar { display: none; }
.testimonial-card { min-height: 360px; overflow: hidden; border: 1px solid var(--border); border-radius: 18px; background: var(--white); box-shadow: 0 18px 48px rgba(25,43,95,.08); scroll-snap-align: start; }
.testimonial-copy { display: flex; flex-direction: column; min-width: 0; height: 100%; padding: 38px 42px 34px; }
.testimonial-rating { color: var(--blue); font-size: 21px; letter-spacing: .14em; }
.testimonial-card blockquote { max-width: 880px; margin: 24px 0 32px; color: #33415c; font-size: clamp(18px, 2vw, 23px); font-weight: 400; line-height: 1.58; letter-spacing: -.018em; }
.testimonial-author { position: relative; z-index: 1; display: flex; align-items: center; gap: 16px; margin-top: auto; padding-top: 22px; border-top: 1px solid var(--border); }
.testimonial-avatar { width: 58px; height: 58px; flex: 0 0 58px; border: 2px solid var(--blue); border-radius: 50%; object-fit: cover; box-shadow: 0 8px 22px rgba(25,43,95,.12); }
.testimonial-author cite { display: grid; font-style: normal; line-height: 1.4; }
.testimonial-author cite b { font-family: var(--font-display); font-size: 15px; }
.testimonial-author cite span { color: var(--muted); font-size: 12px; }
.testimonial-author .testimonial-name { display: inline-flex; align-items: center; gap: 6px; width: fit-content; }
.testimonial-author .verified-badge { width: 17px; height: 17px; display: inline-grid; flex: 0 0 17px; place-items: center; border-radius: 50%; background: var(--blue); color: #fff; box-shadow: 0 0 0 3px rgba(16,78,231,.1); }
.testimonial-author .verified-badge svg { width: 11px; height: 11px; fill: none; stroke: currentColor; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }

.pricing { background: var(--white); }
.billing-selector { width: fit-content; display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; margin: -12px auto 0; padding: 5px; border: 1px solid var(--border); border-radius: 15px; background: var(--page); box-shadow: inset 0 1px 3px rgba(25,45,95,.04); }
.billing-option { min-width: 126px; display: grid; gap: 1px; padding: 10px 16px; border: 1px solid transparent; border-radius: 10px; color: var(--muted); line-height: 1.2; transition: color .2s, background .2s, border-color .2s, box-shadow .2s; }
.billing-option span { font-size: 13px; font-weight: 750; }
.billing-option small { color: var(--green); font-size: 9px; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.billing-option:hover { color: var(--blue); }
.billing-option.active { border-color: #d9e1fb; background: var(--white); color: var(--ink); box-shadow: 0 5px 16px rgba(25,45,95,.08); }
.billing-context { margin: 14px auto 0; color: var(--muted); font-size: 11px; text-align: center; }
.billing-context strong { color: var(--green); }
.pricing-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; align-items: stretch; margin-top: 42px; }
.price-card { position: relative; display: flex; flex-direction: column; padding: 28px 24px 24px; border: 1px solid var(--border); border-radius: 18px; background: var(--white); box-shadow: var(--shadow-sm); transition: transform .42s var(--ease), border-color .42s var(--ease), box-shadow .42s var(--ease); }
.price-card.featured { border: 2px solid var(--blue); background: linear-gradient(180deg, #f8faff 0, #fff 24%); box-shadow: 0 22px 48px rgba(16,78,231,.16); }
.popular { position: absolute; top: -24px; left: 50%; min-width: 194px; display: grid; grid-template-columns: 24px 1fr; align-items: center; padding: 8px 14px 8px 10px; border: 2px solid var(--white); border-radius: 999px; background: linear-gradient(110deg, #104ee7, #0a36ad); color: var(--white); box-shadow: 0 10px 24px rgba(16,78,231,.28); transform: translateX(-50%); }
.popular svg { width: 16px; height: 16px; grid-row: 1 / 3; place-self: center; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.popular span { font-size: 10px; font-weight: 850; letter-spacing: .065em; line-height: 1.25; text-transform: uppercase; }
.popular small { color: rgba(255,255,255,.72); font-size: 8px; font-weight: 600; line-height: 1.2; }
.price-head h3 { font-family: var(--font-display); font-size: 21px; }
.price-head p { margin-top: 3px; color: var(--muted); font-size: 12px; }
.price { margin-top: 22px; }
.price del { display: block; color: #9aa1b1; font-size: 13px; }
.price strong { display: block; margin-top: 3px; color: var(--blue); font-family: var(--font-display); font-size: 37px; line-height: 1.05; letter-spacing: -.04em; }
.price span { color: var(--muted); font-size: 11px; }
.price small { display: block; margin-top: 6px; color: var(--green); font-size: 10px; font-weight: 700; }
.price-note { min-height: 61px; margin: 17px 0; padding-bottom: 17px; border-bottom: 1px solid var(--border); color: var(--muted); font-size: 12px; }
.price-card ul { display: grid; gap: 10px; margin-bottom: 24px; }
.price-card li { position: relative; padding-left: 22px; color: #4e576b; font-size: 12px; }
.price-card li::before { content: '✓'; position: absolute; left: 0; top: 0; width: 15px; height: 15px; display: grid; place-items: center; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-size: 9px; font-weight: 900; }
.price-card .btn { margin-top: auto; }
.enterprise-heading { margin: 56px 0 20px; text-align: center; }
.enterprise-heading h3 { margin-top: 6px; font-family: var(--font-display); font-size: clamp(22px, 3vw, 30px); }
.enterprise-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.enterprise-card { display: grid; grid-template-columns: 1.1fr .9fr; gap: 28px 36px; padding: 32px; border: 1px solid #dce3f8; border-radius: 18px; background: linear-gradient(120deg, #f8faff, #eef3ff); transition: transform .42s var(--ease), border-color .42s var(--ease), box-shadow .42s var(--ease); }
.enterprise-card.enterprise-plus { background: linear-gradient(120deg, #0f1d43, #0b43cb); color: var(--white); box-shadow: 0 18px 44px rgba(15,49,142,.18); }
.enterprise-card > div span { color: var(--blue); font-size: 10px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.enterprise-card.enterprise-plus > div span { color: #a9c2ff; }
.enterprise-card h3 { margin-top: 3px; font-family: var(--font-display); font-size: 28px; }
.enterprise-card p { margin-top: 5px; color: var(--muted); font-size: 12px; }
.enterprise-card.enterprise-plus p { color: rgba(255,255,255,.7); }
.enterprise-card ul { display: grid; gap: 9px; align-content: start; }
.enterprise-card li { position: relative; padding-left: 20px; color: #4e576b; font-size: 12px; }
.enterprise-card.enterprise-plus li { color: rgba(255,255,255,.82); }
.enterprise-card li::before { content: '✓'; position: absolute; left: 0; color: var(--blue); font-weight: 900; }
.enterprise-card.enterprise-plus li::before { color: #9fbcff; }
.enterprise-card .btn { grid-column: 1 / -1; }
.pricing-terms { position: relative; overflow: hidden; display: grid; grid-template-columns: .7fr 1.65fr; gap: 48px; margin-top: 28px; padding: 42px; border: 1px solid #183774; border-radius: 22px; background: linear-gradient(135deg, #0c1736 0%, #0c2d84 100%); color: var(--white); box-shadow: 0 24px 58px rgba(15,40,108,.18); }
.pricing-terms::before { content: ''; position: absolute; width: 360px; height: 360px; top: -290px; left: -110px; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; box-shadow: 0 0 0 55px rgba(255,255,255,.025), 0 0 0 110px rgba(255,255,255,.018); }
.pricing-terms-intro { position: relative; z-index: 1; align-self: center; }
.pricing-terms-intro h3 { margin-top: 8px; font-family: var(--font-display); font-size: clamp(24px,3vw,32px); line-height: 1.18; letter-spacing: -.035em; }
.pricing-terms-intro p { max-width: 285px; margin-top: 14px; color: rgba(255,255,255,.68); font-size: 14px; line-height: 1.65; }
.pricing-terms-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; }
.pricing-terms-grid li { display: grid; grid-template-columns: 36px 1fr; align-items: start; gap: 12px; min-height: 88px; padding: 16px; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; background: rgba(255,255,255,.07); }
.pricing-terms-grid > li > span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: rgba(126,161,255,.2); color: #c5d4ff; font-size: 10px; font-weight: 850; letter-spacing: .04em; }
.pricing-terms-grid li div { display: grid; gap: 4px; }
.pricing-terms-grid li b { color: var(--white); font-size: 13px; }
.pricing-terms-grid li small { color: rgba(255,255,255,.65); font-size: 11px; line-height: 1.5; }

.faq { background: var(--section); }
.faq-heading { width: min(760px,100%) !important; }
.faq-list { width: min(940px,100%); display: grid; gap: 14px; margin-inline: auto; }
.faq-item { overflow: hidden; border: 1px solid var(--border-strong); border-radius: 13px; background: rgba(255,255,255,.92); transition: border-color .25s, box-shadow .25s; }
.faq-item.is-open { border-color: #bfcaf0; box-shadow: 0 10px 26px rgba(24,40,90,.06); }
.faq-question { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; text-align: left; font-family: var(--font-display); font-size: 16px; font-weight: 700; }
.faq-question svg { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: var(--ink); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s var(--ease); }
.faq-item.is-open .faq-question svg { transform: rotate(180deg); }
.faq-answer { max-height: 0; overflow: hidden; color: var(--muted); font-size: 14px; transition: max-height .35s var(--ease); }
.faq-answer > div { margin: 0 24px; padding: 16px 0 21px; border-top: 1px solid var(--border); line-height: 1.65; }

.contact { background: var(--page); }
.contact-layout { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 74px; }
.contact-copy p { max-width: 560px; margin-top: 22px; color: var(--muted); font-size: 17px; }
.contact-methods { display: grid; gap: 14px; margin-top: 30px; }
.contact-methods a { width: fit-content; display: flex; align-items: center; gap: 16px; transition: transform .25s var(--ease), color .25s; }
.contact-methods a:hover { transform: translateX(4px); color: var(--blue); }
.contact-methods a > span { width: 46px; height: 46px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 11px; background: #edf1ff; color: var(--blue); }
.contact-methods svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.contact-methods div { display: grid; line-height: 1.35; }
.contact-methods b { font-size: 15px; }
.contact-methods small { margin-top: 3px; color: var(--muted); font-size: 13px; }
.contact-form { margin-top: 0; padding: 32px; border: 1px solid var(--border); border-radius: 22px; background: var(--white); box-shadow: 0 18px 45px rgba(25,43,95,.12); }
.contact-fields { gap: 18px 20px; }
.contact-fields label, .contact-fields .lead-field { gap: 7px; }
.contact-fields label > span, .contact-fields .field-caption { color: var(--ink-2); font-size: 12px; font-weight: 600; }
.contact-fields input { height: 45px; background: #f9f9fd; font-size: 14px; }
.contact-fields textarea { min-height: 116px; background: #f9f9fd; font-size: 14px; }
.contact-form .phone-field { background: #f9f9fd; }
.contact-form .lead-consent { margin-top: 14px; }
.contact-form .lead-submit { min-height: 52px; margin-top: 13px; }

.site-footer { padding: 28px 0; border-top: 0; background: var(--page); color: #f4f7ff; }
.footer-shell { position: relative; overflow: hidden; padding: 56px 58px 24px; border: 1px solid #1e2a40; border-radius: 22px; background: #050914; box-shadow: 0 28px 70px rgba(15,28,62,.16); }
.footer-shell::before { content: ''; position: absolute; top: 0; right: 8%; left: 8%; height: 1px; background: linear-gradient(90deg,transparent,#315cae,transparent); }
.footer-grid { display: grid; grid-template-columns: minmax(200px,1.2fr) .62fr .62fr .58fr minmax(350px,1.65fr); align-items: start; gap: clamp(28px,3.4vw,58px); }
.footer-brand img { width: 172px; height: auto; filter: brightness(0) invert(1); }
.footer-brand p { max-width: 245px; margin-top: 20px; color: #8793a8; font-size: 12px; line-height: 1.7; }
.footer-link-group { display: grid; align-content: start; gap: 9px; }
.footer-link-group > b { margin-bottom: 5px; color: #69768c; font-size: 10px; font-weight: 650; letter-spacing: .03em; }
.footer-link-group > a { width: fit-content; color: #d8e0ee; font-size: 12px; transition: color .2s, transform .2s var(--ease); }
.footer-link-group > a:hover { color: #7fa4ff; transform: translateX(2px); }
.footer-contact-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.footer-contact-card { min-height: 104px; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 19px 18px; border: 1px solid #354158; border-radius: 3px; background: #070c17; color: #f5f8ff; box-shadow: 5px 5px 0 #111827; transition: border-color .25s, background .25s, transform .25s var(--ease), box-shadow .25s; }
.footer-contact-card:hover { transform: translate(-2px,-2px); border-color: #5f86e8; background: #0c172b; box-shadow: 7px 7px 0 #10234b; }
.footer-contact-card > span { min-width: 0; display: grid; }
.footer-contact-card small { color: #78859a; font-size: 9px; letter-spacing: .05em; text-transform: uppercase; }
.footer-contact-card strong { margin-top: 2px; color: #fff; font-family: var(--font-display); font-size: 14px; font-weight: 650; }
.footer-contact-card em { overflow: hidden; margin-top: 13px; color: #9eabc0; font-size: 10px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.footer-contact-card svg { width: 18px; height: 18px; flex: 0 0 auto; fill: none; stroke: #8facff; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; transform: rotate(-45deg); transition: transform .25s var(--ease); }
.footer-contact-card:hover svg { transform: translate(2px,-2px) rotate(-45deg); }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 28px; margin-top: 42px; padding-top: 20px; border-top: 1px solid #1b263a; color: #69768c; font-size: 10px; }
.footer-phones { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 8px 18px; }
.footer-phones span { color: #536076; text-transform: uppercase; letter-spacing: .08em; }
.footer-phones a { color: #9eabc0; transition: color .2s; }
.footer-phones a:hover { color: #8facff; }
.footer-bottom.legal-footer { margin-top: 0; padding: 24px 28px; border: 1px solid #1e2a40; border-radius: 16px; background: #050914; color: #77849b; }
.legal-links { display: flex; gap: 22px; }
.legal-links a { color: #aab5c8; transition: color .2s; }
.legal-links a:hover { color: #8facff; }

.lead-modal[hidden] { display: none !important; }
.lead-modal { position: fixed; inset: 0; z-index: 500; display: grid; place-items: center; padding: 16px; }
.lead-modal-backdrop { position: absolute; inset: 0; background: rgba(7,15,39,.66); backdrop-filter: blur(8px); animation: modal-fade .22s ease both; }
.lead-dialog { position: relative; width: min(960px, 100%); max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); display: grid; grid-template-columns: 300px minmax(0,1fr); overflow: hidden; border-radius: 24px; background: var(--white); box-shadow: 0 36px 100px rgba(5,15,46,.34); animation: modal-rise .34s var(--ease) both; outline: 0; }
.lead-close { position: absolute; top: 17px; right: 17px; z-index: 3; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(24,40,90,.1); border-radius: 50%; background: rgba(255,255,255,.9); color: var(--ink); box-shadow: 0 5px 16px rgba(18,34,80,.08); transition: transform .2s var(--ease), background .2s; }
.lead-close:hover { transform: rotate(5deg) scale(1.04); background: var(--white); }
.lead-close svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.lead-intro { position: relative; overflow: hidden; display: flex; flex-direction: column; padding: 34px 30px 30px; background: linear-gradient(160deg, #0d1c45 0%, #104ee7 100%); color: var(--white); }
.lead-intro::before, .lead-intro::after { content: ''; position: absolute; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; }
.lead-intro::before { width: 330px; height: 330px; right: -205px; bottom: -100px; box-shadow: 0 0 0 50px rgba(255,255,255,.035), 0 0 0 100px rgba(255,255,255,.025); }
.lead-intro::after { width: 190px; height: 190px; top: -125px; left: -95px; }
.lead-kicker { position: relative; z-index: 1; color: #b9c9ff; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.lead-intro h2 { position: relative; z-index: 1; margin-top: 14px; font-family: var(--font-display); font-size: 27px; line-height: 1.2; letter-spacing: -.035em; }
.lead-intro > p { position: relative; z-index: 1; margin-top: 14px; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.65; }
.lead-intro ul { position: relative; z-index: 1; display: grid; gap: 11px; margin-top: 22px; }
.lead-intro li { display: flex; align-items: flex-start; gap: 10px; color: rgba(255,255,255,.86); font-size: 12px; line-height: 1.5; }
.lead-intro li svg { width: 17px; height: 17px; flex: 0 0 auto; margin-top: 1px; fill: none; stroke: #a9f4d8; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.lead-direct { position: relative; z-index: 1; display: grid; margin-top: auto; padding-top: 22px; }
.lead-direct small { color: rgba(255,255,255,.58); font-size: 10px; }
.lead-direct a { margin-top: 2px; font-size: 13px; font-weight: 700; }
.lead-form-panel { min-width: 0; padding: 28px 34px 24px; }
.lead-form-head { padding-right: 42px; }
.lead-interest { display: inline-flex; padding: 6px 10px; border: 1px solid #d6e0ff; border-radius: 999px; background: var(--blue-pale); color: #25418a; font-size: 10px; font-weight: 800; letter-spacing: .04em; }
.lead-form-head h2 { margin-top: 10px; font-family: var(--font-display); font-size: 27px; line-height: 1.16; letter-spacing: -.035em; }
.lead-form-head p { margin-top: 5px; color: var(--muted); font-size: 12px; }
.lead-form { margin-top: 17px; }
.lead-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px 12px; }
.lead-fields label, .lead-fields .lead-field { display: grid; align-content: start; gap: 5px; min-width: 0; }
.lead-fields label > span, .lead-fields .field-caption { color: #404960; font-size: 11px; font-weight: 700; }
.lead-fields label > span small, .lead-fields .field-caption small { color: var(--muted); font-size: 9px; font-weight: 600; }
.lead-fields em { color: #d33434; font-style: normal; }
.lead-fields input, .lead-fields select, .lead-fields textarea { width: 100%; min-width: 0; border: 1px solid #dfe3ed; border-radius: 10px; background: #fbfcff; color: var(--ink); font: 500 13px/1.4 var(--font-body); outline: 0; transition: border-color .2s, box-shadow .2s, background .2s; }
.lead-fields input, .lead-fields select { height: 40px; padding: 0 12px; }
.lead-fields select { appearance: none; padding-right: 36px; background-image: linear-gradient(45deg,transparent 50%,#70798d 50%),linear-gradient(135deg,#70798d 50%,transparent 50%); background-position: calc(100% - 17px) 17px,calc(100% - 12px) 17px; background-size: 5px 5px,5px 5px; background-repeat: no-repeat; }
.lead-fields textarea { min-height: 70px; padding: 10px 12px; resize: vertical; }
.lead-fields input::placeholder, .lead-fields textarea::placeholder { color: #9aa2b3; font-weight: 400; }
.lead-fields input:focus, .lead-fields select:focus, .lead-fields textarea:focus { border-color: #7c9cf4; background: var(--white); box-shadow: 0 0 0 3px rgba(16,78,231,.1); }
.lead-full { grid-column: 1 / -1; }
.phone-field { position: relative; display: grid; grid-template-columns: minmax(118px,132px) minmax(0,1fr); overflow: visible; border: 1px solid #dfe3ed; border-radius: 10px; background: #fbfcff; transition: border-color .2s, box-shadow .2s, background .2s; }
.phone-field:focus-within { border-color: #7c9cf4; background: var(--white); box-shadow: 0 0 0 3px rgba(16,78,231,.1); }
.phone-field .country-code { height: 40px; padding: 0 27px 0 10px; border: 0; border-right: 1px solid #e1e5ef; border-radius: 0; background-color: transparent; color: #3f4860; font-size: 11px; box-shadow: none; }
.phone-field .country-code:focus { border-color: #e1e5ef; background-color: transparent; box-shadow: none; }
.phone-field input { border: 0; border-radius: 0; background: transparent; box-shadow: none !important; }
.country-picker { position: relative; min-width: 0; }
.country-picker-trigger { width: 100%; height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 10px; border-right: 1px solid #e1e5ef; color: #3f4860; font-size: 11px; font-weight: 600; text-align: left; transition: color .2s, background .2s; }
.country-picker-trigger:hover { background: rgba(16,78,231,.045); color: var(--blue); }
.country-picker-trigger:focus-visible { position: relative; z-index: 2; outline: 2px solid #7294f5; outline-offset: -2px; }
.country-picker-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.country-picker-chevron { width: 7px; height: 7px; flex: 0 0 auto; margin: -4px 2px 0 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); transition: transform .2s var(--ease), margin .2s var(--ease); }
.country-picker.is-open .country-picker-chevron { margin-top: 4px; transform: rotate(225deg); }
.country-picker-menu { position: absolute; z-index: 90; top: calc(100% + 8px); left: -1px; width: min(278px, calc(100vw - 40px)); padding: 8px; border: 1px solid #dbe1ee; border-radius: 14px; background: rgba(255,255,255,.98); box-shadow: 0 22px 60px rgba(18,34,80,.2); backdrop-filter: blur(16px); animation: country-menu-in .18s var(--ease) both; }
.country-picker.opens-up .country-picker-menu { top: auto; bottom: calc(100% + 8px); transform-origin: bottom left; }
.country-picker-search { height: 38px !important; padding: 0 11px !important; border: 1px solid #dce2ef !important; border-radius: 9px !important; background: #f6f8fc !important; color: var(--ink) !important; font-size: 12px !important; box-shadow: none !important; }
.country-picker-search:focus { border-color: #7294f5 !important; background: var(--white) !important; box-shadow: 0 0 0 3px rgba(16,78,231,.1) !important; }
.country-picker-search::-webkit-search-cancel-button { opacity: .62; }
.country-picker-options { max-height: var(--country-options-height, 228px); overflow-y: auto; display: grid; gap: 3px; margin-top: 7px; padding-right: 3px; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #b9c5dc transparent; }
.country-picker-options::-webkit-scrollbar { width: 6px; }
.country-picker-options::-webkit-scrollbar-track { background: transparent; }
.country-picker-options::-webkit-scrollbar-thumb { border-radius: 999px; background: #b9c5dc; }
.country-picker-option { width: 100%; min-height: 38px; display: grid; grid-template-columns: minmax(0,1fr) auto 16px; align-items: center; gap: 9px; padding: 7px 9px; border-radius: 9px; color: #34405a; font-size: 12px; text-align: left; transition: background .16s, color .16s, transform .16s; }
.country-picker-option[hidden], .country-picker-empty[hidden] { display: none; }
.country-picker-option:hover, .country-picker-option:focus-visible { outline: 0; background: #eef3ff; color: #173f9f; }
.country-picker-option:active { transform: scale(.985); }
.country-picker-option[aria-selected="true"] { background: #e5edff; color: #0d46cf; font-weight: 700; }
.country-picker-country { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.country-picker-code { color: #77839b; font-variant-numeric: tabular-nums; }
.country-picker-option[aria-selected="true"] .country-picker-code { color: #3766d4; }
.country-picker-check { opacity: 0; color: var(--blue); font-size: 13px; font-weight: 800; }
.country-picker-option[aria-selected="true"] .country-picker-check { opacity: 1; }
.country-picker-empty { padding: 18px 10px 12px; color: var(--muted); font-size: 12px; text-align: center; }
@keyframes country-menu-in { from { opacity: 0; transform: translateY(-6px) scale(.985); } }
.lead-consent { display: flex; align-items: flex-start; gap: 9px; margin-top: 11px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.lead-consent input { width: 15px; height: 15px; flex: 0 0 auto; margin: 1px 0 0; accent-color: var(--blue); }
.lead-consent a { color: var(--blue); font-weight: 700; }
.lead-submit { min-height: 44px; margin-top: 11px; }
.lead-submit[disabled] { opacity: .68; cursor: wait; transform: none; }
.lead-status { min-height: 0; margin-top: 0; color: var(--muted); font-size: 11px; }
.lead-status:not(:empty) { min-height: 34px; margin-top: 9px; padding: 8px 10px; border-radius: 9px; }
.lead-status.success { background: #eaf8f3; color: #087759; }
.lead-status.error { background: #fff0f0; color: #af2e2e; }
.lead-status a { font-weight: 800; text-decoration: underline; }
.lead-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; }
@keyframes modal-fade { from { opacity: 0; } }
@keyframes modal-rise { from { opacity: 0; transform: translateY(18px) scale(.985); } }
@keyframes ambient-drift { from { transform: translate3d(-12px,-8px,0) scale(.98); } to { transform: translate3d(18px,14px,0) scale(1.04); } }
@keyframes flow-scan { 0% { transform: translateY(-100%); } 55%, 100% { transform: translateY(100%); } }
@keyframes flow-step-in { from { opacity: 0; transform: translate3d(16px,0,0); } to { opacity: 1; transform: translate3d(0,0,0); } }
@keyframes status-pulse { 0%, 100% { box-shadow: 0 0 0 4px rgba(16,185,129,.12); } 50% { box-shadow: 0 0 0 8px rgba(16,185,129,.04); } }
@keyframes ring-drift { 0%, 100% { transform: translate3d(0,0,0); } 50% { transform: translate3d(-14px,-9px,0); } }
@keyframes dashboard-breathe { 0%, 100% { box-shadow: 0 30px 78px rgba(18,39,99,.16); } 50% { box-shadow: 0 34px 88px rgba(16,78,231,.25); } }
@keyframes brand-glow { 0%, 100% { text-shadow: 0 0 0 rgba(16,78,231,0); } 50% { text-shadow: 0 0 22px rgba(16,78,231,.24); } }

.legal { max-width: 940px; padding: 138px 0 96px; }
.legal-hero { padding-bottom: 34px; border-bottom: 1px solid var(--border); }
.legal h1 { margin-top: 12px; font-family: var(--font-display); font-size: clamp(38px,5vw,58px); line-height: 1.08; letter-spacing: -.04em; }
.legal-lead { max-width: 800px; margin-top: 18px !important; color: var(--ink-2) !important; font-size: 17px !important; line-height: 1.75 !important; }
.legal-meta { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-top: 22px; color: var(--muted-2); font-size: 12px; font-weight: 600; }
.legal-meta span { display: inline-flex; align-items: center; gap: 8px; }
.legal-meta span::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 4px rgba(16,78,231,.1); }
.legal-summary { margin: 30px 0 20px; padding: 24px 26px; border: 1px solid #d6e1ff; border-radius: 16px; background: linear-gradient(120deg,#f4f7ff,#edf2ff); box-shadow: var(--shadow-sm); }
.legal-summary strong { color: #183d9a; font-family: var(--font-display); font-size: 16px; }
.legal-summary p { margin: 7px 0 0; color: #4c5d81; }
.legal-toc { margin: 20px 0 34px; padding: 20px 22px; border: 1px solid var(--border); border-radius: 16px; background: rgba(255,255,255,.64); }
.legal-toc > strong { display: block; margin-bottom: 12px; color: var(--ink); font-family: var(--font-display); font-size: 14px; }
.legal-toc > div { display: flex; flex-wrap: wrap; gap: 8px; }
.legal .legal-toc a { padding: 7px 11px; border: 1px solid #dce2ef; border-radius: 999px; background: var(--white); color: #4c5871; font-size: 11px; font-weight: 700; text-decoration: none; transition: border-color .2s, color .2s, transform .2s; }
.legal .legal-toc a:hover { border-color: #9cb3f4; color: var(--blue); transform: translateY(-1px); }
.legal-document section { scroll-margin-top: 96px; padding: 30px 0 24px; border-top: 1px solid var(--border); }
.legal-document section:first-child { border-top: 0; }
.legal h2 { margin: 0 0 12px; font-family: var(--font-display); font-size: clamp(20px,2.4vw,24px); line-height: 1.3; letter-spacing: -.02em; }
.legal p, .legal li { margin-bottom: 11px; color: var(--muted); font-size: 14px; line-height: 1.85; }
.legal ul { display: grid; gap: 2px; padding-left: 22px; list-style: disc; }
.legal li::marker { color: var(--blue); }
.legal p strong, .legal li strong { color: var(--ink-2); }
.legal a { color: var(--blue); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.legal-contact { margin-top: 12px; padding: 28px !important; border: 1px solid #234b9f !important; border-radius: 18px; background: linear-gradient(125deg,#102653,#123a8a); box-shadow: 0 22px 50px rgba(19,49,115,.18); }
.legal-contact h2 { color: var(--white); }
.legal-contact p { margin-bottom: 0; color: #c8d7f5; }
.legal-contact a { color: #ffffff; }

.reveal { opacity: 0; transform: translate3d(0,28px,0) scale(.985); transition-property: opacity, transform, box-shadow, border-color; transition-duration: .82s, .82s, .42s, .42s; transition-timing-function: var(--ease), var(--ease), var(--ease), var(--ease); transition-delay: var(--reveal-delay,0ms), var(--reveal-delay,0ms), 0ms, 0ms; will-change: opacity, transform; }
.reveal.in { opacity: 1; transform: translate3d(0,0,0) scale(1); will-change: auto; }
.dashboard-frame.reveal { transform: translate3d(0,38px,0) scale(.965); transition-duration: 1.05s, 1.05s, .42s, .42s; }
.dashboard-frame.reveal.in { transform: translate3d(0,0,0) scale(1); }
.motion-ready .flow-visual .flow-step { opacity: 0; transform: translate3d(16px,0,0); }
.motion-ready .flow-visual.in .flow-step { opacity: 1; transform: translate3d(0,0,0); animation: flow-step-in .62s var(--ease) backwards; }
.motion-ready .flow-visual.in .flow-step:nth-child(3) { animation-delay: .15s; }
.motion-ready .flow-visual.in .flow-step:nth-child(4) { animation-delay: .23s; }
.motion-ready .flow-visual.in .flow-step:nth-child(5) { animation-delay: .31s; }
.motion-ready .flow-visual.in .flow-step:nth-child(6) { animation-delay: .39s; }
.motion-ready .flow-visual.in .flow-step:nth-child(7) { animation-delay: .47s; }
.motion-ready .flow-visual.in .flow-line::after { animation: flow-scan 2.8s .35s var(--ease) infinite; }
.motion-ready .flow-visual.in .flow-top i { animation: status-pulse 2.2s ease-in-out infinite; }
.motion-ready .proof-card.in::after, .motion-ready .contact-card.in::before { animation: ring-drift 11s ease-in-out infinite; }
.motion-ready .dashboard-frame.in { animation: dashboard-breathe 8s ease-in-out infinite; }

html[data-theme="dark"] {
  color-scheme: dark;
  --ink: #f1f5ff;
  --ink-2: #dce5f7;
  --muted: #aab5ca;
  --muted-2: #7f8ca6;
  --blue-soft: #142a58;
  --blue-pale: #101f43;
  --page: #07101f;
  --section: #0b162a;
  --border: #25324b;
  --border-strong: #34425f;
  --shadow-sm: 0 8px 24px rgba(0,0,0,.18);
  --shadow-md: 0 22px 60px rgba(0,0,0,.3);
}
html[data-theme="dark"] body { background: var(--page); color: var(--ink); }
html[data-theme="dark"] .site-header { border-color: rgba(52,66,95,.78); background: rgba(7,16,31,.88); }
html[data-theme="dark"] .site-header.scrolled { background: rgba(9,18,35,.96); box-shadow: 0 8px 28px rgba(0,0,0,.3); }
html[data-theme="dark"] .brand img,
html[data-theme="dark"] .footer-brand img { filter: brightness(0) invert(1); }
html[data-theme="dark"] .desktop-nav a { color: #b8c2d6; }
html[data-theme="dark"] .desktop-nav a:hover,
html[data-theme="dark"] .desktop-nav a.active { color: #82a7ff; }
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .btn-secondary { border-color: var(--border-strong); background: #101b30; color: var(--ink); box-shadow: 0 4px 12px rgba(0,0,0,.2); }
html[data-theme="dark"] .theme-toggle:hover,
html[data-theme="dark"] .btn-secondary:hover { border-color: #5474b6; background: #15233d; }
html[data-theme="dark"] .mobile-nav { border-color: var(--border); background: #0b162a; box-shadow: 0 20px 45px rgba(0,0,0,.34); }
html[data-theme="dark"] .mobile-nav > a:not(.btn) { border-color: var(--border); }
html[data-theme="dark"] .hero { background: linear-gradient(180deg, #07101f 0%, #0b1730 72%, #07101f 100%); }
html[data-theme="dark"] .hero::before { opacity: .55; background-image: linear-gradient(rgba(108,145,255,.065) 1px, transparent 1px), linear-gradient(90deg, rgba(108,145,255,.065) 1px, transparent 1px); }
html[data-theme="dark"] .hero-glow-one { background: radial-gradient(circle, rgba(40,94,245,.22), transparent 68%); }
html[data-theme="dark"] .hero-glow-two { background: radial-gradient(circle, rgba(118,83,255,.15), transparent 68%); }
html[data-theme="dark"] .hero-brand-glow { color: #6f9aff; }
html[data-theme="dark"] .badge { border-color: #314b8d; background: #13264f; color: #b8cbff; box-shadow: inset 0 1px 0 rgba(255,255,255,.06); }
html[data-theme="dark"] .hero-trust { color: #9eabc2; }
html[data-theme="dark"] .dashboard-frame { background: #030915; box-shadow: 0 32px 80px rgba(0,0,0,.45); }
html[data-theme="dark"] .advantage,
html[data-theme="dark"] .business-types,
html[data-theme="dark"] .proof,
html[data-theme="dark"] .testimonials,
html[data-theme="dark"] .contact { background: var(--page); }
html[data-theme="dark"] .toolkit,
html[data-theme="dark"] .faq { background: var(--section); }
html[data-theme="dark"] .feature-card,
html[data-theme="dark"] .tool-card,
html[data-theme="dark"] .business-card,
html[data-theme="dark"] .testimonial-card,
html[data-theme="dark"] .price-card,
html[data-theme="dark"] .faq-item,
html[data-theme="dark"] .contact-form { border-color: var(--border); background: #101b30; box-shadow: 0 12px 32px rgba(0,0,0,.2); }
html[data-theme="dark"] .feature-icon,
html[data-theme="dark"] .tool-icon,
html[data-theme="dark"] .contact-methods a > span { background: #172d5a; color: #8bacff; }
html[data-theme="dark"] .comparison,
html[data-theme="dark"] .pricing { background: #091222; }
html[data-theme="dark"] .comparison-without > h3 { color: #b6bfd0; }
html[data-theme="dark"] .comparison-column article { border-color: #303b50; background: #121b2b; }
html[data-theme="dark"] .comparison-with article { border-color: #2e4b88; background: #101f3d; }
html[data-theme="dark"] .comparison-column article > span { background: #3a2730; color: #e6b4bd; }
html[data-theme="dark"] .comparison-with article > span { background: #183d72; color: #a9caff; }
html[data-theme="dark"] .comparison-column article p { color: var(--muted); }
html[data-theme="dark"] .testimonial-author { border-color: var(--border); }
html[data-theme="dark"] .testimonial-card blockquote { color: #e2e9f6; }
html[data-theme="dark"] .testimonial-author cite b { color: #f5f8ff; }
html[data-theme="dark"] .testimonial-author cite span { color: #aebbd1; }
html[data-theme="dark"] .billing-selector { border-color: var(--border); background: #0d1728; box-shadow: inset 0 1px 3px rgba(0,0,0,.2); }
html[data-theme="dark"] .billing-option.active { border-color: #34528f; background: #15233b; color: var(--ink); box-shadow: 0 5px 16px rgba(0,0,0,.25); }
html[data-theme="dark"] .price-card.featured { border-color: #4c7fff; background: linear-gradient(180deg, #12264d 0, #101b30 26%); }
html[data-theme="dark"] .price-card li,
html[data-theme="dark"] .enterprise-card li { color: #b3bfd3; }
html[data-theme="dark"] .price-note { border-color: var(--border); }
html[data-theme="dark"] .enterprise-card:not(.enterprise-plus) { border-color: #2d426f; background: linear-gradient(120deg, #111d33, #13274e); }
html[data-theme="dark"] .enterprise-card:not(.enterprise-plus) p { color: var(--muted); }
html[data-theme="dark"] .faq-item.is-open { border-color: #4565a4; box-shadow: 0 12px 30px rgba(0,0,0,.24); }
html[data-theme="dark"] .faq-answer > div { border-color: var(--border); }
html[data-theme="dark"] .contact-methods a:hover { color: #8bacff; }
html[data-theme="dark"] .contact-fields input,
html[data-theme="dark"] .contact-fields textarea,
html[data-theme="dark"] .contact-form .phone-field,
html[data-theme="dark"] .lead-fields input,
html[data-theme="dark"] .lead-fields select,
html[data-theme="dark"] .lead-fields textarea,
html[data-theme="dark"] .phone-field { border-color: var(--border); background-color: #0b1527; color: var(--ink); }
html[data-theme="dark"] .lead-fields input:focus,
html[data-theme="dark"] .lead-fields select:focus,
html[data-theme="dark"] .lead-fields textarea:focus,
html[data-theme="dark"] .phone-field:focus-within { border-color: #648cff; background: #0f1c31; }
html[data-theme="dark"] .lead-fields label > span,
html[data-theme="dark"] .contact-fields label > span,
html[data-theme="dark"] .lead-fields .field-caption,
html[data-theme="dark"] .contact-fields .field-caption,
html[data-theme="dark"] .phone-field .country-code { border-color: var(--border); color: #c8d2e5; }
html[data-theme="dark"] .country-picker-trigger { border-color: var(--border); color: #cbd6ea; }
html[data-theme="dark"] .country-picker-trigger:hover { background: rgba(101,140,255,.1); color: #92afff; }
html[data-theme="dark"] .country-picker-menu { border-color: #2b3a57; background: rgba(15,26,46,.98); box-shadow: 0 24px 70px rgba(0,0,0,.5); }
html[data-theme="dark"] .country-picker-search { border-color: #2c3b57 !important; background: #091426 !important; color: #e7edfa !important; }
html[data-theme="dark"] .country-picker-search:focus { border-color: #648cff !important; background: #0c1a30 !important; box-shadow: 0 0 0 3px rgba(76,123,255,.16) !important; }
html[data-theme="dark"] .country-picker-search::placeholder { color: #74829b; }
html[data-theme="dark"] .country-picker-options { scrollbar-color: #435674 transparent; }
html[data-theme="dark"] .country-picker-options::-webkit-scrollbar-thumb { background: #435674; }
html[data-theme="dark"] .country-picker-option { color: #c4cfe1; }
html[data-theme="dark"] .country-picker-option:hover,
html[data-theme="dark"] .country-picker-option:focus-visible { background: #172945; color: #f1f5ff; }
html[data-theme="dark"] .country-picker-option[aria-selected="true"] { background: linear-gradient(100deg,#17366c,#16305c); color: #dbe6ff; }
html[data-theme="dark"] .country-picker-code { color: #8190aa; }
html[data-theme="dark"] .country-picker-option[aria-selected="true"] .country-picker-code,
html[data-theme="dark"] .country-picker-check { color: #8fb0ff; }
html[data-theme="dark"] .site-footer { background: #050c17; }
html[data-theme="dark"] .footer-shell,
html[data-theme="dark"] .footer-bottom.legal-footer { border-color: #243149; background: #030711; box-shadow: 0 28px 74px rgba(0,0,0,.24); }
html[data-theme="dark"] .footer-bottom { border-color: #1b263a; }
html[data-theme="dark"] .lead-dialog,
html[data-theme="dark"] .lead-form-panel { background: #0d1729; }
html[data-theme="dark"] .lead-close { border-color: var(--border); background: #152139; color: var(--ink); }
html[data-theme="dark"] .lead-interest { border-color: #34528f; background: #14274d; color: #b8cbff; }
html[data-theme="dark"] .legal .callout { border-color: #304a80; background: #11254b; }
html[data-theme="dark"] .legal-hero { border-color: var(--border); }
html[data-theme="dark"] .legal-lead { color: #c9d4e7 !important; }
html[data-theme="dark"] .legal-summary { border-color: #29477f; background: linear-gradient(120deg,#10254a,#112d5e); box-shadow: 0 16px 36px rgba(0,0,0,.2); }
html[data-theme="dark"] .legal-summary strong { color: #a9c0ff; }
html[data-theme="dark"] .legal-summary p { color: #b4c1d6; }
html[data-theme="dark"] .legal-toc { border-color: var(--border); background: rgba(15,27,47,.72); }
html[data-theme="dark"] .legal .legal-toc a { border-color: #2b3b58; background: #101c31; color: #acb9ce; }
html[data-theme="dark"] .legal .legal-toc a:hover { border-color: #5478c5; color: #9db7ff; }
html[data-theme="dark"] .legal p strong,
html[data-theme="dark"] .legal li strong { color: #dce5f5; }
html[data-theme="dark"] .legal-contact { border-color: #315cae !important; background: linear-gradient(125deg,#0e2450,#123774); box-shadow: 0 24px 60px rgba(0,0,0,.3); }

@media (hover: hover) and (pointer: fine) {
  .dashboard-frame.in:hover .dashboard-image { transform: scale(1.008); }
  .feature-card.reveal.in:hover { transform: translate3d(0,-7px,0); border-color: #d3dcfa; box-shadow: 0 24px 55px rgba(25,43,95,.13); }
  .feature-card:hover .feature-icon { transform: translate3d(0,-3px,0) rotate(-3deg); background: var(--blue); color: var(--white); }
  .tool-card.reveal.in:hover { transform: translate3d(0,-6px,0); border-color: #cbd6ff; box-shadow: 0 18px 38px rgba(24,40,90,.1); }
  .tool-card:hover .tool-icon { transform: translate3d(3px,-3px,0) scale(1.06); background: var(--blue); color: var(--white); }
  .business-card.reveal.in:hover { transform: translate3d(0,-6px,0); border-color: #d3dcfa; box-shadow: 0 18px 38px rgba(24,40,90,.1); }
  .business-card:hover > span { transform: translateX(4px); }
  .price-card.reveal.in:hover { transform: translate3d(0,-7px,0); border-color: #cdd9ff; box-shadow: 0 24px 55px rgba(25,43,95,.13); }
  .price-card.featured.reveal.in:hover { box-shadow: 0 28px 58px rgba(16,78,231,.2); }
  .enterprise-card.reveal.in:hover { transform: translate3d(0,-6px,0); border-color: #bfd0ff; box-shadow: 0 22px 48px rgba(20,48,125,.13); }
  .flow-step:hover { transform: translateX(4px); background: rgba(255,255,255,.5); }
  .testimonial-card { transition: transform .42s var(--ease), box-shadow .42s var(--ease); }
  .testimonial-card:hover { transform: translateY(-4px); box-shadow: 0 28px 64px rgba(25,43,95,.14); }
}

@media (max-width: 1100px) {
  .desktop-nav { gap: 20px; }
  .toolkit-grid, .pricing-grid { grid-template-columns: repeat(2, 1fr); }
  .workflow-grid { gap: 55px; }
  .dashboard-ui { min-height: 560px; grid-template-columns: 170px 1fr; }
  .metric-grid { grid-template-columns: repeat(4, 1fr); }
  .metric:last-child { display: none; }
  .comparison-grid { gap: 24px; }
  .contact-layout { gap: 48px; }
  .proof-card { padding: 52px; gap: 50px; }
  .footer-grid { grid-template-columns: minmax(210px,1.2fr) repeat(3,minmax(100px,.7fr)); }
  .footer-contact-cards { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  .section { padding: 88px 0; }
  .desktop-nav { display: none; }
  .login-button { display: none; }
  .menu-toggle { display: flex; }
  .mobile-nav { display: grid; }
  .nav-actions [data-open-lead].btn-small { display: none; }
  .hero { padding-top: 130px; }
  .dashboard-frame { margin-top: 56px; }
  .dashboard-ui { min-height: 500px; grid-template-columns: 135px 1fr; }
  .dash-sidebar { padding-inline: 8px; }
  .dash-sidebar li { font-size: 0; justify-content: center; }
  .dash-sidebar li svg { width: 17px; height: 17px; }
  .dash-search, .dash-security div { display: none; }
  .dash-security { justify-content: center; right: 8px; left: 8px; }
  .dash-brand strong { display: none; }
  .dash-brand { justify-content: center; }
  .metric-grid { grid-template-columns: repeat(3, 1fr); }
  .metric:nth-child(4) { display: none; }
  .advantage-grid { grid-template-columns: 1fr; }
  .feature-card { min-height: 0; }
  .split-heading, .workflow-grid, .proof-card, .contact-layout { grid-template-columns: 1fr; }
  .split-heading { gap: 18px; }
  .split-heading > p { max-width: 700px; }
  .workflow-grid { gap: 56px; }
  .faq-intro { position: static; }
  .business-grid { grid-template-columns: repeat(2, 1fr); }
  .proof-card { gap: 38px; }
  .contact-layout { gap: 44px; }
  .testimonial-copy { padding: 38px; }
  .enterprise-card { grid-template-columns: 1fr; }
  .enterprise-card .btn { grid-column: auto; }
  .pricing-terms { grid-template-columns: 1fr; gap: 28px; }
  .pricing-terms-intro p { max-width: 520px; }
  .footer-shell { padding: 46px 40px 24px; }
  .lead-dialog { grid-template-columns: 250px minmax(0,1fr); }
  .lead-intro { padding: 30px 24px 26px; }
  .lead-form-panel { padding: 26px 28px 22px; }
}

@media (max-width: 640px) {
  .container { width: min(calc(100% - 32px), var(--container)); }
  .section { padding: 72px 0; }
  .site-header, .nav-wrap { height: 66px; }
  .brand, .brand img { width: 140px; }
  .mobile-nav { top: 66px; }
  .hero { padding-top: 110px; }
  .hero h1 { font-size: clamp(38px, 12vw, 52px); }
  .hero-copy > p { font-size: 16px; }
  .hero-actions, .contact-actions { flex-direction: column; }
  .hero-actions .btn, .contact-actions .btn { width: 100%; }
  .hero-trust { gap: 11px 18px; }
  .dashboard-frame { width: 100%; border-radius: 12px; box-shadow: 0 24px 60px rgba(28,46,102,.15); }
  .dashboard-ui { min-height: 405px; grid-template-columns: 55px 1fr; }
  .dash-sidebar { padding: 10px 5px; }
  .dash-brand img { width: 25px; height: 25px; }
  .dash-security { display: none; }
  .dash-main { overflow: hidden; }
  .dash-content { padding: 11px; }
  .dash-title button { display: none; }
  .metric-grid { gap: 6px; }
  .metric { min-height: 70px; padding: 9px; }
  .metric strong { font-size: 16px; }
  .dash-panels { grid-template-columns: 1fr; }
  .activity-panel { display: none; }
  .chart-panel { height: 185px; }
  .bars { height: 103px; }
  .lead-table { display: none; }
  .toolkit-grid, .business-grid, .pricing-grid, .comparison-grid { grid-template-columns: 1fr; }
  .comparison-grid { gap: 34px; }
  .comparison-column article { min-height: 0; padding: 16px; }
  .billing-selector { width: 100%; }
  .billing-option { min-width: 0; padding-inline: 8px; }
  .billing-option span { font-size: 11px; }
  .billing-option small { font-size: 8px; }
  .pricing-grid { gap: 30px; }
  .enterprise-grid, .pricing-terms-grid { grid-template-columns: 1fr; }
  .enterprise-card { padding: 26px 22px; }
  .pricing-terms { padding: 28px 22px; }
  .tool-card { min-height: 0; }
  .section-heading { margin-bottom: 38px; }
  .section-heading h2, .workflow-copy h2, .proof-card h2, .faq-intro h2, .contact-copy h2 { font-size: 34px; }
  .workflow-grid { gap: 44px; }
  .flow-visual { padding: 18px; }
  .flow-line { left: 38px; }
  .flow-step { grid-template-columns: 40px 1fr; gap: 10px; }
  .flow-step em { display: none; }
  .flow-step > span { width: 36px; height: 36px; }
  .proof-card { padding: 36px 24px; border-radius: 20px; }
  .testimonials-head { align-items: flex-start; flex-direction: column; gap: 0; }
  .testimonials-head .section-heading { margin-bottom: 28px; }
  .testimonial-controls { margin-bottom: 26px; }
  .testimonial-track { grid-auto-columns: 100%; }
  .testimonial-card { min-height: 0; border-radius: 18px; }
  .testimonial-copy { padding: 28px 22px; }
  .testimonial-top { align-items: flex-start; flex-direction: column; gap: 10px; }
  .testimonial-card blockquote { margin: 22px 0 28px; font-size: 18px; }
  .testimonial-author { align-items: center; gap: 12px; }
  .testimonial-avatar { width: 54px; height: 54px; flex-basis: 54px; }
  .customer-type { display: none; }
  .testimonials { padding-bottom: 58px; }
  .faq-question { padding: 18px; font-size: 15px; }
  .faq-answer > div { margin: 0 18px; padding: 14px 0 18px; }
  .contact-copy p { font-size: 16px; }
  .contact-form { padding: 24px 18px; border-radius: 18px; }
  .site-footer { padding: 18px 0; }
  .footer-shell { padding: 34px 24px 22px; border-radius: 18px; }
  .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 22px; }
  .footer-brand, .footer-contact-cards { grid-column: 1 / -1; }
  .footer-brand p { max-width: 310px; }
  .footer-contact-cards { grid-template-columns: 1fr; }
  .footer-contact-card { min-height: 96px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; gap: 8px; }
  .footer-phones { justify-content: flex-start; }
  .footer-bottom.legal-footer { padding: 22px; }
  .lead-modal { align-items: end; padding: 0; }
  .lead-dialog { width: 100%; max-height: 94vh; max-height: 94dvh; grid-template-columns: 1fr; overflow-y: auto; border-radius: 22px 22px 0 0; scrollbar-width: none; }
  .lead-dialog::-webkit-scrollbar { display: none; }
  .lead-intro { display: none; }
  .lead-form-panel { padding: 30px 20px calc(28px + env(safe-area-inset-bottom)); }
  .lead-form-head { padding-right: 38px; }
  .lead-form-head h2 { font-size: 27px; }
  .lead-fields { grid-template-columns: 1fr; gap: 14px; }
  .lead-full { grid-column: auto; }
  .phone-field { grid-template-columns: minmax(118px,43%) minmax(0,1fr); }
  .country-picker-menu { width: min(278px, calc(100vw - 32px)); }
  .lead-close { top: 14px; right: 14px; }
  .legal { padding-top: 116px; }
  .legal-hero { padding-bottom: 28px; }
  .legal-lead { font-size: 15px !important; }
  .legal-summary { padding: 20px; }
  .legal-toc { padding: 18px; }
  .legal-document section { padding: 26px 0 20px; }
  .legal p, .legal li { font-size: 13px; line-height: 1.8; }
  .legal-contact { padding: 22px !important; }
}

@media (max-width: 380px) {
  .lead-form-panel { padding-inline: 16px; }
  .phone-field { grid-template-columns: minmax(108px,45%) minmax(0,1fr); }
  .country-picker-trigger { padding-inline: 8px; font-size: 10px; }
  .country-picker-menu { left: -12px; width: min(278px, calc(100vw - 32px)); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Business contact address */
.business-address { font-style: normal; line-height: 1.7; overflow-wrap: anywhere; }
.contact-address { margin-top: 26px; color: var(--muted); font-size: 15px; }
.contact-address strong { color: var(--ink-2); }
.footer-address { margin-top: 30px; color: #9eabc0; font-size: 12px; }
.footer-address strong { color: #d8e0ee; }
.legal-address { margin-top: 18px; color: #c8d7f5; }
.legal-address strong { color: #fff; }
