:root {
  --ink: #07111f;
  --ink-2: #0d1b2d;
  --paper: #f7f9fc;
  --white: #fff;
  --muted: #617086;
  --line: #dce3ed;
  --blue: #1768ff;
  --blue-deep: #0647d7;
  --cyan: #55d8ff;
  --teal: #25d5c4;
  --coral: #ff664d;
  --lime: #c9ff5c;
  --radius: 26px;
  --shadow: 0 28px 80px rgba(9, 28, 56, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, Manrope, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.55; overflow-x: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
.container { width: min(1220px, 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; top: 10px; left: 10px; z-index: 999; transform: translateY(-150%); padding: 10px 16px; color: #fff; background: var(--blue); border-radius: 10px; }
.skip-link:focus { transform: none; }

.site-header { position: absolute; inset: 0 0 auto; z-index: 20; color: #fff; border-bottom: 1px solid rgba(255,255,255,.1); transition: background .25s ease, transform .25s ease; }
.header-inner { min-height: 90px; display: grid; grid-template-columns: 250px 1fr auto; align-items: center; gap: 24px; }
.brand img { width: 218px; height: auto; }
.main-nav { display: flex; justify-content: center; gap: clamp(16px, 2vw, 30px); }
.main-nav a { position: relative; font-size: 15px; font-weight: 650; color: #dfe8f5; }
.main-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 2px; background: var(--coral); transition: right .25s ease; }
.main-nav a:hover::after, .main-nav a:focus-visible::after { right: 0; }
.header-call { text-align: right; }
.header-call > a { display: block; font-size: 17px; font-weight: 800; letter-spacing: .2px; }
.status { display: inline-flex; align-items: center; gap: 7px; color: #b9c8da; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; }
.status i { width: 7px; height: 7px; background: #52e487; border-radius: 50%; box-shadow: 0 0 0 5px rgba(82,228,135,.13); }
.menu-toggle { display: none; background: transparent; border: 0; color: inherit; }

.section-dark { color: #fff; background: var(--ink); }
.hero { position: relative; min-height: 920px; padding: 160px 0 34px; isolation: isolate; overflow: hidden; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -3; background: linear-gradient(110deg, #07111f 0 49%, #0a1a31 72%, #091424 100%); }
.hero-grid { position: absolute; inset: 0; z-index: -2; opacity: .22; background-image: linear-gradient(rgba(95,134,185,.22) 1px, transparent 1px), linear-gradient(90deg, rgba(95,134,185,.22) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 85%); }
.hero-glow { position: absolute; z-index: -1; border-radius: 50%; filter: blur(1px); opacity: .7; }
.hero-glow-a { width: 600px; height: 600px; top: -240px; right: 20%; background: radial-gradient(circle, rgba(23,104,255,.32), transparent 67%); animation: breathe 6s ease-in-out infinite; }
.hero-glow-b { width: 440px; height: 440px; bottom: 40px; left: -190px; background: radial-gradient(circle, rgba(255,102,77,.18), transparent 67%); animation: breathe 8s ease-in-out infinite reverse; }
.hero-layout { display: grid; grid-template-columns: minmax(0, .92fr) minmax(440px, .85fr); align-items: center; gap: clamp(40px, 6vw, 90px); }
.hero-copy { position: relative; z-index: 2; padding-top: 26px; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 24px; color: #aebed2; font-size: 13px; line-height: 1; font-weight: 800; text-transform: uppercase; letter-spacing: 1.35px; }
.eyebrow span { padding: 9px 12px; color: #fff; background: rgba(23,104,255,.24); border: 1px solid rgba(85,216,255,.28); border-radius: 999px; }
.eyebrow-blue { color: var(--blue); }
.hero h1 { max-width: 790px; margin: 0 0 26px; font-size: clamp(50px, 5.8vw, 82px); line-height: .98; letter-spacing: -4px; }
.hero h1 em { color: var(--cyan); font-style: normal; }
.hero-lead { max-width: 650px; margin: 0; color: #b7c5d7; font-size: 19px; line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.button { min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 22px; border: 1px solid transparent; border-radius: 14px; font-weight: 800; transition: transform .22s ease, box-shadow .22s ease, background .22s ease; }
.button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: var(--ink); background: linear-gradient(135deg, var(--teal), var(--cyan)); box-shadow: 0 14px 34px rgba(37,213,196,.24); }
.button-primary:hover { box-shadow: 0 18px 42px rgba(37,213,196,.34); }
.button-ghost { color: #eef5ff; border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.055); backdrop-filter: blur(14px); }
.hero-facts { display: flex; flex-wrap: wrap; gap: 0; margin: 44px 0 0; padding: 0; list-style: none; }
.hero-facts li { min-width: 142px; padding: 0 22px; border-left: 1px solid rgba(255,255,255,.16); }
.hero-facts li:first-child { padding-left: 0; border-left: 0; }
.hero-facts strong, .hero-facts span { display: block; }
.hero-facts strong { font-size: 18px; }
.hero-facts span { margin-top: 3px; color: #8295ad; font-size: 13px; }
.hero-visual { position: relative; }
.visual-frame { --mx: 0px; --my: 0px; position: relative; min-height: 610px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 36px 36px 120px 36px; background: #10233e; box-shadow: 0 50px 120px rgba(0,0,0,.38); transform: perspective(1200px) rotateY(-2deg) translate3d(var(--mx), var(--my), 0); transition: transform .4s cubic-bezier(.22,1,.36,1); }
.visual-frame::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(4,12,24,.68), transparent 50%), linear-gradient(100deg, rgba(7,17,31,.35), transparent 60%); pointer-events: none; }
.visual-frame > img { width: 100%; height: 610px; object-fit: cover; }
.arrival-card, .price-chip { position: absolute; z-index: 2; color: #fff; background: rgba(8,20,36,.8); border: 1px solid rgba(255,255,255,.16); box-shadow: 0 20px 46px rgba(0,0,0,.27); backdrop-filter: blur(18px); }
.arrival-card { top: 26px; right: 24px; width: 188px; padding: 17px; border-radius: 18px; }
.arrival-card span, .arrival-card small, .price-chip span { display: block; color: #a9b8ca; font-size: 12px; }
.arrival-card strong { display: block; margin: 3px 0; font-size: 22px; }
.price-chip { left: 24px; bottom: 24px; min-width: 196px; padding: 15px 18px; border-radius: 16px; }
.price-chip strong { display: block; margin-top: 2px; font-size: 20px; }
.route-line { position: absolute; z-index: 3; right: 42px; bottom: 110px; width: 115px; height: 118px; border-right: 2px dashed rgba(85,216,255,.75); border-bottom: 2px dashed rgba(85,216,255,.75); border-radius: 0 0 50px; }
.route-line i, .route-line b { position: absolute; display: block; width: 12px; height: 12px; border: 3px solid #fff; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 6px rgba(23,104,255,.25); }
.route-line i { top: -4px; right: -7px; }
.route-line b { left: -4px; bottom: -7px; background: var(--coral); box-shadow: 0 0 0 6px rgba(255,102,77,.23); }
.trust-strip { position: relative; z-index: 4; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: 58px; overflow: hidden; color: #c6d3e2; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.12); border-radius: 18px; }
.trust-strip span { padding: 17px 18px; text-align: center; background: rgba(7,17,31,.77); font-size: 14px; font-weight: 700; }

.quick-quote { position: relative; z-index: 5; padding: 70px 0 110px; background: linear-gradient(180deg, #eef3fa, var(--paper)); overflow: hidden; }
.quick-quote::before { content: ""; position: absolute; width: 420px; height: 420px; left: -220px; bottom: -170px; border: 1px solid rgba(23,104,255,.16); border-radius: 50%; box-shadow: 0 0 0 42px rgba(23,104,255,.03), 0 0 0 88px rgba(23,104,255,.025); }
.quote-shell { display: grid; grid-template-columns: .75fr 1.25fr; gap: 66px; padding: 42px; background: #fff; border: 1px solid #e1e7ef; border-radius: var(--radius); box-shadow: var(--shadow); }
.quote-shell h2 { margin: 0 0 14px; font-size: clamp(32px, 4vw, 48px); line-height: 1.06; letter-spacing: -2px; }
.quote-shell p { margin: 0; color: var(--muted); }
.quote-form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.quote-form label { display: grid; gap: 7px; color: #27374c; font-size: 13px; font-weight: 800; }
.quote-form select { width: 100%; height: 54px; padding: 0 42px 0 15px; color: var(--ink); background: #f6f8fb; border: 1px solid #dbe3ed; border-radius: 12px; }
.quote-result { grid-column: span 2; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2px 20px; padding: 16px 18px; background: #081526; border-radius: 14px; color: #fff; }
.quote-result span { color: #9fb0c6; font-size: 13px; }
.quote-result strong { grid-row: span 2; font-size: 26px; color: var(--cyan); }
.quote-result small { color: #7389a5; }
.quote-form .button { grid-column: span 2; }
.quote-intro { min-width: 0; }
.quote-image { position: relative; height: 180px; margin: 28px 0 0; overflow: hidden; border-radius: 17px; background: #dfe7ef; }
.quote-image img { width: 100%; height: 100%; object-fit: cover; }
.quote-image figcaption { position: absolute; left: 12px; right: 12px; bottom: 12px; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; color: #fff; background: rgba(5,17,31,.76); border: 1px solid rgba(255,255,255,.16); border-radius: 11px; backdrop-filter: blur(12px); }
.quote-image figcaption strong, .quote-image figcaption span { display: block; }
.quote-image figcaption strong { font-size: 13px; }
.quote-image figcaption span { color: #aebdd0; font-size: 12px; text-align: right; }

section[id] { scroll-margin-top: 24px; }
.section-deep { color: #fff; background: var(--ink-2); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 36px; margin-bottom: 46px; }
.section-heading > div { max-width: 800px; }
.section-heading h2, .prices h2, .fleet h2, .areas h2, .faq-contact h2 { margin: 0; font-size: clamp(37px, 5vw, 62px); line-height: 1.03; letter-spacing: -3px; }
.section-heading > p { max-width: 470px; margin: 0; color: var(--muted); font-size: 17px; }
.section-heading-light > p { color: #aebdd0; }
.text-link { display: inline-flex; flex: none; align-items: center; gap: 12px; padding: 12px 0; color: var(--blue); font-weight: 800; }
.text-link span { display: grid; width: 35px; height: 35px; place-content: center; border: 1px solid currentColor; border-radius: 50%; transition: transform .25s ease, background .25s ease; }
.text-link:hover span { transform: rotate(45deg); background: rgba(23,104,255,.08); }
.text-link-light { color: var(--teal); }
.image-shine { position: relative; }
.image-shine::after { content: ""; position: absolute; inset: -20% auto -20% -45%; z-index: 1; width: 28%; transform: skewX(-18deg); background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent); transition: left .8s ease; pointer-events: none; }
.image-shine:hover::after { left: 125%; }
.line-icon, .service-icon { display: grid; place-content: center; flex: none; }
.line-icon svg, .service-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

.situations { position: relative; padding: 118px 0; overflow: hidden; }
.situations::before { content: ""; position: absolute; inset: 0; opacity: .3; background: radial-gradient(circle at 78% 24%, rgba(37,213,196,.18), transparent 30%), linear-gradient(130deg, transparent 48%, rgba(47,125,255,.11) 48% 49%, transparent 49%); }
.signal-line { position: absolute; top: 0; bottom: 0; left: 8vw; width: 1px; background: linear-gradient(transparent, rgba(37,213,196,.55), transparent); box-shadow: 0 0 20px rgba(37,213,196,.36); animation: signalMove 6s ease-in-out infinite; }
.situation-layout { position: relative; display: grid; grid-template-columns: 1.1fr .9fr; gap: 28px; }
.situation-photo { position: relative; min-height: 570px; margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 34px 34px 34px 100px; background: #172b3e; }
.situation-photo img { width: 100%; height: 100%; min-height: 570px; object-fit: cover; }
.situation-photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.7), transparent 58%); }
.situation-photo figcaption { position: absolute; z-index: 2; left: 24px; bottom: 24px; display: flex; align-items: center; gap: 11px; padding: 12px 16px; background: rgba(7,19,31,.78); border: 1px solid rgba(255,255,255,.16); border-radius: 13px; backdrop-filter: blur(16px); font-size: 14px; font-weight: 750; }
.pulse-dot { display: inline-block; width: 9px; height: 9px; background: var(--teal); border-radius: 50%; box-shadow: 0 0 0 0 rgba(37,213,196,.48); animation: ping 2.4s ease-out infinite; }
.situation-list { display: grid; gap: 12px; }
.situation-card { display: grid; grid-template-columns: 58px 1fr auto; align-items: center; gap: 17px; min-height: 128px; padding: 22px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.1); border-radius: 21px; transition: transform .25s ease, background .25s ease, border-color .25s ease; }
.situation-card:hover { transform: translateX(-6px); background: rgba(37,213,196,.095); border-color: rgba(37,213,196,.32); }
.situation-card .line-icon { width: 58px; height: 58px; color: var(--teal); background: rgba(37,213,196,.1); border: 1px solid rgba(37,213,196,.18); border-radius: 17px; }
.situation-card .line-icon svg { width: 32px; }
.situation-card strong, .situation-card small { display: block; }
.situation-card strong { font-size: 18px; }
.situation-card small { margin-top: 4px; color: #8ea2b9; font-size: 14px; }
.situation-card > b { color: #53687f; font-size: 13px; letter-spacing: 1px; }

.services-preview { position: relative; padding: 120px 0 126px; overflow: hidden; background: #f5f8fb; }
.blueprint { position: absolute; inset: 0; opacity: .42; background-image: linear-gradient(rgba(47,125,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(47,125,255,.08) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(to bottom, transparent, #000 14%, #000 76%, transparent); }
.service-stage { position: relative; height: 410px; margin-bottom: 24px; overflow: hidden; background: #07131f; border-radius: 30px 30px 80px 30px; box-shadow: var(--shadow); }
.service-stage::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,16,30,.9), rgba(5,16,30,.2) 60%, transparent); }
.service-stage img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.22,1,.36,1); }
.service-stage:hover img { transform: scale(1.025); }
.service-stage-copy { position: absolute; z-index: 2; left: clamp(24px, 4vw, 52px); top: 50%; max-width: 490px; transform: translateY(-50%); color: #fff; }
.service-stage-copy span { display: block; margin-bottom: 10px; color: var(--teal); font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; }
.service-stage-copy strong { font-size: clamp(28px, 4vw, 46px); line-height: 1.08; letter-spacing: -1.8px; }
.service-grid { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.service-card { position: relative; min-height: 320px; padding: 27px; overflow: hidden; background: #fff; border: 1px solid #dde5ee; border-radius: 22px; box-shadow: 0 12px 34px rgba(27,47,74,.055); transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease; }
.service-card::after { content: ""; position: absolute; right: -38px; bottom: -58px; width: 140px; height: 140px; background: radial-gradient(circle, rgba(47,125,255,.1), transparent 66%); border-radius: 50%; transition: transform .3s ease; }
.service-card:hover { transform: translateY(-6px); border-color: rgba(47,125,255,.35); box-shadow: 0 24px 50px rgba(27,47,74,.12); }
.service-card:hover::after { transform: scale(1.35); }
.service-card-accent { color: #fff; background: linear-gradient(145deg, #0b1c2e, #102f41); border-color: #19384c; }
.service-icon { width: 60px; height: 60px; color: var(--blue); background: #edf4ff; border-radius: 18px; }
.service-icon svg { width: 36px; }
.service-card-accent .service-icon { color: var(--teal); background: rgba(37,213,196,.12); }
.service-kicker { position: absolute; top: 31px; right: 25px; color: var(--blue); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: .8px; }
.service-card-accent .service-kicker { color: var(--teal); }
.service-card h3 { margin: 28px 0 9px; font-size: 22px; line-height: 1.17; letter-spacing: -.6px; }
.service-card p { margin: 0; color: var(--muted); }
.service-card-accent p { color: #9db0c4; }
.card-link { position: absolute; left: 27px; bottom: 23px; z-index: 2; display: flex; align-items: center; gap: 9px; color: var(--blue); font-size: 14px; font-weight: 800; }
.service-card-accent .card-link { color: var(--teal); }
.card-link b { transition: transform .25s ease; }
.service-card:hover .card-link b { transform: translateX(5px); }

.prices { position: relative; padding: 120px 0; overflow: hidden; }
.prices::before { content: ""; position: absolute; inset: auto -150px -250px auto; width: 620px; height: 620px; background: radial-gradient(circle, rgba(47,125,255,.22), transparent 67%); border-radius: 50%; }
.tariff-grid-bg { position: absolute; inset: 0; opacity: .21; background-image: linear-gradient(rgba(102,147,203,.2) 1px, transparent 1px), linear-gradient(90deg, rgba(102,147,203,.2) 1px, transparent 1px); background-size: 60px 60px; mask-image: radial-gradient(ellipse at 75% 40%, black, transparent 75%); }
.prices-layout { position: relative; display: grid; grid-template-columns: .92fr 1.08fr; align-items: start; gap: clamp(42px, 7vw, 90px); }
.prices-copy > p:not(.eyebrow) { max-width: 560px; color: #a8b8cb; font-size: 17px; }
.price-photo { position: relative; height: 310px; margin: 34px 0 0; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 24px 24px 70px 24px; }
.price-photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.76), transparent 58%); }
.price-photo img { width: 100%; height: 100%; object-fit: cover; }
.price-photo figcaption { position: absolute; z-index: 2; left: 18px; bottom: 17px; }
.price-photo strong, .price-photo span { display: block; }
.price-photo strong { font-size: 15px; }
.price-photo span { color: #9cb0c6; font-size: 13px; }
.tariff-card { padding: 34px; color: var(--ink); background: #fff; border-radius: 28px; box-shadow: 0 44px 100px rgba(0,0,0,.25); }
.tariff-head { display: flex; justify-content: space-between; align-items: end; gap: 16px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.tariff-head span { font-size: 22px; font-weight: 850; }
.tariff-head small { color: var(--muted); }
.tariff-list { margin: 7px 0 18px; padding: 0; list-style: none; }
.tariff-list li { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 16px 4px; border-bottom: 1px solid #edf0f4; }
.tariff-list span { color: #3f5065; }
.tariff-list strong { flex: none; font-size: 18px; }
.tariff-note { display: grid; grid-template-columns: 1fr auto; gap: 3px 18px; margin: 22px 0; padding: 18px; color: #fff; background: var(--ink); border-radius: 15px; }
.tariff-note span { color: #adc0d5; font-size: 13px; }
.tariff-note strong { grid-row: span 2; color: var(--teal); font-size: 22px; }
.tariff-note small { color: #788ea7; }
.tariff-card .button { width: 100%; }

.process { position: relative; padding: 120px 0; overflow: hidden; background: #fff; }
.process::before { content: ""; position: absolute; width: 520px; height: 520px; left: -260px; top: 180px; border: 1px dashed rgba(47,125,255,.2); border-radius: 50%; box-shadow: 0 0 0 60px rgba(47,125,255,.02), 0 0 0 130px rgba(47,125,255,.018); }
.process-layout { position: relative; display: grid; grid-template-columns: .9fr 1.1fr; gap: 54px; align-items: center; }
.process-track { position: relative; display: grid; gap: 6px; }
.process-track::before { content: ""; position: absolute; left: 26px; top: 36px; bottom: 36px; width: 2px; background: linear-gradient(var(--blue), var(--teal)); transform-origin: top; animation: routeFlow 8s ease-in-out infinite; }
.process-track article { position: relative; display: grid; grid-template-columns: 54px 1fr; gap: 20px; padding: 18px 0; }
.process-track article > span { z-index: 1; display: grid; width: 54px; height: 54px; place-content: center; color: #fff; background: var(--blue); border: 7px solid #eaf1fc; border-radius: 50%; font-size: 11px; font-weight: 900; }
.process-track article:last-child > span { color: var(--ink); background: var(--teal); }
.process-track h3 { margin: 0 0 3px; font-size: 20px; }
.process-track p { margin: 0; color: var(--muted); }
.process-photo { position: relative; height: 610px; margin: 0; overflow: hidden; background: #dfe7ef; border-radius: 36px 36px 110px 36px; box-shadow: var(--shadow); }
.process-photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(5,18,32,.78), transparent 58%); }
.process-photo img { width: 100%; height: 100%; object-fit: cover; }
.process-photo figcaption { position: absolute; z-index: 2; left: 25px; right: 25px; bottom: 24px; }
.process-photo span, .process-photo strong { display: block; }
.process-photo span { color: var(--teal); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: 1px; }
.process-photo strong { margin-top: 4px; color: #fff; font-size: 19px; }

.fleet { position: relative; padding: 120px 0; overflow: hidden; }
.fleet::after { content: ""; position: absolute; top: 0; bottom: 0; left: 49%; width: 1px; background: linear-gradient(transparent, rgba(37,213,196,.23), transparent); }
.fleet-layout { display: grid; grid-template-columns: 1.12fr .88fr; gap: clamp(48px, 8vw, 105px); align-items: center; }
.fleet-visual { position: relative; height: 660px; overflow: hidden; background: #0b1b29; border: 1px solid rgba(255,255,255,.1); border-radius: 40px 40px 120px 40px; box-shadow: 0 45px 110px rgba(0,0,0,.3); }
.fleet-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(5,14,25,.66), transparent 55%); }
.fleet-visual img { width: 100%; height: 100%; object-fit: cover; }
.fleet-beam { position: absolute; z-index: 2; top: -20%; left: -60%; width: 42%; height: 140%; transform: skewX(-16deg); background: linear-gradient(90deg, transparent, rgba(37,213,196,.14), transparent); animation: beam 7s ease-in-out infinite; }
.fleet-label { position: absolute; z-index: 3; left: 24px; bottom: 24px; padding: 11px 14px; color: var(--teal); background: rgba(7,19,31,.78); border: 1px solid rgba(37,213,196,.26); border-radius: 12px; backdrop-filter: blur(14px); font-size: 13px; font-weight: 850; text-transform: uppercase; letter-spacing: .8px; }
.fleet-copy > p:not(.eyebrow) { color: #a9b9cc; font-size: 17px; }
.fleet-models { margin: 32px 0 25px; }
.fleet-models > div { padding: 17px 0; border-top: 1px solid rgba(255,255,255,.1); }
.fleet-models > div:last-child { border-bottom: 1px solid rgba(255,255,255,.1); }
.fleet-models strong, .fleet-models span { display: block; }
.fleet-models strong { font-size: 16px; }
.fleet-models span { margin-top: 3px; color: #8197ae; font-size: 14px; }

.areas { position: relative; padding: 120px 0; overflow: hidden; background: #edf4f8; }
.map-rings { position: absolute; width: 640px; height: 640px; left: -280px; top: 50%; transform: translateY(-50%); opacity: .36; }
.map-rings i { position: absolute; inset: 0; border: 1px dashed var(--blue); border-radius: 50%; }
.map-rings i:nth-child(2) { inset: 90px; border-color: var(--teal); }
.map-rings i:nth-child(3) { inset: 190px; border-color: var(--coral); }
.map-rings span { position: absolute; top: 50%; left: 50%; width: 12px; height: 12px; background: var(--coral); border-radius: 50%; animation: ping 2.4s ease-out infinite; }
.areas-layout { position: relative; display: grid; grid-template-columns: .92fr 1.08fr; gap: clamp(48px, 8vw, 100px); align-items: center; }
.areas-copy > p:not(.eyebrow) { color: var(--muted); font-size: 17px; }
.area-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0 20px; }
.area-tags span { padding: 9px 12px; color: #28425d; background: rgba(255,255,255,.72); border: 1px solid #d5e0e9; border-radius: 10px; font-size: 13px; font-weight: 800; }
.area-directions { margin: 0 0 28px; color: #4c6075; }
.area-directions strong { color: var(--ink); }
.button-dark { color: #fff; background: var(--ink); box-shadow: 0 16px 32px rgba(7,17,31,.18); }
.areas-photo { position: relative; height: 610px; margin: 0; overflow: hidden; background: #cbd9e5; border-radius: 36px 100px 36px 36px; box-shadow: var(--shadow); }
.areas-photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(5,16,29,.77), transparent 55%); }
.areas-photo img { width: 100%; height: 100%; object-fit: cover; }
.areas-photo figcaption { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 22px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 1px 12px; color: #fff; }
.areas-photo figcaption .pulse-dot { grid-row: span 2; }
.areas-photo figcaption strong { font-size: 18px; }
.areas-photo figcaption small { color: #abc0d3; }

.faq-contact { position: relative; padding: 120px 0; color: #fff; overflow: hidden; background: linear-gradient(125deg, #06111e, #0d2637 64%, #0f3b42); }
.faq-contact::before { content: ""; position: absolute; inset: 0; opacity: .16; background-image: radial-gradient(circle at 2px 2px, #74e8df 1px, transparent 0); background-size: 34px 34px; }
.faq-layout { position: relative; display: grid; grid-template-columns: 1.02fr .98fr; gap: clamp(42px, 7vw, 90px); align-items: start; }
.accordion { margin-top: 38px; }
.accordion details { border-top: 1px solid rgba(255,255,255,.14); }
.accordion details:last-child { border-bottom: 1px solid rgba(255,255,255,.14); }
.accordion summary { position: relative; padding: 22px 52px 22px 0; cursor: pointer; list-style: none; font-size: 17px; font-weight: 800; }
.accordion summary::-webkit-details-marker { display: none; }
.accordion summary::after { content: "+"; position: absolute; right: 7px; top: 50%; display: grid; width: 30px; height: 30px; place-content: center; transform: translateY(-50%); color: var(--teal); border: 1px solid rgba(37,213,196,.36); border-radius: 50%; transition: transform .25s ease; }
.accordion details[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.accordion details p { margin: -3px 50px 22px 0; color: #9eb1c7; }
.contact-card { position: relative; min-height: 680px; overflow: hidden; background: #14283b; border: 1px solid rgba(255,255,255,.15); border-radius: 38px 38px 110px 38px; box-shadow: 0 45px 100px rgba(0,0,0,.35); }
.contact-card::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.96) 0, rgba(4,13,24,.64) 47%, transparent 75%); }
.contact-card img { width: 100%; height: 680px; object-fit: cover; }
.contact-overlay { position: absolute; z-index: 2; left: 30px; right: 30px; bottom: 31px; }
.contact-overlay p { display: flex; align-items: center; gap: 10px; margin: 0 0 8px; color: #a9bdd0; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .7px; }
.contact-overlay h2 { margin-bottom: 16px; font-size: clamp(30px, 4vw, 47px); }
.contact-phone { display: block; margin-bottom: 20px; color: var(--teal); font-size: clamp(25px, 3vw, 38px); font-weight: 900; letter-spacing: -.8px; }
.contact-overlay .button { width: 100%; }
.second-phone { display: block; margin-top: 14px; color: #aebed0; text-align: center; font-size: 14px; }

.site-footer { padding: 64px 0 28px; color: #bdcbda; background: #030a13; border-top: 1px solid #172535; }
.footer-top { display: grid; grid-template-columns: 1.25fr 1fr 1fr 1fr; gap: 48px; }
.footer-brand img { width: 205px; }
.footer-links, .footer-contact { display: grid; align-content: start; gap: 9px; }
.footer-links strong, .footer-contact > strong { margin-bottom: 6px; color: #fff; font-size: 14px; }
.footer-links a { color: #8396aa; font-size: 14px; transition: color .2s ease; }
.footer-links a:hover { color: var(--teal); }
.footer-contact a { color: var(--teal); font-size: 17px; font-weight: 850; }
.footer-contact span { color: #72869a; font-size: 13px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 24px; margin-top: 50px; padding-top: 22px; color: #5e7185; border-top: 1px solid #182432; font-size: 12px; }
.mobile-call { display: none; }

/* Services page */
.inner-header { position: absolute; }

/* Edge-mounted motion diagrams were removed site-wide: they sat outside the
   content grid and could visually protrude beyond their section boundaries. */
main section > [aria-hidden="true"] {
  display: none !important;
}
.main-nav a.is-active { color: #fff; }
.main-nav a.is-active::after { right: 0; background: var(--teal); }
.services-hero-page { position: relative; min-height: 760px; padding: 150px 0 74px; overflow: hidden; isolation: isolate; }
.services-hero-page::before { content: ""; position: absolute; inset: 0; z-index: -3; background: radial-gradient(circle at 88% 12%, rgba(37,213,196,.17), transparent 32%), linear-gradient(125deg, #06111e, #0b1d2f 68%, #0d2c3a); }
.services-hero-layout { position: relative; display: grid; grid-template-columns: .95fr 1.05fr; gap: clamp(42px, 7vw, 92px); align-items: center; }
.breadcrumbs { display: flex; align-items: center; gap: 9px; margin-bottom: 40px; color: #7189a3; font-size: 13px; }
.breadcrumbs a { color: #b3c2d2; }
.services-hero-copy h1 { margin: 0 0 24px; font-size: clamp(48px, 5.6vw, 76px); line-height: .99; letter-spacing: -3.7px; }
.services-hero-copy > p:not(.eyebrow) { max-width: 650px; margin: 0; color: #b4c3d4; font-size: 18px; line-height: 1.65; }
.services-hero-image { position: relative; height: 540px; margin: 0; overflow: hidden; background: #14283b; border: 1px solid rgba(255,255,255,.13); border-radius: 38px 38px 100px 38px; box-shadow: 0 45px 100px rgba(0,0,0,.32); }
.services-hero-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.78), transparent 55%); }
.services-hero-image img { width: 100%; height: 100%; object-fit: cover; }
.services-hero-image figcaption { position: absolute; z-index: 2; left: 24px; bottom: 24px; }
.services-hero-image figcaption span, .services-hero-image figcaption strong { display: block; }
.services-hero-image figcaption span { color: var(--teal); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: 1px; }
.services-hero-image figcaption strong { margin-top: 3px; font-size: 18px; }
.anchor-strip { position: sticky; top: 0; z-index: 15; color: #fff; background: rgba(7,19,31,.94); border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(18px); }
.anchor-scroll { display: flex; align-items: center; gap: 7px; padding-block: 12px; overflow-x: auto; scrollbar-width: none; }
.anchor-scroll::-webkit-scrollbar { display: none; }
.anchor-scroll a { flex: none; padding: 9px 12px; color: #aebfd1; border: 1px solid rgba(255,255,255,.11); border-radius: 10px; font-size: 13px; font-weight: 750; transition: color .2s ease, border-color .2s ease, background .2s ease; }
.anchor-scroll a:hover { color: #07131f; background: var(--teal); border-color: var(--teal); }

.service-family { position: relative; padding: 120px 0; overflow: hidden; }
.service-family-light { background: #f4f7fa; }
.family-orbit { position: absolute; width: 620px; height: 620px; top: 100px; right: -310px; border: 1px dashed rgba(47,125,255,.22); border-radius: 50%; box-shadow: 0 0 0 70px rgba(47,125,255,.025), 0 0 0 140px rgba(47,125,255,.02); }
.family-layout { position: relative; display: grid; grid-template-columns: .86fr 1.14fr; gap: clamp(46px, 7vw, 90px); align-items: start; }
.family-image { position: sticky; top: 90px; height: 690px; margin: 0; overflow: hidden; background: #dbe5ed; border-radius: 34px 90px 34px 34px; box-shadow: var(--shadow); }
.family-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,15,27,.76), transparent 58%); }
.family-image img { width: 100%; height: 100%; object-fit: cover; }
.family-image figcaption, .special-image figcaption, .complex-image figcaption, .platform-image figcaption, .service-price-image figcaption { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 21px; color: #fff; }
.family-image figcaption span, .family-image figcaption strong, .special-image figcaption span, .special-image figcaption strong, .platform-image figcaption span, .platform-image figcaption strong, .service-price-image figcaption span, .service-price-image figcaption strong { display: block; }
.family-image figcaption span, .special-image figcaption span, .platform-image figcaption span { color: var(--teal); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: .9px; }
.family-image figcaption strong, .special-image figcaption strong, .platform-image figcaption strong { margin-top: 4px; font-size: 18px; }
.family-content > h2 { margin: 0 0 29px; font-size: clamp(38px, 4.8vw, 58px); line-height: 1.04; letter-spacing: -2.5px; }
.detail-card { position: relative; display: grid; grid-template-columns: 45px 1fr; gap: 20px; padding: 28px 0; border-top: 1px solid #d7e0e8; scroll-margin-top: 95px; }
.detail-card:last-child { border-bottom: 1px solid #d7e0e8; }
.detail-number { display: grid; width: 42px; height: 42px; place-content: center; color: var(--blue); background: #e7effd; border-radius: 13px; font-size: 12px; font-weight: 900; }
.detail-card h3 { margin: 3px 0 10px; font-size: 23px; line-height: 1.2; }
.detail-card p { margin: 0; color: var(--muted); }
.detail-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin: 15px 0 9px; }
.detail-meta strong { font-size: 15px; }
.detail-meta span { color: var(--muted); font-size: 13px; }
.detail-card a { color: var(--blue); font-size: 14px; font-weight: 800; }

.service-family-dark { padding-bottom: 130px; }
.special-layout { display: grid; grid-template-columns: 1fr .86fr; gap: 28px; align-items: stretch; }
.special-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.special-card { position: relative; display: flex; min-height: 285px; padding: 25px; flex-direction: column; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.1); border-radius: 22px; transition: transform .25s ease, border-color .25s ease, background .25s ease; scroll-margin-top: 95px; }
.special-card:hover { transform: translateY(-5px); background: rgba(255,255,255,.085); border-color: rgba(37,213,196,.28); }
.special-card > span { color: #5f758c; font-size: 12px; font-weight: 900; }
.special-card h3 { margin: 23px 0 8px; font-size: 22px; }
.special-card p { min-height: 68px; margin: 0 0 16px; color: #98acc1; }
.special-card strong, .special-card small { display: block; }
.special-card strong { color: var(--teal); font-size: 19px; }
.special-card small { color: #71879e; }
.special-card a { position: static; margin-top: auto; padding-top: 18px; color: var(--teal); font-size: 13px; font-weight: 800; }
.special-card-accent { color: var(--ink); background: linear-gradient(145deg, var(--teal), #7debe1); border-color: transparent; }
.special-card-accent > span, .special-card-accent strong, .special-card-accent a { color: #07312f; }
.special-card-accent p { color: #185653; }
.special-card-accent small { color: #2d716d; }

/* Layout and readability safeguards for integrated SEO and animated content. */
.home-v3 .egor-evak-ru-seo-content.seo-insert-slot {
  width: 100%;
  margin-inline: auto;
  overflow: hidden;
}
.home-v3 .egor-evak-ru-seo-content.seo-insert-slot > section {
  width: 100%;
  margin-inline: auto;
  padding-inline: max(24px, calc((100% - 1180px) / 2)) !important;
}
.home-v3 .egor-evak-ru-seo-content.seo-insert-slot :is(h2, h3, p, li, summary, th, td) {
  overflow-wrap: anywhere;
}
.home-v3 .egor-evak-ru-seo-content.seo-insert-slot > section > :is(h2, p) {
  max-width: 920px;
}
.home-v3 .faq-contact .faq-copy,
.home-v3 .faq-contact .faq-copy :is(h2, summary) { color: #0b1b2a !important; }
.home-v3 .faq-contact .faq-copy .eyebrow { color: #087f78 !important; }
.home-v3 .faq-contact .faq-copy .accordion details {
  border-color: rgba(11, 27, 42, .18) !important;
}
.home-v3 .faq-contact .faq-copy .accordion details p { color: #445b6f !important; }

/* Text must never depend on an observer firing. Decorative layers keep their motion. */
.js [data-motion^="man-"] .man-branch-map article,
.js [data-motion^="man-"] .man-clearance-grid > div,
.js [data-motion^="man-"] .man-quote-inputs > div,
.js [data-motion^="man-"] .man-faq-copy,
.js [data-motion^="man-"] .man-faq-list > details {
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
  clip-path: none !important;
}

/* Manipulator page: core information must remain visible before and after motion. */
.js [data-motion^="man-"] :is(
  .man-hero-copy,
  .man-terrain-heading,
  .man-terrain-photo,
  .man-photo-copy,
  .man-photo-frame,
  .man-shot-list > li,
  .man-clearance-photo,
  .man-clearance-panel,
  .man-airspace-heading > *,
  .man-airspace-photo,
  .man-altitude-scale > article,
  .man-handoff-photo,
  .man-handoff-copy,
  .man-role-lines > article,
  .man-rigging-heading,
  .man-rigging-sequence > article,
  .man-rigging-photo,
  .man-quote-photo,
  .man-quote-sheet,
  .man-faq-photo,
  .man-contact-console,
  .man-final-links > a
) {
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  clip-path: none !important;
}

@media (min-width: 1081px) {
  .man-page :is(.man-terrain, .man-photo, .man-airspace, .man-handoff, .man-rigging, .man-faq) {
    padding-block: 96px;
  }
  .man-page :is(.man-clearance, .man-quote, .man-contact) {
    min-height: 0;
    padding-block: 96px;
  }
  .man-page :is(.man-clearance-layout, .man-quote-layout, .man-contact-layout) {
    min-height: 650px;
  }
}

/* Underground parking page: never hide commercial content behind motion state. */
.js [data-motion^="prk-"] :is(
  .prk-hero-photo img,
  .prk-hero-copy,
  .prk-height-photo,
  .prk-height-slice,
  .prk-ceiling-list > li,
  .prk-route-heading,
  .prk-level-plan,
  .prk-level-plan > article,
  .prk-route-photo,
  .prk-photo-contact,
  .prk-photo-copy,
  .prk-contact-sheet > article,
  .prk-condition-heading > *,
  .prk-steering-console,
  .prk-steering-console dl > div,
  .prk-condition-photo,
  .prk-access-photo,
  .prk-access-pass,
  .prk-access-pass li,
  .prk-bay-copy,
  .prk-bay-plan > article,
  .prk-bay-note,
  .prk-bay-photo,
  .prk-quote-photo,
  .prk-dispatch-board,
  .prk-dispatch-board > dl > div,
  .prk-dispatch-board .hero-actions,
  .prk-faq-copy,
  .prk-faq-list > details,
  .prk-faq-photo,
  .prk-exit-panel,
  .prk-final-links > a
) {
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  translate: none !important;
  filter: none !important;
  clip-path: none !important;
}

@media (min-width: 1081px) {
  .prk-page :is(.prk-route, .prk-photo, .prk-condition, .prk-bay, .prk-faq) {
    padding-block: 96px;
  }
  .prk-page :is(.prk-height, .prk-access, .prk-quote, .prk-contact) {
    min-height: 0;
    padding-block: 96px;
  }
  .prk-page :is(.prk-height-layout, .prk-access-layout, .prk-quote-layout, .prk-contact-layout) {
    min-height: 650px;
  }
}

/* Site-wide fallback: semantic content cannot disappear when an entrance observer is late. */
.js [data-motion]:not([data-motion^="seo-"]) :is(
  figure,
  article,
  li,
  details,
  dl,
  table,
  [class*="-copy"],
  [class*="-heading"],
  [class*="-panel"],
  [class*="-board"],
  [class*="-console"],
  [class*="-sheet"],
  [class*="-card"],
  [class*="-list"],
  [class*="-grid"],
  [class*="-steps"],
  [class*="-photo"],
  .hero-actions
) {
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  translate: none !important;
  filter: none !important;
  clip-path: none !important;
}

.js [data-motion^="mzh-"] :is(
  .mzh-atlas,
  .mzh-atlas > article,
  .mzh-carbon-form,
  .mzh-carbon-top,
  .mzh-carbon-copy dl > div,
  .mzh-call-line,
  .mzh-spec-cassette,
  .mzh-spec-cassette > article,
  .mzh-inventory-copy,
  .mzh-organizer > article,
  .mzh-address-stack,
  .mzh-address-stack > article,
  .mzh-estimate-board,
  .mzh-abacus,
  .mzh-faq-copy,
  .mzh-faq-list > details,
  .mzh-contact-copy,
  .mzh-envelope
) {
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  translate: none !important;
  filter: none !important;
  clip-path: none !important;
}

/* Intercity page: compact full-screen compositions after content restoration. */
@media (min-width: 1081px) {
  .mzh-page :is(.mzh-reasons, .mzh-handoff, .mzh-spec, .mzh-receive, .mzh-faq) {
    padding-block: 96px;
  }
  .mzh-page :is(.mzh-route, .mzh-inventory, .mzh-estimate, .mzh-contact) {
    min-height: 0;
    padding-block: 96px;
  }
  .mzh-page :is(.mzh-route-layout, .mzh-inventory-layout, .mzh-estimate-layout, .mzh-contact-layout) {
    min-height: 650px;
  }
}
.special-card {
  height: auto !important;
  min-height: 320px !important;
  gap: 0;
  overflow: hidden;
}
.special-card p { min-height: 0; }
.special-card a {
  position: static !important;
  display: block;
  margin-top: auto !important;
  padding-top: 20px !important;
  line-height: 1.35;
}
@media (max-width: 700px) {
  .home-v3 .egor-evak-ru-seo-content.seo-insert-slot > section {
    padding-inline: 20px !important;
  }
  .special-card { min-height: 0 !important; }
}
.special-image { position: relative; min-height: 582px; margin: 0; overflow: hidden; background: #172b3d; border-radius: 30px 30px 90px 30px; }
.special-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.77), transparent 58%); }
.special-image img { width: 100%; height: 100%; object-fit: cover; }

.complex-services { position: relative; padding: 120px 0; overflow: hidden; background: linear-gradient(120deg, #eaf1f6 0 48%, #fff 48%); }
.complex-layout { display: grid; grid-template-columns: .96fr 1.04fr; gap: clamp(48px, 7vw, 90px); align-items: center; }
.complex-image { position: relative; height: 720px; margin: 0; overflow: hidden; background: #cdd9e3; border-radius: 100px 34px 34px 34px; box-shadow: var(--shadow); }
.complex-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(5,17,29,.78), transparent 55%); }
.complex-image img { width: 100%; height: 100%; object-fit: cover; }
.complex-image figcaption { padding: 12px 14px; background: rgba(7,19,31,.72); border: 1px solid rgba(255,255,255,.15); border-radius: 12px; backdrop-filter: blur(12px); font-size: 13px; }
.complex-copy h2, .platform-copy h2, .prepare-copy h2 { margin: 0 0 18px; font-size: clamp(38px, 4.8vw, 60px); line-height: 1.04; letter-spacing: -2.6px; }
.complex-copy > p:not(.eyebrow) { color: var(--muted); font-size: 17px; }
.complex-list { margin: 28px 0 30px; }
.complex-list article { display: grid; grid-template-columns: 38px 1fr; gap: 15px; padding: 15px 0; border-top: 1px solid #dce4eb; scroll-margin-top: 95px; }
.complex-list article:last-child { border-bottom: 1px solid #dce4eb; }
.complex-list article > span { color: var(--blue); font-size: 12px; font-weight: 900; }
.complex-list h3 { margin: 0 0 3px; font-size: 18px; }
.complex-list p { margin: 0; color: var(--muted); font-size: 14px; }

.platform-section { position: relative; padding: 120px 0; color: #fff; overflow: hidden; background: linear-gradient(125deg, #07131f, #10283a); }
.platform-section::before { content: ""; position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(37,213,196,.18) 1px, transparent 1px), linear-gradient(90deg, rgba(37,213,196,.18) 1px, transparent 1px); background-size: 50px 50px; mask-image: linear-gradient(to right, black, transparent 62%); }
.platform-layout { position: relative; display: grid; grid-template-columns: 1fr .95fr; gap: clamp(48px, 8vw, 100px); align-items: center; }
.platform-types { margin-top: 32px; }
.platform-types article { display: grid; grid-template-columns: 58px 1fr; gap: 18px; padding: 21px 0; border-top: 1px solid rgba(255,255,255,.12); scroll-margin-top: 95px; }
.platform-types article:last-child { border-bottom: 1px solid rgba(255,255,255,.12); }
.platform-icon { display: grid; width: 58px; height: 58px; place-content: center; color: var(--teal); background: rgba(37,213,196,.1); border: 1px solid rgba(37,213,196,.2); border-radius: 16px; }
.platform-icon svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.platform-types h3 { margin: 0 0 5px; font-size: 19px; }
.platform-types p { margin: 0; color: #8fa4ba; }
.platform-image { position: relative; height: 660px; margin: 0; overflow: hidden; background: #172b3e; border-radius: 36px 96px 36px 36px; box-shadow: 0 44px 100px rgba(0,0,0,.3); }
.platform-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(5,14,25,.77), transparent 55%); }
.platform-image img { width: 100%; height: 100%; object-fit: cover; }

.service-prices { position: relative; padding: 120px 0; overflow: hidden; }
.service-price-layout { position: relative; display: grid; grid-template-columns: .78fr 1.22fr; gap: 28px; align-items: stretch; }
.service-price-image { position: relative; min-height: 570px; margin: 0; overflow: hidden; background: #182c3e; border: 1px solid rgba(255,255,255,.12); border-radius: 30px 30px 82px 30px; }
.service-price-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.85), transparent 55%); }
.service-price-image img { width: 100%; height: 100%; object-fit: cover; }
.service-price-image figcaption strong { font-size: 18px; }
.service-price-image figcaption span { color: #9db1c5; font-size: 13px; }
.price-table-wrap { padding: 28px; color: var(--ink); background: #fff; border-radius: 28px; }
.price-table { width: 100%; border-collapse: collapse; }
.price-table th, .price-table td { padding: 17px 13px; text-align: left; border-bottom: 1px solid #e5ebf1; }
.price-table th { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .8px; }
.price-table td:nth-child(2), .price-table td:nth-child(3) { white-space: nowrap; font-weight: 850; }
.price-table td:nth-child(3) { color: var(--blue); }
.price-table-wrap > p { margin: 22px 0; color: var(--muted); font-size: 14px; }
.price-table-wrap .button { width: 100%; }

.prepare { position: relative; padding: 120px 0; overflow: hidden; background: #f2f7fa; }
.prepare::before { content: ""; position: absolute; width: 650px; height: 650px; right: -330px; bottom: -340px; border: 1px dashed rgba(47,125,255,.23); border-radius: 50%; box-shadow: 0 0 0 80px rgba(47,125,255,.025), 0 0 0 160px rgba(47,125,255,.02); }
.prepare-layout { position: relative; display: grid; grid-template-columns: 1fr .82fr; gap: clamp(45px, 7vw, 86px); align-items: center; }
.check-list { display: grid; gap: 11px; margin: 29px 0; padding: 0; list-style: none; }
.check-list li { position: relative; padding: 13px 16px 13px 48px; background: #fff; border: 1px solid #dde6ed; border-radius: 13px; }
.check-list li::before { content: "✓"; position: absolute; left: 15px; top: 11px; display: grid; width: 24px; height: 24px; place-content: center; color: #07312f; background: var(--teal); border-radius: 8px; font-size: 13px; font-weight: 900; }
.intercity-note { padding: 17px; color: #4a5e72; background: #e5edf4; border-left: 3px solid var(--blue); border-radius: 0 12px 12px 0; }
.intercity-note strong { color: var(--ink); }
.related-links { display: flex; flex-wrap: wrap; gap: 8px; }
.related-links a { padding: 9px 12px; color: var(--blue); background: #fff; border: 1px solid #d8e2ea; border-radius: 9px; font-size: 13px; font-weight: 800; }
.prepare-contact { position: relative; min-height: 650px; overflow: hidden; color: #fff; background: #14283b; border-radius: 38px 38px 100px 38px; box-shadow: var(--shadow); }
.prepare-contact::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.96), rgba(4,13,24,.55) 55%, transparent 76%); }
.prepare-contact > img { width: 100%; height: 650px; object-fit: cover; }
.prepare-contact > div { position: absolute; z-index: 2; left: 27px; right: 27px; bottom: 28px; }
.prepare-contact > div > span { display: flex; align-items: center; gap: 10px; color: #a6b9cc; font-size: 13px; font-weight: 850; }
.prepare-contact h2 { margin: 8px 0 11px; font-size: clamp(30px, 4vw, 45px); line-height: 1.07; letter-spacing: -1.6px; }
.prepare-contact > div > a:not(.button) { display: block; margin-bottom: 18px; color: var(--teal); font-size: clamp(24px, 3vw, 34px); font-weight: 900; }
.prepare-contact .button { width: 100%; }

/* Individual motion scenes on the homepage */
.motion-section > .container { position: relative; z-index: 2; }
.quote-motion { position: absolute; width: 360px; height: 360px; top: -120px; right: -85px; opacity: .38; pointer-events: none; }
.quote-motion i { position: absolute; inset: 0; border: 1px dashed rgba(23,104,255,.38); border-radius: 50%; }
.quote-motion i:nth-child(2) { inset: 68px; border-color: rgba(37,213,196,.52); }
.quote-motion span { position: absolute; left: 50%; top: -6px; width: 12px; height: 12px; background: var(--coral); border-radius: 50%; box-shadow: 0 0 0 8px rgba(255,102,77,.12); transform-origin: 0 186px; }
.incident-beacons { position: absolute; z-index: 1; width: 230px; height: 170px; top: 92px; right: 6vw; opacity: .5; pointer-events: none; }
.incident-beacons i { position: absolute; width: 10px; height: 10px; background: var(--teal); border: 2px solid #fff; border-radius: 50%; }
.incident-beacons i:nth-child(1) { left: 8%; top: 64%; }
.incident-beacons i:nth-child(2) { left: 52%; top: 16%; background: var(--coral); }
.incident-beacons i:nth-child(3) { right: 5%; bottom: 8%; background: var(--blue); }
.service-blueprint-runner { position: absolute; z-index: 1; width: 260px; height: 98px; top: 110px; right: 5vw; opacity: .5; border-left: 1px solid rgba(23,104,255,.34); border-bottom: 1px solid rgba(23,104,255,.34); border-radius: 0 0 0 42px; pointer-events: none; }
.service-blueprint-runner i, .service-blueprint-runner b { position: absolute; width: 9px; height: 9px; background: var(--blue); border-radius: 50%; box-shadow: 0 0 0 7px rgba(23,104,255,.08); }
.service-blueprint-runner i { left: -5px; top: -4px; }
.service-blueprint-runner b { right: -5px; bottom: -5px; background: var(--teal); box-shadow: 0 0 0 7px rgba(37,213,196,.1); }
.service-blueprint-runner span { position: absolute; left: -1px; bottom: -2px; width: 66px; height: 3px; background: linear-gradient(90deg, var(--blue), var(--cyan), transparent); border-radius: 4px; }
.price-wave { position: absolute; z-index: 1; top: 92px; right: 6vw; display: flex; height: 84px; align-items: flex-end; gap: 7px; opacity: .46; pointer-events: none; }
.price-wave i { width: 8px; height: 100%; background: linear-gradient(to top, var(--teal), var(--cyan)); border-radius: 5px; transform: scaleY(.24); transform-origin: bottom; }
.price-wave i:nth-child(2) { height: 64%; }
.price-wave i:nth-child(3) { height: 84%; }
.price-wave i:nth-child(4) { height: 48%; }
.price-wave i:nth-child(5) { height: 74%; }
.price-wave i:nth-child(6) { height: 36%; }
.process-compass { position: absolute; z-index: 0; width: 210px; height: 210px; top: 48px; right: 4vw; opacity: .18; border: 1px solid var(--blue); border-radius: 50%; pointer-events: none; }
.process-compass i { position: absolute; inset: 34px; border: 1px dashed var(--teal); border-radius: 50%; }
.process-compass span { position: absolute; left: calc(50% - 2px); top: 23px; width: 4px; height: 82px; background: linear-gradient(var(--coral), transparent); border-radius: 4px; transform-origin: 2px 82px; }
.process-track::after { content: ""; position: absolute; z-index: 2; left: 21px; top: 36px; width: 12px; height: 12px; background: #fff; border: 3px solid var(--blue); border-radius: 50%; box-shadow: 0 0 0 7px rgba(23,104,255,.12); opacity: 0; }
.fleet-gauge { position: absolute; z-index: 1; width: 250px; height: 125px; top: 64px; right: 4vw; overflow: hidden; opacity: .28; pointer-events: none; }
.fleet-gauge i { position: absolute; inset: 0 0 -125px; border: 1px solid var(--teal); border-radius: 50%; }
.fleet-gauge b { position: absolute; left: 18px; right: 18px; bottom: 0; height: 1px; background: linear-gradient(90deg, var(--blue), var(--teal), var(--coral)); }
.fleet-gauge span { position: absolute; left: 50%; bottom: 0; width: 3px; height: 94px; background: linear-gradient(var(--coral), transparent); border-radius: 4px; transform: rotate(-56deg); transform-origin: 50% bottom; }
.dispatch-signal { position: absolute; z-index: 1; width: 390px; height: 390px; left: -135px; bottom: -125px; opacity: .28; pointer-events: none; }
.dispatch-signal i { position: absolute; inset: 0; border: 1px solid rgba(37,213,196,.62); border-radius: 50%; }
.dispatch-signal i:nth-child(2) { inset: 72px; border-color: rgba(85,216,255,.68); }
.dispatch-signal i:nth-child(3) { inset: 145px; border-color: rgba(255,102,77,.75); }
.dispatch-signal span { position: absolute; left: calc(50% - 7px); top: calc(50% - 7px); width: 14px; height: 14px; background: var(--teal); border-radius: 50%; box-shadow: 0 0 0 10px rgba(37,213,196,.1); }

@keyframes homeHeroGrid { to { background-position: 72px 36px; } }
@keyframes homeRouteFloat { 50% { transform: translateY(-12px); filter: drop-shadow(0 0 12px rgba(85,216,255,.42)); } }
@keyframes quoteOrbit { to { transform: rotate(360deg); } }
@keyframes quoteBeacon { to { transform: rotate(360deg); } }
@keyframes incidentPing { 0% { box-shadow: 0 0 0 0 currentColor; opacity: 1; } 78%, 100% { box-shadow: 0 0 0 30px transparent; opacity: .52; } }
@keyframes blueprintShift { to { background-position: 44px 22px; } }
@keyframes blueprintRun { 0%, 10% { left: -1px; } 90%, 100% { left: calc(100% - 65px); } }
@keyframes priceWave { 0%, 100% { transform: scaleY(.24); opacity: .35; } 48% { transform: scaleY(1); opacity: 1; } }
@keyframes compassNeedle { 0% { transform: rotate(-34deg); } 50% { transform: rotate(64deg); } 100% { transform: rotate(326deg); } }
@keyframes routeMarker { 0% { top: 36px; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { top: calc(100% - 48px); opacity: 0; } }
@keyframes gaugeSweep { 0%, 100% { transform: rotate(-56deg); } 50% { transform: rotate(56deg); } }
@keyframes areaSpin { to { transform: rotate(360deg); } }
@keyframes dispatchRing { 0% { transform: scale(.5); opacity: .9; } 100% { transform: scale(1.08); opacity: 0; } }
@keyframes dispatchGrid { to { background-position: 34px 17px; } }

.hero.is-motion-active .hero-grid { animation: homeHeroGrid 13s linear infinite; }
.hero.is-motion-active .route-line { animation: homeRouteFloat 4.8s ease-in-out infinite; }
.quick-quote.is-motion-active .quote-motion i:first-child { animation: quoteOrbit 22s linear infinite; }
.quick-quote.is-motion-active .quote-motion i:nth-child(2) { animation: quoteOrbit 14s linear infinite reverse; }
.quick-quote.is-motion-active .quote-motion span { animation: quoteBeacon 6s linear infinite; }
.situations .signal-line { animation: none; }
.situations.is-motion-active .signal-line { animation: signalMove 6s ease-in-out infinite; }
.situations.is-motion-active .incident-beacons i { animation: incidentPing 2.8s ease-out infinite; }
.situations.is-motion-active .incident-beacons i:nth-child(2) { animation-delay: .85s; }
.situations.is-motion-active .incident-beacons i:nth-child(3) { animation-delay: 1.7s; }
.services-preview.is-motion-active .blueprint { animation: blueprintShift 10s linear infinite; }
.services-preview.is-motion-active .service-blueprint-runner span { animation: blueprintRun 4.6s ease-in-out infinite alternate; }
.prices.is-motion-active .price-wave i { animation: priceWave 1.9s ease-in-out infinite; }
.prices.is-motion-active .price-wave i:nth-child(2) { animation-delay: -.35s; }
.prices.is-motion-active .price-wave i:nth-child(3) { animation-delay: -.8s; }
.prices.is-motion-active .price-wave i:nth-child(4) { animation-delay: -1.2s; }
.prices.is-motion-active .price-wave i:nth-child(5) { animation-delay: -.55s; }
.prices.is-motion-active .price-wave i:nth-child(6) { animation-delay: -1.45s; }
.process.is-motion-active .process-compass span { animation: compassNeedle 7.5s cubic-bezier(.55,.05,.25,1) infinite; }
.process.is-motion-active .process-track::after { animation: routeMarker 5.8s ease-in-out infinite; }
.fleet .fleet-beam { animation: none; }
.fleet.is-motion-active .fleet-beam { animation: beam 7s ease-in-out infinite; }
.fleet.is-motion-active .fleet-gauge span { animation: gaugeSweep 4.8s ease-in-out infinite; }
.areas.is-motion-active .map-rings i:first-child { animation: areaSpin 30s linear infinite; }
.areas.is-motion-active .map-rings i:nth-child(2) { animation: areaSpin 21s linear infinite reverse; }
.areas.is-motion-active .map-rings i:nth-child(3) { animation: areaSpin 13s linear infinite; }
.faq-contact.is-motion-active .dispatch-signal i { animation: dispatchRing 4.8s ease-out infinite; }
.faq-contact.is-motion-active .dispatch-signal i:nth-child(2) { animation-delay: 1.1s; }
.faq-contact.is-motion-active .dispatch-signal i:nth-child(3) { animation-delay: 2.2s; }
.faq-contact.is-motion-active::before { animation: dispatchGrid 9s linear infinite; }

/* Fleet page */
.fleet-hero { position: relative; min-height: 820px; padding: 154px 0 78px; overflow: hidden; isolation: isolate; background: radial-gradient(circle at 78% 18%, rgba(37,213,196,.16), transparent 27%), linear-gradient(125deg, #06101d 0%, #091a2d 57%, #0a2c36 100%); }
.fleet-hero-grid { position: absolute; inset: 0; z-index: -2; opacity: .22; background-image: linear-gradient(rgba(85,216,255,.15) 1px, transparent 1px), linear-gradient(90deg, rgba(85,216,255,.15) 1px, transparent 1px); background-size: 68px 68px; mask-image: linear-gradient(to bottom, #000 0 72%, transparent); }
.fleet-hero-orbit { position: absolute; z-index: -1; width: 760px; height: 760px; top: -310px; right: -240px; opacity: .4; }
.fleet-hero-orbit i { position: absolute; inset: 0; border: 1px dashed rgba(85,216,255,.42); border-radius: 50%; }
.fleet-hero-orbit i:nth-child(2) { inset: 110px; border-color: rgba(37,213,196,.5); }
.fleet-hero-orbit span { position: absolute; top: 49%; left: 49%; width: 11px; height: 11px; background: var(--coral); border-radius: 50%; box-shadow: 0 0 0 10px rgba(255,102,77,.12); }
.fleet-hero-layout { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(44px, 6vw, 84px); }
.fleet-hero-copy { position: relative; z-index: 2; }
.fleet-hero-copy h1 { max-width: 700px; margin: 0 0 24px; font-size: clamp(50px, 5.7vw, 78px); line-height: .99; letter-spacing: -3.7px; }
.fleet-hero-lead { max-width: 660px; margin: 0; color: #b7c7d8; font-size: 18px; line-height: 1.68; }
.fleet-hero-points { display: grid; grid-template-columns: repeat(3, 1fr); margin: 42px 0 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.14); }
.fleet-hero-points li { padding: 20px 16px 0 0; }
.fleet-hero-points strong, .fleet-hero-points span { display: block; }
.fleet-hero-points strong { color: #fff; font-size: 15px; }
.fleet-hero-points span { margin-top: 4px; color: #8195aa; font-size: 12px; line-height: 1.45; }
.fleet-hero-image { position: relative; height: 610px; margin: 0; overflow: hidden; background: #14293c; border: 1px solid rgba(255,255,255,.14); border-radius: 38px 38px 110px 38px; box-shadow: 0 46px 110px rgba(0,0,0,.36); }
.fleet-hero-image::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.84), transparent 54%), linear-gradient(105deg, rgba(4,13,24,.2), transparent 58%); pointer-events: none; }
.fleet-hero-image > img { width: 100%; height: 100%; object-fit: cover; }
.fleet-hero-image figcaption { position: absolute; z-index: 3; left: 25px; right: 25px; bottom: 25px; display: grid; gap: 2px; padding: 14px 16px; color: #fff; background: rgba(5,18,31,.74); border: 1px solid rgba(255,255,255,.15); border-radius: 13px; backdrop-filter: blur(14px); }
.fleet-hero-image figcaption span { color: var(--teal); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: .9px; }
.fleet-hero-image figcaption strong { font-size: 16px; }
.fleet-hero-scan { position: absolute; z-index: 2; top: -15%; bottom: -15%; left: -42%; width: 24%; transform: skewX(-13deg); background: linear-gradient(90deg, transparent, rgba(85,216,255,.18), rgba(255,255,255,.28), transparent); pointer-events: none; }
.fleet-page .fleet-anchor { border-top-color: rgba(37,213,196,.18); }

.fleet-match { position: relative; padding: 120px 0; overflow: hidden; background: linear-gradient(145deg, #edf3f9, #fff 68%); }
.match-radar { position: absolute; width: 540px; height: 540px; right: -245px; top: 22px; opacity: .3; }
.match-radar i { position: absolute; inset: 0; border: 1px solid rgba(23,104,255,.3); border-radius: 50%; }
.match-radar i:nth-child(2) { inset: 100px; border-style: dashed; border-color: rgba(37,213,196,.42); }
.match-radar span { position: absolute; top: 50%; left: 50%; width: 46%; height: 2px; transform-origin: left center; background: linear-gradient(90deg, rgba(23,104,255,.75), transparent); }
.fleet-criteria { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; }
.criterion-card { position: relative; min-height: 316px; display: flex; padding: 25px; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid #dbe4ed; border-radius: 22px; box-shadow: 0 18px 50px rgba(17,43,75,.07); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.criterion-card:hover { transform: translateY(-7px); border-color: rgba(23,104,255,.3); box-shadow: 0 26px 66px rgba(17,43,75,.12); }
.criterion-card::after { content: ""; position: absolute; width: 150px; height: 150px; right: -62px; bottom: -82px; background: radial-gradient(circle, rgba(23,104,255,.12), transparent 67%); border-radius: 50%; }
.criterion-number { color: #7990a6; font-size: 12px; font-weight: 900; }
.criterion-card svg { width: 48px; height: 48px; margin: 34px 0 23px; fill: none; stroke: var(--blue); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.criterion-card h3 { margin: 0 0 8px; font-size: 20px; }
.criterion-card p { margin: 0; color: var(--muted); font-size: 14px; }
.criterion-card-accent { color: var(--ink); background: linear-gradient(145deg, var(--teal), #8cece4); border-color: transparent; }
.criterion-card-accent .criterion-number, .criterion-card-accent p { color: #2c6d68; }
.criterion-card-accent svg { stroke: #07312f; }
.criterion-card-accent::after { background: radial-gradient(circle, rgba(255,255,255,.3), transparent 66%); }

.fleet-catalog-section { position: relative; padding: 125px 0 136px; overflow: hidden; background: linear-gradient(135deg, #07111f, #0d2032 54%, #0a2732); }
.catalog-track { position: absolute; top: 300px; bottom: 190px; left: 50%; width: 1px; background: linear-gradient(transparent, rgba(37,213,196,.34) 10%, rgba(85,216,255,.27) 90%, transparent); }
.catalog-track i { position: absolute; top: 0; left: -4px; width: 9px; height: 9px; background: var(--teal); border-radius: 50%; box-shadow: 0 0 0 9px rgba(37,213,196,.1); }
.catalog-track span { position: absolute; inset: 0 -3px; background: linear-gradient(transparent, rgba(255,255,255,.8), transparent); opacity: .65; }
.fleet-units { position: relative; display: grid; gap: 34px; }
.fleet-unit { position: relative; display: grid; grid-template-columns: 1.04fr .96fr; min-height: 520px; overflow: hidden; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.1); border-radius: 30px; box-shadow: 0 36px 90px rgba(0,0,0,.16); }
.fleet-unit-reverse { grid-template-columns: .96fr 1.04fr; }
.fleet-unit-reverse .fleet-unit-photo { order: 2; }
.fleet-unit-photo { position: relative; min-height: 520px; margin: 0; overflow: hidden; background: #193045; }
.fleet-unit-photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.76), transparent 54%); }
.fleet-unit-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.fleet-unit:hover .fleet-unit-photo img { transform: scale(1.035); }
.fleet-unit-photo figcaption { position: absolute; z-index: 2; left: 22px; bottom: 21px; display: flex; align-items: center; gap: 10px; color: #fff; font-size: 14px; font-weight: 800; }
.fleet-unit-photo figcaption span { display: grid; width: 38px; height: 38px; place-content: center; color: var(--ink); background: var(--teal); border-radius: 50%; font-size: 11px; }
.fleet-unit-copy { display: flex; padding: clamp(34px, 5vw, 64px); flex-direction: column; justify-content: center; }
.fleet-unit-tag { margin: 0 0 14px; color: var(--teal); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: 1px; }
.fleet-unit-copy h3 { margin: 0 0 17px; color: #fff; font-size: clamp(30px, 3.6vw, 48px); line-height: 1.04; letter-spacing: -1.8px; }
.fleet-unit-copy > p:not(.fleet-unit-tag) { margin: 0; color: #9eb0c3; font-size: 16px; }
.fleet-unit-copy ul { display: grid; gap: 8px; margin: 25px 0 22px; padding: 0; list-style: none; }
.fleet-unit-copy li { position: relative; padding-left: 20px; color: #c3d0de; font-size: 14px; }
.fleet-unit-copy li::before { content: ""; position: absolute; top: .65em; left: 0; width: 8px; height: 2px; background: var(--teal); }

.fleet-equipment { position: relative; padding: 120px 0; overflow: hidden; background: #f1f6fa; }
.equipment-scan-lines { position: absolute; inset: 0; opacity: .34; pointer-events: none; }
.equipment-scan-lines i { position: absolute; left: -15%; width: 130%; height: 1px; background: linear-gradient(90deg, transparent, rgba(23,104,255,.26), transparent); }
.equipment-scan-lines i:nth-child(1) { top: 22%; }
.equipment-scan-lines i:nth-child(2) { top: 52%; }
.equipment-scan-lines i:nth-child(3) { top: 79%; }
.equipment-layout { position: relative; display: grid; grid-template-columns: .94fr 1.06fr; gap: clamp(46px, 7vw, 88px); align-items: center; }
.equipment-photo { position: relative; height: 720px; margin: 0; overflow: hidden; background: #142a3e; border-radius: 36px 36px 100px 36px; box-shadow: var(--shadow); }
.equipment-photo::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(4,13,24,.84), transparent 58%); }
.equipment-photo img { width: 100%; height: 100%; object-fit: cover; }
.equipment-photo figcaption { position: absolute; z-index: 3; left: 24px; right: 24px; bottom: 23px; display: grid; gap: 2px; color: #fff; }
.equipment-photo figcaption span { color: var(--teal); font-size: 12px; font-weight: 850; text-transform: uppercase; letter-spacing: .9px; }
.equipment-photo figcaption strong { font-size: 17px; }
.equipment-laser { position: absolute; z-index: 2; left: 0; right: 0; top: -3%; height: 2px; background: linear-gradient(90deg, transparent 4%, var(--teal), #fff, var(--teal), transparent 96%); box-shadow: 0 0 24px rgba(37,213,196,.8); opacity: .76; }
.equipment-copy h2 { margin: 0 0 18px; font-size: clamp(38px, 4.8vw, 60px); line-height: 1.03; letter-spacing: -2.6px; }
.equipment-copy > p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: 17px; }
.equipment-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 28px 0 30px; }
.equipment-grid article { position: relative; min-height: 170px; padding: 20px; background: #fff; border: 1px solid #dbe4ed; border-radius: 17px; }
.equipment-grid article > span { color: var(--blue); font-size: 11px; font-weight: 900; }
.equipment-grid h3 { margin: 22px 0 5px; font-size: 18px; }
.equipment-grid p { margin: 0; color: var(--muted); font-size: 13px; }

.fleet-choice { position: relative; padding: 120px 0; overflow: hidden; background: #fff; }
.choice-route { position: absolute; top: 35px; right: 5vw; width: 210px; height: 135px; border-top: 2px dashed rgba(23,104,255,.25); border-right: 2px dashed rgba(23,104,255,.25); border-radius: 0 70px 0 0; }
.choice-route i, .choice-route b { position: absolute; width: 11px; height: 11px; background: var(--blue); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 6px rgba(23,104,255,.11); }
.choice-route i { left: -5px; top: -6px; }
.choice-route b { right: -6px; bottom: -5px; background: var(--coral); box-shadow: 0 0 0 6px rgba(255,102,77,.1); }
.choice-route span { position: absolute; width: 13px; height: 13px; left: 0; top: -7px; background: var(--teal); border-radius: 50%; box-shadow: 0 0 0 7px rgba(37,213,196,.12); }
.choice-table-wrap { position: relative; padding: 12px 28px; overflow: hidden; background: #f7f9fc; border: 1px solid #dce4ed; border-radius: 24px; box-shadow: 0 22px 65px rgba(17,43,75,.08); }
.choice-table { width: 100%; border-collapse: collapse; }
.choice-table th, .choice-table td { padding: 20px 14px; text-align: left; border-bottom: 1px solid #dde5ed; vertical-align: top; }
.choice-table th { color: #718195; font-size: 12px; text-transform: uppercase; letter-spacing: .8px; }
.choice-table td { font-size: 15px; }
.choice-table tr:last-child td { border-bottom: 0; }
.choice-table td:first-child { width: 28%; font-weight: 800; }
.choice-table td:nth-child(2) { width: 40%; color: var(--muted); }
.choice-table a { color: var(--blue); font-weight: 800; }

.fleet-faq-contact { position: relative; }
.fleet-call-waves { position: absolute; width: 620px; height: 620px; right: -250px; top: 50%; transform: translateY(-50%); opacity: .27; }
.fleet-call-waves i { position: absolute; inset: 0; border: 1px solid rgba(37,213,196,.5); border-radius: 50%; }
.fleet-call-waves i:nth-child(2) { inset: 100px; border-color: rgba(85,216,255,.55); }
.fleet-call-waves i:nth-child(3) { inset: 205px; border-color: rgba(255,102,77,.55); }

@keyframes fleetHeroGrid { to { background-position: 68px 34px; } }
@keyframes fleetHeroScan { 0%, 14% { left: -42%; } 58%, 100% { left: 132%; } }
@keyframes fleetOrbit { to { transform: rotate(360deg); } }
@keyframes matchRadar { to { transform: rotate(360deg); } }
@keyframes catalogPulse { 0% { top: 0; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { top: calc(100% - 9px); opacity: 0; } }
@keyframes catalogSweep { 0%, 20% { transform: translateY(-100%); } 75%, 100% { transform: translateY(100%); } }
@keyframes equipmentLaser { 0%, 12% { top: -3%; opacity: 0; } 22% { opacity: .8; } 82% { opacity: .8; } 100% { top: 103%; opacity: 0; } }
@keyframes equipmentLines { 50% { transform: translateX(7%); opacity: .7; } }
@keyframes choiceDrive { 0%, 10% { left: 0; top: -7px; } 58% { left: calc(100% - 7px); top: -7px; } 100% { left: calc(100% - 7px); top: calc(100% - 7px); } }
@keyframes callWave { 0% { transform: scale(.62); opacity: .78; } 100% { transform: scale(1.08); opacity: 0; } }

.fleet-hero.is-motion-active .fleet-hero-grid { animation: fleetHeroGrid 12s linear infinite; }
.fleet-hero.is-motion-active .fleet-hero-scan { animation: fleetHeroScan 6.8s ease-in-out infinite; }
.fleet-hero.is-motion-active .fleet-hero-orbit { animation: fleetOrbit 34s linear infinite; }
.fleet-match.is-motion-active .match-radar span { animation: matchRadar 5.8s linear infinite; }
.fleet-catalog-section.is-motion-active .catalog-track i { animation: catalogPulse 6s ease-in-out infinite; }
.fleet-catalog-section.is-motion-active .catalog-track span { animation: catalogSweep 7s ease-in-out infinite; }
.fleet-equipment.is-motion-active .equipment-laser { animation: equipmentLaser 5.2s ease-in-out infinite; }
.fleet-equipment.is-motion-active .equipment-scan-lines i:nth-child(1) { animation: equipmentLines 5.5s ease-in-out infinite; }
.fleet-equipment.is-motion-active .equipment-scan-lines i:nth-child(2) { animation: equipmentLines 7s ease-in-out infinite reverse; }
.fleet-equipment.is-motion-active .equipment-scan-lines i:nth-child(3) { animation: equipmentLines 6.2s ease-in-out infinite; }
.fleet-choice.is-motion-active .choice-route span { animation: choiceDrive 5.5s ease-in-out infinite; }
.fleet-faq-contact.is-motion-active .fleet-call-waves i { animation: callWave 4.6s ease-out infinite; }
.fleet-faq-contact.is-motion-active .fleet-call-waves i:nth-child(2) { animation-delay: 1.1s; }
.fleet-faq-contact.is-motion-active .fleet-call-waves i:nth-child(3) { animation-delay: 2.2s; }

@keyframes ping { 70%, 100% { box-shadow: 0 0 0 12px transparent; } }
@keyframes signalMove { 50% { transform: translateX(18px); opacity: .45; } }
@keyframes routeFlow { 50% { transform: scaleY(.75); filter: saturate(1.5); } }
@keyframes beam { 0%, 15% { left: -60%; } 55%, 100% { left: 140%; } }

.js .reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.js .reveal.is-visible { opacity: 1; transform: none; }
.reveal-delay { transition-delay: .12s; }
@keyframes breathe { 50% { transform: scale(1.09) translate3d(15px, 8px, 0); opacity: .9; } }

@media (max-width: 1020px) {
  .header-inner { grid-template-columns: 205px 1fr auto; }
  .brand img { width: 196px; }
  .main-nav { gap: 15px; }
  .main-nav a { font-size: 14px; }
  .header-call .status { display: none; }
  .hero { min-height: 0; }
  .hero-layout { grid-template-columns: 1fr 410px; gap: 34px; }
  .hero h1 { font-size: 56px; }
  .visual-frame, .visual-frame > img { min-height: 540px; height: 540px; }
  .quote-shell { gap: 34px; }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .situation-layout { grid-template-columns: 1fr 1fr; }
  .situation-card { min-height: 116px; }
  .fleet-layout { gap: 48px; }
  .fleet-visual { height: 580px; }
  .footer-top { grid-template-columns: 1.2fr 1fr 1fr; }
  .footer-contact { grid-column: 2 / -1; }
  .services-hero-layout { grid-template-columns: 1fr .9fr; gap: 38px; }
  .services-hero-copy h1 { font-size: 54px; }
  .services-hero-image { height: 500px; }
  .family-layout { grid-template-columns: .8fr 1.2fr; gap: 42px; }
  .special-layout { grid-template-columns: 1.12fr .88fr; }
  .complex-layout, .platform-layout { gap: 44px; }
  .service-price-layout { grid-template-columns: .7fr 1.3fr; }
  .fleet-hero-layout { grid-template-columns: .88fr 1.12fr; gap: 38px; }
  .fleet-hero-copy h1 { font-size: 55px; }
  .fleet-hero-image { height: 560px; }
  .fleet-criteria { grid-template-columns: repeat(2, 1fr); }
  .criterion-card { min-height: 275px; }
  .fleet-unit-copy { padding: 38px; }
  .equipment-layout { gap: 44px; }
  .equipment-photo { height: 650px; }
}

@media (max-width: 820px) {
  .container { width: min(100% - 28px, 680px); }
  .site-header { position: absolute; }
  .header-inner { min-height: 76px; grid-template-columns: 1fr auto; }
  .brand img { width: 178px; }
  .menu-toggle { width: 44px; height: 44px; display: grid; place-content: center; gap: 5px; padding: 0; border: 1px solid rgba(255,255,255,.17); border-radius: 12px; }
  .menu-toggle span:not(.sr-only) { width: 19px; height: 2px; background: #fff; border-radius: 2px; transition: transform .2s ease, opacity .2s ease; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .main-nav { position: absolute; top: 76px; left: 14px; right: 14px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 10px; color: var(--ink); background: #fff; border-radius: 16px; box-shadow: var(--shadow); }
  .main-nav.is-open { display: flex; }
  .main-nav a { padding: 12px; color: var(--ink); }
  .main-nav a.is-active { color: var(--blue); }
  .header-call { display: none; }
  .hero { padding: 126px 0 26px; }
  .hero-layout { grid-template-columns: 1fr; }
  .hero h1 { font-size: clamp(44px, 12vw, 66px); letter-spacing: -3px; }
  .hero-lead { font-size: 17px; }
  .hero-visual { order: 2; }
  .visual-frame { min-height: 480px; border-radius: 26px 26px 86px 26px; transform: none; }
  .visual-frame > img { height: 480px; min-height: 480px; }
  .trust-strip { grid-template-columns: 1fr 1fr; margin-top: 28px; }
  .quote-shell { grid-template-columns: 1fr; padding: 28px; }
  .section-heading { align-items: start; flex-direction: column; margin-bottom: 34px; }
  .section-heading h2, .prices h2, .fleet h2, .areas h2, .faq-contact h2 { font-size: clamp(35px, 9vw, 52px); letter-spacing: -2px; }
  .situations, .services-preview, .prices, .process, .fleet, .areas, .faq-contact { padding: 86px 0; }
  .situation-layout, .prices-layout, .process-layout, .fleet-layout, .areas-layout, .faq-layout { grid-template-columns: 1fr; }
  .situation-photo { min-height: 470px; }
  .situation-photo img { min-height: 470px; }
  .situation-list { grid-template-columns: 1fr 1fr; }
  .situation-card { grid-template-columns: 50px 1fr; min-height: 146px; }
  .situation-card > b { display: none; }
  .situation-card .line-icon { width: 50px; height: 50px; }
  .service-stage { height: 350px; }
  .price-photo { height: 380px; }
  .prices-layout, .areas-layout { gap: 38px; }
  .process-layout { gap: 40px; }
  .process-photo { height: 520px; }
  .fleet::after { display: none; }
  .fleet-visual { height: 520px; order: 2; }
  .areas-photo { height: 520px; }
  .map-rings { opacity: .2; }
  .contact-card, .contact-card img { min-height: 600px; height: 600px; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-contact { grid-column: auto; }
  .services-hero-page { min-height: 0; padding: 126px 0 70px; }
  .services-hero-layout, .family-layout, .special-layout, .complex-layout, .platform-layout, .service-price-layout, .prepare-layout { grid-template-columns: 1fr; }
  .services-hero-copy h1 { font-size: clamp(43px, 10vw, 64px); letter-spacing: -2.8px; }
  .services-hero-image { height: 470px; }
  .service-family, .complex-services, .platform-section, .service-prices, .prepare { padding: 86px 0; }
  .family-image { position: relative; top: auto; height: 520px; }
  .special-layout, .complex-layout, .platform-layout, .service-price-layout, .prepare-layout { gap: 38px; }
  .special-image { min-height: 500px; order: -1; }
  .complex-image { height: 520px; }
  .platform-image { height: 540px; order: -1; }
  .service-price-image { min-height: 460px; }
  .prepare-contact { min-height: 570px; }
  .prepare-contact > img { height: 570px; }
  .fleet-hero { min-height: 0; padding: 126px 0 70px; }
  .fleet-hero-layout, .equipment-layout { grid-template-columns: 1fr; }
  .fleet-hero-copy h1 { font-size: clamp(43px, 10vw, 64px); letter-spacing: -2.8px; }
  .fleet-hero-image { height: 520px; }
  .fleet-hero-points { max-width: 640px; }
  .fleet-match, .fleet-catalog-section, .fleet-equipment, .fleet-choice { padding: 86px 0; }
  .fleet-unit, .fleet-unit-reverse { grid-template-columns: 1fr; }
  .fleet-unit-reverse .fleet-unit-photo { order: 0; }
  .fleet-unit-photo { min-height: 470px; }
  .catalog-track { display: none; }
  .equipment-photo { height: 570px; order: 2; }
  .choice-route { opacity: .45; }
  .fleet-call-waves { opacity: .16; }
  .quote-motion { top: -105px; right: -135px; opacity: .26; }
  .incident-beacons { width: 180px; height: 130px; top: 66px; right: -32px; opacity: .3; }
  .service-blueprint-runner { width: 210px; top: 72px; right: -48px; opacity: .3; }
  .price-wave { top: 64px; right: 22px; height: 62px; opacity: .34; }
  .process-compass { width: 170px; height: 170px; top: 34px; right: -54px; opacity: .12; }
  .fleet-gauge { width: 190px; height: 95px; top: 38px; right: -38px; opacity: .2; }
  .dispatch-signal { width: 310px; height: 310px; left: -145px; bottom: -110px; opacity: .22; }
}

@media (max-width: 540px) {
  body { padding-bottom: 68px; }
  .hero-copy { padding-top: 8px; }
  .eyebrow { align-items: flex-start; flex-direction: column; line-height: 1.2; }
  .hero h1 { font-size: 45px; line-height: 1.02; letter-spacing: -2.2px; }
  .hero-actions, .hero-actions .button { width: 100%; }
  .hero-facts { display: grid; grid-template-columns: 1fr 1fr; row-gap: 18px; }
  .hero-facts li { min-width: 0; padding: 0 14px; }
  .hero-facts li:nth-child(3) { padding-left: 0; border-left: 0; }
  .visual-frame { min-height: 405px; }
  .visual-frame > img { height: 405px; min-height: 405px; }
  .arrival-card { top: 14px; right: 14px; }
  .price-chip { left: 14px; bottom: 14px; }
  .route-line { display: none; }
  .trust-strip { grid-template-columns: 1fr; }
  .quote-shell { padding: 22px; }
  .quote-form { grid-template-columns: 1fr; }
  .quote-result, .quote-form .button { grid-column: auto; }
  .quote-result { grid-template-columns: 1fr; }
  .quote-result strong { grid-row: auto; }
  .quote-image { height: 210px; }
  .section-heading h2, .prices h2, .fleet h2, .areas h2, .faq-contact h2 { font-size: 36px; letter-spacing: -1.6px; }
  .situations, .services-preview, .prices, .process, .fleet, .areas, .faq-contact { padding: 72px 0; }
  .situation-photo, .situation-photo img { min-height: 390px; }
  .situation-list { grid-template-columns: 1fr; }
  .situation-card { min-height: 112px; }
  .service-stage { height: 360px; border-radius: 24px 24px 66px 24px; }
  .service-stage::after { background: linear-gradient(to top, rgba(5,16,30,.92), rgba(5,16,30,.18) 78%); }
  .service-stage-copy { top: auto; right: 22px; bottom: 24px; left: 22px; transform: none; }
  .service-stage-copy strong { font-size: 30px; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 300px; }
  .tariff-card { padding: 22px; }
  .tariff-head { align-items: start; flex-direction: column; }
  .tariff-list li { align-items: start; flex-direction: column; gap: 4px; }
  .tariff-note { grid-template-columns: 1fr; }
  .tariff-note strong { grid-row: auto; }
  .price-photo { height: 290px; }
  .process-track article { grid-template-columns: 47px 1fr; gap: 15px; }
  .process-track article > span { width: 47px; height: 47px; }
  .process-track::before { left: 22px; }
  .process-photo, .fleet-visual, .areas-photo { height: 420px; }
  .process-photo { border-radius: 26px 26px 75px 26px; }
  .fleet-visual { border-radius: 28px 28px 80px 28px; }
  .areas-photo { border-radius: 26px 72px 26px 26px; }
  .area-tags { gap: 6px; }
  .area-tags span { padding: 8px 10px; }
  .accordion summary { padding-right: 42px; }
  .accordion details p { margin-right: 10px; }
  .contact-card, .contact-card img { min-height: 540px; height: 540px; }
  .contact-overlay { left: 20px; right: 20px; bottom: 24px; }
  .footer-top { grid-template-columns: 1fr; gap: 32px; }
  .footer-contact { grid-column: auto; }
  .footer-bottom { align-items: flex-start; flex-direction: column; margin-top: 38px; }
  .mobile-call { position: fixed; z-index: 50; left: 8px; right: 8px; bottom: 8px; display: flex; align-items: center; justify-content: space-between; min-height: 58px; padding: 9px 14px; color: var(--ink); background: linear-gradient(135deg, var(--teal), var(--cyan)); border: 1px solid rgba(255,255,255,.55); border-radius: 15px; box-shadow: 0 14px 40px rgba(3,14,23,.32); }
  .mobile-call span { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .7px; }
  .mobile-call strong { font-size: 15px; }
  .services-hero-copy h1 { font-size: 42px; letter-spacing: -2px; }
  .breadcrumbs { margin-bottom: 28px; }
  .services-hero-image { height: 380px; border-radius: 26px 26px 72px 26px; }
  .service-family, .complex-services, .platform-section, .service-prices, .prepare { padding: 72px 0; }
  .family-content > h2, .complex-copy h2, .platform-copy h2, .prepare-copy h2 { font-size: 36px; letter-spacing: -1.6px; }
  .family-image { height: 420px; border-radius: 26px 70px 26px 26px; }
  .detail-card { grid-template-columns: 1fr; }
  .detail-meta { align-items: flex-start; flex-direction: column; }
  .special-grid { grid-template-columns: 1fr; }
  .special-card { min-height: 270px; }
  .special-image { min-height: 410px; }
  .complex-image { height: 420px; border-radius: 70px 26px 26px 26px; }
  .complex-list article { grid-template-columns: 30px 1fr; }
  .platform-types article { grid-template-columns: 50px 1fr; gap: 14px; }
  .platform-icon { width: 50px; height: 50px; }
  .platform-image { height: 430px; border-radius: 26px 72px 26px 26px; }
  .service-price-image { min-height: 380px; }
  .price-table-wrap { padding: 14px; overflow-x: auto; }
  .price-table { min-width: 580px; }
  .price-table th, .price-table td { padding: 14px 10px; }
  .prepare-contact { min-height: 510px; border-radius: 28px 28px 78px 28px; }
  .prepare-contact > img { height: 510px; }
  .related-links { flex-direction: column; }
  .fleet-hero-copy h1 { font-size: 42px; letter-spacing: -2px; }
  .fleet-hero-lead { font-size: 17px; }
  .fleet-hero-image { height: 390px; border-radius: 26px 26px 76px 26px; }
  .fleet-hero-image figcaption { left: 14px; right: 14px; bottom: 14px; }
  .fleet-hero-points { grid-template-columns: 1fr; gap: 0; }
  .fleet-hero-points li { padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .fleet-match, .fleet-catalog-section, .fleet-equipment, .fleet-choice { padding: 72px 0; }
  .fleet-criteria { grid-template-columns: 1fr; }
  .criterion-card { min-height: 255px; }
  .criterion-card svg { margin: 25px 0 18px; }
  .fleet-unit { min-height: 0; border-radius: 24px; }
  .fleet-unit-photo { min-height: 340px; }
  .fleet-unit-copy { padding: 28px 22px 32px; }
  .fleet-unit-copy h3 { font-size: 31px; letter-spacing: -1.2px; }
  .equipment-photo { height: 430px; border-radius: 26px 26px 76px 26px; }
  .equipment-copy h2 { font-size: 36px; letter-spacing: -1.6px; }
  .equipment-grid { grid-template-columns: 1fr; }
  .equipment-grid article { min-height: 145px; }
  .choice-table-wrap { padding: 6px 12px; overflow-x: auto; }
  .choice-table { min-width: 720px; }
  .choice-table th, .choice-table td { padding: 16px 10px; }
  .choice-route { display: none; }
  .quote-motion { top: -124px; right: -178px; opacity: .2; }
  .incident-beacons { right: -92px; opacity: .24; }
  .service-blueprint-runner { right: -115px; opacity: .22; }
  .price-wave { top: 42px; right: 14px; height: 52px; opacity: .3; }
  .process-compass { width: 142px; height: 142px; right: -68px; opacity: .1; }
  .fleet-gauge { right: -86px; opacity: .16; }
  .dispatch-signal { width: 255px; height: 255px; left: -126px; bottom: -92px; }
}

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

/* Global navigation for the complete SEO structure */
.main-nav .global-menu,.main-nav .nav-submenu{list-style:none;margin:0;padding:0}.main-nav .global-menu{display:flex;align-items:center;gap:4px}.main-nav .global-menu>li{position:relative}.main-nav .global-menu>li>a,.nav-branch-head>a,.nav-branch-head>button{display:flex;align-items:center;min-height:44px;padding:9px 11px;border:0;background:transparent;color:inherit;font:inherit;text-decoration:none;white-space:nowrap}.nav-branch-head{display:flex;align-items:center}.nav-branch-head>button{padding-left:4px;cursor:pointer}.nav-submenu{position:absolute;left:0;top:calc(100% + 6px);z-index:80;display:grid;min-width:290px;padding:10px!important;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:#0c1c2b;box-shadow:0 20px 55px rgba(0,0,0,.35);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease,visibility .18s}.nav-submenu-geo{min-width:250px}.nav-submenu a{display:block;padding:9px 11px;border-radius:9px;color:#dbe8f2;text-decoration:none;font-size:14px;line-height:1.25}.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#183249;color:#24d6c6}.submenu-label{padding:9px 11px 4px;color:#6f91aa;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.nav-branch:hover>.nav-submenu,.nav-branch:focus-within>.nav-submenu,.nav-branch.is-submenu-open>.nav-submenu{opacity:1;visibility:visible;transform:none}.main-nav [aria-current=page]{color:#24d6c6!important}.site-header,.header-inner{overflow:visible}
@media(max-width:900px){.main-nav .global-menu{display:grid;align-items:stretch}.main-nav .global-menu>li>a,.nav-branch-head>a{flex:1}.nav-branch-head{width:100%}.nav-submenu{position:static;display:none;min-width:0;margin:3px 0 9px 14px!important;box-shadow:none;opacity:1;visibility:visible;transform:none}.nav-branch.is-submenu-open>.nav-submenu{display:grid}.main-nav.is-open{overflow:auto;max-height:calc(100vh - 80px)}}

/* Integrated optimization: text stays static, decorative layers animate independently */
