/*
 * Thailand palette override only.
 * IMPORTANT: No dimensions, display, positioning, margins, padding, grid,
 * flex layout, widths or heights are changed here. The source theme layout
 * remains exactly as supplied.
 * Palette reference from supplied screenshot:
 * primary pink #f23788, light pink #f987c5, white #ffffff.
 */
:root{
  --thailand-pink:#ec3b88;
  --thailand-pink-light:#f78fbd;
  --thailand-pink-dark:#c9286e;
  --thailand-pink-soft:#fff1f8;
  --thailand-text:#2d2430;
  --thailand-border:#f1d8e5;
}

html,body{
  background-color:#ffffff !important;
  color:var(--thailand-text) !important;
}

/* Header colors only, preserving original header structure and dimensions. */
.site-header.premium-header,
.site-header .premium-header-inner,
.site-header .premium-header-main,
.site-header .premium-header-bottom,
.mobile-premium-header,
.mobile-bottom-row{
  background-color:#ffffff !important;
  border-color:var(--thailand-border) !important;
}

.site-header .premium-header-top,
.mobile-top-row{
  background-color:var(--thailand-pink-light) !important;
  border-color:var(--thailand-pink-light) !important;
  color:#ffffff !important;
}

.site-header .premium-header-top a,
.site-header .premium-header-top button,
.mobile-top-row a,
.mobile-top-row button{
  color:#ffffff !important;
}

.site-header .header-nav,
.site-header .header-nav .nav-menu,
.site-header .header-nav .wx-primary-menu{
  background-color:var(--thailand-pink) !important;
  border-color:var(--thailand-pink) !important;
}

.site-header .header-nav a{
  color:#ffffff !important;
  border-color:rgba(255,255,255,.45) !important;
  background-color:transparent !important;
}

.site-header .header-nav a:hover,
.site-header .header-nav a:focus{
  color:#ffffff !important;
  background-color:rgba(255,255,255,.14) !important;
}

.site-header .laex-site-brand,
.mobile-premium-header .laex-site-brand{
  color:#e52e70 !important;
  text-shadow:none !important;
}

.site-header .btn-register,
.site-header .mobile-login-btn,
.mobile-login-btn,
.fp-primary-btn,
.fp-card-btn,
.cc-show-all-btn,
button[type="submit"],
input[type="submit"],
.wp-element-button{
  background-color:var(--thailand-pink) !important;
  border-color:var(--thailand-pink) !important;
  color:#ffffff !important;
}

.header-search input,
.callglin-smart-search-form input,
.mobile-cc-search,
.drawer-search input{
  background-color:#ffffff !important;
  border-color:var(--thailand-pink) !important;
  color:#222222 !important;
}

.header-search button,
.callglin-smart-search-form button,
.mobile-search-icon,
.mobile-menu-btn,
.mobile-cc-toggle,
.lang-current,
.mobile-theme-toggle{
  border-color:var(--thailand-pink) !important;
}

.language-menu,
.mobile-cc-dropdown,
.mobile-menu-drawer,
.mobile-drawer,
.drawer-panel{
  background-color:#ffffff !important;
  border-color:var(--thailand-border) !important;
  color:#222222 !important;
}

.language-menu a,
.mobile-cc-dropdown button,
.mobile-menu-drawer a,
.mobile-drawer a,
.drawer-panel a{
  color:#222222 !important;
}

.language-menu a:hover,
.mobile-cc-dropdown button:hover,
.mobile-menu-drawer a:hover,
.mobile-drawer a:hover,
.drawer-panel a:hover{
  background-color:var(--thailand-pink-soft) !important;
  color:var(--thailand-pink-dark) !important;
}

/* Main content colors only. */
main,.site-main,.home-main,.page-content,.entry-content,
.loc-page,.location-directory{
  background-color:#ffffff !important;
  color:#222222 !important;
}

.fp-hero{
  background:linear-gradient(135deg,#ffffff 0%,#fff7fb 55%,#ffe6f3 100%) !important;
  border-color:var(--thailand-border) !important;
}

.fp-kicker,.fp-section-kicker,.location-kicker,.loc-kicker,.loc-strip-title span,
.section-kicker,.eyebrow,.card-kicker{
  color:var(--thailand-pink-dark) !important;
}

.fp-hero h1,.fp-seo-content h2,.fp-seo-content h3,
.location-hero h1,.location-content h2,.location-content h3,
.loc-page h1,.loc-page h2,.section-heading,.block-title,.entry-title,.page-title{
  color:#2a2025 !important;
}

.fp-secondary-btn{
  background-color:#ffffff !important;
  border-color:var(--thailand-pink) !important;
  color:var(--thailand-pink-dark) !important;
}

.escort-card,.profile-card,.agency-card,.massage-card,.club-card,.review-card,
.package-card,.location-card,.city-card,.info-card,.content-card,.sidebar-card,
.fp-hero-destination-card,.fp-location-link-grid a,.loc-feature-card,.loc-city-card,
.cc-city,.city-sponsored-disclosure{
  background-color:#ffffff !important;
  border-color:#efc6da !important;
}

.cc-strip,.location-strip,.directory-toolbar,.filter-bar,
.fp-register-cta,.fp-seo-content,.fp-trust-strip,.location-hero,
.loc-compact-hero,.loc-directory-shell,.loc-popular-strip{
  border-color:var(--thailand-border) !important;
}

.cc-strip .cc-country-select,.cc-strip .cc-city,.location-pill,.filter-pill,.chip{
  background-color:#ffffff !important;
  border-color:var(--thailand-pink-dark) !important;
  color:#222222 !important;
}

.cc-strip .cc-city:hover,.location-pill:hover,.filter-pill:hover,.chip:hover,.chip.active{
  background-color:var(--thailand-pink-soft) !important;
  border-color:var(--thailand-pink) !important;
  color:#222222 !important;
}

.location-prose a,.fp-seo-content a,.entry-content a,a{
  color:var(--thailand-pink-dark);
}

/* Footer colors only. */
.site-footer.premium-footer{
  background-color:#ffffff !important;
  color:#343434 !important;
  border-color:var(--thailand-pink) !important;
}

.site-footer .footer-col h4,
.site-footer .laex-site-brand{
  color:var(--thailand-pink-dark) !important;
  text-shadow:none !important;
}

.site-footer a{color:#4a3942 !important;}
.site-footer a:hover{color:var(--thailand-pink-dark) !important;}
.site-footer .footer-badges span{
  background-color:var(--thailand-pink-soft) !important;
  color:var(--thailand-pink-dark) !important;
  border-color:#efc6da !important;
}

/* ============================================================
   2026-08-07 UI refinements requested for Thailand conversion
   - Popular locations follows the supplied compact two-column format.
   - Footer contrast is repaired for the light Thailand palette.
   - SEO target phrases receive a consistent visible highlight.
   - Sponsored ads: desktop open by default, mobile collapsed by default.
============================================================ */

/* SEO keyword emphasis without changing document hierarchy. */
.seo-keyword{
  display:inline;
  padding:1px 5px 2px;
  border-radius:5px;
  background:#ffe4f1;
  color:#b9145c !important;
  font-weight:800 !important;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.fp-hero h1 .seo-keyword,
.location-hero h1 .seo-keyword,
.city-hero h1 .seo-keyword{
  padding:0 2px;
  border-radius:0;
  background:transparent;
  color:#d92570 !important;
  box-shadow:inset 0 -.28em 0 rgba(242,55,136,.16);
}

/* Popular Thailand Locations: compact premium two-column panel. */
body.home .fp-hero-destinations,
body.page-template-front-page .fp-hero-destinations{
  border:1px solid rgba(236,59,136,.34) !important;
  border-radius:19px !important;
  background:linear-gradient(135deg,#fff7fb 0%,#ffe6f2 100%) !important;
  box-shadow:0 16px 34px rgba(112,30,72,.12) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
body.home .fp-hero-destinations-head,
body.page-template-front-page .fp-hero-destinations-head{
  border-bottom:1px solid rgba(255,255,255,.18) !important;
}
body.home .fp-hero-destinations-head span,
body.page-template-front-page .fp-hero-destinations-head span{
  color:#2d2430 !important;
  font-size:1rem !important;
}
body.home .fp-hero-destinations-head small,
body.page-template-front-page .fp-hero-destinations-head small{
  min-height:auto !important;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#c9286e !important;
  font-size:.64rem !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
}
body.home .fp-hero-destination-grid,
body.page-template-front-page .fp-hero-destination-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
}
body.home .fp-hero-destination-card,
body.page-template-front-page .fp-hero-destination-card{
  min-height:51px !important;
  grid-template-columns:34px minmax(0,1fr) !important;
  padding:8px 10px !important;
  border:1px solid rgba(236,59,136,.20) !important;
  border-radius:13px !important;
  background:#ffffff !important;
  color:#2d2430 !important;
  box-shadow:none !important;
}
body.home .fp-hero-destination-card:hover,
body.home .fp-hero-destination-card:focus-visible,
body.page-template-front-page .fp-hero-destination-card:hover,
body.page-template-front-page .fp-hero-destination-card:focus-visible{
  transform:translateY(-1px) !important;
  background:#fff1f7 !important;
  border-color:rgba(236,59,136,.45) !important;
  box-shadow:0 8px 18px rgba(0,0,0,.16) !important;
}
body.home .fp-hero-destination-flag,
body.page-template-front-page .fp-hero-destination-flag{
  width:34px !important;
  height:34px !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.10) !important;
  box-shadow:none !important;
}
body.home .fp-hero-destination-copy strong,
body.page-template-front-page .fp-hero-destination-copy strong{
  color:#ffffff !important;
  font-size:.78rem !important;
}
body.home .fp-hero-destination-copy em,
body.page-template-front-page .fp-hero-destination-copy em{
  color:#f2dbe5 !important;
  font-size:.61rem !important;
  -webkit-line-clamp:1 !important;
}
@media (max-width:560px){
  body.home .fp-hero-destination-grid,
  body.page-template-front-page .fp-hero-destination-grid{
    grid-template-columns:1fr !important;
  }
}

/* Footer visibility fix. Keep existing footer layout, repair only visual contrast. */
.site-footer.premium-footer.compact-premium-footer{
  background:
    radial-gradient(circle at 0 0,rgba(249,135,197,.24),transparent 30%),
    radial-gradient(circle at 100% 100%,rgba(242,55,136,.12),transparent 32%),
    linear-gradient(135deg,#fff8fc 0%,#ffffff 54%,#fff1f8 100%) !important;
  border-top:2px solid #f23788 !important;
  color:#4b3942 !important;
}
.site-footer.premium-footer.compact-premium-footer .footer-glow{
  background:linear-gradient(90deg,rgba(242,55,136,.08),transparent 45%,rgba(249,135,197,.10)) !important;
  opacity:.55 !important;
}
.site-footer.premium-footer.compact-premium-footer .footer-logo .laex-site-brand{
  color:#d92570 !important;
}
.site-footer.premium-footer.compact-premium-footer .footer-text{
  color:#66525c !important;
}
.site-footer.premium-footer.compact-premium-footer h4{
  color:#d92570 !important;
}
.site-footer.premium-footer.compact-premium-footer ul a{
  color:#59454f !important;
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(242,55,136,.10) !important;
}
.site-footer.premium-footer.compact-premium-footer ul a:hover{
  color:#b9145c !important;
  background:#fff0f7 !important;
  border-color:rgba(242,55,136,.28) !important;
}
.site-footer.premium-footer.compact-premium-footer .footer-badges span{
  color:#b9145c !important;
  background:#fff0f7 !important;
  border-color:rgba(242,55,136,.24) !important;
}
.site-footer.premium-footer.compact-premium-footer .compact-footer-bottom{
  color:#816c76 !important;
  border-top-color:rgba(242,55,136,.14) !important;
}
.site-footer.premium-footer.compact-premium-footer .compact-footer-bottom a,
.site-footer.premium-footer.compact-premium-footer .footer-bottom-links a{
  color:#66525c !important;
}
.site-footer.premium-footer.compact-premium-footer .compact-footer-bottom a:hover,
.site-footer.premium-footer.compact-premium-footer .footer-bottom-links a:hover{
  color:#b9145c !important;
}

/* Desktop sponsored ads are expanded; mobile remains a click-to-open section. */
@media (min-width:901px){
  .city-sponsored-disclosure[open] > summary,
  .city-sponsored-disclosure > summary{
    cursor:default;
  }
  .city-sponsored-disclosure[open] .city-sponsored-summary-action{
    font-size:11px !important;
  }
  .city-sponsored-disclosure[open] .city-sponsored-summary-action:before{
    content:none !important;
  }
  .city-sponsored-disclosure[open] .city-sponsored-summary-action:after{
    content:"" !important;
    display:none !important;
  }
}
@media (max-width:900px){
  .city-sponsored-disclosure:not([open]) .city-sponsored-content{
    display:none !important;
  }
  .city-sponsored-disclosure > summary{
    background:#fff0f7 !important;
    color:#b9145c !important;
    border-bottom-color:rgba(242,55,136,.14) !important;
  }
  .city-sponsored-summary-action{
    color:#b9145c !important;
  }
  .city-sponsored-summary-action:after{
    background:rgba(242,55,136,.12) !important;
  }
}


/* ============================================================
   BELINDAGREY BRAND + SPONSORED ADS + LOCATION VISIBILITY
   2026-08-08 production refinement
============================================================ */

/* Force one consistent Bangkok Escorts Services wordmark in header/mobile/footer. */
.belindagrey-logo{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
}
.site-header .site-logo.belindagrey-logo{height:54px !important;max-height:54px !important;}
.mobile-premium-header .mobile-site-logo.belindagrey-logo{height:38px !important;max-height:38px !important;}
.site-footer .footer-logo .belindagrey-logo{width:min(240px,100%) !important;height:auto !important;max-height:64px !important;}

/* Sponsored ads share one distinct visual system on every template. */
.banner-wrap.location-banner-wrap,
.banner-wrap:not(.city-banner-wrap),
.city-sponsored-disclosure{
  border:1px solid rgba(242,55,136,.28) !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,#fffafd 0%,#fff1f8 55%,#ffffff 100%) !important;
  box-shadow:0 10px 28px rgba(112,21,62,.08) !important;
  overflow:hidden !important;
}
.banner-main,
.normal-banner-main,
.city-sponsored-content{
  background:transparent !important;
}
.banner-grid a,
.normal-banner-grid a,
.city-sponsored-content .normal-banner-grid a,
.city-sponsored-content .city-banner-grid a,
.city-sponsored-content .city-banner-grid .city-banner-item--no-link{
  position:relative !important;
  border:1px solid rgba(242,55,136,.22) !important;
  border-radius:12px !important;
  background:#ffffff !important;
  box-shadow:0 5px 16px rgba(88,20,52,.08) !important;
  overflow:hidden !important;
}
.banner-grid a::after,
.normal-banner-grid a::after,
.city-sponsored-content .normal-banner-grid a::after,
.city-sponsored-content .city-banner-grid a::after{
  content:"AD";
  position:absolute;
  top:4px;
  right:4px;
  z-index:2;
  display:grid;
  place-items:center;
  min-width:22px;
  height:15px;
  padding:0 4px;
  border-radius:999px;
  background:rgba(242,55,136,.9);
  color:#fff;
  font-size:8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
}

/* Desktop: ads are visible by default, and no Sponsored Ads heading/bar is shown. */
@media (min-width:901px){
  .banner-mobile-toggle,
  .normal-banner-heading,
  .banner-heading,
  .city-sponsored-disclosure > summary{
    display:none !important;
  }
  #bannerMobileContent,
  .banner-main,
  .normal-banner-main,
  .city-sponsored-disclosure .city-sponsored-content{
    display:block !important;
    max-height:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  .city-sponsored-disclosure{
    padding:10px !important;
  }
  .city-sponsored-disclosure .city-sponsored-content{
    padding:0 !important;
  }
}

/* Mobile/tablet retains the existing click-to-open Sponsored Ads heading. */
@media (max-width:900px){
  .banner-mobile-toggle{display:flex !important;}
  .normal-banner-heading,.banner-heading{display:flex;}
  .city-sponsored-disclosure > summary{display:flex !important;}
}

/* Dark panels must always use readable headings. The Thailand destination
   panel is light, so its card labels are intentionally excluded here. */
.fp-trust-strip[style*="background"] h2,
.fp-trust-strip[style*="background"] h3{
  color:#ffffff !important;
}

/* Browse by Location: make every text element readable and align it to the
   Thailand pink/white theme instead of leaving black-on-black remnants. */
.loc-page{
  background:
    radial-gradient(circle at 8% 0%,rgba(249,135,197,.16),transparent 28%),
    linear-gradient(135deg,#fff8fc 0%,#ffffff 58%,#fff1f8 100%) !important;
  color:#2a2025 !important;
}
.loc-compact-hero,
.loc-popular-strip,
.loc-directory-shell,
.loc-letter-block,
.loc-toolbar,
.loc-compact-tools{
  background:#ffffff !important;
  border-color:rgba(242,55,136,.22) !important;
  box-shadow:0 12px 34px rgba(112,21,62,.08) !important;
}
.loc-compact-hero::before{background:linear-gradient(135deg,rgba(249,135,197,.14),transparent 40%) !important;}
.loc-page .loc-compact-hero h1,
.loc-page .loc-letter-head h2,
.loc-page .loc-strip-title strong,
.loc-page .loc-directory-label span,
.loc-page .loc-directory-label strong,
.loc-page .loc-feature-card span,
.loc-page .loc-city-name,
.loc-page h1,
.loc-page h2,
.loc-page h3{
  color:#2a2025 !important;
}
.loc-page .loc-compact-hero p,
.loc-page p,
.loc-page small,
.loc-page em,
.loc-page .loc-compact-stats span{
  color:#6b5661 !important;
}
.loc-compact-stats div,
.loc-az-nav,
.loc-feature-card,
.loc-city-card{
  background:#fff8fc !important;
  border-color:rgba(242,55,136,.20) !important;
}
.loc-compact-stats strong{color:#d92570 !important;}
.loc-feature-card small,.loc-city-card small,.loc-city-card em,.loc-kicker,.loc-strip-title span,.loc-toolbar-note{color:#b9145c !important;}
.loc-az-nav a{
  color:#b9145c !important;
  background:#ffffff !important;
  border-color:rgba(242,55,136,.20) !important;
}
.loc-az-nav a:hover{color:#ffffff !important;background:#f23788 !important;border-color:#f23788 !important;}
.loc-letter-head h2{background:linear-gradient(135deg,#f987c5,#f23788) !important;color:#ffffff !important;}

/* Footer brand/text contrast reinforcement. */
.site-footer.premium-footer.compact-premium-footer,
.site-footer.premium-footer.compact-premium-footer p,
.site-footer.premium-footer.compact-premium-footer span,
.site-footer.premium-footer.compact-premium-footer li{
  opacity:1 !important;
}

/* ============================================================
   BELINDAGREY STARTER EXAMPLE LISTINGS
============================================================ */
.badge-example-listing {
  background: #ffffff !important;
  color: #c81767 !important;
  border: 1px solid #f23788 !important;
  box-shadow: 0 4px 14px rgba(242,55,136,.18) !important;
}

.bsr-example-profile-notice {
  width: min(1400px, calc(100% - 32px));
  margin: 18px auto 0;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid #f23788;
  border-radius: 14px;
  background: #fff5fa;
  color: #222;
}
.bsr-example-profile-notice div {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.bsr-example-profile-notice strong {
  color: #d51f70;
  font-size: 15px;
}
.bsr-example-profile-notice span {
  font-size: 13px;
  line-height: 1.5;
}
.bsr-example-profile-notice a {
  flex: 0 0 auto;
  padding: 10px 16px;
  border-radius: 999px;
  background: #f23788;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
}
@media (max-width: 700px) {
  .bsr-example-profile-notice {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* ============================================================
   FRONT PAGE GRID FLOW FIX
   2026-08-08
   Keep the hero/ads and profile listings in the same left grid column.
   Previously they were separate grid items, so a taller right sidebar
   stretched the first grid row and created a large blank gap before listings.
============================================================ */
.home-grid > .home-left-column{
  min-width:0;
  width:100%;
  align-self:start;
}
.home-grid > .home-right{
  align-self:start;
}
.home-left-column > .home-left-top,
.home-left-column > .home-left-content{
  width:100%;
  min-width:0;
}
.home-left-column > .home-left-content{
  padding-top:0 !important;
}
@media (max-width:900px){
  .home-grid{
    display:block !important;
  }
  .home-left-column,
  .home-grid > .home-right{
    width:100% !important;
    max-width:100% !important;
  }
}


/* ============================================================
   THAILAND HOMEPAGE HERO - COMPACT + READABILITY FIX
   Keeps Bangkok SEO copy prominent while reducing vertical space.
============================================================ */
body.home .fp-hero.fp-hero-destination-layout,
body.page-template-front-page .fp-hero.fp-hero-destination-layout{
  grid-template-columns:minmax(0,1.7fr) minmax(390px,.9fr) !important;
  gap:16px !important;
  padding:16px 18px !important;
  border-radius:18px !important;
}

body.home .fp-hero-destination-layout .fp-hero-copy,
body.page-template-front-page .fp-hero-destination-layout .fp-hero-copy{
  justify-content:flex-start !important;
}

body.home .fp-hero-destination-layout .fp-kicker,
body.page-template-front-page .fp-hero-destination-layout .fp-kicker{
  margin-bottom:5px !important;
  font-size:.72rem !important;
  line-height:1.1 !important;
}

body.home .fp-hero-destination-layout h1,
body.page-template-front-page .fp-hero-destination-layout h1{
  margin:0 0 5px !important;
  font-size:clamp(2rem,3.15vw,3rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.04em !important;
}

body.home .fp-hero-destination-layout .fp-hero-copy > p,
body.page-template-front-page .fp-hero-destination-layout .fp-hero-copy > p{
  max-width:900px !important;
  margin:0 !important;
  font-size:.91rem !important;
  line-height:1.42 !important;
}

body.home .fp-hero-destination-layout .seo-keyword,
body.page-template-front-page .fp-hero-destination-layout .seo-keyword{
  padding:0 4px 1px !important;
  border-radius:4px !important;
}

body.home .fp-hero-destination-layout h1 .seo-keyword,
body.page-template-front-page .fp-hero-destination-layout h1 .seo-keyword{
  padding:0 1px !important;
}

body.home .fp-hero-destination-layout .fp-hero-proof,
body.page-template-front-page .fp-hero-destination-layout .fp-hero-proof{
  gap:6px !important;
  margin-top:8px !important;
}

body.home .fp-hero-destination-layout .fp-hero-proof span,
body.page-template-front-page .fp-hero-destination-layout .fp-hero-proof span{
  min-height:24px !important;
  padding:4px 9px !important;
  font-size:.65rem !important;
}

body.home .fp-hero-destination-layout .fp-hero-actions,
body.page-template-front-page .fp-hero-destination-layout .fp-hero-actions{
  gap:8px !important;
  margin-top:10px !important;
}

body.home .fp-hero-destination-layout .fp-primary-btn,
body.home .fp-hero-destination-layout .fp-secondary-btn,
body.page-template-front-page .fp-hero-destination-layout .fp-primary-btn,
body.page-template-front-page .fp-hero-destination-layout .fp-secondary-btn{
  min-height:40px !important;
  padding:9px 18px !important;
  border-radius:999px !important;
  font-size:.82rem !important;
}

body.home .fp-hero-destinations,
body.page-template-front-page .fp-hero-destinations{
  align-self:start !important;
  padding:12px !important;
  border-radius:15px !important;
  box-shadow:0 10px 24px rgba(112,30,72,.09) !important;
}

body.home .fp-hero-destinations-head,
body.page-template-front-page .fp-hero-destinations-head{
  gap:8px !important;
  margin-bottom:8px !important;
  padding:0 0 7px !important;
  border-bottom:1px solid rgba(201,40,110,.13) !important;
}

body.home .fp-hero-destinations-head span,
body.page-template-front-page .fp-hero-destinations-head span{
  color:#211923 !important;
  font-size:.88rem !important;
  line-height:1.1 !important;
  font-weight:900 !important;
}

body.home .fp-hero-destinations-head small,
body.page-template-front-page .fp-hero-destinations-head small{
  color:#c31462 !important;
  font-size:.56rem !important;
  line-height:1 !important;
  letter-spacing:.07em !important;
}

body.home .fp-hero-destination-grid,
body.page-template-front-page .fp-hero-destination-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:6px !important;
}

body.home .fp-hero-destination-card,
body.page-template-front-page .fp-hero-destination-card{
  display:grid !important;
  grid-template-columns:24px minmax(0,1fr) !important;
  gap:7px !important;
  min-height:40px !important;
  padding:6px 8px !important;
  border-color:rgba(201,40,110,.17) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#251b22 !important;
}

body.home .fp-hero-destination-flag,
body.page-template-front-page .fp-hero-destination-flag{
  width:24px !important;
  height:24px !important;
  border-radius:7px !important;
  background:#fff8fb !important;
  box-shadow:inset 0 0 0 1px rgba(201,40,110,.10) !important;
  font-size:.78rem !important;
}

/* Critical visibility fix: city names were previously forced to white. */
body.home .fp-hero-destination-copy strong,
body.page-template-front-page .fp-hero-destination-copy strong,
body.home .fp-hero-destinations .fp-hero-destination-copy strong,
body.page-template-front-page .fp-hero-destinations .fp-hero-destination-copy strong{
  display:block !important;
  margin:0 !important;
  overflow:hidden !important;
  color:#251b22 !important;
  font-size:.72rem !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

/* Notes are hidden in this compact panel. The destination name is the primary link text. */
body.home .fp-hero-destination-copy em,
body.page-template-front-page .fp-hero-destination-copy em{
  display:none !important;
}

body.home .fp-hero-destination-card:hover .fp-hero-destination-copy strong,
body.home .fp-hero-destination-card:focus-visible .fp-hero-destination-copy strong,
body.page-template-front-page .fp-hero-destination-card:hover .fp-hero-destination-copy strong,
body.page-template-front-page .fp-hero-destination-card:focus-visible .fp-hero-destination-copy strong{
  color:#b9145c !important;
}

@media (max-width:1180px){
  body.home .fp-hero.fp-hero-destination-layout,
  body.page-template-front-page .fp-hero.fp-hero-destination-layout{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  body.home .fp-hero-destination-grid,
  body.page-template-front-page .fp-hero-destination-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

@media (max-width:760px){
  body.home .fp-hero.fp-hero-destination-layout,
  body.page-template-front-page .fp-hero.fp-hero-destination-layout{
    padding:12px !important;
    gap:10px !important;
  }
  body.home .fp-hero-destination-layout h1,
  body.page-template-front-page .fp-hero-destination-layout h1{
    font-size:clamp(1.8rem,8vw,2.35rem) !important;
  }
  body.home .fp-hero-destination-layout .fp-hero-copy > p,
  body.page-template-front-page .fp-hero-destination-layout .fp-hero-copy > p{
    font-size:.84rem !important;
    line-height:1.38 !important;
  }
  body.home .fp-hero-destinations,
  body.page-template-front-page .fp-hero-destinations{
    padding:10px !important;
  }
  body.home .fp-hero-destination-grid,
  body.page-template-front-page .fp-hero-destination-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:460px){
  body.home .fp-hero-destinations-head,
  body.page-template-front-page .fp-hero-destinations-head{
    align-items:center !important;
    flex-direction:row !important;
    gap:8px !important;
  }
  body.home .fp-hero-destinations-head small,
  body.page-template-front-page .fp-hero-destinations-head small{
    display:none !important;
  }
  body.home .fp-hero-destination-grid,
  body.page-template-front-page .fp-hero-destination-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  body.home .fp-hero-destination-card,
  body.page-template-front-page .fp-hero-destination-card{
    min-height:38px !important;
    padding:6px 7px !important;
  }
  body.home .fp-hero-destination-copy strong,
  body.page-template-front-page .fp-hero-destination-copy strong{
    font-size:.69rem !important;
  }
}
