*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f6f2e8;--green: #1f4d3a;--green-light: #2d6b4e;--green-pale: #d4e3d8;--text: #111;--muted: #777;--border: #e2ddd0;--serif: "Instrument Serif", Georgia, serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius: 12px}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button{cursor:pointer;font-family:var(--sans);border:none;outline:none}nav{position:sticky;top:0;z-index:100;background:var(--bg);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:32px;padding:0 40px;height:56px}.nav-logo{font-family:var(--serif);font-size:20px;letter-spacing:-.3px;display:flex;align-items:center;gap:8px;flex-shrink:0}.nav-logo svg{width:22px;height:22px;color:var(--green)}.nav-logo em{font-style:italic;color:var(--green)}.nav-links{display:flex;gap:28px;flex:1}.nav-links a{font-size:14px;color:var(--muted);transition:color .15s}.nav-links a:hover,.nav-links a.active{color:var(--text)}.nav-actions{display:flex;align-items:center;gap:16px}.nav-icon{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;display:flex;align-items:center}.nav-icon:hover{color:var(--text)}.nav-cta{background:var(--green);color:#fff;font-size:13.5px;font-weight:500;padding:8px 18px;border-radius:99px;display:flex;align-items:center;gap:6px;transition:background .15s}.nav-cta:hover{background:var(--green-light)}#hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:56px 40px 64px;gap:60px;max-width:1280px;margin:0 auto}.hero-content{max-width:600px}.hero-weather{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);background:#ece8dc;border-radius:99px;padding:5px 14px;margin-bottom:20px}.hero-tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}.hero-title{font-family:var(--serif);font-size:clamp(42px,5vw,68px);line-height:1.08;letter-spacing:-1px;margin-bottom:22px}.hero-title em{font-style:italic;color:var(--green)}.hero-sub{color:#555;font-size:15px;line-height:1.65;max-width:440px;margin-bottom:28px}.hero-search{display:flex;align-items:center;gap:0;background:#fff;border:1.5px solid var(--border);border-radius:99px;padding:4px 4px 4px 18px;max-width:440px;margin-bottom:16px}.hero-search input{flex:1;border:none;outline:none;font-size:14px;background:transparent;color:var(--text);font-family:var(--sans)}.hero-search input::placeholder{color:#aaa}.search-btn{background:var(--green);color:#fff;font-size:14px;font-weight:500;padding:9px 22px;border-radius:99px}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}.chip{font-size:13px;padding:6px 16px;border-radius:99px;border:1.5px solid var(--border);background:transparent;cursor:pointer;transition:all .15s;color:var(--text)}.chip.active,.chip:hover{background:var(--green);color:#fff;border-color:var(--green)}.hero-stats{display:flex;gap:36px}.hero-stat-n{font-family:var(--serif);font-size:28px}.hero-stat-l{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:2px}.hero-visual{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:5/4}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-badge{position:absolute;bottom:20px;right:20px;background:#fff;border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 4px 16px #0000001f;font-size:13px}.hero-badge-n{font-family:var(--serif);font-size:22px;font-weight:400}.hero-badge-text{color:var(--muted);font-size:12px;line-height:1.4}.section{padding:72px 40px;max-width:1280px;margin:0 auto}.section-full{padding:72px 40px}.section-tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.section-title{font-family:var(--serif);font-size:clamp(30px,3.5vw,44px);line-height:1.12}.section-title em{font-style:italic;color:var(--green)}.section-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:36px;gap:16px}.see-all{font-size:13px;color:var(--muted);white-space:nowrap}.see-all:hover{color:var(--text)}#guides{border-top:1px solid var(--border)}.guides-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.guide-featured{background:var(--green);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:1fr 1fr;min-height:380px;position:relative}.guide-featured-body{padding:36px 32px;display:flex;flex-direction:column;justify-content:space-between}.guide-num{font-family:var(--serif);font-size:80px;line-height:1;color:#ffffff26;margin-bottom:-16px}.guide-kicker{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#fff9;margin-bottom:8px}.guide-title{font-family:var(--serif);font-size:26px;color:#fff;line-height:1.2;margin-bottom:10px}.guide-sub{font-size:13.5px;color:#ffffffbf;line-height:1.55;flex:1}.guide-meta{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}.guide-meta-row{font-size:12px;color:#fff9}.guide-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#ffffffd9;margin-top:10px}.guide-link:hover{color:#fff}.guide-featured-img{position:relative}.guide-featured-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.guide-top-badge{position:absolute;top:16px;left:16px;z-index:1;background:#fff;color:var(--text);font-size:12px;font-weight:600;padding:4px 12px;border-radius:99px}.guides-small{display:flex;flex-direction:column;gap:12px}.guide-card{background:#fff;border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:1fr 2fr;min-height:110px}.guide-card-img{background:var(--green-pale);position:relative;overflow:hidden}.guide-card-body{padding:16px 18px}.guide-card-kicker{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.guide-card-title{font-family:var(--serif);font-size:16px;line-height:1.25;margin-bottom:4px}.guide-card-sub{font-size:12px;color:var(--muted);line-height:1.4}.guide-card-meta{font-size:11px;color:#aaa;margin-top:8px}#categories{background:#fff}.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cat-card{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3;cursor:pointer}.cat-card:first-child{grid-column:span 1}.cat-card:nth-child(4),.cat-card:nth-child(5){aspect-ratio:5/3}.cat-card-img{position:absolute;inset:0;background:var(--green-pale)}.cat-card-img img{transition:transform .4s}.cat-card:hover .cat-card-img img{transform:scale(1.05)}.cat-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(20,40,30,.75) 0%,rgba(20,40,30,.1) 60%,transparent 100%)}.cat-card-body{position:absolute;bottom:0;left:0;right:0;padding:18px 20px}.cat-card-name{font-family:var(--serif);font-size:20px;color:#fff}.cat-card-count{font-size:12px;color:#ffffffbf}#trending{border-top:1px solid var(--border)}.trending-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.trending-card{background:#fff;border-radius:var(--radius);overflow:hidden;display:flex;align-items:center;gap:0;min-height:90px}.trending-num{font-family:var(--serif);font-size:13px;color:var(--muted);padding:16px;min-width:42px;text-align:center}.trending-img{width:72px;height:72px;flex-shrink:0;position:relative;background:var(--green-pale);border-radius:8px;overflow:hidden;margin:9px 0 9px -4px}.trending-body{padding:14px 16px;flex:1}.trending-cat{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.trending-name{font-family:var(--serif);font-size:16px;line-height:1.2;margin:2px 0 4px}.trending-stars{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:4px}.star-icon{color:#e8a020}#catalog{border-top:1px solid var(--border)}.catalog-filters{display:flex;gap:8px;margin-bottom:28px;flex-wrap:wrap}.filter-btn{font-size:13px;padding:7px 18px;border-radius:99px;border:1.5px solid var(--border);background:transparent;cursor:pointer;transition:all .15s;color:var(--text)}.filter-btn.active{background:var(--green);color:#fff;border-color:var(--green)}.filter-btn:hover:not(.active){border-color:#999}.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.place-card{background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);transition:box-shadow .2s}.place-card:hover{box-shadow:0 4px 20px #00000014}.place-card-img{position:relative;aspect-ratio:4/3;background:var(--green-pale)}.place-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.place-card-badge{position:absolute;top:10px;left:10px;background:#0000008c;color:#fff;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:99px}.place-card-fav{position:absolute;top:10px;right:10px;background:#fff;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;color:#999}.place-card-fav:hover{color:#c0392b}.place-card-body{padding:14px}.place-card-name{font-family:var(--serif);font-size:17px;line-height:1.2;margin-bottom:4px}.place-card-loc{font-size:12px;color:var(--muted)}.place-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.place-card-rating{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:4px}.place-card-link{font-size:12px;color:var(--green)}.place-card-link:hover{text-decoration:underline}footer{background:var(--green);color:#fffc;padding:48px 40px;margin-top:0}.footer-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}.footer-logo{font-family:var(--serif);font-size:22px;color:#fff;margin-bottom:10px}.footer-logo em{font-style:italic;opacity:.75}.footer-tagline{font-size:13px;line-height:1.6;max-width:280px}.footer-col-title{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff80;margin-bottom:14px}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a{font-size:13.5px;transition:color .15s}.footer-links a:hover{color:#fff}.footer-bottom{max-width:1280px;margin:28px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:12px;color:#fff6;display:flex;justify-content:space-between}.hidden{display:none!important}.breadcrumb{max-width:1280px;margin:0 auto;padding:20px 40px 0;font-size:13px;color:var(--muted)}.breadcrumb a:hover{color:var(--text)}.breadcrumb span{margin:0 6px}.page-head{max-width:1280px;margin:0 auto;padding:28px 40px 8px}.page-head h1{font-family:var(--serif);font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.5px}.page-head h1 em{font-style:italic;color:var(--green)}.page-head p{color:#555;font-size:15px;line-height:1.6;max-width:560px;margin-top:12px}.place-hero{max-width:1280px;margin:0 auto;padding:24px 40px 0}.place-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;border-radius:16px;overflow:hidden;aspect-ratio:16/7}.place-gallery .g-main{grid-row:span 2}.place-gallery>div{position:relative;background:var(--green-pale);overflow:hidden}.place-gallery img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.place-detail{max-width:1280px;margin:0 auto;padding:40px;display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start}.place-detail h1{font-family:var(--serif);font-size:clamp(34px,4vw,48px);line-height:1.1;letter-spacing:-.5px}.place-detail-cat{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.place-detail-rating{display:flex;align-items:center;gap:8px;margin:14px 0 18px;font-size:14px;color:#444}.place-detail-blurb{font-size:16px;line-height:1.7;color:#333;max-width:560px}.place-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.place-tag{font-size:12.5px;color:var(--green);background:var(--green-pale);padding:5px 14px;border-radius:99px}.place-aside{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:24px;position:sticky;top:76px}.place-aside-row{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);font-size:14px}.place-aside-row:last-of-type{border-bottom:none}.place-aside-row svg{width:18px;height:18px;color:var(--green);flex-shrink:0;margin-top:1px}.place-aside-label{color:var(--muted);font-size:12px}.place-aside-val{color:var(--text)}.place-aside .nav-cta{width:100%;justify-content:center;margin-top:18px;padding:12px}.form-wrap{max-width:620px;margin:0 auto;padding:16px 40px 80px}.form-field{margin-bottom:18px}.form-field label{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.form-field input,.form-field textarea,.form-field select{width:100%;font-family:var(--sans);font-size:14px;color:var(--text);background:#fff;border:1.5px solid var(--border);border-radius:10px;padding:11px 14px;outline:none;transition:border-color .15s}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--green)}.form-field textarea{min-height:110px;resize:vertical}.form-submit{background:var(--green);color:#fff;font-size:14px;font-weight:500;padding:12px 28px;border-radius:99px}.form-submit:hover{background:var(--green-light)}.prose{max-width:680px;margin:0 auto;padding:16px 40px 80px}.prose p{font-size:16px;line-height:1.75;color:#333;margin-bottom:18px}.prose h2{font-family:var(--serif);font-size:28px;margin:36px 0 14px}.guides-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.guide-list-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}.guide-list-card:hover{box-shadow:0 4px 20px #00000014}.guide-list-img{aspect-ratio:16/9;background:var(--green-pale);position:relative;overflow:hidden}.guide-list-body{padding:20px 22px 24px}.guide-list-title{font-family:var(--serif);font-size:22px;line-height:1.2;margin-bottom:8px}.guide-cover{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/7}.guide-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.guide-cover-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(20,40,30,.85) 0%,rgba(20,40,30,.25) 65%,transparent 100%)}.guide-cover-body{position:absolute;bottom:0;left:0;right:0;padding:32px 36px}.guide-cover-body h1{font-family:var(--serif);font-size:clamp(28px,4vw,46px);color:#fff;line-height:1.1;margin:4px 0 10px}.guide-cover-body p{color:#ffffffd9;font-size:15px;max-width:560px;line-height:1.55}.guide-cover-meta{font-size:12.5px!important;color:#fff9!important;margin-top:14px}.newsletter{background:var(--green);color:#fff;padding:56px 40px}.newsletter-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center}.newsletter-title{font-family:var(--serif);font-size:clamp(26px,3vw,38px);line-height:1.15;color:#fff}.newsletter-title em{font-style:italic;color:var(--green-pale)}.newsletter-sub{font-size:14px;color:#ffffffbf;margin-top:10px;max-width:460px;line-height:1.6}.newsletter-form{display:flex;align-items:center;background:#fff;border-radius:99px;padding:5px 5px 5px 18px;min-width:360px}.newsletter-form input{flex:1;border:none;outline:none;background:transparent;font-size:14px;font-family:var(--sans);color:var(--text)}.newsletter-form input::placeholder{color:#aaa}.newsletter-form button{background:var(--green);color:#fff;font-size:14px;font-weight:500;padding:10px 24px;border-radius:99px;white-space:nowrap;transition:background .15s}.newsletter-form button:hover{background:#14352a}.newsletter-form button:disabled{opacity:.6;cursor:default}.newsletter-msg{grid-column:1 / -1;font-size:14px;margin-top:4px}@media(max-width:960px){#hero{grid-template-columns:1fr;min-height:auto;padding:40px 20px}.hero-visual{display:none}.section{padding:48px 20px}.guides-grid{grid-template-columns:1fr}.cat-grid,.catalog-grid{grid-template-columns:repeat(2,1fr)}.trending-grid{grid-template-columns:1fr}nav{padding:0 20px;gap:16px}.nav-links{display:none}.footer-inner{grid-template-columns:1fr;gap:28px}.breadcrumb,.page-head,.place-hero,.place-detail,.form-wrap,.prose{padding-left:20px;padding-right:20px}.place-detail{grid-template-columns:1fr;gap:28px}.place-aside{position:static}.place-gallery{grid-template-columns:1fr 1fr;aspect-ratio:4/3}.place-gallery .g-main{grid-row:span 1;grid-column:span 2}.guides-list{grid-template-columns:1fr}.newsletter{padding:40px 20px}.newsletter-inner{grid-template-columns:1fr;gap:20px}.newsletter-form{min-width:0;width:100%}}
