/* ============================================================
   ThinkPrime - Smarter Global Logistics
   Shared stylesheet
============================================================ */
:root{
  --navy:#170E3A;--grey:#818A8F;--navy-deep:#120C2E;--navy-ink:#0C0820;
  --orange:#E05206;--orange-soft:#F2792B;
  --light:#F5F7FA;--white:#FFFFFF;--mist:#EAECF5;
  --line:rgba(23,14,58,.10);--line-d:rgba(255,255,255,.12);
  --ink-60:rgba(23,14,58,.62);--ink-45:rgba(23,14,58,.45);
  --w-70:rgba(255,255,255,.72);--w-55:rgba(255,255,255,.55);
  --display:'Mulish',system-ui,sans-serif;--body:'Mulish',system-ui,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace;
  --maxw:1240px;--r:18px;--ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:140px}
body{font-family:var(--body);background:var(--navy-deep);color:var(--navy);line-height:1.6;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5{font-family:var(--display);line-height:1.05;letter-spacing:-.02em;font-weight:700}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600}
.center{text-align:center;margin-left:auto;margin-right:auto}

/* gradient mesh */
.mesh{position:absolute;inset:0;overflow:hidden;z-index:0;background:
  radial-gradient(120% 90% at 12% 18%,#6E2BB0 0%,rgba(110,43,176,0) 46%),
  radial-gradient(95% 80% at 88% 30%,#1C5FC8 0%,rgba(28,95,200,0) 52%),
  radial-gradient(120% 120% at 18% 92%,#C0397E 0%,rgba(192,57,126,0) 44%),
  radial-gradient(120% 120% at 92% 96%,#2E86D6 0%,rgba(46,134,214,0) 50%),
  linear-gradient(160deg,#241A6B 0%,#170F3E 60%,#120C2E 100%)}
.mesh::before{content:"";position:absolute;inset:-30%;background:
  radial-gradient(40% 36% at 30% 40%,rgba(170,70,220,.55),transparent 70%),
  radial-gradient(36% 32% at 70% 60%,rgba(40,120,230,.45),transparent 70%);
  filter:blur(20px);animation:drift 26s var(--ease) infinite alternate}
@keyframes drift{from{transform:translate3d(-3%,-2%,0) rotate(0) scale(1.05)}to{transform:translate3d(4%,3%,0) rotate(6deg) scale(1.18)}}
.grain{position:absolute;inset:0;opacity:.05;mix-blend-mode:overlay;pointer-events:none;z-index:1;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* ---------- top bar ---------- */
.topbar{background:var(--navy-ink);color:var(--w-70);font-size:12.5px;border-bottom:1px solid rgba(255,255,255,.06)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:38px;gap:16px}
.topbar a{color:var(--w-70)}.topbar a:hover{color:#fff}
.topbar .tb-l{display:flex;gap:22px;flex-wrap:wrap}
.topbar .tb-l span{display:inline-flex;gap:7px;align-items:center}
.topbar .tb-l b{color:#fff;font-weight:600}
.topbar .tb-r{display:flex;gap:12px;align-items:center;white-space:nowrap}
.topbar .tb-r .dot{opacity:.4}
.topbar .socs{display:flex;gap:12px}
.topbar .socs a svg{width:15px;height:15px;fill:currentColor;display:block}
@media(max-width:880px){.topbar .tb-l span:not(:first-child){display:none}}

/* ---------- nav ---------- */
header{position:sticky;top:0;z-index:60}
.nav{background:rgba(18,12,46,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-d);transition:.3s}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand svg{height:36px;width:auto;display:block}
.menu{display:flex;align-items:center;gap:4px;list-style:none}
.menu>li{position:relative}
.menu>li>a{display:flex;align-items:center;gap:6px;color:var(--w-70);font-size:14.5px;font-weight:500;padding:10px 14px;border-radius:10px;transition:.2s}
.menu>li>a:hover{color:#fff;background:rgba(255,255,255,.06)}
.menu>li>a .caret{width:9px;height:9px;opacity:.6;transition:.3s}
.menu>li:hover>a .caret{transform:rotate(180deg)}
.dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:260px;background:#171041;border:1px solid var(--line-d);border-radius:14px;padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s var(--ease);box-shadow:0 30px 60px rgba(0,0,0,.45)}
.dropdown.wide{display:grid;grid-template-columns:1fr 1fr;min-width:460px;gap:2px}
.menu>li:hover .dropdown{opacity:1;visibility:visible;transform:none}
.dropdown .grp{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-soft);padding:10px 12px 4px;grid-column:1/-1}
.dropdown a{display:block;color:var(--w-70);font-size:13.5px;padding:9px 12px;border-radius:9px;transition:.18s}
.dropdown a:hover{background:rgba(255,255,255,.07);color:#fff;padding-left:16px}
.nav-cta{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:var(--orange);color:#fff;padding:11px 18px;border-radius:100px;font-weight:600;font-size:14px;transition:.3s var(--ease)}
.nav-cta svg{width:16px;height:16px;flex:none}
.nav-cta:hover{background:var(--orange-soft);transform:translateY(-1px);box-shadow:0 10px 26px rgba(217,90,10,.4)}
.nav-right{display:flex;align-items:center;gap:14px}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.burger span{width:24px;height:2px;background:#fff;transition:.3s}

/* mobile drawer */
.scrim{position:fixed;inset:0;background:rgba(8,6,20,.6);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:.3s;z-index:70}
.scrim.on{opacity:1;visibility:visible}
.mnav{position:fixed;top:0;right:0;height:100%;width:min(360px,86vw);background:#140d36;border-left:1px solid var(--line-d);z-index:80;transform:translateX(100%);transition:.4s var(--ease);overflow-y:auto;padding:22px}
.mnav.on{transform:none}
.mnav__close{position:absolute;top:16px;right:18px;background:none;border:0;color:#fff;font-size:30px;cursor:pointer;line-height:1}
.mnav .brand{margin-bottom:20px}
.mnav a{display:block;color:var(--w-70);font-size:16px;font-weight:500;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.mnav a:hover{color:#fff}
.mnav .grp{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange-soft);margin-top:16px;padding-bottom:4px}
.mnav .sub a{font-size:14px;padding:9px 0 9px 14px;color:var(--w-55)}
.mnav .btn{margin-top:18px}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:100px;font-weight:600;font-size:15px;font-family:var(--body);transition:.3s var(--ease);cursor:pointer;border:0}
.btn svg{width:16px;height:16px}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:var(--orange-soft);transform:translateY(-2px);box-shadow:0 14px 34px rgba(217,90,10,.45)}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.22)}
.btn-ghost:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{background:#2a1d6b;transform:translateY(-2px)}
.btn-block{width:100%;justify-content:center}

/* ---------- sections ---------- */
section{position:relative}
.s-light{background:var(--light);color:var(--navy);padding:104px 0}
.s-white{background:#fff;color:var(--navy);padding:104px 0}
.s-dark{position:relative;color:#fff;padding:110px 0;overflow:hidden}
.s-dark>.wrap{position:relative;z-index:3}
.s-head{max-width:660px;margin-bottom:50px}
.s-head.center{margin-left:auto;margin-right:auto}
.s-head .eyebrow{color:var(--orange);margin-bottom:16px;display:block}
.s-dark .s-head .eyebrow{color:var(--orange-soft)}
.s-head h2{font-size:clamp(30px,4.4vw,48px);font-weight:700}
.s-head p{margin-top:16px;font-size:17px;color:var(--ink-60)}
.s-dark .s-head p{color:var(--w-70)}

/* ---------- page hero (interior pages) ---------- */
.phero{position:relative;color:#fff;padding:120px 0 90px;overflow:hidden;isolation:isolate}
.phero>.wrap{position:relative;z-index:3;max-width:820px}
.phero .crumb{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--w-55);margin-bottom:20px;text-transform:uppercase}
.phero .crumb a:hover{color:#fff}
.phero h1{font-size:clamp(38px,6vw,68px);font-weight:800;letter-spacing:-.035em;line-height:1}
.phero h1 .thin{font-weight:300}
.phero h1 em{font-style:normal;color:transparent;background:linear-gradient(100deg,#EE7A2E,#FFB07A);-webkit-background-clip:text;background-clip:text}
.phero p{font-size:clamp(16px,2vw,20px);color:var(--w-70);max-width:600px;margin-top:22px}
.phero .pcta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}

/* ---------- split rows (service detail) ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.split.rev .media{order:2}
.split .copy h2{font-size:clamp(26px,3.4vw,38px)}
.split .copy>p{margin-top:16px;font-size:16.5px;color:var(--ink-60)}
.split .media img{width:100%;border-radius:var(--r);box-shadow:0 30px 60px rgba(23,14,58,.16);aspect-ratio:4/3;object-fit:cover}
.s-dark .split .copy>p{color:var(--w-70)}
.ticks{list-style:none;margin-top:24px;display:flex;flex-direction:column;gap:13px}
.ticks li{display:flex;gap:13px;font-size:15.5px;align-items:flex-start}
.ticks li .tk{flex:none;width:22px;height:22px;border-radius:7px;background:rgba(217,90,10,.12);display:grid;place-items:center;margin-top:2px}
.ticks li .tk svg{width:13px;height:13px;stroke:var(--orange)}
.s-dark .ticks li .tk{background:rgba(238,122,46,.18)}

/* feature icon grid */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 24px;transition:.35s var(--ease)}
.s-dark .feat{background:rgba(255,255,255,.05);border-color:var(--line-d)}
.feat:hover{transform:translateY(-5px);box-shadow:0 24px 46px rgba(23,14,58,.12)}
.s-dark .feat:hover{box-shadow:none;background:rgba(255,255,255,.09)}
.feat .ic{width:48px;height:48px;border-radius:12px;background:var(--light);display:grid;place-items:center;margin-bottom:18px}
.s-dark .feat .ic{background:rgba(255,255,255,.08)}
.feat .ic svg{width:24px;height:24px;stroke:var(--navy)}
.s-dark .feat .ic svg{stroke:var(--orange-soft)}
.feat h4{font-size:17px;margin-bottom:8px}
.feat p{font-size:14px;color:var(--ink-60)}
.s-dark .feat p{color:var(--w-70)}

/* service overview cards */
.svc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.svc-grid.core{grid-template-columns:repeat(5,1fr)}
.svc-grid.spec{grid-template-columns:repeat(4,1fr);margin-top:18px}
.svc{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 22px;transition:.35s var(--ease)}
.svc:hover{background:var(--navy);color:#fff;transform:translateY(-5px);box-shadow:0 22px 44px rgba(23,14,58,.22)}
.svc .ic{width:46px;height:46px;border-radius:12px;background:var(--light);display:grid;place-items:center;margin-bottom:16px;transition:.35s}
.svc:hover .ic{background:rgba(255,255,255,.1)}
.svc .ic svg{width:23px;height:23px;stroke:var(--navy);transition:.35s}
.svc:hover .ic svg{stroke:var(--orange-soft)}
.svc h4{font-size:16px;font-weight:600;margin-bottom:6px}
.svc p{font-size:13px;color:var(--ink-60);transition:.35s}
.svc:hover p{color:var(--w-70)}
.svc .go{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--orange);margin-top:14px;display:inline-flex;gap:6px;opacity:0;transition:.35s}
.svc:hover .go{opacity:1;color:var(--orange-soft)}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pillar{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:36px 30px;transition:.4s var(--ease);position:relative;overflow:hidden}
.pillar::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--orange);transition:.5s var(--ease)}
.pillar:hover{transform:translateY(-6px);box-shadow:0 26px 50px rgba(23,14,58,.10)}
.pillar:hover::before{width:100%}
.pillar .pk{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--orange);margin-bottom:16px}
.pillar h3{font-size:24px;margin-bottom:10px}
.pillar h3 .t{font-weight:300;color:var(--ink-60)}
.pillar p{font-size:15px;color:var(--ink-60)}

/* chips */
.chips{display:flex;flex-wrap:nowrap;gap:10px;align-items:center;overflow-x:auto;overflow-y:hidden;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.chips::-webkit-scrollbar{height:6px}.chips::-webkit-scrollbar-thumb{background:rgba(23,14,58,.18);border-radius:10px}
.chips.center{justify-content:flex-start}
.chips-label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-60);margin-bottom:14px;display:block}
.s-dark .chips-label{color:var(--w-55)}
.chips .lbl{display:none}
.chip{font-size:13.5px;font-weight:500;padding:9px 16px;border:1px solid var(--line);border-radius:100px;background:#fff;color:var(--navy);white-space:nowrap;transition:.3s var(--ease)}
.s-dark .chip{background:rgba(255,255,255,.92);color:var(--navy);border-color:transparent}
.chip:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px)}

/* stat band */
.band{background:var(--navy);color:#fff;padding:74px 0}
.band .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center}
.band .st b{font-family:var(--display);font-size:clamp(32px,5vw,52px);font-weight:800;letter-spacing:-.03em;display:block}
.band .st b em{font-style:normal;color:var(--orange-soft)}
.band .st span{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-55);margin-top:8px;display:block}

/* logos / marquee */
.marq-wrap{padding:64px 0;background:#fff;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.marq-lab{text-align:center;font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-60);margin-bottom:44px}
.marquee{display:flex;gap:70px;width:max-content;animation:scrollx 40s linear infinite;align-items:center}
.marquee:hover{animation-play-state:paused}
@keyframes scrollx{to{transform:translateX(-50%)}}
.marquee img{height:58px;width:auto;max-width:170px;object-fit:contain;opacity:.95;filter:none;transition:.3s}
.marquee img:hover{opacity:1;transform:scale(1.06)}
.marquee .it{font-family:var(--display);font-weight:600;font-size:18px;color:var(--navy);opacity:.5;white-space:nowrap;display:flex;align-items:center;gap:10px}
.marquee .it .badge{font-family:var(--mono);font-size:10px;border:1px solid var(--line);border-radius:100px;padding:4px 10px}

/* FAQ accordion */
.faq{max-width:840px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.qa{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.3s}
.s-dark .qa,.s-light .qa{background:#fff}
.qa[open]{box-shadow:0 16px 36px rgba(23,14,58,.08);border-color:transparent}
.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;font-family:var(--display);font-weight:600;font-size:16.5px;color:var(--navy)}
.qa summary::-webkit-details-marker{display:none}
.qa .ico{flex:none;width:24px;height:24px;border-radius:50%;background:var(--light);position:relative;transition:.3s}
.qa .ico::before,.qa .ico::after{content:"";position:absolute;background:var(--orange);border-radius:2px;top:50%;left:50%;transform:translate(-50%,-50%)}
.qa .ico::before{width:11px;height:2px}.qa .ico::after{width:2px;height:11px;transition:.3s}
.qa[open] .ico{background:var(--orange)}
.qa[open] .ico::before{background:#fff}.qa[open] .ico::after{transform:translate(-50%,-50%) scaleY(0)}
.qa .a{padding:0 24px 22px;color:var(--ink-60);font-size:15px}
.qa .a p{margin-bottom:10px}

/* team */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.tm{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.4s var(--ease)}
.tm:hover{transform:translateY(-5px);box-shadow:0 26px 50px rgba(23,14,58,.12)}
.tm .ph{aspect-ratio:1;position:relative;overflow:hidden;display:grid;place-items:center}
.tm .ph img{width:100%;height:100%;object-fit:cover}
.tm .ph .ini{font-family:var(--display);font-weight:800;font-size:38px;color:#fff}
.tm .bd{padding:20px}
.tm h4{font-size:18px;margin-bottom:3px}
.tm .role{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.tm p{font-size:13.5px;color:var(--ink-60)}
.tm .li{margin-top:14px;display:inline-flex;width:32px;height:32px;border-radius:9px;background:#0A66C2;place-items:center}
.tm .li svg{width:17px;height:17px;fill:#fff}

/* offices / contact cards */
.offices{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.office{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;transition:.4s var(--ease)}
.office:hover{transform:translateY(-5px);box-shadow:0 26px 50px rgba(23,14,58,.12)}
.office .top{height:158px;position:relative;overflow:hidden}
.office .top img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:16px;box-sizing:border-box}
.office .top .gl{position:absolute;bottom:11px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;color:#fff;text-transform:uppercase;background:rgba(12,8,32,.55);padding:6px 14px;border-radius:100px;backdrop-filter:blur(4px);white-space:nowrap}
.office .top.o1{background:linear-gradient(135deg,#241A6B,#5B2A93)}
.office .top.o2{background:linear-gradient(135deg,#1C5FC8,#2E86D6)}
.office .top.o3{background:linear-gradient(135deg,#7B2FA0,#C0397E)}
.office .bd{padding:24px}
.office h4{font-size:20px;margin-bottom:10px}
.office .row{font-size:14px;color:var(--ink-60);display:flex;gap:9px;margin-bottom:9px}
.office .row svg{width:16px;height:16px;stroke:var(--orange);flex:none;margin-top:3px}
.office a.dir{color:var(--orange);font-weight:600;font-size:13.5px;display:inline-flex;gap:6px;margin-top:8px}

/* insights cards */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pcard{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.4s var(--ease);display:flex;flex-direction:column}
.pcard:hover{transform:translateY(-6px);box-shadow:0 28px 54px rgba(23,14,58,.14)}
.pcard .img{aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,#241A6B,#5B2A93)}
.pcard .img img{width:100%;height:100%;object-fit:cover;transition:.6s var(--ease)}
.pcard:hover .img img{transform:scale(1.06)}
.pcard .bd{padding:24px;flex:1;display:flex;flex-direction:column}
.pcard .tag{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.pcard h3{font-size:19px;margin-bottom:10px;line-height:1.2}
.pcard p{font-size:14px;color:var(--ink-60);flex:1}
.pcard .rm{color:var(--orange);font-weight:600;font-size:13px;margin-top:16px;display:inline-flex;gap:6px}

/* instagram grid */
.social-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:42px}
.social-head .ig-h{display:flex;align-items:center;gap:16px}
.ig-badge{width:54px;height:54px;border-radius:16px;background:linear-gradient(45deg,#F09433,#E6683C 30%,#DC2743 55%,#CC2366 75%,#BC1888);display:grid;place-items:center;flex:none}
.ig-badge svg{width:28px;height:28px;stroke:#fff}
.social-head h3{font-size:23px}
.social-head .handle{font-family:var(--mono);font-size:13px;color:var(--ink-60)}
.s-dark .social-head .handle{color:var(--w-55)}
.ig-follow{display:inline-flex;align-items:center;gap:9px;background:var(--navy);color:#fff;padding:12px 22px;border-radius:100px;font-weight:600;font-size:14px;transition:.3s var(--ease)}
.ig-follow:hover{background:var(--orange);transform:translateY(-2px);box-shadow:0 12px 28px rgba(217,90,10,.35)}
.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ig-cell{position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;display:block;isolation:isolate;background:linear-gradient(135deg,#241A6B,#5B2A93)}
.ig-cell img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.6s var(--ease)}
.ig-cell:hover img{transform:scale(1.08)}
.ig-cell .lab{position:absolute;left:0;right:0;bottom:0;padding:16px 14px 14px;z-index:3;background:linear-gradient(transparent,rgba(12,8,32,.85));color:#fff;font-size:13px;font-weight:600;font-family:var(--display)}
.ig-cell .ov{position:absolute;inset:0;z-index:2;background:rgba(23,14,58,0);display:grid;place-items:center;transition:.35s}
.ig-cell:hover .ov{background:rgba(23,14,58,.42)}
.ig-cell .ov svg{width:30px;height:30px;stroke:#fff;opacity:0;transform:scale(.7);transition:.35s}
.ig-cell:hover .ov svg{opacity:1;transform:scale(1)}

/* linkedin */
.li-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:start}
.li-card{background:rgba(255,255,255,.05);border:1px solid var(--line-d);border-radius:var(--r);padding:36px;display:flex;flex-direction:column}
.li-top{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.li-mark{width:56px;height:56px;border-radius:14px;background:#0A66C2;display:grid;place-items:center;flex:none}
.li-mark svg{width:30px;height:30px;fill:#fff}
.li-top h3{font-size:20px}
.li-top .sub{font-family:var(--mono);font-size:12px;color:var(--w-55)}
.li-card>p{font-size:15px;color:var(--w-70);margin-bottom:22px}
.li-topics{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.li-topics span{font-size:12px;font-family:var(--mono);letter-spacing:.04em;color:var(--w-70);background:rgba(255,255,255,.06);border:1px solid var(--line-d);border-radius:100px;padding:7px 13px}
.li-meta{display:flex;gap:24px;margin-bottom:26px}
.li-meta .m b{font-family:var(--display);font-size:22px;font-weight:700;display:block}
.li-meta .m span{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--w-55)}
.li-btn{margin-top:8px;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#0A66C2;color:#fff;padding:14px 24px;border-radius:100px;font-weight:600;font-size:14.5px;transition:.3s var(--ease)}
.li-btn:hover{background:#0d7ae0;transform:translateY(-2px);box-shadow:0 12px 28px rgba(10,102,194,.4)}
.li-btn svg{width:18px;height:18px;flex:none}
.li-mark svg{width:28px;height:28px}
.li-feed{display:flex;flex-direction:column;gap:14px}
.post{display:grid;grid-template-columns:54px 1fr;gap:16px;background:rgba(255,255,255,.04);border:1px solid var(--line-d);border-radius:14px;padding:20px;transition:.3s var(--ease)}
.post:hover{background:rgba(255,255,255,.07);transform:translateX(4px)}
.post .av{width:54px;height:54px;border-radius:11px;display:grid;place-items:center;font-family:var(--display);font-weight:700;color:#fff;font-size:13px;overflow:hidden}
.post .av img{width:100%;height:100%;object-fit:cover}
.post .av.a1{background:linear-gradient(135deg,#241A6B,#5B2A93)}
.post .av.a2{background:linear-gradient(135deg,#1C5FC8,#2E86D6)}
.post .av.a3{background:linear-gradient(135deg,#7B2FA0,#C0397E)}
.post .meta{font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--w-55);margin-bottom:6px}
.post h4{font-size:16px;margin-bottom:6px}
.post p{font-size:13.5px;color:var(--w-70)}
.post .rm{color:var(--orange-soft);font-weight:600;font-size:12.5px;margin-top:10px;display:inline-flex;gap:6px;white-space:nowrap}

/* device / dashboard mock */
.device{background:#0F0A26;border:1px solid rgba(255,255,255,.14);border-radius:16px;box-shadow:0 40px 90px rgba(0,0,0,.5);overflow:hidden}
.dev-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;background:#160F38;border-bottom:1px solid rgba(255,255,255,.08)}
.dev-bar i{width:10px;height:10px;border-radius:50%;display:block}
.dev-bar i:nth-child(1){background:#E0533D}.dev-bar i:nth-child(2){background:#E0A23D}.dev-bar i:nth-child(3){background:#3DBE6B}
.dev-bar .url{margin-left:10px;font-family:var(--mono);font-size:10.5px;color:var(--w-55);background:#0F0A26;border-radius:6px;padding:5px 12px}
.ui{background:#13102E;color:#fff;padding:18px;font-size:12px}
.ui-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.ui-top .hi{font-family:var(--display);font-weight:600;font-size:15px}
.ui-top .badge{font-family:var(--mono);font-size:9px;letter-spacing:.12em;background:rgba(238,122,46,.16);color:var(--orange-soft);padding:5px 10px;border-radius:100px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.kpi{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:11px}
.kpi .l{font-size:9.5px;color:var(--w-55);margin-bottom:8px}
.kpi .v{font-family:var(--display);font-weight:700;font-size:20px}
.kpi .u{font-family:var(--mono);font-size:8px;color:var(--w-55)}
.kpi.acc .v{color:var(--orange-soft)}
.ui-low{display:grid;grid-template-columns:1.1fr 1fr;gap:10px}
.panel{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:13px}
.panel .ph{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--w-70);margin-bottom:12px}
.panel .ph b{font-weight:600;color:#fff;font-size:11px}
.donut{display:flex;align-items:center;gap:14px}
.donut .ring{width:78px;height:78px;border-radius:50%;background:conic-gradient(#7B6CF0 0 54%,#EE7A2E 54% 77%,#9aa0c9 77% 100%);display:grid;place-items:center;flex:none}
.donut .ring::after{content:"123";font-family:var(--display);font-weight:700;font-size:15px;width:50px;height:50px;background:#13102E;border-radius:50%;display:grid;place-items:center}
.lg{display:flex;flex-direction:column;gap:7px;font-size:9.5px;color:var(--w-70)}
.lg i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:7px}
.timeline{display:flex;flex-direction:column;gap:11px}
.tl{display:flex;gap:9px;font-size:9.5px}
.tl .d{width:9px;height:9px;border-radius:50%;flex:none;margin-top:2px;background:#5b87ff}
.tl.ok .d{background:#3DBE6B}
.tl .loc{color:var(--w-55);font-size:8.5px}
.tl b{font-weight:600;color:#fff;font-size:9.5px}

/* cta band */
.cta-band{padding:108px 0;color:#fff;text-align:center;position:relative;overflow:hidden}
.cta-band>.wrap{position:relative;z-index:3}
.cta-band h2{font-size:clamp(30px,5vw,54px);font-weight:800;letter-spacing:-.03em}
.cta-band h2 em{font-style:normal;color:var(--orange-soft)}
.cta-band p{font-size:18px;color:var(--w-70);max-width:520px;margin:18px auto 34px}
.cta-band .pcta{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}

/* forms */
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .full{grid-column:1/-1}
.field label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;color:var(--navy)}
.field input,.field select,.field textarea{width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:11px;font-family:var(--body);font-size:14.5px;background:#fff;color:var(--navy);transition:.2s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(217,90,10,.12)}
.field textarea{resize:vertical;min-height:120px}

/* footer */
footer{background:var(--navy-deep);color:#fff;padding:74px 0 38px}
.f-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:36px;padding-bottom:46px;border-bottom:1px solid var(--line-d)}
.f-brand .brand-svg{height:38px;margin-bottom:18px}
.f-brand p{font-size:14px;color:var(--w-55);max-width:290px;margin-bottom:18px}
.f-brand .socs{display:flex;gap:10px}
.f-brand .socs a{width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.06);display:grid;place-items:center;transition:.3s var(--ease)}
.f-brand .socs a:hover{transform:translateY(-3px)}
.f-brand .socs a.s-li:hover{background:#0A66C2}
.f-brand .socs a.s-fb:hover{background:#1877F2}
.f-brand .socs a.s-x:hover{background:#000}
.f-brand .socs a.s-tt:hover{background:#000}
.f-brand .socs a.s-ig:hover{background:linear-gradient(45deg,#F09433,#E6683C 28%,#DC2743 52%,#CC2366 74%,#BC1888)}
.f-brand .socs svg{width:19px;height:19px;fill:#fff;display:block;margin:0;grid-area:1/1}
.f-col h5{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-soft);margin-bottom:18px}
.f-col a{display:block;color:var(--w-70);font-size:14px;margin-bottom:11px;transition:.25s}
.f-col a:hover{color:#fff;padding-left:4px}
.f-bot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding-top:26px}
.f-bot .cc{font-size:13px;color:var(--w-55)}
.f-bot .lk{display:flex;gap:18px;font-size:13px;color:var(--w-55)}
.f-bot .lk a:hover{color:#fff}

/* reveal */
.rv{opacity:0;transform:translateY(28px);transition:.8s var(--ease)}
.rv.in{opacity:1;transform:none}
.rv[data-d="1"]{transition-delay:.08s}.rv[data-d="2"]{transition-delay:.16s}.rv[data-d="3"]{transition-delay:.24s}.rv[data-d="4"]{transition-delay:.32s}.rv[data-d="5"]{transition-delay:.4s}

/* utilities */
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.prose p{font-size:16.5px;color:var(--ink-60);margin-bottom:16px}
.s-dark .prose p{color:var(--w-70)}
.divider-wave{display:block;width:100%;height:50px}

/* responsive */
@media(max-width:1040px){
  .svc-grid,.svc-grid.core{grid-template-columns:repeat(3,1fr)}
  .team-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:920px){
  .menu,.nav-cta{display:none}.burger{display:flex}
  .split,.li-wrap,.lead-grid{grid-template-columns:1fr;gap:34px}
  .split.rev .media{order:0}
  .feat-grid{grid-template-columns:repeat(2,1fr)}
  .pillars,.offices,.posts,.band .grid{grid-template-columns:1fr}
  .band .grid{gap:36px}
  .svc-grid,.svc-grid.core,.svc-grid.spec{grid-template-columns:repeat(2,1fr)}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
  .f-top{grid-template-columns:1fr 1fr 1fr}
  .form{grid-template-columns:1fr}
}
@media(max-width:560px){
  .feat-grid,.svc-grid,.svc-grid.core,.svc-grid.spec,.team-grid,.ig-grid,.f-top{grid-template-columns:1fr}
  .band .grid{grid-template-columns:1fr 1fr}
  .s-light,.s-white{padding:74px 0}.s-dark{padding:78px 0}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
}

/* ---- additional page components ---- */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc-grid.core{grid-template-columns:repeat(5,1fr)}
@media(max-width:1000px){.svc-grid,.svc-grid.core{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.svc-grid,.svc-grid.core{grid-template-columns:1fr}}

.cli-strip{display:flex;align-items:center;gap:30px;flex-wrap:wrap;justify-content:center;padding:8px 0}
.cli-strip .cli-lab{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-45)}
.cli-strip .cli{font-family:var(--display);font-weight:700;font-size:clamp(16px,2vw,22px);color:var(--navy);opacity:.55;transition:opacity .3s}
.cli-strip .cli:hover{opacity:1}

.chips.center{flex-wrap:wrap;gap:10px}

.tline{max-width:780px;margin:0 auto;position:relative}
.tline:before{content:"";position:absolute;left:88px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--orange),rgba(255,255,255,.08))}
.tl-item{display:grid;grid-template-columns:70px 1fr;column-gap:46px;padding:14px 0;position:relative}
.tl-item .yr{font-family:var(--mono);font-weight:600;color:var(--orange-soft);font-size:15px;text-align:right;padding-top:2px}
.tl-item:after{content:"";position:absolute;left:82px;top:21px;width:14px;height:14px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(217,90,10,.18)}
.tl-item .tl-bd h4{color:#fff;font-size:18px;margin-bottom:4px}
.tl-item .tl-bd p{color:var(--w-55);font-size:14px}
@media(max-width:560px){.tline:before{left:50px}.tl-item{grid-template-columns:40px 1fr;column-gap:30px}.tl-item .yr{font-size:13px}.tl-item:after{left:44px}}

.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,1fr)}}
.tm{text-align:center}
.tm-ph{position:relative;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:linear-gradient(140deg,#241a55,#3a2a86);display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:var(--sh)}
.tm-ph img{width:100%;height:100%;object-fit:cover}
.tm-ph .ini{font-family:var(--display);font-weight:700;font-size:40px;color:#fff;opacity:.92}
.tm-li{position:absolute;right:10px;bottom:10px;width:32px;height:32px;border-radius:9px;background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.2);transition:transform .2s}
.tm-li svg{width:17px;height:17px}
.tm-li:hover{transform:translateY(-2px);background:var(--orange);color:#fff}
.tm h4{font-size:16px}
.tm .role{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--orange)}

.ins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.ins-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.ins-grid{grid-template-columns:1fr}}
.ins{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);transition:transform .25s,box-shadow .25s}
.ins:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(18,12,46,.16)}
.ins-img{position:relative;aspect-ratio:16/10;overflow:hidden}
.ins-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ins:hover .ins-img img{transform:scale(1.06)}
.ins-img .tag{position:absolute;left:12px;top:12px;background:rgba(18,12,46,.82);color:#fff;font-family:var(--mono);font-size:10px;letter-spacing:.14em;padding:5px 10px;border-radius:6px}
.ins-bd{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1}
.ins-bd h4{font-size:18px;line-height:1.25;margin-bottom:8px}
.ins-bd p{color:var(--ink-60);font-size:14px;flex:1}
.ins-bd .rm{margin-top:14px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--orange);display:inline-flex;align-items:center;gap:6px}
.ins-bd .rm svg{width:15px;height:15px}

.reach{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.reach-row{display:flex;align-items:center;gap:16px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh);transition:transform .2s,border-color .2s}
.reach-row:hover{transform:translateX(4px);border-color:var(--orange)}
.reach-row .ic{width:42px;height:42px;border-radius:11px;background:var(--light);display:flex;align-items:center;justify-content:center;flex:none}
.reach-row .ic svg{width:21px;height:21px;stroke:var(--navy);fill:none}
.reach-row b{display:block;font-size:15px;color:var(--navy)}
.reach-row span{font-size:13px;color:var(--ink-60)}
.reach-row>svg{width:18px;height:18px;margin-left:auto;color:var(--orange);flex:none}

.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.frow{grid-template-columns:1fr}}
.fnote{font-family:var(--mono);font-size:11px;color:var(--ink-45);text-align:center;margin-top:12px}

.faq-page{max-width:840px;margin:0 auto;display:flex;flex-direction:column;gap:34px}
.faq-cat{font-size:14px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}

.login-wrap{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:120px 22px 60px;overflow:hidden;background:var(--navy-deep)}
.login-card{position:relative;z-index:4;width:100%;max-width:440px;background:rgba(255,255,255,.04);border:1px solid var(--line-d);backdrop-filter:blur(8px);border-radius:22px;padding:40px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.login-card .brand svg{height:48px;width:auto}
.login-card h1{color:#fff;font-size:30px;margin-bottom:10px}
.login-card>p{color:var(--w-70);font-size:15px;margin-bottom:26px}
.login-alt{margin-top:20px;font-size:13px;color:var(--w-55)}
.login-alt a{color:var(--orange-soft)}

/* real logo image */
.brand img{height:38px;width:auto;display:block}
.f-brand img{height:40px;width:auto;margin-bottom:18px}
.mnav .brand img{height:34px}
.login-card .brand img{height:46px;margin:0 auto 6px}

/* logo mark (real png + svg wordmark fallback) */
.brand-mark{display:inline-flex;align-items:center;line-height:0}
.brand-mark img{height:38px;width:auto;display:block}
.brand-svg{height:30px;width:auto}
.f-brand .brand-mark img{height:42px}
.f-brand .brand-svg{height:34px}
.mnav .brand-mark img{height:34px}
.login-card .brand-mark{justify-content:center}
.login-card .brand-mark img{height:48px}

/* real dashboard screenshot frame */
.winshot{border-radius:16px;overflow:hidden;background:#0c1322;border:1px solid rgba(255,255,255,.12);box-shadow:0 30px 70px rgba(0,0,0,.5)}
.winshot .win-bar{display:flex;align-items:center;gap:14px;padding:11px 15px;background:#141b2c;border-bottom:1px solid rgba(255,255,255,.07)}
.winshot .wd{display:flex;gap:7px}
.winshot .wd i{width:11px;height:11px;border-radius:50%}
.winshot .wd i:nth-child(1){background:#ff5f57}
.winshot .wd i:nth-child(2){background:#febc2e}
.winshot .wd i:nth-child(3){background:#28c840}
.winshot .wu{font-family:var(--mono);font-size:12px;color:var(--w-55);background:rgba(0,0,0,.28);padding:5px 14px;border-radius:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.winshot .win-body{line-height:0;position:relative}
.winshot .win-body img{width:100%;display:block}
.winshot.tall .win-body{max-height:600px;overflow:hidden}
.winshot.tall .win-body:after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(transparent,#0c1322);pointer-events:none}

.tlink{color:var(--orange);font-weight:600;display:inline-flex;align-items:center;gap:6px;vertical-align:middle}
.tlink svg{width:16px;height:16px;flex:none}
.tlink:hover{color:var(--orange-soft)}

/* ============================================================
   ThinkPrime — nav tagline, premium hero stage, counter  [v2]
============================================================ */
/* --- tagline centred under logo --- */
.brand--stacked{display:inline-flex;flex-direction:column;align-items:center;gap:4px;line-height:1}
.brand-tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--w-55);white-space:nowrap;text-align:center}
.mnav .brand{margin-bottom:20px}.mnav .brand--stacked{gap:5px;align-items:center}
@media(max-width:420px){.brand-tag{display:none}}

/* --- hero layout --- */
.hero-home{position:relative;min-height:94vh;display:flex;align-items:center;padding:120px 0 72px;overflow:hidden;isolation:isolate}
.netfield{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:.85}
.phero-veil{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(120% 95% at 80% 38%,rgba(238,122,46,.12),transparent 52%),
             linear-gradient(180deg,rgba(18,12,46,.25),rgba(18,12,46,.55))}
.hero-home>.wrap.hero-grid{max-width:var(--maxw);width:100%}
.hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:48px;align-items:center}
.hero-copy{max-width:620px}
.hero-copy h1{font-size:clamp(40px,5.4vw,74px);font-weight:800;line-height:.98;letter-spacing:-.035em;color:#fff}
.hero-copy h1 .thin{font-weight:300}
.hero-copy h1 em{font-style:normal;color:transparent;background:linear-gradient(100deg,#EE7A2E,#FFB07A);-webkit-background-clip:text;background-clip:text}
.hero-copy p{font-size:clamp(16px,1.5vw,20px);color:var(--w-70);max-width:540px;margin:24px 0 32px}
.hero-stats{display:flex;gap:30px;margin-top:46px;flex-wrap:wrap}
.hero-stats>div{text-align:center;min-width:104px}
.hero-stats b{display:block;font-family:var(--display);font-size:30px;font-weight:700;color:#fff}
.hero-stats span{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-55);margin-top:4px;display:block}

/* --- premium glass card --- */
.hero-stage{position:relative;justify-self:end;width:100%;max-width:560px;perspective:1200px}
.stage-card{position:relative;border-radius:22px;padding:16px;overflow:hidden;
  background:linear-gradient(155deg,rgba(42,30,98,.74),rgba(15,10,38,.6));
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 60px 120px -34px rgba(0,0,0,.78),inset 0 1px 0 rgba(255,255,255,.1);
  backdrop-filter:blur(16px) saturate(125%);-webkit-backdrop-filter:blur(16px) saturate(125%);
  will-change:transform;transform-style:preserve-3d}
@keyframes cardfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.stage-card::before{content:"";position:absolute;inset:0;border-radius:22px;padding:1px;
  background:linear-gradient(140deg,rgba(238,122,46,.55),transparent 38%,transparent 66%,rgba(120,130,255,.4));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.7;pointer-events:none}

.card-head{display:flex;align-items:center;gap:10px;padding:4px 6px 13px}
.card-head .pdot{width:9px;height:9px;border-radius:50%;background:var(--orange-soft);box-shadow:0 0 14px var(--orange-soft);animation:livepulse 1.8s infinite}
.card-head .ctitle{font-family:var(--display);font-size:14.5px;color:#fff;font-weight:400}.card-head .ctitle b{font-weight:700}
.card-head .cstatus{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:#5fe0d0;border:1px solid rgba(95,224,208,.35);border-radius:100px;padding:4px 11px}
.card-head .dotlive{width:6px;height:6px;border-radius:50%;background:#5fe0d0;box-shadow:0 0 10px #5fe0d0;animation:livepulse 1.4s infinite}
@keyframes livepulse{0%,100%{opacity:1}50%{opacity:.32}}

.mode-tabs{position:relative;display:flex;gap:0;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:4px;margin:0 6px}
.mtab{position:relative;z-index:2;flex:1;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--w-55);background:none;border:0;border-radius:9px;padding:9px 0;cursor:pointer;transition:color .35s}
.mtab.is-on{color:#fff}
.mtab-ind{position:absolute;z-index:1;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/3);border-radius:9px;
  background:linear-gradient(120deg,var(--orange),var(--orange-soft));box-shadow:0 8px 22px rgba(217,90,10,.5);
  transform:translateX(0);transition:transform .5s var(--ease)}

.stage-view{position:relative;height:214px;margin:14px 6px 0;border-radius:14px;overflow:hidden;
  background:radial-gradient(130% 150% at 72% -10%,rgba(64,48,150,.4),rgba(9,6,26,.55))}
.scene{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.04);filter:blur(6px);
  transition:opacity .42s var(--ease),transform .5s var(--ease),filter .42s var(--ease)}
.scene.is-on{opacity:1;transform:none;filter:none}
.scene svg{width:100%;height:100%;display:block}

.sprog{position:absolute;left:14px;right:14px;bottom:12px;z-index:3}
.sprog .srow{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;color:var(--w-70);margin-bottom:6px}
.sprog .srow .st-st{color:var(--orange-soft);white-space:nowrap}
.sprog .bar{height:4px;border-radius:3px;background:rgba(255,255,255,.13);overflow:hidden}
.sprog .fill{display:block;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,var(--orange),var(--orange-soft));box-shadow:0 0 10px rgba(238,122,46,.6);transition:width 1.6s var(--ease)}

.card-foot{display:flex;gap:8px;margin:13px 6px 4px}
.metric{flex:1;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:11px;padding:10px 12px}
.metric .ml{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--w-55)}
.metric .mv{display:block;font-family:var(--display);font-weight:700;font-size:18px;color:#fff;margin-top:3px}

/* air scene */
.air-map .stars circle{fill:rgba(255,255,255,.5);animation:twinkle 3s ease-in-out infinite}
.air-map .stars circle:nth-child(2){animation-delay:.6s}.air-map .stars circle:nth-child(4){animation-delay:1.2s}.air-map .stars circle:nth-child(5){animation-delay:1.8s}
@keyframes twinkle{0%,100%{opacity:.25}50%{opacity:.9}}
.air-map .arc-glow{stroke:rgba(238,122,46,.28);stroke-width:7;filter:blur(2.5px)}
.air-map .arc{stroke:var(--orange-soft);stroke-width:2;stroke-dasharray:5 8;stroke-linecap:round;animation:dashflow 1.1s linear infinite}
.air-map .arc-spark{stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:20 620;filter:drop-shadow(0 0 6px #fff);animation:spark 4.6s linear infinite}
@keyframes dashflow{to{stroke-dashoffset:-26}}
@keyframes spark{from{stroke-dashoffset:0}to{stroke-dashoffset:-640}}
.air-map .node .core{fill:#fff}.air-map .node .core.hub{fill:var(--orange-soft);filter:drop-shadow(0 0 8px var(--orange-soft))}
.air-map .node .ring{fill:none;stroke:var(--orange-soft);stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:ripple 2.6s ease-out infinite}
.air-map .n-b .ring{animation-delay:1.3s}
@keyframes ripple{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.6);opacity:0}}
.air-map .plane{offset-path:path("M58 150 Q240 6 430 96");offset-rotate:auto;animation:fly 4.6s cubic-bezier(.45,0,.55,1) infinite;filter:drop-shadow(0 3px 6px rgba(0,0,0,.55))}
@keyframes fly{0%{offset-distance:0%;opacity:0}7%{opacity:1}93%{opacity:1}100%{offset-distance:100%;opacity:0}}

/* sea scene */
.sea-map .clouds ellipse{fill:rgba(255,255,255,.06);animation:drift2 16s linear infinite}
.sea-map .clouds ellipse:nth-child(2){animation-duration:22s}
@keyframes drift2{from{transform:translateX(0)}to{transform:translateX(60px)}}
.sea-map .route-dash{stroke:rgba(95,224,208,.5);stroke-width:1.6;stroke-dasharray:3 6;animation:dashflow 1.4s linear infinite}
.sea-map .ship{transform-origin:218px 110px;animation:bob 4.4s ease-in-out infinite}
.sea-map .wake path{animation:wakefade 2s ease-in-out infinite}
@keyframes wakefade{0%,100%{opacity:.5}50%{opacity:.15}}
.sea-map .wave{fill:none}
.sea-map .w1{fill:rgba(51,198,182,.32);animation:swell 7s linear infinite}
.sea-map .w2{fill:rgba(51,198,182,.2);animation:swell 9.5s linear infinite reverse}
.sea-map .w3{fill:rgba(111,123,247,.16);animation:swell 12s linear infinite}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-6px) rotate(1.2deg)}}
@keyframes swell{to{transform:translateX(-240px)}}

/* rail scene */
.rail-map .hills{animation:railscroll 9s linear infinite}
.rail-map .poles{animation:railscroll 2.4s linear infinite}
.rail-map .sleepers{animation:railscroll 1.1s linear infinite}
.rail-map .speed line{stroke:rgba(255,255,255,.35);stroke-width:2;stroke-linecap:round;animation:zoom 1s linear infinite}
.rail-map .speed line:nth-child(2){animation-delay:.3s}.rail-map .speed line:nth-child(3){animation-delay:.6s}
.rail-map .train{transform-origin:center;animation:railbob 2.2s ease-in-out infinite}
.rail-map .wheels circle{animation:none}
@keyframes railscroll{from{transform:translateX(0)}to{transform:translateX(-160px)}}
@keyframes zoom{0%{opacity:0;transform:translateX(20px)}30%{opacity:1}100%{opacity:0;transform:translateX(-60px)}}
@keyframes railbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes roll{to{transform:rotate(360deg)}}

@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:40px}
  .hero-copy{max-width:none}
  .hero-stage{justify-self:start;max-width:520px}
}
@media(max-width:560px){.card-foot{flex-wrap:wrap}.metric{min-width:30%}}

/* --- count-up counter --- */
.counter{background:var(--navy);color:#fff;padding:78px 0}
.s-head.center{text-align:center;max-width:640px;margin:0 auto 46px}
.counter .s-head h2{color:#fff;font-size:clamp(26px,3.4vw,38px)}
.counter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.cstat{display:flex;flex-direction:column;align-items:center;text-align:center}
.ring{position:relative;width:140px;height:140px}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring-bg{fill:none;stroke:rgba(255,255,255,.1);stroke-width:5}
.ring-fg{fill:none;stroke:var(--orange-soft);stroke-width:5;stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:326.7;filter:drop-shadow(0 0 6px rgba(238,122,46,.5));transition:stroke-dashoffset 1.7s var(--ease)}
.counter.in .ring-fg{stroke-dashoffset:36}
.cnum{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:1px;font-family:var(--display);font-weight:800;font-size:38px;letter-spacing:-.02em}
.cnum em{font-style:normal;color:var(--orange-soft)}.cnum.static{font-size:30px}
.clabel{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-55);margin-top:16px;max-width:160px}
.counter-foot{text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--w-55);margin-top:42px}
@media(max-width:760px){.counter-grid{grid-template-columns:repeat(2,1fr);gap:34px 20px}.ring{width:120px;height:120px}.cnum{font-size:32px}}

@media(prefers-reduced-motion:reduce){
  .stage-card,.air-map *,.sea-map *,.rail-map *,.card-head .pdot,.card-head .dotlive,.mtab-ind{animation:none!important}
  .scene{transition:opacity .3s}.ring-fg{transition:none}
}

/* ---- ship & train detailing + odometer (v3) ---- */
.sea-map .reflection{opacity:.16;animation:shimmer 5s ease-in-out infinite}
@keyframes shimmer{0%,100%{opacity:.16;transform:scaleY(1)}50%{opacity:.08;transform:scaleY(.94)}}
.sea-map .flag{transform-origin:158px 77px;animation:flutter 1.4s ease-in-out infinite}
@keyframes flutter{0%,100%{transform:skewY(0) scaleX(1)}50%{transform:skewY(-6deg) scaleX(.9)}}
.sea-map .smoke circle{fill:rgba(220,224,240,.5);transform-origin:center;animation:smokeup 3.2s ease-out infinite}
.sea-map .smoke circle:nth-child(2){animation-delay:1s}.sea-map .smoke circle:nth-child(3){animation-delay:2s}
@keyframes smokeup{0%{opacity:0;transform:translate(0,0) scale(.4)}25%{opacity:.55}100%{opacity:0;transform:translate(-22px,-34px) scale(1.5)}}
.sea-map .spray circle{fill:rgba(255,255,255,.55);transform-origin:center;animation:spray 1.6s ease-out infinite}
.sea-map .spray circle:nth-child(2){animation-delay:.3s}.sea-map .spray circle:nth-child(3){animation-delay:.6s}
@keyframes spray{0%{opacity:0;transform:translate(0,0) scale(.5)}30%{opacity:.7}100%{opacity:0;transform:translate(-10px,-10px) scale(1.3)}}
.sea-map .birds{transform:translate(70px,34px);animation:birdcross 14s linear infinite}
.sea-map .bird{fill:none;stroke:rgba(255,255,255,.45);stroke-width:1.6;stroke-linecap:round;animation:flap .5s ease-in-out infinite}
.sea-map .bird.b2{transform:translate(26px,12px);stroke-width:1.3;animation-delay:.25s}
@keyframes birdcross{from{transform:translate(120px,30px)}to{transform:translate(-60px,18px)}}
@keyframes flap{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.55)}}

.rail-map .wheels line{stroke:#5b66a0;stroke-width:1.6;stroke-linecap:round}
.rail-map .wh{transform-box:fill-box;transform-origin:center;animation:roll .9s linear infinite}
.rail-map .spark{animation:rspark .45s steps(2,end) infinite}
@keyframes rspark{0%,100%{opacity:0}50%{opacity:1}}
.rail-map .headlight{animation:hlp 2.2s ease-in-out infinite}
.rail-map .beam{fill:#fff;opacity:.07;animation:hlp 2.2s ease-in-out infinite}
@keyframes hlp{0%,100%{opacity:.6}50%{opacity:1}}
.rail-map .catenary,.rail-map .train .loco{will-change:transform}

/* odometer reels */
.count{display:inline-flex;align-items:flex-end;line-height:1;vertical-align:bottom}
.metric .mv.count{display:inline-flex}
.count .reel{display:inline-block;overflow:hidden;vertical-align:bottom}
.count .reel-track{display:block;will-change:transform}
.count .reel-track span{display:block;text-align:center;line-height:1}
.count .reel-static{display:inline-block;line-height:1}

/* living sea horizon (v4) */
.sea-map .sea-glow{animation:seaglow 6s ease-in-out infinite}
@keyframes seaglow{0%,100%{opacity:.85}50%{opacity:1}}
.sea-map .far-ship{animation:hdrift 34s linear infinite}
.sea-map .far-ship2{animation:hdrift 26s linear infinite}
@keyframes hdrift{from{transform:translateX(40px)}to{transform:translateX(-70px)}}
.stage-card.tilted{transition:none}

/* auto-advance tab progress (v8) */
.mtab-ind{overflow:hidden}
.mtab-prog{position:absolute;left:0;bottom:0;height:3px;width:0;background:rgba(255,255,255,.7);border-radius:2px}

/* hybrid: photo background + SVG overlay */
.scene .photo{position:absolute;inset:0;background-size:cover;background-position:center;background-color:#13224a;transform:scale(1.08);animation:kenburns 16s ease-in-out infinite alternate}
.scene .photo-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,7,28,.22),rgba(10,7,28,.6)),radial-gradient(120% 100% at 70% -10%,rgba(238,122,46,.14),transparent 55%)}
@keyframes kenburns{from{transform:scale(1.06) translate(0,0)}to{transform:scale(1.15) translate(-2.5%,-2%)}}
.ov-map{position:absolute;inset:0;width:100%;height:100%;display:block}
.air-map .pod{offset-path:path("M58 150 Q240 6 430 96");offset-rotate:0;animation:fly 4.6s cubic-bezier(.45,0,.55,1) infinite;filter:drop-shadow(0 0 7px #fff)}
@media(prefers-reduced-motion:reduce){.scene .photo{animation:none}}

/* ---- live platform window (v10) ---- */
.winshot{transform-style:preserve-3d;will-change:transform;transition:box-shadow .3s}
.win-body.live{position:relative;overflow:hidden;background:#0b1020}
.win-body.live .shot-stack{position:relative;width:100%;padding-top:63%}
.winshot.tall .win-body.live .shot-stack{padding-top:104%}
.win-body.live .shot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0%;opacity:0;transition:opacity 1s ease;animation:shotpan 17s ease-in-out infinite alternate}
.win-body.live .shot.is-on{opacity:1}
@keyframes shotpan{from{object-position:50% 0%}to{object-position:50% 32%}}
.win-body.live .scan{position:absolute;left:0;right:0;top:0;height:46%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(238,122,46,.12),transparent);mix-blend-mode:screen;animation:winscan 5.5s linear infinite}
@keyframes winscan{0%{transform:translateY(-120%)}100%{transform:translateY(270%)}}
.win-body.live .live-tag{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(8,10,24,.6);border:1px solid rgba(255,255,255,.18);border-radius:100px;padding:5px 11px;backdrop-filter:blur(4px)}
.win-body.live .live-tag i{width:7px;height:7px;border-radius:50%;background:#33c6b6;box-shadow:0 0 8px #33c6b6;animation:livepulse 1.4s infinite}
.win-body.live .cursor{position:absolute;left:28%;top:46%;pointer-events:none;animation:wincurse 9s ease-in-out infinite}
.win-body.live .cursor svg{width:20px;height:20px;fill:#fff;stroke:rgba(0,0,0,.55);stroke-width:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.55))}
@keyframes wincurse{0%{left:26%;top:48%;transform:scale(1)}18%{left:40%;top:28%;transform:scale(1)}22%{transform:scale(.78)}26%{transform:scale(1)}48%{left:64%;top:30%;transform:scale(1)}52%{transform:scale(.78)}56%{transform:scale(1)}78%{left:48%;top:62%;transform:scale(1)}100%{left:26%;top:48%;transform:scale(1)}}
.winshot.tall .win-body.live:after{display:none}
@media(prefers-reduced-motion:reduce){.win-body.live .shot,.win-body.live .scan,.win-body.live .cursor,.win-body.live .live-tag i{animation:none}}

/* ---- application wizard (v10) ---- */
.apply-need{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 30px}
.apply-need span{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--w-70);background:rgba(255,255,255,.05);border:1px solid var(--line-d);border-radius:100px;padding:7px 13px}
.wizard{max-width:780px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:30px 30px 24px;box-shadow:0 30px 70px rgba(20,12,50,.14)}
.wsteps{display:flex;gap:8px;margin-bottom:26px;flex-wrap:wrap}
.wpill{flex:1;min-width:84px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-60);padding:9px 8px;border-radius:8px;background:var(--line);text-align:center;transition:.25s}
.wpill.active{background:var(--orange);color:#fff}
.wpill.done{background:rgba(217,90,10,.16);color:var(--orange)}
.wstep{display:none}
.wstep.is-on{display:block;animation:wfade .35s ease}
@keyframes wfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wstep h3{font-size:20px;margin-bottom:4px;color:var(--navy)}
.wstep .wsub{color:var(--ink-60);font-size:14px;margin-bottom:20px}
.wgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.wfield{display:flex;flex-direction:column;gap:6px}
.wfield.full{grid-column:1/-1}
.wfield label{font-size:12.5px;font-weight:600;color:var(--navy)}
.wfield .req{color:var(--orange)}
.wfield input,.wfield select,.wfield textarea{font-family:var(--body);font-size:14px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#fbfaff;color:var(--navy);transition:.2s;width:100%}
.wfield textarea{min-height:80px;resize:vertical}
.wfield input:focus,.wfield select:focus,.wfield textarea:focus{outline:none;border-color:var(--orange);background:#fff;box-shadow:0 0 0 3px rgba(217,90,10,.12)}
.wfield.invalid input,.wfield.invalid select,.wfield.invalid textarea{border-color:#d9483b;box-shadow:0 0 0 3px rgba(217,72,59,.13)}
.wchecks{display:flex;flex-wrap:wrap;gap:10px}
.wchecks label{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--navy);background:#fbfaff;border:1px solid var(--line);border-radius:100px;padding:8px 14px;cursor:pointer}
.wchecks input{accent-color:var(--orange)}
.wradios{display:flex;flex-wrap:wrap;gap:10px}
.wradios label{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:500;color:var(--navy);background:#fbfaff;border:1px solid var(--line);border-radius:10px;padding:10px 16px;cursor:pointer}
.wradios input{accent-color:var(--orange)}
.wagree{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.5;color:var(--navy);background:#fbfaff;border:1px solid var(--line);border-radius:12px;padding:14px}
.wagree.invalid{border-color:#d9483b;box-shadow:0 0 0 3px rgba(217,72,59,.13)}
.wagree input{margin-top:3px;accent-color:var(--orange);flex:none}
.wnav{display:flex;align-items:center;gap:12px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.wnav .wspacer{flex:1}
.wnav .wback[hidden]{display:none}
.wdone{display:none;text-align:center;padding:18px 0}
.wdone.is-on{display:block;animation:wfade .4s ease}
.wdone .wtick{width:64px;height:64px;border-radius:50%;background:rgba(31,157,87,.14);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.wdone .wtick svg{width:30px;height:30px;stroke:#1f9d57;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.wdone h3{color:var(--navy);font-size:23px;margin-bottom:8px}
.wdone p{color:var(--ink-60);max-width:440px;margin:0 auto}
@media(max-width:620px){.wgrid{grid-template-columns:1fr}}
.wnav .wback{background:#fff;border:1px solid var(--line);color:var(--navy)}
.wnav .wback:hover{border-color:var(--orange);color:var(--orange)}

/* ---- application wizard (DocuSign-style) v11 ---- */
.req{color:#d6336c}
.wprog{margin-bottom:26px}
.wprog-lab{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:8px}
.wprog-track{height:5px;border-radius:3px;background:var(--line);overflow:hidden}
.wprog-fill{display:block;height:100%;width:0;background:var(--orange);border-radius:3px;transition:width .45s ease}
.wsubhead{grid-column:1/-1;font-size:16px;color:var(--navy);font-weight:600;margin-top:8px}
.whint{font-size:12px;color:var(--ink-60);margin-top:-2px}
.wcheck-inline{grid-column:1/-1;display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--navy);cursor:pointer;margin:2px 0}
.wcheck-inline input{width:18px;height:18px;accent-color:var(--orange)}
.regoffice{display:contents}
.regoffice.hide{display:none}
.werr{display:flex;align-items:center;gap:6px;color:#d6336c;font-size:12.5px;font-weight:500;margin-top:5px}
.werr svg{width:16px;height:16px;flex:none;stroke:#d6336c}
.wfield.invalid input,.wfield.invalid select,.wfield.invalid textarea{border-color:#d6336c;box-shadow:0 0 0 3px rgba(214,51,108,.12)}
.wnav{display:flex;align-items:center;gap:10px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.wnav .wspacer{flex:1}
.wbtn{font-family:var(--body);font-size:14px;font-weight:600;padding:11px 22px;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:.2s}
.wnext{background:#2a1a4a;color:#fff}.wnext:hover{background:#3a2660}
.wback{background:#fff;color:var(--navy);border:1px solid var(--line)}.wback:hover{border-color:var(--orange);color:var(--orange)}
.wback[hidden]{display:none}
.wfinish{background:#f1eff5;color:var(--navy)}.wfinish:hover{background:#e7e3ef}
.wmodal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(30,18,50,.55);padding:20px}
.wmodal[hidden]{display:none}
.wmodal-card{background:#fff;border-radius:16px;padding:28px 30px;max-width:520px;width:100%;position:relative;box-shadow:0 40px 90px rgba(0,0,0,.4)}
.wmodal-card h3{color:var(--navy);font-size:22px;margin-bottom:8px}
.wmodal-card p{color:var(--ink-60);font-size:14px;margin-bottom:16px}
.wmodal-x{position:absolute;top:14px;right:18px;background:none;border:0;font-size:26px;line-height:1;color:var(--navy);cursor:pointer}

@media(max-width:600px){.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hero-stats>div{min-width:0;text-align:left}.hero-stats b{font-size:20px}.hero-stats span{font-size:9.5px;letter-spacing:.08em}}

/* WhatsApp / out-of-hours icon input */
.wicon{position:relative;display:flex;align-items:center}
.wicon>svg{position:absolute;left:13px;width:19px;height:19px;color:#25D366;pointer-events:none}
.wicon input{padding-left:42px;width:100%}
.wfield .whelp{font-size:11.5px;color:var(--ink-60);margin-top:2px}

/* Brand lockup (official ThinkPrime assets, V3 guideline) */
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.brand .b-mark{height:31px;width:auto;display:block}
.brand .b-lock{display:flex;flex-direction:column;gap:3px}
.brand .b-word{height:16px;width:auto;display:block}
.brand .b-tag{font-family:var(--body);font-size:8.5px;font-weight:700;letter-spacing:.16em;color:var(--w-55);white-space:nowrap;display:flex;align-items:center;gap:6px}
.brand .b-tag i{color:var(--orange);font-style:normal;font-weight:400;transform:translateY(-.5px)}
.brand--mob{gap:9px}
.brand--mob .b-mark{height:28px}
.brand--mob .b-word{height:15px}
.brand-foot img{height:72px;width:auto;display:block;margin-bottom:2px}
.brand-svg,.brand-tag{display:none!important}
@media(max-width:600px){.brand .b-mark{height:27px}.brand .b-word{height:14px}.brand .b-tag{font-size:7.5px;letter-spacing:.12em}}

/* Interactive portal tour (guided callouts) */
.win-body.tour{position:relative;overflow:hidden;background:#0b1020}
.win-body.tour .tour-img{width:100%;display:block}
.win-body.tour .live-tag{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(8,10,24,.6);border:1px solid rgba(255,255,255,.18);border-radius:100px;padding:5px 11px;backdrop-filter:blur(4px);z-index:6}
.win-body.tour .live-tag i{width:7px;height:7px;border-radius:50%;background:#33c6b6;box-shadow:0 0 8px #33c6b6;animation:livepulse 1.4s infinite}
.win-body.tour .hot{position:absolute;transform:translate(-50%,-50%);width:24px;height:24px;padding:0;border:0;background:none;cursor:pointer;z-index:7}
.win-body.tour .hp{position:absolute;inset:0;border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px rgba(224,82,6,.22)}
.win-body.tour .hp:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--orange);animation:hotpulse 2.1s ease-out infinite}
.win-body.tour .hp:after{content:"+";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--body);font-weight:800;font-size:14px;line-height:1}
@keyframes hotpulse{0%{transform:scale(1);opacity:.65}100%{transform:scale(2.7);opacity:0}}
.win-body.tour .callout{position:absolute;width:212px;background:#fff;color:var(--navy);border-radius:12px;padding:12px 14px;font-family:var(--body);font-size:12.5px;line-height:1.45;box-shadow:0 18px 40px rgba(8,6,30,.45);opacity:0;visibility:hidden;transform:translateY(6px) scale(.96);transition:.22s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:9}
.win-body.tour .callout b{display:block;font-family:var(--display);font-weight:800;font-size:13.5px;margin-bottom:3px;color:var(--navy)}
.win-body.tour .callout:after{content:"";position:absolute;width:11px;height:11px;background:#fff;transform:rotate(45deg)}
.win-body.tour .hot[data-pos=br] .callout{left:16px;top:16px}
.win-body.tour .hot[data-pos=br] .callout:after{left:-5px;top:15px}
.win-body.tour .hot[data-pos=bl] .callout{right:16px;top:16px}
.win-body.tour .hot[data-pos=bl] .callout:after{right:-5px;top:15px}
.win-body.tour .hot[data-pos=b] .callout{left:50%;top:18px;transform:translateX(-50%) translateY(6px) scale(.96)}
.win-body.tour .hot[data-pos=b] .callout:after{left:50%;margin-left:-5px;top:-5px}
.win-body.tour .hot[data-pos=t] .callout{left:50%;bottom:18px;transform:translateX(-50%) translateY(-6px) scale(.96)}
.win-body.tour .hot[data-pos=t] .callout:after{left:50%;margin-left:-5px;bottom:-5px}
.win-body.tour .hot:hover .callout,.win-body.tour .hot:focus-visible .callout,.win-body.tour .hot.is-active .callout{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
.win-body.tour .hot[data-pos=b]:hover .callout,.win-body.tour .hot[data-pos=b].is-active .callout,.win-body.tour .hot[data-pos=t]:hover .callout,.win-body.tour .hot[data-pos=t].is-active .callout{transform:translateX(-50%) translateY(0) scale(1)}
.win-body.tour .hot.is-active .hp{box-shadow:0 0 0 6px rgba(224,82,6,.30)}
.win-body.tour .tour-cursor{position:absolute;left:25%;top:21%;z-index:8;pointer-events:none;transition:left 1s cubic-bezier(.5,0,.2,1),top 1s cubic-bezier(.5,0,.2,1);opacity:0}
.win-body.tour .tour-cursor svg{width:22px;height:22px;fill:#fff;stroke:rgba(0,0,0,.5);stroke-width:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}
.win-body.tour.playing .tour-cursor{opacity:1}
@media(max-width:600px){.win-body.tour .callout{width:158px;font-size:11px;padding:10px 11px}.win-body.tour .callout b{font-size:12px}.win-body.tour .hot{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){.win-body.tour .hp:before{animation:none}.win-body.tour .tour-cursor{display:none}}

/* Specialist sectors auto-scroll marquee */
.chips.chips--marq{display:block;overflow:hidden;position:relative;-webkit-mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.chips--marq .chip-track{display:flex;width:max-content;animation:chipmarq 34s linear infinite}
.chips--marq .chip-set{display:flex;gap:12px;padding-right:12px}
.chips--marq:hover .chip-track{animation-play-state:paused}
.chips--marq .chip{box-shadow:0 2px 10px rgba(23,14,58,.05)}
.chips--marq .chip:hover{box-shadow:0 10px 22px rgba(224,82,6,.18)}
@keyframes chipmarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.chips--marq .chip-track{animation:none}.chips.chips--marq{overflow-x:auto}}

.marq-center{max-width:100%}

/* ===== V4 hero: Global Movements component ===== */
.hero-stage.gm{width:100%;align-self:center}
.gm-stage{position:relative;width:100%;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.08);background:radial-gradient(circle at 70% 14%,rgba(224,82,6,.20),transparent 30%),radial-gradient(circle at 14% 86%,rgba(96,84,155,.26),transparent 40%),linear-gradient(135deg,#130b32 0%,#170E3A 47%,#211653 100%)}
.gm-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.9;pointer-events:none}
.gm-glow{position:absolute;border-radius:999px;filter:blur(42px);pointer-events:none}
.gm-glow-one{width:46%;height:34%;right:8%;top:5%;background:rgba(224,82,6,.22);animation:gmGlow 9s ease-in-out infinite}
.gm-glow-two{width:40%;height:34%;left:4%;bottom:8%;background:rgba(129,138,143,.16);animation:gmGlow 11s ease-in-out infinite reverse}
.gm-inner{position:relative;z-index:2;display:flex;flex-direction:column;gap:clamp(14px,2.2vw,22px);padding:clamp(16px,3vw,28px)}
.gm-stage .glass{background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 60px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.12);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.gm-stage .movement-board{border-radius:clamp(16px,2.4vw,24px);padding:clamp(14px,2.4vw,22px);transform:perspective(1100px) rotateY(-5deg) rotateX(2deg)}
.gm-stage .board-header{display:flex;align-items:center;justify-content:space-between;margin:0 0 clamp(10px,1.6vw,16px);padding:0 4px;color:rgba(255,255,255,.7);font-size:clamp(11px,1.5vw,15px);letter-spacing:.3em;font-weight:700;line-height:1}
.gm-stage .live-dot{display:flex;align-items:center;gap:8px;color:#b7e793;letter-spacing:.1em;font-weight:800}
.gm-stage .live-dot i{width:7px;height:7px;border-radius:50%;background:#80bf61;box-shadow:0 0 14px rgba(128,191,97,.75);animation:gmPulse 1.5s ease-in-out infinite}
.gm-stage .board-row{height:clamp(40px,6vw,58px);display:grid;grid-template-columns:clamp(54px,16%,104px) 1fr clamp(74px,26%,150px);gap:clamp(8px,1.4vw,16px);align-items:center;margin:clamp(7px,1.1vw,11px) 0;padding:0 clamp(12px,1.8vw,20px);border-radius:clamp(10px,1.4vw,15px);background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(0,0,0,.10));border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden}
.gm-stage .code{color:#E05206;font-size:clamp(14px,2.3vw,23px);font-weight:800;letter-spacing:.06em}
.gm-stage .city{color:#fff;font-size:clamp(13px,2.2vw,22px);font-weight:700;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gm-stage .board-row strong{color:#fff;text-align:right;font-size:clamp(10px,1.5vw,15px);font-weight:800;letter-spacing:.06em;white-space:nowrap}
.gm-stage .board-row strong.flip{animation:gmFlip .58s cubic-bezier(.2,.8,.2,1)}
.gm-stage .metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.8vw,20px)}
.gm-stage .metric-card,.gm-stage .tracking-card{background:rgba(246,247,252,.96);color:#1f2430;border-radius:clamp(14px,2vw,20px);box-shadow:0 22px 56px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.44)}
.gm-stage .metric-card{padding:clamp(16px,2.4vw,24px)}
.gm-stage .label{display:block;color:#68717e;font-size:clamp(13px,1.7vw,17px);font-weight:800;line-height:1.2}
.gm-stage .metric-card strong{display:block;margin:clamp(10px,1.6vw,16px) 0;color:#170E3A;font-size:clamp(32px,5.2vw,56px);line-height:.85;font-weight:900;letter-spacing:.01em}
.gm-stage .metric-card em{font-style:normal;color:#55924d;font-size:clamp(13px,1.6vw,16px);font-weight:600}
.gm-stage .metric-card small{display:block;color:#68717e;font-size:clamp(13px,1.6vw,16px);font-weight:700}
.gm-stage .tracking-card{grid-column:1/3;padding:clamp(16px,2.4vw,24px)}
.gm-stage .tracking-card .label b{color:#65707f}
.gm-stage .tracking-card small{display:block;color:#68717e;font-size:clamp(13px,1.6vw,16px)}
.gm-stage .progress{position:relative;height:9px;margin:clamp(16px,2.4vw,26px) 0 clamp(12px,1.8vw,20px);background:#e1e5ef;border-radius:999px}
.gm-stage .progress i{position:absolute;left:0;top:0;bottom:0;width:70%;border-radius:999px;background:linear-gradient(90deg,#E05206 0%,#bb4a16 56%,#170E3A 100%);animation:gmProg 4.2s ease-in-out infinite}
.gm-stage .progress b{position:absolute;left:70%;top:50%;width:12px;height:12px;border-radius:50%;background:#E05206;box-shadow:0 0 20px rgba(224,82,6,.85);transform:translate(-50%,-50%);animation:gmProgDot 4.2s ease-in-out infinite}
.gm-stage .float-one{animation:gmFloatA 6.8s ease-in-out infinite}
.gm-stage .float-two{animation:gmFloatB 7.2s ease-in-out infinite}
.gm-stage .float-three{animation:gmFloatB 7.2s ease-in-out infinite -2.1s}
.gm-stage .float-four{animation:gmFloatC 8s ease-in-out infinite -3.2s}
@keyframes gmFloatA{50%{transform:perspective(1100px) rotateY(-4deg) rotateX(2deg) translateY(-10px)}}
@keyframes gmFloatB{50%{transform:translateY(-7px)}}
@keyframes gmFloatC{50%{transform:translateY(-6px)}}
@keyframes gmFlip{0%{opacity:1;filter:blur(0);transform:rotateX(0)}45%{opacity:.5;filter:blur(3px);transform:rotateX(76deg)}100%{opacity:1;filter:blur(0);transform:rotateX(0)}}
@keyframes gmProg{50%{width:47%}}
@keyframes gmProgDot{50%{left:47%}}
@keyframes gmPulse{50%{transform:scale(1.35);opacity:.7}}
@keyframes gmGlow{50%{transform:translate3d(16px,-14px,0) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.gm-stage .float-one,.gm-stage .float-two,.gm-stage .float-three,.gm-stage .float-four,.gm-stage .gm-glow,.gm-stage .progress i,.gm-stage .progress b,.gm-stage .live-dot i{animation:none}}

/* ===== V4 hero: fit + sharpen ===== */
.hero-home .hero-grid{align-items:start}
.hero-stage.gm{align-self:start}
.gm-inner{gap:14px;padding:18px}
.gm-stage .movement-board{padding:16px}
.gm-stage .board-header{margin-bottom:12px}
.gm-stage .board-row{height:clamp(40px,5.5vw,46px);margin:6px 0;background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(0,0,0,.14));border-color:rgba(255,255,255,.14)}
.gm-stage .metric-card{padding:18px}
.gm-stage .metric-card strong{font-size:clamp(34px,4.4vw,46px);margin:10px 0}
.gm-stage .tracking-card{padding:16px}
.gm-stage .progress{margin:14px 0 12px}
.gm-canvas{opacity:1}
.gm-stage .glass{background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.07));border-color:rgba(255,255,255,.22);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.gm-stage .metric-card,.gm-stage .tracking-card{box-shadow:0 16px 38px rgba(0,0,0,.30);border-color:rgba(255,255,255,.6)}

/* Full stacked logo in nav */
.brand--full{gap:0}
.brand--full .b-full{height:58px;width:auto;display:block}
.nav .wrap{height:92px}
.brand--mob.brand--full .b-full{height:46px}
@media(max-width:600px){.brand--full .b-full{height:44px}.nav .wrap{height:72px}}

/* ===== V5 live shipments board ===== */
.gm-stage .ship-rows{display:flex;flex-direction:column;gap:clamp(6px,1vw,9px)}
.gm-stage .ship-row{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(8px,1.4vw,14px);align-items:center;height:clamp(40px,5.6vw,52px);padding:0 clamp(11px,1.6vw,16px);border-radius:clamp(10px,1.4vw,13px);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(0,0,0,.12));border:1px solid rgba(255,255,255,.10);overflow:hidden}
.gm-stage .ship-row.flip{animation:gmFlip .58s cubic-bezier(.2,.8,.2,1)}
.gm-stage .sr-mode{font-family:var(--mono);font-size:clamp(8.5px,1.1vw,10px);font-weight:800;letter-spacing:.06em;padding:4px 7px;border-radius:6px;text-transform:uppercase;white-space:nowrap}
.gm-stage .sr-air{background:rgba(224,82,6,.22);color:#ff9560}
.gm-stage .sr-ocean{background:rgba(54,150,210,.24);color:#7ec1ff}
.gm-stage .sr-road{background:rgba(129,138,143,.26);color:#cdd4d9}
.gm-stage .sr-rail{background:rgba(150,120,225,.26);color:#cbb0ff}
.gm-stage .sr-route{color:#fff;font-size:clamp(13px,1.95vw,19px);font-weight:700;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gm-stage .sr-route i{color:#ff9560;font-style:normal;margin:0 6px;font-weight:400}
.gm-stage .sr-status{font-family:var(--body);font-size:clamp(9px,1.35vw,12.5px);font-weight:800;letter-spacing:.03em;white-space:nowrap;text-align:right}
.gm-stage .st-delivered{color:#7fd99a}.gm-stage .st-transit{color:#ffae6e}.gm-stage .st-cleared{color:#7ec1ff}.gm-stage .st-arrived{color:#9ed0ff}.gm-stage .st-booked{color:#cbd2d8}
.gm-stage .mode-split{display:flex;height:10px;border-radius:999px;overflow:hidden;margin:clamp(14px,2.2vw,22px) 0 clamp(10px,1.6vw,15px);background:#e1e5ef}
.gm-stage .mode-split span{height:100%;transition:width .8s ease}
.gm-stage .ms-air{background:#E05206}.gm-stage .ms-ocean{background:#3696d2}.gm-stage .ms-road{background:#818A8F}.gm-stage .ms-rail{background:#9678e1}

/* V5 mode bar live shine */
.gm-stage .mode-split{position:relative;isolation:isolate}
.gm-stage .mode-split .ms-shine{position:absolute;top:0;bottom:0;left:0;width:32%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:msShine 2.4s linear infinite;pointer-events:none}
@keyframes msShine{0%{transform:translateX(-110%)}100%{transform:translateX(420%)}}
@media(prefers-reduced-motion:reduce){.gm-stage .mode-split .ms-shine{animation:none;opacity:0}}

/* ===== V5 global network map ===== */
.netmap-sec{position:relative;overflow:hidden}
.netmap{position:relative;margin-top:clamp(28px,4vw,44px);border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 90px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.08);background:radial-gradient(circle at 72% 10%,rgba(224,82,6,.16),transparent 32%),radial-gradient(circle at 14% 90%,rgba(96,84,155,.22),transparent 42%),linear-gradient(135deg,#130b32 0%,#170E3A 50%,#211653 100%)}
.nm-canvas{display:block;width:100%;height:clamp(360px,42vw,540px)}
.netmap .nm-panel{position:absolute;left:clamp(14px,2vw,26px);bottom:clamp(14px,2vw,26px);width:clamp(216px,25vw,290px);border-radius:16px;padding:14px 16px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 40px rgba(0,0,0,.3);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.nm-head{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--w-70);margin-bottom:10px}
.nm-head .live-dot{display:flex;align-items:center;gap:6px;color:#b7e793;font-weight:800}
.nm-head .live-dot i{width:7px;height:7px;border-radius:50%;background:#80bf61;box-shadow:0 0 10px #80bf61;animation:livepulse 1.5s infinite}
.nm-lane{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid rgba(255,255,255,.08)}
.nm-lane:first-child{border-top:0}
.nm-lane .l-route{color:#fff;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nm-lane .l-route i{color:var(--orange-soft);font-style:normal;margin:0 5px}
.nm-lane .l-count{font-family:var(--mono);font-size:12px;color:var(--orange-soft);font-weight:700;white-space:nowrap}
.nm-chips{position:absolute;right:clamp(14px,2vw,26px);top:clamp(14px,2vw,26px);display:flex;gap:10px;flex-wrap:wrap}
.nm-chip{font-family:var(--body);font-size:12px;color:var(--w-70);background:rgba(8,10,24,.5);border:1px solid rgba(255,255,255,.14);border-radius:100px;padding:7px 13px;backdrop-filter:blur(6px)}
.nm-chip b{color:#fff;font-weight:800;font-family:var(--display);margin-right:4px}
@media(max-width:680px){.netmap .nm-panel{position:static;left:auto;top:auto;bottom:auto;right:auto;width:auto;margin:14px}.nm-chips{position:static;left:auto;top:auto;right:auto;bottom:auto;margin:2px 14px 18px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.nm-chip{flex:0 1 auto;text-align:center}.nm-canvas{height:300px}}
