.page-destinations { background:#fffdfa; color:#19312a; }
.page-destinations .container { width:min(1280px,calc(100% - 48px)); }
.page-destinations .site-header .header-inner { width:min(1200px,calc(100% - 56px)); }
.destination-directory-hero { position:relative; display:flex; align-items:center; min-height:320px; overflow:hidden; background:#1b343d; color:#fff; }
.destination-directory-hero>img,.destination-directory-shade { position:absolute; inset:0; width:100%; height:100%; }
.destination-directory-hero>img { object-fit:cover; object-position:center center; }
.destination-directory-shade { background:linear-gradient(90deg,#071e26cf 0%,#14334479 39%,#1537440d 80%),linear-gradient(0deg,#0b272b4d,transparent 65%); }
.page-destinations .destination-directory-hero-inner { position:relative; z-index:1; width:min(1200px,calc(100% - 56px)); padding-top:46px; padding-bottom:46px; color:#fff; }
.destination-directory-hero-inner > span { color:#e5f1f1; font-size:12px; font-weight:800; letter-spacing:.18em; }
.destination-directory-hero h1 { margin:12px 0 15px; font-family:"Noto Serif SC","Songti SC","SimSun",serif; font-size:clamp(37px,4vw,54px); line-height:1.2; }
.destination-directory-hero h1 span { color:#ef8258; }
.destination-directory-hero p { margin:0; color:#f4f8f7; font-size:16px; line-height:1.75; }
.destination-directory-toolbar { position:sticky; top:70px; z-index:12; border-bottom:1px solid #e9ede7; background:#fffdf9f2; backdrop-filter:blur(10px); }
.destination-directory-toolbar-inner { display:flex; align-items:center; justify-content:space-between; gap:22px; min-height:77px; }
.destination-directory-filters { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.destination-directory-filters a { display:inline-flex; align-items:center; justify-content:center; gap:11px; min-width:88px; min-height:36px; padding:8px 13px; border:1px solid #e6eae5; border-radius:999px; background:#fff; color:#345247; font-size:12px; font-weight:750; text-decoration:none; box-shadow:0 2px 9px #1f49300a; }
.destination-directory-filters a:hover { border-color:#ebb761; }
.destination-directory-filters a.is-active { border-color:#f0be6a; background:#f6c976; color:#26352e; box-shadow:0 5px 13px #dba35438; }
.destination-directory-filters small { color:inherit; font-size:10px; opacity:.7; }
.destination-directory-search { display:flex; align-items:center; flex:none; width:184px; height:38px; padding:0 8px 0 12px; border:1px solid #e1e7e2; border-radius:999px; background:#fff; }
.destination-directory-search:focus-within { border-color:#d4a85c; box-shadow:0 0 0 3px #f0c16c38; }
.destination-directory-search input { width:100%; min-width:0; border:0; outline:0; background:none; color:#213a30; font-size:12px; }
.destination-directory-search input::placeholder { color:#9ca9a1; }
.destination-directory-search button { flex:none; width:28px; height:28px; border:0; background:none; color:#32564a; font-size:22px; line-height:1; cursor:pointer; }
.destination-directory-content { padding-top:27px; padding-bottom:95px; }
.destination-directory-result-count { margin:0 0 24px; color:#697d71; font-size:13px; }
.destination-directory-result-count a { color:#226db8; font-weight:750; text-decoration:none; }
.destination-region + .destination-region { margin-top:65px; padding-top:34px; border-top:1px solid #ebeee9; }
.destination-region-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:17px; }
.destination-region-heading>div>span { color:#e47e52; font-size:10px; font-weight:850; letter-spacing:.22em; }
.destination-region-heading h2 { margin:8px 0 5px; font-family:"Noto Serif SC","Songti SC","SimSun",serif; font-size:clamp(25px,2.5vw,35px); letter-spacing:-.04em; }
.destination-region-heading p { margin:0; color:#798b81; font-size:13px; }
.destination-region-heading>strong { align-self:center; flex:none; color:#e2774b; font-size:13px; }
.destination-province-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.destination-province-card { display:block; min-width:0; overflow:hidden; border:1px solid #e7ebe7; border-radius:11px; background:#fff; color:inherit; text-decoration:none; box-shadow:0 5px 16px #21392a0b; transition:transform .2s,box-shadow .2s; }
.destination-province-card:hover { transform:translateY(-3px); box-shadow:0 12px 25px #21392a1a; }
.destination-province-image { display:block; height:113px; overflow:hidden; background:#dae8dc; }
.destination-province-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.destination-province-card:hover img { transform:scale(1.04); }
.destination-province-copy { position:relative; display:block; min-height:68px; padding:10px 34px 12px 13px; }
.destination-province-name { display:flex; align-items:baseline; gap:8px; min-width:0; }
.destination-province-name strong { color:#19362d; font-family:"Noto Serif SC","Songti SC","SimSun",serif; font-size:19px; line-height:1.3; white-space:nowrap; }
.destination-province-name small { overflow:hidden; color:#7a8a97; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.destination-province-tagline { display:block; overflow:hidden; margin-top:5px; color:#74867d; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.destination-province-arrow { position:absolute; right:13px; bottom:12px; color:#2e6857; font-size:18px; }
.destination-directory-empty { min-height:220px; padding:55px 30px; border:1px dashed #d7e1d9; border-radius:15px; background:#fafbf7; text-align:center; }
.destination-directory-empty h2 { margin:0 0 8px; font-size:21px; }
.destination-directory-empty p { color:#71867a; font-size:13px; }
.destination-directory-empty a { color:#226db8; font-size:13px; font-weight:800; text-decoration:none; }
@media(max-width:1100px) { .destination-directory-toolbar { top:70px; }.destination-directory-toolbar-inner { flex-wrap:wrap; gap:10px; padding-top:14px; padding-bottom:14px; }.destination-directory-filters { flex:1 1 100%; }.destination-directory-search { margin-left:auto; }.destination-province-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1000px) { .page-destinations .site-header .header-inner { width:min(100% - 40px,1200px); } }
@media(max-width:680px) { .page-destinations .container { width:min(100% - 28px,640px); }.page-destinations .site-header .header-inner { width:min(100% - 34px,1200px); }.destination-directory-hero { height:350px; }.destination-directory-hero>img { object-position:54% center; }.destination-directory-shade { background:linear-gradient(90deg,#071e26dc,#14334493 70%,#1537444d); }.destination-directory-hero h1 { font-size:37px; }.destination-directory-hero p { font-size:13px; }.destination-directory-toolbar { position:static; }.destination-directory-toolbar-inner { display:block; }.destination-directory-filters { flex-wrap:nowrap; overflow-x:auto; margin:0 -14px; padding:1px 14px 10px; scrollbar-width:none; }.destination-directory-filters::-webkit-scrollbar { display:none; }.destination-directory-filters a { flex:none; min-width:78px; }.destination-directory-search { width:100%; margin:2px 0 0; }.destination-directory-content { padding-top:25px; padding-bottom:65px; }.destination-region + .destination-region { margin-top:42px; padding-top:27px; }.destination-region-heading { align-items:flex-start; }.destination-region-heading h2 { font-size:25px; }.destination-region-heading p { font-size:12px; line-height:1.5; }.destination-region-heading>strong { font-size:11px; white-space:nowrap; }.destination-province-grid { grid-template-columns:1fr; gap:9px; }.destination-province-card { display:grid; grid-template-columns:116px minmax(0,1fr); min-height:104px; }.destination-province-image { height:100%; min-height:104px; }.destination-province-copy { align-self:center; min-height:0; }.destination-province-name strong { font-size:17px; }.destination-province-tagline { font-size:11px; } }
@media(max-width:680px) { .page-destinations .destination-directory-hero-inner { width:min(100% - 28px,640px); padding-top:38px; padding-bottom:45px; }.destination-directory-hero p { font-size:14px; } }
