/**
 * Findar V46111 — UI Clean Homepage + PDP SAFE
 * Additive CSS only. No external dependency. Scoped to Findar body classes.
 */

:root {
  --fui-ink: #0b1220;
  --fui-muted: #607086;
  --fui-line: #e5eaf1;
  --fui-soft: #f6f8fb;
  --fui-card: #ffffff;
  --fui-blue: #164bff;
  --fui-blue-dark: #0b36c9;
  --fui-green: #16a34a;
  --fui-radius-lg: 24px;
  --fui-radius-md: 18px;
  --fui-radius-sm: 12px;
  --fui-shadow-card: 0 18px 50px rgba(11, 18, 32, .08);
  --fui-shadow-soft: 0 10px 30px rgba(11, 18, 32, .06);
}

body.findar-mobile-premium,
body.fmp-theme-header-active {
  color: var(--fui-ink);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.findar-mobile-premium a {
  text-underline-offset: 3px;
}

body.findar-mobile-premium img {
  max-width: 100%;
  height: auto;
}

/* Header cleanup */
body.fmp-theme-header-active .fmp-theme-mobile-header {
  min-height: 72px;
  padding: 10px clamp(14px, 3vw, 34px);
  border-bottom: 1px solid rgba(229, 234, 241, .9);
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(16px);
  box-shadow: 0 8px 28px rgba(11, 18, 32, .05);
}

body.fmp-theme-header-active .fmp-theme-nav a,
body.fmp-theme-header-active .fmp-theme-login,
body.fmp-theme-header-active .fmp-theme-publish {
  border-radius: 999px;
  font-weight: 850;
}

body.fmp-theme-header-active .fmp-theme-search {
  min-height: 44px;
  border: 1px solid var(--fui-line);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(11, 18, 32, .06);
}

body.fmp-theme-header-active .fmp-theme-search input {
  font-weight: 750;
}

body.fmp-theme-header-active .fmp-theme-publish,
body.findar-mobile-premium .fmp-inline-whatsapp-cta,
body.findar-mobile-premium .fmp-trulia-whatsapp,
body.findar-mobile-premium .fmp-trulia-call,
body.findar-mobile-premium .fmp-request-visit,
body.findar-mobile-premium .fmp-visit-submit {
  border-radius: 999px;
}

/* Homepage cleanup — preserves the existing 8-block architecture */
body.findar-mobile-premium-home {
  background:
    radial-gradient(circle at 16% 4%, rgba(22, 75, 255, .08), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 48%, #ffffff 100%);
}

body.findar-mobile-premium-home main,
body.findar-mobile-premium-home .site-main,
body.findar-mobile-premium-home .entry-content {
  width: 100%;
  overflow-x: clip;
}

body.findar-mobile-premium-home .entry-content > :first-child,
body.findar-mobile-premium-home main > :first-child {
  margin-top: 0 !important;
}

body.findar-mobile-premium-home .entry-content p:empty,
body.findar-mobile-premium-home .entry-content div:empty,
body.findar-mobile-premium-home .entry-content section:empty,
body.findar-mobile-premium-home .wp-block-spacer:empty {
  display: none !important;
}

body.findar-mobile-premium-home .entry-content > *,
body.findar-mobile-premium-home main > section,
body.findar-mobile-premium-home .fmp-home-section,
body.findar-mobile-premium-home .findar-home-section,
body.findar-mobile-premium-home [class*="home-section"],
body.findar-mobile-premium-home [class*="homepage-section"] {
  margin-top: clamp(34px, 5vw, 72px);
  margin-bottom: 0;
}

body.findar-mobile-premium-home .entry-content > *:last-child,
body.findar-mobile-premium-home main > section:last-child {
  margin-bottom: clamp(42px, 7vw, 92px);
}

body.findar-mobile-premium-home .entry-content > .alignwide,
body.findar-mobile-premium-home .entry-content > .alignfull > .wp-block-group__inner-container,
body.findar-mobile-premium-home main > section,
body.findar-mobile-premium-home .fmp-home-section,
body.findar-mobile-premium-home .findar-home-section {
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(16px, 3vw, 28px);
  padding-right: clamp(16px, 3vw, 28px);
}

body.findar-mobile-premium-home .entry-content h1,
body.findar-mobile-premium-home .entry-content h2,
body.findar-mobile-premium-home .entry-content h3,
body.findar-mobile-premium-home main h1,
body.findar-mobile-premium-home main h2,
body.findar-mobile-premium-home main h3 {
  color: var(--fui-ink);
  letter-spacing: -.035em;
  line-height: 1.04;
  margin-top: 0;
  margin-bottom: 14px;
}

body.findar-mobile-premium-home .entry-content h1,
body.findar-mobile-premium-home main h1 {
  font-size: clamp(38px, 6vw, 76px);
}

body.findar-mobile-premium-home .entry-content h2,
body.findar-mobile-premium-home main h2 {
  font-size: clamp(28px, 3.5vw, 46px);
}

body.findar-mobile-premium-home .entry-content p,
body.findar-mobile-premium-home main p {
  color: var(--fui-muted);
  line-height: 1.65;
}

/* Hero/search polish without changing markup */
body.findar-mobile-premium-home [class*="hero"],
body.findar-mobile-premium-home [class*="Hero"] {
  position: relative;
  overflow: hidden;
  border-radius: clamp(24px, 3vw, 36px);
}

body.findar-mobile-premium-home [class*="hero"] img,
body.findar-mobile-premium-home [class*="Hero"] img {
  object-fit: cover;
}

body.findar-mobile-premium-home [class*="search"],
body.findar-mobile-premium-home form[role="search"] {
  border-color: var(--fui-line);
}

body.findar-mobile-premium-home form[role="search"] input,
body.findar-mobile-premium-home form[role="search"] select {
  min-height: 48px;
  border-radius: 12px;
}

body.findar-mobile-premium-home form[role="search"] button,
body.findar-mobile-premium-home form[role="search"] [type="submit"] {
  min-height: 48px;
  border-radius: 999px;
  font-weight: 900;
}

/* Cards/grid cleanup */
body.findar-mobile-premium-home article,
body.findar-mobile-premium-home .card,
body.findar-mobile-premium-home [class*="card"],
body.findar-mobile-premium-home [class*="Card"],
body.findar-mobile-premium-home [class*="property"],
body.findar-mobile-premium-home [class*="listing"] {
  border-color: var(--fui-line);
}

body.findar-mobile-premium-home .card,
body.findar-mobile-premium-home [class*="card"],
body.findar-mobile-premium-home [class*="Card"] {
  border-radius: var(--fui-radius-md);
}

body.findar-mobile-premium-home .card:hover,
body.findar-mobile-premium-home [class*="card"]:hover,
body.findar-mobile-premium-home [class*="Card"]:hover {
  transform: translateY(-2px);
  box-shadow: var(--fui-shadow-soft);
}

body.findar-mobile-premium-home [class*="trust"],
body.findar-mobile-premium-home [class*="Trust"],
body.findar-mobile-premium-home [class*="why"],
body.findar-mobile-premium-home [class*="Why"] {
  border-radius: var(--fui-radius-lg);
}

/* Single property — Redfin-like structure cleanup */
body.findar-mobile-premium-single .fmp-single-page {
  background: #fff;
}

body.findar-mobile-premium-single .fmp-trulia-wrap {
  max-width: 1240px;
  padding-left: clamp(14px, 2.5vw, 28px);
  padding-right: clamp(14px, 2.5vw, 28px);
}

body.findar-mobile-premium-single .fmp-trulia-breadcrumb {
  margin-top: 18px;
  margin-bottom: 14px;
  color: var(--fui-muted);
}

body.findar-mobile-premium-single .fmp-trulia-gallery {
  border-radius: 24px;
  overflow: hidden;
  background: var(--fui-soft);
  box-shadow: var(--fui-shadow-card);
}

body.findar-mobile-premium-single .fmp-trulia-summary,
body.findar-mobile-premium-single .fmp-trulia-section,
body.findar-mobile-premium-single .fmp-trulia-contact-card,
body.findar-mobile-premium-single .fmp-trulia-ref-card,
body.findar-mobile-premium-single .fmp-pdp-trust-list {
  border: 1px solid var(--fui-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 10px 32px rgba(11, 18, 32, .045);
}

body.findar-mobile-premium-single .fmp-trulia-section {
  padding: clamp(18px, 2.5vw, 28px);
  margin-bottom: 18px;
}

body.findar-mobile-premium-single .fmp-trulia-section h2 {
  font-size: clamp(22px, 2.4vw, 30px);
  letter-spacing: -.025em;
  margin-bottom: 12px;
}

body.findar-mobile-premium-single .fmp-pdp-tabs {
  position: sticky;
  top: 76px;
  z-index: 30;
  border: 1px solid var(--fui-line);
  border-radius: 999px;
  box-shadow: 0 10px 26px rgba(11, 18, 32, .055);
  padding: 6px;
  margin: 18px 0;
}

body.findar-mobile-premium-single .fmp-pdp-tabs a {
  border-radius: 999px;
  border-bottom: 0;
}

body.findar-mobile-premium-single .fmp-pdp-tabs a.is-active,
body.findar-mobile-premium-single .fmp-pdp-tabs a:hover {
  color: #fff;
  background: var(--fui-ink);
}

body.findar-mobile-premium-single .fmp-pdp-chip,
body.findar-mobile-premium-single .fmp-pdp-sun-stats div,
body.findar-mobile-premium-single .fmp-pdp-quartier-tabs span {
  border-color: var(--fui-line);
  border-radius: 16px;
}

body.findar-mobile-premium-single .fmp-trulia-sidecol {
  align-self: start;
}

body.findar-mobile-premium-single .fmp-trulia-contact-card {
  top: 92px;
}

body.findar-mobile-premium-single .fmp-trulia-call,
body.findar-mobile-premium-single .fmp-trulia-whatsapp {
  min-height: 48px;
  font-weight: 900;
}

body.findar-mobile-premium-single .fmp-trulia-map,
body.findar-mobile-premium-single .fmp-trulia-map-empty {
  border-radius: 20px;
  overflow: hidden;
}

@media (max-width: 980px) {
  body.fmp-theme-header-active .fmp-theme-mobile-header {
    min-height: 60px;
    padding: 8px 12px;
  }

  body.findar-mobile-premium-home .entry-content > *,
  body.findar-mobile-premium-home main > section,
  body.findar-mobile-premium-home .fmp-home-section,
  body.findar-mobile-premium-home .findar-home-section,
  body.findar-mobile-premium-home [class*="home-section"],
  body.findar-mobile-premium-home [class*="homepage-section"] {
    margin-top: 34px;
  }

  body.findar-mobile-premium-home [class*="hero"],
  body.findar-mobile-premium-home [class*="Hero"] {
    border-radius: 22px;
  }

  body.findar-mobile-premium-single .fmp-pdp-tabs {
    top: 60px;
    border-radius: 18px;
  }

  body.findar-mobile-premium-single .fmp-trulia-section {
    border-radius: 18px;
    padding: 18px;
  }
}

@media (max-width: 640px) {
  body.findar-mobile-premium-home .entry-content h1,
  body.findar-mobile-premium-home main h1 {
    font-size: 38px;
  }

  body.findar-mobile-premium-home .entry-content h2,
  body.findar-mobile-premium-home main h2 {
    font-size: 28px;
  }

  body.findar-mobile-premium-home form[role="search"] input,
  body.findar-mobile-premium-home form[role="search"] select,
  body.findar-mobile-premium-home form[role="search"] button,
  body.findar-mobile-premium-home form[role="search"] [type="submit"] {
    min-height: 46px;
  }

  body.findar-mobile-premium-single .fmp-trulia-gallery,
  body.findar-mobile-premium-single .fmp-trulia-summary,
  body.findar-mobile-premium-single .fmp-trulia-section,
  body.findar-mobile-premium-single .fmp-trulia-contact-card,
  body.findar-mobile-premium-single .fmp-trulia-ref-card {
    border-radius: 18px;
  }
}
