/* Generated by build-destination-css.mjs; edit the source stylesheets. */
/* experience.css */

:root{font-family:'DM Sans',sans-serif;color:#123446;background:#f3f8f9;font-synthesis:none;--ink:#10374a;--teal:#007b7d;--aqua:#d4f3f1;--coral:#ee674f;--line:#dce7e9;--muted:#58717b;--white:#fff}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f58d60;outline-offset:3px}[hidden]{display:none!important}.wrap{max-width:1700px;padding-inline:28px;margin:auto}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;left:20px;top:-60px;z-index:200;background:white;padding:12px}.skip:focus{top:12px}
.header{height:70px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:17px;font-weight:800;letter-spacing:-.6px;color:var(--ink);white-space:nowrap}.brand-icon{display:grid;place-items:center;background:var(--ink);color:#ff8b6d;width:34px;height:34px;border-radius:12px;font-size:24px}.header-description{font-size:14px;color:var(--muted)}.header #method-button{margin-left:auto}.text-button{background:none;border:0;padding:8px 4px;font-size:14px;font-weight:600;color:var(--muted)}.text-button:hover{color:var(--teal)}.pilot-badge{font-size:12px;font-weight:700;letter-spacing:1px;color:#6a7f88}
.destination-bar{display:flex;align-items:center;gap:24px;padding-block:20px}.destination-mini{display:flex;align-items:center;gap:13px;margin-right:auto}.destination-image{width:60px;height:60px;overflow:hidden;border-radius:18px;background:var(--aqua)}.destination-image img{width:100%;height:100%;object-fit:cover}.destination-mini h1{font:800 30px/1.1 Manrope,sans-serif;letter-spacing:-1px;margin:0}.destination-dot{color:var(--coral)}.destination-mini p{margin:4px 0 0;color:var(--muted);font-size:13px}.search{display:flex;gap:10px;align-items:center;width:290px;padding:12px 16px;border:1px solid var(--line);border-radius:24px;background:white;color:var(--muted)}.search span[aria-hidden]{font-size:22px;line-height:20px}.search input{background:none;border:0;outline:0;min-width:0;width:100%;font-size:14px;color:var(--ink)}.trip-control{position:relative;min-width:270px;z-index:20}.trip-control>summary{display:flex;align-items:center;gap:12px;list-style:none;border:1px solid #c4dedf;padding:12px 15px;border-radius:24px;background:#e5f4f3;font-size:13px;cursor:pointer}.trip-control summary::-webkit-details-marker{display:none}.trip-control>summary>span:first-child{font-weight:650}.trip-control>summary>strong{font-size:13px;font-weight:500;max-width:245px}.trip-control>summary>span:last-child{margin-left:auto}.trip-control[open]>summary{outline:2px solid #43afa8}#trip-form{position:absolute;right:0;top:calc(100% + 10px);width:360px;padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 15px 45px #17384725}#trip-form label{display:grid;gap:5px;font-size:14px;font-weight:600}input[type=date],select{border:1px solid #d6e2e5;border-radius:9px;padding:9px 11px;background:white;color:var(--ink);min-width:0;font-size:14px}#trip-form button,#trip-message{grid-column:1/-1}#trip-message{margin:0;font-size:13px;color:var(--muted)}.primary{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border:0;border-radius:10px;background:var(--ink);color:white;font-size:14px;line-height:1.35;font-weight:650;text-align:center}.primary:hover{background:#006f75;text-decoration:none}
.collections{display:flex;align-items:center;gap:12px;overflow-x:auto;padding:0 0 16px;scrollbar-width:thin}.collection{display:flex;align-items:center;gap:10px;white-space:nowrap;border:1px solid var(--line);background:white;padding:10px 16px 10px 10px;border-radius:16px;font-size:14px;font-weight:650;transition:background .15s,border-color .15s}.collection-symbol{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;font-size:21px}.collection-symbol.all{color:#d54d39;background:#ffe4dc}.collection-symbol.hotels{color:#176c84;background:#ddf0f5}.collection-symbol.luxury{color:#84611a;background:#fff1be}.collection-symbol.hostels{color:#527125;background:#e6f3cb}.collection-symbol.experiences{color:#ae2d74;background:#fbe0ee}.collection.active{border-color:#e9735d;background:#fff0eb;box-shadow:inset 0 0 0 1px #e9735d}.collection:hover{border-color:#6ca7ad}.filter-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-block:1px solid var(--line);flex-wrap:wrap}.filter-label{font-size:13px;color:var(--muted);font-weight:600;margin-right:2px}.filter-row select{font-size:14px;background:#f9fbfc;padding:8px 10px;border-color:#dae6e8}.check-filter{display:flex;gap:7px;align-items:center;font-size:14px;padding-inline:4px}.check-filter input,.compare-toggle input{accent-color:var(--teal);width:16px;height:16px}.filter-row #reset{margin-left:auto}.results-line{display:flex;align-items:center;justify-content:space-between;min-height:47px;gap:12px}.results-line p{font-size:14px;font-weight:600;margin:0}.results-line>div{display:flex;align-items:center;gap:20px}.sort-label{font-size:13px;color:var(--muted)}.sort-label select{border:0;background:transparent;padding:6px;font-size:13px;font-weight:600}.map-toggle{border:0;background:#dcefed;color:#075f66;font-size:14px;font-weight:650;padding:7px 12px;border-radius:8px}
.explore-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px;height:calc(100dvh - 320px);min-height:590px}.results{overflow:auto;padding:0 6px 12px 0;display:flex;flex-direction:column;gap:15px;scrollbar-width:thin;scrollbar-color:#adcacc transparent}.stay-card{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s;flex-shrink:0}.stay-card:hover{border-color:#70aaa9;box-shadow:0 5px 18px #19495513}.stay-card.is-selected{border:2px solid var(--teal);box-shadow:0 0 0 3px #0b97961a}.place-photo{position:relative;height:143px;overflow:hidden;background:#dfebef}.place-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.stay-card:hover .place-photo img{transform:scale(1.025)}.image-credit{position:absolute;right:7px;bottom:6px;background:#103744ba;color:white;font-size:12px;line-height:1.2;padding:3px 5px;border-radius:4px;max-width:92%}.image-credit:hover{color:white}.photo-missing{display:grid;place-items:center;background:#d4e9eb;color:#305868;padding:12px;font-size:14px}.photo-unavailable{font-size:13px}.card-content{padding:14px 15px 12px}.stay-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.stay-card h2{font:800 17px/1.35 Manrope,sans-serif;margin:0;letter-spacing:-.3px}.stay-card h2 button{font:inherit;text-align:left;border:0;background:none;padding:0;color:var(--ink)}.location{font-size:12px;color:var(--muted);margin:5px 0 0}.score-button{background:#d7f0e9;border:0;border-radius:10px;color:#0e645c;min-width:61px;padding:7px 8px;line-height:1;font-size:21px;font-weight:800;flex-shrink:0}.score-button small{display:block;font-size:12px;font-weight:500;line-height:1.3;margin-top:5px;white-space:nowrap}.venue-symbol{display:grid;place-items:center;border-radius:10px;width:44px;height:44px;background:#fce4f0;color:#bb377f;font-size:24px}.stay-tags{margin-top:10px;font-size:12px;line-height:1.4}.stay-tags span{background:#eaf3f6;color:#266378;padding:4px 7px;border-radius:5px;display:inline-block}.stay-card[data-kind=hostel] .stay-tags span{background:#eef5db;color:#55752b}.stay-card[data-kind=experience] .stay-tags span{background:#ffedf5;color:#9a3570}.card-rank{font-size:12px;color:var(--muted);margin:9px 0 0}.compact-actions{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding-top:9px;border-top:1px solid #edf2f3}.locate-button{padding:2px 0;border:0;background:none;color:var(--teal);font-size:13px;font-weight:700}.compare-toggle{display:flex;align-items:center;font-size:12px;gap:5px;cursor:pointer}.ticket-tag{font-size:12px;color:var(--muted)}.empty{padding:30px 20px;background:white;border-radius:16px}.empty h2{font:700 20px Manrope}.list-only{grid-template-columns:1fr;height:auto;min-height:0}.list-only .results{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));overflow:visible}
.map-panel{position:relative;overflow:hidden;border-radius:20px;border:1px solid #c2dce0;background:#c3e9ec;min-width:0;height:100%;isolation:isolate}#destination-map{height:100%;width:100%;min-height:100%}.map-toolbar{position:absolute;z-index:4;top:14px;left:14px;right:54px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 13px;border:1px solid #ffffffb8;border-radius:12px;background:#ffffffef;box-shadow:0 2px 10px #10374410;font-size:12px;color:#34505e}.map-toolbar>span{display:flex;align-items:center;gap:6px}.legend-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:6px}.legend-dot:first-child{margin:0}.legend-dot.hotel{background:#ffffff;border:1px solid #174653}.legend-dot.hostel{background:#b8d578}.legend-dot.experience{background:#d25597}.map-toolbar .text-button{font-size:12px;padding:6px 0;white-space:nowrap}.map-help{position:absolute;bottom:27px;right:12px;z-index:2;background:#ffffffdb;color:#456671;border-radius:5px;padding:4px 7px;font-size:12px;pointer-events:none}.map-pin{background:white;border:2px solid white;border-radius:25px;box-shadow:0 2px 8px #163c4b40;min-width:40px;height:35px;padding:0 9px;color:#214558;font-size:13px;font-weight:700;transition:box-shadow .15s,background .15s,font-size .15s;z-index:1}.map-pin.hostel{background:#e7f4cf;border-color:#e7f4cf}.map-pin.experience{min-width:34px;height:34px;border-color:white;background:#c8448c;color:white;font-size:17px;padding:0 8px}.map-pin.selected{background:#103c52;color:#fff;border-color:#103c52;box-shadow:0 0 0 4px #fff9,0 3px 16px #19465266;z-index:4}.map-pin.nearby{font-weight:800;border-color:#fff;box-shadow:0 0 0 3px #e86ca840,0 3px 9px #46304855;z-index:3}.map-pin.experience.nearby{background:#b62673;font-size:19px;min-width:38px;height:38px}.map-pin:hover{box-shadow:0 0 0 3px #13434f33}.maplibregl-popup-content{border-radius:14px!important;padding:16px!important;font-family:'DM Sans',sans-serif;font-size:14px;color:var(--ink);min-width:210px}.pin-group{display:grid;margin-top:8px}.pin-group button{display:flex;justify-content:space-between;gap:12px;text-align:left;border:0;border-top:1px solid var(--line);padding:10px 0;background:none;font-size:14px}.maplibregl-ctrl-attrib{font-size:10px!important}.map-unavailable{padding:80px 24px;font-size:16px}
.map-selection{position:absolute;z-index:5;left:14px;top:70px;bottom:33px;width:350px;max-width:calc(100% - 28px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #fff;border-radius:16px;box-shadow:0 8px 35px #173f4b32;background:white}.place-close{position:absolute;right:10px;top:10px;z-index:3;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:#fff;color:#294958;font-size:23px;box-shadow:0 2px 8px #163b4922}.map-selection .place-photo{height:142px;flex-shrink:0}.place-heading{padding:13px 15px 8px}.place-title-row{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.3px;color:#557a83}.place-heading h2{font:800 20px/1.3 Manrope,sans-serif;letter-spacing:-.4px;margin:4px 0 8px}.area-pill{display:block;margin:2px 0 4px;padding:7px 8px;text-align:left;background:#eef7f8;border:0;border-radius:7px;font-size:12px;line-height:1.5;color:#2e6875}.area-pill span{display:block;color:#55727a}.area-pill strong{font-size:14px}.place-tabs{display:flex;padding:0 13px;border-bottom:1px solid var(--line);flex-shrink:0}.place-tabs button{border:0;background:none;padding:11px 8px;border-bottom:3px solid transparent;font-size:13px;font-weight:650;white-space:nowrap;color:var(--muted)}.place-tabs button[aria-selected=true]{color:var(--teal);border-bottom-color:var(--teal)}.place-body{padding:16px;overflow:auto;min-height:90px;flex:1;scrollbar-width:thin;font-size:16px}.place-body>p:first-child{margin-top:0}.place-body p{margin:8px 0 14px;font-size:16px;line-height:1.55}.place-body h3{font:800 16px/1.35 Manrope,sans-serif;margin:19px 0 7px}.place-body h3:first-child{margin-top:0}.inclusion-highlight{padding:12px;border-left:3px solid #ee886d;border-radius:5px;background:#fff0e9}.inclusion-highlight p{font-size:14px;margin:4px 0 0;line-height:1.5}.place-body .small-caution{font-size:14px;line-height:1.5;color:#795645;padding:11px 0;border-bottom:1px solid var(--line)}.place-body .section-note,.section-note{color:var(--muted);font-size:12px!important;line-height:1.6}.nearby-place{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #e8eff0;padding:12px 0}.nearby-icon{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;background:#fae8f2;border-radius:8px;color:#b7387d}.nearby-place>span:nth-child(2){min-width:0;flex:1}.nearby-place strong{display:block;font-size:14px;line-height:1.35;font-weight:650}.nearby-place small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.nearby-place b{font-size:12px;white-space:nowrap}.nearby-place:hover strong{color:var(--teal)}.place-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 14px;border-top:1px solid var(--line);flex-shrink:0;background:white}.place-bottom .primary{font-size:13px;padding:10px 11px}.operator-link{font-size:12px;font-weight:650;white-space:nowrap}.detail-accordion{border-top:1px solid var(--line);padding:13px 0}.detail-accordion summary{font-size:14px;font-weight:650;cursor:pointer}.inclusion-list{margin:15px 0;font-size:14px}.inclusion-list dt{font-weight:700;color:#285969;margin-top:12px}.inclusion-list dd{margin:4px 0 0;color:#4b626c;line-height:1.55}.source-list{display:grid;gap:8px;margin-top:12px;font-size:13px}.review-summary section{padding-left:12px;border-left:3px solid #2da28c}.review-summary .cons{border-color:#ed9876;margin-top:20px}.review-summary section p{font-size:14px}.rating-sources,.benchmark-table{width:100%;border-collapse:collapse;font-size:12px;margin:10px 0}.rating-sources th,.benchmark-table th{text-align:left;font-size:12px;color:var(--muted);padding:7px 4px;border-bottom:1px solid var(--line)}.rating-sources td,.benchmark-table td{padding:8px 4px;border-bottom:1px solid #edf1f2}.rating-sources td:nth-child(2),.benchmark-table td:last-child{white-space:nowrap}.area-explanation{padding:13px;margin:20px 0 10px;border-radius:10px;background:#edf7f7}.area-explanation p{font-size:14px}.rate-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.rate-heading h3{margin:0}.trip-summary{font-size:14px!important}.plan-label{font-size:14px;font-weight:650;display:grid;gap:8px;margin:15px 0}.plan-label select{width:100%}.plan-extra{background:#fff3e8;border-radius:10px;padding:12px;margin:15px 0;font-size:14px}.plan-extra p{font-size:14px;margin:4px 0 0}.quote-status{padding:15px;background:#f1f6f7;border-radius:10px;margin-bottom:15px}.quote-status strong{font-size:14px}.quote-status p{font-size:13px;margin:4px 0 0}.booking-link{width:100%}
.footer{display:flex;align-items:center;gap:16px;padding-block:14px;font-size:12px;color:#65808a}.footer>span{white-space:nowrap}.footer .text-button{font-size:12px}.footer #photo-credit{margin-left:auto;font-size:12px;color:#657f88}.compare-bar{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:18px;background:#fff;padding:13px 20px;border:1px solid var(--line);border-radius:16px;box-shadow:0 5px 35px #164b5130;white-space:nowrap;font-size:14px}dialog{border:0;border-radius:20px;padding:25px;max-width:min(1000px,94vw);max-height:88dvh;color:var(--ink);font-size:16px;box-shadow:0 25px 90px #143f5155}dialog::backdrop{background:#11384760;backdrop-filter:blur(3px)}.dialog-close{float:right;border:0;border-radius:50%;background:#edf5f6;width:32px;height:32px;font-size:23px}dialog h2{font:800 25px Manrope;margin:0 35px 20px 0}dialog h3{font:800 18px Manrope;margin-top:24px}dialog p{max-width:800px}.comparison-scroll{max-width:85vw;overflow:auto}.comparison{border-collapse:collapse;min-width:700px;font-size:14px}.comparison th,.comparison td{padding:13px;border:1px solid var(--line);text-align:left;vertical-align:top;min-width:170px}.comparison th{background:#eaf5f4}.comparison td{line-height:1.5}.comparison th:first-child{min-width:120px}
@media(min-width:1500px){.explore-layout{grid-template-columns:360px minmax(0,1fr)}.map-selection{width:375px}.map-selection .place-photo{height:170px}}
@media(max-width:1100px){.wrap{padding-inline:18px}.header-description{display:none}.destination-bar{gap:16px}.search{width:225px}.trip-control{min-width:230px}.trip-control>summary>strong{max-width:160px}.explore-layout{grid-template-columns:300px minmax(0,1fr)}.map-selection{width:315px}.place-heading h2{font-size:18px}.map-selection .place-photo{height:116px}.place-heading{padding:10px 12px 6px}.place-tabs{padding:0 8px}.place-bottom{flex-wrap:wrap;padding:9px 12px}.place-bottom .primary{flex:1}.map-toolbar>span{gap:3px}.map-toolbar{padding-inline:8px}.legend-dot{margin-left:3px}}
@media(max-width:850px){.trip-control{min-width:215px}.trip-control>summary{gap:6px}.trip-control>summary>span:first-child{display:none}.search{width:200px}.destination-mini h1{font-size:26px}.destination-image{width:48px;height:48px}.explore-layout{grid-template-columns:275px minmax(0,1fr);gap:12px}.card-content{padding:12px}.map-selection{width:calc(100% - 24px);left:12px;top:auto;bottom:32px;max-height:58%}.map-selection .place-photo{height:90px}.place-heading{padding:8px 12px}.place-heading h2{font-size:17px;margin:3px 0}.area-pill{padding:3px 7px;margin-top:5px}.area-pill span{display:inline}.place-body{min-height:90px}.place-tabs button{padding:9px 7px}.place-title-row .score-button{font-size:18px}.place-title-row .score-button small{font-size:12px}.map-toolbar{right:48px;font-size:12px}.footer{flex-wrap:wrap}.footer #photo-credit{margin:0}}
@media(max-width:700px){.wrap{padding-inline:14px}.header{height:58px;gap:10px}.brand{font-size:15px}.brand-icon{width:30px;height:30px}.pilot-badge{display:none}.header .text-button{font-size:12px}.destination-bar{padding-block:15px;gap:10px;flex-wrap:wrap}.destination-mini{gap:9px;flex:1}.destination-mini h1{font-size:26px}.destination-mini p{font-size:12px}.destination-image{width:46px;height:46px;border-radius:13px}.search{order:3;width:100%;padding:10px 13px}.trip-control{min-width:0;max-width:50%}.trip-control>summary{border-radius:14px;padding:11px 10px;font-size:12px}.trip-control>summary>strong{font-size:12px;max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-control>summary>span:last-child{display:none}#trip-form{position:fixed;top:135px;left:14px;right:14px;width:auto;max-width:420px;margin:auto;padding:18px;z-index:40}.collections{gap:8px;padding-bottom:13px}.collection{padding:8px 12px 8px 8px;border-radius:13px;gap:7px;font-size:13px}.collection-symbol{width:25px;height:25px;border-radius:8px;font-size:18px}.filter-row{gap:8px;padding:10px 0}.filter-label{display:none}.filter-row select{padding:7px 8px;font-size:13px}.check-filter{font-size:13px;padding:0}.filter-row #reset{font-size:12px}.results-line{min-height:45px}.results-line p{font-size:13px}.results-line>div{gap:8px}.sort-label{font-size:12px}.sort-label select{max-width:112px;font-size:12px}.map-toggle{font-size:13px;padding:7px 9px}.explore-layout{display:block;height:calc(100dvh - 140px);min-height:610px}.explore-layout:not(.list-only)>.results{display:none}.list-only{height:auto;min-height:0}.list-only .results{display:grid;grid-template-columns:1fr;overflow:visible;padding:0;gap:15px}.place-photo{height:170px}.stay-card h2{font-size:19px}.card-content{padding:15px}.map-panel{border-radius:17px;min-height:610px}.map-selection{max-width:calc(100% - 20px);width:calc(100% - 20px);left:10px;bottom:30px;top:auto;height:58%;max-height:450px;border-radius:14px}.map-selection .place-photo{height:90px}.place-heading h2{font-size:17px}.place-heading .eyebrow{font-size:12px}.place-title-row .score-button{padding:5px 7px;min-width:57px}.place-body{padding:12px 14px}.place-tabs button{font-size:13px;padding:9px 7px}.place-bottom{flex-wrap:nowrap}.place-bottom .primary{font-size:12px}.operator-link{font-size:12px}.map-toolbar{font-size:12px;left:10px;top:10px;right:46px;border-radius:10px}.map-help{display:none}.footer{gap:10px;padding-block:16px}.footer>span{font-size:12px;white-space:normal}.footer #photo-credit{font-size:12px}.compare-bar{bottom:12px;width:calc(100% - 24px);gap:9px;padding:10px 12px;font-size:13px;justify-content:space-between}.compare-bar .primary{font-size:13px;padding:10px}.comparison-scroll{max-width:80vw}dialog{padding:20px}.area-pill span{display:block}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.place-body{min-height:0}
.nearby-row{border-bottom:1px solid #e8eff0}.nearby-row .nearby-place{border-bottom:0;padding-bottom:4px}.route-link{display:block;width:max-content;margin:0 0 9px 37px;font-size:12px;font-weight:600}
@media(max-width:700px){.map-selection[data-tab=reviews],.map-selection[data-tab=prices]{height:78%;max-height:none}.map-selection[data-tab=reviews] .place-photo,.map-selection[data-tab=prices] .place-photo{height:64px}}
@media(max-width:700px) and (max-height:720px){.map-selection .place-photo{height:64px}.place-heading h2{font-size:16px}.place-heading{padding-block:6px}.place-tabs button{padding-block:8px}}


/* map-first.css */
/* The map is the canvas. A selected place replaces the results rail. */
:root{--rail:380px;--detail:480px;--float-top:150px;--glass:#fffffff5;--shadow:0 8px 35px #173f4b20}
html,body{width:100%;height:100%;overflow:hidden}body{background:#bce5eb}.wrap{max-width:none;margin:0;padding:0}.header-description,.pilot-badge{display:none}
.header{position:fixed;z-index:12;left:20px;top:18px;height:52px;padding:0 16px 0 10px;gap:16px;border:1px solid #fff;border-radius:17px;background:var(--glass);box-shadow:var(--shadow)}.header .brand{font-size:15px}.header #method-button{font-size:12px;padding:0}.brand-icon{width:31px;height:31px}.header .brand{gap:8px}
.destination-bar{position:fixed;z-index:13;top:18px;left:358px;right:20px;gap:14px;padding:0;height:52px;pointer-events:none}.destination-bar>*{pointer-events:auto}.destination-mini{padding:6px 14px 6px 6px;border-radius:17px;background:var(--glass);box-shadow:var(--shadow);gap:9px;margin-right:auto;height:52px}.destination-image{width:40px;height:40px;border-radius:12px}.destination-mini h1{font-size:23px}.destination-mini p{font-size:12px;margin:1px 0 0}.search{width:300px;height:52px;border:1px solid #fff;border-radius:17px;box-shadow:var(--shadow)}.trip-control{min-width:260px}.trip-control>summary{height:52px;border:1px solid #c4e4e3;border-radius:17px;box-shadow:var(--shadow);background:#f2ffff}.trip-control>summary>strong{max-width:210px}.trip-control>summary>span:first-child{display:none}
.collections{position:fixed;z-index:10;top:87px;left:20px;right:20px;gap:9px;padding:0 0 8px;pointer-events:none;scrollbar-width:none}.collection{pointer-events:auto;box-shadow:0 3px 14px #19495510;background:#fffffff5;padding:8px 13px 8px 9px;border-radius:14px;font-size:14px}.collection.active{background:#fff0eb}.collection-symbol.social{background:#d5f3eb;color:#12735e}
.explore-layout,.explore-layout.list-only{display:block;height:auto;min-height:0}.list-panel{position:fixed;z-index:8;left:20px;top:var(--float-top);bottom:43px;width:var(--rail);display:flex;flex-direction:column;border:1px solid #fff;border-radius:20px;background:var(--glass);box-shadow:var(--shadow);overflow:hidden}.filter-row{padding:13px 14px 10px;gap:7px;border:0;border-bottom:1px solid var(--line);flex:none;background:#f9fcfc}.filter-label{display:none}.filter-row select{font-size:13px;padding:7px 8px;max-width:180px}.check-filter{font-size:13px;padding:0}.filter-row #reset{font-size:12px;padding:3px;margin-left:auto}.results-line{padding:8px 14px;min-height:47px;flex:none}.results-line>div{gap:0}.results-line p{font-size:13px}.sort-label select{font-size:13px;max-width:126px}.results,.list-only .results{display:flex;flex-direction:column;overflow:auto;min-height:0;padding:0 10px 12px;gap:12px;scrollbar-gutter:stable}.stay-card{border-radius:14px;box-shadow:none}.stay-card:hover{box-shadow:none}.place-photo{height:160px}.stay-card h2{font-size:18px}.card-content{padding:13px}.card-rank{margin-top:8px}.stay-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.stay-tags .party-mini{display:inline-flex;align-items:center;gap:4px;border:0;border-radius:6px;background:#fbe3ef;color:#963665;font-size:12px;font-weight:700;padding:4px 7px}.map-toggle{position:fixed;z-index:10;left:calc(var(--rail) + 36px);top:var(--float-top);padding:11px 15px;border:1px solid #fff;border-radius:12px;background:var(--glass);box-shadow:var(--shadow);font-size:14px}.selection-open .list-panel,.selection-open .map-toggle,.map-focus .list-panel{display:none}.map-focus .map-toggle{left:20px}
.map-panel{position:fixed;inset:0;z-index:0;width:100vw;height:100dvh;border:0;border-radius:0;min-height:0;isolation:auto;overflow:hidden}.map-panel[hidden]{display:block!important}#destination-map{position:absolute;inset:0;min-height:0;height:100%;width:100%}.map-toolbar{top:auto;left:auto;right:16px;bottom:31px;padding:6px 10px;z-index:5;width:max-content;max-width:calc(100vw - 30px);border-radius:12px}.map-toolbar>span{gap:5px}.legend-dot.beach{background:#149986}.map-help{bottom:80px;right:18px}.maplibregl-ctrl-top-right{top:142px!important;right:10px!important}.maplibregl-ctrl-bottom-left{left:auto!important;right:12px!important;bottom:90px!important}.map-pin.experience.beach{background:#148a7a;font-size:19px}.map-pin.experience.bar{background:#9f568b}.map-pin.experience.beach.nearby{background:#066e5d}.map-pin.experience.bar.nearby{background:#8a3673}.map-pin.selected{background:#103c52!important;border-color:white!important}
.map-selection{position:fixed;z-index:9;left:20px;top:var(--float-top);bottom:43px;width:var(--detail);max-width:calc(100vw - 40px);height:auto;max-height:none;border-radius:20px;box-shadow:0 12px 45px #153e4b30;background:#fff;display:flex;flex-direction:column}.place-scroll{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain}.map-selection .place-photo{height:200px;flex:none}.place-close{left:12px;right:auto;top:12px;width:auto;height:36px;padding:0 13px;border-radius:20px;font-size:14px;font-weight:700}.place-heading{padding:17px 20px 12px}.place-heading h2{font-size:25px;line-height:1.2;margin:5px 0 9px;letter-spacing:-.6px}.place-title-row{gap:14px}.place-title-row .score-button{font-size:23px;padding:10px;min-width:70px}.eyebrow{font-size:12px}.score-strip{display:flex;gap:8px;margin-top:7px}.score-chip{flex:1;border:0;border-radius:10px;padding:9px 11px;text-align:left;background:#e9f3f6;color:#246479;font-size:13px;white-space:nowrap}.score-chip strong{font-size:19px;margin-right:4px}.score-chip.party{background:#fae6f0;color:#963665}.score-chip .score-max{font-size:12px;margin-right:6px;opacity:.75}.place-tabs{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:1px;background:#fff;padding:0 14px;border-bottom:1px solid var(--line)}.place-tabs button{font-size:14px;padding:12px 7px}.place-body{overflow:visible;flex:none;padding:20px;min-height:0;font-size:16px}.place-body p{font-size:16px}.place-body .section-note{font-size:13px}.place-body h3{font-size:17px}.place-summary{font-size:17px!important;line-height:1.5!important}.place-bottom{flex:none;min-height:64px;padding:12px 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);background:#fff;flex-wrap:nowrap}.place-bottom .primary{font-size:14px;flex:none}.operator-link{font-size:13px}.place-body .small-caution{font-size:14px}.nearby-place{width:100%}.nearby-place strong{font-size:14px}.nearby-place small{font-size:12px}.rating-sources{font-size:14px}.rating-sources small{display:block;font-size:12px;color:var(--muted)}.source-agreement{background:#eff6f5;border-radius:10px;padding:12px;font-size:14px!important}.source-agreement strong{display:block}.source-agreement.mixed{background:#fff3e3}.area-explanation{background:#edf5f9;border-radius:12px;padding:14px}.area-explanation p{font-size:14px}.area-explanation h3{margin-top:0}.party-lead{display:flex;align-items:center;gap:15px;padding:15px;background:#fae6f0;border-radius:14px;margin-bottom:16px}.party-big{font:800 37px/1 Manrope,sans-serif;color:#963665;white-space:nowrap}.party-big small{font:500 14px 'DM Sans',sans-serif}.party-lead p{margin:0;font-size:14px}.party-lead strong{display:block;color:#7f325a}.party-dimension{padding:14px 0;border-bottom:1px solid var(--line)}.party-dimension header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px}.party-dimension header span{font-size:12px;color:var(--muted)}.party-dimension p{font-size:14px;margin:8px 0}.party-meter{height:5px;border-radius:4px;background:#f4e8ee;overflow:hidden;margin-top:8px}.party-meter span{display:block;background:#bf5590;height:100%;border-radius:4px}.party-dimension .source-list{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;margin:0}.crowd-note{font-size:14px!important;padding:12px;background:#f5f8f8;border-radius:10px}.party-caveats{padding-left:18px;font-size:14px}.party-caveats li{margin:8px 0}
.footer{position:fixed;z-index:6;bottom:4px;left:20px;right:auto;padding:3px 8px;background:#ffffffe8;border-radius:7px;gap:10px;max-width:calc(100vw - 330px);font-size:11px}.footer #photo-credit{display:none}.footer>span{font-size:11px}.footer .text-button{font-size:11px;padding:1px}.compare-bar{z-index:25;bottom:30px;left:auto;right:20px;transform:none}.empty{padding:20px}
@media(min-width:1800px){:root{--rail:420px;--detail:560px}.map-selection .place-photo{height:245px}.place-heading{padding-inline:24px}.place-heading h2{font-size:28px}.place-body{padding:24px}}
@media(max-width:1200px){.header #method-button{display:none}.destination-bar{left:247px}.destination-mini p{display:none}.destination-mini{padding-right:12px}.search{width:230px}.trip-control{min-width:200px}.trip-control>summary>strong{max-width:180px}:root{--rail:340px;--detail:450px}.collection{padding-right:10px;font-size:13px;gap:7px}.collections{gap:7px}}
@media(max-width:900px){.destination-bar{gap:9px}.destination-image{display:none}.destination-mini{padding:8px 12px}.destination-mini h1{font-size:21px}.search{flex:1;width:180px}.trip-control{min-width:140px}.trip-control>summary>strong{max-width:118px}.trip-control>summary{gap:5px;padding:10px}.destination-bar{left:232px}.header{left:12px;padding-right:12px}.collections{left:12px;right:12px}.list-panel,.map-selection{left:12px}.map-toggle{left:calc(var(--rail) + 26px)}:root{--rail:320px;--detail:420px}.map-selection .place-photo{height:165px}.place-heading h2{font-size:22px}}
@media(max-width:700px){:root{--float-top:165px;--detail:calc(100vw - 24px);--rail:calc(100vw - 24px)}.header{top:9px;left:12px;right:12px;height:32px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;pointer-events:none}.brand{pointer-events:auto;font-size:13px!important;background:#fffffff0;border-radius:10px;padding:4px 8px 4px 4px}.brand-icon{width:23px;height:23px;border-radius:7px;font-size:19px}.header #method-button{display:block;pointer-events:auto;background:#fffffff0;padding:5px 9px;border-radius:8px;font-size:12px}.destination-bar{top:51px;left:12px;right:12px;height:44px;flex-wrap:nowrap;gap:7px}.destination-mini{height:44px;padding:7px 10px;flex:0 0 auto;margin:0;border-radius:12px}.destination-mini h1{font-size:20px}.destination-mini p{display:none}.search{order:0;min-width:0;flex:1;width:auto;height:44px;padding:9px;border-radius:12px}.search input{font-size:13px}.search span[aria-hidden]{display:none}.trip-control{max-width:100px;min-width:90px;flex:0 0 90px}.trip-control>summary{height:44px;border-radius:12px;padding:8px;font-size:12px}.trip-control>summary>strong{max-width:80px;font-size:12px}.trip-control>summary>span:last-child{display:none}#trip-form{top:104px;left:12px;right:12px;max-height:calc(100dvh - 125px);overflow:auto}.collections{top:108px;left:12px;right:0;gap:7px;padding-right:12px}.collection{padding:8px 10px 8px 8px;font-size:13px;border-radius:12px;gap:6px}.collection-symbol{width:25px;height:25px;font-size:18px}.list-panel{left:12px;top:var(--float-top);bottom:72px;width:calc(100vw - 24px);border-radius:16px}.explore-layout:not(.list-only) .results{display:flex}.filter-row{gap:7px;padding:10px 12px}.filter-row select{max-width:160px}.results-line{min-height:43px}.results{padding:0 8px 10px}.place-photo{height:170px}.map-toggle,.map-focus .map-toggle{top:auto;left:50%;bottom:24px;transform:translateX(-50%);border-radius:24px;background:var(--ink);color:white;min-width:138px}.map-selection,.map-selection[data-tab=reviews],.map-selection[data-tab=prices]{top:var(--float-top);bottom:48px;left:12px;width:calc(100vw - 24px);max-width:none;height:auto;max-height:none;border-radius:16px}.map-selection .place-photo,.map-selection[data-tab=reviews] .place-photo,.map-selection[data-tab=prices] .place-photo{height:145px}.place-heading{padding:14px}.place-heading h2{font-size:21px;margin:3px 0 7px}.place-title-row .score-button{font-size:21px;min-width:63px;padding:8px}.score-chip{font-size:12px;padding:8px}.score-chip strong{font-size:18px}.place-tabs{padding:0 8px}.place-tabs button{font-size:13px;padding:11px 6px}.place-body{padding:16px}.place-bottom{min-height:57px;padding:10px 12px;gap:6px}.place-bottom .primary{font-size:13px}.operator-link{font-size:12px}.map-toolbar{bottom:5px;right:7px;padding:3px 5px;border-radius:8px;font-size:10px;gap:6px;max-width:calc(100vw - 15px)}.map-toolbar .text-button{font-size:11px;padding:3px}.map-toolbar>span{gap:3px}.maplibregl-ctrl-top-right{top:159px!important;right:3px!important}.maplibregl-ctrl-bottom-left{bottom:40px!important;right:5px!important}.maplibregl-ctrl-bottom-right{bottom:0!important;max-width:100vw;opacity:1}.map-toolbar{bottom:28px}.selection-open .map-toolbar{display:none}.footer{left:7px;bottom:2px;max-width:calc(100vw - 35px);font-size:10px;pointer-events:none}.footer>span{font-size:10px}.footer .text-button{display:none}.footer{display:none}.compare-bar{bottom:75px;right:12px;left:12px;width:auto;padding:10px;gap:8px}.selection-open .compare-bar{bottom:53px}.map-help{display:none}.maplibregl-ctrl-attrib{font-size:9px!important}}
@media(max-height:740px) and (min-width:701px){.map-selection .place-photo{height:155px}.place-heading h2{font-size:22px}.place-heading{padding-block:13px}}
.place-scroll{position:relative}
.flags-preview{margin:15px 0 18px}.flags-preview h3{margin:0;font-size:16px}.flag-preview{display:inline-flex;align-items:center;gap:9px;width:100%;border:0;text-align:left;border-radius:10px;padding:10px 12px;margin-top:7px}.flag-preview>span:first-child{font-size:19px;font-weight:800}.flag-preview strong,.review-flag strong{display:block;font-size:14px}.flag-preview small,.review-flag small{display:block;font-size:12px;font-weight:400;margin-top:2px}.flag-preview.green{background:#e7f5ec;color:#256341}.flag-preview.red{background:#fff0ed;color:#964b3e}.flag-preview.mixed{background:#fff4dc;color:#856529}.review-flags{margin-bottom:24px}.review-flag{border:1px solid var(--line);border-radius:12px;margin:9px 0;overflow:hidden}.review-flag>summary{display:flex;align-items:center;gap:10px;padding:12px;cursor:pointer;list-style:none}.flag-mark{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:8px;font-size:17px;font-weight:800}.review-flag.green .flag-mark{color:#206a41;background:#dcf3e4}.review-flag.red .flag-mark{color:#9c4435;background:#ffe6df}.review-flag.mixed .flag-mark{color:#85621c;background:#fff1c7}.review-flag small{color:var(--muted)}.flag-evidence{padding:0 14px 14px}.flag-evidence article+article{border-top:1px solid var(--line);margin-top:13px;padding-top:7px}.flag-evidence p{font-size:14px}.flag-evidence a{font-size:13px}.benchmark-sources{display:grid;gap:4px;margin-top:6px;font-size:12px}.benchmark-table small{font-size:12px;color:var(--muted)}
.place-navigation{display:flex;flex:none;align-items:center;justify-content:space-between;padding:5px 12px;border-bottom:1px solid var(--line);background:#fff;min-height:44px}.place-navigation .place-close{position:static;height:32px;padding:0 8px;box-shadow:none;background:#eff6f5;color:#17696e}.place-navigation>span{font-size:12px;color:var(--muted)}
.footer #photo-credit{display:inline;font-size:11px;margin:0}
#event-legend{display:inline-flex;align-items:center;gap:4px}.legend-dot.event{background:#e7b843}
.map-pin.selected,.map-pin.selected:hover{z-index:6;box-shadow:0 0 0 3px #fff,0 0 0 9px #ff785f75,0 0 26px 12px #ff785f70,0 4px 14px #103c5266}

.collection-symbol.events{background:#fff0be;color:#8e6112}.map-pin.event{background:#ffda73;color:#674c19;font-size:19px}.info-disclaimer{border:0;background:none;text-align:left;color:#627c86;padding:0 14px 9px;font-size:11px;cursor:pointer;flex:none}.info-disclaimer:hover{text-decoration:underline}.more-filters{flex-basis:100%;font-size:13px}.more-filters>summary{cursor:pointer;color:#176b73;font-weight:700;padding:5px 0}.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:10px 0;max-height:29dvh;overflow:auto;overscroll-behavior:contain}.filter-grid>label{display:grid;gap:4px;color:#536e79;font-size:12px}.filter-grid select{width:100%;max-width:none}.filter-grid fieldset{grid-column:1/-1;border:1px solid #d7e8e9;border-radius:8px;display:flex;flex-wrap:wrap;gap:9px;padding:9px}.filter-grid legend{font-size:12px}.filter-grid fieldset label{display:flex;align-items:center;gap:5px;font-size:12px}.filter-note{grid-column:1/-1;color:#657e87;font-size:11px;margin:0;line-height:1.4}.listing-notice{font-size:12px!important;line-height:1.55;color:#68818a;border-top:1px solid var(--line);padding-top:14px;margin:22px 0 0}.listing-notice button{padding:0;font-size:12px}.events-intro{padding:10px 4px}.events-intro h2{font-size:21px;margin:0 0 5px;letter-spacing:-.4px}.events-intro p{font-size:13px;margin:0 0 6px;color:#526f7b}.events-intro small{display:block;font-size:11px;color:#6a838d;line-height:1.5;margin-top:7px}.events-intro button{padding:0;font-size:13px}.event-card{border:1px solid #e5e9e4;background:#fff;border-radius:14px;padding:15px 12px;display:flex;gap:12px;cursor:pointer}.event-date{border-radius:9px;background:#fff4d5;color:#745510;text-align:center;width:49px;height:61px;flex:none;display:flex;flex-direction:column;justify-content:center}.event-date small{text-transform:uppercase;font-size:11px;font-weight:700}.event-date strong{font-size:25px;line-height:1.1}.event-card h2{margin:5px 0;font-size:17px;line-height:1.3}.event-card h2 button{border:0;padding:0;text-align:left;background:none;color:var(--ink);font:inherit;font-weight:750}.event-card p{font-size:12px;color:#587581;margin:4px 0}.event-card .event-meta{font-size:11px;color:#778d94}.event-card .text-button{font-size:12px;padding:6px 0 0}.event-empty{padding:15px;border-radius:12px;background:#fff8e9;font-size:14px}.event-empty p{font-size:13px;margin-bottom:0}.regular-programs{padding:8px 4px}.regular-programs h3{margin:6px 0;font-size:17px}.regular-programs>.section-note{font-size:12px}.program{border:1px solid #e6e0ed;border-radius:10px;background:#fbf7fd;margin:8px 0;padding:12px}.program summary{cursor:pointer;list-style:none}.program summary strong{font-size:14px;display:block}.program summary span{display:block;font-size:11px;color:#85618c;margin-top:4px}.program p{font-size:13px!important;line-height:1.5}.program a{font-size:12px}.event-footnote{font-size:11px;line-height:1.5;color:#6b8189;padding:0 4px}.event-hero{padding:26px 22px 22px;background:linear-gradient(125deg,#ffda73,#fff2be);color:#725620}.event-hero>span{display:block;font-size:44px;line-height:1}.event-hero strong{font-size:14px}.event-hero p{margin:7px 0 0;font-size:22px;font-weight:800}.event-when{font-size:16px;font-weight:700;color:#8f661b;margin:10px 0 4px}.event-suggestion{display:grid;gap:4px;text-align:left;border:1px solid #ece2c9;background:#fffbf1;border-radius:10px;padding:12px;width:100%;margin:9px 0;color:#3a5360}.event-suggestion>span{font-size:11px;color:#98782f}.event-suggestion strong{font-size:14px}.event-suggestion small{font-size:11px;color:#677f88}.stay-events{margin-top:23px}.stay-events .rate-heading h3{margin:0}.stay-events .rate-heading button{font-size:12px}.stay-events .regular-programs{padding:8px 0}
@media(max-width:700px){.map-selection{top:max(245px,38dvh)}.map-selection[data-tab=party],.map-selection[data-tab=reviews],.map-selection[data-tab=prices]{top:max(245px,38dvh)}.map-selection .place-photo{height:125px}}
.filter-row #reset{order:1}.more-filters{order:2}.filter-row:has(.more-filters[open]){max-height:55%;overflow:auto;align-content:start}.filter-grid{max-height:none;overflow:visible}.info-disclaimer,.filter-note,.events-intro small,.event-date small,.event-card .event-meta,.program summary span,.event-footnote,.event-suggestion>span,.event-suggestion small{font-size:12px}.filter-grid>label,.filter-grid fieldset label{font-size:14px}.event-card,.events-intro,.event-empty,.regular-programs,.event-footnote{flex-shrink:0}.basic-label{color:#7b687a!important;background:#f3eef3!important}

/* Missing licensed property photography should not consume the same space as a real image. */
.stay-card .place-photo.photo-missing{height:48px;place-items:center start;padding:0 14px;background:linear-gradient(100deg,#edf6f6,#f8fbf8);border-bottom:1px solid var(--line);font-size:11px;font-weight:700;letter-spacing:.02em;color:#69818a}
.map-selection .place-photo.photo-missing{height:68px;min-height:68px;place-items:center start;padding:0 20px;background:linear-gradient(100deg,#edf6f6,#f8fbf8);border-bottom:1px solid var(--line);font-size:12px;font-weight:700;color:#69818a}
@media(max-width:700px){.stay-card .place-photo.photo-missing{height:44px}.map-selection .place-photo.photo-missing{height:56px;min-height:56px}}
.place-photo.area-photo .photo-context{position:absolute;top:8px;left:9px;z-index:1;max-width:calc(100% - 18px);border-radius:6px;padding:4px 7px;background:#173a48d9;color:#fff;font-size:11px;font-weight:700;line-height:1.2;box-shadow:0 1px 5px #09293524}
.map-selection .place-photo.area-photo .photo-context{top:12px;left:15px;font-size:12px}
.map-pin.hotel,.map-pin.hostel{z-index:4}
.map-pin.experience.background{opacity:.32;z-index:1;box-shadow:none}
.map-pin.experience.background:hover,.map-pin.experience.background:focus-visible{opacity:.85;z-index:2}
.map-pin.onsite-group{z-index:5;min-width:76px;height:28px;padding:0 9px;background:#fff1f8;color:#823d64;border:1px solid #d995b8;font-size:12px;white-space:nowrap}
.map-pin.onsite-group:hover,.map-pin.onsite-group:focus-visible{background:#f9d6e8}
.planner-fab #planner-count[hidden]{display:none}
.score-pending{align-self:flex-start;max-width:88px;padding:8px;border-radius:9px;background:#edf2f3;color:#5d7076;font-size:11px;font-weight:700;line-height:1.2;text-align:center}


/* booking-first.css */
:root{--float-top:151px;--rail:400px;--detail:520px}
.header .brand{letter-spacing:-.6px}.booking-intro{padding:18px 18px 14px;border-bottom:1px solid #e4eeef;background:linear-gradient(115deg,#fff 62%,#e8f8f5)}.booking-kicker{font-size:10px;letter-spacing:1.7px;font-weight:800;color:#ae5a46}.booking-intro h2{font:800 22px/1.2 Manrope,sans-serif;letter-spacing:-.7px;margin:7px 0 5px}.booking-intro p{font-size:12px;color:#55717b;line-height:1.45;margin:0}.filters-panel{flex:none;border-bottom:1px solid #dce9e9;background:#f9fcfc}.filters-panel>summary{list-style:none;cursor:pointer;padding:10px 17px;color:#1e6570;font-size:12px;font-weight:750}.filters-panel>summary::-webkit-details-marker{display:none}.filters-panel>summary:after{content:'⌄';float:right;font-size:17px;line-height:11px}.filters-panel[open]>summary:after{content:'⌃'}.filters-panel .filter-row{border-bottom:0;max-height:43dvh;overflow-y:auto;padding-top:5px}.filters-panel .filter-grid{max-height:none;overflow:visible}.filters-panel[hidden]{display:none}
.results-line{min-height:39px}.stay-card .place-photo{height:140px}.stay-card h2{font-size:17px}.card-content{padding:12px 14px 13px}.stay-tags{margin-top:8px}.stay-tags>span:first-child{font-weight:700}.party-promise{margin:9px 0 0;color:#405f69;font-size:13px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-evidence{margin-top:8px;color:#6a818a;font-size:11px}.card-evidence summary{cursor:pointer}.card-evidence p{margin:5px 0}.compact-actions{gap:8px;flex-wrap:wrap}.card-book{display:inline-flex;align-items:center;justify-content:center;gap:4px;border:0;border-radius:9px;padding:9px 11px;background:#103c52;color:#fff;font-size:12px;font-weight:750;cursor:pointer}.card-book:hover{background:#087681}.compact-actions .locate-button{font-size:12px}.compact-actions .compare-toggle{margin-left:auto}.card-save{border:1px solid #d6e5e7;border-radius:8px;background:white;padding:8px 9px;color:#286b72;font-size:12px;font-weight:700;cursor:pointer}.card-save:hover{background:#e9f5f4}.basic-label{font-size:11px}.stay-card[data-kind=hotel] .score-button,.stay-card[data-kind=hostel] .score-button{font-size:18px;min-width:53px}.stay-card .score-button small{font-size:10px}
.planner-fab{position:fixed;z-index:31;right:20px;bottom:74px;display:flex;align-items:center;gap:9px;border:2px solid #fff;border-radius:24px;background:#ff765e;color:#173b47;box-shadow:0 8px 25px #14425140;padding:11px 15px;font-size:13px;font-weight:800;cursor:pointer}.planner-fab:hover{background:#ff9a84}.planner-fab #planner-count{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#173b47;color:#fff;font-size:11px}.compare-bar{bottom:125px}
.planner-dialog{width:min(750px,calc(100vw - 28px));max-width:none;max-height:min(92dvh,1000px);padding:0;border-radius:20px;overflow:hidden}.planner-dialog::backdrop{background:#123b4f77;backdrop-filter:blur(2px)}#planner-content{max-height:92dvh;overflow:auto}.planner-header{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid #e2eded;padding:17px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px}.planner-header h2{margin:0;font:800 23px Manrope,sans-serif}.planner-close{border:0;background:#eff5f5;border-radius:50%;width:31px;height:31px;font-size:20px;cursor:pointer}.planner-body{padding:20px}.planner-lede{color:#5a7580;font-size:14px;line-height:1.5;margin:0 0 18px}.planner-trip{background:#edf8f6;padding:14px;border-radius:12px;display:flex;justify-content:space-between;gap:12px;align-items:center}.planner-trip strong{display:block;font-size:15px}.planner-trip small{display:block;margin-top:3px;color:#617e87}.planner-trip button,.planner-toolbar button,.planner-actions button{border:1px solid #cde0e1;background:#fff;border-radius:9px;padding:9px 11px;color:#23656c;font-weight:700;cursor:pointer}.planner-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.planner-toolbar .primary{background:#103c52;border:0;color:white}.planner-days{display:grid;gap:13px}.planner-day{border:1px solid #dfebec;border-radius:14px;padding:14px}.planner-day h3{font:800 16px Manrope,sans-serif;margin:0 0 10px}.planner-item{border-top:1px solid #eaf0f0;padding:10px 0}.planner-item:first-of-type{border-top:0}.planner-item strong{font-size:14px}.planner-item p{font-size:12px;color:#66808a;margin:4px 0;line-height:1.4}.planner-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.planner-actions button{font-size:11px;padding:5px 7px}.planner-actions select{max-width:130px}.planner-actions input[type=time]{max-width:123px}.planner-note-label{display:grid;gap:5px;margin-top:8px;color:#58737d;font-size:12px}.planner-note-label input{width:100%;border:1px solid #d8e5e6;border-radius:7px;padding:7px}.planner-unscheduled{margin-top:18px}.planner-unscheduled h3{font-size:16px}.planner-empty{border:1px dashed #bcd6d9;border-radius:13px;padding:18px;color:#607c85;font-size:14px}.planner-warning{border-left:3px solid #ec846b;background:#fff1ea;border-radius:7px;padding:10px 12px;color:#78594c;font-size:12px;line-height:1.45;margin:12px 0}.planner-source{font-size:11px;color:#66808a}.planner-source a{text-decoration:underline}.planner-note{width:100%;min-height:70px;border:1px solid #d5e4e6;border-radius:10px;padding:10px;font:13px 'DM Sans',sans-serif}.planner-preferences{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}.planner-preferences label{display:grid;gap:5px;font-size:12px;color:#55707a}.planner-preferences select{font-size:12px}.planner-library{margin-top:17px}.planner-library h3{font-size:16px}.planner-library-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.planner-library article{border:1px solid #e1ebec;border-radius:10px;padding:10px}.planner-library strong{font-size:13px}.planner-library p{font-size:11px;color:#627d86;line-height:1.4;margin:5px 0}.planner-library button{border:0;background:#e7f6f3;color:#116f6c;border-radius:7px;padding:6px 8px;font-size:11px;font-weight:700;cursor:pointer}#planner-custom-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}#planner-custom-form label{display:grid;gap:4px;color:#58737d;font-size:12px}#planner-custom-form input,#planner-custom-form select{font-size:12px}#planner-custom-form button{border:0;border-radius:9px;background:#e7f6f3;color:#116f6c;padding:10px 12px;font-weight:700;cursor:pointer}
@media(max-width:900px){:root{--rail:340px;--detail:450px}.booking-intro h2{font-size:19px}}
.planner-toolbar .planner-download{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cde0e1;background:#fff;border-radius:9px;padding:9px 11px;color:#23656c;font-weight:700;font-size:14px;text-decoration:none}.planner-toolbar .planner-download:hover{background:#e7f6f3}.planner-toolbar .planner-download.is-disabled{color:#91a7ac;background:#f5f8f8}
#trip-form .trip-clear{border:0;background:transparent;color:#54717b;font-size:12px;text-decoration:underline;cursor:pointer;padding:0}
.booking-providers{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0 10px}.booking-providers a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 12px;border:1px solid #bbd7d9;border-radius:10px;background:#f4fbfa;color:#155862;text-align:center;text-decoration:none;font-size:13px;font-weight:750}.booking-providers a.primary{grid-column:1/-1;background:#103c52;color:#fff;border-color:#103c52}.booking-providers a:hover{border-color:#087681;background:#e4f4f1}.booking-providers a.primary:hover{background:#087681}.affiliate-disclosure{padding:9px 11px;border-radius:9px;background:#fff5e9;color:#664c32!important}
@media(max-width:700px){:root{--float-top:216px;--rail:calc(100vw - 24px);--detail:calc(100vw - 24px)}.destination-bar{height:96px;flex-wrap:wrap}.destination-mini{order:0}.trip-control{order:1;flex:1;max-width:none;min-width:0}.trip-control>summary>strong{max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search{order:2!important;flex:0 0 100%;width:100%}#trip-form{position:fixed;top:105px;left:12px;right:12px;width:auto;max-height:calc(100dvh - 120px)}.collections{top:157px}.booking-intro{padding:12px 14px}.booking-intro h2{font-size:18px;margin:3px 0}.booking-intro p{font-size:11px}.filters-panel>summary{padding:8px 13px}.filters-panel .filter-row{max-height:50dvh}.results-line{min-height:38px}.stay-card .place-photo{height:130px}.planner-fab{right:12px;bottom:23px;padding:8px 10px;font-size:12px}.selection-open .planner-fab{top:216px;bottom:auto}.planner-fab #planner-count{width:19px;height:19px}.map-toggle,.map-focus .map-toggle{left:12px;transform:none}.place-tabs{scrollbar-width:none}.place-tabs::-webkit-scrollbar{display:none}.place-tabs button{font-size:12px;padding:10px 4px}.compare-bar{bottom:75px}.planner-dialog{width:100vw;max-height:93dvh;height:93dvh;margin:auto 0 0;border-radius:18px 18px 0 0}.planner-body{padding:15px}.planner-header{padding:14px 15px}.planner-header h2{font-size:20px}.planner-library-list{grid-template-columns:1fr}.planner-trip{align-items:flex-start;flex-direction:column}.map-selection{top:max(235px,36dvh)}.map-selection[data-tab=party],.map-selection[data-tab=reviews],.map-selection[data-tab=prices]{top:max(235px,36dvh)}}


/* explorer-refine.css */
/* Compact, booking-led explorer controls. */
:root{--float-top:84px}
.booking-intro{padding:11px 15px 12px;background:#fff}
.booking-intro h2{font-size:18px;margin:11px 0 3px}
.booking-intro p{font-size:11px;line-height:1.35}
.destination-bar .trip-control>summary{background:#fff5ee;border-color:#ffc5ad}
.destination-bar .trip-control>summary:hover{background:#ffede2}
@media(min-width:901px){.destination-bar .trip-control{min-width:290px}.destination-bar .search{width:245px}}
@media(min-width:701px){.destination-bar .destination-mini{margin-right:0}.destination-bar .search{margin-left:auto}}
.browse-modes{display:flex;gap:4px;padding:3px;border-radius:10px;background:#edf4f4}
.browse-modes button{flex:1;border:0;border-radius:8px;background:transparent;color:#56727b;padding:8px 5px;font:750 12px 'DM Sans',sans-serif;cursor:pointer}
.browse-modes button.active{background:#fff;color:#143b4c;box-shadow:0 1px 5px #103c521b}
.quick-filters{position:relative;z-index:4;display:grid;gap:9px;padding:11px 14px 12px;border-bottom:1px solid #dce9e9;background:#fff}
.quick-filters[hidden]{display:none!important}
.quick-type{display:flex;flex-wrap:wrap;gap:5px}
.quick-type button{border:1px solid #dbe8e9;border-radius:8px;padding:6px 8px;background:#f7faf9;color:#315866;font:750 11px 'DM Sans',sans-serif;white-space:nowrap;cursor:pointer}
.quick-type button.active{border-color:#0e6e78;background:#e6f5f3;color:#0b6972}
.quick-type #party-ready-filter.active{border-color:#f5a18d;background:#fff1ed;color:#ab523d}
.stay-tags .class-badge{background:#fff2d5;color:#72591e;font-size:11px;font-weight:750}
.quick-options{display:grid;grid-template-columns:1fr .87fr 1fr;gap:6px}
.quick-options>label,.quick-price>summary{min-width:0;display:grid;gap:3px;border:1px solid #dce9e9;border-radius:9px;padding:5px 7px;background:#fff;color:#526f79;font-size:10px;font-weight:700}
.quick-options select{width:100%;max-width:none;border:0;background:transparent;padding:0;color:#163e51;font-size:12px;font-weight:750;outline-offset:2px}
.quick-price>summary{list-style:none;cursor:pointer;height:100%;box-sizing:border-box}
.quick-price>summary::-webkit-details-marker{display:none}
.quick-price strong{color:#46626d;font-size:12px;white-space:nowrap}
.quick-price[open]>summary{border-color:#f1a18e}
.quick-price p{position:absolute;z-index:5;right:12px;top:100%;width:min(270px,calc(100% - 24px));margin:2px 0 0;padding:12px;border:1px solid #eed9d4;border-radius:10px;background:#fffaf7;color:#405e69;font-size:12px;line-height:1.4;box-shadow:0 8px 24px #153f4b26}
.filters-panel>summary{padding:9px 15px;font-size:11px}
.filters-panel .filter-row{max-height:55dvh;align-content:start}
.more-filters{display:block;flex-basis:100%;order:0}
.more-filters[hidden]{display:none}
.filter-grid{padding:5px 0 9px}
.filter-row #reset{order:2;margin-left:0}
.planner-fab{top:82px;bottom:auto;right:20px}
.map-toolbar{left:calc(var(--rail) + 36px);right:auto;bottom:24px}
.selection-open .map-toolbar{left:calc(var(--detail) + 36px)}
.map-toolbar>span{display:none}
.selection-open .map-toolbar>span{display:flex}
.map-help{display:none}
.maplibregl-ctrl-top-right{top:143px!important}
.maplibregl-ctrl-bottom-left{left:calc(var(--rail) + 36px)!important;right:auto!important;bottom:73px!important}
@media(max-width:900px){.map-toolbar{left:calc(var(--rail) + 26px)}.selection-open .map-toolbar{left:calc(var(--detail) + 26px)}.maplibregl-ctrl-bottom-left{left:calc(var(--rail) + 26px)!important}}
@media(max-width:700px){:root{--float-top:157px}.list-panel{top:var(--float-top)}.booking-intro{padding:9px 12px}.booking-intro h2{font-size:17px;margin:8px 0 2px}.quick-filters{padding:9px 11px}.quick-type{gap:4px}.quick-type button{font-size:10px;padding:5px 7px}.quick-options{gap:4px}.planner-fab{top:auto;bottom:23px;right:12px}.selection-open .planner-fab{top:165px;bottom:auto}.map-toolbar,.selection-open .map-toolbar{display:none}.maplibregl-ctrl-top-right{top:158px!important}.maplibregl-ctrl-bottom-left{left:5px!important;bottom:40px!important}}
@media(max-width:700px){.filters-panel[open]{max-height:24dvh;overflow:auto}.filters-panel[open] .filter-row{max-height:none;overflow:visible}}
.map-toggle{display:grid;place-items:center;width:36px;height:36px;min-width:0;padding:0;border-radius:11px;font:700 28px/1 'DM Sans',sans-serif;cursor:pointer;top:calc(var(--float-top) + 7px)}
.map-toggle:hover,.map-toggle:focus-visible{background:#e5f8f7;outline-color:#188887}
@media(max-width:900px){.map-toggle{left:calc(var(--rail) + 26px)}.map-focus .map-toggle{left:20px}}
@media(max-width:700px){.map-toggle,.map-focus .map-toggle{left:12px;right:auto;width:38px;height:38px;min-width:0;transform:none}.map-toggle{top:auto;bottom:23px}.map-focus .map-toggle{top:calc(var(--float-top) + 7px);bottom:auto}}


/* planner-calendar.css */
.planner-dialog{width:min(1040px,calc(100vw - 36px));max-height:94dvh;border:0;border-radius:26px;background:#faf8f2;color:#173e43;box-shadow:0 25px 90px #102f4540}
.planner-dialog::backdrop{background:#143c496b;backdrop-filter:blur(5px)}
#planner-content{max-height:94dvh;scrollbar-gutter:stable;scroll-behavior:smooth}
.planner-header{padding:24px 30px 21px;background:#faf8f2f7;backdrop-filter:blur(12px);border-bottom:1px solid #e4e5dc;z-index:3}
.planner-eyebrow{display:block;color:#588078;font-size:10px;font-weight:850;letter-spacing:.18em;margin-bottom:7px}
.planner-header h2{font:800 28px Manrope,sans-serif;letter-spacing:-1px;color:#173e43}
.planner-close{width:40px;height:40px;background:#eeeee5;color:#173e43;flex-shrink:0}
.planner-body{padding:22px 30px 24px}
.planner-dialog button,.planner-dialog input,.planner-dialog select,.planner-dialog textarea{font-family:inherit}
.planner-dialog button,.planner-dialog summary,.planner-dialog a{touch-action:manipulation}
.planner-dialog button:focus-visible,.planner-dialog summary:focus-visible,.planner-dialog a:focus-visible,.planner-dialog input:focus-visible,.planner-dialog select:focus-visible,.planner-dialog textarea:focus-visible{outline:3px solid #ef9979;outline-offset:3px}
.planner-dialog summary{list-style:none}
.planner-dialog summary::-webkit-details-marker{display:none}
.planner-dialog input,.planner-dialog select,.planner-dialog textarea{min-width:0;max-width:100%;border:1px solid #d4ded7;border-radius:10px;padding:10px 11px;background:#fff;color:#173e43;font-size:13px}
.planner-versions{display:flex;align-items:center;gap:16px;justify-content:space-between;margin:0 0 18px}
.planner-versions>label{display:flex;align-items:center;gap:10px;min-width:0;color:#688078;font-size:11px;white-space:nowrap}
.planner-versions select{font-weight:700;padding:7px 30px 7px 10px;max-width:330px;border-color:transparent;background:#efefe7;font-size:12px}
.planner-autosave{color:#64715d;font-size:10px;white-space:nowrap}
.planner-autosave:before{content:'';display:inline-block;width:5px;height:5px;background:#618e6d;border-radius:50%;margin-right:6px;vertical-align:middle}
.planner-lede{margin:0 0 22px;color:#687d73;font-size:14px}
.planner-setup{border:1px solid #dfe5da;background:#fffefb;border-radius:20px;overflow:hidden}
.planner-setup>summary,.planner-library>summary,.planner-personal>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 22px;cursor:pointer}
.planner-setup>summary strong,.planner-library>summary strong,.planner-personal>summary strong{display:block;font:800 17px Manrope,sans-serif;letter-spacing:-.35px;color:#173e43}
.planner-setup>summary small,.planner-library>summary small,.planner-personal>summary small{display:block;margin-top:5px;font-size:12px;line-height:1.5;font-weight:400;color:#64715d}
.planner-disclosure{display:flex;align-items:center;gap:9px;font-size:11px;color:#4f7165;font-weight:700;white-space:nowrap}
.planner-disclosure:after{content:'⌄';font-size:16px}
details[open]>summary>.planner-disclosure:after{transform:rotate(180deg)}
.planner-setup-content{padding:2px 22px 24px}
.planner-setup-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:20px;border-top:1px solid #eceee7;padding-top:22px}
.planner-setup-step{display:flex;align-items:flex-start;gap:12px;min-width:0}
.planner-step-number{display:inline-grid;place-items:center;flex-shrink:0;width:26px;height:26px;background:#f5e3d4;color:#a96b40;border-radius:50%;font-size:11px;font-weight:800}
.planner-step-number.is-done{background:#e2f0df;color:#437e54}
.planner-setup-step>div{flex:1;min-width:0}
.planner-setup-step h3,.planner-hotel-picker{display:block;margin:4px 0 9px;font-size:13px;font-weight:800;color:#234c46}
.planner-setup-step p{font-size:11px;color:#6f8278;line-height:1.5;margin:7px 0}
.planner-setup-step button,.planner-open-detail button{border:0;border-radius:9px;background:#e7efe6;color:#345d4e;padding:9px 12px;font-size:12px;font-weight:750;cursor:pointer}
.planner-setup-step button span{margin-left:15px}
.planner-setup-step select{width:100%;font-size:12px;line-height:1.4}
.planner-pace-options{border:0;min-width:0;margin:22px 0 0;padding:0}
.planner-pace-options legend{padding:0;font-size:13px;font-weight:800;margin-bottom:12px;color:#234c46}
.planner-pace-options legend .planner-step-number{margin-right:8px}
.planner-pace-options>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.planner-pace-options button{display:grid;grid-template-columns:32px 1fr;column-gap:8px;align-items:center;text-align:left;padding:14px 13px;border:1px solid #e1e6da;border-radius:13px;background:#fafbf6;color:#284d46;cursor:pointer}
.planner-pace-options button[aria-pressed=true]{border-color:#47785f;background:#e8f0e1;box-shadow:inset 0 0 0 1px #47785f}
.planner-pace-symbol{grid-row:1/3;display:grid;place-items:center;font-size:24px;color:#64715d;line-height:1}
.planner-pace-options button strong{font-size:12px;line-height:1.4}
.planner-pace-options button small{font-size:10px;margin-top:3px;color:#6e7f72;line-height:1.4}
.planner-build{display:flex;align-items:center;gap:18px;margin-top:22px}
.planner-build>.primary{border:0;border-radius:11px;background:#ec876b;color:#173e43;font-size:13px;font-weight:850;padding:14px 20px;cursor:pointer;box-shadow:0 3px 0 #d8735a33}
.planner-build>.primary:hover{background:#f69b7f}
.planner-build p{font-size:11px;line-height:1.5;margin:0;color:#64715d}
.planner-welcome-note{display:flex;justify-content:center;align-items:center;gap:15px;padding:21px 10px 6px;color:#718575}
.planner-welcome-note>span{font-size:29px;color:#cd965a}
.planner-welcome-note p{font-size:12px;line-height:1.7}
.planner-welcome-note strong{font-weight:650;color:#456b57}
.planner-feedback{margin:16px 0 0;border:1px solid #d5e5d3;background:#eaf2e4;border-radius:12px;padding:12px 15px;color:#3a6650;font-size:12px;line-height:1.5}
.planner-calendar{margin-top:22px;border:1px solid #dfe5da;border-radius:20px;overflow:hidden;background:#fffefb}
.planner-weekbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;background:#f4f5ed;border-bottom:1px solid #e4e9de}
.planner-weekbar small{display:block;color:#6c8c6b;font-size:10px;font-weight:850;letter-spacing:.14em}
.planner-weekbar h3{margin:5px 0 0;color:#214a43;font:800 20px Manrope,sans-serif;letter-spacing:-.5px}
.planner-week-nav{display:flex;gap:6px}
.planner-week-nav button{width:36px;height:36px;border:1px solid #d5ded3;border-radius:50%;background:#fffefa;color:#365d4d;font-size:18px;cursor:pointer}
.planner-week-nav button:disabled{opacity:.35;cursor:default}
.planner-calendar-scroll{overflow-x:auto;overscroll-behavior-x:contain}
.planner-swipe-hint{display:none}
.planner-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-cell{min-width:0;min-height:158px;border-right:1px solid #ecede4;background:#fffefb}
.calendar-cell:last-child{border-right:0}
.calendar-cell.is-outside{background:#f5f5ee}
.calendar-cell.is-selected{background:#f0f5e9;box-shadow:inset 0 3px #5c8961}
.calendar-date{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:14px 11px 10px;border:0;background:transparent;color:#6e8273;text-align:left;cursor:pointer}
.calendar-date span{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
.calendar-date strong{font:800 19px Manrope,sans-serif;color:#2e564a}
.is-outside .calendar-date{cursor:default;color:#aeb9a9}
.is-outside .calendar-date strong{color:#aeb9a9}
.calendar-day-indicator{display:none}
.calendar-cell-events{display:grid;align-content:start;gap:5px;padding:6px}
.calendar-entry{display:grid;gap:3px;width:100%;min-width:0;border:1px solid #d6e3d1;border-radius:8px;background:#eaf1e3;padding:7px;text-align:left;color:#3c684e;cursor:pointer}
.calendar-entry.is-event{border-color:#efd7c7;background:#faeade;color:#975e3e}
.calendar-entry:hover,.calendar-entry:focus-visible{border-color:#5a8768}
.calendar-entry time{font-size:10px;font-weight:800}
.calendar-entry span{font-size:10px;font-weight:700;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.calendar-open,.calendar-more{padding:7px 4px;color:#64715d;font-size:10px;line-height:1.5;text-align:left;background:none;border:0;cursor:pointer}
.calendar-more{font-weight:700}
.planner-day-detail{border-top:1px solid #e4e9de;padding:21px 22px;background:#fffefb}
.planner-day-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.planner-day-detail-heading h3{margin:0;color:#244c43;font:800 18px Manrope,sans-serif;letter-spacing:-.35px}
.planner-day-detail-heading span{display:block;color:#64715d;font-size:11px;margin-top:4px}
.planner-text-button{color:#456c55;font-size:11px;font-weight:750;border:0;background:#eef2e6;padding:10px 12px;border-radius:9px;cursor:pointer;white-space:nowrap}
.planner-open-detail{display:flex;align-items:center;gap:15px;border:1px dashed #dce4d2;border-radius:13px;padding:19px;background:#fafbf6}
.planner-open-detail>span{font-size:28px;color:#64715d}
.planner-open-detail>div{flex:1}
.planner-open-detail strong{font-size:13px;color:#5b7057}
.planner-open-detail p{font-size:12px;color:#64715d;line-height:1.5;margin:5px 0 0}
.planner-day-detail .planner-item,.planner-unscheduled .planner-item{border:1px solid #e4e8db;border-radius:13px;padding:15px;margin-top:9px;background:#fffefb}
.planner-day-detail .planner-item:first-of-type{border:1px solid #e4e8db}
.planner-item-heading{display:flex;align-items:flex-start;gap:14px}
.planner-item-heading>div{flex:1;min-width:0}
.planner-item-heading strong{font-size:14px;color:#294f46;line-height:1.5}
.planner-item-heading p{font-size:11px;line-height:1.6;color:#64715d;margin:3px 0 0}
.planner-item-time{background:#f1f1e8;border-radius:8px;padding:7px;font-size:11px;color:#788464;min-width:57px;text-align:center;flex-shrink:0}
.planner-item-status{border:1px solid #e6e6da;border-radius:6px;padding:4px 6px;color:#64715d;font-size:10px;white-space:nowrap;line-height:1.4}
.planner-item-status.is-confirmed{background:#e7f1e2;color:#4b7658;border-color:#d3e4cd}
.planner-item .planner-item-conflict{color:#ad674d;font-weight:700;margin-top:9px}
.planner-place-link{color:inherit;text-decoration:underline;text-decoration-color:#a9bca6;text-underline-offset:3px}.planner-place-link:hover{color:#286847;text-decoration-color:currentColor}.planner-place-link span{font-size:.8em}.planner-item .planner-item-attention{color:#885121;font-size:12px;line-height:1.5;margin:10px 0 0;font-weight:600}.planner-visit-notes{font-size:12px;color:#64715d;line-height:1.6;margin-top:16px}.planner-visit-notes ul{padding-left:18px;margin:6px 0}.planner-visit-notes li{margin:5px 0}
.planner-item-edit{margin-top:10px}
.planner-item-edit>summary{display:inline-block;cursor:pointer;font-size:10px;font-weight:750;color:#6e8474;padding:5px 0}
.planner-item-edit>summary:after{content:' +';margin-left:4px}
.planner-item-edit[open]>summary:after{content:' −'}
.planner-item-edit[open]{border-top:1px solid #edefe5;padding-top:7px}
.planner-actions{align-items:flex-end;margin:8px 0 14px;gap:8px}
.planner-actions>label{display:grid;gap:4px;color:#64715d;font-size:10px}
.planner-actions select{max-width:190px;min-height:36px}
.planner-actions input[type=time]{max-width:125px;min-height:36px}
.planner-actions button{padding:8px 10px;min-height:36px;border-color:#dce4d5;color:#597b62;background:#f7faf1}
.planner-note-label{font-size:11px;color:#6c826f;margin-bottom:10px}
.planner-item-edit .planner-note-label input{font-size:12px;border-color:#dce4d5;padding:10px}
.planner-item-edit p{font-size:11px;line-height:1.6;color:#64715d}
.planner-alternatives{border-top:1px solid #e6eade;margin-top:19px;padding-top:16px}
.planner-alternatives h4{margin:0 0 8px;font:800 13px Manrope,sans-serif;color:#6f7e5e}
.planner-alternatives>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 0;border-top:1px solid #eef0e8}
.planner-alternatives>div:first-of-type{border:0}
.planner-alternatives span{font-size:10px;color:#64715d}
.planner-alternatives strong{font-size:12px;flex:1 1 180px;color:#5e735b}
.planner-alternatives button{border:0;border-radius:8px;background:#f6e6d9;color:#a06c4f;padding:8px 11px;font-size:11px;font-weight:800;cursor:pointer}
.planner-alternatives p{font-size:10px;color:#64715d;margin:7px 0 0}
.planner-library,.planner-personal{margin-top:14px;border:1px solid #dfe5da;border-radius:16px;padding:0;background:#fffefb;overflow:hidden}
.planner-library>summary strong,.planner-personal>summary strong{font-size:14px;letter-spacing:-.2px}
.planner-library>summary small,.planner-personal>summary small{font-size:11px}
.planner-library[open]{padding-bottom:0}
.planner-library-content{padding:0 20px 20px}
#planner-library-search{width:100%;margin-bottom:14px;background:#f8faf4;font-size:12px}
.planner-library-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
.planner-library article{border:1px solid #e4e7db;padding:14px;border-radius:12px;background:#fffef9}
.planner-library article[hidden]{display:none}
.planner-place-kind{font-size:10px;font-weight:800;color:#64715d;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:7px}
.planner-library article>strong{font-size:12px;line-height:1.5;display:block;color:#416248}
.planner-library p{color:#64715d;font-size:11px;line-height:1.6;margin:5px 0 8px}
.planner-library-actions{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-top:11px}
.planner-library button{border:0;background:#e7efe0;color:#5c7b55;border-radius:8px;padding:8px 10px;font-size:10px;font-weight:750;cursor:pointer}
.planner-library button:disabled{opacity:.55;cursor:default}
.planner-library-actions details{font-size:10px;color:#64715d;min-width:0}
.planner-library-actions summary{padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.planner-library-actions a{color:#66845c;font-size:10px}
.planner-library-content>.planner-source{font-size:10px;margin-top:14px}
.planner-personal #planner-custom-form{padding:0 20px 20px;gap:10px}
#planner-custom-form .planner-custom-name{flex:1;min-width:190px}
#planner-custom-form input,#planner-custom-form select{font-size:12px;min-height:40px}
#planner-custom-form label{color:#64715d;font-size:10px;gap:6px}
#planner-custom-form button{background:#e6eddd;color:#527846;font-size:12px;min-height:40px}
.planner-unscheduled{margin-top:20px;border:1px solid #dfe5da;border-radius:16px;padding:18px;background:#f4f5ec}
.planner-unscheduled>summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;color:#61795a;font-size:13px}
.planner-unscheduled>summary>span{font-size:11px;color:#64715d}
.planner-unscheduled[open]>div{margin-top:12px}
.planner-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}
.planner-footer>p{font-size:10px;line-height:1.6;color:#64715d;margin:0}
.planner-download{display:flex;align-items:center;gap:10px;color:#4e7354;text-decoration:none;font-size:12px;font-weight:750;flex-shrink:0;border:1px solid #dfe5d3;background:#f0f3e7;padding:12px;border-radius:11px}
.planner-download>span{font-size:19px}
.planner-download small{font-size:10px;color:#64715d;font-weight:500}
.planner-tools{border-top:1px solid #e5e6da;margin-top:21px;padding-top:16px}
.planner-tools>summary{display:flex;justify-content:space-between;gap:15px;cursor:pointer;color:#64715d;font-size:11px;font-weight:750;padding:3px 0}
.planner-tools>summary span{font-weight:400;color:#64715d}
.planner-tools-content{padding-top:12px}
.planner-tool-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}
.planner-tool-buttons button{border:1px solid #e0e5d6;border-radius:8px;background:#fffef9;color:#64715d;padding:9px 12px;font-size:11px;cursor:pointer}
.planner-tool-buttons .planner-danger{color:#ad7561}
.planner-tools .planner-source{font-size:10px;line-height:1.5;color:#64715d}
@media(max-width:700px){
 .planner-dialog{width:100%;max-width:100%;max-height:94dvh;height:94dvh;border-radius:22px 22px 0 0;margin:auto 0 0;box-sizing:border-box}
 .planner-header{padding:18px 20px}.planner-header h2{font-size:24px}.planner-eyebrow{font-size:10px}.planner-body{padding:18px 16px 24px}
 .planner-versions{gap:8px;margin-bottom:17px}.planner-versions>label{font-size:0;gap:0;flex:1}.planner-versions select{max-width:100%;width:100%;font-size:11px}.planner-autosave{font-size:10px}
 .planner-lede{font-size:12px;margin-bottom:18px}
 .planner-setup>summary,.planner-library>summary,.planner-personal>summary{padding:18px 16px}.planner-setup>summary strong{font-size:16px}.planner-setup>summary small{font-size:10px}.planner-disclosure{font-size:10px}
 .planner-setup-content{padding:0 16px 19px}.planner-setup-grid{grid-template-columns:1fr;gap:18px;padding-top:18px}.planner-setup-step p{font-size:10px}.planner-setup-step h3,.planner-hotel-picker{font-size:12px}.planner-setup-step select{font-size:12px}
 .planner-pace-options{margin-top:20px}.planner-pace-options>div{gap:6px}.planner-pace-options button{grid-template-columns:1fr;gap:5px;padding:13px 6px;text-align:center}.planner-pace-symbol{grid-row:auto;font-size:23px}.planner-pace-options button strong{font-size:10px}.planner-pace-options button small{font-size:10px;line-height:1.5}.planner-pace-options legend{font-size:12px}
 .planner-build{flex-direction:column;gap:10px;margin-top:19px}.planner-build>.primary{width:100%;font-size:12px}.planner-build p{font-size:10px;text-align:center}
 .planner-welcome-note{padding-top:16px}.planner-welcome-note p{font-size:11px}.planner-footer{flex-direction:column;align-items:stretch;gap:13px;margin-top:19px}.planner-footer>p{text-align:center;font-size:10px}.planner-download{justify-content:center;font-size:12px}
 .planner-weekbar{padding:17px 15px}.planner-weekbar h3{font-size:17px}.planner-weekbar small{font-size:10px}.planner-week-nav button{width:32px;height:32px}
 .planner-swipe-hint{display:block;margin:0;padding:10px 15px 0;color:#64715d;font-size:10px;background:#f5f6ee}
 .planner-calendar-scroll{overflow:visible}.planner-calendar-grid{min-width:0;background:#f5f6ee;padding:10px 8px;gap:4px}.calendar-cell,.calendar-cell.is-outside{min-height:0;background:transparent;border:0;border-radius:11px}.calendar-cell.is-selected{box-shadow:none;background:#355c47}.calendar-date{flex-direction:column;gap:5px;justify-content:center;padding:9px 3px 7px;min-height:71px}.calendar-date span{font-size:10px}.calendar-date strong{font-size:18px}.is-selected .calendar-date span,.is-selected .calendar-date strong{color:#f5f7ec}.calendar-cell-events{display:none}.calendar-day-indicator{display:block;width:4px;height:4px;border-radius:50%;background:transparent}.calendar-day-indicator.has-stops{background:#ca9668}.is-selected .calendar-day-indicator.has-stops{background:#ecc291}
 .planner-day-detail{padding:18px 14px}.planner-day-detail-heading h3{font-size:16px}.planner-day-detail-heading span{font-size:10px}.planner-text-button{font-size:10px;padding:9px}.planner-open-detail{gap:10px;flex-wrap:wrap;padding:14px}.planner-open-detail>span{font-size:23px}.planner-open-detail strong{font-size:12px}.planner-open-detail p{font-size:11px}.planner-open-detail button{margin-left:34px;font-size:11px}
 .planner-day-detail .planner-item,.planner-unscheduled .planner-item{padding:12px}.planner-item-heading{gap:10px;flex-wrap:wrap}.planner-item-heading>div{flex-basis:calc(100% - 67px)}.planner-item-heading strong{font-size:12px}.planner-item-heading p{font-size:10px}.planner-item-time{font-size:10px;min-width:55px}.planner-item-status{margin-left:65px;font-size:10px}.planner-item-edit>summary{font-size:10px}.planner-actions{gap:6px}.planner-actions select{max-width:160px}.planner-actions button{font-size:10px}.planner-item-edit p{font-size:10px}
 .planner-library>summary strong,.planner-personal>summary strong{font-size:12px}.planner-library>summary small,.planner-personal>summary small{font-size:10px}.planner-library-content{padding:0 14px 14px}.planner-library-list{grid-template-columns:1fr 1fr;gap:8px}.planner-library article{padding:11px}.planner-library article>strong{font-size:11px}.planner-place-kind{font-size:10px}.planner-library button{font-size:10px;padding:7px 8px}.planner-library-actions{gap:4px}.planner-library-actions summary{font-size:10px}
 .planner-personal #planner-custom-form{padding:0 15px 16px;display:grid;grid-template-columns:1fr 1fr}#planner-custom-form .planner-custom-name{grid-column:1/-1;min-width:0}#planner-custom-form button{grid-column:1/-1}
 .planner-alternatives>div{gap:6px}.planner-alternatives strong{flex-basis:70%;font-size:11px}.planner-alternatives span{flex-basis:100%;font-size:10px}.planner-alternatives h4{font-size:12px}
}
@media(prefers-reduced-motion:reduce){#planner-content{scroll-behavior:auto}}

/* Portable plans: visible save/load actions and a copyable snapshot link. */
.planner-transfer{margin:-8px 0 22px}.planner-transfer-actions{display:flex;gap:8px;flex-wrap:wrap}.planner-transfer-actions button{border:1px solid #d9e1d0;border-radius:10px;background:#fffef9;color:#365a46;padding:10px 14px;font-size:12px;font-weight:700;cursor:pointer}.planner-transfer-actions button:first-child{background:#e8efdf}.planner-share-panel{margin-top:12px;background:#f1f3ea;border:1px solid #dde4d4;border-radius:14px;padding:17px}.planner-share-panel>strong{font-size:14px}.planner-share-panel p{font-size:12px;line-height:1.5;margin:7px 0;color:#64715d}.planner-share-notes{font-size:12px;display:flex;gap:8px;align-items:center;margin:12px 0}.planner-share-copy{display:flex;gap:7px}.planner-share-copy input{min-width:0;flex:1;font-size:11px;border:1px solid #d2dcc8;border-radius:8px;padding:10px;background:#fff;color:#506b52}.planner-share-copy button{border:0;background:#355c47;color:#fff;border-radius:9px;padding:10px 14px;font-size:12px;white-space:nowrap;cursor:pointer}.planner-share-status:empty{display:none}.planner-share-panel .planner-share-local{font-size:11px;color:#796342}.shared-trip-preview{padding:10px 15px 20px;max-width:660px;margin:auto;text-align:center}.shared-trip-symbol{display:grid;place-items:center;margin:auto;width:52px;height:52px;background:#f8e3d4;border-radius:50%;font-size:27px}.shared-trip-preview h3{font-size:25px;letter-spacing:-.7px}.shared-trip-preview>p{font-size:14px;color:#64715d;line-height:1.6}.shared-trip-preview>strong{font-size:17px}.shared-preview-stops{text-align:left;margin:22px 0;display:grid;gap:8px}.shared-preview-stops>div{border:1px solid #e2e7da;background:#fffef9;border-radius:12px;padding:12px 15px}.shared-preview-stops span{display:block;font-size:11px;color:#697661;margin-bottom:5px}.shared-preview-stops strong{font-size:13px}.shared-trip-preview .primary{border:0;border-radius:12px;background:#ef8e6c;color:#243f32;font-size:14px;font-weight:700;padding:13px 23px;cursor:pointer}.shared-trip-preview .shared-copy-note{font-size:11px;max-width:410px;margin:14px auto 0}.planner-stop-context{font-size:12px!important;line-height:1.6!important;color:#536b55!important;background:#f2f5ec;padding:10px 12px;border-radius:9px;margin:12px 0 0!important}.planner-feasibility{border:1px solid #e6d0a9;border-radius:12px;background:#fff5e3;padding:12px 15px;margin:15px 0}.planner-feasibility>summary{font-size:13px;font-weight:700;cursor:pointer;color:#6c5531}.planner-feasibility p{font-size:12px;line-height:1.6;color:#6b593b;margin:9px 0}.planner-item-conflict{background:#fff0dc;color:#77532b!important;border-left:3px solid #d89548;padding:9px 11px;border-radius:4px;font-size:12px!important;line-height:1.6}.planner-day-context{font-size:12px;line-height:1.6;color:#64715d;margin:0 0 16px}.planner-route-link{display:inline-flex;gap:5px;color:#426948;font-size:11px;margin-top:8px}
@media(max-width:700px){.planner-transfer{margin:-3px 0 18px}.planner-transfer-actions{gap:6px}.planner-transfer-actions button{flex:1;padding:10px 8px;font-size:11px}.planner-share-panel{padding:14px}.planner-share-panel p{font-size:11px}.planner-share-copy button{font-size:11px;padding-inline:10px}.shared-trip-preview{padding-inline:0}.shared-trip-preview h3{font-size:22px}.planner-stop-context,.planner-item-conflict{font-size:11px!important}.planner-day-context{font-size:11px}}
.planner-saved-stays{border:1px solid #dfe5da;border-radius:14px;background:#fffefb;margin-top:14px;padding:14px 17px}.planner-saved-stays>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;color:#42624c;font-size:13px;font-weight:700}.planner-saved-stays>summary span{font-size:11px;font-weight:400;color:#64715d}.planner-saved-stays article{display:flex;align-items:center;gap:8px;border-top:1px solid #e6eade;padding:12px 0}.planner-saved-stays article:first-child{margin-top:12px}.planner-saved-stays article>div{flex:1;min-width:0}.planner-saved-stays strong{display:block;font-size:12px;line-height:1.5}.planner-saved-stays small{font-size:11px;color:#64715d}.planner-saved-stays button{border:0;border-radius:8px;padding:10px;background:#e7efe0;color:#365a46;font-size:11px;cursor:pointer}.planner-saved-stays>p{font-size:11px;line-height:1.6;color:#64715d;margin:0}


/* journey.css */
/* A relaxed, card-led planning journey. Shared by every destination. */
:root{--ink:#173c42;--muted:#627674;--teal:#196d67;--line:#e3e7df;--coral:#ff8067;--paper:#faf9f5}
html{height:auto;overflow-x:hidden;overflow-y:auto;scroll-behavior:smooth;scroll-padding-top:28px}
body{height:auto;min-height:100vh;overflow:visible;background:var(--paper);color:var(--ink)}
button,input,select{font-family:inherit}button,a,input,select,summary{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #25877c;outline-offset:4px}
[hidden]{display:none!important}.wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:40px}
.header{position:relative;inset:auto;z-index:20;height:82px;max-width:1440px;display:flex;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;padding:0 40px;gap:24px}
.header .brand{font-size:17px;letter-spacing:-.7px;white-space:nowrap}.brand-icon{background:var(--ink);color:var(--coral);border-radius:10px;width:33px;height:33px}
.destination-nav{display:flex;gap:24px;align-items:center;margin-left:auto}.destination-nav a{font-size:13px;color:#506865;text-decoration:none}.destination-nav a:hover,.destination-nav a[aria-current=page]{color:var(--ink);text-decoration:underline;text-underline-offset:6px}.header #method-button{font-size:12px;color:var(--muted)}
.destination-bar{position:relative;inset:auto;z-index:12;height:auto;display:grid;grid-template-columns:1fr 300px;gap:10px 28px;padding:30px 0 24px;pointer-events:auto}
.destination-mini{grid-column:1;grid-row:1/3;display:flex;gap:22px;padding:0;background:none;border-radius:0;box-shadow:none;height:auto;margin:0;align-items:center}
.destination-image{width:128px;height:138px;flex-shrink:0;border-radius:24px 24px 48px 24px;transform:rotate(-3deg);background:#d7e6dd;overflow:hidden}.destination-image img{width:100%;height:100%;object-fit:cover}
.destination-eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:#6a7c6d}.destination-mini h1{font:800 clamp(28px,3.1vw,44px)/1.15 Manrope,sans-serif;letter-spacing:-1.8px;margin:8px 0 10px}.destination-dot{color:#df765d}.destination-mini p{font-size:14px;color:var(--muted);margin:0 0 9px;max-width:390px;line-height:1.5}.destination-location{font-size:11px;color:#7b8173}
.destination-bar .trip-control{grid-column:2;grid-row:1;min-width:0;width:100%;max-width:none;align-self:end}.trip-control>summary{height:56px;border-radius:14px!important;box-shadow:none;background:#fff7ed!important;border:1px solid #e7cbb3!important;padding:10px 15px;display:flex;gap:10px}.trip-control>summary>strong{font-size:13px;max-width:none!important;white-space:nowrap}.trip-control>summary>span:last-child{display:inline!important;margin-left:auto}.destination-bar .search{grid-column:2;grid-row:2;width:100%;height:48px;margin:0;border:1px solid var(--line);border-radius:13px;box-shadow:none;padding:10px 15px;background:#fff;align-self:start}.search input{font-size:13px}
#trip-form{position:absolute;z-index:45;top:92px;right:0;left:auto;width:390px;max-width:calc(100vw - 32px);border-radius:20px;box-shadow:0 20px 80px #173c4233;padding:22px;background:#fff;border:1px solid var(--line)}
.trip-journey{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:34px}.trip-journey>button{display:flex;align-items:center;gap:13px;background:#f0f1e9;border:1px solid transparent;text-align:left;padding:17px 19px;border-radius:17px;color:var(--ink);cursor:pointer;transition:background .18s,transform .18s}.trip-journey>button:hover{background:#e6eddf;transform:translateY(-2px)}.trip-journey>button[aria-current=step]{background:#e5efe7;border-color:#c7dacc}.trip-journey>button:nth-child(2){background:#f5eee5}.trip-journey>button:nth-child(3){background:#f8eae4}.journey-number{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #b5c7b6;border-radius:50%;font:600 16px Georgia,serif}.trip-journey strong{display:block;font-size:14px}.trip-journey small{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.journey-arrow{margin-left:auto;font-size:21px;color:#748578}
#explore{position:relative;scroll-margin-top:26px}.explore-layout,.explore-layout.list-only{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(310px,1fr);gap:28px;height:auto;min-height:0;align-items:start}
.list-panel,.selection-open .list-panel{position:relative;inset:auto;display:block;width:auto;min-width:0;overflow:visible;border:0;border-radius:0;box-shadow:none;background:transparent;z-index:1}.booking-intro{padding:0;background:none;border:0}.browse-modes{display:flex;gap:5px;max-width:330px;width:100%;padding:4px;background:#eaece5;border-radius:12px;margin-bottom:22px}.browse-modes button{padding:11px 12px;font-size:12px;white-space:nowrap}.browse-modes button.active{background:#fff;box-shadow:0 2px 6px #1b45300b;color:var(--ink)}.booking-intro h2{font:800 26px/1.25 Manrope,sans-serif;letter-spacing:-.8px;margin:0 0 7px}.booking-intro p{font-size:13px;color:var(--muted);line-height:1.5;margin:0 0 18px}
.quick-filters{padding:0;background:none;border:0;display:block;max-width:calc(100% - 115px);z-index:4;min-height:39px}.quick-type{gap:10px;align-items:center}.quick-type button{border-radius:24px;padding:9px 13px;background:transparent;font-size:12px;border-color:#d6ddd2;font-weight:600;min-height:37px}.quick-type .stay-types{display:flex;flex-wrap:wrap;gap:5px}.quick-type button.active{background:#e9eee5;color:var(--ink);border-color:#b8c8b8}.quick-type #party-ready-filter{border-color:#dbbbaa;background:#fff7ef;color:#784331;font-weight:750}.quick-type #party-ready-filter.active{background:var(--ink);color:#fffefb;border-color:var(--ink);box-shadow:0 3px 9px #173c4217}.quick-type #party-ready-filter.active>span{color:#ffa18c}.quick-type #party-ready-filter:hover{border-color:#a45b40}.quick-type #party-ready-filter.active:hover{background:#28554f;border-color:#28554f}
.filters-panel{position:relative;margin-top:-39px;margin-left:auto;width:100%;background:none;border:0;pointer-events:none;z-index:5}.filters-panel>summary{pointer-events:auto;margin-left:auto;width:94px;padding:10px 12px;border:1px solid #cfd7cc;border-radius:22px;background:#fff;font-size:12px;min-height:37px}.filters-panel>summary:after{line-height:16px}.filters-panel[open]{margin-bottom:12px}.filters-panel .filter-row{pointer-events:auto;margin-top:10px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;max-height:none;overflow:visible;box-shadow:0 8px 24px #173c4208}.filter-row select{max-width:100%}.quick-options{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:10px;width:100%;margin-bottom:6px}.quick-options>label{font-size:11px;padding:9px}.quick-options .filter-note{margin:0;align-self:center;font-size:11px}.more-filters{width:100%}.filter-grid{max-height:none!important;overflow:visible!important}.filter-note{line-height:1.5}.results-line{padding:18px 0 12px;min-height:0}.results-line p{font-size:13px;font-weight:600}.sort-label select{max-width:160px;background:transparent;font-size:12px}.info-disclaimer{padding:0 0 15px;color:#6c7f76;font-size:11px}
.results,.list-only .results,.explore-layout:not(.list-only) .results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;overflow:visible;padding:0;scrollbar-gutter:auto;align-items:stretch}.stay-card{border:1px solid #e4e7df;border-radius:20px;background:white;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s,transform .18s;cursor:default}.stay-card:hover{box-shadow:0 9px 28px #203d3310;transform:translateY(-2px)}.stay-card.is-selected{border-color:#268475;box-shadow:0 0 0 2px #26847522}.stay-card .place-photo{height:188px;flex:none;border-radius:0;cursor:pointer}.place-photo img{height:100%;width:100%;object-fit:cover}.photo-context{left:10px;top:10px;right:auto;bottom:auto;max-width:calc(100% - 20px);font-size:9px;line-height:1.4;border-radius:6px;background:#ffffffed;color:#375c56;padding:4px 6px}.image-credit{font-size:9px;max-width:calc(100% - 14px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;bottom:7px;right:7px}.card-content{padding:16px;display:flex;flex-direction:column;flex:1}.stay-card-head{gap:9px}.stay-card h2{font-size:16px;line-height:1.35;letter-spacing:-.3px}.stay-card h2 button{text-align:left}.location{font-size:11px;margin-top:5px}.stay-card .score-button{font-size:17px!important;min-width:47px!important;padding:7px;background:#e6f1e8;border-radius:9px;color:#29654f}.stay-card .score-button small{font-size:9px;white-space:nowrap}.stay-tags{gap:5px;margin-top:12px}.stay-tags>span{font-size:10px;padding:4px 6px;border-radius:5px;background:#f3f3ee}.stay-tags .party-mini{font-size:10px;padding:4px 7px;background:#f7e7ef}.party-promise{font-size:12px;line-height:1.6;margin:10px 0 14px;color:#61736f;min-height:38px}.compact-actions{margin-top:auto;border-top:1px solid #edf0e8;padding-top:12px;gap:8px;display:flex;flex-wrap:wrap}.card-explore{border:0;border-radius:10px;background:#edf2e9;color:var(--ink);padding:10px 12px;font-size:12px;font-weight:750;cursor:pointer;flex:1;white-space:nowrap}.card-explore:hover{background:#dce9d5}.card-save{padding:9px 12px;font-size:12px;border-color:#d7dfd2;background:#fff;border-radius:10px;white-space:nowrap}.compare-toggle{font-size:10px!important;display:flex;align-items:center;gap:4px;margin-left:0!important;color:#6e7b75}.compact-actions .compare-toggle{flex-basis:100%;margin-top:1px}.card-evidence{display:none}.results>.empty,.results>.event-window,.results>.event-context,.results>.recurring-section,.results>.event-list-intro{grid-column:1/-1}.empty{border:1px dashed #b9cbbb;text-align:center;padding:36px 22px;grid-column:1/-1;background:#fff}.empty p{font-size:14px;line-height:1.6;color:var(--muted)}
.map-panel{position:sticky;inset:auto;top:26px;z-index:2;width:100%;height:min(650px,calc(100dvh - 52px));min-height:420px;border:1px solid #d9e2d5;border-radius:22px;background:#dceae2;overflow:hidden;isolation:auto}.map-panel:before{content:'GET TO KNOW THE NEIGHBORHOOD';position:absolute;z-index:4;top:18px;left:18px;padding:9px 11px;border-radius:9px;background:#fffefaeb;color:#426257;font-size:9px;font-weight:800;letter-spacing:1px;max-width:calc(100% - 75px);pointer-events:none}#destination-map{position:absolute;inset:0;height:100%;width:100%;min-height:0}.map-toolbar,.selection-open .map-toolbar{position:absolute;inset:auto 12px 28px 12px;display:flex;max-width:none;width:auto;justify-content:space-between;background:#fffef9ed;border-radius:12px;box-shadow:none;font-size:10px;padding:8px}.map-toolbar>span,.selection-open .map-toolbar>span{display:flex;font-size:9px;gap:2px}.map-toolbar .text-button{font-size:11px}.maplibregl-ctrl-top-right{top:70px!important;right:10px!important}.maplibregl-ctrl-bottom-left{left:12px!important;right:auto!important;bottom:80px!important}.maplibregl-ctrl-bottom-right{bottom:0!important}.map-help{display:none}.map-toggle,.map-focus .map-toggle{position:absolute;display:block;top:58px;left:auto;right:16px;bottom:auto;transform:none;width:auto;height:32px;min-width:0;padding:6px 11px;background:#fffef9;border:1px solid #d7dfd2;border-radius:9px;box-shadow:0 2px 8px #173c4210;color:var(--ink);font:700 11px/1.3 'DM Sans',sans-serif;z-index:6}.map-focus .explore-layout{grid-template-columns:1fr}.map-focus .list-panel{display:none}.map-focus .map-panel{height:75dvh;position:relative;top:0}.map-focus .map-toggle{top:64px}.selection-open .map-toggle{display:block}
.map-selection,.map-selection[data-tab=reviews],.map-selection[data-tab=prices]{position:fixed;z-index:55;left:auto;right:18px;top:18px;bottom:18px;width:540px;max-width:calc(100vw - 36px);height:auto;max-height:none;border-radius:23px;border:1px solid #d1ded4;box-shadow:0 0 0 100vmax #153d4526,0 12px 65px #133b4438;overflow:hidden;background:#fff}.selection-open .map-panel{z-index:40;overflow:visible}.place-navigation{padding:10px 15px;min-height:48px}.place-navigation .place-close{font-size:13px}.place-heading{padding:17px 22px 12px}.place-heading h2{font-size:26px}.place-body{padding:20px 22px}.place-body p{font-size:14px}.place-summary{font-size:16px!important}.map-selection .place-photo{height:200px}.place-bottom{flex-wrap:wrap;padding:12px 18px;gap:9px}.place-bottom .primary{background:var(--ink);font-size:13px}.place-bottom .card-save{margin-left:auto}.place-tabs button{font-size:12px}.place-tabs{gap:3px;padding-inline:17px}.score-chip{font-size:12px}.score-chip strong{font-size:18px}.flags-preview{margin:14px 0}.flag-preview{padding:9px}.flag-preview strong{font-size:12px}.flag-preview small{font-size:11px}.detail-accordion summary{font-size:13px}.scene-disclosure{margin-top:18px;border:1px solid var(--line);border-radius:12px;padding:13px}.scene-disclosure>summary{list-style:none;cursor:pointer;font-size:14px;font-weight:700}.scene-disclosure>summary:after{content:'＋';float:right}.scene-disclosure[open]>summary:after{content:'−'}.scene-disclosure>summary::-webkit-details-marker{display:none}.place-body .scene-disclosure h3{margin-top:14px}.scene-disclosure>p{font-size:12px}.place-body>.detail-accordion{margin-top:9px}
.footer{position:static;display:flex;gap:16px;flex-wrap:wrap;background:transparent;box-shadow:none;border-radius:0;max-width:1440px;padding:30px 40px 96px;margin-top:32px;font-size:11px;color:#768477;pointer-events:auto}.footer>span{font-size:11px}.footer #photo-credit{font-size:10px;margin-left:auto}.footer .text-button{font-size:11px}.planner-fab,.selection-open .planner-fab{position:fixed;top:auto;bottom:24px;right:28px;z-index:32;border:2px solid var(--paper);background:var(--coral);color:#173c42;border-radius:30px;font-size:14px;padding:14px 20px;gap:12px;box-shadow:0 6px 24px #173c4222}.planner-fab #planner-count{width:23px;height:23px;font-size:11px;background:var(--ink)}.compare-bar,.selection-open .compare-bar{z-index:34;bottom:24px;left:40px;right:auto;transform:none;width:auto;max-width:calc(100vw - 210px);font-size:12px;border-radius:17px;padding:12px 16px}.compare-bar .primary{font-size:12px}.primary{background:var(--ink)}.primary:hover{background:#2d665b}.skip:focus{z-index:99}
.event-card{min-width:0}.event-card .card-content{padding:16px}.event-card .event-date{border-radius:10px}.event-card p{font-size:12px;line-height:1.55}.events-empty,.recurring-programs,.recurring-header,.event-window-toggle,.events-intro{grid-column:1/-1}
@media(min-width:1600px){.wrap{max-width:1500px}.explore-layout{grid-template-columns:minmax(0,2fr) minmax(360px,1fr)}.stay-card .place-photo{height:220px}}
@media(max-width:1100px){.wrap{padding-inline:25px}.header{padding-inline:25px}.header .brand{font-size:15px}.destination-nav{gap:16px}.destination-nav a{font-size:12px}.destination-image{width:95px;height:125px}.destination-mini{gap:18px}.destination-mini h1{font-size:32px}.destination-bar{grid-template-columns:1fr 260px;gap:14px}.destination-mini p{font-size:12px}.trip-journey>button{padding:15px 14px}.trip-journey small{font-size:10px}.explore-layout{grid-template-columns:minmax(0,1.75fr) minmax(270px,1fr);gap:20px}.results{gap:14px}.stay-card .place-photo{height:160px}.card-content{padding:13px}.stay-card h2{font-size:14px}.quick-type button{padding:9px 10px;font-size:11px}.booking-intro h2{font-size:23px}.map-toolbar>span{max-width:175px;flex-wrap:wrap}.journey-arrow{display:none}.footer{padding-inline:25px}}
@media(max-width:900px) and (min-width:701px){.explore-layout{grid-template-columns:minmax(0,1.2fr) minmax(270px,1fr)}.results,.list-only .results,.explore-layout:not(.list-only) .results{grid-template-columns:1fr}.stay-card{display:grid;grid-template-columns:36% 64%}.stay-card .place-photo{height:100%;min-height:235px}.destination-image{display:none}.destination-nav a:not(:first-child){display:none}.trip-journey small{font-size:10px}.journey-number{flex-basis:27px;height:27px}.trip-journey strong{font-size:12px}.quick-filters{max-width:100%;padding-bottom:9px}.filters-panel{margin:0;width:100%}.filters-panel>summary{margin-left:0}.booking-intro h2{font-size:22px}}
@media(max-width:700px){html{scroll-padding-top:18px}.wrap{padding-inline:18px}.header{height:66px;gap:12px;padding:0 18px}.header .brand{font-size:14px}.brand-icon{height:29px;width:29px}.header #method-button{display:none}.destination-nav{margin-left:auto}.destination-nav a:not(:first-child){display:none}.destination-nav a:first-child{font-size:11px}.destination-bar{display:grid;grid-template-columns:1fr 1fr;gap:14px 9px;padding:23px 0 18px}.destination-mini{grid-column:1/-1;grid-row:1;gap:15px}.destination-image{display:block;width:69px;height:90px;border-radius:16px 16px 30px 16px}.destination-eyebrow{font-size:8px;letter-spacing:1.5px}.destination-mini h1{font-size:26px;letter-spacing:-1px;margin:6px 0}.destination-mini p{font-size:11px;margin:0;line-height:1.5;max-width:250px}.destination-location{display:none}.destination-bar .trip-control{grid-column:1;grid-row:2;min-width:0;max-width:none;align-self:stretch}.trip-control>summary{height:46px;padding:8px 10px;border-radius:11px!important}.trip-control>summary>strong{font-size:11px;max-width:100%!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-control>summary>span:last-child{display:none!important}.destination-bar .search{grid-column:2;grid-row:2;order:0!important;flex:auto;width:100%;height:46px;padding:9px 10px;border-radius:11px}.search input{font-size:12px;width:100%}#trip-form{position:fixed;inset:80px 16px auto;width:auto;max-width:none;margin:0;max-height:calc(100dvh - 100px);overflow:auto;padding:19px}.trip-journey{gap:6px;margin-bottom:24px}.trip-journey>button{padding:12px 9px;min-width:0;gap:7px;border-radius:13px;flex-direction:column;align-items:flex-start}.journey-number{height:24px;min-height:24px;flex-basis:24px;width:24px;font-size:12px}.trip-journey strong{font-size:10px;line-height:1.4;white-space:nowrap}.trip-journey small{display:none}.journey-arrow{display:none}.explore-layout,.explore-layout.list-only{display:block;min-height:0;height:auto}.list-panel,.selection-open .list-panel{position:relative;inset:auto;width:100%;border-radius:0;overflow:visible}.browse-modes{max-width:100%;margin-bottom:20px}.browse-modes button{font-size:12px;padding:10px 8px}.booking-intro{padding:0}.booking-intro h2{font-size:23px;margin:0 0 7px}.booking-intro p{font-size:12px;margin-bottom:14px}.quick-filters{max-width:100%;padding:0;min-height:36px}.quick-type{gap:5px}.quick-type button{font-size:11px;padding:8px 10px;min-height:34px}.filters-panel,.filters-panel[open]{margin:12px 0 0;width:100%;max-height:none;overflow:visible}.filters-panel>summary{margin:0;width:100%;border-radius:10px;font-size:11px;padding:9px 12px;min-height:32px}.filters-panel .filter-row{padding:14px;max-height:none!important;overflow:visible}.quick-options{grid-template-columns:1fr 1fr}.quick-options p{grid-column:1/-1}.filter-grid{grid-template-columns:1fr 1fr}.results-line{padding:13px 0 9px}.info-disclaimer{padding-bottom:12px;font-size:10px}.results,.list-only .results,.explore-layout:not(.list-only) .results{display:grid;grid-template-columns:1fr;gap:18px;padding:0}.stay-card .place-photo{height:205px}.stay-card h2{font-size:18px}.card-content{padding:17px}.stay-tags>span,.stay-tags .party-mini{font-size:11px}.party-promise{font-size:13px;min-height:0;margin-bottom:16px}.compact-actions .compare-toggle{flex-basis:auto;margin-left:auto!important}.card-explore{flex:0 1 auto;font-size:12px;padding:11px 14px}.card-save{font-size:12px;padding:10px 14px}.stay-card .score-button{font-size:20px!important}.map-panel{display:none!important}.map-focus .map-panel,.selection-open .map-panel{display:block!important}.selection-open:not(.map-focus) .map-panel{height:0;min-height:0;border:0;position:static}.map-focus .map-panel{height:calc(100dvh - 170px);min-height:420px;top:0;position:relative;border-radius:18px}.map-focus .list-panel{display:none}.map-toggle,.map-focus .map-toggle,.selection-open .map-toggle{position:fixed;left:18px;right:auto;bottom:23px;top:auto;transform:none;height:47px;min-width:103px;padding:12px 17px;border-radius:28px;background:var(--ink);color:white;font-size:12px;box-shadow:0 5px 18px #173c4233;z-index:31}.maplibregl-ctrl-top-right{top:65px!important}.maplibregl-ctrl-bottom-left{bottom:75px!important;left:12px!important}.map-toolbar,.selection-open .map-toolbar{display:flex;inset:auto 12px 28px 12px}.map-toolbar>span{display:flex}.map-selection,.map-selection[data-tab=reviews],.map-selection[data-tab=prices],.map-selection[data-tab=party]{position:fixed;top:9px;bottom:9px;left:9px;right:9px;width:auto;max-width:none;height:auto;border-radius:20px;z-index:55}.map-selection .place-photo,.map-selection[data-tab=reviews] .place-photo,.map-selection[data-tab=prices] .place-photo{height:170px}.place-heading{padding:16px}.place-heading h2{font-size:23px}.place-body{padding:17px}.place-tabs{padding-inline:9px;overflow-x:auto;justify-content:space-between}.place-tabs button{font-size:11px;padding:12px 6px}.score-chip{font-size:11px;padding:9px}.place-bottom{padding:11px 14px;flex-wrap:wrap}.place-bottom .primary{font-size:12px;flex:none}.place-bottom .operator-link{font-size:11px}.place-bottom .card-save{padding:8px 10px;font-size:11px}.planner-fab,.selection-open .planner-fab{right:18px;bottom:23px;top:auto;padding:12px 17px;font-size:12px;min-height:47px}.compare-bar,.selection-open .compare-bar{left:18px;right:18px;bottom:82px;width:auto;max-width:none;padding:10px 13px;gap:10px}.footer{display:flex;position:static;padding:28px 18px 98px;margin-top:12px;gap:8px;max-width:none}.footer>span{white-space:normal;font-size:10px}.footer #photo-credit{margin:0;font-size:9px}.footer .text-button{display:block;font-size:10px}}
.map-selection{margin:0;padding:0;color:var(--ink);box-shadow:0 12px 65px #133b4438}.map-selection::backdrop{background:#163d4545;backdrop-filter:blur(3px)}
/* Read the selected place beside its location, with both surfaces usable. */
@media(min-width:701px){
 #explore-layout{position:relative;scroll-margin-top:0}
 .selection-open .explore-layout,.selection-open.map-focus .explore-layout{grid-template-columns:minmax(0,1.45fr) minmax(270px,1fr)}
 .selection-open .list-panel{display:none}
 .selection-open .map-selection{position:sticky;inset:auto;top:26px;grid-column:1;grid-row:1;width:100%;max-width:none;height:calc(100dvh - 52px);min-height:420px;max-height:none;z-index:3;box-sizing:border-box;box-shadow:0 8px 30px #173c4210}
 .selection-open .map-panel,.selection-open.map-focus .map-panel{grid-column:2;grid-row:1;position:sticky;top:26px;height:calc(100dvh - 52px);min-height:420px;z-index:2;overflow:hidden}
 .selection-open .map-toggle{display:none}
 .selection-open .map-selection .place-photo{height:clamp(200px,27dvh,300px)}
}
.score-strip:empty{display:none}.destination-mini p{display:block}.destination-image img{display:block}.map-toggle,.map-focus .map-toggle{top:72px;right:65px}
.events-intro>.text-button+.text-button{margin-left:12px}
.map-status{position:absolute;z-index:5;bottom:90px;left:14px;right:14px;background:#fffaf0;border:1px solid #e4d8bd;color:#6d634b;font-size:12px;line-height:1.5;border-radius:12px;padding:12px;box-shadow:0 3px 12px #173c4210}
@media(max-width:700px){.map-toggle,.map-focus .map-toggle,.selection-open .map-toggle{top:auto;right:auto}}
body:not(.browsing-stays) .filters-panel{margin-top:0}.event-results .events-intro,.event-results .regular-programs,.event-results .event-footnote,.event-results .event-empty{grid-column:1/-1}.event-results .events-intro{padding:18px;border:1px solid var(--line);border-radius:16px;background:#f0f2e9}.event-results .events-intro h2{font-size:17px;margin-top:0}.event-results .events-intro small{display:block;font-size:11px;margin-top:12px}.event-results .regular-programs{margin:0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.event-results .event-footnote{font-size:11px;color:var(--muted)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.stay-card,.trip-journey>button{transition:none}.stay-card:hover,.trip-journey>button:hover{transform:none}}


/* trip-controls.css */
/* Trip dates belong with the places they help you choose. */
.destination-bar{display:block}
.destination-bar .destination-mini{margin:0}
.trip-controls{position:relative;z-index:15;display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,320px);align-items:center;gap:20px;margin:0 0 26px;padding:16px;background:#f0f2ea;border:1px solid #e0e5d9;border-radius:18px}
.trip-date-group{display:flex;align-items:center;gap:18px;min-width:0}
.trip-controls .trip-control{position:relative;flex:0 0 290px;min-width:0;width:290px;max-width:none}
.trip-controls .trip-control>summary{height:auto;min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:12px;row-gap:3px;align-content:center;padding:10px 16px;background:#fff7ed!important;border-color:#dbbfa7!important}
.trip-controls .trip-control>summary>span:first-child{display:block;grid-column:1;grid-row:1;font-size:10px;font-weight:700;letter-spacing:.4px;color:#876a52}
.trip-controls .trip-control>summary>strong{grid-column:1;grid-row:2;max-width:none!important;min-width:0;font-size:15px;font-weight:750;line-height:1.3;white-space:pre-line;overflow:visible;text-overflow:clip}
.trip-controls .trip-control>summary>span:last-child{display:block!important;grid-column:2;grid-row:1/3;margin:0;font-size:20px;color:var(--ink)}
.trip-controls-note{margin:0;min-width:0;color:var(--muted);font-size:12px;line-height:1.5}
.trip-controls-note strong{display:block;color:var(--ink);font-size:13px;margin-bottom:2px}
.trip-controls-note span{display:block}
.trip-controls .search{order:0!important;display:flex;gap:10px;width:100%;max-width:none;height:50px;margin:0;padding:10px 15px;border:1px solid #d8dfd2;border-radius:12px;background:#fff;box-shadow:none}
.trip-controls .search span[aria-hidden]{display:block}
.trip-controls .search input{width:100%;min-width:0;font-size:13px}
.trip-controls #trip-form{position:absolute;top:calc(100% + 10px);bottom:auto;left:0;right:auto;width:390px;max-width:calc(100vw - 68px);max-height:70dvh;overflow:auto;margin:0;padding:22px;z-index:45;scroll-margin-top:20px}
.trip-controls #trip-form input[readonly]{cursor:pointer;min-height:43px}
.trip-controls #trip-form input.is-picking{border-color:var(--teal);box-shadow:0 0 0 2px #196d6720;background:#f0f7f1}
.trip-calendar{grid-column:1/-1;border:1px solid #dfe7da;border-radius:14px;padding:12px;background:#fffef9;min-width:0}
.trip-calendar-step{font-size:11px;font-weight:750;color:var(--teal);margin-bottom:8px}
.trip-calendar-nav{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:9px}
.trip-calendar-nav h3{text-align:center;margin:0;font-size:15px;font-weight:750;color:var(--ink)}
.trip-controls #trip-form .trip-calendar button{grid-column:auto;cursor:pointer;border:0;font-family:inherit;touch-action:manipulation;color:var(--ink);background:transparent;padding:0;box-shadow:none}
.trip-controls #trip-form .trip-calendar-nav button{height:34px;border:1px solid #dbe3d4;border-radius:9px;background:#f6f7ef;font-size:17px}
.trip-calendar table{table-layout:fixed;width:100%;border-collapse:collapse}
.trip-calendar th{font-size:10px;font-weight:600;color:var(--muted);text-align:center;padding:4px 0 8px}
.trip-calendar td{padding:2px 0;text-align:center}
.trip-controls #trip-form .trip-calendar [data-date]{display:block;width:100%;height:36px;font-size:12px;font-weight:600;border-radius:8px}
.trip-controls #trip-form .trip-calendar [data-date]:hover:not(:disabled):not(.is-checkin):not(.is-checkout){background:#e7efdf}
.trip-controls #trip-form .trip-calendar [data-date].in-range{background:#dceadf;border-radius:0;color:#224b3c}
.trip-controls #trip-form .trip-calendar [data-date].is-preview{background:#e7efe1}
.trip-controls #trip-form .trip-calendar [data-date].is-checkin,.trip-controls #trip-form .trip-calendar [data-date].is-checkout{background:var(--teal);color:#fff;font-weight:800;border-radius:8px;opacity:1}
.trip-controls #trip-form .trip-calendar button:disabled:not(.is-checkin){opacity:.3;cursor:default}
.trip-controls #trip-form .trip-calendar button:focus-visible{position:relative;outline:2px solid #e9936c;outline-offset:-2px;z-index:1}
.trip-controls #trip-form .trip-calendar [aria-current=date]:not(.is-checkin):not(.is-checkout){text-decoration:underline;text-underline-offset:4px}
.trip-range-status{font-size:12px;line-height:1.5;color:#41634f;min-height:36px;margin:10px 0 0;padding-top:9px;border-top:1px solid #e4e9dc}
@media(max-width:1100px){
 .trip-controls{grid-template-columns:minmax(0,1fr) minmax(210px,270px);gap:16px}
 .trip-controls .trip-control{flex-basis:265px;width:265px}
 .trip-date-group{gap:13px}
 .trip-controls-note{font-size:11px}
 .trip-controls-note strong{font-size:12px}
}
@media(max-width:900px){
 .trip-date-group{align-items:stretch;flex-direction:column;gap:8px}
 .trip-controls .trip-control{flex-basis:auto;width:100%}
 .trip-controls-note strong{display:none}
 .trip-controls{align-items:start}
 .trip-controls .search{height:62px}
}
@media(max-width:700px){
 .destination-bar{display:block}
 .trip-controls{grid-template-columns:1fr;gap:12px;padding:13px;margin-bottom:23px;border-radius:16px}
 .trip-date-group{gap:7px}
 .trip-controls .trip-control>summary{height:auto;min-height:58px;padding:10px 13px}
 .trip-controls .trip-control>summary>strong{font-size:14px}
 .trip-controls-note{font-size:11px;padding-inline:2px}
 .trip-controls .search{height:43px;flex:auto;padding:9px 13px}
 .trip-controls .search input{font-size:12px}
 .trip-controls #trip-form{position:absolute;top:calc(100% + 9px);left:-14px;right:auto;width:calc(100% + 28px);max-width:calc(100vw - 36px);max-height:calc(100dvh - 36px);margin:0;padding:16px;gap:12px}
 .trip-controls #trip-form label{font-size:12px;min-width:0}
 .trip-controls #trip-form input,.trip-controls #trip-form select{width:100%;font-size:13px;padding:9px 6px}
 .trip-controls #trip-message{font-size:11px;line-height:1.5}
}


/* public.css */
.contact-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 17px;border:1px solid #b8c9bd;border-radius:26px;color:var(--ink);font-size:12px;font-weight:700;white-space:nowrap;text-decoration:none}
.contact-button:hover{background:#eef1e7;text-decoration:none}
.contact-button:focus-visible,.public-links a:focus-visible{outline:3px solid #ed745d;outline-offset:4px}
.public-links{display:flex;align-items:center;gap:8px 22px;flex-wrap:wrap;font-size:12px;line-height:1.5}
.public-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px;color:inherit}
footer>.public-links{margin-bottom:12px}
.footer .public-links{margin:0}
.footer>span{white-space:normal}
.header .destination-nav{flex-wrap:wrap;gap:8px 18px}
@media(max-width:900px){.header{gap:14px}.header #method-button{display:none}}
@media(max-width:700px){.header{height:auto;min-height:80px;flex-wrap:wrap;padding-block:14px;gap:6px 10px}.header .brand{flex:1;font-size:13px}.header .contact-button{padding:9px 12px;font-size:11px}.header .destination-nav{order:3;width:100%;margin-left:0}.header .destination-nav a{min-height:32px;display:inline-flex;align-items:center}.footer .public-links{width:100%;gap:4px 17px}.public-links{font-size:11px}}


/* suggestions.css */
.suggest-link{border:0;background:none;padding:0;min-height:44px;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.suggest-dialog{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:90dvh;overflow:auto;border:1px solid #d8dfd6;border-radius:24px;padding:30px;background:#fbfaf5;color:#173f40;font:14px/1.6 'DM Sans',Arial,sans-serif;box-shadow:0 20px 70px #173f4030}
.suggest-dialog::backdrop{background:#173f4070;backdrop-filter:blur(3px)}
.suggest-dialog h2{font-size:26px;line-height:1.2;margin:5px 0 12px}.suggest-dialog p{margin:10px 0}.suggest-dialog .suggest-eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;padding-right:40px}
.suggest-close{position:absolute;right:16px;top:16px;width:40px;height:40px;border:0;border-radius:50%;background:#edf0e5;color:#173f40;font-size:25px;cursor:pointer}
.suggest-dialog label{display:block;font-size:13px;font-weight:600;margin:14px 0}.suggest-dialog label span{font-weight:400;color:#62746e}
.suggest-dialog input,.suggest-dialog textarea{box-sizing:border-box;display:block;width:100%;margin-top:5px;padding:11px 12px;border:1px solid #b8c9bd;border-radius:10px;background:#fff;color:#173f40;font-family:inherit;font-size:16px;line-height:1.4}.suggest-dialog textarea{resize:vertical}
.suggest-dialog .suggest-note{font-size:11px;color:#62746e}.suggest-note a{text-decoration:underline}.suggest-status{font-size:13px}.suggest-send{border:0;border-radius:30px;background:#173f40;color:#fff;padding:13px 22px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer}.suggest-send:disabled{opacity:.6;cursor:wait}
.suggest-link:focus-visible,.suggest-dialog :focus-visible{outline:3px solid #ed745d;outline-offset:3px}
@media(max-width:480px){.suggest-dialog{padding:24px 20px}.suggest-dialog h2{font-size:23px}}

.suggest-dialog label[hidden]{display:none}


/* decision.css */
/* Choose a stay before opening the larger explorer. */
.stay-recommendations{margin:12px 0 30px;padding:20px 0 0;border-top:1px solid #d4dfd9}
.stay-recommendations h2{margin:0;font-size:clamp(1.3rem,2.8vw,1.85rem);letter-spacing:-.035em}
.stay-recommendations>p,.recommendations-intro p{color:#4e625e;max-width:760px;margin:8px 0 15px;line-height:1.5}
.recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.recommendation-card{display:flex;flex-direction:column;padding:20px;background:#fffdf6;border:1px solid #cad8d0;border-radius:16px;min-width:0}
.recommendation-card h3{font-size:1.25rem;margin:5px 0 9px;letter-spacing:-.02em}
.recommendation-card h3 a{color:#123b36;text-decoration:none}
.recommendation-card p{font-size:.9rem;line-height:1.5;margin:4px 0 12px;color:#425b54}
.recommendation-card .recommendation-label,.recommendation-card .recommendation-fit{font-size:.7rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase;color:#396852}
.recommendation-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:10px}
.recommendation-actions a{font-weight:700;text-underline-offset:3px;font-size:.85rem}
.recommendation-actions .primary,.recommendation-actions .recommendation-price{position:relative;background:#123b36;color:white;border-radius:8px;padding:11px 14px;text-decoration:none}
.recommendation-note{font-size:.74rem}.stay-recommendations .breadcrumbs,.stay-recommendations .editorial-breadcrumbs{font-size:.73rem;margin-bottom:12px}
.stay-recommendations .recommendation-intro p{color:#4e625e;max-width:760px;margin:8px 0 15px;line-height:1.5}
.scene-filters{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.scene-filters button{border:1px solid #baccc2;background:#fffdf6;color:#214b40;padding:8px 12px;border-radius:24px;font:inherit;font-size:.8rem;cursor:pointer}
.scene-filters button[aria-pressed=true]{background:#164a3e;color:white;border-color:#164a3e}
.rating-context{font-size:.72rem;line-height:1.45;color:#4d655d;margin:9px 0}
/* Keep small explorer controls readable on their actual pale backgrounds. */
.browse-modes button:not(.active){color:#3f5b50}
.info-disclaimer,.compact-actions .compare-toggle{color:#4d655d}
.comparison-entry{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #baccc2;border-radius:10px;background:#fffdf6;color:#164a3e;padding:9px 13px;font:inherit;font-size:.875rem;font-weight:700;cursor:pointer}
.recommendation-intro .comparison-entry{margin:6px 0 0 8px}
.results-line{flex-wrap:wrap}.results-line>div{flex-wrap:wrap;gap:10px}
.compact-actions .compare-toggle{font-size:14px!important;gap:8px;min-height:44px;padding:4px 0}
.compare-bar{white-space:normal;flex-wrap:wrap}.compare-bar>span{min-width:0}
.comparison-chooser p{font-size:.875rem;line-height:1.5;margin:12px 0}
.comparison-search{display:flex;flex-direction:column;gap:6px;font-size:.875rem;font-weight:700;margin:14px 0}
.comparison-search input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #baccc2;border-radius:9px;font:inherit;background:#fff;color:#173c42}
.comparison-options{display:flex;flex-direction:column;gap:8px;max-height:40dvh;overflow-y:auto;overscroll-behavior:contain;padding:4px}
.comparison-option{display:flex;align-items:flex-start;gap:10px;min-height:52px;padding:11px;border:1px solid #d4dfd9;border-radius:10px;cursor:pointer;background:#fffdf6}
.comparison-option input{width:18px;height:18px;flex-shrink:0;margin:2px 0;accent-color:#196d67}
.comparison-option span{min-width:0}.comparison-option strong{display:block;font-size:.94rem;line-height:1.4}.comparison-option small{display:block;font-size:.8rem;line-height:1.4;color:#4d655d;margin-top:4px}
.comparison-option:has(input:checked){border-color:#196d67;background:#eaf3ed}
.comparison-option:has(input:disabled){opacity:.65;cursor:default}
.comparison-chooser-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.comparison-chooser-actions button{min-height:44px}
.comparison-scroll{max-width:100%;margin-top:12px}.comparison-scroll-help{font-size:.875rem;color:#4d655d;line-height:1.5;margin-bottom:8px}
#trip-room-note{grid-column:1/-1;line-height:1.5;margin:4px 0;font-size:12px;color:#4d655d}
body:has(#trip-control[open]) .compare-bar,.selection-open .compare-bar{display:none}
@media(max-width:700px){.recommendation-intro .comparison-entry{margin-left:0}.compare-bar{position:static;inset:auto;max-width:100%;width:auto;margin:0 0 16px;padding:10px;gap:8px;box-shadow:none}.compare-bar>span{flex-basis:100%}.results-line>div{width:100%;justify-content:space-between}.comparison-scroll{max-width:100%}}
.stay-tags .basic-label{color:#604b36!important}
.footer,.footer a,.footer .suggest-link,.footer #photo-credit{color:#4d655d}
.destination-eyebrow,.destination-location,.trip-controls-note span{color:#4d655d}
/* Inline navigation also needs a cue that does not depend on link color. */
.stay-recommendations>p a,.stay-recommendations .recommendation-intro p a,.stay-recommendations .editorial-breadcrumbs a,.stay-recommendations .breadcrumbs a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.compact-actions{flex-wrap:wrap;gap:8px}
.compact-actions .card-prices{min-height:40px;font-size:.8rem;padding:9px 12px}
.stay-card .context-photo{height:88px;min-height:88px;max-height:88px}
.stay-card .context-photo img{height:88px;filter:saturate(.7)}
.place-photo.large.context-photo{height:100px;min-height:100px;max-height:100px}
.place-photo.large.context-photo img{height:100px}
.place-photo.area-photo .photo-context,.map-selection .place-photo.area-photo .photo-context,.stay-card .context-photo .photo-context{top:6px;left:6px;right:auto;bottom:auto;width:max-content;height:auto;max-width:min(220px,calc(100% - 12px));font-size:10px;font-weight:400;line-height:1.2;padding:3px 5px;border-radius:3px;background:#173a48b8;color:#fff;box-shadow:none}
.rate-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rate-heading h3{margin:0}.rate-heading button{flex-shrink:0}
.booking-providers{display:flex;flex-direction:column;gap:10px;margin:18px 0}
.booking-providers a{border:1px solid #baccc2;border-radius:9px;padding:12px;font-weight:700;text-align:center;text-decoration:none;color:#153f34}
.booking-providers a.primary{color:white;background:#143f35}
.room-guidance{border-top:1px solid #d3dfd8;margin-top:22px;padding-top:15px}
.room-guidance summary{cursor:pointer;font-weight:700}
.planner-stay-offer{margin:0 24px 20px;padding:16px;background:#edf4ec;border-radius:12px}
.planner-stay-offer a{display:inline-flex;text-decoration:none;padding:10px 14px}
.planner-stay-offer p{font-size:.74rem;line-height:1.4;margin:8px 0 0;color:#486359}
.planner-fab{position:static;display:block;margin:0 auto 28px;box-shadow:none}
.area-explanation>summary{font-weight:700;cursor:pointer}
@media(max-width:700px){
 .destination-bar{padding-top:10px;margin-bottom:12px}.destination-mini{gap:12px}
 .destination-mini h1{font-size:1.7rem}.destination-mini p{font-size:.86rem}
 .destination-location,.destination-eyebrow{display:none}
 .stay-recommendations{padding-top:15px;margin-top:0;margin-bottom:24px}
 .recommendation-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:10px}
 .recommendation-card{flex:0 0 88%;scroll-snap-align:start;padding:17px}
 .recommendation-card h3{font-size:1.22rem}.recommendation-card p{font-size:.86rem}
 .recommendation-actions{padding-top:4px}
 .explore-layout>.map-toggle{position:static;margin:12px 0;width:100%;transform:none;order:-1;box-shadow:none}
 .explore-layout{display:flex;flex-direction:column}
 .map-focus .explore-layout>.map-toggle{position:sticky;top:8px;z-index:4}
 .map-focus #map-panel{min-height:480px;height:70vh}
 .booking-intro{padding-top:10px}.trip-controls-note{display:none}
 .scene-filters{gap:6px}.scene-filters button{padding:8px 10px;font-size:.75rem}
 .stay-card .context-photo,.stay-card .context-photo img{height:64px;min-height:64px}
 .quick-type{flex-wrap:wrap}.rating-context{font-size:.71rem}
 .planner-fab{margin:20px auto;max-width:90%}
 .rate-heading{align-items:flex-start;flex-direction:column;gap:6px}
}
@media(max-width:360px){.destination-mini>.destination-image{display:none}.destination-mini h1{font-size:1.65rem}.recommendation-card{flex-basis:94%}}


/* recommended-plan.css */
.recommended-dialog{width:min(1180px,96vw);max-width:96vw;max-height:94dvh;padding:0;border:1px solid #d8e3df;border-radius:24px;color:#143c3e;background:#fafbf5;box-shadow:0 25px 100px #102f4055}
.recommended-dialog::backdrop{background:#092c32b3;backdrop-filter:blur(4px)}
.recommended-header{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid #d8e3df;background:#fafbf5}.recommended-header h2{margin:4px 0;font-size:26px}.recommended-header span{font-size:11px;letter-spacing:.14em}.recommended-header button{font-size:26px;background:none;border:0;color:inherit;width:44px;height:44px;cursor:pointer}
.recommended-body{padding:20px 26px;line-height:1.5}.recommended-body a{color:#145e5a;text-underline-offset:3px}.recommended-body button,.recommended-body summary{cursor:pointer}.recommended-body button{font:inherit}.recommended-body :focus-visible{outline:3px solid #13867c;outline-offset:3px}
.recommended-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.recommended-date-control{position:relative;min-width:0}.recommended-date-control>summary{display:flex;align-items:center;gap:12px;padding:10px 14px;list-style:none;border:1px solid #abc2b9;border-radius:12px;background:white;font-size:14px;min-height:48px}.recommended-date-control>summary::-webkit-details-marker{display:none}.recommended-date-control>summary>span:first-child{font-size:23px;color:#19756b}.recommended-date-control>summary>span:last-child{color:#53706a;font-size:12px}.recommended-date-guests{font-size:12px;color:#647a74}.recommended-date-control[open]>summary{border-color:#19756b;box-shadow:0 0 0 2px #19756b22}
#recommended-dates{position:absolute;left:0;top:calc(100% + 9px);width:380px;max-width:calc(96vw - 36px);max-height:70dvh;overflow:auto;z-index:80;background:white;border:1px solid #abc2b9;box-shadow:0 20px 70px #123e4233;border-radius:18px;padding:18px}#recommended-dates label{display:grid;gap:4px;font-size:12px;color:#506c65}#recommended-dates input{width:100%;min-width:0;border:1px solid #abc2b9;border-radius:9px;padding:9px;font:inherit;font-size:14px;color:#143c3e;background:white}.recommended-date-fields,.recommended-guests{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recommended-date-fields .trip-calendar{grid-column:1/-1;width:100%;min-width:0;margin:8px 0}.recommended-guests{margin-top:14px}.recommended-coverage{margin:12px 0;padding:12px;background:#e9f0e9;border-radius:10px;font-size:12px}.recommended-coverage p{margin:5px 0 0}.recommended-date-error:empty{display:none}.recommended-date-error{color:#9b362f;font-size:13px}.recommended-save-top{white-space:nowrap;font-size:14px!important;padding:12px 18px!important;border-radius:12px!important}
.recommended-hotels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.recommended-hotels button{display:flex;align-items:center;gap:10px;padding:12px;text-align:left;border:1px solid #cbd9d1;border-radius:13px;background:white;color:#143c3e;min-width:0}.recommended-hotels strong{display:block;font-size:13px;line-height:1.3}.recommended-hotels small{display:block;margin-top:3px;color:#688078;font-size:10px}.recommended-hotel-number{color:#85a79b;font-size:12px;font-weight:700}.recommended-hotel-check{margin-left:auto;color:#688078}.recommended-hotels [aria-pressed=true]{background:#153f40;color:white;border-color:#153f40}.recommended-hotels [aria-pressed=true] small,.recommended-hotels [aria-pressed=true] .recommended-hotel-check{color:#c5dfcf}
.recommended-day-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:0 0 20px}.recommended-day-nav button{min-width:0;display:grid;gap:2px;border:1px solid #d6e1d8;border-radius:12px;background:#f0f4ec;color:#143c3e;text-align:left;padding:10px 12px;transition:background .15s,transform .15s}.recommended-day-nav button>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#5a7770}.recommended-day-nav strong{font-size:15px}.recommended-day-nav small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#678276}.recommended-day-nav [aria-pressed=true]{background:#d9eee2;border-color:#297c67;box-shadow:0 2px 0 #297c67}.recommended-day-nav button:hover{transform:translateY(-2px);border-color:#297c67}
.recommended-workspace{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr);gap:24px;align-items:start}.recommended-day-heading>span{font-size:12px;color:#5a7770}.recommended-day-heading h3{font-size:23px;margin:4px 0}.recommended-day-heading p{font-size:12px;color:#688078;margin:4px 0 18px}.recommended-activity-list{display:grid;gap:12px}.recommended-activity{display:flex;align-items:center;gap:14px;min-height:94px;width:100%;border:1px solid #d8e3d9;border-radius:16px;background:white;color:#143c3e;text-align:left;padding:15px;transition:transform .15s,box-shadow .15s}.recommended-activity:hover{transform:translateY(-2px);box-shadow:0 5px 18px #183e4212}.recommended-activity[aria-pressed=true]{border-color:#247b68;box-shadow:0 0 0 2px #247b6822}.recommended-activity-icon{display:grid;place-items:center;flex:none;width:45px;height:45px;border-radius:14px;background:#e9f0e6;font-size:24px}.recommended-activity-copy{display:grid;gap:4px;min-width:0}.recommended-activity-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#678276}.recommended-activity-copy strong{font-size:15px;line-height:1.3}.recommended-activity-copy>span{font-size:11px;color:#71857c}.recommended-activity-arrow{margin-left:auto;font-size:20px;color:#739689}.tone-event{background:linear-gradient(135deg,#213f46,#374368);color:#fff;border-color:#374368}.tone-event .recommended-activity-copy small,.tone-event .recommended-activity-copy>span,.tone-event .recommended-activity-arrow{color:#d0dfe0}.tone-event .recommended-activity-icon{background:#ffffff1a;color:#dbebe3}.tone-party .recommended-activity-icon{background:#eaddf2;color:#704086}.tone-open{border-style:dashed;background:#f4f6f0}.tone-travel .recommended-activity-icon{background:#e0ecf0;color:#1c6476}.tone-rest .recommended-activity-icon{background:#e9e5f0;color:#796286}
.recommended-map-side{position:sticky;top:12px;min-width:0;border:1px solid #d8e3d9;border-radius:18px;background:white;overflow:hidden}.recommended-map-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px}.recommended-map-heading>span{font-size:10px;letter-spacing:.08em;color:#688078}.recommended-map-heading button{background:#eff4ec;border:0;border-radius:7px;padding:6px 8px;font-size:10px;color:#325c52}.recommended-map-heading button+button{margin-left:4px}.recommended-map{height:300px;position:relative;background:#e4ebe5}.recommended-map .maplibregl-ctrl-top-right{top:8px!important;right:8px!important}.recommended-map .maplibregl-ctrl-bottom-left{bottom:0!important}.recommended-map .maplibregl-ctrl-bottom-right{bottom:0!important;max-width:100%}.recommended-stop-detail{padding:16px}.recommended-selected-label{color:#618373;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.recommended-stop-detail h3{font-size:19px;margin:5px 0}.recommended-stop-summary{font-size:12px;color:#60776e;margin:5px 0 12px}.recommended-stop-actions{display:flex;gap:8px;flex-wrap:wrap}.recommended-stop-actions a{border-radius:8px;background:#e6f1e8;padding:7px 10px;font-size:12px;font-weight:700;text-decoration:none}.recommended-no-pin{font-size:10px;color:#7b8e82;margin:10px 0}.recommended-stop-more{margin-top:12px;border-top:1px solid #e3ebe2;padding-top:10px;font-size:12px}.recommended-stop-more>summary{font-size:11px;color:#547465}.recommended-stop-more p{overflow-wrap:anywhere}.recommended-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #d8e3df;padding-top:16px;margin-top:22px;font-size:11px;color:#72887c}.recommended-footer button{background:transparent;border:0;color:#225f52;font-size:12px;padding:5px 0}.recommended-airport{font-size:13px;margin-top:14px;padding:16px;background:#edf3e9;border-radius:13px}.recommended-airport h3{margin-top:0}.recommended-airport p{overflow-wrap:anywhere}.recommended-entry{margin:10px 0;padding:12px 20px;border-radius:12px;border:1px solid #145e5a;background:#145e5a;color:white;font-weight:700;font-size:16px}.recommended-entry:disabled{opacity:.5}
@media(max-width:760px){.recommended-dialog{width:96vw;max-height:96dvh;border-radius:18px}.recommended-header{padding:14px 16px}.recommended-header h2{font-size:22px}.recommended-header span{font-size:9px}.recommended-body{padding:14px 16px}.recommended-toolbar{align-items:stretch;flex-direction:column;gap:8px}.recommended-date-control>summary{flex-wrap:wrap;gap:6px;font-size:12px}.recommended-date-guests{margin-left:auto;font-size:10px}.recommended-date-control>summary>span:last-child{font-size:10px}.recommended-save-top{padding:9px 12px!important;font-size:12px!important}.recommended-hotels{gap:6px}.recommended-hotels button{padding:9px 7px;gap:4px;align-items:flex-start}.recommended-hotels strong{font-size:10px}.recommended-hotels small{font-size:8px}.recommended-hotel-number,.recommended-hotel-check{display:none}.recommended-day-nav{display:flex;overflow:auto;gap:6px;padding:0 0 5px;margin-bottom:12px}.recommended-day-nav button{flex:0 0 74px;padding:8px}.recommended-day-nav strong{font-size:13px}.recommended-day-nav small{font-size:9px}.recommended-workspace{display:flex;flex-direction:column;gap:16px}.recommended-map-side{position:relative;top:auto;order:0;width:100%}.recommended-timeline{order:1;width:100%}.recommended-map{height:220px}.recommended-map-heading{padding:8px 10px}.recommended-map-heading>span{font-size:9px}.recommended-stop-detail{padding:12px}.recommended-stop-detail h3{font-size:16px}.recommended-day-heading h3{font-size:21px}.recommended-activity{min-height:82px;padding:12px}.recommended-activity-copy strong{font-size:14px}.recommended-footer{align-items:flex-start;flex-direction:column;gap:4px}.recommended-footer button{min-height:38px}#recommended-dates{padding:14px;max-height:72dvh}}
@media(prefers-reduced-motion:reduce){.recommended-day-nav button,.recommended-activity{transition:none}.recommended-activity:hover,.recommended-day-nav button:hover{transform:none}}

#recommended-dates .trip-calendar button{grid-column:auto;cursor:pointer;border:0;font-family:inherit;touch-action:manipulation;color:var(--ink);background:transparent;padding:0;box-shadow:none}
#recommended-dates .trip-calendar-nav button{height:34px;border:1px solid #dbe3d4;border-radius:9px;background:#f6f7ef;font-size:17px}
#recommended-dates .trip-calendar [data-date]{display:block;width:100%;height:36px;font-size:12px;font-weight:600;border-radius:8px}
#recommended-dates .trip-calendar [data-date]:hover:not(:disabled):not(.is-checkin):not(.is-checkout){background:#e7efdf}
#recommended-dates .trip-calendar [data-date].in-range{background:#dceadf;border-radius:0;color:#224b3c}
#recommended-dates .trip-calendar [data-date].is-preview{background:#e7efe1}
#recommended-dates .trip-calendar [data-date].is-checkin,#recommended-dates .trip-calendar [data-date].is-checkout{background:var(--teal);color:#fff;font-weight:800;border-radius:8px;opacity:1}
#recommended-dates .trip-calendar button:disabled:not(.is-checkin){opacity:.3;cursor:default}
#recommended-dates .trip-calendar button:focus-visible{position:relative;outline:2px solid #e9936c;outline-offset:-2px;z-index:1}
#recommended-dates .trip-calendar [aria-current=date]:not(.is-checkin):not(.is-checkout){text-decoration:underline;text-underline-offset:4px}

.recommended-header{position:sticky;top:0;z-index:60}.recommended-header:focus-within{z-index:61}@media(max-width:760px){.recommended-hotels strong{font-size:11px}.recommended-hotels button{min-height:62px}}


/* seo-guide.css */
.destination-guide{margin:42px 0 36px;padding:32px;background:#f6f7f1;border:1px solid #dce5dd;border-radius:20px;color:#173f42;scroll-margin-top:24px}
.seo-guide-intro{max-width:820px;margin-bottom:25px}
.seo-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.35px;color:#526f63}
.destination-guide h2{font:800 clamp(23px,2.6vw,31px)/1.3 Manrope,Arial,sans-serif;letter-spacing:-.65px;margin:12px 0}
.destination-guide p{font-size:14px;line-height:1.75;margin:10px 0;color:#486462}
.destination-guide a{color:#285d55;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.destination-guide a:hover{color:#a44232}
.destination-guide a:focus-visible{outline:3px solid #ed745d;outline-offset:4px;border-radius:2px}
.seo-explore-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:700}
.seo-shortlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.seo-stay{padding:23px;background:#fffefb;border:1px solid #dce5dd;border-radius:14px;min-width:0}
.seo-stay .seo-stay-area{font-size:11px;letter-spacing:.3px;color:#597268;margin:0 0 8px}
.destination-guide h3{font:800 19px/1.4 Manrope,Arial,sans-serif;letter-spacing:-.3px;margin:0 0 10px}
.seo-stay dl{margin:17px 0}
.seo-stay dl>div{margin-top:12px}
.seo-stay dt{font-size:12px;font-weight:800;color:#31594f;margin:0 0 3px}
.seo-stay dd{font-size:13px;line-height:1.65;color:#486462;margin:0}
.seo-stay .seo-stay-caveat{padding:11px 13px;background:#fff1e5;border-radius:8px;font-size:13px;color:#654d3d}
.seo-stay .seo-evidence-date{font-size:11px;line-height:1.6;color:#5d7169;margin-top:17px}
.destination-guide .seo-source-links{font-size:12px;line-height:1.8;margin-bottom:0}
.seo-area-section{margin-top:32px;padding-top:24px;border-top:1px solid #d5e0d6}
.seo-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:20px}
.seo-area-grid article{min-width:0}
.seo-area-grid h3{font-size:16px;line-height:1.5}
.seo-area-grid p{font-size:13px}
.seo-method{margin-top:30px;padding-top:22px;border-top:1px solid #d5e0d6;max-width:920px}
.seo-method h2{font-size:21px}
.seo-method p{font-size:13px}
@media(max-width:900px){.destination-guide{padding:24px}.seo-area-grid{grid-template-columns:1fr;gap:18px}.seo-area-grid h3{margin-bottom:6px}.seo-area-grid p{margin-top:6px}}
@media(max-width:650px){.destination-guide{margin-top:26px;padding:19px 15px;border-radius:15px}.seo-shortlist{grid-template-columns:1fr;gap:15px}.seo-stay{padding:19px 16px}.seo-guide-intro{margin-bottom:20px}.destination-guide p{font-size:13px}.seo-method p{font-size:12px}.seo-stay .seo-source-links{line-height:2}.seo-stay .seo-evidence-date{font-size:11px}}

