:root{
  --black:#eef5f1;
  --black-2:#dfeee6;
  --forest:#e6f3ed;
  --green:#14935f;
  --green-bright:#1fb978;
  --mint:#2d8b62;
  --white:#18231d;
  --muted:#5f7468;
  --line:rgba(28,154,104,.16);
  --card:#ffffff;
  --radius:24px;
  --shadow:0 22px 60px rgba(16,45,31,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:99;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(244,251,247,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(20,147,95,.14)}
.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between}
.brand{width:190px;height:84px;overflow:visible;display:flex;align-items:center;padding:6px 0}
.brand img{width:190px;max-height:72px;object-fit:contain;transform:none}
.main-nav{display:flex;align-items:center;gap:28px;font-size:14px;color:#31473c}
.main-nav>a:not(.button){position:relative}
.main-nav>a:not(.button):after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-8px;background:var(--green-bright);transition:.25s}
.main-nav>a:hover:after{right:0}
.nav-toggle{display:none;background:none;border:0;padding:10px}
.nav-toggle span{display:block;width:24px;height:2px;background:#1a3227;margin:5px 0}
.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;padding:15px 24px;background:var(--green);color:white;font-weight:750;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s;box-shadow:0 10px 26px rgba(24,143,96,.24)}
.button:hover{transform:translateY(-2px);background:var(--green-bright);box-shadow:0 14px 34px rgba(37,185,121,.28)}
.button-small{padding:10px 18px;font-size:13px}
.hero{min-height:790px;padding:150px 0 80px;position:relative;overflow:hidden;background:radial-gradient(circle at 72% 28%,rgba(20,147,95,.22),transparent 27%),linear-gradient(140deg,#f7fbf8 0%,#eaf6f0 58%,#def1e7 100%)}
.hero:after{content:"";position:absolute;width:650px;height:650px;border:1px solid rgba(155,230,199,.08);border-radius:50%;right:-240px;top:55px;box-shadow:0 0 0 90px rgba(155,230,199,.015),0 0 0 190px rgba(155,230,199,.01)}
.hero-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(155,230,199,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(155,230,199,.035) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to right,transparent,black 35%,black)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;position:relative;z-index:2}
.eyebrow,.kicker{font-size:12px;letter-spacing:.19em;color:var(--mint);font-weight:800}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:24px}.eyebrow span{display:inline-block;width:34px;height:2px;background:var(--green-bright)}
h1,h2,h3,p{margin-top:0}
h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,6vw,82px);line-height:.98;letter-spacing:-.045em;margin-bottom:28px;font-weight:500}
.hero h1{color:#18231d}.hero h1 em{font-style:normal;color:var(--green)}
.hero-lead{max-width:650px;color:#5b6d63;font-size:18px;line-height:1.7;margin-bottom:32px}
.hero-actions{display:flex;align-items:center;gap:30px;margin-bottom:42px}.text-link{font-weight:700}.text-link span{color:var(--green-bright);margin-left:7px;transition:.2s}.text-link:hover span{margin-left:12px}
.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:26px;border-top:1px solid var(--line)}.hero-metrics div{display:flex;flex-direction:column}.hero-metrics strong{font-size:13px;color:#203127}.hero-metrics span{color:#6b7d73;font-size:12px;margin-top:3px}
.route-card{background:linear-gradient(145deg,#ffffff,#eff8f3);border:1px solid rgba(20,147,95,.22);border-radius:30px;padding:26px;box-shadow:var(--shadow);position:relative;overflow:hidden;color:#1a2a21}.route-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(155,230,199,.06),transparent 62%);transform:translateX(-100%);animation:shine 7s infinite}@keyframes shine{50%,100%{transform:translateX(100%)}}
.route-card-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.15em;color:var(--mint)}.route-card-top b{background:rgba(24,143,96,.16);padding:7px 11px;border-radius:999px;color:var(--green-bright)}
.route-map{height:330px;position:relative;margin:16px 0;border-radius:20px;overflow:hidden;background:radial-gradient(circle at 44% 36%,rgba(28,154,104,.12),transparent 25%),#ecf5f0}.map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(155,230,199,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(155,230,199,.045) 1px,transparent 1px);background-size:35px 35px}.route-map svg{position:absolute;inset:0;width:100%;height:100%}.route-main{fill:none;stroke:var(--green-bright);stroke-width:4;stroke-linecap:round;stroke-dasharray:9 12;animation:dash 14s linear infinite}.route-glow{fill:none;stroke:rgba(37,185,121,.25);stroke-width:18}.route-point{fill:var(--mint);filter:drop-shadow(0 0 8px var(--green-bright))}@keyframes dash{to{stroke-dashoffset:-210}}
.city{position:absolute;z-index:2;display:flex;flex-direction:column}.city i{width:13px;height:13px;border:3px solid var(--mint);border-radius:50%;box-shadow:0 0 0 7px rgba(155,230,199,.08)}.city b{font-size:13px;margin-top:9px}.city small{color:#6d7f75}.city-cn{left:13%;bottom:15%}.city-pl{right:8%;top:25%;align-items:flex-end}.train-icon{position:absolute;left:46%;top:19%;font-size:12px;color:var(--mint);transform:rotate(-10deg);letter-spacing:-3px}
.route-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.route-modes>div{border:1px solid rgba(28,154,104,.12);border-radius:14px;padding:12px;display:flex;gap:10px;align-items:center;color:#5c6f65;background:#fff}.route-modes .active{border-color:rgba(28,154,104,.35);background:rgba(28,154,104,.08);color:#183125}.route-modes p{margin:0;display:flex;flex-direction:column;line-height:1.2}.route-modes small{font-size:10px;color:#6e8076;margin-top:3px}.mode-icon{color:var(--green-bright)}
.trust-strip{background:#ffffff;border-top:1px solid rgba(28,154,104,.08);border-bottom:1px solid rgba(28,154,104,.08)}.trust-grid{height:84px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;text-align:center;color:#5f7468;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.trust-grid span+span{border-left:1px solid rgba(28,154,104,.08)}
.section{padding:110px 0;background:#f8fbf9;color:#101411}.section-heading{display:grid;grid-template-columns:1fr .75fr;gap:80px;align-items:end;margin-bottom:54px}.section-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,4.5vw,58px);line-height:1.06;letter-spacing:-.035em;margin:12px 0 0;font-weight:500}.section-heading p{color:#59615d;max-width:500px;margin:0;line-height:1.75}.section .kicker{color:var(--green)}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{position:relative;background:white;border:1px solid #dce2de;border-radius:24px;padding:34px;min-height:430px;overflow:hidden;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 22px 55px rgba(21,54,39,.12)}.service-main{background:linear-gradient(145deg,#14935f,#0f6f49);color:white;border-color:#14935f}.service-number{position:absolute;right:24px;top:20px;font-family:Georgia,serif;font-size:48px;color:rgba(24,143,96,.17)}.service-icon{width:54px;height:54px;border-radius:16px;background:#e7f5ee;color:var(--green);display:flex;align-items:center;justify-content:center;font-size:23px;margin-bottom:34px}.service-main .service-icon{background:rgba(37,185,121,.14);color:var(--mint)}.service-card h3{font-family:Georgia,serif;font-size:30px;margin-bottom:18px}.service-card p{color:#66706a;line-height:1.7}.service-main p{color:#b7c5bd}.service-card ul{padding:0;margin:24px 0 0;list-style:none}.service-card li{padding:9px 0;border-top:1px solid #e6eae7;font-size:13px}.service-main li{border-color:rgba(255,255,255,.09)}.service-label{position:absolute;bottom:0;left:0;right:0;background:var(--green);padding:10px 20px;font-size:10px;font-weight:800;letter-spacing:.14em;text-align:center}
.dark-section{background:linear-gradient(180deg,#edf8f2,#d7efe3);color:#122019}.dark-section .section-heading p{color:#567065}.dark-section .kicker{color:var(--green)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-item{padding:38px 26px 42px;min-height:260px}.process-item+.process-item{border-left:1px solid var(--line)}.process-item span{font-family:Georgia,serif;font-size:40px;color:rgba(37,185,121,.35)}.process-item h3{margin:35px 0 12px;font-size:18px}.process-item p{color:#62746a;font-size:14px}
.tracking-section{background:linear-gradient(145deg,#e8f7ef,#d8f0e4);color:#14221b}.tracking-grid{display:grid;grid-template-columns:.75fr 1.05fr;gap:90px;align-items:center}.tracking-copy h2{font-family:Georgia,serif;font-size:clamp(42px,4.7vw,60px);line-height:1.05;margin:14px 0 24px}.tracking-copy p{color:#5e7368;line-height:1.75}.privacy-note{display:flex;gap:10px;margin-top:30px;color:#5f7468;font-size:13px}.privacy-note span{color:var(--mint)}
.tracking-panel{background:#ffffff;color:#101411;border-radius:28px;padding:34px;box-shadow:var(--shadow);border:1px solid rgba(28,154,104,.10)}.tracking-panel label{display:block;font-weight:800;margin-bottom:10px}.tracking-input-row{display:flex;gap:10px}.tracking-input-row input{flex:1;min-width:0;border:1px solid #cad2cd;border-radius:999px;padding:14px 18px;outline:0;background:white}.tracking-input-row input:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(24,143,96,.1)}#demo-hint{display:block;color:#758078;margin-top:11px}#demo-hint[hidden]{display:none}.tracking-state{margin-top:24px}.tracking-loading{display:flex;align-items:center;gap:11px;color:#546059}.spinner{width:20px;height:20px;border-radius:50%;border:2px solid #c9d4ce;border-top-color:var(--green);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tracking-error{background:#fff0f0;border:1px solid #f1cdcd;color:#803d3d;padding:16px;border-radius:15px}.tracking-result{border-top:1px solid #d7ded9;padding-top:22px}.result-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:20px}.result-head h3{font-size:22px;margin:0}.status-pill{font-size:11px;text-transform:uppercase;letter-spacing:.08em;background:#dff4e9;color:#11673f;padding:7px 10px;border-radius:999px;font-weight:800}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.result-item{background:white;border:1px solid #dce2de;padding:13px;border-radius:14px;display:flex;flex-direction:column}.result-item span{font-size:10px;color:#77827b;text-transform:uppercase;letter-spacing:.09em}.result-item b{font-size:14px;margin-top:4px}.result-actions{display:flex;gap:12px;align-items:center;margin-top:20px}.result-actions .button{padding:11px 17px;font-size:13px}.result-updated{font-size:11px;color:#7b857f}
.contact-section{background:#f8fbf9;padding-top:45px}.contact-card{background:linear-gradient(135deg,#21ad74,#14935f);border-radius:30px;color:white;padding:55px 60px;display:flex;align-items:center;justify-content:space-between;gap:50px;box-shadow:0 24px 55px rgba(20,147,95,.26)}.contact-card h2{font-family:Georgia,serif;font-size:47px;margin:10px 0 12px}.contact-card p{max-width:680px;margin:0;color:#e1f1e9}.contact-card .kicker{color:#d4f4e5}.contact-actions{min-width:230px;display:flex;flex-direction:column;align-items:center;gap:14px}.button-light{background:white;color:#0e5a39;box-shadow:none}.button-light:hover{background:#dffff0;color:#0e5a39}.contact-phone{font-weight:800}
.footer{padding:70px 0 25px;background:#e4f2ea;color:#4d665a}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr .65fr;gap:50px}.footer-brand img{width:190px;margin-top:-35px}.footer-brand p{font-size:12px;margin-top:-8px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:7px;font-size:13px}.footer-grid b{color:#16241d;margin-bottom:8px}.footer-status{align-items:flex-start;justify-content:flex-start;flex-direction:row!important}.status-dot{width:8px;height:8px;background:var(--green-bright);border-radius:50%;box-shadow:0 0 12px var(--green-bright);margin-top:6px}.footer-bottom{border-top:1px solid rgba(28,154,104,.10);margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;font-size:11px}
.reveal{opacity:0;transform:translateY(24px);transition:.75s cubic-bezier(.2,.75,.25,1)}.reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.15s}
@media(max-width:950px){.main-nav{position:absolute;top:84px;left:0;right:0;background:#ffffff;flex-direction:column;align-items:stretch;padding:25px 30px;border-bottom:1px solid var(--line);display:none}.main-nav.open{display:flex}.nav-toggle{display:block}.hero-grid,.tracking-grid{grid-template-columns:1fr}.hero{padding-top:140px}.hero-visual{max-width:680px;width:100%;margin:auto}.section-heading{grid-template-columns:1fr;gap:25px}.services-grid{grid-template-columns:1fr 1fr}.services-grid .service-card:last-child{grid-column:1/-1}.process-grid{grid-template-columns:1fr 1fr}.process-item:nth-child(3){border-left:0}.process-item:nth-child(n+3){border-top:1px solid var(--line)}.footer-grid{grid-template-columns:1fr 1fr}.contact-card{flex-direction:column;align-items:flex-start}.contact-actions{align-items:flex-start}.trust-grid{grid-template-columns:repeat(3,1fr);height:auto;padding:20px 0;gap:15px}.trust-grid span+span{border:0}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.nav-wrap{height:72px}.brand{width:150px;height:64px;padding:4px 0}.brand img{width:150px;max-height:56px}.main-nav{top:72px}.hero{min-height:auto;padding:120px 0 60px}.hero-grid{gap:45px}h1{font-size:51px}.hero-lead{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-metrics{grid-template-columns:1fr;gap:13px}.route-card{padding:16px;border-radius:22px}.route-map{height:285px}.route-modes{grid-template-columns:1fr}.section{padding:78px 0}.services-grid{grid-template-columns:1fr}.service-main{grid-column:auto}.process-grid{grid-template-columns:1fr}.process-item+.process-item{border-left:0;border-top:1px solid var(--line)}.tracking-input-row{flex-direction:column}.tracking-input-row .button{width:100%}.result-grid{grid-template-columns:1fr}.result-head{flex-direction:column}.contact-card{padding:40px 26px}.contact-card h2{font-size:38px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:7px}.trust-grid{grid-template-columns:1fr 1fr;font-size:10px}.section-heading h2{font-size:42px}}


/* Interaktywna, dokładna mapa tras — Natural Earth */
.route-map-interactive{
  height:auto;
  position:relative;
  margin:18px 0 16px;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(145deg,#f9fcfa,#e7f3ec);
  border:1px solid rgba(20,147,95,.14);
  padding:0;
}
.interactive-route-map{display:block;width:100%;height:auto;aspect-ratio:860/440}
.graticule path{stroke:#dcebe3;stroke-width:1;fill:none}
.country{fill:#f9fbfa;stroke:#bfd5c8;stroke-width:1.15;vector-effect:non-scaling-stroke;transition:fill .3s}
.country-transit{fill:#f0f7f3}
.country-pol{fill:#bfe8d1;stroke:#57ae7d;stroke-width:1.7}
.country-chn{fill:#a4ddb9;stroke:#4ba977;stroke-width:1.7}
.country-name{font:600 10.5px Inter,Arial,sans-serif;fill:#7a8d82;text-anchor:middle;letter-spacing:.08em}
.country-name.important{font-size:13px;font-weight:800;fill:#2f6e50}
.route-layer{opacity:0;pointer-events:none;transition:opacity .35s ease}
.route-layer.is-active{opacity:1;pointer-events:auto}
.route-halo{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.route-line{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:9 10;animation:routeDash 12s linear infinite}
.rail-halo{stroke:#bee9d1;stroke-width:15}.rail-line{stroke:#14935f;stroke-width:4.5}
.sea-halo{stroke:#c9e9e3;stroke-width:15}.sea-line{stroke:#158f80;stroke-width:4.5}
.air-halo{stroke:#d4eddf;stroke-width:13}.air-line{stroke:#2eaa70;stroke-width:4;stroke-dasharray:5 9}
@keyframes routeDash{to{stroke-dashoffset:-250}}
.route-marker{fill:white;stroke:#14935f;stroke-width:5;filter:url(#routeGlow)}
.sea-marker{stroke:#158f80}.air-marker{stroke:#2eaa70}
.vehicle{fill:#0f7c50;filter:url(#softShadow)}
.vehicle circle{fill:#173f2d}.vehicle-window{fill:#e1f7eb}
.ship-vehicle{fill:#117b70}.plane-vehicle{fill:#138b59}
.endpoint-card{filter:url(#softShadow)}
.endpoint-card rect{fill:rgba(255,255,255,.96);stroke:#cfe0d6;stroke-width:1}
.endpoint-dot{fill:#14935f}
.endpoint-title{font:800 13px Inter,Arial,sans-serif;fill:#183126;letter-spacing:.04em}
.endpoint-sub{font:500 10.5px Inter,Arial,sans-serif;fill:#6c7f74}
.route-caption{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 14px 13px;padding:12px 15px;border-radius:13px;background:rgba(255,255,255,.9);border:1px solid rgba(20,147,95,.10);color:#5c7166;font-size:12px}
.route-caption b{color:#147a51}
.route-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.route-mode{appearance:none;width:100%;border:1px solid rgba(28,154,104,.14);border-radius:14px;padding:13px 14px;display:flex;gap:11px;align-items:center;color:#5c6f65;background:#fff;cursor:pointer;text-align:left;transition:.2s ease}
.route-mode:hover{transform:translateY(-2px);border-color:rgba(20,147,95,.28);box-shadow:0 8px 22px rgba(20,75,47,.08)}
.route-mode.active{border-color:rgba(20,147,95,.42);background:linear-gradient(135deg,#e5f7ed,#f7fcf9);color:#183125;box-shadow:inset 0 0 0 1px rgba(20,147,95,.08)}
.route-mode p{margin:0;display:flex;flex-direction:column;line-height:1.2}.route-mode small{font-size:10px;color:#6e8076;margin-top:3px}.route-mode .mode-icon{color:var(--green-bright);font-size:18px}
@media(max-width:620px){
  .route-map-interactive{border-radius:17px;overflow:hidden}
  .interactive-route-map{min-width:680px;width:680px;transform:translateX(-72px)}
  .route-caption{flex-direction:column;align-items:flex-start;gap:3px;margin:0 8px 8px;padding:10px 12px}
  .route-modes{grid-template-columns:1fr}
}

/* V2 larger interactive map and cleaner background */
.route-map-interactive{min-height:420px;padding:0;background:linear-gradient(145deg,#f6fbf8,#e7f3ec);}
.interactive-route-map{width:100%!important;height:420px!important;aspect-ratio:auto;display:block;}
.route-caption{display:none !important;}
.graticule,.map-country-labels,.country-label,.bg-label,.map-bg-text{display:none !important;}
@media(max-width:620px){.route-map{height:auto}.route-map-interactive{min-height:280px}.interactive-route-map{min-width:100%!important;width:100%!important;height:280px!important;transform:none!important}}

.ico{width:1em;height:1em;display:block}
.service-icon .ico{width:26px;height:26px}
.route-mode .mode-icon .ico{width:20px;height:20px}
@media(min-width:951px){.hero h1{font-size:clamp(44px,5.4vw,68px)}.hero h1 .l{white-space:nowrap}}
.service-card{display:flex;flex-direction:column}.service-card p{flex:1 0 auto}
.section-heading h2,.tracking-copy h2,.contact-card h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,6vw,82px);line-height:.98;letter-spacing:-.045em;font-weight:500}
@media(min-width:951px){.section-heading h2,.tracking-copy h2,.contact-card h2{font-size:clamp(44px,5.4vw,68px)}}
@media(max-width:620px){.section-heading h2,.tracking-copy h2,.contact-card h2{font-size:51px}}
@media(min-width:951px){#uslugi .section-heading{grid-template-columns:1fr;gap:22px}#uslugi .section-heading h2 .l{display:block;white-space:nowrap}#uslugi .section-heading p{max-width:620px}}
@media(min-width:951px){#proces .section-heading{grid-template-columns:auto 1fr;gap:60px}#proces .section-heading h2 .l{display:block;white-space:nowrap}}
