:root {--ink:#221b10;--sun:#e9a83a;--sun-deep:#d29429;--paper:#faf6ec;--cream:#f3ecdd;--navy:#1e2a44;--navy-ink:#f0ead9;--stamp-red:#b3402f;--leaf:#2f5240;--tape:rgba(224,200,138,0.5);--muted:#6d6250;--line:#ddd2ba;--radius:12px;--maxw:1160px;--serif:"Iowan Old Style","Palatino Linotype",Georgia,"Times New Roman",serif;--script:"GDSF Script","Segoe Print","Bradley Hand","Comic Sans MS",cursive;--sun-ink:#7a5410} * {box-sizing:border-box} html,body {overflow-x:clip} body {margin:0;font-family:"Inter","Helvetica Neue",Arial,sans-serif;color:var(--ink);background:repeating-linear-gradient(0deg,rgba(34,27,16,0.016) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(34,27,16,0.013) 0 1px,transparent 1px 3px),radial-gradient(ellipse 120% 90% at 50% 40%,transparent 60%,rgba(34,27,16,0.05)),var(--cream);line-height:1.55} h1,h2 {font-family:var(--serif);font-weight:700;letter-spacing:-0.01em;line-height:1.12;margin:0 0 0.5rem} h3 {font-weight:800;letter-spacing:-0.02em;line-height:1.15;margin:0 0 0.5rem} h1 {font-size:clamp(2.1rem,5vw,3.4rem)} h2 {font-size:clamp(1.5rem,3.2vw,2.1rem)} h1,h2 {text-wrap:balance} a {color:inherit;transition:filter 200ms ease,background-color 200ms ease,color 200ms ease} a,button,select,summary {touch-action:manipulation} img {max-width:100%;display:block} .visually-hidden {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0} a:focus-visible,.btn:focus-visible,summary:focus-visible {outline:3px solid var(--sun);outline-offset:2px} .skip-link {position:absolute;left:-9999px;top:0;z-index:1000;background:var(--sun);color:var(--ink);font-weight:700;padding:0.7rem 1.1rem;border-radius:0 0 var(--radius) 0;text-decoration:none} .skip-link:focus {left:0} @media (prefers-reduced-motion:reduce) {* {transition-duration:0.01ms !important}} .activities-destination-page {--results-indent:calc(220px + 1rem)} .hotel-destination-page {--results-indent:calc(220px + 1.15rem)} .activities-destination-page>.live-activity-search~*,.hotel-destination-page>.stay-search--results~* {margin-left:var(--results-indent)} .activities-destination-page,.hotel-destination-page {width:min(1320px,calc(100vw - 2rem));margin-left:50%;transform:translateX(-50%)} .activities-destination-page {color:#18384a} .activities-destination-page .breadcrumbs {padding-top:1.2rem;font-size:0.74rem} .activities-destination-page .geography-hero {position:relative;min-height:168px;padding:1.1rem 350px 1.5rem 0;border:0} .activities-destination-page .geography-hero h1 {margin-top:0.15rem;color:#15374a;font-size:clamp(2.55rem,4.3vw,4rem);letter-spacing:-0.035em} .activities-destination-page .geography-hero .destination-lede {max-width:720px;margin-top:0.45rem;color:#53636a;font-size:1.02rem;line-height:1.5} .activities-city-guide-jump {position:absolute;top:0;right:1.5rem;display:grid;grid-template-columns:126px minmax(0,165px);align-items:center;gap:1rem;width:307px;color:#18384a;text-decoration:none} .activities-city-guide-jump>img {display:block;width:126px;height:126px;object-fit:contain;transform:rotate(-4deg);transition:transform 180ms ease} .activities-city-guide-jump-copy {display:grid;gap:0.25rem} .activities-city-guide-jump-copy small {color:#6a716f;font-size:0.66rem;font-weight:800;text-transform:uppercase;letter-spacing:0.09em} .activities-city-guide-jump-copy strong {font-family:var(--serif);font-size:1rem;line-height:1.18} .activities-city-guide-jump-copy>span {color:#2d596b;font-size:0.72rem;font-weight:750} .activities-city-guide-jump:hover>img {transform:rotate(0) scale(1.035)} .activities-city-guide-jump:hover .activities-city-guide-jump-copy strong {text-decoration:underline;text-underline-offset:0.2em} .activities-destination-page .live-activity-search.band {padding:0.35rem 0 0.8rem} .activities-destination-page .stay-bar {margin:0 0 0.8rem;padding:0.3rem;border-color:#dacdb5;border-radius:10px;box-shadow:0 3px 14px rgba(66,48,20,0.07)} .activities-destination-page .stay-bar-segment {min-height:54px} .activities-destination-page .stay-bar-submit {min-width:196px;min-height:46px;border-radius:7px;background:#d68b19;color:#173548} .activities-destination-page .stay-bar-submit:hover {background:#c87d11} .activities-destination-page .live-activity-search-form {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)} .activity-results-layout {display:grid;grid-template-columns:220px minmax(0,1fr);gap:1rem;align-items:start} .activity-filter-rail {padding:0;overflow:hidden;border:1px solid #ded3bf;border-radius:10px;background:rgba(250,246,236,0.62)} .activity-filter-heading {display:flex;align-items:baseline;justify-content:space-between;gap:0.5rem;padding:0.9rem 0.8rem 0.6rem;border-bottom:1px solid var(--line)} .activity-filter-heading h2 {margin:0;font-family:var(--serif);font-size:1rem} .activity-filter-heading a {color:#345668;font-size:0.65rem} .activity-filter-note {margin:0;color:#5f6a6d;font-size:0.75rem;line-height:1.7} .activities-guides {margin:1.4rem 0;padding:clamp(1.2rem,2.5vw,2rem);border:1px solid #d8c6a7;border-radius:12px;background:linear-gradient(105deg,rgba(255,255,255,0.28),transparent 42%),rgba(247,239,222,0.82);box-shadow:0 7px 18px rgba(75,51,25,0.06)} .activities-guides>h2 {margin:0;color:#153a4d;font-size:clamp(1.65rem,2.6vw,2.35rem)} .activities-guides-intro {margin:0.35rem 0 1rem;color:#59696f;font-size:0.86rem} .activities-guide-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.9rem;scroll-margin-top:7rem} .activities-guide-card {display:grid;grid-template-columns:minmax(150px,40%) minmax(0,1fr);min-height:154px;overflow:hidden;border:1px solid #d5c09f;border-radius:9px;background:rgba(255,252,244,0.82);color:#17394a;text-decoration:none;transition:transform 180ms ease,box-shadow 180ms ease} .activities-guide-card:hover {transform:translateY(-2px);box-shadow:0 10px 22px rgba(54,38,20,0.12)} .activities-guide-card-media {min-width:0;overflow:hidden;background:#e6dac4} .activities-guide-card-media>img,.activities-guide-card-placeholder,.activities-guide-card-placeholder img {display:block;width:100%;height:100%} .activities-guide-card-media>img {object-fit:cover;transition:transform 220ms ease} .activities-guide-card:hover .activities-guide-card-media>img {transform:scale(1.035)} .activities-guide-card-placeholder {display:grid;place-items:center;padding:1rem;background:#e9dcc3} .activities-guide-card-placeholder img {object-fit:contain} .activities-guide-card-body {display:flex;min-width:0;flex-direction:column;padding:1rem} .activities-guide-card-body small {color:#8b6127;font-size:0.63rem;font-weight:800;text-transform:uppercase;letter-spacing:0.08em} .activities-guide-card-body h3 {margin:0.35rem 0 0;color:inherit;font-family:var(--serif);font-size:1.05rem;line-height:1.18} .activities-guide-card-body>span {margin-top:auto;padding-top:0.65rem;color:#2c5b6e;font-size:0.73rem;font-weight:800} .activity-results-main {min-width:0} .activity-results-main .card-grid,.activity-results-main .live-activity-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:0.85rem;margin:0} [data-activity-destination-card] {display:flex;min-height:348px;flex-direction:column;overflow:hidden;border:1px solid #d8cbb3;border-radius:8px;background:rgba(250,246,236,0.86);color:#18384a;box-shadow:0 2px 10px rgba(50,38,20,0.035)} [data-activity-destination-card]:hover {box-shadow:0 8px 20px rgba(50,38,20,0.11)} .activity-destination-card-media {position:relative;flex:0 0 150px;overflow:hidden;background:#d8d3c5} [data-activity-destination-card] .activity-destination-card-media img,[data-activity-destination-card] .activity-destination-card-media .photo-card-placeholder {width:100%;height:150px;object-fit:cover;opacity:0.92} .activity-card-badge {position:absolute;top:8px;left:8px;padding:0.2rem 0.45rem;border-radius:4px;background:rgba(44,91,63,0.94);color:#fff8e9;font-family:var(--serif);font-size:0.63rem;font-weight:800} .activity-card-save {position:absolute;top:7px;right:7px;display:grid;place-items:center;width:27px;height:27px;border-radius:5px;background:rgba(250,246,236,0.88);color:#173f52;font-size:1rem} [data-activity-destination-card] .activity-destination-card-body {position:static;display:flex;flex:1;flex-direction:column;padding:0.7rem 0.72rem 0.65rem;background:none} [data-activity-destination-card] h3 {min-height:2.45em;margin:0;color:#17394a;font-family:var(--serif);font-size:0.92rem;line-height:1.2} [data-activity-destination-card] p {opacity:1} [data-activity-destination-card] .activity-card-summary {display:-webkit-box;min-height:2.8em;margin:0.35rem 0 0;overflow:hidden;color:#667278;font-size:0.65rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2} .activity-card-meta {display:grid;gap:0.12rem;margin-top:0.4rem !important;color:#53656d;font-size:0.64rem !important} .activity-card-footer {display:flex;align-items:end;justify-content:space-between;gap:0.5rem;margin-top:auto;padding-top:0.55rem;color:#425a65;font-size:0.62rem} .activity-card-footer strong {color:#17394a;font-size:0.72rem} .activity-card-footer span {margin-left:auto;white-space:nowrap} .activities-top-things,.activities-about,.activities-guides,.activities-nearby,.activities-explore {margin-top:1.1rem} .activities-top-things {padding-top:0.2rem;border-top:1px solid var(--line)} .activities-top-things h2,.activities-nearby h2,.activities-about h2 {color:#17394a;font-size:1.45rem} .activities-top-things .card-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:0.55rem} .activities-top-things [data-activity-destination-card] {display:grid;grid-template-columns:42% minmax(0,1fr);min-height:150px} .activities-top-things .activity-destination-card-media {height:100%;min-height:150px} .activities-top-things [data-activity-destination-card] .activity-destination-card-media img {position:absolute;inset:0;height:100%} .activities-top-things .activity-card-summary,.activities-top-things .activity-card-meta {display:none} .activities-top-things [data-activity-destination-card] h3 {font-size:0.82rem} .activities-top-things .activity-card-footer {display:grid} .activities-nearby {position:relative;display:grid;grid-template-columns:minmax(300px,0.9fr) minmax(0,2.4fr);grid-template-rows:auto 1fr auto;column-gap:clamp(2rem,4vw,4.5rem);min-height:430px;padding:clamp(2.2rem,4vw,4.75rem);overflow:hidden;border:0;border-radius:18px;background:#efe0c5 url("/media/site__nearby-map-panel.webp?v=3") center / 100% 100% no-repeat;box-shadow:inset 0 0 0 1px rgba(130,87,42,0.22),0 9px 24px rgba(72,48,22,0.1)} .activities-nearby>h2 {grid-column:1;grid-row:1;align-self:end;width:100%;max-width:100%;margin:0;color:#123a51;font-size:clamp(2.7rem,3.5vw,4.2rem);line-height:0.97} .activities-nearby-intro {grid-column:1;grid-row:2;align-self:start;margin:1.5rem 0 0;color:#17384a;font-size:clamp(1rem,1.2vw,1.45rem)} .activities-nearby .card-grid {grid-column:2;grid-row:1 / 3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:center;gap:clamp(0.65rem,1.25vw,1.25rem);margin:0} .activities-nearby .road-sign-card {width:100%;min-height:0} .activities-nearby .road-sign-card-title {font-size:clamp(0.76rem,1.05vw,1.14rem);white-space:nowrap} .activities-nearby-more {grid-column:2;grid-row:3;justify-self:end;margin:clamp(1.2rem,2.5vw,2.6rem) 0 0;color:#123a51;font-family:var(--serif);font-size:clamp(1rem,1.45vw,1.55rem);font-weight:750} .activities-nearby-more a {text-decoration:none} .activities-nearby-more a:hover {text-decoration:underline;text-underline-offset:0.25em} .activities-about {max-width:760px;padding-top:0.8rem} .activities-about p {margin:0.35rem 0;color:#51636b;font-size:0.83rem;line-height:1.55} .activities-explore {padding:clamp(1.5rem,3vw,2.4rem) 0;border-top:1px solid var(--line)} .activities-explore h2 {margin:0 0 0.65rem;color:var(--ink);font-size:clamp(1.65rem,2.8vw,2rem)} .activities-explore .dir-columns {columns:3 220px;column-gap:2rem} .activities-explore .dir-columns a {display:block;padding:0.35rem 0;color:var(--muted);font-size:0.95rem;font-weight:400} @media (max-width:1220px) {.activity-results-main .card-grid,.activity-results-main .live-activity-grid {grid-template-columns:repeat(3,minmax(0,1fr))} .activities-top-things .card-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .activities-nearby {grid-template-columns:minmax(280px,0.9fr) minmax(0,2.1fr);column-gap:clamp(1.4rem,3vw,2.5rem)} .activities-nearby .card-grid {grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:900px) {.activities-destination-page {width:min(100%,calc(100vw - 28px))} .activities-destination-page .geography-hero {padding-right:270px} .activities-city-guide-jump {right:0;grid-template-columns:106px minmax(0,135px);gap:0.75rem;width:253px} .activities-city-guide-jump>img {width:106px;height:106px} .activities-city-guide-jump-copy strong {font-size:0.9rem} .activity-filter-rail {position:static} .activity-filter-rail .hotel-filter-form {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start} .activity-filter-rail .hotel-filter-section + .hotel-filter-section {border-top:0;border-left:1px solid var(--line)} .activity-filter-rail .hotel-filter-apply {grid-column:1 / -1;justify-self:end;width:190px} .activity-results-layout {grid-template-columns:1fr} .activities-destination-page>.live-activity-search~* {margin-left:0} .activity-results-main .card-grid,.activity-results-main .live-activity-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .activities-nearby {display:block;min-height:0;padding:2.5rem 2rem;background-size:cover} .activities-nearby>h2 {max-width:none;font-size:clamp(2.4rem,8vw,4rem)} .activities-nearby-intro {margin:0.7rem 0 1.5rem} .activities-nearby-more {margin-top:1.5rem;text-align:right}} @media (max-width:620px) {.activities-destination-page {width:calc(100vw - 24px)} .activities-destination-page .geography-hero {min-height:0;padding-right:0;padding-bottom:0.8rem} .activities-city-guide-jump {position:static;grid-template-columns:88px minmax(0,1fr);width:min(100%,320px);margin-top:1rem} .activities-city-guide-jump>img {width:88px;height:88px} .activities-destination-page .stay-bar-submit {min-width:0} .activity-results-main .card-grid,.activity-results-main .live-activity-grid,.activities-top-things .card-grid {grid-template-columns:1fr} .activities-top-things [data-activity-destination-card] {grid-template-columns:38% minmax(0,1fr)} .activities-guide-grid {grid-template-columns:1fr} .activities-guide-card {grid-template-columns:minmax(120px,38%) minmax(0,1fr)} .activities-nearby {padding:2rem 1rem} .activities-nearby .card-grid {grid-template-columns:1fr} .activities-nearby .road-sign-card-title {font-size:clamp(0.92rem,4vw,1.15rem)} .activities-nearby-more {text-align:left}} @font-face {font-family:"GDSF Display";src:url(/lib/gdsf-display-7a9616ea.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap} .site-header {position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--cream);color:var(--ink);padding:0.55rem clamp(1rem,4vw,2.5rem);border-bottom:1px solid var(--line)} .brand {display:inline-flex;align-items:center;gap:0.7rem;text-decoration:none} .brand-mark {width:44px;height:44px;display:block;background:none} .brand-word {font-family:"GDSF Display","Arial Narrow","Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:1.45rem;letter-spacing:0.015em;color:var(--navy);line-height:1} .brand-dot {color:var(--stamp-red)} .site-nav {position:absolute;left:50%;transform:translateX(-50%);z-index:60;display:flex;align-items:center;white-space:nowrap} .header-right {display:flex;align-items:center;gap:0.9rem;margin-left:auto} .site-nav>a {display:inline-block;color:var(--navy);text-decoration:none;margin-left:1.4rem;padding:0.6rem 0;font-size:0.95rem;font-weight:600} .site-nav>a:hover {color:var(--sun-ink)} .site-nav>.nav-dropdown>.nav-dropdown-trigger {border-bottom:2px solid var(--stamp-red);padding-bottom:0.45rem;color:var(--navy)} .nav-dropdown {position:relative;display:inline-block;margin-left:1.25rem} .nav-dropdown-trigger {display:inline-flex;align-items:center;gap:0.35rem;padding:0.6rem 0;font-size:0.95rem;font-weight:600;cursor:pointer;list-style:none} .nav-dropdown-trigger::-webkit-details-marker {display:none} .nav-dropdown-chevron {transition:transform 0.15s ease} .nav-dropdown[open] .nav-dropdown-chevron {transform:rotate(180deg)} .nav-dropdown-panel {position:absolute;right:0;top:calc(100% + 0.4rem);z-index:50;min-width:21rem;max-width:calc(100vw - 2rem);background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 40px rgba(17,17,17,0.18);padding:0.5rem} .nav-dropdown-item {display:flex;align-items:center;gap:0.75rem;margin-left:0;padding:0.55rem 0.65rem;border-radius:8px;color:var(--ink);font-size:0.95rem;font-weight:400;text-decoration:none} .nav-dropdown-item:hover {background:var(--cream)} .nav-dropdown-icon {flex:none;display:inline-flex} .nav-dropdown-icon svg {width:26px;height:26px} .nav-dropdown-text {display:flex;flex-direction:column;line-height:1.3} .nav-dropdown-tagline {font-size:0.8rem;color:var(--muted)} .mobile-menu {position:relative;display:none;margin-left:auto} .mobile-menu-trigger {display:inline-flex;align-items:center;gap:0.45rem;padding:0.45rem 0.8rem;border-radius:999px;background:var(--paper);border:1px solid var(--line);color:var(--navy);font-size:0.9rem;font-weight:650;cursor:pointer;list-style:none} .mobile-menu-trigger::-webkit-details-marker {display:none} .mobile-menu[open]>.mobile-menu-trigger {border-color:var(--navy)} .mobile-menu-panel {position:absolute;right:0;top:calc(100% + 0.5rem);z-index:70;width:max-content;min-width:15rem;max-width:calc(100vw - 2rem);background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 40px rgba(17,17,17,0.18);padding:0.6rem} .mobile-menu-nav {display:flex;flex-direction:column;gap:0.15rem} .mobile-menu-heading {margin:0.2rem 0 0.1rem;padding:0 0.65rem;font-size:0.68rem;font-weight:750;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted)} .mobile-menu-explore {display:flex;flex-direction:column} .mobile-menu-item {display:flex;align-items:center;gap:0.7rem;padding:0.5rem 0.65rem;border-radius:8px;color:var(--ink);text-decoration:none;font-size:0.95rem} .mobile-menu-link {padding:0.55rem 0.65rem;border-radius:8px;color:var(--ink);text-decoration:none;font-size:0.95rem;font-weight:600} .mobile-menu-item:hover,.mobile-menu-link:hover {background:var(--cream)} .mobile-menu-nav .currency-switch {margin:0.35rem 0 0;display:none} .mobile-menu-nav .currency-switch.is-ready {display:block} .mobile-menu-nav .currency-dropdown-trigger {padding:0.55rem 0.65rem} .mobile-menu-nav .currency-dropdown-panel {left:0;right:auto} @media (max-width:820px) {.site-nav--desktop {display:none} .mobile-menu {display:block} .header-right {display:none}} .currency-switch {display:none} .currency-switch.is-ready {display:inline-block} .currency-dropdown-panel {min-width:9rem;overflow:hidden} .currency-dropdown-scroll {max-height:min(28rem,calc(100vh - 7rem));overflow-y:auto;overscroll-behavior:contain;padding-right:0.25rem;scrollbar-gutter:stable} .currency-dropdown-item {width:100%;justify-content:space-between;border:0;background:transparent;cursor:pointer;font-family:inherit;text-align:left} .currency-dropdown-item.is-current {background:var(--cream)} .flag-sprite {position:absolute;width:0;height:0;overflow:hidden} .currency-flag {flex:0 0 auto;width:21px;height:15px;border-radius:2px;box-shadow:0 0 0 1px rgba(23,56,86,0.18)} .currency-dropdown-item {display:flex;align-items:center;gap:0.5rem} .currency-dropdown-code {font-weight:700;margin-right:auto} .currency-dropdown-check {color:var(--sun-ink);opacity:0} .currency-dropdown-item.is-current .currency-dropdown-check {opacity:1} .currency-dropdown-item:focus-visible {outline:3px solid var(--sun);outline-offset:-2px} @media (max-width:820px) {.currency-switch {margin-left:0} .currency-dropdown-trigger {font-size:0.88rem}} main {max-width:var(--maxw);margin:0 auto;padding:0 1rem 3rem} .band {padding:2.2rem 0 0.5rem} .band:nth-of-type(even) {background:transparent} .breadcrumbs {font-size:0.85rem;color:var(--muted);padding:1.1rem 0 0.4rem} .breadcrumbs a {color:var(--muted);text-decoration:none} .breadcrumbs a:hover {text-decoration:underline} .crumb-sep {margin:0 0.45rem} .crumb-current {color:var(--ink);font-weight:600} .card-grid {display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin:1.1rem 0} .geo-tier-card {display:flex;flex-direction:column;gap:0.4rem} .geo-tier-meta {margin:0;color:var(--muted);font-size:0.85rem} .geo-tier-hub-link {margin:1.6rem 0 0;font-size:0.9rem} .geo-tier-hub-link a {color:var(--muted)} .photo-card {position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--ink);color:var(--paper);text-decoration:none;min-height:200px} .photo-card img,.photo-card-placeholder {width:100%;height:200px;object-fit:cover;opacity:0.85} .photo-card img {transition:filter 200ms ease,background-color 200ms ease,color 200ms ease,opacity 200ms ease} .photo-card:hover img {opacity:1} .photo-card-placeholder {background:linear-gradient(160deg,#2a2a2a,#4b4b4b)} .photo-card-text {position:absolute;inset:auto 0 0 0;padding:0.9rem 1rem;background:linear-gradient(transparent,rgba(0,0,0,0.75))} .photo-card h3 {font-size:1.15rem;margin:0} .photo-card p {margin:0.15rem 0 0;font-size:0.8rem;opacity:0.9} @media (max-width:820px) {.category-section .photo-card,.category-section .photo-card img,.category-section .photo-card-placeholder {min-height:320px} .category-section .photo-card img {height:320px}} .road-sign-card {position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:74px;aspect-ratio:3.35 / 1;padding:7% 17% 7% 10%;overflow:visible;background:transparent url("/media/site__nearby-road-sign.webp?v=3") center / 116% auto no-repeat;color:#f7ead0;text-decoration:none;filter:drop-shadow(0 5px 7px rgba(17,17,17,0.17));transition:filter 200ms ease,transform 200ms ease} .road-sign-card:hover {color:#fff2d9;filter:brightness(1.06) drop-shadow(0 11px 16px rgba(17,17,17,0.22));transform:translateY(-2px)} .road-sign-card-title {position:relative;margin:0;max-width:100%;color:inherit;font-family:var(--serif);font-size:clamp(0.9rem,0.45vw + 0.82rem,1.2rem);font-weight:650;line-height:1.08;overflow-wrap:anywhere;text-wrap:balance;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.46)} .road-sign-card .road-sign-card-title {color:inherit} .road-sign-card-distance {font-weight:550} @media (max-width:520px) {.road-sign-card {min-height:86px;padding-right:16%}} .partner-offer-grid,.guide-grid {display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:1rem 0} .partner-offer-card,.guide-card {border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);padding:1.1rem} .partner-offer-card>img {width:calc(100% + 2.2rem);height:150px;object-fit:cover;margin:-1.1rem -1.1rem 1rem} .partner-offer-type {margin:0 0 0.35rem;color:var(--muted);font-size:0.78rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase} .partner-disclosure,[class$="-byline"] {color:var(--muted);font-size:0.82rem} .partner-widget-section {scroll-margin-top:1rem} .partner-widget-list {display:grid;gap:1rem;margin:1rem 0} .partner-widget-card {overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)} .partner-widget-header {display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--line)} .partner-widget-header h3 {margin-bottom:0.3rem;font-size:1.2rem} .partner-widget-header p {margin:0;color:var(--muted)} .partner-widget-provider {margin-bottom:0.2rem !important;color:var(--ink) !important;font-size:0.76rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase} .partner-widget-badge {flex:0 0 auto;border-radius:999px;background:var(--cream);padding:0.32rem 0.65rem;color:var(--muted);font-size:0.74rem;font-weight:700;white-space:nowrap} .partner-widget-mount {display:grid;min-height:440px;place-items:center;overflow-x:auto;padding:1rem;background:#fbfbfa} .partner-widget-mount--search {min-height:150px} .partner-widget-mount--frame {min-height:0;padding:0.75rem;display:flex;flex-direction:column;align-items:stretch;gap:0.5rem} .partner-widget-mount--frame>.partner-widget-frame {order:-1} .partner-widget-mount--frame .partner-widget-fallback>a {font-size:0.9rem} .partner-widget-frame {width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch} .partner-widget-frame>iframe {display:block;border:0} .partner-widget-mount>onetwogo-travelto-widget,.partner-widget-mount>onetwogo-country-widget {width:min(100%,600px);margin:0} .partner-widget-mount--search>#one2go {width:100%;max-width:900px;color:var(--ink);font-family:inherit} .partner-widget-mount--search #one2go.o2gblack .one2goheader,.partner-widget-mount--search #one2go.o2gblack form .o2ggo {background:var(--sun);color:var(--ink)} .partner-widget-mount--search #one2go.o2gblack form .o2ggo:hover {background:#e0af00;color:var(--ink)} .partner-widget-mount--search #one2go .one2goheader .o2gcaption {color:var(--ink);font-weight:700} .partner-widget-mount--search #one2go .o2gform-control,.partner-widget-mount--search #one2go .o2gbtn,.partner-widget-mount--search #one2go form .o2ggo {min-height:44px;font-size:1rem} .partner-widget-mount--search #one2go .dropdown_12go-menu>li>a {padding:0.55rem 0.75rem !important;font-size:0.95rem !important} .partner-widget-mount>.eg-widget {width:100%} .partner-widget-mount>.eg-widget>.eg-widget-frame {width:100%;min-height:520px;max-width:none} .partner-widget-mount>[data-gyg-widget] {width:100%} .partner-widget-mount>[data-kiwitaxi-search] {width:100%} .partner-widget-fallback {display:grid;gap:0.6rem;justify-items:center;text-align:center} .partner-widget-fallback>a {font-weight:600} .partner-widget-consent {border:1px solid var(--line);background:#fff;border-radius:999px;padding:0.5rem 0.9rem;font-size:0.85rem;cursor:pointer} .partner-widget-consent-note {margin:0;color:var(--muted);font-size:0.78rem} .partner-widget-disclosure {margin:0;padding:0.75rem 1.1rem;border-top:1px solid var(--line);color:var(--muted);font-size:0.78rem} .partner-widget-mount #powered {align-self:start;width:100% !important;height:auto !important;margin-left:0 !important;bottom:0 !important;padding-top:0.45rem;color:var(--muted) !important;font-size:0.75rem !important;text-align:center} .partner-widget-mount #powered a {color:var(--ink) !important} @media (max-width:820px) {.partner-widget-header {align-items:stretch;flex-direction:column} .partner-widget-badge {align-self:flex-start} .partner-widget-mount {padding:0.55rem}} @media (max-width:620px) {.partner-widget-mount>.eg-widget>.eg-widget-frame {min-height:680px}} .guide-card h2,.guide-card h3 {font-size:1.2rem} .guide-card a {text-decoration-thickness:1px;text-underline-offset:3px} .guide-article {max-width:760px;margin:1.5rem auto} .guide-header {border-bottom:1px solid var(--line);padding-bottom:1.2rem;margin-bottom:1.8rem} .guide-lede {font-size:1.16rem;color:var(--muted)} .guide-hero {margin:0 0 1.4rem} .guide-hero img {width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius);display:block} .guide-hero figcaption {margin-top:0.4rem;color:var(--muted);font-size:0.78rem} .guide-card>img {width:calc(100% + 2.2rem);max-width:none;height:150px;object-fit:cover;margin:-1.1rem -1.1rem 1rem} .guide-section {margin:2rem 0} .guide-partner-block {margin:2rem 0;padding:1rem;background:var(--cream);border-radius:var(--radius)} .guide-table-wrap {overflow-x:auto;margin:1rem 0;-webkit-overflow-scrolling:touch} .guide-table {width:100%;min-width:460px;border-collapse:collapse;font-size:0.95rem} .guide-table th,.guide-table td {text-align:left;padding:0.65rem 0.6rem;border-bottom:1px solid var(--line);vertical-align:top} .guide-table th {font-size:0.8rem;text-transform:uppercase;letter-spacing:0.04em;color:var(--muted)} [class$="-faq"] dt {font-weight:600;margin-top:0.9rem} [class$="-faq"] dd {margin:0.25rem 0 0;color:var(--muted)} .guide-cta {margin:1rem 0} .guide-cta-button {display:inline-block;background:var(--sun);color:var(--ink);font-weight:700;padding:0.7rem 1.3rem;border-radius:999px;text-decoration:none} .btn {display:inline-block;background:var(--sun);color:var(--ink);font-weight:700;padding:0.7rem 1.3rem;border-radius:999px;text-decoration:none;border:none;cursor:pointer;transition:filter 200ms ease,background-color 200ms ease,color 200ms ease} .btn:hover {filter:brightness(0.95)} .offer-table-scroll {overflow-x:auto;margin:1rem 0;-webkit-overflow-scrolling:touch} .offer-table {width:100%;min-width:460px;border-collapse:collapse;font-size:0.95rem} .offer-table th,.offer-table td {text-align:left;padding:0.65rem 0.6rem;border-bottom:1px solid var(--line)} .offer-table th {font-size:0.8rem;text-transform:uppercase;letter-spacing:0.04em;color:var(--muted)} .offer-price {font-weight:800;white-space:nowrap} .offer-fresh {color:var(--muted);font-size:0.8rem} .facts {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0.7rem;margin:1rem 0} .fact {background:var(--cream);border-radius:var(--radius);padding:0.8rem 1rem} .fact b {display:block;font-size:0.78rem;text-transform:uppercase;letter-spacing:0.04em;color:var(--muted)} .good-to-know {background:var(--cream);border-radius:var(--radius);padding:1.1rem 1.3rem;margin:1rem 0} .quick-answers details {border-bottom:1px solid var(--line);padding:0.55rem 0} .quick-answers summary {cursor:pointer;font-weight:600} .sticky-offer {position:sticky;bottom:0.8rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;background:var(--paper);border:2px solid var(--sun);border-radius:var(--radius);padding:0.7rem 1rem;margin-top:2rem;box-shadow:0 6px 24px rgba(0,0,0,0.12)} .sticky-offer .btn {margin-left:auto} .trust-strip {background:var(--cream);border-top:1px solid var(--line);padding:1.6rem 1rem;text-align:center} .trust-line {font-weight:700;margin:0 0 0.4rem} .trust-points {list-style:none;display:flex;gap:1.4rem;justify-content:center;padding:0;margin:0.3rem 0;flex-wrap:wrap;color:var(--muted);font-size:0.9rem} .affiliate-note {color:var(--muted);font-size:0.82rem;max-width:640px;margin:0.6rem auto 0} .site-footer {background:var(--navy);color:var(--navy-ink);padding:clamp(2.2rem,4vw,3.2rem) clamp(1rem,4vw,2.5rem) 1.6rem;border-top:1px solid rgba(255,255,255,0.1)} .footer-brand {display:flex;align-items:center;gap:0.7rem;margin-bottom:0.65rem} .footer-brand span {font-family:"GDSF Display","Arial Narrow","Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:1.3rem;letter-spacing:0.015em;color:var(--navy-ink);line-height:1} .footer-logo {width:44px;height:44px;flex-shrink:0;filter:brightness(0) invert(0.92) sepia(0.1);background:none} .site-footer p {color:#b9b3a2;font-size:0.9rem;line-height:1.6;max-width:360px;margin:0} .site-footer a {color:#ddd7c6;font-size:0.9rem;text-decoration:none} .site-footer a:hover {color:var(--sun)} .footer-flourish {max-width:var(--maxw);margin:2.2rem auto 0;display:flex;align-items:center;justify-content:center;position:relative;min-height:92px} .footer-flourish .stamp-badge--footer {position:absolute;right:0;top:50%;transform:translateY(-50%) rotate(12deg)} .footer-flourish-script {font-family:var(--script);font-size:clamp(1.5rem,3vw,2rem);color:rgba(240,234,217,0.85);transform:rotate(-3deg)} .stamp-badge--footer {width:92px;color:rgba(240,234,217,0.45);transform:rotate(12deg)} .hero {background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:clamp(1.6rem,5vw,3.2rem);margin-top:1.2rem} .hero p {max-width:560px;color:#ddd} .essentials-photo-hero {position:relative;overflow:hidden;isolation:isolate} .essentials-photo-hero-image {position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center} .essentials-photo-hero::after {content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(to right,rgba(17,17,17,.82),rgba(17,17,17,.32))} .geography-hero {margin-top:0.65rem;padding:1rem 0 1.35rem;background:transparent;color:var(--ink);border-radius:0;border-bottom:1px solid var(--line)} .geography-hero h1 {font-size:clamp(1.8rem,3.5vw,2.45rem)} .geography-hero p {max-width:none;margin:0.65rem 0 0;color:#383838;font-size:0.98rem;line-height:1.72} .geography-hero p[class$="-byline"] {color:var(--muted);font-size:0.82rem} .activity-place-page .geography-hero {border-bottom:0} .band-surprise {background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:clamp(1.6rem,5vw,3rem);margin:1.6rem 0 0} .band-surprise p {max-width:560px;color:#ddd} .hero-search {display:flex;align-items:stretch;width:100%;max-width:none;margin:0;background:transparent;border:0;border-radius:0;overflow:hidden} .hero-search-segment {display:flex;flex-direction:column;justify-content:center;gap:0.15rem;flex:1 1 150px;min-width:0;padding:0.75rem 1rem;cursor:pointer;transition:background-color 200ms ease} .hero-search-segment:hover {background:rgba(255,255,255,0.06)} .hero-search-label {font-size:0.75rem;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.75)} .hero-search-segment:is(select,input) {appearance:none;-webkit-appearance:none;-moz-appearance:none;display:block;width:100%;min-width:0;background:transparent;border:none;color:var(--paper);font:inherit;font-size:1rem;padding:0.1rem 1.5rem 0.1rem 0;color-scheme:dark;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='rgba(255,255,255,0.7)' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 8 10 13 15 8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center;background-size:14px;cursor:pointer} .hero-search-segment input {background-image:none;color-scheme:dark} .hero-search-segment input::placeholder {color:rgba(255,255,255,0.65)} .hero-search-segment input[type="date"]::-webkit-calendar-picker-indicator {filter:none;opacity:0.72;cursor:pointer} .hero-search-segment select option {color:var(--paper);background:#1d1d1d} .hero-search-segment select optgroup {color:rgba(255,255,255,0.78);background:#151515;font-weight:700} .hero-search-segment:is(select,input):focus-visible {outline:3px solid var(--sun);outline-offset:-2px} .hero-search .btn {align-self:center;flex:0 0 auto;min-height:52px;margin:0.7rem 0.8rem;padding-inline:1.4rem;white-space:nowrap} @media (max-width:700px) {.hero-search {flex-direction:column;max-width:none} .hero-search-segment {flex:0 0 auto} .hero-search .btn {width:calc(100% - 1.6rem);margin:0.8rem;text-align:center}} .hero-direct-search {display:flex;align-items:center;gap:0.9rem;width:100%;max-width:860px;margin:0 0 1rem} .hero-direct-search-label {flex:0 0 auto;margin:0;color:rgba(255,255,255,0.72);font-size:0.75rem;font-weight:750;letter-spacing:0.07em;text-transform:uppercase} .hero-direct-search-form {display:flex;align-items:center;flex:1 1 auto;min-width:0;min-height:48px;overflow:hidden;background:rgba(17,17,17,0.58);border:1px solid rgba(255,255,255,0.24);border-radius:999px;transition:border-color 180ms ease,box-shadow 180ms ease} .hero-direct-search-form:focus-within {border-color:var(--sun);box-shadow:0 0 0 2px rgba(255,200,0,0.16)} .hero-direct-search-icon {flex:0 0 auto;margin-left:1rem;color:rgba(255,255,255,0.68)} .hero-direct-search-form input {appearance:none;flex:1 1 auto;min-width:0;padding:0.7rem 0.8rem;background:transparent;border:0;outline:0;color:var(--paper);font:inherit} .hero-direct-search-form input::placeholder {color:rgba(255,255,255,0.58)} .hero-direct-search-form input::-webkit-search-cancel-button {filter:invert(1)} .hero-direct-search-button {appearance:none;align-self:stretch;display:inline-flex;align-items:center;gap:0.35rem;padding:0 1.1rem;background:transparent;border:0;border-left:1px solid rgba(255,255,255,0.16);color:var(--paper);font:inherit;font-weight:750;cursor:pointer} .hero-direct-search-button:hover {background:rgba(255,255,255,0.08);color:var(--sun)} .hero-direct-search-button:focus-visible {outline:3px solid var(--sun);outline-offset:-3px} .hero-direct-search-button .icon {width:15px;height:15px} @media (max-width:700px) {.hero-direct-search {align-items:stretch;flex-direction:column;gap:0.45rem;max-width:440px} .hero-direct-search-form {width:100%}} .destination-vertical-grid {display:grid;gap:0.7rem;margin:0.55rem 0 0;grid-template-columns:repeat(auto-fit,minmax(215px,1fr))} .destination-vertical-card {display:flex;align-items:center;gap:0.7rem;padding:0.75rem 0.85rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.05);transition:box-shadow 180ms ease,transform 180ms ease} .destination-vertical-card:hover {box-shadow:0 10px 26px rgba(0,0,0,0.12);transform:translateY(-2px)} .vertical-launcher-icon {display:inline-grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:var(--cream);color:#1d4b63} .vertical-launcher-icon svg {width:22px;height:22px} .destination-vertical-copy {display:grid;gap:0.1rem;min-width:0} .vertical-launcher-label {font-weight:750;font-size:0.86rem} .destination-vertical-copy small {color:var(--muted);font-size:0.72rem;line-height:1.35} .destination-vertical-arrow {margin-left:auto;color:#2d607e} .destination-vertical-card:hover .destination-vertical-arrow {color:var(--ink)} .vertical-see-all {margin:-0.4rem 0 2rem;text-align:right} .vertical-coming-soon {max-width:720px;min-height:45vh;display:grid;align-content:center} .essential-grid {display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin:1rem 0} @media (max-width:640px) {.essential-grid {grid-template-columns:1fr}} .essential-card {display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);text-decoration:none} .essential-card:hover {border-color:var(--ink)} .essential-card-photo {display:flex;align-items:flex-end;height:172px;padding:0.9rem;background-color:var(--cream);background-size:cover;background-position:center} .essential-card-body {display:flex;flex-direction:column;gap:0.55rem;flex:1;padding:1rem 1.25rem 1.25rem} .essential-card h3 {font-size:1.2rem;margin:0} .essential-card-body p {margin:0;color:var(--muted);font-size:0.95rem} .essential-icon {display:grid;place-items:center;width:52px;height:52px;border-radius:var(--radius);background:var(--paper);color:var(--ink);border:1px solid var(--line);transition:background-color 200ms ease} .essential-card:hover .essential-icon {background:var(--sun);border-color:var(--sun)} .essential-cta {display:inline-flex;align-items:center;gap:0.4rem;margin-top:auto;padding-top:0.4rem;font-weight:750} .compare-card {border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:1.4rem;margin:1rem 0} .compare-card-header {display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:0.9rem} .compare-brand {display:flex;align-items:center;gap:0.85rem} .compare-logo-mark {flex:0 0 auto;width:46px;height:46px;border-radius:10px;border:1px solid var(--line);background-color:var(--paper);background-size:34px 34px;background-position:center;background-repeat:no-repeat} .compare-logo-wordmark {display:block;margin-bottom:0.2rem} .compare-logo-wordmark svg {display:block;height:26px;width:auto} .compare-provider-name {margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-0.02em} .compare-provider-tag {margin:0.15rem 0 0;color:var(--muted)} .top-pick-badge,.compare-badge {flex:0 0 auto;border-radius:999px;background:var(--sun);color:var(--ink);padding:0.35rem 0.8rem;font-size:0.74rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap} .compare-badge {background:var(--cream);border:1px solid var(--line);color:var(--muted)} .pros-cons {display:grid;gap:0.5rem 2rem;grid-template-columns:1fr 1fr;margin:1.1rem 0} .pros-cons h3 {margin:0 0 0.3rem;color:var(--muted);font-size:0.78rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase} .pros,.cons {list-style:none;margin:0;padding:0;font-size:0.95rem} .pros li,.cons li {position:relative;margin:0.55rem 0;padding-left:1.9rem} .pros li::before,.cons li::before {position:absolute;left:0;top:0.12rem;width:20px;height:20px;display:grid;place-items:center;border-radius:999px;font-size:0.68rem;font-weight:800} .pros li::before {content:"\2713";background:var(--sun);color:var(--ink)} .cons li::before {content:"\2715";background:var(--cream);border:1px solid var(--line);color:var(--muted)} .plan-grid {display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:1.1rem 0} .plan-card {display:flex;flex-direction:column;background:var(--cream);border-radius:var(--radius);padding:1.1rem} .plan-card h4 {margin:0 0 0.2rem;font-size:1.05rem} .plan-card>p {margin:0 0 0.5rem;color:var(--muted);font-size:0.9rem} .plan-card ul {flex-grow:1;margin:0 0 1rem;padding-left:1.1rem;font-size:0.92rem} .plan-card li {margin:0.3rem 0} .plan-card .btn {align-self:flex-start} .proton-suite {background:var(--cream);border-radius:var(--radius);padding:1.1rem;margin:1.1rem 0} .proton-suite h3 {font-size:1.05rem;margin:0 0 0.3rem} .proton-suite p {margin:0 0 0.5rem;font-size:0.92rem} .suite-list {list-style:none;margin:0;padding:0;display:grid;gap:0.3rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));font-size:0.92rem} .suite-list li {padding:0.3rem 0;border-bottom:1px solid var(--line)} .compare-card>.btn {margin-top:0.3rem} .compare-note {color:var(--muted);font-size:0.92rem;max-width:720px} @media (max-width:640px) {.pros-cons {grid-template-columns:1fr} .compare-card-header {flex-direction:column} .top-pick-badge,.compare-badge {align-self:flex-start}} .utility-place-search form {display:flex;align-items:end;gap:0.65rem;max-width:680px} .utility-place-search label {display:grid;flex:1;gap:0.3rem;color:var(--muted);font-size:0.78rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em} .utility-place-search input {min-height:48px;padding:0.65rem 0.8rem;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit} .vertical-search-root {display:grid;gap:0.9rem;border-radius:14px;background:var(--ink);padding:clamp(1rem,3vw,1.6rem);box-shadow:0 8px 24px rgba(0,0,0,0.12)} .vertical-search-root .hero-search {overflow:visible} .vertical-search-root .hero-direct-search {margin:0;max-width:none} .live-activity-skeleton-card,.live-activity-card.live-activity-skeleton-card:hover {pointer-events:none;box-shadow:0 2px 8px rgba(0,0,0,0.05);transform:none} .live-activity-skeleton-block,.live-activity-skeleton-line,.live-activity-skeleton-logo,.live-activity-skeleton-price {position:relative;display:block;overflow:hidden;border-radius:5px;background:#ddd5c5} .live-activity-skeleton-block {border-radius:0} .live-activity-skeleton-block::after,.live-activity-skeleton-line::after,.live-activity-skeleton-logo::after,.live-activity-skeleton-price::after {position:absolute;inset:0;content:"";background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,0.52) 48%,transparent 76%);transform:translateX(-100%);animation:activity-skeleton-shimmer 1.25s ease-in-out infinite} .live-activity-skeleton-line {height:14px;margin-bottom:0.55rem} .live-activity-skeleton-line--title {width:92%;height:17px} .live-activity-skeleton-line--title-short {width:68%;height:17px} .live-activity-skeleton-line--meta {width:48%;margin-top:0.35rem} .live-activity-skeleton-footer {display:flex;align-items:end;justify-content:space-between;gap:0.8rem;margin-top:auto;padding-top:0.9rem} .live-activity-skeleton-logo {width:54px;height:32px} .live-activity-skeleton-price {width:68px;height:19px} @keyframes activity-skeleton-shimmer {to {transform:translateX(100%)}} @media (prefers-reduced-motion:reduce) {.live-activity-skeleton-block::after,.live-activity-skeleton-line::after,.live-activity-skeleton-logo::after,.live-activity-skeleton-price::after {animation:none}} .live-activity-search {scroll-margin-top:1rem} .live-activity-search-form {margin:1rem 0 1.25rem} .live-activity-message {padding:1rem;border-radius:10px;background:var(--cream)} .live-fragment-message {padding:1rem;border-radius:10px;background:var(--cream)} .live-activity-summary,.live-activity-disclosure {color:var(--muted);font-size:0.86rem} .live-activity-grid,.stay-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem} .live-activity-card {position:relative;display:grid;grid-template-rows:180px minmax(0,1fr)} .live-activity-card,.stay-card {overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 2px 8px rgba(0,0,0,0.05);transition:box-shadow 180ms ease,transform 180ms ease} .live-activity-card:hover,.stay-card:hover {box-shadow:0 10px 26px rgba(0,0,0,0.12);transform:translateY(-2px)} .live-activity-media,.stay-card-media {background:var(--cream)} .live-activity-media img,.live-activity-image-empty,.stay-card-image {background:linear-gradient(145deg,var(--cream),#ded7c8)} .live-activity-media {position:relative;overflow:hidden} .live-activity-media img,.live-activity-image-empty {display:block;width:100%;height:100%;object-fit:cover} .live-activity-image-empty--partner {display:grid;place-items:center} .live-activity-media img.live-activity-placeholder-logo {width:72px;height:72px;padding:0.55rem;object-fit:contain;border-radius:14px;background:var(--paper);box-shadow:0 2px 10px rgba(17,17,17,0.1)} .live-activity-carousel {position:absolute;inset:0} .live-activity-carousel-track {display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none} .live-activity-carousel-track::-webkit-scrollbar {display:none} .live-activity-carousel-track img {flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always} .live-activity-carousel-prev,.live-activity-carousel-next {position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:32px;height:32px;border-radius:50%;border:0;background:rgba(255,255,255,0.92);color:var(--ink);font-size:1.25rem;line-height:1;font-weight:700;display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 6px rgba(0,0,0,0.25);opacity:0;transition:opacity 160ms ease} .live-activity-carousel-prev {left:0.55rem} .live-activity-carousel-next {right:0.55rem} .live-activity-card:hover .live-activity-carousel-prev,.live-activity-card:hover .live-activity-carousel-next,.live-activity-carousel-prev:focus-visible,.live-activity-carousel-next:focus-visible {opacity:1} .live-activity-carousel-prev:hover,.live-activity-carousel-next:hover {background:#fff} .live-activity-dots {position:absolute;left:50%;bottom:0.55rem;transform:translateX(-50%);z-index:2;display:flex;gap:0.3rem} .live-activity-dot {width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.55);box-shadow:0 0 3px rgba(0,0,0,0.35);transition:background-color 160ms ease} .live-activity-dot.is-active {background:#fff} .live-activity-body {display:flex;flex-direction:column;min-width:0;padding:1rem} .live-activity-card h3 {margin:0 0 0.65rem;font-size:1.08rem} .live-activity-link {color:inherit;text-decoration:none} .live-activity-link::after {content:"";position:absolute;inset:0;z-index:1} .live-activity-card:hover .live-activity-link {text-decoration:underline} .live-activity-link:focus-visible {outline:none} .live-activity-card:has(.live-activity-link:focus-visible) {outline:3px solid var(--sun);outline-offset:2px} .live-activity-meta {display:flex;flex-wrap:wrap;gap:0.4rem;font-size:0.82rem} .live-activity-meta span {padding:0.25rem 0.45rem;border-radius:999px;background:var(--cream)} .live-activity-footer {margin-top:auto;padding-top:0.9rem;display:flex;align-items:center;justify-content:space-between;gap:0.6rem} .live-activity-partner-logo {display:block;height:40px;width:auto} .live-activity-partner-logo--tile {width:40px;padding:4px;object-fit:contain} .live-activity-price {margin:0;color:var(--muted);font-size:0.88rem} .live-activity-price strong {color:var(--ink);font-size:1.08rem;margin-left:0.15rem} .ferry-indicative-price {color:var(--muted);margin:1rem 0} .ferry-indicative-price strong {color:var(--ink)} .live-activity-partner-name {color:var(--muted);font-size:0.82rem;font-weight:700} .inventory-card-price {margin:0;color:var(--muted);font-size:0.88rem;text-align:right} .inventory-card-price strong {color:var(--ink);font-size:1.08rem;margin-left:0.15rem} .inventory-price-approx {text-decoration:none} .keyword-places {margin:0 0 1.4rem} .keyword-places h2 {margin:0 0 0.4rem;font-size:1rem} .keyword-places ul {list-style:none;margin:0;padding:0} .keyword-places li {border-bottom:1px solid var(--line);padding:0.5rem 0} .keyword-places a {color:var(--ink);font-weight:600;text-decoration:none} .keyword-places a:hover {text-decoration:underline} .keyword-place-context {color:var(--muted);font-size:0.85rem} .keyword-activities {margin-top:1.2rem} .keyword-live {margin-top:1.2rem} .keyword-activity-card {display:flex;flex-direction:column} .keyword-activity-card .live-activity-card {flex:1 1 auto} .keyword-activity-place {margin:0.5rem 0 0;color:var(--muted);font-size:0.85rem} .keyword-activity-place a {color:var(--ink);font-weight:600;text-decoration:none} .keyword-activity-place a:hover {text-decoration:underline} .kayak-hotel-list {list-style:none;margin:0.75rem 0 0;padding:0;display:grid;gap:0.5rem} .kayak-hotel {display:flex;flex-wrap:wrap;align-items:baseline;gap:0.5rem;padding:0.6rem 0.85rem;border:1px solid var(--line);border-radius:10px;background:var(--paper)} .kayak-hotel-name {flex:1 1 12rem;min-width:0;font-weight:600} .kayak-hotel-rating {padding:0.25rem 0.45rem;border-radius:999px;background:var(--cream);font-size:0.82rem} .kayak-hotel-price {margin-left:auto;font-size:1.05rem;font-weight:700} .kayak-disclosure {color:var(--muted);font-size:0.86rem} .kayak-flight-list {list-style:none;margin:0.75rem 0 0;padding:0;display:grid;gap:0.5rem} .kayak-flight {display:flex;flex-wrap:wrap;align-items:baseline;gap:0.5rem;padding:0.6rem 0.85rem;border:1px solid var(--line);border-radius:10px;background:var(--paper)} .kayak-flight-price {font-size:1.05rem;font-weight:700} .kayak-flight-stops,.kayak-flight-airline {padding:0.25rem 0.45rem;border-radius:999px;background:var(--cream);font-size:0.82rem} .kayak-flight-time {color:var(--muted);font-size:0.86rem} .kayak-flight-link {margin-left:auto;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap} .kayak-flight-link:hover,.kayak-flight-link:focus-visible {text-decoration:underline} .kayak-car-list {list-style:none;margin:0.75rem 0 0;padding:0;display:grid;gap:0.5rem} .kayak-car {display:flex;flex-wrap:wrap;align-items:baseline;gap:0.5rem;padding:0.6rem 0.85rem;border:1px solid var(--line);border-radius:10px;background:var(--paper)} .kayak-car-price {font-size:1.05rem;font-weight:700} .kayak-car-class,.kayak-car-agency {padding:0.25rem 0.45rem;border-radius:999px;background:var(--cream);font-size:0.82rem} .kayak-car-link {margin-left:auto;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap} .kayak-car-link:hover,.kayak-car-link:focus-visible {text-decoration:underline} .stay-search {scroll-margin-top:1rem;padding-top:1.5rem} .stay-search>.section-subtitle {margin-top:0.15rem} .stay-bar {position:relative;display:flex;align-items:stretch;margin:1.1rem 0 1.4rem;padding:0.4rem;border:1px solid #dcdcdc;border-radius:999px;background:var(--paper);box-shadow:0 8px 24px rgba(0,0,0,0.09)} .stay-bar-segment {display:flex;align-items:center;gap:0.55rem;min-height:56px;min-width:0;padding:0 1.1rem;cursor:pointer} .stay-bar-segment:focus-within {border-radius:999px;box-shadow:inset 0 0 0 2px var(--sun)} .stay-bar-icon {flex:0 0 auto;color:var(--muted)} .stay-bar-icon {box-sizing:content-box;padding:8px;border-radius:999px;background:var(--cream);color:var(--ink)} .stay-bar-dest-row .stay-bar-icon {padding:0;background:none;color:var(--muted)} .stay-bar-dest-trigger {position:relative;padding-right:1.4rem} .stay-bar-dest-trigger::after {content:"";position:absolute;right:0.35rem;top:50%;width:7px;height:7px;margin-top:-5px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg)} .stay-bar-place {flex:1.3 1 0} .stay-bar-place select {width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;cursor:pointer} .stay-bar-to {border-left:1px solid var(--line)} .stay-bar-dates {flex:1.5 1 0;border-left:1px solid var(--line)} .stay-bar-dates input {min-width:0;flex:1 1 0;border:0;outline:0;padding:0;background:transparent;color:var(--ink);font:inherit;font-weight:700} .stay-bar-dash {color:var(--muted)} .stay-bar-guests {position:relative;display:flex;flex:1 1 0;min-width:0} .stay-bar-guests summary {list-style:none;flex:1 1 auto;border-left:1px solid var(--line)} .stay-bar-guests summary::-webkit-details-marker {display:none} .stay-bar-guests-summary {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700} .stay-bar-popover {position:absolute;z-index:30;top:calc(100% + 0.65rem);right:0;width:310px;padding:1rem;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:0 16px 45px rgba(0,0,0,0.2)} .stay-bar-guest-row {display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:58px;border-bottom:1px solid var(--line)} .stay-bar-guest-row>label {display:flex;flex-direction:column} .stay-bar-guest-row small {color:var(--muted);font-size:0.72rem} .stay-bar-stepper {display:flex;align-items:center;gap:0.4rem} .stay-bar-step {width:36px;height:36px;border-radius:999px;border:1px solid #cfcfcf;background:var(--paper);color:var(--ink);font-size:1.1rem;font-weight:700;line-height:1;cursor:pointer} .stay-bar-step:hover {border-color:var(--ink)} .stay-bar-stepper input {width:44px;border:0;text-align:center;background:transparent;color:var(--ink);font:inherit;font-weight:700;appearance:textfield;-moz-appearance:textfield} .stay-bar-stepper input::-webkit-outer-spin-button,.stay-bar-stepper input::-webkit-inner-spin-button {-webkit-appearance:none;margin:0} .stay-bar-done {display:block;margin:0.9rem 0 0 auto} .stay-bar--enhanced .stay-bar-place select,.stay-bar--enhanced .stay-bar-dates input,.stay-bar--enhanced .stay-bar-dash {display:none} .stay-bar-trigger {flex:1 1 auto;min-width:0;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} .stay-bar-trigger--empty {color:var(--muted)} .stay-bar-textinput {flex:1 1 auto;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;appearance:none;-webkit-appearance:none} .stay-bar-textinput::placeholder {color:var(--muted);font-weight:400} .stay-bar-textinput::-webkit-search-cancel-button {-webkit-appearance:none} .stay-bar-place,.stay-bar-dates {position:relative} .stay-bar-panel {position:absolute;z-index:30;top:calc(100% + 0.65rem);left:0;padding:0.9rem;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:0 16px 45px rgba(0,0,0,0.2)} .stay-bar-dest-panel {width:min(430px,calc(100vw - 2rem));max-height:520px;overflow-y:auto} .stay-bar-panel-filter {width:100%;min-height:44px;margin-bottom:0.6rem;padding:0.5rem 0.75rem;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit} .stay-bar-dest-country {margin:0.6rem 0 0.15rem;color:var(--muted);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em} .stay-bar-dest-row {display:flex;align-items:center;gap:0.6rem;width:100%;padding:0.55rem 0.4rem;border:0;border-radius:10px;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer} .stay-bar-dest-row:hover,.stay-bar-dest-row:focus-visible {background:var(--cream)} .stay-bar-dest-nearby {padding-block:0.8rem;border-bottom:1px solid var(--line)} .stay-bar-dest-recent-head {display:flex;align-items:center;justify-content:space-between;padding:0.75rem 0.4rem 0.25rem} .stay-bar-dest-recent-head p {margin:0;font-size:0.82rem;font-weight:700} .stay-bar-dest-recent-head button {padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:0.78rem;cursor:pointer} .stay-bar-dest-recent-head button:hover,.stay-bar-dest-recent-head button:focus-visible {color:var(--ink);text-decoration:underline} .stay-bar-dest-status {margin:0;padding:0.7rem 0.4rem;color:var(--muted);font-size:0.82rem} .stay-bar-dest-status[hidden],.stay-bar-dest-list[hidden],.stay-bar-dest-initial[hidden] {display:none} .stay-bar-dest-row[hidden],.stay-bar-dest-group[hidden] {display:none} .stay-bar-dest-row span {display:flex;flex-direction:column;min-width:0} .stay-bar-dest-row small {color:var(--muted);font-size:0.72rem} .stay-bar-dest-search {margin-top:0.35rem;padding-top:0.75rem;border-top:1px solid var(--line);color:var(--ink);font-weight:700;text-decoration:none} .stay-bar-dest-empty {margin:0.5rem 0 0;color:var(--muted)} .stay-bar-suggestion {display:block;padding:0.55rem 0.4rem;border-radius:10px;color:var(--ink);font:inherit;text-decoration:none} .stay-bar-suggestion:hover,.stay-bar-suggestion:focus-visible {background:var(--cream)} .stay-bar-suggestion-context {display:block;color:var(--muted);font-size:0.72rem} .stay-bar-suggestion--activity:first-of-type {margin-top:0.35rem;padding-top:0.75rem;border-top:1px solid var(--line)} .stay-bar-cal-panel {right:0;left:auto} .stay-bar-cal-header {display:flex;justify-content:space-between;margin-bottom:0.35rem} .stay-bar-cal-nav {width:34px;height:34px;border:1px solid #cfcfcf;border-radius:999px;background:var(--paper);color:var(--ink);font-size:1.05rem;line-height:1;cursor:pointer} .stay-bar-cal-nav:disabled {opacity:0.35;cursor:default} .stay-bar-cal-nav:not(:disabled):hover {border-color:var(--ink)} .stay-bar-cal-months {display:flex;gap:1.4rem} .stay-bar-cal-title {margin:0 0 0.4rem;font-weight:700;text-align:center} .stay-bar-cal-grid {display:grid;grid-template-columns:repeat(7,2.35rem);justify-items:stretch;row-gap:2px} .stay-bar-cal-weekday {color:var(--muted);font-size:0.7rem;font-weight:700;text-align:center;padding-bottom:0.3rem} .stay-bar-cal-day {height:2.35rem;border:0;border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-weight:600;cursor:pointer} .stay-bar-cal-day:disabled {color:#c4c4c4;cursor:default} .stay-bar-cal-day:not(:disabled):hover {box-shadow:inset 0 0 0 1px var(--ink)} .stay-bar-cal-day.is-start,.stay-bar-cal-day.is-end {background:var(--sun);color:var(--ink);font-weight:700} .stay-bar-cal-day.is-between {background:var(--cream);border-radius:0} .stay-bar-cal-foot {display:flex;justify-content:flex-end;margin-top:0.6rem} .stay-bar-cal-done {border-radius:999px} .stay-bar-submit {flex:0 0 auto;align-self:center;min-height:48px;margin:0 0.15rem 0 0.75rem;padding-inline:1.6rem;white-space:nowrap} .stay-bar-filters {position:relative;display:flex;flex-wrap:wrap;flex:0 0 auto} .stay-bar-filters summary {list-style:none;border-left:1px solid var(--line)} .stay-bar-filters summary::-webkit-details-marker {display:none} .stay-bar-filters-count {min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--sun);color:var(--ink);font-size:0.72rem;font-weight:700;line-height:20px;text-align:center} .stay-bar-filters-popover {width:280px} .stay-bar-filters-title {margin:0 0 0.35rem;font-weight:700} .stay-bar-filters-title--time {margin-top:0.7rem;padding-top:0.8rem;border-top:1px solid var(--line)} .stay-bar-filter-option {display:flex;align-items:center;gap:0.6rem;padding:0.55rem 0.4rem;border-radius:10px;color:var(--ink);font-weight:600;text-decoration:none} .stay-bar-filter-option:hover,.stay-bar-filter-option:focus-visible {background:var(--cream)} .stay-bar-filter-box {display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:20px;height:20px;border:2px solid #cfcfcf;border-radius:6px;color:var(--ink)} .stay-bar-filter-option.is-selected .stay-bar-filter-box {background:var(--sun);border-color:var(--sun)} .stay-bar-chips {display:flex;flex-wrap:wrap;gap:0.5rem;margin:0;padding:0;list-style:none} .stay-bar-chips::-webkit-scrollbar {display:none} .stay-bar-chip {display:inline-flex;align-items:center;flex:0 0 auto;gap:0.4rem;padding:0.3rem 0.45rem 0.3rem 0.85rem;border:1px solid var(--line);border-radius:999px;background:var(--cream);color:var(--ink);font-size:0.85rem;font-weight:600} .stay-bar-chip-remove {display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;color:var(--ink);font-size:1rem;font-weight:700;line-height:1;text-decoration:none} .stay-bar-chip-remove:hover,.stay-bar-chip-remove:focus-visible {background:var(--sun)} .stay-bar-chip-clear {padding:0;border-color:transparent;background:transparent} .stay-bar-chip-clear a {display:flex;align-items:center;min-height:30px;padding:0.3rem 0.7rem;border-radius:999px;color:#2d607e;font-weight:700;text-decoration:none} .stay-bar-chip-clear a:hover,.stay-bar-chip-clear a:focus-visible {background:var(--cream);text-decoration:underline} @media (max-width:719px) {.stay-bar {flex-direction:column;align-items:stretch;border-radius:22px;padding:0.5rem} .stay-bar-dates,.stay-bar-guests summary,.stay-bar-to,.stay-bar-filters summary {border-left:0;border-top:1px solid var(--line)} .cruise-search-form .stay-bar-segment + .stay-bar-segment {border-left:0;border-top:1px solid var(--line)} .stay-bar-segment {min-height:52px} .stay-bar-place,.stay-bar-dates,.stay-bar-guests,.stay-bar-filters {flex:0 0 auto} .stay-bar-place,.stay-bar-dates {flex-wrap:wrap} .stay-bar-filters {display:block} .stay-bar-popover,.stay-bar-panel {position:static;width:auto;max-height:none;flex-basis:100%;margin-top:0.25rem;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none} .stay-bar-submit {align-self:stretch;margin:0.5rem 0.35rem;text-align:center} .stay-bar[data-place-mode="text"] {display:grid;grid-template-columns:auto minmax(0,1fr)} .stay-bar[data-place-mode="text"]>.stay-bar-place {grid-column:1 / -1} .stay-bar[data-place-mode="text"]>.stay-bar-filters {position:static;display:block;grid-column:1;margin:0.5rem 0 0.5rem 0.35rem} .stay-bar[data-place-mode="text"]>.stay-bar-filters summary {min-width:56px;min-height:48px;padding:0 10px;border:0;background:transparent} .stay-bar[data-place-mode="text"]>.stay-bar-submit {grid-column:2;margin:0.5rem 0.35rem 0.5rem 0.5rem} .stay-bar[data-place-mode="text"] .stay-bar-filters-popover {position:absolute;top:calc(100% + 0.5rem);right:0;left:0;width:auto;max-height:min(70vh,520px);overflow-y:auto;margin:0;padding:1rem;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 16px 45px rgba(0,0,0,0.2)} .stay-bar-cal-grid {grid-template-columns:repeat(7,minmax(2rem,1fr))} .stay-bar-segment:focus-within {box-shadow:none} .stay-bar-place:is(select,.stay-bar-trigger):focus-visible,.stay-bar-dates:is(input,.stay-bar-trigger):focus-visible,.stay-bar-guests summary:focus-visible,.stay-bar-filters summary:focus-visible {outline:2px solid var(--sun);outline-offset:3px;border-radius:6px}} .vertical-search-fallback {margin:0 0 1.4rem} .vertical-search-fallback .hero-direct-search {margin:0;max-width:none} .vertical-search-fallback .hero-direct-search-label {color:var(--muted)} .vertical-search-fallback .hero-direct-search-form {background:var(--paper);border-color:var(--line)} .vertical-search-fallback .hero-direct-search-icon {color:var(--muted)} .vertical-search-fallback .hero-direct-search-form input {color:var(--ink)} .vertical-search-fallback .hero-direct-search-form input::placeholder {color:var(--muted)} .vertical-search-fallback .hero-direct-search-form input::-webkit-search-cancel-button {filter:none} .vertical-search-fallback .hero-direct-search-button {color:var(--ink)} .vertical-search-fallback .hero-direct-search-button:hover {background:var(--cream);color:var(--ink)} .stay-search-message {padding:1rem;border-radius:10px;background:var(--cream)} .stay-search-summary,.stay-search-disclosure,.stay-card-provider {color:var(--muted);font-size:0.86rem} .stay-compare-buttons {display:flex;flex-wrap:wrap;gap:0.8rem;margin:1.1rem 0 0.35rem} .stay-compare-btn {display:inline-flex;align-items:center;gap:0.55rem;min-height:54px;padding:0.75rem 1.3rem;border:1px solid #dcdcdc;border-radius:12px;background:var(--paper);color:var(--ink);font-weight:700;text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,0.05);transition:border-color 200ms ease,box-shadow 200ms ease} .stay-compare-btn:hover {border-color:var(--sun);box-shadow:0 6px 18px rgba(0,0,0,0.12)} .stay-compare-btn-wordmark svg {display:block;height:20px;width:auto} .stay-compare-btn-mark {flex:0 0 auto;width:28px;height:28px;border-radius:7px;background-size:cover;background-position:center} .stay-grid {margin:0 0 1rem} .stay-card {position:relative;display:grid;grid-template-rows:180px minmax(0,1fr)} .stay-card-media {position:relative;min-width:0;overflow:hidden;background-size:cover;background-position:center} .stay-card-image {display:block;width:100%;height:100%;object-fit:cover} .stay-card-body {display:flex;flex-direction:column;min-width:0;padding:0.85rem 0.95rem 0.9rem} .stay-card h3 {margin:0.2rem 0 0.5rem;font-size:1.02rem;line-height:1.25} .stay-card-type {margin:0;color:#5b6773;font-size:0.75rem;font-weight:800;text-transform:uppercase;letter-spacing:0.05em} .stay-card-stars {color:#ef7d22;letter-spacing:0.02em} .stay-card-meta {display:flex;flex-wrap:wrap;align-items:center;gap:0.35rem;margin:0 0 0.5rem} .stay-card-meta>span {display:inline-flex;align-items:center;gap:0.3rem;padding:0.2rem 0.5rem;border-radius:999px;background:var(--cream);color:#4d6168;font-size:0.68rem} .stay-card-rating {gap:0.35rem} .stay-rating-score {display:inline-grid;place-items:center;min-width:30px;min-height:20px;padding:0 0.3rem;border-radius:5px;background:#087f4b;color:white;font-size:0.66rem;font-weight:800} .stay-card-address {margin:0 0 0.5rem;color:var(--muted);font-size:0.72rem} .stay-card-bookmark {position:absolute;top:0.55rem;right:0.6rem;z-index:2;display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:rgba(250,246,236,0.92);color:#2d607e;font-size:1rem;line-height:1} .stay-card-footer {display:flex;align-items:end;justify-content:space-between;gap:0.6rem;margin-top:auto;padding-top:0.6rem;border-top:1px solid var(--line)} .stay-card-price-group {min-width:0} .stay-deal-supplier,.stay-deal-meta {margin:0;font-size:0.68rem;color:var(--muted)} .stay-card-price {display:flex;align-items:baseline;gap:0.25rem;margin:0.1rem 0} .stay-card-price strong {font-size:1.15rem;line-height:1} .stay-card-price span {color:var(--muted);font-size:0.68rem} .stay-card-provider {margin:0;color:var(--muted);font-size:0.7rem} .stay-card-cta {flex:0 0 auto;padding:0.42rem 0.7rem;border-radius:8px;font-size:0.72rem;text-align:center;white-space:nowrap} .stay-alt-deals {margin:0 0 0.55rem} .stay-alt-deals summary {color:#2d607e;font-size:0.7rem;font-weight:750;cursor:pointer} .stay-alt-deal {display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:0.45rem;min-height:32px;padding:0.3rem 0;border-top:1px solid #f0f0f0;color:var(--ink);text-decoration:none;font-size:0.72rem} .stay-alt-deal:hover {color:#2d607e} .stay-alt-supplier {overflow:hidden;text-overflow:ellipsis;white-space:nowrap} .stay-chip {display:inline-flex;align-items:center;min-height:36px;padding:0 0.95rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:0.85rem;font-weight:700;text-decoration:none;white-space:nowrap} a.stay-chip:hover {border-color:var(--ink);background:var(--cream)} .stay-chip.is-active {border-color:var(--ink);background:var(--ink);color:var(--paper)} .stay-pagination {display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin:1.4rem 0 0.4rem} .stay-pages {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;grid-column:2;gap:0.4rem;margin:0;padding:0;list-style:none} .stay-page {display:inline-grid;place-items:center;min-width:40px;min-height:40px;padding:0 0.4rem;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:700;font-variant-numeric:tabular-nums} a.stay-page:hover {background:var(--cream)} .stay-page-direction {display:inline-flex;align-items:center;gap:0.35rem;padding:0 0.85rem;white-space:nowrap} .stay-page-direction svg {display:block} .stay-page-direction.is-disabled {color:var(--muted);cursor:not-allowed;opacity:0.45;user-select:none} .stay-top-link {display:inline-grid;place-items:center;grid-column:3;justify-self:end;width:44px;height:44px;border-radius:8px;background:var(--cream);color:var(--ink);text-decoration:none} .stay-top-link:hover {background:var(--line)} @media (max-width:600px) {.stay-pagination {grid-template-columns:1fr auto} .stay-pages {grid-column:1;justify-content:flex-start} .stay-top-link {grid-column:2}} @media (max-width:900px) {.live-activity-grid,.stay-grid {grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:600px) {.utility-place-search form {align-items:stretch;flex-direction:column} .live-activity-grid,.stay-grid {grid-template-columns:1fr} .activity-filter-rail .hotel-filter-form {grid-template-columns:1fr} .activity-filter-rail .hotel-filter-section + .hotel-filter-section {border-top:1px solid var(--line);border-left:0} .activity-filter-rail .hotel-filter-apply {justify-self:stretch;width:100%}} .activity-hero {margin:1rem 0 0} .activity-hero img {width:100%;aspect-ratio:21 / 9;max-height:420px;object-fit:cover;border-radius:var(--radius);display:block} .activity-hero figcaption {text-align:right;font-size:0.78rem;color:var(--muted);margin-top:0.35rem} .activity-hero figcaption a {color:var(--muted)} .dir-columns {columns:3 220px;column-gap:2rem;font-size:0.95rem} .dir-columns a {display:block;color:var(--muted);text-decoration:none;padding:0.35rem 0} .dir-columns a:hover {color:var(--ink);text-decoration:underline} .dir-columns .search-result-link {display:flex;align-items:baseline;justify-content:space-between;gap:1rem} .search-result-kind {color:var(--muted);font-size:0.75rem;font-weight:700;text-transform:uppercase} .pill {display:inline-block;background:var(--cream);border:1px solid var(--line);border-radius:999px;padding:0.55rem 1.2rem;text-decoration:none;font-weight:600;font-size:0.9rem;color:var(--ink)} .pill:hover {background:var(--sun);border-color:var(--sun)} .attribution-list {list-style:none;padding:0;margin:1rem 0} .attribution-list li {border-bottom:1px solid var(--line);padding:0.9rem 0} .attribution-list li p {margin:0.2rem 0} .dest-index-list {list-style:none;padding:0;margin:0.4rem 0 1.6rem;color:var(--muted);font-size:0.95rem} .dest-index-list li {border-bottom:1px solid var(--line);padding:0.5rem 0} .dest-index-list a {color:var(--ink);font-weight:600;text-decoration:none} .dest-index-list a:hover {text-decoration:underline} .cruise-fact-chips {list-style:none;padding:0;margin:0.5rem 0 1.6rem;display:flex;flex-wrap:wrap;gap:0.45rem} .cruise-fact-chips li {padding:0.3rem 0.7rem;border-radius:999px;background:var(--cream);border:1px solid var(--line);color:var(--ink);font-size:0.9rem;font-weight:600} .cruise-search-form .cruise-bar-port {flex:1.6 1 0} .cruise-search-form .cruise-bar-month {flex:1.1 1 0} .cruise-search-form .cruise-bar-nights {flex:1 1 0} .cruise-search-form .stay-bar-segment + .stay-bar-segment {border-left:1px solid var(--line)} @media (max-width:719px) {.cruise-search-form .stay-bar-segment + .stay-bar-segment {border-left:0;border-top:1px solid var(--line)} .cruise-search-form .cruise-bar-port,.cruise-search-form .cruise-bar-month,.cruise-search-form .cruise-bar-nights {flex:0 0 auto}} .stay-bar-field {display:flex;flex-direction:column;gap:0.05rem;min-width:0;flex:1 1 auto} .stay-bar-field-label {color:var(--muted);font-size:0.62rem;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;cursor:pointer} .stay-bar-field .stay-bar-trigger {width:100%;text-align:left} .cruise-search-form select {width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-weight:700;cursor:pointer;appearance:none;-webkit-appearance:none;padding:0 1.2rem 0 0;margin:0;text-overflow:ellipsis} .cruise-search-form .stay-bar-segment {position:relative} .cruise-search-form .stay-bar-segment::after {content:"";position:absolute;right:0.9rem;top:50%;width:7px;height:7px;margin-top:-5px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);pointer-events:none} .live-activity-cta {margin-top:auto;padding-top:0.6rem} .cruise-sailing-grid .live-activity-card {grid-template-rows:minmax(0,1fr)} .closest-group {margin:1.2rem 0 2rem} .closest-group h3 {font-size:1.05rem;margin:0} .closest-see-all {display:inline-block;color:var(--ink);font-weight:700;padding:0.35rem 0} .section-subtitle {color:var(--muted);margin:-0.3rem 0 1rem} .section-head {display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap} .section-head-link {display:inline-flex;align-items:center;gap:0.35rem;color:var(--muted);font-weight:700;font-size:0.9rem;text-decoration:none;white-space:nowrap} .section-head-link .icon-arrow {color:var(--sun-ink)} .section-head-link:hover {color:var(--ink)} .full-bleed-band {width:100vw;margin-left:calc(50% - 50vw);margin-top:1.6rem;padding:2.4rem clamp(1rem,4vw,2.5rem)} .full-bleed-band .band-inner {max-width:var(--maxw);margin:0 auto} .band-ink {background:var(--ink);color:var(--paper)} .band-ink h2 {color:var(--paper)} .listing-card {display:flex;flex-direction:column;border-radius:var(--radius);overflow:hidden;background:var(--paper);color:var(--ink);text-decoration:none;border:1px solid var(--line)} .listing-card-media {background:var(--ink)} .listing-card-media img,.listing-card-media .photo-card-placeholder {width:100%;height:170px;object-fit:cover;display:block} .listing-card-body {position:relative;padding:1rem 1.1rem 1.3rem;flex:1} .listing-card-body h3 {font-size:1.05rem;margin:0 0 0.2rem} .listing-card-subtitle,.listing-card-location {margin:0;color:var(--muted);font-size:0.85rem} .listing-card-meta {display:flex;align-items:center;gap:0.4rem;margin:0.4rem 0 0;font-size:0.82rem;color:var(--muted)} .listing-card-meta .meta-item {display:inline-flex;align-items:center;gap:0.3rem} .listing-card-meta .meta-sep {opacity:0.6} .card-rating[hidden] {display:none !important} .listing-card-footer {display:flex;align-items:center;justify-content:space-between;margin-top:0.7rem} .listing-card-price {font-weight:800} .listing-card-arrow {position:absolute;right:1rem;bottom:1rem;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:var(--sun);color:var(--ink)} .experience-listing-card .listing-card-arrow,.experience-listing-card .listing-card-footer {position:static} .experience-listing-card .listing-card-footer .listing-card-arrow {position:static;margin:0} .listing-card:hover .listing-card-arrow {filter:brightness(0.95)} .chip-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:0.8rem;margin-top:0.4rem} @media (max-width:720px) {.chip-grid {grid-template-columns:1fr}} .chip {display:flex;align-items:center;justify-content:space-between;gap:0.6rem;padding:0.9rem 1.1rem;border-radius:var(--radius);border:1px solid rgba(255,255,255,0.25);background:rgba(255,255,255,0.06);color:var(--paper);text-decoration:none;font-weight:600} .chip:hover {background:rgba(255,255,255,0.14);border-color:rgba(255,255,255,0.4)} .chip .icon-arrow {flex:0 0 auto;color:var(--sun)} .explore-all-link {display:inline-block;margin-top:1rem;color:var(--ink);background:var(--sun);font-weight:700;text-decoration:none;padding:0.6rem 1.1rem;border-radius:999px} .explore-all-link:hover {filter:brightness(0.95)} .trust-points {align-items:center} .trust-points li {display:inline-flex;align-items:center;gap:0.4rem} .trust-points .icon {color:var(--ink);flex:0 0 auto} .partner-row {list-style:none;display:flex;flex-wrap:wrap;gap:0.8rem;margin:1rem 0 0;padding:0} .partner-chip {display:inline-flex;align-items:center;gap:0.55rem;border:1px solid var(--line);border-radius:999px;background:var(--paper);padding:0.45rem 1rem;font-weight:700} .partner-chip-mark {flex:0 0 auto;width:26px;height:26px;border-radius:8px;background-color:var(--paper);background-size:22px 22px;background-position:center;background-repeat:no-repeat} .partner-chip-wordmark svg {display:block;height:16px;width:auto} .partner-chip-wordmark--raster {display:block;height:11px;aspect-ratio:470 / 61;background-size:contain;background-position:center;background-repeat:no-repeat} .partner-chip-wordmark[aria-label="DiscoverCars"] {display:block;width:89px;height:20px;overflow:hidden} .partner-chip-wordmark[aria-label="DiscoverCars"] svg {width:160px;height:36px;transform:scale(0.556);transform-origin:top left} .partners-page {padding-bottom:1rem} .partners-hero {position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,0.8fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;margin-top:0.6rem;padding:clamp(2rem,5vw,4rem);border-radius:24px;background:linear-gradient(135deg,#111 0%,#1d1d1b 62%,#29271f 100%)} .partners-hero::after {content:"";position:absolute;z-index:-1;pointer-events:none;width:260px;height:260px;right:-110px;top:-120px;border-radius:50%;background:var(--sun);opacity:0.13} .partners-eyebrow {margin:0 0 0.55rem;color:var(--sun-ink);font-size:0.72rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase} .partners-hero .partners-eyebrow {color:var(--sun)} .partners-hero h1 {max-width:640px;font-size:clamp(2.2rem,5vw,4rem)} .partners-hero-copy>p:last-child {max-width:610px;margin:1rem 0 0;color:rgba(255,255,255,0.78);font-size:clamp(1rem,2vw,1.12rem)} .partners-hero-points {list-style:none;display:grid;gap:0.7rem;margin:0;padding:0} .partners-hero-points li {display:grid;grid-template-columns:auto minmax(0,1fr);gap:0.75rem;align-items:center;padding:0.85rem 0.95rem;border:1px solid rgba(255,255,255,0.14);border-radius:13px;background:rgba(255,255,255,0.07);backdrop-filter:blur(3px)} .partner-promise-icon {display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--sun);color:var(--ink)} .partner-promise-icon .icon {width:18px;height:18px} .partners-hero-points strong,.partners-hero-points span:not(.partner-promise-icon) {display:block} .partners-hero-points strong {font-size:0.92rem} .partners-hero-points div span {margin-top:0.12rem;color:rgba(255,255,255,0.68);font-size:0.78rem;line-height:1.4} .partners-section {padding:clamp(2.7rem,6vw,4.5rem) 0 0.6rem} .partners-section-head {display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,0.8fr);gap:1.5rem 3rem;align-items:end;margin-bottom:1.35rem} .partners-section-head h2 {margin:0;font-size:clamp(1.7rem,3vw,2.35rem)} .partners-section-head>p {max-width:480px;margin:0;color:var(--muted);line-height:1.65} .partners-section-head a {font-weight:700;text-underline-offset:0.15em} .partners-section--essentials {margin-top:clamp(2.5rem,5vw,4rem);padding:clamp(1.5rem,4vw,2.5rem);border:1px solid var(--line);border-radius:24px;background:var(--cream)} .partner-list {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem} .partner-entry {min-width:0;min-height:230px;display:flex;flex-direction:column;padding:1.25rem;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 8px 24px rgba(17,17,17,0.045);transition:border-color 180ms ease,box-shadow 180ms ease} .partner-entry:hover {border-color:#d5ccb9;box-shadow:0 12px 30px rgba(17,17,17,0.075)} .partner-entry-brand {min-height:58px;display:flex;gap:0.8rem;align-items:center;margin-bottom:0.75rem} .partner-entry .partner-logo {flex:0 0 auto;width:54px;height:54px;border-radius:13px;border:1px solid var(--line);background-color:var(--paper);background-size:42px 42px;background-position:center;background-repeat:no-repeat} .partner-entry h3 {margin:0;font-size:1.15rem} .partner-entry-kind {width:fit-content;margin:0 0 0.75rem;padding:0.3rem 0.6rem;border-radius:999px;background:var(--cream);color:var(--muted);font-size:0.72rem;font-weight:800;letter-spacing:0.02em} .partners-section--essentials .partner-entry-kind {background:#f4efe4} .partner-entry-copy {margin:0;color:var(--muted);font-size:0.9rem;line-height:1.65} .partner-entry-copy a {color:var(--ink);font-weight:700;text-decoration-thickness:1px;text-underline-offset:0.15em} .partner-wordmark {display:flex;min-width:0;max-width:190px;height:46px;align-items:center} .partner-wordmark svg {display:block;width:auto;height:36px;max-width:100%} .partner-wordmark--raster {display:block;width:190px;max-width:100%;height:46px;background-size:contain;background-position:left center;background-repeat:no-repeat} .partner-entry[data-partner-name="DiscoverCars"] .partner-wordmark {width:160px;max-width:100%} .partner-entry[data-partner-name="DiscoverCars"] .partner-wordmark svg {width:100%;height:auto;aspect-ratio:160 / 36} .partners-payment {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;margin:clamp(2.5rem,6vw,4.5rem) 0 1.2rem;padding:clamp(1.5rem,4vw,2.6rem);border-radius:20px;border:1px solid #e5d38d;background:#fff8dc} .partners-payment h2 {margin:0} .partners-payment p:last-child {max-width:700px;margin:0.65rem 0 0;color:#474137} .partners-payment-link {display:inline-flex;align-items:center;gap:0.45rem;white-space:nowrap;padding:0.75rem 1.05rem;border-radius:999px;background:var(--ink);color:var(--paper);font-weight:800;text-decoration:none} .partners-payment-link:hover {background:#2b2b2b} @media (max-width:820px) {.partners-hero,.partners-section-head {grid-template-columns:1fr} .partners-hero {gap:1.5rem} .partners-hero-points {grid-template-columns:repeat(3,minmax(0,1fr))} .partners-hero-points li {grid-template-columns:1fr;align-content:start} .partner-list {grid-template-columns:repeat(2,minmax(0,1fr))}} @media (max-width:580px) {.partners-hero {padding:1.5rem;border-radius:18px} .partners-hero-points {grid-template-columns:1fr} .partners-hero-points li {grid-template-columns:auto minmax(0,1fr)} .partner-list {grid-template-columns:1fr} .partners-section--essentials {margin-inline:-0.35rem;padding:1.1rem;border-radius:18px} .partners-payment {grid-template-columns:1fr;gap:1.2rem} .partners-payment-link {width:fit-content}} .footer-grid {display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(110px,1fr));gap:2.5rem clamp(1.5rem,3vw,3rem);max-width:var(--maxw);margin:0 auto} .footer-col {min-width:0} .footer-grid nav.footer-col {display:flex;flex-direction:column;align-items:flex-start;margin:0} .footer-col h2 {font-family:inherit;font-weight:800;color:var(--navy-ink);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.09em;margin:0 0 0.75rem} .footer-grid nav a {display:block;width:fit-content;margin:0;padding:0.32rem 0;line-height:1.45} .footer-cookie-settings {display:block;width:fit-content;margin:0;padding:0.32rem 0;background:none;border:none;cursor:pointer;text-align:left;font:inherit;font-size:0.9rem;line-height:1.45;color:#d6d6d6;text-decoration:none} .footer-cookie-settings:hover {color:var(--sun)} .footer-copyright {margin-top:1.2rem !important;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,0.12);font-size:0.8rem !important} .footer-trademarks {margin-top:0.4rem !important;font-size:0.72rem !important;opacity:0.75} .footer-powered-by {max-width:var(--maxw);margin:2.2rem auto 0;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,0.12);text-align:center} .footer-powered-by a {display:inline-flex;align-items:center;font-size:0.8rem;color:#b8b8b8} @media (max-width:860px) {.footer-grid {grid-template-columns:repeat(3,minmax(0,1fr))} .footer-brand-col {grid-column:1 / -1}} @media (max-width:560px) {.site-footer {padding-block:2.4rem 2.8rem} .footer-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem} .footer-brand-col {grid-column:1 / -1}} .icon {flex:0 0 auto} .region-panel-group {background:var(--cream);padding:1.6rem 0 2.4rem} .near-you-band {padding-top:1.4rem} .near-you-viewall {display:inline-block;margin-top:0.9rem;font-weight:700;font-size:0.92rem;text-underline-offset:3px} .section-eyebrow {margin:0 0 1rem;color:var(--muted);font-size:0.74rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase} .region-panel {display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:0;margin:0 0 1.4rem;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,0.07)} .region-panel--reverse {direction:rtl} .region-panel--reverse>* {direction:ltr} .region-panel-media {position:relative;min-height:240px} .region-panel-media img,.region-panel-placeholder {width:100%;height:100%;object-fit:cover;display:block} .region-panel-placeholder {background:linear-gradient(160deg,#2a2a2a,#4b4b4b)} .region-panel-badge {position:absolute;top:1rem;left:1rem;display:inline-flex;align-items:center;gap:0.35rem;padding:0.4rem 0.75rem;border-radius:999px;background:var(--paper);color:var(--ink);font-size:0.8rem;font-weight:700;box-shadow:0 4px 14px rgba(0,0,0,0.18)} .region-panel-credit {position:absolute;top:1rem;right:1rem;max-width:56%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0.28rem 0.55rem;border-radius:999px;background:rgba(255,255,255,0.92);color:var(--muted);font-size:0.68rem;box-shadow:0 3px 10px rgba(0,0,0,0.14)} .region-panel-credit a {color:inherit} .region-panel-overlay {position:absolute;bottom:1rem;left:1rem;right:1rem;color:var(--paper);font-weight:700;font-size:0.92rem;text-align:right;text-decoration:underline;text-underline-offset:3px;text-shadow:0 1px 8px rgba(0,0,0,0.5)} .region-panel--reverse .region-panel-badge {left:auto;right:1rem} .region-panel--reverse .region-panel-credit {right:auto;left:1rem} .region-panel-body {padding:1.6rem 1.7rem} .region-panel-body h2 {margin:0 0 0.2rem;font-size:1.5rem} .region-panel-subtitle {margin:0 0 0.9rem;color:var(--muted);font-size:0.9rem} .region-panel-row {display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.75rem 0;border-top:1px solid var(--line);color:inherit;text-decoration:none} .region-panel-rows>.region-panel-row:first-child {border-top:0} .region-panel-row:hover {color:var(--ink)} .region-panel-row:hover strong {text-decoration:underline} .region-panel-rowtext {display:flex;flex-direction:column;gap:0.25rem;min-width:0} .region-panel-rowtext strong {font-size:1.02rem} .region-panel-metaline {display:flex;align-items:center;gap:0.6rem;flex-wrap:wrap} .region-panel-meta {color:var(--muted);font-size:0.85rem} .region-panel-chip {border-radius:999px;background:var(--cream);border:1px solid var(--line);padding:0.16rem 0.55rem;color:var(--muted);font-size:0.72rem;font-weight:700} .region-panel-chevron {flex:0 0 auto;color:var(--muted)} .region-panel-viewall {display:inline-block;margin-top:1rem;font-weight:700;font-size:0.92rem;text-underline-offset:3px} @media (max-width:820px) {.region-panel,.region-panel--reverse {grid-template-columns:minmax(0,1fr);direction:ltr} .region-panel-media {height:200px;min-height:0} .region-panel-body {padding:1.2rem 1.1rem 1.4rem}} .guide-filter-band {padding-top:1.35rem} .guide-filter-form {display:flex;align-items:center;gap:0.75rem;padding:0.5rem 0.55rem 0.5rem 1rem;border:1px solid #d8d8d8;border-radius:999px;background:var(--paper);box-shadow:0 10px 30px rgba(0,0,0,0.08)} .guide-filter-form:focus-within {border-color:var(--ink);box-shadow:0 10px 30px rgba(0,0,0,0.08),0 0 0 2px var(--sun)} .guide-filter-icon {flex:0 0 auto;color:var(--muted)} .guide-filter-form input {flex:1 1 auto;min-width:0;min-height:46px;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-weight:600;appearance:none;-webkit-appearance:none} .guide-filter-form input::placeholder {color:var(--muted);font-weight:500} .guide-filter-form input::-webkit-search-cancel-button {-webkit-appearance:none} .guide-filter-form .btn {flex:0 0 auto;min-height:48px;padding-inline:1.55rem} .guide-filter-summary {margin:0.85rem 0 0;color:var(--muted);font-size:0.9rem} .guide-filter-summary a {color:var(--ink);font-weight:700} .guide-filter-empty {margin-top:1.5rem;padding:1.35rem 1.5rem 1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--cream)} .guide-filter-empty h2 {margin-bottom:0.35rem} .guide-filter-empty p {margin:0;color:var(--muted)} .guide-country-panels .region-panel-media::after {content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(0,0,0,0.62));pointer-events:none} .guide-country-panels:is(.region-panel-badge,.region-panel-overlay) {z-index:1} @media (max-width:600px) {.guide-filter-form {flex-wrap:wrap;border-radius:20px;padding:0.55rem} .guide-filter-icon {margin-left:0.35rem} .guide-filter-form .btn {flex-basis:100%;width:100%}} @font-face {font-family:"GDSF Script";src:url(/lib/gdsf-script-45e5149f.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap} .stamp-badge {display:inline-block;line-height:0;color:var(--ink)} .stamp-badge svg {width:100%;height:auto} .stamp-badge--img {opacity:1} .stamp-badge--img img {width:100%;height:auto;display:block;background:none} .stamp-badge text {font-family:"Inter","Helvetica Neue",Arial,sans-serif;font-size:9.5px;font-weight:800;letter-spacing:0.12em;fill:currentColor} .stamp-badge-code {font-family:var(--serif) !important;font-size:30px !important;font-weight:700;letter-spacing:0.02em !important} .stamp-badge--club {position:absolute;top:1.2rem;left:2.2rem;width:92px;color:var(--stamp-red);opacity:0.42;transform:rotate(-12deg)} .stamp-badge--awaits {position:absolute;top:1rem;right:1rem;width:104px;color:rgba(255,255,255,0.9);transform:rotate(9deg);filter:drop-shadow(0 2px 6px rgba(0,0,0,0.35));z-index:1} .stamp-badge--awaits.stamp-badge--img img {filter:brightness(0) invert(1);opacity:0.92} .stamp-badge--spotlight {width:96px;flex:none;color:var(--stamp-red);opacity:0.5;transform:rotate(-8deg)} .spotlight-cta-row {display:flex;align-items:center;gap:1.4rem} .stamp-badge--map {position:absolute;top:24%;right:-1.6rem;width:96px;color:var(--navy);opacity:0.5;transform:rotate(11deg)} .taped-note {position:relative;background:#fdf6df;border:1px solid rgba(34,27,16,0.09);box-shadow:0 10px 22px rgba(34,27,16,0.16);padding:0.85rem 1rem 0.9rem;font-family:var(--script);font-size:1.1rem;line-height:1.25;color:#4d4130;transform:rotate(2deg)} .taped-note::before,.taped-note::after {content:"";position:absolute;top:-9px;width:52px;height:17px;background:var(--tape);box-shadow:0 1px 2px rgba(34,27,16,0.12)} .taped-note::before {left:12%;transform:rotate(-5deg)} .taped-note::after {right:12%;transform:rotate(4deg)} .taped-note strong {display:block;font-family:inherit;margin-bottom:0.1rem} .taped-note a {color:inherit;font-family:inherit;font-weight:600} .taped-note a .icon-arrow {width:12px;height:12px} .scrap-section-head {justify-content:flex-start;align-items:baseline;gap:1.1rem;margin-bottom:0.9rem} .scrap-section-head h2 {font-size:1.45rem} .country-explore .scrap-section-head {flex-direction:column;align-items:flex-start;gap:0.05rem;margin-bottom:1.1rem} .country-explore .scrap-head-sub {font-size:0.8rem} .scrap-head-doodle {display:inline-flex;vertical-align:-0.15em;margin-right:0.5rem} .scrap-head-doodle .doodle,.scrap-head-doodle .doodle-plane {width:20px;height:20px} .scrap-head-doodle .head-glyph {width:18px;height:18px;display:block} .scrap-head-sub {margin:0;color:var(--muted);font-size:0.92rem} .cta-pill {display:inline-flex;align-items:center;gap:0.45rem;background:var(--sun);color:var(--ink);font-weight:750;font-size:0.95rem;text-decoration:none;padding:0.68rem 1.25rem;border-radius:10px;box-shadow:0 2px 0 rgba(34,27,16,0.28);transition:background-color 160ms ease,transform 160ms ease} .cta-pill:hover {background:var(--sun-deep)} .cta-pill:active {transform:translateY(1px);box-shadow:0 1px 0 rgba(34,27,16,0.28)} .dashed-path {display:block;color:var(--muted);opacity:0.75;pointer-events:none} .dashed-path svg {width:100%;height:auto} .stamp-label {display:inline-block;margin:0 0 0.6rem;color:var(--stamp-red);font-size:0.78rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;transform:rotate(-2deg)} .soon-tag {display:inline-block;width:fit-content;margin-top:0.2rem;padding:0.1rem 0.45rem;border-radius:999px;background:var(--cream);border:1px solid var(--line);color:var(--muted);font-size:0.6rem;font-weight:750;letter-spacing:0.08em;text-transform:uppercase} .hero-panel-band {width:100vw;margin-left:calc(50% - 50vw);padding:0;background:repeating-linear-gradient(0deg,rgba(34,27,16,0.02) 0 1px,transparent 1px 3px),radial-gradient(ellipse 130% 100% at 50% 0%,transparent 55%,rgba(34,27,16,0.06)),#f0e7d5} .hero-panel {position:relative;display:grid;grid-template-columns:0.9fr 1.15fr;gap:0;max-width:var(--maxw);margin:0 auto;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0 1rem 4.4rem;overflow:visible} .hero-panel-copy {position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:4.6rem 2.2rem 0 0} .hero-panel h1 {max-width:16ch;margin-bottom:0.7rem;font-size:clamp(2.3rem,4.6vw,3.6rem)} .hero-panel-sub {color:var(--muted);max-width:30ch;margin:0 0 1.5rem;font-size:1.02rem} .hero-cta {margin-bottom:1.7rem} .hero-social {display:flex;align-items:center;gap:0.7rem;margin-top:auto} .hero-avatars {display:flex} .hero-avatars img,.hero-avatar-placeholder {width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--paper);box-shadow:0 1px 3px rgba(34,27,16,0.25);display:block} .hero-avatars>* + * {margin-left:-9px} .hero-avatar-placeholder {background:linear-gradient(160deg,#cfc4a9,#a99c7f)} .hero-social-note {font-size:0.82rem;color:var(--muted);font-weight:600} .hero-panel-media {position:relative} .hero-panel-media:has(.hero-photo--clip)::before {content:"";position:absolute;inset:0 0 0 -10px;z-index:0;background:#faf6ea;clip-path:polygon(1.6% 0%,0.2% 3.5%,2.4% 8%,0.9% 11%,3.2% 16%,0.2% 22%,2% 26%,0.6% 30%,3.4% 36%,1.2% 40%,2.8% 44%,0.2% 50%,2.2% 55%,0.8% 59%,3.6% 65%,0.4% 70%,1.6% 74%,0.9% 78%,3% 84%,0.2% 89%,2.2% 93%,1% 97%,1.8% 100%,100% 100%,100% 0%)} .hero-photo {position:relative;z-index:1;display:block;height:100%;min-height:440px;border-radius:0;overflow:hidden} .hero-photo--clip {clip-path:polygon(3% 0%,1.4% 3.5%,4% 8%,2.2% 11%,4.8% 16%,1.2% 22%,3.4% 26%,1.8% 30%,5% 36%,2.6% 40%,4.2% 44%,1.4% 50%,3.8% 55%,2% 59%,5.2% 65%,1.6% 70%,3% 74%,2.2% 78%,4.6% 84%,1.2% 89%,3.6% 93%,2.4% 97%,3.2% 100%,100% 100%,100% 0%)} .hero-rip {position:absolute;top:-1.5px;bottom:-10px;left:-40px;width:168px;height:calc(100% + 3px);z-index:2;object-fit:fill;pointer-events:none;transform:rotate(-2deg);-webkit-mask-image:linear-gradient(to right,transparent 0,#000 20%,#000 100%);mask-image:linear-gradient(to right,transparent 0,#000 20%,#000 100%)} .hero-photo::after {content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(233,168,58,0.1),transparent 40%),linear-gradient(0deg,rgba(34,27,16,0.12),transparent 45%)} .hero-photo img,.hero-photo-placeholder {display:block;width:100%;height:100%;min-height:440px;object-fit:cover} .hero-photo-placeholder {background:linear-gradient(160deg,#8fa48b,#45604f 55%,#2c4238)} .hero-note {position:absolute;right:1.2rem;bottom:2.1rem;width:min(220px,58%);z-index:1} .hero-flight-path {position:absolute;left:-14rem;bottom:1.6rem;width:230px;color:var(--muted)} .hero-flight-path img {display:block;width:100%;height:auto;opacity:0.75} .vert-band {position:relative;z-index:2;margin-top:-3.4rem;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:1rem;box-shadow:0 14px 40px rgba(34,27,16,0.12)} .vert-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.9rem} .vert-card {display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:var(--paper);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform 180ms ease,box-shadow 180ms ease} .vert-card:hover {transform:translateY(-3px);box-shadow:0 12px 28px rgba(34,27,16,0.14)} .vert-card-media {position:relative;display:block} .vert-card-media img,.vert-card-placeholder {display:block;width:100%;height:172px;object-fit:cover;background:linear-gradient(160deg,#b4a888,#6d6046)} .vert-card-icon {position:absolute;left:0.7rem;bottom:0.6rem;color:#ffffff;line-height:0;filter:drop-shadow(0 1px 4px rgba(0,0,0,0.55))} .vert-card-icon img {width:44px;height:44px;display:block;background:none;filter:brightness(0) invert(1)} .vert-card-body {position:relative;display:flex;flex-direction:column;gap:0.1rem;padding:0.75rem 2.4rem 0.85rem 0.85rem;flex:1} .vert-card-name {font-weight:800;font-size:1rem} .vert-card-tagline {color:var(--muted);font-size:0.79rem;line-height:1.35} .vert-card-arrow {position:absolute;right:0.75rem;bottom:0.85rem;color:var(--sun-ink)} .vert-card--soon .vert-card-media img,.vert-card--soon .vert-card-placeholder {filter:saturate(0.35) brightness(1.05)} .vert-card--soon {background:var(--cream)} .mini-band {padding-top:1.7rem} .mini-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.9rem} .mini-card {display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;color:var(--ink);text-decoration:none;transition:transform 180ms ease,box-shadow 180ms ease} .mini-card:hover {transform:translateY(-2px);box-shadow:0 10px 22px rgba(34,27,16,0.12)} .mini-card-media {display:block;width:100%} .mini-card-media img,.mini-card-placeholder {display:block;width:100%;height:78px;object-fit:cover;background:linear-gradient(160deg,#b4a888,#6d6046)} .mini-card-body {display:flex;align-items:center;gap:0.55rem;padding:0.55rem 0.7rem 0.65rem;width:100%} .mini-card-icon {flex:none;line-height:0;color:var(--ink)} .mini-card-icon img {width:22px;height:22px;display:block} .mini-card-text {display:flex;flex-direction:column;gap:0.05rem;min-width:0;flex:1} .mini-card-name {font-weight:750;font-size:0.88rem} .mini-card-tagline {color:var(--muted);font-size:0.72rem;line-height:1.3} .mini-card-arrow {flex:none;color:var(--sun-ink);line-height:0} .mini-card--soon {background:var(--cream)} .mini-card--soon .mini-card-media img,.mini-card--soon .mini-card-placeholder {filter:saturate(0.35) brightness(1.05)} .spotlight {position:relative;display:grid;grid-template-columns:0.85fr 1.35fr;gap:0;margin-top:2.2rem;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 14px 40px rgba(34,27,16,0.08);padding:0} .spotlight-panel {display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(1.5rem,3vw,2.2rem) clamp(1.2rem,2.4vw,1.8rem) clamp(1.5rem,3vw,2.2rem) clamp(1.4rem,2.8vw,2.2rem)} .spotlight-panel h2 {font-size:clamp(1.4rem,2.4vw,1.9rem);max-width:15ch} .spotlight-eyebrow {display:flex;align-items:center;gap:0.35rem;margin:0 0 0.5rem;color:var(--muted);font-size:0.73rem;font-weight:800;letter-spacing:0.09em;text-transform:uppercase} .spotlight-body {color:var(--muted);max-width:34ch;margin:0 0 1.2rem;font-size:0.92rem} .spotlight-media {position:relative;display:grid;grid-template-columns:1.6fr 1fr;gap:0.8rem;align-items:stretch;padding:0.9rem 0.9rem 0.9rem 0;min-height:400px} .spotlight-media--single {grid-template-columns:1fr;grid-template-rows:1fr auto} .spotlight {margin-bottom:2.6rem} .spotlight-photo {display:block;position:relative;min-height:100%} .spotlight-photo>img:not(.spot-rip),.spotlight-photo-placeholder {border-radius:0 14px 14px 0} .spot-rip {position:absolute;top:-2px;bottom:-2px;left:-2.6rem;width:150px;height:calc(100% + 4px);z-index:1;object-fit:fill;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 26%,#000 100%);mask-image:linear-gradient(to right,transparent 0,#000 26%,#000 100%)} .spotlight-photo img:not(.spot-rip),.spotlight-photo-placeholder {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:linear-gradient(160deg,#8fa48b,#45604f 55%,#2c4238)} .spotlight-tiles {display:grid;grid-template-rows:1fr 1fr;gap:0.8rem} .spot-tile {position:relative;display:block;border-radius:12px;overflow:hidden;color:#ffffff;text-decoration:none;min-height:150px} .spot-tile img,.spot-tile-placeholder {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:linear-gradient(160deg,#b4a888,#6d6046);transition:transform 220ms ease} .spot-tile:hover img {transform:scale(1.04)} .spot-tile-caption {position:absolute;inset:auto 0 0 0;padding:1.1rem 0.6rem 0.45rem;background:linear-gradient(transparent,rgba(0,0,0,0.78));font-size:0.78rem;font-weight:700} .spotlight-note {position:absolute;right:-1.1rem;bottom:-3rem;z-index:2;width:min(225px,64%);transform:rotate(-3deg)} .spot-offer {grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:0.8rem;border:1px solid var(--line);border-radius:12px;background:var(--cream);padding:0.7rem 0.9rem;color:inherit;text-decoration:none} .spot-offer:hover {border-color:var(--sun-ink)} .spot-offer-text strong {display:block;font-size:0.9rem} .spot-offer-text span {color:var(--muted);font-size:0.79rem} .spot-offer .icon-arrow {color:var(--sun-ink);flex:none} .spotlight-play {position:absolute;left:1.1rem;bottom:1.1rem;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,0.2);border:1.5px solid rgba(255,255,255,0.8);color:#ffffff;display:grid;place-items:center;cursor:pointer;transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease} .spotlight-play:hover {background:var(--sun);color:var(--ink);border-color:var(--sun)} .spotlight-video {position:relative;border:0;padding:0;background:transparent;max-width:min(960px,92vw)} .spotlight-video::backdrop {background:rgba(0,0,0,0.82)} .spotlight-video video {width:100%;display:block;border-radius:12px} .spotlight-video-close {position:absolute;top:-2.4rem;right:0;background:none;border:0;color:#ffffff;font-size:1.9rem;line-height:1;cursor:pointer} .mood-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0.8rem} .mood-card {position:relative;display:block;border-radius:12px;overflow:hidden;color:#ffffff;text-decoration:none;isolation:isolate} .mood-card-media img,.mood-card-placeholder {display:block;width:100%;height:232px;object-fit:cover;background:linear-gradient(160deg,#b4a888,#6d6046);transition:transform 220ms ease} .mood-card:hover .mood-card-media img {transform:scale(1.045)} .mood-card-band {position:absolute;inset:auto 0 0 0;z-index:1;display:flex;align-items:flex-end;justify-content:space-between;gap:0.3rem;padding:1.6rem 0.6rem 0.55rem;background:linear-gradient(transparent,rgba(0,0,0,0.8))} .mood-card-text h3 {margin:0;font-size:0.92rem} .mood-card-sub {display:block;font-size:0.74rem;opacity:0.9;margin-top:0.05rem} .mood-card-arrow {flex:none;line-height:0;margin-bottom:0.15rem} .mood-card-arrow .icon-arrow {width:13px;height:13px} .ticket-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem} .ticket {position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:0.15rem;min-height:172px;border-radius:12px;padding:1.3rem 1.2rem 3rem;color:var(--ink);text-decoration:none;box-shadow:0 6px 18px rgba(34,27,16,0.1);transition:transform 180ms ease,box-shadow 180ms ease;-webkit-mask:radial-gradient(circle 7px at 0 11px,transparent 96%,#000) left / 51% 22px repeat-y,radial-gradient(circle 7px at 100% 11px,transparent 96%,#000) right / 51% 22px repeat-y;mask:radial-gradient(circle 7px at 0 11px,transparent 96%,#000) left / 51% 22px repeat-y,radial-gradient(circle 7px at 100% 11px,transparent 96%,#000) right / 51% 22px repeat-y} .ticket--art {background-size:100% 100%;background-position:center;background-repeat:no-repeat;padding-bottom:2.2rem} .ticket--art::before {display:none} .ticket::before {content:"";position:absolute;inset:7px;border-radius:8px;border:1.5px dashed rgba(34,27,16,0.3);pointer-events:none} .ticket:hover {transform:translateY(-3px);box-shadow:0 12px 26px rgba(34,27,16,0.16)} .ticket-grid>.ticket:nth-child(odd) {transform:rotate(-0.7deg)} .ticket-grid>.ticket:nth-child(even) {transform:rotate(0.6deg)} .ticket-grid>.ticket:hover {transform:rotate(0deg) translateY(-3px)} .ticket--cream {background-color:#f8f2df} .ticket--sage {background-color:#e7ecd6} .ticket--coral {background-color:#f2b5a0} .ticket-scene {position:absolute;left:1rem;right:1rem;bottom:0.7rem;color:var(--ink);opacity:0.45;pointer-events:none} .ticket-scene .ticket-scene-svg {display:block;width:100%;height:auto} .ticket-scene img {display:block;width:100%;height:auto} .ticket-label {font-family:var(--serif);font-size:1.3rem;line-height:1.2} .ticket-sub {color:var(--muted);font-size:0.82rem} .ticket--coral .ticket-sub {color:#5c3325} .ticket--art.ticket--coral .ticket-label,.ticket--art.ticket--coral .ticket-sub {color:#4e2a1e} .ticket-arrow {position:absolute;right:1.3rem;bottom:1.05rem;margin:0;color:var(--sun-ink);line-height:0} .ticket--coral .ticket-arrow {color:#5c3325} .country-map {position:relative;background-color:#f4e9dc;background-size:100% 100%;background-position:center;background-repeat:no-repeat;padding:clamp(3rem,7.6vw,5.2rem) clamp(2rem,6vw,4rem)} .country-map-overlay {position:relative} .country-map::before {content:"";position:absolute;inset:0;background:rgba(243,236,221,0.14);pointer-events:none} .country-map-routes {position:absolute;inset:0;width:100%;height:100%;color:rgba(30,42,68,0.55);pointer-events:none} .map-postmark {position:absolute;top:-1.2rem;right:-1.4rem;width:96px;height:auto;opacity:0.45;transform:rotate(4deg);pointer-events:none} .country-compass {position:absolute;left:-2.2rem;bottom:3.2rem;z-index:1;width:96px;height:96px;border-radius:50%;object-fit:cover;box-shadow:0 10px 26px rgba(34,27,16,0.35);pointer-events:none} .polaroid-grid {position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.2rem 2.6rem;max-width:81%;margin:0 auto} .polaroid {background:#fdfaf1;padding:8px 8px 9px;border-radius:3px;box-shadow:0 12px 26px rgba(34,27,16,0.2);transition:transform 200ms ease,box-shadow 200ms ease} .polaroid-grid>.polaroid:nth-child(odd) {transform:rotate(-1.4deg)} .polaroid-grid>.polaroid:nth-child(even) {transform:rotate(1.2deg) translateY(10px)} .polaroid-grid>.polaroid:nth-child(3n) {transform:rotate(0.8deg) translateY(-6px)} .polaroid-grid>.polaroid:hover {transform:rotate(0deg) translateY(-3px);box-shadow:0 16px 34px rgba(34,27,16,0.26)} .polaroid-media {display:block;overflow:hidden} .polaroid-media img,.polaroid-placeholder {display:block;width:100%;aspect-ratio:48 / 25;object-fit:cover;background:linear-gradient(160deg,#b4a888,#6d6046)} .polaroid-caption {padding:0.6rem 0.35rem 0.15rem} .polaroid-caption h3 {display:flex;align-items:center;gap:0.3rem;margin:0;font-size:0.98rem} .polaroid-caption h3 a {color:var(--ink);text-decoration:none} .polaroid-caption h3 a:hover {text-decoration:underline} .polaroid-pin {line-height:0;color:var(--stamp-red)} .polaroid-tagline {margin:0.05rem 0 0.25rem;font-family:var(--script);font-size:1rem;color:var(--muted)} .country-polaroid nav {display:flex;flex-wrap:wrap;gap:0.05rem 0.65rem} .country-polaroid nav a {color:var(--muted);font-size:0.72rem;text-decoration:none} .country-polaroid nav a:hover {text-decoration:underline;color:var(--ink)} .country-all-link {display:inline-flex;margin-top:1rem} .partners-band h2 {font-family:inherit;font-weight:800;font-size:0.9rem;letter-spacing:0.16em;text-transform:uppercase} .partners-band .partner-row-wrap {background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:0.9rem 1.2rem;margin-top:0.9rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:0.5rem 1.1rem} .partners-band .partner-chip {background:transparent;border:0;padding:0.45rem 0.55rem} .partners-band .partner-row {flex:1 1 0;min-width:18rem;gap:0.4rem 1.1rem;align-items:center;margin:0} .partners-band .explore-all-link {flex:none;margin-top:0;padding:0.5rem 1.05rem;font-size:0.9rem} .partner-chip-mark {filter:grayscale(1) contrast(0.85);background-color:transparent} .partner-chip-wordmark svg,.partner-chip-wordmark--raster {filter:grayscale(1);opacity:0.82} .partner-chip span:not(.partner-chip-mark):not(.partner-chip-wordmark) {color:var(--ink)} .facebook-card {position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,0.85fr);gap:clamp(2rem,6vw,5rem);align-items:center;padding:clamp(2rem,5vw,4rem);border-radius:22px;background:var(--navy);color:var(--paper);box-shadow:0 16px 38px rgba(30,42,68,0.18)} .facebook-card::before {content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-190px;top:-230px;border:1px dashed rgba(250,246,236,0.24);border-radius:50%;box-shadow:0 0 0 45px rgba(250,246,236,0.025),0 0 0 90px rgba(250,246,236,0.025)} .facebook-copy {position:relative;z-index:1} .facebook-eyebrow {margin:0 0 0.6rem;color:var(--sun);font-size:0.75rem;font-weight:800;letter-spacing:0.17em;text-transform:uppercase} .facebook-card h2 {max-width:15ch;margin:0;color:var(--paper);font-size:clamp(2rem,4vw,3.45rem);line-height:1.02;text-wrap:balance} .facebook-intro {max-width:55ch;margin:1rem 0 1.5rem;color:rgba(250,246,236,0.78);line-height:1.65} .facebook-cta {gap:0.6rem} .facebook-button-mark,.facebook-page-mark {display:inline-grid;place-items:center;flex:none;border-radius:50%;background:#1877f2;color:white;font-family:Arial,sans-serif;font-weight:800} .facebook-button-mark {width:25px;height:25px;font-size:1.15rem} .facebook-paper {position:relative;display:flex;flex-direction:column;min-height:260px;padding:1.8rem 1.7rem 1.5rem;border:1px solid rgba(34,27,16,0.12);border-radius:4px;background:var(--paper);color:var(--ink);box-shadow:0 20px 36px rgba(0,0,0,0.28);text-decoration:none;transform:rotate(2.2deg);transition:transform 180ms ease,box-shadow 180ms ease} .facebook-paper:hover {color:var(--ink);transform:rotate(0deg) translateY(-4px);box-shadow:0 24px 42px rgba(0,0,0,0.34)} .facebook-paper-tape {position:absolute;top:-12px;left:50%;width:110px;height:27px;background:var(--tape);box-shadow:0 1px 2px rgba(34,27,16,0.12);transform:translateX(-50%) rotate(-3deg)} .facebook-page-line {display:flex;align-items:center;gap:0.75rem} .facebook-page-line>span:last-child {min-width:0} .facebook-page-line strong,.facebook-page-line small {display:block} .facebook-page-line strong {font-size:0.98rem} .facebook-page-line small {margin-top:0.12rem;color:var(--muted);font-size:0.7rem;overflow-wrap:anywhere} .facebook-page-mark {width:42px;height:42px;font-size:2rem} .facebook-paper-rule {display:block;height:1px;margin:1.2rem 0;background:repeating-linear-gradient(90deg,var(--line) 0 8px,transparent 8px 13px)} .facebook-paper-copy {max-width:16ch;font-family:var(--script);font-size:1.55rem;line-height:1.2;transform:rotate(-1deg)} .facebook-paper-link {display:inline-flex;align-items:center;gap:0.45rem;margin-top:auto;padding-top:1.3rem;color:#0f55b5;font-size:0.84rem;font-weight:800} .facebook-paper-link .icon-arrow {width:13px;height:13px} .postcard {position:relative;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:1.5rem 1.4rem 1.4rem;box-shadow:0 10px 30px rgba(34,27,16,0.1)} .postcard::before {content:"";position:absolute;inset:9px;border-radius:9px;border:1.5px dashed rgba(34,27,16,0.22);pointer-events:none} .postcard-stamp {position:absolute;top:1.3rem;right:1.3rem;display:grid;place-items:center;width:52px;height:60px;border:2px solid rgba(34,27,16,0.4);color:rgba(34,27,16,0.55);background:radial-gradient(circle 3px at 0 0,transparent 97%,var(--paper)) 0 0 / 10px 10px round} .postcard-stamp .doodle-plane {width:26px;height:26px} .postcard-postmark {position:absolute;top:1.5rem;right:5.4rem;width:88px;color:rgba(34,27,16,0.3);line-height:0} .postcard-postmark-art {position:absolute;top:1.2rem;right:1.2rem;width:190px;height:auto;opacity:0.55;pointer-events:none} .postcard-body {padding-right:4.2rem} .postcard-display {font-family:var(--serif);font-weight:700;font-size:clamp(1.5rem,2.6vw,2.05rem);line-height:1.18;margin:0.5rem 0 0.9rem;text-wrap:balance;max-width:14ch} .postcard-sub {color:var(--muted);font-size:0.92rem;margin:0 0 1.2rem} .faq-layout {display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start} #faq .quick-answers details {border-bottom:1px solid var(--line)} #faq .quick-answers summary {list-style:none;display:flex;align-items:center;justify-content:space-between;gap:0.7rem;padding:0.95rem 0.2rem;font-weight:650;cursor:pointer} #faq .quick-answers summary::-webkit-details-marker {display:none} #faq .quick-answers summary::after {content:"";flex:none;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform 150ms ease;margin-right:0.3rem} #faq .quick-answers details[open] summary::after {transform:rotate(225deg)} #faq .quick-answers details>p {margin:0 0 0.9rem;color:var(--muted)} @media (max-width:960px) {.hero-panel {grid-template-columns:1fr;padding-bottom:1rem} .hero-panel-media {order:-1} .hero-panel-copy {padding:1.2rem 0.4rem 1.6rem} .hero-photo {clip-path:none} .hero-photo,.hero-photo img,.hero-photo-placeholder {min-height:300px} .vert-band {margin-top:1rem;box-shadow:0 8px 26px rgba(34,27,16,0.06)} .stamp-badge--club {display:none} .hero-flight-path {display:none} .hero-note {bottom:-0.6rem} .vert-grid,.mini-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .spotlight {grid-template-columns:1fr} .spotlight-media {padding:0 0.9rem 0.9rem} .spotlight-note {position:static;transform:rotate(-2deg);width:auto;margin-top:0.4rem} .stamp-badge--spotlight {display:none} .mood-grid {grid-template-columns:repeat(3,minmax(0,1fr))} .ticket-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .polaroid-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .facebook-card {grid-template-columns:1fr} .facebook-paper {width:min(420px,92%);justify-self:center} .faq-layout {grid-template-columns:1fr} .faq-aside {order:2}} @media (max-width:600px) {.mini-grid {grid-template-columns:1fr} .mood-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .mood-card-media img,.mood-card-placeholder {height:170px} .ticket-grid {grid-template-columns:1fr} .polaroid-grid {grid-template-columns:1fr} .facebook-card {padding:1.7rem 1.25rem 2.2rem} .facebook-card h2 {font-size:clamp(1.9rem,11vw,2.8rem)} .facebook-paper {width:100%;min-height:235px;padding-inline:1.25rem} .footer-flourish {flex-direction:column;gap:1rem} .postcard-postmark {display:none}} @media (prefers-reduced-motion:reduce) {.polaroid-grid>.polaroid,.polaroid-grid>.polaroid:nth-child(odd),.polaroid-grid>.polaroid:nth-child(even),.polaroid-grid>.polaroid:nth-child(3n),.ticket-grid>.ticket:nth-child(odd),.ticket-grid>.ticket:nth-child(even),.facebook-paper {transform:none}} .hotel-destination-page {position:relative;color:var(--navy)} .hotel-destination-page .breadcrumbs {padding-top:0.8rem;font-size:0.78rem} .hotel-destination-page h1,.hotel-destination-page h2,.hotel-destination-page h3 {color:#173856} .hotel-destination-hero {display:grid;grid-template-columns:minmax(0,1fr) 132px 150px;align-items:center;gap:1.5rem;min-height:128px;margin-top:0;padding:0.75rem 0 1.25rem} .hotel-destination-hero h1 {font-size:clamp(2rem,4vw,2.85rem)} .hotel-destination-hero p:not(.hotel-price-confirmation) {margin-top:0.35rem;color:#334858} .hotel-price-confirmation {display:flex;align-items:center;gap:0.45rem;margin:0.5rem 0 0;color:#526473 !important;font-size:0.78rem !important;line-height:1.35 !important} .hotel-price-confirmation span {display:grid;place-items:center;width:17px;height:17px;border:1.5px solid #2b607f;border-radius:50%;color:#2b607f;font-size:0.62rem;font-weight:900} .hotel-place-stamp {display:block;justify-self:center;width:116px;height:116px;transform:rotate(-5deg);opacity:0.88} .hotel-place-stamp img {display:block;width:100%;height:100%;object-fit:contain} .hotel-guide-link {display:flex;flex-direction:column;align-items:flex-start;color:#173856;font-size:0.82rem;line-height:1.25;text-decoration:none} .hotel-guide-link:hover {color:var(--sun-ink)} .hotel-guide-link strong {font-size:0.9rem} .hotel-destination-page .stay-search {padding-top:0.8rem} .hotel-destination-page .results-search-summary {display:none} .hotel-destination-page .results-search-form {display:block} .hotel-destination-page .results-search-form .stay-bar {margin-top:0} .hotel-results-toolbar {position:relative;z-index:8;display:flex;align-items:center;gap:0.65rem;min-height:50px;margin:0.2rem 0 0.9rem;padding:0.45rem 0.65rem;border:1px solid var(--line);border-radius:10px;background:rgba(250,246,236,0.72)} .hotel-results-summary {display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem 0.65rem;flex:1 1 auto;min-width:0} .hotel-results-count {margin:0;color:var(--muted);font-size:0.78rem;font-weight:750;white-space:nowrap} .hotel-view-switch {display:inline-flex;overflow:hidden;border:1px solid #d4c8b0;border-radius:7px;background:var(--paper)} .hotel-view-switch a,.hotel-view-switch span {min-width:82px;padding:0.55rem 0.75rem;color:#173856;font-size:0.76rem;font-weight:800;text-align:center;text-decoration:none} .hotel-view-switch a + a,.hotel-view-switch span + a,.hotel-view-switch a + span {border-left:1px solid #d4c8b0} .hotel-view-switch a:hover {background:var(--cream)} .hotel-view-switch .is-active {background:#2d607e;color:#fff} .hotel-sort-menu {position:relative} .hotel-sort-menu summary,.hotel-filter-jump {display:flex;align-items:center;gap:0.4rem;min-height:40px;padding:0.45rem 0.75rem;border:1px solid #d4c8b0;border-radius:7px;background:var(--paper);color:#536270;font-size:0.72rem;list-style:none;text-decoration:none;cursor:pointer} .hotel-sort-menu summary::-webkit-details-marker {display:none} .hotel-sort-menu summary::after {content:"⌄";color:#173856;font-size:0.9rem} .hotel-sort-menu summary strong {color:#173856;font-size:0.76rem} .hotel-sort-options {position:absolute;z-index:40;top:calc(100% + 0.4rem);right:0;display:grid;width:210px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper);box-shadow:0 14px 32px rgba(23,56,86,0.16)} .hotel-sort-options a,.hotel-sort-options span {padding:0.7rem 0.8rem;color:#536270;font-size:0.75rem;text-decoration:none} .hotel-sort-options a + a,.hotel-sort-options span + a,.hotel-sort-options a + span {border-top:1px solid var(--line)} .hotel-sort-options a:hover {background:var(--cream);color:#173856} .hotel-sort-options .is-active {background:#edf2f3;color:#173856;font-weight:800} .hotel-filter-jump {display:none;color:#173856;font-weight:800} .hotel-list-layout {display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.15rem;align-items:start} .hotel-results-main {min-width:0} .hotel-filter-panel {position:sticky;top:1rem;overflow:hidden;border:1px solid #d8ccb6;border-radius:11px;background:rgba(252,249,242,0.92);box-shadow:0 5px 18px rgba(39,55,65,0.06)} .hotel-filter-heading {display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:0.75rem 0.8rem 0.35rem} .hotel-filter-heading h2 {margin:0;font-family:inherit;color:#173856;font-size:0.92rem} .hotel-filter-heading a {color:#2d607e;font-size:0.68rem;font-weight:800;text-decoration:none} .hotel-filter-heading a:hover {text-decoration:underline} .hotel-filter-section {margin:0;padding:0.55rem 0.8rem 0.6rem;border:0;min-width:0} .hotel-filter-section + .hotel-filter-section {border-top:1px solid var(--line)} .hotel-filter-section legend {float:left;width:100%;margin:0 0 0.28rem;padding:0;color:#173856;font-size:0.78rem;font-weight:850} .hotel-filter-section>*:not(legend) {clear:both} .hotel-filter-options {display:grid;gap:0.08rem} .hotel-filter-options label {display:flex;align-items:center;gap:0.55rem;min-height:27px;margin:0 -0.3rem;padding:0.15rem 0.3rem;border-radius:6px;color:#536270;font-size:0.71rem;cursor:pointer} .hotel-filter-options label:hover {background:rgba(233,168,58,0.09);color:#173856} .hotel-filter-options input {flex:0 0 auto;width:15px;height:15px;margin:0;accent-color:#2d607e;cursor:pointer} .hotel-filter-options input:focus-visible {outline:2px solid var(--sun);outline-offset:2px} .hotel-filter-options input:checked + span {color:#173856;font-weight:750} .hotel-filter-apply {display:block;width:calc(100% - 1.6rem);margin:0.1rem 0.8rem 0.75rem;border:0;border-radius:7px;padding:0.7rem 0.45rem;background:#d9921e;color:#1d2d38;font-size:0.74rem;font-weight:850;text-align:center;cursor:pointer} .hotel-filter-apply:hover {background:#c98113} .hotel-filter-select {width:100%;min-width:0;box-sizing:border-box;border:1px solid #d8ccb6;border-radius:7px;padding:0.42rem 0.5rem;background:white;color:#173856;font-family:inherit;font-size:0.72rem;text-overflow:ellipsis;cursor:pointer} .hotel-filter-select:focus-visible {outline:2px solid var(--sun);outline-offset:1px} .cruise-search-layout {display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.15rem;align-items:start} .cruise-search-results {min-width:0} .cruise-card-region {position:absolute;top:0.55rem;left:0.6rem;z-index:2;padding:0.2rem 0.5rem;border-radius:999px;background:rgba(23,56,86,0.82);color:white;font-size:0.64rem;font-weight:800;letter-spacing:0.03em} .cruise-card .stay-card-body {min-height:0} .cruise-card .stay-card-footer {align-items:center} .cruise-card .stay-card-footer .btn {flex:0 0 auto;padding:0.42rem 0.7rem;border-radius:8px;font-size:0.72rem;text-align:center;white-space:nowrap} .cruise-card .inventory-card-price {text-align:left;white-space:nowrap} .cruise-card .stay-card-price-group {flex:1 1 auto} .cruise-card-art--a {object-position:50% 50%} .cruise-card-art--b {object-position:18% 62%} .cruise-card-art--c {object-position:82% 38%} .cruise-card-art--d {object-position:34% 24%} .cruise-card .live-activity-partner-name {display:block;color:var(--muted);font-size:0.68rem;font-weight:750} .hotel-destination-page .stay-grid {gap:0.75rem} .hotel-destination-page .stay-card h3 {font-family:var(--serif);letter-spacing:-0.01em} .hotel-destination-page .stay-card-type {color:#667784;text-transform:none;letter-spacing:0} .hotel-destination-page .stay-rating-score {background:#2f7a54} .hotel-destination-page .stay-card-price strong {color:#173856;font-family:var(--serif)} .hotel-destination-page .stay-card-cta {background:#d9921e;color:#1d2d38} .hotel-destination-page .stay-card-cta:hover {background:#c98113} .hotel-destination-page .stay-pagination,.activities-destination-page .stay-pagination {margin-top:1rem} .hotel-destination-page .stay-page,.activities-destination-page .stay-page {min-width:36px;min-height:36px;border:1px solid var(--line);border-radius:5px;font-size:0.72rem} .hotel-destination-page .stay-compare-buttons {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;max-width:860px;margin:1.1rem auto 0.45rem} .hotel-destination-page .stay-compare-btn {min-height:64px;border-radius:7px;box-shadow:none;font-size:0.72rem} @media (max-width:980px) {.hotel-destination-hero {grid-template-columns:minmax(0,1fr) 110px} .hotel-guide-link {grid-column:1 / -1;flex-direction:row;gap:0.35rem} .hotel-list-layout {grid-template-columns:1fr} .cruise-search-layout {grid-template-columns:1fr} .hotel-destination-page>.stay-search--results~* {margin-left:0} .hotel-filter-panel {position:static} .hotel-destination-page .hotel-filter-form {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start} .hotel-destination-page .hotel-filter-section + .hotel-filter-section {border-top:0;border-left:1px solid var(--line)} .hotel-destination-page .hotel-filter-apply {grid-column:1 / -1;justify-self:end;width:190px} .cruise-search-layout .hotel-filter-form {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start} .cruise-search-layout .hotel-filter-section + .hotel-filter-section {border-top:0;border-left:1px solid var(--line)} .cruise-search-layout .hotel-filter-apply {grid-column:1 / -1;justify-self:end;width:190px} .hotel-filter-jump {display:flex}} @media (max-width:760px) {.hotel-destination-hero {grid-template-columns:1fr} .hotel-place-stamp {display:none} .hotel-destination-page .results-search-summary {display:flex;justify-content:space-between;gap:1rem;margin-bottom:0.65rem;padding:0.65rem 0.75rem;border:1px solid var(--line);border-radius:7px;font-size:0.72rem} .hotel-destination-page .results-search-summary label {font-weight:800;cursor:pointer} .hotel-destination-page .results-search-form {display:none} .hotel-destination-page .results-search-toggle:checked~.results-search-form {display:block} .hotel-results-toolbar {flex-wrap:wrap} .hotel-results-summary:not(:empty) {flex:1 0 100%} .hotel-view-switch {flex:1 1 auto} .hotel-view-switch a,.hotel-view-switch span {flex:1 1 0} .hotel-sort-menu {flex:1 1 auto} .hotel-sort-menu summary {justify-content:center} .hotel-filter-jump {justify-content:center;flex:0 0 auto}} @media (max-width:600px) {.hotel-destination-page .hotel-filter-form {grid-template-columns:1fr} .hotel-filter-section + .hotel-filter-section {border-top:1px solid var(--line);border-left:0} .hotel-filter-apply {justify-self:stretch;width:calc(100% - 1.8rem)} .hotel-sort-menu summary span {display:none} .hotel-destination-page .stay-compare-buttons {grid-template-columns:1fr} .cruise-search-layout .hotel-filter-form {grid-template-columns:repeat(2,minmax(0,1fr));gap:0} .cruise-search-layout .hotel-filter-form .hotel-filter-section {border-top:0;border-left:0} .cruise-search-layout .hotel-filter-form .hotel-filter-section:nth-of-type(n+3) {border-top:1px solid var(--line)} .cruise-search-layout .hotel-filter-section--wide {grid-column:1 / -1} .cruise-search-layout .hotel-filter-section--wide .hotel-filter-options {grid-template-columns:repeat(2,minmax(0,1fr));column-gap:0.6rem} .cruise-search-layout .hotel-filter-apply {justify-self:stretch;width:calc(100% - 1.6rem)}} .activities-destination-page [data-activity-destination-card] {display:flex;min-height:348px;flex-direction:column;border:1px solid #d8cbb3;background:rgba(250,246,236,0.96);color:#18384a} .activities-destination-page [data-activity-destination-card] .activity-destination-card-body {background:rgba(250,246,236,0.98)} .activities-top-things [data-activity-destination-card] {display:grid;min-height:150px;grid-template-columns:42% minmax(0,1fr)} @media (max-width:620px) {.activities-top-things [data-activity-destination-card] {display:grid;min-height:150px;grid-template-columns:38% minmax(0,1fr)}} main:has(.guide-editorial-page) {max-width:none;padding-bottom:0} .guide-editorial-page {width:min(100%,1400px);margin:0 auto;padding-bottom:clamp(3.5rem,7vw,6.5rem)} .guide-editorial-page .breadcrumbs {max-width:none;margin:0;padding:1rem 0 0.8rem;color:#756a57;font-size:0.78rem} .wanaka-editorial-guide {display:grid;gap:1rem;color:#26353c;font-size:0.92rem;line-height:1.42} .wanaka-editorial-guide h1,.wanaka-editorial-guide h2 {color:#263d46} .wanaka-editorial-guide a {text-decoration:none} .wanaka-editorial-guide img {filter:saturate(0.82) sepia(0.06) contrast(0.96)} .wanaka-editorial-hero {display:grid;grid-template-columns:minmax(300px,0.78fr) minmax(0,1.5fr);gap:1.8rem;align-items:center;padding-bottom:1rem} .wanaka-editorial-hero.has-no-art {grid-template-columns:minmax(0,640px)} .wanaka-hero-copy {padding:1.5rem 0.2rem 1.5rem 0.7rem} .wanaka-edition {display:inline-block;margin:0 0 1rem;padding:0.14rem 0.2rem 0.06rem;color:var(--stamp-red);border-top:1px solid rgba(179,64,47,0.55);border-bottom:1px solid rgba(179,64,47,0.55);font-family:"GDSF Display","Arial Narrow",sans-serif;font-size:0.78rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;transform:rotate(-1deg)} .wanaka-hero-copy h1 {margin:0;font-size:clamp(2.5rem,4vw,4.1rem);line-height:0.98} .wanaka-title-main,.wanaka-title-subtitle {display:block} .wanaka-title-subtitle {margin-top:0.45rem;font-size:0.48em;line-height:1.05;letter-spacing:-0.005em} .wanaka-hero-lede {max-width:42ch;margin:1rem 0;color:#5e625d;font-size:0.96rem} .wanaka-meta {margin:0 0 1.2rem;color:#677174;font-size:0.7rem;font-weight:650} .wanaka-primary-button {display:inline-flex;align-items:center;justify-content:center;gap:0.75rem;min-height:42px;padding:0.7rem 1.2rem;background:linear-gradient(180deg,#efb245,#e4a238);color:#2d2a21;border:1px solid #d29429;border-radius:7px;box-shadow:0 2px 0 rgba(121,81,18,0.12);font-weight:800} .wanaka-primary-button:hover {filter:brightness(0.96)} .wanaka-hero-art {position:relative;margin:0;overflow:hidden;background:#f5eddd;border:1px solid #cfc1a5;border-radius:12px;box-shadow:0 5px 14px rgba(64,47,24,0.12);transform:rotate(0.15deg)} .wanaka-hero-art img {width:100%;height:auto;aspect-ratio:17 / 10;object-fit:cover} .wanaka-hero-art figcaption {position:absolute;right:0.75rem;bottom:0.55rem;z-index:2;padding:0.2rem 0.45rem;background:rgba(250,246,236,0.82);color:#6b665b;border-radius:4px;font-size:0.58rem} .wanaka-paper-panel,.wanaka-numbered-section,.wanaka-auxiliary {position:relative;background:linear-gradient(90deg,rgba(216,190,137,0.09),transparent 10%,transparent 90%,rgba(216,190,137,0.08)),var(--paper);border:1px solid #d8ccb3;border-radius:10px;box-shadow:0 2px 6px rgba(56,42,22,0.07)} .wanaka-paper-panel::after,.wanaka-numbered-section::after,.wanaka-auxiliary::after,.wanaka-hero-art::after {content:"";position:absolute;inset:0;pointer-events:none;opacity:0.12;background:repeating-linear-gradient(0deg,rgba(72,56,30,0.1) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(72,56,30,0.07) 0 1px,transparent 1px 5px);mix-blend-mode:multiply} .wanaka-paper-panel>*,.wanaka-numbered-section>*,.wanaka-auxiliary>* {position:relative;z-index:1} .wanaka-planning-picker {padding:1rem 1.25rem 1.25rem} .wanaka-planning-picker h2 {margin-bottom:0.8rem;font-size:1.55rem} .wanaka-trip-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.85rem} .wanaka-trip-card {min-width:0;overflow:hidden;background:#fbf8ef;border:1px solid #d8ccb3;border-radius:8px;color:#2b3f47;transition:transform 160ms ease,box-shadow 160ms ease} .wanaka-trip-card:hover,.wanaka-compare-card:hover {transform:translateY(-2px);box-shadow:0 7px 18px rgba(54,39,18,0.12)} .wanaka-trip-card>img {width:100%;height:205px;object-fit:cover} .wanaka-trip-card-copy {display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:0.55rem;align-items:center;min-height:76px;padding:0.7rem} .wanaka-trip-card-copy strong {display:block;font-family:var(--serif);font-size:1.02rem} .wanaka-trip-card-copy small {display:-webkit-box;overflow:hidden;margin-top:0.08rem;color:#72736d;font-size:0.65rem;-webkit-box-orient:vertical;-webkit-line-clamp:2} .wanaka-card-glyph {font-family:var(--serif);font-size:1.3rem;line-height:1} .wanaka-anchor-nav {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:62px;overflow:hidden;background:rgba(250,246,236,0.8);border:1px solid #d8ccb3;border-radius:9px} .wanaka-anchor-nav a {display:flex;align-items:center;justify-content:center;gap:0.45rem;padding:0.72rem 0.35rem;border-right:1px solid rgba(216,204,179,0.65);color:#3c4f54;font-size:0.72rem;font-weight:750;text-align:center} .wanaka-anchor-nav a:last-child {border-right:0} .wanaka-anchor-nav a:hover {background:rgba(233,168,58,0.13)} .wanaka-numbered-section {padding:1rem 1.1rem} .wanaka-numbered-section h2 {font-size:1.42rem} .wanaka-numbered-section h2>span {margin-right:0.5rem} .wanaka-now {display:grid;grid-template-columns:0.8fr 1.75fr;gap:1.1rem;align-items:center;min-height:248px} .wanaka-section-intro {padding:0.1rem 0.4rem} .wanaka-status-board {padding:0.85rem;background:#f6efdf;border:1px solid #d8ccb3;border-radius:7px} .wanaka-source-copy>p,.wanaka-comparison-intro>p {margin:0;color:#5d6868;font-size:0.74rem;line-height:1.5} .wanaka-section-heading {display:flex;align-items:center;justify-content:space-between;gap:1rem} .wanaka-comparison-intro {margin:0.45rem 0 0.9rem} .wanaka-compare-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0.65rem} .wanaka-compare-card {position:relative;min-width:0;overflow:hidden;background:#fbf8ef;border:1px solid #d8ccb3;border-radius:7px;color:#30454d;transition:transform 160ms ease,box-shadow 160ms ease} .wanaka-compare-card>summary {display:block;cursor:pointer;list-style:none} .wanaka-compare-card>summary::-webkit-details-marker {display:none} .wanaka-compare-card>summary>img {width:100%;height:132px;object-fit:cover} .wanaka-compare-copy {display:grid;gap:0.18rem;min-height:128px;padding:0.55rem 0.55rem 0.65rem;font-size:0.62rem} .wanaka-compare-copy strong {display:block;font-family:var(--serif);font-size:0.86rem;line-height:1.12} .wanaka-compare-copy>b {margin-top:0.35rem;font-size:0.62rem} .wanaka-compare-copy>small {color:#687170;font-size:0.58rem} .wanaka-card-arrow {position:absolute;right:0.45rem;bottom:0.45rem;color:#345c68;transition:transform 160ms ease} .wanaka-compare-card[open] .wanaka-card-arrow {transform:rotate(45deg)} .wanaka-compare-more {padding:0 0.55rem 0.7rem;border-top:1px solid #d8ccb3} .wanaka-compare-facts {display:grid;gap:0.42rem;margin:0.35rem 0 0} .wanaka-compare-facts div {padding-top:0.35rem;border-top:1px solid rgba(216,204,179,0.72)} .wanaka-compare-facts dt {color:#7b7466;font-family:"GDSF Display","Arial Narrow",sans-serif;font-size:0.53rem;font-weight:700;letter-spacing:0.035em;line-height:1.2;text-transform:uppercase} .wanaka-compare-facts dd {margin:0.1rem 0 0;color:#4f5e5f;font-size:0.61rem;line-height:1.3} .wanaka-compare-more>a {display:inline-flex;align-items:center;gap:0.35rem;margin-top:0.55rem;color:#345c68;font-size:0.62rem;font-weight:800} .wanaka-deep-list {overflow:hidden;border:1px solid #d8ccb3;border-radius:7px} .wanaka-data-deep-row {background:rgba(250,246,236,0.72);border-bottom:1px solid #d8ccb3} .wanaka-data-deep-row:last-child {border-bottom:0} .wanaka-data-deep-row>summary {display:grid;grid-template-columns:190px minmax(0,1fr) minmax(170px,0.55fr) auto;gap:0.85rem;align-items:center;min-height:132px;padding-right:0.85rem;cursor:pointer;list-style:none} .wanaka-data-deep-row>summary::-webkit-details-marker {display:none} .wanaka-data-deep-row>summary>img {width:100%;height:132px;object-fit:cover} .wanaka-data-deep-summary strong {display:block;color:#31484f;font-family:var(--serif);font-size:1.05rem;line-height:1.12} .wanaka-data-deep-summary small {display:-webkit-box;overflow:hidden;margin-top:0.3rem;color:#66706e;font-size:0.66rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:3} .wanaka-data-deep-meta {display:grid;gap:0.25rem} .wanaka-data-deep-meta b {font-size:0.68rem} .wanaka-data-deep-meta small {color:#69706e;font-size:0.62rem} .wanaka-data-deep-toggle {color:#345c68;font-size:0.62rem;font-weight:800;white-space:nowrap} .wanaka-data-deep-toggle::after {content:" +"} .wanaka-data-deep-row[open] .wanaka-data-deep-toggle::after {content:" –"} .wanaka-data-deep-body {padding:1rem clamp(1rem,4vw,3.2rem) 1.15rem;background:rgba(255,252,244,0.72);border-top:1px solid #d8ccb3} .wanaka-data-deep-body>p {max-width:92ch;margin:0 auto 0.85rem;color:#485657;font-size:0.8rem;line-height:1.55} .wanaka-data-deep-body .guide-cta {max-width:92ch;margin:1rem auto 0} .wanaka-data-deep-body .guide-cta-button,.wanaka-closing-grid .guide-cta-button {display:inline-flex;align-items:center;min-height:36px;padding:0.5rem 0.8rem;background:linear-gradient(180deg,#efb245,#e4a238);color:#2d2a21;border:1px solid #d29429;border-radius:6px;font-size:0.68rem;font-weight:800;text-decoration:none} .wanaka-closing-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch} .wanaka-closing-grid .wanaka-numbered-section {min-width:0;min-height:265px} .wanaka-source-faq {margin-top:0.55rem;border-top:1px solid #d8ccb3} .wanaka-source-faq details {border-bottom:1px solid #d8ccb3} .wanaka-source-faq summary {padding:0.58rem 1.1rem 0.58rem 0;cursor:pointer;font-size:0.7rem;font-weight:750} .wanaka-source-faq p,.wanaka-closing-grid p {color:#596565;font-size:0.66rem;line-height:1.45} .wanaka-source-faq p {margin:0;padding:0 0 0.75rem} .wanaka-auxiliary {padding:1rem 1.1rem} .wanaka-auxiliary>h2 {font-size:1.25rem} .wanaka-auxiliary-band .card-grid {margin-top:0.75rem} @media (max-width:980px) {.wanaka-editorial-hero {grid-template-columns:minmax(260px,0.85fr) minmax(0,1.25fr);gap:1rem} .wanaka-hero-copy h1 {font-size:3rem} .wanaka-trip-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .wanaka-compare-grid {grid-template-columns:repeat(3,minmax(0,1fr))} .wanaka-closing-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .wanaka-closing-grid>:last-child {grid-column:1 / -1} .wanaka-anchor-nav {grid-template-columns:repeat(4,minmax(0,1fr))}} @media (max-width:720px) {.guide-editorial-page .breadcrumbs {padding-inline:0.35rem} .wanaka-editorial-hero {grid-template-columns:1fr} .wanaka-hero-art {order:-1} .wanaka-hero-copy {padding-inline:0.35rem} .wanaka-hero-copy h1 {font-size:clamp(2.4rem,11vw,3.6rem)} .wanaka-trip-card>img {height:150px} .wanaka-now {grid-template-columns:1fr;min-height:0} .wanaka-compare-grid {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:0.35rem} .wanaka-compare-card {flex:0 0 190px;scroll-snap-align:start} .wanaka-data-deep-row>summary {grid-template-columns:120px minmax(0,1fr) auto;gap:0.65rem;min-height:110px} .wanaka-data-deep-row>summary>img {height:110px} .wanaka-data-deep-meta {display:none} .wanaka-data-deep-toggle {font-size:0} .wanaka-data-deep-toggle::after {font-size:1rem}} @media (max-width:500px) {.wanaka-trip-grid,.wanaka-closing-grid {grid-template-columns:1fr} .wanaka-closing-grid>:last-child {grid-column:auto} .wanaka-anchor-nav {grid-template-columns:repeat(2,minmax(0,1fr))} .wanaka-anchor-nav a {border-bottom:1px solid rgba(216,204,179,0.65)} .wanaka-data-deep-row>summary {grid-template-columns:90px minmax(0,1fr) auto} .wanaka-data-deep-row>summary>img {height:105px} .wanaka-data-deep-summary small {-webkit-line-clamp:2}} .wanaka-editorial-guide {font-size:1rem;line-height:1.65} .wanaka-editorial-guide a {color:#285d6b;text-underline-offset:0.16em;text-decoration-thickness:0.08em} .wanaka-editorial-guide a:hover {color:#173f4a} .wanaka-editorial-guide a:focus-visible,.wanaka-comparison-table-wrap:focus-visible {outline:3px solid rgba(229,157,42,0.72);outline-offset:3px} .wanaka-hero-lede {font-size:1.08rem;line-height:1.58} .wanaka-meta {font-size:0.85rem;line-height:1.5} .wanaka-hero-art figcaption {font-size:0.75rem} .wanaka-primary-button,.wanaka-anchor-nav a,.wanaka-read-more-cell a,.wanaka-data-deep-body .guide-cta-button,.wanaka-closing-grid .guide-cta-button {text-decoration:none} .wanaka-primary-button {min-height:46px;font-size:0.95rem} .wanaka-paper-panel::after,.wanaka-numbered-section::after,.wanaka-auxiliary::after,.wanaka-hero-art::after {opacity:0.07} .wanaka-anchor-nav {grid-template-columns:repeat(auto-fit,minmax(150px,1fr));min-height:58px} .wanaka-anchor-nav a {padding:0.85rem 0.65rem;font-size:0.9rem} .wanaka-numbered-section,.wanaka-data-deep-row {scroll-margin-top:1.25rem} .wanaka-numbered-section {padding:clamp(1.25rem,2.5vw,2rem)} .wanaka-numbered-section h2 {margin:0 0 1rem;font-size:clamp(1.55rem,2.2vw,2rem);line-height:1.18} .wanaka-now {grid-template-columns:minmax(220px,0.65fr) minmax(0,1.8fr);gap:clamp(1.25rem,3vw,2.5rem);min-height:0} .wanaka-status-board {padding:clamp(1rem,2vw,1.4rem)} .wanaka-source-copy>p,.wanaka-comparison-intro>p,.wanaka-auxiliary p,.wanaka-auxiliary li {color:#465659;font-size:1rem;line-height:1.68} .wanaka-comparison-intro {max-width:90ch;margin:0.4rem 0 1.2rem} .wanaka-comparison-table-wrap {overflow-x:auto;overscroll-behavior-inline:contain;background:#fbf8ef;border:1px solid #cfc1a5;border-radius:8px;box-shadow:inset 0 1px rgba(255,255,255,0.6);scrollbar-color:#aa9671 #eee4d1} .wanaka-comparison-table {width:100%;min-width:1120px;border-collapse:separate;border-spacing:0;color:#34474d} .wanaka-comparison-table th,.wanaka-comparison-table td {padding:0.9rem;border-right:1px solid #ded1b7;border-bottom:1px solid #ded1b7;font-size:0.9rem;line-height:1.48;text-align:left;vertical-align:top} .wanaka-comparison-table tr>:last-child {border-right:0} .wanaka-comparison-table tbody tr:last-child>* {border-bottom:0} .wanaka-comparison-table thead th {background:#eee3cf;color:#435258;font-family:"GDSF Display","Arial Narrow",sans-serif;font-size:0.78rem;font-weight:750;letter-spacing:0.025em;line-height:1.3} .wanaka-comparison-table tbody tr:nth-child(even) td,.wanaka-comparison-table tbody tr:nth-child(even) th {background:rgba(238,228,209,0.36)} .wanaka-comparison-table tbody tr:hover td,.wanaka-comparison-table tbody tr:hover th {background:rgba(235,170,57,0.11)} .wanaka-comparison-table tbody th {min-width:180px;background:#f8f2e6;font-family:var(--serif);font-size:1rem;line-height:1.35} .wanaka-comparison-table tbody th a {color:#244f5b;font-weight:750;text-decoration:underline;text-decoration-color:rgba(36,79,91,0.35)} .wanaka-comparison-table th:nth-child(2),.wanaka-comparison-table td:nth-child(2) {min-width:210px} .wanaka-comparison-table th:nth-child(3),.wanaka-comparison-table td:nth-child(3) {min-width:190px} .wanaka-comparison-table th:nth-child(4),.wanaka-comparison-table td:nth-child(4) {min-width:170px} .wanaka-comparison-table th:nth-child(5),.wanaka-comparison-table td:nth-child(5) {min-width:245px} .wanaka-read-more-cell {width:1%;min-width:128px;white-space:nowrap} .wanaka-read-more-cell a {display:inline-flex;gap:0.42rem;align-items:center;min-height:40px;padding:0.5rem 0.7rem;background:#f2e1bd;border:1px solid #d4b776;border-radius:6px;color:#2d5059;font-size:0.87rem;font-weight:800} .wanaka-deep-list {display:grid;gap:1rem;overflow:visible;background:transparent;border:0;border-radius:0} .wanaka-data-deep-row {overflow:hidden;background:#fbf8ef;border:1px solid #cfc1a5;border-radius:8px;box-shadow:0 2px 7px rgba(56,42,22,0.06)} .wanaka-data-deep-row:last-child {border-bottom:1px solid #cfc1a5} .wanaka-data-deep-header {display:grid;grid-template-columns:44px minmax(0,1fr) minmax(220px,0.48fr);gap:1rem;align-items:start;padding:1.25rem clamp(1rem,2.5vw,1.6rem);background:#f2e9d8;border-bottom:1px solid #d8ccb3} .wanaka-data-deep-header.has-no-meta {grid-template-columns:44px minmax(0,1fr)} .wanaka-deep-number {display:grid;width:36px;height:36px;place-items:center;background:#fffaf0;color:#36535b;border:1px solid #cfc1a5;border-radius:50%;font-family:var(--serif);font-size:1rem;font-weight:750} .wanaka-data-deep-summary h3 {margin:0;color:#29464f;font-family:var(--serif);font-size:clamp(1.25rem,1.8vw,1.55rem);line-height:1.25} .wanaka-data-deep-summary p {margin:0.55rem 0 0;color:#536164;font-size:1rem;line-height:1.58} .wanaka-data-deep-meta {display:grid;gap:0.4rem;padding-left:1rem;border-left:1px solid #d8ccb3} .wanaka-data-deep-meta b {color:#344b52;font-size:0.92rem;line-height:1.45} .wanaka-data-deep-meta small {color:#59696b;font-size:0.88rem;line-height:1.45} .wanaka-data-deep-body {padding:clamp(1.2rem,3vw,2rem) clamp(1rem,4vw,3.25rem);background:rgba(255,252,244,0.78);border-top:0} .wanaka-data-deep-body>p {max-width:none;margin:0 0 1rem;color:#3f5053;font-size:1rem;line-height:1.72} .wanaka-data-deep-body>p a,.wanaka-closing-grid p a,.wanaka-auxiliary p a {font-weight:650;text-decoration:underline;text-decoration-color:rgba(40,93,107,0.35)} .wanaka-data-deep-body .guide-cta {max-width:none;margin:1.25rem 0 0} .wanaka-data-deep-body .guide-cta-button,.wanaka-closing-grid .guide-cta-button {min-height:44px;padding:0.65rem 0.9rem;font-size:0.92rem} .wanaka-closing-grid {grid-template-columns:repeat(2,minmax(0,1fr))} .wanaka-closing-grid .wanaka-numbered-section {min-height:0} .wanaka-closing-faq {grid-column:1 / -1} .wanaka-source-faq {margin-top:0.75rem} .wanaka-source-faq summary {position:relative;padding:0.9rem 2rem 0.9rem 0;color:#304b53;font-size:1rem;font-weight:750;line-height:1.45} .wanaka-source-faq summary::after {content:"+";position:absolute;right:0.25rem;color:#52717a;font-size:1.2rem} .wanaka-source-faq details[open] summary::after {content:"–"} .wanaka-source-faq p,.wanaka-closing-grid p,.wanaka-closing-grid li {color:#46575a;font-size:1rem;line-height:1.65} .wanaka-source-faq p {max-width:88ch;padding:0 0 1rem} .wanaka-auxiliary {padding:clamp(1.25rem,2.5vw,2rem)} .wanaka-auxiliary>h2 {font-size:1.55rem} @media (max-width:800px) {.wanaka-now {grid-template-columns:1fr} .wanaka-data-deep-header {grid-template-columns:40px minmax(0,1fr)} .wanaka-data-deep-meta {grid-column:2;padding:0;border-left:0} .wanaka-closing-grid {grid-template-columns:1fr} .wanaka-closing-faq {grid-column:auto}} @media (max-width:560px) {.wanaka-editorial-guide {font-size:0.98rem} .wanaka-anchor-nav {grid-template-columns:repeat(2,minmax(0,1fr))} .wanaka-numbered-section {padding:1.1rem} .wanaka-comparison-table {min-width:980px} .wanaka-comparison-table th,.wanaka-comparison-table td {padding:0.78rem;font-size:0.87rem} .wanaka-data-deep-header {grid-template-columns:34px minmax(0,1fr);gap:0.75rem;padding:1rem} .wanaka-deep-number {width:30px;height:30px;font-size:0.88rem} .wanaka-data-deep-body {padding:1.05rem}} .wanaka-editorial-guide {grid-template-columns:minmax(0,1fr);min-width:0} .wanaka-editorial-guide>* {min-width:0} .wanaka-source-copy a,.wanaka-comparison-intro a,.wanaka-source-faq a {font-weight:650;text-decoration:underline;text-decoration-color:rgba(40,93,107,0.35)} .wanaka-source-faq summary {list-style:none;display:block} .wanaka-source-faq summary::-webkit-details-marker {display:none} .guide-ai-note {margin-top:1.1rem;padding:0.95rem 1.1rem 1.05rem;border:1px solid #d8ccb3;border-radius:8px;background:#f4efe1} .guide-ai-note h2 {margin:0 0 0.45rem;font-size:0.78rem;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;color:#6b6250} .guide-ai-note p {margin:0;max-width:88ch;color:#4c5656;font-size:0.92rem;line-height:1.6} .guide-ai-note-link {display:inline-flex;align-items:center;gap:0.4rem;margin-top:0.7rem;color:#1d4b63;font-size:0.92rem;font-weight:700} .location-card {display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,0.8fr);gap:1.2rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)} .static-map {min-height:320px;background:#e9e6dd} .static-map object {display:block;width:100%;height:100%;min-height:320px} .static-map-fallback {min-height:320px;display:grid;place-content:center;justify-items:center;gap:0.65rem;color:var(--muted);background:linear-gradient(30deg,transparent 24%,rgba(17,17,17,0.06) 25%,rgba(17,17,17,0.06) 26%,transparent 27%,transparent 74%,rgba(17,17,17,0.06) 75%,rgba(17,17,17,0.06) 76%,transparent 77%),linear-gradient(120deg,transparent 24%,rgba(17,17,17,0.06) 25%,rgba(17,17,17,0.06) 26%,transparent 27%,transparent 74%,rgba(17,17,17,0.06) 75%,rgba(17,17,17,0.06) 76%,transparent 77%);background-size:64px 64px} .map-pin {color:#d54b3d;font-size:2.2rem;line-height:1} .location-card-body {padding:1.2rem 1.2rem 1rem 0;align-self:center} .location-precision {margin-top:0} .map-actions {display:flex;flex-wrap:wrap;align-items:center;gap:0.65rem} .map-chooser summary {border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;font-weight:700;padding:0.58rem 0.85rem} .map-chooser {position:relative} .map-chooser summary {list-style:none} .map-chooser summary::-webkit-details-marker {display:none} .map-app-links {position:absolute;z-index:2;top:calc(100% + 0.4rem);left:0;min-width:190px;padding:0.45rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 10px 30px rgba(17,17,17,0.12)} .map-app-links a {display:block;padding:0.55rem 0.65rem;border-radius:8px;color:var(--ink);text-decoration:none} .map-app-links a:hover {background:var(--cream)} .map-privacy,.map-attribution {color:var(--muted);font-size:0.78rem;line-height:1.45} .map-attribution {margin-bottom:0} .map-attribution a {color:inherit} @media (max-width:760px) {.location-card {grid-template-columns:1fr} .location-card-body {padding:0 1rem 1rem} .static-map,.static-map object,.static-map-fallback {min-height:250px}} .hotel-map-layout {display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,0.75fr);gap:1rem;align-items:start;margin-top:1rem} .hotel-map-figure {min-width:0;margin:0} .hotel-results-map {position:relative;overflow:hidden;aspect-ratio:12 / 7;border:1px solid var(--line);border-radius:var(--radius);background:#e9e6dd} .hotel-map-basemap {position:absolute;z-index:1;inset:0;display:block;width:100%;height:100%;object-fit:cover} .hotel-map-fallback {position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:0.4rem;width:100%;height:100%;color:var(--muted);background:linear-gradient(30deg,transparent 24%,rgba(17,17,17,0.06) 25%,rgba(17,17,17,0.06) 26%,transparent 27%,transparent 74%,rgba(17,17,17,0.06) 75%,rgba(17,17,17,0.06) 76%,transparent 77%),linear-gradient(120deg,transparent 24%,rgba(17,17,17,0.06) 25%,rgba(17,17,17,0.06) 26%,transparent 27%,transparent 74%,rgba(17,17,17,0.06) 75%,rgba(17,17,17,0.06) 76%,transparent 77%);background-size:64px 64px} .hotel-map-fallback>span:first-child {color:#d54b3d;font-size:2rem} .hotel-map-pins {position:absolute;z-index:2;inset:0;pointer-events:none} .hotel-map-pin {position:absolute;z-index:1;display:grid;width:2.1rem;height:2.1rem;place-items:center;transform:translate(-50%,-100%);border:3px solid var(--paper);border-radius:50% 50% 50% 0;background:#d54b3d;box-shadow:0 2px 8px rgba(17,17,17,0.35);color:#fff;font-size:0.78rem;font-weight:800;line-height:1;text-decoration:none;pointer-events:auto} .hotel-map-pin:hover,.hotel-map-pin:focus-visible {z-index:2;transform:translate(-50%,-100%) scale(1.12)} .hotel-map-caption {margin-top:0.55rem;color:var(--muted);font-size:0.78rem;line-height:1.45} .hotel-map-list {max-height:560px;margin:0;padding:0;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);list-style:none} .hotel-map-listing {padding:0.9rem} .hotel-map-listing + .hotel-map-listing {border-top:1px solid var(--line)} .hotel-map-listing-heading {display:flex;gap:0.7rem;align-items:flex-start} .hotel-map-listing-heading h3 {margin:0;font-size:1rem} .hotel-map-listing-heading p,.hotel-map-address,.hotel-map-unmapped {margin:0.2rem 0 0;color:var(--muted);font-size:0.82rem} .hotel-map-listing-number {display:grid;flex:0 0 1.7rem;width:1.7rem;height:1.7rem;place-items:center;border-radius:50%;background:#d54b3d;color:#fff;font-size:0.75rem;font-weight:800} .hotel-map-listing-number:not([data-mapped]) {background:var(--muted)} .hotel-map-deal {display:flex;justify-content:space-between;gap:0.6rem;margin-top:0.7rem;color:var(--ink)} @media (max-width:860px) {.hotel-map-layout {grid-template-columns:1fr} .hotel-map-list {max-height:none}} .hotel-map-layout [hidden] {display:none !important} .hotel-results-map>[data-hotel-map-fallback] {position:absolute;inset:0} .hotel-map-canvas {position:absolute;z-index:3;inset:0;width:100%;height:100%;background:#e9e6dd} .hotel-map-overlay-controls {position:absolute;z-index:5;inset:0;pointer-events:none} .hotel-map-start,.hotel-map-reset {position:absolute;pointer-events:auto;min-height:44px;box-shadow:0 3px 14px rgba(17,17,17,0.25)} .hotel-map-start {left:50%;bottom:1rem;transform:translateX(-50%);white-space:nowrap} .hotel-map-reset {top:0.75rem;left:0.75rem;border:1px solid var(--line);border-radius:999px;padding:0.55rem 0.85rem;background:var(--paper);color:var(--ink);font:inherit;font-weight:750;cursor:pointer} .hotel-map-status,.hotel-map-privacy {margin:0.6rem 0 0;color:var(--muted);font-size:0.8rem;line-height:1.45} .hotel-map-status[data-state="loading"]::before {content:"";display:inline-block;width:0.75rem;height:0.75rem;margin-right:0.45rem;border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:hotel-map-spin 0.8s linear infinite} .hotel-map-status[data-state="error"] {padding:0.65rem 0.75rem;border-left:4px solid #b9382c;background:#fff3f1;color:var(--ink)} .hotel-map-reset,.hotel-map-retry,.hotel-map-show {appearance:none;display:inline-flex;align-items:center;justify-content:center;line-height:1;transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease} .hotel-map-retry,.hotel-map-show {border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;font-weight:750} .hotel-map-retry {min-height:40px;margin-top:0.55rem;padding:0 0.9rem;font-size:0.85rem} .hotel-map-show {min-height:36px;margin-top:0.65rem;padding:0 0.85rem;background:var(--cream);font-size:0.82rem} .hotel-map-show:hover,.hotel-map-retry:hover,.hotel-map-reset:hover {border-color:var(--ink);background:var(--paper);box-shadow:0 2px 8px rgba(17,17,17,0.12);transform:translateY(-1px)} .hotel-map-show:active,.hotel-map-retry:active,.hotel-map-reset:active {transform:translateY(0)} .hotel-map-show:focus-visible,.hotel-map-retry:focus-visible,.hotel-map-reset:focus-visible {outline:3px solid var(--sun);outline-offset:2px} .hotel-map-listing:focus-visible {outline:3px solid var(--sun);outline-offset:-3px} .hotel-map-price-marker {display:block;max-width:9rem;min-height:32px;overflow:hidden;border:2px solid var(--paper);border-radius:999px;padding:0.28rem 0.55rem;background:var(--ink);box-shadow:0 2px 8px rgba(17,17,17,0.32);color:#fff;font:inherit;font-size:0.78rem;font-weight:850;line-height:1.15;text-overflow:ellipsis;white-space:nowrap;cursor:pointer} .hotel-map-price-marker:hover,.hotel-map-price-marker:focus-visible,.hotel-map-price-marker.is-selected {z-index:2;outline:3px solid var(--sun);outline-offset:2px;background:#b9382c} .hotel-map-popup {display:grid;gap:0.25rem;color:var(--ink)} .hotel-map-popup>span {color:var(--muted)} .hotel-map-popup>a {margin-top:0.2rem;font-weight:750} @keyframes hotel-map-spin {to {transform:rotate(360deg)}} @media (prefers-reduced-motion:reduce) {.hotel-map-status[data-state="loading"]::before {animation:none} .hotel-map-pin {transition:none}} @media (max-width:600px) {.hotel-results-map {aspect-ratio:4 / 5;min-height:420px} .hotel-map-start {bottom:0.75rem;max-width:calc(100% - 1.5rem)} .hotel-map-reset {top:0.6rem;left:0.6rem}} .hotel-destination-page[data-hotel-view="map"] .hotel-map-layout {grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:0.75rem;margin-top:0.8rem;align-items:stretch} .hotel-destination-page[data-hotel-view="map"] .hotel-map-figure {grid-column:2;grid-row:1} .hotel-destination-page[data-hotel-view="map"] .hotel-results-map {height:clamp(960px,88vw,1260px);aspect-ratio:auto;border-radius:8px;border-color:#d6c9b1;background:#d9e8e1} .hotel-destination-page[data-hotel-view="map"] .hotel-map-list {grid-column:1;grid-row:1;display:grid;gap:0.65rem;grid-auto-rows:max-content;align-content:start;max-height:clamp(960px,88vw,1260px);overflow-y:auto;padding:0;border:0;border-radius:0;background:transparent;scrollbar-width:thin;scrollbar-color:#9aa8ae transparent} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing {overflow:hidden;padding:0;border:1px solid #d6c9b1 !important;border-radius:7px;background:rgba(250,246,236,0.94)} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing-media {position:relative;height:108px;background-color:#d9d2c4;background-size:cover;background-position:center} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing-media img {width:100%;height:100%;object-fit:cover} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing-number {position:absolute;top:0.55rem;left:0.55rem;display:grid;width:32px;height:32px;place-items:center;border:2px solid var(--paper);border-radius:6px;background:#214e68;color:#fff;box-shadow:0 2px 6px rgba(23,56,86,.25);font-size:0.86rem} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing-bookmark {position:absolute;top:0.45rem;right:0.55rem;color:#214e68;font-size:1.55rem;text-shadow:0 1px 2px #fff} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing-heading {display:block;padding:0.7rem 0.75rem 0} .hotel-destination-page[data-hotel-view="map"] .hotel-map-type {margin:0 0 0.2rem;color:#6b7881;font-size:0.63rem} .hotel-destination-page[data-hotel-view="map"] .hotel-map-type span {color:#d98014} .hotel-destination-page[data-hotel-view="map"] .hotel-map-listing-heading h3 {margin:0;font-family:var(--serif);font-size:1rem;color:#173856} .hotel-destination-page[data-hotel-view="map"] .hotel-map-rating,.hotel-destination-page[data-hotel-view="map"] .hotel-map-distance,.hotel-destination-page[data-hotel-view="map"] .hotel-map-address,.hotel-destination-page[data-hotel-view="map"] .hotel-map-unmapped {margin:0.22rem 0.75rem 0;color:#586976;font-size:0.66rem} .hotel-destination-page[data-hotel-view="map"] .hotel-map-address {display:none} .hotel-destination-page[data-hotel-view="map"] .hotel-map-rating strong {display:inline-grid;min-width:24px;min-height:20px;place-items:center;margin-right:0.3rem;border-radius:3px;background:#2f7a54;color:#fff} .hotel-destination-page[data-hotel-view="map"] .hotel-map-show {margin:0.55rem 0.75rem 0;min-height:30px;border-radius:5px} .hotel-destination-page[data-hotel-view="map"] .hotel-map-deal {display:grid;grid-template-columns:1fr auto;gap:0.3rem 0.75rem;align-items:end;margin-top:0.4rem;padding:0.5rem 0.65rem;border-top:1px solid #e2d7c3;color:#173856;text-decoration:none} .hotel-destination-page[data-hotel-view="map"] .hotel-map-deal>span {display:flex;flex-direction:column;align-items:flex-start} .hotel-destination-page[data-hotel-view="map"] .hotel-map-deal>span:nth-child(2) {align-items:flex-end} .hotel-destination-page[data-hotel-view="map"] .hotel-map-deal small {color:#657581;font-size:0.6rem;font-weight:500} .hotel-destination-page[data-hotel-view="map"] .hotel-map-deal b {grid-column:1 / -1;display:block;margin-top:0.15rem;padding:0.38rem 0.65rem;border-radius:5px;background:#d9921e;color:#1d2d38;font-size:0.7rem;text-align:center} .hotel-destination-page[data-hotel-view="map"] .hotel-map-caption {margin:0.45rem 0 0;font-size:0.62rem} .hotel-destination-page[data-hotel-view="map"] .hotel-map-privacy {margin-top:0.45rem;font-size:0.63rem} .hotel-destination-page[data-hotel-view="map"] .hotel-map-pin {width:auto;min-width:58px;height:34px;padding:0 0.5rem;transform:translate(-50%,-100%);border:2px solid var(--paper);border-radius:7px;background:#173856;color:#fff;font-size:0.72rem;white-space:nowrap} .hotel-destination-page[data-hotel-view="map"] .hotel-map-pin:hover,.hotel-destination-page[data-hotel-view="map"] .hotel-map-pin:focus-visible {transform:translate(-50%,-100%) scale(1.08)} .hotel-destination-page[data-hotel-view="map"] .hotel-map-fallback {color:#4f6975;background:linear-gradient(rgba(250,246,236,.52),rgba(250,246,236,.52)),repeating-linear-gradient(25deg,transparent 0 35px,rgba(45,96,126,.12) 36px 38px),repeating-linear-gradient(115deg,transparent 0 52px,rgba(45,96,126,.11) 53px 55px),#dbe9df} @media (max-width:900px) {.hotel-destination-page[data-hotel-view="map"] .hotel-map-layout {grid-template-columns:1fr} .hotel-destination-page[data-hotel-view="map"] .hotel-map-figure {grid-column:1;grid-row:1} .hotel-destination-page[data-hotel-view="map"] .hotel-map-list {grid-column:1;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none} .hotel-destination-page[data-hotel-view="map"] .hotel-results-map {height:min(70vh,660px);min-height:480px}} @media (max-width:600px) {.hotel-destination-page[data-hotel-view="map"] .hotel-map-list {grid-template-columns:1fr} .hotel-destination-page[data-hotel-view="map"] .hotel-results-map {height:520px;min-height:420px}}
