/*
 * 5.0.0X — Universal Appearance System
 * Semantic Light / Dark design architecture.
 *
 * Components should consume --rpe-* semantic tokens below rather than
 * hard-coding page/surface/text colors. Brand/accent tokens are invariant.
 */

:root{
  /* Invariant brand language */
  --rpe-brand-red:#ef233c;
  --rpe-brand-red-strong:#ff3049;
  --rpe-brand-gold:#e3a53a;
  --rpe-brand-gold-soft:#f0bc5a;
  --rpe-status-open:#23d47b;
  --rpe-status-closed:#ff5368;

  /* Geometry tokens are appearance-independent */
  --rpe-radius-xs:7px;
  --rpe-radius-sm:10px;
  --rpe-radius-md:14px;
  --rpe-radius-lg:18px;
  --rpe-glass-blur:18px;
}

/* DARK — current approved Rumanji visual language */
:root,
:root[data-rpe-appearance="dark"]{
  --rpe-page-bg:#070a0e;
  --rpe-page-bg-raised:#0b0f14;
  --rpe-surface:#11151b;
  --rpe-surface-raised:#151a21;
  --rpe-surface-soft:rgba(255,255,255,.028);
  --rpe-surface-glass:rgba(18,22,28,.72);
  --rpe-surface-glass-strong:rgba(18,22,28,.88);
  --rpe-title:#f7f8fa;
  --rpe-text:#d8dde4;
  --rpe-text-muted:#98a2ad;
  --rpe-text-faint:#6f7985;
  --rpe-border:rgba(255,255,255,.10);
  --rpe-border-soft:rgba(255,255,255,.065);
  --rpe-divider:rgba(255,255,255,.075);
  --rpe-control-bg:rgba(255,255,255,.035);
  --rpe-control-hover:rgba(255,255,255,.075);
  --rpe-input-bg:rgba(255,255,255,.04);
  --rpe-shadow:0 16px 44px rgba(0,0,0,.25);
  --rpe-shadow-soft:0 8px 28px rgba(0,0,0,.16);
  --rpe-map-frame:#11151b;
  --rpe-image-placeholder:#141a21;
  --rpe-scrim:rgba(3,5,8,.72);
  color-scheme:dark;
}

/* LIGHT — same hierarchy and brand language, light material system */
:root[data-rpe-appearance="light"]{
  --rpe-page-bg:#f5f6f8;
  --rpe-page-bg-raised:#ffffff;
  --rpe-surface:#ffffff;
  --rpe-surface-raised:#fbfcfd;
  --rpe-surface-soft:rgba(15,23,42,.025);
  --rpe-surface-glass:rgba(255,255,255,.72);
  --rpe-surface-glass-strong:rgba(255,255,255,.90);
  --rpe-title:#101722;
  --rpe-text:#344052;
  --rpe-text-muted:#687487;
  --rpe-text-faint:#8b95a5;
  --rpe-border:rgba(15,23,42,.11);
  --rpe-border-soft:rgba(15,23,42,.07);
  --rpe-divider:rgba(15,23,42,.09);
  --rpe-control-bg:rgba(15,23,42,.035);
  --rpe-control-hover:rgba(15,23,42,.075);
  --rpe-input-bg:#ffffff;
  --rpe-shadow:0 16px 44px rgba(15,23,42,.09);
  --rpe-shadow-soft:0 8px 28px rgba(15,23,42,.06);
  --rpe-map-frame:#ffffff;
  --rpe-image-placeholder:#edf0f4;
  --rpe-scrim:rgba(255,255,255,.70);
  color-scheme:light;
}

/* ---------- Global canvas ---------- */
html[data-rpe-appearance],
html[data-rpe-appearance] body{
  background:var(--rpe-page-bg)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance] body.rpe-platform-shell-active,
html[data-rpe-appearance] .rpe-ds-render{
  background:var(--rpe-page-bg)!important;
  color:var(--rpe-text)!important;
  transition:background-color .18s ease,color .18s ease;
}

/* ---------- Global typography contract ---------- */
html[data-rpe-appearance] .rpe-ds-render h1,
html[data-rpe-appearance] .rpe-ds-render h2,
html[data-rpe-appearance] .rpe-ds-render h3,
html[data-rpe-appearance] .rpe-ds-render h4,
html[data-rpe-appearance] .rpe-directory-summary-title,
html[data-rpe-appearance] .rpe-directory-overview h2,
html[data-rpe-appearance] .rpe-pav-head h2,
html[data-rpe-appearance] .rpe-community-ribbon h2,
html[data-rpe-appearance] .rpe-review-head h2{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-ds-render p,
html[data-rpe-appearance] .rpe-ds-render address,
html[data-rpe-appearance] .rpe-ds-render .rpe-directory-summary-value,
html[data-rpe-appearance] .rpe-ds-render .rpe-directory-overview-content{
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance] .rpe-ds-render small,
html[data-rpe-appearance] .rpe-ds-render .rpe-muted,
html[data-rpe-appearance] .rpe-directory-summary-label,
html[data-rpe-appearance] .rpe-directory-summary-reviews,
html[data-rpe-appearance] .rpe-review-empty-context-head p{
  color:var(--rpe-text-muted)!important;
}

/* Accent/category/eyebrow colors intentionally never invert. */
html[data-rpe-appearance] [class*="eyebrow"],
html[data-rpe-appearance] [class*="category-label"],
html[data-rpe-appearance] .rpe-review-eyebrow,
html[data-rpe-appearance] .rpe-community-eyebrow,
html[data-rpe-appearance] .rpe-pav-eyebrow{
  color:var(--rpe-brand-red)!important;
}

/* ---------- Universal header ---------- */
html[data-rpe-appearance] .rpe-global-header{
  background:color-mix(in srgb,var(--rpe-page-bg-raised) 94%,transparent)!important;
  border-color:var(--rpe-border-soft)!important;
  color:var(--rpe-title)!important;
  -webkit-backdrop-filter:blur(var(--rpe-glass-blur)) saturate(135%);
  backdrop-filter:blur(var(--rpe-glass-blur)) saturate(135%);
}
html[data-rpe-appearance="light"] .rpe-global-header{
  box-shadow:0 1px 0 var(--rpe-border-soft),0 7px 26px rgba(15,23,42,.035)!important;
}
html[data-rpe-appearance] .rpe-global-header a,
html[data-rpe-appearance] .rpe-global-header button{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-gh-city,
html[data-rpe-appearance] .rpe-gh-trigger,
html[data-rpe-appearance] .rpe-gh-icon,
html[data-rpe-appearance] .rpe-gh-avatar,
html[data-rpe-appearance] .rpe-gh-mobile-menu,
html[data-rpe-appearance] .rpe-gh-appearance{
  border-color:var(--rpe-border)!important;
}
html[data-rpe-appearance] .rpe-gh-city{
  background:var(--rpe-control-bg)!important;
}
html[data-rpe-appearance] .rpe-gh-search input,
html[data-rpe-appearance] .rpe-global-header input[type="search"]{
  background:var(--rpe-surface)!important;
  color:var(--rpe-title)!important;
  border-color:var(--rpe-border)!important;
}
html[data-rpe-appearance] .rpe-global-header input::placeholder{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance] .rpe-gh-popover,
html[data-rpe-appearance] .rpe-gh-mobile-panel{
  background:var(--rpe-surface-glass-strong)!important;
  color:var(--rpe-text)!important;
  border-color:var(--rpe-border)!important;
  box-shadow:var(--rpe-shadow)!important;
}

/* Appearance control mounted by appearance-system.js */
.rpe-gh-appearance{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0;
  width:36px;
  height:36px;
  padding:0!important;
  margin:0 4px 0 0;
  border:1px solid var(--rpe-border)!important;
  border-radius:10px;
  background:var(--rpe-control-bg)!important;
  color:var(--rpe-title)!important;
  cursor:pointer;
  transition:background .16s ease,transform .16s ease,border-color .16s ease;
}
.rpe-gh-appearance:hover{
  background:var(--rpe-control-hover)!important;
  transform:translateY(-1px);
}
.rpe-gh-appearance-icon{
  font-size:17px;
  line-height:1;
}
.rpe-gh-appearance-label{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}

/* ---------- Surface/card semantic bridge ---------- */
html[data-rpe-appearance] .rpe-pav-card,
html[data-rpe-appearance] .rpe-community-card,
html[data-rpe-appearance] .rpe-review-card,
html[data-rpe-appearance] .rpe-review-empty--composed,
html[data-rpe-appearance] [class*="collection-card"],
html[data-rpe-appearance] [class*="listing-card"],
html[data-rpe-appearance] [class*="business-card"]{
  background:var(--rpe-surface)!important;
  border-color:var(--rpe-border)!important;
  box-shadow:var(--rpe-shadow-soft);
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance] .rpe-pav-card h3,
html[data-rpe-appearance] .rpe-pav-card strong,
html[data-rpe-appearance] .rpe-community-card h3,
html[data-rpe-appearance] .rpe-community-card strong,
html[data-rpe-appearance] .rpe-review-card strong{
  color:var(--rpe-title)!important;
}

/* Borderless detail canvas remains borderless in both appearances. */
html[data-rpe-appearance] .rpe-ds-render[data-template="directory-detail-page"] > section:not([data-component="global-header"]),
html[data-rpe-appearance] .rpe-directory-summary,
html[data-rpe-appearance] .rpe-directory-overview,
html[data-rpe-appearance] .rpe-directory-location,
html[data-rpe-appearance] .rpe-community-ribbon,
html[data-rpe-appearance] .rpe-review-intelligence{
  background:transparent!important;
  box-shadow:none!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"]{
  background:var(--rpe-page-bg)!important;
}

/* Intentional internal dividers survive mode changes. */
html[data-rpe-appearance] .rpe-detail-nav-track,
html[data-rpe-appearance] .rpe-directory-summary-contact-grid,
html[data-rpe-appearance] .rpe-directory-summary-online,
html[data-rpe-appearance] .rpe-directory-summary-details,
html[data-rpe-appearance] .rpe-directory-summary-info,
html[data-rpe-appearance] .rpe-review-empty-primary,
html[data-rpe-appearance] section[data-component="directory-community-ribbon"] .rpe-community-card{
  border-color:var(--rpe-divider)!important;
}

/* Controls/inputs */
html[data-rpe-appearance] .rpe-ds-render button:not(.rpe-review-submit):not(.rpe-directory-summary-status),
html[data-rpe-appearance] .rpe-ds-render select,
html[data-rpe-appearance] .rpe-ds-render input:not([type="radio"]):not([type="checkbox"]),
html[data-rpe-appearance] .rpe-ds-render textarea{
  border-color:var(--rpe-border)!important;
}
html[data-rpe-appearance] .rpe-ds-render select,
html[data-rpe-appearance] .rpe-ds-render input:not([type="radio"]):not([type="checkbox"]),
html[data-rpe-appearance] .rpe-ds-render textarea{
  background:var(--rpe-input-bg)!important;
  color:var(--rpe-title)!important;
}

/* Review composer inherits the same appearance rather than owning a dark-only skin. */
html[data-rpe-appearance] .rpe-review-composer-panel{
  background:var(--rpe-surface-glass-strong)!important;
  color:var(--rpe-title)!important;
  border-color:var(--rpe-border)!important;
  box-shadow:var(--rpe-shadow)!important;
}
html[data-rpe-appearance] .rpe-review-composer-panel h3,
html[data-rpe-appearance] .rpe-review-rating-field legend,
html[data-rpe-appearance] .rpe-review-text-label,
html[data-rpe-appearance] .rpe-review-identity label{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-review-composer-intro,
html[data-rpe-appearance] .rpe-review-rating-caption{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance="light"] .rpe-review-composer-backdrop{
  background:rgba(230,234,240,.72)!important;
}

/* Common category/archive white-card bridge for Light and dark-safe cards. */
html[data-rpe-appearance="dark"] .rpe-ds-render [class*="card"]{
  --rpe-card-title:var(--rpe-title);
}
html[data-rpe-appearance="light"] .rpe-ds-render [class*="card"]{
  --rpe-card-title:var(--rpe-title);
}
html[data-rpe-appearance] .rpe-ds-render [class*="card"] h2,
html[data-rpe-appearance] .rpe-ds-render [class*="card"] h3,
html[data-rpe-appearance] .rpe-ds-render [class*="card"] h4{
  color:var(--rpe-title)!important;
}

/* Preserve red/green/gold semantic states in both appearances. */
html[data-rpe-appearance] .is-open,
html[data-rpe-appearance] .rpe-directory-summary-status.is-open{
  color:var(--rpe-status-open)!important;
}
html[data-rpe-appearance] .is-closed,
html[data-rpe-appearance] .rpe-directory-summary-status.is-closed{
  color:var(--rpe-status-closed)!important;
}
html[data-rpe-appearance] .rpe-rating-pentagon.is-filled,
html[data-rpe-appearance] .rpe-directory-summary-pentagon.is-on,
html[data-rpe-appearance] .rpe-review-picker-pentagon{
  --rpe-rating-gold:var(--rpe-brand-gold);
  --rpe-rating-gold-soft:var(--rpe-brand-gold-soft);
}

/* Native browser controls */
html[data-rpe-appearance] ::selection{
  background:color-mix(in srgb,var(--rpe-brand-red) 26%,transparent);
}

/* Respect users who do not want animated appearance transitions. */
@media (prefers-reduced-motion:reduce){
  html[data-rpe-appearance] *,
  html[data-rpe-appearance] *::before,
  html[data-rpe-appearance] *::after{
    transition-duration:.001ms!important;
  }
}


/* --------------------------------------------------------------------------
 * 5.0.0X.1 — Global Semantic Color Tokens & Dark Baseline
 * Compatibility aliases let older runtime components consume the same
 * appearance contract without altering their geometry or data behavior.
 * -------------------------------------------------------------------------- */
:root[data-rpe-appearance]{
  --rpe-card-bg:var(--rpe-surface);
  --rpe-card-bg-raised:var(--rpe-surface-raised);
  --rpe-card-title:var(--rpe-title);
  --rpe-card-text:var(--rpe-text);
  --rpe-card-meta:var(--rpe-text-muted);
  --rpe-card-border:var(--rpe-border);
  --rpe-section-bg:var(--rpe-page-bg);
  --rpe-section-title:var(--rpe-title);
  --rpe-section-text:var(--rpe-text);
  --rpe-section-muted:var(--rpe-text-muted);
  --rpe-link:var(--rpe-title);
  --rpe-link-accent:var(--rpe-brand-red);
  --rpe-on-accent:#fff;

  /* Studio/runtime legacy aliases. */
  --rpe-ds-background:var(--rpe-page-bg);
  --rpe-ds-surface:var(--rpe-surface);
  --rpe-ds-card:var(--rpe-surface);
  --rpe-ds-text:var(--rpe-text);
  --rpe-ds-heading:var(--rpe-title);
  --rpe-ds-muted:var(--rpe-text-muted);
  --rpe-ds-border:var(--rpe-border);
  --rpe-ds-primary:var(--rpe-brand-red);
  --rpe-ds-primary-hover:var(--rpe-brand-red-strong);
}

/* Main runtime families now share one baseline instead of independent blacks. */
html[data-rpe-appearance] .rpe-experience,
html[data-rpe-appearance] .rpe-ds-render,
html[data-rpe-appearance] .rpe-ds-runtime,
html[data-rpe-appearance] .rpe-global-shell{
  color:var(--rpe-text)!important;
}

/* Standard-width content sections follow the semantic page canvas. */
html[data-rpe-appearance] .rpe-ds-render > section:not([data-component="global-header"]){
  color:var(--rpe-text);
}

/* Collection / discovery cards. Geometry is untouched. */
html[data-rpe-appearance] .rpe-x-business-card,
html[data-rpe-appearance] .rpe-directory-grid-card,
html[data-rpe-appearance] .rpe-featured-business-card,
html[data-rpe-appearance] .rpe-featured-card,
html[data-rpe-appearance] .rpe-popular-city-card{
  background:var(--rpe-card-bg)!important;
  border-color:var(--rpe-card-border)!important;
  color:var(--rpe-card-text)!important;
}
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) h3 a,
html[data-rpe-appearance] .rpe-directory-grid-card h3,
html[data-rpe-appearance] .rpe-featured-business-card h3,
html[data-rpe-appearance] .rpe-featured-card h3{
  color:var(--rpe-card-title)!important;
}
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) .rpe-x-business-meta,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) .rpe-x-business-excerpt{
  color:var(--rpe-card-meta)!important;
}

/* Directory filter/sort surfaces. */
html[data-rpe-appearance] .rpe-directory-filter-bar,
html[data-rpe-appearance] .rpe-directory-filter-shell,
html[data-rpe-appearance] .rpe-directory-sidebar,
html[data-rpe-appearance] .rpe-directory-results-toolbar{
  background:var(--rpe-surface)!important;
  border-color:var(--rpe-border)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance] .rpe-directory-filter-bar label,
html[data-rpe-appearance] .rpe-directory-filter-shell label,
html[data-rpe-appearance] .rpe-directory-sidebar label{
  color:var(--rpe-text-muted)!important;
}

/* Common chip/tab states retain their brand accents while neutral states adapt. */
html[data-rpe-appearance] .rpe-ds-render [role="tab"]:not([aria-selected="true"]),
html[data-rpe-appearance] .rpe-ds-render .rpe-chip:not(.is-active),
html[data-rpe-appearance] .rpe-ds-render .rpe-filter-chip:not(.is-active){
  background:var(--rpe-control-bg)!important;
  border-color:var(--rpe-border)!important;
  color:var(--rpe-text)!important;
}

/* Dark baseline lock: X.1 must not visually drift from the approved dark UI. */
html[data-rpe-appearance="dark"]{
  --rpe-card-bg:#11151b;
  --rpe-card-bg-raised:#151a21;
  --rpe-card-title:#f7f8fa;
  --rpe-card-text:#d8dde4;
  --rpe-card-meta:#98a2ad;
}

/* Form primitives across filters, search and native editors. */
html[data-rpe-appearance] .rpe-ds-render input[type="text"],
html[data-rpe-appearance] .rpe-ds-render input[type="search"],
html[data-rpe-appearance] .rpe-ds-render input[type="email"],
html[data-rpe-appearance] .rpe-ds-render input[type="tel"],
html[data-rpe-appearance] .rpe-ds-render select,
html[data-rpe-appearance] .rpe-ds-render textarea{
  background:var(--rpe-input-bg)!important;
  border-color:var(--rpe-border)!important;
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-ds-render input::placeholder,
html[data-rpe-appearance] .rpe-ds-render textarea::placeholder{
  color:var(--rpe-text-faint)!important;
}

/* Generic internal separators use one density across both appearances. */
html[data-rpe-appearance] .rpe-ds-render hr{
  border-color:var(--rpe-divider)!important;
}

/* Never recolor media/brand artwork through appearance mode. */
html[data-rpe-appearance] img,
html[data-rpe-appearance] video,
html[data-rpe-appearance] .leaflet-tile{
  filter:none!important;
}


/* ==========================================================================
 * 5.0.0X.2 — Light Mode Material System & Component Parity
 * ========================================================================== */
:root[data-rpe-appearance="light"]{
  --rpe-page-bg:#f4f6f8;
  --rpe-page-bg-raised:#ffffff;
  --rpe-surface:#ffffff;
  --rpe-surface-raised:#f9fafb;
  --rpe-surface-soft:rgba(15,23,42,.025);
  --rpe-surface-glass:rgba(255,255,255,.76);
  --rpe-surface-glass-strong:rgba(255,255,255,.93);
  --rpe-title:#0d1520;
  --rpe-text:#344052;
  --rpe-text-muted:#6c7788;
  --rpe-text-faint:#98a1ad;
  --rpe-border:rgba(15,23,42,.11);
  --rpe-border-soft:rgba(15,23,42,.065);
  --rpe-divider:rgba(15,23,42,.085);
  --rpe-control-bg:rgba(15,23,42,.035);
  --rpe-control-hover:rgba(15,23,42,.075);
  --rpe-input-bg:#ffffff;
  --rpe-shadow:0 18px 46px rgba(15,23,42,.10);
  --rpe-shadow-soft:0 8px 26px rgba(15,23,42,.07);
  --rpe-card-bg:#ffffff;
  --rpe-card-bg-raised:#fbfcfd;
  --rpe-card-title:#0d1520;
  --rpe-card-text:#344052;
  --rpe-card-meta:#6c7788;
  --rpe-card-border:rgba(15,23,42,.10);
}
html[data-rpe-appearance="light"],
html[data-rpe-appearance="light"] body,
html[data-rpe-appearance="light"] .rpe-ds-render,
html[data-rpe-appearance="light"] .rpe-experience{
  background:#f4f6f8!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance="light"] .rpe-global-header{
  background:rgba(255,255,255,.91)!important;
  border-bottom:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 6px 24px rgba(15,23,42,.045)!important;
  -webkit-backdrop-filter:blur(20px) saturate(145%)!important;
  backdrop-filter:blur(20px) saturate(145%)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-brand,
html[data-rpe-appearance="light"] .rpe-gh-city,
html[data-rpe-appearance="light"] .rpe-gh-categories-trigger,
html[data-rpe-appearance="light"] .rpe-gh-language,
html[data-rpe-appearance="light"] .rpe-gh-icon,
html[data-rpe-appearance="light"] .rpe-gh-signin{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-city,
html[data-rpe-appearance="light"] .rpe-gh-icon,
html[data-rpe-appearance="light"] .rpe-gh-language,
html[data-rpe-appearance="light"] .rpe-gh-appearance{
  background:rgba(15,23,42,.025)!important;
  border-color:rgba(15,23,42,.08)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-city:hover,
html[data-rpe-appearance="light"] .rpe-gh-icon:hover,
html[data-rpe-appearance="light"] .rpe-gh-language:hover,
html[data-rpe-appearance="light"] .rpe-gh-appearance:hover{
  background:rgba(15,23,42,.065)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-search{
  background:#fff!important;
  border-color:rgba(15,23,42,.13)!important;
  box-shadow:0 2px 9px rgba(15,23,42,.035)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-search input{color:#1b2430!important}
html[data-rpe-appearance="light"] .rpe-gh-search svg{color:#707b89!important}
html[data-rpe-appearance="light"] .rpe-gh-panel,
html[data-rpe-appearance="light"] .rpe-gh-popover,
html[data-rpe-appearance="light"] .rpe-gh-mobile-panel{
  background:rgba(255,255,255,.97)!important;
  border-color:rgba(15,23,42,.09)!important;
  color:var(--rpe-text)!important;
  box-shadow:0 22px 55px rgba(15,23,42,.12)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-domain-row button,
html[data-rpe-appearance="light"] .rpe-gh-category-node>a,
html[data-rpe-appearance="light"] .rpe-gh-popover>a,
html[data-rpe-appearance="light"] .rpe-gh-city-option,
html[data-rpe-appearance="light"] .rpe-gh-city-search span,
html[data-rpe-appearance="light"] .rpe-gh-city-current strong{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-category-level-2 .rpe-gh-category-node>a,
html[data-rpe-appearance="light"] .rpe-gh-category-level-3 .rpe-gh-category-node>a{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-city-search input,
html[data-rpe-appearance="light"] .rpe-gh-language-panel select,
html[data-rpe-appearance="light"] .rpe-gh-language-panel .gt_selector{
  background:#fff!important;
  color:var(--rpe-title)!important;
  border-color:var(--rpe-border)!important;
}
html[data-rpe-appearance="light"] .rpe-card-style-overlay,
html[data-rpe-appearance="light"] .rpe-card-style-overlay h1,
html[data-rpe-appearance="light"] .rpe-card-style-overlay h2,
html[data-rpe-appearance="light"] .rpe-card-style-overlay h3,
html[data-rpe-appearance="light"] .rpe-card-style-overlay p{color:#fff!important}
html[data-rpe-appearance="light"] .rpe-ds-render h1,
html[data-rpe-appearance="light"] .rpe-ds-render h2,
html[data-rpe-appearance="light"] .rpe-ds-render h3,
html[data-rpe-appearance="light"] .rpe-ds-render h4{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] .rpe-x-business-card:not(.rpe-card-style-overlay),
html[data-rpe-appearance="light"] .rpe-pav-card,
html[data-rpe-appearance="light"] .rpe-featured-business-card,
html[data-rpe-appearance="light"] .rpe-featured-card,
html[data-rpe-appearance="light"] .rpe-directory-grid-card,
html[data-rpe-appearance="light"] [class*="collection-card"]:not(.rpe-card-style-overlay){
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%)!important;
  border:1px solid rgba(15,23,42,.09)!important;
  box-shadow:0 8px 26px rgba(15,23,42,.065)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance="light"] .rpe-pav-card:hover,
html[data-rpe-appearance="light"] .rpe-x-business-card:not(.rpe-card-style-overlay):hover{
  box-shadow:0 12px 34px rgba(15,23,42,.10)!important;
}
html[data-rpe-appearance="light"] .rpe-x-business-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance="light"] .rpe-x-business-card:not(.rpe-card-style-overlay) h3 a,
html[data-rpe-appearance="light"] .rpe-pav-card h3,
html[data-rpe-appearance="light"] .rpe-pav-card strong,
html[data-rpe-appearance="light"] .rpe-directory-grid-card h3{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] .rpe-x-business-meta,
html[data-rpe-appearance="light"] .rpe-x-business-excerpt,
html[data-rpe-appearance="light"] .rpe-pav-address{color:var(--rpe-text-muted)!important}
html[data-rpe-appearance="light"] .rpe-featured-badge,
html[data-rpe-appearance="light"] [class*="featured-badge"]{
  background:rgba(13,21,32,.80)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-filter-bar,
html[data-rpe-appearance="light"] .rpe-directory-filter-shell,
html[data-rpe-appearance="light"] .rpe-directory-results-toolbar{
  background:rgba(255,255,255,.84)!important;
  border-color:rgba(15,23,42,.09)!important;
  box-shadow:0 8px 26px rgba(15,23,42,.055)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  backdrop-filter:blur(16px)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-sidebar{
  background:#fff!important;
  color:var(--rpe-text)!important;
  border-color:rgba(15,23,42,.09)!important;
  box-shadow:0 7px 22px rgba(15,23,42,.05)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-filter-bar select,
html[data-rpe-appearance="light"] .rpe-directory-filter-shell select,
html[data-rpe-appearance="light"] .rpe-directory-results-toolbar select,
html[data-rpe-appearance="light"] .rpe-directory-sidebar input,
html[data-rpe-appearance="light"] .rpe-directory-sidebar select{
  background:#fff!important;
  color:var(--rpe-title)!important;
  border-color:rgba(15,23,42,.13)!important;
}
html[data-rpe-appearance="light"] .rpe-category-grid [class*="category-card"],
html[data-rpe-appearance="light"] [data-component="category-grid"] [class*="card"]{
  background:#0c1118!important;
  color:#fff!important;
  border-color:rgba(15,23,42,.13)!important;
}
html[data-rpe-appearance="light"] .rpe-category-grid [class*="category-card"] h3,
html[data-rpe-appearance="light"] [data-component="category-grid"] [class*="card"] h3{color:#fff!important}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"]{
  background:#f4f6f8!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] > section:not([data-component="global-header"]),
html[data-rpe-appearance="light"] .rpe-directory-summary,
html[data-rpe-appearance="light"] .rpe-directory-overview,
html[data-rpe-appearance="light"] .rpe-directory-location,
html[data-rpe-appearance="light"] .rpe-community-ribbon,
html[data-rpe-appearance="light"] .rpe-review-intelligence{
  background:transparent!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-summary-title,
html[data-rpe-appearance="light"] .rpe-directory-overview h2,
html[data-rpe-appearance="light"] .rpe-review-head h2,
html[data-rpe-appearance="light"] .rpe-community-ribbon h2,
html[data-rpe-appearance="light"] .rpe-pav-head h2{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] .rpe-directory-summary-contact-grid,
html[data-rpe-appearance="light"] .rpe-directory-summary-online,
html[data-rpe-appearance="light"] .rpe-detail-nav-track{border-color:var(--rpe-divider)!important}
html[data-rpe-appearance="light"] .rpe-detail-nav-item{color:var(--rpe-text-muted)!important}
html[data-rpe-appearance="light"] .rpe-detail-nav-item.is-active,
html[data-rpe-appearance="light"] .rpe-detail-nav-item[aria-current="true"]{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] .rpe-directory-summary-actions button,
html[data-rpe-appearance="light"] .rpe-directory-summary-actions a,
html[data-rpe-appearance="light"] .rpe-pav-nav button{
  background:rgba(255,255,255,.78)!important;
  color:var(--rpe-title)!important;
  border-color:rgba(15,23,42,.13)!important;
  box-shadow:0 3px 12px rgba(15,23,42,.045)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-summary-label{color:var(--rpe-text-muted)!important}
html[data-rpe-appearance="light"] .rpe-directory-summary-value,
html[data-rpe-appearance="light"] .rpe-directory-summary-address,
html[data-rpe-appearance="light"] .rpe-directory-summary-phone{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] .rpe-directory-location-map{
  background:#fff!important;
  border:1px solid rgba(15,23,42,.09)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.06)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-location-map-overlay{
  background:rgba(255,255,255,.78)!important;
  color:var(--rpe-title)!important;
  border-color:rgba(15,23,42,.10)!important;
  box-shadow:0 5px 20px rgba(15,23,42,.08)!important;
  -webkit-backdrop-filter:blur(16px)!important;
  backdrop-filter:blur(16px)!important;
}
html[data-rpe-appearance="light"] .rpe-directory-location-map-direction,
html[data-rpe-appearance="light"] .rpe-directory-location-map-exit{
  background:rgba(255,255,255,.90)!important;
  color:var(--rpe-title)!important;
  border-color:rgba(15,23,42,.12)!important;
}
html[data-rpe-appearance="light"] section[data-component="directory-community-ribbon"] .rpe-community-card{
  background:transparent!important;
  border-bottom-color:rgba(15,23,42,.08)!important;
  box-shadow:none!important;
}
html[data-rpe-appearance="light"] section[data-component="directory-community-ribbon"] .rpe-community-card strong{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] section[data-component="directory-community-ribbon"] .rpe-community-card small{color:var(--rpe-text-muted)!important}
html[data-rpe-appearance="light"] .rpe-review-empty--composed,
html[data-rpe-appearance="light"] .rpe-review-card{
  background:rgba(255,255,255,.74)!important;
  border-color:rgba(15,23,42,.09)!important;
  box-shadow:0 7px 22px rgba(15,23,42,.045)!important;
}
html[data-rpe-appearance="light"] .rpe-review-empty-primary{border-right-color:rgba(15,23,42,.085)!important}
html[data-rpe-appearance="light"] .rpe-review-empty-primary>strong,
html[data-rpe-appearance="light"] .rpe-review-empty-context-head>strong,
html[data-rpe-appearance="light"] .rpe-review-empty-benefit strong{color:var(--rpe-title)!important}
html[data-rpe-appearance="light"] .rpe-review-empty-primary>p,
html[data-rpe-appearance="light"] .rpe-review-empty-context-head>p,
html[data-rpe-appearance="light"] .rpe-review-empty-benefit p{color:var(--rpe-text-muted)!important}
html[data-rpe-appearance="light"] .rpe-review-distribution-track{background:rgba(15,23,42,.07)!important}
html[data-rpe-appearance="light"] .rpe-review-composer-backdrop{
  background:rgba(225,230,236,.70)!important;
  -webkit-backdrop-filter:blur(14px) saturate(110%)!important;
  backdrop-filter:blur(14px) saturate(110%)!important;
}
html[data-rpe-appearance="light"] .rpe-review-composer-panel{
  background:rgba(255,255,255,.97)!important;
  border-color:rgba(15,23,42,.10)!important;
  color:var(--rpe-title)!important;
  box-shadow:0 30px 90px rgba(15,23,42,.18)!important;
}
html[data-rpe-appearance="light"] .rpe-review-composer-close,
html[data-rpe-appearance="light"] .rpe-review-cancel{
  background:rgba(15,23,42,.035)!important;
  border-color:rgba(15,23,42,.10)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance="light"] .rpe-review-text-label textarea,
html[data-rpe-appearance="light"] .rpe-review-identity input{
  background:#fff!important;
  border-color:rgba(15,23,42,.13)!important;
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render [role="tab"]:not([aria-selected="true"]),
html[data-rpe-appearance="light"] .rpe-chip:not(.is-active),
html[data-rpe-appearance="light"] .rpe-filter-chip:not(.is-active){
  background:#fff!important;
  color:var(--rpe-text)!important;
  border-color:rgba(15,23,42,.10)!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render select{background-color:#fff!important}
html[data-rpe-appearance="light"] .rpe-ds-render input:focus,
html[data-rpe-appearance="light"] .rpe-ds-render textarea:focus,
html[data-rpe-appearance="light"] .rpe-ds-render select:focus{
  border-color:rgba(239,35,60,.42)!important;
  box-shadow:0 0 0 3px rgba(239,35,60,.07)!important;
  outline:0!important;
}
html[data-rpe-appearance="light"] .rpe-directory-detail-skeleton-badge{
  background:var(--rpe-brand-red)!important;
  color:#fff!important;
}
html[data-rpe-appearance="light"]{scrollbar-color:rgba(15,23,42,.22) transparent}
html[data-rpe-appearance="dark"]{scrollbar-color:rgba(255,255,255,.20) transparent}


/* ==========================================================================
 * 5.0.0X.3 — Appearance Selector, System Preference & Persistence Parity
 * ========================================================================== */
.rpe-gh-appearance-wrap{
  position:relative;
  display:inline-flex;
  align-items:center;
  flex:none;
}
.rpe-gh-appearance{
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  padding:0!important;
  margin:0 4px 0 0!important;
  border:1px solid var(--rpe-border)!important;
  border-radius:10px!important;
  background:var(--rpe-control-bg)!important;
  color:var(--rpe-title)!important;
  cursor:pointer!important;
}
.rpe-gh-appearance[aria-expanded="true"]{
  border-color:color-mix(in srgb,var(--rpe-brand-red) 55%,var(--rpe-border))!important;
  background:var(--rpe-control-hover)!important;
}
.rpe-gh-appearance-icon{
  font-size:17px!important;
  line-height:1!important;
}
.rpe-gh-appearance-label{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}
.rpe-gh-appearance-menu[hidden]{display:none!important}
.rpe-gh-appearance-menu{
  position:absolute!important;
  z-index:100020!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  width:268px!important;
  padding:8px!important;
  border:1px solid var(--rpe-border)!important;
  border-radius:13px!important;
  background:var(--rpe-surface-glass-strong)!important;
  color:var(--rpe-text)!important;
  box-shadow:var(--rpe-shadow)!important;
  -webkit-backdrop-filter:blur(20px) saturate(140%)!important;
  backdrop-filter:blur(20px) saturate(140%)!important;
}
.rpe-gh-appearance-menu-title{
  padding:8px 10px 9px!important;
  color:var(--rpe-text-muted)!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.rpe-gh-appearance-option{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) 18px!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:54px!important;
  padding:8px 9px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  color:var(--rpe-text)!important;
  text-align:left!important;
  cursor:pointer!important;
}
.rpe-gh-appearance-option:hover,
.rpe-gh-appearance-option:focus-visible{
  background:var(--rpe-control-hover)!important;
  outline:none!important;
}
.rpe-gh-appearance-option.is-active{
  border-color:color-mix(in srgb,var(--rpe-brand-red) 34%,var(--rpe-border))!important;
  background:color-mix(in srgb,var(--rpe-brand-red) 7%,var(--rpe-surface))!important;
}
.rpe-gh-appearance-option-icon{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:32px!important;
  border:1px solid var(--rpe-border)!important;
  border-radius:9px!important;
  background:var(--rpe-control-bg)!important;
  color:var(--rpe-title)!important;
  font-size:16px!important;
}
.rpe-gh-appearance-option-copy{
  min-width:0!important;
}
.rpe-gh-appearance-option-copy strong{
  display:block!important;
  margin:0!important;
  color:var(--rpe-title)!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:850!important;
}
.rpe-gh-appearance-option-copy small{
  display:block!important;
  margin-top:3px!important;
  color:var(--rpe-text-muted)!important;
  font-size:9.5px!important;
  line-height:1.3!important;
}
.rpe-gh-appearance-check{
  opacity:0!important;
  color:var(--rpe-brand-red)!important;
  font-size:13px!important;
  font-weight:900!important;
}
.rpe-gh-appearance-option.is-active .rpe-gh-appearance-check{
  opacity:1!important;
}

/* Light material for the selector itself. */
html[data-rpe-appearance="light"] .rpe-gh-appearance-menu{
  background:rgba(255,255,255,.96)!important;
  border-color:rgba(15,23,42,.10)!important;
  box-shadow:0 20px 50px rgba(15,23,42,.13)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-appearance-option-icon{
  background:rgba(15,23,42,.035)!important;
}

/* Dark material remains aligned with the approved header. */
html[data-rpe-appearance="dark"] .rpe-gh-appearance-menu{
  background:rgba(12,17,24,.96)!important;
}

/* Public Preview parity: appearance selector must remain interactive. */
body.rpe-ds-preview .rpe-gh-appearance-wrap,
body.rpe-ds-preview .rpe-gh-appearance-wrap *{
  pointer-events:auto!important;
}

/* Mobile: keep the menu inside the viewport and make options easier to tap. */
@media(max-width:820px){
  .rpe-gh-appearance-wrap{
    display:inline-flex!important;
  }
  .rpe-gh-appearance-menu{
    position:fixed!important;
    top:72px!important;
    right:12px!important;
    width:min(268px,calc(100vw - 24px))!important;
  }
}

/* The actual mode change should feel immediate and calm. */
html[data-rpe-appearance] body,
html[data-rpe-appearance] .rpe-global-header,
html[data-rpe-appearance] .rpe-ds-render,
html[data-rpe-appearance] .rpe-pav-card,
html[data-rpe-appearance] .rpe-review-card,
html[data-rpe-appearance] .rpe-directory-filter-bar,
html[data-rpe-appearance] .rpe-directory-sidebar{
  transition:
    background-color .18s ease,
    color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease!important;
}

/* 5.0.0X.3.1 — header stability / preview parity */
.rpe-global-header .rpe-gh-appearance-wrap,
[data-rpe-global-header] .rpe-gh-appearance-wrap,
.rpe-universal-header .rpe-gh-appearance-wrap{
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  flex:0 0 36px!important;
  align-self:center!important;
}
.rpe-global-header .rpe-gh-appearance,
[data-rpe-global-header] .rpe-gh-appearance,
.rpe-universal-header .rpe-gh-appearance{
  box-sizing:border-box!important;
}


/* ==========================================================================
 * 5.0.0X.4 — Hero Overlay Theme Contract & Universal Section Theme Migration
 * ========================================================================== */

/* HERO OVERLAY TOKENS
   Hero titles/content stay light in BOTH modes because they live on photography.
   Only the surrounding page environment and glass/scrim material change. */
:root[data-rpe-appearance="dark"]{
  --rpe-hero-title:#ffffff;
  --rpe-hero-text:rgba(255,255,255,.90);
  --rpe-hero-muted:rgba(255,255,255,.68);
  --rpe-hero-eyebrow:var(--rpe-brand-red);
  --rpe-hero-glass:rgba(7,10,14,.34);
  --rpe-hero-glass-strong:rgba(7,10,14,.54);
  --rpe-hero-border:rgba(255,255,255,.15);
  --rpe-hero-scrim:linear-gradient(180deg,rgba(2,5,9,.16),rgba(2,5,9,.46));
  --rpe-hero-search-bg:rgba(12,18,26,.42);
  --rpe-hero-search-text:#ffffff;
  --rpe-hero-search-placeholder:rgba(255,255,255,.64);
}
:root[data-rpe-appearance="light"]{
  --rpe-hero-title:#ffffff;
  --rpe-hero-text:rgba(255,255,255,.92);
  --rpe-hero-muted:rgba(255,255,255,.72);
  --rpe-hero-eyebrow:var(--rpe-brand-red);
  --rpe-hero-glass:rgba(255,255,255,.18);
  --rpe-hero-glass-strong:rgba(255,255,255,.30);
  --rpe-hero-border:rgba(255,255,255,.30);
  --rpe-hero-scrim:linear-gradient(180deg,rgba(9,14,22,.18),rgba(9,14,22,.42));
  --rpe-hero-search-bg:rgba(255,255,255,.78);
  --rpe-hero-search-text:#243041;
  --rpe-hero-search-placeholder:#738094;
}

/* Universal Hero selectors — VEE city/global/category hero families. */
html[data-rpe-appearance] [data-component="page-hero"],
html[data-rpe-appearance] [data-component="city-hero"],
html[data-rpe-appearance] [data-component="global-hero"],
html[data-rpe-appearance] [data-component="hero"],
html[data-rpe-appearance] .rpe-hero,
html[data-rpe-appearance] .rpe-x-hero,
html[data-rpe-appearance] .rpe-city-hero,
html[data-rpe-appearance] .rpe-global-hero,
html[data-rpe-appearance] .rpe-directory-hero{
  color:var(--rpe-hero-text)!important;
}

/* Titles inside hero context always remain light. */
html[data-rpe-appearance] [data-component="page-hero"] h1,
html[data-rpe-appearance] [data-component="page-hero"] h2,
html[data-rpe-appearance] [data-component="city-hero"] h1,
html[data-rpe-appearance] [data-component="city-hero"] h2,
html[data-rpe-appearance] [data-component="global-hero"] h1,
html[data-rpe-appearance] [data-component="global-hero"] h2,
html[data-rpe-appearance] [data-component="hero"] h1,
html[data-rpe-appearance] [data-component="hero"] h2,
html[data-rpe-appearance] .rpe-hero h1,
html[data-rpe-appearance] .rpe-hero h2,
html[data-rpe-appearance] .rpe-x-hero h1,
html[data-rpe-appearance] .rpe-x-hero h2,
html[data-rpe-appearance] .rpe-city-hero h1,
html[data-rpe-appearance] .rpe-city-hero h2,
html[data-rpe-appearance] .rpe-global-hero h1,
html[data-rpe-appearance] .rpe-global-hero h2,
html[data-rpe-appearance] .rpe-directory-hero h1,
html[data-rpe-appearance] .rpe-directory-hero h2{
  color:var(--rpe-hero-title)!important;
  text-shadow:0 2px 22px rgba(0,0,0,.18);
}

/* Supporting hero copy stays light as well. */
html[data-rpe-appearance] [data-component="page-hero"] p,
html[data-rpe-appearance] [data-component="city-hero"] p,
html[data-rpe-appearance] [data-component="global-hero"] p,
html[data-rpe-appearance] [data-component="hero"] p,
html[data-rpe-appearance] .rpe-hero p,
html[data-rpe-appearance] .rpe-x-hero p,
html[data-rpe-appearance] .rpe-city-hero p,
html[data-rpe-appearance] .rpe-global-hero p,
html[data-rpe-appearance] .rpe-directory-hero p{
  color:var(--rpe-hero-text)!important;
}

/* Hero eyebrow/category accent remains Rumanji red in both modes. */
html[data-rpe-appearance] [data-component="page-hero"] [class*="eyebrow"],
html[data-rpe-appearance] [data-component="city-hero"] [class*="eyebrow"],
html[data-rpe-appearance] [data-component="global-hero"] [class*="eyebrow"],
html[data-rpe-appearance] [data-component="hero"] [class*="eyebrow"],
html[data-rpe-appearance] .rpe-hero [class*="eyebrow"],
html[data-rpe-appearance] .rpe-x-hero [class*="eyebrow"]{
  color:var(--rpe-hero-eyebrow)!important;
}

/* Hero glass treatment. */
html[data-rpe-appearance] [data-component="page-hero"] [class*="glass"],
html[data-rpe-appearance] [data-component="city-hero"] [class*="glass"],
html[data-rpe-appearance] [data-component="global-hero"] [class*="glass"],
html[data-rpe-appearance] [data-component="hero"] [class*="glass"],
html[data-rpe-appearance] .rpe-hero [class*="glass"],
html[data-rpe-appearance] .rpe-x-hero [class*="glass"]{
  background:var(--rpe-hero-glass)!important;
  border-color:var(--rpe-hero-border)!important;
  -webkit-backdrop-filter:blur(16px) saturate(120%)!important;
  backdrop-filter:blur(16px) saturate(120%)!important;
}

/* Common hero content blocks get a subtle glass context without requiring
   each component to hard-code dark/light materials. */
html[data-rpe-appearance] [data-component="page-hero"] .rpe-hero-content,
html[data-rpe-appearance] [data-component="city-hero"] .rpe-hero-content,
html[data-rpe-appearance] [data-component="global-hero"] .rpe-hero-content,
html[data-rpe-appearance] .rpe-x-hero-content{
  color:var(--rpe-hero-text)!important;
}

/* Photo scrim is invariant in purpose but varies slightly by mode. */
html[data-rpe-appearance] [data-component="page-hero"]::after,
html[data-rpe-appearance] [data-component="city-hero"]::after,
html[data-rpe-appearance] [data-component="global-hero"]::after,
html[data-rpe-appearance] .rpe-hero::after,
html[data-rpe-appearance] .rpe-x-hero::after{
  background:var(--rpe-hero-scrim);
}

/* HERO SEARCH — controls adapt while hero typography stays light. */
html[data-rpe-appearance] [data-component="page-hero"] input[type="search"],
html[data-rpe-appearance] [data-component="city-hero"] input[type="search"],
html[data-rpe-appearance] [data-component="global-hero"] input[type="search"],
html[data-rpe-appearance] [data-component="hero"] input[type="search"],
html[data-rpe-appearance] .rpe-hero input[type="search"],
html[data-rpe-appearance] .rpe-x-hero input[type="search"]{
  background:var(--rpe-hero-search-bg)!important;
  color:var(--rpe-hero-search-text)!important;
  border-color:var(--rpe-hero-border)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  backdrop-filter:blur(14px)!important;
}
html[data-rpe-appearance] [data-component="page-hero"] input[type="search"]::placeholder,
html[data-rpe-appearance] [data-component="city-hero"] input[type="search"]::placeholder,
html[data-rpe-appearance] [data-component="global-hero"] input[type="search"]::placeholder,
html[data-rpe-appearance] [data-component="hero"] input[type="search"]::placeholder,
html[data-rpe-appearance] .rpe-hero input[type="search"]::placeholder,
html[data-rpe-appearance] .rpe-x-hero input[type="search"]::placeholder{
  color:var(--rpe-hero-search-placeholder)!important;
}

/* Search/filter select controls inside hero. */
html[data-rpe-appearance] [data-component="page-hero"] select,
html[data-rpe-appearance] [data-component="city-hero"] select,
html[data-rpe-appearance] [data-component="global-hero"] select,
html[data-rpe-appearance] .rpe-hero select,
html[data-rpe-appearance] .rpe-x-hero select{
  background:var(--rpe-hero-search-bg)!important;
  color:var(--rpe-hero-search-text)!important;
  border-color:var(--rpe-hero-border)!important;
}

/* --------------------------------------------------------------------------
 * UNIVERSAL STANDARD SECTION CONTRACT
 * Everything outside a hero follows conventional light/dark behavior.
 * -------------------------------------------------------------------------- */
:root[data-rpe-appearance]{
  --rpe-section-surface:var(--rpe-page-bg);
  --rpe-section-card:var(--rpe-surface);
  --rpe-section-title:var(--rpe-title);
  --rpe-section-text:var(--rpe-text);
  --rpe-section-muted:var(--rpe-text-muted);
  --rpe-section-border:var(--rpe-border);
}

/* Known non-hero sections use mode-dependent text. */
html[data-rpe-appearance] [data-component="featured-businesses"],
html[data-rpe-appearance] [data-component="popular-cities"],
html[data-rpe-appearance] [data-component="category-grid"],
html[data-rpe-appearance] [data-component="directory-results"],
html[data-rpe-appearance] [data-component="directory-filter-bar"],
html[data-rpe-appearance] [data-component="directory-detail-overview"],
html[data-rpe-appearance] [data-component="directory-detail-reviews"],
html[data-rpe-appearance] [data-component="directory-community-ribbon"],
html[data-rpe-appearance] [data-component="directory-people-also-viewed"],
html[data-rpe-appearance] [data-component="directory-location"],
html[data-rpe-appearance] [data-component="directory-detail-newsletter"],
html[data-rpe-appearance] [data-component="global-footer"]{
  color:var(--rpe-section-text)!important;
}

/* Section headings flip normally. */
html[data-rpe-appearance] [data-component="featured-businesses"] h1,
html[data-rpe-appearance] [data-component="featured-businesses"] h2,
html[data-rpe-appearance] [data-component="featured-businesses"] h3,
html[data-rpe-appearance] [data-component="popular-cities"] h1,
html[data-rpe-appearance] [data-component="popular-cities"] h2,
html[data-rpe-appearance] [data-component="popular-cities"] h3,
html[data-rpe-appearance] [data-component="directory-results"] h1,
html[data-rpe-appearance] [data-component="directory-results"] h2,
html[data-rpe-appearance] [data-component="directory-results"] h3,
html[data-rpe-appearance] [data-component="directory-detail-overview"] h1,
html[data-rpe-appearance] [data-component="directory-detail-overview"] h2,
html[data-rpe-appearance] [data-component="directory-detail-overview"] h3,
html[data-rpe-appearance] [data-component="directory-detail-reviews"] h1,
html[data-rpe-appearance] [data-component="directory-detail-reviews"] h2,
html[data-rpe-appearance] [data-component="directory-detail-reviews"] h3,
html[data-rpe-appearance] [data-component="directory-community-ribbon"] h1,
html[data-rpe-appearance] [data-component="directory-community-ribbon"] h2,
html[data-rpe-appearance] [data-component="directory-community-ribbon"] h3,
html[data-rpe-appearance] [data-component="directory-people-also-viewed"] h1,
html[data-rpe-appearance] [data-component="directory-people-also-viewed"] h2,
html[data-rpe-appearance] [data-component="directory-people-also-viewed"] h3,
html[data-rpe-appearance] [data-component="directory-location"] h1,
html[data-rpe-appearance] [data-component="directory-location"] h2,
html[data-rpe-appearance] [data-component="directory-location"] h3{
  color:var(--rpe-section-title)!important;
}

/* Standard copy flips normally too. */
html[data-rpe-appearance] [data-component="featured-businesses"] p,
html[data-rpe-appearance] [data-component="popular-cities"] p,
html[data-rpe-appearance] [data-component="directory-results"] p,
html[data-rpe-appearance] [data-component="directory-detail-overview"] p,
html[data-rpe-appearance] [data-component="directory-detail-reviews"] p,
html[data-rpe-appearance] [data-component="directory-community-ribbon"] p,
html[data-rpe-appearance] [data-component="directory-people-also-viewed"] p,
html[data-rpe-appearance] [data-component="directory-location"] p{
  color:var(--rpe-section-text)!important;
}

/* Light mode standard sections/cards become genuinely light. */
html[data-rpe-appearance="light"] [data-component="featured-businesses"],
html[data-rpe-appearance="light"] [data-component="popular-cities"],
html[data-rpe-appearance="light"] [data-component="directory-results"],
html[data-rpe-appearance="light"] [data-component="directory-filter-bar"],
html[data-rpe-appearance="light"] [data-component="directory-detail-overview"],
html[data-rpe-appearance="light"] [data-component="directory-detail-reviews"],
html[data-rpe-appearance="light"] [data-component="directory-community-ribbon"],
html[data-rpe-appearance="light"] [data-component="directory-people-also-viewed"],
html[data-rpe-appearance="light"] [data-component="directory-location"],
html[data-rpe-appearance="light"] [data-component="directory-detail-newsletter"],
html[data-rpe-appearance="light"] [data-component="global-footer"]{
  background-color:var(--rpe-page-bg)!important;
}

/* Dark mode standard sections stay on the approved dark canvas. */
html[data-rpe-appearance="dark"] [data-component="featured-businesses"],
html[data-rpe-appearance="dark"] [data-component="popular-cities"],
html[data-rpe-appearance="dark"] [data-component="directory-results"],
html[data-rpe-appearance="dark"] [data-component="directory-filter-bar"],
html[data-rpe-appearance="dark"] [data-component="directory-detail-overview"],
html[data-rpe-appearance="dark"] [data-component="directory-detail-reviews"],
html[data-rpe-appearance="dark"] [data-component="directory-community-ribbon"],
html[data-rpe-appearance="dark"] [data-component="directory-people-also-viewed"],
html[data-rpe-appearance="dark"] [data-component="directory-location"],
html[data-rpe-appearance="dark"] [data-component="directory-detail-newsletter"],
html[data-rpe-appearance="dark"] [data-component="global-footer"]{
  background-color:var(--rpe-page-bg)!important;
}

/* Protect colored semantic headings/badges from generic title migration. */
html[data-rpe-appearance] [class*="eyebrow"],
html[data-rpe-appearance] [class*="category-label"],
html[data-rpe-appearance] [class*="accent-title"]{
  color:var(--rpe-brand-red)!important;
}

/* Popular Cities and other image-overlay cards keep light text ON the image
   even though their parent section follows standard light/dark behavior. */
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-card-style-overlay h2,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-card-style-overlay h3,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-card-style-overlay p,
html[data-rpe-appearance] [data-component="featured-businesses"] .rpe-card-style-overlay h2,
html[data-rpe-appearance] [data-component="featured-businesses"] .rpe-card-style-overlay h3,
html[data-rpe-appearance] [data-component="featured-businesses"] .rpe-card-style-overlay p{
  color:#fff!important;
}


/* ==========================================================================
 * 5.0.0X.4.1 — Global Hero Semantic Surface Migration & Header Row Integrity
 * ========================================================================== */

/* The production Global/City hero renderer uses the rpe-ds-hero-* composition
   classes even outside Studio. Bind those real internal surfaces to the X.4
   hero semantic contract rather than their historic hard-coded #101722. */
html[data-rpe-appearance] .rpe-ds-hero-composition{
  background:var(--rpe-page-bg)!important;
}
html[data-rpe-appearance] .rpe-ds-hero-content{
  color:var(--rpe-hero-text)!important;
}
html[data-rpe-appearance] .rpe-ds-hero-content h1,
html[data-rpe-appearance] .rpe-ds-hero-content h2{
  color:var(--rpe-hero-title)!important;
  text-shadow:0 2px 24px rgba(0,0,0,.20)!important;
}
html[data-rpe-appearance] .rpe-ds-hero-content p{
  color:var(--rpe-hero-text)!important;
}
html[data-rpe-appearance] .rpe-ds-hero-content small{
  color:var(--rpe-hero-eyebrow)!important;
}
html[data-rpe-appearance] .rpe-ds-hero-content em,
html[data-rpe-appearance] .rpe-ds-hero-content .rpe-ds-media-state{
  color:var(--rpe-hero-muted)!important;
}
html[data-rpe-appearance] .rpe-ds-hero-overlay{
  background:var(--rpe-hero-scrim)!important;
}

/* DARK HERO:
   dark semantic surface + restrained glass around the content. */
html[data-rpe-appearance="dark"] .rpe-ds-hero-content{
  background:var(--rpe-page-bg-raised)!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-hero-content-inner{
  box-sizing:border-box;
  padding:clamp(22px,3vw,42px);
  border:1px solid rgba(255,255,255,.055);
  border-radius:20px;
  background:rgba(7,10,14,.16);
  -webkit-backdrop-filter:blur(12px) saturate(112%);
  backdrop-filter:blur(12px) saturate(112%);
}

/* LIGHT HERO:
   the hero environment itself becomes light, while its invariant white
   typography lives on a translucent dark photographic-glass island. This
   keeps "light background + light hero title + glass" readable instead of
   turning the title dark like an ordinary section. */
html[data-rpe-appearance="light"] .rpe-ds-hero-content{
  background:
    radial-gradient(circle at 34% 28%,rgba(255,255,255,.98),rgba(235,239,244,.96) 64%,rgba(229,234,240,.98))!important;
}
html[data-rpe-appearance="light"] .rpe-ds-hero-content-inner{
  box-sizing:border-box;
  padding:clamp(24px,3vw,44px);
  border:1px solid rgba(255,255,255,.42);
  border-radius:20px;
  background:rgba(16,24,35,.70);
  box-shadow:0 18px 50px rgba(15,23,42,.13);
  -webkit-backdrop-filter:blur(18px) saturate(118%);
  backdrop-filter:blur(18px) saturate(118%);
}
html[data-rpe-appearance="light"] .rpe-ds-hero-content h1,
html[data-rpe-appearance="light"] .rpe-ds-hero-content h2,
html[data-rpe-appearance="light"] .rpe-ds-hero-content p{
  color:#fff!important;
}
html[data-rpe-appearance="light"] .rpe-ds-hero-content em,
html[data-rpe-appearance="light"] .rpe-ds-hero-content .rpe-ds-media-state{
  color:rgba(255,255,255,.72)!important;
}

/* Background-layout heroes already place content directly over media; do not
   add a second opaque panel to the entire content column. */
html[data-rpe-appearance] .rpe-ds-hero-layout-background .rpe-ds-hero-content{
  background:transparent!important;
}
html[data-rpe-appearance="light"] .rpe-ds-hero-layout-background .rpe-ds-hero-content-inner{
  background:rgba(18,26,38,.42);
  border-color:rgba(255,255,255,.24);
}

/* Hero-integrated Search adopts the hero material context. */
html[data-rpe-appearance="dark"] .rpe-ds-hero-composition .rpe-search-component input,
html[data-rpe-appearance="dark"] .rpe-ds-hero-composition .rpe-search-component select{
  background:rgba(14,20,29,.62)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#fff!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-hero-composition .rpe-search-component input::placeholder{
  color:rgba(255,255,255,.62)!important;
}
html[data-rpe-appearance="light"] .rpe-ds-hero-composition .rpe-search-component input,
html[data-rpe-appearance="light"] .rpe-ds-hero-composition .rpe-search-component select{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(15,23,42,.12)!important;
  color:#1f2937!important;
}
html[data-rpe-appearance="light"] .rpe-ds-hero-composition .rpe-search-component input::placeholder{
  color:#728096!important;
}

/* The Global Hero's split media side remains image-led in both modes. */
html[data-rpe-appearance] .rpe-ds-hero-media{
  background-color:var(--rpe-image-placeholder)!important;
}

/* HEADER ROW INTEGRITY
   X.3 adds Appearance as a top-level header grid child. The original Universal
   Header had five visible columns; it now has six. Explicitly reserve the
   sixth column so account actions cannot fall into an accidental second row. */
html[data-rpe-appearance] .rpe-global-header .rpe-gh-inner,
html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-inner{
  grid-template-columns:
    auto
    minmax(260px,1fr)
    auto
    36px
    auto
    auto!important;
  grid-auto-flow:column!important;
  grid-auto-rows:1fr!important;
}
html[data-rpe-appearance] .rpe-global-header .rpe-gh-brand-context,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-search,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-categories-trigger,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-appearance-wrap,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-language,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-user{
  grid-row:1!important;
  align-self:center!important;
}
html[data-rpe-appearance] .rpe-global-header .rpe-gh-user{
  min-width:max-content!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
}

/* At medium desktop widths compress search before allowing auth to wrap. */
@media(max-width:1180px) and (min-width:821px){
  html[data-rpe-appearance] .rpe-global-header .rpe-gh-inner,
  html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-inner{
    grid-template-columns:
      auto
      minmax(150px,1fr)
      auto
      36px
      auto
      auto!important;
    gap:9px!important;
  }
  html[data-rpe-appearance] .rpe-global-header .rpe-gh-user{
    gap:6px!important;
  }
}

/* Mobile retains the original flex contract. */
@media(max-width:820px){
  html[data-rpe-appearance] .rpe-global-header .rpe-gh-inner,
  html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-inner{
    display:flex!important;
    grid-template-columns:none!important;
    grid-auto-flow:initial!important;
    grid-auto-rows:initial!important;
  }
}


/* ==========================================================================
 * 5.0.0X.4.2 — Language Contrast & Universal Body Surface Completion
 * ========================================================================== */

/* LANGUAGE PANEL
   Legacy Language Runtime rules own explicit dark colors. Rebind every visible
   text node and surface to the current appearance contract. */
html[data-rpe-appearance="light"] .rpe-gh-language-panel{
  background:rgba(255,255,255,.97)!important;
  border-color:rgba(15,23,42,.10)!important;
  box-shadow:0 22px 55px rgba(15,23,42,.13)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-panel .rpe-gh-popover-title{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option{
  background:#fff!important;
  border-color:rgba(15,23,42,.11)!important;
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option span{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option small{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option:hover{
  background:#f5f7fa!important;
  border-color:rgba(15,23,42,.18)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option.is-active{
  background:rgba(239,35,60,.065)!important;
  border-color:var(--rpe-brand-red)!important;
  box-shadow:inset 3px 0 0 var(--rpe-brand-red)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option.is-active span{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="light"] .rpe-gh-language-option.is-active small{
  color:var(--rpe-brand-red)!important;
}

html[data-rpe-appearance="dark"] .rpe-gh-language-panel{
  background:rgba(10,16,23,.985)!important;
}
html[data-rpe-appearance="dark"] .rpe-gh-language-option{
  background:var(--rpe-control-bg)!important;
  border-color:var(--rpe-border)!important;
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="dark"] .rpe-gh-language-option span{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="dark"] .rpe-gh-language-option small{
  color:var(--rpe-text-muted)!important;
}

/* Light header uses a dark wordmark while preserving the separate red icon. */
html[data-rpe-appearance="light"] .rpe-gh-brand-logo{
  filter:brightness(0) saturate(100%)!important;
  opacity:.96;
}
html[data-rpe-appearance="dark"] .rpe-gh-brand-logo{
  filter:none!important;
  opacity:1;
}

/* UNIVERSAL NON-HERO BODY SURFACE
   Old Studio/runtime modules still contain explicit #fff / #05080c surfaces.
   All top-level non-Hero components now inherit the single page canvas. */
html[data-rpe-appearance] .rpe-ds-render-component:not(.rpe-ds-render-hero):not(.rpe-ds-render-page-hero):not(.rpe-ds-render-detail-hero){
  background:var(--rpe-page-bg)!important;
  color:var(--rpe-text)!important;
}

/* Home collection sections. */
html[data-rpe-appearance] .rpe-ds-render-featured-collection,
html[data-rpe-appearance] .rpe-featured-collection--business,
html[data-rpe-appearance] .rpe-ds-render-popular-cities,
html[data-rpe-appearance] .rpe-ds-render-category-grid,
html[data-rpe-appearance] .rpe-category-gateway{
  background:var(--rpe-page-bg)!important;
  color:var(--rpe-text)!important;
}

/* Category Gateway is a standard section. Cards keep their black identity. */
html[data-rpe-appearance="light"] .rpe-category-gateway{
  background:
    radial-gradient(circle at 50% -25%,rgba(239,35,60,.055),transparent 42%),
    linear-gradient(180deg,#f7f8fa 0%,#f3f5f7 100%)!important;
}
html[data-rpe-appearance="dark"] .rpe-category-gateway{
  background:
    radial-gradient(circle at 50% -25%,rgba(239,35,60,.09),transparent 42%),
    radial-gradient(circle at 15% 55%,rgba(255,255,255,.035),transparent 25%),
    linear-gradient(180deg,#070a0f 0%,#030507 100%)!important;
}
html[data-rpe-appearance="light"] .rpe-category-gateway-head h2{
  color:var(--rpe-title)!important;
  text-shadow:none!important;
}
html[data-rpe-appearance="light"] .rpe-category-gateway-head p{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance="dark"] .rpe-category-gateway-head h2{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance="dark"] .rpe-category-gateway-head p{
  color:var(--rpe-text)!important;
}

/* Category cards themselves intentionally remain black in both appearances. */
html[data-rpe-appearance] .rpe-category-gateway [class*="category-card"],
html[data-rpe-appearance] .rpe-category-gateway .rpe-category-gateway-card{
  background:#0b0f14!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.16)!important;
}
html[data-rpe-appearance] .rpe-category-gateway [class*="category-card"] h3,
html[data-rpe-appearance] .rpe-category-gateway .rpe-category-gateway-card h3,
html[data-rpe-appearance] .rpe-category-gateway [class*="category-card"] p,
html[data-rpe-appearance] .rpe-category-gateway .rpe-category-gateway-card p{
  color:#fff!important;
}
html[data-rpe-appearance] .rpe-category-gateway [class*="category-card"] p,
html[data-rpe-appearance] .rpe-category-gateway .rpe-category-gateway-card p{
  color:#aeb7c3!important;
}

/* Featured Businesses section: migrate header/copy and cards, not imagery. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-header h2{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-header p{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-view-all{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card{
  background:var(--rpe-surface)!important;
  border-color:var(--rpe-border)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-body{
  background:var(--rpe-surface)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-body h3,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-action{
  color:var(--rpe-title)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-meta,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card-address{
  color:var(--rpe-text-muted)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card-address svg{
  stroke:var(--rpe-text-muted)!important;
}

/* Neutral chips adapt with the card instead of remaining light-only. */
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-chip{
  background:var(--rpe-control-bg)!important;
  border-color:var(--rpe-border)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-chip{
  border-color:rgba(15,23,42,.10)!important;
}

/* Legacy "full bleed white" collection painting must follow appearance mode. */
html[data-rpe-appearance] .rpe-ds-render-collection-grid:not(.rpe-directory-results-layout .rpe-ds-render-collection-grid){
  background:var(--rpe-page-bg)!important;
  box-shadow:0 0 0 100vmax var(--rpe-page-bg)!important;
}
html[data-rpe-appearance] .rpe-ds-render-collection-grid:not(.rpe-directory-results-layout .rpe-ds-render-collection-grid) > .rpe-ds-render-inner,
html[data-rpe-appearance] .rpe-ds-render-collection-grid:not(.rpe-directory-results-layout .rpe-ds-render-collection-grid).rpe-ds-render,
html[data-rpe-appearance] .rpe-ds-render-collection-grid:not(.rpe-directory-results-layout .rpe-ds-render-collection-grid).rpe-ds-component{
  background:var(--rpe-page-bg)!important;
}

/* Unified card renderer follows the section appearance. */
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay){
  background:var(--rpe-surface)!important;
  color:var(--rpe-text)!important;
}
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) h1,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) h2,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) h4{
  color:var(--rpe-title)!important;
}

/* Benefits/utility strips below collections use the same body canvas. */
html[data-rpe-appearance] [class*="benefit"],
html[data-rpe-appearance] [class*="utility-strip"]{
  border-color:var(--rpe-divider)!important;
}

/* Main document never falls back to the opposite mode between components. */
html[data-rpe-appearance="dark"] body,
html[data-rpe-appearance="dark"] .rpe-ds-render{
  background-color:#070a0e!important;
}
html[data-rpe-appearance="light"] body,
html[data-rpe-appearance="light"] .rpe-ds-render{
  background-color:#f4f6f8!important;
}


/* ==========================================================================
 * 5.0.0X.4.3 — Universal Business Card Glass Contract & Mode-Adaptive Typography
 * ========================================================================== */

/* Shared business-card glass tokens. */
:root[data-rpe-appearance="dark"]{
  --rpe-business-card-glass:rgba(17,21,27,.34);
  --rpe-business-card-glass-hover:rgba(17,21,27,.46);
  --rpe-business-card-title:#f7f8fa;
  --rpe-business-card-text:#d7dde5;
  --rpe-business-card-muted:#9aa6b4;
  --rpe-business-card-border:rgba(255,255,255,.11);
  --rpe-business-card-chip:rgba(255,255,255,.08);
  --rpe-business-card-chip-border:rgba(255,255,255,.11);
  --rpe-business-card-chip-text:#dfe5ec;
  --rpe-business-card-shadow:0 10px 34px rgba(0,0,0,.12);
}
:root[data-rpe-appearance="light"]{
  --rpe-business-card-glass:rgba(255,255,255,.40);
  --rpe-business-card-glass-hover:rgba(255,255,255,.56);
  --rpe-business-card-title:#101722;
  --rpe-business-card-text:#344052;
  --rpe-business-card-muted:#697587;
  --rpe-business-card-border:rgba(15,23,42,.10);
  --rpe-business-card-chip:rgba(255,255,255,.56);
  --rpe-business-card-chip-border:rgba(15,23,42,.10);
  --rpe-business-card-chip-text:#344052;
  --rpe-business-card-shadow:0 10px 30px rgba(15,23,42,.055);
}

/* Generic contract applied to business-oriented card families. */
html[data-rpe-appearance] .rpe-fc-card,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay),
html[data-rpe-appearance] .rpe-directory-grid-card,
html[data-rpe-appearance] .rpe-pav-card,
html[data-rpe-appearance] .rpe-community-card,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay),
html[data-rpe-appearance] [data-card-type="business"],
html[data-rpe-appearance] [class*="business-card"]:not(.rpe-card-style-overlay),
html[data-rpe-appearance] [class*="listing-card"]:not(.rpe-card-style-overlay){
  background:var(--rpe-business-card-glass)!important;
  border-color:var(--rpe-business-card-border)!important;
  color:var(--rpe-business-card-text)!important;
  box-shadow:var(--rpe-business-card-shadow)!important;
  -webkit-backdrop-filter:blur(14px) saturate(112%)!important;
  backdrop-filter:blur(14px) saturate(112%)!important;
}

/* Hover gains only a little more material density. */
html[data-rpe-appearance] .rpe-fc-card:hover,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay):hover,
html[data-rpe-appearance] .rpe-directory-grid-card:hover,
html[data-rpe-appearance] .rpe-pav-card:hover,
html[data-rpe-appearance] .rpe-community-card:hover,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay):hover{
  background:var(--rpe-business-card-glass-hover)!important;
}

/* Body regions inherit glass; do not paint separate opaque rectangles. */
html[data-rpe-appearance] .rpe-fc-body,
html[data-rpe-appearance] .rpe-x-business-body,
html[data-rpe-appearance] .rpe-directory-grid-card-body,
html[data-rpe-appearance] .rpe-pav-card-body,
html[data-rpe-appearance] .rpe-community-card-body,
html[data-rpe-appearance] .rpe-ure-card-body,
html[data-rpe-appearance] [class*="business-card"] [class*="body"],
html[data-rpe-appearance] [class*="listing-card"] [class*="body"]{
  background:transparent!important;
}

/* Primary titles: mode-adaptive only. */
html[data-rpe-appearance] .rpe-fc-card h3,
html[data-rpe-appearance] .rpe-fc-card h3 a,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) h3 a,
html[data-rpe-appearance] .rpe-directory-grid-card h3,
html[data-rpe-appearance] .rpe-directory-grid-card h3 a,
html[data-rpe-appearance] .rpe-pav-card h3,
html[data-rpe-appearance] .rpe-pav-card strong,
html[data-rpe-appearance] .rpe-community-card h3,
html[data-rpe-appearance] .rpe-community-card strong,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance] [class*="business-card"]:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance] [class*="listing-card"]:not(.rpe-card-style-overlay) h3{
  color:var(--rpe-business-card-title)!important;
}

/* Secondary copy / address / metadata. */
html[data-rpe-appearance] .rpe-fc-meta,
html[data-rpe-appearance] .rpe-fc-card-address,
html[data-rpe-appearance] .rpe-x-business-meta,
html[data-rpe-appearance] .rpe-x-business-excerpt,
html[data-rpe-appearance] .rpe-directory-grid-card .rpe-meta,
html[data-rpe-appearance] .rpe-directory-grid-card address,
html[data-rpe-appearance] .rpe-pav-address,
html[data-rpe-appearance] .rpe-community-card small,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) small,
html[data-rpe-appearance] [class*="business-card"] address,
html[data-rpe-appearance] [class*="listing-card"] address{
  color:var(--rpe-business-card-muted)!important;
}

/* Action text follows card title color in both modes. */
html[data-rpe-appearance] .rpe-fc-action,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) [class*="action"],
html[data-rpe-appearance] .rpe-directory-grid-card [class*="action"],
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) [class*="action"]{
  color:var(--rpe-business-card-title)!important;
}

/* Neutral chips/tags also become glass, never hard-coded grey. */
html[data-rpe-appearance] .rpe-fc-chip,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) [class*="tag"],
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) [class*="chip"],
html[data-rpe-appearance] .rpe-directory-grid-card [class*="tag"],
html[data-rpe-appearance] .rpe-directory-grid-card [class*="chip"],
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) [class*="tag"],
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) [class*="chip"]{
  background:var(--rpe-business-card-chip)!important;
  border-color:var(--rpe-business-card-chip-border)!important;
  color:var(--rpe-business-card-chip-text)!important;
}

/* Category labels remain Rumanji Red in both modes. */
html[data-rpe-appearance] .rpe-fc-category,
html[data-rpe-appearance] .rpe-x-business-category,
html[data-rpe-appearance] .rpe-directory-grid-card [class*="category"],
html[data-rpe-appearance] .rpe-pav-card [class*="category"],
html[data-rpe-appearance] .rpe-community-card [class*="category"],
html[data-rpe-appearance] .rpe-ure-card [class*="category"]{
  color:var(--rpe-brand-red)!important;
}

/* Address/location icons follow secondary card text instead of becoming black. */
html[data-rpe-appearance] .rpe-fc-card-address svg,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) [class*="location"] svg,
html[data-rpe-appearance] .rpe-directory-grid-card [class*="location"] svg,
html[data-rpe-appearance] .rpe-pav-card [class*="location"] svg,
html[data-rpe-appearance] .rpe-community-card [class*="location"] svg{
  stroke:var(--rpe-business-card-muted)!important;
  color:var(--rpe-business-card-muted)!important;
}

/* Featured badge remains dark glass because it lives on imagery. */
html[data-rpe-appearance] .rpe-fc-featured-badge,
html[data-rpe-appearance] .rpe-featured-badge,
html[data-rpe-appearance] [class*="featured-badge"]{
  background:rgba(13,19,27,.72)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
  -webkit-backdrop-filter:blur(10px) saturate(115%)!important;
  backdrop-filter:blur(10px) saturate(115%)!important;
}

/* Favorite control remains translucent and mode-neutral over image media. */
html[data-rpe-appearance] .rpe-fc-favorite,
html[data-rpe-appearance] [class*="favorite"],
html[data-rpe-appearance] [class*="heart"]{
  background:rgba(20,26,34,.28)!important;
  border-color:rgba(255,255,255,.18)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}

/* Keep media untouched; glass begins only below the image. */
html[data-rpe-appearance] .rpe-fc-card img,
html[data-rpe-appearance] .rpe-x-business-card img,
html[data-rpe-appearance] .rpe-directory-grid-card img,
html[data-rpe-appearance] .rpe-pav-card img,
html[data-rpe-appearance] .rpe-community-card img,
html[data-rpe-appearance] .rpe-ure-card img{
  filter:none!important;
}

/* Avoid old dark/light body overrides painting opaque card panels underneath. */
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-body,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-body{
  background:var(--rpe-business-card-glass)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-body{
  background:transparent!important;
}

/* Directory result grid can share the exact same contract. */
html[data-rpe-appearance] .rpe-directory-results-layout .rpe-ure-card:not(.rpe-card-style-overlay),
html[data-rpe-appearance] .rpe-directory-results-layout .rpe-directory-grid-card{
  background:var(--rpe-business-card-glass)!important;
  color:var(--rpe-business-card-text)!important;
}

/* People Also Viewed keeps compact geometry but uses the same glass/text rules. */
html[data-rpe-appearance] .rpe-pav-card{
  background:var(--rpe-business-card-glass)!important;
}

/* Community Nearby is list-like: use the text contract but keep its layout flat. */
html[data-rpe-appearance] section[data-component="directory-community-ribbon"] .rpe-community-card{
  background:transparent!important;
  box-shadow:none!important;
  border-color:var(--rpe-divider)!important;
}
html[data-rpe-appearance] section[data-component="directory-community-ribbon"] .rpe-community-card strong{
  color:var(--rpe-business-card-title)!important;
}
html[data-rpe-appearance] section[data-component="directory-community-ribbon"] .rpe-community-card small{
  color:var(--rpe-business-card-muted)!important;
}


/* ==========================================================================
 * 5.0.0X.4.3.1 — Business Card Typography Authority & Legacy Override Reconciliation
 * ========================================================================== */

/* Exact Featured Businesses DOM authority.
   Older component CSS uses explicit color declarations on nested spans/links;
   bind those nodes directly to the universal business-card contract. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card *{
  box-sizing:border-box;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card{
  background:var(--rpe-business-card-glass)!important;
  border-color:var(--rpe-business-card-border)!important;
  color:var(--rpe-business-card-text)!important;
}

/* Titles and title links */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-title,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-title a,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card h3,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card h3 a,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card [class*="title"]:not([class*="category"]){
  color:var(--rpe-business-card-title)!important;
  text-decoration-color:currentColor!important;
}

/* CTA / View business */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-action,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-action *,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card [class*="action"],
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card [class*="action"] *{
  color:var(--rpe-business-card-title)!important;
}

/* Address/meta body */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address *,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-meta,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-meta *,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card address,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card small{
  color:var(--rpe-business-card-muted)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address svg,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address svg *{
  stroke:var(--rpe-business-card-muted)!important;
  color:var(--rpe-business-card-muted)!important;
}

/* Neutral card chips */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-chip,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-chip *,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card [class*="tag"]:not([class*="category"]),
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card [class*="chip"]{
  background:var(--rpe-business-card-chip)!important;
  border-color:var(--rpe-business-card-chip-border)!important;
  color:var(--rpe-business-card-chip-text)!important;
}

/* Category label remains invariant red and must not inherit title authority. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-category,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-category *,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card [class*="category"]{
  color:var(--rpe-brand-red)!important;
}

/* DARK MODE: explicit final authority over old #0f172a/#111827 declarations. */
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-title,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-title a,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card h3,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card h3 a,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-action,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-action *,
html[data-rpe-appearance="dark"] .rpe-directory-grid-card h3,
html[data-rpe-appearance="dark"] .rpe-directory-grid-card h3 a,
html[data-rpe-appearance="dark"] .rpe-directory-grid-card [class*="action"],
html[data-rpe-appearance="dark"] .rpe-x-business-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance="dark"] .rpe-x-business-card:not(.rpe-card-style-overlay) h3 a,
html[data-rpe-appearance="dark"] .rpe-ure-card:not(.rpe-card-style-overlay) h3,
html[data-rpe-appearance="dark"] .rpe-ure-card:not(.rpe-card-style-overlay) h3 a{
  color:#f7f8fa!important;
}

html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address *,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-meta,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-meta *,
html[data-rpe-appearance="dark"] .rpe-directory-grid-card address,
html[data-rpe-appearance="dark"] .rpe-directory-grid-card [class*="meta"],
html[data-rpe-appearance="dark"] .rpe-x-business-card:not(.rpe-card-style-overlay) .rpe-x-business-meta,
html[data-rpe-appearance="dark"] .rpe-x-business-card:not(.rpe-card-style-overlay) .rpe-x-business-excerpt{
  color:#9aa6b4!important;
}

/* LIGHT MODE: lock the current correct result against dark-mode component rules. */
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-title,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-title a,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card h3,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card h3 a,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-action,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-action *{
  color:#101722!important;
}
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-card-address *,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-meta,
html[data-rpe-appearance="light"] .rpe-featured-collection--business .rpe-fc-card .rpe-fc-meta *{
  color:#697587!important;
}

/* Directory grid / generic unified cards — reconcile nested legacy wrappers. */
html[data-rpe-appearance] .rpe-directory-grid-card .rpe-card-content,
html[data-rpe-appearance] .rpe-directory-grid-card .rpe-card-body,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) .rpe-card-content,
html[data-rpe-appearance] .rpe-x-business-card:not(.rpe-card-style-overlay) .rpe-card-body,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) .rpe-card-content,
html[data-rpe-appearance] .rpe-ure-card:not(.rpe-card-style-overlay) .rpe-card-body{
  background:transparent!important;
  color:var(--rpe-business-card-text)!important;
}

/* Carousel/collection track: remove the bright white rule in Dark Mode. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-track,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-carousel,
html[data-rpe-appearance] .rpe-featured-collection--business [class*="track"]{
  border-color:var(--rpe-divider)!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-track::after,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-carousel::after,
html[data-rpe-appearance] .rpe-featured-collection--business [class*="track"]::after{
  background:var(--rpe-divider)!important;
  border-color:var(--rpe-divider)!important;
}
html[data-rpe-appearance="dark"] .rpe-featured-collection--business hr,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business [class*="divider"],
html[data-rpe-appearance="dark"] .rpe-featured-collection--business [class*="scrollbar"]{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.10)!important;
}
html[data-rpe-appearance="light"] .rpe-featured-collection--business hr,
html[data-rpe-appearance="light"] .rpe-featured-collection--business [class*="divider"],
html[data-rpe-appearance="light"] .rpe-featured-collection--business [class*="scrollbar"]{
  background:rgba(15,23,42,.08)!important;
  border-color:rgba(15,23,42,.08)!important;
}

/* Keep arrow controls mode-aware too, preventing white islands in Dark Mode. */
html[data-rpe-appearance="dark"] .rpe-featured-collection--business [class*="arrow"],
html[data-rpe-appearance="dark"] .rpe-featured-collection--business [class*="nav"] button{
  background:rgba(17,21,27,.80)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#f7f8fa!important;
}
html[data-rpe-appearance="light"] .rpe-featured-collection--business [class*="arrow"],
html[data-rpe-appearance="light"] .rpe-featured-collection--business [class*="nav"] button{
  background:rgba(255,255,255,.90)!important;
  border-color:rgba(15,23,42,.10)!important;
  color:#101722!important;
}


/* ==========================================================================
 * 5.0.0X.4.4 — Universal Cross-Domain Card Material & Typography Contract
 * Directory · Events · Classifieds · Jobs · Real Estate · Search · Collections
 * ========================================================================== */

/* One neutral card material contract for every content domain. */
:root[data-rpe-appearance="dark"]{
  --rpe-universal-card-bg:rgba(17,21,27,.34);
  --rpe-universal-card-bg-hover:rgba(17,21,27,.46);
  --rpe-universal-card-title:#f7f8fa;
  --rpe-universal-card-text:#d7dde5;
  --rpe-universal-card-muted:#9aa6b4;
  --rpe-universal-card-border:rgba(255,255,255,.11);
  --rpe-universal-card-chip-bg:rgba(255,255,255,.075);
  --rpe-universal-card-chip-border:rgba(255,255,255,.12);
  --rpe-universal-card-chip-text:#dfe5ec;
  --rpe-universal-card-control:rgba(17,21,27,.62);
}
:root[data-rpe-appearance="light"]{
  --rpe-universal-card-bg:rgba(255,255,255,.40);
  --rpe-universal-card-bg-hover:rgba(255,255,255,.56);
  --rpe-universal-card-title:#101722;
  --rpe-universal-card-text:#344052;
  --rpe-universal-card-muted:#697587;
  --rpe-universal-card-border:rgba(15,23,42,.10);
  --rpe-universal-card-chip-bg:rgba(255,255,255,.58);
  --rpe-universal-card-chip-border:rgba(15,23,42,.10);
  --rpe-universal-card-chip-text:#344052;
  --rpe-universal-card-control:rgba(255,255,255,.72);
}

/* Broad, semantic card root coverage. Structural geometry remains owned by
   each domain; only neutral material/typography is universalized here. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,
  .rpe-ure-card,
  .rpe-x-business-card,
  .rpe-directory-business-card,
  .rpe-directory-grid-card,
  .rpe-pav-card,
  .rpe-community-card,
  .rpe-job-card,
  .rpe-jobs-card,
  .rpe-event-card,
  .rpe-classified-card,
  .rpe-real-estate-card,
  .rpe-property-card,
  .rpe-search-result-card,
  .rpe-result-card,
  .rpe-collection-card,
  [data-card-type],
  [data-content-card],
  article[class*="job"][class*="card"],
  article[class*="event"][class*="card"],
  article[class*="classified"][class*="card"],
  article[class*="property"][class*="card"],
  article[class*="real-estate"][class*="card"],
  article[class*="listing"][class*="card"],
  article[class*="result"][class*="card"]
):not(.rpe-card-style-overlay){
  background:var(--rpe-universal-card-bg)!important;
  border-color:var(--rpe-universal-card-border)!important;
  color:var(--rpe-universal-card-text)!important;
  -webkit-backdrop-filter:blur(14px) saturate(112%)!important;
  backdrop-filter:blur(14px) saturate(112%)!important;
}

/* Card body/copy panels may not repaint an opaque, opposite-mode block. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,
  .rpe-ure-card,
  .rpe-x-business-card,
  .rpe-directory-business-card,
  .rpe-directory-grid-card,
  .rpe-job-card,
  .rpe-jobs-card,
  .rpe-event-card,
  .rpe-classified-card,
  .rpe-real-estate-card,
  .rpe-property-card,
  .rpe-search-result-card,
  .rpe-result-card,
  .rpe-collection-card,
  [data-card-type],
  [data-content-card]
):not(.rpe-card-style-overlay) :is(
  .rpe-fc-body,.rpe-card-body,.rpe-card-content,.rpe-card-copy,
  .rpe-directory-card-copy,[class*="card-body"],[class*="card-copy"],
  [class*="card-content"]
){
  background:transparent!important;
  color:var(--rpe-universal-card-text)!important;
}

/* Universal primary title authority — include WebKit text-fill for Safari. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-pav-card,.rpe-community-card,.rpe-job-card,
  .rpe-jobs-card,.rpe-event-card,.rpe-classified-card,.rpe-real-estate-card,
  .rpe-property-card,.rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(
  h2,h3,h4,[class*="title"]:not([class*="category"]),[class*="name"]
),
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(h2,h3,h4,[class*="title"]) a{
  color:var(--rpe-universal-card-title)!important;
  -webkit-text-fill-color:var(--rpe-universal-card-title)!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* Secondary copy, excerpts, addresses, dates, salary/price metadata, distance. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-pav-card,.rpe-community-card,.rpe-job-card,
  .rpe-jobs-card,.rpe-event-card,.rpe-classified-card,.rpe-real-estate-card,
  .rpe-property-card,.rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(
  address,small,.rpe-fc-card-address,.rpe-fc-meta,.rpe-pav-address,
  [class*="address"],[class*="meta"],[class*="excerpt"],[class*="distance"],
  [class*="date"],[class*="salary"],[class*="price"],[class*="location"]
){
  color:var(--rpe-universal-card-muted)!important;
  -webkit-text-fill-color:var(--rpe-universal-card-muted)!important;
  opacity:1!important;
}

/* Neutral tags/chips/pills in every domain. Accent/status chips remain owned
   by their semantic color classes and are excluded where possible. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(
  .rpe-fc-chip,[class*="chip"]:not([class*="accent"]):not([class*="status"]),
  [class*="tag"]:not([class*="category"]):not([class*="status"]),
  [class*="pill"]:not([class*="status"])
){
  background:var(--rpe-universal-card-chip-bg)!important;
  border-color:var(--rpe-universal-card-chip-border)!important;
  color:var(--rpe-universal-card-chip-text)!important;
  -webkit-text-fill-color:var(--rpe-universal-card-chip-text)!important;
}

/* Card CTAs / detail links. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(
  .rpe-fc-action,[class*="card-action"],[class*="view-"],[class*="details"],
  [class*="learn-more"]
),
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) > a:last-child{
  color:var(--rpe-universal-card-title)!important;
  -webkit-text-fill-color:var(--rpe-universal-card-title)!important;
}

/* Category/domain labels keep Rumanji Red in both modes. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(
  .rpe-fc-kicker,.rpe-fc-category,[class*="category-label"],[class*="card-category"]
){
  color:var(--rpe-brand-red)!important;
  -webkit-text-fill-color:var(--rpe-brand-red)!important;
}

/* Location/meta icons follow secondary copy. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(
  [class*="address"],[class*="location"],[class*="meta"]
) svg{
  color:var(--rpe-universal-card-muted)!important;
  stroke:var(--rpe-universal-card-muted)!important;
}

/* Media overlays are invariant: image media is untouched; Featured/favorite
   controls stay translucent and readable independent of mode. */
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-event-card,.rpe-classified-card,
  .rpe-real-estate-card,.rpe-property-card,.rpe-search-result-card,
  .rpe-result-card,.rpe-collection-card,[data-card-type],[data-content-card]
) :is([class*="featured-badge"],.rpe-fc-featured-badge){
  background:rgba(13,19,27,.72)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}
html[data-rpe-appearance] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-event-card,.rpe-classified-card,
  .rpe-real-estate-card,.rpe-property-card,.rpe-search-result-card,
  .rpe-result-card,.rpe-collection-card,[data-card-type],[data-content-card]
) :is([class*="favorite"],[class*="heart"]){
  background:rgba(20,26,34,.28)!important;
  border-color:rgba(255,255,255,.18)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}

/* Exact Featured split-card WebKit authority (Safari). */
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-body h3,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-body h3 a,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-title,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-action{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-card-address,
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-meta{
  color:#9aa6b4!important;
  -webkit-text-fill-color:#9aa6b4!important;
}
html[data-rpe-appearance="dark"] .rpe-featured-collection--business .rpe-fc-card--split .rpe-fc-chip{
  color:#dfe5ec!important;
  -webkit-text-fill-color:#dfe5ec!important;
  background:rgba(255,255,255,.075)!important;
}

/* Exact Directory rendered card authority, including the grey lower panel
   visible in the pre-X.4.4 screenshot. */
html[data-rpe-appearance] .rpe-directory-results-layout article.rpe-directory-business-card{
  background:var(--rpe-universal-card-bg)!important;
  border-color:var(--rpe-universal-card-border)!important;
}
html[data-rpe-appearance] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-copy{
  background:transparent!important;
}
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-copy h3,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-copy h3 a{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card :is(
  .rpe-directory-card-address,.rpe-directory-card-excerpt
){
  color:#9aa6b4!important;
  -webkit-text-fill-color:#9aa6b4!important;
}

/* Collection/search/grid wrappers may never impose a fixed opposite-mode card
   background. This catches Jobs/Events/Classifieds/Real Estate shared renderers. */
html[data-rpe-appearance] :is(
  .rpe-ds-runtime-grid,.rpe-search-results-grid,.rpe-jobs-grid,.rpe-events-grid,
  .rpe-classifieds-grid,.rpe-real-estate-grid,[class*="results-grid"],
  [class*="collection-grid"]
) > :is(article,li,div)[class*="card"]:not(.rpe-card-style-overlay){
  background:var(--rpe-universal-card-bg)!important;
  border-color:var(--rpe-universal-card-border)!important;
  color:var(--rpe-universal-card-text)!important;
}

/* Carousel/scroll tracks are subtle in both modes, never bright white. */
html[data-rpe-appearance] :is(
  .rpe-featured-collection--business,[class*="featured-collection"],
  [class*="collection-carousel"]
) :is(hr,[class*="divider"],[class*="scrollbar"],[class*="track"]){
  border-color:var(--rpe-divider)!important;
}
html[data-rpe-appearance="dark"] :is(
  .rpe-featured-collection--business,[class*="featured-collection"],
  [class*="collection-carousel"]
) :is(hr,[class*="divider"],[class*="scrollbar"]){
  background:rgba(255,255,255,.10)!important;
}
html[data-rpe-appearance="light"] :is(
  .rpe-featured-collection--business,[class*="featured-collection"],
  [class*="collection-carousel"]
) :is(hr,[class*="divider"],[class*="scrollbar"]){
  background:rgba(15,23,42,.08)!important;
}

/* Light mode is explicitly protected as dark-on-light. */
html[data-rpe-appearance="light"] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(h2,h3,h4,[class*="title"]:not([class*="category"])){
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
}

/* Dark mode final authority for all neutral card title nodes. */
html[data-rpe-appearance="dark"] :is(
  .rpe-fc-card,.rpe-ure-card,.rpe-x-business-card,.rpe-directory-business-card,
  .rpe-directory-grid-card,.rpe-job-card,.rpe-jobs-card,.rpe-event-card,
  .rpe-classified-card,.rpe-real-estate-card,.rpe-property-card,
  .rpe-search-result-card,.rpe-result-card,.rpe-collection-card,
  [data-card-type],[data-content-card]
):not(.rpe-card-style-overlay) :is(h2,h3,h4,[class*="title"]:not([class*="category"])){
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}


/* ==========================================================================
 * 5.0.0X.4.4.1 — Collection Grid Title Authority & Featured Tag Row Cleanup
 * ========================================================================== */

/* CATEGORY / COLLECTION GRID TITLE AUTHORITY
   These cards are rendered through Studio/runtime collection-grid wrappers and
   still inherit historical dark title fills. Target the real rendered title
   nodes directly and reset both normal color and WebKit text fill. */
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article h3,
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article h3 a,
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article [class*="title"],
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article [class*="title"] a,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout .rpe-ds-runtime-grid article h3,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout .rpe-ds-runtime-grid article h3 a,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-copy h3,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-copy h3 a,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-title,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-title a{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
  opacity:1!important;
  text-shadow:none!important;
}

/* A few legacy card systems paint title text through nested spans. */
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article h3 *,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-copy h3 *,
html[data-rpe-appearance="dark"] .rpe-directory-results-layout article.rpe-directory-business-card .rpe-directory-card-title *{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}

/* Preserve the correct Light Mode title treatment. */
html[data-rpe-appearance="light"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article h3,
html[data-rpe-appearance="light"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article h3 a,
html[data-rpe-appearance="light"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article [class*="title"],
html[data-rpe-appearance="light"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid article [class*="title"] a{
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
  opacity:1!important;
}

/* FEATURED COLLECTION TAG ROW CLEANUP
   The grey band behind chips comes from the old tags/meta row background.
   Chips themselves retain their adaptive glass surface; the row must be fully
   transparent in both modes. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-tags,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-tag-row,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-chip-row,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-card-tags,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-body > [class*="tag"],
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-body > [class*="chip"]{
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  border:0!important;
}

/* Legacy pseudo-elements can also create a rectangular strip. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-tags::before,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-tags::after,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-tag-row::before,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-tag-row::after,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-chip-row::before,
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-chip-row::after{
  content:none!important;
  display:none!important;
  background:transparent!important;
}

/* Individual chips remain independent glass pills. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-chip{
  display:inline-flex!important;
  width:auto!important;
  max-width:max-content!important;
  background:var(--rpe-universal-card-chip-bg)!important;
  border:1px solid var(--rpe-universal-card-chip-border)!important;
  color:var(--rpe-universal-card-chip-text)!important;
  -webkit-text-fill-color:var(--rpe-universal-card-chip-text)!important;
  box-shadow:none!important;
}

/* Prevent generic child rules from stretching a chip's own background across
   the entire row. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-chip *{
  background:transparent!important;
}

/* Keep body material itself clean and uninterrupted. */
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-body{
  background:transparent!important;
}


/* ==========================================================================
 * 5.0.0X.4.4.2 — Directory Title & Filter Typography Theme Authority
 * ========================================================================== */

/* DIRECTORY/CATEGORY GRID TITLES — authoritative theme color, including Safari. */
html[data-rpe-appearance="dark"] .rpe-directory-results-layout .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
),
html[data-rpe-appearance="dark"] .rpe-directory-results-layout .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
) *,
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
),
html[data-rpe-appearance="dark"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
) *{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
  opacity:1!important;
  text-shadow:none!important;
}

html[data-rpe-appearance="light"] .rpe-directory-results-layout .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
),
html[data-rpe-appearance="light"] .rpe-directory-results-layout .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
) *,
html[data-rpe-appearance="light"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
),
html[data-rpe-appearance="light"] .rpe-ds-render-collection-grid .rpe-ds-runtime-grid > article :is(
  h2,h3,h4,[class*="title"]:not([class*="category"])
) *{
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
  opacity:1!important;
}

/* LIGHT MODE — top filter bar and right refinement rail typography. */
html[data-rpe-appearance="light"] :is(
  [data-component="directory-filter-bar"],
  .rpe-directory-filter-bar,
  .rpe-directory-filters,
  .rpe-directory-filter-shell,
  .rpe-directory-results-filter,
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(
  h1,h2,h3,h4,h5,h6,label,legend,
  [class*="title"],[class*="heading"],[class*="label"]
){
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
  opacity:1!important;
}

html[data-rpe-appearance="light"] :is(
  [data-component="directory-filter-bar"],
  .rpe-directory-filter-bar,
  .rpe-directory-filters,
  .rpe-directory-filter-shell,
  .rpe-directory-results-filter,
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(
  p,span,small,a,[class*="option"],[class*="facet"],[class*="filter"]
){
  color:#344052!important;
  -webkit-text-fill-color:#344052!important;
  opacity:1!important;
}

/* Red filter eyebrow/kicker stays branded. */
html[data-rpe-appearance="light"] :is(
  [data-component="directory-filter-bar"],
  .rpe-directory-filter-bar,
  .rpe-directory-filters,
  .rpe-directory-filter-shell,
  .rpe-directory-results-filter,
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(
  [class*="eyebrow"],[class*="kicker"],[class*="section-label"]
){
  color:var(--rpe-brand-red)!important;
  -webkit-text-fill-color:var(--rpe-brand-red)!important;
}

html[data-rpe-appearance="light"] :is(
  [data-component="directory-filter-bar"],
  .rpe-directory-filter-bar,
  .rpe-directory-filters,
  .rpe-directory-filter-shell,
  .rpe-directory-results-filter,
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(input,select,option,button){
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
}

/* Secondary clear/reset controls. */
html[data-rpe-appearance="light"] :is(
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is([class*="clear"],[class*="reset"]){
  color:#5f6b7b!important;
  -webkit-text-fill-color:#5f6b7b!important;
}

/* DARK MODE parity lock for filter typography. */
html[data-rpe-appearance="dark"] :is(
  [data-component="directory-filter-bar"],
  .rpe-directory-filter-bar,
  .rpe-directory-filters,
  .rpe-directory-filter-shell,
  .rpe-directory-results-filter,
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(
  h1,h2,h3,h4,h5,h6,label,legend,
  [class*="title"],[class*="heading"],[class*="label"]
){
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
  opacity:1!important;
}

html[data-rpe-appearance="dark"] :is(
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(p,span,small,a,[class*="option"],[class*="facet"]){
  color:#c5ced9!important;
  -webkit-text-fill-color:#c5ced9!important;
  opacity:1!important;
}

html[data-rpe-appearance="dark"] :is(
  [data-component="directory-filter-bar"],
  .rpe-directory-filter-bar,
  .rpe-directory-filters,
  .rpe-directory-filter-shell,
  .rpe-directory-results-filter,
  .rpe-directory-sidebar,
  .rpe-directory-results-sidebar,
  .rpe-directory-refine,
  [class*="refine-results"]
) :is(
  [class*="eyebrow"],[class*="kicker"],[class*="section-label"]
){
  color:var(--rpe-brand-red)!important;
  -webkit-text-fill-color:var(--rpe-brand-red)!important;
}


/* 5.0.0X.4.4.5 shared appearance companion */
html[data-rpe-appearance="light"] .rpe-ds-popular-cities-heading h2{
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-popular-cities-heading h2{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}
html[data-rpe-appearance] .rpe-featured-collection--business .rpe-fc-chips{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-rpe-appearance] :is(
  .rpe-ds-render-filter-bar,.rpe-directory-filter-shell,
  .rpe-directory-primary-filters,.rpe-directory-results-shell,
  .rpe-directory-results-layout,.rpe-directory-results-toolbar
){
  background:transparent!important;
  box-shadow:none!important;
}


/* 5.0.0X.4.4.6 shared final-paint companion */
html[data-rpe-appearance="light"] .rpe-directory-clear-primary,
html[data-rpe-appearance="light"] .rpe-directory-clear-primary *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html[data-rpe-appearance="light"] .rpe-directory-facet-panel .rpe-directory-facet-head h3,
html[data-rpe-appearance="light"] .rpe-directory-facet-panel .rpe-directory-facet-group h4{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}


/* ==========================================================================
 * 5.0.0X.4.4.7 — Persistent Clear Label & Header Output Hygiene
 * ========================================================================== */

/* CLEAR is intentionally invariant: dark button, permanently light label.
   Use a generated label so no inherited WebKit/text-fill rule can erase it. */
html[data-rpe-appearance] .rpe-directory-clear-primary,
body[data-rpe-appearance] .rpe-directory-clear-primary{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:72px!important;
  font-size:0!important;
  line-height:1!important;
  text-indent:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#101722!important;
  border-color:#101722!important;
  opacity:1!important;
  visibility:visible!important;
}
html[data-rpe-appearance] .rpe-directory-clear-primary::after,
body[data-rpe-appearance] .rpe-directory-clear-primary::after{
  content:"Clear"!important;
  display:block!important;
  position:relative!important;
  z-index:2!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-transform:none!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
html[data-rpe-appearance] .rpe-directory-clear-primary:hover,
body[data-rpe-appearance] .rpe-directory-clear-primary:hover{
  background:#ef233c!important;
  border-color:#ef233c!important;
}


/* ==========================================================================
 * 5.0.0X.4.4.8 — Full Appearance Selector Portal / Detail Page Parity
 * ========================================================================== */

/* Portaled menu escapes listing-detail header/layout clipping and always shows
   the complete Dark / Light / System option set. */
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal{
  position:fixed!important;
  z-index:2147483000!important;
  right:auto!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  box-sizing:border-box!important;
  isolation:isolate!important;
}

/* Detail/listing templates must never constrain the portal's rows. */
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal .rpe-gh-appearance-option{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* All three modes remain visible; only the checkmark/active material changes. */
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal
.rpe-gh-appearance-option[data-rpe-appearance-option="dark"],
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal
.rpe-gh-appearance-option[data-rpe-appearance-option="light"],
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal
.rpe-gh-appearance-option[data-rpe-appearance-option="system"]{
  display:grid!important;
}

/* Do not let generic listing-detail button rules collapse inactive options. */
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal
.rpe-gh-appearance-option:not(.is-active){
  visibility:visible!important;
  opacity:1!important;
}

/* The title is part of the complete selector and remains visible too. */
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal
.rpe-gh-appearance-menu-title{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}


/* ==========================================================================
 * 5.0.0X.4.4.9 — Stable Appearance Selector Opening & Detail Page Parity
 * ========================================================================== */

/* The selector is wrapper-contained again. This restores the proven
   click/outside-click contract on every page. */
.rpe-gh-appearance-wrap{
  overflow:visible!important;
  z-index:100030!important;
}

/* Header ancestors must not clip the dropdown on detail pages. */
.rpe-global-header,
[data-rpe-global-header],
.rpe-universal-header,
.rpe-global-header .rpe-gh-inner,
[data-rpe-global-header] .rpe-gh-inner,
.rpe-universal-header .rpe-gh-inner,
.rpe-global-header .rpe-gh-actions,
[data-rpe-global-header] .rpe-gh-actions,
.rpe-universal-header .rpe-gh-actions{
  overflow:visible!important;
}

/* Reassert normal anchored menu geometry; undo the 4.4.8 portal behavior. */
.rpe-gh-appearance-menu,
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal{
  position:absolute!important;
  z-index:100040!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  width:268px!important;
  max-width:min(268px,calc(100vw - 24px))!important;
  max-height:min(360px,calc(100vh - 96px))!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  box-sizing:border-box!important;
}

.rpe-gh-appearance-menu[hidden],
.rpe-gh-appearance-menu.rpe-gh-appearance-menu-portal[hidden]{
  display:none!important;
}

/* All three choices must remain rendered on every template. */
.rpe-gh-appearance-menu:not([hidden])
.rpe-gh-appearance-option[data-rpe-appearance-option="dark"],
.rpe-gh-appearance-menu:not([hidden])
.rpe-gh-appearance-option[data-rpe-appearance-option="light"],
.rpe-gh-appearance-menu:not([hidden])
.rpe-gh-appearance-option[data-rpe-appearance-option="system"]{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* Prevent listing-detail/global button rules from hiding inactive rows. */
.rpe-gh-appearance-menu:not([hidden]) .rpe-gh-appearance-option:not(.is-active){
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}

/* Public Preview remains interactive. */
body.rpe-ds-preview .rpe-gh-appearance-wrap,
body.rpe-ds-preview .rpe-gh-appearance-wrap *,
body.rpe-ds-preview .rpe-gh-appearance-menu{
  pointer-events:auto!important;
}


/* ==========================================================================
 * 5.0.0X.4.5.0 — Universal Header Appearance Ownership Boundary
 * ========================================================================== */

/* Appearance choices are header menu rows, not generic page-template buttons.
   This prevents Detail/Directory/other template button rules from suppressing
   inactive modes while preserving the one Universal Header architecture. */
.rpe-global-header .rpe-gh-appearance-menu .rpe-gh-appearance-option,
[data-rpe-global-header] .rpe-gh-appearance-menu .rpe-gh-appearance-option,
.rpe-universal-header .rpe-gh-appearance-menu .rpe-gh-appearance-option,
.rpe-universal-header-component .rpe-gh-appearance-menu .rpe-gh-appearance-option{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) 18px!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  min-height:54px!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:8px 9px!important;
  box-sizing:border-box!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  color:var(--rpe-text)!important;
  -webkit-text-fill-color:currentColor!important;
  text-align:left!important;
  text-decoration:none!important;
  visibility:visible!important;
  opacity:1!important;
  overflow:visible!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

/* Explicitly keep every canonical mode row visible whenever the Universal
   Header menu is open. No page-template selector is part of this contract. */
.rpe-gh-appearance-menu:not([hidden]) > .rpe-gh-appearance-option[
  data-rpe-appearance-option="dark"
],
.rpe-gh-appearance-menu:not([hidden]) > .rpe-gh-appearance-option[
  data-rpe-appearance-option="light"
],
.rpe-gh-appearance-menu:not([hidden]) > .rpe-gh-appearance-option[
  data-rpe-appearance-option="system"
]{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}

/* Keyboard focus parity now that rows are semantic menu items rather than
   generic buttons. */
.rpe-gh-appearance-menu .rpe-gh-appearance-option:focus-visible{
  outline:2px solid color-mix(in srgb,var(--rpe-brand-red) 70%,transparent)!important;
  outline-offset:1px!important;
  background:var(--rpe-control-hover)!important;
}

/* Header-owned text hierarchy. */
.rpe-gh-appearance-menu .rpe-gh-appearance-option-copy strong{
  display:block!important;
  color:var(--rpe-title)!important;
  -webkit-text-fill-color:var(--rpe-title)!important;
}
.rpe-gh-appearance-menu .rpe-gh-appearance-option-copy small{
  display:block!important;
  color:var(--rpe-text-muted)!important;
  -webkit-text-fill-color:var(--rpe-text-muted)!important;
}

/* Only the check mark changes with active state; inactive rows remain present. */
.rpe-gh-appearance-menu .rpe-gh-appearance-check{
  opacity:0!important;
}
.rpe-gh-appearance-menu .rpe-gh-appearance-option.is-active .rpe-gh-appearance-check{
  opacity:1!important;
}


/* 5.0.0X.4.5.1 — Header menus are allowed to paint outside template rows. */
.rpe-ds-render[data-template="directory-detail-page"]
> section[data-component="global-header"]{
  overflow:visible!important;
  z-index:1000000!important;
}


/* 5.0.0X.4.5.2 — Universal Header Search Legibility Contract
   Header search is a white control in every mode; typed text remains dark. */
html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-search.rpe-search-component{
  background:#fff!important;
  border-color:#dce2e8!important;
  color:#101820!important;
}
html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-search.rpe-search-component input[type="search"],
html[data-rpe-appearance] .rpe-global-header .rpe-gh-search.rpe-search-component input[type="search"]{
  background:transparent!important;
  color:#101820!important;
  -webkit-text-fill-color:#101820!important;
  caret-color:#101820!important;
  opacity:1!important;
}
html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-search.rpe-search-component input[type="search"]::placeholder,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-search.rpe-search-component input[type="search"]::placeholder{
  color:#758292!important;
  -webkit-text-fill-color:#758292!important;
  opacity:1!important;
}
html[data-rpe-appearance] .rpe-universal-header-component .rpe-gh-search.rpe-search-component > svg{
  color:#65717f!important;
}


/* ==========================================================================
 * 5.0.0X.4.5.3 — Detail Listing Light-Mode Information Legibility Contract
 * ========================================================================== */

/* Detail identity metadata: category / price / neighborhood. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-meta{
  color:#536171!important;
  -webkit-text-fill-color:#536171!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-meta strong{
  color:#263241!important;
  -webkit-text-fill-color:#263241!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-meta span{
  color:#8792a0!important;
  -webkit-text-fill-color:#8792a0!important;
}

/* Rating value beside the golden pentagons. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-rating{
  color:#263241!important;
  -webkit-text-fill-color:#263241!important;
}

/* Contact field labels remain restrained, but readable. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact small{
  color:#687587!important;
  -webkit-text-fill-color:#687587!important;
}

/* Address, phone and opening-hours values are primary information. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact strong,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact a:not(.is-website):not(.is-social),
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-value{
  color:#172131!important;
  -webkit-text-fill-color:#172131!important;
}

/* Quiet informational/location glyphs need enough contrast on white. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-icon,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-icon.rpe-native-location-pin{
  color:#6d7988!important;
  -webkit-text-fill-color:#6d7988!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-icon svg{
  stroke:currentColor!important;
}

/* Social controls are muted-dark; website remains the Rumanji accent. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-web-social-links a:not(.is-website){
  color:#7a8796!important;
  -webkit-text-fill-color:#7a8796!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-web-social-links .is-social{
  color:#7a8796!important;
  -webkit-text-fill-color:#7a8796!important;
  border-color:rgba(15,23,42,.13)!important;
  background:rgba(255,255,255,.46)!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-web-social-links .is-website,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-web-social-links .is-website span{
  color:#ef233c!important;
  -webkit-text-fill-color:#ef233c!important;
}

/* Light-mode internal information separators must not use white-on-white lines. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-grid,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-online,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-details,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-info,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-web-social,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-line + .rpe-directory-summary-contact-line{
  border-color:rgba(15,23,42,.10)!important;
}

/* Preserve semantic accents. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-status.is-open,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-status.is-open{
  color:#10984b!important;
  -webkit-text-fill-color:#10984b!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-status.is-closed,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-status.is-closed{
  color:#e22a3d!important;
  -webkit-text-fill-color:#e22a3d!important;
}

/* Gold semantic tags remain gold but gain sufficient Light Mode contrast. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-tags span{
  color:#9a620d!important;
  -webkit-text-fill-color:#9a620d!important;
  border-color:rgba(154,98,13,.30)!important;
  background:rgba(255,183,45,.15)!important;
}


/* 5.0.0X.4.5.4 — Detail page may not horizontally inset the Universal Header. */
.rpe-ds-render[data-template="directory-detail-page"]
> section[data-component="global-header"]{
  margin-left:calc(var(--rpe-detail-page-gutter) * -1)!important;
  margin-right:calc(var(--rpe-detail-page-gutter) * -1)!important;
  width:calc(100% + (var(--rpe-detail-page-gutter) * 2))!important;
  overflow:visible!important;
}


/* ==========================================================================
 * 5.0.0X.4.5.6 — Review Component Light-Mode Contrast Contract
 * ========================================================================== */

html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-rating-value,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-reviews-average,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-summary-score,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] [data-rpe-review-score]{
  color:#121a27!important;
  -webkit-text-fill-color:#121a27!important;
  opacity:1!important;
}

html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-count,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-reviews-count,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-summary-meta{
  color:#667385!important;
  -webkit-text-fill-color:#667385!important;
  opacity:1!important;
}

html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-write,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-cta,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-empty-cta,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] [data-rpe-write-review],
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] a[href*="review"],
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] button[class*="review"]{
  color:#172131!important;
  -webkit-text-fill-color:#172131!important;
  border-color:rgba(239,35,60,.52)!important;
  background:rgba(255,255,255,.70)!important;
  opacity:1!important;
}

html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-empty h3,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-empty-title,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-empty strong{
  color:#172131!important;
  -webkit-text-fill-color:#172131!important;
}

html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-empty p,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-empty-copy{
  color:#5f6c7d!important;
  -webkit-text-fill-color:#5f6c7d!important;
}

html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-pentagon-rating,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-review-pentagon,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"] .rpe-rating-pentagon{
  color:#e5a62f!important;
  -webkit-text-fill-color:#e5a62f!important;
  opacity:1!important;
}


/* ==========================================================================
 * 5.0.0X.4.5.7 — Exact Review Score Light-Mode Contrast Fix
 * The numeric average is rendered as .rpe-review-score > strong.
 * ========================================================================== */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"]
.rpe-review-intelligence .rpe-review-score > strong,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="directory-detail-page"]
[data-rpe-review-intelligence] .rpe-review-score > strong{
  color:#121a27!important;
  -webkit-text-fill-color:#121a27!important;
  opacity:1!important;
  text-shadow:none!important;
}


/* 5.0.0X.4.5.8 — Detail gallery 4:3 main/thumbnail crop parity. */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-gallery-main{
  aspect-ratio:4 / 3!important;
  height:auto!important;
}


/* 5.0.0X.4.5.9 — Detail gallery focal parity authority. */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-gallery-main img,
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-gallery-thumb img{
  object-position:center center!important;
}


/* ==========================================================================
 * 5.0.0X.4.6.0 — Unrated Business Reputation State
 * Preserve the five-pentagon identity even before the first review.
 * Empty pentagons use a true gold outline and no filled center.
 * ========================================================================== */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-reputation.is-unrated{
  gap:9px!important;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-pentagon.is-empty{
  position:relative!important;
  background:#e3a53a!important;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-pentagon.is-empty::after{
  content:""!important;
  position:absolute!important;
  inset:2px!important;
  clip-path:inherit!important;
  background:var(--rpe-surface,#f7f8fa)!important;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-pentagon.is-empty b{
  opacity:0!important;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-no-reviews{
  color:var(--rpe-text,#111827)!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-pentagon.is-empty::after{
  background:var(--rpe-surface,#111820)!important;
}


/* ==========================================================================
 * 5.0.0Y — Native Real Estate Experience Integration
 * Shared semantic surface + property-card contracts.
 * ========================================================================== */
.rpe-ds-render[data-template="real-estate-category-page"]{
  --rpe-property-card-bg:rgba(255,255,255,.70);
  --rpe-property-card-text:#121a27;
  --rpe-property-card-muted:#677487;
  --rpe-property-border:rgba(17,24,39,.10);
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="real-estate-category-page"]{
  --rpe-property-card-bg:rgba(13,18,25,.72);
  --rpe-property-card-text:#f7f8fb;
  --rpe-property-card-muted:#a6b0bf;
  --rpe-property-border:rgba(255,255,255,.12);
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-real-estate-filter-bar{
  display:grid;
  grid-template-columns:minmax(180px,.9fr) minmax(210px,1fr) minmax(210px,1fr) auto auto;
  gap:14px;
  align-items:end;
  padding:22px 24px;
  background:transparent;
}
.rpe-real-estate-filter-heading span,
.rpe-real-estate-filter-bar label>span,
.rpe-real-estate-results-toolbar label>span{
  display:block;
  margin-bottom:7px;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.16em;
  color:var(--rpe-property-card-muted);
}
.rpe-real-estate-filter-heading strong{
  display:block;
  font-size:24px;
  color:var(--rpe-property-card-text);
}
.rpe-real-estate-filter-bar select,
.rpe-real-estate-results-toolbar select{
  width:100%;
  min-height:44px;
  border:1px solid var(--rpe-property-border);
  border-radius:10px;
  padding:0 12px;
  background:var(--rpe-property-card-bg);
  color:var(--rpe-property-card-text);
}
.rpe-real-estate-filter-bar button,
.rpe-real-estate-filter-clear{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 18px;
  border-radius:10px;
  font-weight:800;
  text-decoration:none;
}
.rpe-real-estate-filter-bar button{
  border:1px solid #ef233c;
  background:#ef233c;
  color:#fff;
}
.rpe-real-estate-filter-clear{
  border:1px solid var(--rpe-property-border);
  color:var(--rpe-property-card-text);
  background:transparent;
}
.rpe-real-estate-results-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 22px;
}
.rpe-real-estate-results-toolbar>div{
  color:var(--rpe-property-card-muted);
}
.rpe-real-estate-results-toolbar>div strong{
  color:var(--rpe-property-card-text);
  font-size:18px;
}
.rpe-real-estate-results-toolbar form{
  min-width:230px;
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-ds-runtime-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
}
.rpe-property-card{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--rpe-property-border);
  border-radius:22px;
  background:var(--rpe-property-card-bg);
  backdrop-filter:blur(18px) saturate(120%);
  -webkit-backdrop-filter:blur(18px) saturate(120%);
  box-shadow:0 14px 34px rgba(11,18,28,.06);
}
.rpe-property-card-main{
  display:block;
  height:100%;
  color:inherit;
  text-decoration:none;
}
.rpe-property-card-media{
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  background:rgba(127,127,127,.08);
}
.rpe-property-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.rpe-property-card-placeholder{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  font-size:58px;
  color:#ef233c;
}
.rpe-property-card-price{
  position:absolute;
  left:14px;
  bottom:14px;
  max-width:calc(100% - 28px);
  padding:8px 11px;
  border-radius:10px;
  background:rgba(8,13,20,.80);
  color:#fff;
  font-size:17px;
  line-height:1;
  backdrop-filter:blur(10px);
}
.rpe-property-card-copy{
  display:flex;
  min-height:220px;
  flex-direction:column;
  padding:18px;
}
.rpe-property-card-kicker{
  color:#ef233c;
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.rpe-property-card h3{
  margin:7px 0 8px;
  color:var(--rpe-property-card-text)!important;
  -webkit-text-fill-color:var(--rpe-property-card-text)!important;
  font-size:22px;
  line-height:1.05;
}
.rpe-property-card-address{
  margin:0 0 14px;
  color:var(--rpe-property-card-muted);
  line-height:1.45;
}
.rpe-property-card-facts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
  padding-top:10px;
}
.rpe-property-card-facts span{
  padding:7px 9px;
  border:1px solid var(--rpe-property-border);
  border-radius:8px;
  color:var(--rpe-property-card-muted);
  font-size:12px;
}
.rpe-property-card-facts b{
  color:var(--rpe-property-card-text);
}
.rpe-property-card-action{
  display:inline-flex;
  gap:7px;
  align-items:center;
  margin-top:16px;
  color:var(--rpe-property-card-text);
  font-weight:800;
}
.rpe-real-estate-pagination{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:28px;
}
.rpe-real-estate-pagination a{
  display:grid;
  place-items:center;
  min-width:42px;
  height:42px;
  border:1px solid var(--rpe-property-border);
  border-radius:10px;
  color:var(--rpe-property-card-text);
  text-decoration:none;
}
.rpe-real-estate-pagination a.is-current{
  border-color:#ef233c;
  background:#ef233c;
  color:#fff;
}
.rpe-real-estate-empty-results{
  padding:48px 0;
  color:var(--rpe-property-card-muted);
  font-size:18px;
}
@media(max-width:1100px){
  .rpe-ds-render[data-template="real-estate-category-page"] .rpe-ds-runtime-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rpe-ds-render[data-template="real-estate-category-page"] .rpe-real-estate-filter-bar{grid-template-columns:1fr 1fr;}
  .rpe-real-estate-filter-heading{grid-column:1/-1;}
}
@media(max-width:680px){
  .rpe-ds-render[data-template="real-estate-category-page"] .rpe-ds-runtime-grid{grid-template-columns:1fr;}
  .rpe-ds-render[data-template="real-estate-category-page"] .rpe-real-estate-filter-bar{grid-template-columns:1fr;padding:18px 0;}
  .rpe-real-estate-results-toolbar{align-items:flex-start;flex-direction:column;}
  .rpe-real-estate-results-toolbar form{width:100%;min-width:0;}
}


/* ================================================================
 * 5.0.0Y.7 — Property Card Media Carousel & Lazy Gallery Runtime
 * ================================================================ */
.rpe-property-card{display:flex;flex-direction:column}
.rpe-property-card-main{flex:1}
.rpe-property-card-media-link,.rpe-property-card-slides{display:block;width:100%;height:100%}
.rpe-property-card-slides{position:relative}
.rpe-property-card-slide{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;display:block;opacity:0;visibility:hidden;transition:opacity .22s ease;will-change:opacity}
.rpe-property-card-slide.is-active{opacity:1;visibility:visible;z-index:1}
.rpe-property-card-carousel-nav{
  position:absolute;top:50%;z-index:4;display:grid;place-items:center;width:38px;height:46px;padding:0;
  transform:translateY(-50%);border:1px solid rgba(255,255,255,.34);border-radius:12px;
  background:rgba(8,13,20,.42);color:#fff;font:700 27px/1 system-ui,sans-serif;cursor:pointer;
  opacity:0;transition:opacity .18s ease,background .18s ease,transform .18s ease;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.rpe-property-card-carousel-nav.is-prev{left:12px}.rpe-property-card-carousel-nav.is-next{right:12px}
.rpe-property-card-media.has-carousel:hover .rpe-property-card-carousel-nav,
.rpe-property-card-carousel-nav:focus-visible{opacity:1}
.rpe-property-card-carousel-nav:hover{background:rgba(8,13,20,.66)}
.rpe-property-card-carousel-nav:active{transform:translateY(-50%) scale(.96)}
.rpe-property-card-carousel-count{
  position:absolute;right:12px;bottom:12px;z-index:4;padding:6px 8px;border-radius:9px;
  background:rgba(8,13,20,.68);color:#fff;font-size:11px;font-weight:700;line-height:1;
  letter-spacing:.02em;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)
}
.rpe-property-card-media.has-carousel .rpe-property-card-price{z-index:4}
@media (hover:none),(max-width:782px){.rpe-property-card-carousel-nav{opacity:.88;width:36px;height:44px}}
@media (prefers-reduced-motion:reduce){.rpe-property-card-slide,.rpe-property-card-carousel-nav{transition:none}}

/* ================================================================
 * 5.0.0Y.8 — Property Card Information Architecture & Premium Presentation
 * ================================================================ */
.rpe-property-card-price{
  display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid rgba(255,255,255,.16);
  border-radius:11px;background:rgba(8,13,20,.68);box-shadow:0 5px 18px rgba(0,0,0,.14);
  font-size:16px;font-weight:800;letter-spacing:-.015em;white-space:nowrap
}
.rpe-property-card-carousel-count{
  min-height:28px;display:inline-flex;align-items:center;padding:6px 9px;border:1px solid rgba(255,255,255,.14);
  border-radius:10px;background:rgba(8,13,20,.62);box-shadow:0 5px 18px rgba(0,0,0,.12)
}
.rpe-property-card-copy{padding:19px 19px 18px;min-height:224px}
.rpe-property-card-kicker{font-size:10.5px;letter-spacing:.12em;line-height:1.35}
.rpe-property-card h3{margin:8px 0 8px;font-size:20px;line-height:1.15;letter-spacing:-.018em}
.rpe-property-card-address{display:flex;align-items:flex-start;gap:7px;margin:0 0 13px;font-size:13px;line-height:1.4}
.rpe-property-card-location-icon{flex:0 0 auto;margin-top:1px;color:#ef233c;font-size:15px;font-weight:800;line-height:1}
.rpe-property-card-facts{gap:7px;padding-top:12px}
.rpe-property-card-facts span{
  display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid var(--rpe-property-border);
  border-radius:10px;background:rgba(255,255,255,.14);font-size:11.5px;line-height:1;white-space:nowrap;
  backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)
}
[data-rpe-theme="dark"] .rpe-property-card-facts span,.rpe-appearance-dark .rpe-property-card-facts span{background:rgba(255,255,255,.035)}
.rpe-property-card-facts span i{display:inline-grid;place-items:center;min-width:12px;color:#ef233c;font-style:normal;font-size:11px;font-weight:800}
.rpe-property-card-facts b{font-size:12px;font-weight:800}
.rpe-property-card-action{justify-content:space-between;width:100%;margin-top:15px;padding-top:13px;border-top:1px solid var(--rpe-property-border);font-size:13px;font-weight:800}
.rpe-property-card-action i{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--rpe-property-border);border-radius:9px;background:rgba(255,255,255,.10);font-style:normal;transition:transform .16s ease,border-color .16s ease}
.rpe-property-card-main:hover .rpe-property-card-action i{transform:translate(2px,-2px);border-color:rgba(239,35,60,.5)}
@media(max-width:680px){.rpe-property-card-copy{min-height:210px}.rpe-property-card h3{font-size:19px}}

/* =========================================================
 * 5.0.0Y.8.1 — Property Semantic Iconography & Location Visual Contract
 * ========================================================= */
.rpe-property-semantic-icon{display:block;width:15px;height:15px;overflow:visible}
.rpe-property-card-location-icon{
  display:inline-grid;place-items:center;flex:0 0 16px;width:16px;height:16px;margin-top:1px;
  color:var(--rpe-property-card-muted);font-size:0;font-weight:400;line-height:1
}
.rpe-property-card-location-icon .rpe-property-semantic-icon{width:15px;height:15px}
.rpe-property-card-facts span i{
  display:inline-grid;place-items:center;flex:0 0 16px;width:16px;height:16px;min-width:16px;
  color:var(--rpe-property-card-muted);font-style:normal;font-size:0;font-weight:400;line-height:1
}
.rpe-property-card-facts span i .rpe-property-semantic-icon{width:15px;height:15px}
.rpe-property-card-facts span.is-beds i .rpe-property-semantic-icon{width:16px;height:16px}
.rpe-property-card-facts span.is-baths i .rpe-property-semantic-icon{width:16px;height:16px}


/* 5.0.0Z — Native Jobs Category Experience */
.rpe-jobs-filter-bar{display:grid;grid-template-columns:minmax(190px,.8fr) repeat(3,minmax(190px,1fr)) auto;gap:14px;align-items:end;padding:24px 32px;max-width:100%;box-sizing:border-box}
.rpe-jobs-filter-heading{display:flex;flex-direction:column;gap:4px}.rpe-jobs-filter-heading span,.rpe-jobs-filter-bar label>span,.rpe-jobs-sort-control>span{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--rpe-muted,#6b778b)}.rpe-jobs-filter-heading strong{font-size:22px}.rpe-jobs-filter-bar label{display:flex;flex-direction:column;gap:7px}.rpe-jobs-filter-bar select{height:46px;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:10px;background:var(--rpe-color-surface,#fff);color:var(--rpe-color-text,#111827);padding:0 13px}.rpe-jobs-filter-clear{display:inline-flex;height:46px;align-items:center;justify-content:center;padding:0 20px;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:10px;text-decoration:none;color:inherit;font-weight:700}.rpe-jobs-filter-actions{display:flex;gap:8px;align-items:center}.rpe-jobs-filter-actions button{height:46px;padding:0 20px;border:0;border-radius:10px;background:#ef233c;color:#fff;font-weight:800;cursor:pointer}
.rpe-jobs-results-toolbar{display:flex;justify-content:space-between;align-items:center;margin:0 0 24px}.rpe-jobs-results-summary{font-size:16px;color:var(--rpe-muted,#6b778b)}.rpe-jobs-results-summary strong{font-size:20px;color:var(--rpe-color-text,#111827)}.rpe-jobs-sort-control{display:flex;align-items:center;gap:10px}.rpe-jobs-sort-control select{height:40px;border-radius:9px;padding:0 12px;background:var(--rpe-color-surface,#fff);color:inherit;border:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.rpe-ds-render-collection-grid[data-component="collection-grid"] .rpe-ds-collection-grid:has(.rpe-job-card){grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rpe-job-card{border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:16px;background:color-mix(in srgb,var(--rpe-color-surface,#fff) 94%,transparent);overflow:hidden;box-shadow:0 12px 32px rgba(15,23,42,.06);min-width:0}.rpe-job-card-main{display:flex;flex-direction:column;gap:17px;padding:22px;height:100%;box-sizing:border-box;text-decoration:none;color:inherit}.rpe-job-card-top{display:flex;gap:15px;align-items:flex-start}.rpe-job-card-logo{width:58px;height:58px;flex:0 0 58px;border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,currentColor 10%,transparent);background:color-mix(in srgb,currentColor 5%,transparent);display:grid;place-items:center;font-weight:900}.rpe-job-card-logo img{width:100%;height:100%;object-fit:cover}.rpe-job-card-heading{min-width:0}.rpe-job-card-kicker{display:block;color:#ef233c;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin:1px 0 6px}.rpe-job-card h3{font-size:21px;line-height:1.12;margin:0 0 7px}.rpe-job-card-company{font-size:14px;color:var(--rpe-muted,#6b778b)}.rpe-job-card-location{display:flex;gap:8px;margin:0;color:var(--rpe-muted,#6b778b);font-size:14px;line-height:1.4}.rpe-job-card-location svg{width:16px;height:16px;fill:currentColor;flex:0 0 16px;margin-top:2px}.rpe-job-card-tags{display:flex;gap:8px;flex-wrap:wrap}.rpe-job-card-tags span{border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:8px;padding:7px 10px;font-size:12px;font-weight:700}.rpe-job-card-tags .is-salary{color:#ef233c}.rpe-job-card-excerpt{font-size:14px;line-height:1.5;color:var(--rpe-muted,#6b778b);margin:0}.rpe-job-card-action{margin-top:auto;padding-top:14px;border-top:1px solid color-mix(in srgb,currentColor 10%,transparent);font-weight:800;display:flex;justify-content:space-between;align-items:center}.rpe-job-card-action i{font-style:normal}.rpe-jobs-pagination{display:flex;gap:8px;justify-content:center;margin:32px 0}.rpe-jobs-pagination a,.rpe-jobs-pagination span{min-width:40px;height:40px;border-radius:10px;display:grid;place-items:center;text-decoration:none;color:inherit;border:1px solid color-mix(in srgb,currentColor 12%,transparent)}.rpe-jobs-pagination a.is-current{background:#ef233c;color:#fff;border-color:#ef233c}.rpe-jobs-empty-results{padding:80px 20px;text-align:center;color:var(--rpe-muted,#6b778b)}
@media(max-width:1100px){.rpe-jobs-filter-bar{grid-template-columns:1fr 1fr}.rpe-ds-render-collection-grid[data-component="collection-grid"] .rpe-ds-collection-grid:has(.rpe-job-card){grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.rpe-jobs-filter-bar{grid-template-columns:1fr;padding:20px}.rpe-ds-render-collection-grid[data-component="collection-grid"] .rpe-ds-collection-grid:has(.rpe-job-card){grid-template-columns:1fr}.rpe-jobs-results-toolbar{align-items:flex-start;gap:14px;flex-direction:column}}

/* 5.0.0Z.4 — Jobs tri-view collection + interactive map parity */
.rpe-jobs-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 24px}.rpe-jobs-results-actions{display:flex;align-items:center;gap:14px}.rpe-jobs-view-toggle{display:flex;gap:6px}.rpe-jobs-view-toggle button{width:46px;height:46px;border:1px solid color-mix(in srgb,currentColor 13%,transparent);border-radius:12px;background:color-mix(in srgb,var(--rpe-color-surface,#fff) 90%,transparent);color:inherit;display:grid;place-items:center;cursor:pointer}.rpe-jobs-view-toggle button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.rpe-jobs-view-toggle button:first-child svg{fill:currentColor;stroke:none}.rpe-jobs-view-toggle button.is-active{background:#111c2b;color:#fff;border-color:#243348}.rpe-jobs-sort-control{display:flex;align-items:center;gap:10px}.rpe-jobs-sort-control>span{font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--rpe-muted,#6b778b)}.rpe-jobs-results-layout{display:block}.rpe-jobs-results-primary{min-width:0}.rpe-ds-runtime-grid.rpe-jobs-results-view-list{grid-template-columns:1fr!important;gap:16px!important}.rpe-jobs-results-view-list .rpe-job-card-main{display:grid;grid-template-columns:minmax(260px,38%) minmax(0,1fr);column-gap:28px;row-gap:12px;align-items:start;min-height:210px}.rpe-jobs-results-view-list .rpe-job-card-top{grid-row:1/4;align-self:start}.rpe-jobs-results-view-list .rpe-job-card-location{grid-column:2}.rpe-jobs-results-view-list .rpe-job-card-tags{grid-column:2}.rpe-jobs-results-view-list .rpe-job-card-excerpt{grid-column:2}.rpe-jobs-results-view-list .rpe-job-card-action{grid-column:1/-1}.rpe-ds-runtime-grid.rpe-jobs-results-view-map{display:none!important}.rpe-jobs-map-shell{position:relative;height:690px;min-height:690px;border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:22px;overflow:hidden;background:color-mix(in srgb,var(--rpe-color-surface,#fff) 92%,transparent)}.rpe-jobs-map-canvas{width:100%;height:100%;min-height:690px}.rpe-jobs-map-empty,.rpe-jobs-map-runtime-error{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:30px;text-align:center;background:color-mix(in srgb,var(--rpe-color-surface,#fff) 94%,transparent);color:var(--rpe-muted,#6b778b)}.rpe-jobs-map-runtime-error strong{color:inherit;font-size:18px}.rpe-jobs-map-marker-icon{background:transparent!important;border:0!important}.rpe-jobs-map-marker-icon span{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:31px;padding:0 10px;border:2px solid #fff;border-radius:999px;background:#ef233c;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;box-shadow:0 5px 18px rgba(0,0,0,.25)}.rpe-jobs-map-popup .leaflet-popup-content-wrapper{padding:0;border-radius:16px;overflow:hidden}.rpe-jobs-map-popup .leaflet-popup-content{margin:0;width:330px!important}.rpe-jobs-map-card{padding:18px;color:#172033;background:#fff}.rpe-jobs-map-card-head{display:flex;align-items:flex-start;gap:12px}.rpe-jobs-map-card-logo{width:52px;height:52px;flex:0 0 52px;border-radius:11px;overflow:hidden;border:1px solid #e3e8ee;background:#eef1f5;display:grid;place-items:center;font-weight:900}.rpe-jobs-map-card-logo img{width:100%;height:100%;object-fit:cover}.rpe-jobs-map-card h3{margin:1px 0 5px;font-size:18px;line-height:1.15;color:#111827}.rpe-jobs-map-card-head strong{display:block;color:#526074;font-size:13px}.rpe-jobs-map-card-location{margin:14px 0 10px;color:#667085;font-size:13px;line-height:1.4}.rpe-jobs-map-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.rpe-jobs-map-card-tags span{padding:6px 8px;border:1px solid #dde3ea;border-radius:8px;font-size:11px;font-weight:700}.rpe-jobs-map-card-tags .is-salary{color:#ef233c}.rpe-jobs-map-card>a{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid #e5e9ef;color:#ef233c;font-weight:850;text-decoration:none}.rpe-jobs-results-layout.is-view-map .rpe-jobs-results-primary{width:100%}
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button.is-active,.rpe-appearance-dark .rpe-jobs-view-toggle button.is-active{background:#fff;color:#111827;border-color:#fff}
@media(max-width:900px){.rpe-jobs-results-view-list .rpe-job-card-main{grid-template-columns:1fr}.rpe-jobs-results-view-list .rpe-job-card-top,.rpe-jobs-results-view-list .rpe-job-card-location,.rpe-jobs-results-view-list .rpe-job-card-tags,.rpe-jobs-results-view-list .rpe-job-card-excerpt,.rpe-jobs-results-view-list .rpe-job-card-action{grid-column:1;grid-row:auto}.rpe-jobs-map-shell,.rpe-jobs-map-canvas{height:560px;min-height:560px}}@media(max-width:680px){.rpe-jobs-results-toolbar{display:block}.rpe-jobs-results-actions{margin-top:14px;justify-content:space-between;flex-wrap:wrap}.rpe-jobs-sort-control{flex:1}.rpe-jobs-sort-control select{width:100%;min-width:0}.rpe-jobs-map-shell,.rpe-jobs-map-canvas{height:500px;min-height:500px}}
/* 5.0.0Z.4.1 — deterministic Jobs client-side tri-view state */
.rpe-jobs-map-panel{display:none}
.rpe-jobs-results-layout.is-view-map .rpe-jobs-map-panel{display:block}
.rpe-jobs-results-layout.is-view-map .rpe-jobs-pagination{display:none!important}
.rpe-jobs-view-toggle button[aria-pressed="true"]{background:#111c2b;color:#fff;border-color:#243348}
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button[aria-pressed="true"],.rpe-appearance-dark .rpe-jobs-view-toggle button[aria-pressed="true"]{background:#fff;color:#111827;border-color:#fff}


/* 5.0.0Z.4.2 — Jobs Map Minicard Presentation, Entity Decoding & Tri-View Polish */
.rpe-jobs-map-popup .leaflet-popup-content-wrapper{border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:18px;box-shadow:0 18px 48px rgba(15,23,42,.18);background:var(--rpe-card,#fff);color:var(--rpe-color-text,#111827)}
.rpe-jobs-map-popup .leaflet-popup-content{width:318px!important;max-width:calc(100vw - 64px);line-height:1.35}
.rpe-jobs-map-popup .leaflet-popup-tip{background:var(--rpe-card,#fff);box-shadow:none}
.rpe-jobs-map-popup .leaflet-popup-close-button{top:8px!important;right:8px!important;width:28px!important;height:28px!important;border-radius:999px;color:var(--rpe-color-muted,#667085)!important;font-size:20px!important;line-height:27px!important}
.rpe-jobs-map-card{padding:18px;background:var(--rpe-card,#fff);color:var(--rpe-color-text,#111827)}
.rpe-jobs-map-card-head{gap:12px;padding-right:22px}
.rpe-jobs-map-card-head>div:last-child{min-width:0}
.rpe-jobs-map-card-logo{width:50px;height:50px;flex-basis:50px;border-color:var(--rpe-border,#e3e8ee);background:color-mix(in srgb,var(--rpe-color-text,#111827) 6%,transparent);color:var(--rpe-color-text,#111827)}
.rpe-jobs-map-card h3{margin:0 0 5px;font-size:18px;line-height:1.14;letter-spacing:-.015em;color:var(--rpe-color-text,#111827);overflow-wrap:anywhere}
.rpe-jobs-map-card-head strong{font-size:13px;line-height:1.35;color:var(--rpe-color-muted,#667085)}
.rpe-jobs-map-card-location{display:flex;align-items:flex-start;gap:5px;margin:13px 0 11px;font-size:13px;line-height:1.4;color:var(--rpe-color-muted,#667085)}
.rpe-jobs-map-card-tags{gap:6px;margin-bottom:13px}
.rpe-jobs-map-card-tags span{padding:6px 9px;border-color:var(--rpe-border,#dde3ea);background:color-mix(in srgb,var(--rpe-color-text,#111827) 3%,transparent);color:var(--rpe-color-text,#111827)}
.rpe-jobs-map-card-tags .is-salary{color:#ef233c}
.rpe-jobs-map-card>a{padding-top:12px;border-color:var(--rpe-border,#e5e9ef);color:#ef233c}
[data-rpe-appearance="dark"] .rpe-jobs-map-popup .leaflet-popup-content-wrapper,.rpe-appearance-dark .rpe-jobs-map-popup .leaflet-popup-content-wrapper,[data-rpe-appearance="dark"] .rpe-jobs-map-popup .leaflet-popup-tip,.rpe-appearance-dark .rpe-jobs-map-popup .leaflet-popup-tip,[data-rpe-appearance="dark"] .rpe-jobs-map-card,.rpe-appearance-dark .rpe-jobs-map-card{background:#111821;color:#f5f7fa}
[data-rpe-appearance="dark"] .rpe-jobs-map-card h3,.rpe-appearance-dark .rpe-jobs-map-card h3{color:#f5f7fa}
[data-rpe-appearance="dark"] .rpe-jobs-map-card-head strong,[data-rpe-appearance="dark"] .rpe-jobs-map-card-location,.rpe-appearance-dark .rpe-jobs-map-card-head strong,.rpe-appearance-dark .rpe-jobs-map-card-location{color:#aab4c3}
[data-rpe-appearance="dark"] .rpe-jobs-map-card-tags span,.rpe-appearance-dark .rpe-jobs-map-card-tags span{color:#f5f7fa;background:#171f2a;border-color:#2a3544}
.rpe-jobs-results-view-list .rpe-job-card-main{column-gap:32px;row-gap:11px;padding:22px 24px;min-height:196px}
.rpe-jobs-results-view-list .rpe-job-card-location{margin-top:2px}
.rpe-jobs-results-view-list .rpe-job-card-tags{align-items:center;align-self:start}
.rpe-jobs-results-view-list .rpe-job-card-action{padding-top:13px}
.rpe-jobs-view-toggle button{transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}
.rpe-jobs-view-toggle button:hover{transform:translateY(-1px)}
.rpe-jobs-view-toggle button:focus-visible{outline:2px solid #ef233c;outline-offset:2px}
@media(max-width:680px){.rpe-jobs-map-popup .leaflet-popup-content{width:280px!important}.rpe-jobs-map-card{padding:16px}.rpe-jobs-map-card h3{font-size:17px}}

/* 5.0.0Z.4.2.1 — Jobs tri-view dark-mode control parity */
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button,
.rpe-appearance-dark .rpe-jobs-view-toggle button{
  background:#0c1118;
  color:#8f9bad;
  border-color:#263241;
  box-shadow:none;
}
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button:hover,
.rpe-appearance-dark .rpe-jobs-view-toggle button:hover{
  background:#121a25;
  color:#f5f7fa;
  border-color:#35465b;
}
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button.is-active,
.rpe-appearance-dark .rpe-jobs-view-toggle button.is-active,
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button[aria-pressed="true"],
.rpe-appearance-dark .rpe-jobs-view-toggle button[aria-pressed="true"]{
  background:#111c2b;
  color:#ffffff;
  border-color:#34465d;
  box-shadow:0 8px 24px rgba(0,0,0,.22);
}
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button svg,
.rpe-appearance-dark .rpe-jobs-view-toggle button svg{
  opacity:.82;
}
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button.is-active svg,
.rpe-appearance-dark .rpe-jobs-view-toggle button.is-active svg,
[data-rpe-appearance="dark"] .rpe-jobs-view-toggle button[aria-pressed="true"] svg,
.rpe-appearance-dark .rpe-jobs-view-toggle button[aria-pressed="true"] svg{
  opacity:1;
}

/* 5.0.0Z.4.7 — Universal Interactive Surface Accent
 * One Rumanji interaction language across Global, Category, Detail and future
 * Search experiences. The accent is reserved for genuinely interactive
 * surfaces/controls; static facts, review bodies, contact/application cards and
 * other informational panels remain visually still.
 */
.rpe-ds-render :is(
  .rpe-fc-card,
  .rpe-city-card,
  .rpe-category-gateway-card,
  .rpe-directory-business-card,
  .rpe-directory-grid-card,
  .rpe-x-business-card,
  .rpe-ure-card,
  .rpe-pav-card,
  .rpe-community-card,
  .rpe-rumanji-neighbourhood-card,
  .rpe-job-card,
  .rpe-jobs-card,
  .rpe-job-related-card,
  .rpe-property-card,
  .rpe-real-estate-card,
  .rpe-property-related-card,
  .rpe-property-neighborhood-item,
  .rpe-event-card,
  .rpe-classified-card,
  .rpe-search-result-card,
  .rpe-result-card,
  .rpe-collection-card,
  [data-card-type],
  [data-content-card],
  [data-rpe-clickable-surface]
):is(:has(a[href]),a[href],[role="link"],[data-href],[data-url]),
.rpe-ds-render :is(
  button:not([disabled]),
  [role="button"]:not([aria-disabled="true"]),
  a[href][class*="button"],
  a[href][class*="-btn"],
  a[href][class*="action"],
  a[href][class*="control"],
  a[href][class*="toggle"],
  a[href][class*="cta"],
  summary
){
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease!important;
}

@media (hover:hover) and (pointer:fine){
  .rpe-ds-render :is(
    .rpe-fc-card,
    .rpe-city-card,
    .rpe-category-gateway-card,
    .rpe-directory-business-card,
    .rpe-directory-grid-card,
    .rpe-x-business-card,
    .rpe-ure-card,
    .rpe-pav-card,
    .rpe-community-card,
    .rpe-rumanji-neighbourhood-card,
    .rpe-job-card,
    .rpe-jobs-card,
    .rpe-job-related-card,
    .rpe-property-card,
    .rpe-real-estate-card,
    .rpe-property-related-card,
    .rpe-property-neighborhood-item,
    .rpe-event-card,
    .rpe-classified-card,
    .rpe-search-result-card,
    .rpe-result-card,
    .rpe-collection-card,
    [data-card-type],
    [data-content-card],
    [data-rpe-clickable-surface]
  ):is(:has(a[href]),a[href],[role="link"],[data-href],[data-url]):hover{
    border-color:#f5223b!important;
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(15,23,42,.08),inset 0 0 0 1px rgba(245,34,59,.18)!important;
  }

  .rpe-ds-render :is(
    button:not([disabled]),
    [role="button"]:not([aria-disabled="true"]),
    a[href][class*="button"],
    a[href][class*="-btn"],
    a[href][class*="action"],
    a[href][class*="control"],
    a[href][class*="toggle"],
    a[href][class*="cta"],
    summary
  ):hover{
    border-color:#f5223b!important;
    box-shadow:inset 0 0 0 1px rgba(245,34,59,.22)!important;
  }
}

.rpe-ds-render :is(
  .rpe-fc-card,
  .rpe-city-card,
  .rpe-category-gateway-card,
  .rpe-directory-business-card,
  .rpe-directory-grid-card,
  .rpe-x-business-card,
  .rpe-ure-card,
  .rpe-pav-card,
  .rpe-community-card,
  .rpe-rumanji-neighbourhood-card,
  .rpe-job-card,
  .rpe-jobs-card,
  .rpe-job-related-card,
  .rpe-property-card,
  .rpe-real-estate-card,
  .rpe-property-related-card,
  .rpe-property-neighborhood-item,
  .rpe-event-card,
  .rpe-classified-card,
  .rpe-search-result-card,
  .rpe-result-card,
  .rpe-collection-card,
  [data-card-type],
  [data-content-card],
  [data-rpe-clickable-surface]
):is(:has(a[href]),a[href],[role="link"],[data-href],[data-url]):focus-within,
.rpe-ds-render :is(
  button:not([disabled]),
  [role="button"]:not([aria-disabled="true"]),
  a[href][class*="button"],
  a[href][class*="-btn"],
  a[href][class*="action"],
  a[href][class*="control"],
  a[href][class*="toggle"],
  a[href][class*="cta"],
  summary
):focus-visible{
  border-color:#f5223b!important;
  outline:2px solid rgba(245,34,59,.28);
  outline-offset:2px;
}



/* 5.0.0AB.2 — Homepage featured collection expansion + motion/navigation parity */
.rpe-featured-collection--real_estate,
.rpe-featured-collection--jobs,
.rpe-featured-collection--classifieds{box-sizing:border-box!important;width:100%!important;max-width:1440px!important;margin:0 auto!important;padding:72px 32px!important;--fc-gap:18px!important;overflow:hidden!important}
.rpe-featured-collection--real_estate .rpe-fc-header,
.rpe-featured-collection--jobs .rpe-fc-header,
.rpe-featured-collection--classifieds .rpe-fc-header{max-width:none!important;margin:0 0 28px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:28px!important}
.rpe-featured-collection .rpe-fc-head-actions{display:flex!important;align-items:center!important;gap:14px!important;flex:0 0 auto!important}
.rpe-featured-collection .rpe-fc-head-nav{display:flex!important;align-items:center!important;gap:8px!important}
.rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav{position:static!important;inset:auto!important;transform:none!important;width:44px!important;height:44px!important;border-radius:12px!important;display:grid!important;place-items:center!important;box-shadow:none!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav{background:#151a22!important;border:1px solid #3a4350!important;color:#f8fafc!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav:not([disabled]):hover,
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav:not([disabled]):focus-visible{background:#1d2430!important;border-color:#ef233c!important;color:#fff!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav[disabled]{background:#11161d!important;border-color:#28313d!important;color:#7f8a99!important;opacity:.72!important}
.rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav svg{width:20px!important;height:20px!important;stroke:currentColor!important;fill:none!important;stroke-width:2!important}
.rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav--prev svg{transform:rotate(180deg)!important}
.rpe-featured-collection--real_estate .rpe-fc-track,
.rpe-featured-collection--jobs .rpe-fc-track,
.rpe-featured-collection--classifieds .rpe-fc-track{display:flex!important;gap:18px!important;overflow-x:auto!important;scrollbar-width:none!important;scroll-snap-type:none!important}
.rpe-featured-collection--real_estate .rpe-fc-track::-webkit-scrollbar,
.rpe-featured-collection--jobs .rpe-fc-track::-webkit-scrollbar,
.rpe-featured-collection--classifieds .rpe-fc-track::-webkit-scrollbar{display:none!important}
.rpe-featured-collection--real_estate .rpe-fc-card,
.rpe-featured-collection--jobs .rpe-fc-card,
.rpe-featured-collection--classifieds .rpe-fc-card{flex:0 0 calc((100% - 54px)/4)!important;min-width:0!important}
.rpe-fc-transaction-tabs{margin:0 0 26px!important}
.rpe-fc-transaction-tabs .rpe-fc-tab{min-width:120px!important;justify-content:center!important}
@media(max-width:980px){.rpe-featured-collection--real_estate .rpe-fc-card,.rpe-featured-collection--jobs .rpe-fc-card,.rpe-featured-collection--classifieds .rpe-fc-card{flex-basis:calc((100% - 18px)/2)!important}}
@media(max-width:640px){.rpe-featured-collection--real_estate,.rpe-featured-collection--jobs,.rpe-featured-collection--classifieds{padding:52px 18px!important}.rpe-featured-collection--real_estate .rpe-fc-card,.rpe-featured-collection--jobs .rpe-fc-card,.rpe-featured-collection--classifieds .rpe-fc-card{flex-basis:88%!important}.rpe-featured-collection .rpe-fc-header{align-items:flex-start!important;flex-direction:column!important}.rpe-featured-collection .rpe-fc-head-actions{width:100%!important;justify-content:space-between!important}}



/* 5.0.0AB.2.1 — Featured Collection Runtime & Appearance Reconciliation */
.rpe-featured-collection .rpe-fc-progress{display:none!important}
.rpe-featured-collection--real_estate .rpe-fc-tabs.rpe-fc-transaction-tabs{display:flex!important;width:max-content!important;gap:8px!important;margin:0 0 28px!important;padding:0!important;background:transparent!important;border:0!important}
.rpe-featured-collection--real_estate .rpe-fc-transaction-tabs .rpe-fc-tab{min-width:126px!important;min-height:42px!important;padding:10px 18px!important;border-radius:999px!important;border:1px solid var(--rpe-border,#d8dee7)!important;background:var(--rpe-surface,#fff)!important;color:var(--rpe-text,#101828)!important;font-weight:750!important;box-shadow:none!important}
.rpe-featured-collection--real_estate .rpe-fc-transaction-tabs .rpe-fc-tab.is-active{background:#ef233c!important;border-color:#ef233c!important;color:#fff!important}
.rpe-featured-collection--real_estate .rpe-fc-card,
.rpe-featured-collection--jobs .rpe-fc-card,
.rpe-featured-collection--classifieds .rpe-fc-card{opacity:1!important;filter:none!important;mix-blend-mode:normal!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds{background:#090d12!important;color:#f8fafc!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-header h2,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-header h2,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-header h2,
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-view-all,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-view-all,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-view-all{color:#f8fafc!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-header p,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-header p,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-header p{color:#aab4c2!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-card,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-card,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-card,
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-body,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-body,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-body{background:#0e131a!important;border-color:#27303b!important;color:#f8fafc!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-card h3,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-card h3,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-card h3,
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-action,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-action,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-action{color:#fff!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-meta,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-meta,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-meta,
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-location,
html[data-rpe-appearance="dark"] .rpe-featured-collection--jobs .rpe-fc-location,
html[data-rpe-appearance="dark"] .rpe-featured-collection--classifieds .rpe-fc-location{color:#9ca8b8!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-transaction-tabs .rpe-fc-tab{background:#111720!important;border-color:#34404e!important;color:#dce3ec!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection--real_estate .rpe-fc-transaction-tabs .rpe-fc-tab.is-active{background:#ef233c!important;border-color:#ef233c!important;color:#fff!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav{background:#171e27!important;border-color:#566273!important;color:#fff!important;box-shadow:0 0 0 1px rgba(255,255,255,.035),0 7px 18px rgba(0,0,0,.22)!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav[disabled]{background:#11161d!important;border-color:#303946!important;color:#657182!important;opacity:.58!important}
html[data-rpe-appearance="dark"] .rpe-featured-collection .rpe-fc-head-nav .rpe-fc-nav:not([disabled]):hover{background:#222b37!important;border-color:#ef233c!important}


/* 5.0.0AE.10.5.54 — unified dark glass contact panel for Directory Detail. */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-grid--grouped{
  display:block!important;
  margin-top:20px!important;
  padding:0!important;
  border:0!important;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-glass{
  width:100%;
  box-sizing:border-box;
  overflow:hidden;
  border:1px solid rgba(148,163,184,.30);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(17,24,34,.91),rgba(8,11,16,.97));
  box-shadow:0 18px 48px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(18px) saturate(115%);
  -webkit-backdrop-filter:blur(18px) saturate(115%);
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-row{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:18px;
  align-items:center;
  min-height:84px;
  padding:16px 26px;
  box-sizing:border-box;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-row + .rpe-directory-summary-glass-row{
  border-top:1px solid rgba(148,163,184,.20);
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:12px;
  color:#e5e7eb;
  background:rgba(12,17,24,.56);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:7px;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content small{
  display:block;
  margin:0;
  color:#9aa6b6;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content strong,
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content > a,
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content .rpe-directory-summary-web-social-links{
  margin:0;
  color:#f4f7fb;
  font-size:15px;
  line-height:1.42;
  font-weight:650;
  text-decoration:none;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content .rpe-directory-summary-web-social-links{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content .is-website,
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content .is-website .rpe-online-domain{
  color:#ff2d45!important;
  -webkit-text-fill-color:#ff2d45!important;
  font-weight:750;
}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours{
  margin-top:12px;
}

html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-glass{
  border-color:rgba(15,23,42,.12)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(246,248,251,.97))!important;
  box-shadow:0 14px 34px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.7)!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-row + .rpe-directory-summary-glass-row{
  border-color:rgba(15,23,42,.10)!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-icon{
  color:#4f5d6e!important;
  background:rgba(248,250,252,.82)!important;
  border-color:rgba(15,23,42,.13)!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content small{
  color:#687587!important;
  -webkit-text-fill-color:#687587!important;
}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content strong,
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-content > a{
  color:#172131!important;
  -webkit-text-fill-color:#172131!important;
}
@media (max-width:720px){
  .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-row{
    grid-template-columns:44px minmax(0,1fr);
    gap:13px;
    min-height:72px;
    padding:14px 16px;
  }
  .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-glass-icon{
    width:40px;
    height:40px;
  }
}


/* 5.0.0AE.10.5.56 — Directory glass address icon tone parity.
 * The shared rpe-native-location-pin rule is intentionally red elsewhere,
 * but inside the Directory hero contact glass the Address icon must match
 * Phone and Online in dark mode. Light mode is unchanged. */
html[data-rpe-appearance="dark"]
.rpe-ds-render[data-template="directory-detail-page"]
.rpe-directory-summary-glass-icon.rpe-native-location-pin{
  color:#e5e7eb!important;
  -webkit-text-fill-color:#e5e7eb!important;
}
html[data-rpe-appearance="dark"]
.rpe-ds-render[data-template="directory-detail-page"]
.rpe-directory-summary-glass-icon.rpe-native-location-pin svg{
  stroke:currentColor!important;
}


/* 5.0.0AE.10.5.58 — Real Estate card subtitle + compact metrics lock.
 * Approved archive-card presentation:
 * - property/listing kicker uses Rumanji red in both appearances;
 * - Beds / Baths / Area stay on one compact line at desktop card widths. */
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-kicker{
  color:#ef233c!important;
  -webkit-text-fill-color:#ef233c!important;
  opacity:1!important;
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-facts{
  flex-wrap:nowrap!important;
  gap:6px!important;
  align-items:center!important;
  width:100%!important;
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-facts span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  min-width:0!important;
  padding:6px 7px!important;
  border-radius:7px!important;
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-facts span svg{
  width:13px!important;
  height:13px!important;
  flex:0 0 13px!important;
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-facts span b{
  font-size:11px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:680px){
  .rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-facts{
    flex-wrap:wrap!important;
  }
}


/* 5.0.0AE.10.5.59 — Classifieds hero gallery parity with Directory Detail.
 * Keep the existing Classifieds two-column composition, but make the media
 * stage use the same 4:3 main-image geometry as Directory Detail. */
.rpe-ds-render[data-template="classifieds-detail-page"]
section[data-component="classified-detail-gallery"] .rpe-directory-gallery{
  width:100%!important;
  max-width:none!important;
}
.rpe-ds-render[data-template="classifieds-detail-page"]
section[data-component="classified-detail-gallery"] .rpe-directory-gallery-main{
  width:100%!important;
  max-width:none!important;
  aspect-ratio:4 / 3!important;
  height:auto!important;
  min-height:0!important;
}
.rpe-ds-render[data-template="classifieds-detail-page"]
section[data-component="classified-detail-gallery"] .rpe-directory-gallery-main img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* 5.0.0AE.10.5.60 — Universal Detail Listing Title Additional 25 Percent Reduction Lock
 * 75% of the preceding detail-title scale across listing categories. */
.rpe-ds-render[data-template="directory-detail-page"] [data-component="directory-detail-summary"] .rpe-directory-summary-title,
.rpe-ds-render[data-template="real-estate-detail-page"] [data-component="property-detail-summary"] .rpe-directory-summary-title,
.rpe-ds-render[data-template="jobs-detail-page"] [data-component="job-detail-summary"] h1,
.rpe-ds-render[data-template="events-detail-page"] [data-component="event-detail-summary"] h1,
.rpe-ds-render[data-template="classifieds-detail-page"] [data-component="classified-detail-summary"] h1,
.rpe-ds-render[data-template="services-detail-page"] [data-component="service-detail-summary"] h1{
  font-size:clamp(15.75px,1.33875vw,24.15px)!important;
  line-height:1.07!important;
  letter-spacing:-.03em!important;
  overflow-wrap:anywhere!important;
}
@media(max-width:900px){
  .rpe-ds-render[data-template="directory-detail-page"] [data-component="directory-detail-summary"] .rpe-directory-summary-title,
  .rpe-ds-render[data-template="real-estate-detail-page"] [data-component="property-detail-summary"] .rpe-directory-summary-title,
  .rpe-ds-render[data-template="jobs-detail-page"] [data-component="job-detail-summary"] h1,
  .rpe-ds-render[data-template="events-detail-page"] [data-component="event-detail-summary"] h1,
  .rpe-ds-render[data-template="classifieds-detail-page"] [data-component="classified-detail-summary"] h1,
  .rpe-ds-render[data-template="services-detail-page"] [data-component="service-detail-summary"] h1{
    font-size:clamp(14.7px,2.625vw,21px)!important;
  }
}
@media(max-width:620px){
  .rpe-ds-render[data-template="directory-detail-page"] [data-component="directory-detail-summary"] .rpe-directory-summary-title,
  .rpe-ds-render[data-template="real-estate-detail-page"] [data-component="property-detail-summary"] .rpe-directory-summary-title,
  .rpe-ds-render[data-template="jobs-detail-page"] [data-component="job-detail-summary"] h1,
  .rpe-ds-render[data-template="events-detail-page"] [data-component="event-detail-summary"] h1,
  .rpe-ds-render[data-template="classifieds-detail-page"] [data-component="classified-detail-summary"] h1,
  .rpe-ds-render[data-template="services-detail-page"] [data-component="service-detail-summary"] h1{
    font-size:clamp(13.125px,3.885vw,17.85px)!important;
    line-height:1.1!important;
  }
}




/* 5.0.0AE.10.5.61 — Classifieds retail price tag.
 * Approved Option 1, reduced-size treatment.
 * Visual-only: preserves the canonical price value and markup. */
.rpe-ds-render[data-template="classifieds-detail-page"]
.rpe-classified-detail-summary .rpe-property-summary-price{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:86px!important;
  min-height:48px!important;
  margin:0 0 14px!important;
  padding:0 16px 0 27px!important;
  border:0!important;
  border-radius:0 9px 9px 0!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:clamp(26px,2.15vw,34px)!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
  clip-path:polygon(15px 0,100% 0,100% 100%,15px 100%,0 50%)!important;
  box-shadow:0 8px 20px rgba(239,35,60,.18)!important;
}
.rpe-ds-render[data-template="classifieds-detail-page"]
.rpe-classified-detail-summary .rpe-property-summary-price::before{
  content:""!important;
  position:absolute!important;
  left:10px!important;
  top:50%!important;
  width:7px!important;
  height:7px!important;
  margin-top:-3.5px!important;
  border-radius:50%!important;
  background:var(--rpe-bg,#080c11)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.15)!important;
}
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="classifieds-detail-page"]
.rpe-classified-detail-summary .rpe-property-summary-price::before{
  background:var(--rpe-bg,#f4f6f8)!important;
}
@media(max-width:620px){
  .rpe-ds-render[data-template="classifieds-detail-page"]
  .rpe-classified-detail-summary .rpe-property-summary-price{
    min-width:78px!important;
    min-height:44px!important;
    padding:0 14px 0 25px!important;
    font-size:clamp(24px,7vw,30px)!important;
  }
}


/* 5.0.0AE.10.5.62 — Language provider readiness gate.
 * Prevent the empty LANGUAGE shell from flashing before GTranslate has
 * populated its native control. Existing [hidden] behavior remains intact. */
.rpe-gh-language-panel[data-rpe-language-ready="0"],
.rpe-gh-language-panel.is-provider-waiting{
  display:none!important;
}
.rpe-gh-language-panel.is-provider-ready:not([hidden]){
  display:block!important;
}


/* 5.0.0AE.10.5.63 — Featured collection price tags, exact approved treatment.
   Real Estate: detail-page style FOR SALE/FOR RENT + white price, image top-left.
   Classifieds: approved Option 2 compact red shop tag, image top-left. */
.rpe-fc-card--real_estate .rpe-fc-media,
.rpe-fc-card--classifieds .rpe-fc-media{
  position:relative!important;
}

.rpe-fc-approved-price{
  position:absolute!important;
  top:14px!important;
  left:14px!important;
  z-index:5!important;
  margin:0!important;
  width:max-content!important;
  max-width:calc(100% - 28px)!important;
  box-sizing:border-box!important;
  text-decoration:none!important;
}

/* REAL ESTATE — exactly the same red/white language as the detail page. */
.rpe-fc-approved-price--estate{
  display:inline-flex!important;
  align-items:stretch!important;
  overflow:hidden!important;
  border:1px solid #ef233c!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(15,23,42,.18)!important;
  clip-path:none!important;
}
.rpe-fc-approved-price--estate .rpe-fc-approved-price-label{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:9px 11px!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.rpe-fc-approved-price--estate .rpe-fc-approved-price-label svg{
  width:13px!important;
  height:13px!important;
  flex:0 0 13px!important;
  color:#fff!important;
}
.rpe-fc-approved-price--estate .rpe-fc-approved-price-value{
  display:inline-flex!important;
  align-items:center!important;
  padding:8px 12px!important;
  background:#fff!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
}

/* CLASSIFIEDS — approved Option 2: compact red retail tag. */
.rpe-fc-approved-price--classified{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:34px!important;
  padding:7px 11px 7px 17px!important;
  border-radius:0 7px 7px 0!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  clip-path:polygon(0 50%,11px 0,100% 0,100% 100%,11px 100%)!important;
  box-shadow:0 7px 18px rgba(15,23,42,.16)!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rpe-fc-approved-price--classified .rpe-fc-approved-price-hole{
  width:5px!important;
  height:5px!important;
  flex:0 0 5px!important;
  border-radius:50%!important;
  background:#25303c!important;
}
.rpe-fc-approved-price--classified .rpe-fc-approved-price-value{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:inherit!important;
}

/* No duplicate body price on these two Featured collection card types. */
.rpe-fc-card--real_estate .rpe-fc-body .rpe-fc-price,
.rpe-fc-card--classifieds .rpe-fc-body .rpe-fc-price{
  display:none!important;
}

@media(max-width:520px){
  .rpe-fc-approved-price{top:10px!important;left:10px!important}
  .rpe-fc-approved-price--estate .rpe-fc-approved-price-label{padding:8px 9px!important;font-size:9px!important}
  .rpe-fc-approved-price--estate .rpe-fc-approved-price-value{padding:7px 9px!important;font-size:14px!important}
  .rpe-fc-approved-price--classified{min-height:31px!important;padding:6px 9px 6px 15px!important;font-size:14px!important}
}


/* 5.0.0AE.10.5.65 — Featured price-tag text contrast hard lock.
 * Safari/WebKit-safe final authority matching the approved mockup. */
html[data-rpe-appearance] .rpe-featured-collection--real_estate
.rpe-fc-approved-price--estate .rpe-fc-approved-price-label,
html[data-rpe-appearance] .rpe-featured-collection--real_estate
.rpe-fc-approved-price--estate .rpe-fc-approved-price-label *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
html[data-rpe-appearance] .rpe-featured-collection--real_estate
.rpe-fc-approved-price--estate .rpe-fc-approved-price-value,
html[data-rpe-appearance] .rpe-featured-collection--real_estate
.rpe-fc-approved-price--estate .rpe-fc-approved-price-value *{
  background:#fff!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
html[data-rpe-appearance] .rpe-featured-collection--classifieds
.rpe-fc-approved-price--classified,
html[data-rpe-appearance] .rpe-featured-collection--classifieds
.rpe-fc-approved-price--classified .rpe-fc-approved-price-value,
html[data-rpe-appearance] .rpe-featured-collection--classifieds
.rpe-fc-approved-price--classified .rpe-fc-approved-price-value *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}


/* 5.0.0AE.10.5.66 — Collection Grid approved price tags.
 * Mirrors the approved Featured collection treatments on category/grid cards.
 */

/* Shared placement */
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-media,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card-media{
  position:relative!important;
}
.rpe-grid-approved-price{
  position:absolute!important;
  top:14px!important;
  left:14px!important;
  bottom:auto!important;
  z-index:7!important;
  margin:0!important;
  width:max-content!important;
  max-width:calc(100% - 28px)!important;
  box-sizing:border-box!important;
  font-style:normal!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  text-shadow:none!important;
}

/* Real Estate: red FOR SALE/FOR RENT + white price panel */
.rpe-grid-approved-price--estate{
  display:inline-flex!important;
  align-items:stretch!important;
  overflow:hidden!important;
  padding:0!important;
  border:1px solid #ef233c!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 8px 20px rgba(15,23,42,.18)!important;
  clip-path:none!important;
}
.rpe-grid-approved-price--estate .rpe-grid-approved-price-label{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:9px 11px!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.rpe-grid-approved-price--estate .rpe-grid-approved-price-label svg{
  width:13px!important;
  height:13px!important;
  flex:0 0 13px!important;
  color:#fff!important;
}
.rpe-grid-approved-price--estate .rpe-grid-approved-price-value{
  display:inline-flex!important;
  align-items:center!important;
  padding:8px 12px!important;
  background:#fff!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
}

/* Classifieds: approved Option 2 compact red shop tag */
.rpe-grid-approved-price--classified{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:34px!important;
  padding:7px 11px 7px 17px!important;
  border:0!important;
  border-radius:0 7px 7px 0!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  clip-path:polygon(0 50%,11px 0,100% 0,100% 100%,11px 100%)!important;
  box-shadow:0 7px 18px rgba(15,23,42,.16)!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.rpe-grid-approved-price--classified .rpe-grid-approved-price-hole{
  width:5px!important;
  height:5px!important;
  flex:0 0 5px!important;
  border-radius:50%!important;
  background:#25303c!important;
}
.rpe-grid-approved-price--classified .rpe-grid-approved-price-value{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font:inherit!important;
}

/* Retire the old dark bottom-left price pills if any legacy markup survives. */
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-price,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card-price{
  display:none!important;
}

@media(max-width:520px){
  .rpe-grid-approved-price{top:10px!important;left:10px!important}
  .rpe-grid-approved-price--estate .rpe-grid-approved-price-label{padding:8px 9px!important;font-size:9px!important}
  .rpe-grid-approved-price--estate .rpe-grid-approved-price-value{padding:7px 9px!important;font-size:14px!important}
  .rpe-grid-approved-price--classified{min-height:31px!important;padding:6px 9px 6px 15px!important;font-size:14px!important}
}


/* 5.0.0AE.10.5.67 — Real Estate Detail Gallery 4:3 Parity
 * Match Directory and Classifieds detail-page main image geometry. */
.rpe-ds-render[data-template="real-estate-detail-page"]
section[data-component="property-detail-gallery"] .rpe-directory-gallery{
  width:100%!important;
  max-width:none!important;
}
.rpe-ds-render[data-template="real-estate-detail-page"]
section[data-component="property-detail-gallery"] .rpe-directory-gallery-main{
  width:100%!important;
  max-width:none!important;
  aspect-ratio:4 / 3!important;
  height:auto!important;
  min-height:0!important;
}
.rpe-ds-render[data-template="real-estate-detail-page"]
section[data-component="property-detail-gallery"] .rpe-directory-gallery-main img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}


/* 5.0.0AE.10.5.69 — Real Estate Detail visual order hard lock.
 * Earlier desktop CSS explicitly forced Nearby into grid-row 6 and Location
 * into grid-row 7, overriding the corrected document/component order.
 * Final authority: Location first, Nearby second. */
@media(min-width:901px){
  .rpe-ds-render[data-template="real-estate-detail-page"]>
  section[data-component="property-detail-map"]{
    grid-row:6!important;
    grid-column:1/9!important;
  }

  .rpe-ds-render[data-template="real-estate-detail-page"]>
  section[data-component="property-area-intelligence"]{
    grid-row:7!important;
    grid-column:1/9!important;
  }

  .rpe-ds-render[data-template="real-estate-detail-page"]>
  section[data-component="property-related-listings"]{
    grid-row:8!important;
    grid-column:1/9!important;
  }

  .rpe-ds-render[data-template="real-estate-detail-page"]>
  section[data-component="property-detail-contact"]{
    grid-row:3/9!important;
  }

  .rpe-ds-render[data-template="real-estate-detail-page"]>
  section[data-component="global-footer"]{
    grid-row:9!important;
    grid-column:1/-1!important;
  }
}

/* 5.0.0AE.10.5.70 — Global Homepage Popular Cities contrast correction.
 * Section heading must contrast with the page canvas; city-card overlay copy
 * must remain light in both appearances because it sits on photography. */
html[data-rpe-appearance="light"] [data-component="popular-cities"] .rpe-ds-popular-cities-heading h2,
html[data-rpe-appearance="light"] [data-component="popular-cities"] .rpe-city-collection > header h2{
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
}
html[data-rpe-appearance="dark"] [data-component="popular-cities"] .rpe-ds-popular-cities-heading h2,
html[data-rpe-appearance="dark"] [data-component="popular-cities"] .rpe-city-collection > header h2,
html[data-rpe-appearance="dark"] .rpe-popular-cities > header h2{
  color:#101722!important;
  -webkit-text-fill-color:#101722!important;
}
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-city-card h3,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-city-card__country,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-city-card__stat strong,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-city-card__stat small,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-city-card__count,
html[data-rpe-appearance] [data-component="popular-cities"] .rpe-city-card__action{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* 5.0.0AE.10.5.71 — Popular Cities white-canvas heading lock in dark appearance. */
html[data-rpe-appearance="dark"] [data-component="popular-cities"] .rpe-city-collection > header p,
html[data-rpe-appearance="dark"] .rpe-popular-cities > header p{
  color:#475569!important;
  -webkit-text-fill-color:#475569!important;
}

/* 5.0.0AE.10.5.72 — Global Homepage Popular Cities dark-surface parity.
 * In Dark Mode this section now follows the same dark canvas/light typography
 * language as the rest of the homepage. City-card overlay copy stays white. */
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] > section[data-component="popular-cities"],
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] .rpe-city-collection,
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] .rpe-popular-cities{
  background:#080d13!important;
  background-color:#080d13!important;
  color:#f7f8fa!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] :is(.rpe-ds-popular-cities-heading,.rpe-city-collection>header,.rpe-popular-cities>header) :is(h1,h2,h3),
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] .rpe-city-collection h2{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
  opacity:1!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] :is(.rpe-ds-popular-cities-heading,.rpe-city-collection>header,.rpe-popular-cities>header) p{
  color:#a9b4c3!important;
  -webkit-text-fill-color:#a9b4c3!important;
  opacity:1!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] .rpe-city-collection__view-all{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] .rpe-city-collection__edge.is-left{
  background:linear-gradient(90deg,#080d13 8%,rgba(8,13,19,0) 100%)!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] .rpe-city-collection__edge.is-right{
  background:linear-gradient(270deg,#080d13 8%,rgba(8,13,19,0) 100%)!important;
}
html[data-rpe-appearance="dark"] .rpe-ds-render[data-template="global-homepage"] [data-component="popular-cities"] .rpe-city-collection__progress{
  background:#1b2430!important;
}


/* 5.0.0AE.10.5.73 — Featured Real Estate full-width price strip.
 * Approved placement: immediately below image, above listing title.
 * The former red property subtitle is removed for Featured Real Estate only. */
.rpe-fc-card--real_estate > a > .rpe-fc-approved-price--estate{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  z-index:2!important;
  display:flex!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  box-shadow:none!important;
  clip-path:none!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
.rpe-fc-card--real_estate > a > .rpe-fc-approved-price--estate .rpe-fc-approved-price-label{
  flex:0 0 50%!important;
  justify-content:flex-start!important;
  padding:10px 14px!important;
  border-radius:0!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.rpe-fc-card--real_estate > a > .rpe-fc-approved-price--estate .rpe-fc-approved-price-value{
  flex:1 1 50%!important;
  justify-content:flex-start!important;
  padding:10px 14px!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  border-top:1px solid #ef233c!important;
  border-right:1px solid #ef233c!important;
  border-bottom:1px solid #ef233c!important;
  box-sizing:border-box!important;
}

/* Preserve the card's normal rounded outer corners and keep body title spacing clean. */
.rpe-fc-card--real_estate .rpe-fc-body{
  padding-top:18px!important;
}
.rpe-fc-card--real_estate .rpe-fc-body > .rpe-fc-kicker{
  display:none!important;
}

@media(max-width:520px){
  .rpe-fc-card--real_estate > a > .rpe-fc-approved-price--estate .rpe-fc-approved-price-label,
  .rpe-fc-card--real_estate > a > .rpe-fc-approved-price--estate .rpe-fc-approved-price-value{
    padding:9px 11px!important;
  }
}


/* 5.0.0AE.10.5.77 — One Universal Transparent Rumanji Header
 * Same shell and same original Rumanji brand assets on every public template,
 * in both Light and Dark appearance. */
html[data-rpe-appearance] .rpe-global-header,
html[data-rpe-appearance] .rpe-universal-header-component,
.rpe-global-header.rpe-universal-header-component,
.rpe-universal-header-component.rpe-gh-variant-transparent,
.rpe-universal-header-component.rpe-gh-variant-transparent.is-scrolled,
.rpe-universal-header-component.is-hero-overlay,
.rpe-universal-header-component.is-hero-overlay.is-scrolled{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-bottom-color:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* Keep a single unmodified original Rumanji icon + logotype in both modes.
 * No light-mode blackening, inversion, tint, opacity shift, or blend effect. */
html[data-rpe-appearance] .rpe-gh-brand-icon,
html[data-rpe-appearance] .rpe-gh-brand-logo,
.rpe-global-header .rpe-gh-brand-icon,
.rpe-global-header .rpe-gh-brand-logo{
  filter:none!important;
  -webkit-filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

/* Header text/controls continue to consume the appearance tokens, so the
 * transparent shell remains readable on the active Light/Dark page canvas. */
html[data-rpe-appearance="dark"] .rpe-global-header{
  color:#f7f8fa!important;
}
html[data-rpe-appearance="light"] .rpe-global-header{
  color:#101722!important;
}

/* Design Studio parity: preview the same transparent production header. */
.rpe-ds-header-parity,
.rpe-ds-header-parity.rpe-gh-variant-transparent{
  background:transparent!important;
  background-image:none!important;
  border-bottom-color:transparent!important;
  box-shadow:none!important;
}


/* 5.0.0AE.10.5.78 — Universal Glass Header
 * One glass-material header across every Rumanji template and both appearances. */
html[data-rpe-appearance] .rpe-global-header,
html[data-rpe-appearance] .rpe-universal-header-component,
.rpe-global-header.rpe-universal-header-component,
.rpe-universal-header-component.rpe-gh-variant-transparent,
.rpe-universal-header-component.rpe-gh-variant-transparent.is-scrolled,
.rpe-universal-header-component.is-hero-overlay,
.rpe-universal-header-component.is-hero-overlay.is-scrolled{
  background:rgba(18,22,28,.58)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.012))!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 8px 30px rgba(0,0,0,.14)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
}

html[data-rpe-appearance="light"] .rpe-global-header,
html[data-rpe-appearance="light"] .rpe-universal-header-component{
  background:rgba(255,255,255,.58)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.08))!important;
  border-bottom-color:rgba(15,23,42,.09)!important;
  box-shadow:0 8px 30px rgba(15,23,42,.08)!important;
}

html[data-rpe-appearance="dark"] .rpe-global-header,
html[data-rpe-appearance="dark"] .rpe-universal-header-component{
  background:rgba(8,12,17,.60)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.008))!important;
  border-bottom-color:rgba(255,255,255,.09)!important;
  box-shadow:0 8px 30px rgba(0,0,0,.20)!important;
}

/* Keep the approved original brand assets untouched on the glass material. */
html[data-rpe-appearance] .rpe-gh-brand-icon,
html[data-rpe-appearance] .rpe-gh-brand-logo,
.rpe-global-header .rpe-gh-brand-icon,
.rpe-global-header .rpe-gh-brand-logo{
  filter:none!important;
  -webkit-filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

/* Design Studio uses the same glass treatment. */
.rpe-ds-header-parity,
.rpe-ds-header-parity.rpe-gh-variant-transparent{
  background:rgba(18,22,28,.58)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.012))!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 8px 30px rgba(0,0,0,.14)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
}


/* 5.0.0AE.10.5.79 — Visible Universal Glass Header
 * Use one dark-neutral frosted glass material in BOTH appearances.
 * This keeps the original Rumanji red/white brand readable and makes
 * the glass treatment visually obvious even when no image sits behind it. */
html[data-rpe-appearance] .rpe-global-header,
html[data-rpe-appearance] .rpe-universal-header-component,
.rpe-global-header.rpe-universal-header-component,
.rpe-universal-header-component.rpe-gh-variant-transparent,
.rpe-universal-header-component.rpe-gh-variant-transparent.is-scrolled,
.rpe-universal-header-component.is-hero-overlay,
.rpe-universal-header-component.is-hero-overlay.is-scrolled{
  position:relative!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.075) 0%,rgba(255,255,255,.025) 44%,rgba(0,0,0,.045) 100%),
    rgba(10,15,21,.72)!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 9px 28px rgba(0,0,0,.17)!important;
  -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
  color:#f7f8fa!important;
}

/* Fine glass sheen — visible material cue without affecting interactions. */
html[data-rpe-appearance] .rpe-global-header::before,
html[data-rpe-appearance] .rpe-universal-header-component::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(110deg,rgba(255,255,255,.075) 0%,rgba(255,255,255,.018) 32%,transparent 57%,rgba(255,255,255,.025) 100%)!important;
  opacity:.9!important;
}

/* Keep the actual header controls above the glass sheen. */
html[data-rpe-appearance] .rpe-global-header > *,
html[data-rpe-appearance] .rpe-universal-header-component > *{
  position:relative!important;
  z-index:1!important;
}

/* Same original Rumanji icon and logotype in Light and Dark modes.
 * No recoloring or mode-specific asset treatment. */
html[data-rpe-appearance] .rpe-gh-brand-icon,
html[data-rpe-appearance] .rpe-gh-brand-logo,
.rpe-global-header .rpe-gh-brand-icon,
.rpe-global-header .rpe-gh-brand-logo{
  filter:none!important;
  -webkit-filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}

/* Header controls remain readable against the common dark glass material. */
html[data-rpe-appearance] .rpe-global-header a:not(.rpe-gh-join),
html[data-rpe-appearance] .rpe-global-header button:not(.rpe-gh-join),
html[data-rpe-appearance] .rpe-gh-city,
html[data-rpe-appearance] .rpe-gh-trigger,
html[data-rpe-appearance] .rpe-gh-appearance{
  color:#f7f8fa!important;
  -webkit-text-fill-color:#f7f8fa!important;
}
html[data-rpe-appearance] .rpe-gh-city,
html[data-rpe-appearance] .rpe-gh-trigger,
html[data-rpe-appearance] .rpe-gh-appearance{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(255,255,255,.12)!important;
}

/* Search remains the intentional light input surface inside the glass shell. */
html[data-rpe-appearance] .rpe-global-header .rpe-gh-search.rpe-search-component{
  background:rgba(255,255,255,.96)!important;
  border-color:rgba(255,255,255,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important;
}

/* Design Studio parity. */
.rpe-ds-header-parity,
.rpe-ds-header-parity.rpe-gh-variant-transparent{
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025) 44%,rgba(0,0,0,.045)),
    rgba(10,15,21,.72)!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 9px 28px rgba(0,0,0,.17)!important;
  -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
}


/* 5.0.0AE.10.5.80 — Jobs Map cleanup.
 * Address/location line in the map popup is 30% smaller (13px → 9.1px).
 * Generic Map Preview and Pagination sections are removed structurally in PHP. */
.rpe-jobs-map-card-location{
  font-size:9.1px!important;
  line-height:1.35!important;
}


/* 5.0.0AE.10.5.81 — Category card parity:
 * Events / Real Estate / Classifieds favorites match Directory;
 * Real Estate price strip matches Featured Real Estate placement. */

/* Cards need a positioning context for the top-right favorite control. */
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card{
  position:relative!important;
}

/* Exact Directory favorite treatment: top-right frosted glass. */
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button[data-rpe-listing-favorite],
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button[data-rpe-listing-favorite],
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button[data-rpe-listing-favorite]{
  position:absolute!important;
  z-index:12!important;
  top:13px!important;
  right:13px!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(8,17,28,.66)!important;
  background-color:rgba(8,17,28,.66)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.20)!important;
  -webkit-backdrop-filter:blur(10px) saturate(135%)!important;
  backdrop-filter:blur(10px) saturate(135%)!important;
  color:#ef233c!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  overflow:hidden!important;
  line-height:1!important;
}
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button[data-rpe-listing-favorite]:hover,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button[data-rpe-listing-favorite]:hover,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button[data-rpe-listing-favorite]:hover{
  background:rgba(8,17,28,.84)!important;
  transform:scale(1.06)!important;
}
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button[data-rpe-listing-favorite] svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button[data-rpe-listing-favorite] svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button[data-rpe-listing-favorite] svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  max-width:20px!important;
  max-height:20px!important;
  margin:0!important;
  padding:0!important;
  fill:transparent!important;
  stroke:#ef233c!important;
  stroke-width:2.15!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite.is-active svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite.is-active svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite.is-active svg{
  fill:#ef233c!important;
  stroke:#ef233c!important;
}

/* Real Estate category: price strip leaves the image and becomes a full-width
 * band directly under it, above the title — same language as Featured RE. */
.rpe-ds-render[data-template="real-estate-category-page"]
.rpe-property-card > .rpe-grid-approved-price--estate-full{
  position:relative!important;
  inset:auto!important;
  z-index:3!important;
  display:flex!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  clip-path:none!important;
}
.rpe-ds-render[data-template="real-estate-category-page"]
.rpe-property-card > .rpe-grid-approved-price--estate-full .rpe-grid-approved-price-label{
  flex:0 0 50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  padding:10px 14px!important;
  background:#ef233c!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
}
.rpe-ds-render[data-template="real-estate-category-page"]
.rpe-property-card > .rpe-grid-approved-price--estate-full .rpe-grid-approved-price-value{
  flex:1 1 50%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:10px 14px!important;
  background:#fff!important;
  color:#111827!important;
  -webkit-text-fill-color:#111827!important;
  border-top:1px solid #ef233c!important;
  border-right:1px solid #ef233c!important;
  border-bottom:1px solid #ef233c!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
}
.rpe-ds-render[data-template="real-estate-category-page"]
.rpe-property-card > .rpe-grid-approved-price--estate-full .rpe-grid-approved-price-label svg{
  width:13px!important;
  height:13px!important;
  flex:0 0 13px!important;
  color:#fff!important;
}

/* The former red property kicker/subtitle is intentionally retired because
 * the full-width For Sale / For Rent strip now carries that information. */
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-kicker{
  display:none!important;
}
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card-copy{
  padding-top:18px!important;
}


/* 5.0.0AE.10.5.82 — Near-transparent favorite glass + Jobs favorite parity.
 * Events, Real Estate, Classifieds and Jobs use the same practically transparent
 * frosted control treatment. Directory remains the visual reference. */

.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card{
  position:relative!important;
}

.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button[data-rpe-listing-favorite],
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button[data-rpe-listing-favorite],
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button[data-rpe-listing-favorite],
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button.rpe-fc-favorite,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button[data-rpe-listing-favorite]{
  position:absolute!important;
  z-index:12!important;
  top:13px!important;
  right:13px!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;

  /* practically transparent glass */
  background:rgba(8,17,28,.08)!important;
  background-color:rgba(8,17,28,.08)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.07)!important;
  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;
  backdrop-filter:blur(12px) saturate(125%)!important;

  color:#ef233c!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  overflow:hidden!important;
  line-height:1!important;
}

.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button[data-rpe-listing-favorite]:hover,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button[data-rpe-listing-favorite]:hover,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button[data-rpe-listing-favorite]:hover,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button.rpe-fc-favorite:hover,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button[data-rpe-listing-favorite]:hover{
  background:rgba(8,17,28,.18)!important;
  background-color:rgba(8,17,28,.18)!important;
  border-color:rgba(255,255,255,.30)!important;
  box-shadow:0 4px 12px rgba(0,0,0,.10)!important;
  transform:scale(1.05)!important;
}

.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button[data-rpe-listing-favorite] svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button[data-rpe-listing-favorite] svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button[data-rpe-listing-favorite] svg,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button.rpe-fc-favorite svg,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button[data-rpe-listing-favorite] svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  max-width:20px!important;
  max-height:20px!important;
  margin:0!important;
  padding:0!important;
  fill:transparent!important;
  stroke:#ef233c!important;
  stroke-width:2.15!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:1!important;
  visibility:visible!important;
}

.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite.is-active svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite.is-active svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite.is-active svg,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button.rpe-fc-favorite.is-favorite svg,
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button.rpe-fc-favorite.is-active svg{
  fill:#ef233c!important;
  stroke:#ef233c!important;
}

/* In Light Mode, keep the glass just as transparent but with a faint neutral tint
 * so the control remains legible on very bright images/cards. */
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="events-category-page"] .rpe-event-card button.rpe-fc-favorite,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="real-estate-category-page"] .rpe-property-card button.rpe-fc-favorite,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="classifieds-category-page"] .rpe-classified-card button.rpe-fc-favorite,
html[data-rpe-appearance="light"]
.rpe-ds-render[data-template="jobs-category-page"] .rpe-job-card button.rpe-fc-favorite{
  background:rgba(255,255,255,.11)!important;
  background-color:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.40)!important;
}


/* 5.0.0AE.10.5.83 — Featured Collections favorite parity.
 * Every Featured card on Global + City Homepages uses the approved
 * practically-transparent top-right frosted glass favorite control. */
.rpe-fc-card{
  position:relative!important;
}
.rpe-fc-card button.rpe-fc-favorite,
.rpe-fc-card button[data-rpe-listing-favorite]{
  position:absolute!important;
  z-index:14!important;
  top:13px!important;
  right:13px!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  background:rgba(8,17,28,.08)!important;
  background-color:rgba(8,17,28,.08)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.07)!important;
  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;
  backdrop-filter:blur(12px) saturate(125%)!important;
  color:#ef233c!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  overflow:hidden!important;
  line-height:1!important;
}
.rpe-fc-card button.rpe-fc-favorite:hover,
.rpe-fc-card button[data-rpe-listing-favorite]:hover{
  background:rgba(8,17,28,.18)!important;
  background-color:rgba(8,17,28,.18)!important;
  border-color:rgba(255,255,255,.30)!important;
  box-shadow:0 4px 12px rgba(0,0,0,.10)!important;
  transform:scale(1.05)!important;
}
.rpe-fc-card button.rpe-fc-favorite svg,
.rpe-fc-card button[data-rpe-listing-favorite] svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  max-width:20px!important;
  max-height:20px!important;
  margin:0!important;
  padding:0!important;
  fill:transparent!important;
  stroke:#ef233c!important;
  stroke-width:2.15!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:1!important;
  visibility:visible!important;
}
.rpe-fc-card button.rpe-fc-favorite.is-favorite svg,
.rpe-fc-card button.rpe-fc-favorite.is-active svg,
.rpe-fc-card button[data-rpe-listing-favorite].is-favorite svg,
.rpe-fc-card button[data-rpe-listing-favorite].is-active svg{
  fill:#ef233c!important;
  stroke:#ef233c!important;
}
html[data-rpe-appearance="light"] .rpe-fc-card button.rpe-fc-favorite,
html[data-rpe-appearance="light"] .rpe-fc-card button[data-rpe-listing-favorite]{
  background:rgba(255,255,255,.11)!important;
  background-color:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.40)!important;
}


/* 5.0.0AE.10.5.84 — Featured favorites render/visual authority.
 * Same practically-transparent frosted glass used by category listing cards. */
.rpe-featured-collection .rpe-fc-card,
.rpe-featured-collection-component .rpe-fc-card,
[data-component="featured-collection"] .rpe-fc-card{
  position:relative!important;
}

.rpe-featured-collection .rpe-fc-card button[data-rpe-listing-favorite],
.rpe-featured-collection-component .rpe-fc-card button[data-rpe-listing-favorite],
[data-component="featured-collection"] .rpe-fc-card button[data-rpe-listing-favorite],
.rpe-fc-card button.rpe-fc-favorite{
  position:absolute!important;
  top:13px!important;
  right:13px!important;
  z-index:30!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  background:rgba(8,17,28,.08)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.07)!important;
  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;
  backdrop-filter:blur(12px) saturate(125%)!important;
  color:#ef233c!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

html[data-rpe-appearance="light"] .rpe-fc-card button[data-rpe-listing-favorite],
html[data-rpe-appearance="light"] .rpe-fc-card button.rpe-fc-favorite{
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.40)!important;
}

.rpe-fc-card button[data-rpe-listing-favorite] svg,
.rpe-fc-card button.rpe-fc-favorite svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
  fill:transparent!important;
  stroke:#ef233c!important;
  stroke-width:2.15!important;
  opacity:1!important;
  visibility:visible!important;
}


/* 5.0.0AE.10.5.85 — Featured favorite final render authority. */
.rpe-fc-card{
  position:relative!important;
}
.rpe-fc-card > button[data-rpe-listing-favorite],
.rpe-fc-card > button.rpe-fc-favorite{
  position:absolute!important;
  top:13px!important;
  right:13px!important;
  z-index:40!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  border-radius:10px!important;
  background:rgba(8,17,28,.08)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.07)!important;
  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;
  backdrop-filter:blur(12px) saturate(125%)!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
html[data-rpe-appearance="light"] .rpe-fc-card > button[data-rpe-listing-favorite],
html[data-rpe-appearance="light"] .rpe-fc-card > button.rpe-fc-favorite{
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.40)!important;
}


/* 5.0.0AE.10.5.86 — Featured Events favorite top-right authority. */
.rpe-featured-collection--events .rpe-fc-card{position:relative!important;}
.rpe-featured-collection--events .rpe-fc-card > button.rpe-fc-favorite,
.rpe-featured-collection--events .rpe-fc-card > button[data-rpe-listing-favorite]{
  position:absolute!important;top:13px!important;right:13px!important;z-index:60!important;
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  max-width:38px!important;max-height:38px!important;margin:0!important;padding:0!important;
  display:grid!important;place-items:center!important;border-radius:10px!important;
  background:rgba(8,17,28,.08)!important;border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.07)!important;
  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;backdrop-filter:blur(12px) saturate(125%)!important;
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;color:#ef233c!important;
}
.rpe-featured-collection--events .rpe-fc-card > button.rpe-fc-favorite svg,
.rpe-featured-collection--events .rpe-fc-card > button[data-rpe-listing-favorite] svg{
  width:20px!important;height:20px!important;display:block!important;fill:transparent!important;
  stroke:#ef233c!important;stroke-width:2.15!important;opacity:1!important;visibility:visible!important;
}
html[data-rpe-appearance="light"] .rpe-featured-collection--events .rpe-fc-card > button.rpe-fc-favorite,
html[data-rpe-appearance="light"] .rpe-featured-collection--events .rpe-fc-card > button[data-rpe-listing-favorite]{
  background:rgba(255,255,255,.11)!important;border-color:rgba(255,255,255,.40)!important;
}
\n\n/* 5.0.0AE.10.5.87 — Homepage Events favorite control direct renderer parity.\n * Events Collection on Global + City Homepages uses its own card renderer,\n * so favorites are styled on .rpe-home-event-card directly. */\n.rpe-home-event-card{\n  position:relative!important;\n}\n.rpe-home-event-card > button.rpe-fc-favorite,\n.rpe-home-event-card > button[data-rpe-listing-favorite]{\n  position:absolute!important;\n  top:13px!important;\n  right:13px!important;\n  z-index:70!important;\n  width:38px!important;\n  height:38px!important;\n  min-width:38px!important;\n  min-height:38px!important;\n  max-width:38px!important;\n  max-height:38px!important;\n  margin:0!important;\n  padding:0!important;\n  display:grid!important;\n  place-items:center!important;\n  border-radius:10px!important;\n  background:rgba(8,17,28,.08)!important;\n  background-color:rgba(8,17,28,.08)!important;\n  border:1px solid rgba(255,255,255,.22)!important;\n  box-shadow:0 3px 10px rgba(0,0,0,.07)!important;\n  -webkit-backdrop-filter:blur(12px) saturate(125%)!important;\n  backdrop-filter:blur(12px) saturate(125%)!important;\n  color:#ef233c!important;\n  opacity:1!important;\n  visibility:visible!important;\n  pointer-events:auto!important;\n  appearance:none!important;\n  -webkit-appearance:none!important;\n}\n.rpe-home-event-card > button.rpe-fc-favorite:hover,\n.rpe-home-event-card > button[data-rpe-listing-favorite]:hover{\n  background:rgba(8,17,28,.18)!important;\n  border-color:rgba(255,255,255,.30)!important;\n  transform:scale(1.05)!important;\n}\n.rpe-home-event-card > button.rpe-fc-favorite svg,\n.rpe-home-event-card > button[data-rpe-listing-favorite] svg{\n  width:20px!important;\n  height:20px!important;\n  display:block!important;\n  fill:transparent!important;\n  stroke:#ef233c!important;\n  stroke-width:2.15!important;\n  stroke-linecap:round!important;\n  stroke-linejoin:round!important;\n  opacity:1!important;\n  visibility:visible!important;\n}\n.rpe-home-event-card > button.rpe-fc-favorite.is-favorite svg,\n.rpe-home-event-card > button.rpe-fc-favorite.is-active svg,\n.rpe-home-event-card > button[data-rpe-listing-favorite].is-favorite svg,\n.rpe-home-event-card > button[data-rpe-listing-favorite].is-active svg{\n  fill:#ef233c!important;\n  stroke:#ef233c!important;\n}\nhtml[data-rpe-appearance=\"light\"] .rpe-home-event-card > button.rpe-fc-favorite,\nhtml[data-rpe-appearance=\"light\"] .rpe-home-event-card > button[data-rpe-listing-favorite]{\n  background:rgba(255,255,255,.11)!important;\n  border-color:rgba(255,255,255,.40)!important;\n}\n

/* 5.0.0AE.10.5.93 — Frosted Transparent Universal Header + Clickable Hierarchy
 * Header is materially lighter/more transparent in BOTH modes while keeping
 * enough blur/saturation to remain readable over media. */
html[data-rpe-appearance] .rpe-global-header,
html[data-rpe-appearance] .rpe-universal-header-component,
.rpe-global-header.rpe-universal-header-component,
.rpe-universal-header-component.rpe-gh-variant-transparent,
.rpe-universal-header-component.rpe-gh-variant-transparent.is-scrolled,
.rpe-universal-header-component.is-hero-overlay,
.rpe-universal-header-component.is-hero-overlay.is-scrolled{
  background:rgba(10,15,21,.26)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.025))!important;
  border-bottom:1px solid rgba(255,255,255,.17)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 7px 24px rgba(0,0,0,.10)!important;
  -webkit-backdrop-filter:blur(28px) saturate(180%)!important;
  backdrop-filter:blur(28px) saturate(180%)!important;
}
html[data-rpe-appearance="dark"] .rpe-global-header,
html[data-rpe-appearance="dark"] .rpe-universal-header-component{
  background:rgba(5,10,16,.28)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.018))!important;
  border-bottom-color:rgba(255,255,255,.16)!important;
  color:#f7f9fc!important;
}
html[data-rpe-appearance="light"] .rpe-global-header,
html[data-rpe-appearance="light"] .rpe-universal-header-component{
  background:rgba(255,255,255,.34)!important;
  background-image:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.055))!important;
  border-bottom-color:rgba(15,23,42,.11)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 7px 24px rgba(15,23,42,.07)!important;
  color:#101722!important;
}
html[data-rpe-appearance="dark"] .rpe-global-header a:not(.rpe-gh-join),
html[data-rpe-appearance="dark"] .rpe-global-header button:not(.rpe-gh-join){color:#f7f9fc!important;-webkit-text-fill-color:#f7f9fc!important;}
html[data-rpe-appearance="light"] .rpe-global-header a:not(.rpe-gh-join),
html[data-rpe-appearance="light"] .rpe-global-header button:not(.rpe-gh-join){color:#101722!important;-webkit-text-fill-color:#101722!important;}
html[data-rpe-appearance] .rpe-global-header .rpe-gh-city,
html[data-rpe-appearance] .rpe-global-header .rpe-gh-trigger:not(.rpe-gh-categories-trigger),
html[data-rpe-appearance] .rpe-global-header .rpe-gh-language{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.15)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
  -webkit-backdrop-filter:blur(16px) saturate(150%)!important;
  backdrop-filter:blur(16px) saturate(150%)!important;
}
html[data-rpe-appearance="light"] .rpe-global-header .rpe-gh-city,
html[data-rpe-appearance="light"] .rpe-global-header .rpe-gh-trigger:not(.rpe-gh-categories-trigger),
html[data-rpe-appearance="light"] .rpe-global-header .rpe-gh-language{
  background:rgba(255,255,255,.24)!important;
  border-color:rgba(15,23,42,.10)!important;
}
/* Search becomes glass too instead of an opaque white bar. */
html[data-rpe-appearance] .rpe-global-header .rpe-gh-search.rpe-search-component{
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(255,255,255,.44)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42)!important;
  -webkit-backdrop-filter:blur(18px) saturate(150%)!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
}
html[data-rpe-appearance="dark"] .rpe-global-header .rpe-gh-search.rpe-search-component{
  background:rgba(245,248,251,.84)!important;
}
html[data-rpe-appearance="light"] .rpe-global-header .rpe-gh-search.rpe-search-component{
  background:rgba(255,255,255,.54)!important;
  border-color:rgba(15,23,42,.12)!important;
}
/* Preserve the one approved/original brand treatment. */
html[data-rpe-appearance] .rpe-gh-brand-icon,
html[data-rpe-appearance] .rpe-gh-brand-logo{
  filter:none!important;-webkit-filter:none!important;opacity:1!important;mix-blend-mode:normal!important;
}
/* Category domains and every taxonomy depth are real links.
 * Chevron buttons only reveal descendants; they never steal label navigation. */
.rpe-gh-domain-row{align-items:stretch!important;}
.rpe-gh-domain-tab{display:inline-flex;align-items:center;border:1px solid var(--rpe-gh-border);border-radius:10px;overflow:hidden;white-space:nowrap;background:rgba(255,255,255,.025);}
.rpe-gh-domain-tab>a{display:flex;align-items:center;padding:10px 12px;color:inherit!important;text-decoration:none!important;font-size:13px;font-weight:800;}
.rpe-gh-domain-tab>button{width:32px;align-self:stretch;border:0!important;border-left:1px solid rgba(255,255,255,.10)!important;border-radius:0!important;padding:0!important;background:transparent!important;color:inherit!important;cursor:pointer;}
.rpe-gh-domain-tab:hover,.rpe-gh-domain-tab.is-active{border-color:var(--rpe-gh-red);background:rgba(239,39,55,.08);}
.rpe-gh-category-node-row{display:flex;align-items:center;gap:6px;min-width:0;}
.rpe-gh-category-node-row>[data-rpe-category-node]{flex:1;min-width:0;}
.rpe-gh-category-expand{flex:0 0 26px;width:26px;height:26px;display:grid;place-items:center;border:1px solid transparent!important;border-radius:7px!important;background:transparent!important;color:var(--rpe-gh-muted)!important;cursor:pointer;font-size:17px;line-height:1;padding:0!important;}
.rpe-gh-category-expand:hover,.rpe-gh-category-expand[aria-expanded="true"]{border-color:rgba(239,39,55,.42)!important;background:rgba(239,39,55,.08)!important;color:var(--rpe-gh-red)!important;}
.rpe-gh-category-node>a,.rpe-gh-category-node-row>a{cursor:pointer!important;}
@media(max-width:820px){
  .rpe-gh-domain-tab>a{padding:10px 11px;}
  .rpe-gh-domain-tab>button{width:34px;}
}


/* 5.0.0AE.10.5.104 — Directory Detail / WE SPEAK */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken{margin-top:18px;display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken-label{display:block;margin:0;color:#9aa6b6;font-size:11px;line-height:1;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken-chips{display:flex;flex-wrap:wrap;gap:8px}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken-chip{display:inline-flex;align-items:center;min-height:32px;padding:6px 11px;border:1px solid rgba(148,163,184,.28);border-radius:999px;background:rgba(12,17,24,.48);color:#f4f7fb;font-size:12px;line-height:1.2;font-weight:700}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken-label{color:#687587!important}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken-chip{border-color:rgba(15,23,42,.13);background:rgba(248,250,252,.82);color:#172131}


/* 5.0.0AE.10.5.105 — Directory Detail dual glass information columns */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-grid--grouped{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(250px,.92fr);gap:14px!important;align-items:start!important}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-glass,.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-glass{min-width:0;width:100%;box-sizing:border-box;overflow:hidden;border:1px solid rgba(148,163,184,.30);border-radius:18px;background:linear-gradient(135deg,rgba(17,24,34,.91),rgba(8,11,16,.97));box-shadow:0 18px 48px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.025);backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%)}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-spoken{margin-top:0!important;gap:7px!important}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-heading{display:flex;align-items:center;gap:10px;padding:18px 20px 14px;border-bottom:1px solid rgba(148,163,184,.20);font-size:15px;color:#f4f7fb}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-heading>span{font-size:20px}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-current{display:flex;align-items:center;padding:12px 20px 6px;color:#9aa6b6;font-size:12px}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-list{padding:4px 20px 12px}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row{display:grid;grid-template-columns:minmax(82px,.8fr) minmax(110px,1.2fr);gap:10px;padding:10px 0;border-top:1px solid rgba(148,163,184,.16);font-size:12px;line-height:1.3;color:#dce3ec}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row:first-child{border-top:0}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row strong{color:#f4f7fb;font-weight:750}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row span{text-align:right}
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row.is-freeform{grid-template-columns:1fr}.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row.is-freeform span{text-align:left}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-glass{border-color:rgba(15,23,42,.12)!important;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(246,248,251,.97))!important;box-shadow:0 14px 34px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.7)!important}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-heading{color:#172131;border-color:rgba(15,23,42,.10)}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row{color:#344154;border-color:rgba(15,23,42,.09)}
html[data-rpe-appearance="light"] .rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-hours-row strong{color:#172131}
@media(max-width:1180px){.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-grid--grouped{grid-template-columns:1fr!important}}

/* 5.0.0AE.10.5.107 — Directory Detail 60/40 information columns */
.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-grid--grouped{grid-template-columns:minmax(0,3fr) minmax(230px,2fr)!important}
@media(max-width:1180px){.rpe-ds-render[data-template="directory-detail-page"] .rpe-directory-summary-contact-grid--grouped{grid-template-columns:1fr!important}}
