:root {
  --navy-950: #03172f;
  --navy-900: #062347;
  --navy-850: #082b55;
  --navy-800: #0a3568;
  --blue-600: #087ee4;
  --blue-500: #0d96f5;
  --cyan-500: #36c7e8;
  --fdisk: #00a5db;
  --ink: #10233d;
  --muted: #60718a;
  --line: #dbe4ef;
  --soft: #f4f8fc;
  --white: #ffffff;
  --green: #159f69;
  --amber: #d88a12;
  --red: #d65353;
  --shadow: 0 22px 60px rgba(6, 35, 71, .14);
  --shadow-soft: 0 12px 32px rgba(6, 35, 71, .09);
  --radius: 22px;
  --radius-sm: 14px;
  --container: 1180px;
  --header-h: 82px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--white); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.6; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.container { width: min(var(--container), calc(100% - 40px)); margin-inline: auto; }
.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: 9999; left: 20px; top: 10px; transform: translateY(-140%); background: #fff; color: var(--navy-900); padding: 10px 14px; border-radius: 8px; font-weight: 800; box-shadow: var(--shadow); }
.skip-link:focus { transform: translateY(0); }

.status-strip { background: #011b38; color: #d9ecff; font-size: .82rem; border-bottom: 1px solid rgba(255,255,255,.08); }
.status-strip__inner { min-height: 34px; display: flex; align-items: center; justify-content: center; gap: 9px; }
.status-strip a { color: var(--cyan-500); font-weight: 700; margin-left: 8px; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: #f2ad3d; box-shadow: 0 0 0 4px rgba(242,173,61,.15); }

.site-header { position: sticky; top: 0; z-index: 1000; height: var(--header-h); background: rgba(5, 31, 63, .94); color: #fff; backdrop-filter: blur(14px); border-bottom: 1px solid rgba(255,255,255,.08); }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 10px; min-width: 190px; }
.brand img { width: 45px; height: 45px; object-fit: contain; }
.brand__name { font-size: 1.32rem; font-weight: 850; letter-spacing: -.03em; }
.brand__by { color: #a9c3df; font-size: .78rem; margin-left: -5px; margin-top: 4px; }
.main-nav { display: flex; align-items: center; gap: 28px; font-size: .93rem; }
.main-nav > a:not(.button) { color: #dce9f7; transition: color .2s ease; }
.main-nav > a:not(.button):hover { color: #fff; }
.nav-demo { border-bottom: 1px solid var(--cyan-500); padding-bottom: 2px; }
.nav-toggle { display: none; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.25); border-radius: 10px; background: transparent; padding: 10px; }
.nav-toggle span:not(.sr-only) { display: block; height: 2px; background: #fff; margin: 5px 0; transition: transform .2s ease, opacity .2s ease; }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 12px 21px; border: 1px solid transparent; border-radius: 10px; font-weight: 800; line-height: 1.15; transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease; }
.button:hover { transform: translateY(-2px); }
.button:focus-visible, a:focus-visible, summary:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, button:focus-visible { outline: 3px solid rgba(54,199,232,.45); outline-offset: 3px; }
.button--primary { color: #fff; background: linear-gradient(135deg, var(--blue-600), #0397ef); box-shadow: 0 12px 28px rgba(8,126,228,.28); }
.button--primary:hover { box-shadow: 0 16px 34px rgba(8,126,228,.38); }
.button--secondary { color: var(--navy-850); background: #fff; border-color: #a9c5e2; }
.button--secondary:hover { border-color: var(--blue-600); box-shadow: var(--shadow-soft); }
.button--ghost { color: #dff5ff; border-color: rgba(102, 210, 245, .72); background: rgba(3,23,47,.15); }
.button--outline-light { color: #fff; border-color: var(--cyan-500); background: rgba(54,199,232,.05); }
.button--small { min-height: 40px; padding: 9px 14px; font-size: .87rem; }
.button--full { width: 100%; }

.hero { position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 80% 20%, rgba(22,125,210,.32), transparent 34%), linear-gradient(118deg, var(--navy-950) 0%, var(--navy-900) 57%, #0c4576 100%); }
.hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(125deg, transparent 61%, rgba(3,23,47,.24) 61%, rgba(3,23,47,.24) 72%, transparent 72%); }
.hero-grid { position: absolute; right: -10%; bottom: -45%; width: 650px; height: 650px; opacity: .12; background-image: radial-gradient(circle, #7bdfff 1px, transparent 1px); background-size: 18px 18px; transform: rotate(-8deg); }
.hero__inner { position: relative; z-index: 1; min-height: 680px; display: grid; grid-template-columns: .92fr 1.22fr; align-items: center; gap: 46px; padding-block: 78px 90px; }
.hero__copy { max-width: 550px; }
.eyebrow { margin: 0 0 18px; display: flex; align-items: center; gap: 10px; color: #b8d6f2; font-size: .78rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.eyebrow span { display: inline-block; width: 34px; height: 3px; border-radius: 3px; background: linear-gradient(90deg, var(--blue-500), var(--cyan-500)); }
.eyebrow--dark { color: var(--blue-600); }
.hero h1 { margin: 0; font-size: clamp(3.15rem, 5.2vw, 5.15rem); line-height: .98; letter-spacing: -.055em; font-weight: 760; }
.hero h1 em { display: block; color: var(--cyan-500); font-style: normal; }
.hero__lead { margin: 28px 0 0; max-width: 600px; color: #c5d8eb; font-size: 1.18rem; line-height: 1.65; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 31px; }
.trust-list { display: flex; flex-wrap: wrap; gap: 20px; list-style: none; padding: 0; margin: 28px 0 0; color: #dcecf9; font-size: .9rem; }
.trust-list li { display: flex; align-items: center; gap: 7px; }
.trust-list svg { width: 18px; height: 18px; color: var(--cyan-500); stroke-width: 2.4; }
.hero__features { margin: 31px 0 0; color: #9bb9d7; font-size: .95rem; }
.hero__features span { color: var(--cyan-500); padding-inline: 5px; }
.hero__visual { align-self: center; }
.visual-caption { margin: 13px 8px 0; text-align: right; color: #88a9c9; font-size: .76rem; }

.app-window { overflow: hidden; border: 1px solid rgba(255,255,255,.28); border-radius: 20px; background: #fff; box-shadow: 0 34px 75px rgba(0,0,0,.34); transform: perspective(1400px) rotateY(-2.2deg) rotateX(.5deg); }
.app-window__top { height: 38px; display: flex; align-items: center; justify-content: space-between; padding: 0 14px; color: #708098; background: #f5f8fb; border-bottom: 1px solid #dce4ed; font-size: .68rem; }
.window-dots { display: flex; gap: 5px; }
.window-dots i { width: 7px; height: 7px; border-radius: 50%; background: #c7d0dc; }
.window-dots i:first-child { background: #f26a62; }.window-dots i:nth-child(2){background:#f4bd4f}.window-dots i:nth-child(3){background:#5ecb73}
.online { display: flex; align-items: center; gap: 5px; }.online b{width:6px;height:6px;border-radius:50%;background:#28b67c}
.app-window__body { min-height: 470px; display: grid; grid-template-columns: 108px 1fr; background: #f4f7fb; }
.app-sidebar { padding: 16px 10px; background: linear-gradient(180deg, #082d59, #061f40); }
.app-logo { display: flex; align-items: center; gap: 6px; margin: 0 3px 17px; padding-bottom: 14px; border-bottom: 1px solid rgba(255,255,255,.11); color: #fff; font-size: .69rem; font-weight: 800; }
.app-logo img { width: 24px; height: 24px; }
.app-sidebar > a { display: flex; align-items: center; gap: 8px; margin-bottom: 5px; padding: 8px; color: #b8cee4; border-radius: 7px; font-size: .64rem; }
.app-sidebar > a.active { color: #fff; background: linear-gradient(90deg, #067be1, #0c96f1); box-shadow: 0 5px 14px rgba(0,110,220,.3); }
.app-sidebar svg { width: 15px; height: 15px; }
.dashboard { padding: 18px; min-width: 0; }
.dashboard__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; color: var(--ink); }
.dashboard__head small { color: #8492a6; font-size: .62rem; }.dashboard__head h2{margin:0;font-size:1rem;letter-spacing:-.02em}.dashboard__head button{border:1px solid #d7e0ea;background:#fff;color:#64748b;border-radius:6px;padding:6px 9px;font-size:.6rem}
.metric-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.metric-grid article { min-width: 0; padding: 11px 10px; border: 1px solid #e0e6ee; border-radius: 9px; background: #fff; box-shadow: 0 4px 14px rgba(26,53,84,.04); }
.metric-grid span { display: block; color: #687a91; font-size: .55rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }.metric-grid strong{display:block;margin:3px 0;color:#17365f;font-size:.92rem}.metric-grid small{font-size:.51rem;font-weight:700}.positive{color:var(--green)}.negative{color:var(--red)}
.dashboard-grid { display: grid; grid-template-columns: 1.35fr .9fr; gap: 10px; margin-top: 10px; }
.chart-card, .status-card, .recent-card { border: 1px solid #e0e6ee; border-radius: 9px; background: #fff; box-shadow: 0 4px 14px rgba(26,53,84,.04); }
.chart-card, .status-card { padding: 11px; min-height: 190px; }.card-head{display:flex;align-items:center;justify-content:space-between;color:#17365f;font-size:.62rem}.card-head span{color:#8492a6;font-size:.52rem}.line-chart{width:100%;height:125px;margin-top:5px}.grid-line{stroke:#e7edf3;stroke-width:1}.area{fill:url(#chartFill);stroke:none}.line{stroke:#168dec;stroke-width:3}.points circle{fill:#fff;stroke:#168dec;stroke-width:2.5}.chart-labels{display:flex;justify-content:space-between;color:#8a98a9;font-size:.45rem;padding:0 2px}
.donut-row { display: flex; align-items: center; gap: 10px; height: 155px; }.donut{width:83px;height:83px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#168dec 0 78%, #f0a231 78% 95%, #df5a59 95% 100%);position:relative}.donut::after{content:"";position:absolute;width:54px;height:54px;border-radius:50%;background:#fff}.donut span{position:relative;z-index:1;color:#17365f;font-size:.9rem;font-weight:800}.donut small{font-size:.48rem}.donut-row ul{list-style:none;padding:0;margin:0;min-width:0;flex:1}.donut-row li{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:5px;margin:8px 0;color:#6c7d91;font-size:.48rem}.donut-row li i{width:6px;height:6px;border-radius:50%}.donut-row li .paid{background:#168dec}.donut-row li .pending{background:#f0a231}.donut-row li .late{background:#df5a59}.donut-row li b{color:#213b5e}
.recent-card { margin-top: 10px; padding: 11px; }.invoice-row{display:grid;grid-template-columns:.9fr 1.1fr .8fr .6fr;gap:7px;align-items:center;padding:7px 0;border-top:1px solid #edf1f5;color:#697b91;font-size:.49rem}.invoice-row b{color:#344a65;font-weight:650}.invoice-row>strong{text-align:right;color:#17365f}.badge{justify-self:start;border-radius:10px;padding:2px 6px;font-style:normal;font-weight:700}.badge--paid{color:#16845a;background:#e0f6eb}.badge--pending{color:#aa6a0b;background:#fff0d5}.badge--late{color:#b33e43;background:#fde5e6}

.section { padding: 105px 0; }
.section--soft { background: var(--soft); }
.section--navy { color: #fff; background: linear-gradient(135deg, var(--navy-950), var(--navy-850)); }
.section-heading { max-width: 760px; margin-bottom: 52px; }
.section-heading--center { margin-inline: auto; text-align: center; }
.section-heading--center .eyebrow { justify-content: center; }
.section-heading--light p { color: #adc7df; }
.section-heading h2, .split-copy h2, .faq-intro h2, .compliance-box h2 { margin: 0 0 20px; color: var(--navy-900); font-size: clamp(2.25rem, 4vw, 3.8rem); line-height: 1.08; letter-spacing: -.045em; }
.section-heading--light h2 { color: #fff; }
.section-heading > p:last-child, .split-copy > p, .faq-intro > p { color: var(--muted); font-size: 1.08rem; max-width: 680px; }
.section-heading--light > p:last-child { color: #b7cce0; }

.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.service-card { position: relative; padding: 31px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow-soft); }
.service-card.featured { border-color: #70bdf2; box-shadow: 0 18px 45px rgba(8,126,228,.14); }
.icon-box { width: 56px; height: 56px; display: grid; place-items: center; margin-bottom: 24px; border-radius: 16px; color: var(--blue-600); background: #eaf5ff; }
.icon-box svg { width: 29px; height: 29px; }
.card-label { position: absolute; right: 22px; top: 23px; padding: 5px 10px; color: #066ea8; background: #e3f8ff; border-radius: 99px; font-size: .69rem; font-weight: 800; }
.service-card h3 { margin: 0 0 12px; color: var(--navy-850); font-size: 1.35rem; }
.service-card p { margin: 0; color: var(--muted); }
.service-card ul { list-style: none; padding: 0; margin: 24px 0 0; }
.service-card li { position: relative; margin: 9px 0; padding-left: 20px; color: #42556e; font-size: .92rem; }
.service-card li::before { content: ""; position: absolute; left: 0; top: .62em; width: 8px; height: 8px; border: 2px solid var(--blue-500); border-radius: 50%; }

.split-layout { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 75px; }
.split-layout--reverse .security-visual { order: 2; }.split-layout--reverse .split-copy{order:1}
.value-list { margin-top: 35px; }
.value-list > div { display: grid; grid-template-columns: 46px 1fr; gap: 17px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.value-list b { color: var(--blue-600); font-size: .85rem; letter-spacing: .08em; }
.value-list span { color: var(--muted); }
.value-list strong { display: block; margin-bottom: 3px; color: var(--navy-850); }
.migration-panel { padding: 30px; border: 1px solid #d5e4f2; border-radius: 28px; background: #fff; box-shadow: var(--shadow); }
.source-system, .target-system { padding: 23px; border: 1px solid var(--line); border-radius: 17px; }
.source-system { background: #f7f9fc; }.source-system span,.target-system span{display:block;color:var(--blue-600);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.source-system strong,.target-system strong{display:block;margin:5px 0;color:var(--navy-850);font-size:1.35rem}.source-system small,.target-system small{color:var(--muted)}
.migration-arrow { display: flex; align-items: center; gap: 12px; padding: 17px 8px; color: var(--blue-600); font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }.migration-arrow span{height:1px;background:#b9cee1;flex:1}.target-system{display:flex;align-items:center;gap:20px;border-color:#85c8f5;background:linear-gradient(135deg,#f8fdff,#edf8ff)}.target-system img{width:78px;height:78px}.migration-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.migration-stats div{text-align:center;padding:13px 6px;border-radius:12px;background:#f1f6fa}.migration-stats strong{display:block;color:var(--navy-850);font-size:1.2rem}.migration-stats span{color:var(--muted);font-size:.68rem}

.price-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: stretch; }
.price-card { position: relative; display: flex; flex-direction: column; padding: 34px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow-soft); }
.price-card--featured { border: 2px solid var(--blue-500); transform: translateY(-12px); box-shadow: 0 24px 55px rgba(8,126,228,.18); }
.popular { position: absolute; top: -15px; left: 50%; transform: translateX(-50%); padding: 6px 14px; border-radius: 99px; color: #fff; background: var(--blue-600); font-size: .73rem; font-weight: 800; white-space: nowrap; }
.price-icon { width: 50px; height: 50px; display: grid; place-items: center; color: var(--blue-600); background: #eef7ff; border-radius: 14px; }.price-icon svg{width:27px;height:27px}
.plan-type { margin: 22px 0 3px; color: var(--blue-600) !important; font-size: .76rem !important; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
.price-card h3 { margin: 0; color: var(--navy-850); font-size: 1.55rem; }
.price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px; margin: 20px 0 14px; }.price small{width:100%;color:var(--muted);font-size:.75rem}.price strong{color:var(--navy-850);font-size:2.5rem;line-height:1;letter-spacing:-.05em}.price span{color:var(--muted);font-size:.78rem}.price-card>p:not(.plan-type){color:var(--muted)}.price-card ul{list-style:none;padding:0;margin:21px 0 30px;flex:1}.price-card li{position:relative;padding-left:22px;margin:10px 0;color:#40536d;font-size:.9rem}.price-card li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.price-note{text-align:center;margin:31px 0 0;color:var(--muted);font-size:.86rem}

.process-grid { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; list-style: none; padding: 0; margin: 10px 0 0; counter-reset: none; }
.process-grid::before { content: ""; position: absolute; left: 7%; right: 7%; top: 48px; border-top: 1px dashed rgba(87,188,244,.45); }
.process-grid li { position: relative; padding: 0 10px; text-align: center; }
.process-grid li > span { position: absolute; top: -4px; right: calc(50% - 39px); z-index: 2; width: 25px; height: 25px; display: grid; place-items: center; border: 3px solid var(--navy-900); border-radius: 50%; color: #fff; background: var(--blue-500); font-size: .7rem; font-weight: 900; }
.process-icon { position: relative; z-index: 1; width: 90px; height: 90px; display: grid; place-items: center; margin: 0 auto 19px; border: 1px solid #2a5d8d; border-radius: 50%; color: var(--cyan-500); background: var(--navy-900); }
.process-icon svg { width: 38px; height: 38px; }
.process-grid h3 { margin: 0 0 8px; color: #fff; font-size: 1rem; }
.process-grid p { margin: 0; color: #a9c2d9; font-size: .84rem; }

.security-visual { position: relative; min-height: 480px; border-radius: 36px; background: radial-gradient(circle at center, #e1f5ff 0 22%, transparent 23%), radial-gradient(circle at center, transparent 0 50%, #dbeaf5 50.3% 50.7%, transparent 51%), linear-gradient(135deg,#f6fbff,#eaf3fa); border: 1px solid #d9e7f2; }
.shield { position: absolute; left: 50%; top: 50%; width: 130px; height: 130px; display: grid; place-items: center; transform: translate(-50%,-50%); border-radius: 34px; color: #fff; background: linear-gradient(145deg,var(--blue-600),var(--cyan-500)); box-shadow: 0 22px 45px rgba(8,126,228,.27); }.shield svg{width:70px;height:70px;stroke-width:1.5}
.security-node { position: absolute; display: flex; align-items: center; gap: 10px; padding: 12px 15px; border: 1px solid #d4e3ef; border-radius: 12px; background: rgba(255,255,255,.92); box-shadow: var(--shadow-soft); color: var(--navy-850); font-size: .8rem; font-weight: 700; }.security-node b{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:#fff;background:var(--blue-600);font-size:.65rem}.n1{left:7%;top:12%}.n2{right:4%;top:19%}.n3{left:4%;bottom:16%}.n4{right:7%;bottom:10%}
.check-list { list-style: none; padding: 0; margin: 34px 0 0; }.check-list li{display:flex;gap:13px;margin:20px 0}.check-list svg{flex:0 0 auto;width:24px;height:24px;color:var(--green);stroke-width:2.4}.check-list span{color:var(--muted)}.check-list strong{display:block;color:var(--navy-850)}

.compliance-box { display: grid; grid-template-columns: auto 1fr auto; gap: 30px; align-items: center; padding: 42px; border: 1px solid #c9dfef; border-radius: 25px; background: #fff; box-shadow: var(--shadow-soft); }
.compliance-icon { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 22px; color: #b76e00; background: #fff1d6; }.compliance-icon svg{width:40px;height:40px}.compliance-box h2{font-size:clamp(1.8rem,3vw,2.65rem);margin-bottom:12px}.compliance-box p{margin:0;color:var(--muted)}.compliance-small{margin-top:12px!important;font-size:.82rem}

.faq-layout { display: grid; grid-template-columns: .78fr 1.22fr; gap: 80px; align-items: start; }
.faq-intro { position: sticky; top: 130px; }.text-link{display:inline-flex;gap:8px;margin-top:18px;color:var(--blue-600);font-weight:800}
.faq-list { border-top: 1px solid var(--line); }
details { border-bottom: 1px solid var(--line); }
summary { position: relative; list-style: none; padding: 22px 48px 22px 0; cursor: pointer; color: var(--navy-850); font-weight: 800; }
summary::-webkit-details-marker { display: none; }
summary span::before, summary span::after { content: ""; position: absolute; right: 7px; top: 50%; width: 17px; height: 2px; background: var(--blue-600); transition: transform .2s ease; }
summary span::after { transform: rotate(90deg); }
details[open] summary span::after { transform: rotate(0); }
details p { margin: -6px 45px 23px 0; color: var(--muted); }

.contact-section { padding-top: 75px; background: linear-gradient(180deg,#fff 0 24%,var(--navy-950) 24% 100%); }
.contact-panel { display: grid; grid-template-columns: .85fr 1.15fr; gap: 52px; padding: 55px; border-radius: 28px; color: #fff; background: linear-gradient(135deg,#082c56,#0a477b); box-shadow: 0 30px 70px rgba(1,23,47,.3); }
.contact-copy h2 { margin: 0 0 22px; font-size: clamp(2.25rem,4vw,3.55rem); line-height: 1.08; letter-spacing: -.045em; }.contact-copy>p{color:#bfd5e9}.contact-direct{margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18)}.contact-direct span{display:block;color:#9ebbd4;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.contact-direct a{color:var(--cyan-500);font-size:1.3rem;font-weight:800}
.contact-form { padding: 27px; border: 1px solid rgba(255,255,255,.22); border-radius: 20px; background: rgba(255,255,255,.96); color: var(--ink); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-form label { display: block; margin-bottom: 14px; color: #30445e; font-size: .8rem; font-weight: 750; }
.contact-form input, .contact-form textarea, .contact-form select { width: 100%; margin-top: 6px; border: 1px solid #cbd8e5; border-radius: 9px; padding: 11px 12px; color: var(--ink); background: #fff; outline: none; }
.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus { border-color: var(--blue-500); box-shadow: 0 0 0 4px rgba(13,150,245,.12); }
.contact-form textarea { resize: vertical; }
.consent { display: flex !important; align-items: flex-start; gap: 10px; font-weight: 500 !important; line-height: 1.45; }.consent input{width:17px;min-width:17px;margin:3px 0 0}.consent a{color:var(--blue-600);text-decoration:underline}.form-note{margin:10px 0 0;text-align:center;color:#75869b;font-size:.72rem}.form-status{min-height:1.2em;margin:7px 0 0;text-align:center;color:var(--green);font-size:.78rem;font-weight:700}

.site-footer { color: #a9bfd4; background: var(--navy-950); }
.footer-main { display: grid; grid-template-columns: 1.8fr repeat(3, 1fr); gap: 45px; padding-block: 64px 50px; border-bottom: 1px solid rgba(255,255,255,.1); }
.footer-brand img { width: 190px; height: auto; margin-left: -18px; }
.footer-brand p { max-width: 330px; margin: 7px 0 0; }.footer-brand strong{color:#fff}
.footer-column h3 { margin: 8px 0 17px; color: #fff; font-size: .86rem; }.footer-column a{display:block;margin:9px 0;color:#9fb7cd;font-size:.84rem}.footer-column a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-block:20px;font-size:.73rem}

/* Legal pages */
.legal-hero { padding: 80px 0 60px; color: #fff; background: linear-gradient(135deg,var(--navy-950),var(--navy-800)); }.legal-hero h1{margin:0 0 12px;font-size:clamp(2.5rem,5vw,4.4rem);line-height:1;letter-spacing:-.05em}.legal-hero p{margin:0;color:#b8cde1}.legal-page{padding:70px 0 100px}.legal-content{max-width:850px}.legal-content h2{margin:42px 0 12px;color:var(--navy-850);font-size:1.55rem}.legal-content h2:first-child{margin-top:0}.legal-content p,.legal-content li{color:#53667f}.legal-content a{color:var(--blue-600);text-decoration:underline}.legal-data{display:grid;grid-template-columns:180px 1fr;gap:1px;margin:25px 0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--line)}.legal-data dt,.legal-data dd{margin:0;padding:12px 15px;background:#fff}.legal-data dt{font-weight:800;color:var(--navy-850)}.legal-notice{padding:17px 20px;border-left:4px solid var(--blue-600);background:#eef7ff;color:#3b5775;border-radius:0 10px 10px 0}.back-link{display:inline-flex;gap:8px;margin-top:25px;color:var(--blue-600);font-weight:800}.error-page{min-height:70vh;display:grid;place-items:center;text-align:center;padding:70px 20px}.error-page img{width:130px;margin:0 auto 20px}.error-page h1{margin:0;font-size:clamp(4rem,10vw,8rem);color:var(--navy-850);line-height:1}.error-page h2{margin:8px 0 12px;color:var(--navy-900)}.error-page p{max-width:560px;color:var(--muted)}

@media (max-width: 1100px) {
  .main-nav { gap: 17px; font-size: .85rem; }
  .hero__inner { grid-template-columns: .95fr 1.05fr; gap: 25px; }
  .app-window__body { grid-template-columns: 88px 1fr; }.app-sidebar>a{padding:7px 5px;gap:5px}.app-sidebar span{font-size:.55rem}.dashboard{padding:13px}.metric-grid strong{font-size:.74rem}.process-grid{grid-template-columns:repeat(3,1fr);row-gap:38px}.process-grid::before{display:none}.footer-main{grid-template-columns:1.5fr repeat(3,1fr);gap:25px}
}

@media (max-width: 900px) {
  :root { --header-h: 72px; }
  .status-strip__inner { justify-content: flex-start; overflow-x: auto; white-space: nowrap; }
  .nav-toggle { display: block; }
  .main-nav { position: fixed; left: 20px; right: 20px; top: 112px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 17px; background: rgba(3,23,47,.98); box-shadow: 0 22px 50px rgba(0,0,0,.36); }
  .main-nav.is-open { display: flex; }
  .main-nav > a { padding: 12px 13px; }.main-nav .button{margin-top:7px}.nav-demo{border:0}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(3){opacity:0}.nav-toggle[aria-expanded="true"] span:nth-child(4){transform:translateY(-7px) rotate(-45deg)}
  .hero__inner { grid-template-columns: 1fr; padding-block: 64px 75px; }.hero__copy{max-width:700px}.hero__visual{max-width:720px;width:100%;margin:12px auto 0}.app-window{transform:none}
  .service-grid, .price-grid { grid-template-columns: 1fr; }.price-card--featured{transform:none}.split-layout,.split-layout--reverse{grid-template-columns:1fr;gap:45px}.split-layout--reverse .security-visual{order:1}.split-layout--reverse .split-copy{order:2}.faq-layout{grid-template-columns:1fr;gap:35px}.faq-intro{position:static}.compliance-box{grid-template-columns:auto 1fr}.compliance-box>a{grid-column:2}.contact-panel{grid-template-columns:1fr;padding:38px}.footer-main{grid-template-columns:1.5fr 1fr 1fr}.footer-column:last-child{grid-column:2}.footer-bottom{flex-direction:column}.migration-panel{max-width:650px}.security-visual{min-height:430px}
}

@media (max-width: 640px) {
  .container { width: min(100% - 28px, var(--container)); }
  .status-strip { font-size: .72rem; }.status-strip a{display:none}.brand__by{display:none}.brand{min-width:0}.brand img{width:40px;height:40px}
  .section { padding: 78px 0; }.hero__inner{min-height:auto}.hero h1{font-size:clamp(2.75rem,14vw,4.1rem)}.hero__lead{font-size:1.04rem}.hero__actions{flex-direction:column;align-items:stretch}.trust-list{gap:12px 18px}.hero__features{line-height:1.8}
  .app-window__body{grid-template-columns:1fr}.app-sidebar{display:none}.dashboard{padding:10px}.metric-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.status-card{display:none}.invoice-row{grid-template-columns:1fr 1fr}.invoice-row em,.invoice-row>strong{display:none}.visual-caption{text-align:left}
  .section-heading h2,.split-copy h2,.faq-intro h2{font-size:2.25rem}.service-card,.price-card{padding:26px}.migration-panel{padding:20px}.migration-stats{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.process-grid li{display:grid;grid-template-columns:72px 1fr;text-align:left;column-gap:18px}.process-grid li>span{left:52px;right:auto}.process-icon{grid-row:1/3;width:72px;height:72px;margin:0}.process-grid h3{align-self:end}.process-grid p{grid-column:2}.security-visual{min-height:490px}.security-node{max-width:145px}.n1{left:4%}.n2{right:2%}.n3{left:2%}.n4{right:3%}.compliance-box{grid-template-columns:1fr;padding:28px}.compliance-box>a{grid-column:auto}.form-row{grid-template-columns:1fr}.contact-panel{padding:28px 20px}.contact-form{padding:20px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-column:last-child{grid-column:auto}.legal-data{grid-template-columns:1fr}.legal-data dt{padding-bottom:0}.legal-data dd{padding-top:4px}.legal-hero{padding:55px 0 45px}
}

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