@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2")}@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/ibm-plex-mono-latin-600-normal.woff2") format("woff2")}/* default heading sizes pinned (copy) */
h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.17rem}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/poppins-400.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("../fonts/poppins-500.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/poppins-600.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/poppins-700.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--sand:#f5f6f8;--ink:#1c2430;--coral:#0c6b74;--sea:#0c6b74;--gold:#d5e6e8;--card:#ffffff;--line:#e4e7ec;--muted:#5c6773;--soft:#eef1f4;--shadow:0 1px 2px rgb(28 36 48 / 6%);--serif:"Poppins","Segoe UI",system-ui,sans-serif;--sans:"Poppins","Segoe UI",system-ui,sans-serif;--max:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{margin:0;background:var(--sand);color:var(--ink);font-family:var(--sans);font-size:0.875rem;line-height:1.5}img,video{max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,.page-title{font-family:"Poppins","Segoe UI",system-ui,sans-serif;font-weight:700;letter-spacing:-0.03em}.logo strong{font-family:"Poppins","Segoe UI",system-ui,sans-serif;font-weight:700;letter-spacing:-0.03em}.wrap{width:min(var(--max),calc(100% - 2rem));margin-inline:auto}.muted{color:var(--muted)}.kicker{margin:0;font-size:0.6875rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--sea)}.skip{position:absolute;left:1rem;top:-4rem;background:white;padding:0.5rem 0.8rem;z-index:20}.skip:focus{top:0.5rem}.topbar{position:relative;z-index:40;background:var(--ink);color:#f6f1ea;font-size:0.7438rem}.topbar p{margin:0}.topbar .wrap{display:flex;justify-content:space-between;gap:0.7rem 1rem;align-items:center;flex-wrap:wrap;padding:0.45rem 0}.topbar a{color:inherit}.top-actions{display:flex;gap:0.4rem;align-items:center}.top-call,.top-wa{display:inline-flex;align-items:center;gap:0.35rem;min-height:2rem;padding:0.15rem 0.55rem;text-decoration:none;font-weight:700;font-size:0.7175rem;border:1px solid currentColor}.top-call .ico,.top-wa .ico{width:1.05rem;height:1.05rem}.top-wa{background:#25d366;color:#083018;border-color:#25d366}.site-head{position:sticky;top:0;z-index:40;background:#fffdfb}.bar{background:#fffdfb;border-bottom:1px solid var(--line);position:relative;z-index:40;box-shadow:0 1px 0 rgb(20 36 51 / 4%)}body.is-home .site-head{position:fixed;left:0;right:0;top:0;z-index:50;background:transparent}body.is-home .bar{position:relative;background:linear-gradient(100deg,rgb(7 18 32 / 90%) 0%,rgb(10 32 52 / 72%) 46%,rgb(8 28 48 / 58%) 100%);border-bottom:0;box-shadow:none;color:white}body.is-home .bar .logo strong,body.is-home .bar .nav a.nav-link{color:white}body.is-home .bar .logo svg rect{fill:#f2c200}body.is-home .bar .logo small{color:#e7c98a}body.is-home .bar .nav a.nav-link:hover,body.is-home .nav-drop.is-open > .nav-link{color:#f2c200}body.is-home .nav-open{background:transparent;color:white;border-color:rgb(255 255 255 / 70%)}body.is-home .site-head.is-stuck{background:#fffdfb;box-shadow:0 8px 24px rgb(16 32 51 / 12%)}body.is-home .site-head.is-stuck .bar{background:#fffdfb;color:var(--ink);border-bottom:1px solid var(--line);box-shadow:none}body.is-home .site-head.is-stuck .bar .logo strong,body.is-home .site-head.is-stuck .bar .nav a.nav-link{color:var(--ink)}body.is-home .site-head.is-stuck .bar .logo svg rect{fill:#142433}body.is-home .site-head.is-stuck .bar .logo small{color:var(--sea)}body.is-home .site-head.is-stuck .bar .nav a.nav-link:hover,body.is-home .site-head.is-stuck .nav-drop.is-open > .nav-link{color:#0c6b74}body.is-home .site-head.is-stuck .nav-open{background:white;color:var(--ink);border-color:var(--line)}.bar-inner{position:relative;z-index:2;display:flex;align-items:center;gap:0.45rem;padding:0.3rem 0}.logo{display:flex;align-items:center;gap:0.55rem;text-decoration:none;margin-right:auto}.logo strong{display:block;font-family:"Poppins","Segoe UI",system-ui,sans-serif;font-size:1.1813rem;line-height:1}.logo small{display:block;margin-top:0.15rem;color:var(--sea);font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase}.nav-toggle{position:absolute;opacity:0;pointer-events:none}.nav-open{display:none;border:1px solid var(--line);background:white;border-radius:999px;padding:0.45rem 0.8rem;cursor:pointer}.nav{display:flex;align-items:center;gap:0.15rem}.nav-drop{position:static}.nav a.nav-link{text-decoration:none;padding:0.32rem 0.48rem;font-weight:500;font-size:14px;letter-spacing:0;color:var(--ink);white-space:nowrap}.nav a.nav-link:hover,.nav-drop.is-open > .nav-link{background:transparent;color:#0c6b74;box-shadow:inset 0 -2px 0 #c4321f}.mega{display:none;position:absolute;left:0;right:0;top:100%;z-index:50;background:#fffdfb;color:var(--ink);border-top:1px solid var(--line);box-shadow:0 18px 40px rgb(20 36 51 / 12%);padding:1rem 0 1.15rem}.mega a{color:var(--ink);text-decoration:none;font-weight:400}.mega-dest{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 15.5rem;gap:1.2rem 1.6rem;align-items:stretch;padding:0.35rem 0 0.15rem}.mega-dest > div p,.mega-dest p{margin:0 0 0.45rem;color:#8b97a3;font-size:0.805rem}.mega-dest a{display:block;padding:0.32rem 0;color:#17324a;line-height:1.35}.mega-dest a.is-all{font-weight:700;margin-top:0.2rem}.mega-dest a:hover{color:var(--sea)}.mega-dest-card{position:relative;display:block;min-height:12.5rem;overflow:hidden;color:white;text-decoration:none}.mega-dest-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mega-dest-card span{position:absolute;left:0.85rem;right:0.85rem;bottom:0.85rem;display:grid;gap:0.15rem}.mega-dest-card strong{color:white;font-size:1.05rem;font-weight:700;line-height:1.2;text-shadow:0 1px 8px rgb(0 0 0 / 35%)}.mega-dest-card small{color:white;font-size:0.805rem}.mega .mega-dest a{font-size:0.8575rem !important}.mega .mega-dest p{color:#8b97a3 !important;font-size:0.805rem !important}.mega .mega-dest a.is-all,.mega .mega-dest-card strong{font-weight:700 !important}.mega .mega-dest-card strong{font-size:1.05rem !important;color:white}.mega .mega-dest-card small{color:white}@media (max-width:900px){.mega-dest{grid-template-columns:1fr 1fr}.mega-dest-card{grid-column:1 / -1;min-height:9rem}}.mega,.mega a,.mega p,.mega span,.mega small,.mega strong,.mega .btn{font-size:0.7656rem;font-weight:400}.mega a:hover{color:var(--sea)}@media (min-width:980px){.nav a.nav-link{position:relative}.nav-drop > .nav-link::after{content:"";position:absolute;left:-0.35rem;right:-0.35rem;top:100%;height:0.9rem}.nav-drop:hover > .mega,.nav-drop:focus-within > .mega,.nav-drop.is-open > .mega{display:block}.nav:has(.nav-drop.is-open) .nav-drop:not(.is-open) > .mega{display:none !important}.mega{margin-top:0;padding-top:0.85rem}}.menu{display:none;position:absolute;top:100%;left:0;width:min(28rem,80vw);max-height:22rem;overflow:auto;background:white;border:1px solid var(--line);border-radius:1rem;padding:0.7rem;box-shadow:var(--shadow);grid-template-columns:1fr 1fr;gap:0.15rem 0.6rem}.nav details[open] .menu{display:grid}.menu a{text-decoration:none;padding:0.3rem 0.2rem;font-size:0.805rem}.menu a:hover{color:var(--sea)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.35rem;min-height:2.75rem;padding:0.55rem 1.15rem;border-radius:0.7rem;border:0;text-decoration:none;background:#c4321f;color:white;cursor:pointer;font-weight:700}.btn:hover{background:#a82818}.btn-line{background:white;color:var(--ink);border:1px solid #cfd6de}.btn-line:hover{background:#f4f6f8}.hero-slider{background:var(--ink);color:white}.slider-video,.slides{grid-area:1 / 1}.slider-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.slides{position:relative;z-index:1;display:grid}.slide{grid-area:1 / 1;display:none;min-height:38.5rem;position:relative;align-content:end}.slide.is-on{display:grid}.slide-video{position:absolute;inset:0;width:100%;height:100%}.slide-video{object-fit:cover;display:block}.slide-video{z-index:1}@media (prefers-reduced-motion:reduce){.slide-video{display:none}}.is-plain{display:block}.hero-slider[data-mode="image"] .slider-video{visibility:hidden}.hero-slider[data-mode="video"] .slide-image{opacity:0}.slide-price{font-family:var(--serif);font-size:1.75rem}.mode-switch{display:flex;gap:0.35rem;align-items:center;flex:0 0 auto}.slide-page{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:0.4rem;align-content:center;min-width:0;min-height:2.8rem;padding:0.28rem 0.5rem;border:1px solid rgb(255 255 255 / 28%);background:transparent;color:white;text-align:left;cursor:pointer}.slide-page span{grid-row:1 / span 2;align-self:center;font-size:0.6875rem;font-weight:700;color:#e7c98a}.slide-page strong,.slide-page b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slide-page strong{font-size:0.6875rem;font-weight:700}.slide-page b{font-size:0.68rem;font-weight:600;color:#d5dee6}.slide-page[aria-selected="true"]{background:#e7c98a;border-color:#e7c98a;color:#142433}.slide-page[aria-selected="true"] span,.slide-page[aria-selected="true"] b{color:#142433}.mode-switch button{border:1px solid rgb(255 255 255 / 25%);background:transparent;color:white;min-height:2.4rem;padding:0.3rem 0.8rem;cursor:pointer}.mode-switch button[aria-pressed="true"]{background:var(--gold);color:#142433;border-color:var(--gold)}.dot{width:0.7rem;height:0.7rem;min-height:0.7rem;padding:0;border:0;background:transparent;background-image:radial-gradient(circle,rgb(255 255 255 / 55%) 42%,transparent 46%)}.dot[aria-selected="true"]{width:0.7rem;background-image:radial-gradient(circle,#e7c98a 55%,transparent 58%)}.search-card,.panel,.cruise-card{background:var(--card);border:1px solid var(--line);border-radius:1.4rem;box-shadow:var(--shadow)}.search-card{padding:1rem;margin-top:1.25rem;position:relative;z-index:3}.fields{display:grid;gap:0.7rem}.field{display:grid;gap:0.25rem;font-size:0.805rem}.field span{font-weight:650}.field select,.field input,textarea{width:100%;min-height:2.8rem;border-radius:0.8rem;border:1px solid var(--line);background:white;padding:0.4rem 0.7rem}textarea{min-height:6rem;padding:0.6rem 0.7rem}.search-actions{display:flex;flex-wrap:wrap;gap:0.7rem;align-items:center;justify-content:space-between;margin-top:0.8rem}.check{display:flex;gap:0.45rem;align-items:center}.section{padding:2.2rem 0}.page-title{margin:0;font-size:clamp(1.8rem,4vw,3rem)}.chips{display:flex;flex-wrap:wrap;gap:0.4rem;padding:0;margin:0.6rem 0 0;list-style:none}.chips a,.promo{display:inline-flex;align-items:center;text-decoration:none;border-radius:999px;padding:0.28rem 0.7rem;background:white;border:1px solid var(--line);font-size:0.77rem}.promo{background:#e7f4f4;border-color:#c5e4e4;color:#0c4c54;font-weight:650}.band{background:var(--ink);color:#f6f1ea;border-radius:1.4rem;padding:1.2rem}.band .chips a{color:var(--ink)}.band h2,.band h3{color:#f8f4ee}.page-hero{position:relative;min-height:16rem;color:white;display:grid;align-items:end}.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero .scrim{position:absolute;inset:0;background:linear-gradient(transparent,rgb(20 36 51 / 88%))}.page-hero .wrap{position:relative;z-index:1;padding-bottom:1.4rem}.crumbs{display:flex;flex-wrap:wrap;gap:0.35rem;list-style:none;padding:0;margin:0 0 0.6rem;font-size:0.77rem}.crumbs a{color:inherit}.light-crumbs{color:rgb(255 255 255 / 82%)}.layout{display:grid;gap:1rem;padding:1rem 0 2rem}.filters{background:white;border:1px solid var(--line);border-radius:1.2rem;padding:0.8rem}.filters summary{cursor:pointer;font-family:var(--serif);font-size:1.225rem}.checks{list-style:none;margin:0.4rem 0 0.8rem;padding:0;max-height:11rem;overflow:auto}.checks label{display:flex;gap:0.4rem;align-items:flex-start;margin:0.2rem 0}.price-bands{display:flex;flex-wrap:wrap;gap:0.35rem}.price-bands button,.date-chip{border:1px solid var(--line);background:white;border-radius:999px;min-height:2.3rem;padding:0.2rem 0.7rem;cursor:pointer}.price-bands button.is-on,.view-switch button[aria-pressed="true"],.date-chip.is-on{background:var(--ink);color:white;border-color:var(--ink)}.map-panel{margin:0.4rem 0 0.8rem}.map-panel[hidden]{display:none !important}.map{position:relative;height:22rem;border-radius:1.2rem;overflow:hidden;background:radial-gradient(ellipse at 30% 45%,rgb(255 255 255 / 8%),transparent 42%),linear-gradient(165deg,#16344d 0%,#0e6e78 55%,#1d4f68 100%)}.pin{position:absolute;transform:translate(-50%,-100%);border:0;background:white;color:var(--ink);border-radius:999px;padding:0.15rem 0.45rem;font-size:0.6875rem;cursor:pointer;max-width:7rem;box-shadow:0 4px 12px rgb(0 0 0 / 20%)}.pin strong{font-weight:750}.pin.is-off{opacity:0.35}.pin.is-on{background:var(--gold)}.results{display:grid;gap:0.9rem}.cruise-card{display:grid;overflow:hidden}.meta a,.route a{text-decoration:none}.meta a:hover,.route a:hover{color:var(--sea);text-decoration:underline}.meta,.route{margin:0}.date-range{position:relative}.date-range-btn{width:100%;text-align:left;background:white;border:1px solid var(--line);border-radius:0.8rem;min-height:2.8rem;padding:0.35rem 0.75rem;cursor:pointer;display:grid;gap:0.05rem}.date-range-btn strong{font-weight:650}.date-pop{position:absolute;z-index:40;top:calc(100% + 0.4rem);left:0;width:min(34rem,calc(100vw - 2rem));background:white;border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow);padding:0.75rem}.date-pop[hidden]{display:none}.date-pop-head,.date-pop-actions{display:flex;align-items:center;justify-content:space-between;gap:0.4rem}.date-pop-head button,.cal-day{border:0;background:transparent;cursor:pointer}.date-pop-head button{width:2.2rem;height:2.2rem;border-radius:999px;border:1px solid var(--line)}.cal-months{display:grid;gap:0.8rem;margin:0.5rem 0}.cal-month-name{margin:0 0 0.35rem;text-transform:capitalize;font-weight:700}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0.15rem}.cal-dow{text-align:center;font-size:0.6875rem;color:var(--muted);padding-bottom:0.2rem}.cal-day{height:2.15rem;border-radius:999px;font-variant-numeric:tabular-nums}.cal-day.is-in{background:#efe6db;border-radius:0.4rem}.cal-day.is-start,.cal-day.is-end{background:var(--ink);color:white}.cal-day.has-sail{box-shadow:inset 0 -3px 0 var(--coral)}.cal-day:disabled{opacity:0.28;cursor:default}.board-date{font-family:var(--serif);font-size:1.0062rem}.cabin{background:white;border:1px solid var(--line);border-radius:0.8rem;padding:0.4rem 0.5rem;min-width:0}.cabin strong{display:block;font-family:var(--serif);font-size:1.05rem;font-variant-numeric:tabular-nums}.flight-pill,.cabin .alt{display:inline-block;margin-top:0.15rem;color:var(--ink);background:var(--sand);border-radius:999px;padding:0.05rem 0.4rem;font-size:0.6875rem}.cabin.is-low{border-color:var(--coral);background:#fff6f4}.date-chip.is-muted{opacity:0.4}.cabin{border:1px solid var(--line);border-radius:0.85rem;padding:0.4rem 0.55rem;background:#fff;min-width:0}.cabin strong{display:block;font-variant-numeric:tabular-nums;font-size:0.9188rem}.cabin .alt{display:block;color:var(--muted);font-size:0.6875rem;font-variant-numeric:tabular-nums}.cabin.is-low{border-color:var(--coral);background:#fff6f4}.flag{display:inline-block;margin-top:0.15rem;color:var(--coral);font-size:0.68rem;font-weight:800;letter-spacing:0.04em;text-transform:uppercase}.pair-total{margin:0;font-size:0.7438rem}.date-row{display:flex;gap:0.35rem;overflow-x:auto;padding-bottom:0.15rem}.date-chip{white-space:nowrap}.empty{padding:1.2rem}.prose{max-width:42rem}.prose p{line-height:1.65}.split{display:grid;gap:1rem}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5rem}.contact-form{display:grid;gap:0.6rem}.site-footer{background:var(--ink);color:#e7eef3;margin-top:2rem}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer h2{color:#d7eef0;font-size:1rem;margin:0 0 0.4rem}.site-footer ul{list-style:none;margin:0;padding:0}@media (min-width:720px){.fields{grid-template-columns:1fr 1fr 1fr}.cruise-card{grid-template-columns:240px minmax(0,1fr)}.split{grid-template-columns:minmax(0,1fr) 280px;align-items:start}}@media (min-width:980px){.nav-open{display:none}.layout{grid-template-columns:minmax(0,1fr);align-items:start}}@media (max-width:979px){.nav-open{display:inline-flex}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffdfb;color:var(--ink);border-bottom:1px solid var(--line);padding:0.6rem 1rem 1rem;flex-direction:column;align-items:stretch;max-height:70vh;overflow:auto}.nav-toggle:checked ~ .nav{display:flex}body.is-home .nav,body.is-home .nav a.nav-link{color:var(--ink)}.nav-drop{width:100%}.mega{display:none;position:static;box-shadow:none;border:0;padding:0.35rem 0 0.8rem;background:transparent;margin-top:0}.nav-drop.is-open > .mega{display:block}.menu{position:static;width:auto;max-height:none;box-shadow:none;border:0;padding:0 0 0.4rem 0.6rem}body:not(:has(.hero-slider)) .site-head{position:sticky}body.is-home .nav-toggle:checked ~ .nav{background:#fffdfb}body.is-home .nav-toggle:checked ~ .nav a.nav-link{background:transparent;color:var(--ink)}}@media (min-width:720px){.cal-months{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slider-video{display:none}}.page-title{font-size:clamp(1.6rem,3vw,2.15rem)}h1,h2,h3{letter-spacing:-0.01em}.btn,.date-chip,.date-range-btn,.nav summary,.nav a.nav-link{border-radius:8px}.search-card{margin-top:1rem;box-shadow:none}.cruise-card{border-radius:12px;box-shadow:none}.route{color:var(--muted);font-size:0.805rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.date-chip{background:var(--sand);border-color:transparent}.date-chip.is-on{background:var(--ink)}.cabin{border-radius:8px;background:var(--sand);border-color:transparent}.cabin strong{font-size:0.9188rem}.flight-pill{background:white;color:var(--muted)}.flag{display:block}.filters{box-shadow:none}.price-line{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:0.5rem;align-items:center;padding:0.5rem 0.75rem;background:white;border:0;border-radius:0;border-bottom:1px solid var(--line)}.price-line strong,.price-line .flight-pill{font-size:0.8312rem;font-weight:700}.price-line .flight-pill{display:block;margin:0;padding:0;background:none;border-radius:0;color:var(--muted);font-weight:600}.price-line.is-low{background:#f3fafb}.price-line .flag{display:inline;margin:0;font-size:0.68rem}.date-row{gap:0.3rem}.date-chip{min-height:2rem;padding:0.15rem 0.65rem;background:white;border:1px solid var(--line)}.search-results{min-width:0;width:100%}.cruise-card.is-rich{display:grid;grid-template-columns:minmax(0,1fr);gap:0.75rem;padding:0.85rem;overflow:visible}.cruise-card.is-rich > .itin-panel{position:static;width:100%;margin:0;padding:0;border:0;box-shadow:none;background:transparent}.cruise-card.is-rich > .itin-panel[hidden]{display:none !important}.cruise-card.is-rich .itin-map{position:static;background:#14324a;min-height:12rem;display:flex;flex-direction:column}.cruise-card.is-rich .itin-map svg{width:100%;height:100%;min-height:12rem;flex:1;display:block}.cruise-card.is-rich > .date-row{padding-top:0.15rem}.cruise-card.is-active{outline:2px solid var(--sea)}.result-copy{display:grid;gap:0.35rem;align-content:start;min-width:0}.result-copy h2{margin:0;font-size:1.2rem;line-height:1.2}.result-copy h2 a{text-decoration:none}.result-fare{display:grid;align-content:start;gap:0.35rem;justify-items:stretch;text-align:left}.map-jump{justify-self:start;border:0;background:transparent;color:var(--sea);padding:0;cursor:pointer;font-weight:700;text-decoration:underline}.card-slider{position:relative;height:12.5rem;overflow:hidden;border-radius:10px;background:#102433}.card-frame{position:absolute;inset:0;opacity:0}.card-frame.is-on{opacity:1}.card-frame img{width:100%;height:100%;object-fit:cover;display:block}.card-slide-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:2rem;height:2rem;border:0;border-radius:999px;background:rgb(255 255 255 / 92%);cursor:pointer}.card-slide-btn.prev{left:0.45rem}.card-slide-btn.next{right:0.45rem}.card-slider .slide-count{z-index:2}.vantaggi{display:flex;flex-wrap:wrap;align-items:center;gap:0.35rem 0.5rem;margin-top:0.15rem}.vantaggi > span{font-size:0.6875rem;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;color:#142433}.slide-count{position:absolute;right:0.55rem;bottom:0.55rem;color:white;background:rgb(16 36 51 / 72%);border-radius:999px;font-size:0.6875rem;padding:0.1rem 0.45rem}.avail-date{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:white;padding:0.4rem 0.3rem;text-align:center}.avail-date{background:#f4f6f8;font-size:0.6875rem;font-weight:700;cursor:pointer}.avail-date.is-on{background:#e7f4f5}.avail-date.is-muted{opacity:0.35}.map-popup{position:absolute;z-index:4;width:min(16rem,80%);transform:translate(-50%,calc(-100% - 0.7rem));background:white;border-radius:12px;overflow:hidden;box-shadow:0 12px 32px rgb(0 0 0 / 28%)}.map-popup[hidden]{display:none}.map-popup img{width:100%;height:8rem;object-fit:cover;display:block}.itin-open{justify-self:start;border:0;background:transparent;padding:0;cursor:pointer;font-weight:700;color:#c4321f;text-decoration:underline;text-underline-offset:0.15em}.itin-slot{position:relative;justify-self:start;display:inline-block;max-width:100%}.itin-slot .itin-panel{position:absolute;z-index:8;left:calc(100% + 0.45rem);top:0;width:min(34rem,72vw);margin:0;background:white;border:1px solid var(--line);box-shadow:0 12px 28px rgb(16 36 51 / 16%);padding:0.35rem}.itin-slot .itin-panel[hidden]{display:none !important}.itin-panel{margin-top:0.35rem}.itin-map{position:sticky;top:0.75rem}.map-pin{cursor:pointer}.map-pin.is-here circle{fill:#c4321f}@media (min-width:800px){.card-slider{height:100%;min-height:11rem}}@media (min-width:980px){.map-panel{position:sticky;top:0.75rem}.map{height:min(68vh,38rem)}}.hero-slider{width:100%;border-radius:0}.hero-slider[data-width="box"]{width:min(var(--max),calc(100% - 2rem));margin:1rem auto 0;overflow:hidden}.hero-slider[data-width="full"] .slide,.hero-slider[data-width="full"] .slider-bar{padding-left:max(1rem,calc((100% - var(--max)) / 2));padding-right:max(1rem,calc((100% - var(--max)) / 2))}.hero-slider[data-width="box"] .slide,.hero-slider[data-width="box"] .slider-bar{padding-left:1rem;padding-right:1rem}*,*::before,*::after{border-radius:0 !important}.finder,.search-finder{display:grid;gap:0.7rem;background:white;border:1px solid var(--line);border-radius:1rem;padding:0.85rem;margin-top:1rem;position:relative;z-index:1}.search-card.is-short{margin-top:1.25rem;padding:1rem}.search-card .finder{margin:0;border:0;padding:0}.stepper > span,.field > span{font-size:0.6875rem;font-weight:700;color:var(--muted)}.stepper{display:grid;grid-template-columns:1.7rem minmax(2.2rem,1fr) 1.7rem;gap:0.15rem;align-items:center;background:var(--sand);border-radius:0.7rem;padding:0.25rem}.stepper > span{grid-column:1 / -1}.stepper button{border:0;background:white;border-radius:0.45rem;min-height:1.8rem;cursor:pointer;font-weight:700}.stepper input{width:100%;min-height:1.8rem;border:0;background:transparent;text-align:center;padding:0}.day-step{align-self:end}.search-hero{min-height:12rem}.result-bar{display:flex;justify-content:space-between;gap:0.8rem;align-items:end;margin-bottom:0.7rem}.view-switch button[aria-pressed="true"]{background:var(--ink);color:white}.layout,.search-results,.results,.cruise-card,.detail-page,.wrap{min-width:0;max-width:100%}.sail-card{border:1px solid var(--line);border-radius:0.8rem;background:white;overflow:hidden}.sail-card h3{margin:0;padding:0.45rem 0.6rem;background:#f4f6f8;font-size:0.95rem}.sail-card h3 small{display:block;color:var(--muted);font-weight:500;font-size:0.6875rem}.sail-card ul{list-style:none;margin:0;padding:0.35rem;display:grid;gap:0.25rem}.price-jump{display:grid;grid-template-columns:1fr auto;gap:0 0.4rem;width:100%;text-align:left;border:0;background:var(--sand);border-radius:0.55rem;padding:0.35rem 0.45rem;text-decoration:none;cursor:pointer}.price-jump small{grid-column:1 / -1;color:var(--muted);font-size:0.6875rem}.price-jump.is-out{opacity:0.5;pointer-events:none}.detail-page{display:grid;gap:1rem;padding:1rem 0 2rem}.steps{display:flex;flex-wrap:wrap;gap:0.4rem;list-style:none;padding:0;margin:0 0 0.8rem}.steps li{border:1px solid var(--line);border-radius:999px;padding:0.25rem 0.7rem;background:white;font-size:0.7438rem}.steps .is-on{background:#c4321f;color:white;border-color:#c4321f}.steps .is-done{background:#e7f4f4}@media (min-width:800px){.finder:not(.search-rail),.search-finder:not(.search-rail){grid-template-columns:minmax(0,1.1fr) minmax(0,1.15fr) 7.5rem minmax(12rem,1.3fr) auto;align-items:end}.finder:not(.search-rail) .btn,.search-finder:not(.search-rail) .btn{align-self:end}}@media (min-width:980px){.layout{grid-template-columns:250px minmax(0,1fr);align-items:start}details.filters > .filters-body{display:grid !important;gap:0.8rem}details.filters > summary{display:none}.detail-page{grid-template-columns:minmax(0,1fr) 300px;align-items:start}}@media (max-width:719px){.card-slider{height:12rem}}.filters{position:sticky;top:4.5rem;max-height:calc(100vh - 5rem);overflow:auto;background:white}.filters fieldset{border:0;border-bottom:1px solid var(--line);margin:0;padding:0.45rem 0 0.7rem}.filters legend{font-weight:700;padding:0}@media (max-width:719px){.filters{position:static;max-height:none}}.co-actions{display:flex;align-items:center;justify-content:space-between;gap:0.4rem;margin-top:auto;padding-top:0.45rem}.co-all,.co-promo{width:auto;min-height:1.7rem;padding:0.05rem 0.5rem;flex:none}.co-promo{background:white;color:#8a5a12;border:1px solid #efd7b0}.co-promo:hover{background:#fff6e8;color:#8a5a12}.co-actions{overflow:visible}.co-pop{position:relative}.co-menu{display:none;position:absolute;right:0;bottom:calc(100% - 0.35rem);z-index:70;width:min(34rem,86vw);max-height:22rem;overflow:auto;background:white;border:1px solid var(--line);box-shadow:0 18px 48px rgb(16 36 51 / 22%);padding:0.55rem;grid-template-columns:1fr 1fr;align-content:start;gap:0.35rem}.co-pop:hover .co-menu,.co-pop:focus-within .co-menu,.co-pop.is-open .co-menu{display:grid}.co-menu::after{content:"";position:absolute;left:0;right:0;bottom:-0.45rem;height:0.45rem}.co-menu-close{border:1px solid var(--line);background:white;color:#142433;min-height:1.7rem;padding:0 0.55rem;cursor:pointer}.co-menu a{display:grid;gap:0.05rem;text-decoration:none;background:#f7f8fa;padding:0.45rem 0.5rem;min-width:0}.co-menu a strong{color:#142433}.co-menu a small{color:var(--muted)}.co-menu a b{color:#0c6b74}.co-menu a:hover{background:white;box-shadow:inset 0 -2px 0 #c4321f}@media (max-width:640px){.co-menu{grid-template-columns:1fr;width:min(20rem,86vw)}}@media (min-width:800px){.finder,.search-finder{grid-template-columns:1fr 1fr;align-items:end}.finder > .btn,.search-finder > .btn{grid-column:1 / -1}}@media (min-width:1100px){.finder,.search-finder{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,0.9fr) minmax(0,1.15fr) 7.5rem}.finder > .btn,.search-finder > .btn{grid-column:4 / -1}}.promo-tag{display:inline-flex;width:fit-content;background:#c4321f;color:white;text-decoration:none;font-size:0.6875rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:0.22rem 0.45rem}.record-deal{display:grid;gap:0.05rem;margin:0.25rem 0;padding:0.45rem 0.55rem;background:#fff6e8;border:1px solid #efd7b0;font-size:0.7175rem}.record-deal span{font-size:0.68rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#8a5a12}.record-deal strong{font-size:0.8575rem}.record-deal em{font-style:normal;color:var(--muted)}.record-deal.is-voucher{background:#e7f4f4;border-color:#b7d8d8}.record-deal.is-voucher span{color:#0c4c54}.fare-was{color:var(--muted);font-size:0.7175rem}@media (max-width:719px){.slide{min-height:26rem}.search-card.is-short,.finder,.search-finder{margin-top:1rem}}@media (max-width:1099px){.detail-page{grid-template-columns:1fr}.layout{grid-template-columns:1fr}.filters{position:static;max-height:none}}html,body{max-width:100%}.wrap,.layout,.finder,.search-rail,.cruise-card,.search-results,.results{min-width:0;max-width:100%}.btn,a.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:2.6rem;padding:0.45rem 0.9rem;background:#c4321f;color:white;border:1px solid #c4321f;text-decoration:none;font-weight:700}.btn-line{background:white;color:var(--ink);border:1px solid var(--line)}.btn:hover,a.btn:hover{background:#8d2416;color:white}.btn-line:hover{background:#f4f6f8;color:var(--ink)}.itin-open{border:0;background:transparent;padding:0;color:#c4321f;text-decoration:underline;text-underline-offset:0.18em;justify-self:start}.search-hero{min-height:8rem}.finder.search-rail{grid-template-columns:1fr;gap:0.55rem;border:0;padding:0;margin-top:0;background:transparent;align-items:end}.finder.search-rail .field,.finder.search-rail .day-step{min-width:0;background:#f6f7f9;border:1px solid var(--line);padding:0.35rem 0.6rem 0.45rem}.finder.search-rail .field select,.finder.search-rail .date-range-btn{width:100%;border:0;background:transparent;padding-left:0;padding-right:0;min-height:2.2rem}.finder.search-rail .stepper,.finder.search-rail .day-step{width:100%;background:white;border:1px solid var(--line)}.finder.search-rail > .btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:2.7rem;padding:0.45rem 1rem;background:#c4321f;color:white;text-decoration:none}.finder.search-rail > .btn:hover{background:#8d2416;color:white}.search-card.is-short,.search-finder.search-rail{background:white;border:1px solid var(--line);padding:0.9rem 1rem 1rem}.search-finder.search-rail{margin-top:1rem}.card-slider{aspect-ratio:16 / 9;height:auto;min-height:0;max-height:9rem}.card-frame img{width:100%;height:100%;object-fit:cover}.date-row{overflow-x:hidden;flex-wrap:wrap}@media (min-width:760px){.finder.search-rail{grid-template-columns:1fr 1fr}.finder.search-rail > .btn{grid-column:1 / -1}}@media (min-width:900px){.card-slider{max-height:none;width:15.5rem}}@media (max-width:1079px){.finder.search-rail .day-step{grid-column:1 / -1}}@media (min-width:1080px){.finder.search-rail{grid-template-columns:minmax(0,1.3fr) minmax(0,1.15fr) minmax(0,1.2fr) minmax(7rem,0.7fr) auto;align-items:end}.finder.search-rail .day-step{grid-column:auto}.finder.search-rail > .btn{grid-column:auto;width:auto;min-width:7.2rem;align-self:end}}.search-layout{grid-template-columns:1fr;align-items:start}.search-layout .filters{position:static;max-height:none;overflow:visible;margin-top:1rem}.search-layout .filters > summary{display:block !important;font-size:0.9188rem;margin-bottom:0.4rem}.search-layout details.filters[open] > .filters-body{display:grid;gap:0.2rem}@media (min-width:960px){.search-layout{grid-template-columns:17rem minmax(0,1fr)}.search-layout .filters{position:sticky;top:4.6rem;max-height:calc(100vh - 5.2rem);overflow:auto}.search-layout .checks{max-height:none;overflow:visible}}.result-bar{align-items:center}.price-bands button{background:transparent;border:0;min-height:0;padding:0.15rem 0.35rem;color:var(--muted);text-decoration:underline;text-underline-offset:0.15em}.view-switch button[aria-pressed="true"],.price-bands button.is-on{background:transparent;color:#c4321f;border:0;font-weight:700}.search-layout .cruise-card.is-rich,.search-layout .results,.search-layout .search-results,.search-layout .search-results > div{width:100%}.search-layout .card-slider{grid-column:auto;width:100%;height:11rem;max-height:none;aspect-ratio:auto}.search-layout .result-fare{justify-items:stretch;text-align:left}.result-copy h2,.result-copy p,.result-copy .meta,.result-copy .route{overflow-wrap:normal;word-break:normal}.result-fare{min-width:9.5rem;justify-items:start}.itin-open,.map-jump,.result-fare .btn{white-space:nowrap}.card-slider{width:14rem;max-height:8rem}@media (min-width:800px){.search-layout .card-slider{height:100%;min-height:10.5rem}}@media (max-width:900px){.itin-slot .itin-panel{left:0;top:calc(100% + 0.35rem);width:min(34rem,calc(100vw - 2.4rem))}}@media (max-width:720px){.card-slider,.search-layout .card-slider{width:100%;max-height:none;height:11rem}.search-layout .result-fare{justify-items:start;text-align:left}.itin-open,.map-jump,.result-fare .btn{white-space:normal}.pick-cabins{grid-template-columns:1fr 1fr}}.pick-kicker{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0.25rem 0.8rem;margin:0;font-size:0.6875rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:#142433}.pick-kicker span:last-child:not(:first-child){font-weight:600;letter-spacing:0;text-transform:none;color:var(--muted);font-size:0.6875rem}.pick-cabins{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.55rem}.pick-cabin{border:1px solid #d5dee4;background:white;text-align:left;padding:0.55rem 0.65rem;cursor:pointer;display:grid;gap:0.08rem;line-height:1.15;font:inherit;color:inherit;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name price" "note price";align-items:center;column-gap:0.45rem}.pick-cabin.is-on{border-color:#17324a;background:#17324a;color:white}.pick-cabin.is-out,.pick-cabin:disabled{color:var(--muted);cursor:default;background:#f7f8f9}.pick-cabin span{grid-area:name;font-size:0.7175rem;font-weight:750}.pick-cabin strong{grid-area:price;font-size:0.9188rem;line-height:1.1;align-self:center}.pick-cabin small{grid-area:note;color:var(--muted);font-size:0.6875rem}.pick-cabin.is-on span,.pick-cabin.is-on small,.pick-cabin.is-on strong{color:white}.pick-rooms{display:grid;grid-template-columns:1fr;gap:0.35rem;border:0;min-width:0}.pick-rooms .pick-room img{display:none}@media (min-width:720px){.pick-rooms{grid-template-columns:1fr 1fr}}.pick-room{border:1px solid #d5dee4;background:white;text-align:left;padding:0.5rem 0.65rem;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name price" "meta price";column-gap:0.75rem;row-gap:0.08rem;align-items:center;font:inherit;color:inherit;min-width:0}.pick-room.is-on{background:#fff8f6;border-color:#c4321f;box-shadow:inset 3px 0 0 #c4321f}.pick-room.is-out,.pick-room:disabled{color:var(--muted);cursor:default}.pick-room span{grid-area:name;font-size:0.7175rem;font-weight:700}.pick-room strong{grid-area:price;font-size:0.875rem;justify-self:end}.pick-room small{grid-area:meta;color:var(--muted);font-size:0.6875rem;line-height:1.3}.pick-room.is-on span{color:#c4321f}@media (max-width:719px){.pick-rooms{grid-template-columns:1fr}}.exp-logos{display:flex;flex-wrap:wrap;gap:0.45rem}.exp-logo{width:3.6rem;height:3.6rem;padding:0;border:2px solid var(--exp,#17324a);background:white;cursor:pointer;display:grid;place-items:center;border-radius:50% !important}.exp-logo.is-on{box-shadow:0 0 0 2px var(--exp,#17324a)}.exp-logo.is-off{opacity:0.4;cursor:default}.exp-mark{width:2.85rem;height:2.85rem;border-radius:50% !important;background:var(--exp,#17324a);color:var(--exp-ink,white);display:grid;place-items:center;text-align:center;font-size:0.62rem;font-weight:800;line-height:1.05;padding:0.2rem}.exp-detail{background:#142433;color:white;padding:0.7rem 0.8rem;max-width:100%}.exp-detail strong{display:block;font-size:0.8312rem}.exp-detail p,.exp-detail li{margin:0.25rem 0 0;font-size:0.7175rem;line-height:1.35}.exp-detail ul{margin:0.35rem 0 0;padding-left:1.1rem}.exp-apply{color:#e7c98a}.share-pop{position:relative;flex:none}.share-toggle{width:2.45rem;height:2.45rem;border:1px solid var(--line);background:white;cursor:pointer;display:grid;place-items:center;color:#17324a}.share-toggle:hover,.share-pop.is-open .share-toggle{border-color:#17324a;background:#17324a;color:white}.share-menu{position:absolute;right:0;bottom:calc(100% + 0.35rem);z-index:8;display:grid;gap:0.3rem;width:12.5rem;padding:0.55rem;background:white;border:1px solid var(--line);box-shadow:0 8px 24px rgb(16 36 51 / 16%)}.share-menu[hidden]{display:none !important}.share-menu p{margin:0 0 0.1rem;font-size:0.6875rem;font-weight:700}.share-menu .share-link{justify-content:flex-start}.detail-main[data-tabs="ready"] .room-group{display:none}.detail-main[data-tabs="ready"] .room-group.is-on{display:block}.atlas-card{background:white;border:1px solid var(--line);padding:0.9rem 1rem 1rem;display:grid;gap:0.4rem;align-content:start;text-decoration:none}a.atlas-card:hover{border-color:#142433}.atlas-card header{display:flex;justify-content:space-between;align-items:baseline;gap:0.6rem}.atlas-card h2,.atlas-card h3{margin:0;font-size:1.15rem}.atlas-card header a,.atlas-card > span{color:#c4321f;font-weight:700;font-size:0.7438rem;text-decoration:none}.atlas-card p{margin:0;color:var(--muted)}@media (min-width:960px){.detail-page{grid-template-columns:minmax(0,1fr) 18.5rem;align-items:start}}.detail-page.wrap{width:min(1480px,calc(100% - 1.5rem))}.ship-funnel{width:1.1rem;height:1.3rem;margin-left:46%;background:#17324a}.detail-prices[data-line="costa"] .exp-card.is-on{border-color:#0b6b63}.detail-prices[data-line="costa"] .exp-badge{background:#0b6b63}.info-btn[aria-expanded="true"]{background:#17324a;color:white}@media (min-width:1100px){.detail-prices[data-line="costa"] .exp-board{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:860px){.detail-page{grid-template-columns:minmax(0,1fr) 21rem;align-items:start}}@media (max-width:859px){.detail-page{grid-template-columns:1fr;padding-bottom:6.2rem}.stepper{grid-template-columns:2.75rem minmax(2.2rem,1fr) 2.75rem;min-height:0}.stepper button{min-width:2.75rem;min-height:2.75rem}.logo{min-width:0}.logo span{min-width:0}.logo strong{font-size:0.9188rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo small,.hide-sm{display:none}.logo svg{width:28px;height:28px;flex:none}.bar-inner{gap:0.45rem}.bar-inner > .btn,.nav-open{flex:none}.nav-open{min-height:1.85rem;padding:0.15rem 0.5rem;font-size:0.6875rem;display:inline-flex;align-items:center}.field select,.field input,textarea{font-size:16px}body:has(.detail-page) .site-footer{padding-bottom:5.6rem}.stepper{min-height:2.6rem}.page-title{font-size:1.7rem}}.search-desk{margin-top:0.85rem;background:white;border:1px solid var(--line);padding:0.55rem 0.7rem 0.6rem}.promo-cards{position:relative;min-height:19rem}.promo-photo,.promo-card{display:none}.promo-photo.is-on,.promo-card.is-on{display:block}.promo-photo.is-on{position:absolute;inset:0;color:white;text-decoration:none}.promo-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:68%;background:linear-gradient(transparent,rgb(12 24 38 / 90%))}.promo-flag{position:absolute;top:0.85rem;left:0.85rem;z-index:2;background:#ffd100;color:#142433;font-style:normal;font-size:0.6875rem;font-weight:800;padding:0.28rem 0.5rem}.promo-tick{width:1.25rem;height:0.22rem;padding:0;border:0;cursor:pointer;background:rgb(255 255 255 / 55%)}.promo-tick[aria-selected="true"]{width:1.85rem;background:white}.promo-cards:has(.tone-1.is-on) .promo-tick{background:rgb(6 60 93 / 28%)}.promo-cards:has(.tone-1.is-on) .promo-tick[aria-selected="true"]{background:#063c5d}.promo-card.is-on{position:absolute;inset:0;color:white}.promo-card.tone-1,.is-plain.tone-1{background:#ffd100;color:#063c5d}.promo-card.tone-1 .promo-title,.promo-card.tone-1 p,.promo-card.tone-1 .promo-same,.promo-card.tone-1 .promo-same b{color:#063c5d}.promo-photo:has(.is-plain)::after{background:linear-gradient(180deg,rgb(12 24 38 / 10%),rgb(12 24 38 / 62%))}.promo-same{margin:0.45rem 0 0;font-size:0.805rem;color:#e7eef3}.promo-same b{color:white;font-weight:700}.promo-badge{justify-self:start;background:#e7c98a;color:#142433;font-size:0.6875rem;font-weight:700;padding:0.18rem 0.45rem}.promo-card .promo-title{margin:0.6rem 0 0.35rem;color:white;font-size:clamp(1.6rem,3vw,2.35rem);line-height:1.05}.promo-card p{margin:0;max-width:26rem}.promo-count{position:absolute;left:1rem;bottom:1.15rem;z-index:3;margin:0;color:white;font-size:0.6875rem;font-weight:700}.promo-cards:has(.tone-1.is-on) .promo-count{color:#063c5d}.promo-cols{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:white}.promo-cols section{min-width:0;display:flex;flex-direction:column;padding:0.85rem 0.95rem 0.65rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.promo-cols h3{margin:0 0 0.25rem;padding:0;border:0}.promo-col-tab{width:100%;margin:0;padding:0 0 0.28rem;border:0;border-bottom:2px solid #e7c98a;background:transparent;color:#142433;text-align:left;cursor:pointer;font:inherit;font-size:0.6875rem;font-weight:500;letter-spacing:0.04em;text-transform:uppercase}.promo-cols a{display:flex;justify-content:space-between;gap:0.45rem;align-items:baseline;padding:0.18rem 0.1rem;margin:0;text-decoration:none;font-size:0.7rem;font-weight:400;line-height:1.3}.promo-cols a + a{border-top:1px solid #e8edf1}.promo-cols a strong{min-width:0;font-size:0.7rem;font-weight:400;line-height:1.3}.promo-cols a span{flex:none;color:#5c6773;font-size:0.6875rem;font-weight:400;white-space:nowrap}.promo-cols a:hover{background:#f4f7f9}.promo-cols a:hover strong{color:#c4321f}.promo-cols a.is-current{background:var(--ink);color:white}.promo-cols a.is-current strong,.promo-cols a.is-current span{color:white}.promo-cols a.is-current:hover{background:#1d3348}.promo-cols a.is-current:hover strong{color:#e7c98a}@media (min-width:901px){.promo-cols[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-cols[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.promo-cols[data-count="4"],.promo-cols[data-count="8"]{grid-template-columns:repeat(4,minmax(0,1fr))}.promo-cols[data-count="6"],.promo-cols[data-count="9"]{grid-template-columns:repeat(3,minmax(0,1fr))}.promo-cols[data-count="5"]{grid-template-columns:repeat(6,minmax(0,1fr))}.promo-cols[data-count="5"] > section{grid-column:span 2}.promo-cols[data-count="5"] > section:nth-child(n + 4){grid-column:span 3}.promo-cols[data-count="7"]{grid-template-columns:repeat(12,minmax(0,1fr))}.promo-cols[data-count="7"] > section{grid-column:span 3}.promo-cols[data-count="7"] > section:nth-child(n + 5){grid-column:span 4}.promo-cols[data-count="1"] .promo-links{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));column-gap:1.25rem}.promo-cols[data-count="1"] .promo-links a + a{border-top:0}.promo-cols[data-count="1"] .promo-links a{border-bottom:1px solid #e8edf1}}@media (max-width:900px){.promo-cards{min-height:0}.promo-card.is-on{position:relative;inset:auto}.promo-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.promo-cols[data-count="2"],.promo-cols[data-count="3"],.promo-cols[data-count="4"],.promo-cols[data-count="5"],.promo-cols[data-count="6"],.promo-cols[data-count="7"],.promo-cols[data-count="8"],.promo-cols[data-count="9"]{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-cols > section:last-child:nth-child(odd){grid-column:1 / -1}}@media (max-width:640px){.promo-card .promo-title{font-size:1.35rem;margin-top:0.35rem}.promo-cols,.promo-cols[data-count]{display:flex;flex-direction:column}.promo-cols > section{grid-column:auto !important;display:flex;flex-direction:column;gap:0.2rem;padding:0.45rem 0.65rem 0.55rem}.promo-cols section.is-source{background:#f7f8fa}.promo-col-tab{display:flex;justify-content:space-between;align-items:center}.promo-col-tab::after{content:"›";font-size:0.875rem;line-height:1;color:#c4321f}.promo-cols section.is-source .promo-col-tab::after{content:"⌄"}.promo-cols h3{margin:0}.promo-cols a{display:flex;padding:0.22rem 0;font-size:0.7175rem}.promo-cols a span{font-size:0.6875rem}}.sail-board{overflow:hidden}.sail-filters button[aria-pressed="true"]{background:#142433;border-color:#142433;color:white}.sail-viewport{width:100%;min-width:0;max-width:100%;overflow:hidden}.sail-viewport{container-type:inline-size;scrollbar-width:none}.sail-viewport::-webkit-scrollbar{display:none}.sail-track{display:flex;gap:0.75rem;width:max-content;transition:transform 0.35s ease}.sail-card{flex:0 0 100cqw;display:flex;flex-direction:column;min-width:0;background:white;border:1px solid #e6ebf0;box-shadow:0 8px 24px rgb(16 36 51 / 5%);border-radius:0 !important}.sail-card.is-off{display:none}.sail-tag{position:absolute;top:0.55rem;left:0.55rem;font-style:normal;background:#142433;color:white;padding:0.16rem 0.4rem;font-size:0.68rem}@container (min-width:720px){.sail-card{flex-basis:calc((100cqw - 0.75rem) / 2)}}@container (min-width:1100px){.sail-card{flex-basis:calc((100cqw - 2.25rem) / 4)}}.year-desk{display:grid;width:100%;background:white;border:1px solid var(--line)}.year-menu button[aria-selected="true"]{background:#142433;border-color:#142433;color:white}.year-menu button[aria-selected="true"] span{color:#e7c98a}@media (min-width:800px){.year-desk{grid-template-columns:11rem minmax(0,1fr)}}.ask{position:relative;margin:0 0 0.55rem}.ask-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;align-items:stretch;background:white;border:1px solid var(--line)}.ask-box{display:flex;align-items:center;gap:0.4rem;min-width:0;min-height:3rem;padding:0.25rem 0.7rem}.ask-box svg{flex:none;color:var(--muted)}.ask-chips{display:flex;flex-wrap:wrap;gap:0.25rem}.ask-chip{display:inline-flex;align-items:center;gap:0.25rem;background:#142433;color:white;padding:0.12rem 0.4rem;font-size:0.6875rem}.ask-chip button{border:0;background:transparent;color:white;cursor:pointer;padding:0 0.1rem;font:inherit}.ask-input{flex:1 1 8rem;min-width:8rem;border:0;background:transparent;min-height:2.2rem;padding:0}.ask .ask-go.btn{min-height:3rem;height:100%;padding:0 1.1rem;background:#f2a900;color:#142433;border:0;white-space:nowrap}.ask .ask-go.btn:hover{background:#e0b400;color:#142433}.ask-list{position:absolute;z-index:8;left:0;right:8.5rem;top:3.05rem;margin:0;padding:0.25rem 0;list-style:none;background:white;border:1px solid var(--line);max-height:16rem;overflow:auto}.ask-list[hidden]{display:none}.ask-list button{display:flex;justify-content:space-between;gap:0.6rem;width:100%;border:0;background:white;text-align:left;padding:0.45rem 0.7rem;cursor:pointer}.ask-list button.is-on,.ask-list button:hover{background:#f4f7fb}.ask-list small{color:var(--muted)}.ask-hint{margin:0.35rem 0 0;color:var(--muted);font-size:0.7175rem}.search-desk-head h2,.search-desk-title{margin:0 0 0.4rem;font-size:1.05rem;font-weight:700}.search-desk .finder.search-rail{display:grid;gap:0.4rem;margin:0;padding:0;background:transparent;border:0;color:var(--ink)}.search-desk .finder.search-rail .field,.search-desk .finder.search-rail .day-step{background:#f6f7f9;border:1px solid var(--line);padding:0.2rem 0.5rem 0.28rem;margin:0}.search-desk .field > span,.search-desk .stepper > span{font-size:0.68rem;font-weight:700;color:var(--muted)}.search-desk .field{gap:0.05rem}.search-desk .field select,.search-desk .date-range-btn{border:0;background:transparent;padding:0;min-height:1.55rem;height:1.55rem;display:flex;align-items:center}.search-desk .date-range-btn{display:block;height:auto}.search-desk .date-range-btn .kicker{display:none}.search-desk .date-range-btn strong{font-size:0.8312rem;font-weight:600}.search-desk .stepper{padding:0.1rem 0.2rem}.search-desk .stepper button,.search-desk .stepper input{min-height:1.5rem}.search-desk .finder.search-rail > .btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:3rem;padding:0.55rem 1rem;background:#c4321f;color:white;border:0;text-decoration:none;font-size:0.875rem}.search-desk .finder.search-rail > .btn:hover{background:#8d2416;color:white}.search-desk .flight-choice{display:flex;flex-wrap:wrap;align-items:center;gap:0.35rem 0.45rem;margin-top:0.55rem}.search-desk .flight-choice > span{font-size:0.6875rem;font-weight:700;color:var(--muted);margin-right:0.15rem}.search-desk .flight-choice label{display:inline-flex;align-items:center;min-height:2rem;padding:0.1rem 0.55rem;border:1px solid var(--line);background:#f6f7f9;cursor:pointer;font-size:0.7175rem}.search-desk .flight-choice input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.search-desk .flight-choice label:has(input:checked){background:#17324a;border-color:#17324a;color:white}.search-desk .stepper button{min-width:1.9rem;min-height:1.9rem}.search-desk .date-range:has([aria-expanded="true"]){z-index:8}.search-desk .finder.search-rail{grid-template-columns:1fr;align-items:stretch}.search-desk .finder.search-rail > .field,.search-desk .finder.search-rail > .day-step,.search-desk .search-actions{min-height:0;height:auto}.search-desk .search-actions{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:0.4rem;align-items:end;background:transparent;border:0;padding:0}.search-desk .search-reset{width:2.4rem;height:2.4rem;border:1px solid var(--line);background:white;color:#17324a;display:grid;place-items:center;cursor:pointer}.search-desk .search-reset:hover{background:#f4f7fb}.search-desk .search-actions .btn{width:100%;height:2.4rem;min-height:2.4rem}.search-desk .flight-choice{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr))}.search-desk .flight-choice label{justify-content:center}.sea-loader{position:fixed;inset:0;z-index:80;display:none;place-items:center;align-content:center;gap:0.8rem;background:#17324a;color:white;text-align:center}.sea-loader.is-on{display:grid}.sea-loader[hidden]{display:none !important}.sea-loader p{margin:0.4rem 0 0;letter-spacing:0.02em}.sea-ship{display:block;width:68%;margin:0 auto -0.35rem;animation:sea-bob 1.6s ease-in-out infinite}.sea-waves{overflow:hidden;height:3.2rem}.sea-waves svg{width:200%;height:100%;display:block;animation:sea-wave 2.4s linear infinite}@keyframes sea-bob{50%{transform:translateY(7px) rotate(-1.5deg)}}@keyframes sea-wave{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.sea-ship,.sea-waves svg{animation:none}}@media (min-width:760px){.search-desk .finder.search-rail{grid-template-columns:1fr 1fr}.search-desk .finder.search-rail > .search-actions{grid-column:1 / -1}}@media (min-width:1080px){.search-desk .finder.search-rail{grid-template-columns:minmax(0,1.25fr) minmax(0,1.1fr) minmax(0,1.15fr) minmax(0,1.2fr) auto}.search-desk .finder.search-rail > .field,.search-desk .finder.search-rail > .day-step{grid-column:auto}}@media (max-width:759px){.search-desk{padding:0.4rem 0.45rem 0.45rem}.search-desk .search-reset,.search-desk .search-actions .btn{height:2.45rem;min-height:2.45rem}.search-desk .search-reset{width:2.45rem}}.pick-cabin{position:relative}.pick-cabin:has(.pick-flag){padding-top:1.15rem}.pick-flag{position:absolute;top:0;left:0.4rem;background:#17324a;color:white;font-style:normal;font-size:0.68rem;font-weight:700;padding:0.08rem 0.35rem}.pick-cabin.is-on{border:1px solid #17324a;background:#17324a;color:white}.card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:0.45rem}.card-actions .btn{flex:1 1 8.5rem;min-height:2.7rem}.card-actions .compare-add{flex:0 0 auto;width:auto;min-height:2rem;padding:0.15rem 0.5rem;gap:0.28rem;font-size:0.6875rem}.compare-add .ico,.share-link .ico{width:0.95rem;height:0.95rem;flex:none;display:block}.compare-add[aria-pressed="true"]{background:#17324a;border-color:#17324a;color:white}.share-bar{display:flex;flex-wrap:wrap;align-items:center;gap:0.3rem;margin:0.45rem 0 0}.share-label{font-size:0.6875rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--muted);margin-right:0.1rem}.share-link{display:inline-flex;align-items:center;gap:0.25rem;border:1px solid var(--line);background:white;color:var(--ink);text-decoration:none;font:inherit;font-size:0.6875rem;font-weight:700;min-height:1.85rem;padding:0.1rem 0.42rem;cursor:pointer}.share-link:hover{border-color:#17324a;color:#17324a}.page-share{padding:1rem 0 0}.page-share .share-bar{margin:0;padding:0.55rem 0.7rem;background:white;border:1px solid var(--line)}body.has-compare{padding-bottom:6.2rem}.compare-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0.6rem;align-items:center;background:#17324a;color:white;padding:0.55rem 0.8rem}.compare-bar[hidden],.compare-sheet[hidden]{display:none !important}.compare-slots{display:flex;gap:0.4rem;overflow:auto}.compare-slot{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;gap:0.4rem;align-items:center;background:white;color:var(--ink);min-width:13rem;padding-right:0.25rem}.compare-slot img{width:3rem;height:3rem;object-fit:cover}.compare-slot strong,.compare-slot span{display:block}.compare-slot span{color:var(--muted);font-size:0.6875rem}.compare-slot button{border:0;background:transparent;font:inherit;font-size:1.05rem;cursor:pointer;min-width:2rem;min-height:2rem}.compare-actions{display:grid;justify-items:end;gap:0.15rem}.compare-note{margin:0;font-size:0.6875rem}.compare-sheet{position:fixed;inset:0;z-index:60;background:rgb(23 50 74 / 55%);display:grid;align-items:end;justify-items:center}.compare-panel{background:white;width:min(72rem,100%);max-height:92vh;overflow:auto;padding:0.9rem}.compare-head{display:flex;justify-content:space-between;align-items:center;gap:0.6rem;margin-bottom:0.7rem}.compare-head h2{margin:0}.compare-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:0.7rem}.compare-col{border:1px solid var(--line);padding:0.7rem;display:grid;align-content:start;gap:0.25rem}.compare-col img{width:100%;height:8rem;object-fit:cover}.compare-col h3{margin:0.2rem 0 0;font-size:1.05rem}.compare-col p{margin:0;font-size:0.7438rem}.compare-price{display:grid;grid-template-columns:1fr auto;gap:0.1rem 0.4rem;border-top:1px solid var(--line);padding-top:0.3rem}.compare-price small{grid-column:1 / -1;color:var(--muted)}.compare-price.is-pick{background:#f4f7fb}.compare-col .btn{margin-top:0.45rem}@media (max-width:720px){.compare-bar{grid-template-columns:1fr}.compare-actions{justify-items:stretch}.compare-actions .btn{width:100%}.pick-cabins{grid-template-columns:1fr 1fr}}.search-desk{padding:0.4rem 0.55rem 0.45rem}.search-desk .search-desk-head h2{margin:0 0 0.28rem;font-size:0.98rem;line-height:1.15}.search-desk .finder.search-rail{gap:0.28rem}.search-desk .finder.search-rail > .field,.search-desk .finder.search-rail > .day-step{min-width:0;padding:0.12rem 0.4rem 0.16rem}.search-desk .finder.search-rail .field{gap:0.02rem;min-width:0}.search-desk .finder.search-rail .field > span{font-size:0.64rem;line-height:1.1}.search-desk .finder.search-rail .field select{width:100%;min-width:0;max-width:100%;min-height:1.4rem;height:1.4rem;max-height:1.4rem;padding:0;font-size:0.9rem;line-height:1.2}.search-desk .finder.search-rail .date-range-btn{width:100%;min-width:0;max-width:100%;min-height:1.4rem;height:1.4rem;max-height:1.4rem;padding:0;font-size:0.7875rem;line-height:1.2}.search-desk .finder.search-rail .date-range-btn{display:flex;align-items:center}.search-desk .finder.search-rail .date-range-btn .kicker{display:none}.search-desk .finder.search-rail .date-range-btn strong{display:block;min-width:0;font-size:0.7875rem;font-weight:600;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-desk .finder.search-rail > .day-step button{border:1px solid var(--line);background:#f4f7fb;cursor:pointer}.search-desk .flight-choice{position:relative}.search-desk .finder.search-rail > .day-step{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;justify-self:stretch;align-self:stretch;gap:0.02rem;width:auto;max-width:none;min-height:0;padding:0.12rem 0.4rem 0.16rem}.search-desk .finder.search-rail > .day-step > span:first-child{font-size:0.64rem;line-height:1.1;font-weight:700;color:var(--muted)}.search-desk .day-ctrl{display:grid;grid-template-columns:1.55rem 1.7rem 1.55rem;align-items:center;justify-content:start;gap:0.15rem}.search-desk .finder.search-rail > .day-step button,.search-desk .finder.search-rail > .day-step input{min-width:0;width:1.55rem;height:1.4rem;min-height:1.4rem;padding:0}.search-desk .finder.search-rail > .day-step input{width:1.7rem}.search-desk .search-actions{grid-template-columns:2.25rem minmax(0,1fr);gap:0.28rem}.search-desk .search-reset,.search-desk .search-actions .btn{height:2.25rem;min-height:2.25rem}.search-desk .search-reset{width:2.25rem}.search-desk .search-actions .btn{font-size:0.8312rem;padding:0 0.7rem}.search-desk .flight-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.28rem;margin-top:0.32rem;align-items:stretch}.search-desk .flight-choice > span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.search-desk .flight-choice label{min-height:1.85rem;padding:0.1rem 0.3rem;font-size:0.6875rem;justify-content:center;text-align:center;white-space:nowrap}@media (min-width:760px){.search-desk .flight-choice{grid-template-columns:auto repeat(3,minmax(0,1fr))}.search-desk .flight-choice > span{position:static;width:auto;height:auto;margin:0;padding:0;overflow:visible;clip:auto;white-space:nowrap;font-size:0.6875rem;align-self:center}}@media (max-width:1079px){.search-desk .finder.search-rail{grid-template-columns:1fr 1fr}.search-desk .finder.search-rail > .day-step{grid-column:1 / -1}}@media (max-width:859px){.search-desk .finder.search-rail .field select{font-size:16px;min-height:1.65rem;height:1.65rem;max-height:none}.search-desk .finder.search-rail .date-range-btn{font-size:14px;min-height:1.65rem;height:1.65rem;max-height:none}.search-desk .finder.search-rail > .day-step input{font-size:16px}.search-desk .finder.search-rail > .day-step button{font-size:14px}}@media (max-width:759px){.search-desk .search-reset,.search-desk .search-actions .btn{height:2.45rem;min-height:2.45rem}.search-desk .search-reset{width:2.45rem}.search-desk .flight-choice label{min-height:2.15rem;font-size:0.6875rem;padding:0.1rem 0.15rem}}@media (min-width:1080px){.search-desk .finder.search-rail > .day-step{width:auto;max-width:none;justify-self:stretch}}.search-desk .search-plug{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1.1fr) minmax(0,1.15fr) minmax(0,1.2fr) auto;gap:0.28rem;align-items:stretch;margin-top:0.35rem;padding:0;background:transparent;border:0}.search-desk .search-plug > .field{background:#f6f7f9;border:1px solid var(--line);padding:0.12rem 0.4rem 0.16rem;min-width:0}.search-desk .search-plug > .field > span,.search-desk .search-plug .flight-name{font-size:0.64rem;line-height:1.1;font-weight:700;color:var(--muted)}.search-desk .search-plug .day-ctrl{justify-content:start}.search-desk .search-plug .flight-opts{width:100%}.search-desk .search-plug .search-actions{align-self:end}.search-desk input[type="number"]{-moz-appearance:textfield;appearance:textfield}.search-desk input[type="number"]::-webkit-outer-spin-button,.search-desk input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.search-desk .day-ctrl{grid-template-columns:1.85rem 1.9rem 1.85rem}.search-desk .finder.search-rail > .day-step input{width:1.85rem;min-width:1.85rem;height:1.85rem;min-height:1.85rem;font-size:1rem;line-height:1;text-align:center}.search-desk .finder.search-rail > .day-step button{width:1.85rem;min-width:1.85rem;height:1.85rem;min-height:1.85rem;font-size:0.875rem;line-height:1;text-align:center}.search-desk .finder.search-rail > .day-step input{width:1.9rem}.search-desk .search-plug .flight-choice{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0.18rem;margin:0;padding:0;align-items:stretch;border:0;background:transparent}.search-desk .search-plug .flight-name{position:static;display:block;width:auto;height:auto;margin:0;padding:0;overflow:visible;clip:auto;white-space:nowrap;border:0;font-size:0.64rem;line-height:1.1;font-weight:700;color:var(--muted)}.search-desk .search-plug .flight-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:max-content;max-width:100%}.search-plug .flight-choice label{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:0.2rem;min-height:2.15rem;min-width:2.6rem;margin:0;padding:0.1rem 0.45rem;border:1px solid var(--line);border-right-width:0;background:white;text-align:center;cursor:pointer}.search-plug .flight-icons{display:inline-flex;align-items:center;gap:0.12rem}.search-plug .flight-ico{width:1.15rem;height:1.15rem;display:block}.search-plug .flight-word{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.search-plug .flight-choice label::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 0.35rem);transform:translateX(-50%);background:var(--ink,#0b2545);color:#fff;font-size:0.6875rem;font-weight:600;line-height:1.2;padding:0.28rem 0.45rem;white-space:nowrap;opacity:0;pointer-events:none;z-index:6}.search-plug .flight-choice label:hover::after,.search-plug .flight-choice label:focus-within::after{opacity:1}.search-plug .flight-choice label:last-of-type{border-right-width:1px}.search-plug .flight-choice label:has(input:checked){background:#17324a;color:white}.search-desk .search-plug .search-actions{grid-column:auto;justify-self:end;width:max-content;display:grid;grid-template-columns:2.45rem auto;gap:0.35rem;align-items:stretch;background:transparent;border:0;padding:0}.search-plug .search-reset,.search-plug .search-actions .btn{height:2.45rem;min-height:2.45rem}.search-plug .search-reset{width:2.45rem}.search-plug .search-actions .btn{width:auto;min-width:6.5rem;padding:0 1rem}@media (max-width:1079px){.search-desk .search-plug{grid-template-columns:1fr 1fr}.search-desk .search-plug .flight-choice,.search-desk .search-plug .search-actions{grid-column:1 / -1}}@media (max-width:900px){.search-desk .search-plug .search-actions{justify-self:stretch;width:100%;grid-template-columns:2.45rem minmax(0,1fr)}.search-desk .search-plug .search-actions .btn{width:100%}}@media (max-width:560px){.search-plug .flight-choice label{font-size:0.6875rem;padding:0.1rem 0.15rem}}@media (min-width:760px){.date-pop{left:auto;right:0}}@media (max-width:759px){.finder.search-rail:has(.date-range-btn[aria-expanded="true"]){z-index:60}.date-pop{position:fixed;left:0.5rem;right:auto;bottom:0.55rem;top:auto;width:calc(100vw - 1rem);max-width:calc(100vw - 1rem);min-width:0;max-height:calc(100dvh - 4.6rem);overflow:auto;z-index:2;padding:0.7rem 0.75rem 0.8rem}.date-pop::before{content:"";position:fixed;inset:0;background:rgb(16 36 51 / 48%);z-index:-1}.date-pop .cal-months{grid-template-columns:1fr;gap:0;margin:0.35rem 0 0.45rem;min-width:0}.date-pop .cal-month:nth-child(n + 2){display:none}.date-pop .cal-days{min-width:0;width:100%}.date-pop .cal-day{height:2.45rem;min-width:0;width:100%;padding:0;font-size:0.8312rem}.date-pop .date-pop-actions{position:sticky;bottom:-0.8rem;background:white;margin:0 -0.75rem -0.8rem;padding:0.45rem 0.75rem 0.8rem}.date-pop .date-pop-actions .btn{flex:1;min-height:2.5rem}.hero-slider .slide{min-height:0}.hero-slider .slide.is-on{display:flex;flex-direction:column;justify-content:flex-start;align-content:stretch;padding-left:0;padding-right:0}.hero-slider .slide-video{position:relative;inset:auto;display:block;width:100%;height:16.5rem;flex:none;object-fit:cover;object-position:center top}.hero-slider[data-mode="video"] .slider-video{height:16.5rem;bottom:auto}.hero-slider .slide.has-video .slide-video{position:absolute;top:0;left:0;height:16.5rem}body.is-home .nav-toggle:checked ~ .nav{background:#fffdfb;color:var(--ink)}body.is-home .nav-toggle:checked ~ .nav a.nav-link{background:transparent;color:var(--ink)}}.assist-idea{text-align:left;color:white;background:transparent;border:1px solid rgb(255 255 255 / 22%);padding:0.65rem 0.7rem;cursor:pointer}.assist-idea strong,.assist-idea span{display:block}.assist-idea strong{font-family:"Poppins","Segoe UI",system-ui,sans-serif;font-size:0.8575rem;font-weight:700}.assist-idea span{margin-top:0.15rem;color:rgb(255 255 255 / 72%);font-size:0.6875rem;line-height:1.3}.assist-idea:hover,.assist-idea:focus-visible{border-color:#e7c98a}.assist-idea[aria-pressed="true"]{background:#e7c98a;border-color:#e7c98a;color:#142433}.assist-idea[aria-pressed="true"] span{color:#3d4d5c}.assist-budget p{margin:0 0 0.35rem;color:#e7c98a;font-size:0.6875rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.assist-budget{display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center}.assist-budget p{flex:1 0 100%}.assist-budget button{border:1px solid rgb(255 255 255 / 22%);background:transparent;color:white;padding:0.38rem 0.6rem;cursor:pointer;font-size:0.735rem}.assist-budget button[aria-pressed="true"]{background:white;color:#142433;border-color:white}#assist-form label{display:block;margin-bottom:0.3rem;font-size:0.6875rem;color:rgb(255 255 255 / 78%)}#assist-form div{display:flex;gap:0.4rem}#assist-form input{flex:1;min-width:0;border:0;background:white;color:#142433;padding:0.65rem 0.7rem}#assist-form button{border:0;background:#c4321f;color:white;font-weight:700;padding:0.65rem 0.8rem;cursor:pointer}#assist-form button:hover{background:#a82818}.assist-cards{display:grid;gap:0.55rem}.assist-card{display:grid;grid-template-columns:7.4rem minmax(0,1fr);min-height:7.4rem;background:white;border:1px solid #e4e7ec;text-decoration:none;color:var(--ink);overflow:hidden}.assist-card img{width:100%;height:100%;object-fit:cover}.assist-card span{padding:0.65rem 0.75rem;display:flex;flex-direction:column;min-width:0}.assist-card small{color:var(--muted);font-size:0.6875rem}.assist-card strong{margin-top:0.12rem;font-size:0.875rem;line-height:1.25}.assist-card em{margin-top:0.2rem;font-style:normal;color:#3d4d5c;font-size:0.7175rem}.assist-card b{margin-top:auto;padding-top:0.35rem;color:#0c6b74;font-size:0.875rem}.assist-card:hover{border-color:#0c6b74}.assist-empty{margin:0;padding:0.8rem;background:white;border:1px solid var(--line)}.assist-more{margin:0}.assist-more a{color:var(--sea);font-weight:700;text-decoration:none}.assist-more a:hover{text-decoration:underline}@media (max-width:560px){#assist-form div{flex-direction:column}}@media (prefers-reduced-motion:no-preference){.assist-card img{transition:transform 0.35s ease}.assist-card:hover img{transform:scale(1.04)}}.leave-track{display:flex;gap:0.55rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.leave-track::-webkit-scrollbar{display:none}.leave-track a{flex:0 0 calc((100% - 2.2rem) / 5);scroll-snap-align:start;min-height:3.15rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;background:white;border:1px solid #d5deea;color:#16315c;font-family:"Poppins","Segoe UI",system-ui,sans-serif}.leave-track strong{font-size:0.8312rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase}.leave-track small{color:#5c6773;font-size:0.68rem;font-weight:700;letter-spacing:0.08em}.leave-keys{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0.55rem}.leave-keys h3{margin:0;font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted)}.leave-keys-view{overflow:hidden;min-width:0}.leave-keys-track{display:flex;gap:0.4rem;width:max-content}.leave-keys a{flex:0 0 auto;text-decoration:none;background:white;border:1px solid var(--line);padding:0.38rem 0.6rem;font-size:0.77rem;color:#142433;white-space:nowrap}.leave-keys a:hover{border-color:#0c6b74;color:#0c6b74}.assist-toggle{flex:none;display:inline-flex;align-items:center;gap:0.45rem;border:0;background:#142433;color:white;cursor:pointer;min-height:2.7rem;padding:0 0.85rem 0 0.7rem;font-family:"Poppins","Segoe UI",system-ui,sans-serif;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;font-size:0.7175rem}.assist-toggle svg{width:1.25rem;height:1.25rem}.assist-toggle:hover,.assist-toggle[aria-expanded="true"]{background:#0c6b74}.assist-section[hidden]{display:none !important}@media (max-width:720px){.leave-track a{flex-basis:calc((100% - 0.55rem) / 2)}}.intent{border-top:1px solid var(--line)}.intent a{flex:0 0 auto;text-decoration:none;font-size:0.6875rem;font-weight:700;padding:0.18rem 0.45rem;border:1px solid currentColor;white-space:nowrap}body.is-home .intent{background:rgb(8 18 28 / 55%);border-top-color:rgb(255 255 255 / 18%)}.dest-split{display:grid;gap:0.8rem}.dest-nav{display:grid;grid-template-columns:1fr 1fr;gap:0.7rem 1rem;align-content:start}.dest-nav.is-list{grid-template-columns:1fr;gap:0.15rem}.dest-nav.is-list a{display:flex;justify-content:flex-start;align-items:center;gap:0.45rem;padding:0.4rem 0.5rem;border-left:2px solid transparent;text-decoration:none}.dest-nav.is-list a span{flex:1;min-width:0}.dest-nav.is-list a.is-on,.dest-nav.is-list a:hover{background:#f7f8fa;border-left-color:#c4321f;color:#142433}.dest-nav.is-list a{display:flex;align-items:center}.dest-nav.is-list a.is-on::after{content:"›";margin-left:0.35rem;color:#c4321f}.co-dot{width:0.55rem;height:0.55rem;display:inline-block;flex:none}.mega-year{display:grid;gap:0.7rem}.mega-year .is-offers{border-top:1px solid var(--line);padding-top:0.65rem}.mega-spot{display:grid;gap:0.15rem;margin-bottom:0.7rem}.mega-spot p{margin:0.15rem 0 0.5rem;color:var(--muted);font-size:0.735rem}.mega .btn{width:auto;min-height:1.6rem;padding:0.1rem 0.65rem;flex:0 0 auto;justify-self:end}.mega-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:0.45rem}.mega-card{display:block;background:#f7f8fa;padding:0.45rem 0.6rem}.mega-card strong,.mega-card small{display:block;font-weight:500}.mega-card small{color:var(--muted);font-size:0.6875rem}.mega-card:hover{background:white;box-shadow:inset 0 -2px 0 #c4321f}.dest-panel{display:none;align-content:start;gap:0.65rem;padding:0.15rem 0 0.2rem;background:transparent}.dest-panel.is-on{display:grid}.mega-empty{margin:0;color:var(--muted)}.mega a small{display:block;font-weight:500;color:var(--muted);font-size:0.6875rem}.mega-kicker{margin:0 0 0.35rem;letter-spacing:0.06em;text-transform:uppercase}.mega-kicker{color:var(--muted)}.mega-links{display:grid;gap:0.12rem;align-content:start}.mega-links a{padding:0.28rem 0;font-weight:500}.mega-links a.mega-sub{font-weight:500;font-size:0.7175rem;color:#3d4d5c}.mega-inline{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:0.4rem}.mega-inline a{display:block;padding:0.55rem 0.7rem;background:#f7f8fa;border-bottom:2px solid transparent}.mega-inline a:hover{background:white;border-bottom-color:#c4321f;color:#142433}.mega-more{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:0.8rem;margin:0.65rem 0 0}.mega-more .btn{width:auto}.mega a,.mega p,.mega span,.mega small,.mega strong,.mega .btn,.mega .mega-kicker{font-size:0.7656rem !important;font-weight:400 !important}.site-footer li{margin:0.18rem 0}@media (min-width:980px){.dest-split{grid-template-columns:16rem minmax(0,1fr);align-items:stretch;gap:0;background:#f3f6f9;border:1px solid var(--line)}.dest-nav{background:#142433;padding:0.45rem;max-height:24rem;overflow:auto}.dest-nav.is-list + .dest-panels{color:#e7c98a}.dest-nav.is-list a{color:white;border-left-width:3px;padding:0.48rem 0.55rem}.dest-nav.is-list a.is-on,.dest-nav.is-list a:hover{background:white;color:#142433;border-left-color:#f2a900}.dest-nav.is-list a.is-on::after{color:#c4321f}.dest-panels{background:white;padding:0.85rem 1rem}.dest-split.is-years{grid-template-columns:12.5rem minmax(0,1fr)}.dest-split.is-years .dest-nav.is-list a{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:0.05rem;min-width:0}.dest-split.is-years .dest-nav.is-list a span,.dest-split.is-years .dest-nav.is-list a small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dest-split.is-years .dest-nav.is-list a small{color:#e7c98a}.dest-split.is-years .dest-nav.is-list a:hover small,.dest-split.is-years .dest-nav.is-list a.is-on small{color:#52627a}.dest-split.is-years .dest-nav.is-list a::after{content:none}.mega-year{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,0.9fr)}.mega-year .is-offers{border-top:0;border-left:1px solid var(--line);padding:0 0 0 0.85rem}.dest-nav{grid-template-columns:1fr;max-height:none;overflow:visible;border-right:0;padding-right:0.35rem}.dest-panels{min-width:0;position:relative;z-index:1}.dest-panel{display:none}.dest-panel.is-on{display:grid}.mega-year{grid-template-columns:repeat(3,minmax(0,1fr))}}.news-form,.panel .contact-form{display:grid;gap:0.6rem;background:white;border:1px solid var(--line);padding:1rem}.news-form h2{margin:0;font-size:1.35rem}.news-form p{margin:0}.panel .contact-form.enquiry,.enquiry{display:flex;flex-direction:column;gap:0.55rem;min-height:100%}.enquiry textarea{min-height:4.6rem}.enquiry-progress{margin:0;color:var(--muted);font-size:0.7175rem;font-weight:700;white-space:nowrap}.hp{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.port-find{margin-top:1.25rem;background:#102033;color:white}.port-find .kicker{color:#e7c98a}.port-find h2{margin:0;color:white;font-size:clamp(1.2rem,2vw,1.45rem);line-height:1.15;font-weight:500}.port-go{flex:0 0 auto;display:flex;justify-content:flex-end;margin-top:auto;min-height:0;padding-top:0.55rem;width:100%}.port-go-row{display:flex;align-items:center;gap:0.35rem;width:auto;max-width:100%;margin-left:auto}.port-slip{flex:0 1 auto;min-width:0;max-width:100%;display:flex;align-items:center;gap:0.35rem;margin:0;padding:0.15rem 0.45rem;border:1px solid rgb(255 255 255 / 16%);background:rgb(255 255 255 / 6%)}.port-slip span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.port-slip strong{font-size:0.7175rem;font-weight:400;line-height:1.2;max-width:9.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.port-slip small{color:#d5dee6;font-size:0.68rem;white-space:nowrap}.port-slip.is-on{border-color:#f2c200;background:rgb(242 194 0 / 12%)}.port-go .btn{flex:none;width:auto;align-self:center;background:#2f9e44;height:1.7rem;min-height:1.7rem;padding:0 0.65rem;font-size:0.6875rem;font-weight:500;white-space:nowrap}.port-go .btn:hover{background:#257a35}.port-go .btn:disabled{background:#3d4d5c;cursor:not-allowed}.port-switch{display:flex;gap:0.35rem;margin:0}.port-switch button{display:inline-flex;align-items:center;gap:0.35rem;border:1px solid rgb(255 255 255 / 22%);background:transparent;color:white;min-height:1.9rem;padding:0.15rem 0.55rem;cursor:pointer;font-weight:400;font-size:0.735rem}.port-switch button span{color:#e7c98a;font-size:0.6875rem}.port-switch button[aria-selected="true"]{background:white;color:#142433;border-color:white}.port-switch button[aria-selected="true"] span{color:#0c6b74}.port-pick{display:flex;justify-content:space-between;align-items:center;gap:0.3rem;min-height:2.45rem;padding:0.28rem 0.45rem;text-decoration:none;color:white;background:rgb(255 255 255 / 8%);border:0}.port-pick strong{min-width:0;font-size:0.6875rem;font-weight:400;line-height:1.2}.port-pick span{color:#d5dee6;font-size:0.68rem;font-weight:400;white-space:nowrap}.port-pick[aria-pressed="true"]{background:#f2c200;color:#142433}.port-pick[aria-pressed="true"] span{color:#142433}.port-pick:hover{background:rgb(255 255 255 / 16%)}.port-pick[aria-pressed="true"]:hover{background:#f2c200}@media (max-width:899px){.port-go-row{width:100%;margin-left:0}.port-slip{flex:1 1 auto}}.cookie-bar{position:sticky;bottom:0;z-index:45;display:flex;flex-wrap:wrap;gap:0.7rem 1rem;align-items:center;justify-content:space-between;background:#142433;color:#f6f1ea;padding:0.75rem 1rem}.cookie-bar p{margin:0;max-width:52rem;font-size:0.77rem}.cookie-bar a{color:#e7c98a;font-weight:700}.cookie-bar[hidden]{display:none !important}.site-footer .logo strong{color:white}.site-footer .logo small{color:#e7c98a}.site-footer .logo svg rect{fill:#f2c200}@media (max-width:799px){.dest-nav,.mega-inline,.mega-year{grid-template-columns:1fr}}body.is-home .port-find,body.is-home .port-find *{font-weight:400 !important}body.is-home .sail-card h3,body.is-home .sail-card h3 a{font-weight:700 !important}body.is-home .port-find h2{font-size:clamp(1.45rem,2.4vw,2rem) !important;font-weight:700 !important;color:#142433;letter-spacing:-0.03em}body.is-home .promo-cols a,body.is-home .promo-cols a strong{font-size:0.7rem !important;font-weight:400 !important;line-height:1.3}body.is-home .sail-card h3,body.is-home .sail-card h3 a{font-size:15px !important}section.route{--r-ink:var(--ink,#0b2545);--r-muted:var(--muted,#52627a);--r-bg:var(--soft,#e4eef8);--r-line:var(--line,#b9c7d8);--r-sea:var(--sea,#1b6ca8);--r-cta:var(--cta,#f2a900);--r-cta-ink:var(--cta-ink,#0b2545);--r-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;background:var(--r-bg);display:block;overflow:visible;-webkit-line-clamp:unset;color:inherit;font-size:inherit}section.route *,section.route *::before,section.route *::after{border-radius:0 !important;box-sizing:border-box}.route__track{height:auto;position:relative}.route__eyebrow{margin:0;font-size:0.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--r-sea)}.route__counter{font-family:var(--r-mono);font-size:0.7rem;font-weight:600;letter-spacing:.12em;color:var(--r-muted);font-variant-numeric:tabular-nums}.route__map{position:relative}.route__svg--h{width:100%;height:90px}.route__svg--v{display:none}.route__ship{position:absolute;left:0;top:0;width:76px;height:50px;margin:-40px 0 0 -38px;color:var(--r-ink);transform-origin:50% 80%;will-change:transform;pointer-events:none}.route__ship .ship-fill{fill:#fff}.route__ship .ship-funnel{fill:var(--r-cta)}.route__ship .ship-windows{stroke:var(--r-sea)}.route__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.route__step{display:flex;flex-direction:column;gap:8px;min-width:0;opacity:.32;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}.route__step.is-reached{opacity:1;transform:none}.route__port{font-family:var(--r-mono);font-size:0.6875rem;font-weight:600;letter-spacing:.14em;color:var(--r-sea)}.route__step h3{margin:0;font-size:1.1rem;font-weight:700;line-height:1.3;color:var(--r-ink)}.route__step p{margin:0;font-size:0.8312rem;line-height:1.6;color:var(--r-muted)}@media (max-width:760px){.route__track{height:auto}.route__ship,.route__counter{display:none}.route__steps{display:grid;grid-template-columns:minmax(0,1fr);gap:1.1rem}.route__step{display:flex;width:100%;opacity:1;transform:none}.route__step h3{font-size:1.15rem}.route__step p{font-size:0.8312rem;line-height:1.5}.route__port{letter-spacing:0.04em}.search-desk .finder.search-rail{grid-template-columns:1fr 1fr}.search-desk .finder.search-rail > .field,.search-desk .finder.search-rail > .day-step{grid-column:auto}.search-desk .search-plug{grid-template-columns:1fr 1fr;align-items:stretch}.search-desk .search-plug .flight-choice{grid-column:1 / -1}.search-desk .search-plug .flight-opts{width:max-content;max-width:100%;grid-template-columns:repeat(3,max-content)}.search-plug .flight-choice label{min-width:2.8rem;padding:0.15rem 0.55rem}.search-desk .search-plug .search-actions{grid-column:1 / -1;width:100%;justify-self:stretch}}@media (prefers-reduced-motion:reduce){.route__track{height:auto}.route__step{opacity:1;transform:none;transition:none}}
/* === Font-size alignment (copy): content paragraphs and text links match the crociere-da pages — 16px, line-height 1.5 === */
body.is-home main p:not(.kicker):not(.route__eyebrow):not(.promo-count):not(.ask-hint):not(.enquiry-progress):not(.slide-title):not(.slide-price):not(.search-desk-title),
body.is-home .route__step p,
body.is-home .promo-same{font-size:0.875rem !important;line-height:1.5 !important}
body.is-home .promo-cols a,
body.is-home .promo-cols a strong{font-size:0.875rem !important;line-height:1.5 !important}
/* tag chips use the same size as the chip links on crociere-da pages (14px) */

/* Smaller body text (copy): inherited text 14px; headings keep their size */
body{font-size:0.875rem}

/* ===== Round 3 (copy) ===== */
/* 1. One size for every homepage section heading (same as "Promozioni in corso") */
/* 2. Port finder heading: readable on the dark band, smaller */
body.is-home .port-find h2{font-size:clamp(1.05rem,1.5vw,1.3rem) !important;font-weight:600 !important;color:#ffffff !important;letter-spacing:-0.01em;line-height:1.25}
/* 3. Compagnie menu: cruises of the hovered line */
/* 4. Mobile: destination tiles become a swipe slider, full list stays below */
/* 5. Brand intro */
/* Compagnie menu: fleet + cruises */
.co-mega{display:grid;gap:0.45rem}
.co-sub{display:flex;align-items:center;gap:0.4rem;margin:0.35rem 0 0;font-size:0.72rem;color:var(--muted);letter-spacing:0.02em}
.co-sub strong{color:#142433;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;font-size:0.68rem}
.co-key{margin-left:auto;display:inline-flex;align-items:center;gap:0.3rem;font-size:0.68rem}
.co-key i{width:0.5rem;height:0.5rem;border-radius:50%;background:#c4321f}
.co-fleet{display:flex;flex-wrap:wrap;gap:0.3rem}
.co-fleet a,.co-fleet span{display:inline-flex;align-items:center;gap:0.35rem;padding:0.28rem 0.55rem;border:1px solid var(--line);background:#fff;font-size:0.72rem;color:#5b6876;text-decoration:none;line-height:1.2}
.co-fleet .is-in{color:#142433;font-weight:600;border-color:#142433}
.co-fleet .is-in::before{content:"";width:0.4rem;height:0.4rem;border-radius:50%;background:#c4321f}
.co-fleet .is-in small{font-size:0.62rem;color:#fff;background:#142433;padding:0.02rem 0.3rem;border-radius:0.6rem}
.co-fleet a.is-in:hover{background:#142433;color:#fff}
.co-fleet a.is-in:hover small{background:#c4321f}
/* Porti menu: Caribbean column */
.mega-dest.has-caribbean{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr) minmax(0,1fr) 15.5rem}
.mega-dest .mega-sub{margin-top:0.9rem !important}
.mega-two{display:grid;grid-template-columns:1fr 1fr;column-gap:1.2rem}
@media (max-width:1099px){.mega-dest.has-caribbean{grid-template-columns:1fr 1fr}.mega-caribbean{grid-column:1 / -1}}
/* Compagnie menu: simple style like Destinazioni / Porti */
.dest-split:has(#co-link-msc){grid-template-columns:15rem minmax(0,1fr);gap:1.6rem;padding:0.35rem 0 0.15rem}
.dest-split:has(#co-link-msc) .dest-nav{background:transparent;padding:0;border-right:1px solid #e7eef3 !important;padding-right:1rem}
.dest-split:has(#co-link-msc) .dest-nav.is-list a{color:#17324a;background:transparent;border-left:0;padding:0.32rem 0;font-size:0.8575rem !important}
.dest-split:has(#co-link-msc) .dest-nav.is-list a small{color:#8b97a3}
.dest-split:has(#co-link-msc) .dest-nav.is-list a .co-dot{display:none}
.dest-split:has(#co-link-msc) .dest-nav.is-list a:hover,
.dest-split:has(#co-link-msc) .dest-nav.is-list a.is-on{background:transparent;color:var(--sea)}
.dest-split:has(#co-link-msc) .dest-nav.is-list a.is-on{font-weight:700 !important}
.dest-split:has(#co-link-msc) .dest-nav.is-list a.is-on span{font-weight:700 !important}
.dest-split:has(#co-link-msc) .dest-nav.is-list a.is-on::after{color:var(--sea)}
.dest-split:has(#co-link-msc) .dest-panels{padding:0;border:0;background:transparent}
.dest-split:has(#co-link-msc) .mega-spot{margin-bottom:0.2rem}
.dest-split:has(#co-link-msc) .mega-kicker{display:none}
.dest-split:has(#co-link-msc) .mega-spot p{margin:0;color:#8b97a3;font-size:0.805rem !important}
.dest-split:has(#co-link-msc) .co-sub{margin:0.4rem 0 0.2rem}
.dest-split:has(#co-link-msc) .co-sub,.dest-split:has(#co-link-msc) .co-sub strong{text-transform:none;letter-spacing:0;color:#8b97a3;font-size:0.805rem !important;font-weight:400 !important}
.dest-split:has(#co-link-msc) .co-key{display:none}
.dest-split:has(#co-link-msc) .co-fleet{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 1.6rem}
.dest-split:has(#co-link-msc) .co-fleet a,.dest-split:has(#co-link-msc) .co-fleet span{display:block;padding:0.32rem 0;border:0;background:transparent;color:#8b97a3;font-size:0.8575rem !important;font-weight:400 !important}
.dest-split:has(#co-link-msc) .co-fleet .is-in{color:#17324a}
.dest-split:has(#co-link-msc) .co-fleet .is-in::before,.dest-split:has(#co-link-msc) .co-fleet small{display:none}
.dest-split:has(#co-link-msc) .co-fleet a.is-in:hover{background:transparent;color:var(--sea)}
.dest-split:has(#co-link-msc) .mega-more{justify-content:flex-start;margin-top:0.5rem}
.dest-split:has(#co-link-msc) .mega-more .btn{background:transparent;color:#17324a;border:0;padding:0;font-weight:700 !important;text-decoration:none}
.dest-split:has(#co-link-msc) .mega-more .btn:hover{color:var(--sea)}
.mega .dest-split:has(#co-link-msc){background:transparent !important;border:0 !important;box-shadow:none !important}
.mega .dest-split:has(#co-link-msc) .dest-nav.is-list a span{font-size:0.8575rem !important}
.mega .dest-split:has(#co-link-msc) .dest-nav.is-list a small{font-size:0.75rem !important}
/* Periodo menu: simple style like Destinazioni / Porti */
.mega .dest-split.is-years{grid-template-columns:12rem minmax(0,1fr);gap:1.6rem;padding:0.35rem 0 0.15rem;background:transparent !important;border:0 !important;box-shadow:none !important}
.dest-split.is-years .dest-nav{background:transparent;padding:0;border-right:1px solid #e7eef3 !important;padding-right:1rem}
.mega .dest-split.is-years .dest-nav.is-list a{display:flex;justify-content:space-between;align-items:baseline;color:#17324a;background:transparent;border-left:0;padding:0.32rem 0}
.mega .dest-split.is-years .dest-nav.is-list a span{font-size:0.8575rem !important}
.mega .dest-split.is-years .dest-nav.is-list a small{font-size:0.75rem !important;color:#8b97a3}
.dest-split.is-years .dest-nav.is-list a:hover,.dest-split.is-years .dest-nav.is-list a.is-on{background:transparent;color:var(--sea)}
.mega .dest-split.is-years .dest-nav.is-list a.is-on span{font-weight:700 !important}
.dest-split.is-years .dest-nav.is-list a.is-on small,.dest-split.is-years .dest-nav.is-list a:hover small{color:#8b97a3}
.dest-split.is-years .dest-panels{padding:0;border:0;background:transparent}
.dest-split.is-years .mega-year{gap:1.6rem}
.dest-split.is-years .mega-year .is-offers{border-left:1px solid #e7eef3;padding-left:1.2rem}
.mega .dest-split.is-years .mega-kicker{text-transform:none;letter-spacing:0;color:#8b97a3 !important;font-size:0.805rem !important;margin:0 0 0.3rem}
.mega .dest-split.is-years .mega-links a{display:flex;justify-content:space-between;gap:0.6rem;align-items:baseline;padding:0.32rem 0;background:transparent;border:0;color:#17324a}
.mega .dest-split.is-years .mega-links a span{font-size:0.8575rem !important;color:#17324a}
.mega .dest-split.is-years .mega-links a small{font-size:0.75rem !important;color:#8b97a3;white-space:nowrap}
.dest-split.is-years .mega-links a:hover span{color:var(--sea)}
.mega .dest-split.is-years .mega-empty{color:#8b97a3;font-size:0.8575rem !important}
.dest-split.is-years .mega-more{justify-content:flex-start;margin-top:0.5rem}
.mega .dest-split.is-years .mega-more .btn{background:transparent;color:#17324a;border:0;padding:0;font-weight:700 !important}
.dest-split.is-years .mega-more .btn:hover{color:var(--sea)}
/* Periodo: arrow on the active year, same as Compagnie */
.mega .dest-split.is-years .dest-nav.is-list a::after{content:"›";margin-left:0.35rem;color:transparent;font-weight:700}
.mega .dest-split.is-years .dest-nav.is-list a.is-on::after{color:var(--sea)}
.mega .dest-split.is-years .dest-nav.is-list a small{margin-left:auto}
/* Promozioni in corso: active link = bold name + price as small red badge (option H) */
.promo-cols a.is-current,.promo-cols a.is-current:hover{background:transparent !important;color:#17324a !important;box-shadow:none !important}
.promo-cols a.is-current strong{color:#17324a !important;font-weight:700 !important}
.promo-cols a.is-current span{background:#c4321f;color:#fff !important;padding:0.1rem 0.45rem;border-radius:3px;font-weight:700 !important}
.promo-cols a.is-current:hover strong{color:var(--sea) !important}
.promo-cols a.is-current:hover span{background:#a82a1a}

/* ===== Le compagnie di crociera: clean list, theme colours, mobile accordion ===== */
/* summary hidden on desktop (rows opened by ui.js on wide screens) */
/* hover */
/* mobile: accordion */
/* Companies: desktop = 3 equal cards per row (2 on tablet) */
/* Companies: compact desktop cards (lower section height) */
/* Company sub-pages: related pages block */

/* Promozioni slider: one pale blue-grey colour for every slide, navy text (option J; replaces tone-0/1/2 colours)
   Alternative tried: dark-blue gradient -> background:#063c5d linear-gradient(135deg,#0b1a2e 0%,#102a45 55%,#063c5d 100%) with white text */
.promo-card.tone-1{background:#1877b8;color:#fff}
.promo-card.tone-1 :is(.promo-title,p,.promo-same,.promo-same b){color:#fff}
.promo-cards .promo-count,.promo-cards:has(.tone-1.is-on) .promo-count{color:#fff}
.promo-cards .promo-tick,.promo-cards:has(.tone-1.is-on) .promo-tick{background:rgb(255 255 255 / 45%)}
.promo-cards .promo-tick[aria-selected="true"],.promo-cards:has(.tone-1.is-on) .promo-tick[aria-selected="true"]{background:#fff}

/* Sostenibilità band (homepage, before footer) */
.eco-band{background:#eef3f6;margin-top:2.5rem;overflow:hidden}
.eco-inner{display:grid;grid-template-columns:minmax(0,1fr) 34%;align-items:stretch;max-width:none}
.eco-copy{padding:2rem 2rem 2rem max(1rem,calc((100vw - 1160px)/2))}
body .eco-band h2{margin:0 0 1rem;color:var(--sea,#0c6b74);font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.2}
.eco-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2.5rem}
body .eco-band h3{margin:0 0 .45rem;color:#142433;font-size:1.05rem}
.eco-band p{margin:0 0 .6rem;color:#3c4754;font-size:.85rem;line-height:1.55}
.eco-band ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.eco-band li{display:flex;gap:.5rem;align-items:flex-start;color:#3c4754;font-size:.85rem;line-height:1.5}
.eco-tick{flex:0 0 auto;width:1rem;height:1rem;margin-top:.2rem;color:var(--sea,#0c6b74)}
.eco-visual{position:relative;background:radial-gradient(circle at 62% 45%,#1d4a6e 0%,#142433 62%);clip-path:polygon(16% 0,100% 0,100% 100%,0 100%);display:flex;align-items:center;justify-content:center;padding:1.25rem 1.5rem 1.25rem 3.5rem}
.eco-scene{position:relative;width:min(100%,270px);aspect-ratio:1}
.eco-ring{position:absolute;inset:0;border-radius:50%;border:2px dashed rgb(127 211 196 / 45%);animation:eco-spin 40s linear infinite}
.eco-orb{position:absolute;inset:9%;border-radius:50%;overflow:hidden;background:linear-gradient(180deg,#8fe0d2 0%,#bfeee5 52%,#2f86b8 52%,#0c4f7a 100%);box-shadow:0 0 0 6px rgb(255 255 255 / 8%),0 0 45px rgb(127 211 196 / 35%),inset 0 -18px 30px rgb(0 0 0 / 18%)}
.eco-sun{position:absolute;top:14%;right:20%;width:16%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ffe7a3 0%,#ffd100 60%,rgb(255 209 0 / 0) 72%);animation:eco-glow 4s ease-in-out infinite}
.eco-cloud{position:absolute;top:22%;left:-30%;width:26%;height:8%;border-radius:20px;background:#fff;opacity:.9;box-shadow:12px -6px 0 2px #fff;animation:eco-cloud 18s linear infinite}
.eco-ship{position:absolute;left:22%;width:56%;top:34%;filter:drop-shadow(0 3px 2px rgb(0 0 0 / 20%));animation:eco-bob 3.2s ease-in-out infinite}
.eco-wave{position:absolute;left:0;width:200%;height:16%;background-repeat:repeat-x;background-size:50% 100%;animation:eco-sea linear infinite}
.eco-wave.w1{top:47%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 20'%3E%3Cpath d='M0 10c15-10 45-10 60 0s45 10 60 0v10H0z' fill='%2349a7d6'/%3E%3C/svg%3E");opacity:.85;animation-duration:7s}
.eco-wave.w2{top:55%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 20'%3E%3Cpath d='M0 10c15-10 45-10 60 0s45 10 60 0v10H0z' fill='%233a8fc4'/%3E%3C/svg%3E");animation-duration:10s;animation-direction:reverse}
.eco-wave.w3{top:64%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 20'%3E%3Cpath d='M0 10c15-10 45-10 60 0s45 10 60 0v10H0z' fill='%232472a4'/%3E%3C/svg%3E");animation-duration:13s}
.eco-chip{position:absolute;display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border-radius:999px;background:rgb(255 255 255 / 12%);border:1px solid rgb(255 255 255 / 25%);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:.7rem;white-space:nowrap;box-shadow:0 6px 18px rgb(0 0 0 / 25%);animation:eco-float 5s ease-in-out infinite}
.eco-chip svg{width:.95rem;height:.95rem;color:#8fe0d2}
.eco-chip.c1{top:2%;left:-18%}
.eco-chip.c2{top:46%;right:-20%;animation-delay:-1.6s}
.eco-chip.c3{bottom:2%;left:-8%;animation-delay:-3.2s}
@keyframes eco-spin{to{transform:rotate(360deg)}}
@keyframes eco-sea{to{transform:translateX(-50%)}}
@keyframes eco-bob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(5%) rotate(1.2deg)}}
@keyframes eco-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes eco-glow{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(1.12);opacity:1}}
@keyframes eco-cloud{to{transform:translateX(560%)}}
@media(prefers-reduced-motion:reduce){.eco-scene *{animation:none!important}}
@media(max-width:900px){
  .eco-inner{grid-template-columns:1fr}
  .eco-copy{padding:1.75rem 1rem 1.25rem}
  .eco-visual{clip-path:none;padding:1rem}
  .eco-scene{width:200px}
  .eco-visual{padding:1.25rem 4.5rem}
}
@media(max-width:620px){.eco-cols{grid-template-columns:1fr}}
body .eco-band h2{font-weight:400 !important}body .eco-band h3{font-weight:500 !important}
body .eco-band :is(.eco-ring,.eco-orb,.eco-sun){border-radius:50% !important}body .eco-band .eco-cloud{border-radius:20px !important}

/* Blog section, option D: three equal cards (whole card clickable via the title link) */
.bd-cat{position:absolute;top:10px;left:10px;background:#1877b8;color:#fff;font-size:.66rem;padding:3px 8px;letter-spacing:.04em;text-transform:uppercase}
.bd-body{display:flex;flex-direction:column;gap:6px;flex:1;padding:14px 16px}
.bd-body time{font-size:.7rem;color:#0c6b74;letter-spacing:.05em;text-transform:uppercase}
body .bd-body h3{margin:0;font-size:1rem;line-height:1.3}
.bd-body h3 a{color:#142433;text-decoration:none}
.bd-body h3 a::after{content:"";position:absolute;inset:0}
.bd-body h3 a:focus-visible{color:#0c6b74}
.bd-body p{margin:0;color:#5c6773;font-size:.8rem;line-height:1.5}
body .bd-body h3{font-weight:500 !important}

/* Brand logo: original Buonacrociera.it logo (PNG). White plate where the background is dark */
.logo .bc-logo{display:block;height:56px;width:auto}
body.is-home .bar .logo .bc-logo,.site-footer .logo .bc-logo{background:#fff;padding:3px 6px;box-sizing:content-box}
body.is-home .site-head.is-stuck .bar .logo .bc-logo{background:none;padding:0}
@media(max-width:720px){.logo .bc-logo{height:46px}}

/* Accessibility / Lighthouse fixes */
.top-wa span{color:#0b2b18}
.site-footer nav li a{display:inline-block;min-height:24px;padding:2px 0;line-height:20px}

/* Search form: 2 flight options, live title, compact passenger boxes (no blank space) */
.search-desk .search-plug .flight-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
.search-desk .search-plug .flight-name{font-size:0 !important}
.search-desk .search-plug .flight-name::after{content:"Volo + crociera";font-size:0.64rem}
.search-desk .search-plug .flight-choice:has(input[value="solo"]:checked) .flight-name::after{content:"Solo crociera"}
.search-desk .search-plug > .stepper{display:flex !important;align-items:center;justify-content:space-between;gap:0.4rem;padding:0.2rem 0.45rem}
.search-desk .search-plug > .stepper > span:first-child{grid-column:auto;font-size:0.72rem;white-space:nowrap}
.search-desk .search-plug > .stepper .day-ctrl{display:flex;align-items:center;gap:0.15rem;flex:none}
@media (min-width:1080px){
  .search-desk .search-plug{grid-template-columns:repeat(3,minmax(0,1fr)) auto auto}
  .search-desk .search-plug .flight-opts{width:auto}
  .search-desk .search-plug .flight-choice label{min-width:3.4rem}
}
@media (max-width:1079px){
  .search-desk .search-plug{grid-template-columns:repeat(3,minmax(0,1fr))}
  .search-desk .search-plug .flight-opts{width:100%}
}
@media (max-width:560px){
  .search-desk .search-plug{grid-template-columns:repeat(3,minmax(0,1fr))}
  .search-desk .search-plug > .stepper{flex-direction:column;align-items:stretch;gap:0.1rem;padding:0.2rem 0.3rem}
  .search-desk .search-plug > .stepper > span:first-child{text-align:center}
  .search-desk .search-plug > .stepper .day-ctrl{justify-content:space-between}
  .search-desk .search-plug .flight-opts{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1080px){
  .search-desk .search-plug{grid-template-columns:auto auto auto minmax(0,1fr) auto}
  .search-desk .search-plug > .stepper{justify-content:flex-start;gap:0.6rem}
  .search-desk .search-plug .flight-opts{width:100%}
  .search-desk .search-plug .flight-word{position:static;width:auto;height:auto;margin:0 0 0 0.3rem;overflow:visible;clip:auto;font-size:0.72rem}
  .search-plug .flight-choice label::after{display:none}
}

/* Intro: second line is now a full sentence, keep it inside the screen on phones */
.search-desk .search-desk-head{justify-content:center;text-align:center}.search-desk .search-desk-title{width:100%;text-align:center}

/* Intro colours from the logo: navy title, orange second line */
body .search-desk .search-desk-title{font-size:1.35rem !important;text-transform:uppercase;letter-spacing:0.06em;font-weight:600 !important;color:#183462}@media(max-width:560px){body .search-desk .search-desk-title{font-size:1.1rem !important}}
body .search-desk .search-desk-head .search-desk-title{font-weight:700 !important}@media(max-width:560px){body .search-desk .search-desk-head .search-desk-title{font-size:1.05rem !important;letter-spacing:0.04em;line-height:1.25}}@media(max-width:350px){body .search-desk .search-desk-head .search-desk-title{font-size:0.95rem !important;letter-spacing:0.02em}}

/* Homepage design A: white menu bar fading into the slider + search card overlapping the slider */
body.is-home .bar{background:#fff !important;color:#142433 !important;box-shadow:none !important}
body.is-home .bar .nav a.nav-link{color:#142433 !important}
body.is-home .bar .logo .bc-logo{background:none !important;padding:0 !important}
body.is-home .bar .nav-open{color:#142433 !important;border-color:#d5dde6 !important;background:#fff !important}
body.is-home .site-head:not(.is-stuck) .bar::after{content:"";position:absolute;left:0;right:0;top:100%;height:44px;background:linear-gradient(rgb(255 255 255 / 45%),rgb(255 255 255 / 0));pointer-events:none}

/* Companies section hover in logo navy */
/* "Quota della cabina" circles in logo orange */
@media (max-width:760px){body.is-home .site-head{position:sticky !important;top:0}body.is-home .site-head:not(.is-stuck) .bar::after{display:none}}

/* Companies hover H2: whole card in logo navy, orange accents */

/* Assistente: rotating gradient border (A2) + chat bubble above the button (A4) */
@property --ag{syntax:"<angle>";initial-value:0deg;inherits:false}
.assist-wrap{position:relative;flex:none;display:flex;flex-direction:column;align-items:flex-end}
.assist-wrap .assist-toggle{position:relative;isolation:isolate;background:transparent !important}
.assist-wrap .assist-toggle::before{content:"";position:absolute;inset:-3px;z-index:-2;background:conic-gradient(from var(--ag),#183462,#f26c1f,#2c9fe3,#183462);animation:ag-spin 3s linear infinite}
.assist-wrap .assist-toggle::after{content:"";position:absolute;inset:0;z-index:-1;background:#183462;transition:background .2s}
.assist-wrap .assist-toggle:hover::after,.assist-wrap .assist-toggle[aria-expanded="true"]::after{background:#0f2546}
.ab-dots{display:inline-flex;gap:3px;margin-left:0.15rem}
.ab-dots i,.ab-typing i{width:5px;height:5px;border-radius:50% !important;background:#f26c1f;animation:ab-dot 1.1s infinite}
.ab-dots i:nth-child(2),.ab-typing i:nth-child(2){animation-delay:.18s}.ab-dots i:nth-child(3),.ab-typing i:nth-child(3){animation-delay:.36s}
.assist-bubble{position:absolute;right:0;bottom:calc(100% + 12px);z-index:5;display:grid;background:#fff;border:1px solid #d5dde6;box-shadow:0 10px 24px rgb(16 32 51 / 16%);padding:0.55rem 0.8rem;font-size:0.8rem;font-weight:500;color:#183462;white-space:nowrap;pointer-events:none;animation:ab-in .4s ease-out .6s both,ab-float 3.5s ease-in-out 2.5s infinite}
.assist-bubble::after{content:"";position:absolute;right:1.4rem;bottom:-6px;width:11px;height:11px;background:#fff;border-right:1px solid #d5dde6;border-bottom:1px solid #d5dde6;transform:rotate(45deg)}
.assist-bubble > span{grid-area:1/1;align-self:center}
.ab-typing{display:inline-flex;gap:4px;animation:ab-out .3s ease 2.2s forwards}
.ab-msg{opacity:0;animation:ab-show .3s ease 2.3s forwards}
.assist-wrap:has(.assist-toggle[aria-expanded="true"]) .assist-bubble{display:none}
@keyframes ag-spin{to{--ag:360deg}}
@keyframes ab-dot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}
@keyframes ab-in{from{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:none}}
@keyframes ab-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes ab-out{to{opacity:0}}
@keyframes ab-show{to{opacity:1}}
@media (max-width:760px){.assist-wrap{align-items:stretch;margin-top:3rem}.assist-wrap .assist-toggle{justify-content:center}.assist-bubble{left:0;right:0;white-space:normal;text-align:center}.assist-bubble::after{right:auto;left:50%;margin-left:-6px}}
@media (prefers-reduced-motion:reduce){.assist-wrap .assist-toggle::before,.ab-dots i,.ab-typing i,.assist-bubble{animation:none !important}.ab-typing{display:none}.ab-msg{opacity:1;animation:none}}

/* Assistente bubble v2: typed text, stays inside its own column (no overlap on Trustpilot) */
.assist-wrap{width:15rem;gap:0.6rem}
.assist-wrap .assist-toggle{width:100%;justify-content:center}
.assist-bubble{position:relative !important;right:auto !important;bottom:auto !important;left:auto !important;width:100%;box-sizing:border-box;white-space:normal !important;text-align:left;line-height:1.35}
.assist-bubble::after{right:2.2rem !important;left:auto !important;margin:0 !important}
.ab-msg.is-typing::after{content:"";display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:-2px;background:#f26c1f;animation:ab-caret .7s step-end infinite}
@keyframes ab-caret{50%{opacity:0}}
@media (max-width:760px){.assist-wrap{width:auto;margin-top:0}.assist-bubble{text-align:center}.assist-bubble::after{right:auto !important;left:50% !important;margin-left:-6px !important}}
@media (min-width:761px){body.is-home .site-head:not(.is-stuck) .bar::after{height:56px;background:linear-gradient(#fff,rgb(255 255 255 / 0))}}


/* ===== Footer "Rotta" v2 (site-wide): departures in 4 columns, ocean-blue contact bar, keyword link groups ===== */
.bc-f4{--f-bg:#0f1f36;--f-panel:#152a47;--f-ink:#f1f5fa;--f-muted:#a8b8cc;--f-line:rgb(255 255 255 / 12%);--f-accent:#f26c1f;--f-ocean:#1877b8;background:var(--f-bg);color:var(--f-ink);font-family:"Poppins",system-ui,sans-serif;font-size:14px;line-height:1.55}
.site-footer.bc-f4{padding:0;margin:0;border:0}
.bc-f4 a{color:inherit;text-decoration:none}
.bc-f4 a:hover,.bc-f4 a:focus-visible{color:var(--f-accent);outline:none}
.bc-f4 .f-in{max-width:1160px;margin:0 auto;padding-inline:20px}
.bc-f4 .f-kick{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--f-accent);font-weight:700;margin:0 0 4px;line-height:1.3}
.bc-f4 .f-h{font-size:18px;font-weight:600;margin:0}
/* departures: 4 columns */
.bc-f4 .f-board-wrap{padding-block:36px 28px}
.bc-f4 .f-board-head{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.bc-f4 .more{font-weight:600;color:var(--f-accent)}
.bc-f4 .f-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.bc-f4 .f-cards li>a{height:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:4px;padding:16px;background:var(--f-panel);border:1px solid var(--f-line);border-top:3px solid var(--f-accent);transition:transform .2s,box-shadow .2s}
.bc-f4 .f-cards li>a:hover,.bc-f4 .f-cards li>a:focus-visible{color:var(--f-ink);transform:translateY(-3px);box-shadow:0 12px 24px rgb(0 0 0 / 30%)}
.bc-f4 .f-cards time{align-self:flex-start;font-variant-numeric:tabular-nums;font-weight:700;background:var(--f-accent);color:#142433;padding:3px 8px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}
.bc-f4 .f-cards b{font-weight:600;font-size:15px;line-height:1.3}
.bc-f4 .f-cards .meta{color:var(--f-muted);font-size:12.5px}
.bc-f4 .f-cards .p{margin-top:auto;padding-top:10px;font-variant-numeric:tabular-nums}
.bc-f4 .f-cards .p small{color:var(--f-muted);font-size:11.5px}
.bc-f4 .f-cards .p strong{font-size:20px}
.bc-f4 .f-cards .go{font-size:12.5px;font-weight:600;color:#ffb38a}
/* contact bar in ocean blue */
.bc-f4 .f-contact-bar{background:var(--f-ocean);color:#fff}
.bc-f4 .f-contact-bar .f-in{padding-block:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 22px}
.bc-f4 .f-contact-bar .logo{background:#fff;padding:4px 8px;line-height:0}
.bc-f4 .f-contact-bar .logo img{height:48px;width:auto}
.bc-f4 .f-contact-bar .hours{margin:0;font-size:13px;line-height:1.35}
.bc-f4 .f-contact-bar .hours strong{display:block;font-weight:600}
.bc-f4 .f-contact-bar ul{list-style:none;margin:0;padding:0}
.bc-f4 .f-contact-bar .contact{display:flex;flex-wrap:wrap;gap:12px 20px}
.bc-f4 .f-contact-bar .contact a{display:flex;gap:9px;align-items:center;color:#fff}
.bc-f4 .f-contact-bar .contact a:hover strong{text-decoration:underline}
.bc-f4 .f-contact-bar .ci{flex:none;width:34px;height:34px;display:grid;place-items:center;background:#0f4f80;color:#fff}
.bc-f4 .f-contact-bar .ci.wa{background:#1fa855}
.bc-f4 .f-contact-bar .ci svg{width:17px;height:17px}
.bc-f4 .f-contact-bar small{display:block;font-size:11px;color:#fff;opacity:1}
.bc-f4 .f-contact-bar strong{font-weight:600;font-size:14px}
.bc-f4 .f-contact-bar .social{display:flex;gap:8px}
.bc-f4 .f-contact-bar .social a{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgb(255 255 255 / 45%);color:#fff;transition:background .2s,color .2s}
.bc-f4 .f-contact-bar .social a:hover,.bc-f4 .f-contact-bar .social a:focus-visible{background:#fff;color:#1877b8}
.bc-f4 .f-contact-bar .social svg{width:17px;height:17px}
.bc-f4 .f-contact-bar .floa{display:grid;gap:3px;color:#fff}
.bc-f4 .f-contact-bar .floa img{display:block;width:150px;height:auto;background:#fff;padding:3px 6px}
/* keyword link groups */
.bc-f4 .f-intent{padding-block:28px 26px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.bc-f4 .f-intent h2{font-size:15px;font-weight:600;margin:0 0 8px}
.bc-f4 .f-intent ul{list-style:none;margin:0;padding:0;display:grid;gap:1px}
.bc-f4 .f-intent li a{display:inline-block;padding:3px 0;min-height:24px;color:var(--f-muted)}
.bc-f4 .f-intent li a:hover{color:var(--f-ink)}
.bc-f4 .f-intent summary{list-style:none;pointer-events:none}
.bc-f4 .f-intent summary::-webkit-details-marker{display:none}
.bc-f4 .f-legal{border-top:1px solid var(--f-line);color:var(--f-muted);font-size:12.5px}
.bc-f4 .f-legal .f-in{padding-block:14px 20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}
.bc-f4 .f-legal nav{display:flex;flex-wrap:wrap;gap:14px}
@media (max-width:1000px){.bc-f4 .f-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .bc-f4 .f-intent{grid-template-columns:1fr;gap:0}
  .bc-f4 .f-intent nav{border-bottom:1px solid var(--f-line)}
  .bc-f4 .f-intent summary{pointer-events:auto;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:12px 0}
  .bc-f4 .f-intent summary::after{content:"+";color:var(--f-accent);font-weight:700}
  .bc-f4 .f-intent details[open] summary::after{content:"–"}
  .bc-f4 .f-intent h2{margin:0}
  .bc-f4 .f-intent ul{padding-bottom:10px}
  .bc-f4 .f-contact-bar .f-in{justify-content:flex-start}
  .bc-f4 .f-contact-bar .contact{flex-direction:column;width:100%}
}
@media (max-width:520px){.bc-f4 .f-cards{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.bc-f4 *{transition:none!important}}
@media (min-width:1101px){.bc-f4 .f-contact-bar .f-in{flex-wrap:nowrap;gap:18px}.bc-f4 .f-contact-bar .contact{flex-wrap:nowrap;gap:16px}.bc-f4 .f-contact-bar .floa img{width:132px}}
@media (min-width:901px) and (max-width:1100px){.bc-f4 .f-contact-bar .f-in{justify-content:flex-start}}

/* Footer bottom: logo/contact row + legal row in white like the header, soft gradient from the dark footer, text in logo navy */
.bc-f4 .f-contact-bar{position:relative;background:#fff;color:#183462;margin-top:56px}
.bc-f4 .f-contact-bar::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:56px;background:linear-gradient(rgb(255 255 255 / 0),#fff);pointer-events:none}
.bc-f4 .f-contact-bar .logo{background:none;padding:0}
.bc-f4 .f-contact-bar .logo img{height:56px}
.bc-f4 .f-contact-bar .contact a,.bc-f4 .f-contact-bar .floa{color:#183462}
.bc-f4 .f-contact-bar small{color:#4a5866}
.bc-f4 .f-contact-bar .ci{background:#183462;color:#fff}
.bc-f4 .f-contact-bar .ci.wa{background:#1fa855}
.bc-f4 .f-contact-bar .social a{border-color:#cdd6e1;color:#183462}
.bc-f4 .f-contact-bar .social a:hover,.bc-f4 .f-contact-bar .social a:focus-visible{background:#183462;border-color:#183462;color:#fff}
.bc-f4 .f-contact-bar .floa img{background:none;padding:0}
.bc-f4 .f-contact-bar .contact a:hover strong{color:#e26218;text-decoration:none}
.bc-f4 .f-legal{background:#fff;color:#4a5866;border-top:1px solid #e4e7ec}
.bc-f4 .f-legal a{color:#183462}
.bc-f4 .f-legal a:hover,.bc-f4 .f-legal a:focus-visible{color:#e26218}
.bc-f4 .f-intent{padding-bottom:8px}
.bc-f4 .f-legal{color:#183462}
/* smoother, eased fade from the dark footer into the white bottom rows (no visible band) */
.bc-f4 .f-contact-bar{margin-top:120px}
.bc-f4 .f-contact-bar::before{height:120px;background:linear-gradient(to bottom,rgb(44 120 190 / 0) 0%,rgb(44 120 190 / .08) 18%,rgb(90 150 210 / .2) 34%,rgb(150 190 230 / .38) 50%,rgb(200 222 244 / .6) 66%,rgb(230 240 250 / .82) 82%,rgb(250 252 255 / .96) 94%,#fff 100%)}
@media (max-width:900px){.bc-f4 .f-contact-bar{margin-top:90px}.bc-f4 .f-contact-bar::before{height:90px}}
/* footer links: no underline, clear contrast colour on hover (logo orange, as on the homepage accents) */
.bc-f4 a,.bc-f4 a:hover,.bc-f4 a:focus-visible,.bc-f4 a *{text-decoration:none !important}
.bc-f4 .f-intent li a:hover,.bc-f4 .f-intent li a:focus-visible{color:#ff8a4a}
.bc-f4 .more:hover,.bc-f4 .more:focus-visible{color:#ffb38a}
.bc-f4 .f-cards li>a:hover b,.bc-f4 .f-cards li>a:focus-visible b{color:#ffb38a}
.bc-f4 .f-cards li>a:hover .go,.bc-f4 .f-cards li>a:focus-visible .go{color:#fff}
.bc-f4 .f-contact-bar .contact a:hover strong,.bc-f4 .f-contact-bar .contact a:focus-visible strong,.bc-f4 .f-contact-bar .floa:hover small{color:#e26218}
.bc-f4 .f-legal a:hover,.bc-f4 .f-legal a:focus-visible{color:#e26218}
.bc-f4 a:focus-visible{outline:2px solid #f26c1f;outline-offset:2px}
/* no gradient: clean white bottom rows */
.bc-f4 .f-contact-bar{margin-top:28px}
.bc-f4 .f-contact-bar::before{content:none;display:none}
@media (max-width:900px){.bc-f4 .f-contact-bar{margin-top:20px}}

/* Share pop-up on cruise records (same as search page): homepage cards + footer cards */
.share-pop .share-menu .share-link{text-decoration:none !important}
.bc-f4 .f-cards li{position:relative}
.bc-f4 .f-cards li>a{padding-right:56px}
.bc-f4 .f-share{position:absolute;right:14px;bottom:14px}
.bc-f4 .f-share .share-toggle{width:2.1rem;height:2.1rem;background:transparent;border-color:rgb(255 255 255 / 30%);color:#fff}
.bc-f4 .f-share .share-toggle:hover,.bc-f4 .f-share.is-open .share-toggle{background:#f26c1f;border-color:#f26c1f;color:#142433}
.bc-f4 .f-share .share-menu{color:#142433}
.bc-f4 .f-share .share-menu p{color:#142433}
.bc-f4 .f-share .share-link{color:#142433}
.bc-f4 .f-share .share-link:hover{color:#e26218;border-color:#e26218}
.sail-card{position:relative}
.sail-card .share-menu{left:0.6rem;right:0.6rem;width:auto;bottom:3.6rem}

/* ===== Mobile polish (≤600px): top call bar, section heads, readable font floor ===== */
@media (max-width:600px){
  /* Top bar: one row, two equal buttons (Chiama + WhatsApp) */
  .topbar .wrap{flex-wrap:nowrap;padding:6px 0;gap:8px}
  .topbar .wrap>p{display:none}
  .top-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .top-call,.top-wa{justify-content:center;min-height:38px;padding:0 10px;font-size:13px}
  .top-call{background:transparent;color:#fff;border-color:rgb(255 255 255 / 55%)}
  .top-call .ico,.top-wa .ico{width:17px;height:17px}
  /* Section heads: heading full width, link on its own line, never wrapped */
  /* Readable minimum text size (Google mobile-friendly: ≥12px) */
  html body:not(#x) :is(.nav-open,.kicker,.ask-hint,.field>span,.day-ctrl button,.flight-word,.leave-keys h3,.assist-toggle span,.promo-flag,.promo-badge,.promo-count,.promo-count b,.promo-col-tab,.sail-tag,.co-more summary,.co-actions .btn,.route__eyebrow,.route__port,.atlas-card span,.enquiry-progress,.enquiry-progress span,.port-slip strong,.port-go-row .btn,.port-switch button,.port-pick strong,.port-pick span,.bd-cat,.bd-body time,.eco-chip,.share-label,.share-link span,.f-kick,main small,footer small){font-size:12px !important}
  html body:not(#x) :is(.promo-cols a span){font-size:12px !important}
  html body:not(#x) :is(.promo-photo span,.promo-cards span){font-size:max(12px,1em)}
}
@media (max-width:600px){
  /* Footer offer cards: horizontal swipe row instead of a tall stack */
  .bc-f4 .f-cards{display:flex !important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:-16px;padding-right:16px;scrollbar-width:none}
  .bc-f4 .f-cards::-webkit-scrollbar{display:none}
  .bc-f4 .f-cards li{flex:0 0 82%;scroll-snap-align:start}
  .bc-f4 .f-share .share-menu{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));top:auto;width:auto;z-index:200;grid-template-columns:1fr 1fr;box-shadow:0 -10px 40px rgb(0 0 0 / 35%)}
  .bc-f4 .f-share .share-menu p{grid-column:1/-1;font-size:13px}
  .bc-f4 .f-legal{text-align:center}
  .bc-f4 .f-legal *{justify-content:center}
}

/* Promo slider titles: styled text, not headings (keeps the H3 outline clean) */
.promo-title{display:block;font-family:Poppins,"Segoe UI",system-ui,sans-serif;font-weight:400;letter-spacing:-0.01em;line-height:1.05;text-transform:none}
/* Images carry width/height for layout stability; keep their natural ratio unless a rule sets a height */
:where(img[width][height]){height:auto}

/* ===== Speed: composited assistant ring + decorative motion starts after page load ===== */
.assist-wrap .assist-toggle{overflow:hidden}
.assist-wrap .assist-toggle::before{inset:auto;left:50%;top:50%;width:max(260%,420px);aspect-ratio:1;background:conic-gradient(#183462,#f26c1f,#2c9fe3,#183462);transform:translate(-50%,-50%);animation:ag-rot 3s linear infinite;will-change:transform}
.assist-wrap .assist-toggle::after{inset:3px}
@keyframes ag-rot{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
.assist-wrap:not(.anim-on) .assist-toggle::before,
:is(.ab-dots,.ab-typing):not(.anim-on) i,.sea-ship:not(.anim-on),.sea-waves:not(.anim-on) svg,
.eco-scene:not(.in-view) :is(.eco-ring,.eco-sun,.eco-cloud,.eco-ship,.eco-wave),
.eco-scene:not(.in-view) .eco-wave svg{animation-play-state:paused !important}
.slides{grid-template-columns:minmax(0,1fr)}
.slides>.slide{min-width:0}
/* Search bar: same look on every page as on the homepage (regular weight for fields, buttons, calendar) */
body:not(.is-home) .search-desk :is(.ask,.search-rail,.search-plug) *{font-weight:400 !important}
/* Keep the hidden "Volo" word hidden (its visible title comes from ::after) after the mobile 12px floor */
html body:not(#x) .search-desk .field>span.flight-name{font-size:0 !important}
@media (max-width:600px){html body:not(#x) .search-desk .search-plug .flight-name::after{font-size:12px}}
/* Homepage search bar on listing pages: placed under the page banner or under the title */
/* Search results: cards filtered out by the search script must disappear */
.cruise-card[hidden],.results>[hidden]{display:none !important}

/* ===== Search loader: same ship, wave and colours as the homepage "tappa per tappa" steps ===== */
.sea-loader.bc-load{background:rgb(238 242 245 / 96%);color:#1c2430}
.bc-load .bl-card{display:grid;justify-items:center;gap:0.55rem;width:min(92vw,440px);padding:1.6rem 1.2rem;background:#fff;border:1px solid #e4e7ec;box-shadow:0 18px 40px rgb(16 32 51 / 14%)}
.bc-load .bl-eyebrow{margin:0;font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:12px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#0c6b74}
.bc-load .bl-title{margin:0;font-size:1.25rem;font-weight:600;color:#1c2430;text-align:center}
.bc-load .bl-route{position:relative;width:300px;max-width:100%;height:80px;margin-top:0.3rem}
.bc-load .bl-wave{position:absolute;inset:0;overflow:visible}
.bc-load .bl-wave-bg{fill:none;stroke:#e4e7ec;stroke-width:2;stroke-dasharray:6 7}
.bc-load .bl-wave-sea{fill:none;stroke:#0c6b74;stroke-width:3;stroke-dasharray:100;stroke-dashoffset:100}
.bc-load .bl-ship{position:absolute;left:0;top:0;width:76px;height:50px;color:#1c2430;offset-path:path("M0 40 Q18.8 30 37.5 40 Q56.2 50 75.0 40 Q93.8 30 112.5 40 Q131.2 50 150.0 40 Q168.8 30 187.5 40 Q206.2 50 225.0 40 Q243.8 30 262.5 40 Q281.2 50 300.0 40");offset-anchor:50% 80%;offset-rotate:0deg;offset-distance:0%}
.bc-load .bl-ship .ship-fill{fill:#fff}
.bc-load .bl-ship .ship-funnel{fill:#f2a900}
.bc-load .bl-ship .ship-windows{stroke:#0c6b74}
.bc-load.is-on .bl-ship{animation:bl-sail .85s cubic-bezier(.45,.05,.35,1) forwards}
.bc-load.is-on .bl-wave-sea{animation:bl-draw .85s cubic-bezier(.45,.05,.35,1) forwards}
@keyframes bl-sail{to{offset-distance:100%}}
@keyframes bl-draw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.bc-load.is-on .bl-ship,.bc-load.is-on .bl-wave-sea{animation:none}.bc-load .bl-ship{offset-distance:100%}.bc-load .bl-wave-sea{stroke-dashoffset:0}}
/* Search results: bigger tap targets for sidebar radios, readable text (≥12px) on phones */
.filters input[type=radio],.filters input[type=checkbox]{width:20px;height:20px;margin:2px 6px 2px 0}
@media (max-width:600px){
  html body:not(#x) .cruise-card :is(.vantaggi span,.pick-room span,.pick-kicker span,.pick-cabin span,.pick-flag,.pair-total,.card-actions .btn,.card-actions .btn span,.slide-count,.promo-tag,.record-deal span,.record-deal em,.result-fare span,.vantaggi li span){font-size:12px !important}
}

/* ===== Search results pagination (option 1) ===== */
.result-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.result-bar #result-note{flex:1 1 320px;min-width:0;margin:0}
#result-count{font-weight:600;color:#1c2430}
.per-page{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#5c6773;white-space:nowrap}
.per-page select{font:inherit;font-size:14px;color:#1c2430;min-height:38px;padding:4px 30px 4px 10px;border:1px solid #d5dde6;background-color:#fff}
.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin:22px 0 8px}
.pager[hidden]{display:none !important}
.pager-btn{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 10px;border:1px solid #d5dde6;background:#fff;color:#1c2430;font-size:15px;text-decoration:none !important;transition:background .15s,border-color .15s,color .15s}
a.pager-btn:hover,a.pager-btn:focus-visible{border-color:#183462;color:#183462;outline:none}
.pager-btn.is-on{background:#183462;border-color:#183462;color:#fff;font-weight:600}
.pager-btn.is-off{opacity:.35}
.pager-gap{padding:0 4px;color:#5c6773}
/* Search pages: slim footer (contact + legal only, no offers board or keyword groups) */
.bc-f4.is-slim .f-contact-bar{margin-top:0}
/* "Ordina per" next to "Crociere per pagina" in the results bar */
.result-bar .per-page{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#5c6773;white-space:nowrap}
.result-bar #result-note{flex:1 1 100%}

/* ===== Results bar v2: totals + top pager / note + sort + per page ===== */
.result-bar{display:grid !important;gap:10px;padding:14px 16px;margin-bottom:14px;background:#fff;border:1px solid #d5dde6}
.result-bar .rb-note{flex:1 1 280px !important;min-width:0;margin:0;font-size:13px;color:#5c6773}
.result-bar #result-count{font-weight:600;color:#1c2430}
.pager.pager-top{margin:0;justify-content:flex-end;gap:4px}
.pager.pager-top .pager-btn{min-width:38px;height:38px;font-size:14px}
@media (max-width:600px){
  .result-bar{padding:12px}
  .pager.pager-top{justify-content:flex-start}
}
/* Date chips: icons for the fares that exist on that date */
.date-chip[data-kinds]{display:inline-flex;align-items:center;gap:6px}
.date-chip .dc-kinds{display:inline-flex;gap:2px;opacity:.75}
.date-chip .dc-kinds i{display:inline-grid;width:15px;height:15px}
.date-chip .dc-kinds svg{width:15px;height:15px}
.date-chip.is-on .dc-kinds{opacity:1}
/* Fare not sold on the chosen date */
.result-bar .rb-note{flex:1 1 100% !important}

/* ===== Results bar G: segmented cells (total · counts · sort · per page · pages) ===== */
.result-bar.rb-g{display:flex !important;flex-wrap:nowrap;align-items:stretch;gap:0;padding:0;margin:0 0 6px;background:#fff;border:1px solid #d5dde6}
.rb-g .rbg-cell{display:flex;align-items:center;gap:8px;padding:8px 12px;border-right:1px solid #e4e7ec;white-space:nowrap;min-width:0}
.rb-g .rbg-cell:last-child{border-right:0}
.rb-g .rbg-total strong{font-size:1.1rem;font-weight:700;color:#183462}
.rb-g .rbg-counts{display:grid;gap:0;align-content:center;font-size:12.5px;color:#5c6773}
.rb-g .rbg-counts b{color:#1c2430;font-weight:600}
.rb-g .rbg-counts i{font-style:normal;color:#b9c3cf}
.rb-g .rbg-counts svg{width:14px;height:14px;vertical-align:-2px;margin-right:2px;color:#183462}
.rb-g .rbg-sort{margin-left:auto;justify-content:flex-end}
.rb-g .rbg-cap{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#5c6773}
.rb-g select{font:inherit;font-size:14px;color:#1c2430;height:38px;padding:0 26px 0 8px;border:1px solid #d5dde6;background-color:#fff}
.rb-g .rbg-sort select{border-color:#183462;width:170px}
.rb-g .rbg-per select{width:66px}
.rb-g .rbg-pages:has(> .pager[hidden]){display:none}
.rb-g .pager.pager-top{margin:0;gap:4px}
.rb-g .pager.pager-top .pager-btn{min-width:36px;height:38px;font-size:14px}
.rb-note{margin:0 2px 14px;font-size:12.5px;color:#5c6773}
.rb-note #result-count{font-weight:600;color:#1c2430}
@media (max-width:1100px){.rb-g .rbg-sort select{width:150px}.rb-g .rbg-cell{padding:8px 10px}}
@media (max-width:900px){
  .result-bar.rb-g{display:grid !important;grid-template-columns:auto 1fr}
  .rb-g .rbg-cell{border-right:0;border-bottom:1px solid #e4e7ec}
  .rb-g .rbg-total{border-right:1px solid #e4e7ec}
  .rb-g .rbg-sort{grid-column:1/-1;margin-left:0;justify-content:space-between}
  .rb-g .rbg-sort select{flex:1;width:auto;max-width:none}
  .rb-g .rbg-per{border-right:1px solid #e4e7ec;border-bottom:0}
  .rb-g .rbg-pages{border-bottom:0;justify-content:flex-end}
  .rb-g .rbg-per:has(+ .rbg-pages > .pager[hidden]){grid-column:1/-1;border-right:0}
}
.rb-g .pager.pager-top{flex-wrap:nowrap}
.rb-g .rbg-per select{width:72px;padding-right:20px}
.rb-g .rbg-sort select{width:160px}
@media (max-width:1180px){
  .result-bar.rb-g{display:grid !important;grid-template-columns:auto 1fr}
  .rb-g .rbg-cell{border-right:0;border-bottom:1px solid #e4e7ec}
  .rb-g .rbg-total{border-right:1px solid #e4e7ec}
  .rb-g .rbg-sort{grid-column:1/-1;margin-left:0;justify-content:space-between}
  .rb-g .rbg-sort select{flex:1;width:auto;max-width:360px}
  .rb-g .rbg-per{border-right:1px solid #e4e7ec;border-bottom:0}
  .rb-g .rbg-pages{border-bottom:0;justify-content:flex-end}
  .rb-g .rbg-per:has(+ .rbg-pages > .pager[hidden]){grid-column:1/-1;border-right:0}
}
@media (max-width:420px){
  .rb-g .pager.pager-top{gap:3px}
  .rb-g .pager.pager-top .pager-btn{min-width:32px;height:36px;padding:0 6px}
  .rb-g .rbg-cell{padding:8px}
  .rb-g .rbg-per .rbg-cap{letter-spacing:.02em}
}
@media (max-width:420px){.rb-g .rbg-counts,.rb-g .rbg-total{white-space:normal}}
/* Mobile navigation: full-height sheet, accordion sections, drill-in lists (Compagnie, Periodo) */
.nav-back,.nav-all{display:none}
@media (max-width:979px){
html.nav-lock{overflow:hidden}
.nav-toggle:checked ~ .nav{position:fixed;top:var(--nav-top,7rem);left:0;right:0;bottom:0;z-index:95;max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 0 calc(1.5rem + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e7eef3;box-shadow:none}
html body:not(#x) .nav-toggle:checked + .nav-open{font-size:0 !important;gap:0.3rem;background:#142433 !important;color:#fff !important;border-color:#142433 !important}
html body:not(#x) .nav-toggle:checked + .nav-open::before{content:"✕";font-size:13px}
html body:not(#x) .nav-toggle:checked + .nav-open::after{content:"Chiudi";font-size:12px}
.nav .nav-drop{border-bottom:1px solid #e7eef3}
.nav a.nav-link{display:flex !important;justify-content:space-between;align-items:center;min-height:52px;padding:0 1rem !important;font-size:16px !important;font-weight:600 !important;color:#142433 !important;border-radius:0 !important;box-shadow:none !important;background:transparent}
.nav .nav-drop > .nav-link::after{content:"";width:0.5rem;height:0.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s;opacity:.6}
.nav .nav-drop.is-open > .nav-link{background:#f3f6f9 !important;color:#0c6b74 !important;position:sticky;top:0;z-index:2;border-bottom:1px solid #e7eef3}
.nav .nav-drop.is-open > .nav-link::after{transform:translateY(2px) rotate(-135deg);opacity:1}
.nav .mega{padding:0.4rem 1rem 1rem !important}
.nav .mega > .wrap{padding:0 !important;max-width:none;width:auto}
.nav .mega a,.nav .mega span,.nav .mega strong{font-size:15px !important}
.nav .mega small,.nav .mega p,.nav .mega .mega-kicker{font-size:13px !important}
.nav .nav-all{display:flex;justify-content:space-between;align-items:center;min-height:44px;margin:0 0 0.4rem;padding:0 0.75rem;background:#142433;color:#fff !important;font-weight:600 !important;text-decoration:none}
.nav .nav-all::after{content:"›";font-size:20px}
/* plain link lists: bigger tap rows */
.nav .mega-dest,.nav .mega-dest.has-caribbean{grid-template-columns:1fr 1fr !important;gap:0.2rem 1rem !important}
.nav .mega-dest a,.nav .mega-links a,.nav .mega-inline a,.nav .mega-card{display:flex !important;align-items:center;justify-content:space-between;gap:0.5rem;min-height:44px;padding:0.35rem 0 !important;line-height:1.25;border-bottom:1px solid #f0f3f6}
.nav .mega-dest > div > p,.nav .mega-dest p{margin:0.8rem 0 0.1rem !important}
.nav .mega-caribbean,.nav .mega-dest > div:has(.mega-two){grid-column:1 / -1}
.nav .mega-two{grid-template-columns:1fr 1fr;column-gap:1rem}
.nav .mega-dest-card{display:none !important}
.nav .mega-cards,.nav .mega-inline,.nav .mega-year{grid-template-columns:1fr !important;gap:0.2rem !important}
.nav .mega-card{background:transparent;padding:0.35rem 0 !important}
.nav .mega-card span{display:grid}
/* split menus (Compagnie, Periodo): list first, tap to open one item */
.nav .dest-split,.nav .mega .dest-split.is-years,.nav .dest-split:has(#co-link-msc){display:block !important;padding:0 !important;background:transparent !important;border:0 !important}
.nav .dest-split .dest-nav{display:grid;grid-template-columns:1fr !important;gap:0 !important;border:0 !important;padding:0 !important;background:transparent !important;max-height:none}
.nav .dest-split .dest-nav.is-list a{display:flex !important;justify-content:space-between;align-items:center;gap:0.6rem;min-height:48px;padding:0.3rem 0 !important;border:0 !important;border-bottom:1px solid #f0f3f6 !important;background:transparent !important;color:#142433 !important;font-weight:500 !important}
.nav .dest-split .dest-nav.is-list a span{flex:1;font-weight:500 !important}
.nav .dest-split .dest-nav.is-list a small{margin-left:auto;color:#5c6773 !important}
.nav .dest-split .dest-nav.is-list a::after{content:"›" !important;color:#0c6b74 !important;font-size:20px;margin-left:0.3rem}
.nav .dest-split .dest-nav.is-list a.is-on span{font-weight:500 !important}
.nav .dest-split:not(.is-drill) .dest-panels{display:none}
.nav .dest-split.is-drill .dest-nav{display:none}
.nav .dest-split.is-drill .dest-panels{display:block;padding:0 !important;background:transparent !important}
.nav .dest-split .dest-panel.is-on{display:grid;gap:0.5rem}
.nav .nav-back{display:flex;align-items:center;gap:0.4rem;width:100%;min-height:44px;margin:0 0 0.3rem;padding:0;border:0;border-bottom:1px solid #e7eef3;background:none;font:inherit;font-size:14px;font-weight:600;color:#0c6b74;cursor:pointer;text-align:left}
.nav .nav-back::before{content:"‹";font-size:22px;line-height:1}
.nav .dest-split .mega-spot{margin:0 !important}
.nav .dest-split .mega-spot p{color:#5c6773 !important}
.nav .dest-split .co-fleet{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0 1rem !important}
.nav .dest-split .co-fleet a,.nav .dest-split .co-fleet span{display:flex !important;align-items:center;min-height:40px;padding:0.2rem 0 !important;border:0 !important;border-bottom:1px solid #f0f3f6 !important;background:transparent !important}
.nav .dest-split .mega-year{gap:0.8rem !important}
.nav .dest-split .mega-year .is-offers{border:0 !important;padding:0 !important}
.nav .dest-split .mega-links a{display:flex !important;justify-content:space-between;align-items:center;min-height:44px}
.nav .dest-split .mega-more{justify-content:stretch;margin:0.4rem 0 0}
.nav .dest-split .mega-more .btn,.nav .mega-more .btn{display:flex !important;justify-content:center;align-items:center;width:100% !important;min-height:46px;background:#0c6b74 !important;color:#fff !important;border:0 !important;padding:0 1rem !important;font-weight:600 !important}
}
