:root{
  --ink:#0b111a;--graphite:#151d29;--graphite2:#202b3a;--steel:#667085;--muted:#778297;
  --paper:#f4f6f9;--white:#fff;--gold:#c6a14a;--gold2:#f0d890;--blue:#6ea2c8;
  --line:rgba(255,255,255,.12);--shadow:0 24px 80px rgba(0,0,0,.24);--radius:28px;
  --ease-out-expo:cubic-bezier(.16,1,.3,1);--ease-out-back:cubic-bezier(.34,1.56,.64,1)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#111827;background:#eef2f7;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px,92vw);margin:auto}
.section-pad{padding:104px 0}
body::before{content:"";position:fixed;inset:0;z-index:-3;
  background:radial-gradient(circle at 10% 0%,rgba(198,161,74,.12),transparent 28%),
  radial-gradient(circle at 100% 15%,rgba(110,162,200,.15),transparent 30%),
  linear-gradient(180deg,#f8fafc,#e9eef5)}

/* ===== HEADER ===== */
.site-header{position:sticky;top:0;z-index:50;padding:14px 0;
  background:rgba(12,17,25,.82);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(240,216,144,.22);box-shadow:0 14px 45px rgba(0,0,0,.22);
  transition:background .3s,padding .3s}
.site-header::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--gold2),transparent)}
.site-header.scrolled{padding:10px 0;background:rgba(12,17,25,.95)}
.site-header.scrolled .brand-logo{height:36px}
.site-header.scrolled .brand::after{width:50px;height:50px}
.nav-shell{width:min(1260px,94vw);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}

/* Brand — logo + text, clean enterprise treatment */
.brand{display:flex;align-items:center;min-width:max-content;position:relative;padding:4px 0;gap:12px}
.brand::after{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:60px;height:60px;
  border-radius:50%;background:radial-gradient(circle,rgba(244,246,249,.72) 0%,rgba(244,246,249,.28) 38%,transparent 68%);
  pointer-events:none;z-index:0;transition:width .3s,height .3s}
.brand-logo{height:44px;width:auto;opacity:.95;transition:opacity .3s,transform .3s var(--ease-out-expo);flex-shrink:0;position:relative;z-index:1}
.brand:hover .brand-logo{opacity:1;transform:scale(1.03)}
.brand-copy{padding:0;position:relative;z-index:1}
.brand-copy strong{display:block;color:#fff;font-size:1.12rem;letter-spacing:-.01em;font-weight:900;transition:color .28s}
.brand:hover .brand-copy strong{color:var(--gold2)}
.brand-copy small{font-size:.7rem;color:#c8d0dc;font-weight:800;text-transform:uppercase;letter-spacing:.12em;transition:color .28s}
.brand:hover .brand-copy small{color:#e2e8f0}

.nav-links{display:flex;align-items:center;gap:25px;font-size:.82rem;font-weight:900;color:#e2e8f0;text-transform:uppercase;letter-spacing:.08em}
.nav-links a{position:relative;opacity:.86;transition:opacity .22s,color .22s,transform .22s}
.nav-links a:not(.nav-cta)::after{content:"";position:absolute;left:50%;bottom:-10px;width:0;height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold2));transition:width .35s var(--ease-out-expo),left .35s var(--ease-out-expo);transform:none}
.nav-links a:hover{opacity:1;color:#fff;transform:translateY(-1px)}
.nav-links a:hover::after{width:100%;left:0}
.nav-links a.active{opacity:1;color:var(--gold2)}
.nav-links a.active::after{width:100%;left:0}
.nav-cta,.button{border:0;cursor:pointer;border-radius:999px;padding:13px 19px;font-weight:900;
  display:inline-flex;align-items:center;justify-content:center;transition:.28s;font-family:inherit;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}
.nav-cta{border:1px solid rgba(240,216,144,.55);color:var(--gold2);background:transparent;box-shadow:inset 0 0 0 1px rgba(198,161,74,.12);position:relative;overflow:hidden}
.nav-cta::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--gold),var(--gold2));opacity:0;transition:opacity .32s}
.nav-cta:hover{color:#111827;box-shadow:0 16px 35px rgba(198,161,74,.28);transform:translateY(-2px)}
.nav-cta:hover::before{opacity:1}
.nav-cta span,.nav-cta{position:relative;z-index:1}
.nav-toggle{display:none;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:10px 12px;cursor:pointer;font-size:1.1rem;transition:background .22s}
.nav-toggle:hover{background:rgba(255,255,255,.14)}

/* ===== HERO ===== */
.hero{position:relative;overflow:hidden;min-height:820px;display:flex;align-items:center;
  color:white;background:linear-gradient(135deg,#0c1119 0%,#1b2635 45%,#293847 100%)}

/* Grid background */
.hero::before{content:"";position:absolute;inset:0;z-index:0;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:60px 60px;mask-image:linear-gradient(180deg,#000 60%,transparent 100%)}

/* Ambient glow bg */
.hero::after{content:"";position:absolute;inset:-15%;z-index:0;
  background:radial-gradient(circle at 12% 28%,rgba(198,161,74,.22),transparent 22%),
  radial-gradient(circle at 85% 18%,rgba(110,162,200,.22),transparent 26%),
  linear-gradient(110deg,rgba(0,0,0,.18),transparent 45%);
  animation:pulseBg 9s ease-in-out infinite}

/* Route canvas */
.hero-canvas{position:absolute;inset:0;z-index:1;opacity:.55;pointer-events:none}

/* Light sweep */
.hero-sweep{position:absolute;top:0;left:-100%;width:60%;height:100%;z-index:2;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.04) 50%,transparent 60%);
  animation:sweep 6s ease-in-out infinite;pointer-events:none}

/* Floating glass overlays */
.glass-float{position:absolute;border-radius:24px;z-index:2;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.glass-float-1{width:180px;height:120px;top:12%;right:14%;animation:glassFloat1 14s ease-in-out infinite}
.glass-float-2{width:140px;height:90px;bottom:18%;left:8%;animation:glassFloat2 18s ease-in-out infinite}
.glass-float-3{width:100px;height:70px;top:55%;right:5%;animation:glassFloat3 12s ease-in-out infinite;opacity:.5}

/* Animated route decoration lines */
.deco-route{position:absolute;z-index:2;pointer-events:none;height:2px;
  background:linear-gradient(90deg,transparent,var(--blue),transparent);opacity:.2}
.deco-route-1{width:300px;top:25%;left:-100px;animation:routeSlide 8s linear infinite}
.deco-route-2{width:200px;bottom:30%;right:-100px;animation:routeSlide 12s linear infinite reverse}

/* Network hub dots */
.hub-dot{position:absolute;z-index:2;pointer-events:none;border-radius:50%;
  background:var(--gold);box-shadow:0 0 20px rgba(198,161,74,.4),0 0 40px rgba(198,161,74,.2)}
.hub-dot-1{width:6px;height:6px;top:20%;left:22%;animation:hubPulse 3s ease-in-out infinite}
.hub-dot-2{width:4px;height:4px;top:65%;right:18%;animation:hubPulse 4s ease-in-out infinite 1s}
.hub-dot-3{width:5px;height:5px;bottom:25%;left:45%;animation:hubPulse 3.5s ease-in-out infinite .5s}

.orb{position:absolute;border-radius:999px;filter:blur(65px);opacity:.4;animation:float 9s ease-in-out infinite;pointer-events:none;z-index:1;will-change:transform}
.orb-one{background:var(--blue);width:420px;height:420px;right:8%;top:10%}
.orb-two{background:var(--gold);width:360px;height:360px;left:3%;bottom:5%;animation-delay:2.5s}

.hero-inner{position:relative;z-index:3;display:grid;grid-template-columns:1.1fr .9fr;gap:58px;align-items:center}

.hero-content .eyebrow{display:inline-flex;color:var(--gold2);font-size:.78rem;font-weight:1000;
  text-transform:uppercase;letter-spacing:.16em;margin-bottom:17px}
.hero h1{font-size:clamp(2.55rem,5.5vw,5.4rem);line-height:.96;letter-spacing:-.075em;margin:0 0 24px;font-weight:900}
.hero p{font-size:1.12rem;color:#d6dde8;max-width:560px;line-height:1.6}
.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.primary{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#10151f;font-weight:900;
  box-shadow:0 18px 50px rgba(198,161,74,.3);transition:transform .32s var(--ease-out-back),box-shadow .32s;position:relative;overflow:hidden}
.primary::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.25),transparent);opacity:0;transition:opacity .3s}
.primary:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(198,161,74,.42)}
.primary:hover::after{opacity:1}
.secondary{background:rgba(255,255,255,.09);color:#fff;border:1px solid rgba(255,255,255,.2);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .32s var(--ease-out-back),background .28s,border-color .28s}
.secondary:hover{background:rgba(255,255,255,.15);transform:translateY(-4px);border-color:rgba(255,255,255,.35)}
.button{padding:15px 28px;font-size:.9rem;border-radius:999px;font-weight:900;font-family:inherit}

/* Hero stats panel */
.hero-stats{align-self:center}
.stats-panel{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--radius);padding:30px;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
  box-shadow:0 32px 80px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.12);position:relative;overflow:hidden;
  transition:transform .4s var(--ease-out-expo),box-shadow .4s}
.stats-panel:hover{transform:translateY(-4px);box-shadow:0 38px 90px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.15)}
.stats-panel::before{content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 55%);pointer-events:none}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative}
.stat-item{text-align:center;padding:18px 12px;border-radius:18px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  transition:background .3s,transform .3s var(--ease-out-back)}
.stat-item:hover{background:rgba(255,255,255,.1);transform:scale(1.04)}
.stat-num{display:block;font-size:1.25rem;font-weight:900;color:#fff;letter-spacing:-.02em}
.stat-label{font-size:.7rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-top:4px;display:block}
.stat-divider{height:1px;background:rgba(255,255,255,.1);margin:20px 0}
.values-row{margin-bottom:20px}
.values-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gold2);font-weight:800;display:block;margin-bottom:6px}
.values-text{font-size:.82rem;color:#d6dde8;font-weight:700;line-height:1.6}
.stat-feature{display:flex;align-items:center;gap:8px;padding:13px 10px;border-radius:14px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);font-size:.8rem;color:#e2e8f0;font-weight:800;
  transition:background .3s,transform .3s var(--ease-out-back)}
.stat-feature:hover{background:rgba(255,255,255,.1);transform:translateX(3px)}
.feat-icon{color:var(--gold2);font-size:.65rem}

/* ===== SECTIONS ===== */
.section{position:relative}
.section-head{margin-bottom:38px}
.centered{text-align:center}
.centered p{margin-left:auto;margin-right:auto}
.eyebrow-dark{display:inline-flex;color:var(--gold);font-size:.78rem;font-weight:1000;
  text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px}
.eyebrow{display:inline-flex;color:var(--gold2);font-size:.78rem;font-weight:1000;
  text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px}
.section-head h2,.contact-band h2{font-size:clamp(2rem,4vw,3.7rem);line-height:.97;letter-spacing:-.06em;margin:0 0 18px;font-weight:900}
.section-head p{font-size:1.05rem;color:var(--muted);max-width:700px}

.light-section{background:rgba(255,255,255,.74);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.dark-section{background:linear-gradient(135deg,#101720,#1a2535);position:relative;overflow:hidden}
.dark-section::before{content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 80% 20%,rgba(110,162,200,.12),transparent 35%),
  radial-gradient(circle at 10% 80%,rgba(198,161,74,.1),transparent 30%);pointer-events:none}

/* ===== CARDS ===== */
.card-grid{display:grid;gap:20px}
.four{grid-template-columns:repeat(4,1fr)}
.service-card{background:rgba(255,255,255,.88);border:1px solid rgba(20,29,41,.07);
  border-radius:25px;padding:30px;box-shadow:0 16px 48px rgba(16,24,40,.08);
  transition:transform .42s var(--ease-out-back),box-shadow .42s,border-color .32s;
  position:relative;overflow:hidden;will-change:transform}
.service-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;
  background:linear-gradient(90deg,var(--gold),transparent);transition:height .32s}
.service-card::after{content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(198,161,74,.04),transparent);opacity:0;transition:opacity .32s;pointer-events:none}
.service-card:hover{transform:translateY(-8px);box-shadow:0 32px 80px rgba(16,24,40,.16);
  border-color:rgba(198,161,74,.22)}
.service-card:hover::before{height:4px}
.service-card:hover::after{opacity:1}
.card-num{color:var(--gold);font-weight:1000;font-size:1rem;transition:transform .32s var(--ease-out-back)}
.service-card:hover .card-num{transform:scale(1.15)}
.service-card h3{font-size:1.16rem;margin:14px 0 10px;font-weight:800;transition:color .28s}
.service-card:hover h3{color:var(--ink)}
.service-card p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}

/* ===== SPLIT ===== */
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}
.reverse{grid-template-columns:1.1fr .9fr}

/* ===== CHECK LIST ===== */
.check-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:10px}
.check-list li{background:white;border-radius:16px;padding:14px 16px;
  box-shadow:0 8px 24px rgba(17,24,39,.06);font-weight:700;font-size:.92rem;
  transition:box-shadow .28s,transform .28s var(--ease-out-back);cursor:default}
.check-list li:hover{box-shadow:0 14px 36px rgba(17,24,39,.12);transform:translateX(6px)}
.check-list li::before{content:"\2713";margin-right:10px;color:var(--gold);font-weight:1000;
  display:inline-block;transition:transform .28s var(--ease-out-back)}
.check-list li:hover::before{transform:scale(1.3)}

/* ===== FORMS ===== */
.form-card{background:rgba(255,255,255,.94);border-radius:var(--radius);padding:32px;
  box-shadow:0 24px 70px rgba(16,24,40,.14);border:1px solid rgba(20,29,41,.07);
  transition:transform .4s var(--ease-out-expo),box-shadow .4s}
.form-card:hover{transform:translateY(-4px);box-shadow:0 30px 80px rgba(16,24,40,.18)}
.form-card h3{font-size:1.5rem;margin:0 0 22px;font-weight:800}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,textarea,select{width:100%;border:1.5px solid #d0d5dd;border-radius:14px;padding:13px 14px;
  font:inherit;background:#f8fafc;color:#111827;transition:border-color .22s,box-shadow .22s,background .22s,transform .22s;font-size:.9rem}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--gold);
  box-shadow:0 0 0 4px rgba(198,161,74,.14);background:#fff;transform:scale(1.01)}
textarea{min-height:110px;margin-top:12px;resize:vertical}
.full{width:100%;margin-top:14px}
button.primary{border:0;font-size:.9rem;padding:15px 28px}

/* ===== FORM SUCCESS MESSAGE ===== */
.form-success-message{text-align:center;padding:40px 24px;color:#1a5632;background:rgba(220,252,231,.92);
  border:1.5px solid rgba(34,197,94,.3);border-radius:var(--radius);font-size:1rem;line-height:1.6}
.form-success-message strong{display:block;font-size:1.2rem;margin-bottom:8px;color:#15803d}

/* ===== DRIVER ===== */
.driver-types{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0}
.driver-type{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);
  border-radius:14px;padding:14px 16px;color:#e2e8f0;font-weight:800;font-size:.88rem;
  transition:background .28s,border-color .28s,transform .3s var(--ease-out-back)}
.driver-type:hover{background:rgba(255,255,255,.14);border-color:rgba(240,216,144,.3);transform:translateY(-3px)}
.driver-contact{margin-top:20px;display:flex;flex-direction:column;gap:8px}
.contact-link-light{color:var(--gold2);font-weight:900;font-size:1.05rem;transition:color .2s,transform .2s;display:inline-block}
.contact-link-light:hover{color:#fff;transform:translateX(4px)}

/* ===== REGIONAL OPERATIONS ===== */
.region-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:12px}
.region-block{background:rgba(255,255,255,.88);border:1px solid rgba(20,29,41,.07);
  border-radius:25px;padding:32px;box-shadow:0 16px 48px rgba(16,24,40,.08);
  transition:transform .42s var(--ease-out-back),box-shadow .42s;position:relative;overflow:hidden}
.region-block::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;
  background:linear-gradient(90deg,var(--gold),var(--gold2),transparent);transition:height .32s}
.region-block:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(16,24,40,.14)}
.region-block:hover::before{height:4px}
.region-block-header{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.region-block h3{font-size:1.25rem;font-weight:800;margin:0;color:var(--ink)}
.region-badge{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;
  padding:5px 12px;border-radius:999px;display:inline-flex;align-items:center}
.primary-badge{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#10151f}
.expanded-badge{background:rgba(110,162,200,.15);color:var(--blue);border:1px solid rgba(110,162,200,.25)}
.region-list{display:grid;gap:10px}
.region-item{display:flex;align-items:center;gap:12px;padding:14px 16px;
  background:rgba(255,255,255,.6);border:1px solid rgba(20,29,41,.05);border-radius:16px;
  font-weight:700;font-size:.94rem;color:var(--ink);
  transition:transform .3s var(--ease-out-back),box-shadow .28s,background .28s}
.region-item:hover{transform:translateX(6px);box-shadow:0 8px 24px rgba(17,24,39,.08);background:#fff}
.region-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--gold),var(--gold2));box-shadow:0 0 12px rgba(198,161,74,.35);
  transition:transform .3s var(--ease-out-back)}
.region-item:hover .region-dot{transform:scale(1.3)}
.dot-expanded{background:linear-gradient(135deg,var(--blue),#8bbade);box-shadow:0 0 12px rgba(110,162,200,.35)}

/* ===== ABOUT ===== */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center}
.timeline{display:grid;gap:14px}
.timeline-item{background:white;border-radius:22px;padding:22px;
  box-shadow:0 12px 35px rgba(17,24,39,.07);border-left:5px solid var(--gold);
  transition:transform .35s var(--ease-out-back),box-shadow .35s,border-left-color .28s}
.timeline-item:hover{transform:translateX(8px);box-shadow:0 20px 50px rgba(17,24,39,.12);border-left-color:var(--gold2)}
.timeline-item strong{display:block;font-size:1.35rem;font-weight:900;margin-bottom:4px;transition:color .28s}
.timeline-item:hover strong{color:var(--gold)}
.timeline-item span{color:var(--muted);font-size:.9rem}

/* ===== CONTACT ===== */
.contact-band{background:linear-gradient(135deg,#111827,#202b3a);color:white;
  position:relative;overflow:hidden}
.contact-band::before{content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 15% 0%,rgba(198,161,74,.2),transparent 30%)}
.contact-band::after{content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 85% 100%,rgba(110,162,200,.12),transparent 28%);pointer-events:none}
.contact-band .container{position:relative;z-index:1}
.contact-band h2{color:#fff}
.contact-band p{color:#d0d5dd}
.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:36px;align-items:center}
.contact-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);
  border-radius:24px;padding:28px;display:grid;gap:14px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  transition:transform .4s var(--ease-out-expo),box-shadow .4s,border-color .3s}
.contact-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(0,0,0,.2);border-color:rgba(240,216,144,.25)}
.contact-link{font-weight:900;color:#fff;font-size:1.05rem;
  padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);display:block;
  transition:color .22s,padding-left .28s var(--ease-out-expo),border-color .22s}
.contact-link:last-child{border-bottom:none}
.contact-link:hover{color:var(--gold2);padding-left:10px;border-bottom-color:rgba(240,216,144,.2)}

/* ===== FOOTER ===== */
footer{text-align:center;padding:52px 20px;background:#0c1119;color:#94a3b8;position:relative;overflow:hidden}
footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(198,161,74,.3),transparent)}
footer img.footer-logo{display:block;width:120px;height:auto;margin:0 auto 18px;background:transparent;
  transition:transform .4s var(--ease-out-back),opacity .3s}
footer img.footer-logo:hover{transform:scale(1.08) rotate(3deg)}
footer p{margin:6px 0;font-size:.88rem}
.footer-contact a{color:#94a3b8;transition:color .2s;font-weight:700}
.footer-contact a:hover{color:var(--gold2)}

/* ===== SCROLL REVEAL ANIMATIONS ===== */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s var(--ease-out-expo),transform .8s var(--ease-out-expo);will-change:opacity,transform}
.reveal.visible{opacity:1;transform:none}
.reveal.from-left{transform:translateX(-45px)}
.reveal.from-right{transform:translateX(45px)}
.reveal.from-scale{transform:scale(.9)}
.reveal.from-left.visible,
.reveal.from-right.visible,
.reveal.from-scale.visible{transform:none}

.delay-1{transition-delay:.14s}
.delay-2{transition-delay:.28s}
.delay-3{transition-delay:.42s}
.delay-4{transition-delay:.56s}

/* Staggered card children */
.card-grid .service-card:nth-child(1){transition-delay:.05s}
.card-grid .service-card:nth-child(2){transition-delay:.12s}
.card-grid .service-card:nth-child(3){transition-delay:.19s}
.card-grid .service-card:nth-child(4){transition-delay:.26s}

/* ===== KEYFRAME ANIMATIONS ===== */
@keyframes float{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-26px) translateX(14px)}}
@keyframes pulseBg{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(1.025)}}
@keyframes sweep{0%{left:-80%}70%{left:120%}100%{left:120%}}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(198,161,74,.4)}70%{box-shadow:0 0 0 8px rgba(198,161,74,0)}}

@keyframes glassFloat1{
  0%,100%{transform:translateY(0) translateX(0) rotate(0deg)}
  25%{transform:translateY(-18px) translateX(12px) rotate(1deg)}
  50%{transform:translateY(-8px) translateX(-8px) rotate(-0.5deg)}
  75%{transform:translateY(-22px) translateX(6px) rotate(0.8deg)}
}
@keyframes glassFloat2{
  0%,100%{transform:translateY(0) translateX(0) rotate(0deg)}
  33%{transform:translateY(-14px) translateX(-10px) rotate(-1deg)}
  66%{transform:translateY(-20px) translateX(8px) rotate(0.5deg)}
}
@keyframes glassFloat3{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-16px) rotate(1.5deg)}
}

@keyframes routeSlide{
  0%{transform:translateX(-100%);opacity:0}
  10%{opacity:.2}
  90%{opacity:.2}
  100%{transform:translateX(calc(100vw + 100%));opacity:0}
}

@keyframes hubPulse{
  0%,100%{opacity:.5;transform:scale(1)}
  50%{opacity:1;transform:scale(1.8);box-shadow:0 0 24px rgba(198,161,74,.6),0 0 48px rgba(198,161,74,.3)}
}

@keyframes ctaPulse{
  0%{box-shadow:0 18px 50px rgba(198,161,74,.3)}
  50%{box-shadow:0 18px 50px rgba(198,161,74,.5),0 0 0 6px rgba(198,161,74,.1)}
  100%{box-shadow:0 18px 50px rgba(198,161,74,.3)}
}

.hero .primary{animation:ctaPulse 3s ease-in-out infinite}
.hero .primary:hover{animation:none}

/* ===== RESPONSIVE ===== */
@media(max-width:1080px){
  .brand-copy small{display:none}
  .nav-links{gap:16px;font-size:.76rem}
  .four{grid-template-columns:1fr 1fr}
}
@media(max-width:980px){
  .nav-toggle{display:block}
  .nav-links{display:none;position:absolute;left:3vw;right:3vw;top:96px;
    background:#111827;border:1px solid rgba(255,255,255,.12);border-radius:22px;
    padding:20px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}
  .nav-links.open{display:flex;animation:fadeUp .3s var(--ease-out-expo)}
  .hero-inner,.split,.reverse,.about-grid,.contact-grid{grid-template-columns:1fr}
  .region-grid{grid-template-columns:1fr}
  .hero{min-height:auto;padding:80px 0}
  .hero-stats{margin-top:0}
  .brand-copy small{display:none}
  .glass-float{display:none}
  .deco-route{display:none}
}
@media(max-width:640px){
  .section-pad{padding:72px 0}
  .four,.form-grid,.driver-types{grid-template-columns:1fr}
  .brand-logo{height:34px}
  .brand::after{width:48px;height:48px}
  .brand-copy strong{font-size:.95rem}
  .hero h1{font-size:2.8rem}
  .button-row{flex-direction:column}
  .button{width:100%}
  .stat-row{grid-template-columns:1fr 1fr}
  .stat-row .stat-item:last-child{grid-column:span 2}
  .hub-dot{display:none}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .reveal{transition-duration:.01s!important}
  .glass-float,.deco-route,.hub-dot,.orb,.hero-sweep{animation:none!important}
  .hero-canvas{display:none}
  .service-card,.timeline-item,.check-list li,.contact-card,.form-card,.stats-panel,.driver-type,.region-block,.region-item{transition-duration:.01s!important}
}

/* ===== FIX: hero button clickability =====
   Decorative hero layers (grid + ambient glow pseudo-elements) were rendering
   above the hero content and intercepting clicks, killing the two CTA buttons.
   Make decorative layers click-through and lift the real content above them. */
.hero::before,.hero::after{pointer-events:none}
.hero-bg,.hero-particles{pointer-events:none}
.hero-content{position:relative;z-index:5}
.hero-cta{position:relative;z-index:5}
