:root{--cream:#f5fbff;--green:#103478;--ink:#153968;--muted:#496582;--orange:#a84608;--line:#c4e0f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font:15px Arial,Helvetica,sans-serif}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--cream);position:relative;z-index:5}.logo{font-weight:700;font-size:28px;letter-spacing:-1.2px;position:relative;display:flex;align-items:center}.logo>span:not(.mark){font-weight:400}.mark{height:34px;width:34px;border:1px solid;border-radius:50%;font-family:Arial,Helvetica,sans-serif;text-align:center;line-height:27px;font-size:36px;margin-right:9px}.logo small{position:absolute;bottom:-12px;font-size:7px;letter-spacing:2px;left:45px}nav{display:flex;gap:28px;font-size:12px;font-weight:600}nav a:hover{color:var(--orange)}.saved-button{background:transparent;border:1px solid #a9cde7;border-radius:30px;padding:11px 16px;font-size:12px}.saved-button span{background:var(--green);color:white;padding:2px 6px;border-radius:15px;margin-left:5px}.hero{height:690px;position:relative;color:white;background:#103478;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.4),transparent 75%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 35%)}.hero-content{position:absolute;top:100px;left:8%;}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.2px;line-height:1.8}h1,h2,h3{font-weight:700}h1,h2{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.7px;line-height:1.08;margin:20px 0}h1{font-size:clamp(48px,5.8vw,88px)}h1 em,h2 em{font-weight:700;font-style:normal}h2{font-size:55px}h3{font-family:Arial,Helvetica,sans-serif;font-size:28px;line-height:1.2;margin:15px 0}.hero-content>p:not(.eyebrow){font-size:16px;line-height:1.8;margin:27px 0}.button{display:inline-flex;border:0;border-radius:4px;padding:16px 21px;font-size:12px;font-weight:600;gap:35px;align-items:center;justify-content:center}.cream{background:var(--cream);color:var(--ink)}.dark{background:var(--green);color:white}.hero-caption{position:absolute;right:6%;bottom:120px;display:flex;flex-direction:column;gap:8px;font-size:10px;letter-spacing:2px;text-align:right}.hero-bottom{position:absolute;bottom:0;left:6%;right:6%;border-top:1px solid #ffffff60;padding:23px 0;display:flex;justify-content:space-between;font-size:11px}.hero-bottom a{letter-spacing:1.5px;font-size:9px}.ticker{display:flex;justify-content:space-around;gap:20px;padding:22px;background:#e0f3ff;font-size:9px;font-weight:600;letter-spacing:2px}.section{padding:95px 8%;}.section-top{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px}.section-top h2{margin-bottom:0}.intro{color:var(--muted);line-height:1.9;font-size:13px;max-width:380px}.search-bar{display:flex;border-bottom:1px solid var(--line);padding-bottom:25px;gap:16px;margin-bottom:32px;align-items:center}.search-bar label{display:flex;flex:1;align-items:center;gap:15px}.search-bar input{border:0;background:transparent;width:100%;padding:15px 0;outline:none}.search-bar label>span{font-size:26px}.search-bar select{padding:12px;border:0;background:transparent;max-width:180px}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.destination{border:0;text-align:left;background:transparent;padding:0;position:relative}.destination .image-wrap{height:290px;overflow:hidden;position:relative;border-radius:5px}.destination img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.destination:hover img,.photo-card:hover img{transform:scale(1.04)}.destination .image-wrap:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0006)}.destination .badge{position:absolute;bottom:18px;left:18px;color:white;font-size:9px;letter-spacing:2px;z-index:1}.destination .country-title{display:flex;align-items:center;justify-content:space-between}.destination h3{font-size:25px;margin:16px 0 7px}.destination p{font-size:11px;color:var(--muted);margin:0}.round-arrow{border:1px solid #2786c5;border-radius:50%;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.directory-head{display:flex;justify-content:space-between;align-items:center;margin:48px 0 0}.directory-head h3{font-size:25px}.directory-head span,.small-note{font-size:11px;color:var(--muted);line-height:1.7}.country-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 22px;margin-top:20px}.country-item{display:flex;align-items:center;gap:11px;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:18px 0}.country-item .flag{font-size:22px}.country-item strong{font-weight:500;font-size:13px}.country-item small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.country-item .arrow{margin-left:auto}.text-button{display:block;border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;margin:25px auto 0;font-size:12px}.season-section{display:grid;grid-template-columns:1fr 1fr;background:#e0f3ff;min-height:610px}.season-left{padding:75px 10% 65px 16%}.season-left h2{font-size:54px}.tabs{display:flex;gap:18px;border-bottom:1px solid #a9d8f4;margin:32px 0 23px}.tabs button{font-size:11px;padding:12px 0;border:0;background:transparent;color:var(--muted)}.tabs button[aria-selected=true]{color:var(--ink);border-bottom:2px solid var(--green)}#seasonText p{font-size:13px;line-height:1.9}#seasonText button{display:block;border:0;background:transparent;padding:8px 0;font-size:12px}.season-image{position:relative;overflow:hidden}.season-image img{height:100%;width:100%;object-fit:cover;position:absolute}#seasonCaption{position:absolute;bottom:35px;left:35px;color:white;font-size:11px;letter-spacing:2px;text-shadow:0 1px 4px #000}.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.route-card{padding:26px;border:1px solid var(--line);background:#eaf6ff;position:relative}.route-card .route-number{font:700 47px Arial,Helvetica,sans-serif;color:#2786c5}.route-card .eyebrow{font-size:9px}.route-card h3{font-size:27px}.route-card p{font-size:12px;line-height:1.8;color:var(--muted)}.route-card button{border:0;background:transparent;font-size:12px;text-decoration:underline;padding:12px 0}.finder{margin-top:48px;padding:35px;background:var(--green);color:var(--cream);border-radius:5px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.finder h3{font-size:27px;margin:10px 0}.finder p{font-size:12px;color:#c7edff}.finder form{display:flex;flex-wrap:wrap;gap:10px;align-content:center}.finder select{background:#ffffff0e;color:white;border:1px solid #ffffff40;border-radius:4px;padding:12px;min-width:110px}.finder option{color:var(--ink)}#finderResult{grid-column:1/-1;font-size:13px}#finderResult button{background:transparent;border:0;color:white;text-decoration:underline;margin-left:10px}.food-section{padding:80px 8%;display:grid;grid-template-columns:1.1fr 1fr;gap:80px;background:#fff1cb}.food-section h2{font-size:65px}.food-section p{line-height:1.9;font-size:13px}.food-tags{display:flex;flex-direction:column;align-items:start;margin-top:25px;gap:13px}.food-tags button{border:0;border-bottom:1px solid #d58b24;background:transparent;padding:9px 0;font-size:12px}.food-panel{padding:35px;background:var(--cream);border-radius:5px}.large-symbol{font-size:45px;color:var(--orange);float:right}.text-link{display:block;font-size:12px;margin-top:19px;text-decoration:underline;text-underline-offset:5px}.coast-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.photo-card{border:0;padding:0;position:relative;height:425px;overflow:hidden;border-radius:5px;text-align:left;background:#103478}.photo-card img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.photo-card:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#0009)}.photo-card>div{position:absolute;bottom:30px;left:30px;right:30px;color:white;z-index:1}.photo-card div>span:first-child{font-size:9px;letter-spacing:2px}.photo-card h3{font-size:38px}.photo-card .round-arrow{position:absolute;right:0;bottom:0;border-color:white}.booking{padding:85px 8%;background:var(--green);color:var(--cream)}.booking h2{font-size:62px}.booking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:45px 0}.booking article>span{font-size:10px;letter-spacing:2px;color:#8bdafa}.booking h3{font-size:25px}.booking p{font-size:12px;line-height:1.9;color:#c7edff}.link-row{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;margin:18px 0}.link-row a{border-bottom:1px solid #65bde9;padding-bottom:4px}.booking details{border-top:1px solid #ffffff40;padding-top:25px}summary{cursor:pointer;font-size:13px}summary span{float:right}.about{padding:100px 12%;display:grid;grid-template-columns:1fr 1.5fr;gap:100px;align-items:center}.about p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:450px;color:var(--muted)}.about h2{font-size:45px}.stamp{width:230px;height:230px;border:1px solid var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font:700 48px/.95 Arial,Helvetica,sans-serif;text-align:center;transform:rotate(-12deg)}.stamp span{font:9px Arial;letter-spacing:2px;margin-top:23px}footer{border-top:1px solid var(--line);padding:40px 8%;display:flex;gap:25px;align-items:center;flex-wrap:wrap}footer p{font-size:11px;color:var(--muted)}footer div{margin-left:auto;display:flex;gap:22px;font-size:11px}footer button{border:0;background:transparent;padding:0;font-size:11px}footer>span{flex-basis:100%;font-size:9px;color:var(--muted);margin-top:15px}dialog{border:0;background:var(--cream);color:var(--ink);width:min(870px,94vw);max-height:90vh;border-radius:8px;padding:45px;overflow:auto}dialog::backdrop{background:#00000099;backdrop-filter:blur(5px)}.close{position:absolute;right:15px;top:15px;border:1px solid #ccc;background:var(--cream);border-radius:50%;width:32px;height:32px}dialog h2{font-size:46px}dialog h3{font-size:23px}dialog p,dialog li{font-size:13px;line-height:1.85}.guide-photo{width:100%;height:230px;object-fit:cover;border-radius:5px}.guide-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px}.route-day{display:flex;gap:15px;border-top:1px solid var(--line);padding:15px 0}.route-day span{font-size:11px;color:var(--orange);min-width:50px}.route-day p{margin:0}.guide-actions{display:flex;gap:15px;margin-top:25px;flex-wrap:wrap}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 23px;background:var(--green);color:white;border-radius:5px;font-size:12px;z-index:100;opacity:0;pointer-events:none}#toast.show{opacity:1}.saved-row{border-top:1px solid var(--line);padding:18px 0;display:flex;align-items:center;gap:20px}.saved-row button{border:0;background:transparent;text-decoration:underline;font-size:12px}.saved-row button:last-child{margin-left:auto}:focus-visible{outline:3px solid #ef8100;outline-offset:4px}@media(min-width:1500px){.hero{height:760px}.section,.booking{padding-left:max(8%,calc((100vw - 1250px)/2));padding-right:max(8%,calc((100vw - 1250px)/2))}}@media(max-width:1050px){nav{gap:15px;font-size:10px}.featured-grid{gap:16px}.destination .image-wrap{height:240px}.country-grid{grid-template-columns:repeat(3,1fr)}.season-left{padding:50px 12%}.season-left h2{font-size:45px}.food-section{gap:35px}.finder{grid-template-columns:1fr}.about{gap:40px}}@media(max-width:760px){header{height:75px;padding:0 5%}nav{display:none}.logo{font-size:25px}.saved-button{font-size:10px;padding:10px}.hero{height:650px}.hero-content{left:7%;top:100px;right:6%}h1{font-size:55px}.hero-content>p:not(.eyebrow){font-size:14px}.hero-caption{bottom:95px;font-size:8px}.hero-bottom{font-size:9px}.hero-bottom>span{max-width:170px;line-height:1.6}.ticker{overflow:hidden;justify-content:start;white-space:nowrap;font-size:8px}.section{padding:60px 6%}.section-top{display:block;margin-bottom:26px}h2{font-size:40px}.intro{font-size:12px;margin-top:25px}.search-bar{flex-wrap:wrap;gap:8px}.search-bar label{flex-basis:100%}.search-bar .button{margin-left:auto;padding:12px 20px}.featured-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.destination .image-wrap{height:200px}.destination h3{font-size:22px}.destination p{font-size:10px}.country-grid{grid-template-columns:1fr 1fr;gap:0 15px}.country-item strong{font-size:12px}.country-item .flag{font-size:18px}.directory-head h3{font-size:22px}.season-section{grid-template-columns:1fr}.season-left{padding:55px 7%}.season-left h2{font-size:43px}.season-image{height:390px;grid-row:2}.tabs{gap:28px}.route-grid{grid-template-columns:1fr}.route-card{padding:25px}.route-card .route-number{float:right}.finder{padding:25px}.finder form{display:grid;grid-template-columns:1fr 1fr}.finder form .button{grid-column:1/-1}.food-section{padding:55px 6%;grid-template-columns:1fr;gap:35px}.food-section h2{font-size:55px}.food-panel{padding:25px}.coast-grid{grid-template-columns:1fr}.photo-card{height:370px}.booking{padding:60px 6%}.booking h2{font-size:45px}.booking-grid{grid-template-columns:1fr;gap:30px}.booking article{border-top:1px solid #ffffff30;padding-top:22px}.about{padding:60px 7%;grid-template-columns:1fr;gap:40px}.stamp{width:160px;height:160px;font-size:34px}.stamp span{font-size:7px}.about h2{font-size:39px}footer{padding:35px 6%;gap:15px}footer div{margin-left:0;flex-basis:100%;flex-wrap:wrap}dialog{padding:45px 24px 30px}.guide-cols{grid-template-columns:1fr;gap:8px}dialog h2{font-size:40px}.guide-photo{height:180px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.header-actions{display:flex;align-items:center;gap:12px}.language-control{display:flex;align-items:center;gap:5px;border:1px solid #a9cde7;border-radius:30px;padding:8px 10px;font-size:12px}.language-control select{background:transparent;border:0;max-width:90px;color:var(--ink);font-size:12px;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html[lang=pl] h1{font-size:clamp(43px,5vw,76px)}html[lang=pl] nav{gap:18px}html[lang=pl] .hero-content{max-width:85%}@media(max-width:1100px){nav{gap:12px;font-size:10px}header{padding:0 3%}}@media(max-width:900px){header nav{display:none}}@media(max-width:480px){.header-actions{gap:7px}.language-control{padding:7px}.language-control select{font-size:11px;max-width:65px}.saved-button{font-size:9px;padding:8px}.logo{font-size:21px}.logo .mark{width:27px;height:27px;font-size:28px;line-height:23px;margin-right:5px}.logo small{left:32px;font-size:6px}.hero-content{top:100px}html[lang=pl] h1{font-size:43px}html[lang=pl] h2{font-size:38px}}

/* Bold sans-serif typography matched to the supplied country-grid reference. */
.destination h3,.country-item strong,.photo-card h3{font-weight:700}.country-item strong{font-size:14px}.eyebrow{font-weight:700}

/* EuroCurio: navy and sky blue, with sunshine-yellow and orange accents. */
:root{--navy:#103478;--blue:#087cbd;--sky:#8bdafa;--yellow:#ffda21;--sunset:#f58b00;--orange:#a84608}
header{background:#f5fbff;border-bottom:1px solid var(--line);gap:18px}.logo{gap:10px;flex-shrink:0;letter-spacing:-1px}.brand-logo{display:block;width:78px;height:52px;object-fit:contain;border-radius:9px;box-shadow:0 0 0 1px #a9d8f4}.logo>.brand-title{position:relative;display:inline-block;font-size:28px;font-weight:700;white-space:nowrap;padding-bottom:10px}.brand-curio{color:var(--orange)}.brand-euro{color:var(--blue)}.logo .brand-title small{left:1px;bottom:0;font-size:6px;letter-spacing:1.7px;color:var(--navy)}h1,h2,h3{color:var(--navy)}.eyebrow{color:var(--blue)}.hero h1,.photo-card h3,.booking h2,.booking h3,.finder h3{color:#f5fbff}.hero h1 em,.booking h2 em{color:var(--yellow)}.hero .eyebrow,.booking .eyebrow,.finder .eyebrow{color:var(--sky)}h2 em{color:var(--blue)}.hero .cream{background:var(--yellow);color:var(--navy)}.dark{background:var(--navy);color:#fff}.button{transition:background .2s,box-shadow .2s,transform .2s}.button:hover{box-shadow:0 4px 14px #10347825;transform:translateY(-2px)}.dark:hover{background:#087cbd}.cream:hover{background:#ffd344;color:var(--navy)}nav a:hover,.text-link:hover,.text-button:hover,.country-item:hover strong{color:var(--orange)}.round-arrow{background:var(--yellow);border-color:var(--yellow);color:var(--navy);transition:background .2s}.destination:hover .round-arrow,.photo-card:hover .round-arrow{background:var(--sunset);border-color:var(--sunset)}.destination .badge{background:var(--navy);color:#fff;padding:7px 10px;border-radius:3px}.destination .image-wrap:after{background:linear-gradient(transparent,rgba(0,0,0,.4))}.photo-card:after{background:linear-gradient(transparent,rgba(0,0,0,.5))}.photo-card .round-arrow{border-color:var(--yellow)}.ticker{background:var(--yellow);color:var(--navy)}.tabs button[aria-selected=true]{color:var(--navy);border-bottom:3px solid var(--sunset)}.route-card{border-top:4px solid var(--sunset)}.route-card button,.food-tags button,.text-link,.text-button{color:var(--blue)}.finder .cream{background:var(--yellow);color:var(--navy)}.finder #finderResult button{color:var(--yellow)}.booking .link-row a{color:var(--sky)}.booking .link-row a:hover{color:var(--yellow)}.stamp{border:3px solid var(--blue);background:#e0f3ff;box-shadow:8px 8px 0 var(--yellow);color:var(--navy)}.saved-button,.language-control{border-color:#a9cde7;background:#eaf6ff}.saved-button:hover{background:#d9f2ff}.saved-button span{background:var(--blue)}.search-bar input::placeholder{color:var(--muted)}.search-bar input:focus{box-shadow:0 2px 0 var(--blue)}:focus-visible{outline:3px solid var(--sunset);outline-offset:4px}footer .logo>.brand-title{padding-bottom:0}footer .brand-logo{width:63px;height:42px}
@media(min-width:901px) and (max-width:1250px){header nav{gap:12px;font-size:10px}.brand-logo{width:63px;height:42px}.logo>.brand-title{font-size:24px}header{gap:12px;padding:0 3%}}@media(max-width:760px){header{height:auto;min-height:82px;padding:13px 5%;gap:10px;flex-wrap:wrap}.brand-logo{width:63px;height:42px}.logo>.brand-title{font-size:25px}.header-actions{margin-left:auto}.logo .brand-title small{font-size:6px;left:1px}.hero-content{top:85px}}@media(max-width:390px){.brand-logo{width:51px;height:34px}.logo{gap:6px}.logo>.brand-title{font-size:21px}.saved-button{max-width:105px}.header-actions{gap:6px}.language-control{padding:6px}.language-control select{max-width:58px}} 

/* Transparent logo: no card, border or matte behind the artwork. */
.brand-logo{background:transparent;border-radius:0;box-shadow:none;object-fit:contain;width:72px;height:64px}footer .brand-logo{width:56px;height:50px}@media(max-width:760px){.brand-logo{width:59px;height:53px}}@media(max-width:390px){.brand-logo{width:48px;height:43px}}

/* Neutral photo treatment; brand colours remain on interface elements. */
.hero-content,.hero-caption{ text-shadow:0 2px 7px rgba(0,0,0,.5)}.hero-content .button{text-shadow:none}

/* Readable main navigation with generous click targets. */
header nav{font-size:16px;font-weight:700;gap:20px;line-height:1.4}
header nav>a{display:inline-flex;align-items:center;min-height:44px;padding:5px 0;white-space:nowrap}
@media(min-width:901px) and (max-width:1100px){header{height:auto;min-height:90px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;row-gap:4px}header nav{order:3;flex-basis:100%;justify-content:center;gap:24px;font-size:15px}}

/* Country flags stay crisp on every browser. */
.language-flag{display:block;width:24px;height:16px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #10347830;flex-shrink:0}
.language-control{gap:8px}
/* Raised lettering in the existing orange-and-blue brand colours. */
.logo .brand-curio{color:#da680b;text-shadow:0 -1px 0 #fff9,1px 1px 0 #924000,2px 2px 0 #6b3008,3px 3px 5px #0003}
.logo .brand-euro{color:#087cbd;text-shadow:0 -1px 0 #fff9,1px 1px 0 #065987,2px 2px 0 #103478,3px 3px 5px #0003}
.logo>.brand-title{font-weight:800}
.logo .brand-title small{font-size:8px;letter-spacing:1.2px;font-weight:800;color:var(--navy);text-shadow:0 -1px 0 #fff,0 1px 0 #a9cde5,1px 2px 2px #10347825}
.stamp.stamp-logo{transform:none;gap:0}
.stamp-logo>img{display:block;width:166px;max-width:76%;height:auto;max-height:176px;object-fit:contain}
.stamp-logo>span{font-size:9px;font-weight:700;letter-spacing:1.4px;margin-top:14px}
@media(max-width:760px){.stamp-logo>img{width:118px;max-height:112px}.stamp-logo>span{font-size:8px;margin-top:9px}.logo .brand-title small{font-size:7px;letter-spacing:1px}}
