/* Places V5.6 · crawlable city guides and local discovery */
.places-city-entry{margin-top:clamp(54px,8vw,96px);padding-top:clamp(46px,7vw,78px);border-top:1px solid rgba(42,139,130,.22)}
.places-city-entry-head,.places-directory-intro,.places-city-list-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:clamp(28px,6vw,78px);align-items:end}
.places-city-entry-head .h2,.places-directory-intro .h2,.places-city-list-head .h2{margin:.5rem 0 0}
.places-city-entry-head p,.places-directory-intro p,.places-city-list-head>p{margin:0;color:var(--muted);line-height:1.7}
.places-city-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:28px;border:1px solid rgba(42,139,130,.2);background:rgba(42,139,130,.2)}
.places-city-links>a{display:flex;flex-direction:column;gap:6px;min-height:104px;padding:20px;background:#0b1211;color:var(--ink);text-decoration:none;transition:background .2s,color .2s}
.places-city-links>a:hover{background:linear-gradient(145deg,rgba(4,60,57,.94),#0c1312);color:var(--ivory)}
.places-city-links strong{font-family:var(--serif);font-size:1.35rem;font-weight:400}
.places-city-links span{color:var(--muted);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}
.places-city-entry-all{display:inline-flex;margin-top:24px}

.places-seo-page{background:#080b0b}
.places-city-hero,.places-directory-hero{position:relative;overflow:hidden;padding:clamp(72px,10vw,132px) 0 clamp(66px,9vw,116px);background:radial-gradient(circle at 82% 18%,rgba(20,115,109,.25),transparent 34%),linear-gradient(135deg,#07110f,#090c0c 62%,#11100d)}
.places-city-hero::after,.places-directory-hero::after{content:"";position:absolute;right:-8%;bottom:-55%;width:min(56vw,760px);aspect-ratio:1;border:1px solid rgba(182,149,84,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(182,149,84,.025),0 0 0 160px rgba(42,139,130,.022);pointer-events:none}
.places-city-hero .container,.places-directory-hero .container{position:relative;z-index:1}
.places-city-hero .display,.places-directory-hero .display{max-width:1050px;margin:.65rem 0 1.25rem}
.places-city-hero .lead,.places-directory-hero .lead{max-width:850px;margin:0;color:rgba(240,234,223,.78)}
.places-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:clamp(34px,6vw,70px);color:var(--muted);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}
.places-breadcrumb a{color:var(--muted);text-decoration:none}.places-breadcrumb a:hover{color:var(--gold-light)}
.places-city-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:30px}

.places-city-overview{padding:0;background:#0b1110}
.places-city-overview>.container{padding-top:32px;padding-bottom:32px}
.places-city-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid rgba(240,234,223,.1)}
.places-city-stats>div{display:grid;gap:5px;padding:20px 22px;border-right:1px solid rgba(240,234,223,.1)}
.places-city-stats>div:last-child{border-right:0}
.places-city-stats strong{font-family:var(--serif);font-size:1.7rem;font-weight:400;color:var(--gold-light)}
.places-city-stats span{color:var(--muted);font-size:.58rem;letter-spacing:.09em;text-transform:uppercase}
.places-intent-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.places-intent-nav a{padding:9px 12px;border:1px solid rgba(42,139,130,.28);border-radius:999px;color:#c9c4bb;font-size:.62rem;text-decoration:none}
.places-intent-nav a:hover{border-color:var(--ottanio-light);color:var(--ivory)}

.places-city-intents,.places-city-list,.places-city-faq,.places-method,.places-directory{padding:clamp(66px,9vw,108px) 0}
.places-city-intents .section-heading-centered{max-width:860px;margin-right:auto;margin-left:auto}
.places-intent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:42px;border:1px solid rgba(42,139,130,.2);background:rgba(42,139,130,.2)}
.places-intent-section{scroll-margin-top:90px;padding:clamp(26px,4vw,42px);background:#0c1312}
.places-intent-section h2{margin:.55rem 0 .85rem;font-family:var(--serif);font-size:clamp(1.75rem,3vw,2.65rem);font-weight:400}
.places-intent-section p{margin:0;color:var(--muted);line-height:1.65}
.places-intent-section ul{display:grid;gap:8px;margin:24px 0 0;padding:18px 0 0;border-top:1px solid rgba(240,234,223,.08);list-style:none}
.places-intent-section li a{color:#d8d2c8;text-decoration:none}.places-intent-section li a:hover{color:var(--gold-light)}
.places-intent-section li a::after{content:" →";color:var(--ottanio-light)}

.places-city-list{background:#090f0e}
.places-city-list-head{margin-bottom:34px}
.places-seo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.places-seo-card{scroll-margin-top:90px;display:flex;flex-direction:column;min-height:340px;padding:clamp(23px,3vw,32px);border:1px solid rgba(240,234,223,.11);background:linear-gradient(155deg,#0e1716,#0a1110)}
.places-seo-card-top{display:flex;justify-content:space-between;gap:20px;color:var(--gold-light);font-size:.57rem;letter-spacing:.09em;text-transform:uppercase}
.places-seo-card-top span:last-child{color:var(--muted);text-align:right}
.places-seo-card h3{margin:22px 0 14px;font-family:var(--serif);font-size:clamp(1.7rem,3vw,2.35rem);font-weight:400;line-height:1.08}
.places-seo-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px}
.places-seo-tags span{padding:5px 7px;border:1px solid rgba(42,139,130,.3);color:#c6c1b8;font-size:.55rem;letter-spacing:.06em;text-transform:uppercase}
.places-seo-why{padding-top:18px;border-top:1px solid rgba(240,234,223,.08)}
.places-seo-why small{display:block;margin-bottom:8px;color:var(--ottanio-light);font-size:.57rem;letter-spacing:.11em;text-transform:uppercase}
.places-seo-why p{margin:0;font-family:var(--serif);font-size:1rem;line-height:1.62;color:#d9d3c8}
.places-seo-notice,.drink-card-notice,.drink-detail-notice{margin:18px 0 0;padding:11px 13px;border-left:2px solid var(--gold);background:rgba(183,139,63,.08);color:#d9d3c8;font-size:.75rem;line-height:1.55}
.drink-detail-notice{margin-top:-8px;margin-bottom:24px}
.places-seo-meta{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-top:auto;padding-top:24px;color:var(--muted);font-size:.62rem}
.places-seo-card-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.places-seo-meta a{color:var(--gold-light);text-decoration:none;white-space:nowrap}.places-seo-meta a:hover{color:var(--ivory)}
.places-seo-upcoming{margin-top:56px;padding-top:42px}.places-seo-upcoming article{margin-top:18px;padding:22px;border-left:2px solid var(--gold);background:rgba(182,149,84,.06)}
.places-seo-upcoming h3{margin:0 0 10px;font-family:var(--serif);font-size:1.7rem;font-weight:400}.places-seo-upcoming p{color:var(--muted);line-height:1.6}

.places-city-faq .faq{max-width:960px;margin-top:28px}
.places-city-faq details{border-top:1px solid rgba(240,234,223,.12)}
.places-city-faq details:last-child{border-bottom:1px solid rgba(240,234,223,.12)}
.places-city-faq summary{cursor:pointer;padding:22px 34px 22px 0;font-family:var(--serif);font-size:1.2rem;color:var(--ivory)}
.places-city-faq details p{max-width:820px;margin:0;padding:0 0 24px;color:var(--muted);line-height:1.7}
.places-method{background:linear-gradient(120deg,rgba(4,60,57,.2),transparent 60%)}
.places-method .split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(30px,7vw,96px)}
.places-method p{margin:0 0 18px;color:var(--muted);line-height:1.75}
.places-nearby{padding:clamp(58px,8vw,88px) 0}.places-nearby h2{margin:.55rem 0 0;font-family:var(--serif);font-size:clamp(2rem,4vw,3.4rem);font-weight:400}
.places-city-cta{padding:clamp(62px,8vw,100px) 0}.places-city-cta .cta-panel{padding:clamp(34px,6vw,70px);border:1px solid rgba(42,139,130,.3);background:linear-gradient(125deg,rgba(4,60,57,.72),rgba(10,17,16,.97) 70%)}
.places-city-cta .h2{max-width:850px;margin:.55rem 0 .8rem}.places-city-cta .lead{max-width:780px;margin:0 0 28px}

.places-directory-intro{margin-bottom:48px}
.places-region{padding:34px 0;border-top:1px solid rgba(240,234,223,.11)}
.places-region>h2{margin:0 0 22px;font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.65rem);font-weight:400}
.places-city-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.places-city-directory-grid>a{display:grid;min-height:142px;padding:22px;border:1px solid rgba(42,139,130,.22);background:#0b1211;color:var(--ink);text-decoration:none;transition:.2s}
.places-city-directory-grid>a:hover{transform:translateY(-2px);border-color:rgba(42,139,130,.72);background:#0d1816}
.places-city-directory-grid strong{margin:18px 0 7px;font-family:var(--serif);font-size:1.7rem;font-weight:400}
.places-city-directory-grid small{color:var(--muted);line-height:1.45}

@media(max-width:980px){
  .places-city-links{grid-template-columns:repeat(3,minmax(0,1fr))}
  .places-city-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .places-city-entry-head,.places-directory-intro,.places-city-list-head,.places-method .split{grid-template-columns:1fr;align-items:start}
  .places-city-links{grid-template-columns:repeat(2,minmax(0,1fr))}
  .places-city-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .places-city-stats>div:nth-child(2){border-right:0}.places-city-stats>div:nth-child(-n+2){border-bottom:1px solid rgba(240,234,223,.1)}
  .places-intent-grid,.places-seo-grid{grid-template-columns:1fr}
  .places-seo-card{min-height:0}
}
@media(max-width:520px){
  .places-city-links,.places-city-directory-grid{grid-template-columns:1fr}
  .places-city-links>a{min-height:88px}
  .places-city-hero .display,.places-directory-hero .display{font-size:clamp(2.8rem,15vw,4.6rem)}
  .places-city-actions .btn{width:100%;justify-content:center}
  .places-city-stats>div{padding:17px 15px}
  .places-seo-card-top,.places-seo-meta{align-items:flex-start;flex-direction:column}
  .places-seo-card-top span:last-child{text-align:left}
  .places-seo-card-links{justify-content:flex-start}
}
