@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('./assets/dmsans-normal-400.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('./assets/dmsans-normal-500.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600;font-display:swap;src:url('./assets/dmsans-normal-600.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:700;font-display:swap;src:url('./assets/dmsans-normal-700.ttf') format('truetype')}
@font-face{font-family:'Baskervville';font-style:normal;font-weight:400;font-display:swap;src:url('./assets/baskervville-normal-400.ttf') format('truetype')}
@font-face{font-family:'Baskervville';font-style:italic;font-weight:400;font-display:swap;src:url('./assets/baskervville-italic-400.ttf') format('truetype')}
:root{--sans:'DM Sans',Arial,sans-serif;--serif:'Baskervville',Georgia,serif;--ink:#1c2b23;--muted:#637069;--paper:#faf9f6;--line:#dcded5;--orange:#bc5030;--court:#c36540;--resort:#45816e;--academy:#ba913e;--edge:clamp(22px,4.8vw,80px)}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.5 var(--sans);-webkit-font-smoothing:antialiased}
main:focus{outline:0}button,input,select{font:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}button,a,input,select{touch-action:manipulation}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
img{display:block;max-width:100%}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}button:disabled{cursor:default}[hidden]{display:none!important}
.container{max-width:1632px;margin:0 auto;padding-left:var(--edge);padding-right:var(--edge)}
.skip{position:fixed;z-index:20;left:6px;top:6px;transform:translateY(-150%);padding:10px 16px;background:white;border:1px solid var(--ink)}.skip:focus{transform:translateY(0)}
.mast{background:#faf9f6;border-bottom:1px solid rgba(25,44,34,.08)}
.mast-inner{min-height:73px;display:flex;align-items:center;gap:clamp(28px,5vw,84px)}
.brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.brand span{font:400 32px/1 var(--serif);letter-spacing:-1.75px;color:#24352a}
.brand img{width:34px;height:34px}
.main-nav{display:flex;align-self:stretch;align-items:stretch;gap:32px}
.main-nav a{position:relative;display:flex;align-items:center;font-size:13.5px;font-weight:500;color:#52584f;white-space:nowrap}
.main-nav a:hover,.main-nav a[aria-current]{color:var(--orange)}
.main-nav a[aria-current]:after{content:"";position:absolute;height:2px;bottom:16px;left:0;right:0;background:var(--orange)}
.saved-nav{margin-left:auto;display:inline-flex;align-items:center;gap:8px;border:1px solid #cdd0c5;border-radius:30px;font-size:13px;font-weight:500;padding:8px 15px;line-height:1.4}
.saved-nav .icon-slot{display:flex}.saved-nav:hover,.saved-nav[aria-current]{background:#eeeee6;border-color:#aeb8a9}#saved-count{font-size:11px;border-radius:50px;padding:0 5px;background:#dbe0d5}
.hero{isolation:isolate;position:relative;overflow:hidden;background:#38524b;color:white}
.hero-image,.hero-shade{position:absolute;inset:0;z-index:-1}.hero-photo{height:100%;width:100%;object-fit:cover;object-position:center 55%}
.hero-shade{background:linear-gradient(90deg,rgba(12,24,20,.81) 0%,rgba(15,26,23,.67) 24%,rgba(14,28,24,.22) 54%,rgba(18,27,23,.03) 80%),linear-gradient(0deg,rgba(14,24,20,.45),transparent 27%)}
.hero-layout{position:relative;display:flex;align-items:center;min-height:clamp(390px,29.7vw,470px);padding-top:34px;padding-bottom:37px}
.hero-kicker,.micro{display:flex;align-items:center;gap:10px;font-size:10px;line-height:1.4;letter-spacing:1.85px;font-weight:700}
.hero-kicker{color:#f5e2ca}.hero-kicker span,.micro span{width:26px;height:1px;background:currentColor}
.hero h1{font:400 clamp(64px,5.1vw,82px)/.97 var(--serif);letter-spacing:-3.2px;margin:17px 0 14px;color:#fffdf7}
.hero h1 em{font-family:var(--serif);font-weight:400;color:#f5d2b3}
.hero-copy p{color:#fffdf8d9;font-size:clamp(14px,1.05vw,16px);line-height:1.55;letter-spacing:.02px}
.hero-cta,.solid-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--orange);color:#fff;border:1px solid transparent;border-radius:6px;font-weight:600;font-size:13px;padding:11px 18px;min-height:43px}
.hero-cta{margin-top:22px;border-radius:5px;background:#bd5738;padding:11px 16px;box-shadow:0 1px 4px #162a1826}
.hero-cta:hover,.solid-button:hover{background:#a44429}.hero-cta svg:last-child{margin-left:6px}
.hero-credit{position:absolute;right:var(--edge);bottom:27px;display:flex;align-items:center;gap:17px;text-shadow:0 1px 3px #17241fd9}
.hero-dest{display:flex;align-items:center;gap:9px}.hero-dest:hover strong{text-decoration:underline;text-underline-offset:3px}
.hero-dest .tiny-pin{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #ffffff73;border-radius:50%;background:#1f342744}
.hero-dest strong{display:block;font-size:12px;letter-spacing:.12px;font-weight:600}.hero-dest small{display:block;font-size:10px;line-height:1.6;color:#fffdf5db}
.hero-steps{border-left:1px solid #ffffff5c;padding-left:12px;display:flex;align-items:center;gap:3px;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.4px}
.hero-steps b{color:#fff9;margin:0 2px;font-weight:400}.hero-steps button{display:grid;place-items:center;width:26px;height:30px}.hero-steps button:hover{background:#ffffff25;border-radius:50%}
.explorer{padding-top:34px;padding-bottom:64px;scroll-margin-top:15px}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-head h2{font-size:clamp(36px,3.05vw,50px);line-height:1.12;letter-spacing:-1.9px}
.micro{color:#9d4b32;font-size:9px;letter-spacing:1.8px}.micro span{width:21px}.explorer-head .micro{margin-bottom:5px}
.view-switch{display:inline-flex;align-self:end;align-items:center;border:1px solid #d4d8cb;padding:3px;border-radius:7px;background:#f0f1e9;margin-bottom:2px}
.view-switch button{display:flex;align-items:center;justify-content:center;gap:7px;padding:6px 12px;font-weight:500;font-size:12px;color:#72796d;border-radius:4px}.view-switch button[aria-pressed=true]{background:#fcfcf8;color:#293c2f;box-shadow:0 1px 3px #1d2d1f26}
.toolbar{display:flex;align-items:center;gap:16px;margin:20px 0 18px}
.search-field{display:flex;align-items:center;gap:9px;height:39px;border:1px solid #d5d9ce;background:#fffefa;border-radius:6px;padding:0 12px;width:clamp(238px,23vw,340px);color:#718074}
.search-field:focus-within{outline:2px solid #bc503070;outline-offset:1px}.search-field input{border:0;background:transparent;width:100%;min-width:0;outline:none;font-size:12.5px;color:var(--ink);padding:8px 0}
.search-field input:focus-visible{outline:0}.search-field input::placeholder{color:#777f76}
.category-bar{display:flex;align-items:center;gap:7px}
.category-bar button,.more-filters{height:35px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 13px;white-space:nowrap;border:1px solid #d8dbd1;border-radius:50px;font-size:12px;font-weight:500;background:transparent}
.category-bar button:hover,.more-filters:hover{background:#efefe7}.category-bar button[aria-pressed=true]{background:#263d31;color:white;border-color:#263d31}.dot,.type-tag i,.live-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--court);flex:none}
.dot.resort,.type-tag.resort i{background:var(--resort)}.dot.academy,.type-tag.academy i{background:var(--academy)}
.more-filters{margin-left:auto;border-radius:6px;height:36px;gap:8px;padding:0 12px}.filter-count{font-size:10px;color:white;background:var(--orange);border-radius:20px;padding:0 5px}
.applied:empty{display:none}.applied{display:flex;gap:6px;flex-wrap:wrap;margin:-4px 0 15px}.applied button{display:inline-flex;align-items:center;gap:6px;font-size:11px;border-radius:4px;background:#e8eddf;padding:4px 8px}
.explore-layout{display:grid;grid-template-columns:minmax(0,1.92fr) minmax(275px,1fr);gap:clamp(22px,2.5vw,40px);align-items:start}
.map-panel{position:relative;border:1px solid #ccd8cc;background:#d6e7e6;border-radius:10px;overflow:hidden;isolation:isolate}
#world-map{width:100%;height:clamp(355px,27.6vw,442px);position:relative}
.map-summary{position:absolute;left:13px;top:13px;z-index:2;display:flex;align-items:center;gap:7px;border:1px solid #c7d5c8aa;background:#fffef9ee;border-radius:5px;padding:6px 10px;font-size:10.5px;color:#4a5c50;box-shadow:0 1px 3px #3046380a;pointer-events:none}.live-dot{background:#5c8570;width:6px;height:6px}
.picks{min-width:0;padding-top:0}
.picks-title{display:flex;align-items:center;gap:13px;margin:-2px 0 3px}.picks-title h3{font-size:clamp(24px,2vw,31px);line-height:1.3;white-space:nowrap;letter-spacing:-1.2px}.picks-title>svg{color:var(--orange);width:16px}.picks-rule{height:1px;flex:1;background:var(--line)}
.pick{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.pick-media>img{width:clamp(83px,7.4vw,120px);height:clamp(64px,5.65vw,90px);object-fit:cover;border-radius:5px;background:#e1e4d7;flex:none}.pick-copy{flex:1;min-width:0}.pick>svg{color:#929a8f;flex:none;transition:transform .2s}.pick:hover>svg{transform:translateX(3px);color:var(--orange)}.pick:hover strong,.destination-card h3>a:hover{color:var(--orange)}
.type-tag{display:inline-flex;align-items:center;gap:5px;text-transform:uppercase;line-height:1.1;font-size:9px;font-weight:700;letter-spacing:1.2px;color:#84513b}.type-tag i{width:6px;height:6px}.type-tag.resort{color:#477261}.type-tag.academy{color:#8a692b}
.pick strong{font:400 clamp(18px,1.55vw,26px)/1.12 var(--serif);display:block;letter-spacing:-.65px;margin:4px 0 6px}.geo{display:flex;align-items:center;gap:4px;font-family:var(--sans);font-size:11px;line-height:1.35;color:#667166}.pick .geo svg{color:#788375}
.text-link{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:600;color:var(--orange)}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.all-link{margin-top:14px}
#picks-list.scroll-picks{max-height:calc(clamp(355px,27.6vw,442px) - 65px);overflow:auto;scrollbar-width:thin;scrollbar-color:#adb9a8 transparent}
.inspiration{margin-top:54px;padding-top:31px;border-top:1px solid var(--line)}.inspiration h2{font-size:clamp(29px,2.5vw,42px)}
.trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}
.trip-card{position:relative;isolation:isolate;min-height:175px;overflow:hidden;border-radius:8px;background:#394d3e;color:white;display:flex;align-items:flex-end;justify-content:space-between;gap:14px;text-align:left;padding:18px 21px}
.trip-card:before{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,#10261ed1);z-index:-1}.trip-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:-2;transition:transform .4s}.trip-card:hover img{transform:scale(1.035)}.trip-card span{font:400 clamp(23px,2.3vw,36px)/1.1 var(--serif);letter-spacing:-.9px}.trip-card svg{margin-bottom:3px}
.inner-page{padding-top:52px;padding-bottom:65px;min-height:72vh}
.inner-page>h1{font-size:clamp(52px,5.6vw,85px);line-height:1.06;letter-spacing:-3.6px;margin:7px 0 12px}
.intro{color:var(--muted);font-size:16px;margin-bottom:34px}.directory-line,.result-line{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:14px}
.directory-line{padding:13px 0 0;border-top:1px solid var(--line)}.directory-line select{font-size:12px;border:0;background:transparent;color:var(--ink);padding:5px}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.destination-card{position:relative;background:#fdfdf9;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.photo-link{display:block;overflow:hidden;aspect-ratio:1.95;background:#dce1d4}.photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-link:hover img{transform:scale(1.035)}
.bookmark-card{position:absolute;top:12px;right:12px;background:#fffdf4ee;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;box-shadow:0 1px 3px #0002}.is-saved svg,.gd-button[aria-pressed=true] svg{fill:currentColor}
.card-content{padding:17px 18px 20px}.card-kicker{display:flex;align-items:center;justify-content:space-between;gap:7px}.card-kicker>span:last-child{font-size:11px;color:var(--muted)}
.destination-card h3{font-size:clamp(23px,2vw,32px);line-height:1.15;letter-spacing:-1.15px;margin:10px 0 5px}.card-content p{font-size:13px;line-height:1.5;color:#546056;margin-top:11px}
.empty-state{text-align:center;padding:34px 20px;border:1px dashed #b8c3b3;border-radius:9px;color:var(--muted)}
.empty-state>svg{color:var(--orange);margin:auto auto 8px}.empty-state h3{color:var(--ink);font-size:28px;letter-spacing:-1px}.empty-state p{margin:7px auto 17px;max-width:420px;font-size:14px}.card-grid>.empty-state{grid-column:1/-1}
.filter-dialog{width:min(440px,calc(100vw - 30px));border:1px solid var(--line);border-radius:13px;padding:25px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #17281f3b}.filter-dialog::backdrop{background:#17281f68}
.dialog-head,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head h2{font-size:28px;letter-spacing:-1.1px}.circle-btn{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:31px;height:31px}
.filter-fields{display:grid;gap:12px;padding:20px 0}.filter-fields label{font-size:12px;font-weight:600;display:grid;gap:4px}.filter-fields select{background:#fffef9;border-radius:5px;border:1px solid #c9d0c1;padding:8px;font-size:14px}
.dialog-actions{border-top:1px solid var(--line);padding-top:18px}.underlink{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.toast{position:fixed;left:50%;bottom:24px;z-index:20;transform:translate(-50%,12px);padding:9px 16px;white-space:nowrap;border-radius:25px;background:#21392d;color:#fff;font-size:12px;box-shadow:0 3px 16px #233d2525;opacity:0;transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
footer{border-top:1px solid var(--line);background:#f1f2ea}.footer-inner{min-height:91px;display:flex;align-items:center;justify-content:space-between;gap:18px}.footer-inner .brand span{font-size:24px;letter-spacing:-1.2px}.footer-inner .brand img{width:27px;height:27px}.footer-inner nav{display:flex;align-items:center;gap:25px;font-size:12px;color:var(--muted)}.footer-inner nav a:hover{color:var(--orange)}
@media(min-width:1670px){.hero-layout{min-height:485px}.hero-credit{right:var(--edge)}}
@media(max-width:1000px){.explore-layout{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:20px}.toolbar{gap:10px}.category-bar{gap:5px}.category-bar button{padding:0 10px}.search-field{width:216px}.pick{gap:9px}.pick-media>img{width:76px;height:65px}.pick .geo{font-size:10px}.pick strong{font-size:19px}.card-grid{gap:15px}.hero-credit{bottom:19px}.hero-layout{min-height:375px}}
@media(max-width:760px){:root{--edge:22px}.mast-inner{min-height:64px;gap:26px}.brand span{font-size:27px;letter-spacing:-1.25px}.brand img{width:29px;height:29px}.brand{gap:7px}.main-nav{gap:18px}.main-nav a,.saved-nav{font-size:12px}.main-nav a[aria-current]:after{bottom:12px}.saved-nav{padding:7px 10px;gap:5px}.hero-layout{min-height:378px}.hero h1{font-size:62px}.hero-credit{bottom:17px;right:var(--edge);gap:10px}.hero-dest strong{font-size:11px}.hero-dest small{font-size:9px}.hero-steps{padding-left:6px}.hero-dest .tiny-pin{display:none}.hero-copy p{font-size:14px}.hero-layout{padding-bottom:45px}.hero-shade{background:linear-gradient(90deg,#10241bdd,#13261b87 48%,#14241c22),linear-gradient(0deg,#15261ed1,transparent 23%)}.toolbar{flex-wrap:wrap;gap:9px}.search-field{flex:1;width:auto;min-width:180px}.category-bar{order:3;width:100%}.more-filters{order:2}.explore-layout{grid-template-columns:1fr;gap:22px}.picks-title{margin-top:0}.picks-title h3{font-size:28px}.pick{gap:14px;padding:11px 0}.pick-media>img{width:105px;height:69px}.pick strong{font-size:23px}.pick .geo{font-size:11px}#picks-list.scroll-picks{max-height:340px}#world-map{height:350px}.explorer{padding-top:27px}.inspiration{margin-top:31px}.trip-grid{gap:10px}.trip-card{min-height:138px;padding:13px}.trip-card span{font-size:23px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inner-page{padding-top:35px}}
@media(max-width:540px){:root{--edge:18px}.mast-inner{flex-wrap:wrap;gap:0;min-height:0;padding-top:12px}.mast .brand span{font-size:27px}.saved-nav{margin-left:auto}.main-nav{width:100%;order:3;gap:24px;height:35px}.main-nav a{font-size:12px;line-height:1}.main-nav a[aria-current]:after{bottom:0}.hero-layout{min-height:401px;padding-top:28px;padding-bottom:63px}.hero h1{font-size:60px;letter-spacing:-2.5px;margin-top:17px}.hero-shade{background:linear-gradient(90deg,#10231bc2,#1c2e1e73 62%,#15261e1c),linear-gradient(0deg,#14241fba,transparent 28%)}.hero-kicker{font-size:9px;letter-spacing:1.5px}.hero-copy p{font-size:13.5px}.hero-cta{margin-top:19px;min-height:40px;font-size:12px}.hero-credit{bottom:13px;left:var(--edge);justify-content:space-between}.hero-dest{gap:5px}.hero-dest .tiny-pin{display:flex;width:22px;height:22px}.tiny-pin svg{width:13px}.hero-dest strong,.hero-dest small{line-height:1.28}.hero-steps{border:0;font-size:10px}.hero-steps button{height:32px;width:29px}.section-head h2{font-size:34px;letter-spacing:-1.55px}.view-switch button{gap:4px;padding:5px 7px;font-size:11px}.view-switch svg{width:14px}.micro{font-size:8px;letter-spacing:1.3px}.toolbar{margin:15px 0 13px}.category-bar{gap:5px}.category-bar button{height:32px;padding:0 10px;font-size:11px}.search-field{height:37px}.more-filters{height:36px}.map-summary{top:8px;left:8px;font-size:9px;padding:5px 7px}#world-map{height:300px}.explore-layout{gap:21px}.inspiration h2{font-size:30px}.trip-grid{grid-template-columns:1fr}.trip-card{min-height:145px}.card-grid{grid-template-columns:1fr}.inner-page>h1{font-size:49px}.intro{font-size:14px;margin-bottom:20px}.card-content{padding:17px}.footer-inner{align-items:flex-start;flex-direction:column;justify-content:center;gap:14px;padding-top:23px;padding-bottom:23px}.footer-inner nav{gap:18px;font-size:11px}.explorer{padding-bottom:35px}.bookmark-card{height:39px;width:39px}}
@media(max-width:360px){:root{--edge:13px}.category-bar button{padding:0 8px}.hero h1{font-size:54px}.hero-break{display:none}.explorer-head h2{font-size:30px}.view-switch button{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.hero-photo.photo-monte-carlo{object-position:center 54%}
@media(max-width:540px){.explorer-head{gap:8px}.explorer-head h2{font-size:30px;letter-spacing:-1.6px}.view-switch{flex:none}}
.region-field{display:inline-flex;align-items:center;gap:5px;padding:0 9px;height:36px;border:1px solid #d8dbd1;border-radius:6px;margin-left:auto;min-width:0}
.region-field select{border:0;background:transparent;font:500 12px/1.2 var(--sans);width:112px;height:32px;cursor:pointer}
.toolbar .more-filters{margin-left:0}
.photo-link,.gd-guide-card{position:relative}
.area-photo{position:absolute;left:9px;top:9px;padding:3px 7px;border-radius:3px;color:white;background:#193127c9;font:500 10px/1.3 var(--sans)}
.gd-photo-context{display:block;font-weight:600}
@media(max-width:960px){
  .toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"search region" "cats more";row-gap:9px}
  .toolbar .search-field{grid-area:search;min-width:0;width:100%}
  .toolbar .region-field{grid-area:region;margin-left:0;justify-self:end}
  .toolbar .category-bar{grid-area:cats;width:auto}
  .toolbar .more-filters{grid-area:more;justify-self:end}
}
@media(max-width:540px){
  .toolbar{grid-template-columns:minmax(0,1fr) auto 34px;grid-template-areas:"search region region" "cats cats more";gap:7px}
  .toolbar .region-field{width:117px}.region-field select{width:83px;font-size:11px}
  .toolbar .category-bar{gap:4px}.toolbar .category-bar button{padding:0 8px}
  .toolbar .more-filters{width:34px;height:32px;padding:0;position:relative}.toolbar .filter-word{display:none}
  .toolbar .filter-count{position:absolute;top:-5px;right:-6px}
}

.pick-media{position:relative;display:block;flex:none}.pick-media .area-photo{top:auto;bottom:3px;left:3px;padding:2px 4px;font-size:8px}
