
:root{
  --blue:#0099df;
  --blue-deep:#006fc9;
  --green:#00a651;
  --green-deep:#007a3d;
  --lime:#91cf27;
  --navy:#061833;
  --ink:#0a1930;
  --slate:#5b6b7f;
  --ice:#eef8ff;
  --mint:#effbf3;
  --line:#dce8f3;
  --white:#fff;
  --shadow:0 24px 70px rgba(6,24,51,.12);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55;overflow-x:hidden}
h1, h2, h3, h4, .stat-num, .proof strong, .quick-track-head b {
  font-family: "Outfit", "Inter", Arial, sans-serif !important;
  letter-spacing: -0.02em;
}
a{text-decoration:none;color:inherit} img{display:block;max-width:100%}
.container{width:min(1180px,92vw);margin-inline:auto}
.brand-line{height:5px;background:linear-gradient(90deg,var(--blue),var(--green),var(--lime));}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,153,223,.12)}
.navbar{height:86px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.logo-link{display:flex;align-items:center;gap:12px;min-width:190px}
.logo-link img{width:188px;height:auto;object-fit:contain}.logo-tag{display:none;color:var(--slate);font-size:12px;font-weight:800;letter-spacing:.3px}
.nav-menu{display:flex;align-items:center;gap:16px;font-size:14px;font-weight:850;color:#15223a}.nav-menu a{position:relative;white-space:nowrap;}.nav-menu a:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--green));transform:scaleX(0);transition:.25s}.nav-menu a:hover:after,.nav-menu a.active:after{transform:scaleX(1)}
.nav-menu a:nth-child(n+3):before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);height:14px;width:1px;background:rgba(21,34,58,0.15)}
.header-actions{display:flex;align-items:center;gap:12px}.support-pill{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;font-weight:900;font-size:13px;box-shadow:0 12px 34px rgba(0,166,81,.22)}.support-pill small{display:block;font-size:10px;opacity:.86;font-weight:700}.hamb{display:none;border:0;background:#eef7ff;border-radius:15px;padding:10px 13px;font-size:23px;color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:17px;padding:14px 22px;font-weight:900;cursor:pointer;transition:.25s;white-space:nowrap}.btn.primary{background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;box-shadow:0 18px 38px rgba(0,153,223,.24)}.btn.primary:hover,.btn.outline:hover{transform:translateY(-3px)}.btn.dark{background:var(--navy);color:#fff}.btn.outline{background:#fff;color:var(--navy);border:1px solid rgba(0,153,223,.28)}
.hero{position:relative;min-height:690px;display:grid;align-items:center;isolation:isolate;background:linear-gradient(120deg,#fff 0 42%,#eaf8ff 42% 100%);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 88%,rgba(0,153,223,.12),transparent 28%),radial-gradient(circle at 55% 20%,rgba(145,207,39,.12),transparent 23%);z-index:-2}.hero:after{content:"";position:absolute;right:-90px;top:0;width:58vw;height:100%;background:linear-gradient(125deg,rgba(0,153,223,.98),rgba(0,166,81,.9));clip-path:polygon(25% 0,100% 0,100% 100%,0 100%);z-index:-2}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center;padding:70px 0}.kicker{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 34px rgba(0,0,0,.04);padding:9px 14px;border-radius:999px;color:var(--green-deep);font-size:12px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--green))}.hero h1{font-size:clamp(48px,6.4vw,86px);line-height:.97;letter-spacing:-3px;margin:22px 0;color:var(--navy)}.gradient-text{background:linear-gradient(135deg,var(--blue-deep),var(--green));-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:20px;color:#42536a;max-width:570px}.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.proof-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}.proof{background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;box-shadow:0 15px 40px rgba(6,24,51,.06)}.proof strong{display:block;font-size:23px;color:var(--blue-deep);line-height:1.1}.proof span{font-size:12px;color:var(--slate);font-weight:800}
.hero-media{position:relative;min-height:560px}.media-slice{position:absolute;overflow:hidden;box-shadow:var(--shadow);background:#ddd}.media-slice img{width:100%;height:100%;object-fit:cover}.slice-plane{right:185px;top:30px;width:420px;height:330px;border-radius:34px;clip-path:polygon(18% 0,100% 0,82% 100%,0 100%)}.slice-truck{right:0;bottom:18px;width:520px;height:390px;border-radius:34px;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}.slice-mini{left:10px;bottom:70px;width:250px;height:170px;border-radius:30px;border:7px solid #fff}.floating-panel{position:absolute;left:95px;bottom:0;background:rgba(6,24,51,.93);color:#fff;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);border-radius:24px;padding:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;min-width:520px;box-shadow:0 30px 70px rgba(6,24,51,.22)}.floating-panel b{display:block;font-size:22px}.floating-panel small{color:#cfe9ff;font-weight:700}.diagonal-note{position:absolute;right:35px;top:26px;background:#fff;color:var(--navy);padding:12px 16px;border-radius:16px;font-weight:950;box-shadow:var(--shadow);transform:rotate(3deg)}
.section{padding:86px 0}.section.alt{background:linear-gradient(180deg,#f7fbff,#fff)}.section.dark{background:var(--navy);color:#fff;position:relative;overflow:hidden}.section.dark:before{content:"";position:absolute;right:-180px;top:-180px;width:520px;height:520px;border-radius:50%;border:90px solid rgba(0,153,223,.13)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head.center{text-align:center;display:block;max-width:790px;margin-inline:auto}.section-head h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-2px;margin:12px 0;color:inherit}.section-head p{font-size:18px;color:var(--slate);max-width:650px}.dark .section-head p,.dark p{color:#c6d6e5}.label{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:950;color:var(--green-deep)}
.command-card{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px;background:#fff;border:1px solid var(--line);border-radius:36px;padding:22px;box-shadow:var(--shadow);overflow:hidden}.command-visual{border-radius:28px;min-height:440px;background:url('../assets/road-fleet.jpg') center/cover no-repeat;position:relative}.command-visual:after{content:"Road aggregator model";position:absolute;left:22px;bottom:22px;background:#fff;padding:12px 16px;border-radius:16px;font-weight:950;color:var(--blue-deep)}.command-copy{padding:28px}.feature-row{display:grid;gap:15px;margin-top:22px}.feature{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,#fff,#f6fbff)}.feature i{width:42px;height:42px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;font-style:normal;font-weight:950;flex:0 0 auto}.feature h3{margin:0 0 4px;font-size:18px}.feature p{margin:0;color:var(--slate)}
.service-mosaic{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:260px;gap:18px}.service-tile{position:relative;border-radius:30px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 16px 48px rgba(6,24,51,.08);padding:26px;display:flex;flex-direction:column;justify-content:flex-end}.service-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.service-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,24,51,.84),rgba(6,24,51,.06));z-index:1}.service-tile > *{position:relative;z-index:2}.service-tile h3{color:#fff;margin:0 0 8px;font-size:27px}.service-tile p{color:#e7f3ff;margin:0}.service-tile.text-only{background:linear-gradient(135deg,#fff,#f3fbff);justify-content:flex-start}.service-tile.text-only:before{display:none}.service-tile.text-only h3{color:var(--navy)}.service-tile.text-only p{color:var(--slate)}.service-tile.large{grid-row:span 2}.glyph{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,var(--blue),var(--green));display:grid;place-items:center;color:#fff;font-size:27px;margin-bottom:auto}
.track-module{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px;align-items:stretch}.track-card{background:linear-gradient(135deg,var(--blue),var(--green));border-radius:34px;padding:34px;color:#fff;box-shadow:0 24px 60px rgba(0,153,223,.24)}.track-card h2{font-size:38px;line-height:1.04;margin:0 0 10px}.track-form{display:grid;gap:13px;margin-top:24px}.field, textarea, select{width:100%;border:1px solid var(--line);border-radius:17px;padding:16px 17px;font:inherit;background:#fff;outline:0}.field:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 5px rgba(0,153,223,.12)}.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool{padding:24px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 34px rgba(6,24,51,.06);transition:.25s}.tool:hover{transform:translateY(-4px);border-color:rgba(0,153,223,.42)}.tool b{display:block;font-size:18px;margin:8px 0}.tool span{color:var(--slate);font-size:14px}
.network-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:center}.network-card{background:#fff;border:1px solid rgba(255,255,255,.12);border-radius:34px;padding:30px;color:var(--ink);box-shadow:var(--shadow)}.city-cloud{display:flex;flex-wrap:wrap;gap:12px}.city{padding:13px 16px;border-radius:999px;background:linear-gradient(135deg,#f2fbff,#effbf3);border:1px solid var(--line);font-weight:900;color:var(--blue-deep)}.map-art{height:430px;border-radius:36px;background:radial-gradient(circle at 60% 40%,rgba(0,153,223,.22),transparent 34%),linear-gradient(135deg,#081b38,#031023);position:relative;overflow:hidden}.map-art:before{content:"";position:absolute;inset:30px;background-image:radial-gradient(rgba(255,255,255,.85) 1.3px,transparent 1.4px);background-size:18px 18px;clip-path:polygon(44% 4%,57% 12%,65% 25%,60% 38%,68% 50%,61% 68%,48% 89%,34% 74%,28% 56%,36% 42%,31% 28%);opacity:.95}.pin{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 9px rgba(145,207,39,.22),0 0 28px rgba(145,207,39,.8)}.p1{left:46%;top:18%}.p2{left:38%;top:51%}.p3{left:61%;top:43%}.p4{left:51%;top:66%}.p5{left:70%;top:55%}
.footer{background:#031023;color:#cfe3f8;padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr 1.05fr;gap:32px}.footer img{width:170px;background:#fff;border-radius:14px;padding:8px;margin-bottom:16px}.footer h4{color:#fff}.footer a{display:block;margin:8px 0;color:#cfe3f8}.footer small{display:block;border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:18px;color:#88a4c2}.page-hero{padding:92px 0 70px;background:linear-gradient(135deg,#fff 0%,#eef8ff 58%,#effbf3 100%);position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-90px;top:-90px;width:330px;height:330px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--green));opacity:.14}.page-hero h1{font-size:clamp(42px,5vw,72px);line-height:1;margin:14px 0;color:var(--navy);letter-spacing:-2px}.page-hero p{font-size:19px;color:var(--slate);max-width:720px}.page-split{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.round-image{border-radius:34px;overflow:hidden;box-shadow:var(--shadow);min-height:400px}.round-image img{width:100%;height:100%;object-fit:cover}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 14px 38px rgba(6,24,51,.06)}.info-card h3{margin-top:0;color:var(--navy)}.info-card p{color:var(--slate)}.form-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:30px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.full{grid-column:1/-1}.notice{padding:16px 18px;border-radius:18px;background:#eef8ff;border:1px solid var(--line);color:var(--slate)}
@media(max-width:1180px){.nav-menu{display:flex;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .28s ease,transform .28s cubic-bezier(.16,1,.3,1),visibility .28s;position:absolute;left:0;right:0;top:91px;background:#fff;flex-direction:column;align-items:stretch;padding:16px 5vw;border-bottom:1px solid var(--line);box-shadow:0 28px 55px rgba(6,24,51,.12);z-index:99}.nav-menu.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.nav-menu a{padding:14px 16px;border-radius:12px;transition:.2s ease;border-bottom:1px solid rgba(0,153,223,.04);display:flex;align-items:center}.nav-menu a:last-child{border-bottom:none}.nav-menu a:hover{background:var(--ice);color:var(--blue-deep)}.nav-menu a:after{display:none !important}.nav-menu a.active{background:rgba(0,153,223,.05);color:var(--blue-deep);font-weight:900;border-left:4px solid var(--blue);padding-left:12px}.nav-menu a:before{display:none}.hamb{display:block}.support-pill{display:none}.hero-grid,.command-card,.track-module,.network-wrap,.page-split{grid-template-columns:1fr}.hero{background:#fff}.hero:after{opacity:.12}.hero-media{min-height:520px}.floating-panel{left:20px;min-width:unset;width:90%;grid-template-columns:repeat(3,1fr)}.service-mosaic{grid-template-columns:1fr 1fr}.service-tile.large{grid-row:span 1}.tools-grid,.cards{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.navbar{height:76px}.nav-menu{top:81px;padding:12px 5vw 20px}.logo-link img{width:142px}.hero{min-height:auto}.hero-grid{padding:48px 0}.hero h1{letter-spacing:-1px}.lead{font-size:17px}.proof-strip,.service-mosaic,.tools-grid,.cards,.footer-grid,.form-grid{grid-template-columns:1fr}.hero-media{min-height:430px}.slice-plane{right:20px;top:10px;width:86%;height:230px}.slice-truck{right:0;bottom:60px;width:92%;height:240px}.slice-mini{display:none}.floating-panel{grid-template-columns:1fr;bottom:0}.section{padding:62px 0}.section-head{display:block}.track-card h2{font-size:31px}.page-hero{padding:64px 0 50px}.round-image{min-height:270px}}


/* tracking-first update */
.nav-menu a:first-child{padding:10px 16px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--green));color:#fff;box-shadow:0 12px 34px rgba(0,153,223,.18)}
.nav-menu a:first-child:after{display:none}
.hero-track-card{margin-top:28px;padding:20px;border-radius:26px;background:linear-gradient(135deg,#fff,#f5fbff);border:1px solid var(--line);box-shadow:0 18px 48px rgba(6,24,51,.08)}
.quick-track-head{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.quick-track-head b{font-size:24px;line-height:1.1;color:var(--navy)}
.hero-track-form{display:grid;grid-template-columns:1fr auto;gap:12px}.hero-track-form .field{min-width:0}
.command-visual{background:url('../assets/dock-loading.webp') center/cover no-repeat;min-height:440px}
.page-hero{background:linear-gradient(135deg,#fff 0%,#eef8ff 58%,#effbf3 100%), url('../assets/port-terminal.webp');background-blend-mode:normal,soft-light;background-size:auto,cover;background-position:center}
.tracking-page-card{min-height:100%;display:flex;flex-direction:column;justify-content:center}
@media(max-width:680px){.hero-track-form{grid-template-columns:1fr}.nav-menu a:first-child{display:flex;justify-content:center;align-items:center;padding:14px 20px;border-radius:16px;background:linear-gradient(135deg,var(--blue),var(--green));color:#fff !important;box-shadow:0 10px 24px rgba(0,153,223,.2);font-weight:900;margin-bottom:12px;border-bottom:none;border-left:none !important}.nav-menu a:first-child:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,153,223,.28);background:linear-gradient(135deg,var(--blue-deep),var(--green-deep))}}


/* hero tracking overlay update */
.hero-track-overlay{position:absolute;top:118px;right:22px;width:min(440px,92%);z-index:7;padding:24px 24px 20px;border-radius:28px;background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.85);box-shadow:0 28px 70px rgba(6,24,51,.18);backdrop-filter:blur(12px)}
.hero-track-overlay .quick-track-head{margin-bottom:14px}
.hero-track-overlay .quick-track-head p{margin:8px 0 0;color:var(--slate);font-size:14px;line-height:1.5}
.hero-track-overlay .quick-track-head b{display:block;font-size:28px;line-height:1.1;color:var(--navy)}
.hero-track-form{display:grid;grid-template-columns:1fr auto;gap:12px}
.hero-track-overlay .field{background:#fff}
.diagonal-note{z-index:8}
@media(max-width:1180px){.hero-track-overlay{top:96px;right:10px;width:360px}}
@media(max-width:1040px){.hero-track-overlay{position:relative;top:auto;right:auto;width:100%;margin:18px 0 24px}.hero-media{min-height:auto}}
@media(max-width:680px){.hero-track-form{grid-template-columns:1fr}.hero-track-overlay{padding:18px;border-radius:22px}}


/* hero cleanup + single tracking box */
.tool-showcase{background:linear-gradient(180deg,#f7fbff,#ffffff)}
.hero-media{position:relative;min-height:600px;display:block}
.hero-track-overlay{position:absolute;top:36px;right:8px;width:min(390px,92%);z-index:8;padding:26px;border-radius:30px;background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.92);box-shadow:0 28px 70px rgba(6,24,51,.18);backdrop-filter:blur(10px)}
.hero-track-overlay .quick-track-head{margin-bottom:16px}
.hero-track-overlay .quick-track-head b{display:block;font-size:30px;line-height:1.05;color:var(--navy)}
.hero-track-overlay .quick-track-head p{margin:8px 0 0;color:var(--slate);font-size:14px;line-height:1.5}
.slice-plane{left:30px;top:44px;right:auto;width:250px;height:190px;border-radius:28px;clip-path:none;z-index:2}
.slice-truck{left:78px;bottom:105px;right:auto;width:430px;height:305px;border-radius:30px;clip-path:none;z-index:3}
.slice-mini{right:54px;bottom:120px;left:auto;width:205px;height:145px;border-radius:24px;border:6px solid #fff;z-index:4}
.floating-panel{left:24px;bottom:20px;right:24px;min-width:unset;width:auto;z-index:5;background:rgba(6,24,51,.94)}
.diagonal-note{right:26px;top:12px;transform:rotate(2deg);z-index:9}
@media(max-width:1180px){.hero-track-overlay{top:24px;right:0;width:340px}.slice-plane{left:20px;width:220px;height:165px}.slice-truck{left:50px;width:370px;height:270px}.slice-mini{right:28px;width:180px;height:130px}}
@media(max-width:1040px){.hero-track-overlay{position:relative;top:auto;right:auto;width:100%;margin:0 0 22px}.hero-media{min-height:auto;display:flex;flex-direction:column}.slice-plane,.slice-truck,.slice-mini,.floating-panel,.diagonal-note{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:100%;height:auto;min-height:210px;margin-bottom:16px}.slice-mini{border-width:4px}.floating-panel{display:grid;grid-template-columns:repeat(3,1fr);margin-top:0}.hero-media .media-slice img{height:100%;min-height:210px}}
@media(max-width:680px){.floating-panel{grid-template-columns:1fr}.hero-track-overlay .quick-track-head b{font-size:24px}.slice-plane,.slice-truck,.slice-mini{min-height:180px}}


/* homepage hero refinement */
.hero{overflow:hidden}
.hero-grid{align-items:center;gap:38px}
.hero-media{position:relative;min-height:690px;display:block}
.hero-track-overlay{position:absolute;top:34px;right:0;width:min(560px,96%);padding:34px 34px 30px;border-radius:34px;background:rgba(255,255,255,.985);border:1px solid rgba(255,255,255,.95);box-shadow:0 30px 80px rgba(6,24,51,.16);backdrop-filter:blur(10px)}
.hero-track-overlay .quick-track-head{margin-bottom:18px}
.hero-track-overlay .quick-track-head b{display:block;font-size:50px;line-height:.98;color:var(--navy);letter-spacing:-1.4px;font-weight:900}
.hero-track-overlay .quick-track-head p{margin:14px 0 0;color:var(--slate);font-size:17px;line-height:1.55;max-width:430px}
.hero-track-form{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.hero-track-form .field{height:62px;border-radius:18px;font-size:18px;padding:18px 20px}
.hero-track-form .btn{height:62px;padding:0 28px;border-radius:18px;font-size:18px;display:inline-flex;align-items:center;justify-content:center}
.hero-media .media-slice{position:absolute;overflow:hidden;box-shadow:0 20px 55px rgba(6,24,51,.14);border-radius:28px;clip-path:none}
.slice-plane{left:8px;top:88px;width:300px;height:220px;border-radius:30px;z-index:1}
.slice-truck{left:52px;bottom:110px;width:470px;height:325px;border-radius:34px;z-index:2}
.slice-mini{right:58px;bottom:126px;width:240px;height:170px;border-radius:26px;border:7px solid #fff;z-index:3}
.slice-plane img,.slice-truck img,.slice-mini img{width:100%;height:100%;object-fit:cover}
.floating-panel{left:48px;right:40px;bottom:24px;min-width:unset;width:auto;z-index:4;background:rgba(6,24,51,.96);border-radius:28px;box-shadow:0 22px 60px rgba(6,24,51,.18)}
.diagonal-note{display:none !important}
@media(max-width:1280px){.hero-track-overlay{width:500px}.hero-track-overlay .quick-track-head b{font-size:44px}.slice-truck{width:430px;height:300px}.slice-plane{width:270px;height:200px}.slice-mini{width:220px;height:155px}}
@media(max-width:1180px){.hero-grid{gap:28px}.hero-media{min-height:640px}.hero-track-overlay{width:430px;padding:28px}.hero-track-overlay .quick-track-head b{font-size:40px}.hero-track-overlay .quick-track-head p{font-size:16px}.slice-plane{width:235px;height:180px;left:0}.slice-truck{width:365px;height:270px;left:34px}.slice-mini{width:190px;height:140px;right:24px}}
@media(max-width:1040px){.hero-media{min-height:auto;display:flex;flex-direction:column}.hero-track-overlay{position:relative;top:auto;right:auto;width:100%;margin:0 0 22px}.hero-track-overlay .quick-track-head b{font-size:36px}.hero-track-overlay .quick-track-head p{max-width:none}.slice-plane,.slice-truck,.slice-mini{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:100%;height:240px;margin-bottom:16px}.slice-mini{border-width:5px}.floating-panel{position:relative;left:auto;right:auto;bottom:auto;display:grid;grid-template-columns:repeat(3,1fr);width:100%}}
@media(max-width:680px){.hero-track-overlay{padding:22px;border-radius:26px}.hero-track-overlay .quick-track-head b{font-size:30px}.hero-track-overlay .quick-track-head p{font-size:15px}.hero-track-form{grid-template-columns:1fr}.hero-track-form .field,.hero-track-form .btn{height:56px;font-size:16px}.slice-plane,.slice-truck,.slice-mini{height:190px}.floating-panel{grid-template-columns:1fr}}


/* final hero cleanup: 2-photo layout + landline badge */
.support-pill{min-width:172px;justify-content:center}
.hero-media{min-height:650px}
.hero-track-overlay{top:36px;right:10px;width:min(560px,96%)}
.slice-truck{left:28px;bottom:96px;width:520px;height:340px;border-radius:34px;z-index:2}
.slice-mini{right:72px;bottom:108px;width:250px;height:176px;border-radius:26px;border:7px solid #fff;z-index:3}
.floating-panel{left:28px;right:28px;bottom:18px;z-index:4}
@media(max-width:1280px){.slice-truck{width:470px;height:315px;left:18px}.slice-mini{right:44px;width:220px;height:156px}}
@media(max-width:1180px){.hero-track-overlay{width:450px}.slice-truck{width:405px;height:285px;left:12px}.slice-mini{right:18px;width:195px;height:138px}.support-pill{min-width:auto}}
@media(max-width:1040px){.hero-track-overlay{width:100%}.slice-truck,.slice-mini{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:100%;height:240px;margin-bottom:16px}.floating-panel{position:relative;left:auto;right:auto;bottom:auto;width:100%}}
@media(max-width:680px){.support-pill span:last-child{font-size:12px}.slice-truck,.slice-mini{height:190px}}


/* network map update */
.map-art{background:transparent;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0;border-radius:36px;box-shadow:var(--shadow)}
.map-art:before{display:none}
.india-map-graphic{width:100%;height:100%;display:block;object-fit:cover}
@media(max-width:1040px){.map-art{height:auto;min-height:320px}}


/* approved india map image */
.map-art{background:transparent !important;height:430px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0;border-radius:36px;box-shadow:var(--shadow)}
.india-map-graphic{width:100%;height:100%;display:block;object-fit:contain;background:transparent}
@media(max-width:1040px){.map-art{height:340px;min-height:340px}}
@media(max-width:680px){.map-art{height:280px;min-height:280px}}

/* Restricted Items premium UI */
.restricted-ui{
  background:
    radial-gradient(circle at 12% 20%, rgba(0,153,223,.08), transparent 26%),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
}
.restricted-intro{
  max-width: 820px;
  margin-bottom: 34px;
}
.restricted-intro h2{
  font-size: clamp(36px,4.4vw,64px);
  line-height: .98;
  letter-spacing: -2px;
  color: var(--navy);
  margin: 12px 0 14px;
}
.restricted-intro p{
  color: var(--slate);
  font-size: 18px;
  max-width: 720px;
}
.restricted-layout{
  display: grid;
  grid-template-columns: 1.18fr .82fr;
  gap: 22px;
  align-items: start;
}
.restricted-panel{
  border: 1px solid var(--line);
  background: rgba(255,255,255,.94);
  border-radius: 34px;
  padding: 28px;
  box-shadow: 0 22px 64px rgba(6,24,51,.08);
}
.banned-panel{
  position: relative;
  overflow: hidden;
}
.banned-panel:before{
  content:"";
  position:absolute;
  inset:auto -110px -160px auto;
  width:320px;
  height:320px;
  border-radius:50%;
  background: linear-gradient(135deg, rgba(0,153,223,.10), rgba(0,166,81,.10));
}
.panel-top{
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 22px;
  position: relative;
  z-index: 1;
}
.panel-icon{
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--blue), var(--green));
  color: #fff;
  font-weight: 950;
  font-size: 22px;
  flex: 0 0 auto;
}
.panel-icon.green{
  background: linear-gradient(135deg, var(--green), var(--lime));
  color: var(--navy);
  font-size: 16px;
}
.panel-top h3{
  margin: 0 0 6px;
  color: var(--navy);
  font-size: 28px;
  line-height: 1.08;
}
.panel-top p{
  margin: 0;
  color: var(--slate);
}
.banned-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
  position: relative;
  z-index: 1;
}
.ban-chip{
  padding: 13px 14px;
  border-radius: 18px;
  background: linear-gradient(135deg,#f2fbff,#effbf3);
  border: 1px solid #d7eaf4;
  color: #0b2442;
  font-weight: 800;
  font-size: 14px;
  line-height: 1.35;
}
.ban-chip.highlight{
  grid-column: 1 / -1;
  background: linear-gradient(135deg, rgba(0,153,223,.12), rgba(145,207,39,.18));
  border-color: rgba(0,166,81,.30);
  color: var(--green-deep);
}
.dg-panel{
  background: linear-gradient(180deg,#061833 0%,#031023 100%);
  color: #fff;
  border-color: rgba(255,255,255,.12);
}
.dg-panel .panel-top h3{
  color:#fff;
}
.dg-panel .panel-top p{
  color:#c6d6e5;
}
.dg-table{
  display: grid;
  gap: 8px;
}
.dg-row{
  display:grid;
  grid-template-columns: 96px 1fr;
  gap: 12px;
  align-items:center;
  padding: 13px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.10);
}
.dg-row span:first-child{
  font-weight: 950;
  color: #91cf27;
}
.dg-row span:last-child{
  color:#e8f4ff;
  font-weight: 700;
}
.dg-head{
  background: rgba(0,153,223,.22);
}
.dg-head span{
  color:#fff !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 12px;
}
.compliance-note{
  margin-top: 18px;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(145,207,39,.12);
  border: 1px solid rgba(145,207,39,.26);
  color: #dff7c2;
}
.compliance-note b{
  color:#91cf27;
}
@media(max-width:1040px){
  .restricted-layout{grid-template-columns:1fr}
}
@media(max-width:680px){
  .restricted-panel{padding:22px;border-radius:26px}
  .banned-grid{grid-template-columns:1fr}
  .dg-row{grid-template-columns:82px 1fr}
  .panel-top h3{font-size:23px}
}

/* 4-tool layout update */
.tools-grid.four-tools{
  grid-template-columns: repeat(2, minmax(0,1fr));
}
.tools-grid.four-tools .tool{
  min-height: 170px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media(max-width:680px){
  .tools-grid.four-tools{
    grid-template-columns: 1fr;
  }
}

/* Apply Now page */
.apply-hero{
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(239,251,243,.92)),
    url('../assets/dock-loading.webp') center/cover no-repeat;
}
.apply-page{
  background:
    radial-gradient(circle at 12% 18%, rgba(0,153,223,.08), transparent 25%),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
}
.apply-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  align-items:start;
}
.apply-copy h2{
  font-size:clamp(36px,4.5vw,62px);
  line-height:.98;
  letter-spacing:-2px;
  color:var(--navy);
  margin:12px 0 16px;
}
.apply-copy p{
  color:var(--slate);
  font-size:18px;
}
.career-points{
  display:grid;
  gap:12px;
  margin:26px 0;
}
.career-point{
  display:flex;
  gap:14px;
  align-items:center;
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:16px;
  box-shadow:0 14px 36px rgba(6,24,51,.05);
}
.career-point span{
  width:42px;
  height:42px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--blue),var(--green));
  color:#fff;
  font-weight:950;
  flex:0 0 auto;
}
.career-point b{
  color:var(--navy);
}
.apply-note{
  padding:18px 20px;
  border-radius:22px;
  background:linear-gradient(135deg,#eef8ff,#effbf3);
  border:1px solid var(--line);
  color:var(--slate);
}
.apply-note b{
  color:var(--green-deep);
}
.application-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:36px;
  padding:32px;
  box-shadow:var(--shadow);
}
.application-card h2{
  color:var(--navy);
  font-size:34px;
  line-height:1.05;
  margin:0 0 8px;
}
.application-card > p{
  color:var(--slate);
  margin:0 0 24px;
}
.application-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.form-section-title{
  grid-column:1/-1;
  margin-top:8px;
  color:var(--green-deep);
  font-size:12px;
  font-weight:950;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.resume-upload{
  display:flex;
  flex-direction:column;
  gap:5px;
  border:1px dashed rgba(0,153,223,.42);
  background:linear-gradient(135deg,#f5fbff,#f4fff7);
  border-radius:18px;
  padding:18px;
  cursor:pointer;
}
.resume-upload span{
  font-weight:950;
  color:var(--navy);
}
.resume-upload small{
  color:var(--slate);
}
.resume-upload input{
  margin-top:8px;
}
.application-success{
  display:none;
  margin-top:18px;
  border-radius:18px;
  padding:17px 18px;
  background:rgba(145,207,39,.14);
  border:1px solid rgba(0,166,81,.24);
  color:var(--green-deep);
  font-weight:800;
}
.application-success.show{
  display:block;
}
@media(max-width:1040px){
  .apply-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .application-card{padding:22px;border-radius:28px}
  .application-form{grid-template-columns:1fr}
}

/* Custom Styles for Dynamic Node.js APIs & Tracking */
.tracking-results-container {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 24px;
  padding: 24px;
  color: #fff;
  margin-top: 24px;
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.2);
  text-align: left;
}

.tracking-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 16px;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 12px;
}

.tracking-header h3 {
  margin: 0;
  font-size: 20px;
  color: #fff;
}

.tracking-status-badge {
  background: #0099df;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.tracking-status-badge.delivered {
  background: #00a651;
}

.tracking-status-badge.in-transit {
  background: #f1c40f;
  color: #333;
}

.tracking-status-badge.out-for-delivery {
  background: #e67e22;
}

.tracking-status-badge.shipment-booked {
  background: #7f8c8d;
}

.tracking-meta-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 16px;
  margin-bottom: 24px;
  background: rgba(255, 255, 255, 0.04);
  padding: 16px;
  border-radius: 16px;
}

.tracking-meta-item small {
  display: block;
  color: rgba(255, 255, 255, 0.6);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}

.tracking-meta-item span {
  font-weight: 600;
  font-size: 14px;
}

/* Timeline stepper */
.timeline-stepper {
  position: relative;
  margin-top: 20px;
  padding-left: 32px;
}

.timeline-stepper::before {
  content: '';
  position: absolute;
  left: 11px;
  top: 10px;
  bottom: 10px;
  width: 2px;
  background: rgba(255, 255, 255, 0.15);
}

.timeline-step {
  position: relative;
  margin-bottom: 24px;
}

.timeline-step:last-child {
  margin-bottom: 0;
}

.timeline-dot {
  position: absolute;
  left: -32px;
  top: 4px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #34495e;
  border: 4px solid #1a252f;
  transition: all 0.3s ease;
}

.timeline-step.completed .timeline-dot {
  background: #00a651;
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: 0 0 10px rgba(0, 166, 81, 0.4);
}

.timeline-step.active .timeline-dot {
  background: #0099df;
  border-color: #fff;
  box-shadow: 0 0 12px rgba(0, 153, 223, 0.6);
}

.timeline-info {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 8px;
}

.timeline-info h4 {
  margin: 0 0 4px;
  font-size: 15px;
  font-weight: 700;
}

.timeline-info p {
  margin: 0;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.7);
}

.timeline-date {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.5);
  text-align: right;
}

/* Success status boxes for forms */
.form-success-card {
  margin-top: 16px;
  padding: 20px;
  border-radius: 18px;
  background: rgba(0, 166, 81, 0.1);
  border: 1px solid rgba(0, 166, 81, 0.25);
  color: #fff;
  text-align: left;
}

.form-success-card h3 {
  color: #2ecc71;
  margin: 0 0 8px;
  font-size: 18px;
}

.form-success-card p {
  margin: 0 0 12px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.85);
}

.ref-code {
  display: inline-block;
  background: rgba(255, 255, 255, 0.15);
  padding: 4px 10px;
  border-radius: 8px;
  font-family: monospace;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #fff;
}

/* Recent Searches History Box */
.tracking-history-box {
  margin-top: 20px;
  background: rgba(255, 255, 255, 0.03);
  padding: 12px 16px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  text-align: left;
}

.history-label {
  display: block;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.5);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 8px;
  font-weight: 700;
}

.history-badges-container {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.history-badge {
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 6px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-family: monospace;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
  cursor: pointer;
  transition: all 0.2s ease;
}

.history-badge:hover {
  background: rgba(0, 153, 223, 0.15);
  border-color: rgba(0, 153, 223, 0.4);
  color: #fff;
  transform: translateY(-1px);
}

/* Dynamic SVG Route Map Styles removed */

/* Action Buttons Row */
.tracking-actions {
  display: flex;
  gap: 12px;
  margin-top: 20px;
  flex-wrap: wrap;
}

.btn-action {
  flex: 1;
  min-width: 140px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  border-radius: 14px;
  padding: 12px 18px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s ease;
}

.btn-action:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-1px);
}

.btn-action:active {
  transform: translateY(0);
}

/* Print Media Queries optimization */
@media print {
  body * {
    visibility: hidden;
  }
  .print-invoice-wrapper, .print-invoice-wrapper * {
    visibility: visible;
  }
  .print-invoice-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    color: #000 !important;
    background: #fff !important;
    padding: 20px;
    border: none !important;
    box-shadow: none !important;
  }
  .tracking-results-container {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
  }
  .tracking-route-map {
    border: 1px solid #ddd !important;
    background: #fcfcfc !important;
  }
  .tracking-route-map text {
    fill: #000 !important;
  }
  .tracking-route-map path#route-path {
    stroke: #eee !important;
  }
  .tracking-header h3, .tracking-header p, .timeline-info h4, .timeline-info p, .timeline-date {
    color: #000 !important;
  }
  .tracking-meta-grid {
    background: #f9f9f9 !important;
    border: 1px solid #eee !important;
    grid-template-columns: 1fr 1fr !important;
  }
  .tracking-meta-item small {
    color: #666 !important;
  }
  .tracking-meta-item span {
    color: #000 !important;
    font-weight: bold !important;
  }
  .timeline-stepper::before {
    background: #ddd !important;
  }
  .timeline-dot {
    border-color: #fff !important;
    background: #95a5a6 !important;
  }
  .timeline-step.completed .timeline-dot {
    background: #27ae60 !important;
  }
  .timeline-step.active .timeline-dot {
    background: #2980b9 !important;
  }
  .tracking-actions, .tracking-history-box, .site-header, .footer, .page-hero {
    display: none !important;
  }
}

/* Inline Form Status Messages */
.form-status {
  grid-column: 1 / -1;
  margin-top: 16px;
  padding: 12px 18px;
  border-radius: 12px;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.45;
  display: none;
  width: 100%;
  box-sizing: border-box;
  animation: formStatusFadeIn 0.3s ease-in-out;
}

.form-status.success {
  background: rgba(0, 166, 81, 0.08);
  border: 1px solid rgba(0, 166, 81, 0.18);
  color: #00a651;
}

.form-status.error {
  background: rgba(231, 76, 60, 0.08);
  border: 1px solid rgba(231, 76, 60, 0.18);
  color: #e74c3c;
}

.form-status.info {
  background: rgba(0, 153, 223, 0.08);
  border: 1px solid rgba(0, 153, 223, 0.18);
  color: #0099df;
}

@keyframes formStatusFadeIn {
  from { opacity: 0; transform: translateY(-4px); }  to { opacity: 1; transform: translateY(0); }
}

/* Pincode Lookup UI styles */
.pincode-wrap {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 24px;
  align-items: start;
}
.pincode-card {
  background: linear-gradient(135deg, var(--blue), var(--green));
  border-radius: 34px;
  padding: 34px;
  color: #fff;
  box-shadow: 0 24px 60px rgba(0, 153, 223, 0.24);
}
.pincode-card h2 {
  font-size: 38px;
  line-height: 1.04;
  margin: 0 0 10px;
}
.pincode-card p {
  margin: 0 0 24px;
  color: rgba(255, 255, 255, 0.88);
}
.pincode-results {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 34px;
  padding: 30px;
  box-shadow: var(--shadow);
  display: none; /* Shown dynamically */
}
.pincode-results.show {
  display: block;
}
.pincode-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 8px;
  margin-top: 18px;
}
.pincode-table th {
  text-align: left;
  padding: 12px 16px;
  font-size: 13px;
  font-weight: 950;
  color: var(--green-deep);
  text-transform: uppercase;
  letter-spacing: .08em;
  border-bottom: 2px solid var(--line);
}
.pincode-table td {
  padding: 16px;
  font-size: 15px;
  background: #f7fbff;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.pincode-table tr td:first-child {
  border-left: 1px solid var(--line);
  border-radius: 16px 0 0 16px;
  font-weight: 800;
  color: var(--navy);
}
.pincode-table tr td:last-child {
  border-right: 1px solid var(--line);
  border-radius: 0 16px 16px 0;
}
.pincode-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.pincode-badge.serviceable {
  background: #effbf3;
  color: var(--green-deep);
  border: 1px solid rgba(0, 166, 81, 0.24);
}
.pincode-badge.unserviceable {
  background: #fdf2f2;
  color: #c53030;
  border: 1px solid rgba(197, 48, 48, 0.2);
}
@media(max-width:1040px){
  .pincode-wrap {
    grid-template-columns: 1fr;
  }
}



/* ── Login button in main nav ───────────────────────────── */
.nav-login-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 9px 18px;
  border-radius: 999px;
  background: transparent;
  border: 2px solid transparent;
  background-image:
    linear-gradient(#fff, #fff),
    linear-gradient(135deg, #0099df, #00a651);
  background-origin: border-box;
  background-clip: padding-box, border-box;
  color: #061833;
  font-size: 13.5px;
  font-weight: 800;
  white-space: nowrap;
  transition: all .25s cubic-bezier(.16,1,.3,1);
  text-decoration: none;
  box-shadow: 0 4px 18px rgba(0,153,223,.1);
}
.nav-login-btn:hover {
  background-image: none;
  background: linear-gradient(135deg, #0099df, #00a651);
  color: #fff;
  box-shadow: 0 10px 28px rgba(0,153,223,.28);
  transform: translateY(-2px);
}
@media(max-width:1180px){
  .nav-login-btn {
    display: flex;
    justify-content: center;
    padding: 13px 20px;
    border-radius: 14px;
    border: none;
    background-image: none;
    background: linear-gradient(135deg, #0099df, #00a651);
    color: #fff;
    font-size: 14px;
    margin: 4px 0 12px;
  }
}
.tools-grid.four-tools { grid-template-columns: repeat(4,1fr); }
@media(max-width:900px){ .tools-grid.four-tools { grid-template-columns: repeat(2,1fr); } }
@media(max-width:480px){ .tools-grid.four-tools { grid-template-columns: 1fr; } }

/* --- High-Contrast Two-Column Tracking Dashboard Layout Styles --- */

/* Two-column layout grid */
.tracking-dashboard-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 20px;
  align-items: start;
}

@media(max-width: 991px) {
  .tracking-dashboard-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* Translucent Card Block */
.tracking-card-block {
  background: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  padding: 24px;
  margin-bottom: 20px;
  box-sizing: border-box;
}

.tracking-card-block h4 {
  margin: 0 0 16px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.9);
}

/* Metadata Grid */
.tracking-meta-grid-new {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  background: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 16px 20px;
  border-radius: 18px;
  margin-bottom: 20px;
  box-sizing: border-box;
}

@media(max-width: 768px) {
  .tracking-meta-grid-new {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 480px) {
  .tracking-meta-grid-new {
    grid-template-columns: 1fr;
  }
}

.tracking-meta-item-new small {
  display: block;
  color: rgba(255, 255, 255, 0.65);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
  font-weight: 800;
}

.tracking-meta-item-new span {
  display: block;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
}

/* Consignment Specifications Grid */
.specs-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 20px;
}

@media(max-width: 576px) {
  .specs-grid {
    grid-template-columns: 1fr;
  }
}

.spec-item.full-width {
  grid-column: 1 / -1;
}

.spec-item small {
  display: block;
  color: rgba(255, 255, 255, 0.65);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
  font-weight: 800;
}

.spec-item span {
  display: block;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  line-height: 1.4;
}

.spec-item .signature-text {
  color: #fff !important;
  font-weight: 700;
}

/* Travel History Table Styles */
.travel-history-table-container {
  overflow-x: auto;
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 4px;
}

.travel-history-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 13.5px;
}

.travel-history-table th {
  padding: 14px 16px;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.7);
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.08em;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.travel-history-table td {
  padding: 14px 16px;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  line-height: 1.4;
}

.travel-history-table tr:last-child td {
  border-bottom: none;
}

.travel-history-table tr:hover td {
  background: rgba(255, 255, 255, 0.02);
}

.history-td-date {
  font-family: monospace;
  font-weight: 600;
  white-space: nowrap;
}

.history-td-time {
  font-family: monospace;
  white-space: nowrap;
  color: rgba(255, 255, 255, 0.85);
}

.history-td-activity {
  font-weight: 700;
}

/* Sidebar journey container */
.journey-section {
  padding-left: 8px;
}

.journey-section h4 {
  margin: 0 0 20px;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.9);
}

/* Action Buttons New */
.tracking-actions-new {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 24px;
  padding-left: 8px;
}

.btn-action-new {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  border-radius: 14px;
  padding: 14px 18px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s ease;
  width: 100%;
  box-sizing: border-box;
}

.btn-action-new:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.35);
  transform: translateY(-1px);
}

.btn-action-new:active {
  transform: translateY(0);
}

/* Header customization */
.tracking-header-new {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
  gap: 12px;
}

.tracking-header-new h3 {
  margin: 0;
  font-size: 24px;
  font-weight: 900;
  color: #fff;
}

.tracking-header-sub-new {
  margin: 4px 0 0;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.8);
}

.tracking-status-badge-new {
  background: #0099df;
  color: #fff;
  padding: 6px 14px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.tracking-status-badge-new.delivered {
  background: #00a651;
}

.tracking-status-badge-new.in-transit {
  background: #f1c40f;
  color: #333;
}

.tracking-status-badge-new.out-for-delivery {
  background: #e67e22;
}

.tracking-status-badge-new.shipment-booked {
  background: #7f8c8d;
}

/* Results layout transitions - hide photo and make results container full-width */
#tracking-page-split.results-active {
  grid-template-columns: 1fr;
}
#tracking-page-split.results-active .round-image {
  display: none !important;
}
#tracking-page-split.results-active .track-card {
  width: 100%;
}

/* --- Tracking Page Premium Light Theme Redesign Overrides --- */

.tracking-page-card {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  color: var(--navy) !important;
  box-shadow: var(--shadow) !important;
}

.tracking-page-card h2 {
  color: var(--navy) !important;
}

.tracking-page-card p {
  color: var(--slate) !important;
}

.tracking-page-card .history-label {
  color: var(--slate) !important;
}

/* Recent Search Badges in Light Mode */
.history-badge {
  display: inline-block;
  padding: 8px 16px;
  background: #f7fbff;
  border: 1px solid var(--line);
  color: var(--blue-deep);
  border-radius: 999px;
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.02);
}

.history-badge:hover {
  background: var(--ice);
  border-color: rgba(0, 153, 223, 0.28);
  transform: translateY(-1px);
}

/* Results Container Light Theme */
.tracking-results-container {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  color: var(--navy) !important;
  box-shadow: 0 8px 32px 0 rgba(6, 24, 51, 0.04) !important;
}

.tracking-header-new {
  border-bottom: 1px solid var(--line) !important;
}

.tracking-header-new h3 {
  color: var(--navy) !important;
}

.tracking-header-sub-new {
  color: var(--slate) !important;
}

/* Metadata Grid in Light Mode */
.tracking-meta-grid-new {
  background: #f7fbff !important;
  border: 1px solid var(--line) !important;
}

.tracking-meta-item-new small {
  color: var(--slate) !important;
}

.tracking-meta-item-new span {
  color: var(--navy) !important;
}

/* Consignment Specs in Light Mode */
.tracking-card-block {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 10px 30px rgba(6, 24, 51, 0.04) !important;
}

.tracking-card-block h4 {
  color: var(--navy) !important;
}

.spec-item small {
  color: var(--slate) !important;
}

.spec-item span {
  color: var(--navy) !important;
}

.spec-item .signature-text {
  color: var(--green) !important;
}

/* Journey Sidebar in Light Mode */
.journey-section h4 {
  color: var(--navy) !important;
}

.travel-history-table-container {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 10px 30px rgba(6, 24, 51, 0.04) !important;
}

.travel-history-table th {
  color: var(--slate) !important;
  border-bottom: 1px solid var(--line) !important;
}

.travel-history-table td {
  color: var(--navy) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
}

.travel-history-table tr:hover td {
  background: #f7fbff !important;
}

.history-td-time {
  color: var(--slate) !important;
}

/* Actions Buttons in Light Mode */
.btn-action-new {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  color: var(--navy) !important;
  box-shadow: 0 4px 12px rgba(6, 24, 51, 0.04) !important;
}

.btn-action-new:hover {
  background: #f7fbff !important;
  border-color: rgba(0, 153, 223, 0.24) !important;
  color: var(--blue-deep) !important;
}

/* Tools page 2x2 grid */
.tools-grid-2x2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-content: start;
}

.tool-lg {
  padding: 32px 28px;
  border-radius: 28px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 180px;
}

.tool-lg .tool-icon {
  font-size: 32px;
  line-height: 1;
  margin-bottom: 4px;
}

.tool-lg b {
  font-size: 20px;
  color: var(--navy);
}

.tool-lg span {
  font-size: 14px;
  color: var(--slate);
  line-height: 1.5;
}

@media (max-width: 680px) {
  .tools-grid-2x2 {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   HERO ANIMATED BLOBS
   ========================================================================== */
.hero-blobs {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
  pointer-events: none;
}
.blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(90px);
  opacity: 0.7;
}
.blob-1 {
  width: 580px; height: 580px;
  background: radial-gradient(circle, rgba(0,153,223,0.18), transparent 70%);
  top: -120px; right: 8%;
  animation: blobDrift1 9s ease-in-out infinite alternate;
}
.blob-2 {
  width: 440px; height: 440px;
  background: radial-gradient(circle, rgba(0,166,81,0.14), transparent 70%);
  bottom: -60px; left: 4%;
  animation: blobDrift2 11s ease-in-out infinite alternate;
}
.blob-3 {
  width: 320px; height: 320px;
  background: radial-gradient(circle, rgba(145,207,39,0.10), transparent 70%);
  top: 35%; left: 40%;
  animation: blobDrift3 13s ease-in-out infinite alternate;
}
@keyframes blobDrift1 {
  from { transform: translate(0,0) scale(1); }
  to   { transform: translate(-28px, 22px) scale(1.08); }
}
@keyframes blobDrift2 {
  from { transform: translate(0,0) scale(1); }
  to   { transform: translate(22px, -28px) scale(1.06); }
}
@keyframes blobDrift3 {
  from { transform: translate(0,0) scale(1); }
  to   { transform: translate(-14px, 18px) scale(0.94); }
}
/* Make sure hero content sits above blobs */
.hero-grid { position: relative; z-index: 1; }

/* ==========================================================================
   STATS STRIP
   ========================================================================== */
.stats-strip {
  background: var(--navy);
  padding: 0;
  position: relative;
  overflow: hidden;
}
.stats-strip::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,153,223,0.06), rgba(0,166,81,0.06));
}
.stats-strip-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  position: relative;
  z-index: 1;
}
.stat-item {
  padding: 42px 32px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.07);
}
.stat-item:last-child { border-right: none; }
.stat-num {
  font-size: clamp(2.4rem, 4vw, 3.4rem);
  font-weight: 900;
  background: linear-gradient(135deg, var(--blue), var(--green));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  line-height: 1;
  margin-bottom: 8px;
  letter-spacing: -1px;
}
.stat-label {
  color: rgba(255,255,255,0.45);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
@media(max-width:680px) {
  .stats-strip-grid { grid-template-columns: 1fr 1fr; }
  .stat-item { border-bottom: 1px solid rgba(255,255,255,0.07); }
}

/* ==========================================================================
   BUTTON HOVER — gradient shift
   ========================================================================== */
.btn.primary {
  background-size: 200% auto;
  background-image: linear-gradient(135deg, var(--blue) 0%, var(--green) 50%, var(--blue-deep) 100%);
  transition: background-position 0.45s ease, transform 0.25s ease, box-shadow 0.25s ease;
}
.btn.primary:hover {
  background-position: right center;
  transform: translateY(-3px);
  box-shadow: 0 22px 48px rgba(0,153,223,.36);
}

/* ==========================================================================
   SCROLL PROGRESS BAR
   ========================================================================== */
.scroll-progress-bar {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  width: 0%;
  background: linear-gradient(90deg, var(--blue), var(--green), var(--lime));
  z-index: 9999;
  transition: width 0.08s linear;
  pointer-events: none;
}

/* ==========================================================================
   SCROLL REVEAL
   ========================================================================== */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.55s ease, transform 0.55s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Stagger proof strip cards */
.proof-strip .reveal:nth-child(1) { transition-delay: 0.05s; }
.proof-strip .reveal:nth-child(2) { transition-delay: 0.15s; }
.proof-strip .reveal:nth-child(3) { transition-delay: 0.25s; }
.proof-strip .reveal:nth-child(4) { transition-delay: 0.35s; }

/* Stagger tool cards */
.tools-grid .reveal:nth-child(1) { transition-delay: 0.05s; }
.tools-grid .reveal:nth-child(2) { transition-delay: 0.15s; }
.tools-grid .reveal:nth-child(3) { transition-delay: 0.25s; }
.tools-grid .reveal:nth-child(4) { transition-delay: 0.35s; }

/* ==========================================================================
   SERVICE TILE HOVER — bottom border sweep (Pikall-style)
   ========================================================================== */
.service-tile::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--blue), var(--green));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.32s ease;
}
.service-tile:hover::after {
  transform: scaleX(1);
}

/* Tool card lift on hover */
.tool {
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}
.tool:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 50px rgba(0,153,223,.14);
}

/* ==========================================================================
   SVG GLYPHS STYLING
   ========================================================================== */
.glyph-svg {
  width: 32px;
  height: 32px;
  color: var(--white);
  opacity: 0.85;
  transition: transform 0.28s ease, opacity 0.28s ease;
}
.service-tile:hover .glyph-svg {
  transform: scale(1.12);
  opacity: 1;
}

/* ==========================================================================
   KICKER SHIMMER ANIMATION
   ========================================================================== */
.kicker {
  position: relative;
  overflow: hidden;
}
.kicker::after {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(0, 166, 81, 0.15), transparent);
  animation: kickerShimmer 6s infinite;
}
@keyframes kickerShimmer {
  0% { left: -100%; }
  15% { left: 200%; }
  100% { left: 200%; }
}

/* ==========================================================================
   FORM FIELD FOCUS GLOW
   ========================================================================== */
.field:focus, textarea:focus, select:focus {
  border-color: var(--blue) !important;
  box-shadow: 0 0 0 4px rgba(0, 153, 223, 0.15), 0 8px 24px rgba(6, 24, 51, 0.08) !important;
  background: #fff !important;
}

/* ==========================================================================
   INTERACTIVE CITY BADGES HOVER
   ========================================================================== */
.city {
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), background 0.22s ease, color 0.22s ease, border-color 0.22s ease;
  cursor: pointer;
}
.city:hover {
  transform: translateY(-3px) scale(1.04);
  background: linear-gradient(135deg, var(--blue), var(--green)) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 10px 20px rgba(0, 153, 223, 0.15);
}

/* ==========================================================================
   PREMIUM FOOTER REDESIGN
   ========================================================================== */
.footer {
  position: relative;
  padding-top: 60px !important;
  padding-bottom: 0 !important;
  background: #020c1b !important;
}
.footer-top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--blue), var(--green), var(--lime));
}
.footer-brand-col p {
  margin-top: 14px;
  margin-bottom: 20px;
  max-width: 280px;
  line-height: 1.6;
  font-size: 13.5px;
  opacity: 0.75;
}
.footer-social-links {
  display: flex;
  gap: 12px;
  margin-top: 16px;
}
.footer-social-links a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #cfe3f8;
  transition: all 0.24s ease;
}
.footer-social-links a:hover {
  background: linear-gradient(135deg, var(--blue), var(--green));
  color: #fff;
  border-color: transparent;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 153, 223, 0.2);
}
.social-svg {
  width: 18px;
  height: 18px;
}
.footer-bottom-bar {
  border-top: 1px solid rgba(255,255,255,0.06);
  margin-top: 24px;
  padding: 16px 0;
}
.footer-bottom-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}
.footer-bottom-flex small {
  display: inline-block !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: none !important;
  opacity: 0.55;
}
.footer-bottom-links {
  display: flex;
  gap: 20px;
}
.footer-bottom-links a,
.footer-bottom-links span {
  font-size: 12px;
  opacity: 0.55;
  color: #cfe3f8;
}
.footer-bottom-links a {
  transition: opacity 0.2s ease;
  cursor: pointer;
}
.footer-bottom-links a:hover {
  opacity: 1;
  color: var(--blue);
}
@media(max-width: 680px) {
  .footer-bottom-flex {
    flex-direction: column;
    text-align: center;
  }
}

/* Mobile responsive overrides for tracking results card */
@media(max-width: 680px) {
  /* Close the shrunken header height gap */
  .nav-menu {
    top: 76px !important;
  }

  /* Reduce outer card padding */
  .track-card,
  .tracking-page-card {
    padding: 18px 14px !important;
    border-radius: 20px !important;
  }
  
  /* Reduce inner results card padding and margins */
  .tracking-results-container {
    padding: 14px !important;
    margin-top: 16px !important;
    border-radius: 16px !important;
  }
  
  /* Header flex wrap */
  .tracking-header-new {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-bottom: 12px;
    margin-bottom: 16px;
  }
  
  /* Make status badge font slightly smaller */
  .tracking-status-badge-new {
    font-size: 11px !important;
    padding: 4px 10px !important;
  }
  
  /* Tighten metadata grid */
  .tracking-meta-grid-new {
    gap: 12px !important;
    padding: 12px 14px !important;
    margin-bottom: 14px !important;
    border-radius: 12px !important;
  }
  
  /* Tighten cards and blocks */
  .tracking-card-block {
    padding: 16px 14px !important;
    margin-bottom: 14px !important;
    border-radius: 12px !important;
  }
  
  .specs-grid {
    gap: 12px !important;
  }
}

/* Premium Morphing Hamburger Button Option B */
.hamb {
  display: none;
  flex-direction: column;
  justify-content: space-between;
  width: 44px;
  height: 44px;
  background: #eef7ff;
  border: none;
  border-radius: 12px;
  padding: 14px 12px; /* Centers the spans vertically */
  cursor: pointer;
  z-index: 1000;
  transition: background 0.24s ease, transform 0.2s ease;
}
.hamb:hover {
  background: var(--ice);
  transform: scale(1.05);
}
.hamb span {
  display: block;
  width: 100%;
  height: 2.5px;
  background: var(--navy);
  border-radius: 99px;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease, background 0.3s ease;
  transform-origin: center;
}

/* Open/Active Morphing states */
.hamb.open {
  background: #eef7ff !important; /* Keep original soft blue background */
}
.hamb.open span {
  background: var(--navy); /* Keep original navy color */
}
.hamb.open span:nth-child(1) {
  transform: translateY(6.5px) rotate(45deg);
}
.hamb.open span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
.hamb.open span:nth-child(3) {
  transform: translateY(-6.5px) rotate(-45deg);
}

@media(max-width: 1180px) {
  .hamb {
    display: flex;
  }
}

/* Scroll lock for body when mobile menu is active */
body.menu-open {
  overflow: hidden !important;
  height: 100vh !important;
}

/* Glassmorphism nav menu and staggered links */
@media(max-width: 1180px) {
  .nav-menu {
    background: #ffffff !important;
    max-height: calc(100vh - 86px);
    overflow-y: auto;
  }
  
  /* Stagger link animations */
  .nav-menu a {
    transform: translateX(16px);
    opacity: 0;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease, background 0.2s ease;
  }
  
  .nav-menu.open a {
    transform: translateX(0);
    opacity: 1;
  }
  
  .nav-menu.open a:nth-child(1) { transition-delay: 0.04s; }
  .nav-menu.open a:nth-child(2) { transition-delay: 0.08s; }
  .nav-menu.open a:nth-child(3) { transition-delay: 0.12s; }
  .nav-menu.open a:nth-child(4) { transition-delay: 0.16s; }
  .nav-menu.open a:nth-child(5) { transition-delay: 0.20s; }
  .nav-menu.open a:nth-child(6) { transition-delay: 0.24s; }
  .nav-menu.open a:nth-child(7) { transition-delay: 0.28s; }
  .nav-menu.open a:nth-child(8) { transition-delay: 0.32s; }
  .nav-menu.open a:nth-child(9) { transition-delay: 0.36s; }
  
  /* Cleaner active row state */
  .nav-menu a.active {
    background: var(--ice) !important;
    border-left: 3px solid var(--blue) !important;
    border-radius: 12px !important;
    padding-left: 17px !important;
    color: var(--blue-deep) !important;
  }
}
/* Desktop hidden support link in nav */
.menu-support-link {
  display: none !important;
}

@media(max-width: 1180px) {
  /* Hide support pill from header actions completely on mobile/tablets */
  .support-pill {
    display: none !important;
  }
  
  /* Show and style support block inside mobile dropdown menu */
  .menu-support-link {
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
    padding: 12px 16px !important;
    background: var(--ice) !important;
    border-left: 4px solid var(--green) !important;
    color: var(--navy) !important;
    font-weight: 700;
    border-radius: 12px !important;
    transition: background 0.2s ease !important;
  }
  .menu-support-link:hover {
    background: #e6f3ff !important;
    color: var(--blue-deep) !important;
  }
  .menu-support-svg {
    width: 16px;
    height: 16px;
    color: var(--green);
    flex-shrink: 0;
  }
}

@media(max-width: 680px) {
  .nav-menu {
    max-height: calc(100vh - 76px);
  }
}


/* Support phone SVG icon alignment */
.support-phone-svg {
  width: 14px;
  height: 14px;
  color: #fff;
  flex-shrink: 0;
}
.support-pill {
  display: flex;
  align-items: center;
  gap: 8px !important;
}

/* Restricted items page SVG styling */
.restricted-svg {
  width: 20px;
  height: 20px;
  color: #fff;
  display: block;
}
.panel-icon {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* About page values cards hover animation overrides */
.info-card {
  border: 1px solid var(--line);
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease !important;
}
.info-card:hover {
  transform: translateY(-5px);
  border-color: rgba(0, 153, 223, 0.28) !important;
  box-shadow: 0 20px 50px rgba(0, 153, 223, 0.14) !important;
}
/* ==========================================================================
   PRINT STYLES — @media print
   Clean single-page A4 shipment summary. No nav, no hero, no buttons.
   ========================================================================== */
@media print {

  /* Page setup */
  @page {
    size: A4 portrait;
    margin: 8mm 10mm;
  }

  /* --- Kill everything that creates whitespace above the card --- */
  .site-header,
  .page-hero,
  .round-image,
  footer,
  .footer,
  .brand-line,
  .tracking-actions-new,
  #tracking-history,
  #track-fallback,
  .tracking-history-box {
    display: none !important;
  }

  /* Remove the section padding that pushes content down */
  .section {
    padding: 0 !important;
    margin: 0 !important;
  }

  /* The search form area — hide the labels, form, description above results */
  .tracking-page-card > .label,
  .tracking-page-card > h2,
  .tracking-page-card > p,
  .track-form {
    display: none !important;
  }

  /* Remove card background, border and padding — let content sit flush */
  .track-card,
  .tracking-page-card {
    background: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    color: var(--ink) !important;
  }

  /* Remove container/split layout padding */
  .container,
  .page-split {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body {
    margin: 0;
    padding: 0;
    background: #fff !important;
  }

  /* --- Tracking card itself --- */
  .print-invoice-wrapper {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  /* Keep the two-column grid for A4 */
  .tracking-dashboard-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  /* Compress padding on all inner blocks */
  .tracking-header-new {
    padding: 8px 12px !important;
    margin-bottom: 6px !important;
  }

  .tracking-meta-grid-new {
    padding: 8px 12px !important;
    gap: 6px !important;
    margin-bottom: 6px !important;
  }

  .tracking-card-block {
    padding: 8px 12px !important;
    margin-bottom: 6px !important;
  }

  .journey-section {
    padding: 8px 12px !important;
  }

  .specs-grid {
    gap: 4px !important;
  }

  .spec-item {
    padding: 4px 0 !important;
  }

  /* Shrink table so travel history fits on one page */
  .travel-history-table th,
  .travel-history-table td {
    padding: 4px 7px !important;
    font-size: 10.5px !important;
  }

  .travel-history-table th {
    font-size: 10px !important;
  }

  /* Force colour backgrounds to print correctly */
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .tracking-status-badge-new {
    box-shadow: none !important;
  }
}
