:root {
  --navy:#03014C; --navy2:#0F1E4C; --navy3:#1B3168;
  --orange:#FF6B00; --red:#E42002; --red-d:#C81D02;
  --light:#F1F7F3; --ink:#0A0E29; --body:#454B63; --line:#E1E9E3;
  --card-sh:0 14px 40px rgba(3,1,76,.10); --r:20px;
}
.fxl * {margin:0;padding:0;box-sizing:border-box}
html {scroll-behavior:smooth}
.fxl {font-family:"Mona Sans",-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--body);background:#fff;line-height:1.65;font-size:16.5px}
.fxl img {max-width:100%;display:block}
.fxl a {text-decoration:none;color:inherit}
.fxl .wrap {max-width:1240px;margin:0 auto;padding:0 20px}
.fxl h1, .fxl h2, .fxl h3 {color:var(--ink);line-height:1.14;letter-spacing:-.015em;font-weight:800}
.fxl .eyebrow {display:inline-flex;align-items:center;gap:10px;color:var(--red);font-weight:800;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.fxl .eyebrow::before {content:"";width:34px;height:2px;background:var(--orange)}
.fxl .sec {padding:96px 0}
.fxl .sec-head {max-width:720px;margin:0 auto 54px;text-align:center}
.fxl .sec-head .eyebrow {justify-content:center}
.fxl .sec-head .eyebrow::after {content:"";width:34px;height:2px;background:var(--orange)}
.fxl .sec-head h2 {font-size:clamp(1.9rem,3.4vw,2.7rem);margin:14px 0 12px}
.fxl .btn {display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:999px;font-weight:800;font-size:.98rem;transition:.25s;border:2px solid transparent;cursor:pointer}
.fxl .btn-red {background:var(--red);color:#fff;box-shadow:0 12px 28px rgba(228,32,2,.35)}
.fxl .btn-red:hover {background:var(--red-d);transform:translateY(-2px)}
.fxl .btn-ghost {border-color:var(--navy);color:var(--navy);background:transparent}
.fxl .btn-ghost:hover {background:var(--navy);color:#fff}
.fxl .btn-white {background:#fff;color:var(--navy)}
.fxl .btn-white:hover {background:var(--orange);color:#fff}
.fxl /* ---- Topbar ---- */
.topbar {background:var(--navy);color:#C9D2F2;font-size:.85rem}
.fxl .topbar .wrap {display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:9px;padding-bottom:9px;flex-wrap:wrap}
.fxl .topbar .grp {display:flex;gap:26px;flex-wrap:wrap}
.fxl .topbar span {display:inline-flex;gap:8px;align-items:center}
.fxl .topbar svg {width:15px;height:15px;stroke:var(--orange)}
.fxl .topbar a {color:#fff;font-weight:700}
.fxl .topbar a:hover {color:var(--orange)}
.fxl /* ---- Header ---- */
header.site {position:sticky;top:0;z-index:60;background:#fff;box-shadow:0 6px 30px rgba(3,1,76,.08)}
.fxl header.site .wrap {display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px;padding-bottom:16px}
.fxl .logo {display:flex;align-items:center;gap:11px;font-weight:900;color:var(--ink);font-size:1.13rem;line-height:1.12;letter-spacing:-.01em;max-width:300px}
.fxl .logo .dot {flex:0 0 auto;width:14px;height:14px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(255,107,0,.18)}
.fxl nav.main {display:flex;gap:30px;font-weight:700;color:var(--ink);font-size:.97rem}
.fxl nav.main a {padding:6px 0;border-bottom:2px solid transparent}
.fxl nav.main a:hover {color:var(--red);border-color:var(--orange)}
.fxl .head-cta {display:flex;align-items:center;gap:18px}
.fxl .head-phone {text-align:right;line-height:1.25}
.fxl .head-phone small {display:block;color:var(--body);font-weight:600;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}
.fxl .head-phone b {color:var(--ink);font-size:1.02rem}
@media(max-width:1080px) {.fxl nav.main {display:none}
.fxl .head-phone {display:none}}
.fxl /* ---- Hero ---- */
.hero {background:var(--light);background-image:radial-gradient(rgba(3,1,76,.07) 1px,transparent 1.4px);background-size:26px 26px;overflow:hidden}
.fxl .hero .wrap {display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:74px;padding-bottom:120px}
.fxl .hero-badge {display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #FFD9C2;color:var(--red);border-radius:999px;padding:8px 18px;font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 8px 22px rgba(3,1,76,.06)}
.fxl .hero-badge i {width:8px;height:8px;border-radius:50%;background:var(--orange);animation:pulse 1.8s infinite}
@keyframes pulse {0%{box-shadow:0 0 0 0 rgba(255,107,0,.5)}70%{box-shadow:0 0 0 8px rgba(255,107,0,0)}100%{box-shadow:0 0 0 0 rgba(255,107,0,0)}}
.fxl .hero h1 {font-size:clamp(2.5rem,4.6vw,4.1rem);font-weight:900;margin:24px 0 20px}
.fxl .hero h1 .hl {color:var(--orange)}
.fxl .hero p.lede {font-size:1.13rem;max-width:560px}
.fxl .hero-ctas {display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}
.fxl .hero-media {position:relative}
.fxl .hero-media .main-img {border-radius:28px;box-shadow:0 34px 70px rgba(3,1,76,.25);aspect-ratio:4/3.4;object-fit:cover;width:100%}
.fxl .hero-media::after {content:"";position:absolute;inset:auto -16px -16px auto;width:55%;height:55%;border:3px solid var(--orange);border-radius:28px;z-index:-1}
.fxl .hero-media {z-index:0}
.fxl .float-card {position:absolute;left:-24px;bottom:34px;background:#fff;border-radius:18px;box-shadow:var(--card-sh);padding:16px 20px;display:flex;gap:14px;align-items:center}
.fxl .float-card .ic {width:48px;height:48px;border-radius:14px;background:#FFF1E8;display:flex;align-items:center;justify-content:center}
.fxl .float-card .ic svg {width:26px;height:26px;stroke:var(--red)}
.fxl .float-card b {color:var(--ink);display:block;font-size:1.02rem;line-height:1.25}
.fxl .float-card small {color:var(--body)}
@media(max-width:900px) {.fxl .hero .wrap {grid-template-columns:1fr;padding-bottom:100px}
.fxl .float-card {left:8px}}
.fxl /* ---- Info bar ---- */
.infobar {margin-top:-64px;position:relative;z-index:5}
.fxl .infobar .grid {display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fxl .info-card {background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--card-sh);padding:24px;display:flex;gap:16px;align-items:center}
.fxl .info-card .ic {flex:0 0 auto;width:52px;height:52px;border-radius:15px;background:#FFF1E8;display:flex;align-items:center;justify-content:center}
.fxl .info-card .ic svg {width:27px;height:27px;stroke:var(--red)}
.fxl .info-card .k {font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--red)}
.fxl .info-card .v {font-weight:800;color:var(--ink);line-height:1.3}
.fxl .info-card .v a {color:var(--red)}
.fxl .info-card .s {font-size:.87rem}
@media(max-width:860px) {.fxl .infobar .grid {grid-template-columns:1fr}}
.fxl /* ---- Welcome ---- */
.welcome .wrap {display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.fxl .welcome-media {position:relative}
.fxl .welcome-media .big {border-radius:26px;aspect-ratio:4/3.2;object-fit:cover;width:100%;box-shadow:0 28px 60px rgba(3,1,76,.18)}
.fxl .welcome-media .small {position:absolute;right:-14px;bottom:-30px;width:46%;border-radius:20px;border:6px solid #fff;box-shadow:var(--card-sh);aspect-ratio:4/3;object-fit:cover}
.fxl .welcome-media .chip {position:absolute;left:-14px;top:26px;background:var(--navy);color:#fff;border-radius:16px;padding:14px 20px;box-shadow:var(--card-sh)}
.fxl .welcome-media .chip b {display:block;font-size:1.5rem;color:var(--orange);line-height:1.1}
.fxl .welcome h2 {font-size:clamp(1.9rem,3.2vw,2.6rem);margin:14px 0 16px}
.fxl .checks {list-style:none;margin:24px 0 30px;display:grid;gap:13px}
.fxl .checks li {display:flex;gap:12px;font-weight:600;color:var(--ink)}
.fxl .checks .ck {flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:900;margin-top:2px}
.fxl .welcome-call {display:flex;gap:16px;align-items:center;background:var(--light);border:1px solid var(--line);border-radius:18px;padding:18px 22px}
.fxl .welcome-call .ic {width:52px;height:52px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.fxl .welcome-call .ic svg {width:25px;height:25px;stroke:#fff}
.fxl .welcome-call small {display:block;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.74rem}
.fxl .welcome-call b {color:var(--ink);font-size:1.12rem}
@media(max-width:900px) {.fxl .welcome .wrap {grid-template-columns:1fr}}
.fxl /* ---- Services ---- */
.services {background:var(--light)}
.fxl .svc-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.fxl .svc {background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:0 10px 30px rgba(3,1,76,.06);transition:.3s;display:flex;flex-direction:column}
.fxl .svc:hover {transform:translateY(-6px);box-shadow:0 24px 48px rgba(3,1,76,.14)}
.fxl .svc img {height:210px;width:100%;object-fit:cover}
.fxl .svc .body {padding:26px 26px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
.fxl .svc h3 {font-size:1.22rem}
.fxl .svc p {font-size:.96rem;flex:1}
.fxl .svc .more {font-weight:800;color:var(--red);display:inline-flex;gap:8px;align-items:center}
.fxl .svc .more:hover {color:var(--orange)}
@media(max-width:980px) {.fxl .svc-grid {grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px) {.fxl .svc-grid {grid-template-columns:1fr}}
.fxl /* ---- Marquee ---- */
.marquee {background:var(--navy);overflow:hidden;padding:15px 0}
.fxl .marquee-track {display:flex;width:max-content;animation:mscroll 30s linear infinite}
.fxl .marquee span {color:#fff;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.86rem;white-space:nowrap}
.fxl .marquee b {color:var(--orange);padding:0 16px}
@keyframes mscroll {from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce) {.fxl .marquee-track {animation:none}}
.fxl /* ---- Why / features ---- */
.why {background:linear-gradient(140deg,var(--navy) 0%,var(--navy2) 70%,var(--navy3) 100%);color:#C9D2F2}
.fxl .why h2 {color:#fff}
.fxl .why .eyebrow {color:var(--orange)}
.fxl .why .wrap {display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.fxl .feat-grid {display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px}
.fxl .feat {background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:22px}
.fxl .feat h3 {color:#fff;font-size:1.05rem;margin-bottom:6px;display:flex;gap:10px;align-items:center}
.fxl .feat h3 .tick {color:var(--orange);font-weight:900}
.fxl .feat p {font-size:.92rem;color:#AEB9E4}
.fxl .why img.side {border-radius:26px;aspect-ratio:4/3.6;object-fit:cover;width:100%;box-shadow:0 30px 60px rgba(0,0,0,.35)}
.fxl .counters {display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:64px;border-top:1px solid rgba(255,255,255,.14);padding-top:44px}
.fxl .counter {text-align:center}
.fxl .counter b {display:block;font-size:2.6rem;color:var(--orange);font-weight:900;letter-spacing:-.02em;line-height:1.1}
.fxl .counter span {font-weight:700;color:#fff;font-size:.95rem}
@media(max-width:900px) {.fxl .why .wrap {grid-template-columns:1fr}
.fxl .feat-grid {grid-template-columns:1fr}}
.fxl /* ---- Process ---- */
.steps {display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.fxl .step {background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:30px 26px;box-shadow:0 10px 26px rgba(3,1,76,.05)}
.fxl .step .num {width:54px;height:54px;border-radius:50%;background:var(--navy);color:#fff;font-weight:900;font-size:1.25rem;display:flex;align-items:center;justify-content:center;margin-bottom:18px;box-shadow:0 0 0 6px rgba(255,107,0,.16)}
.fxl .step h3 {font-size:1.1rem;margin-bottom:8px}
.fxl .step p {font-size:.94rem}
@media(max-width:980px) {.fxl .steps {grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px) {.fxl .steps {grid-template-columns:1fr}}
.fxl /* ---- CTA panel ---- */
.cta-panel {background:linear-gradient(120deg,var(--navy2),var(--navy));border-radius:30px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;color:#C9D2F2}
.fxl .cta-panel .txt {padding:56px}
.fxl .cta-panel h2 {color:#fff;font-size:clamp(1.8rem,3vw,2.5rem);margin:12px 0 14px}
.fxl .cta-panel .eyebrow {color:var(--orange)}
.fxl .cta-panel img {height:100%;width:100%;object-fit:cover;min-height:320px}
.fxl .cta-panel .btn {margin-top:26px}
@media(max-width:860px) {.fxl .cta-panel {grid-template-columns:1fr}
.fxl .cta-panel .txt {padding:38px 28px}}
.fxl /* ---- FAQ ---- */
.faq-list {max-width:860px;margin:0 auto;display:grid;gap:14px}
.fxl details {background:#fff;border:1px solid var(--line);border-radius:16px;padding:4px 24px;box-shadow:0 6px 18px rgba(3,1,76,.04)}
.fxl summary {cursor:pointer;font-weight:800;color:var(--ink);padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:center}
.fxl summary::-webkit-details-marker {display:none}
.fxl summary::after {content:"+";color:var(--red);font-size:1.5rem;font-weight:900}
.fxl details[open ] summary::after {content:"–"}
.fxl details p {padding:0 0 18px;font-size:.97rem}
.fxl /* ---- Areas ---- */
.areas {background:var(--light)}
.fxl .chips {display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:820px;margin:0 auto}
.fxl .chip {background:#fff;border:1px solid var(--line);border-radius:999px;padding:11px 22px;font-weight:700;color:var(--ink);box-shadow:0 6px 16px rgba(3,1,76,.05)}
.fxl .chip:hover {border-color:var(--orange);color:var(--red)}
.fxl /* ---- Footer ---- */
footer.site {background:linear-gradient(180deg,var(--navy2),#020138);color:#B9C4EA;border-top:6px solid var(--orange)}
.fxl footer.site .cols {display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1fr;gap:44px;padding:70px 0 50px}
.fxl footer.site h4 {color:#fff;font-size:1.02rem;margin-bottom:18px}
.fxl footer.site ul {list-style:none;display:grid;gap:10px;font-size:.95rem}
.fxl footer.site a:hover {color:var(--orange)}
.fxl footer.site .brand p {font-size:.95rem;margin-top:14px;max-width:340px}
.fxl footer.site .logo {color:#fff}
.fxl .foot-bar {border-top:1px solid rgba(255,255,255,.13);padding:22px 0 96px;font-size:.85rem}
.fxl .foot-bar .disc {margin-top:8px;color:#8E9BD3;max-width:900px}
@media(max-width:900px) {.fxl footer.site .cols {grid-template-columns:1fr 1fr}}
@media(max-width:560px) {.fxl footer.site .cols {grid-template-columns:1fr}}
.fxl /* ---- Mobile call bar ---- */
.callbar {position:fixed;left:12px;right:12px;bottom:12px;z-index:70;display:none}
.fxl .callbar a {display:flex;justify-content:center;align-items:center;gap:10px;background:var(--red);color:#fff;font-weight:900;padding:16px;border-radius:999px;box-shadow:0 16px 36px rgba(228,32,2,.45);font-size:1rem}
@media(max-width:760px) {.fxl .callbar {display:block}}
@media(max-width:700px) {.fxl .topbar {font-size:.8rem}
.fxl .topbar .wrap {flex-direction:column;align-items:flex-start;gap:5px}
.fxl .topbar .grp {gap:8px 18px}
.fxl .topbar a {overflow-wrap:anywhere}
.fxl header.site .btn {white-space:nowrap;padding:13px 22px;font-size:.92rem}
.fxl .logo {max-width:210px;font-size:1.02rem}
.fxl .hero-badge {font-size:.72rem;letter-spacing:.06em}}
/* ---- header dropdowns + burger ---- */
.fxl .has-drop{position:relative;display:inline-block}
.fxl .drop{position:absolute;top:calc(100% + 10px);left:0;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--card-sh);padding:10px;min-width:290px;display:none;z-index:80}
.fxl .has-drop:hover .drop{display:block}
.fxl .drop a{display:block;padding:9px 12px;border-radius:10px;font-size:.92rem;line-height:1.35}
.fxl .drop a:hover{background:var(--light);color:var(--red)}
.fxl .burger{display:none;background:var(--navy);color:#fff;border:0;border-radius:12px;width:46px;height:46px;font-size:1.25rem;cursor:pointer}
@media(max-width:1080px){.fxl .burger{display:block}}
/* ---- header must not be sticky-fixed weird with old theme: keep sample behavior ---- */
/* ---- about stats ---- */
.fxl .stat-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0}
.fxl .stat{background:var(--light);border:1px solid var(--line);border-radius:18px;padding:20px 22px}
.fxl .stat b{display:block;font-size:1.9rem;color:var(--red);font-weight:900;line-height:1.1;letter-spacing:-.01em}
.fxl .stat span{font-weight:700;color:var(--ink);font-size:.92rem}
/* ---- why CTA panel ---- */
.fxl .why-cta{margin-top:48px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.05);border-radius:22px;padding:32px;display:flex;gap:26px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.fxl .why-cta h3{color:#fff;font-size:1.45rem;margin:8px 0}
.fxl .why-cta p{color:#AEB9E4;max-width:640px;font-size:.97rem}
.fxl .open-badge{display:inline-block;background:var(--orange);color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;padding:6px 14px;border-radius:999px}
/* ---- problems ---- */
.fxl .problems{background:#FFF3EF}
.fxl .prob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.fxl .prob{background:#fff;border:1px solid #F3D9CF;border-radius:var(--r);padding:28px;box-shadow:0 10px 26px rgba(228,32,2,.05)}
.fxl .prob h3{font-size:1.08rem;margin-bottom:9px}
.fxl .prob p{font-size:.94rem}
@media(max-width:980px){.fxl .prob-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.fxl .prob-grid{grid-template-columns:1fr}}
/* ---- map / pricing / links ---- */
.fxl .mapblock iframe{width:100%;height:440px;border:0;display:block}
.fxl .pricing{background:#fff}
.fxl .inline-link{color:var(--red);font-weight:800;text-decoration:underline}
/* ---- final CTA ---- */
.fxl .final-cta{background:linear-gradient(140deg,var(--navy) 0%,var(--navy2) 75%);color:#C9D2F2;text-align:center;padding:92px 0}
.fxl .final-cta h2{color:#fff;font-size:clamp(1.9rem,3.4vw,2.7rem);max-width:820px;margin:14px auto 14px}
.fxl .final-cta p{max-width:720px;margin:0 auto 30px}
.fxl .final-cta .eyebrow{color:var(--orange)}
/* ---- contact split ---- */
.fxl .contact-split{display:grid;grid-template-columns:1fr 1fr}
.fxl .cs-left{background:linear-gradient(150deg,var(--navy2),var(--navy));color:#C9D2F2;padding:72px 8%}
.fxl .cs-right{background:var(--light);padding:72px 8%}
.fxl .contact-split h2{font-size:clamp(1.7rem,2.8vw,2.3rem);margin:12px 0 20px}
.fxl .cs-left h2{color:#fff}
.fxl .cs-left .eyebrow{color:var(--orange)}
.fxl .cs-line{margin-bottom:16px;font-size:1rem}
.fxl .cs-left a{color:#fff;font-weight:700;overflow-wrap:anywhere}
.fxl .cs-right a{overflow-wrap:anywhere}
.fxl .cs-phone{display:block;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:900;color:var(--red);letter-spacing:-.01em;margin-bottom:14px}
@media(max-width:860px){.fxl .contact-split{grid-template-columns:1fr}}
