:root{--dark:#073d83;--teal:#0754a2;--mint:#ffe669;--line:#dce5f0}
body{background:#f7f9fc;color:#183f6d}
header{border-bottom:4px solid #ffdb27}
.logo{color:#064686}
.logo b{background:#ffd622;color:#064686}
.logo small{color:#1168b3}
nav button{background:#ffe56e;color:#073d83}
.hero{background:linear-gradient(115deg,#d5eaff 0%,#eef5fc 60%,#c6dbf4 100%)}
.hero:before{background:#92c0ed}
.hero h1{color:#063e7e}
.hero h1 em{color:#0867bd}
.eyebrow{color:#0754a2}
.lead{color:#466a91}
.search{border-top:6px solid #ffda24}
.pill{background:#fff2ad;color:#7c5b05}
.field:focus-within{outline:2px solid #1269b3}
.swap{background:#ffe34c;color:#08467f}
.primary{background:#0757aa;color:white}
.primary:hover{background:#063e7f}
.hill{background:#88b4e0}
.hill:nth-child(2){background:#4d88c6}
.train{background:linear-gradient(to bottom,#fff 0 63%,#ffdc25 63% 70%,#1157a4 70% 86%,#dbe8f9 86%)}
.route i{background:#ffed9b}
.route:hover{border-color:#f9cc26}
.benefit{background:#e4f1ff}
.benefit:nth-child(2){background:#fff4c6}
.benefit:nth-child(3){background:#deebfa}
.notice{background:#fff4c2;color:#654c11}
footer{background:#053c7b;border-top:7px solid #ffda25}
.real-data{margin:20px 0 0;padding:23px;border-radius:16px;background:#edf5ff;border:1px solid #bdd4ee}
.real-data h3{font:800 19px Manrope;margin:0 0 9px;color:#083f83}
.real-data p{font-size:14px;color:#4c6889;line-height:1.6;margin:0 0 16px}
.real-data a{display:inline-flex;align-items:center;gap:9px;border-radius:10px;background:#0757aa;color:white;padding:12px 16px;font-weight:800;font-size:14px}
.seo-block{background:#fff;border-top:1px solid #e0eaf4}
.seo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.seo-link{display:block;background:#fff;border:1px solid #dce6f2;padding:23px;border-radius:16px}
.seo-link strong{display:block;margin-bottom:9px;color:#064b94}
.seo-link span{color:#6b8098;font-size:14px;line-height:1.55}
@media(max-width:700px){.seo-grid{grid-template-columns:1fr}}

/* Kolejo 2.0 — mocniejsza, kolejowa identyfikacja */
header{height:78px;background:#fff;border-bottom:5px solid #ffcb1f;box-shadow:0 3px 12px rgba(0,33,77,.1);position:relative;z-index:10}
.logo{font-weight:800;color:#063c80}
nav a{color:#153e6e}
nav a:hover{color:#086cc2}
nav button{background:#ffda35;color:#07376a;box-shadow:0 3px 0 #d9aa00}
.hero{min-height:630px;background:#07376b url('/train-hero.jpg') right center/cover no-repeat;isolation:isolate}
.hero:before{content:'';inset:0;width:auto;height:auto;top:0;right:0;position:absolute;border-radius:0;opacity:1;background:linear-gradient(90deg,#062a59 0%,rgba(5,45,94,.98) 27%,rgba(5,44,91,.83) 48%,rgba(6,50,99,.33) 73%,rgba(5,38,80,.18) 100%);z-index:-1}
.scenery{display:none}
.hero-content{padding-top:72px;padding-bottom:80px}
.hero .eyebrow{color:#ffdb40;font-size:13px;letter-spacing:2.4px;text-shadow:0 1px 4px #173f63}
.hero h1{color:#fff;font-size:clamp(42px,5vw,68px);line-height:1.08;text-shadow:0 3px 18px #041e4380}
.hero h1 em{color:#ffdd39}
.hero .lead{color:#e1edff;font-size:19px;font-weight:500;text-shadow:0 2px 12px #041b4280;max-width:520px}
.search{max-width:1050px;border:0;border-top:7px solid #ffcc19;border-radius:18px;box-shadow:0 24px 55px #011c3b55;padding:24px 26px 23px}
.search-head{margin-bottom:20px}
.search-head strong{color:#0a3b78;font-family:Manrope,sans-serif;font-size:20px}
.field{border:2px solid #cbd8ea;background:#fff;transition:border-color .15s,box-shadow .15s}
.field:focus-within{outline:0;border-color:#0673cf;box-shadow:0 0 0 3px #1976d226}
.field label{color:#476994;font-size:11px}
.field input,.field select{color:#082f64;font-size:15px}
.swap{background:#ffdc30;color:#073e7d;border:3px solid white;box-shadow:0 2px 7px #0c3f682d}
.primary{background:#085cb2;border-bottom:3px solid #03417e;font-size:15px;padding:16px 28px}
.primary:hover{background:#034582}
.pill{background:#fff0b4;color:#695308}
.muted{color:#647e9f}
.route{border:2px solid #dbe6f3;box-shadow:0 5px 15px #184b7610}
.route:hover{border-color:#ffcc24;box-shadow:0 12px 35px #06488918}
.route strong{color:#073e83}
.route i{background:#ffed97}
.section h2{color:#063e7e}
.results{border-top:6px solid #ffcd1b}
.seo-link:hover{border-color:#ffcb20;box-shadow:0 8px 22px #11437a16}
.photo-credit{position:absolute;right:20px;bottom:10px;color:#e5edf6;font-size:10px;background:#0d2f5b99;border-radius:4px;padding:3px 7px;z-index:2}
.photo-credit a{color:inherit;text-decoration:underline}
.fields.five-fields{grid-template-columns:1.25fr 1.25fr .84fr .77fr .7fr}
@media(max-width:900px){.hero{background-position:61% center}.hero:before{background:linear-gradient(90deg,#062a59 0%,#062f61e6 54%,#062b56ad 100%)}.hero-content{padding-top:59px}}
@media(max-width:900px){.fields.five-fields{grid-template-columns:1fr 1fr}}
@media(max-width:650px){header{height:69px}.hero{background-position:64% center;min-height:auto}.hero:before{background:linear-gradient(180deg,#052c60ed 0%,#063366dd 58%,#06366dce 100%)}.hero-content{padding-top:49px;padding-bottom:57px}.hero h1{font-size:43px}.hero .lead{font-size:16px}.search{padding:17px;border-top-width:6px}.search-head strong{font-size:17px}.photo-credit{display:none}.fields.five-fields{grid-template-columns:1fr}}

/* Chłodne tła kart i ikon, żółty wyłącznie jako akcent. */
.route i,.route-icon{background:#e0edfb;color:#0c55a0}
.benefit,.benefit:nth-child(2),.benefit:nth-child(3){background:#edf3fa;border:1px solid #dbe5f1}
.benefit:nth-child(2){background:#e4edf8}
.benefit:nth-child(3){background:#f4f7fb}
.seo-link{background:#fff}
.pill{background:#e8f1fc;color:#245887}
.notice{background:#e9f1fb;color:#345f8c}
.seo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.seo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.seo-grid{grid-template-columns:1fr}}
.featured-guides{background:#f2f6fb;padding-top:58px;padding-bottom:64px}
.featured-guides .seo-link{min-height:155px}
.guide-more{text-align:right;margin:22px 0 0;font-size:14px;font-weight:800;color:#0757aa}

/* Mocne, czytelne banery redakcyjne w kolejowej palecie. */
.rail-banners{padding:8px 0 52px;background:#f2f6fb}
.rail-banner-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}
.rail-banner{min-height:282px;position:relative;isolation:isolate;overflow:hidden;border-radius:20px;padding:31px 34px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;box-shadow:0 13px 28px rgba(5,32,70,.14);color:#fff;transition:transform .2s ease,box-shadow .2s ease}
.rail-banner:hover,.rail-banner:focus-visible{transform:translateY(-4px);box-shadow:0 18px 35px rgba(5,32,70,.24)}
.rail-banner:focus-visible{outline:3px solid #f4c542;outline-offset:3px}
.rail-banner-timetable{background:linear-gradient(92deg,rgba(5,27,65,.98) 3%,rgba(6,43,92,.87) 51%,rgba(9,49,96,.48)),url('/train-hero.jpg') center 55%/cover}
.rail-banner-transfer{background:linear-gradient(132deg,#0755ad 0%,#073b83 58%,#052958 100%)}
.rail-banner-transfer:after{content:'';position:absolute;z-index:-1;right:-66px;bottom:-92px;width:300px;height:300px;border:28px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.045)}
.rail-banner-kicker{display:inline-block;font-size:11px;font-weight:900;letter-spacing:1.7px;color:#ffdb54;margin-bottom:14px}
.rail-banner strong{font-size:clamp(24px,2.4vw,34px);font-weight:850;line-height:1.18;max-width:460px;letter-spacing:-.7px}
.rail-banner-description{max-width:430px;font-size:14px;line-height:1.65;color:#e0ebfa;margin:13px 0 21px}
.rail-banner-cta{display:inline-flex;align-items:center;padding:12px 18px;background:#ffd34d;border-radius:9px;color:#082956;font-size:13px;font-weight:900}
.rail-banner-transfer .rail-banner-cta{background:#fff;color:#0750a6}
@media(max-width:760px){.rail-banner-grid{grid-template-columns:1fr}.rail-banners{padding-bottom:35px}.rail-banner{min-height:250px;padding:27px}.rail-banner strong{font-size:27px}}
.station-suggestions{position:absolute;top:calc(100% + 7px);left:0;right:0;z-index:30;background:#fff;border:1px solid #cce4de;border-radius:13px;box-shadow:0 18px 38px #173f4a2a;max-height:290px;overflow-y:auto;padding:6px}
.station-suggestions[hidden]{display:none}
.station-suggestion{display:block;width:100%;padding:11px 13px;text-align:left;border:0;border-radius:8px;background:transparent;color:#173f4a;font:700 14px 'DM Sans',sans-serif;cursor:pointer}
.station-suggestion:hover,.station-suggestion.is-active{background:#e5f4ef;color:#146f6c}
.field:focus-within{z-index:12;border-color:#55a89a}
