@charset "UTF-8";
/* Homepage v3 ("Red Dot" proposal, owner-approved preview 4 Nov 2026).
   Loaded only on the homepage, after site.css. Shared header, footer and mobile
   bar are restyled here with a raised selector weight (:root:root) so other pages
   keep site.css unchanged. No scroll-reveal or opacity-0 content effects. */
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:300 500;font-display:swap;src:url("fonts/SourceSerif4-normal-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2193,U+2197,U+2212,U+2215,U+25B6,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:300 500;font-display:swap;src:url("fonts/SourceSerif4-normal-greek.woff2") format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:300;font-display:swap;src:url("fonts/SourceSerif4-italic-latin.woff2?v=0336889bc62c") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2193,U+2197,U+2212,U+2215,U+25B6,U+FEFF,U+FFFD}@font-face{font-family:"Commissioner";font-style:normal;font-weight:300 800;font-display:swap;src:url("fonts/Commissioner-normal-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2193,U+2197,U+2212,U+2215,U+25B6,U+FEFF,U+FFFD}@font-face{font-family:"Commissioner";font-style:normal;font-weight:300 800;font-display:swap;src:url("fonts/Commissioner-normal-greek.woff2") format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Caveat";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/Caveat-latin.woff2?v=bfa6d993deb7") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2193,U+2197,U+2212,U+2215,U+25B6,U+FEFF,U+FFFD}




:root{
 --hp3-paper:#F4F3EF;--hp3-alt:#EAE9E5;--hp3-ink:#142B33;--hp3-night:#0F2A3A;--hp3-muted:#3E4F55;--hp3-line:rgba(20,43,51,.15);
 --hp3-on:rgba(255,255,255,.9);--hp3-hair:rgba(255,255,255,.3);
 --hp3-blue:#1A6C9F;--hp3-deep:#0F4466;--hp3-coral:#EE906E;--hp3-coral-ink:#B5502C;--hp3-hand-dark:#F4C7B2;
 --hp3-serif:"Source Serif 4",Georgia,"Times New Roman",serif;--hp3-sans:"Commissioner",system-ui,-apple-system,"Segoe UI",sans-serif;--hp3-script:"Segoe Print","Bradley Hand",cursive;
 --hp3-pad:clamp(56px,6vw,112px);--hp3-m:clamp(18px,4vw,64px);--hp3-max:1440px;--hp3-ease:cubic-bezier(.2,.7,.2,1);
}
:root:root body{background:var(--hp3-paper);color:var(--hp3-ink);font:400 17px/1.6 var(--hp3-sans);overflow-x:clip}
:root:root{scroll-padding-top:84px}
.home-polish{display:block;overflow-x:clip}
.home-polish img{max-width:100%;display:block}
.home-polish h1,.home-polish h2,.home-polish h3{color:inherit}
/* neutralise legacy .home-polish heading rules from site.css */
:root:root .home-polish h2{max-width:none;color:inherit;font-size:inherit;line-height:inherit;margin:0}
:root:root .home-polish h1 em,:root:root .home-polish h2 em,:root:root .home-polish p em{display:inline;color:inherit;font-style:italic;font-weight:300}
.home-polish :focus-visible{outline:2px solid #fff;outline-offset:3px}
.home-polish .hp3-paper :focus-visible,.home-polish .hp3-facts :focus-visible{outline-color:var(--hp3-blue)}

/* type */
:root:root .home-polish .hp3-h2,:root:root .home-polish .hp3-statement,.hp3-quote blockquote p,.home-polish .hp3-hero h1{font-family:var(--hp3-serif);font-weight:300;letter-spacing:-.015em;line-height:1.05;text-wrap:balance;margin:0}
:root:root .home-polish .hp3-h2{font-size:clamp(38px,4.6vw,84px)}
.home-polish em{font-style:italic;font-weight:300}
:root:root .home-polish .hp3-eyebrow,.hp3-eyebrow{font:500 12px/1.4 var(--hp3-sans);letter-spacing:.12em;text-transform:uppercase;margin:0 0 20px;color:rgba(255,255,255,.88)}
:root:root .home-polish .hp3-paper .hp3-eyebrow{color:var(--hp3-muted)}
.hp3-hand{font:500 clamp(30px,2.6vw,36px)/1.1 var(--hp3-script);color:var(--hp3-hand-dark);transform:rotate(-2deg);display:inline-block;margin:18px 0 0}
.hp3-ch .hp3-hand,.hp3-isl .hp3-hand{text-shadow:0 1px 10px rgba(0,0,0,.45)}
.hp3-paper .hp3-hand{color:var(--hp3-coral-ink)}
.hp3-lead{color:#fff;max-width:34em;margin:0;font-size:19px}
.hp3-small{font-size:15px;color:var(--hp3-on);margin:0}
.hp3-small a,.hp3-lunch a{color:#fff}
.hp3-wrap{max-width:var(--hp3-max);margin:0 auto;padding-inline:var(--hp3-m)}

/* buttons */
.hp3-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:999px;min-height:48px;white-space:nowrap;text-decoration:none;font:500 15px/1.2 var(--hp3-sans);border:1px solid transparent;background:transparent;cursor:pointer;transition:transform .25s var(--hp3-ease),background-color .25s,color .25s}
.hp3-btn:hover{transform:translateY(-1px)}
.hp3-btn--ghost{border-color:rgba(255,255,255,.85);color:#fff}
.hp3-btn--ghost:hover{background:#fff;color:var(--hp3-ink)}
.hp3-btns{display:flex;flex-wrap:wrap;gap:12px}
:root:root .home-polish .button.accent,:root:root .header .button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;background:var(--hp3-coral);color:var(--hp3-ink);border:1px solid transparent;font:600 15px/1.2 var(--hp3-sans);padding:14px 26px;min-height:48px;width:auto;white-space:nowrap;box-shadow:none}
:root:root .home-polish .button.accent:hover,:root:root .header .button:hover{background:#F2A184;color:var(--hp3-ink);transform:translateY(-1px)}
:root:root .home-polish .button .arrow{width:16px;height:16px}
.hp3-arrowlink{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:#fff;font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.hp3-arrowlink:hover{color:var(--hp3-hand-dark)}

/* photo chapters: every text block sits on a dark overlay or panel */
.hp3-ch{position:relative;color:#fff;overflow:hidden;isolation:isolate;min-height:88svh}
.hp3-ch::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--hp3-ov,rgba(8,24,36,.66));pointer-events:none}
.hp3-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hp3-ch .hp3-h2,.hp3-ch .hp3-statement,.hp3-ch .hp3-quote p{text-shadow:0 1px 12px rgba(0,0,0,.35)}
@media(max-width:720px){.hp3-ch{min-height:72svh}}

/* header: transparent over the hero, solid once scrolled (site.js toggles .is-scrolled) */
:root:root .header{position:fixed;top:0;left:0;right:0;z-index:50;background:transparent;box-shadow:none;border-bottom:1px solid transparent;color:#fff;min-height:76px;height:76px;padding-block:0;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background-color .35s,color .35s,border-color .35s}
:root:root .header.is-scrolled,:root:root.mobile-menu-open .header{background:var(--hp3-paper);color:var(--hp3-ink);border-color:var(--hp3-line);box-shadow:0 4px 18px rgba(16,45,53,.08)}
:root:root .header .brand img{width:180px;height:auto;filter:brightness(0) invert(1);transition:filter .35s}
:root:root .header.is-scrolled .brand img,:root:root.mobile-menu-open .header .brand img{filter:none}
:root:root .header nav{gap:30px;font:500 15px/1.2 var(--hp3-sans)}
:root:root .header nav>a:not(.button){color:inherit;text-decoration:none}
:root:root .header nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:4px}
:root:root .header .menu{color:inherit;font:500 15px/1.2 var(--hp3-sans)}
:root:root .header :focus-visible{outline-color:currentColor}
@media(max-width:1100px){:root:root .header nav{gap:18px;font-size:14px}}
@media(min-width:901px) and (max-width:1100px){:root:root .header{flex-wrap:nowrap}:root:root .header nav{width:auto;flex-wrap:nowrap;justify-content:flex-end;gap:14px;margin-left:auto}:root:root .header nav>a{white-space:nowrap}:root:root .header .brand img{width:150px}:root:root .header .button{padding:10px 16px;min-height:44px}}
@media(max-width:900px){
 :root:root .header{height:64px;min-height:64px}
 :root:root .header .brand img{width:150px}
 :root:root .header.nav-ready nav{background:var(--hp3-paper);color:var(--hp3-ink);top:100%;padding:12px var(--hp3-m) 28px;border-top:1px solid var(--hp3-line)}
 :root:root .header.nav-ready nav>a:not(.button){font:300 30px/1.3 var(--hp3-serif);padding:6px 0;border-bottom:1px solid var(--hp3-line)}
 :root:root .header.nav-ready nav>.button{margin-top:18px;align-self:flex-start}
}

/* hero */
.home-polish .hp3-hero{position:relative;min-height:100svh;color:#fff;display:flex;align-items:flex-end;overflow:hidden;background:var(--hp3-night);margin:0;padding:0;max-width:none}
:root:root .hp3-hero .hp3-hero__img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border-radius:0;object-fit:cover;object-position:center 55%}
@media(max-width:700px){:root:root .hp3-hero .hp3-hero__img{object-position:50% 0}}
.hp3-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,24,36,.9) 0%,rgba(8,24,36,.7) 42%,rgba(8,24,36,.2) 75%,rgba(8,24,36,.45) 100%),linear-gradient(90deg,rgba(8,24,36,.55) 0%,rgba(8,24,36,0) 60%)}
.hp3-hero__in{position:relative;z-index:1;width:100%;max-width:var(--hp3-max);margin:0 auto;padding:128px var(--hp3-m) clamp(96px,12vh,128px);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:end;gap:48px}
.home-polish .hp3-hero .hero-copy{max-width:none;padding:0;margin:0}
.home-polish .hp3-hero h1{font-size:clamp(52px,7vw,128px);color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.35);margin:0}
.home-polish .hp3-hero h1 .h1-lead{display:block;font:500 12px/1.4 var(--hp3-sans);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.9);margin:0 0 22px;text-shadow:none}
.home-polish .hp3-hero .lead{max-width:34em;margin:24px 0 28px;font-size:18px;line-height:1.6;color:rgba(255,255,255,.94)}
/* Desktop/tablet: the hero is bottom-anchored, so when Commissioner swaps in and the intro rewraps (3 lines in the
   fallback face, 2 in Commissioner at the 34em cap) the whole hero text used to drop ~29px. Reserve three lines so the
   swap never moves the heading, chips or buttons. Phones keep their own spacing. */
@media(min-width:701px){.home-polish .hp3-hero .lead{min-height:calc(3em * 1.6)}}
.hp3-hero__more{margin:0}
.hp3-glass{background:rgba(10,30,45,.72);border:1px solid var(--hp3-hair);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:22px 24px;color:#fff;font-size:14px;line-height:1.5}
:root:root .hp3-hero .hero-booking{margin:0;max-width:none;border-radius:0;background:rgba(10,30,45,.74);box-shadow:none;border:1px solid var(--hp3-hair);color:#fff}
.hp3-glass p{margin:0}
.hp3-glass .home-offer-season{font:500 13px/1.5 var(--hp3-sans);letter-spacing:.02em;color:rgba(255,255,255,.9);margin:0 0 10px}
:root:root .hp3-glass .adult-price{margin:0;padding:0;background:none;border:0;color:#fff;box-shadow:none}
:root:root .hp3-glass .early-booking-title{display:block;font:300 34px/1.1 var(--hp3-serif);color:#fff;letter-spacing:-.01em}
:root:root .hp3-glass .early-booking-title .adult-price-amount{font:inherit;color:inherit}
:root:root .hp3-glass .adult-price-catalogue{display:block;font:400 14px/1.4 var(--hp3-sans);color:rgba(255,255,255,.85);margin-top:4px}
:root:root .hp3-glass del{color:rgba(255,255,255,.85)}
:root:root .hp3-glass a{color:#fff}
:root:root .hp3-hero .hero-booking .home-price-fallback-note{color:rgba(255,255,255,.88)}
:root:root .hp3-glass .adult-price-details{margin:8px 0 0;border:0;background:none;padding:0;color:rgba(255,255,255,.9)}
:root:root .hp3-glass .adult-price-summary{color:#fff;font-size:13px;min-height:32px;cursor:pointer}
:root:root .hp3-glass .adult-price-details-copy{font-size:13px;color:rgba(255,255,255,.9);max-height:220px;overflow:auto}
:root:root .hp3-glass .adult-price-details-copy *{color:inherit}
:root:root .hp3-glass .hero-actions{display:flex;margin:16px 0 0}
:root:root .hp3-glass .hero-actions .button{width:100%;min-height:52px}
:root:root .hp3-glass .deposit-reassurance{margin:14px 0 0;padding:0;background:none;border:0;color:#fff;font-size:14px}
:root:root .hp3-glass .deposit-reassurance strong{color:#fff}
:root:root .hp3-glass .deposit-reassurance span{display:block;color:rgba(255,255,255,.85)}
:root:root .hp3-glass .home-price-secondary{margin:12px 0 0;padding:0;border:0;background:none;color:rgba(255,255,255,.9);display:grid;gap:2px}
:root:root .hp3-glass .home-price-secondary[hidden]{display:none}
:root:root .hp3-glass .home-price-secondary *{color:inherit;font-size:13px;margin:0}
:root:root .hp3-glass .adult-price-promotion{color:#fff;font-weight:500}
.hp3-glass__facts{list-style:none;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--hp3-hair);display:grid;gap:6px;font-size:14px}
@media(max-width:959px){
 .hp3-hero__in{grid-template-columns:minmax(0,1fr);padding-top:104px;padding-bottom:48px;gap:28px}
 .home-polish .hp3-hero .lead{margin-bottom:20px}
}
@media(max-width:480px){.home-polish .hp3-hero h1{font-size:clamp(44px,13vw,60px)}.hp3-glass{padding:18px}}

/* practical facts + trust line */
.hp3-facts{background:var(--hp3-paper);padding:22px var(--hp3-m) 18px;border-bottom:1px solid var(--hp3-line)}
:root:root .hp3-facts .journey-facts{max-width:var(--hp3-max);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:0;padding:0;background:none}
:root:root .hp3-facts .journey-facts>div{padding:6px 20px;border-left:1px solid var(--hp3-line);background:none;display:flex;flex-direction:column;gap:2px}
:root:root .hp3-facts .journey-facts>div:first-child{border-left:0;padding-left:0}
:root:root .hp3-facts .journey-facts span{font:500 12px/1.4 var(--hp3-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--hp3-muted)}
:root:root .hp3-facts .journey-facts strong{font:400 19px/1.3 var(--hp3-serif);color:var(--hp3-ink)}
:root:root .hp3-facts .journey-facts a{font-size:13px;color:var(--hp3-blue);min-height:24px}
.hp3-trust{max-width:var(--hp3-max);margin:16px auto 0;padding-top:14px;border-top:1px solid var(--hp3-line);text-align:center;font-size:14px;color:#24363C}
.hp3-trust strong{color:var(--hp3-ink);font-weight:600}
@media(max-width:860px){:root:root .hp3-facts .journey-facts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px}:root:root .hp3-facts .journey-facts>div:nth-child(3){border-left:0;padding-left:0}}

/* intro */
.hp3-intro{display:grid;place-items:center;text-align:center;padding:var(--hp3-pad) var(--hp3-m);--hp3-ov:rgba(8,24,36,.64)}
.hp3-intro__in{max-width:1040px}
.hp3-intro .hp3-bg{object-position:center 50%}
:root:root .home-polish .hp3-statement{font-size:clamp(34px,4.6vw,76px);line-height:1.1}
.hp3-intro__line{margin:28px auto 0;max-width:34em;color:#fff;font-size:18px}

/* islands crossfade */
.hp3-isl{position:relative;min-height:88svh;color:#fff;overflow:hidden;display:flex;flex-direction:column;background:var(--hp3-night);isolation:isolate}
.hp3-isl__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s var(--hp3-ease);z-index:-2}
.hp3-isl__bg.is-on{opacity:1}
.hp3-isl__bg[data-hp3-slide="0"]{object-position:center 40%}
.hp3-isl__bg[data-hp3-slide="1"]{object-position:center 60%}
.hp3-isl::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,24,36,.86) 0%,rgba(8,24,36,.7) 30%,rgba(8,24,36,.25) 52%,rgba(8,24,36,.15) 62%,rgba(8,24,36,.55) 100%);pointer-events:none}
.hp3-isl__top{padding:clamp(48px,7vw,96px) var(--hp3-m) 0;max-width:var(--hp3-max);width:100%;margin:0 auto}
.hp3-tabs{display:flex;flex-wrap:wrap;gap:4px clamp(16px,3vw,48px)}
.hp3-tabs[hidden]{display:none}
.hp3-tab{background:none;border:0;border-bottom:1px solid transparent;padding:4px 0;cursor:pointer;color:rgba(255,255,255,.82);font:300 clamp(28px,3.6vw,60px)/1.1 var(--hp3-serif);letter-spacing:-.015em;text-shadow:0 1px 12px rgba(0,0,0,.35);transition:color .3s}
.hp3-tab:hover{color:#fff}
.hp3-tab[aria-selected="true"]{color:#fff;border-color:#fff}
.hp3-isl__foot{margin:auto auto 0;max-width:var(--hp3-max);width:100%;padding:40px var(--hp3-m) clamp(32px,5vw,64px);display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
@media(min-width:701px){.hp3-isl__foot{padding-bottom:104px}}
.hp3-cards{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
.hp3-card{background:rgba(15,42,58,.93);color:#fff;padding:clamp(24px,3vw,40px)}
.hp3-card__num{font-size:12px;letter-spacing:.12em;color:rgba(255,255,255,.85);margin:0 0 14px}
.hp3-card h3{font:300 clamp(30px,3vw,48px)/1.05 var(--hp3-serif);letter-spacing:-.015em;margin:0 0 14px}
.hp3-card p{margin:0 0 16px;color:var(--hp3-on)}
.hp3-arrows{display:flex;gap:10px;flex:none}
.hp3-arrows[hidden]{display:none}
.hp3-circ{width:52px;height:52px;border-radius:50%;border:1px solid #fff;background:rgba(8,24,36,.35);color:#fff;cursor:pointer;display:grid;place-items:center;font-size:18px;transition:background-color .25s,color .25s}
.hp3-circ:hover{background:#fff;color:var(--hp3-ink)}
/* JS enhancement: one card at a time */
.hp3-isl.is-ready .hp3-cards{display:block;max-width:480px}
.hp3-isl.is-ready .hp3-card{display:none}
.hp3-isl.is-ready .hp3-card.is-on{display:block}
@media(prefers-reduced-motion:no-preference){.hp3-isl.is-ready .hp3-card.is-on{animation:hp3-in .5s var(--hp3-ease)}}
@keyframes hp3-in{from{transform:translateY(10px)}}
@media(max-width:900px){.hp3-cards{grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){.hp3-isl{min-height:72svh}}
@media(max-width:640px){.hp3-isl__foot{flex-direction:column;align-items:stretch}.hp3-arrows{justify-content:flex-end;order:-1}}

/* the day */
.hp3-day{display:flex;justify-content:flex-end}
.hp3-day::before{display:none}
.hp3-day .hp3-bg{object-position:center 50%}
.hp3-day__panel{width:50%;background:rgba(10,30,45,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:var(--hp3-pad) var(--hp3-m);display:flex;flex-direction:column;justify-content:center}
.hp3-day__panel>*{max-width:620px}
:root:root .home-polish .hp3-day .hp3-h2{font-size:clamp(36px,3.6vw,64px)}
.hp3-tl{list-style:none;margin:36px 0 0;padding:0}
.hp3-tl li{position:relative;padding:0 0 26px 36px}
.hp3-tl li::before{content:"";position:absolute;left:0;top:11px;width:11px;height:11px;border-radius:50%;background:#fff}
.hp3-tl li::after{content:"";position:absolute;left:5px;top:28px;bottom:4px;width:1px;background:rgba(255,255,255,.4)}
.hp3-tl li:last-child{padding-bottom:0}
.hp3-tl li:last-child::after{display:none}
.hp3-tl h3{font:400 clamp(22px,2vw,30px)/1.2 var(--hp3-serif);color:#fff;margin:0 0 6px}
.hp3-tl h3 span{font:500 12px/1 var(--hp3-sans);letter-spacing:.12em;color:rgba(255,255,255,.88);margin-right:10px;vertical-align:middle}
.hp3-tl p{margin:0;color:var(--hp3-on)}
.hp3-day .hp3-small{margin-top:28px}
@media(max-width:860px){.hp3-day{flex-direction:column;justify-content:flex-end;padding-top:34svh}.hp3-day__panel{width:100%}}

/* the city can wait */
.hp3-city{display:flex;align-items:flex-end;--hp3-ov:linear-gradient(0deg,rgba(8,24,36,.92) 0%,rgba(8,24,36,.78) 42%,rgba(8,24,36,.08) 72%),linear-gradient(90deg,rgba(8,24,36,.5) 0%,rgba(8,24,36,0) 55%)}
.hp3-city .hp3-bg{object-position:center 35%}
.hp3-city__in{width:100%;max-width:var(--hp3-max);margin:0 auto;padding:var(--hp3-pad) var(--hp3-m)}
.hp3-city__in>*{max-width:760px}
:root:root .home-polish .hp3-city .hp3-h2{margin-bottom:24px}
@media(max-width:720px){.hp3-city{--hp3-ov:linear-gradient(0deg,rgba(8,24,36,.92) 0%,rgba(8,24,36,.76) 62%,rgba(8,24,36,.25) 100%)}}

/* lunch 60/40 */
.hp3-lunch{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);background:var(--hp3-night);color:#fff}
.hp3-lunch__media{position:relative;margin:0;min-height:560px}
.hp3-lunch__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}
.hp3-lunch__text{padding:var(--hp3-pad) var(--hp3-m)}
:root:root .home-polish .hp3-lunch .hp3-h2{margin-bottom:36px;font-size:clamp(36px,3.6vw,64px)}
.hp3-listlabel{font:500 12px/1.4 var(--hp3-sans);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;color:rgba(255,255,255,.88)}
.hp3-listlabel--extra{color:#F4A98C}
.hp3-list{list-style:none;margin:0 0 32px;padding:0;border-top:1px solid rgba(255,255,255,.25)}
.hp3-list li{display:flex;flex-wrap:nowrap;gap:14px;align-items:baseline;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.25)}
.hp3-list li::before{content:"";flex:none;width:10px;height:5px;border-left:1.5px solid #9CCBEA;border-bottom:1.5px solid #9CCBEA;transform:rotate(-45deg) translateY(-3px)}
.hp3-list--no li{color:var(--hp3-on)}
.hp3-list--no li::before{border:0;height:1.5px;width:10px;background:rgba(255,255,255,.75);transform:translateY(-5px)}
@media(min-width:861px){.hp3-lunch__media img{position:sticky;inset:auto;top:76px;height:calc(100vh - 76px);max-height:100%}}
@media(max-width:860px){.hp3-lunch{grid-template-columns:minmax(0,1fr)}.hp3-lunch__media{min-height:0;aspect-ratio:4/3}}

/* reviews */
.hp3-stories{text-align:center;display:grid;place-items:center;padding:var(--hp3-pad) var(--hp3-m);--hp3-ov:rgba(8,24,36,.84)}
.hp3-stories__in{width:100%;max-width:var(--hp3-max)}
.hp3-quote{margin:0}
.hp3-quote blockquote{margin:0}
.hp3-quote blockquote p{font-size:clamp(32px,4.4vw,76px);line-height:1.1;max-width:1100px;margin:0 auto}
.hp3-quote figcaption{margin:28px 0 0;color:var(--hp3-on);font-size:15px}
.hp3-quote figcaption strong{color:#fff;font-weight:600}
.hp3-stories .review-booking{margin:28px 0 0;display:flex;justify-content:center}
.hp3-scores{margin-top:clamp(44px,6vw,80px);border-block:1px solid var(--hp3-hair);padding:clamp(28px,3vw,44px) 16px}
.hp3-scores__line{font:300 clamp(26px,2.6vw,40px)/1.2 var(--hp3-serif);letter-spacing:-.01em;color:#fff;margin:0;text-wrap:balance}
.hp3-plat{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 4px}
.hp3-plat li{display:flex;align-items:center}
.hp3-plat li+li::before{content:"";width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.75);margin:0 12px}
.hp3-plat a{color:#fff;text-decoration:none;font:500 16px/1 var(--hp3-sans);font-variant-caps:all-small-caps;letter-spacing:.1em;min-height:44px;display:inline-flex;align-items:center;gap:4px}
.hp3-plat a:hover{text-decoration:underline;text-underline-offset:4px}
.hp3-plat a span{font-size:12px;font-variant-caps:normal}
@media(max-width:600px){.hp3-plat{gap:0 20px}.hp3-plat li+li::before{display:none}}
.hp3-asof{margin:10px auto 0;text-align:center;max-width:none;font-size:13px;color:rgba(255,255,255,.82)}
:root:root .hp3-stories .google-reviews-panel{margin:28px auto 0;max-width:760px;text-align:left;background:rgba(10,30,45,.9);color:#fff;padding:20px;border:1px solid var(--hp3-hair)}
:root:root .hp3-stories .google-reviews-panel *{color:#fff}
:root:root .hp3-stories .google-reviews-panel .button{border-color:#fff}

/* on deck */
.hp3-deck{background:var(--hp3-deep);color:#fff;container-type:inline-size}
.hp3-deck__head{max-width:var(--hp3-max);margin:0 auto;padding:var(--hp3-pad) var(--hp3-m) clamp(32px,4vw,56px)}
.hp3-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:25vw;grid-auto-rows:calc((100cqw - 12px)/4);gap:4px}
.hp3-mosaic figure{position:relative;margin:0;overflow:hidden;min-width:0}
.hp3-mosaic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--hp3-ease)}
.hp3-mosaic figure:hover img{transform:scale(1.03)}
.hp3-mosaic figcaption{position:absolute;inset:auto 0 0;padding:56px clamp(14px,1.6vw,24px) clamp(12px,1.4vw,20px);color:#fff;font-size:15px;font-weight:500;background:linear-gradient(0deg,rgba(8,24,36,.88) 0%,rgba(8,24,36,.7) 45%,rgba(8,24,36,0) 100%)}
.hp3-mosaic .hp3-big figcaption{font:300 clamp(22px,2vw,32px)/1.2 var(--hp3-serif)}
.hp3-mosaic figure:nth-child(6) img{object-position:center 82%}
.hp3-mosaic figure:nth-child(1){grid-column:1/3;grid-row:1/3}
.hp3-mosaic figure:nth-child(4){grid-column:3/5;grid-row:2/4}
@media(max-width:720px){.hp3-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:50vw;grid-auto-rows:calc((100cqw - 4px)/2)}.hp3-mosaic figure:nth-child(1),.hp3-mosaic figure:nth-child(4){grid-column:span 2;grid-row:span 2}.hp3-mosaic figcaption{font-size:14px}}
.hp3-deep{background:var(--hp3-deep);color:#fff;text-align:center;padding:var(--hp3-pad) var(--hp3-m)}
.hp3-deep p{font:300 clamp(32px,3.6vw,60px)/1.1 var(--hp3-serif);letter-spacing:-.015em;margin:0 0 32px;text-wrap:balance}

/* film: full-bleed cover, click-to-load YouTube (cruise-video.js) */
.hp3-film{position:relative;background:var(--hp3-night);color:#fff}
.hp3-film__head{position:absolute;z-index:2;top:0;left:0;right:0;max-width:var(--hp3-max);margin:0 auto;padding:clamp(32px,4vw,72px) var(--hp3-m) 0;pointer-events:none}
:root:root .home-polish .hp3-film__head .hp3-h2{font-size:clamp(32px,3.4vw,60px);text-shadow:0 1px 12px rgba(0,0,0,.35)}
.hp3-film:has(iframe) .hp3-film__head{display:none}
:root:root .hp3-film .video-shell{position:relative;margin:0;border-radius:0;background:var(--hp3-night);aspect-ratio:auto}
:root:root .hp3-film .video-stage{position:relative;aspect-ratio:16/9;border-radius:0;overflow:hidden;margin:0;background:var(--hp3-night)}
:root:root .hp3-film .video-stage img{position:absolute;inset:0 auto 0 0;width:105%;max-width:none;height:100%;object-fit:cover}
.hp3-film .video-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,24,36,.82) 0%,rgba(8,24,36,.5) 26%,rgba(8,24,36,0) 52%);pointer-events:none}
.hp3-film .video-stage:has(iframe)::after{display:none}
:root:root .hp3-film .video-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
:root:root .hp3-film .hp3-play-btn{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;margin:0;cursor:pointer;background:none;border-radius:0;display:block;transform:none;color:var(--hp3-ink)}
:root:root .hp3-film .hp3-play-btn[hidden]{display:none}
.hp3-play{position:absolute;top:50%;left:50%;width:clamp(88px,10vw,140px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:rgba(244,243,239,.94);display:grid;place-items:center;transition:transform .3s var(--hp3-ease)}
.hp3-play::before{content:"";border-left:22px solid var(--hp3-ink);border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.hp3-play-btn:hover .hp3-play{transform:translate(-50%,-50%) scale(1.06)}
.hp3-play__label{position:absolute;left:50%;top:calc(50% + clamp(56px,6vw,82px));transform:translateX(-50%);background:rgba(10,30,45,.82);color:#fff;font:500 14px/1.2 var(--hp3-sans);padding:8px 14px;border-radius:999px;white-space:nowrap}
.hp3-play-btn:focus-visible{outline:3px solid #fff;outline-offset:-6px}
.hp3-film__foot{max-width:var(--hp3-max);margin:0 auto;padding:18px var(--hp3-m) 28px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;font-size:14px;color:var(--hp3-on)}
.hp3-film__foot p{margin:0}
:root:root .hp3-film .video-notice,:root:root .hp3-film .video-status{font-size:14px;color:var(--hp3-on);margin:0}
.hp3-film__foot .video-status:empty{display:none}
.hp3-film__foot .video-close[hidden]{display:none}
@media(max-width:720px){.hp3-film__head{position:static;padding:var(--hp3-pad) var(--hp3-m) 28px}.hp3-film .video-stage::after{display:none}.hp3-play__label{display:none}}

/* good to know */
.hp3-faqsec{background:var(--hp3-night);color:#fff;padding-block:var(--hp3-pad)}
.hp3-faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(40px,6vw,112px);align-items:start}
.hp3-acc{border-top:1px solid rgba(255,255,255,.28)}
@media(min-width:861px){.hp3-faq>div:first-child{position:sticky;top:120px}}
.hp3-acc details{border-bottom:1px solid rgba(255,255,255,.28)}
.hp3-acc a{color:#fff}
.hp3-acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font:400 clamp(20px,1.8vw,26px)/1.25 var(--hp3-serif);min-height:44px}
.hp3-acc summary::-webkit-details-marker{display:none}
.hp3-acc summary::after{content:"+";flex:none;width:36px;height:36px;border:1px solid rgba(255,255,255,.7);color:#fff;border-radius:50%;display:grid;place-items:center;font:400 20px/1 var(--hp3-sans)}
.hp3-acc details[open] summary::after{content:"–"}
.hp3-acc details p{margin:0;padding:0 56px 24px 0;color:var(--hp3-on)}
@media(max-width:860px){.hp3-faq{grid-template-columns:minmax(0,1fr)}.hp3-acc details p{padding-right:0}}

/* book direct */
.hp3-paper{background:var(--hp3-paper);color:var(--hp3-ink);padding-block:var(--hp3-pad)}
.hp3-tiles{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(20px,3vw,48px);margin:clamp(40px,5vw,72px) 0 0}
.hp3-tile{border-top:1px solid var(--hp3-ink);padding-top:20px}
.hp3-tile__n{color:var(--hp3-blue);font-size:14px;font-weight:600;margin:0 0 24px}
.hp3-tile h3{font:300 clamp(24px,2.2vw,34px)/1.1 var(--hp3-serif);letter-spacing:-.015em;margin:0 0 10px}
.hp3-tile p{margin:0;color:var(--hp3-muted);font-size:16px}
.hp3-tile a,.hp3-save a{color:var(--hp3-blue)}
.hp3-save{margin-top:clamp(36px,4vw,56px);padding:24px 0 0;border-top:1px solid var(--hp3-line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.hp3-save p{margin:0;max-width:52em;color:var(--hp3-muted)}
.hp3-save strong{color:var(--hp3-ink)}

/* final cta */
.hp3-cta{min-height:80svh;display:grid;place-items:center;text-align:center;padding:var(--hp3-pad) var(--hp3-m);--hp3-ov:rgba(8,24,36,.7)}
.hp3-cta .hp3-bg{object-position:center 55%}
.hp3-cta__in{max-width:900px;margin:0 auto}
.hp3-cta .hp3-hand{display:block;width:max-content;max-width:100%;margin:18px auto 0}
.hp3-cta__line{margin:28px 0 12px;font-size:18px;color:#fff}
:root:root .hp3-cta .deposit-reassurance{margin:0 auto 28px;padding:0;background:none;border:0;color:#fff;font-size:16px;max-width:40em}
:root:root .hp3-cta .deposit-reassurance strong{color:#fff}
:root:root .hp3-cta .deposit-reassurance span{display:block;color:var(--hp3-on)}
.hp3-cta .hp3-btns{justify-content:center;margin-top:28px}
.hp3-cta__help{margin:28px 0 0;font-size:15px;color:var(--hp3-on)}
.hp3-cta__help a{color:#fff}
@media(max-width:720px){.hp3-cta{min-height:72svh}}

/* footer on ink */
:root:root .footer{background:var(--hp3-ink);color:var(--hp3-paper);margin-top:0;padding:clamp(64px,7vw,112px) 0 40px}
:root:root .footer a,:root:root .footer .brand,:root:root .footer nav strong{color:var(--hp3-paper)}
:root:root .footer a{opacity:.9}
:root:root .footer a:hover{opacity:1;color:#fff;text-decoration:underline}
:root:root .footer p{color:rgba(244,243,239,.85)}
:root:root .footer .footer-bottom{border-color:rgba(244,243,239,.2);color:rgba(244,243,239,.85)}
:root:root .footer button{color:var(--hp3-paper);border-color:rgba(244,243,239,.5);background:transparent}
:root:root .footer .payment-reassurance,:root:root .footer .payment-reassurance *{color:rgba(244,243,239,.9)}
@media(min-width:701px){:root:root .footer{padding-bottom:112px}}
:root:root .footer a:focus-visible,:root:root .footer button:focus-visible{outline-color:#fff}

/* floating WhatsApp (desktop) + sticky price bar (mobile) */
.hp3-float{position:fixed;right:var(--hp3-m);bottom:24px;z-index:40;background:var(--hp3-deep);color:#fff;text-decoration:none;border-radius:999px;padding:14px 24px;font:500 15px/1.2 var(--hp3-sans);white-space:nowrap;box-shadow:0 10px 30px rgba(8,24,36,.35);border:1px solid rgba(255,255,255,.45)}
.hp3-float:hover{background:#0B3653}
.hp3-float:focus-visible{outline:2px solid var(--hp3-ink);outline-offset:3px}
@media(max-width:700px){.hp3-float{display:none}:root:root body{background:var(--hp3-ink)}}
:root:root .mobile-book{background:var(--hp3-deep);color:#fff;border-top:0;font-family:var(--hp3-sans)}
:root:root .mobile-book *{color:#fff}
:root:root .mobile-book del{color:rgba(255,255,255,.85)}
:root:root .mobile-book .button{background:var(--hp3-coral);color:var(--hp3-ink);border-radius:999px;font-weight:600}
:root:root .mobile-book .button *{color:var(--hp3-ink)}
html:has(#cookie-panel:not([hidden])) .hp3-float{display:none}

@media(prefers-reduced-motion:reduce){.home-polish *,.home-polish *::before,.home-polish *::after,.hp3-float,:root:root .header{animation:none!important;transition:none!important}}
@media (max-width:600px){.hp3-tab{font-size:22px}}
@media(max-width:600px){.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cookie-actions [data-cookie-preferences]{grid-column:1/-1}.cookie-actions .button{overflow-wrap:normal;word-break:normal;white-space:nowrap;padding:10px 12px}}
/* Swim-stop drone frame in the day chapter (5 Nov 2026): on phones the boat sits low in the frame, behind the panel, so the photo fills only the strip above the panel. */
@media(max-width:860px){.hp3-day:has(>.hp3-bg[src$="/v3-wp-swim-turquoise.webp"]){background:#0a1e2d}.hp3-day>.hp3-bg[src$="/v3-wp-swim-turquoise.webp"]{bottom:auto;height:34svh;object-position:30% 70%}}

/* Footer brand: the official BestCruise logo (navy wordmark reversed to white for the dark footer; sun, birds and wave keep their brand colours). */
:root:root .footer .brand-logo{display:inline-block;line-height:0;opacity:1}
:root:root .footer .brand-logo img{display:block;width:200px;max-width:100%;height:auto}
@media(max-width:700px){:root:root .footer .brand-logo img{width:170px}}

/* Review fixes (owner, 8 Nov 2026). The handwritten face is decorative: assets/v3.js switches it on after the page
   has loaded, so it never competes with the headline font on first paint. */
html.bc-fonts-late{--hp3-script:"Caveat","Segoe Print","Bradley Hand",cursive}
/* Plain-language booking conditions (curated list + link to the full terms). */
.bc-conditions__list{margin:0 0 10px;padding-left:1.1em}
.bc-conditions__list li{margin:0 0 6px}
.bc-conditions__terms{margin:0}
.bc-conditions__terms a{text-decoration:underline;text-underline-offset:2px}
/* One-line sticky bar: "From €127 · Book online". */
.mobile-book .adult-price-amount{font-size:16px;font-weight:600;white-space:nowrap}
.mobile-book [data-price-style="bar"] [data-price-value]:not([hidden]){display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;row-gap:0}.mobile-book [data-price-style="bar"] .adult-price-catalogue{display:inline-flex;align-items:baseline;gap:6px;font-size:13px;line-height:1.3;white-space:nowrap}.mobile-book .adult-price-sep{opacity:.7}
@media(max-width:379px){.mobile-book [data-price-style="bar"] [data-price-value]:not([hidden]){display:block}.mobile-book [data-price-style="bar"] .adult-price-catalogue{display:block;font-size:12px}.mobile-book .adult-price-sep{display:none}}
@media(max-width:700px){.mobile-book{padding:8px 14px}.mobile-book .button{padding:10px 18px}}
/* Home: the booking-card conditions sit on the dark glass panel (was white text on a white box). */
:root:root .hp3-glass .adult-price-details-copy{background:transparent;border:0;box-shadow:none;padding:6px 0 0;color:rgba(255,255,255,.92)}
:root:root .hp3-glass .adult-price-details-copy a{color:#fff}
/* Home hero: a fact-chip row; on phones the primary booking action sits beside "See the day". */
.hp3-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px;padding:0}
.hp3-chips li{margin:0;padding:6px 12px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(8,24,36,.35);font:500 13px/1.3 var(--hp3-sans);color:#fff;white-space:nowrap}
.home-polish .hp3-hero .hp3-hero__more{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}
.hp3-hero__book{display:none}
@media(max-width:700px){
 .hp3-hero__book{display:flex;flex:1 1 0;min-width:0}
 :root:root .hp3-hero .hp3-hero__book .button{flex:1 1 auto;width:100%;min-height:50px;justify-content:center;gap:10px;padding:12px 14px}
 .home-polish .hp3-hero .hp3-hero__more .hp3-btn--ghost{flex:1 1 0;min-width:0;min-height:50px;padding:12px 14px}
 /* Show the product: the turquoise anchor photo fills the top of the hero and fades into the night blue. */
 .home-polish .hp3-hero{display:block;min-height:0}
 :root:root .hp3-hero .hp3-hero__img{position:absolute;inset:0 0 auto 0;height:min(64svh,560px);object-position:62% 50%}
 .hp3-hero::after{inset:0 0 auto 0;height:min(64svh,560px);background:linear-gradient(180deg,rgba(8,24,36,.62) 0%,rgba(8,24,36,.12) 22%,rgba(8,24,36,.25) 46%,rgba(8,24,36,.82) 74%,var(--hp3-night) 100%)}
 .hp3-hero__in{padding-top:max(150px,26svh)}
 .home-polish .hp3-hero h1{font-size:clamp(38px,11vw,48px)}
 .home-polish .hp3-hero h1 .h1-lead{margin-bottom:12px}
 .home-polish .hp3-hero .lead{font-size:16px;line-height:1.5;margin:14px 0 16px}
 .hp3-chips{margin-bottom:18px}
 .hp3-chips li{font-size:12px;padding:5px 10px}
}
