/* -------------------------
   Layout listing css (improved)
   ------------------------- */
:root{
  --max-w:1200px;
  --card-bg:#17130f;
  --border:rgba(238,201,125,.20);
  --text:#fff7e8;
  --muted:#d4c4a0;
  --surface-muted:#211a13;
  --surface-soft:#15110d;
  --accent:#d6a13f;
  --link:#f4d28a;
  --link-hover:#fff2bf;
  --link-visited:#e0b8ff;
  --gold:#d6a13f;
  --gold-soft:#f4d28a;
  --gold-dark:#9f5c18;
  --teal:#17b8aa;
  --ink:#080706;
  --ad-photo-placeholder:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 50'%3E%3Crect fill='%231a120c' width='40' height='50'/%3E%3Cpath fill='%23d6a13f' fill-opacity='.2' d='M8 36l8-10 6 8 5-6 5 8H8z'/%3E%3Ccircle fill='%23d6a13f' fill-opacity='.28' cx='15' cy='16' r='5'/%3E%3C/svg%3E");
  --panel:#17130f;
  --panel-2:#211a13;
  --panel-3:#2b2116;
  --shadow-soft:0 18px 46px rgba(0,0,0,.28);
  --shadow-strong:0 32px 84px rgba(0,0,0,.44);
  --preview-overlay:rgba(3,2,1,.78);
  --preview-surface:linear-gradient(180deg,#1d1712 0%,#12100c 100%);
  --preview-elevated:linear-gradient(180deg,rgba(43,33,22,.94),rgba(18,15,12,.98));
  --preview-chip:rgba(255,247,232,.045);
  --preview-chip-border:rgba(238,201,125,.22);
  --preview-line-strong:rgba(238,201,125,.34);
  --preview-body:#ead9b7;
  --preview-danger:#fecaca;
  --preview-danger-border:rgba(252,165,165,.32);
  --preview-danger-bg:rgba(239,68,68,.12);
  --preview-wa:#22c55e;
  --preview-tg:#38bdf8;
}

/* Layout */
.layout-row{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:20px;
  align-items:start;
  max-width:var(--max-w);
  margin:18px auto;
  padding:0 12px;
  width:100%;
  box-sizing:border-box;
}
.layout-row--has-sidebar{
  grid-template-columns:minmax(0,1fr) 280px;
}
.col-main{
  min-width:0;
}
.listing-page-intro{
  width:100%;
  max-width:var(--max-w);
  margin:22px auto 14px;
  padding:0 12px;
  box-sizing:border-box;
}
.listing-page-intro .seo-content-block-before{
  width:100%;
  max-width:none;
}
.seo-content-block-before h1{
  margin:0 0 12px;
  color:var(--text);
  font-size:clamp(1.75rem, 3.2vw, 2.35rem);
  font-weight:850;
  line-height:1.14;
  letter-spacing:-.025em;
}
.col-side{
  width:auto;
  min-width:0;
  align-self:start;
  position:sticky;
  top:12px;
  max-height:calc(100vh - 24px);
  max-height:calc(100dvh - 24px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(214,161,63,.4) transparent;
}

/* Cards */
.layout-row .card,
.listing-filter-shell .card{
  background:var(--card-bg);
  border:1px solid var(--border);
  border-radius:8px;
  padding:12px;
  position:relative;
  contain: paint layout;
  box-sizing:border-box;
}
.layout-row .muted,
.listing-filter-shell .muted{ color:var(--muted); }
.list{ display:flex; flex-direction:column; gap:16px; }

/* Ad card — transparent glass shell */
.ad-card{
  background:transparent;
  border:1px solid rgba(238,201,125,.28);
  border-radius:18px;
  position:relative;
  overflow:hidden;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.03) inset,
    0 18px 42px rgba(0,0,0,.18);
  cursor:pointer;
  color:var(--text);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
  content-visibility:auto;
  contain-intrinsic-size:340px 960px;
}
.ad-card:first-child,
.ad-card[fetchpriority],
.ad-card:has(img[fetchpriority="high"]){
  content-visibility:visible;
}
.ad-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:18px 0 0 18px;
  background:linear-gradient(180deg,var(--gold-soft) 0%,var(--gold) 48%,var(--teal) 100%);
  opacity:.95;
  z-index:2;
}
.ad-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(135deg, rgba(244,210,138,.07) 0%, transparent 34%, transparent 70%, rgba(23,184,170,.04) 100%);
  z-index:0;
}
.ad-card:hover{
  transform:translateY(-3px);
  border-color:rgba(244,210,138,.48);
  background:rgba(244,210,138,.04);
  box-shadow:
    0 0 0 1px rgba(244,210,138,.08) inset,
    0 28px 64px rgba(0,0,0,.34),
    0 0 36px rgba(214,161,63,.08);
}
.ad-card:target{
  outline:3px solid var(--accent);
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(214,161,63,.18);
}
.ad-card:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:3px;
}
.ad-row{
  display:flex;
  gap:16px;
  align-items:stretch;
  padding:0 16px 0 0;
  min-height:336px;
  position:relative;
  z-index:1;
}
.ad-main-copy{
  min-width:0;
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  color:inherit;
}

.ad-media-stack{
  flex:0 0 214px;
  width:214px;
  min-height:336px;
  min-width:0;
  align-self:stretch;
}

/* Image wrapper - predictable aspect */
.ad-media-frame{
  width:100%;
  aspect-ratio: 4 / 5;
  height:100%;
  min-height:336px;
  position:relative;
  overflow:hidden;
  border-radius:0;
  background:rgba(33,26,19,.45);
  box-shadow:
    0 0 0 1px rgba(238,201,125,.18) inset,
    0 16px 34px rgba(0,0,0,.28);
}
.ad-media-frame::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,23,42,0) 52%,rgba(15,23,42,.34) 100%);
  pointer-events:none;
  z-index:3;
}
.ad-image{
    width: 100%;
    height:100%;
    object-fit:cover;
    display:block;
    position:relative;
    z-index:1;
    transition:transform .35s ease, filter .35s ease;
}
.ad-image[fetchpriority="high"]{
  animation:none;
}
.ad-card:hover .ad-image{
  transform:scale(1.025);
  filter:saturate(1.05) contrast(1.03);
}
@media (prefers-reduced-motion: reduce){
  .ad-card,
  .ad-image,
  .ad-card:hover .ad-image,
  .ad-owner-status.is-online,
  .ad-owner-status.is-online::before{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    filter:none !important;
  }
}
.ad-photo-badge{
  position:absolute;
  right:8px;
  top:8px;
  z-index:4;
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(15,23,42,.78);
  color:#fff;
  font-size:11px;
  font-weight:800;
  line-height:1;
  backdrop-filter:blur(6px);
}
.ad-photo-badge-icon{
  width:13px;
  height:13px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ad-photo-badge-count{
  display:inline-block;
  min-width:1ch;
}
.ad-favorite-btn{
  position:absolute;
  right:8px;
  bottom:8px;
  z-index:5;
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:rgba(15,23,42,.78);
  color:#fff;
  box-shadow:0 10px 22px rgba(0,0,0,.22);
  backdrop-filter:blur(8px);
  cursor:pointer;
  transition:transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
}
.ad-favorite-btn:hover,
.ad-favorite-btn:focus-visible{
  transform:translateY(-1px) scale(1.04);
  background:rgba(8,7,6,.92);
  color:#ffe3a3;
  outline:0;
}
.ad-favorite-btn.is-favorite{
  border-color:rgba(255,227,163,.92);
  background:linear-gradient(135deg,#ffe3a3,#e8b85e);
  color:#5f1f1f;
}
.ad-favorite-icon{
  width:17px;
  height:17px;
  display:block;
  fill:transparent;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ad-favorite-btn.is-favorite .ad-favorite-icon{
  fill:currentColor;
}
.favorites-page{
  padding-top:22px;
  padding-bottom:36px;
}
.favorites-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
  padding-bottom:14px;
  border-bottom:1px solid var(--border);
}
.favorites-head h1{
  margin:0 0 4px;
  color:var(--text);
  font-size:clamp(26px,4vw,38px);
  line-height:1.1;
}
.favorites-head p{
  margin:0;
  color:var(--muted);
}
.favorites-status{
  min-height:22px;
  color:var(--muted);
  font-size:14px;
  margin-bottom:10px;
}
.favorites-status.is-error{
  color:#b91c1c;
}
.favorites-empty{
  padding:20px;
  text-align:center;
}
.favorites-empty p{
  margin:0 0 10px;
  color:var(--muted);
}
.favorites-clear-btn,
.favorites-browse-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:7px 12px;
  border-radius:8px;
  border:1px solid rgba(214,161,63,.36);
  background:#fff8e5;
  color:#6b4b13;
  font-weight:800;
  text-decoration:none;
}
.favorites-clear-btn{
  cursor:pointer;
}
.favorites-clear-btn:hover,
.favorites-clear-btn:focus-visible,
.favorites-browse-link:hover,
.favorites-browse-link:focus-visible{
  border-color:#d6a13f;
  color:#34240b;
  outline:0;
}
.ad-rating-overlay{
  position:absolute;
  left:0;
  bottom:8px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:calc(100% - 12px);
  padding:6px 9px 6px 10px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(90deg,rgba(15,23,42,.94),rgba(31,41,55,.84));
  border-left:3px solid #f4b400;
  color:#fff;
  font-size:11px;
  font-weight:600;
  line-height:1;
  box-shadow:var(--shadow-strong);
  backdrop-filter:blur(4px);
  white-space:nowrap;
  z-index:4;
  text-decoration:none;
}
.ad-rating-overlay:hover,
.ad-rating-overlay:focus-visible{
  color:#fff;
  text-decoration:none;
}
.ad-rating-score{
  font-variant-numeric:tabular-nums;
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
}
.ad-rating-stars{
  color:#f4b400;
  letter-spacing:-1px;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.25));
}
.ad-rating-count{
  color:rgba(255,255,255,.82);
  font-weight:500;
}

/* Content */
.ad-content{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-self:stretch;
  padding:16px 2px 16px 0;
  position:relative;
  z-index:1;
}
.ad-title-primary{
  font-size:18px;
  color:var(--gold-soft);
  font-weight:800;
  line-height:1.22;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  text-overflow:ellipsis;
  margin:2px 0 10px;
  letter-spacing:.01em;
  text-shadow:0 1px 0 rgba(0,0,0,.25);
}
.ad-title-link{
  color:inherit;
  text-decoration:none;
}
.ad-title-link:hover,
.ad-title-link:focus-visible,
.ad-title-link:active{
  color:inherit;
  text-decoration:none;
}
.ad-title-link:focus-visible{
  outline:2px solid var(--accent, #d6a13f);
  outline-offset:2px;
  border-radius:6px;
}
.ad-facts{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 8px;
}
.ad-fact-chip{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border-radius:999px;
  background:rgba(214,161,63,.16);
  color:var(--gold-soft);
  border:1px solid rgba(238,201,125,.28);
  font-size:13px;
  font-weight:800;
  line-height:1.2;
}
.ad-facts .ad-owner-status{
  position:static;
}
.ad-media-frame .ad-owner-status{
  position:absolute;
  left:8px;
  top:8px;
  z-index:5;
  min-height:25px;
  padding:4px 8px;
  max-width:calc(100% - 16px);
  font-size:11px;
  line-height:1;
  backdrop-filter:blur(8px);
}
.ad-owner-status{
  gap:7px;
  min-height:28px;
  padding:5px 11px 5px 9px;
  border:1px solid rgba(16,185,129,.28);
  background:linear-gradient(135deg,#ecfdf5 0%,#f0fdfa 100%);
  color:#047857;
  box-shadow:0 8px 18px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.75);
  letter-spacing:.01em;
  transform:translateZ(0);
}
.ad-owner-status.is-loading,
.ad-owner-status.is-offline{
  display:none;
}
.ad-owner-status::before{
  content:"";
  width:9px;
  height:9px;
  flex:0 0 9px;
  border-radius:999px;
  background:#10b981;
  box-shadow:0 0 0 4px rgba(16,185,129,.18),0 0 14px rgba(16,185,129,.42);
}
.ad-owner-status.is-online{
  border-color:rgba(16,185,129,.42);
  background:linear-gradient(135deg,#dcfce7 0%,#ccfbf1 100%);
  color:#065f46;
  animation:ownerStatusFloat 2.6s ease-in-out infinite;
}
.ad-owner-status.is-online::before{
  background:#10b981;
  animation:ownerStatusPulse 1.55s ease-out infinite;
}
@keyframes ownerStatusPulse{
  0%{box-shadow:0 0 0 0 rgba(16,185,129,.46),0 0 14px rgba(16,185,129,.38);}
  70%{box-shadow:0 0 0 8px rgba(16,185,129,0),0 0 16px rgba(16,185,129,.22);}
  100%{box-shadow:0 0 0 0 rgba(16,185,129,0),0 0 14px rgba(16,185,129,.24);}
}
@keyframes ownerStatusFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-1px);}
}
.ad-desc{
  font-size:15px;
  font-weight:400;
  color:var(--muted);
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1.45;
}
.ad-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.ad-meta-item{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-width:0;
  min-height:30px;
  padding:5px 12px 5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(238,201,125,.26);
  color:var(--text);
  font-size:12.5px;
  font-weight:650;
  letter-spacing:.015em;
  line-height:1.2;
  transition:border-color .16s ease, background .16s ease, transform .16s ease;
}
.ad-card:hover .ad-meta-item{
  border-color:rgba(244,210,138,.4);
  background:rgba(244,210,138,.08);
}
.ad-meta-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  padding:3px;
  box-sizing:border-box;
  border-radius:50%;
  fill:currentColor;
  color:var(--gold-soft);
  background:rgba(244,210,138,.12);
  box-shadow:none;
  opacity:1;
}
.ad-meta-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:12.5rem;
  color:var(--text);
}
.ad-card-actions{
  display:flex;
  align-items:center;
  margin:14px 0 0;
  justify-content:flex-start;
  position:relative;
  z-index:1;
}
.ad-card-cta{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:10px 18px;
  border-radius:12px;
  border:1px solid rgba(244,210,138,.72);
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 42%,var(--gold-dark) 100%);
  color:#160d08;
  font-size:14px;
  font-family:inherit;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
  text-decoration:none;
  letter-spacing:.02em;
  box-shadow:0 14px 30px rgba(159,92,24,.28), inset 0 1px 0 rgba(255,255,255,.42);
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;
}
.ad-card-cta:hover,
.ad-card-cta:focus-visible{
  background:linear-gradient(135deg,#fff7d6 0%,var(--gold-soft) 38%,#b96d20 100%);
  border-color:var(--gold-soft);
  color:#100805;
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(159,92,24,.34), inset 0 1px 0 rgba(255,255,255,.5);
}
.ad-card-cta:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
}

/* Small buttons / related grid (kept minimal) */
.related-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }
.related-grid--stack{ grid-template-columns:1fr; }
.small-btn{
  display:inline-block;
  padding:8px 10px;
  border-radius:6px;
  border:1px solid var(--border);
  text-decoration:none;
  font-size:15px;
  background:linear-gradient(180deg,rgba(34,26,18,.96),rgba(18,15,12,.98));
  color:var(--text);
  width:100%;
  text-align:left;
  box-sizing:border-box;
}
.related-grid .small-btn{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.related-grid .small-btn small{
  flex:0 0 auto;
  min-width:24px;
  border-radius:999px;
  background:rgba(214,161,63,.18);
  color:var(--gold-soft);
  padding:2px 7px;
  font-size:12px;
  text-align:center;
  font-weight:800;
}

.seo-content,
.seo-content p,
.seo-content li{
  font-size:16px;
  line-height:1.72;
}
.seo-content p{
  margin:0 0 1rem;
}
.seo-content li + li{
  margin-top:.42rem;
}
.listing-seo-container{
  max-width:var(--max-w);
  padding-left:12px;
  padding-right:12px;
}
.listing-seo-container .seo-content section + section{
  margin-top:34px;
}
.listing-seo-container .seo-content h2{
  margin:0 0 12px;
  color:var(--text);
  font-size:clamp(1.32rem, 2.1vw, 1.65rem);
  font-weight:800;
  line-height:1.25;
  letter-spacing:-.012em;
}
.listing-seo-container .seo-content h3{
  margin:24px 0 10px;
  color:var(--text);
  font-size:clamp(1.1rem, 1.55vw, 1.25rem);
  font-weight:750;
  line-height:1.35;
}
.seo-content ul,
.seo-content ol{
  margin:0 0 1rem;
  padding-left:22px;
}
.seo-content a,
.empty-state-note a{
  color:var(--link);
  font-weight:600;
  text-decoration:none;
}
.seo-content a:visited,
.empty-state-note a:visited{
  color:var(--link-visited);
}
.seo-content a:hover,
.seo-content a:active,
.empty-state-note a:hover,
.empty-state-note a:active{
  color:var(--link-hover);
}
.seo-content a:focus-visible,
.empty-state-note a:focus-visible{
  outline:2px solid var(--link);
  outline-offset:2px;
  border-radius:4px;
}
.seo-content table{
  width:100%;
  border-collapse:collapse;
  margin:14px 0;
  font-size:14px;
  line-height:1.65;
  overflow:hidden;
  border:1px solid var(--border);
}
.seo-content caption{
  caption-side:top;
  text-align:left;
  font-weight:600;
  margin-bottom:8px;
  color:var(--text);
}
.seo-content th,
.seo-content td{
  border:1px solid var(--border);
  padding:10px 12px;
  vertical-align:top;
}
.seo-content thead th{
  background:var(--surface-soft);
  color:var(--text);
}
.seo-content tbody tr:nth-child(even){
  background:rgba(15,23,42,.02);
}
.seo-ads-table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin:14px 0;
}
.seo-content .seo-ads-table-wrap table,
.seo-content table.seo-ads-table{
  display:table;
  width:100%;
  min-width:560px;
  margin:0;
}
.seo-content .seo-ads-table th:nth-child(1),
.seo-content .seo-ads-table td:nth-child(1){
  font-weight:600;
  white-space:nowrap;
}
.seo-content .seo-ads-table th:nth-child(2),
.seo-content .seo-ads-table td:nth-child(2),
.seo-content .seo-ads-table th:nth-child(3),
.seo-content .seo-ads-table td:nth-child(3),
.seo-content .seo-ads-table th:nth-child(4),
.seo-content .seo-ads-table td:nth-child(4),
.seo-content .seo-ads-table th:nth-child(5),
.seo-content .seo-ads-table td:nth-child(5){
  white-space:nowrap;
}
.seo-content-block{
  margin-top:14px;
  padding:0;
  background:none !important;
  border:0 !important;
  border-radius:0;
  box-shadow:none !important;
  color:var(--text);
  overflow:visible;
  box-sizing:border-box;
}
.seo-content-block:first-child{
  margin-top:0;
}
.seo-content-block-before{
  margin-bottom:12px;
}
.faq-content-block{
  margin-top:42px;
}
.faq-content-block h2{
  margin:0 0 14px;
  font-size:clamp(1.38rem, 2.2vw, 1.72rem);
  line-height:1.25;
}
.faq-accordion{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.faq-accordion-item{
  border:1px solid var(--border);
  border-radius:10px;
  background:#fff;
  overflow:hidden;
  box-shadow:var(--shadow-soft);
}
.faq-toggle{
  width:100%;
  border:0;
  background:#fff;
  color:var(--text);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  text-align:left;
  padding:15px 16px;
  font:inherit;
  font-size:16px;
  font-weight:600;
  line-height:1.45;
  cursor:pointer;
}
.faq-toggle:hover{
  background:var(--surface-soft);
}
.faq-toggle:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:-2px;
}
.faq-toggle-text{
  flex:1 1 auto;
}
.faq-toggle-arrow{
  flex:0 0 auto;
  width:18px;
  height:18px;
  color:#0f172a;
  transition:transform .22s ease;
}
.faq-accordion-item.is-open .faq-toggle-arrow{
  transform:rotate(180deg);
}
.faq-answer{
  color:#374151;
}
.faq-answer__inner{
  padding:0 16px 16px;
}
.faq-answer[hidden]{
  display:none;
}
.faq-answer p{
  margin:0;
}
.related-cities-title{
  font-size:14px;
  font-weight:600;
  text-transform:uppercase;
  margin:0 0 8px;
  line-height:1.35;
  color:#111827;
}
.sidebar-whats-new-card{
  border-color:rgba(15,23,42,.12);
  background:#fff;
}
.sidebar-whats-new-title{
  margin:0 0 10px;
  color:#111827;
  font-size:18px;
  font-weight:800;
  line-height:1.25;
}
.sidebar-review-list{
  display:grid;
  gap:0;
}
.sidebar-review-item{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  border:0;
  border-top:1px solid rgba(15,23,42,.10);
  border-radius:0;
  background:transparent;
  color:var(--text);
  padding:11px 0 12px;
  text-align:left;
  cursor:pointer;
  box-shadow:none;
  text-decoration:none;
  transition:color .18s ease, background-color .18s ease;
}
.sidebar-review-item:hover,
.sidebar-review-item:focus-visible{
  color:#d6a13f;
  background:rgba(248,250,252,.9);
  outline:0;
}
.sidebar-review-item:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
  border-radius:8px;
}
.sidebar-review-avatar{
  flex:0 0 58px;
  width:58px;
  height:58px;
  aspect-ratio:1 / 1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#080706;
  border:1px solid rgba(244,210,138,.78);
  color:#fff0b8;
  font-size:22px;
  font-weight:950;
  line-height:1;
  text-transform:uppercase;
  text-shadow:0 1px 0 rgba(0,0,0,.42);
  box-shadow:0 0 0 3px rgba(214,161,63,.16),0 10px 22px rgba(0,0,0,.30);
}
.sidebar-review-heading{
  display:block;
  flex:1 1 auto;
  min-width:0;
  color:#111827;
  font-size:14px;
  line-height:1.35;
}
.sidebar-review-heading span{
  color:#4b5563;
}
.sidebar-review-heading strong,
.sidebar-review-name{
  display:block;
  margin-top:2px;
  color:#d6a13f;
  font-size:14px;
  font-weight:750;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.sidebar-review-toggle{
  display:none;
  width:100%;
  margin-top:10px;
  border:1px solid rgba(15,23,42,.12);
  border-radius:10px;
  background:#f8fafc;
  color:#d6a13f;
  padding:10px 12px;
  font-size:14px;
  font-weight:750;
  cursor:pointer;
}
.sidebar-review-toggle:hover,
.sidebar-review-toggle:focus-visible{
  background:#eef6ff;
  border-color:rgba(214,161,63,.28);
  outline:0;
}
.sidebar-review-toggle:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
.col-side .card + .card{
  margin-top:14px;
}
.empty-state-note{
  margin:0;
}
.ad-fact-chip--fallback{
  border-color:rgba(244,210,138,.42);
  background:rgba(214,161,63,.22);
  color:#fff2bf;
}
.seo-disclaimer-wrap{
  max-width:var(--max-w);
  margin:12px auto;
  padding:0 12px;
}

.ad-preview-open{
  overflow:hidden;
}
.ad-preview-shell{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:var(--preview-overlay);
  color:var(--text);
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}
.ad-preview-shell[hidden]{
  display:none;
}
.ad-preview-shell.is-visible{
  opacity:1;
  pointer-events:auto;
}
.ad-preview-backdrop{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(ellipse at 50% 18%, rgba(214,161,63,.14), transparent 52%),
    rgba(3,2,1,.42);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  cursor:pointer;
}
.ad-preview-panel{
  position:relative;
  z-index:1;
  top:auto;
  right:auto;
  bottom:auto;
  left:auto;
  width:min(1060px,calc(100vw - 36px));
  max-height:calc(100vh - 36px);
  background:var(--preview-surface);
  border:1px solid var(--preview-line-strong, rgba(238,201,125,.34));
  border-radius:20px;
  box-shadow:var(--shadow-strong), 0 0 0 1px rgba(255,247,232,.04) inset;
  overflow:hidden;
  outline:none;
  display:flex;
  flex-direction:column;
  color:var(--text);
  opacity:0;
  transform:translateY(16px) scale(.972);
  transition:opacity .22s ease, transform .22s cubic-bezier(.2,.8,.2,1);
  will-change:transform,opacity;
}
.ad-preview-shell.is-visible .ad-preview-panel{
  opacity:1;
  transform:translateY(0) scale(1);
}
.ad-preview-panel-head{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:14px;
  min-height:52px;
  padding:8px 12px;
  background:rgba(23,19,15,.92);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ad-preview-close{
  width:40px;
  height:40px;
  border:1px solid rgba(238,201,125,.28);
  border-radius:999px;
  background:rgba(255,247,232,.05);
  color:var(--gold-soft);
  font-size:28px;
  line-height:1;
  cursor:pointer;
  transition:background .16s ease, border-color .16s ease, color .16s ease;
}
.ad-preview-close:hover,
.ad-preview-close:focus-visible{
  background:rgba(214,161,63,.16);
  border-color:rgba(244,210,138,.55);
  color:var(--text);
}
.ad-preview-panel-body{
  min-height:0;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:0;
  scrollbar-width:thin;
  scrollbar-color:rgba(214,161,63,.35) transparent;
}
.ad-preview-error{
  padding:28px;
  border-radius:16px;
  background:var(--preview-elevated);
  color:var(--preview-body);
  border:1px solid var(--border);
}
.ad-preview-error a{
  display:inline-flex;
  margin-top:10px;
  font-weight:800;
  color:var(--gold-soft);
}
.ad-preview{
  max-width:none;
  margin:0;
  padding:18px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--text);
  box-shadow:none;
}
@media (prefers-reduced-motion: reduce){
  .ad-preview-shell,
  .ad-preview-panel{
    transition:none !important;
  }
  .ad-preview-panel{
    transform:none !important;
  }
}
.ad-preview-no-image{
  min-height:320px;
  display:grid;
  place-items:center;
  color:var(--muted);
  background:var(--ink);
}
.ad-preview-lightbox[hidden]{
  display:none;
}
.ad-preview-lightbox{
  position:absolute;
  inset:0;
  z-index:3;
}
.ad-preview-lightbox-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,2,1,.88);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ad-preview-lightbox-frame{
  position:absolute;
  inset:20px;
  display:grid;
  place-items:center;
}
.ad-preview-lightbox-frame img{
  width:auto;
  height:auto;
  max-width:min(100%, 1180px);
  max-height:calc(100vh - 160px);
  object-fit:contain;
  border-radius:16px;
  background:var(--ink);
  border:1px solid rgba(238,201,125,.18);
  box-shadow:0 28px 80px rgba(0,0,0,.45);
}
.ad-preview-lightbox-close{
  position:absolute;
  top:0;
  right:0;
  width:42px;
  height:42px;
  border:1px solid rgba(238,201,125,.34);
  border-radius:999px;
  background:rgba(23,19,15,.9);
  color:var(--gold-soft);
  font-size:30px;
  line-height:1;
  cursor:pointer;
  z-index:4;
}
.ad-preview-lightbox-close:hover,
.ad-preview-lightbox-close:focus-visible{
  background:rgba(214,161,63,.18);
  color:var(--text);
}
.ad-preview-lightbox-nav{
  position:absolute;
  top:50%;
  width:46px;
  height:64px;
  border:1px solid rgba(238,201,125,.28);
  border-radius:999px;
  background:rgba(23,19,15,.88);
  color:var(--gold-soft);
  font-size:44px;
  line-height:1;
  transform:translateY(-50%);
  cursor:pointer;
  z-index:4;
}
.ad-preview-lightbox-nav:hover,
.ad-preview-lightbox-nav:focus-visible{
  background:rgba(214,161,63,.18);
  color:var(--text);
}
.ad-preview-lightbox-prev{
  left:0;
}
.ad-preview-lightbox-next{
  right:0;
}
.ad-preview-lightbox-count{
  position:absolute;
  left:50%;
  bottom:88px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(12,9,6,.82);
  border:1px solid rgba(244,210,138,.28);
  color:var(--text);
  font-size:13px;
  font-weight:800;
  transform:translateX(-50%);
  z-index:4;
}
.ad-preview-lightbox-thumbs[hidden]{
  display:none;
}
.ad-preview-lightbox-thumbs{
  position:absolute;
  left:50%;
  bottom:10px;
  z-index:4;
  display:flex;
  max-width:min(92vw,760px);
  gap:8px;
  overflow-x:auto;
  padding:8px;
  border:1px solid rgba(238,201,125,.22);
  border-radius:16px;
  background:rgba(12,9,6,.72);
  box-shadow:0 18px 44px rgba(0,0,0,.36);
  transform:translateX(-50%);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  scrollbar-width:thin;
}
.ad-preview-lightbox-thumb{
  width:64px;
  height:64px;
  flex:0 0 64px;
  padding:0;
  overflow:hidden;
  border:2px solid rgba(238,201,125,.28);
  border-radius:12px;
  background:var(--ink);
  cursor:pointer;
  opacity:.7;
  transition:opacity .18s ease, transform .18s ease, border-color .18s ease;
}
.ad-preview-lightbox-thumb img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  border-radius:0;
  object-fit:cover;
  box-shadow:none;
}
.ad-preview-lightbox-thumb.is-active,
.ad-preview-lightbox-thumb:hover,
.ad-preview-lightbox-thumb:focus-visible{
  border-color:var(--gold-soft);
  opacity:1;
  transform:translateY(-2px);
}
.ad-preview-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 13px;
  border-radius:10px;
  text-decoration:none;
  font-size:13px;
  font-weight:900;
}
.ad-preview-action--call{
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 42%,var(--gold-dark) 100%);
  border:1px solid rgba(244,210,138,.72);
  color:#160d08;
}
.ad-preview-action--whatsapp{
  background:linear-gradient(135deg,rgba(74,222,128,.22),rgba(22,163,74,.34));
  color:#bbf7d0;
  border:1px solid rgba(74,222,128,.42);
}
.ad-preview-action--telegram{
  background:linear-gradient(135deg,rgba(125,211,252,.18),rgba(2,132,199,.28));
  color:#bae6fd;
  border:1px solid rgba(56,189,248,.4);
}
.ad-preview-muted{
  color:var(--muted);
  margin:0;
}
.ad-preview-safety{
  margin-top:0;
  padding:18px 0;
  border:0;
  border-radius:0;
  background:transparent;
}
.ad-preview-safety p{
  margin:0;
  color:#f0c9a0;
  line-height:1.6;
}
.ad-preview-reviews{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.ad-preview-review{
  padding:12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--preview-elevated);
}
.ad-preview-review strong,
.ad-preview-review span,
.ad-preview-review em{
  margin-right:8px;
}
.ad-preview-review span{
  color:var(--gold-soft);
}
.ad-preview-review em{
  color:var(--muted);
  font-size:12px;
}
.ad-preview-review p{
  margin:8px 0 0;
  color:var(--preview-body);
}
.ad-preview-owner-reply{
  margin-top:12px;
  padding:10px 12px;
  border-left:3px solid var(--gold);
  border-radius:0 12px 12px 0;
  background:rgba(214,161,63,.1);
  color:var(--preview-body);
}
.ad-preview-owner-reply strong{
  display:inline-flex;
  margin-right:8px;
  color:var(--gold-soft);
  font-size:13px;
}
.ad-preview-owner-reply em{
  color:var(--muted);
  font-size:12px;
}
.ad-preview-owner-reply p{
  margin:6px 0 0;
  color:var(--preview-body);
}
.ad-preview-panel .ad-owner-status:empty{
  display:none;
}

/* Responsive adjustments */
@media (max-width: 860px){
  .layout-row,
  .layout-row--has-sidebar{
    grid-template-columns:minmax(0,1fr) !important;
    gap:12px;
  }
  .col-main, .col-side{
    width:100%;
    min-width:0;
    max-width:100%;
  }
  .col-side{
    position:static !important;
    top:auto;
    max-height:none;
    overflow:visible;
    padding:0;
    order:2;
  }
  .col-main{
    order:1;
  }
  .sidebar-review-list:not(.is-expanded) .sidebar-review-item:nth-of-type(n+7){
    display:none;
  }
  .sidebar-review-toggle{
    display:block;
  }
  .seo-content table{
    display:block;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .seo-content .seo-ads-table-wrap table,
  .seo-content table.seo-ads-table{
    display:table;
  }
  .ad-preview-lightbox-frame{
    inset:12px;
  }
  .ad-preview-lightbox-frame img{
    max-height:calc(100vh - 120px);
    border-radius:14px;
  }
  .ad-preview-lightbox-nav{
    width:40px;
    height:54px;
    font-size:34px;
  }
  .ad-preview-lightbox-close{
    width:38px;
    height:38px;
    font-size:26px;
  }
}

@media (max-width: 640px){
  .related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }
  .related-grid .small-btn{
    padding:8px 9px;
    font-size:14px;
    line-height:1.25;
  }
}

/* AJAX detail preview; intentionally no sidebar. */
.ad-preview-profile-head :is(h1,h2){
  margin:0 0 10px;
  color:var(--text);
  font-size:clamp(25px,3vw,38px);
  line-height:1.16;
  letter-spacing:-.02em;
}
.ad-preview-meta,
.ad-preview-toolbar,
.ad-preview-actions,
.ad-preview-chips{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.ad-preview-meta{
  color:var(--muted);
  font-size:13px;
}
.ad-preview-badge,
.ad-preview-meta .ad-owner-status{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:5px 9px;
  border:1px solid var(--preview-chip-border);
  border-radius:999px;
  background:var(--preview-chip);
  color:var(--gold-soft);
  font-weight:700;
  line-height:1;
  text-decoration:none;
}
.ad-preview-badge--location{
  color:var(--teal);
  border-color:rgba(23,184,170,.34);
  background:rgba(23,184,170,.1);
}
.ad-preview-meta .ad-owner-status:empty,
.ad-preview-meta .ad-owner-status.is-offline{
  display:none;
}
.ad-preview-meta .ad-owner-status.is-online{
  border-color:rgba(189,253,245,.34);
  background:
    linear-gradient(135deg,rgba(23,184,170,.22),rgba(214,161,63,.14)),
    rgba(8,7,6,.82);
  color:#bdfdf5;
  box-shadow:0 12px 28px rgba(0,0,0,.24),0 0 0 1px rgba(244,210,138,.08) inset;
}
.ad-preview-toolbar{
  justify-content:space-between;
  margin-top:14px;
}
.ad-preview-actions{
  margin:0;
}
.ad-preview-action--report{
  border:1px solid var(--preview-danger-border);
  background:transparent;
  color:var(--preview-danger);
  cursor:pointer;
  font:inherit;
  font-size:13px;
  font-weight:800;
}
.ad-preview-gallery-section{
  margin-top:20px;
}
.ad-preview-gallery{
  position:relative;
  overflow:hidden;
  border:0;
  border-radius:18px;
  background:var(--ink);
  box-shadow:0 18px 42px rgba(0,0,0,.28);
}
.ad-preview-collage{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:repeat(2,minmax(170px,220px));
  gap:8px;
  min-height:360px;
  background:rgba(8,7,6,.9);
}
.ad-preview-single-photo{
  position:relative;
  display:block;
  width:100%;
  min-height:430px;
  padding:0;
  overflow:hidden;
  border:0;
  background:var(--ink);
  cursor:zoom-in;
}
.ad-preview-single-photo img{
  display:block;
  width:100%;
  height:100%;
  min-height:inherit;
  object-fit:cover;
  transition:transform .22s ease, filter .22s ease;
}
.ad-preview-single-photo:hover img,
.ad-preview-single-photo:focus-visible img{
  transform:scale(1.025);
  filter:saturate(1.04);
}
.ad-preview-single-photo:focus-visible{
  outline:3px solid var(--gold-soft);
  outline-offset:-3px;
}
.ad-preview-collage-tile{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  padding:0;
  overflow:hidden;
  border:0;
  background:var(--ink);
  cursor:zoom-in;
}
.ad-preview-collage-tile--primary{
  grid-column:1;
  grid-row:1 / span 2;
}
.ad-preview-collage-tile img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .22s ease,filter .22s ease;
}
.ad-preview-collage-tile:hover img,
.ad-preview-collage-tile:focus-visible img{
  transform:scale(1.035);
  filter:saturate(1.04);
}
.ad-preview-collage-tile:focus-visible{
  outline:3px solid var(--gold-soft);
  outline-offset:-3px;
}
.ad-preview-collage-count-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ad-preview-collage-count-2 .ad-preview-collage-tile:nth-child(2){
  grid-column:2;
  grid-row:1 / span 2;
}
.ad-preview-collage-count-3{
  grid-template-columns:2fr 1fr;
}
.ad-preview-collage-count-4 .ad-preview-collage-tile:nth-child(4){
  grid-column:2 / span 2;
}
.ad-preview-collage-more{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:rgba(8,7,6,.55);
  color:var(--text);
  font-size:18px;
  font-weight:800;
}
.ad-preview-photo-count,
.ad-preview-rating-overlay{
  position:absolute;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(244,210,138,.28);
  border-radius:999px;
  background:rgba(12,9,6,.78);
  color:var(--text);
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  backdrop-filter:blur(8px);
}
.ad-preview-photo-count{
  left:12px;
  bottom:12px;
  padding:7px 11px;
  font-size:12px;
  font-weight:800;
}
.ad-preview-rating-overlay{
  top:12px;
  right:12px;
  padding:8px 11px;
}
.ad-preview-rating-overlay span,
.ad-preview-review-summary span,
.ad-preview-review span{
  color:var(--gold-soft);
}
.ad-preview-rating-overlay small{
  color:rgba(255,247,232,.78);
}
.ad-preview-content-section{
  margin:0;
  padding:18px 0;
  border:0;
  border-bottom:1px solid rgba(238,201,125,.16);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.ad-preview-content-section:last-child{
  border-bottom:0;
}
.ad-preview-content-section h3{
  margin:0 0 4px;
  color:var(--text);
  font-size:19px;
  line-height:1.3;
}
.ad-preview-target-highlight{
  outline:2px solid rgba(244,210,138,.78);
  outline-offset:4px;
  border-radius:14px;
  animation:adPreviewTargetPulse 1.4s ease both;
}
@keyframes adPreviewTargetPulse{
  0%{ box-shadow:0 0 0 0 rgba(214,161,63,.30); }
  55%{ box-shadow:0 0 0 9px rgba(214,161,63,.12); }
  100%{ box-shadow:0 0 0 0 rgba(214,161,63,0); }
}
.ad-preview-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.ad-preview-section-head .ad-preview-section-note{
  margin-bottom:0;
}
.ad-preview-section-note{
  margin:0 0 12px;
  color:var(--muted);
  font-size:13px;
}
.ad-preview-description,
.ad-preview-location-box{
  padding:16px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--preview-elevated);
  color:var(--preview-body);
  line-height:1.72;
}
.ad-preview-rate-box{
  padding:17px;
  border:1px solid rgba(214,161,63,.28);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(214,161,63,.14),rgba(18,15,12,.96));
  color:var(--preview-body);
}
.ad-preview-rate-lead{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:10px;
}
.ad-preview-rate-lead span,
.ad-preview-payment-label{
  color:var(--gold-soft);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ad-preview-rate-lead strong{
  color:var(--text);
  font-size:23px;
}
.ad-preview-rate-box p{
  margin:7px 0 0;
  font-size:14px;
}
.ad-preview-payment-label{
  margin-top:13px;
}
.ad-preview-chips{
  margin-top:8px;
}
.ad-preview-chips span{
  min-height:30px;
  padding:5px 10px;
  border:1px solid var(--preview-chip-border);
  border-radius:999px;
  background:var(--preview-chip);
  color:var(--preview-body);
  font-size:12px;
  font-weight:700;
}
.ad-preview-location-box strong{
  display:block;
  color:var(--muted);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ad-preview-location-box p{
  margin:5px 0 0;
}
.ad-preview-table{
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:14px;
  background:rgba(18,15,12,.9);
}
.ad-preview-table-row{
  display:grid;
  grid-template-columns:minmax(120px, 32%) minmax(0, 1fr);
  align-items:center;
  min-height:42px;
  border-bottom:1px solid rgba(238,201,125,.12);
}
.ad-preview-table-row:nth-child(even){
  background:rgba(255,247,232,.025);
}
.ad-preview-table-row:last-child{
  border-bottom:0;
}
.ad-preview-table-row span,
.ad-preview-table-row strong{
  display:block;
  min-width:0;
  padding:10px 13px;
  line-height:1.35;
}
.ad-preview-table-row span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.ad-preview-table-row strong{
  border-left:1px solid rgba(238,201,125,.12);
  color:var(--text);
  font-size:14px;
  font-weight:700;
  overflow-wrap:anywhere;
}
.ad-preview-review-summary{
  display:flex;
  align-items:center;
  gap:10px;
  margin:14px 0;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--preview-elevated);
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.ad-preview-review-summary strong{
  font-size:30px;
}
.ad-preview-review-summary small{
  color:var(--muted);
}
.ad-preview-mini-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 13px;
  border:1px solid var(--preview-chip-border);
  border-radius:999px;
  background:var(--preview-chip);
  color:var(--gold-soft);
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}
.ad-preview-mini-btn--danger{
  margin-top:14px;
  border-color:var(--preview-danger-border);
  background:transparent;
  color:var(--preview-danger);
}
.ad-preview-feedback-form[hidden]{
  display:none;
}
.ad-preview-feedback-form{
  display:grid;
  gap:12px;
  margin:14px 0 18px;
  padding:16px;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--preview-elevated);
}
.ad-preview-feedback-form--report{
  margin-bottom:0;
  border-color:var(--preview-danger-border);
  background:var(--preview-danger-bg);
}
.ad-preview-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.ad-preview-feedback-form label{
  display:grid;
  gap:6px;
  color:var(--muted);
  font-size:13px;
  font-weight:800;
}
.ad-preview-feedback-form input,
.ad-preview-feedback-form select,
.ad-preview-feedback-form textarea{
  width:100%;
  min-height:42px;
  padding:10px 11px;
  border:1px solid rgba(238,201,125,.24);
  border-radius:10px;
  background:var(--ink);
  color:var(--text);
  font:inherit;
  font-size:14px;
  font-weight:500;
}
.ad-preview-feedback-form textarea{
  min-height:96px;
  resize:vertical;
}
.ad-preview-hp{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.ad-preview-form-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.ad-preview-submit-btn{
  min-height:40px;
  padding:10px 15px;
  border:1px solid rgba(244,210,138,.72);
  border-radius:999px;
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 42%,var(--gold-dark) 100%);
  color:#160d08;
  font:inherit;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
}
.ad-preview-submit-btn--danger{
  background:linear-gradient(135deg,#fca5a5 0%,#dc2626 55%,#991b1b 100%);
  border-color:rgba(252,165,165,.45);
  color:#fff5f5;
}
.ad-preview-submit-btn[disabled]{
  opacity:.7;
  cursor:progress;
}
.ad-preview-form-status{
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}
.ad-preview-form-status.is-success{
  color:#86efac;
}
.ad-preview-form-status.is-error{
  color:#ffb4b4;
}
@media (max-width:860px){
  .ad-preview{
    padding:14px;
    border-radius:0;
  }
  .ad-preview-collage{
    grid-template-columns:2fr 1fr 1fr;
    grid-template-rows:repeat(2,minmax(120px,1fr));
    aspect-ratio:1 / 1;
    min-height:0;
    gap:6px;
  }
  .ad-preview-collage-tile--primary{
    grid-column:1;
    grid-row:1 / span 2;
  }
  .ad-preview-collage-count-2{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(120px,1fr));
    aspect-ratio:1 / 1;
    min-height:0;
  }
  .ad-preview-collage-count-2 .ad-preview-collage-tile:nth-child(2){
    grid-column:2;
    grid-row:1 / span 2;
  }
  .ad-preview-collage-count-3{
    grid-template-columns:2fr 1fr;
    grid-template-rows:repeat(2,minmax(0,1fr));
  }
  .ad-preview-collage-count-4{
    grid-template-columns:2fr 1fr 1fr;
    grid-template-rows:repeat(2,minmax(120px,1fr));
  }
  .ad-preview-collage-count-4 .ad-preview-collage-tile:nth-child(4){
    grid-column:2 / span 2;
    grid-row:auto;
  }
  .ad-preview-form-grid{
    grid-template-columns:1fr;
  }
  .ad-preview-section-head{
    flex-direction:column;
  }
}
@media (max-width:520px){
  .ad-preview-toolbar{
    align-items:stretch;
  }
  .ad-preview-actions{
    width:100%;
  }
  .ad-preview-action{
    flex:1 1 auto;
  }
  .ad-preview-profile-head :is(h1,h2){
    font-size:25px;
  }
}

/* Detail preview hero: image left, summary/contact right. */
.ad-preview-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(310px,.92fr);
  gap:18px;
  align-items:stretch;
  padding-bottom:18px;
  border-bottom:1px solid rgba(238,201,125,.18);
}
.ad-preview-hero-layout + .ad-preview-content-section{
  padding-top:18px;
}
.ad-preview-hero-layout .ad-preview-gallery-section{
  min-width:0;
  margin:0;
}
.ad-preview-hero-layout .ad-preview-gallery{
  width:100%;
  height:400px;
  max-height:400px;
  min-height:0;
}
.ad-preview-hero-layout .ad-preview-single-photo,
.ad-preview-hero-layout .ad-preview-collage{
  height:400px;
  max-height:400px;
  min-height:0;
}
.ad-preview-hero-layout .ad-preview-collage{
  grid-template-rows:repeat(2,minmax(0,1fr));
}
.ad-preview-profile-head{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:10px;
  padding:4px 0;
}
.ad-preview-profile-head :is(h1,h2){
  margin-bottom:0;
}
.ad-preview-quick-facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:2px;
}
.ad-preview-profile-stats{
  display:flex;
  flex-wrap:nowrap;
  gap:8px;
  min-width:0;
  margin-top:2px;
}
.ad-preview-quick-facts div,
.ad-preview-profile-stats div{
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--preview-chip-border);
  border-radius:14px;
  background:var(--preview-elevated);
  box-shadow:0 10px 22px rgba(0,0,0,.18);
}
.ad-preview-profile-stats div{
  flex:1 1 0;
}
.ad-preview-quick-facts span,
.ad-preview-profile-stats span{
  display:block;
  margin-bottom:4px;
  color:var(--gold-soft);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ad-preview-quick-facts strong,
.ad-preview-profile-stats strong{
  display:block;
  overflow:hidden;
  color:var(--text);
  font-size:15px;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ad-preview-profile-head .ad-preview-toolbar{
  margin-top:auto;
  padding-top:6px;
}
.ad-preview-profile-head .ad-preview-actions{
  width:100%;
}
.ad-preview-profile-head .ad-preview-action{
  flex:1 1 110px;
}
.ad-preview-profile-head .ad-preview-action--report{
  flex:1 1 100%;
  min-height:36px;
  margin-top:2px;
  box-shadow:none;
  opacity:.92;
}

/* Listing click feedback while the preview API loads. */
.ad-card-cta.is-preview-loading{
  pointer-events:none;
  color:#fff;
}
.ad-card-cta.is-preview-loading::before{
  content:"";
  width:17px;
  height:17px;
  margin-right:8px;
  border:2px solid rgba(255,255,255,.55);
  border-top-color:#fff;
  border-radius:999px;
  animation:adPreviewSpin .68s linear infinite;
  flex:0 0 auto;
}
@keyframes adPreviewSpin{
  to{ transform:rotate(360deg); }
}

@media (max-width:900px){
  .ad-preview-hero-layout{
    grid-template-columns:1fr;
  }
  .ad-preview-hero-layout .ad-preview-gallery,
  .ad-preview-hero-layout .ad-preview-single-photo,
  .ad-preview-hero-layout .ad-preview-collage{
    height:auto;
    max-height:none;
    min-height:0;
    aspect-ratio:1 / 1;
  }
  .ad-preview-profile-head .ad-preview-toolbar{
    margin-top:4px;
  }
}

@media (max-width:520px){
  .ad-preview-hero-layout{
    gap:14px;
    padding-bottom:16px;
  }
  .ad-preview-quick-facts{
    grid-template-columns:1fr;
  }
  .ad-preview-profile-stats{
    gap:6px;
  }
  .ad-preview-profile-stats div{
    padding:8px 7px;
    border-radius:12px;
  }
  .ad-preview-profile-stats span{
    font-size:10px;
    letter-spacing:.04em;
  }
  .ad-preview-profile-stats strong{
    font-size:13px;
  }
  .ad-preview-hero-layout .ad-preview-gallery,
  .ad-preview-hero-layout .ad-preview-single-photo,
  .ad-preview-hero-layout .ad-preview-collage{
    min-height:0;
  }
  .ad-preview-collage{
    grid-template-columns:2fr 1fr 1fr;
    grid-template-rows:repeat(2,minmax(86px,1fr));
    aspect-ratio:1 / 1;
    min-height:0;
  }
  .ad-preview-collage-count-2{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(86px,1fr));
    aspect-ratio:1 / 1;
    min-height:0;
  }
  .ad-preview-collage-count-2 .ad-preview-collage-tile:nth-child(2){
    grid-column:2;
    grid-row:1 / span 2;
  }
  .ad-preview-single-photo{
    aspect-ratio:1 / 1;
    min-height:0;
  }
  .ad-preview-collage-count-3{
    grid-template-columns:2fr 1fr;
    grid-template-rows:repeat(2,minmax(0,1fr));
  }
  .ad-preview-collage-count-4{
    grid-template-columns:2fr 1fr 1fr;
    grid-template-rows:repeat(2,minmax(86px,1fr));
  }
  .ad-preview-collage-count-4 .ad-preview-collage-tile:nth-child(4){
    grid-column:2 / span 2;
    grid-row:auto;
  }
}

/* Final mobile modal tuning: wider panel, shorter height, flat content. */
@media (max-width:860px){
  .ad-preview-shell{
    padding:24px 6px;
  }
  .ad-preview-panel{
    top:auto;
    right:auto;
    bottom:auto;
    left:auto;
    width:calc(100vw - 12px);
    max-width:calc(100vw - 12px);
    max-height:min(86vh, calc(100dvh - 72px));
    border-radius:18px;
  }
  .ad-preview-panel-head{
    min-height:48px;
    padding:7px 10px;
  }
  .ad-preview-close{
    width:36px;
    height:36px;
    font-size:25px;
  }
  .ad-preview-content-section{
    padding:15px 0;
  }
  .ad-preview-description,
  .ad-preview-location-box,
  .ad-preview-rate-box,
  .ad-preview-table-row span,
  .ad-preview-table-row strong,
  .ad-preview-feedback-form{
    padding:12px;
    border-radius:12px;
  }
  .ad-preview-table{
    border-radius:12px;
  }
  .ad-preview-table-row{
    grid-template-columns:1fr;
    align-items:start;
  }
  .ad-preview-table-row span{
    padding-bottom:3px;
    font-size:10px;
  }
  .ad-preview-table-row strong{
    padding-top:0;
    border-left:0;
    font-size:13px;
  }
  .ad-preview-safety{
    padding:15px 0;
    border:0;
    background:transparent;
  }
}

@media (max-width:520px){
  .ad-preview-shell{
    padding:22px 5px;
  }
  .ad-preview-panel{
    width:calc(100vw - 10px);
    max-width:calc(100vw - 10px);
    max-height:min(84vh, calc(100dvh - 64px));
    border-radius:16px;
  }
  .ad-preview{
    padding:12px;
  }
}
.listing-filter-shell{
  max-width:var(--max-w);
  margin:0 auto 16px;
  padding-top:8px;
  padding-left:16px;
  padding-right:16px;
  box-sizing:border-box;
}
.listing-filter-panel{
  border:1px solid #dfe6ee;
  border-radius:13px;
  background:#fff;
  box-shadow:0 8px 22px rgba(15,23,42,.045);
  padding:7px;
  margin:0;
}
.listing-filter-panel[hidden]{
  display:none;
}
.listing-pager{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding:8px 0 20px;
}
.listing-results-range{
  margin:0;
  color:var(--muted, #94a3b8);
  font-size:.9rem;
  font-weight:700;
  letter-spacing:.01em;
  text-align:center;
}
.listing-filter-form{
  display:block;
}
.listing-filter-main{
  display:grid;
  grid-template-columns:minmax(160px,1fr) minmax(210px,1.35fr) minmax(170px,1fr) auto;
  gap:7px;
  align-items:center;
}
.listing-basic-location-control{position:relative;min-width:0}
.listing-basic-location-control .listing-city-field{width:100%}
.listing-filter-main .listing-basic-location-control .listing-city-field input{padding-right:46px}
.listing-basic-location-button{
  position:absolute;
  z-index:2;
  top:3px;
  right:3px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  padding:0;
  border:1px solid rgba(244,210,138,.6);
  border-radius:8px;
  background:rgba(214,161,63,.2);
  color:#ffe4a3;
  font-size:0;
  cursor:pointer;
}
.listing-basic-location-button::before{
  content:"";
  width:19px;
  height:19px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2'/%3E%3Ccircle cx='12' cy='12' r='7'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2'/%3E%3Ccircle cx='12' cy='12' r='7'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
}
.listing-basic-location-button:hover{background:rgba(214,161,63,.32);color:#fff4cc}
.listing-basic-location-button:disabled{cursor:wait;opacity:.7}
.listing-basic-location-button.is-busy::before{animation:listomateSpin 1s linear infinite}
.listing-basic-location-button:focus-visible{outline:2px solid #fff0b8;outline-offset:2px}
.listing-basic-location-status{margin:7px 2px 0;color:var(--muted);font-size:.79rem}
.listing-basic-location-status.is-error{color:#ffb4a9}
.listing-basic-location-status[hidden]{display:none}
.listing-nearest-area-link{
  display:inline-block;
  margin-left:3px;
  color:#ffe4a3;
  font-weight:900;
  text-decoration:underline;
  text-underline-offset:2px;
}
.listing-nearest-area-link:focus-visible{outline:2px solid #ffe4a3;outline-offset:2px}
.listing-filter-field{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:0;
  min-width:0;
}
.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;
}
.listing-filter-field span{
  color:#475569;
  font-size:.72rem;
  font-weight:850;
}
.listing-filter-field input,
.listing-filter-field select{
  width:100%;
  min-height:40px;
  border:1px solid #d8dee8;
  border-radius:9px;
  background:#fff;
  color:#111827;
  padding:8px 10px;
  font:inherit;
  font-size:.92rem;
  font-weight:750;
}
.listing-filter-main .listing-filter-field input,
.listing-filter-main .listing-filter-field select{
  padding-left:22px;
}
.listing-filter-main .listing-filter-field::before{
  content:"";
  position:absolute;
  left:6px;
  top:50%;
  z-index:1;
  transform:translateY(-50%);
  color:#9a6515;
  width:12px;
  height:12px;
  background:currentColor;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-size:contain;
  mask-size:contain;
  pointer-events:none;
  line-height:1;
}
.listing-filter-field--location::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E");
}
.listing-filter-field--category::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M4 4h7v7H4V4Zm9 0h7v7h-7V4ZM4 13h7v7H4v-7Zm9 0h7v7h-7v-7Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M4 4h7v7H4V4Zm9 0h7v7h-7V4ZM4 13h7v7H4v-7Zm9 0h7v7h-7v-7Z'/%3E%3C/svg%3E");
}
.listing-filter-field--sort::before{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M7 3h2v13h3l-4 5-4-5h3V3Zm9 18h-2V8h-3l4-5 4 5h-3v13Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M7 3h2v13h3l-4 5-4-5h3V3Zm9 18h-2V8h-3l4-5 4 5h-3v13Z'/%3E%3C/svg%3E");
}
.listing-filter-field input:focus,
.listing-filter-field select:focus{
  outline:2px solid rgba(17,24,39,.18);
  border-color:#111827;
}
.listing-more-filters{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:40px;
  border:1px solid #111827;
  border-radius:9px;
  background:#111827;
  color:#fff;
  cursor:pointer;
  font:inherit;
  font-size:.9rem;
  font-weight:900;
  padding:8px 12px;
  white-space:nowrap;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.listing-more-filters::before{
  content:"";
  display:block;
  width:13px;
  height:13px;
  flex:0 0 13px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M3 5h18l-7 8v5l-4 2v-7L3 5Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M3 5h18l-7 8v5l-4 2v-7L3 5Z'/%3E%3C/svg%3E") center/contain no-repeat;
  line-height:1;
}
.listing-more-filters:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(17,24,39,.18);
}
.listing-city-field{
  position:relative;
}
.listing-city-suggestions{
  position:absolute;
  z-index:30;
  top:calc(100% + 6px);
  left:0;
  right:0;
  max-height:260px;
  overflow:auto;
  margin:0;
  padding:6px;
  list-style:none;
  border:1px solid #d8dee8;
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 42px rgba(15,23,42,.16);
}
.listing-city-suggestion{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#111827;
  padding:9px 10px;
  text-align:left;
  cursor:pointer;
}
.listing-city-suggestion strong{
  font-size:.94rem;
}
.listing-city-suggestion span{
  color:#64748b;
  font-size:.78rem;
  font-weight:800;
  white-space:nowrap;
}
.listing-city-suggestion:hover,
.listing-city-suggestion.is-active{
  background:#f1f5f9;
}
.listing-filter-backdrop{
  position:fixed;
  inset:0;
  z-index:1200;
  background:rgba(15,23,42,.48);
  backdrop-filter:blur(2px);
}
html.listing-filters-open,
html.listing-filters-open body{
  overflow:hidden;
}
.listing-filter-backdrop[hidden],
.listing-filter-drawer[hidden]{
  display:none;
}
.listing-filter-drawer{
  position:fixed;
  z-index:1201;
  top:0;
  right:0;
  bottom:0;
  width:min(430px, calc(100vw - 24px));
  background:#fff;
  box-shadow:-24px 0 56px rgba(15,23,42,.22);
  display:flex;
  flex-direction:column;
  border-radius:18px 0 0 18px;
  overflow:hidden;
}
.listing-filter-drawer__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:20px 20px 14px;
  border-bottom:1px solid #e5eaf0;
  background:linear-gradient(135deg,#fff 0%,#f8fafc 100%);
}
.listing-filter-drawer__eyebrow{
  margin:0 0 4px;
  color:#64748b;
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.listing-filter-drawer__close{
  width:36px;
  height:36px;
  border:1px solid #d8dee8;
  border-radius:999px;
  background:#fff;
  color:#111827;
  cursor:pointer;
  font-size:1.34rem;
  line-height:1;
}
.listing-filter-drawer__body{
  display:grid;
  gap:14px;
  overflow:auto;
  padding:18px 20px;
}
.listing-filter-range-card{
  display:grid;
  gap:12px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#f8fafc;
  padding:12px;
  --range-min-percent:0%;
  --range-max-percent:100%;
}
.listing-filter-range-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.listing-filter-range-card__head span{
  color:#475569;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.listing-filter-range-card__head strong{
  color:#111827;
  font-size:.9rem;
  font-weight:950;
  white-space:nowrap;
}
.listing-rate-type-tabs{
  margin:0;
  padding:3px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4px;
  border:1px solid #e2e8f0;
  border-radius:999px;
  background:#f8fafc;
}
.listing-rate-type-tabs legend{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}
.listing-rate-type-tabs label{
  min-width:0;
}
.listing-rate-type-tabs input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.listing-rate-type-tabs span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 10px;
  border-radius:999px;
  color:#475569;
  font-size:.78rem;
  font-weight:900;
  cursor:pointer;
  transition:background .18s ease, color .18s ease, box-shadow .18s ease;
}
.listing-rate-type-tabs input:checked + span{
  background:#111827;
  color:#fff;
  box-shadow:0 8px 18px rgba(15,23,42,.16);
}
.listing-rate-type-tabs input:focus-visible + span{
  outline:2px solid rgba(17,24,39,.26);
  outline-offset:2px;
}
.listing-filter-dual-range{
  position:relative;
  min-height:42px;
}
.listing-filter-dual-range__track{
  position:absolute;
  left:0;
  right:0;
  top:18px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(
    to right,
    #dbe3ed 0%,
    #dbe3ed var(--range-min-percent),
    #111827 var(--range-min-percent),
    #111827 var(--range-max-percent),
    #dbe3ed var(--range-max-percent),
    #dbe3ed 100%
  );
  box-shadow:inset 0 1px 1px rgba(15,23,42,.08);
}
.listing-filter-range-input{
  position:absolute;
  left:0;
  right:0;
  top:7px;
  width:100%;
  height:30px;
  margin:0;
  border:0;
  background:transparent;
  pointer-events:none;
  -webkit-appearance:none;
  appearance:none;
}
.listing-filter-range-input:focus{
  outline:0;
}
.listing-filter-range-input::-webkit-slider-runnable-track{
  height:7px;
  background:transparent;
}
.listing-filter-range-input::-moz-range-track{
  height:7px;
  background:transparent;
}
.listing-filter-range-input::-webkit-slider-thumb{
  width:20px;
  height:20px;
  border:3px solid #fff;
  border-radius:50%;
  background:#111827;
  box-shadow:0 4px 12px rgba(15,23,42,.28);
  cursor:pointer;
  pointer-events:auto;
  -webkit-appearance:none;
  appearance:none;
  margin-top:-6px;
  opacity:0;
}
.listing-filter-range-input::-moz-range-thumb{
  width:16px;
  height:16px;
  border:3px solid #fff;
  border-radius:50%;
  background:#111827;
  box-shadow:0 4px 12px rgba(15,23,42,.28);
  cursor:pointer;
  pointer-events:auto;
  opacity:0;
}
.listing-filter-range-input--min{
  z-index:2;
}
.listing-filter-range-input--max{
  z-index:3;
}
.listing-filter-dual-range__fill{
  position:absolute;
  z-index:4;
  top:18px;
  left:clamp(10px,var(--range-min-percent),calc(100% - 10px));
  right:clamp(10px,calc(100% - var(--range-max-percent)),calc(100% - 10px));
  height:8px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--gold,#d6a13f),var(--gold-soft,#f4d28a));
  box-shadow:0 0 0 1px rgba(244,210,138,.4),0 0 12px rgba(214,161,63,.42);
  pointer-events:none;
}
.listing-filter-dual-range__handle{
  position:absolute;
  z-index:5;
  top:11px;
  width:21px;
  height:21px;
  border:3px solid #160d08;
  border-radius:50%;
  background:var(--gold-soft,#f4d28a);
  box-shadow:0 0 0 2px rgba(244,210,138,.86),0 3px 10px rgba(0,0,0,.42);
  transform:translateX(-50%);
  pointer-events:none;
}
.listing-filter-dual-range__handle--min{
  left:clamp(10px,var(--range-min-percent),calc(100% - 10px));
}
.listing-filter-dual-range__handle--max{
  left:clamp(10px,var(--range-max-percent),calc(100% - 10px));
}
.listing-filter-dual-range:has(.listing-filter-range-input--min:focus-visible) .listing-filter-dual-range__handle--min,
.listing-filter-dual-range:has(.listing-filter-range-input--max:focus-visible) .listing-filter-dual-range__handle--max{
  box-shadow:0 0 0 5px rgba(244,210,138,.4),0 0 18px rgba(214,161,63,.55);
}
.listing-filter-range-limits{
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#64748b;
  font-size:.76rem;
  font-weight:850;
  margin-top:-6px;
}
.listing-filter-drawer__actions{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 20px 18px;
  border-top:1px solid #e5eaf0;
  background:#fff;
}
.listing-filter-drawer__actions .listing-filter-apply{
  flex:1;
}
.listing-filter-apply,
.listing-load-more__button{
  border:0;
  border-radius:9px;
  background:#111827;
  color:#fff;
  min-height:40px;
  padding:9px 15px;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.listing-filter-apply:hover,
.listing-load-more__button:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(17,24,39,.18);
}
.listing-filter-apply:disabled,
.listing-load-more__button:disabled{
  cursor:wait;
  opacity:.72;
  transform:none;
  box-shadow:none;
}
.listing-filter-reset{
  color:#334155;
  text-decoration:none;
  font-weight:800;
  font-size:.86rem;
  white-space:nowrap;
}
.listing-filter-reset:hover{
  color:#111827;
  text-decoration:underline;
}
.listing-load-more{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  padding:12px 0 0;
}
.listing-load-more[hidden]{
  display:none !important;
}
.listing-pagination{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 0 24px;
}
.listing-pagination[hidden]{
  display:none;
}
.listing-pagination__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:0 13px;
  border:1px solid rgba(244,210,138,.38);
  border-radius:10px;
  background:var(--panel-2);
  color:var(--gold-soft);
  text-decoration:none;
  font-size:.9rem;
  font-weight:800;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}
a.listing-pagination__link:hover,
a.listing-pagination__link:focus-visible{
  border-color:var(--gold-soft);
  background:var(--panel-3);
  color:#fff7e8;
  transform:translateY(-1px);
}
a.listing-pagination__link:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
}
.listing-pagination__link.is-current{
  border-color:var(--gold);
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 48%,var(--gold-dark) 100%);
  color:#160d08;
  box-shadow:0 10px 22px rgba(159,92,24,.26);
}
.listing-pagination__link--jump{
  padding:0 16px;
}
.listing-pagination__link.is-disabled{
  border-color:rgba(244,210,138,.16);
  color:#a4967b;
  background:var(--panel);
  box-shadow:none;
  cursor:default;
}
@media (max-width:520px){
  .listing-pagination{gap:6px}
  .listing-pagination__link{min-width:38px;min-height:40px;padding:0 10px;font-size:.84rem}
  .listing-pagination__link--jump{padding:0 12px}
}
.listing-load-more__button{
  min-width:190px;
}
.listing-load-more__button.is-loading::before{
  content:"";
  display:inline-block;
  width:14px;
  height:14px;
  margin-right:8px;
  border:2px solid rgba(255,255,255,.42);
  border-top-color:#fff;
  border-radius:50%;
  vertical-align:-2px;
  animation:listomateSpin .75s linear infinite;
}
.listing-load-more__status{
  margin:0;
  min-height:18px;
  color:#64748b;
  font-size:.88rem;
  font-weight:700;
}
.listing-load-more__status.is-error{
  color:#b42318;
}
@keyframes listomateSpin{
  to{transform:rotate(360deg);}
}
@media (max-width: 900px){
  .listing-filter-main{
    grid-template-columns:minmax(145px,.95fr) minmax(190px,1.3fr) minmax(150px,.95fr) auto;
  }
}
@media (max-width: 680px){
  .listing-filter-shell{
    margin:10px auto 14px;
    padding:0 10px;
  }
  .listing-filter-panel{
    padding:8px;
    border-radius:13px;
  }
  .listing-filter-main{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;
    gap:6px;
    overflow:visible;
    padding-bottom:0;
  }
  .listing-filter-main .listing-filter-field--category{order:1}
  .listing-filter-main .listing-filter-field--sort{order:2}
  .listing-more-filters{order:3}
  .listing-basic-location-control{order:4;grid-column:1 / -1}
  .listing-filter-main .listing-filter-field{
    min-width:0;
  }
  .listing-filter-main .listing-filter-field input,
  .listing-filter-main .listing-filter-field select{
    min-height:40px;
    border-radius:10px;
    padding:8px 4px 8px 18px;
    font-size:.82rem;
    font-weight:850;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .listing-filter-main .listing-filter-field::before{
    left:5px;
    width:11px;
    height:11px;
  }
  .listing-more-filters{
    width:100%;
    min-width:44px;
    min-height:40px;
    padding:8px 6px;
    gap:0;
    font-size:0;
    border-radius:10px;
  }
  .listing-more-filters::before{
    width:14px;
    height:14px;
    flex-basis:14px;
  }
  .listing-filter-main .listing-basic-location-control .listing-city-field input{padding-right:46px}
  .listing-filter-drawer{
    top:auto;
    left:8px;
    right:8px;
    bottom:8px;
    width:auto;
    max-height:min(84vh, calc(100dvh - 24px));
    border-radius:18px;
    box-shadow:0 -18px 56px rgba(15,23,42,.24);
  }
  .listing-filter-drawer__head{
    padding:16px 16px 12px;
  }
  .listing-filter-drawer__body{
    padding:14px 16px;
  }
  .listing-filter-drawer__actions{
    padding:12px 16px 14px;
  }
  .layout-row{
    margin:12px auto;
    padding:0 10px;
  }
  .ad-row{
    gap:10px;
    min-height:0;
    padding-right:10px;
    align-items:stretch;
  }
  .ad-media-stack{
    flex:0 0 clamp(136px, 40vw, 168px);
    width:clamp(136px, 40vw, 168px);
    min-height:250px;
    align-self:stretch;
  }
  .ad-media-frame{
    min-height:250px;
    border-radius:0;
  }
  .ad-content{
    padding:8px 0 10px;
    min-width:0;
  }
  .ad-title-primary{
    font-size:.98rem;
    line-height:1.3;
    -webkit-line-clamp:3;
  }
  .ad-desc{
    font-size:.88rem;
    -webkit-line-clamp:3;
    line-height:1.4;
  }
  .ad-meta{
    gap:6px;
    margin-top:10px;
    padding:0;
  }
  .ad-meta-item{
    min-height:28px;
    padding:4px 10px 4px 7px;
    font-size:12px;
  }
  .ad-meta-icon{
    width:15px;
    height:15px;
    flex-basis:15px;
    padding:2px;
  }
  .ad-meta-text{
    max-width:9.5rem;
  }
  .ad-card-actions{
    margin-top:10px;
  }
  .ad-card-cta{
    min-height:40px;
    padding:9px 14px;
    border-radius:10px;
    width:100%;
    max-width:100%;
    justify-content:center;
  }
}

@media (max-width: 400px){
  .listing-filter-main{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;
  }
  .listing-filter-main .listing-filter-field--sort{
    grid-column:auto;
  }
  .ad-media-stack{
    flex:0 0 128px;
    width:128px;
    min-height:228px;
  }
  .ad-media-frame{
    min-height:228px;
  }
  .ad-title-primary{
    font-size:.94rem;
  }
}

/* Republic Spot dark-gold theme cleanup */
.layout-row,
.listing-filter-shell{
  background:transparent;
  color:var(--text);
}
.layout-row .card,
.listing-filter-shell .card,
.listing-filter-panel,
.listing-filter-drawer,
.listing-filter-range-card,
.faq-accordion-item,
.sidebar-whats-new-card,
.sidebar-review-item,
.sidebar-review-toggle,
.small-btn{
  background:linear-gradient(180deg,rgba(34,26,18,.96),rgba(18,15,12,.98));
  border-color:var(--border);
  color:var(--text);
  box-shadow:var(--shadow-soft);
}
.small-btn:hover,
.sidebar-review-item:hover,
.sidebar-review-toggle:hover{
  border-color:rgba(244,210,138,.36);
  background:linear-gradient(180deg,rgba(43,33,22,.98),rgba(22,18,14,.98));
  color:var(--gold-soft);
  box-shadow:0 26px 70px rgba(0,0,0,.42);
}
.ad-card:target{
  outline-color:rgba(244,210,138,.72);
  box-shadow:0 0 0 5px rgba(214,161,63,.18),0 26px 70px rgba(0,0,0,.42);
}
.ad-title-primary,
.related-cities-title,
.sidebar-whats-new-title,
.sidebar-review-heading,
.sidebar-review-heading strong,
.faq-content-block h2,
.ad-preview-profile-head :is(h1,h2),
.ad-preview-content-section h3,
.ad-preview-table-row strong,
.listing-filter-range-card__head strong{
  color:var(--text);
}
.ad-card .ad-title-primary{
  color:var(--gold-soft);
}
.ad-desc,
.empty-state-note,
.sidebar-review-heading span,
.faq-answer,
.faq-answer p,
.ad-preview-muted,
.ad-preview-section-note,
.ad-preview-review em,
.listing-load-more__status,
.listing-results-range,
.listing-filter-field span,
.listing-filter-drawer__eyebrow,
.listing-filter-range-card__head span,
.listing-filter-range-limits,
.listing-city-suggestion span{
  color:var(--muted);
}
.ad-media-frame,
.sidebar-review-avatar,
.ad-preview-gallery,
.ad-preview-collage,
.ad-preview-single-photo,
.ad-preview-collage-tile,
.ad-preview-no-image{
  background:var(--ink);
  border-color:rgba(238,201,125,.18);
}
.ad-media-frame,
.ad-preview-single-photo,
.ad-preview-collage-tile,
.ad-preview-lightbox-thumb,
.ad-preview-no-image{
  background-color:var(--ink);
  background-image:var(--ad-photo-placeholder);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.ad-image,
.ad-preview-single-photo img,
.ad-preview-collage-tile img,
.ad-preview-lightbox-thumb img,
.ad-preview-lightbox-frame img{
  background-color:var(--ink);
  background-image:var(--ad-photo-placeholder);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.sidebar-review-avatar{
  background:#080706;
  border-color:rgba(244,210,138,.78);
  color:#fff0b8;
}
.ad-photo-badge,
.ad-rating-overlay,
.ad-preview-photo-count,
.ad-preview-rating-overlay{
  background:rgba(8,7,6,.78);
  border-color:rgba(238,201,125,.24);
  color:var(--text);
  box-shadow:0 12px 28px rgba(0,0,0,.28);
}
.ad-rating-overlay{
  border-left-color:var(--gold);
}
.ad-rating-stars,
.ad-rating-score,
.ad-preview-rating-overlay span,
.ad-preview-review-summary span,
.ad-preview-review span,
.ad-preview-owner-reply strong{
  color:var(--gold-soft);
}
.ad-rating-count,
.ad-preview-rating-overlay small,
.ad-preview-review-summary small{
  color:rgba(255,247,232,.78);
}
.ad-fact-chip,
.ad-owner-status{
  background:rgba(255,247,232,.05);
  border-color:rgba(238,201,125,.24);
  color:var(--gold-soft);
  box-shadow:none;
}
.ad-owner-status::before{
  background:var(--teal);
  box-shadow:0 0 0 4px rgba(23,184,170,.18),0 0 15px rgba(23,184,170,.40);
}
.ad-owner-status.is-online,
.ad-preview-meta .ad-owner-status.is-online{
  background:
    linear-gradient(135deg,rgba(23,184,170,.22),rgba(214,161,63,.14)),
    rgba(8,7,6,.82);
  border-color:rgba(189,253,245,.34);
  color:#bdfdf5;
  box-shadow:0 12px 28px rgba(0,0,0,.24),0 0 0 1px rgba(244,210,138,.08) inset;
}
.ad-owner-status.is-online::before{
  background:var(--teal);
}
.ad-card-cta,
.listing-filter-apply,
.listing-load-more__button,
.ad-preview-submit-btn{
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 42%,var(--gold-dark) 100%);
  border-color:rgba(244,210,138,.72);
  color:#160d08;
  box-shadow:0 14px 30px rgba(159,92,24,.28),inset 0 1px 0 rgba(255,255,255,.42);
}
.ad-card-cta:hover,
.ad-card-cta:focus-visible,
.listing-filter-apply:hover,
.listing-load-more__button:hover,
.ad-preview-submit-btn:hover{
  background:linear-gradient(135deg,#fff7d6 0%,var(--gold-soft) 38%,#b96d20 100%);
  border-color:var(--gold-soft);
  color:#100805;
}
.ad-card-cta:focus-visible,
.listing-filter-apply:focus-visible,
.listing-load-more__button:focus-visible,
.sidebar-review-toggle:focus-visible,
.ad-preview-single-photo:focus-visible,
.ad-preview-collage-tile:focus-visible{
  outline-color:var(--gold-soft);
}
.faq-toggle,
.ad-preview-panel-head,
.listing-filter-drawer__head,
.listing-filter-drawer__actions{
  background:var(--panel);
  border-color:var(--border);
  color:var(--text);
}
.faq-toggle:hover{
  background:var(--panel-2);
}
.faq-toggle-arrow{
  color:var(--gold-soft);
}
.faq-answer,
.ad-preview-content-section,
.ad-preview-safety{
  background:transparent;
  border-color:var(--border);
}
.listing-filter-field input,
.listing-filter-field select,
.listing-city-suggestions,
.listing-rate-type-tabs,
.ad-preview-feedback-form input,
.ad-preview-feedback-form select,
.ad-preview-feedback-form textarea{
  background:var(--ink);
  border-color:rgba(238,201,125,.24);
  color:var(--text);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.listing-filter-main .listing-filter-field::before{
  background:var(--gold);
  opacity:.9;
}
.listing-filter-field input:focus,
.listing-filter-field select:focus,
.ad-preview-feedback-form input:focus,
.ad-preview-feedback-form select:focus,
.ad-preview-feedback-form textarea:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(214,161,63,.18);
}
.listing-city-suggestion{
  color:var(--text);
}
.listing-city-suggestion strong{
  color:var(--text);
}
.listing-city-suggestion:hover,
.listing-city-suggestion.is-active{
  background:rgba(214,161,63,.14);
  color:var(--gold-soft);
}
.listing-city-suggestion--current{
  border:1px solid rgba(244,210,138,.38);
  background:rgba(214,161,63,.1);
  margin-bottom:4px;
}
.listing-city-suggestion--current::before{
  content:"";
  width:17px;
  height:17px;
  flex:0 0 17px;
  background:var(--gold-soft);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2'/%3E%3Ccircle cx='12' cy='12' r='7'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2'/%3E%3Ccircle cx='12' cy='12' r='7'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
}
.listing-city-suggestion--current strong,
.listing-city-suggestion--current span{color:#ffe4a3}
.listing-rate-type-tabs span{
  color:var(--muted);
}
.listing-rate-type-tabs input:checked + span{
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 48%,var(--gold-dark) 100%);
  color:#160d08;
  box-shadow:0 8px 18px rgba(159,92,24,.24),inset 0 1px 0 rgba(255,255,255,.42);
}
.listing-rate-type-tabs input:focus-visible + span{
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
}
.listing-more-filters,
.listing-filter-reset,
.listing-filter-drawer__close{
  background:rgba(255,255,255,.04);
  border-color:rgba(238,201,125,.22);
  color:var(--gold-soft);
}
.listing-more-filters:hover,
.listing-filter-reset:hover,
.listing-filter-drawer__close:hover{
  background:rgba(214,161,63,.14);
  color:var(--text);
}
.listing-filter-backdrop{
  background:rgba(3,2,1,.76);
  color:var(--text);
}
.listing-filter-dual-range__track{
  background:rgba(238,201,125,.18);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.48),0 0 0 1px rgba(238,201,125,.12),0 0 10px rgba(214,161,63,.16);
}
.listing-filter-range-input::-webkit-slider-thumb{
  background:var(--gold-soft);
  border-color:#160d08;
  box-shadow:0 0 0 4px rgba(214,161,63,.18);
}
.listing-filter-range-input::-moz-range-thumb{
  background:var(--gold-soft);
  border-color:#160d08;
  box-shadow:0 0 0 4px rgba(214,161,63,.18);
}
.listing-filter-range-input:focus-visible::-webkit-slider-thumb{
  box-shadow:0 0 0 5px rgba(244,210,138,.32),0 0 18px rgba(214,161,63,.42);
}
.listing-filter-range-input:focus-visible::-moz-range-thumb{
  box-shadow:0 0 0 5px rgba(244,210,138,.32),0 0 18px rgba(214,161,63,.42);
}
.listing-filter-range-card__summary{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
}
.listing-filter-range-card__summary button{
  padding:3px 6px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:var(--gold-soft);
  font:inherit;
  font-size:.7rem;
  font-weight:850;
  cursor:pointer;
}
.listing-filter-range-card__summary button:hover{
  background:rgba(214,161,63,.14);
}
.listing-filter-range-card__summary button:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:1px;
}
.listing-range-number-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.listing-range-number-fields label{
  display:grid;
  gap:5px;
  min-width:0;
}
.listing-range-number-fields label > span:first-child{
  color:var(--muted);
  font-size:.68rem;
  font-weight:850;
}
.listing-range-number-fields input{
  width:100%;
  min-width:0;
  height:38px;
  padding:7px 9px;
  border:1px solid rgba(238,201,125,.24);
  border-radius:9px;
  background:var(--ink);
  color:var(--text);
  font:inherit;
  font-size:.82rem;
  font-weight:850;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.listing-range-number-fields input:focus{
  border-color:var(--gold);
  outline:0;
  box-shadow:0 0 0 3px rgba(214,161,63,.18);
}
.listing-range-number-input{
  position:relative;
  display:block;
}
.listing-range-number-input b{
  position:absolute;
  z-index:1;
  left:9px;
  top:50%;
  max-width:36px;
  overflow:hidden;
  color:var(--gold-soft);
  font-size:.72rem;
  line-height:1;
  transform:translateY(-50%);
  pointer-events:none;
}
.listing-range-number-input input{
  padding-left:28px;
}
.listing-advanced-core{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(34,26,18,.96),rgba(18,15,12,.98));
}
.listing-advanced-core__row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.listing-advanced-core .listing-filter-field{
  gap:5px;
}
.listing-advanced-core .listing-filter-field > span,
.listing-advanced-core__location > label{
  color:var(--muted);
  font-size:.72rem;
  font-weight:850;
}
.listing-advanced-core .listing-filter-field input,
.listing-advanced-core .listing-filter-field select{
  min-width:0;
  min-height:40px;
  font-size:.83rem;
}
.listing-advanced-city-control{position:relative;width:100%}
.listing-advanced-core .listing-advanced-city-control input{padding-right:46px}
.listing-advanced-core__location .listing-city-suggestions{
  top:calc(100% + 5px);
  z-index:50;
}
.listing-advanced-core__status{
  margin:0;
  color:var(--muted);
  font-size:.73rem;
  line-height:1.3;
}
.listing-advanced-core__status.is-error{color:#ffb4b4}
.listing-advanced-core__status:empty{
  display:none;
}
.listing-advanced-radius{
  display:grid;
  gap:8px;
  min-width:0;
  padding-top:11px;
  border-top:1px solid var(--border);
}
.listing-advanced-radius__head{display:grid;gap:3px}
.listing-advanced-radius__head strong{color:var(--text);font-size:.79rem}
.listing-advanced-radius__head span{color:var(--muted);font-size:.72rem;line-height:1.35}
.listing-nationality-filter{
  min-width:0;
  margin:0;
  padding:12px;
  border:1px solid var(--border);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(34,26,18,.96),rgba(18,15,12,.98));
}
.listing-nationality-filter legend{
  padding:0 4px;
  color:var(--muted);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.listing-nationality-options{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  max-height:164px;
  overflow:auto;
  padding:2px;
  scrollbar-width:thin;
  scrollbar-color:rgba(214,161,63,.52) transparent;
}
.listing-choice-button,
.listing-radius-button{
  min-height:36px;
  padding:7px 12px;
  border:1px solid rgba(238,201,125,.22);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:var(--text);
  font:inherit;
  font-size:.8rem;
  font-weight:850;
  line-height:1.1;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.listing-choice-button:hover,
.listing-radius-button:hover{
  border-color:rgba(244,210,138,.52);
  color:var(--gold-soft);
  transform:translateY(-1px);
}
.listing-choice-button.is-selected,
.listing-radius-button.is-selected{
  border-color:rgba(244,210,138,.72);
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 48%,var(--gold-dark) 100%);
  color:#160d08;
  box-shadow:0 8px 18px rgba(159,92,24,.24),inset 0 1px 0 rgba(255,255,255,.42);
}
.listing-choice-button:focus-visible,
.listing-radius-button:focus-visible,
.listing-location-clear:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
}
.listing-location-feedback span{
  color:var(--muted);
  font-size:.76rem;
  line-height:1.35;
}
.listing-radius-options{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:6px;
}
.listing-radius-button{
  min-width:0;
  padding:7px 4px;
  font-size:.72rem;
}
.listing-location-feedback{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.listing-location-feedback span.is-error{
  color:#ffb4b4;
}
.listing-location-clear{
  padding:3px 0;
  border:0;
  background:transparent;
  color:var(--gold-soft);
  font:inherit;
  font-size:.76rem;
  font-weight:850;
  cursor:pointer;
}
.listing-nearby-banner{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  margin:0 0 16px;
  padding:14px 16px;
  border:1px solid rgba(244,210,138,.42);
  border-radius:14px;
  background:
    radial-gradient(circle at 0 0,rgba(214,161,63,.2),transparent 42%),
    linear-gradient(135deg,rgba(43,31,18,.98),rgba(18,15,12,.98));
  color:var(--text);
  box-shadow:0 14px 34px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.05);
}
.listing-active-filters{
  display:grid;
  gap:9px;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid rgba(238,201,125,.24);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(34,26,18,.94),rgba(18,15,12,.96));
  color:var(--text);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.listing-active-filters[hidden]{
  display:none !important;
}
.listing-active-filters__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.listing-active-filters__head h2{
  margin:0;
  color:var(--text);
  font-size:.88rem;
}
.listing-active-filters__head > button{
  padding:3px 0;
  border:0;
  background:transparent;
  color:var(--gold-soft);
  font:inherit;
  font-size:.74rem;
  font-weight:900;
  cursor:pointer;
}
.listing-active-filters__chips{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.listing-active-filter-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:6px 9px 6px 11px;
  border:1px solid rgba(244,210,138,.38);
  border-radius:999px;
  background:rgba(214,161,63,.1);
  color:var(--text);
  font:inherit;
  font-size:.75rem;
  font-weight:800;
  cursor:pointer;
}
.listing-active-filter-chip b{
  display:grid;
  place-items:center;
  width:18px;
  height:18px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:var(--gold-soft);
  font-size:.88rem;
  line-height:1;
}
.listing-active-filter-chip:hover{
  border-color:rgba(244,210,138,.68);
  background:rgba(214,161,63,.18);
}
.listing-active-filter-chip:focus-visible,
.listing-active-filters__head > button:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
}
.listing-nearby-banner[hidden]{
  display:none !important;
}
.listing-nearby-banner__icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(244,210,138,.52);
  border-radius:50%;
  background:rgba(214,161,63,.16);
  color:var(--gold-soft);
}
.listing-nearby-banner__icon svg{
  width:22px;
  height:22px;
  fill:currentColor;
}
.listing-nearby-banner__copy{
  min-width:0;
}
.listing-nearby-banner__copy h2{
  margin:0 0 3px;
  color:var(--gold-soft);
  font-size:1rem;
  line-height:1.2;
}
.listing-nearby-banner__copy p{
  margin:0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.45;
}
.listing-nearby-banner__copy strong{
  color:var(--text);
}
.listing-nearby-banner__clear{
  min-height:38px;
  padding:8px 12px;
  border:1px solid rgba(244,210,138,.38);
  border-radius:10px;
  background:rgba(255,255,255,.045);
  color:var(--gold-soft);
  font:inherit;
  font-size:.76rem;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}
.listing-nearby-banner__clear:hover{
  border-color:rgba(244,210,138,.68);
  background:rgba(214,161,63,.16);
  color:#fff7d6;
}
.listing-nearby-banner__clear:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
}
@media (max-width:620px){
  .listing-nearby-banner{
    grid-template-columns:38px minmax(0,1fr);
    padding:12px;
  }
  .listing-nearby-banner__icon{
    width:38px;
    height:38px;
  }
  .listing-nearby-banner__clear{
    grid-column:1 / -1;
    width:100%;
  }
}
.listing-load-more__button:disabled{
  background:var(--panel-3);
  color:#9f927a;
  border-color:rgba(238,201,125,.14);
  box-shadow:none;
}
.listing-load-more__status.is-error,
.ad-preview-form-status.is-error{
  color:#ffb4b4;
}
.ad-preview-review p,
.ad-preview-owner-reply p,
.ad-preview-description,
.ad-preview-location-box,
.ad-preview-safety p{
  color:#ead9b7;
}
.ad-preview-table-row,
.ad-preview-table-row strong,
.ad-preview-table-row span{
  border-color:var(--border);
}
.ad-preview-table-row:nth-child(even){
  background:rgba(255,255,255,.025);
}

.seo-content-block > :first-child,
.seo-disclaimer-wrap > :first-child{
  margin-top:0;
}
.seo-content-block > :last-child,
.seo-disclaimer-wrap > :last-child{
  margin-bottom:0;
}
.seo-disclaimer-wrap{
  width:calc(100% - 24px);
  max-width:1180px;
  margin:32px auto 48px;
  padding:16px 18px;
  border:1px solid rgba(238,201,125,.28);
  border-left:3px solid #d6a13f;
  border-radius:12px;
  background:#17130f;
  color:#ead9b7;
  font-size:.9rem;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.seo-content.seo-disclaimer-wrap{
  background:#17130f!important;
  border-color:rgba(238,201,125,.28)!important;
  border-left-color:#d6a13f!important;
  color:#ead9b7!important;
}
.seo-disclaimer-wrap p,
.seo-disclaimer-wrap li{
  font-size:.9rem;
  line-height:1.65;
}
.seo-disclaimer-wrap .adult-disclaimer{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:inherit!important;
  text-align:start!important;
  font-size:inherit!important;
}
.seo-disclaimer-wrap strong{
  color:#fff7e8;
}
.seo-disclaimer-wrap a,
.seo-disclaimer-wrap a:visited{
  color:#f4d28a;
  text-decoration:underline;
  text-underline-offset:3px;
}
@media(max-width:600px){
  .listing-page-intro{
    margin-top:18px;
    margin-bottom:12px;
    padding-left:16px;
    padding-right:16px;
  }
  .seo-content-block-before h1{
    font-size:clamp(1.65rem, 8vw, 1.9rem);
    line-height:1.16;
  }
  .listing-seo-container .seo-content section + section{
    margin-top:28px;
  }
  .listing-seo-container{
    padding-left:16px;
    padding-right:16px;
  }
  .listing-seo-container .seo-content h2{
    font-size:clamp(1.24rem, 6vw, 1.42rem);
  }
  .faq-content-block{
    margin-top:34px;
  }
  .seo-disclaimer-wrap{
    margin-top:24px;
    margin-bottom:36px;
    padding:14px 15px;
  }
}

/* Pagination gradient shared by city-page footer actions and FAQ controls. */
html body .rs-footer-brand-cta,
html body .rs-footer .rs-safety-badge__links a:first-child,
html body .rs-footer .rs-analytics-preferences,
html body .faq-accordion-item.is-open > .faq-toggle,
html body .faq-accordion-item.is-open > .faq-question-heading .faq-toggle,
html body .faq-toggle-arrow{
  background:#d6a13f!important;
  background-image:linear-gradient(135deg,#f8dfa1 0%,#d6a13f 55%,#b8892d 100%)!important;
  border-color:#a77b27!important;
  color:#172337!important;
}
html body .rs-footer-brand-cta:hover,
html body .rs-footer .rs-safety-badge__links a:first-child:hover,
html body .rs-footer .rs-analytics-preferences:hover{
  background:#e3b85b!important;
  background-image:linear-gradient(135deg,#fff3c4 0%,#e3b85b 55%,#a77b27 100%)!important;
  border-color:#8a631c!important;
  color:#172337!important;
}
html body .faq-accordion-item{
  border-color:#ffaa00!important;
}


/* Keep listing controls on the gold palette despite the global form theme. */
html body #listingFilterForm .listing-filter-field input,
html body #listingFilterForm .listing-filter-field select,
html body #listingFilterForm .listing-range-number-fields input,
html body #listingFilterForm .listing-range-number-input{
  border-color:#d8c59d!important;
}
html body #listingFilterForm .listing-filter-field input:focus,
html body #listingFilterForm .listing-filter-field select:focus,
html body #listingFilterForm .listing-range-number-fields input:focus{
  border-color:#a77b27!important;
  outline:2px solid rgba(167,123,39,.25)!important;
}

.sidebar-review-heading .sidebar-review-rating{
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:3px;
  color:var(--muted);
  font-size:13px;
  line-height:1.25;
}
.sidebar-review-heading .sidebar-review-stars{
  color:var(--gold-soft);
}
.sidebar-review-heading .sidebar-review-score{
  color:var(--text);
  font-weight:750;
}
.sidebar-review-heading .sidebar-review-name{
  display:block;
  margin-top:3px;
  color:var(--text);
  font-size:14px;
  font-weight:800;
  line-height:1.35;
}
.sidebar-review-heading .sidebar-review-excerpt{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:4px;
  color:#ead9b7;
  font-size:13px;
  line-height:1.4;
}

.ad-preview-hero-layout{
  gap:22px;
  padding:4px 0 22px;
  border-bottom:1px solid rgba(238,201,125,.18);
}
.ad-preview-hero-layout .ad-preview-gallery{
  border:1px solid rgba(238,201,125,.28);
  border-radius:20px;
  box-shadow:0 22px 48px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,247,232,.08);
}
.ad-preview-hero-layout .ad-preview-gallery::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:88px;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(8,7,6,.72));
  z-index:1;
}
.ad-preview-photo-count,
.ad-preview-rating-overlay{
  border:1px solid rgba(244,210,138,.28);
  background:rgba(12,9,6,.78);
  color:#fff7e8;
  backdrop-filter:blur(8px);
  box-shadow:0 10px 22px rgba(0,0,0,.28);
}
.ad-preview-crumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  margin:0 0 2px;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.ad-preview-crumbs a{
  color:var(--gold-soft);
  text-decoration:none;
}
.ad-preview-crumbs a:hover,
.ad-preview-crumbs a:focus-visible{
  color:#fff7e8;
  text-decoration:underline;
}
.ad-preview-crumbs__sep{
  color:rgba(238,201,125,.4);
  font-weight:700;
}
.ad-preview-badge--category{
  border-color:rgba(214,161,63,.42);
  background:rgba(214,161,63,.16);
  color:var(--gold-soft);
}
.ad-preview-badge--category:hover,
.ad-preview-badge--category:focus-visible,
.ad-preview-badge--location:hover,
.ad-preview-badge--location:focus-visible{
  border-color:rgba(244,210,138,.7);
  color:#fff7e8;
  text-decoration:none;
}
.ad-preview-profile-head :is(h1,h2){
  color:#fff7e8;
  text-shadow:0 10px 24px rgba(0,0,0,.28);
}
.ad-preview-quick-facts div,
.ad-preview-profile-stats div{
  border-color:rgba(238,201,125,.2);
  background:linear-gradient(180deg,rgba(34,26,18,.92),rgba(18,15,12,.96));
  box-shadow:0 10px 22px rgba(0,0,0,.18);
}
.ad-preview-quick-facts strong,
.ad-preview-profile-stats strong{
  color:#fff7e8;
}
.ad-preview-quick-facts span,
.ad-preview-profile-stats span{
  color:var(--gold-soft);
}
.ad-preview .ad-preview-action{
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border-radius:12px;
  font-size:14px;
  font-weight:900;
  letter-spacing:.01em;
  text-decoration:none;
  transition:transform .16s ease, box-shadow .16s ease, filter .16s ease, background .16s ease, border-color .16s ease, color .16s ease;
}
.ad-preview .ad-preview-action svg{
  width:16px;
  height:16px;
  flex:0 0 auto;
}
.ad-preview .ad-preview-action--call{
  background:linear-gradient(135deg,#fff0b8 0%,var(--gold) 42%,var(--gold-dark) 100%);
  border:1px solid rgba(244,210,138,.72);
  color:#160d08;
  box-shadow:0 14px 30px rgba(159,92,24,.28), inset 0 1px 0 rgba(255,255,255,.42);
}
.ad-preview .ad-preview-action--call:hover,
.ad-preview .ad-preview-action--call:focus-visible{
  background:linear-gradient(135deg,#fff7d6 0%,var(--gold-soft) 38%,#b96d20 100%);
  border-color:var(--gold-soft);
  color:#100805;
  transform:translateY(-1px);
}
.ad-preview .ad-preview-action--whatsapp{
  background:linear-gradient(135deg,rgba(74,222,128,.2),rgba(22,163,74,.32));
  border:1px solid rgba(74,222,128,.42);
  color:#bbf7d0;
  box-shadow:0 10px 22px rgba(0,0,0,.2);
}
.ad-preview .ad-preview-action--whatsapp:hover,
.ad-preview .ad-preview-action--whatsapp:focus-visible{
  background:linear-gradient(135deg,rgba(134,239,172,.28),rgba(22,163,74,.42));
  border-color:rgba(134,239,172,.7);
  color:#ecfdf5;
  transform:translateY(-1px);
}
.ad-preview .ad-preview-action--telegram{
  background:linear-gradient(135deg,rgba(125,211,252,.16),rgba(2,132,199,.28));
  border:1px solid rgba(56,189,248,.4);
  color:#bae6fd;
  box-shadow:0 10px 22px rgba(0,0,0,.2);
}
.ad-preview .ad-preview-action--telegram:hover,
.ad-preview .ad-preview-action--telegram:focus-visible{
  background:linear-gradient(135deg,rgba(186,230,253,.24),rgba(2,132,199,.38));
  border-color:rgba(125,211,252,.7);
  color:#e0f2fe;
  transform:translateY(-1px);
}
.ad-preview .ad-preview-action--report{
  background:transparent;
  border:1px solid var(--preview-danger-border);
  color:var(--preview-danger);
  box-shadow:none;
  font-weight:800;
}
.ad-preview .ad-preview-action--report:hover,
.ad-preview .ad-preview-action--report:focus-visible{
  background:var(--preview-danger-bg);
  border-color:rgba(252,165,165,.55);
  color:#fff1f2;
}

/* Text-only frequent searches below the listing results. */
.listing-frequent-searches{
  width:100%;
  max-width:var(--max-w);
  margin:22px auto;
  padding:0 12px;
  box-sizing:border-box;
}
.listing-frequent-searches--inline{
  max-width:none;
  margin:18px 0 0;
  padding:0;
}
.listing-frequent-searches__panel{
  border:1px solid var(--border);
  border-left:3px solid var(--gold);
  border-radius:14px;
  background:
    radial-gradient(circle at 92% 12%,rgba(23,184,170,.09),transparent 34%),
    linear-gradient(135deg,rgba(43,33,22,.96),rgba(18,15,12,.98));
  box-shadow:var(--shadow-soft);
}
.listing-frequent-searches h2{
  margin:0;
}
.listing-frequent-searches__toggle{
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border:0;
  background:transparent;
  color:var(--text);
  cursor:pointer;
  font:inherit;
  font-size:clamp(1.1rem,2vw,1.35rem);
  font-weight:800;
  line-height:1.15;
  text-align:left;
}
.listing-frequent-searches__toggle svg{
  width:20px;
  height:20px;
  flex:none;
  color:var(--gold-soft);
  transition:transform .2s ease;
}
.listing-frequent-searches__toggle[aria-expanded="true"] svg{
  transform:rotate(180deg);
}
@media (prefers-reduced-motion:reduce){
  .listing-frequent-searches__toggle svg,.faq-toggle-arrow{transition:none}
}
.listing-frequent-searches__toggle:focus-visible{
  outline:2px solid var(--gold-soft);
  outline-offset:-4px;
  border-radius:12px;
}
.listing-frequent-searches__content{
  padding:0;
}
.listing-frequent-searches__inner{
  padding:0 20px 20px;
}
.listing-frequent-searches__content[hidden]{
  display:none;
}
.listing-frequent-searches__description{
  margin:0 0 14px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.5;
}
.listing-frequent-searches__terms{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0;
  padding:0;
  list-style:none;
}
.listing-frequent-searches__terms li{
  border:1px solid rgba(238,201,125,.25);
  border-radius:999px;
  background:rgba(255,247,232,.045);
  color:#f5e6c8;
}
.listing-frequent-searches__terms p{
  margin:0;
  padding:9px 12px;
  font-size:.86rem;
  font-weight:700;
  line-height:1.25;
}
.listing-tag-browser .listing-frequent-searches__terms a{
  display:block;
  padding:9px 12px;
  color:#f5e6c8;
  font-size:.86rem;
  font-weight:700;
  line-height:1.25;
  text-decoration:none;
}
.listing-tag-browser .listing-frequent-searches__terms a:hover,
.listing-tag-browser .listing-frequent-searches__terms a:focus-visible{
  background:rgba(238,201,125,.12);
  color:#fff4d8;
  outline:2px solid var(--gold-soft);
  outline-offset:2px;
  border-radius:999px;
}
.listing-tag-browser__count{
  margin-left:3px;
  color:var(--gold-soft);
  font-size:.78em;
}
@media (max-width:700px){
  .listing-frequent-searches--inline{
    margin:16px 0 0;
  }
  .listing-frequent-searches__toggle{
    padding:16px;
  }
  .listing-frequent-searches__inner{
    padding:0 16px 16px;
  }
  .listing-frequent-searches__terms{
    gap:8px;
  }
  .listing-frequent-searches__terms p{
    padding:8px 10px;
    font-size:.81rem;
  }
  .listing-tag-browser .listing-frequent-searches__terms a{
    padding:8px 10px;
    font-size:.81rem;
  }
}

/* LocateBits light/gold city listing theme — scoped contrast correction. */
.listing-page .layout-row .col-side .card,
.listing-page [data-listing-sidebar] .card,
.listing-page .sidebar-whats-new-card,
.listing-page .sidebar-review-item,
.listing-page .sidebar-review-toggle,
.listing-page [data-listing-sidebar] .small-btn{
  background:#fffdf8;
  border-color:#d8c59d;
  color:#172337;
  box-shadow:0 12px 32px rgba(23,35,55,.10);
}
.listing-page [data-listing-sidebar] .related-cities-title,
.listing-page [data-listing-sidebar] .sidebar-whats-new-title,
.listing-page [data-listing-sidebar] .sidebar-review-heading,
.listing-page [data-listing-sidebar] .sidebar-review-heading strong{
  color:#172337;
  text-shadow:none;
}
.listing-page [data-listing-sidebar] .small-btn{
  color:#765719;
  font-weight:700;
  box-shadow:none;
}
.listing-page [data-listing-sidebar] .small-btn:hover,
.listing-page [data-listing-sidebar] .small-btn:focus-visible,
.listing-page .sidebar-review-item:hover,
.listing-page .sidebar-review-toggle:hover{
  background:#f8f0df;
  border-color:#a77b27;
  color:#5d420f;
  box-shadow:0 8px 20px rgba(23,35,55,.10);
}
.listing-page [data-listing-sidebar] .related-grid .small-btn small{
  background:#f2e5c8;
  color:#654811;
}
.listing-page .ad-card .ad-title-primary,
.listing-page .ad-card .ad-title-link,
.listing-page .ad-card-cta{
  color:#765719;
  text-shadow:none;
}
.listing-page .ad-card .ad-desc{
  color:#475569;
}

/* City pages do not expose a body class; these selectors are local to ads.css. */
.layout-row .col-side .card,
[data-listing-sidebar] .card,
.sidebar-whats-new-card,
.sidebar-review-item,
.sidebar-review-toggle,
[data-listing-sidebar] .small-btn{
  background:#fffdf8;
  background-image:none;
  border-color:#d8c59d;
  color:#172337;
  box-shadow:0 12px 32px rgba(23,35,55,.10);
}
[data-listing-sidebar] .related-cities-title,
[data-listing-sidebar] .sidebar-whats-new-title,
[data-listing-sidebar] .sidebar-review-heading,
[data-listing-sidebar] .sidebar-review-heading strong{
  color:#172337;
  text-shadow:none;
}
[data-listing-sidebar] .small-btn{
  color:#765719;
  font-weight:700;
  box-shadow:none;
}
[data-listing-sidebar] .small-btn:hover,
[data-listing-sidebar] .small-btn:focus-visible,
.sidebar-review-item:hover,
.sidebar-review-toggle:hover{
  background:#f8f0df;
  background-image:none;
  border-color:#a77b27;
  color:#5d420f;
  box-shadow:0 8px 20px rgba(23,35,55,.10);
}
[data-listing-sidebar] .related-grid .small-btn small{
  background:#f2e5c8;
  color:#654811;
}
.ad-card .ad-title-primary,
.ad-card .ad-title-link{
  color:#765719;
  text-shadow:none;
}
.ad-card .ad-desc{
  color:#475569;
}
.seo-content-block :is(h2,h3,h4,h5),
.seo-content-block table :is(th,td,strong),
.faq-content-block > h2{
  color:#172337;
  text-shadow:none;
}
.seo-content-block a,
.breadcrumb .bc-link,
.bc-link{
  color:#765719;
}
.listing-basic-location-button{
  color:#5d420f;
}
.listing-pagination__link--jump{
  background:#fffdf8;
  border-color:#d8c59d;
  color:#765719;
}
.seo-disclaimer-wrap,
.seo-content.seo-disclaimer-wrap{
  background:#fffaf0!important;
  border-color:#d8c59d!important;
  border-left-color:#a77b27!important;
  color:#475569!important;
}
.seo-disclaimer-wrap .adult-disclaimer,
.seo-disclaimer-wrap .adult-disclaimer :is(h2,p,li){
  color:#172337!important;
}
.seo-disclaimer-wrap a,
.seo-disclaimer-wrap a:visited{
  color:#765719;
}
@media(max-width:700px){
  .rs-footer-kicker,
  .rs-footer-panel-title,
  .rs-safety-badge__eyebrow,
  .rs-analytics-preferences{
    color:#765719!important;
  }
}

/* Final accessibility layer: override legacy !important dark-theme declarations. */
html body .bc-link,
html body .seo-content-block a{
  color:#765719!important;
}
html body .seo-content-block :is(h2,h3,h4,h5),
html body .faq-content-block > h2{
  color:#172337!important;
  text-shadow:none!important;
}
html body .seo-content-block table :is(th,td,strong){
  color:#172337!important;
}
html body .seo-content-block table th{
  background:#f2e5c8!important;
  border-color:#d8c59d!important;
}
html body .seo-content-block table td{
  background:#fffdf8!important;
  border-color:#d8c59d!important;
}
html body .seo-disclaimer-wrap .adult-disclaimer strong{
  color:#172337!important;
}
@media(max-width:700px){
  html body .rs-footer-kicker,
  html body .rs-footer-panel-title,
  html body .rs-safety-badge__eyebrow,
  html body .rs-analytics-preferences{
    color:#765719!important;
  }
}
@media(max-width:700px){
  html body .rs-footer .rs-footer-kicker,
  html body .rs-footer .rs-footer-panel-title,
  html body .rs-footer .rs-safety-badge__eyebrow,
  html body .rs-footer .rs-analytics-preferences{
    color:#765719!important;
  }
}

/* Complete city-page light theme: filters, pagination and frequent searches. */
html body .listing-filter-shell,
html body .listing-filter-main{
  color:#172337;
}
html body .listing-filter-panel,
html body .listing-filter-drawer{
  background:#fffdf8!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  color:#172337!important;
  box-shadow:0 14px 38px rgba(23,35,55,.12)!important;
}
html body .listing-filter-drawer__head,
html body .listing-filter-drawer__actions{
  background:#fffaf0!important;
  border-color:#d8c59d!important;
  color:#172337!important;
}
html body .listing-filter-drawer__title,
html body .listing-advanced-radius__head strong,
html body .listing-nationality-filter legend{
  color:#172337!important;
}
html body .listing-filter-field input,
html body .listing-filter-field select,
html body .listing-range-number-fields input,
html body .listing-range-number-input{
  background:#fff!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  color:#172337!important;
}
html body .listing-filter-field input:focus,
html body .listing-filter-field select:focus,
html body .listing-range-number-fields input:focus{
  border-color:#a77b27!important;
  outline:2px solid rgba(167,123,39,.25)!important;
  outline-offset:1px;
}
html body .listing-basic-location-button{
  background:#fff4d8!important;
  border-color:#d8c59d!important;
  color:#765719!important;
}
html body .listing-basic-location-button:hover,
html body .listing-basic-location-button:focus-visible{
  background:#f2e5c8!important;
  border-color:#a77b27!important;
  color:#5d420f!important;
}
html body .listing-advanced-core,
html body .listing-nationality-filter{
  background:#fffaf0!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  color:#172337!important;
}
html body .listing-advanced-radius{
  border-color:#d8c59d!important;
}
html body .listing-advanced-core__status,
html body .listing-advanced-radius__head span{
  color:#475569!important;
}
html body .listing-choice-button,
html body .listing-radius-button{
  background:#fff!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  color:#5d420f!important;
}
html body .listing-choice-button:hover,
html body .listing-radius-button:hover{
  background:#f2e5c8!important;
  border-color:#a77b27!important;
  color:#5d420f!important;
}
html body .listing-choice-button.is-selected,
html body .listing-radius-button.is-selected,
html body .listing-rate-type-tabs input:checked + span{
  background:linear-gradient(135deg,#fff0b8 0%,#d6a13f 48%,#b97820 100%)!important;
  color:#160d08!important;
  border-color:#b97820!important;
}
html body .listing-rate-type-tabs span{
  color:#475569!important;
}
html body .listing-location-clear,
html body .listing-filter-range-card__summary button{
  color:#765719!important;
}
html body .listing-filter-apply{
  background:linear-gradient(135deg,#fff0b8 0%,#d6a13f 48%,#b97820 100%)!important;
  color:#160d08!important;
  box-shadow:0 8px 18px rgba(159,92,24,.2)!important;
}
html body .listing-filter-apply:hover,
html body .listing-filter-apply:focus-visible{
  background:linear-gradient(135deg,#fff7d6 0%,#e2b653 48%,#a96518 100%)!important;
  color:#100805!important;
}
html body .listing-filter-range-card,
html body .listing-rate-type-tabs{
  background:#f8f0df!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  color:#172337!important;
}
html body .listing-filter-field span,
html body .listing-filter-drawer__eyebrow,
html body .listing-filter-range-card__head span,
html body .listing-filter-range-limits{
  color:#475569!important;
}
html body .listing-filter-range-card__head strong{
  color:#172337!important;
}
html body .listing-more-filters,
html body .listing-filter-reset,
html body .listing-filter-drawer__close{
  background:#fffaf0!important;
  border-color:#d8c59d!important;
  color:#765719!important;
}
html body .listing-more-filters:hover,
html body .listing-more-filters:focus-visible,
html body .listing-filter-reset:hover,
html body .listing-filter-drawer__close:hover{
  background:#f2e5c8!important;
  border-color:#a77b27!important;
  color:#5d420f!important;
}
html body .listing-pagination__link{
  background:#fffdf8!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  color:#765719!important;
  box-shadow:0 6px 16px rgba(23,35,55,.08)!important;
}
html body a.listing-pagination__link:hover,
html body a.listing-pagination__link:focus-visible{
  background:#f2e5c8!important;
  border-color:#a77b27!important;
  color:#5d420f!important;
}
html body .listing-pagination__link.is-current{
  background:linear-gradient(135deg,#f8dfa1 0%,#d6a13f 55%,#b8892d 100%)!important;
  border-color:#a77b27!important;
  color:#172337!important;
}
html body .listing-pagination__link.is-disabled{
  background:#f3f4f6!important;
  border-color:#d1d5db!important;
  color:#526173!important;
}
html body .listing-frequent-searches__panel{
  background:#fffdf8!important;
  background-image:none!important;
  border-color:#d8c59d!important;
  border-left-color:#a77b27!important;
  color:#172337!important;
  box-shadow:0 12px 32px rgba(23,35,55,.10)!important;
}
html body .listing-frequent-searches__toggle{
  color:#172337!important;
}
html body .listing-frequent-searches__toggle svg,
html body .listing-tag-browser__count{
  color:#765719!important;
}
html body .listing-frequent-searches__description{
  color:#475569!important;
}
html body .listing-frequent-searches__terms li{
  background:#fffaf0!important;
  border-color:#d8c59d!important;
  color:#172337!important;
}
html body .listing-frequent-searches__terms p,
html body .listing-tag-browser .listing-frequent-searches__terms a{
  color:#5d420f!important;
}
html body .listing-tag-browser .listing-frequent-searches__terms a:hover,
html body .listing-tag-browser .listing-frequent-searches__terms a:focus-visible{
  background:#f2e5c8!important;
  color:#4d350b!important;
}
html body .seo-content-block{
  color:#334155;
}

/* Ad cards: deterministic AA contrast on the light city theme. */
html body .ad-card{
  background:#fff!important;
  border-color:#d8c59d!important;
  color:#172337!important;
}
html body .ad-card::after{
  background:none!important;
  background-image:none!important;
}
html body .ad-card .ad-title-primary,
html body .ad-card .ad-title-link{
  color:#765719!important;
  text-shadow:none!important;
}
html body .ad-card .ad-desc{
  color:#475569!important;
}
html body .ad-card .ad-meta-item{
  background:#fffaf0!important;
  border-color:#d8c59d!important;
  color:#475569!important;
}
html body .ad-card .ad-meta-text{
  color:#475569!important;
}
html body .ad-card .ad-meta-icon{
  background:#f2e5c8!important;
  color:#765719!important;
}
html body .ad-card .ad-card-cta{
  background:#d6a13f!important;
  background-image:none!important;
  border-color:#a77b27!important;
  color:#172337!important;
  text-shadow:none!important;
}
html body .ad-card .ad-card-cta:hover,
html body .ad-card .ad-card-cta:focus-visible{
  background:#f2cf7a!important;
  background-image:none!important;
  border-color:#8a631c!important;
  color:#172337!important;
}
html body .ad-card .ad-owner-status{
  background:#172337!important;
  border-color:#fffaf0!important;
  color:#fff!important;
}

/* Responsive city video, managed from City SEO and Media Library. */
.listing-city-video{
  display:grid;
  gap:18px;
  margin:26px 0;
  padding:22px;
  border:1px solid #d8c59d;
  border-radius:18px;
  background:#fffdf8;
  color:#172337;
  box-shadow:0 14px 38px rgba(23,35,55,.10);
}
.listing-city-video__copy{
  text-align:center;
}
.listing-city-video__eyebrow{
  display:block;
  margin-bottom:6px;
  color:#765719;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.listing-city-video h2{
  margin:0;
  color:#172337!important;
  font-size:clamp(1.35rem,2.5vw,2rem);
  line-height:1.2;
}
.listing-city-video p{
  max-width:760px;
  margin:9px auto 0;
  color:#475569;
  line-height:1.65;
}
.listing-city-video__frame{
  aspect-ratio:16/9;
  overflow:hidden;
  border:2px solid #a77b27;
  border-radius:14px;
  background:#fff;
  box-shadow:0 12px 28px rgba(23,35,55,.18);
}
.listing-city-video video{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#fff;
}
@media(max-width:600px){
  .listing-city-video{
    margin:20px 0;
    padding:14px;
    border-radius:14px;
  }
  .listing-city-video__frame{
    border-radius:10px;
  }
}
