/* ===== Zeeshan Group — shared polish layer (fonts, motion, details) ===== */
body{font-family:'Inter','Segoe UI',Tahoma,Arial,sans-serif}
h1,h2,h3,h4,.btn,nav ul,.nav-cta,.section-title,.region-opt b,.ind-opt b,.numbers b,.stat b,.brand .division b,.contact-card b,.route-card h3,.truck h3,.cat h3,.industry h3,.hl b,.feature h3,.why-item b,.cta-box h2,.coverage h2,.hero .tagline,.kicker,.emirate,.buyer,.strip,.cargo-item{font-family:'Poppins','Segoe UI',Tahoma,Arial,sans-serif}
.section-title{letter-spacing:0}
.hero h1{letter-spacing:-.5px}

/* --- kicker labels --- */
.kicker{display:block;text-align:center;color:var(--gold);font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.on-dark .kicker{color:var(--gold-2)}
.about-text .kicker{text-align:left}

/* --- entrance + scroll reveal --- */
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes gateShift{0%{background-position:0% 0%,100% 100%,0% 0%}50%{background-position:100% 100%,0% 0%,100% 100%}100%{background-position:0% 0%,100% 100%,0% 0%}}
.region-gate{background-size:200% 200%,200% 200%,200% 200%;animation:gateShift 16s ease-in-out infinite}
.region-box{animation:rise .8s ease both}
.gate-step{animation:rise .6s ease both}
.hero .eyebrow,.hero h1{animation:rise .8s ease both}
.hero .arabic,.hero .tagline{animation:rise .8s .1s ease both}
.hero p.lead{animation:rise .8s .2s ease both}
.hero-badges{animation:rise .8s .3s ease both}
.hero-cta{animation:rise .8s .4s ease both}
.hero-card{animation:rise .9s .35s ease both}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.region-gate{animation:none}*{animation-duration:0s!important}}

/* --- header behaviour --- */
header{transition:box-shadow .3s}
header.scrolled{box-shadow:0 6px 24px rgba(11,31,75,.16)}
header .brand img{transition:height .3s}
header.scrolled .brand img{height:46px}
nav ul a{position:relative;padding-bottom:4px}
nav ul a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--gold-2));transform:scaleX(0);transform-origin:left;transition:transform .25s}
nav ul a:hover::after,nav ul a.active::after{transform:scaleX(1)}
nav ul a.active{color:var(--gold)}
@media(max-width:900px){nav ul a::after{display:none}}

/* --- card accents --- */
.feature,.truck,.cat,.hl,.industry,.route-card,.service-panel,.buyer,.step,.faq details{position:relative;overflow:hidden}
.feature::before,.truck::before,.cat::before,.hl::before,.industry::before,.route-card::before,.service-panel::before,.step::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;z-index:3;background:linear-gradient(90deg,var(--gold),var(--gold-2));transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.feature:hover::before,.truck:hover::before,.cat:hover::before,.hl:hover::before,.industry:hover::before,.route-card:hover::before,.service-panel:hover::before,.step:hover::before{transform:scaleX(1)}
.feature .icon,.industry .icon{transition:transform .3s}
.feature:hover .icon,.industry:hover .icon{transform:scale(1.08) rotate(-4deg)}
.btn{position:relative;overflow:hidden}
.btn::after{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .5s}
.btn:hover::after{left:125%}
.contact-card{position:relative;overflow:hidden}
.contact-card::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.08);right:-70px;top:-70px;transition:transform .4s}
.contact-card:hover::after{transform:scale(1.4)}
.emirate{transition:.25s}
.emirate:hover{background:rgba(212,164,55,.22);border-color:var(--gold);transform:translateY(-3px)}
.route-card .flag{transition:transform .3s}
.route-card:hover .flag{transform:scale(1.08)}
.wa-float{animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 8px 24px rgba(37,211,102,.45)}50%{box-shadow:0 8px 24px rgba(37,211,102,.45),0 0 0 12px rgba(37,211,102,.12)}}

/* --- process strip --- */
.process{background:#fff}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;counter-reset:step}
.step{background:var(--grey);border:1px solid #e6eaf4;border-radius:var(--radius);padding:28px 22px 24px;transition:.25s}
.step:hover{transform:translateY(-6px);box-shadow:var(--shadow);background:#fff}
.step .num{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--navy),var(--navy-2));color:var(--gold-2);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:14px;font-family:'Poppins',sans-serif}
.step h3{color:var(--navy);font-size:16px;margin-bottom:6px}
.step p{color:var(--muted);font-size:14px}

/* --- FAQ --- */
.faq{background:var(--grey)}
.faq-list{max-width:820px;margin:0 auto}
.faq details{background:#fff;border:1px solid #e6eaf4;border-radius:12px;margin-bottom:12px;box-shadow:0 3px 10px rgba(11,31,75,.05)}
.faq summary{list-style:none;cursor:pointer;padding:18px 54px 18px 22px;font-weight:700;color:var(--navy);font-family:'Poppins',sans-serif;font-size:15.5px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:var(--navy-3);display:flex;align-items:center;justify-content:center;font-weight:800;transition:transform .3s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details[open] summary{border-bottom:1px solid #eef1f8}
.faq .answer{padding:16px 22px 20px;color:var(--muted);font-size:14.5px}

/* --- quote form --- */
.quote-form{background:#fff;border:1px solid #e6eaf4;border-radius:var(--radius);box-shadow:var(--shadow);padding:34px;margin-bottom:26px;display:grid;grid-template-columns:1.1fr 1.4fr;gap:34px;align-items:start}
.quote-intro h3{color:var(--navy);font-size:22px;margin-bottom:10px}
.quote-intro p{color:var(--muted);font-size:14.5px;margin-bottom:16px}
.quote-intro ul li{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:600;color:var(--navy);padding:5px 0}
.quote-intro ul li::before{content:"✔";flex:0 0 22px;height:22px;background:var(--gold);color:var(--navy-3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px}
.qf-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.qf-grid .full{grid-column:1/-1}
.qf-grid label{display:block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--navy);margin-bottom:6px}
.qf-grid input,.qf-grid select,.qf-grid textarea{width:100%;border:1px solid #d9deea;border-radius:9px;padding:12px 14px;font:inherit;font-size:14.5px;color:var(--text);background:var(--grey);transition:.2s}
.qf-grid input:focus,.qf-grid select:focus,.qf-grid textarea:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px rgba(212,164,55,.18)}
.qf-grid textarea{min-height:90px;resize:vertical}
.qf-actions{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}
.qf-actions .btn{border:none;cursor:pointer}
.qf-note{grid-column:1/-1;font-size:12px;color:var(--muted)}
@media(max-width:900px){.quote-form{grid-template-columns:1fr}}
@media(max-width:560px){.qf-grid{grid-template-columns:1fr}.quote-form{padding:24px 18px}}

/* --- back to top --- */
.to-top{position:fixed;left:26px;bottom:26px;z-index:200;width:46px;height:46px;border-radius:50%;background:var(--navy);border:2px solid var(--gold);color:var(--gold-2);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;box-shadow:0 8px 24px rgba(11,31,75,.35);opacity:0;visibility:hidden;transform:translateY(12px);transition:.3s;cursor:pointer}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover{background:var(--navy-2);transform:translateY(-3px)}
@media(max-width:560px){.to-top{left:14px;bottom:16px;width:40px;height:40px}.wa-float{right:14px;bottom:16px}}

/* --- footer polish --- */
footer{border-top:4px solid var(--gold)}
.footer-top h4{position:relative;padding-bottom:8px}
.footer-top h4::after{content:"";position:absolute;left:0;bottom:0;width:34px;height:2px;background:var(--gold)}
footer ul a{transition:.2s;display:inline-block}
footer ul a:hover{transform:translateX(4px)}

/* --- 3D layer: tilt, depth, parallax, float --- */
.tilt{transform-style:preserve-3d;will-change:transform}
.tilt .icon,.tilt .num,.tilt .cap,.tilt .region-flag,.tilt .ind-circle{transform:translateZ(30px)}
.tilt h3,.tilt b{transform:translateZ(18px)}
.tilt .photo,.tilt img{backface-visibility:hidden}
.hero-card{transform-style:preserve-3d;animation:rise .9s .35s ease both,floaty 6s 1.3s ease-in-out infinite}
.hero-card h3{transform:translateZ(30px)}
.hero-card .route-flow{transform:translateZ(22px)}
.hero-card .hero-stats{transform:translateZ(34px)}
.hero-card .stat{box-shadow:0 10px 24px rgba(0,0,0,.25)}
.route-pill{box-shadow:0 8px 18px rgba(0,0,0,.25)}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.region-opt .region-flag,.ind-opt .ind-circle{animation:floaty 4.5s ease-in-out infinite}
.ind-opt:nth-child(2) .ind-circle{animation-delay:.6s}
.ind-opt:nth-child(3) .ind-circle{animation-delay:1.2s}
.feature .icon,.industry .icon,.step .num,.hl .icon{box-shadow:0 12px 24px rgba(11,31,75,.28),inset 0 -3px 0 rgba(0,0,0,.18)}
.industry .icon{box-shadow:0 12px 24px rgba(0,0,0,.35),inset 0 -3px 0 rgba(0,0,0,.18)}
.truck,.cat,.feature,.step,.hl,.contact-card{box-shadow:0 4px 14px rgba(11,31,75,.06),0 1px 0 #fff inset}
.truck:hover,.cat:hover,.feature:hover,.step:hover{box-shadow:0 28px 50px -12px rgba(11,31,75,.28)}
.contact-card:hover{box-shadow:0 30px 50px -14px rgba(11,31,75,.4)}
.gold-line{box-shadow:0 3px 8px rgba(212,164,55,.45)}
.hero{background-attachment:scroll;transition:none}
@media(prefers-reduced-motion:reduce){.hero-card,.region-opt .region-flag,.ind-opt .ind-circle{animation:none}}

/* ===== Design layer 2: truck, orbs, ticker, route line, glass header, specs, gate photo, map ===== */
.hero{padding-bottom:150px}
.hero-truck{position:absolute;right:max(-30px,calc(50% - 780px));bottom:8px;width:min(44vw,600px);height:auto;z-index:1;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55));animation:rise 1s .5s ease both,truckFloat 7s 1.6s ease-in-out infinite;pointer-events:none}
@keyframes truckFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hero .container{z-index:2}
.hero-card{margin-bottom:190px}
@media(max-width:1250px){.hero-truck{width:38vw}.hero-card{margin-bottom:150px}}
@media(max-width:900px){
  .hero{padding-bottom:110px}
  .hero-card{margin-bottom:0}
  .hero-truck{position:static;display:block;width:min(92%,460px);margin:26px auto -40px;z-index:2;animation:truckFloat 7s ease-in-out infinite}
}
.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;pointer-events:none;z-index:0;animation:drift 18s ease-in-out infinite}
.orb.o1{width:420px;height:420px;background:radial-gradient(circle,rgba(212,164,55,.55),transparent 70%);left:-120px;top:-100px}
.orb.o2{width:520px;height:520px;background:radial-gradient(circle,rgba(56,104,224,.55),transparent 70%);right:-160px;top:20%;animation-delay:-6s}
.orb.o3{width:360px;height:360px;background:radial-gradient(circle,rgba(200,16,46,.35),transparent 70%);left:35%;bottom:-140px;animation-delay:-12s}
@keyframes drift{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(40px,-30px) scale(1.08)}66%{transform:translate(-30px,30px) scale(.95)}}
.hero h1 .gold,.section-title span,.coverage h2 span,.cta-box h2 span{background:linear-gradient(90deg,#d4a437 0%,#f7d97a 45%,#d4a437 100%);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% auto;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:200% center}}
header{background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
header.scrolled{background:rgba(255,255,255,.88)}
.topbar{border-bottom:1px solid rgba(212,164,55,.25)}

/* ticker */
.strip{overflow:hidden;padding:12px 0}
.strip .marquee{overflow:hidden;white-space:nowrap;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.strip .track{display:inline-flex;gap:0;animation:ticker 38s linear infinite;will-change:transform}
.strip .track span{display:inline-flex;align-items:center;gap:8px;padding:0 28px;font-size:14px;letter-spacing:1px;font-weight:700;border-right:1px solid rgba(255,255,255,.25)}
.strip:hover .track{animation-play-state:paused}
@keyframes ticker{to{transform:translateX(-50%)}}

/* route line */
.route-line{position:relative;height:190px;margin:0 auto 34px;max-width:1000px}
.route-line svg{width:100%;height:150px;display:block;overflow:visible}
.route-line .dash{animation:dashmove 1.4s linear infinite}
@keyframes dashmove{to{stroke-dashoffset:-22}}
.route-line .nodes{position:absolute;inset:0}
.route-line .node{position:absolute;left:var(--x);top:var(--y,60%);transform:translate(-50%,-50%);text-align:center;color:#fff;font-size:12px;letter-spacing:1px;font-weight:700;text-transform:uppercase;font-family:'Poppins',sans-serif}
.route-line .node i{display:block;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--gold);margin:0 auto 6px;box-shadow:0 0 0 6px rgba(212,164,55,.18),0 0 18px rgba(240,199,94,.7)}
.route-line .node.origin i{width:20px;height:20px;background:var(--gold-2);border-color:#fff;animation:pulseDot 2s ease-in-out infinite}
.route-line .node small{display:block;font-size:10px;color:var(--gold-2);letter-spacing:2px}
@keyframes pulseDot{0%,100%{box-shadow:0 0 0 6px rgba(212,164,55,.18)}50%{box-shadow:0 0 0 14px rgba(212,164,55,.05)}}
@media(max-width:700px){.route-line{display:none}}

/* fleet spec chips */
.truck .specs{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 4px}
.truck .specs span{font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--navy);background:var(--grey);border:1px solid #e6eaf4;border-radius:50px;padding:3px 10px}

/* gate photo + depth */
.region-gate{overflow:hidden}
.gate-photo{position:absolute;inset:-20px;background:url("img/1512453979798-5ea266f8880c-1600.jpg") center/cover no-repeat;opacity:.22;filter:blur(3px) saturate(.8);z-index:0;animation:kenburns 30s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.12)}}
.region-gate .orb{opacity:.7}
.region-box{position:relative;z-index:1}
.region-logo{box-shadow:0 20px 50px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.25)}

/* map card */
.map-card{margin-top:26px;display:grid;grid-template-columns:1fr 1.4fr;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid #e6eaf4;background:#fff}
.map-info{padding:34px}
.map-info .kicker{text-align:left}
.map-info h3{color:var(--navy);font-size:22px;margin-bottom:10px}
.map-info p{color:var(--muted);font-size:14.5px;margin-bottom:14px}
.map-info ul li{padding:5px 0;font-size:14px;font-weight:600;color:var(--navy)}
.map-info .btn{margin-top:14px}
.map-frame{min-height:340px;background:var(--grey);position:relative}
.map-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.9)}
@media(max-width:900px){.map-card{grid-template-columns:1fr}.map-frame{min-height:280px}}

/* --- layout fixes: truck placement, route icon size --- */
.hero-truck{width:min(40vw,540px);right:max(-10px,calc(50% - 790px));bottom:14px}
.hero-card{margin-bottom:170px}
@media(max-width:1250px){.hero-truck{width:36vw}}
@media(max-width:900px){
  .hero{display:flex;flex-direction:column}
  .hero .container{order:1}
  .hero-truck{order:2;position:static;width:min(88%,440px);margin:34px auto -46px;animation:truckFloat 7s ease-in-out infinite}
}
.route-line .truck-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}
.route-line .truck-icon > g{transform:translate(-26px,-18px) scale(1.7)}

/* ===== Design layer 3: preloader, progress, particles, typewriter, magnetic, glow, tooltip ===== */
.preloader{position:fixed;inset:0;z-index:3000;background:radial-gradient(900px 500px at 50% 40%,rgba(18,42,99,.9),rgba(10,24,56,1));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transition:opacity .6s ease,visibility .6s}
.preloader.done{opacity:0;visibility:hidden;pointer-events:none}
.preloader .pl-logo{background:#fff;border-radius:14px;padding:12px 22px;box-shadow:0 20px 50px rgba(0,0,0,.45);animation:rise .7s ease both}
.preloader .pl-logo img{height:64px;width:auto;display:block}
.preloader .pl-road{position:relative;width:min(520px,80vw);height:150px;overflow:hidden}
.preloader .pl-road::after{content:"";position:absolute;left:0;right:0;bottom:22px;height:3px;background:repeating-linear-gradient(90deg,var(--gold-2) 0 26px,transparent 26px 46px);opacity:.8;animation:roadmove .5s linear infinite}
@keyframes roadmove{to{background-position:-46px 0}}
.preloader .pl-truck{position:absolute;bottom:26px;left:50%;width:180px;height:auto;transform:translateX(-50%);filter:drop-shadow(0 16px 20px rgba(0,0,0,.5));animation:drivein 1.1s cubic-bezier(.2,.8,.2,1) both}
@keyframes drivein{from{transform:translateX(-170%)}to{transform:translateX(-50%)}}
.preloader .pl-bar{width:min(320px,60vw);height:4px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden}
.preloader .pl-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--gold-2));animation:fill 1.3s ease-out forwards}
@keyframes fill{to{width:100%}}
.preloader small{color:#a8b5d6;font-size:12px;letter-spacing:3px;text-transform:uppercase}
html.pl-skip .preloader{display:none}

.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:1500;background:linear-gradient(90deg,var(--gold),var(--gold-2),#fff);box-shadow:0 0 10px rgba(240,199,94,.8);pointer-events:none}

.hero-particles{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.7}

.typeline{display:flex;align-items:center;gap:10px;margin:6px 0 4px;font-size:17px;color:#d6dff3;animation:rise .8s .15s ease both}
.typeline .type{color:var(--gold-2);font-weight:700;font-family:'Poppins',sans-serif;min-width:8ch;border-right:2px solid var(--gold-2);padding-right:4px;animation:caret .8s steps(1) infinite}
@keyframes caret{50%{border-color:transparent}}

.magnetic{transition:transform .25s ease}

@property --ga{syntax:'<angle>';inherits:false;initial-value:0deg}
.hero-card,.quote-form,.cta-box,.map-card{position:relative}
.hero-card::before,.quote-form::before,.cta-box::before,.map-card::before{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;background:conic-gradient(from var(--ga),transparent 0 60%,rgba(240,199,94,.9) 78%,transparent 90%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spinborder 6s linear infinite;pointer-events:none;z-index:0}
@keyframes spinborder{to{--ga:360deg}}
.hero-card::before{border-radius:18px}
.hero-card>*{position:relative;z-index:1}
.quote-form>*,.cta-box>*,.map-card>*{position:relative;z-index:1}

.cursor-glow{position:fixed;left:0;top:0;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:5;background:radial-gradient(circle,rgba(240,199,94,.16),rgba(240,199,94,0) 60%);transform:translate(-50%,-50%);mix-blend-mode:screen;opacity:0;transition:opacity .4s}
.cursor-glow.on{opacity:1}

.wa-float{overflow:visible}
.wa-float::before{content:"Chat with us on WhatsApp";position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%) translateX(8px);background:#fff;color:var(--navy);font:700 13px 'Poppins',sans-serif;padding:8px 14px;border-radius:10px;white-space:nowrap;box-shadow:0 10px 24px rgba(11,31,75,.25);opacity:0;transition:.3s;pointer-events:none}
.wa-float::after{content:"";position:absolute;right:calc(100% + 6px);top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:#fff;opacity:0;transition:.3s}
.wa-float:hover::before,.wa-float.tip::before,.wa-float:hover::after,.wa-float.tip::after{opacity:1;transform:translateY(-50%) translateX(0)}
@media(max-width:560px){.wa-float::before,.wa-float::after{display:none}}

.cargo-photos figcaption{transition:padding .3s,background .3s}
.cargo-photos figure:hover figcaption{padding-bottom:22px;background:linear-gradient(transparent,rgba(10,24,56,.96))}
.truck .photo::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s}
.truck:hover .photo::after{transform:translateX(120%)}

/* --- look polish: spacing, contrast, refined details --- */
.section-sub{font-size:16px;line-height:1.7}
.feature p,.truck p,.cat p,.industry p,.step p{line-height:1.65}
.topbar .tag{color:var(--gold-2)}
.topbar{font-size:12.5px}
.hero p.lead{font-size:17.5px;line-height:1.7}
.badge{backdrop-filter:blur(6px);background:rgba(255,255,255,.1)}
.strip .track span{font-size:13.5px}
.route-card{background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03))}
.industry{background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03))}
.feature,.step{background:linear-gradient(180deg,#fff,#fbfcfe)}
.feature .icon{background:linear-gradient(135deg,var(--navy-2),var(--navy-3))}
.footer-bottom{background:rgba(0,0,0,.25)}
.contact-card .icon{filter:drop-shadow(0 6px 10px rgba(0,0,0,.25))}
.numbers b{text-shadow:0 6px 24px rgba(240,199,94,.35)}
.gold-line{height:3px;width:64px}
@media(prefers-reduced-motion:reduce){.preloader{display:none}.hero-card::before,.quote-form::before,.cta-box::before,.map-card::before{animation:none}}

/* ===== layer 4: SVG icon set ===== */
.ico{width:1.15em;height:1.15em;display:inline-block;vertical-align:-.2em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.feature .icon,.step .num,.hl .icon,.port .icon{color:var(--gold-2)}
.feature .icon .ico,.hl .icon .ico{width:28px;height:28px;stroke-width:1.8}
.industry .icon{color:var(--navy-3)}
.industry .icon .ico{width:30px;height:30px;stroke-width:2}
.cargo-item .icon{color:var(--gold);display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#fff;border:1px solid #e6eaf4;flex:0 0 44px}
.cargo-item .icon .ico{width:22px;height:22px}
.cargo-item:hover .icon{background:var(--navy);color:var(--gold-2);border-color:var(--navy)}
.contact-card .icon{color:#fff}
.contact-card .icon .ico{width:44px;height:44px;stroke-width:1.6}
.port .icon .ico{width:32px;height:32px;stroke-width:1.8}
.badge .ico,.strip .ico,.topbar .ico,.footer-top .ico,.map-info .ico{width:1.05em;height:1.05em;margin-right:2px}
.badge{color:var(--gold-2)}
.strip .track span .ico{color:#fff}
.btn .ico{width:1.1em;height:1.1em}
.wa-float{color:#fff}
.wa-float .ico{width:28px;height:28px;stroke-width:2.2}
.quote-intro ul .ico{display:none}
.hero-badges .badge{display:inline-flex;align-items:center;gap:6px}
.strip .track span{gap:8px}
footer ul li{display:flex;align-items:center;gap:8px}
.map-info ul li{display:flex;align-items:center;gap:8px}
.topbar .ico{vertical-align:-.15em}

/* ===== layer 5: wow — crossfade hero, split headline, testimonials, gallery lightbox, watermark footer ===== */
.hero{background-image:none!important}
.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-slides .slide{position:absolute;inset:0;background-size:cover;background-position:center 40%;opacity:0;transform:scale(1.08);transition:opacity 1.6s ease;animation:kb 14s ease-in-out infinite}
.hero-slides .slide.on{opacity:1}
@keyframes kb{0%{transform:scale(1.08) translate(0,0)}100%{transform:scale(1.18) translate(-2%,-2%)}}
.hero::before{z-index:0}
.hero-slides + .orb,.hero .orb{z-index:0}
.hero-particles{z-index:1}
.hero .container{z-index:3}.hero-truck{z-index:2}
.hero-dots{position:absolute;left:50%;bottom:92px;transform:translateX(-50%);display:flex;gap:8px;z-index:3}
.hero-dots i{width:26px;height:4px;border-radius:4px;background:rgba(255,255,255,.3);cursor:pointer;transition:.3s}
.hero-dots i.on{background:var(--gold-2);width:44px}
@media(max-width:900px){.hero-dots{display:none}}

.hero h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom}
.hero h1 .w>span{display:inline-block;transform:translateY(110%);animation:wordUp .8s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes wordUp{to{transform:none}}

/* trust strip */
.trust{background:#fff;padding:34px 0;border-top:1px solid #eef1f8;border-bottom:1px solid #eef1f8}
.trust .lbl{text-align:center;color:var(--muted);font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:700;margin-bottom:18px}
.trust .logos{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.trust .logos span{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid #e6eaf4;border-radius:12px;font-weight:700;color:var(--navy);font-family:'Poppins',sans-serif;font-size:14px;letter-spacing:.5px;background:linear-gradient(180deg,#fff,#f7f9fd);transition:.25s}
.trust .logos span:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:var(--shadow)}
.trust .logos .ico{color:var(--gold)}

/* testimonials */
.testi{background:var(--grey);position:relative;overflow:hidden}
.testi::before{content:"\201C";position:absolute;left:50%;top:40px;transform:translateX(-50%);font:900 300px/1 Georgia,serif;color:rgba(212,164,55,.12);pointer-events:none}
.testi-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 4px 24px;scrollbar-width:none}
.testi-track::-webkit-scrollbar{display:none}
.testi-card{flex:0 0 min(420px,86%);scroll-snap-align:center;background:#fff;border-radius:18px;padding:32px;border:1px solid #e6eaf4;box-shadow:var(--shadow);position:relative}
.testi-card .stars{color:var(--gold);letter-spacing:2px;font-size:15px;margin-bottom:12px}
.testi-card p{color:var(--text);font-size:15.5px;line-height:1.75;margin-bottom:20px}
.testi-card .who{display:flex;align-items:center;gap:12px}
.testi-card .who i{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--navy-2));color:var(--gold-2);display:flex;align-items:center;justify-content:center;font:800 16px 'Poppins',sans-serif;font-style:normal}
.testi-card .who b{display:block;color:var(--navy);font-size:15px}
.testi-card .who small{color:var(--muted);font-size:12.5px}
.testi-nav{display:flex;justify-content:center;gap:10px;margin-top:6px}
.testi-nav button{width:44px;height:44px;border-radius:50%;border:1px solid #d9deea;background:#fff;color:var(--navy);font-size:18px;cursor:pointer;transition:.2s}
.testi-nav button:hover{background:var(--navy);color:var(--gold-2);border-color:var(--navy)}

/* gallery + lightbox */
.gallery{background:#fff}
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px}
.gal-grid figure{position:relative;border-radius:14px;overflow:hidden;cursor:zoom-in;box-shadow:var(--shadow)}
.gal-grid figure:nth-child(1){grid-column:span 2;grid-row:span 2}
.gal-grid figure:nth-child(4){grid-row:span 2}
.gal-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s}
.gal-grid figure:hover img{transform:scale(1.1)}
.gal-grid figcaption{position:absolute;inset:auto 0 0 0;padding:40px 16px 14px;background:linear-gradient(transparent,rgba(10,24,56,.9));color:#fff;font:700 14px 'Poppins',sans-serif;transform:translateY(8px);opacity:0;transition:.35s}
.gal-grid figure:hover figcaption{transform:none;opacity:1}
.gal-grid figure::after{content:"+";position:absolute;right:14px;top:14px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.9);color:var(--navy);font:800 22px/34px 'Poppins',sans-serif;text-align:center;opacity:0;transform:scale(.6);transition:.3s}
.gal-grid figure:hover::after{opacity:1;transform:none}
@media(max-width:900px){.gal-grid{grid-template-columns:1fr 1fr;grid-auto-rows:170px}.gal-grid figure:nth-child(1){grid-column:span 2;grid-row:span 1}.gal-grid figure:nth-child(4){grid-row:span 1}}
.lightbox{position:fixed;inset:0;z-index:2500;background:rgba(5,12,30,.92);display:flex;align-items:center;justify-content:center;padding:30px;opacity:0;visibility:hidden;transition:.35s;backdrop-filter:blur(6px)}
.lightbox.on{opacity:1;visibility:visible}
.lightbox img{max-width:min(1100px,100%);max-height:85vh;border-radius:14px;box-shadow:0 40px 80px rgba(0,0,0,.6);transform:scale(.92);transition:.35s}
.lightbox.on img{transform:none}
.lightbox .cap{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);color:#fff;font:700 15px 'Poppins',sans-serif;background:rgba(255,255,255,.1);padding:8px 18px;border-radius:50px}
.lightbox .x{position:absolute;top:22px;right:26px;width:46px;height:46px;border-radius:50%;border:none;background:#fff;color:var(--navy);font-size:22px;cursor:pointer}

/* watermark footer */
footer{position:relative;overflow:hidden}
footer .wm{position:absolute;right:-40px;bottom:-30px;font:900 220px/1 'Poppins',sans-serif;color:rgba(255,255,255,.035);letter-spacing:-6px;pointer-events:none;user-select:none;white-space:nowrap}
footer .container{position:relative;z-index:1}

/* --- fix: keep navy overlay above crossfade slides for text contrast --- */
.hero-slides{z-index:0}
.hero::before{z-index:1;background:linear-gradient(100deg,rgba(10,24,56,.96) 0%,rgba(11,31,75,.9) 45%,rgba(11,31,75,.55) 100%)!important}
.hero .orb{z-index:1}
.hero-particles{z-index:2}
.hero-truck{z-index:3}
.hero .container{z-index:4}
.hero-dots{z-index:4}
.hero::after{z-index:5}
.hero-slides .slide{filter:saturate(.85)}

/* --- fix: descender clipping in split words, highlights above hero wedge --- */
.hero h1 .w{padding-bottom:.18em;margin-bottom:-.18em}
.highlights{z-index:6}

/* --- social + location --- */
.topbar .social{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:600;font-size:12px;background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af);padding:3px 12px;border-radius:50px;transition:.25s}
.topbar .social:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(221,42,123,.4)}
.topbar .social .ico{width:14px;height:14px;margin:0}
.card-ig{background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af)}
.contact-card .ico.ig{width:44px;height:44px;stroke-width:1.6;color:#fff}
footer .follow{display:flex;gap:10px;margin-top:14px}
footer .follow a{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff;transition:.25s}
footer .follow a:hover{background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af);border-color:transparent;transform:translateY(-3px)}
footer .follow a.wa:hover{background:#25d366}
footer .follow .ico{width:20px;height:20px;margin:0}
.map-info .addr{display:block;font-weight:600;color:var(--navy);margin-top:2px}
.contact-card b{font-size:18px;word-break:break-word}
.card-mail b,.card-ig b{font-size:16.5px}

/* ===== premium contact panel ===== */
.contact-panel{display:grid;grid-template-columns:1.05fr 1fr;border-radius:24px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(11,31,75,.5),0 0 0 1px rgba(212,164,55,.25);background:linear-gradient(145deg,#0a1838 0%,#0b1f4b 55%,#122a63 100%);color:#fff;position:relative}
.contact-panel::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(212,164,55,.28),transparent 65%);left:-180px;top:-200px;pointer-events:none}
.cp-info{padding:48px 46px;position:relative;z-index:1}
.cp-info .kicker{text-align:left;color:var(--gold-2)}
.cp-info h3{font-size:clamp(26px,3vw,34px);line-height:1.15;margin-bottom:10px}
.cp-info>p{color:#b9c5e3;font-size:15px;margin-bottom:26px;max-width:440px}
.cp-list{display:grid;gap:10px;margin-bottom:26px}
.cp-list a{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);transition:.25s;position:relative;overflow:hidden}
.cp-list a::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--gold),var(--gold-2));transform:scaleY(0);transition:transform .25s}
.cp-list a:hover{background:rgba(255,255,255,.09);border-color:rgba(212,164,55,.45);transform:translateX(4px)}
.cp-list a:hover::before{transform:none}
.cp-list .tile{flex:0 0 46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:var(--navy-3);box-shadow:0 8px 18px rgba(0,0,0,.3)}
.cp-list .tile .ico{width:22px;height:22px;stroke-width:2}
.cp-list .tile.wa{background:linear-gradient(135deg,#1faf53,#25d366);color:#fff}
.cp-list .tile.ig{background:linear-gradient(135deg,#f58529,#dd2a7b 55%,#8134af);color:#fff}
.cp-list small{display:block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#9fb0d8;font-weight:700}
.cp-list b{display:block;font-size:16.5px;color:#fff;font-family:'Poppins',sans-serif;word-break:break-all}
.cp-list i{margin-left:auto;color:var(--gold-2);font-style:normal;font-size:22px;font-weight:700;opacity:.6;transition:.25s}
.cp-list a:hover i{opacity:1;transform:translateX(3px)}
.cp-addr{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;padding:18px 0 22px;border-top:1px solid rgba(255,255,255,.1);margin-bottom:6px}
.cp-addr div:first-child{grid-column:1/-1}
.cp-addr small{display:block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold-2);font-weight:700;margin-bottom:2px}
.cp-addr b{font-size:14px;font-weight:600;color:#e6ecfa}
.cp-map{position:relative;min-height:520px;background:#0a1838}
.cp-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.85) contrast(1.02)}
.cp-map::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 40px 0 60px -30px rgba(10,24,56,.9)}
.cp-badge{position:absolute;left:22px;bottom:22px;z-index:2;background:rgba(10,24,56,.92);backdrop-filter:blur(8px);color:#fff;font:700 13px 'Poppins',sans-serif;padding:10px 16px;border-radius:50px;border:1px solid rgba(212,164,55,.5);display:flex;align-items:center;gap:8px;box-shadow:0 10px 24px rgba(0,0,0,.35)}
.cp-badge .dot{width:10px;height:10px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 4px rgba(240,199,94,.25);animation:pulseDot 2s infinite}
@media(max-width:900px){.contact-panel{grid-template-columns:1fr}.cp-map{min-height:320px}.cp-info{padding:32px 24px}.cp-addr{grid-template-columns:1fr}}
