:root{--wine:#7d2525;--wine-dark:#551b1b;--cream:#f6f0e6;--ink:#201d1a;--muted:#6c655e;--line:#d9d0c4;--paper:#fffdf8;--gold:#d8aa64}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{height:78px;border-bottom:1px solid rgba(32,29,26,.1);background:rgba(255,253,248,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:11px;align-items:center}.brand-mark{display:grid;place-items:center;width:38px;height:42px;background:var(--wine);color:#fff;font:700 25px/1 "Fraunces",serif;border-radius:50% 50% 45% 45%}.brand strong,.brand small{display:block;line-height:1}.brand strong{font:700 19px "Fraunces",serif}.brand small{text-transform:uppercase;letter-spacing:.26em;font-size:8px;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.site-header nav a:hover{color:var(--wine)}.nav-cta{padding:10px 16px;border:1px solid var(--wine);border-radius:100px;color:var(--wine)}.hero{min-height:655px;background:var(--cream);position:relative;overflow:hidden;display:flex;align-items:center}.hero:after{content:"";position:absolute;right:-40px;bottom:-180px;width:560px;height:560px;border:1px solid rgba(125,37,37,.18);border-radius:50%;box-shadow:0 0 0 80px rgba(125,37,37,.04),0 0 0 160px rgba(125,37,37,.035)}.hero-pattern{position:absolute;right:6%;top:8%;width:370px;height:470px;opacity:.12;background:repeating-linear-gradient(90deg,transparent 0 25px,var(--wine) 26px 27px),repeating-linear-gradient(0deg,transparent 0 25px,var(--wine) 26px 27px);clip-path:polygon(50% 0,100% 18%,92% 85%,50% 100%,8% 85%,0 18%)}.hero-inner{position:relative;z-index:2;padding:80px 0}.eyebrow,.kicker{font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--wine)}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase}.eyebrow span{width:28px;height:1px;background:var(--wine)}.hero h1,.page-hero h1,.detail-hero h1{font:700 clamp(55px,8vw,96px)/.96 "Fraunces",serif;letter-spacing:-.045em;margin:24px 0}.hero h1 em{color:var(--wine);font-style:italic}.hero-inner>p{font-size:18px;max-width:610px;color:var(--muted)}.hero-search{margin-top:38px;background:#fff;display:flex;align-items:center;width:min(700px,100%);box-shadow:0 18px 50px rgba(66,45,33,.12);padding:8px;border-radius:3px}.search-icon{font-size:30px;color:var(--wine);padding:0 12px}.hero-search input{flex:1;border:0;outline:0;font:500 15px "DM Sans";min-width:0}.hero-search button,.filter-bar button{border:0;background:var(--wine);color:#fff;font-weight:700;padding:16px 29px;cursor:pointer}.hero-search button:hover,.filter-bar button:hover{background:var(--wine-dark)}.quick-links{display:flex;flex-wrap:wrap;gap:15px;margin-top:18px;font-size:12px;color:var(--muted)}.quick-links a{color:var(--wine);border-bottom:1px solid}.hero-stamp{position:absolute;right:8%;bottom:60px;z-index:3;width:112px;height:112px;border:1px solid var(--wine);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:7px;transform:rotate(-8deg);color:var(--wine)}.hero-stamp strong{font:700 35px "Fraunces"}.hero-stamp span{font-size:9px;text-transform:uppercase;line-height:1.2;letter-spacing:.08em}.section{padding:105px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px;gap:30px}.section-head h2,.story h2{font:700 clamp(34px,5vw,55px)/1.04 "Fraunces";margin:8px 0 0;letter-spacing:-.03em}.section-head>p{max-width:440px;color:var(--muted);margin:0}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.category-card{min-height:260px;padding:32px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:.25s;background:var(--paper)}.category-card:hover{background:var(--accent);color:#fff;transform:translateY(-3px)}.category-icon{font:600 34px "Fraunces";color:var(--accent);margin-bottom:32px}.category-card:hover .category-icon{color:#fff}.category-card h3{font:700 24px "Fraunces";margin:0 0 7px}.category-card p{font-size:13px;color:var(--muted);margin:0}.category-card:hover p{color:rgba(255,255,255,.78)}.category-count{margin-top:auto;padding-top:25px;font-size:11px;text-transform:uppercase;letter-spacing:.09em}.category-count b{float:right;font-size:20px}.featured-section{background:var(--wine-dark);padding:100px 0;color:#fff}.light-head .kicker{color:var(--gold)}.text-link{font-size:13px;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:5px}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.place-card{background:var(--paper);color:var(--ink);box-shadow:0 10px 35px rgba(26,19,16,.08)}.place-visual{height:235px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.place-visual:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.05),0 0 0 56px rgba(255,255,255,.04)}.visual-0{background:#7f3b32}.visual-1{background:#38686b}.visual-2{background:#8a6841}.visual-3{background:#455b75}.visual-4{background:#745a76}.visual-5{background:#596549}.visual-letter{font:700 110px/.8 "Fraunces";color:rgba(255,255,255,.8);z-index:1}.place-category,.featured-badge{position:absolute;z-index:2;top:17px;background:rgba(255,255,255,.92);font-size:9px;text-transform:uppercase;letter-spacing:.12em;padding:7px 10px}.place-category{left:17px}.featured-badge{right:17px;background:var(--gold)}.place-body{padding:25px}.place-location{font-size:10px;color:var(--wine);text-transform:uppercase;letter-spacing:.1em}.place-body h3{font:700 25px "Fraunces";margin:9px 0}.place-body h3 a:hover{color:var(--wine)}.place-body p{font-size:13px;color:var(--muted);min-height:63px}.card-link{font-size:12px;font-weight:700;color:var(--wine)}.card-link span{float:right;font-size:18px}.story{padding:125px 0;display:grid;grid-template-columns:100px 1.2fr 1fr;gap:55px;align-items:start}.story-number{font:600 60px "Fraunces";color:var(--line)}.story>div:last-child p{color:var(--muted);font-size:16px;margin:30px 0}.button-outline{display:inline-flex;justify-content:space-between;min-width:180px;border:1px solid var(--ink);padding:12px 15px;font-size:12px;font-weight:700}.page-hero{background:var(--cream);padding:85px 0 70px}.page-hero h1{font-size:clamp(48px,7vw,78px);margin-bottom:15px}.page-hero p{color:var(--muted);font-size:17px}.listing-section{padding:55px 0 100px}.filter-bar{display:grid;grid-template-columns:1fr 260px auto;background:#fff;border:1px solid var(--line);padding:8px;margin-bottom:28px}.filter-bar input,.filter-bar select{width:100%;height:52px;border:0;background:transparent;padding:0 16px;font:500 14px "DM Sans";outline:0}.filter-bar label+label{border-left:1px solid var(--line)}.result-meta{font-size:13px;color:var(--muted);margin-bottom:25px}.result-meta strong{color:var(--wine);font-size:19px}.listing-grid{row-gap:32px}.pager{display:flex;justify-content:center;gap:25px;align-items:center;margin-top:50px;font-size:13px}.pager a{border:1px solid var(--line);padding:9px 14px}.empty-state{text-align:center;padding:90px 20px;background:var(--cream)}.empty-state>span{font-size:60px;color:var(--wine)}.empty-state h2{font:700 35px "Fraunces"}.empty-state a{color:var(--wine);border-bottom:1px solid}.detail-hero{background:var(--cream);padding:65px 0}.detail-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:60px}.back-link{display:block;font-size:12px;color:var(--muted);margin-bottom:55px}.detail-hero h1{font-size:clamp(52px,7vw,82px);margin:13px 0}.detail-hero p{font-size:18px;color:var(--muted);max-width:650px}.detail-art{height:420px;background:var(--wine);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.detail-art:before,.detail-art:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%;width:300px;height:300px}.detail-art:after{width:220px;height:220px}.detail-art>span{font:700 190px "Fraunces";color:rgba(255,255,255,.82);z-index:1}.detail-art small{position:absolute;bottom:22px;right:22px;color:#fff;font-size:9px;letter-spacing:.18em}.detail-content{display:grid;grid-template-columns:1.4fr .6fr;gap:100px;padding:95px 0}.prose p{font-size:18px;color:#4e4944;line-height:1.9}.prose p:first-of-type:first-letter{font:700 70px/55px "Fraunces";float:left;color:var(--wine);padding:8px 10px 0 0}.info-card{border-top:3px solid var(--wine);background:var(--cream);padding:28px;align-self:start}.info-card h2{font:700 26px "Fraunces";margin:0 0 25px}.info-card dl{margin:0}.info-card dl>div{padding:15px 0;border-top:1px solid var(--line)}.info-card dt{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.info-card dd{margin:4px 0 0;font-size:13px}.info-card dd a{color:var(--wine)}.info-button{display:block;background:var(--wine);color:#fff;padding:12px;text-align:center;margin-top:20px;font-size:12px;font-weight:700}.info-note{font-size:10px;color:var(--muted);margin-top:18px}.related{background:var(--cream);padding:80px 0}.mini-place{background:#fff;padding:25px;display:flex;gap:20px;align-items:start}.mini-place>span{color:var(--wine);font:600 24px "Fraunces"}.mini-place h3{font:700 21px "Fraunces";margin:0 0 7px}.mini-place p{font-size:11px;color:var(--muted);margin:0}.mini-place>a{margin-left:auto;font-size:20px}.site-footer{background:#201d1a;color:#fff;padding:70px 0 25px}.brand-light .brand-mark{background:var(--gold);color:var(--ink)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:80px}.footer-grid p{color:#a8a19b;max-width:400px;font-size:13px;margin-top:22px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px;font-size:12px;color:#aaa29b}.footer-grid>div:not(:first-child) strong{color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:10px;margin-bottom:8px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;margin-top:60px;display:flex;justify-content:space-between;color:#827c76;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
@media(max-width:900px){.category-grid,.place-grid{grid-template-columns:repeat(2,1fr)}.hero-stamp{display:none}.story{grid-template-columns:60px 1fr}.story>div:last-child{grid-column:2}.detail-hero-grid,.detail-content{grid-template-columns:1fr}.detail-art{height:300px}.detail-content{gap:45px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:640px){.shell{width:min(100% - 28px,1180px)}.site-header{height:66px}.site-header nav a:not(.nav-cta){display:none}.nav-cta{padding:8px 12px}.hero{min-height:610px}.hero-inner{padding:60px 0}.hero h1{font-size:52px}.hero-inner>p{font-size:15px}.hero-search{display:grid;grid-template-columns:auto 1fr}.hero-search button{grid-column:1/-1}.section{padding:75px 0}.section-head{display:block}.section-head>p{margin-top:20px}.category-grid,.place-grid{grid-template-columns:1fr}.category-card{min-height:220px}.featured-section{padding:75px 0}.story{padding:85px 0;grid-template-columns:1fr;gap:20px}.story>div:last-child{grid-column:auto}.story-number{font-size:38px}.filter-bar{grid-template-columns:1fr}.filter-bar label+label{border-left:0;border-top:1px solid var(--line)}.page-hero{padding:60px 0}.detail-hero{padding:45px 0}.back-link{margin-bottom:35px}.detail-art{height:240px}.detail-art>span{font-size:130px}.detail-content{padding:65px 0}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}}
.hour-row{display:flex;justify-content:space-between;gap:14px;padding:4px 0;font-size:11px}.hour-row b{font-weight:500}.place-map{width:100%;height:190px;border:0;margin-top:14px}.claim-link{display:block;text-align:center;color:var(--wine);font-size:11px;text-decoration:underline;margin-top:17px}.gallery{padding:20px 0 90px}.gallery>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.gallery img{width:100%;height:260px;object-fit:cover}.comments-section{background:var(--cream);padding:90px 0}.comments-grid{display:grid;grid-template-columns:1fr 430px;gap:80px}.comments-grid h2{font:700 42px "Fraunces";margin:8px 0 30px}.comments-grid h2 small{font:500 15px "DM Sans";color:var(--wine)}.comment{padding:20px 0;border-top:1px solid var(--line)}.comment>div{display:flex;justify-content:space-between}.comment span{color:#c88635}.comment p,.muted{color:var(--muted)}.comment-form{background:#fff;padding:30px;box-shadow:0 12px 35px rgba(33,24,19,.08)}.comment-form h3{font:700 26px "Fraunces";margin:0 0 22px}.comment-form label{display:block;font-size:11px;font-weight:700;margin:14px 0}.comment-form input,.comment-form select,.comment-form textarea{display:block;width:100%;border:1px solid var(--line);padding:11px;margin-top:6px;font:14px "DM Sans"}.comment-form small{display:block;color:var(--muted);font-size:9px;margin-top:12px}.honey{position:absolute!important;left:-9999px!important}.form-success{background:#e5f3eb;color:#266246;padding:10px}.form-error{background:#f7e6e2;color:#8c3128;padding:10px}.claim-page{padding:70px 0}.claim-page .comment-form{max-width:720px;margin:auto}@media(max-width:800px){.comments-grid{grid-template-columns:1fr;gap:40px}.gallery>div{grid-template-columns:1fr 1fr}}@media(max-width:520px){.gallery>div{grid-template-columns:1fr}.gallery img{height:220px}}
