:root {
    --brand-primary: #0635bf;
    --brand-accent: #007eff;
    --brand-accent-2: #3398ff;
    --navy-1000: #020a15;
    --navy-950: #041224;
    --navy-900: #06172f;
    --navy-850: #0a2748;
    --ink-950: #07182b;
    --ink-800: #153554;
    --ink-700: #294b6d;
    --ink-600: #476786;
    --ink-500: #688099;
    --surface: #f4f8fc;
    --surface-2: #eaf3fb;
    --blue-50: #edf6ff;
    --blue-100: #dcecff;
    --line: #d3e1ee;
    --white: #fff;
    --shadow-sm: 0 12px 30px rgba(5, 37, 72, .08);
    --shadow-md: 0 28px 70px rgba(2, 24, 52, .16);
    --radius-sm: 14px;
    --radius-md: 22px;
    --radius-lg: 30px;
    --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: var(--ink-800);
    background: var(--white);
    font-family: Montserrat, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.68;
    text-rendering: optimizeLegibility;
}
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
.icon { width: 1.08em; height: 1.08em; flex: none; overflow: visible; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 1000; padding: .7rem 1rem; border-radius: 8px; color: #fff; background: var(--brand-primary); }
.skip-link:focus { top: 14px; }
:focus-visible { outline: 3px solid rgba(0,126,255,.45); outline-offset: 3px; }

h1, h2, h3 { margin: 0 0 .8rem; color: var(--ink-950); line-height: 1.1; letter-spacing: -.035em; }
h1 { font-size: clamp(2.6rem, 6vw, 5rem); }
h2 { font-size: clamp(2rem, 4vw, 3.35rem); }
h3 { font-size: 1.25rem; }
p { margin: 0 0 1rem; color: var(--ink-600); }
strong { color: inherit; }
.text-link { color: var(--brand-primary); font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }

.site-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid rgba(255,255,255,.08); background: rgba(4,18,36,.97); backdrop-filter: blur(18px); }
.navbar { min-height: 72px; display: flex; align-items: center; gap: 1.25rem; }
.brand { display: flex; align-items: center; width: 175px; }
.brand img { width: 175px; height: auto; }
.navbar nav { margin-left: auto; }
.nav-links { display: flex; align-items: center; gap: .35rem; margin: 0; padding: 0; list-style: none; }
.nav-links a { display: inline-flex; align-items: center; min-height: 42px; padding: .6rem .85rem; border-radius: 12px; color: rgba(255,255,255,.78); font-size: .92rem; font-weight: 750; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: #fff; background: rgba(255,255,255,.09); }
.menu-toggle { display: none; margin-left: auto; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.12); border-radius: 12px; color: #fff; background: rgba(255,255,255,.08); cursor: pointer; }
.menu-toggle span, .menu-toggle span::before, .menu-toggle span::after { display: block; width: 22px; height: 2px; margin: auto; border-radius: 3px; background: currentColor; content: ""; transition: .2s ease; }
.menu-toggle span::before { transform: translateY(-7px); }
.menu-toggle span::after { transform: translateY(5px); }
.menu-toggle[aria-expanded="true"] span { background: transparent; }
.menu-toggle[aria-expanded="true"] span::before { transform: translateY(0) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span::after { transform: translateY(-2px) rotate(-45deg); }

.hero, .page-hero { position: relative; overflow: hidden; color: #fff; background: linear-gradient(145deg, var(--navy-950), #082c53); }
.hero::before, .page-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 78% 18%, rgba(0,126,255,.25), transparent 35%), radial-gradient(circle at 18% 85%, rgba(6,53,191,.22), transparent 40%); pointer-events: none; }
.hero-grid, .page-hero-grid { position: relative; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(430px, .98fr); align-items: center; gap: clamp(2.5rem, 6vw, 5rem); padding-block: clamp(4rem, 8vw, 7rem); }
.hero h1, .page-hero h1 { color: #fff; }
.hero p, .page-hero p { max-width: 710px; color: rgba(255,255,255,.8); font-size: clamp(1.04rem, 1.6vw, 1.2rem); }
.hero strong, .page-hero strong { color: #fff; }
.accent { color: #56adff; }
.eyebrow { display: inline-flex; align-items: center; gap: .6rem; margin-bottom: 1rem; color: var(--brand-accent); font-size: .78rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 28px; height: 2px; background: currentColor; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.8rem; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 48px; padding: .78rem 1.1rem; border: 1px solid transparent; border-radius: 12px; font-weight: 800; line-height: 1.2; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-primary { color: #fff; background: var(--brand-accent); box-shadow: 0 12px 28px rgba(0,126,255,.28); }
.btn-primary:hover { background: #168aff; }
.btn-secondary { color: #fff; border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.06); }
.btn-secondary:hover { background: rgba(255,255,255,.12); }
.hero-points { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .75rem 1.35rem; margin: 1.7rem 0 0; padding: 0; list-style: none; }
.hero-points li { display: flex; align-items: flex-start; gap: .6rem; color: rgba(255,255,255,.9); font-size: .9rem; font-weight: 700; }
.hero-points .icon { margin-top: .22rem; color: #63b6ff; }

.icon-box { width: 48px; height: 48px; display: inline-grid; place-items: center; border-radius: 14px; color: #fff; background: linear-gradient(145deg, var(--brand-primary), var(--brand-accent)); box-shadow: 0 10px 22px rgba(0,88,200,.16); }
.icon-box .icon { width: 22px; height: 22px; }
.icon-box.mini { width: 38px; height: 38px; margin-bottom: .65rem; border-radius: 11px; }
.icon-box.mini .icon { width: 17px; height: 17px; }

.product-showcase { display: grid; gap: 1rem; padding: 1rem; border: 1px solid rgba(255,255,255,.14); border-radius: var(--radius-lg); background: rgba(255,255,255,.055); box-shadow: var(--shadow-md); }
.showcase-card { padding: 1.35rem; border: 1px solid rgba(255,255,255,.13); border-radius: 20px; background: rgba(255,255,255,.085); }
.showcase-card h3 { color: #fff; font-size: 1.45rem; }
.showcase-card p { margin: 0; color: rgba(255,255,255,.7); font-size: .9rem; }
.showcase-head { display: flex; align-items: center; gap: .8rem; margin-bottom: .8rem; }
.showcase-details { display: grid; grid-template-columns: repeat(3, 1fr); gap: .55rem; margin-top: 1rem; }
.showcase-pill { padding: .6rem .7rem; border-radius: 11px; color: rgba(255,255,255,.84); background: rgba(255,255,255,.075); font-size: .72rem; font-weight: 750; text-align: center; }

.operation-window { padding: 1rem; border: 1px solid rgba(255,255,255,.15); border-radius: 28px; background: rgba(255,255,255,.055); box-shadow: var(--shadow-md); }
.window-bar { display: flex; align-items: center; justify-content: space-between; gap: .8rem; margin-bottom: .8rem; color: rgba(255,255,255,.75); font-size: .78rem; font-weight: 750; }
.window-bar strong { color: #fff; }
.window-grid { display: grid; grid-template-columns: 165px 1fr; min-height: 350px; overflow: hidden; border-radius: 20px; background: #f5f9fd; }
.window-list { display: grid; align-content: start; gap: .65rem; padding: 1rem; border-right: 1px solid #d8e4ee; background: #fff; }
.order-row { padding: .7rem; border: 1px solid #dce7ef; border-radius: 12px; background: #fbfdff; }
.order-row strong { display: block; color: var(--ink-950); font-size: .76rem; }
.order-row span { display: block; color: var(--ink-500); font-size: .66rem; }
.map-surface { position: relative; overflow: hidden; min-height: 350px; background: linear-gradient(35deg,#e9f1f7 25%,#f7fafc 25%,#f7fafc 50%,#e9f1f7 50%,#e9f1f7 75%,#f7fafc 75%); background-size: 90px 90px; }
.map-surface::before, .map-surface::after { content: ""; position: absolute; width: 500px; height: 18px; background: #fff; box-shadow: 0 0 0 1px #d9e3eb; transform: rotate(-24deg); }
.map-surface::before { left: -80px; top: 85px; }
.map-surface::after { left: -15px; top: 235px; transform: rotate(20deg); }
.route-path { position: absolute; z-index: 2; left: 18%; top: 22%; width: 64%; height: 55%; border-left: 6px solid var(--brand-accent); border-bottom: 6px solid var(--brand-accent); border-radius: 0 0 0 50px; transform: rotate(-8deg); }
.map-marker { position: absolute; z-index: 3; width: 36px; height: 36px; display: grid; place-items: center; border: 4px solid #fff; border-radius: 50% 50% 50% 8px; color: #fff; background: var(--brand-accent); box-shadow: 0 8px 18px rgba(0,70,140,.25); transform: rotate(-45deg); font-size: .7rem; font-weight: 800; }
.map-marker span { transform: rotate(45deg); }
.marker-a { left: 18%; top: 58%; }
.marker-b { right: 20%; top: 24%; }
.delivery-dot { position: absolute; z-index: 4; right: 35%; top: 50%; width: 42px; height: 42px; display: grid; place-items: center; border: 4px solid #fff; border-radius: 50%; color: #fff; background: var(--brand-primary); box-shadow: 0 10px 24px rgba(0,53,106,.28); }
.delivery-dot .icon { width: 18px; height: 18px; }
.map-status { position: absolute; z-index: 4; right: 18px; bottom: 18px; max-width: 230px; padding: .8rem .9rem; border-radius: 13px; background: rgba(255,255,255,.96); box-shadow: var(--shadow-sm); }
.map-status strong { display: block; color: var(--ink-950); font-size: .8rem; }
.map-status span { display: block; color: var(--ink-500); font-size: .68rem; }

.section { padding-block: clamp(4rem, 7vw, 6.3rem); }
.compact-section { padding-block: 3.2rem; }
.section-soft { background: var(--surface); }
.section-blue { background: linear-gradient(180deg,#eef6ff,#f8fbff); }
.section-dark { color:#fff; background:var(--navy-950); }
.section-head { max-width: 800px; margin-bottom: 2.3rem; }
.section-head.center { margin-inline: auto; text-align: center; }
.section-head.center .eyebrow { justify-content: center; }
.section-head p { font-size: 1.05rem; }

.logo-strip { padding-block: 2.1rem; border-bottom: 1px solid var(--line); background: #fff; }
.logo-strip h2 { margin-bottom: 1.35rem; color: var(--ink-600); font-size: .87rem; letter-spacing: 0; text-align:center; }
.logo-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); align-items:stretch; gap:.75rem; }
.client-logo { min-height:100px; display:grid; place-items:center; padding:1rem; border:1px solid var(--line); border-radius:16px; background:#fff; }
.client-logo img { width:auto; max-width:100%; max-height:60px; object-fit:contain; }
.client-logo.dark { background:#07131f; }

.product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.product-card { display:flex; flex-direction:column; min-height:100%; padding:clamp(1.5rem,3vw,2.2rem); border:1px solid var(--line); border-radius:var(--radius-md); background:#fff; box-shadow:var(--shadow-sm); }
.product-head { display:flex; align-items:center; gap:.85rem; margin-bottom:1rem; }
.product-card h3 { margin:0; font-size:1.8rem; }
.kicker { color:var(--brand-primary); font-size:.82rem; font-weight:800; }
.product-card .btn { align-self:flex-start; margin-top:auto; }
.check-list { display:grid; gap:.65rem; margin:.7rem 0 1.5rem; padding:0; list-style:none; }
.check-list.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.check-list li { position:relative; padding-left:1.55rem; color:var(--ink-700); font-size:.91rem; font-weight:650; }
.check-list li::before { content:"✓"; position:absolute; left:0; top:.11rem; width:1.05rem; height:1.05rem; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--brand-accent); font-size:.66rem; font-weight:900; }

.info-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.info-card, .problem-card, .mode-card, .people-module, .profile-card { padding:1.45rem; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:0 10px 26px rgba(4,36,64,.055); }
.info-card .icon-box, .problem-card .icon-box, .mode-card .icon-box, .people-module .icon-box, .profile-card .icon-box, .core-card .icon-box, .commercial-card .icon-box { margin-bottom:1rem; }
.info-card p:last-child, .problem-card p:last-child, .mode-card p:last-child, .people-module p:last-child, .profile-card p:last-child { margin-bottom:0; }

.split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:center; gap:clamp(2rem,6vw,5rem); }
.feature-list { display:grid; gap:.85rem; margin:1.35rem 0 0; padding:0; list-style:none; }
.feature-list li { display:grid; grid-template-columns:48px 1fr; gap:.85rem; align-items:start; }
.feature-list strong { display:block; margin-bottom:.1rem; color:var(--ink-950); }
.feature-list > li > div > span { display:block; color:var(--ink-600); font-size:.9rem; }
.feature-list > li > .icon-box { display:inline-grid; place-items:center; color:#fff; font-size:inherit; }
.feature-list > li > .icon-box .icon { width:22px; height:22px; }
.plain-note { margin-top:1.1rem; padding:1rem 1.1rem; border-left:4px solid var(--brand-accent); border-radius:0 12px 12px 0; background:var(--blue-50); }

.problem-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.problem-card h3 { font-size:1.08rem; }
.problem-card p { font-size:.89rem; }
.rule-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin-top:1.3rem; }
.rule-item { display:flex; gap:.7rem; padding:.85rem; border:1px solid #d9e9f8; border-radius:14px; background:var(--blue-50); }
.rule-item > .icon { width:19px; height:19px; margin-top:.15rem; color:var(--brand-primary); }
.rule-item strong { display:block; color:var(--ink-950); font-size:.85rem; }
.rule-item span { display:block; color:var(--ink-600); font-size:.75rem; }
.route-dashboard { display:grid; align-content:center; gap:.78rem; padding:1.1rem; border-radius:22px; color:#fff; background:linear-gradient(145deg,var(--navy-900),#0a3968); box-shadow:var(--shadow-md); }
.dash-title { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.dash-title span { color:#72baff; font-size:.75rem; font-weight:800; }
.route-row { display:grid; grid-template-columns:36px 1fr auto; align-items:center; gap:.75rem; padding:.78rem; border-radius:13px; background:rgba(255,255,255,.08); }
.route-number { width:36px; height:36px; display:grid; place-items:center; border-radius:10px; color:#fff; background:var(--brand-accent); font-weight:800; font-size:.95rem; line-height:1; }
.route-row strong { display:block; font-size:.8rem; }
.route-row > div > span { display:block; color:rgba(255,255,255,.62); font-size:.69rem; }
.route-time { color:#86c6ff!important; font-weight:800; }

.tracking-panel { min-height:450px; display:grid; grid-template-columns:1.12fr .88fr; gap:1rem; padding:1rem; border:1px solid var(--line); border-radius:26px; background:#fff; box-shadow:var(--shadow-sm); }

.operation-window-image {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}
.operation-window-image img {
    width: 100%;
    height: auto;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 28px;
    box-shadow: var(--shadow-md);
}
.tracking-map-image {
    overflow: hidden;
    min-height: 420px;
    border: 1px solid var(--line);
    border-radius: 19px;
    background: #f5f9fd;
}
.tracking-map-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.tracking-map { position:relative; overflow:hidden; min-height:420px; border-radius:19px; background:linear-gradient(35deg,#e9f1f7 25%,#f9fbfd 25%,#f9fbfd 50%,#e9f1f7 50%,#e9f1f7 75%,#f9fbfd 75%); background-size:95px 95px; }
.tracking-map::before,.tracking-map::after { content:""; position:absolute; width:700px; height:20px; background:#fff; box-shadow:0 0 0 1px #d7e1e9; }
.tracking-map::before { left:-180px; top:100px; transform:rotate(25deg); }
.tracking-map::after { left:-80px; top:285px; transform:rotate(-17deg); }
.tracking-route { position:absolute; z-index:2; inset:25% 18% 22% 18%; border-right:7px solid var(--brand-accent); border-bottom:7px solid var(--brand-accent); border-radius:0 0 44px 0; }
.tracking-map .delivery-dot { right:35%; top:40%; }
.tracking-map .marker-a { left:16%; top:66%; }
.tracking-map .marker-b { right:13%; top:18%; }
.tracking-side { display:grid; align-content:start; gap:.75rem; }
.tracking-card { padding:1rem; border:1px solid var(--line); border-radius:16px; background:#fbfdff; }
.tracking-card h3 { font-size:1rem; }
.tracking-card p { margin:0; font-size:.84rem; }
.tracking-status { display:flex; align-items:center; gap:.7rem; }
.status-dot { width:12px; height:12px; border-radius:50%; background:var(--brand-accent); box-shadow:0 0 0 5px var(--blue-100); }
.mode-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.mode-card p { font-size:.89rem; }

.bridge { padding:clamp(2rem,5vw,3.5rem); border-radius:28px; color:#fff; background:linear-gradient(135deg,var(--brand-primary),#092d70); box-shadow:var(--shadow-md); }
.bridge .eyebrow { color:#86c6ff; }
.bridge h2 { color:#fff; }
.bridge p { max-width:900px; margin-bottom:0; color:rgba(255,255,255,.8); font-size:1.04rem; }
.commercial-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.1rem; }
.commercial-card { display:flex; flex-direction:column; padding:1.65rem; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:var(--shadow-sm); }
.commercial-card h3 { font-size:1.55rem; }
.commercial-card .check-list { margin-top:.6rem; }
.card-explanation { margin-top:auto; padding:1rem; border-radius:13px; background:var(--blue-50); font-size:.8rem; }
.scenario-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.1rem; }
.scenario-card { padding:1.6rem; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:var(--shadow-sm); }
.scenario-card .icon-box { margin-bottom:1rem; }
.scenario-flow { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; margin-top:1.2rem; }
.scenario-flow span { padding:.55rem .7rem; border-radius:10px; color:var(--brand-primary); background:var(--blue-50); font-size:.78rem; font-weight:800; }
.scenario-flow b { color:var(--brand-accent); }

.people-visual { padding:1rem; border:1px solid rgba(255,255,255,.14); border-radius:28px; background:rgba(255,255,255,.055); box-shadow:var(--shadow-md); }
.people-dashboard { overflow:hidden; border-radius:20px; background:#f7fafc; }
.people-top { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem; color:#fff; background:var(--brand-primary); }
.people-top strong { font-size:.9rem; }
.people-top span { font-size:.72rem; opacity:.72; }
.people-body { display:grid; grid-template-columns:1fr 1.1fr; gap:.8rem; padding:.8rem; }
.people-metrics { display:grid; gap:.65rem; }
.people-metric { padding:.85rem; border:1px solid var(--line); border-radius:14px; background:#fff; }
.people-metric strong { display:block; color:var(--ink-950); font-size:1.1rem; }
.people-metric span { color:var(--ink-500); font-size:.72rem; }
.schedule-card { padding:.9rem; border:1px solid var(--line); border-radius:14px; background:#fff; }
.schedule-card h3 { font-size:.9rem; }
.schedule-row { display:grid; grid-template-columns:42px 1fr auto; align-items:center; gap:.55rem; padding:.55rem 0; border-bottom:1px solid #edf2f6; font-size:.7rem; }
.schedule-row:last-child { border-bottom:0; }
.schedule-day { color:var(--brand-primary); font-weight:800; }
.schedule-time { color:var(--ink-500); }
.schedule-state { padding:.22rem .45rem; border-radius:999px; color:var(--brand-primary); background:var(--blue-50); font-weight:800; }
.core-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.1rem; }
.core-card { padding:1.65rem; border:1px solid var(--line); border-radius:22px; background:#fff; box-shadow:var(--shadow-sm); }
.core-card h3 { font-size:1.55rem; }
.people-modules { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.people-module h3 { font-size:1.14rem; }
.people-module p { font-size:.89rem; }
.profile-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.profile-card h3 { font-size:1.2rem; }
.management-panel { display:grid; gap:.8rem; padding:1.3rem; border-radius:24px; color:#fff; background:linear-gradient(145deg,var(--navy-900),#0a3968); box-shadow:var(--shadow-md); }
.management-title { display:flex; justify-content:space-between; gap:1rem; margin-bottom:.25rem; }
.management-title span { color:#80c2ff; font-size:.75rem; font-weight:800; }
.management-metric { display:grid; grid-template-columns:42px 1fr; align-items:center; gap:.8rem; padding:.9rem; border-radius:14px; background:rgba(255,255,255,.08); }
.management-metric > span { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; color:#fff; background:var(--brand-accent); }
.management-metric strong { display:block; font-size:.9rem; }
.management-metric small { display:block; color:rgba(255,255,255,.68); font-size:.72rem; }
.independent-note { display:grid; grid-template-columns:auto 1fr; gap:1rem; align-items:start; padding:1.4rem; border:1px solid #b7d3f2; border-radius:20px; background:var(--blue-50); }
.independent-note h3 { margin-bottom:.35rem; }
.independent-note p { margin:0; }

.contact-band { padding-block:3.5rem; background:var(--surface); }
.contact-card { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding:clamp(1.6rem,4vw,2.7rem); border-radius:26px; color:#fff; background:linear-gradient(135deg,var(--navy-900),#0b416e); box-shadow:var(--shadow-md); }
.contact-card h2 { color:#fff; font-size:clamp(1.7rem,3vw,2.55rem); }
.contact-card p { max-width:720px; margin-bottom:0; color:rgba(255,255,255,.74); }
.contact-card .btn { flex:none; }

.content-page { min-height:70vh; padding-block:clamp(3.5rem,7vw,6rem); background:var(--surface); }
.content-shell { max-width:900px; margin-inline:auto; padding:clamp(1.5rem,4vw,3rem); border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow-sm); }
.content-shell h1 { font-size:clamp(2.1rem,4vw,3.4rem); }
.content-shell h2 { margin-top:2rem; font-size:1.35rem; }
.content-shell li { margin-bottom:.45rem; color:var(--ink-700); }
.content-note { margin-top:1.2rem; font-size:.88rem; }
.legal-content p, .legal-content li { font-size:.95rem; }
.contact-box { display:grid; gap:1rem; margin-top:2rem; }
.contact-option { display:flex; align-items:center; gap:.9rem; padding:1.1rem; border:1px solid var(--line); border-radius:16px; background:var(--blue-50); }
.contact-option strong { display:block; color:var(--ink-950); }
.contact-option a { color:var(--brand-primary); font-weight:800; overflow-wrap:anywhere; }

.site-footer { color:rgba(255,255,255,.68); background:var(--navy-950); }
.footer-grid { display:grid; grid-template-columns:1.4fr .8fr 1fr 1.2fr; gap:2rem; padding-block:3rem; }
.footer-brand img {width: 175px;height: auto;}
.footer-brand p { max-width:350px; margin-top:1rem; color:rgba(255,255,255,.62); font-size:.88rem; }
.footer-col h2 { margin-bottom:.9rem; color:#fff; font-size:.92rem; letter-spacing:0; }
.footer-links { display:grid; gap:.55rem; margin:0; padding:0; list-style:none; }
.footer-links a, .footer-email { color:rgba(255,255,255,.72); font-size:.86rem; }
.footer-links a:hover, .footer-email:hover { color:#fff; }
.footer-email { display:inline-flex; align-items:center; gap:.55rem; overflow-wrap:anywhere; }
.footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding-block:1.2rem; border-top:1px solid rgba(255,255,255,.08); font-size:.76rem; }

.reveal { opacity:1; transform:none; }
.js .reveal { opacity:0; transform:translateY(18px); transition:opacity .55s ease, transform .55s ease; }
.js .reveal.is-visible { opacity:1; transform:none; }

@media (max-width:1100px) {
    .logo-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:1020px) {
    .hero-grid,.page-hero-grid { grid-template-columns:1fr; }
    .product-showcase,.operation-window,.people-visual { max-width:720px; }
    .problem-grid { grid-template-columns:repeat(2,1fr); }
    .commercial-grid,.people-modules { grid-template-columns:repeat(2,1fr); }
    .profile-grid { grid-template-columns:repeat(3,1fr); }
    .footer-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:780px) {
    .container { width:min(calc(100% - 28px),var(--container)); }
    .navbar { min-height:66px; }
    .brand,.brand img { width:150px; }
    .menu-toggle { display:block; margin-left:auto; }
    .navbar nav { margin-left:0; }
    .nav-links { position:absolute; top:calc(100% + 8px); right:14px; left:auto; width:min(300px,calc(100vw - 28px)); display:none; align-items:stretch; gap:.2rem; padding:.65rem; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:#071b2d; box-shadow:var(--shadow-md); }
    .nav-links.is-open { display:grid; }
    .nav-links a { width:100%; justify-content:flex-start; }
    .hero-grid,.page-hero-grid { padding-block:3.7rem; gap:2.2rem; }
    .hero h1,.page-hero h1 { font-size:clamp(2.35rem,11vw,3.75rem); }
    .hero-points { grid-template-columns:1fr; }
    .showcase-details { grid-template-columns:1fr; }
    .window-grid { grid-template-columns:1fr; min-height:auto; }
    .window-list { grid-template-columns:repeat(3,1fr); border-right:0; border-bottom:1px solid var(--line); }
    .map-surface { min-height:300px; }
    .product-grid,.split,.core-grid,.tracking-panel,.scenario-grid { grid-template-columns:1fr; }
    .info-grid,.mode-grid,.profile-grid { grid-template-columns:1fr; }
    .logo-grid { grid-template-columns:repeat(2,1fr); }
    .check-list.two { grid-template-columns:1fr; }
    .commercial-grid,.people-modules { grid-template-columns:1fr; }
    .tracking-map { min-height:340px; }
    .people-body { grid-template-columns:1fr; }
    .contact-card { align-items:flex-start; flex-direction:column; }
    .footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:520px) {
    body { font-size:15px; }
    .container { width:min(calc(100% - 24px),var(--container)); }
    .hero-grid,.page-hero-grid { padding-block:3.15rem; }
    .hero h1,.page-hero h1 { font-size:2.5rem; }
    .hero-actions { display:grid; }
    .hero-actions .btn { width:100%; }
    .product-showcase,.operation-window,.people-visual { padding:.7rem; border-radius:22px; }
    .window-list { grid-template-columns:1fr; }
    .order-row:nth-child(n+3) { display:none; }
    .map-surface { min-height:260px; }
    .map-status { right:10px; left:10px; max-width:none; }
    .logo-grid { grid-template-columns:1fr; }
    .client-logo { min-height:92px; }
    .problem-grid,.rule-grid { grid-template-columns:1fr; }
    .route-row { grid-template-columns:36px 1fr; }
    .route-time { grid-column:2; }
    .tracking-panel { min-height:auto; }
    .schedule-row { grid-template-columns:38px 1fr; }
    .schedule-state { grid-column:2; justify-self:start; }
    .independent-note { grid-template-columns:1fr; }
    .footer-grid { grid-template-columns:1fr; }
    .footer-bottom { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}

.management-metric > span { display:grid; place-items:center; color:#fff; }
.management-metric > span .icon { width:18px; height:18px; color:#fff; }
