/* =============================================================
   SAM LOGISTICS — matched to SAM Group (sam.group) design system
   Display: Poppins / Body: Inter
   ============================================================= */
:root{
  --red:#e31e25;
  --red-deep:#b91c1c;
  --blue:#04a0e0;
  --purple:#8a4fdb;
  --grad:linear-gradient(135deg,var(--red) 0%,var(--blue) 100%);
  --black:#020814;
  --black-soft:#060d1c;
  --ink:#1a202c;
  --gray:#64748b;
  --gray-light:#cbd5e1;
  --cream:#f8fafc;
  --cream-alt:#f1f5f9;
  --white:#ffffff;
  --line:rgba(10,10,10,.10);
  --line-light:rgba(255,255,255,.14);

  --f-display:'Montserrat', sans-serif;
  --f-body:'Inter', sans-serif;

  --container:1400px;
  --radius:8px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--f-body);
  color:var(--ink);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
  line-height:1.65;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;margin:0;padding:0;}
h1,h2,h3,h4{
  font-family:var(--f-display);
  margin:0;
  line-height:1.12;
  letter-spacing:-0.01em;
  font-weight:700;
}
p{margin:0;}
button{font-family:inherit;cursor:pointer;}
input,textarea,select{font-family:inherit;}
:focus-visible{outline:2px solid var(--red);outline-offset:3px;}
.wrap{max-width:var(--container);margin:0 auto;padding:0 32px;}
.grad-text{
  background:var(--grad);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}

/* ---------- Eyebrow (dash + label, matches sam.group) ---------- */
.route-code{
  display:flex;align-items:center;gap:10px;
  font-family:var(--f-body);font-size:13px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;color:var(--red);
  margin-bottom:16px;
}
.route-code::before{content:"—";color:var(--red);font-weight:700;}
.route-code b{display:none;}
.section--dark .route-code{color:var(--red);}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  padding:15px 26px;font-family:var(--f-body);font-size:13.5px;font-weight:700;
  letter-spacing:.03em;text-transform:uppercase;border-radius:4px;
  border:1.5px solid transparent;transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--red);color:var(--white);}
.btn-primary:hover{background:var(--red-deep);}
.btn-outline{border-color:currentColor;color:var(--white);background:transparent;}
.btn-outline:hover{background:rgba(255,255,255,.1);}
.btn-outline-dark{border-color:var(--red);color:var(--red);background:transparent;}
.btn-outline-dark:hover{background:var(--red);color:var(--white);}
.btn-arrow{transition:transform .18s ease;}
.btn:hover .btn-arrow{transform:translateX(3px);}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:100;background:var(--white);
  border-bottom:1px solid var(--line);
  box-shadow:0 0 0 rgba(10,10,10,0);
  transition:box-shadow .3s ease;
}
.site-header.is-scrolled{box-shadow:0 8px 24px rgba(10,10,10,.08);}
.site-header .wrap{
  display:flex;align-items:center;justify-content:space-between;height:88px;
  gap:24px;transition:height .3s ease;
}
.site-header.is-scrolled .wrap{height:72px;}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);flex:none;}
.brand-mark{height:38px;width:auto;display:flex;align-items:center;}
.brand-mark img{height:38px;width:auto;display:block;}
.brand-name{font-family:var(--f-display);font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--ink);line-height:1.3;}
.brand-name span{display:block;font-family:var(--f-body);font-size:10px;letter-spacing:.14em;color:var(--red);font-weight:700;text-transform:uppercase;margin-top:2px;}

.main-nav{display:flex;align-items:center;gap:2px;flex:1;justify-content:center;}
.main-nav a{color:var(--ink);font-size:14px;font-weight:600;padding:9px 13px;border-radius:20px;white-space:nowrap;}
.main-nav a:hover{background:var(--cream);}
.main-nav a.active{background:#fbe4e6;color:var(--red-deep);}
.main-nav.nav-open a{color:#fff;}
.main-nav.nav-open a:hover{background:rgba(255,255,255,.08);}
.main-nav.nav-open a.active{color:var(--red-deep);}

.nav-item{position:relative;display:flex;align-items:center;}
.nav-item a{display:flex;align-items:center;gap:5px;}
.nav-item .caret{display:inline-block;font-size:16px;font-weight:900;color:var(--red);transition:transform .2s ease;}
.nav-item:hover .caret,.nav-item.js-open .caret{transform:rotate(180deg);}
.nav-dropdown{
  position:fixed;top:88px;left:0;right:0;width:100%;
  transform:translateY(-8px);
  background:var(--white);border-top:1px solid var(--line);border-radius:0;
  box-shadow:0 24px 48px rgba(10,10,10,.16), 0 4px 12px rgba(10,10,10,.06);
  padding:8px 0;overflow:visible;
  z-index:60;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s ease, transform .22s ease, top .3s ease;
}
.site-header.is-scrolled .nav-dropdown{top:72px;}
.nav-dropdown::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--grad);
}
.nav-item:hover .nav-dropdown,.nav-item.js-open .nav-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
.nav-dropdown-inner{
  max-width:var(--container);margin:0 auto;padding:0 32px;
  display:flex;justify-content:center;gap:36px;align-items:stretch;
}
.nav-promo{flex:none;width:250px;}
.nav-divider{flex:none;width:1px;align-self:stretch;margin:-8px 0;background:var(--line);}
.nav-links-col{flex:none;display:grid;grid-template-columns:repeat(2,230px);grid-template-rows:repeat(3,auto);grid-auto-flow:column;gap:4px 24px;align-content:start;}
.nav-photo-card{flex:none;width:280px;}
.nav-links-col a{
  position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:13px 16px;border-radius:8px;font-size:14px;font-weight:600;line-height:1.3;
  color:var(--ink);white-space:normal;transition:background .18s ease, color .18s ease, padding-left .18s ease;
}
.nav-links-col a::after{
  content:"→";color:var(--red);opacity:0;transform:translateX(-6px);flex:none;
  transition:opacity .18s ease, transform .18s ease;
}
.nll-text{display:flex;flex-direction:column;gap:3px;}
.nll-idx{font-family:var(--f-body);font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--red);}
.nll-title{font-size:14px;font-weight:600;color:inherit;}
.nav-links-col a:hover{background:var(--cream);color:var(--red-deep);padding-left:20px;}
.nav-links-col a:hover::after{opacity:1;transform:translateX(0);}

/* ---------- Mega-menu promo + photo panels ---------- */
.nav-promo{background:var(--cream);border-radius:12px;padding:24px;display:flex;flex-direction:column;}
.nav-promo-label{font-family:var(--f-body);font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--red);margin-bottom:10px;}
.nav-promo h4{font-size:18px;color:var(--ink);}
.nav-promo p{margin-top:10px;font-size:13px;color:var(--gray);line-height:1.55;}
.nav-promo .btn{margin-top:18px;padding:11px 18px;font-size:11.5px;width:fit-content;}

.nav-photo-card{
  position:relative;display:flex;flex-direction:column;justify-content:flex-end;
  border-radius:12px;overflow:hidden;background-size:cover;background-position:center;
  padding:20px;min-height:100%;white-space:normal;
}
.nav-photo-card::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(2,8,20,.05) 30%, rgba(2,8,20,.86) 100%);
}
.nav-photo-card .npc-badge{
  position:relative;align-self:flex-start;background:var(--red);color:var(--white);
  font-family:var(--f-body);font-size:10.5px;font-weight:700;letter-spacing:.06em;
  padding:5px 10px;border-radius:4px;margin-bottom:auto;
}
.nav-photo-card h5{position:relative;color:var(--white);font-size:16px;margin-top:14px;}
.nav-photo-card p{position:relative;color:rgba(255,255,255,.72);font-size:12.5px;margin-top:6px;white-space:normal;}
.nav-photo-card .npc-link{position:relative;display:flex;align-items:center;gap:6px;color:var(--white);font-size:12.5px;font-weight:700;margin-top:14px;}
.header-actions{display:flex;align-items:center;gap:18px;flex:none;}
.header-tel{font-family:var(--f-body);font-size:13.5px;color:var(--ink);display:flex;align-items:center;gap:8px;font-weight:600;white-space:nowrap;}
.header-tel .dot{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(228,32,48,.16);flex:none;}
@media (max-width:1240px){
  .header-tel{display:none;}
}
@media (max-width:980px){
  .main-nav{display:none;}
}

/* ---------- Mobile bottom-sheet nav ---------- */
.nav-trigger,.nav-scrim,.nav-sheet{display:none;}
@media (max-width:980px){
  .nav-trigger{
    display:flex;align-items:center;gap:10px;
    position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:210;
    background:var(--red);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    color:var(--white);padding:14px 22px;border-radius:100px;border:none;cursor:pointer;
    box-shadow:0 12px 30px rgba(227,30,37,.45);
    font-family:var(--f-display);font-weight:600;font-size:13.5px;letter-spacing:.02em;
    transition:transform .35s cubic-bezier(.34,1.56,.64,1), background .3s ease;
  }
  .nav-trigger:active{transform:translateX(-50%) scale(.94);}
  .nav-trigger .dots{display:flex;gap:4px;}
  .nav-trigger .dots span{width:5px;height:5px;border-radius:50%;background:var(--white);transition:transform .3s ease, background .3s ease;}
  .nav-trigger.active{display:none;}
  .nav-trigger.active .dots span{background:var(--white);}
  .nav-trigger.active .dots span:nth-child(1){transform:translateX(3px);}
  .nav-trigger.active .dots span:nth-child(3){transform:translateX(-3px);}

  .nav-scrim{
    display:block;position:fixed;inset:0;
    background:rgba(6,13,28,.35);backdrop-filter:blur(3px);
    opacity:0;visibility:hidden;transition:opacity .4s ease, visibility 0s linear .4s;
    z-index:200;
  }
  .nav-scrim.open{opacity:1;visibility:visible;transition:opacity .4s ease;}

  .nav-sheet{
    display:flex;flex-direction:column;overflow:hidden;
    position:fixed;left:0;right:0;bottom:0;z-index:205;
    background:var(--white);border-radius:28px 28px 0 0;
    box-shadow:0 -20px 50px rgba(6,13,28,.18);
    transform:translateY(100%);transition:transform .55s cubic-bezier(.34,1.15,.4,1);
    padding:14px 18px 28px;max-height:78vh;
  }
  .nav-sheet.open{transform:translateY(0);}
  .nav-sheet-handle{flex:none;width:38px;height:4px;border-radius:4px;background:var(--line-light);background:#e2e8f0;margin:2px auto 16px;}
  .nav-sheet-head{flex:none;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
  .nav-sheet-head h2{font-family:var(--f-display);font-size:17px;font-weight:700;color:var(--ink);}
  .nav-sheet-close{
    width:32px;height:32px;border-radius:50%;background:var(--cream);border:none;color:var(--gray);
    display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;
  }

  .nav-view-track{display:flex;width:200%;flex:1;min-height:0;transition:transform .45s cubic-bezier(.34,1,.4,1);}
  .nav-view-track.showing-sub{transform:translateX(-50%);}
  .nav-view-pane{width:50%;flex-shrink:0;display:flex;flex-direction:column;min-height:0;}
  .nav-view-pane.main{overflow-y:auto;padding-right:2px;}

  .nav-tile-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:none;}
  .nav-tile{
    background:var(--cream);border-radius:18px;padding:16px 14px;
    display:flex;flex-direction:column;gap:10px;cursor:pointer;position:relative;
    opacity:0;transform:translateY(14px) scale(.94);
    transition:opacity .4s ease, transform .5s cubic-bezier(.34,1.56,.64,1), background .25s ease;
  }
  .nav-sheet.open .nav-tile{opacity:1;transform:translateY(0) scale(1);}
  .nav-sheet.open .nav-tile:nth-child(1){transition-delay:.08s;}
  .nav-sheet.open .nav-tile:nth-child(2){transition-delay:.13s;}
  .nav-sheet.open .nav-tile:nth-child(3){transition-delay:.18s;}
  .nav-sheet.open .nav-tile:nth-child(4){transition-delay:.23s;}
  .nav-sheet.open .nav-tile:nth-child(5){transition-delay:.28s;}
  .nav-sheet.open .nav-tile:nth-child(6){transition-delay:.33s;}
  .nav-sheet.open .nav-tile:nth-child(7){transition-delay:.38s;}
  .nav-tile:active{background:var(--cream-alt);}
  .nav-tile .nt-icon{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:15px;transition:transform .35s cubic-bezier(.34,1.56,.64,1);}
  .nav-tile:active .nt-icon{transform:scale(1.15) rotate(-6deg);}
  .nav-tile .nt-label{font-family:var(--f-display);font-weight:600;font-size:14.5px;color:var(--ink);}
  .nav-tile .nt-sub{font-size:11.5px;color:var(--gray);margin-top:-6px;}
  .nav-tile.has-sub::after{
    content:'\f105';font-family:"Font Awesome 6 Free";font-weight:900;
    position:absolute;top:14px;right:14px;font-size:10px;color:var(--gray);
  }
  .nt-home .nt-icon{background:rgba(227,30,37,.1);color:var(--red);}
  .nt-about .nt-icon{background:rgba(4,160,224,.1);color:var(--blue);}
  .nt-services .nt-icon{background:rgba(138,79,219,.1);color:var(--purple);}
  .nt-industries .nt-icon{background:rgba(4,160,224,.1);color:var(--blue);}
  .nt-terminals .nt-icon{background:rgba(185,28,28,.1);color:var(--red-deep);}
  .nt-partners .nt-icon{background:rgba(138,79,219,.1);color:var(--purple);}
  .nt-contact .nt-icon{background:rgba(10,10,10,.06);color:var(--ink);}

  .nav-sheet-cta{
    margin-top:14px;display:flex;align-items:center;justify-content:center;gap:8px;
    padding:15px;border-radius:16px;border:none;
    background:linear-gradient(135deg, var(--red), var(--red-deep));
    color:var(--white);font-family:var(--f-display);font-weight:700;font-size:14px;
    box-shadow:0 10px 26px rgba(227,30,37,.3);
    opacity:0;transform:translateY(10px);transition:opacity .4s ease .4s, transform .4s ease .4s;
    width:100%;
  }
  .nav-sheet.open .nav-sheet-cta{opacity:1;transform:translateY(0);}

  .nav-sub-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-left:2px;}
  .nav-sub-back{
    width:32px;height:32px;border-radius:50%;background:var(--cream);border:none;color:var(--ink);
    display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;transition:transform .2s ease;
  }
  .nav-sub-back:active{transform:scale(.9);}
  .nav-sub-head h3{font-family:var(--f-display);font-size:16px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px;}
  .nav-sub-icon-chip{width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:11px;}

  .nav-sub-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;}
  .nav-sub-list-group{display:none;flex-direction:column;gap:6px;}
  .nav-sub-list a{
    display:flex;align-items:center;justify-content:space-between;color:var(--ink);
    background:var(--cream);border-radius:14px;padding:14px 16px;
    font-family:var(--f-body);font-weight:500;font-size:14px;
    transition:background .2s ease, padding-left .2s ease;
  }
  .nav-sub-list a i{color:var(--gray);font-size:11px;transition:color .2s ease;}
  .nav-sub-list a:active{background:var(--cream-alt);padding-left:20px;}
  .nav-sub-list a:active i{color:var(--blue);}
}

/* ---------- Hero Slider (4 slides) ---------- */
.hero-slider{position:relative;height:100vh;overflow:hidden;background:var(--black);}
.hsl-track{position:relative;width:100%;height:100%;}
.hsl-slide{
  position:absolute;inset:0;opacity:0;visibility:hidden;z-index:0;
  transition:opacity .8s ease, visibility .8s ease;
  display:flex;align-items:center;
}
.hsl-slide.hsl-slide--active{opacity:1;visibility:visible;z-index:1;}
.hsl-bg{position:absolute;inset:0;z-index:0;}
.hsl-bg img{width:100%;height:100%;object-fit:cover;object-position:center 65%;transform:scale(1.05);}
.hsl-slide--active .hsl-bg img{animation:hslKenBurns 4s ease-in-out forwards;}
@keyframes hslKenBurns{from{transform:scale(1.15);}to{transform:scale(1.05);}}
.hsl-overlay{
  position:absolute;inset:0;
  background:linear-gradient(100deg, rgba(4,5,9,.88) 10%, rgba(6,8,14,.55) 55%, rgba(10,6,14,.35) 100%);
}
.hsl-content-wrap{position:relative;z-index:2;width:100%;}
.hsl-content{max-width:640px;color:#fff;padding:130px 0 110px;}
.hsl-eyebrow{
  display:inline-flex;align-items:center;gap:10px;font-family:var(--f-body);font-size:12.5px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.85);margin-bottom:22px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:8px 16px;border-radius:30px;
}
.hsl-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(227,30,37,.18);flex:none;}
.hsl-title{font-family:var(--f-display);font-weight:800;font-size:clamp(34px,5.2vw,64px);line-height:1.08;color:#fff;margin-bottom:22px;}
.hsl-title em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hsl-sub{font-size:16.5px;line-height:1.7;color:rgba(255,255,255,.72);max-width:520px;margin-bottom:34px;}
.hsl-cta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:34px;}
.hsl-trust{display:flex;flex-wrap:wrap;gap:12px;}
.hsl-trust-pill{
  display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:9px 16px;
  font-size:12.5px;font-weight:600;color:rgba(255,255,255,.88);
}
.hsl-trust-pill::before{content:"●";color:var(--red);font-size:9px;}
.hsl-sector-tag{
  position:absolute;right:40px;bottom:120px;z-index:2;display:inline-flex;align-items:center;gap:8px;
  background:rgba(10,10,10,.55);border:1px solid rgba(255,255,255,.18);color:#fff;
  padding:10px 18px;border-radius:30px;font-size:12.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;
  backdrop-filter:blur(6px);
}

.hsl-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;
  transition:background .2s ease;
}
.hsl-arrow:hover{background:rgba(255,255,255,.2);}
.hsl-arrow--prev{left:24px;}
.hsl-arrow--next{right:24px;}

.hsl-dots{position:absolute;right:100px;top:50%;transform:translateY(-50%);z-index:3;display:flex;flex-direction:column;gap:14px;}
.hsl-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.35);border:none;cursor:pointer;transition:all .25s ease;padding:0;}
.hsl-dot--active{background:var(--red);transform:scale(1.4);}

.hsl-counter{
  position:absolute;left:40px;bottom:36px;z-index:3;color:rgba(255,255,255,.7);
  font-family:var(--f-display);font-size:14px;font-weight:700;display:flex;align-items:center;gap:6px;
}
.hsl-counter-cur{color:#fff;font-size:18px;}

.hsl-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.15);z-index:3;}
.hsl-progress-bar{height:100%;width:0;background:var(--grad);}
.hsl-progress-bar.hsl-bar-run{animation:hslBarRun 5s linear;}
@keyframes hslBarRun{from{width:0;}to{width:100%;}}

@media (max-width:860px){
  .hsl-sector-tag{display:none;}
}
@media (max-width:720px){
  .hero-slider{height:92vh;}
  .hsl-content{padding:100px 0 80px;}
  .hsl-dots{right:60px;gap:10px;}
  .hsl-arrow{width:40px;height:40px;font-size:14px;}
  .hsl-arrow--prev{left:10px;}
  .hsl-arrow--next{right:10px;}
  .hsl-counter{left:20px;bottom:20px;}
}

/* ---------- Section shell ---------- */
.section{padding:100px 0;}
.section--tight{padding:0;}
.section--dark{background:var(--black);color:var(--white);}
.section--alt{background:var(--cream);}
.section-head{max-width:680px;margin-bottom:52px;}
.section-head h2{font-size:clamp(28px,3.8vw,42px);}
.section-head p{margin-top:16px;color:var(--gray);font-size:16px;}
.section--dark .section-head p{color:rgba(255,255,255,.62);}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
.section-head.between{display:flex;justify-content:space-between;align-items:end;gap:30px;max-width:none;}

/* ---------- About snippet ---------- */
.about-lead{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start;}
.about-lead h2{font-size:clamp(28px,3.6vw,42px);}
.about-lead .body p + p{margin-top:16px;}
.about-lead .body{color:var(--gray);font-size:16.5px;}
.chip-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.chip{
  font-family:var(--f-body);font-size:12.5px;font-weight:600;letter-spacing:.02em;
  padding:9px 15px;border:1px solid var(--line);border-radius:20px;color:var(--gray);background:var(--white);
}

/* ---------- Stat band (white strip, like SAM Group's) ---------- */
.stat-band{
  background:var(--white);color:var(--ink);
  padding:36px 0;display:grid;grid-template-columns:repeat(4,1fr);
  position:relative;border-bottom:1px solid var(--line);
}
.stat-band::before{display:none;}
.stat-band .stat{position:relative;padding:0 30px;border-left:1px solid var(--line);text-align:center;}
.stat-band .stat:first-child{border-left:none;}
.stat .num{font-family:var(--f-display);font-size:36px;font-weight:700;color:var(--red);}
.stat .lbl{margin-top:8px;font-size:13px;color:var(--gray);font-weight:600;letter-spacing:.03em;text-transform:uppercase;}

/* ---------- Service cards ---------- */
.grid-5{display:flex;flex-wrap:wrap;justify-content:center;gap:34px;align-items:stretch;}
.grid-5 .card-link{display:block;flex:1 1 400px;}
.svc-card{
  position:relative;overflow:hidden;isolation:isolate;height:100%;
  background-color:var(--black-soft);background-size:cover;background-position:center;
  padding:28px 24px 24px;min-height:300px;border:1px solid var(--line-light);border-radius:var(--radius);
  display:flex;flex-direction:column;justify-content:space-between;color:#fff;
  opacity:0;transform:translateY(46px) scale(.96);
  transition:opacity .75s cubic-bezier(.16,.8,.3,1) var(--rd,0s),
             transform .75s cubic-bezier(.16,.8,.3,1) var(--rd,0s);
}
.svc-card::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg, rgba(8,9,14,.05) 0%, rgba(8,9,14,.4) 55%, rgba(5,6,10,.92) 100%);
  transition:background .35s ease;
}
.grid-5.is-visible .svc-card{opacity:1;transform:translateY(0) scale(1);}
.grid-5 a:nth-child(1) .svc-card{--rd:.05s;}
.grid-5 a:nth-child(2) .svc-card{--rd:.15s;}
.grid-5 a:nth-child(3) .svc-card{--rd:.25s;}
.grid-5 a:nth-child(4) .svc-card{--rd:.35s;}
.grid-5 a:nth-child(5) .svc-card{--rd:.45s;}
.svc-card:hover{
  transition:transform .4s ease, box-shadow .4s ease;
  transform:translateY(-6px) scale(1.02);
  box-shadow:0 20px 44px rgba(10,10,10,.28);
}
.svc-card:hover::before{background:linear-gradient(180deg, rgba(8,9,14,0) 0%, rgba(8,9,14,.22) 55%, rgba(5,6,10,.86) 100%);}
.svc-card .idx{font-family:var(--f-body);font-size:12px;font-weight:700;color:#ff8790;letter-spacing:.04em;}
.svc-card-body{display:flex;flex-direction:column;gap:14px;}
.svc-card h3{font-size:20px;line-height:1.3;color:#fff;}
.svc-card p{color:rgba(255,255,255,.78);font-size:14.5px;line-height:1.6;}
.svc-card .learn{font-family:var(--f-body);font-size:12.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#fff;display:flex;align-items:center;gap:6px;}

.grid-5 .svc-card{
  padding:0;justify-content:flex-start;background-color:var(--white);
  border:1px solid var(--line);border-radius:16px;color:var(--ink);
  box-shadow:0 2px 4px rgba(10,10,10,.03), 0 12px 28px rgba(10,10,10,.05);
}
.grid-5 .svc-card::before{display:none;}
.grid-5 .svc-card-img{
  position:relative;overflow:hidden;aspect-ratio:3/2;background-size:cover;background-repeat:no-repeat;background-position:center;background-color:var(--black-soft);flex:none;
  transform:scale(1.18);
  transition:transform 1s cubic-bezier(.16,.8,.3,1) var(--rd,0s);
}
.grid-5.is-visible .svc-card-img{transform:scale(1);}
.grid-5 .svc-card:hover .svc-card-img{transform:scale(1.08);}
.grid-5 .svc-card-img::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(115deg, transparent 42%, rgba(255,255,255,.4) 50%, transparent 58%);
  transform:translateX(-140%);
}
.grid-5 .svc-card:hover .svc-card-img::after{transform:translateX(140%);transition:transform .9s ease;}
.grid-5 .svc-card:hover{box-shadow:0 26px 48px rgba(10,10,10,.14);border-color:rgba(10,10,10,.16);}
.grid-5 .svc-card:hover .learn{color:var(--red-deep);}
.grid-5 .svc-card:hover::before{display:none;}
.grid-5 .svc-card .idx{letter-spacing:.08em;}
.grid-5 .svc-card h3{
  margin-top:2px;width:fit-content;
  background-image:linear-gradient(var(--red-deep),var(--red-deep));
  background-repeat:no-repeat;background-position:0 100%;background-size:0% 2px;
  transition:background-size .35s ease;
}
.grid-5 .svc-card:hover h3{background-size:100% 2px;}
.grid-5 .svc-card .learn{transition:gap .25s ease,color .2s ease;margin-top:auto;padding-top:6px;}
.grid-5 .svc-card:hover .learn{gap:10px;}
.grid-5 .svc-card-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:24px 26px 26px;}
.grid-5 .svc-card .idx{color:var(--red);}
.grid-5 .svc-card h3{color:var(--ink);}
.grid-5 .svc-card p{color:var(--gray);}
.grid-5 .svc-card .learn{color:var(--red);}

.svc-marquee{overflow:hidden;padding:6px 0 4px;}
.svc-track{display:flex;gap:26px;width:max-content;animation:svc-scroll 40s linear infinite;}
@media (hover:hover){
  .svc-track:hover{animation-play-state:paused;}
}
.svc-track .card-link{display:block;width:400px;flex-shrink:0;}
.svc-track .svc-card{
  opacity:1;transform:none;height:auto;padding:0;overflow:hidden;
  background-color:var(--white);border:1px solid var(--line);
  transition:transform .4s ease, box-shadow .4s ease;
}
.svc-track .svc-card::before{display:none;}
.svc-track .svc-card-img{
  aspect-ratio:3/2;background-size:cover;background-repeat:no-repeat;background-position:center;background-color:var(--black-soft);
  transition:transform .5s cubic-bezier(.16,.8,.3,1);
}
.svc-track .svc-card-body{
  margin-top:0;min-height:150px;padding:20px 22px 22px;gap:8px;background:var(--white);
}
.svc-track .svc-card .idx{color:var(--red);}
.svc-track .svc-card h3{color:var(--ink);font-size:18px;}
.svc-track .svc-card p{color:var(--gray);font-size:13.5px;}
.svc-track .svc-card .learn{color:var(--red);transition:gap .25s ease,color .2s ease;}
.svc-track .svc-card:hover .svc-card-img{transform:scale(1.08);}
.svc-track .svc-card:hover{box-shadow:0 20px 44px rgba(10,10,10,.14);}
.svc-track .svc-card:hover .learn{color:var(--red-deep);gap:10px;}
@keyframes svc-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- Fleet feature list ---------- */
.fleet-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center;padding:50px 0;border-top:1px solid var(--line-light);}
.section--dark .fleet-row{border-color:var(--line-light);}
.fleet-row:last-of-type{border-bottom:1px solid var(--line-light);}
.fleet-row .code{font-family:var(--f-body);color:var(--red);font-size:13px;font-weight:700;margin-bottom:12px;letter-spacing:.04em;}
.fleet-row h3{font-size:27px;color:var(--white);margin-bottom:10px;}
.fleet-row .tag{font-family:var(--f-body);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:16px;}
.fleet-row p{color:rgba(255,255,255,.65);max-width:480px;}
.fleet-visual{aspect-ratio:16/10;border-radius:var(--radius);position:relative;overflow:hidden;background:linear-gradient(150deg,#1b1330,#0a0a0a 60%);border:1px solid var(--line-light);clip-path:polygon(28px 0,100% 0,100% 100%,0 100%,0 28px);}
.fleet-visual::after{content:attr(data-glyph);position:absolute;right:22px;bottom:16px;font-family:var(--f-body);font-size:12px;font-weight:700;color:rgba(255,255,255,.45);}
.fleet-visual .glyph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:60px;filter:grayscale(.15);}

/* ---------- Why choose ---------- */
.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;}
.why-panel{background:var(--black);color:var(--white);border-radius:var(--radius);padding:52px;position:relative;overflow:hidden;}
.why-panel::before{display:none;}
.why-list{margin-top:28px;display:grid;gap:0;position:relative;}
.why-list li{display:flex;gap:16px;padding:18px 0;border-top:1px solid var(--line-light);align-items:flex-start;}
.why-list li:first-child{border-top:none;}
.why-list .mk{font-family:var(--f-body);color:var(--red);font-size:13px;font-weight:700;padding-top:2px;}
.why-list .tx b{display:block;font-size:16px;margin-bottom:4px;}
.why-list .tx span{color:rgba(255,255,255,.58);font-size:14px;}
.why-cta{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap;}
.why-visual{
  aspect-ratio:4/5;border-radius:var(--radius);
  background:var(--grad);position:relative;clip-path:polygon(0 0,100% 36px,100% 100%,0 100%);
}
.why-visual-trust{background-position:68% 18%;}
.why-visual-leadership{background-position:center 15%;}
.why-visual .tag{position:absolute;left:22px;bottom:22px;background:rgba(10,10,10,.78);color:var(--white);font-family:var(--f-body);font-size:12px;font-weight:700;padding:10px 14px;border-radius:6px;letter-spacing:.02em;}

/* ---------- Cargo care ---------- */
.cargo-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.cargo-feats{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.cargo-feat{background:var(--white);padding:26px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:var(--radius);}
.cargo-feat.on{background:var(--black);color:var(--white);border-color:var(--black);}
.cargo-feat .n{font-family:var(--f-display);font-size:24px;font-weight:700;color:var(--red);}
.cargo-feat.on .n{color:var(--red);}
.cargo-feat h4{font-size:16px;margin-top:12px;}
.cargo-feat p{font-size:13.5px;color:var(--gray);margin-top:8px;}
.cargo-feat.on p{color:rgba(255,255,255,.62);}
.cargo-visual{aspect-ratio:1/1;border-radius:var(--radius);background:var(--black);position:relative;overflow:hidden;}
.cargo-visual svg{position:absolute;inset:0;width:100%;height:100%;}

/* ---------- Testimonials ---------- */
.testi-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px;}
.testi-nav{display:flex;gap:10px;}
.testi-nav button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--white);display:flex;align-items:center;justify-content:center;}
.testi-track{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.testi-card{background:var(--white);border:1px solid var(--line);padding:28px;border-radius:var(--radius);display:flex;flex-direction:column;}
.stars{color:var(--red);letter-spacing:2px;font-size:14px;margin-bottom:16px;}
.testi-card p{color:var(--ink);font-size:14.5px;flex:1;}
.testi-who{display:flex;align-items:center;gap:12px;margin-top:22px;}
.avatar{width:42px;height:42px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;color:var(--white);font-family:var(--f-display);font-weight:700;font-size:14px;}
.testi-who b{display:block;font-size:14.5px;}
.testi-who span{font-size:12.5px;color:var(--gray);}

/* ---------- Marquee ---------- */
.marquee{background:var(--cream-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:20px 0;}
.marquee-track{display:flex;gap:40px;white-space:nowrap;width:max-content;animation:scroll 32s linear infinite;}
.marquee-track span{font-family:var(--f-display);font-weight:600;font-size:14px;letter-spacing:.01em;color:var(--ink);display:flex;align-items:center;gap:40px;}
.marquee-track span::after{content:"●";color:var(--red);margin-left:40px;font-size:8px;}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- FAQ ---------- */
.faq-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:start;}
.faq-item{border-top:1px solid var(--line);}
.faq-list{border-bottom:1px solid var(--line);}
.faq-q{width:100%;background:none;border:0;text-align:left;padding:22px 4px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:var(--f-body);font-size:16px;font-weight:600;color:var(--ink);}
.faq-q .plus{font-family:var(--f-display);color:var(--red);font-size:18px;transition:transform .2s ease;flex:none;font-weight:700;}
.faq-item.open .plus{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.faq-a p{padding:0 4px 22px;color:var(--gray);font-size:14.5px;max-width:520px;}
.faq-visual{aspect-ratio:4/5;border-radius:var(--radius);background:var(--black);position:relative;overflow:hidden;}
.faq-visual .quote-code{position:absolute;top:22px;left:22px;font-family:var(--f-body);color:var(--red);font-size:12px;font-weight:700;}

/* ---------- Quote / CTA band ---------- */
.cta-band-section{position:relative;overflow:hidden;background:#f5f5f5;}
.cta-band-section::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 55% 65% at 88% 12%, rgba(227,30,37,.07) 0%, transparent 55%),
    radial-gradient(ellipse 50% 60% at 8% 90%, rgba(4,160,224,.07) 0%, transparent 55%);
}
.cta-band-section::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(45deg, rgba(10,10,10,.035) 0 1px, transparent 1px 26px);
}
.cta-band-section .wrap{position:relative;z-index:1;}
.quote-band{position:relative;color:var(--white);display:grid;grid-template-columns:1.2fr .9fr;gap:0;border-radius:12px;overflow:hidden;}
.quote-visual{position:relative;background:linear-gradient(150deg,#0a0e18 0%,#000 75%);padding:56px;display:flex;flex-direction:column;justify-content:flex-start;gap:28px;overflow:hidden;}
.quote-visual::before{content:"";position:absolute;left:-12%;top:-25%;width:60%;height:75%;background:radial-gradient(circle, rgba(4,160,224,.22), transparent 65%);pointer-events:none;}
.quote-visual .route-line{border-top-color:rgba(255,255,255,.1);}
.quote-visual h2{position:relative;font-size:clamp(26px,3.2vw,36px);color:var(--white);max-width:420px;}
.quote-visual .route-code, .quote-visual .btn{position:relative;}
.quote-form{position:relative;background:var(--white);padding:50px;}
.quote-form h3{color:var(--ink);font-size:23px;}
.quote-form p{color:var(--gray);margin-top:10px;font-size:14px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px;}
.quote-form input, .quote-form select, .quote-form textarea{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:6px;background:var(--cream);font-size:14px;color:var(--ink);}
.quote-form textarea{margin-top:14px;min-height:90px;resize:vertical;}
.quote-form .btn{margin-top:18px;width:100%;justify-content:center;background:var(--red);color:var(--white);}
.quote-form .btn:hover{background:var(--red-deep);}

.ask-form-label{display:block;margin-bottom:8px;font-family:var(--f-display);font-size:14px;font-weight:700;color:var(--ink);}
.ask-form-required{color:var(--red);}
.ask-form input, .ask-form textarea{
  width:100%;padding:14px 16px;border:1px solid rgba(10,10,10,.06);border-radius:6px;
  background:var(--white);font-size:14px;color:var(--ink);font-family:inherit;
  box-shadow:0 1px 2px rgba(10,10,10,.03), 0 6px 16px rgba(10,10,10,.04);
  transition:box-shadow .2s ease, border-color .2s ease;
}
.ask-form input:focus, .ask-form textarea:focus{outline:none;border-color:var(--red);box-shadow:0 1px 2px rgba(10,10,10,.03), 0 6px 18px rgba(227,30,37,.1);}
.ask-form textarea{min-height:130px;resize:vertical;}

/* ---------- Footer ---------- */
.site-footer{background:var(--black);color:rgba(255,255,255,.62);padding:76px 0 0;}
.footer-top{display:grid;grid-template-columns:1.2fr .7fr .7fr .7fr .9fr;gap:40px;padding-bottom:56px;border-bottom:1px solid var(--line-light);}
.footer-col ul li{line-height:1.5;}
.footer-brand .brand-name{color:var(--white);}
.footer-brand p{margin-top:20px;max-width:320px;font-size:14.5px;}
.footer-social{display:flex;gap:10px;margin-top:24px;}
.footer-social a{width:38px;height:38px;border:1px solid var(--line-light);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f-body);font-size:12px;font-weight:700;}
.footer-col h5{font-family:var(--f-body);color:var(--red);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;}
.footer-col ul li{margin-bottom:12px;font-size:14.5px;}
.footer-col ul li a:hover{color:var(--white);}
.footer-contact-list li{display:flex;align-items:flex-start;gap:10px;}
.footer-contact-list li i{color:var(--blue);font-size:13px;margin-top:3px;flex:none;}
.footer-bottom{display:flex;justify-content:space-between;padding:24px 0;font-size:13px;color:rgba(255,255,255,.4);flex-wrap:wrap;gap:10px;}
.footer-bottom a:hover{color:var(--white);}

/* ---------- Page hero (inner pages) ---------- */
.page-hero{
  color:var(--white);background:var(--black-soft);padding:110px 0 90px;position:relative;overflow:hidden;
}
.page-hero::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(ellipse 60% 80% at 15% 50%, rgba(227,30,37,.14) 0%, transparent 55%),
    radial-gradient(ellipse 50% 70% at 85% 20%, rgba(4,160,224,.1) 0%, transparent 50%);
}
.page-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:60px 60px;
}
.page-hero .wrap{position:relative;z-index:1;text-align:center;}
/* Reusable photo-cover treatment for visual blocks; background-image set inline per instance */
.photo{background-size:cover;background-position:center;position:relative;}
.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,10,10,0) 40%, rgba(10,10,10,.55) 100%);}
.photo .glyph{display:none;}
.photo::after{content:attr(data-glyph);position:absolute;right:18px;bottom:14px;font-family:var(--f-body);font-size:11px;font-weight:700;color:rgba(255,255,255,.85);letter-spacing:.04em;z-index:1;}
.breadcrumb{font-family:var(--f-body);font-size:12.5px;font-weight:600;color:rgba(255,255,255,.5);margin-bottom:14px;display:flex;align-items:center;justify-content:center;gap:8px;}
.breadcrumb span{color:var(--red);}
.page-hero h1{font-size:clamp(32px,4.4vw,50px);color:var(--white);}
.page-hero p{margin:14px auto 0;max-width:560px;color:rgba(255,255,255,.62);}

/* ---------- Misc content components (inner pages) ---------- */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.info-card{background:var(--white);border:1px solid var(--line);padding:28px;border-radius:var(--radius);}
.info-card .n{font-family:var(--f-body);color:var(--red);font-size:12px;font-weight:700;margin-bottom:12px;letter-spacing:.04em;}
.info-card h4{font-size:17px;margin-bottom:10px;}
.info-card p{color:var(--gray);font-size:14.5px;}
.table-scroll{width:100%;overflow-x:auto;margin-top:20px;}
.table-simple{width:100%;min-width:520px;border-collapse:collapse;margin-top:0;}
.table-simple th,.table-simple td{text-align:left;padding:16px;border-bottom:1px solid var(--line);font-size:14.5px;}
.table-simple th{font-family:var(--f-body);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gray);}
.terminal-card{background:var(--white);border:1px solid var(--line);padding:26px;border-radius:var(--radius);}
.terminal-card .city{font-size:19px;font-family:var(--f-display);font-weight:700;}
.terminal-card .code{font-family:var(--f-body);color:var(--red);font-size:12px;font-weight:700;margin-bottom:10px;}
.terminal-card ul{margin-top:14px;}
.terminal-card ul li{font-size:13.5px;color:var(--gray);padding:6px 0;border-top:1px solid var(--line);}
.terminal-card ul li:first-child{border-top:none;}

/* ---------- Contact page ---------- */
.contact-band{position:relative;color:var(--white);padding:56px 0;background-position:center 42%;}
.contact-band.photo::before{background:linear-gradient(100deg, rgba(2,8,20,.74) 32%, rgba(2,8,20,.2) 100%);}
.contact-band .wrap{display:flex;align-items:center;min-height:420px;}
.contact-band-inner{position:relative;z-index:1;max-width:560px;}
.contact-band-inner h2{font-size:clamp(26px,3.4vw,38px);color:var(--white);}
.contact-band-inner p{margin-top:14px;color:rgba(255,255,255,.72);font-size:15px;max-width:480px;}
.contact-band-email{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-family:var(--f-body);font-weight:700;font-size:14.5px;color:var(--white);border-bottom:1.5px solid var(--red);padding-bottom:4px;}
.contact-band-email:hover{color:var(--red);}

.contact-info-list{margin-top:32px;display:flex;flex-direction:column;gap:22px;}
.contact-info-item{display:flex;gap:16px;align-items:flex-start;}
.cii-icon{flex:none;width:44px;height:44px;border-radius:8px;background:var(--cream-alt);display:flex;align-items:center;justify-content:center;font-size:17px;color:var(--red);}
.contact-info-item h4{font-size:15.5px;margin-bottom:4px;}
.contact-info-item p{color:var(--gray);font-size:14px;}
.contact-follow-label{font-family:var(--f-body);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);}
.contact-social{display:flex;flex-wrap:wrap;gap:10px;}
.cs-pill{display:inline-flex;align-items:center;gap:9px;padding:11px 20px;border-radius:100px;background:var(--cream-alt);color:var(--ink);font-family:var(--f-body);font-size:13.5px;font-weight:600;transition:background .2s ease,color .2s ease;}
.cs-pill i{font-size:13px;}
.cs-pill:hover{background:var(--cream);}
.cs-facebook:hover,.cs-linkedin:hover,.cs-instagram:hover{background:var(--red);color:var(--white);}

.contact-form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:44px;min-height:560px;}
.contact-form-card h3{font-size:22px;}
.contact-form-card p{margin-top:8px;color:var(--gray);font-size:14px;}

/* ---------- Responsive ---------- */
@media (max-width:1080px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-side{border-left:none;padding-left:0;border-top:1px solid var(--line-light);padding-top:26px;margin-top:10px;}
  .about-lead,.why-grid,.cargo-grid,.faq-grid,.two-col{grid-template-columns:1fr;}
  .stat-band{grid-template-columns:repeat(2,1fr);gap:24px 0;}
  .stat-band .stat{border-left:none;border-top:1px solid var(--line);padding:20px 0 0;}
  .stat-band .stat:nth-child(-n+2){border-top:none;padding-top:0;}
  .grid-5{grid-template-columns:repeat(2,1fr);}
  .fleet-row{grid-template-columns:1fr;}
  .quote-band{grid-template-columns:1fr;}
  .testi-track{grid-template-columns:repeat(2,1fr);}
  .card-grid-3{grid-template-columns:repeat(2,1fr);}
  .footer-top{grid-template-columns:1fr 1fr;}
}
@media (max-width:720px){
  .main-nav{display:none;}
  .header-tel{display:none;}
  .page-hero{padding:80px 0 60px;}
  .detail-hero{padding:80px 0 60px;}
  .hero-strip{grid-template-columns:1fr;}
  .site-header .wrap{padding:0 16px;gap:10px;}
  .header-actions{gap:10px;}
  .header-actions .btn{padding:10px 14px;font-size:11.5px;}
  .brand-mark{height:30px;}
  .brand-mark img{height:30px;}
  .brand-name{font-size:14px;}
  .section{padding:64px 0;}
  .grid-5{grid-template-columns:1fr;}
  .cargo-feats{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
  .quote-form,.quote-visual{padding:34px;}
  .testi-track{grid-template-columns:1fr;}
  .card-grid-3{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
  .contact-band{padding:40px 0;}
  .contact-band .wrap{min-height:280px;}
  .contact-form-card{padding:30px;}
  .footer-bottom{flex-direction:column;}
  .section-head.between{flex-direction:column;align-items:start;}
  .stat-band{grid-template-columns:1fr 1fr;}

  .svc-marquee{position:relative;}
  .svc-track{
    animation:none !important;width:auto;
    overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;padding:0 15% 4px;
  }
  .svc-track::-webkit-scrollbar{display:none;}
  .svc-track .card-link{width:70vw;scroll-snap-align:center;}
  .svc-track a[aria-hidden="true"]{display:none;}
  .svc-nav-btn{
    display:flex;align-items:center;justify-content:center;
    position:absolute;top:36%;transform:translateY(-50%);z-index:5;
    width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;
    background:rgba(6,13,28,.85);color:var(--white);font-size:13px;
    transition:opacity .2s ease;
  }
  .svc-nav-btn.is-hidden{opacity:0;pointer-events:none;}
  .svc-nav-prev{left:2px;}
  .svc-nav-next{right:2px;}
}
@media (min-width:721px){
  .svc-nav-btn{display:none;}
}
@media (max-width:480px){
  .wrap{padding:0 20px;}
  .site-header .wrap{padding:0 14px;gap:8px;}
  .brand-name span{display:none;}
  .header-actions .btn{padding:9px 12px;font-size:11px;}
  .stat-band{grid-template-columns:1fr;}
  .stat-band .stat{border-top:1px solid var(--line);padding:18px 0 0;}
  .stat-band .stat:first-child{border-top:none;padding-top:0;}
  .hero{padding:100px 0 48px;}
  .hero-cta{flex-direction:column;align-items:stretch;}
  .hero-cta .btn{justify-content:center;}
  .why-cta{flex-direction:column;align-items:stretch;}
  .why-cta .btn{justify-content:center;}
}

/* =============================================================
   Service / Industry detail pages (Django-rendered)
   ============================================================= */
.detail-hero{
  position:relative;color:var(--white);padding:110px 0 90px;overflow:hidden;
  background:var(--black-soft);
}
.detail-hero::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(ellipse 60% 80% at 15% 50%, rgba(227,30,37,.14) 0%, transparent 55%),
    radial-gradient(ellipse 50% 70% at 85% 20%, rgba(4,160,224,.1) 0%, transparent 50%);
  pointer-events:none;
}
.detail-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:60px 60px;
}
.detail-hero .wrap{position:relative;z-index:1;text-align:center;}
.detail-hero h1{font-size:clamp(30px,4vw,46px);color:var(--white);}
.detail-hero .code-badge{
  display:inline-flex;align-items:center;gap:8px;font-family:var(--f-body);font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin-bottom:16px;
}
.detail-hero p{margin:14px auto 0;max-width:560px;color:rgba(255,255,255,.62);}
.detail-hero .wrap.detail-hero-grid{
  display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;text-align:left;
}
.detail-hero-grid .breadcrumb{justify-content:flex-start;}
.detail-hero-grid p{margin:14px 0 0;}
.detail-hero-media{aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background-size:cover;background-position:center;border:1px solid var(--line-light);}

.detail-layout{display:grid;grid-template-columns:300px 1fr;gap:64px;align-items:start;}
.detail-sidebar{position:sticky;top:104px;display:flex;flex-direction:column;gap:22px;}
.side-panel{background:var(--black);border-radius:var(--radius);overflow:hidden;}
.side-panel h4{color:var(--white);font-size:15px;font-weight:700;padding:20px 22px;background:rgba(255,255,255,.04);letter-spacing:.02em;}
.side-panel ul li a{
  display:flex;justify-content:space-between;align-items:center;padding:14px 22px;
  color:rgba(255,255,255,.72);font-size:14px;font-weight:600;border-top:1px solid var(--line-light);
}
.side-panel ul li a:hover{color:var(--white);background:rgba(255,255,255,.03);}
.side-panel ul li a.current{color:var(--white);background:var(--red);}
.side-panel ul li:first-child a{border-top:none;}

.quote-mini{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px;}
.quote-mini h4{font-size:16px;margin-bottom:16px;}
.quote-mini .field{margin-bottom:12px;}
.quote-mini input, .quote-mini select, .quote-mini textarea{
  width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:var(--cream);font-size:13.5px;color:var(--ink);
}
.quote-mini textarea{min-height:80px;resize:vertical;}
.quote-mini .btn{width:100%;justify-content:center;background:var(--red);color:var(--white);margin-top:4px;}
.quote-mini .btn:hover{background:var(--red-deep);}

.detail-content h2{font-size:28px;margin-bottom:16px;}
.detail-content .lead-body p{color:var(--gray);font-size:15.5px;margin-bottom:14px;}
.detail-content .lead-body p:last-child{margin-bottom:0;}
.reason-heading{font-size:20px;margin:36px 0 16px;}
.reason-list{display:flex;flex-direction:column;gap:0;}
.reason-list li{
  display:flex;gap:12px;padding:14px 0;border-top:1px solid var(--line);color:var(--ink);font-size:14.5px;
}
.reason-list li:first-child{border-top:none;}
.reason-list li::before{content:"•";color:var(--red);font-weight:700;flex:none;}
.closing-note{margin-top:22px;color:var(--gray);font-size:15px;background:var(--cream);border-radius:var(--radius);padding:18px 20px;}

.detail-faq{margin-top:48px;}
.detail-faq h3{font-size:22px;margin-bottom:20px;}

.prev-next-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin-top:46px;padding-top:22px;border-top:1px solid var(--line);}
.prev-next-nav .pn-next:only-child{margin-left:auto;}
.prev-next-nav a{display:flex;align-items:center;gap:8px;font-family:var(--f-body);font-size:13px;font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.03em;}
.prev-next-nav a:hover{color:var(--red-deep);}

/* Industry detail specific */
.industry-media{aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background-size:cover;background-position:center;margin-bottom:28px;}
.industry-content h2{font-size:26px;margin-bottom:16px;}

/* Django messages — toast notifications */
.django-messages{
  position:fixed;top:20px;right:20px;z-index:9999;
  display:flex;flex-direction:column;gap:10px;width:min(360px, calc(100vw - 40px));
}
.django-messages .msg{
  padding:14px 18px;border-radius:6px;font-size:14px;font-weight:600;
  box-shadow:0 8px 24px rgba(0,0,0,.15);
  animation:toast-in .3s ease forwards;
}
.django-messages .msg.msg-hide{animation:toast-out .3s ease forwards;}
.django-messages .msg.success{background:#e7f7ec;color:#1c6b3a;border:1px solid #b8e8c8;}
.django-messages .msg.error{background:#fdeceb;color:var(--red-deep);border:1px solid #f6c6c2;}

@keyframes toast-in{
  from{opacity:0;transform:translateX(30px);}
  to{opacity:1;transform:translateX(0);}
}
@keyframes toast-out{
  from{opacity:1;transform:translateX(0);}
  to{opacity:0;transform:translateX(30px);}
}

@media (max-width:640px){
  .django-messages{left:20px;right:20px;width:auto;}
}
.form-error{padding:14px 18px;border-radius:6px;font-size:14px;font-weight:600;background:#fdeceb;color:var(--red-deep);border:1px solid #f6c6c2;}

/* Get a Quote modal (Contact page) */
.quote-modal-overlay{
  position:fixed;inset:0;z-index:2000;background:rgba(2,8,20,.6);
  display:none;align-items:center;justify-content:center;padding:24px;
}
.quote-modal-overlay.show{display:flex;}
.quote-modal{
  position:relative;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;
  border-radius:var(--radius);animation:quoteModalIn .25s cubic-bezier(.16,.8,.3,1);
}
@keyframes quoteModalIn{from{opacity:0;transform:translateY(16px) scale(.98);}to{opacity:1;transform:translateY(0) scale(1);}}
.quote-modal-close{
  position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;
  background:var(--cream);border:none;font-size:20px;line-height:1;color:var(--ink);
  cursor:pointer;display:flex;align-items:center;justify-content:center;
}
.quote-modal-close:hover{background:var(--gray-light);}

/* Cards linking to detail pages */
.svc-card, .info-card{cursor:pointer;}
.svc-card a.card-link, .info-card a.card-link{color:inherit;display:block;}

/* ---------- Staff dashboard ---------- */
.dash-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--line);background:var(--white);}
.dash-topbar .brand{display:flex;align-items:center;gap:10px;}
.dash-topbar .brand img{height:28px;}
.dash-topbar .brand span{font-family:var(--f-display);font-weight:700;font-size:15px;color:var(--ink);}
.dash-user{display:flex;align-items:center;gap:18px;font-size:13.5px;color:var(--gray);}
.dash-logout{border:none;background:none;padding:0;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--red);cursor:pointer;}
.dash-logout:hover{color:var(--red-deep);text-decoration:underline;}
.dash-wrap{max-width:1180px;margin:0 auto;padding:36px 32px 60px;}
.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:40px;}
.dash-stat{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;}
.dash-stat .num{font-family:var(--f-display);font-size:30px;font-weight:700;color:var(--ink);}
.dash-stat .lbl{margin-top:6px;font-size:12px;color:var(--gray);font-weight:600;text-transform:uppercase;letter-spacing:.03em;}
.dash-stat.alert .num{color:var(--red);}
.dash-section{margin-bottom:44px;}
.dash-section h2{font-size:19px;margin-bottom:16px;}
.dash-table-wrap{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;overflow-x:auto;}
.dash-table{width:100%;border-collapse:collapse;}
.dash-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--gray);padding:12px 16px;border-bottom:1px solid var(--line);background:var(--cream);white-space:nowrap;}
.dash-table td{padding:14px 16px;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--ink);vertical-align:top;}
.dash-table tr:last-child td{border-bottom:none;}
.dash-table .muted{color:var(--gray);font-size:12.5px;white-space:nowrap;}
.status-pill{display:inline-block;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;}
.status-pill.pending{background:#fdeceb;color:var(--red-deep);}
.status-pill.done{background:#e7f7ec;color:#1c6b3a;}
.dash-toggle{border:none;background:none;padding:0;font-family:inherit;font-size:12px;font-weight:700;color:var(--red);cursor:pointer;white-space:nowrap;}
.dash-toggle:hover{text-decoration:underline;}
.dash-empty{padding:30px;text-align:center;color:var(--gray);font-size:14px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);}
@media (max-width:860px){
  .dash-stats{grid-template-columns:repeat(2,1fr);}
  .dash-wrap{padding:28px 20px 50px;}
}

@media (max-width:960px){
  .detail-layout{grid-template-columns:1fr;}
  .detail-sidebar{position:static;}
  .detail-hero .wrap.detail-hero-grid{grid-template-columns:1fr;text-align:center;gap:28px;}
  .detail-hero-grid .breadcrumb{justify-content:center;}
  .detail-hero-grid p{margin:14px auto 0;}
  .detail-hero-media{aspect-ratio:16/9;}
}
