/*
Theme Name: Ausviet Transport
Theme URI: https://avtrans.com.au
Author: Ausviet Transport Pty Ltd
Version: 2.1.0
Description: Bright, modern logistics theme. White nav to showcase colorful logo.
Requires at least: 5.8
Requires PHP: 7.4
License: Private
Text Domain: ausviet
*/

/* ══ RESET ══ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Barlow',sans-serif;color:#1A2B4A;background:#fff;overflow-x:hidden}
img{max-width:100%;display:block}
a{text-decoration:none}

/* ══ VARIABLES ══ */
:root{
  --navy:#0B1E4B;
  --red:#CC1F1F;
  --red2:#E53535;
  --off:#F4F7FC;
  --off2:#EBF0FB;
  --gray:#6B7A99;
  --dark:#1A2B4A;
  --blue:#1565C0;
  --radius:12px;
  --t:.3s ease;
  --shadow-sm:0 2px 16px rgba(11,30,75,.08);
  --shadow-md:0 8px 40px rgba(11,30,75,.13);
  --shadow-lg:0 24px 60px rgba(11,30,75,.18);
}

/* ══ LAYOUT ══ */
.container{max-width:1200px;margin:0 auto;padding:0 28px}
.section{padding:88px 0}
.section-header{text-align:center;margin-bottom:52px}

/* ══ TYPOGRAPHY HELPERS ══ */
.lbl{
  display:block;font-family:'Barlow Condensed',sans-serif;
  font-size:12px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--red);margin-bottom:10px;
}
.ttl{
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(28px,4vw,52px);font-weight:900;
  text-transform:uppercase;line-height:1.02;
  color:var(--navy);margin-bottom:14px;
}
.sub{font-size:16px;line-height:1.75;color:var(--gray);max-width:560px}
.ctr{text-align:center}
.ctr .sub{margin:0 auto}

/* ══ BUTTONS ══ */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:16px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:14px 32px;border-radius:6px;border:none;cursor:pointer;
  transition:transform var(--t),box-shadow var(--t),background var(--t);
}
.btn-red{
  background:var(--red);color:#fff;
  box-shadow:0 4px 18px rgba(204,31,31,.35);
}
.btn-red:hover{background:var(--red2);transform:translateY(-2px);color:#fff;box-shadow:0 8px 28px rgba(204,31,31,.45)}
.btn-outline{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.1)}

/* ══════════════════════
   NAV — White, logo large
══════════════════════ */
.site-nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:#ffffff;
  border-bottom:3px solid var(--red);
  box-shadow:0 2px 20px rgba(11,30,75,.10);
  transition:box-shadow var(--t);
}
.site-nav.scrolled{box-shadow:0 4px 28px rgba(11,30,75,.15)}
.nav-inner{
  max-width:1300px;margin:0 auto;padding:0 32px;
  display:flex;align-items:center;justify-content:space-between;
  height:84px;
}
.nav-logo{display:flex;align-items:center;flex-shrink:0}
.nav-logo a{display:flex;align-items:center}

/* ★ Logo sizing — covers all possible WordPress output */
.nav-logo img,
.nav-logo .ausviet-logo-img,
.nav-logo img.ausviet-logo-img,
.nav-logo .custom-logo,
.nav-logo img.custom-logo,
.nav-logo a img,
.nav-logo .custom-logo-link img{
  height:68px !important;
  width:auto !important;
  max-width:260px !important;
  min-height:40px !important;
  object-fit:contain !important;
  object-position:left center !important;
  display:block !important;
}
.nav-logo .custom-logo-link{display:flex !important;align-items:center !important}
.nav-logo .logo-text{font-family:'Barlow Condensed',sans-serif;line-height:1}
.nav-logo .logo-aus{color:var(--navy);font-size:28px;font-weight:900}
.nav-logo .logo-viet{color:var(--red);font-size:28px;font-weight:900}
.nav-logo .logo-sub{display:block;color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-top:3px}

.nav-menu{display:flex;gap:0;list-style:none;margin:0;padding:0}
.nav-menu li a{
  display:block;padding:10px 16px;
  color:var(--navy);
  font-family:'Barlow Condensed',sans-serif;
  font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  position:relative;transition:color var(--t);
}
.nav-menu li a::after{
  content:'';position:absolute;bottom:-1px;left:16px;right:16px;
  height:3px;background:var(--red);transform:scaleX(0);transition:transform var(--t);border-radius:2px;
}
.nav-menu li a:hover{color:var(--red)}
.nav-menu li a:hover::after{transform:scaleX(1)}

.nav-actions{display:flex;align-items:center;gap:10px}
.nav-phone{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--red);color:#fff;
  padding:12px 22px;border-radius:6px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:15px;font-weight:700;letter-spacing:.06em;
  white-space:nowrap;line-height:1;
  box-shadow:0 3px 14px rgba(204,31,31,.3);
  transition:background var(--t),transform var(--t);
}
.nav-phone:hover{background:var(--red2);color:#fff;transform:translateY(-1px)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none}
.hamburger span{display:block;width:25px;height:2px;background:var(--navy);border-radius:2px;transition:.3s}

/* ══ MOBILE NAV ══ */
.mobile-nav{
  display:none;position:fixed;top:84px;left:0;right:0;z-index:999;
  background:#fff;border-top:2px solid var(--red);
  padding:20px 28px 28px;box-shadow:0 8px 32px rgba(11,30,75,.14);
}
.mobile-nav.active{display:block}
.mobile-nav a{
  display:block;color:var(--navy);
  font-family:'Barlow Condensed',sans-serif;
  font-size:20px;font-weight:700;text-transform:uppercase;
  padding:15px 0;border-bottom:1px solid var(--off2);transition:color var(--t);
}
.mobile-nav a:hover{color:var(--red)}
.mobile-nav .mobile-call{
  margin-top:18px;display:block;text-align:center;
  background:var(--red);padding:16px;border-radius:8px;color:#fff;
}

/* ══════════════════════
   HERO
══════════════════════ */
.hero{
  min-height:100vh;
  background:linear-gradient(125deg,#04112E 0%,#0B1E4B 50%,#0D2A6E 85%,#1A1035 100%);
  position:relative;overflow:hidden;
  display:flex;align-items:center;
  padding:122px 0 72px;
}
.hero-bg-img{
  position:absolute;right:0;top:0;bottom:0;width:54%;
  clip-path:polygon(12% 0,100% 0,100% 100%,0% 100%);overflow:hidden;
}
.hero-bg-img img{width:100%;height:100%;object-fit:cover;opacity:.22;filter:saturate(.4) brightness(.7)}
.hero-bg-img::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0B1E4B 0%,transparent 55%)}
.hero-dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px}
.hero-stripe{position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--red),#FF5555,var(--red))}
.hero-content{position:relative;z-index:2;padding:0 5%;max-width:720px}
.hero-badge{
  display:inline-flex;align-items:center;gap:9px;
  background:rgba(204,31,31,.16);border:1px solid rgba(204,31,31,.4);
  color:#FF9090;padding:7px 18px;border-radius:100px;
  font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:28px;
}
.hero-dot{width:7px;height:7px;background:#FF5555;border-radius:50%;animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}
.hero h1{
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(48px,8vw,92px);font-weight:900;
  text-transform:uppercase;line-height:.93;color:#fff;
  letter-spacing:-.01em;margin-bottom:22px;
}
.hero h1 .accent{color:var(--red);display:block}
.hero-lead{font-size:18px;line-height:1.72;color:rgba(255,255,255,.72);font-weight:300;margin-bottom:42px;max-width:530px}
.hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:56px}
.hero-stats{display:flex;gap:40px;flex-wrap:wrap;padding-top:36px;border-top:1px solid rgba(255,255,255,.12)}
.stat-n{font-family:'Barlow Condensed',sans-serif;font-size:44px;font-weight:900;color:#fff;line-height:1}
.stat-n em{color:var(--red);font-style:normal}
.stat-l{font-size:11px;color:rgba(255,255,255,.48);text-transform:uppercase;letter-spacing:.1em;margin-top:4px}

/* ══ TICKER ══ */
.ticker{background:var(--red);padding:13px 0;overflow:hidden}
.ticker-inner{display:flex;animation:tic 32s linear infinite;white-space:nowrap}
.ticker-inner span{padding:0 32px;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.92)}
.ticker-inner span::before{content:'◆';margin-right:32px;opacity:.55;font-size:9px}
@keyframes tic{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ══════════════════════
   SERVICES — Bright white
══════════════════════ */
.services-bg{background:var(--off)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.svc-card{
  background:#fff;border-radius:var(--radius);padding:34px 28px;
  border:1px solid #E0E8F8;border-top:4px solid #E0E8F8;
  transition:border-top-color var(--t),box-shadow var(--t),transform var(--t);
}
.svc-card:hover{border-top-color:var(--red);border-color:rgba(204,31,31,.15);box-shadow:var(--shadow-md);transform:translateY(-5px)}
.svc-ico{
  width:58px;height:58px;
  background:linear-gradient(135deg,var(--navy),var(--blue));
  border-radius:14px;display:flex;align-items:center;justify-content:center;
  font-size:26px;margin-bottom:22px;box-shadow:0 4px 14px rgba(11,30,75,.2);
}
/* service-icon = same as svc-ico (mixed usage) */
.service-icon{
  width:58px;height:58px;
  background:linear-gradient(135deg,var(--navy),var(--blue));
  border-radius:14px;display:flex;align-items:center;justify-content:center;
  font-size:26px;margin-bottom:22px;box-shadow:0 4px 14px rgba(11,30,75,.2);
}
.svc-card h3{font-family:'Barlow Condensed',sans-serif;font-size:21px;font-weight:700;text-transform:uppercase;color:var(--navy);margin-bottom:10px}
.svc-card p{font-size:14px;color:var(--gray);line-height:1.68}
.svc-card ul{list-style:none;margin-top:14px}
.svc-card li{font-size:13px;color:var(--gray);padding:5px 0 5px 18px;border-bottom:1px solid var(--off);position:relative}
.svc-card li:last-child{border:none}
.svc-card li::before{content:'→';position:absolute;left:0;color:var(--red);top:6px;font-size:11px}
.svc-cta,.service-cta{background:var(--navy)!important;border-color:var(--red)!important;border-top-color:var(--red)!important}
.svc-cta h3,.service-cta h3{color:#fff}
.svc-cta p,.service-cta p{color:rgba(255,255,255,.58)}

/* ══════════════════════
   ABOUT — Light blue-gray
══════════════════════ */
.about-bg{
  background:linear-gradient(135deg,var(--off) 0%,#E8F0FF 100%);
  position:relative;overflow:hidden;
}
.about-wm{
  position:absolute;right:-40px;top:50%;transform:translateY(-50%);
  font-family:'Barlow Condensed',sans-serif;font-size:200px;font-weight:900;
  color:rgba(11,30,75,.04);white-space:nowrap;pointer-events:none;letter-spacing:-5px;
}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;position:relative;z-index:1}
.about-photo{position:relative}
/* Image wrap — no distortion */
.about-photo-wrap{
  position:relative;width:100%;border-radius:var(--radius);
  overflow:hidden;box-shadow:var(--shadow-lg);
  aspect-ratio:4/3;background:var(--off2);
}
.about-photo-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
@supports not (aspect-ratio:4/3){.about-photo-wrap{padding-bottom:75%}.about-photo-wrap img{position:absolute;top:0;left:0}}
@media(min-width:1024px){.about-photo-wrap{aspect-ratio:3/2}}
@media(max-width:600px){.about-photo-wrap{aspect-ratio:16/9}}
.about-badge{
  position:absolute;bottom:-16px;right:-16px;
  background:var(--red);border-radius:10px;
  padding:18px 24px;text-align:center;
  box-shadow:0 8px 28px rgba(204,31,31,.45);
}
.about-badge strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:38px;font-weight:900;color:#fff;line-height:1}
.about-badge span{font-size:11px;color:rgba(255,255,255,.85);text-transform:uppercase;letter-spacing:.08em}
.about-text .lbl{color:var(--red)}
.about-text .ttl{color:var(--navy)}
.about-text p{font-size:16px;line-height:1.74;color:#4A5B7A;margin-bottom:16px}
/* strengths grid */
.strengths{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.str{
  display:flex;align-items:center;gap:11px;
  background:#fff;border:1px solid #D8E3F5;border-radius:9px;
  padding:13px 15px;transition:box-shadow var(--t),transform var(--t);
}
.str:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.str .ico{font-size:18px}
.str .txt{font-size:14px;color:var(--navy);font-weight:600}

/* ══════════════════════
   FLEET — Clean white
══════════════════════ */
.fleet-bg{background:#fff}
.fleet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fleet-card{
  background:#fff;border-radius:var(--radius);overflow:hidden;
  border:1px solid #E0E8F8;
  transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}
.fleet-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:transparent}
.fleet-card img{width:100%;height:220px;object-fit:cover}
.fleet-card.wide{grid-column:span 2}
.fleet-card.wide img{height:265px}
.fleet-body{padding:20px 22px}
.fleet-body h4{font-family:'Barlow Condensed',sans-serif;font-size:19px;font-weight:700;text-transform:uppercase;color:var(--navy);margin-bottom:6px}
.fleet-body p{font-size:13px;color:var(--gray);line-height:1.65}
.fleet-tag{
  display:inline-block;margin-top:10px;
  background:#EBF0FB;color:var(--navy);
  font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:5px 12px;border-radius:100px;border:1px solid #C8D6F0;
}

/* ══════════════════════
   WHY US
══════════════════════ */
.why-bg{background:var(--off)}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:52px}
.why-card{
  background:#fff;border-radius:var(--radius);padding:32px 22px;text-align:center;
  border:1px solid #E0E8F8;transition:box-shadow var(--t),transform var(--t);
}
.why-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}
.why-num{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
.why-ico{font-size:44px;margin-bottom:12px;display:block}
.why-card h4{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:700;text-transform:uppercase;color:var(--navy);margin-bottom:8px}
.why-card p{font-size:14px;color:var(--gray);line-height:1.65}

/* ══════════════════════
   ROUTES — Navy (good contrast)
══════════════════════ */
.routes-bg{background:var(--navy)}
.routes-bg .lbl{color:#FF9090}
.routes-bg .ttl{color:#fff}
.routes-bg .sub{color:rgba(255,255,255,.62)}
.routes-row{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-top:48px}
.rt,.route-card{
  flex:1;min-width:180px;max-width:230px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);padding:26px 18px;text-align:center;
  transition:background var(--t),border-color var(--t),transform var(--t);
}
.rt:hover,.route-card:hover{background:rgba(255,255,255,.14);border-color:var(--red);transform:translateY(-4px)}
.rt.hl,.route-card.highlight{border-color:rgba(204,31,31,.5);background:rgba(204,31,31,.14)}
.rt-tag,.route-tag{font-size:11px;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.rt-c,.route-city{font-family:'Barlow Condensed',sans-serif;font-size:22px;font-weight:700;color:#fff;line-height:1.2}
.rt-arr,.route-arrow{color:#FF7070;font-size:18px;margin:8px 0}
.rt-est,.route-est{font-size:12px;color:rgba(255,255,255,.4);margin-top:8px}

/* ══════════════════════
   CONTACT — Clean & bright
══════════════════════ */
.ct-bg,.contact-bg{background:var(--off)}
.ct-g,.contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:68px;align-items:start}
/* Contact info items */
.ci,.contact-item{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}
.ci-ico,.contact-icon{
  width:48px;height:48px;flex-shrink:0;
  background:var(--navy);border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:18px;
  color:#fff;
}
.ci h5,.contact-item h5{font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.1em;margin-bottom:3px}
.ci a,.ci span,.contact-item a,.contact-item span{font-size:16px;font-weight:600;color:var(--navy);display:block}
.ci a:hover,.contact-item a:hover{color:var(--red)}
/* Quote Form box */
.qf,.quote-form{
  background:#fff;border-radius:var(--radius);
  padding:40px 38px;
  box-shadow:var(--shadow-md);
  border:1px solid #E0E8F8;
}
.f-row,.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fg,.form-group{margin-bottom:16px}
.fg label,.form-group label{
  display:block;font-size:12px;font-weight:700;
  color:var(--navy);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;
}
.fg input,.fg select,.fg textarea,
.form-group input,.form-group select,.form-group textarea{
  width:100%;padding:12px 15px;
  border:1.5px solid #D8E3F5;border-radius:7px;
  font-family:'Barlow',sans-serif;font-size:15px;color:var(--dark);
  background:#fff;outline:none;appearance:none;
  transition:border-color var(--t),box-shadow var(--t);
}
.fg input:focus,.fg select:focus,.fg textarea:focus,
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
  border-color:var(--navy);box-shadow:0 0 0 3px rgba(11,30,75,.08);
}
.fg textarea,.form-group textarea{min-height:85px;resize:vertical}
.rr,.radio-row{display:flex;gap:18px}
.rr label,.radio-row label{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:14px;font-weight:500;color:var(--dark)}
.sub-btn,.submit-btn{
  width:100%;padding:15px;margin-top:6px;
  background:var(--navy);color:#fff;border:none;border-radius:7px;cursor:pointer;
  font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  transition:background var(--t),transform var(--t);
}
.sub-btn:hover,.submit-btn:hover{background:var(--blue);transform:translateY(-1px)}
.map-embed{margin-top:24px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid #E0E8F8}

/* ══════════════════════
   FOOTER — Logo in white pill
══════════════════════ */
.site-footer{background:#07101F;padding:64px 0 28px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}

/* ★ Logo pill — white bg so colorful logo shows on dark footer */
.footer-brand .logo-pill{
  display:inline-block;
  margin-bottom:20px;
}
.footer-brand .logo-pill img,
.footer-brand .logo-pill .ausviet-logo-img,
.footer-brand .logo-pill img.custom-logo,
.footer-brand .logo-pill .custom-logo-link img{
  height:52px !important;width:auto !important;
  max-width:200px !important;object-fit:contain !important;display:block !important;
}
/* fallback if no pill wrapper */
.footer-brand .custom-logo-link{
  display:inline-block;background:#fff;
  padding:10px 18px;border-radius:10px;margin-bottom:20px;
}
.footer-brand p{font-size:14px;color:rgba(255,255,255,.42);line-height:1.78;max-width:260px}
.footer-col h5{
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:18px;
}
.footer-col a{display:block;font-size:14px;color:rgba(255,255,255,.62);margin-bottom:10px;transition:color var(--t)}
.footer-col a:hover{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.07);padding-top:26px;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
}
.footer-bottom p{font-size:13px;color:rgba(255,255,255,.3)}
.abn-badge{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  padding:7px 14px;border-radius:5px;font-size:12px;color:rgba(255,255,255,.35);
}

/* ══ FLOAT CALL ══ */
.float-call{
  position:fixed;bottom:26px;right:26px;z-index:997;
  width:60px;height:60px;border-radius:50%;
  background:var(--red);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:24px;
  box-shadow:0 4px 22px rgba(204,31,31,.55);animation:pr 2.5s infinite;transition:transform var(--t);
}
.float-call:hover{transform:scale(1.1)}
@keyframes pr{0%,100%{box-shadow:0 4px 22px rgba(204,31,31,.55)}50%{box-shadow:0 4px 36px rgba(204,31,31,.9),0 0 0 10px rgba(204,31,31,.12)}}

/* ══ SCROLL REVEAL ══ */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}
.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}

/* ══ WP ADMIN BAR ══ */
.admin-bar .site-nav{top:32px}
.admin-bar .mobile-nav{top:calc(84px + 32px)}
@media screen and (max-width:782px){.admin-bar .site-nav{top:46px}.admin-bar .mobile-nav{top:calc(84px + 46px)}}

/* ══ RESPONSIVE ══ */
@media(max-width:1024px){
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .fleet-grid{grid-template-columns:repeat(2,1fr)}
  .fleet-card.wide{grid-column:span 2}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .about-grid{grid-template-columns:1fr;gap:52px}
  .ct-g,.contact-grid{grid-template-columns:1fr;gap:44px}
  .about-badge{right:0}
}
@media(max-width:768px){
  .nav-menu,.nav-phone{display:none}
  .hamburger{display:flex}
  .nav-inner{padding:0 20px}
  .hero{padding:112px 0 64px}
  .hero-bg-img{display:none}
  .hero-content{padding:0 20px}
  .hero-stats{gap:22px}
  .section{padding:60px 0}
  .services-grid,.fleet-grid{grid-template-columns:1fr}
  .fleet-card.wide{grid-column:span 1}.fleet-card.wide img{height:220px}
  .why-grid{grid-template-columns:1fr 1fr}
  .strengths{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:28px}
  .footer-bottom{flex-direction:column;text-align:center}
  .f-row,.form-row{grid-template-columns:1fr}
  .qf,.quote-form{padding:26px 22px}
}
@media(max-width:480px){
  .hero h1{font-size:46px}
  .hero-buttons{flex-direction:column}
  .why-grid{grid-template-columns:1fr}
  .routes-row{flex-direction:column;align-items:center}
  .rt,.route-card{max-width:100%;width:100%}
}
/* ── Fix radio button Service Type ── */
.radio-row,
.rr {
  display: flex !important;
  flex-direction: row !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

.radio-row label,
.rr label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
  padding: 12px 18px !important;
  border: 2px solid #dce5f5 !important;
  border-radius: 8px !important;
  background: #f4f7fc !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #1A2B4A !important;
  min-width: 160px !important;
  flex: 1 !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}

.radio-row input[type="radio"],
.rr input[type="radio"] {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  cursor: pointer !important;
  accent-color: #CC1F1F !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: inline-block !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  -webkit-appearance: radio !important;
  appearance: radio !important;
}

.radio-row label:has(input:checked),
.rr label:has(input:checked) {
  border-color: #CC1F1F !important;
  background: #fff0f0 !important;
}