/* City hero section */
.city-page-head{padding:24px 0 28px;background:linear-gradient(135deg,#fbfcfd,#fff 58%,#fff7f4)}
.city-page-head>.container{display:block}.city-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr);gap:30px;align-items:start}.city-hero__intro{padding:30px 10px 20px 0}.city-hero__eyebrow{display:inline-flex;align-items:center;gap:7px;color:#9a6b00;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.city-hero__eyebrow svg{width:17px;height:17px;fill:currentColor}.city-hero__intro h1{max-width:680px;margin-top:14px;font-size:clamp(2rem,4.3vw,3.35rem);line-height:1.03;letter-spacing:-.05em}.city-hero__intro .page-head__intro{max-width:580px;margin-top:17px;color:#647086;font-size:1rem;line-height:1.65}.city-hero__stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.city-hero__stats div{min-width:96px;padding:10px 12px;border:1px solid #e5dfdb;border-radius:10px;background:rgba(255,255,255,.85)}.city-hero__stats strong{display:block;color:#172033;font-size:1.18rem;line-height:1}.city-hero__stats span{display:block;margin-top:4px;color:#8992a1;font-size:.68rem}.city-recommendations{align-self:start;padding:20px;border:1px solid #efc0b5;border-radius:16px;background:rgba(255,255,255,.95);box-shadow:0 12px 30px rgba(232,93,58,.08)}.city-recommendations__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #f1e2de}.city-recommendations__label{display:inline-flex;align-items:center;gap:5px;color:#9a6b00;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.city-recommendations__label svg{width:15px;height:15px;fill:currentColor}.city-recommendations h2{margin-top:7px;color:#172033;font-size:1.3rem;letter-spacing:-.03em}.city-recommendations__count{display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%;background:#fff1c9;color:#9a6b00;font-size:.75rem;font-weight:800}.city-recommendations__intro{margin-top:8px;color:#7b8496;font-size:.8rem;line-height:1.5}.city-recommendations__list{display:grid;gap:8px;max-height:345px;margin-top:15px;overflow-y:auto}.city-recommendation{padding:12px;border:1px solid #e7ecf2;border-radius:11px;background:#fff}.city-recommendation__main{display:flex;align-items:center;justify-content:space-between;gap:10px}.city-recommendation__name{min-width:0;overflow:hidden;color:#172033;font-size:.9rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.city-recommendation__rating{flex:0 0 auto;color:#9a6b00;font-size:.76rem;font-weight:800}.city-recommendation__rating small{color:#8992a1;font-size:.68rem;font-weight:500}.city-recommendation__facts{display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:8px;color:#687386;font-size:.7rem}.city-recommendation__facts span{display:inline-flex;align-items:center;gap:4px}.city-recommendation__facts svg{width:14px;height:14px;fill:none;stroke:#2a9d8f;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.city-recommendation__actions{display:flex;gap:7px;margin-top:10px}.city-recommendation__actions .btn{min-height:34px;padding:6px 10px;font-size:.7rem}.city-recommendations__link{display:inline-flex;gap:5px;margin-top:14px;color:#c94a2a;font-size:.78rem;font-weight:750}@media(max-width:900px){.city-hero{grid-template-columns:1fr;gap:16px}.city-hero__intro{padding:12px 0 8px}}@media(max-width:600px){.city-page-head{padding:18px 0 22px}.city-hero__intro h1{margin-top:11px;font-size:2rem}.city-hero__intro .page-head__intro{margin-top:12px;font-size:.9rem}.city-recommendations{padding:15px;border-radius:13px}.city-recommendations h2{font-size:1.1rem}.city-recommendations__list{max-height:none}.city-recommendation__main{align-items:flex-start;flex-direction:column;gap:4px}.city-recommendation__actions .btn{flex:1;justify-content:center}}


/* city-hero final override: keep intro compact and stop legacy page-head stretching. */
body.page-city .city-page-head > .container { display: block !important; grid-template-columns: none !important; gap: 0 !important; align-items: initial !important; }
body.page-city .city-page-head .city-hero { display: grid !important; grid-template-columns: minmax(0, 1.05fr) minmax(400px, .95fr) !important; grid-template-rows: auto !important; align-items: start !important; gap: 30px !important; }
body.page-city .city-page-head .city-hero__intro { grid-column: 1 !important; grid-row: 1 !important; align-self: start !important; min-height: 0 !important; }
body.page-city .city-page-head .city-recommendations { grid-column: 2 !important; grid-row: 1 !important; align-self: start !important; margin: 0 !important; }
body.page-city .city-page-head h1, body.page-city .city-page-head .page-head__intro { grid-column: auto !important; }
@media (max-width:900px){body.page-city .city-page-head .city-hero{grid-template-columns:1fr !important;gap:16px !important}body.page-city .city-page-head .city-recommendations{grid-column:1 !important;grid-row:2 !important}}

/* CTA when a city has no active Plus sellers. */
.city-recommendations--empty{background:linear-gradient(145deg,#fff8f5,#fff);border-color:#f0b7aa}.city-recommendations--empty h2{margin-top:9px;max-width:360px;line-height:1.2}.city-recommendations__join{width:100%;margin-top:14px;text-align:center}.city-recommendations--empty .city-recommendations__link{margin-top:12px}
@media(max-width:600px){.city-recommendations--empty h2{font-size:1.2rem}.city-recommendations__join{min-height:44px}}

/* Seller CTA polish. */
.city-recommendations--empty{position:relative;overflow:hidden;padding:24px 22px;background:linear-gradient(145deg,#fff 0%,#fff6f2 100%);box-shadow:0 14px 34px rgba(232,93,58,.11)}.city-recommendations--empty::after{content:'+';position:absolute;right:18px;bottom:-22px;color:rgba(232,93,58,.1);font-size:8rem;font-weight:800;line-height:1}.city-recommendations--empty>*{position:relative;z-index:1}.city-recommendations--empty .city-recommendations__label{color:var(--accent);font-size:.72rem}.city-recommendations--empty h2{max-width:390px;margin-top:10px;font-size:clamp(1.25rem,2.4vw,1.65rem);line-height:1.15}.city-recommendations--empty .city-recommendations__intro{max-width:390px;margin-top:11px;font-size:.84rem;line-height:1.6}.city-recommendations--empty .city-recommendations__join{margin-top:18px;min-height:44px;font-size:.82rem;box-shadow:0 7px 16px rgba(232,93,58,.18)}
@media(max-width:600px){.city-recommendations--empty{padding:20px 17px}.city-recommendations--empty::after{right:8px;bottom:-28px;font-size:7rem}.city-recommendations--empty h2{max-width:280px;font-size:1.25rem}.city-recommendations--empty .city-recommendations__intro{font-size:.8rem}.city-recommendations--empty .city-recommendations__join{width:100%;margin-top:16px}}

/* Final spacing pass for the city hero and seller CTA. */
body.page-city .city-hero__intro{padding-top:26px;padding-bottom:24px}
body.page-city .city-hero__eyebrow{margin-bottom:4px}
body.page-city .city-hero__intro h1{margin-top:12px;margin-bottom:0}
body.page-city .city-hero__intro .page-head__intro{margin-top:18px;margin-bottom:0}
body.page-city .city-hero__stats{gap:10px;margin-top:26px}
body.page-city .city-hero__stats div{padding:11px 13px}
body.page-city .city-recommendations{padding:22px}
body.page-city .city-recommendations__head{padding-bottom:14px}
body.page-city .city-recommendations h2{margin-top:9px}
body.page-city .city-recommendations__intro{margin-top:11px;margin-bottom:0}
body.page-city .city-recommendations__list{margin-top:16px}
body.page-city .city-recommendations__link{margin-top:16px}
body.page-city .city-recommendation__facts{margin-top:9px}
body.page-city .city-recommendation__actions{margin-top:11px}
body.page-city .city-recommendations--empty{padding:26px 24px 24px}
body.page-city .city-recommendations--empty h2{margin-top:11px}
body.page-city .city-recommendations--empty .city-recommendations__intro{margin-top:13px}
body.page-city .city-recommendations--empty .city-recommendations__join{margin-top:20px}
@media(max-width:900px){body.page-city .city-hero__intro{padding:14px 0 10px}body.page-city .city-hero__stats{margin-top:22px}}
@media(max-width:600px){body.page-city .city-page-head{padding-top:16px;padding-bottom:20px}body.page-city .city-hero{gap:20px!important}body.page-city .city-hero__intro{padding:8px 0 4px}body.page-city .city-hero__eyebrow{margin-bottom:2px;font-size:.72rem}body.page-city .city-hero__intro h1{margin-top:10px}body.page-city .city-hero__intro .page-head__intro{margin-top:13px;line-height:1.58}body.page-city .city-hero__stats{gap:7px;margin-top:19px}body.page-city .city-hero__stats div{min-width:88px;padding:9px 10px}body.page-city .city-recommendations{padding:17px 16px}body.page-city .city-recommendations--empty{padding:21px 17px 19px}body.page-city .city-recommendations__head{padding-bottom:12px}body.page-city .city-recommendations__intro{margin-top:10px}body.page-city .city-recommendations--empty .city-recommendations__join{margin-top:17px}}

/* CTA spacing: stable vertical rhythm inside the seller invitation. */
body.page-city .city-recommendations--empty{display:flex;flex-direction:column;align-items:flex-start;gap:0}
body.page-city .city-recommendations--empty .city-recommendations__label{margin-bottom:13px}
body.page-city .city-recommendations--empty h2{margin:0 0 14px}
body.page-city .city-recommendations--empty .city-recommendations__intro{margin:0;max-width:400px}
body.page-city .city-recommendations--empty .city-recommendations__join{margin-top:23px}
@media(max-width:600px){body.page-city .city-recommendations--empty .city-recommendations__label{margin-bottom:11px}body.page-city .city-recommendations--empty h2{margin-bottom:12px}body.page-city .city-recommendations--empty .city-recommendations__join{margin-top:19px}}

/* Exact override for the empty seller invitation card. */
body.page-city aside.city-recommendations.city-recommendations--empty{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:0!important;
  padding:30px 28px 28px!important;
}
body.page-city aside.city-recommendations.city-recommendations--empty .city-recommendations__label{
  display:inline-flex!important;
  margin:0 0 18px!important;
}
body.page-city aside.city-recommendations.city-recommendations--empty h2{
  margin:0 0 18px!important;
  max-width:390px!important;
}
body.page-city aside.city-recommendations.city-recommendations--empty .city-recommendations__intro{
  margin:0!important;
  max-width:410px!important;
}
body.page-city aside.city-recommendations.city-recommendations--empty .city-recommendations__join{
  display:inline-flex!important;
  width:100%!important;
  margin:28px 0 0!important;
  min-height:48px!important;
}
@media(max-width:600px){
  body.page-city aside.city-recommendations.city-recommendations--empty{padding:24px 20px 22px!important}
  body.page-city aside.city-recommendations.city-recommendations--empty .city-recommendations__label{margin-bottom:14px!important}
  body.page-city aside.city-recommendations.city-recommendations--empty h2{margin-bottom:14px!important;font-size:1.3rem!important}
  body.page-city aside.city-recommendations.city-recommendations--empty .city-recommendations__join{margin-top:23px!important;min-height:46px!important}
}
