/* TransBalt Logistyka — Gdańsk. Industrial navy theme */
:root{
  --bg:#0a1424; --bg2:#0f1d33; --panel:#12233d; --line:#1e3454;
  --ink:#eaf1fb; --mut:#93a7c4; --acc:#ffb43a; --acc2:#3d7dff; --ok:#36d399;
  --rad:14px; --max:1200px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;overflow-x:hidden}
h1,h2,h3,h4,.logo{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--acc);color:#0a1424;font-weight:700;font-family:'Space Grotesk';padding:14px 26px;border-radius:9px;transition:.25s;border:none;cursor:pointer;font-size:.97rem}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px -10px rgba(255,180,58,.6)}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn.ghost:hover{border-color:var(--acc);box-shadow:none}
.btn.dark{background:#0a1424;color:#fff;border:1.5px solid var(--line)}

/* HEADER */
.hdr{position:sticky;top:0;z-index:60;background:rgba(10,20,36,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px}
.logo{font-size:1.32rem;display:flex;align-items:center;gap:11px;color:#fff}
.logo .mk{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--acc),#ff8a00);display:grid;place-items:center;transform:rotate(-6deg)}
.logo b{color:var(--acc)}
.menu{display:flex;gap:30px;align-items:center}
.menu a{color:var(--mut);font-weight:500;font-size:.95rem;transition:.2s;position:relative}
.menu a:hover,.menu a.active{color:#fff}
.menu a.active::after{content:"";position:absolute;left:0;bottom:-26px;width:100%;height:2px;background:var(--acc)}
.burger{display:none;background:none;border:none;flex-direction:column;gap:5px;cursor:pointer}
.burger span{width:24px;height:2px;background:#fff;transition:.3s}

/* HERO */
.hero{position:relative;padding:0;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:600px}
.hero-l{padding:80px 0 80px;display:flex;flex-direction:column;justify-content:center}
.hero-l .wrap2{max-width:560px;margin-left:max(24px,calc((100vw - var(--max))/2 + 24px));padding-right:40px}
.tag{display:inline-flex;align-items:center;gap:9px;background:var(--panel);border:1px solid var(--line);color:var(--acc);font-size:.83rem;font-weight:600;padding:8px 16px;border-radius:40px;margin-bottom:26px}
.tag i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px rgba(54,211,153,.18)}
.hero h1{font-size:clamp(2.4rem,4.6vw,3.7rem);line-height:1.04;margin-bottom:22px}
.hero h1 em{font-style:normal;color:var(--acc);position:relative}
.hero p{color:var(--mut);font-size:1.12rem;max-width:480px;margin-bottom:34px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:44px}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--line);padding-top:26px}
.hero-stats .n{font-family:'Space Grotesk';font-size:1.9rem;font-weight:700;color:#fff}
.hero-stats .n b{color:var(--acc)}
.hero-stats .l{color:var(--mut);font-size:.83rem;margin-top:2px}
.hero-r{position:relative;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}
.hero-r img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.hero-r::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,var(--bg) 0%,transparent 38%)}
.hero-float{position:absolute;left:14%;bottom:34px;z-index:3;background:rgba(10,20,36,.9);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:14px;padding:18px 22px;display:flex;align-items:center;gap:14px}
.hero-float .dot{width:46px;height:46px;border-radius:11px;background:var(--acc2);display:grid;place-items:center;flex:none}
.hero-float .t{font-family:'Space Grotesk';font-weight:700;color:#fff;font-size:1.05rem}
.hero-float .s{color:var(--mut);font-size:.82rem}

/* MARQUEE */
.mq{background:var(--acc);color:#0a1424;overflow:hidden;white-space:nowrap;padding:13px 0;font-family:'Space Grotesk';font-weight:700;letter-spacing:.04em}
.mq-in{display:inline-block;animation:scroll 26s linear infinite}
.mq-in span{padding:0 8px}
@keyframes scroll{to{transform:translateX(-50%)}}

/* SECTIONS */
section{padding:90px 0}
.eyebrow{display:inline-block;color:var(--acc);font-family:'Space Grotesk';font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.16em;margin-bottom:14px}
.sec-h{font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.1;max-width:680px;margin-bottom:16px}
.lead{color:var(--mut);font-size:1.08rem;max-width:600px;margin-bottom:48px}

/* SERVICES */
.serv{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.scard{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:32px;transition:.3s;position:relative;overflow:hidden}
.scard::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:var(--acc);transform:scaleX(0);transform-origin:left;transition:.35s}
.scard:hover{transform:translateY(-6px);border-color:var(--acc)}
.scard:hover::before{transform:scaleX(1)}
.scard .ic{width:54px;height:54px;border-radius:12px;background:rgba(61,125,255,.14);color:var(--acc2);display:grid;place-items:center;margin-bottom:20px}
.scard h3{font-size:1.25rem;margin-bottom:10px}
.scard p{color:var(--mut);font-size:.94rem}
.scard.feat{grid-row:span 2;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(160deg,#15294a,#0e1c32)}
.scard.feat .ph{margin-top:24px;border-radius:10px;overflow:hidden;height:200px}
.scard.feat .ph img{width:100%;height:100%;object-fit:cover}

/* SPLIT */
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.split-img{position:relative;border-radius:18px;overflow:hidden}
.split-img img{width:100%;height:460px;object-fit:cover}
.badge{position:absolute;left:20px;bottom:20px;background:var(--acc);color:#0a1424;font-family:'Space Grotesk';font-weight:700;padding:10px 18px;border-radius:8px}
.chk{list-style:none;display:grid;gap:16px;margin-top:24px}
.chk li{display:flex;gap:14px;align-items:flex-start;color:var(--ink);font-size:1rem}
.chk svg{flex:none;color:var(--ok);margin-top:3px}
.chk b{display:block;font-family:'Space Grotesk'}
.chk span{color:var(--mut);font-size:.9rem;font-weight:400}

/* STEPS */
.band{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:s}
.step{position:relative;padding-top:30px}
.step .num{font-family:'Space Grotesk';font-size:2.6rem;font-weight:700;color:var(--line);position:absolute;top:-12px;right:0}
.step h4{font-size:1.15rem;margin-bottom:8px;position:relative;padding-top:18px}
.step h4::before{content:"";position:absolute;top:0;left:0;width:42px;height:3px;background:var(--acc)}
.step p{color:var(--mut);font-size:.92rem}

/* STATS BAND */
.kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.kpi .b{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:36px 18px}
.kpi .n{font-family:'Space Grotesk';font-size:2.8rem;font-weight:700;color:var(--acc)}
.kpi .l{color:var(--mut);font-size:.9rem;margin-top:6px}

/* CTA */
.bigcta{background:linear-gradient(120deg,var(--acc2),#2858c8);border-radius:24px;padding:64px 56px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;position:relative;overflow:hidden}
.bigcta::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border:40px solid rgba(255,255,255,.07);border-radius:50%}
.bigcta h2{font-size:2.1rem;color:#fff;max-width:520px}
.bigcta p{color:rgba(255,255,255,.85);margin-top:8px}

/* FOOTER */
.ft{background:#08101d;border-top:1px solid var(--line);padding:70px 0 32px}
.ft-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px;margin-bottom:48px}
.ft-logo{font-family:'Space Grotesk';font-weight:700;font-size:1.3rem;color:#fff;margin-bottom:14px}
.ft p{color:var(--mut);font-size:.92rem}
.ft h4{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;color:var(--acc);margin-bottom:18px}
.ft a{display:block;color:var(--mut);font-size:.93rem;margin-bottom:11px;transition:.2s}
.ft a:hover{color:#fff}
.ft-bot{border-top:1px solid var(--line);padding-top:26px;display:flex;justify-content:space-between;color:var(--mut);font-size:.85rem;flex-wrap:wrap;gap:10px}

/* PAGE HEADER */
.phead{padding:70px 0 50px;background:var(--bg2);border-bottom:1px solid var(--line);text-align:center}
.phead h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:14px}
.phead p{color:var(--mut);max-width:560px;margin:0 auto}
.crumb{color:var(--mut);font-size:.86rem;margin-bottom:18px}
.crumb a:hover{color:var(--acc)}

/* CONTACT / FORM */
.cgrid{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
.cinfo .row{display:flex;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.cinfo .ic{width:48px;height:48px;border-radius:11px;background:var(--panel);border:1px solid var(--line);display:grid;place-items:center;color:var(--acc);flex:none}
.cinfo .t{font-size:.8rem;color:var(--mut)}
.cinfo .v{font-family:'Space Grotesk';font-weight:600;font-size:1.05rem}
.form{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:34px}
.field{margin-bottom:18px}
.field label{display:block;font-size:.85rem;color:var(--mut);margin-bottom:7px;font-weight:500}
.field input,.field textarea,.field select{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:13px 15px;color:var(--ink);font-family:inherit;font-size:.95rem;transition:.2s}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--acc)}
.field textarea{min-height:120px;resize:vertical}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* PRICING */
.ptable{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pcard{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:36px 30px;position:relative;transition:.3s}
.pcard:hover{transform:translateY(-6px);border-color:var(--acc2)}
.pcard.hot{border-color:var(--acc);background:linear-gradient(165deg,#1a2c4d,#0e1c32)}
.pcard .pop{position:absolute;top:-13px;left:30px;background:var(--acc);color:#0a1424;font-family:'Space Grotesk';font-weight:700;font-size:.74rem;padding:6px 14px;border-radius:20px}
.pcard .pn{font-family:'Space Grotesk';font-weight:600;font-size:1.2rem;margin-bottom:6px}
.pcard .pp{font-family:'Space Grotesk';font-size:2.4rem;font-weight:700;color:#fff;margin:14px 0}
.pcard .pp small{font-size:.95rem;color:var(--mut);font-weight:400}
.pcard ul{list-style:none;margin:22px 0;display:grid;gap:12px}
.pcard li{display:flex;gap:10px;color:var(--mut);font-size:.92rem}
.pcard li svg{color:var(--ok);flex:none}

/* ABOUT */
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
.vcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--rad);padding:30px}
.vcard .ic{width:50px;height:50px;border-radius:12px;background:rgba(255,180,58,.12);color:var(--acc);display:grid;place-items:center;margin-bottom:16px}
.vcard h3{font-size:1.15rem;margin-bottom:8px}
.vcard p{color:var(--mut);font-size:.92rem}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gallery img{width:100%;height:240px;object-fit:cover;border-radius:12px;transition:.3s}
.gallery img:hover{transform:scale(1.03)}

/* PROSE */
.prose{max-width:780px;margin:0 auto}
.prose h2{font-size:1.5rem;margin:36px 0 14px}
.prose h3{font-size:1.15rem;margin:26px 0 10px}
.prose p,.prose li{color:var(--mut);margin-bottom:13px}
.prose ul{padding-left:22px;margin-bottom:16px}

/* REVEAL */
[data-rev]{opacity:0;transform:translateY(28px);transition:.7s cubic-bezier(.2,.7,.2,1)}
[data-rev].in{opacity:1;transform:none}

/* COOKIE */
.cookie{position:fixed;left:24px;bottom:24px;max-width:420px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;z-index:90;display:none;box-shadow:0 24px 60px -20px rgba(0,0,0,.7)}
.cookie.show{display:block}
.cookie p{color:var(--mut);font-size:.88rem;margin-bottom:14px}
.cookie .acts{display:flex;gap:10px}
.cookie .btn{padding:10px 18px;font-size:.85rem}

@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr}.hero-r{display:none}
  .hero-l .wrap2{margin:0 auto;max-width:var(--max);padding:0 24px}
  .serv,.steps,.kpi,.ft-grid,.ptable,.values,.gallery{grid-template-columns:1fr 1fr}
  .split,.cgrid{grid-template-columns:1fr;gap:32px}
  .scard.feat{grid-row:auto}
}
@media(max-width:640px){
  .menu{display:none}.burger{display:flex}
  .menu.open{display:flex;position:absolute;top:74px;left:0;width:100%;flex-direction:column;background:var(--bg2);padding:20px 24px;border-bottom:1px solid var(--line);gap:18px}
  .menu.open a.active::after{display:none}
  .serv,.steps,.kpi,.ft-grid,.ptable,.values,.gallery,.frow{grid-template-columns:1fr}
  .hero-stats{grid-template-columns:1fr 1fr;gap:16px}
  section{padding:60px 0}.bigcta{padding:40px 28px}
}
