:root { --ink:#071d35; --navy:#00182d; --navy-2:#032845; --yellow:#ffc400; --red:#f45a09; --paper:#f4f6f8; --line:#d8dee4; --muted:#657484; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:Arial, Helvetica, sans-serif; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
a { color:inherit; text-decoration:none; }
.shell { width:min(1180px, calc(100% - 48px)); margin:0 auto; }
.topline { background:var(--navy); color:#b8c3ca; font-size:12px; letter-spacing:.03em; }
.topline-inner { height:34px; display:flex; align-items:center; justify-content:space-between; }
.topline-links { display:flex; gap:26px; align-items:center; }
.topline a:hover { color:#fff; }
.languages { color:#fff; font-weight:700; display:flex; align-items:center; gap:8px; }
.languages i { width:2px; height:2px; background:#73818b; border-radius:50%; }
.site-header { position:sticky; top:0; z-index:20; background:rgba(255,255,255,.96); border-bottom:1px solid #e7e7e2; backdrop-filter:blur(14px); }
.nav-wrap { height:82px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:11px; }
.brand-logo { width:50px; height:50px; object-fit:contain; flex:0 0 auto; }
.brand-logo-official { display:block; width:235px; max-width:31vw; height:60px; object-fit:contain; object-position:left center; }
.brand-copy { display:flex; flex-direction:column; line-height:.9; }
.brand-copy strong { font-size:23px; letter-spacing:.05em; font-weight:900; }
.brand-copy small { margin-top:7px; font-size:9px; letter-spacing:.42em; font-weight:800; color:#66717a; }
nav { display:flex; align-items:center; gap:34px; margin-left:auto; }
nav a { font-size:14px; font-weight:700; }
nav a:hover { color:var(--red); }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:36px; border:0; background:var(--yellow); color:var(--ink); padding:0 24px; font-weight:800; font-size:13px; letter-spacing:.01em; cursor:pointer; transition:.2s; }
.button:hover { background:#ffe33d; transform:translateY(-2px); }
.button span { color:var(--red); font-size:20px; }
.button-small { min-height:43px; padding:0 19px; gap:22px; }
.mobile-menu { display:none; position:relative; }
.hero { position:relative; overflow:hidden; color:#fff; background:var(--navy); }
.hero-image { display:block; width:100%; height:auto; aspect-ratio:1728/907; object-fit:cover; object-position:center; }
.hero::after { content:none; }
.hero-grid { position:absolute; inset:0; opacity:.09; background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(90deg,transparent,black); }
.route-line { position:absolute; z-index:1; border-top:2px solid var(--yellow); border-radius:50%; opacity:.42; transform:rotate(-12deg); }
.route-line::after { content:""; width:9px; height:9px; position:absolute; right:0; top:-5px; border-radius:50%; background:var(--yellow); box-shadow:0 0 0 7px rgba(255,213,0,.14); }
.route-one { width:590px; height:180px; right:-80px; top:225px; }
.route-two { width:350px; height:100px; right:240px; top:470px; transform:rotate(18deg); opacity:.22; }
.hero-inner { position:relative; z-index:2; display:grid; grid-template-columns:1.1fr .65fr; align-items:center; gap:100px; min-height:575px; }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 24px; text-transform:uppercase; font-size:11px; font-weight:800; letter-spacing:.19em; }
.eyebrow span { display:block; width:24px; height:3px; background:var(--yellow); }
.eyebrow.dark { color:#52606b; }
.eyebrow.dark span { background:var(--red); }
.hero h1 { margin:0; max-width:740px; font-size:clamp(60px,6.3vw,92px); line-height:.93; letter-spacing:-.055em; font-weight:800; }
.hero-lead { max-width:570px; color:#cad5db; font-size:19px; line-height:1.6; margin:30px 0 34px; }
.hero-actions { display:flex; align-items:center; gap:30px; }
.text-link { font-size:13px; font-weight:700; border-bottom:1px solid rgba(255,255,255,.34); padding:15px 0; }
.text-link span { margin-left:14px; color:var(--yellow); }
.network-visual { position:relative; align-self:center; min-height:410px; padding:24px; border:1px solid rgba(255,255,255,.14); background:linear-gradient(145deg,rgba(3,40,69,.84),rgba(0,17,34,.68)); box-shadow:0 30px 90px rgba(0,0,0,.35),inset 0 0 60px rgba(13,89,135,.2); backdrop-filter:blur(8px); }
.network-caption,.network-status { position:relative; z-index:5; display:flex; align-items:center; justify-content:space-between; text-transform:uppercase; letter-spacing:.13em; font-size:10px; font-weight:800; }
.network-caption { padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.14); }.network-caption b,.network-status strong { color:var(--yellow); }
.network-map { position:relative; height:290px; overflow:hidden; background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:34px 34px; }
.continent { position:absolute; border:1px solid rgba(126,178,207,.3); background:rgba(25,85,120,.17); transform:rotate(-12deg); }.c1 { width:150px;height:170px;left:54px;top:48px;border-radius:58% 28% 42% 35%; }.c2 { width:170px;height:115px;right:40px;top:66px;border-radius:35% 58% 25% 46%; }.c3 { width:115px;height:90px;right:95px;bottom:24px;border-radius:48% 30% 55% 34%; }
.glow-route { position:absolute; height:2px; z-index:3; background:var(--yellow); box-shadow:0 0 6px var(--yellow),0 0 16px rgba(255,196,0,.8); transform-origin:left; }.gr1 { width:245px;left:92px;top:206px;transform:rotate(-27deg); }.gr2 { width:170px;left:165px;top:115px;transform:rotate(15deg); }.gr3 { width:145px;left:168px;top:116px;transform:rotate(61deg); }
.hub { position:absolute; z-index:4; width:8px;height:8px;border-radius:50%;background:#fff4bd;border:2px solid var(--yellow);box-shadow:0 0 0 5px rgba(255,196,0,.12),0 0 15px var(--yellow); }.h1{left:88px;top:202px}.h2{left:163px;top:111px}.h3{right:64px;top:143px}.h4{right:112px;bottom:38px}.h5{right:90px;top:91px}
.network-truck { position:absolute; z-index:4; right:104px; top:148px; color:#fff; font-size:24px; text-shadow:0 0 12px var(--yellow); transform:rotate(-18deg); }
.network-status { padding-top:16px; border-top:1px solid rgba(255,255,255,.14); color:#a8bac7; letter-spacing:.09em; font-size:8px; }
.card-heading { display:flex; align-items:center; justify-content:space-between; padding-bottom:20px; border-bottom:1px solid #d9dddf; font-size:12px; text-transform:uppercase; letter-spacing:.13em; font-weight:800; }
.card-heading b { color:var(--red); }
.route-points { padding:25px 0; }
.route-points>div:not(.route-track) { display:flex; gap:13px; align-items:center; font-size:15px; font-weight:800; }
.route-points i { width:11px; height:11px; border:3px solid var(--red); border-radius:50%; }
.route-points small,.shipment-meta small { display:block; margin-bottom:5px; font-size:8px; letter-spacing:.14em; color:#7b858d; }
.route-track { height:38px; margin-left:5px; border-left:1px dashed #a9b1b6; position:relative; }
.route-track span { width:6px; height:6px; position:absolute; left:-3px; top:15px; border-radius:50%; background:var(--yellow); }
.shipment-meta { display:grid; grid-template-columns:1fr 1fr; padding-top:20px; border-top:1px solid #d9dddf; }
.shipment-meta>div+div { padding-left:22px; border-left:1px solid #d9dddf; }
.shipment-meta strong { font-size:12px; }
.shipment-meta .on-route { color:#31815a; }
.hero-stats { position:relative; z-index:3; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.16); }
.hero-stats>div { display:flex; align-items:center; gap:14px; padding:28px 0; }
.hero-stats>div+div { padding-left:36px; border-left:1px solid rgba(255,255,255,.16); }
.hero-stats strong { color:var(--yellow); font-size:12px; letter-spacing:.09em; }
.hero-stats span { color:#aab9c2; font-size:12px; }
.section { padding:120px 0; }
.services { background:var(--paper); }
.section-intro { display:grid; grid-template-columns:1fr .55fr; gap:120px; align-items:end; margin-bottom:65px; }
h2 { margin:0; font-size:clamp(42px,5vw,67px); line-height:1; letter-spacing:-.045em; }
.section-intro>p { color:var(--muted); font-size:16px; line-height:1.75; margin:0 0 8px; }
.service-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #c7c7c0; border-left:1px solid #c7c7c0; }
.service-card { min-height:360px; padding:28px 25px; display:flex; flex-direction:column; background:rgba(255,255,255,.38); border-right:1px solid #c7c7c0; border-bottom:1px solid #c7c7c0; transition:.25s; }
.service-card:hover { transform:translateY(-6px); background:#fff; box-shadow:0 20px 45px rgba(13,32,45,.08); }
.service-number { color:var(--red); font-size:11px; font-weight:800; }
.service-card h3 { margin:62px 0 19px; font-size:24px; letter-spacing:-.025em; }
.service-card p { margin:0; color:var(--muted); font-size:14px; line-height:1.7; }
.service-footer { margin-top:auto; padding-top:20px; border-top:1px solid #d5d5d0; display:flex; align-items:center; justify-content:space-between; color:#6d7478; font-size:9px; font-weight:800; letter-spacing:.05em; }
.service-footer b { color:var(--red); font-size:18px; }
.about { background:#fff; }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:110px; align-items:center; }
.about-visual { position:relative; min-height:570px; overflow:hidden; background:var(--navy); background-image:radial-gradient(circle at 25% 30%,#1d536d 0,transparent 30%),linear-gradient(140deg,transparent 45%,rgba(255,255,255,.04) 45%); }
.about-visual::before,.about-visual::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.1); border-radius:50%; }
.about-visual::before { width:440px; height:440px; left:45px; top:68px; }
.about-visual::after { width:310px; height:310px; left:110px; top:132px; }
.map-label { position:absolute; z-index:2; color:#e5eaed; font-size:9px; letter-spacing:.14em; font-weight:800; }
.label-west { left:100px; top:155px; }.label-east { right:65px; top:267px; }.label-south { left:190px; bottom:120px; }
.map-dot { position:absolute; z-index:3; width:10px; height:10px; background:var(--yellow); border-radius:50%; box-shadow:0 0 0 8px rgba(255,213,0,.12); }
.d1 { left:123px; top:181px; }.d2 { right:97px; top:294px; }.d3 { left:215px; bottom:144px; }
.map-route { position:absolute; z-index:1; height:1px; background:linear-gradient(90deg,var(--yellow),rgba(255,213,0,.1)); transform-origin:left; }
.r1 { width:310px; left:128px; top:186px; transform:rotate(20deg); }.r2 { width:210px; left:219px; bottom:147px; transform:rotate(-42deg); }.r3 { width:165px; right:96px; top:297px; transform:rotate(138deg); }
.visual-badge { position:absolute; z-index:4; left:30px; bottom:30px; background:var(--yellow); color:var(--ink); padding:20px 26px; }
.visual-badge strong,.visual-badge span { display:block; }.visual-badge strong { font-size:22px; }.visual-badge span { margin-top:4px; font-size:11px; }
.about-lead { margin:27px 0 35px; color:var(--muted); font-size:17px; line-height:1.7; }
.strength-list>div { display:grid; grid-template-columns:38px 1fr; gap:18px; padding:21px 0; border-top:1px solid var(--line); }
.strength-list b { color:var(--red); font-size:10px; padding-top:4px; }.strength-list strong { font-size:16px; }.strength-list p { margin:6px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }
.projects { color:#fff; background:var(--navy); }
.projects .section-intro { border-bottom:1px solid rgba(255,255,255,.14); padding-bottom:48px; }.projects .section-intro>p { color:#aab9c4; }.projects .eyebrow span { background:var(--yellow); }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); grid-template-rows:320px 320px; gap:12px; }
.project-card { position:relative; overflow:hidden; min-height:0; background:#08243a; }.project-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(0,15,29,.9) 100%); transition:.3s; }.project-card:hover::after { background:linear-gradient(180deg,rgba(0,15,29,.06),rgba(0,15,29,.72)); }
.project-card img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }.project-card:hover img { transform:scale(1.035); }
.project-overlay { position:absolute; z-index:2; left:22px; right:22px; bottom:20px; }.project-overlay span { color:var(--yellow); text-transform:uppercase; font-size:8px; letter-spacing:.15em; font-weight:800; }.project-overlay h3 { margin:8px 0 0; font-size:18px; line-height:1.15; }
.projects-note { margin-top:30px; display:flex; align-items:center; justify-content:space-between; color:#91a4b1; font-size:12px; }.projects-note a { color:#fff; padding-bottom:7px; border-bottom:1px solid rgba(255,255,255,.36); font-weight:800; }.projects-note b { color:var(--yellow); margin-left:14px; font-size:18px; }
.industries { background:var(--navy); color:#fff; padding:105px 0; }
.industries-inner h2 { max-width:680px; }
.industry-list { display:flex; flex-wrap:wrap; margin-top:55px; border-top:1px solid rgba(255,255,255,.18); border-left:1px solid rgba(255,255,255,.18); }
.industry-list span { flex:1; min-width:190px; padding:27px 20px; border-right:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(255,255,255,.18); font-size:12px; font-weight:700; text-align:center; }
.industry-list span::before { content:"+"; color:var(--yellow); margin-right:10px; }
.quote-section { padding:120px 0; background:var(--yellow); }
.quote-grid { display:grid; grid-template-columns:.75fr 1fr; gap:120px; }
.quote-copy>p:not(.eyebrow) { max-width:420px; font-size:15px; line-height:1.7; margin:25px 0 40px; }
.quote-copy>a { font-size:18px; font-weight:800; border-bottom:2px solid var(--ink); padding-bottom:7px; }.quote-copy>a span { color:var(--red); }
.quote-form { padding:35px; background:#fff; box-shadow:16px 16px 0 rgba(7,28,43,.12); }
.quote-form label { display:block; margin-bottom:20px; }.quote-form label>span { display:block; margin-bottom:8px; color:#64717a; font-size:9px; letter-spacing:.1em; font-weight:800; text-transform:uppercase; }
.quote-form input,.quote-form textarea { width:100%; border:0; border-bottom:1px solid #cfd4d6; padding:10px 2px 12px; border-radius:0; outline:0; color:var(--ink); font:inherit; font-size:14px; resize:vertical; }.quote-form input:focus,.quote-form textarea:focus { border-color:var(--red); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:25px; }
.quote-form .button { margin-top:4px; background:var(--navy); color:#fff; }
footer { background:#05141f; color:#fff; padding:70px 0 25px; }
.brand-light { padding:9px 12px; background:#fff; }
.footer-top { display:grid; grid-template-columns:1.15fr .8fr 1.2fr 1fr .75fr; gap:42px; align-items:start; padding-bottom:60px; }
.footer-top>p { margin:0; color:#9eabb3; line-height:1.5; font-size:15px; }
.footer-top>div:not(.brand) { display:flex; flex-direction:column; gap:9px; font-size:13px; }.footer-top small { color:var(--yellow); font-size:9px; letter-spacing:.13em; margin-bottom:5px; }.footer-top span { color:#83919a; font-size:11px; }.footer-top strong { font-size:12px; line-height:1.4; }.company-address span { line-height:1.35; }
.footer-bottom { display:flex; justify-content:space-between; padding-top:24px; border-top:1px solid rgba(255,255,255,.12); color:#72818a; font-size:10px; }

@media (max-width: 900px) {
  .shell { width:min(100% - 34px, 680px); }.topline-inner>span,.site-header nav,.nav-wrap>.button { display:none; }.topline-inner { justify-content:flex-end; }.nav-wrap { height:72px; }.mobile-menu { display:block; }.mobile-menu summary { list-style:none; padding:12px; font-size:12px; font-weight:800; border:1px solid #cdd2d5; cursor:pointer; }.mobile-menu summary::-webkit-details-marker { display:none; }.mobile-menu>div { position:absolute; right:0; top:50px; width:210px; background:#fff; box-shadow:0 14px 35px rgba(0,0,0,.15); padding:12px; display:flex; flex-direction:column; }.mobile-menu a { padding:12px; font-size:14px; font-weight:700; border-bottom:1px solid #eee; }
  .hero { min-height:0; }.hero-image { object-fit:contain; }.hero-stats { grid-template-columns:1fr; }.hero-stats>div { padding:16px 0; }.hero-stats>div+div { padding-left:0; border-left:0; border-top:1px solid rgba(255,255,255,.12); }.section { padding:85px 0; }.section-intro,.about-grid,.quote-grid { grid-template-columns:1fr; gap:45px; }.section-intro { margin-bottom:45px; }.service-grid { grid-template-columns:1fr 1fr; }.service-card { min-height:320px; }.about-visual { min-height:470px; order:2; }.project-grid { grid-template-columns:1fr 1fr; grid-template-rows:repeat(3,280px); }.project-1,.project-5,.project-6 { grid-row:auto; grid-column:auto; }.quote-grid { gap:50px; }.footer-top { grid-template-columns:1fr 1fr; }
}
@media (max-width: 560px) {
  .shell { width:calc(100% - 28px); }.topline-links { width:100%; justify-content:space-between; gap:8px; }.brand-logo-official { width:185px; max-width:55vw; height:50px; }.service-grid { grid-template-columns:1fr; }.service-card { min-height:290px; }.service-card h3 { margin-top:45px; }.about-visual { min-height:400px; }.project-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:10px; padding-bottom:10px; }.project-card { flex:0 0 86%; height:360px; scroll-snap-align:start; }.projects-note { align-items:flex-start; flex-direction:column; gap:18px; }.quote-section { padding:80px 0; }.quote-form { padding:25px 20px; box-shadow:8px 8px 0 rgba(7,28,43,.12); }.form-row { grid-template-columns:1fr; gap:0; }.footer-top { grid-template-columns:1fr; gap:36px; }.footer-bottom { flex-direction:column; gap:10px; }
}
