/* Rent-A-House: manual v17, July 2024, digital red on page 45. */
:root {
  --g5-color-accent: #e00e0e;
  --g5-color-accent-foreground: #ffffff;
  --g5-color-accent-lighten: #ec5555;
  --g5-color-heading: #333333;
  --g5-color-heading-foreground: #ffffff;
  --g5-color-text-main: #444444;
  --g5-color-link: #e00e0e;
  --g5-color-link-hover: #a80b0b;
  --g5-navigation-text-color-hover: #e00e0e;
  --g5-top-bar-equal-color: #e00e0e;
  --g5-x-menu-a-text-hover: #e00e0e;
  --ere-color-accent: #e00e0e;
  --ere-color-accent-foreground: #ffffff;
  --g5-top-bar-bg-color: #56595e;
  --g5-footer-bg-color: #56595e;
  --g5-footer-text-color: #eeeeee;
  --g5-footer-widget-title-color: #ffffff;
  --g5-bottom-bar-bg-color: #4c4f54;
  --g5-bottom-bar-text-color: #eeeeee;
}
.logo-header .no-sticky { display: inline-block; padding-block: 0; }
.logo-header { padding-block: 0; }
.logo-header img {
  width: 218px !important;
  height: auto !important;
  max-height: 64px;
  max-width: 240px;
  object-fit: contain;
  transform: translateY(4px);
}
.logo-mobile-wrapper img {
  width: auto;
  height: auto;
  max-height: 52px;
  max-width: 230px;
  object-fit: contain;
}
.widget.widget-logo img.widget-logo {
  width: 100%;
  height: auto;
  max-width: 300px;
  background: transparent;
  padding: 0;
  object-fit: contain;
}
.main-footer-wrapper, .main-footer-wrapper .main-footer { background-color: #56595e; color: #eeeeee; }
.main-footer-wrapper .bottom-bar-wrapper { background-color: #4c4f54; }
.rahva-slogan { max-width: 37em; margin-top: 18px; line-height: 1.8; color: #f0f0f0; }
.rahva-contact-list, .rahva-footer-links { list-style: none; margin: 0; padding: 0; }
.rahva-contact-list li { margin-bottom: 12px; line-height: 1.7; overflow-wrap: anywhere; }
.rahva-footer-links li { margin-bottom: 10px; }
.rahva-social { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.rahva-social a { display: inline-flex; align-items: center; justify-content: center; color: inherit; gap: 8px; }
.rahva-social .fab { font-size: 18px; }
.rahva-social--footer { gap: 12px 18px; }
.rahva-social--footer a { font-size: 13px; }
.rahva-social--footer .fab { width: 20px; text-align: center; }
.rahva-social--footer a { width: 36px; height: 36px; }
.rahva-social--footer a > span { display: none; }
.rahva-social--footer .fab { font-size: 20px; }
.rahva-copyright .rahva-copyright-company::before { content: " · "; }
@media (max-width: 767px) {
  .rahva-copyright { padding-bottom: 40px; }
  .rahva-copyright .rahva-copyright-company { display: block; }
  .rahva-copyright .rahva-copyright-company::before { content: none; }
}
/* Keep descriptions available to assistive technology and native tooltips. */
.ere__loop-property-info-item.property-area .ere__lpi-label,
.ere__loop-property-info-item.property-bedrooms .ere__lpi-label,
.ere__loop-property-info-item.property-bathrooms .ere__lpi-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap !important;
  border: 0;
}
.rahva-top-contact { display: flex; gap: 20px; flex-wrap: wrap; font-size: 12px; }
.rahva-top-contact a { color: inherit; }
.header-customize-item .contact-phone a { color: #ffffff !important; white-space: nowrap; font-size: 19px; }
.contact-phone i { display: block; }
.rahva-contact-page { max-width: 960px; margin: 0 auto; padding: 50px 20px; line-height: 1.85; }
.rahva-contact-page h1 { font-size: clamp(28px, 4vw, 42px); }
.rahva-contact-page .rahva-contact-list { margin-block: 28px; }
.rahva-cta { padding: 60px 24px; text-align: center; background: #f3f3f3; }
.rahva-cta h2 { font-size: clamp(26px, 3.5vw, 36px); }
.rahva-button { display: inline-flex; align-items: center; justify-content: center; background: #e00e0e; color: #ffffff !important; padding: 13px 24px; margin-top: 12px; border-radius: 3px; }
.rahva-button:hover { background: #a80b0b; }
.rahva-demo-links { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 12px; list-style: none; margin: 20px 0 35px; padding: 0; }
.rahva-demo-links a { display: block; padding: 14px 18px; background: #f3f3f3; border-left: 3px solid #e00e0e; color: #333333; }
.rahva-demo-links a:hover { background: #e9e9e9; }
.property-title, .property-title a, .ere__single-property-title {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  overflow-wrap: break-word;
  height: auto !important;
}
.property-title a { display: block; }
.rahva-property-price {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  line-height: 1.4;
}
.rahva-property-location {
  display: flex;
  align-items: baseline;
  gap: 8px;
  white-space: normal !important;
  overflow: visible !important;
}
.rahva-property-location > i { flex-shrink: 0; }
.rahva-property-place {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: break-word;
}
.ere-property-slider .property-title { font-size: 34px !important; line-height: 1.25 !important; }
.ere-property-slider .property-title a { line-height: inherit; }
.ere-property-slider .rahva-property-price { font-size: 23px !important; }
.ere-property-slider .property-heading-inner > .ere__lpb-status { display: none; }
.ere-property-slider .rahva-property-location { margin-top: 8px; }
@media (max-width: 767px) {
  .ere-property-slider .property-title { font-size: 24px !important; line-height: 1.3 !important; }
  .ere-property-slider .rahva-property-price { font-size: 19px !important; }
  .ere-property-slider .rahva-property-location { font-size: 15px; line-height: 1.5; }
}
.ere__loop-property-badge-item.ere__term-status.for-rent {
  --ere-loop-property-badge-bg-color: #444444 !important;
}
.ere__loop-property-badge-item.ere__term-status.for-sale {
  --ere-loop-property-badge-bg-color: #e00e0e !important;
}
.ere__loop-property-badge-item.ere__term-label {
  --ere-loop-property-badge-bg-color: #555555 !important;
}
.fl-accent::first-letter {
  color: #e00e0e !important;
}
/* On phones the theme absolutely positions carousel controls over the subtitle. */
@media (max-width: 767px) {
  .ere-property-slider .property-info.layout-2 .property-info-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .ere-property-slider .property-info.layout-2 .property-info-inner::before,
  .ere-property-slider .property-info.layout-2 .property-info-inner::after {
    display: none;
  }
  .ere-property-slider .property-info.layout-2 .ere__loop-property-info-item {
    display: flex;
    align-items: center;
    float: none;
    width: auto;
    min-width: 0;
    min-height: 36px;
    margin: 0;
    padding: 0;
    gap: 8px;
  }
  .ere-property-slider .property-info.layout-2 .ere__loop-property-info-item > i {
    position: static;
    flex: 0 0 24px;
    width: 24px;
    margin: 0;
    font-size: 24px;
    line-height: 1;
  }
  .ere-property-slider .property-info.layout-2 .ere__lpi-content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 0;
    line-height: 1.4;
  }
  .ere-property-slider .property-info.layout-2 .ere__lpi-value {
    font-size: 15px;
    line-height: 1.4;
    white-space: nowrap;
  }
  .ere-property-slider .property-info.layout-2 .ere__lpi-label {
    font-size: 14px;
    line-height: 1.4;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .ere-heading.heading-contain-owl-nav {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-inline: 15px;
    margin-bottom: 24px;
  }
  .ere-heading.heading-contain-owl-nav > h2 {
    order: 0;
    width: 100%;
    margin-bottom: 8px;
    line-height: 1.3;
    white-space: normal;
  }
  .ere-heading.heading-contain-owl-nav > p {
    order: 1;
    width: 100%;
    margin: 0;
    line-height: 1.55;
    white-space: normal;
  }
  .ere-heading.heading-contain-owl-nav::after {
    order: 2;
    margin-top: 14px;
    flex-shrink: 0;
  }
  .ere-heading.heading-contain-owl-nav > .owl-nav {
    order: 3;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    align-self: flex-start;
    max-width: 100%;
    margin-top: 18px;
  }
}
@media (max-width: 479px) {
  .logo-mobile-wrapper img {
    max-height: 46px;
    max-width: 156px;
  }
}

/* Contact icons retain the original theme treatment alongside REGO data. */
.rahva-contact-icons li { position: relative; padding-left: 26px; }
.rahva-contact-icons li > .fa { position: absolute; left: 0; top: .38em; width: 18px; text-align: center; color: #e00e0e; }
.rahva-footer-links li > a::before { content: "\f0da"; font-family: FontAwesome; color: #e00e0e; margin-right: 7px; }

/* Native SVG chevrons do not depend on an icon font being installed. */
.rahva-footer-links li > a::before { content: none; }
.rahva-footer-link-icon { display: inline-block; flex-shrink: 0; width: 16px; height: 16px; margin-right: 7px; vertical-align: -2px; color: #e00e0e; }

/* Office map shares the contact content width. */
.ere__single-agency-header > .rahva-office-map { width: 100%; min-width: 0; margin-top: 28px; }
.rahva-office-map iframe { border-radius: 6px; }
.rahva-contact-layout .ere__single-agency-header { flex-wrap: wrap; }
.rahva-contact-layout .ere__single-agency-header > .ere__summary { min-width: 0; }
.rahva-contact-layout .ere__single-agency-header > .rahva-office-map {
  flex: 0 0 100%; max-width: 100%; padding: 0 15px; margin-top: 36px;
}
.rahva-contact-layout .rahva-office-map iframe { width: 100%; height: 400px; }
.rahva-office-interactive-map { width: 100%; height: 400px; border-radius: 6px; overflow: hidden; background: #f3f3f3; }
.rahva-office-map-marker { width: 52px; height: 70px; max-width: none; }
.rahva-office-map-info { max-width: 290px; color: #333; font-size: 14px; line-height: 1.6; }
.rahva-office-map-info strong { display: block; font-size: 16px; margin-bottom: 8px; }
.rahva-office-map-info p { margin: 0 0 10px; }
.rahva-office-map-info a { color: #c90000; text-decoration: underline; }
.rahva-contact-layout .rahva-office-map > p { margin-top: 12px; }
@media (min-width: 992px) {
  .rahva-contact-layout .ere__single-agency-header > .ere__summary { flex: 0 0 41.666667%; max-width: 41.666667%; }
}
@media (max-width: 767px) {
  .rahva-contact-layout .ere__single-agency-contact-info a { overflow-wrap: anywhere; }
  .rahva-contact-layout .rahva-office-map iframe { height: 340px; }
  .rahva-office-interactive-map { height: 340px; }
}

/* Uniform public REGO team portraits and accessible social links. */
.rahva-team-card { background: #fff; border: 1px solid #eee; height: 100%; }
.rahva-team-photo { display: block; aspect-ratio: 270 / 340; overflow: hidden; background: #f3f3f3; }
.rahva-team-photo img { display: block; width: 100% !important; height: 100% !important; object-fit: cover; object-position: center 25%; }
.rahva-team-card-content { padding: 18px 14px; text-align: center; }
.rahva-team-card h3 { font-size: 18px; line-height: 1.4; min-height: 2.8em; margin: 0 0 12px; }
.rahva-team-socials { display: flex; gap: 12px; justify-content: center; min-height: 30px; }
.rahva-team-socials a { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; color: #e00e0e; }
.rahva-team-profile { display: grid; grid-template-columns: minmax(200px,300px) 1fr; gap: 32px; padding: 40px 0; }
@media(max-width:767px) { .rahva-team-profile { grid-template-columns: 1fr; } .rahva-team-profile > .rahva-team-card { max-width: 300px; width: 100%; margin: auto; } }

.rahva-team-type { font-size: 14px; line-height: 1.5; min-height: 1.5em; margin: 0 0 12px; color: #56595e; }

/* Compact name, role and social links while keeping card heights consistent. */
.rahva-team-card-content { padding: 12px 10px; }
.rahva-team-card h3 { margin-bottom: 3px; min-height: 0; }
.rahva-team-type { margin-bottom: 4px; min-height: 0; }
.rahva-team-socials { gap: 8px; min-height: 28px; }
.rahva-team-socials a { width: 28px; height: 28px; }

.rahva-team-directory { padding: 35px 0 55px; }
.rahva-team-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px 24px; }
.rahva-team-grid .rahva-team-card { display: flex; flex-direction: column; min-width: 0; }
.rahva-team-grid .rahva-team-card-content { flex: 1; }
@media(max-width:1199px) { .rahva-team-grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media(max-width:991px) { .rahva-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; } }
@media(max-width:480px) { .rahva-team-grid { grid-template-columns: minmax(0,1fr); max-width: 340px; margin: auto; } }

.rahva-person { padding: 40px 0; }
.rahva-person-header { display: grid; grid-template-columns: minmax(180px,23%) minmax(0,40%) minmax(0,1fr); gap: 30px; }
.rahva-person-portrait img { width:100%; aspect-ratio:270/340; object-fit:cover; object-position:center 25%; }
.rahva-person-info h2 { font-size:30px; line-height:1.3; }
.rahva-person-info .rahva-team-socials { justify-content:flex-start; margin-bottom:12px; }
.rahva-person-role { margin-top:10px; }
.rahva-profile-button { display:block; padding:14px 18px; background:#e00e0e; color:#fff !important; text-align:center; border:0; width:100%; }
.rahva-person-contact label { display:block; font-size:14px; margin-bottom:12px; }
.rahva-person-contact input:not([type=hidden]),.rahva-person-contact textarea { display:block; width:100%; border:1px solid #ddd; padding:10px; margin-top:4px; }
.rahva-person-bio { margin:35px 0; }
.rahva-property-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.rahva-public-property { background:#f5f5f5; min-width:0; }
.rahva-public-property img { width:100%; aspect-ratio:10/7; object-fit:cover; }
.rahva-public-property > div { padding:18px; }
.rahva-public-property h3 { font-size:20px; }
@media(max-width:991px){.rahva-person-header { grid-template-columns:minmax(160px,32%) 1fr; }.rahva-person-contact { grid-column:1/-1; }.rahva-property-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:600px){.rahva-person-header,.rahva-property-grid { grid-template-columns:1fr; }.rahva-person-portrait { max-width:300px; margin:auto; width:100%; }.rahva-person-info h2 { font-size:25px; }}

/* Compact profile facts; show the biography only when supplied by REGO. */
.rahva-person-header { align-items:start; }
.rahva-person-info h2 { margin:0 0 8px; }
.rahva-person-info .rahva-person-role, .rahva-person-info .rahva-person-detail { margin:0 0 5px; line-height:1.5; }
.rahva-person-info > p { margin:0 0 8px; }
.rahva-person-info .rahva-team-socials { margin:5px 0 8px; min-height:0; }
.rahva-person-info .rahva-contact-list { margin:10px 0 0; }
.rahva-person-info .rahva-contact-list li { margin-bottom:6px; line-height:1.6; }
.rahva-person-bio { border:1px solid #e5e5e5; border-left:3px solid #e00e0e; padding:20px 24px; margin:24px 0; background:#fafafa; }
.rahva-person-bio h2 { font-size:23px; margin:0 0 12px; }
.rahva-person-bio > :last-child { margin-bottom:0; }
.rahva-person-header + #mis-inmuebles { margin-top:24px; }
.rahva-contact-icons li > .fab { position:absolute; left:0; top:.38em; width:18px; text-align:center; color:#e00e0e; }

.rahva-person-info .rahva-person-role { font-size: 20px; font-weight: 600; }
.rahva-person-info .rahva-person-fact { display: flex; align-items: baseline; gap: 10px; }
.rahva-person-fact > .fa { flex: 0 0 18px; width: 18px; font-size: 15px; text-align: center; color: #e00e0e; }
.rahva-person-info .rahva-contact-icons li { padding-left: 28px; }
.rahva-person-info .rahva-contact-icons li > .fa, .rahva-person-info .rahva-contact-icons li > .fab { width: 18px; font-size: 15px; }
.rahva-person-info .rahva-team-socials { padding-left: 28px; }
@media(max-width:600px) { .rahva-person-info .rahva-person-role { font-size: 19px; } }

/* Override theme list indentation so every profile fact shares one left edge. */
.rahva-person-info ul.rahva-contact-list.rahva-contact-icons { padding: 0 !important; margin-left: 0 !important; list-style: none; }
.rahva-person-info ul.rahva-contact-list.rahva-contact-icons > li { display: flex; align-items: baseline; gap: 10px; padding: 0 !important; margin-left: 0 !important; }
.rahva-person-info ul.rahva-contact-list.rahva-contact-icons > li > .fa,
.rahva-person-info ul.rahva-contact-list.rahva-contact-icons > li > .fab { position: static; flex: 0 0 18px; width: 18px; text-align: center; }
.rahva-person-info ul.rahva-contact-list.rahva-contact-icons > li > a { min-width: 0; overflow-wrap: anywhere; }

/* Compact property cards with indicators appropriate to the property type. */
.rahva-public-property > div { padding: 14px 16px; }
.rahva-public-property h3 { margin: 0 0 8px; line-height: 1.3; }
.rahva-public-property p { margin: 0 0 7px; line-height: 1.45; }
.rahva-property-facts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 10px; padding-top: 9px; border-top: 1px solid #e2e2e2; }
.rahva-property-facts > span { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; line-height: 1.4; }
.rahva-property-facts .fa { color: #56595e; font-size: 16px; }

.rahva-listing-detail { padding: 35px 0; }
.rahva-listing-layout { display: grid; grid-template-columns: minmax(0,2fr) minmax(260px,1fr); gap: 30px; align-items:start; }
.rahva-listing-gallery { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; border-radius:6px; background:#eee; }
.rahva-listing-gallery > a { flex:0 0 100%; scroll-snap-align:start; }
.rahva-listing-gallery img { display:block; width:100%; aspect-ratio:100/68; object-fit:contain; }
.rahva-gallery-help { font-size:13px; margin:8px 0 20px; }
.rahva-listing-section { padding:20px 0; border-bottom:1px solid #eee; }
.rahva-listing-section h2 { font-size:24px; }
.rahva-listing-features { margin:0; }
.rahva-listing-features > div { padding:10px 0; display:grid; grid-template-columns:minmax(120px,30%) 1fr; gap:15px; border-bottom:1px solid #eee; }
.rahva-listing-features dd { margin:0; }
.rahva-listing-summary { background:#f6f6f6; padding:24px; border-top:3px solid #e00e0e; }
.rahva-listing-summary h2 { font-size:26px; margin:0 0 12px; }
.rahva-listing-summary > p { margin-bottom:10px; }
.rahva-listing-price { font-size:23px; font-weight:600; }
.rahva-listing-contact { margin-top:25px; padding-top:20px; border-top:1px solid #ddd; }
.rahva-listing-contact h3 { font-size:20px; }
.rahva-listing-contact p { margin:8px 0; overflow-wrap:anywhere; }
.rahva-public-property > a { display:block; }
@media(max-width:767px){.rahva-listing-layout { grid-template-columns:minmax(0,1fr); }.rahva-listing-summary { grid-row:1; }.rahva-listing-features > div { grid-template-columns:1fr; gap:4px; }}

.rahva-gallery-stage { position: relative; }
.rahva-gallery-thumbs { display:flex; gap:8px; overflow-x:auto; padding:10px 2px 4px; }
.rahva-gallery-thumbs button { flex:0 0 100px; border:2px solid transparent; border-radius:4px; padding:2px; background:#eee; cursor:pointer; }
.rahva-gallery-thumbs button[aria-current="true"] { border-color:#e00e0e; }
.rahva-gallery-thumbs img { display:block; width:100%; height:68px; object-fit:cover; }
.rahva-gallery-thumbs button:focus-visible { outline:2px solid #56595e; outline-offset:2px; }
.rahva-gallery-arrow { position:absolute; top:50%; transform:translateY(-50%); width:38px; height:46px; border:0; background:rgba(0,0,0,.6); color:white; font-size:32px; line-height:1; cursor:pointer; }
.rahva-gallery-prev { left:8px; }.rahva-gallery-next { right:8px; }
.rahva-gallery-arrow:disabled { opacity:.3; cursor:default; }
@media(max-width:480px){.rahva-gallery-thumbs button { flex-basis:78px; }.rahva-gallery-thumbs img { height:54px; }}

.rahva-gallery-thumbs { position: relative; }
.rahva-photo-viewer { width:96vw; max-width:1600px; height:94vh; max-height:94dvh; margin:auto; border:0; padding:50px 50px 20px; background:#171717; color:#fff; border-radius:6px; overflow:hidden; }
.rahva-photo-viewer::backdrop { background:rgba(0,0,0,.88); }
.rahva-photo-viewer > img { display:block; width:100%; height:100%; object-fit:contain; }
.rahva-photo-viewer button { position:absolute; border:0; background:rgba(0,0,0,.55); color:#fff; cursor:pointer; width:42px; height:48px; font-size:38px; line-height:1; padding:0; }
.rahva-photo-viewer button:focus-visible { outline:2px solid white; outline-offset:2px; }
.rahva-viewer-close { top:4px; right:7px; }
.rahva-viewer-counter { position:absolute; top:15px; left:20px; font-size:16px; }
.rahva-viewer-prev { left:4px; top:50%; transform:translateY(-50%); }
.rahva-viewer-next { right:4px; top:50%; transform:translateY(-50%); }
@media(max-width:600px){.rahva-photo-viewer { width:100vw; max-width:100vw; height:100dvh; max-height:100dvh; border-radius:0; padding:50px 8px 16px; }.rahva-photo-viewer .rahva-viewer-prev,.rahva-photo-viewer .rahva-viewer-next { width:34px; height:42px; }}

.rahva-inline-video-button { border:0; background:#e00e0e; color:#fff; padding:12px 20px; cursor:pointer; }
.rahva-inline-video-button .fa { margin-right:8px; }
.rahva-video-viewer { width:94vw; max-width:1200px; max-height:94dvh; margin:auto; background:#171717; border:0; border-radius:6px; padding:48px 12px 12px; overflow:hidden; }
.rahva-video-viewer::backdrop { background:rgba(0,0,0,.88); }
.rahva-video-content { width:100%; aspect-ratio:16/9; max-height:calc(94dvh - 60px); }
.rahva-video-content > iframe,.rahva-video-content > video { display:block; width:100%; height:100%; border:0; object-fit:contain; }
.rahva-video-viewer .rahva-viewer-close { position:absolute; border:0; background:transparent; color:#fff; cursor:pointer; width:42px; height:40px; font-size:34px; line-height:1; }

/* Beyot-style round property actions. */
.rahva-property-actionbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:0 0 22px; padding:16px 20px; background:#f7f7f7; }
.rahva-action-buttons { display:flex; gap:16px; margin-left:auto; }
.rahva-action-buttons button { display:inline-flex; align-items:center; justify-content:center; width:50px; height:50px; padding:0; border:0; border-radius:50%; background:#333; color:#fff; font-size:23px; cursor:pointer; }
.rahva-action-buttons button:hover,.rahva-action-buttons button[aria-pressed="true"] { background:#e00e0e; }
.rahva-action-buttons button:focus-visible { outline:2px solid #e00e0e; outline-offset:3px; }
.rahva-action-status { font-size:14px; }
.rahva-actions-dialog { width:90vw; max-width:850px; max-height:85vh; margin:auto; border:0; padding:30px; background:white; color:#333; }
.rahva-actions-dialog::backdrop { background:rgba(0,0,0,.7); }
.rahva-actions-dialog h2 { font-size:24px; margin:0 30px 20px 0; }
.rahva-actions-close { position:absolute; top:8px; right:10px; background:none; border:0; font-size:30px; cursor:pointer; }
.rahva-actions-dialog > input { display:block; width:100%; margin:0 0 12px; padding:10px; }
.rahva-actions-dialog > a { display:inline-block; margin:15px 20px 0 0; }
.rahva-comparison-scroll { overflow-x:auto; }
.rahva-comparison-scroll table { width:100%; border-collapse:collapse; }
.rahva-comparison-scroll th,.rahva-comparison-scroll td { border:1px solid #ddd; padding:10px; min-width:140px; text-align:left; }
@media(max-width:480px){.rahva-property-actionbar { flex-wrap:wrap; padding:12px; }.rahva-action-buttons { gap:12px; }.rahva-action-buttons button { width:44px; height:44px; font-size:21px; }}
@media print { header,footer,.page-title,.rahva-property-actionbar,.rahva-gallery-thumbs,.rahva-gallery-arrow,.rahva-inline-video-button,.rahva-listing-contact,.back-to-top { display:none !important; }.rahva-listing-layout { display:block; }.rahva-listing-gallery > a:not(:first-child) { display:none; }.rahva-listing-summary { margin-top:20px; }.rahva-listing-detail { padding:0; } }

.rahva-property-tabs { margin:25px 0; }
.rahva-property-tabs [role=tablist] { display:flex; overflow-x:auto; background:#252525; margin-bottom:28px; }
.rahva-property-tabs [role=tab] { flex:0 0 auto; background:transparent; color:#bbb; border:0; padding:22px 30px; font-weight:600; cursor:pointer; }
.rahva-property-tabs [role=tab][aria-selected=true] { background:#e00e0e; color:white; }
.rahva-property-tabs [role=tab]:focus-visible { outline:2px solid #fff; outline-offset:-4px; }
.rahva-property-tabs [role=tabpanel][hidden] { display:none !important; }
.rahva-summary-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.rahva-summary-table { margin:0; }
.rahva-summary-table > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; padding:13px 18px; line-height:1.5; }
.rahva-summary-table > div:nth-child(odd) { background:#f7f7f7; }
.rahva-summary-table dt { font-weight:400; }.rahva-summary-table dd { margin:0; }
@media(max-width:600px){.rahva-summary-columns { grid-template-columns:1fr; gap:0; }.rahva-property-tabs [role=tab] { padding:18px 20px; }.rahva-summary-table > div { padding:12px; }}
@media print { .rahva-property-tabs [role=tablist] { display:none; }.rahva-property-tabs [role=tabpanel][hidden] { display:block !important; } }

/* Original Beyot title block and metadata strip, fed by REGO. */
.rahva-listing-heading { width:fit-content; max-width:100%; padding:20px 28px 18px; background:#4b4b4b; color:white; }
.rahva-listing-heading h2 { color:white; font-size:34px; line-height:1.25; margin:0 0 16px; }
.rahva-listing-heading-row { display:flex; flex-wrap:wrap; align-items:center; gap:14px 22px; }
.rahva-listing-heading-row > strong { font-size:26px; line-height:1.3; }
.rahva-operation-badge { background:rgba(255,255,255,.05); padding:3px 10px; }
.rahva-heading-location { display:inline-flex; align-items:center; gap:8px; }
.rahva-heading-location > .fa { color:#e00e0e; font-size:19px; }
.rahva-property-actionbar { flex-wrap:wrap; padding:16px 22px; gap:15px 22px; }
.rahva-property-header-facts { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.rahva-header-code { display:flex; align-items:center; gap:12px; line-height:1.25; }
.rahva-header-code > .fa { font-size:28px; color:#e00e0e; }
.rahva-header-code strong,.rahva-header-code span { display:block; }
.rahva-property-header-facts .rahva-property-facts { border:0; margin:0; padding:0; gap:16px; }
.rahva-property-header-facts .rahva-property-facts .fa { color:#e00e0e; font-size:24px; }
.rahva-property-header-facts .rahva-property-facts > span { gap:9px; font-weight:600; }
.rahva-action-status:empty { display:none; }
.rahva-action-status:not(:empty) { flex:1 0 100%; order:3; }
.rahva-listing-summary > .rahva-listing-contact { margin:0; padding:0; border:0; }
@media(max-width:600px){.rahva-listing-heading { width:100%; padding:18px; }.rahva-listing-heading h2 { font-size:25px; margin-bottom:12px; }.rahva-listing-heading-row > strong { font-size:21px; }.rahva-property-actionbar { padding:14px; }.rahva-property-header-facts { gap:14px; }.rahva-action-buttons { margin-left:0; }.rahva-header-code { font-size:14px; }}

/* Detail starts at its property header; omit the redundant theme banner. */
body.page-id-5042 .page-title { display: none !important; }
body.page-id-5042 #primary-content { padding-top: 30px !important; }
body.page-id-5042 .rahva-listing-detail { padding-top: 0; }

/* Align the title block with the full metadata strip below it. */
.rahva-listing-heading { width: 100%; box-sizing: border-box; }

.rahva-listing-contact-form { margin-top:20px; padding-top:18px; border-top:1px solid #ddd; }
.rahva-listing-contact-form label { display:block; font-size:14px; margin-bottom:12px; line-height:1.4; }
.rahva-listing-contact-form input:not([type=hidden]),.rahva-listing-contact-form textarea { display:block; width:100%; padding:10px; border:1px solid #ddd; background:#fff; margin-top:5px; font:inherit; }
.rahva-assigned-advisor { margin-bottom:12px; }.rahva-assigned-advisor > a,.rahva-assigned-advisor > strong { font-size:18px; font-weight:600; }

.rahva-advisor-contact-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:18px 0 0; }
.rahva-advisor-contact-buttons .rahva-profile-button { display:flex; align-items:center; justify-content:center; gap:8px; padding:12px 8px; font-size:15px; line-height:1.4; }
.rahva-advisor-contact-buttons .rahva-contact-call { background:#56595e; }
.rahva-advisor-contact-buttons .fab,.rahva-advisor-contact-buttons .fa { font-size:18px; }

/* Compact advisor heading, then up to ten strictly matching property cards. */
.rahva-listing-contact > h3 { margin:0 0 8px; line-height:1.25; }
.rahva-listing-contact .rahva-assigned-advisor { margin:0 0 10px; }
.rahva-listing-contact .rahva-assigned-advisor > a,.rahva-listing-contact .rahva-assigned-advisor > strong { display:block; line-height:1.3; }
.rahva-listing-contact .rahva-assigned-advisor > p { margin:3px 0 0; line-height:1.35; }
.rahva-similar-panel { margin-top:24px; padding-top:20px; border-top:2px solid #e00e0e; }
.rahva-similar-panel > h3 { font-size:21px; line-height:1.3; margin:0 0 14px; }
.rahva-similar-scroll { max-height:485px; overflow-y:auto; overscroll-behavior:contain; padding-right:6px; scrollbar-width:thin; scrollbar-color:#888 #eee; }
.rahva-similar-scroll:focus-visible { outline:2px solid #e00e0e; outline-offset:3px; }
.rahva-similar-card { display:grid; grid-template-columns:88px minmax(0,1fr); gap:12px; align-items:start; padding:12px 0; color:#333; border-bottom:1px solid #ddd; }
.rahva-similar-card:first-child { padding-top:0; }
.rahva-similar-card > img,.rahva-similar-placeholder { width:88px; height:95px; object-fit:cover; background:#e8e8e8; }
.rahva-similar-placeholder { display:flex; align-items:center; justify-content:center; font-size:26px; color:#777; }
.rahva-similar-card h4 { font-size:15px; line-height:1.3; margin:0 0 4px; }
.rahva-similar-card p { font-size:12px; line-height:1.4; margin:0 0 3px; }
.rahva-similar-card .rahva-similar-price { font-size:16px; font-weight:600; color:#e00e0e; }
.rahva-similar-card .rahva-similar-code { color:#777; }
.rahva-similar-card .rahva-property-facts { border:0; padding:0; margin-top:5px; gap:5px 9px; font-size:12px; }
.rahva-similar-card .rahva-property-facts .fa { font-size:13px; }
@media print { .rahva-similar-panel { display:none; } }

/* Comparison: photo-led property columns with a clear, readable fact table. */
.rahva-comparison-dialog { max-width:1180px; width:96vw; padding:28px; border-radius:10px; box-shadow:0 24px 80px #0006; }
.rahva-comparison-dialog > h2 { font-size:29px; line-height:1.2; margin-bottom:8px; padding-left:14px; border-left:4px solid #e00e0e; }
.rahva-comparison-intro { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:20px; }
.rahva-comparison-intro p { margin:0; color:#71747a; font-size:14px; line-height:1.5; }
.rahva-comparison-count { padding:6px 12px; border-radius:20px; background:#f0f1f3; color:#56595e; font-size:12px; white-space:nowrap; }
.rahva-comparison-controls { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:12px 0; border-top:1px solid #eee; font-size:13px; }
.rahva-comparison-controls label { margin:0; display:flex; align-items:center; gap:7px; font-weight:500; }
.rahva-comparison-controls input { accent-color:#e00e0e; }.rahva-comparison-controls > span { color:#888; font-size:12px; }
.rahva-comparison-dialog .rahva-comparison-scroll { border:1px solid #e4e6e9; border-radius:8px; max-height:59vh; }
.rahva-comparison-table { border-collapse:separate !important; border-spacing:0; table-layout:fixed; }
.rahva-comparison-dialog .rahva-comparison-table th,.rahva-comparison-dialog .rahva-comparison-table td { border:0; border-right:1px solid #e8e9ec; border-bottom:1px solid #e8e9ec; padding:14px; min-width:235px; width:235px; line-height:1.45; font-size:14px; vertical-align:middle; }
.rahva-comparison-dialog .rahva-comparison-table .rahva-comparison-label { min-width:175px; width:175px; position:sticky; left:0; background:#f5f6f8; z-index:1; font-weight:500; color:#56595e; }
.rahva-comparison-label .fa { width:18px; color:#777; margin-right:5px; }
.rahva-comparison-dialog .rahva-comparison-table .rahva-comparison-property { padding:0; vertical-align:top; font-weight:400; }
.rahva-comparison-property-card { padding:14px; }
.rahva-comparison-photo { position:relative; height:130px; background:#e9ebee; border-radius:6px; overflow:hidden; margin-bottom:12px; }
.rahva-comparison-photo > img { width:100%; height:100%; object-fit:cover; }
.rahva-comparison-no-photo::before { content:"\f0f7"; font-family:FontAwesome; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); font-size:36px; color:#a5a9b0; }
.rahva-comparison-operation { position:absolute; bottom:8px; left:8px; padding:3px 9px; border-radius:3px; background:#ffffffed; color:#333; font-size:11px; }
.rahva-comparison-remove { position:absolute; top:6px; right:6px; background:#fff; border:0; border-radius:50%; color:#444; width:26px; height:26px; font-size:21px; line-height:1; cursor:pointer; box-shadow:0 1px 5px #0003; }
.rahva-comparison-property-card h3 { font-size:15px; line-height:1.4; margin:0 0 7px; }
.rahva-comparison-code { color:#888; font-size:12px; margin:0 0 12px; }
.rahva-comparison-open { display:block; border:1px solid #e00e0e; color:#e00e0e; border-radius:4px; text-align:center; padding:7px 10px; font-size:12px; font-weight:600; }
.rahva-comparison-open:hover { color:white; background:#e00e0e; }
.rahva-comparison-price-row td { color:#e00e0e; font-weight:700; font-size:19px !important; }
.rahva-comparison-table tbody tr:nth-child(even) td { background:#fafbfc; }
.rahva-comparison-dialog.highlight-differences .has-difference td { background:#fff6f4; }
.rahva-comparison-footer { display:flex; align-items:center; justify-content:space-between; gap:15px; padding-top:17px; }
.rahva-comparison-footer p { font-size:12px; color:#888; margin:0; }
.rahva-comparison-clear { border:0; background:none; color:#666; text-decoration:underline; font-size:12px; cursor:pointer; }
.rahva-comparison-empty { padding:45px 20px; text-align:center; background:#f7f8fa; border-radius:8px; }
.rahva-comparison-empty > span { font-size:40px; color:#a7abb3; margin-bottom:12px; }.rahva-comparison-empty h3 { font-size:22px; }
.rahva-comparison-primary { padding:11px 18px; background:#e00e0e; color:#fff; border:0; border-radius:4px; cursor:pointer; }
@media(max-width:600px){.rahva-comparison-dialog { padding:20px 14px; }.rahva-comparison-dialog > h2 { font-size:23px; }.rahva-comparison-intro { align-items:flex-start; }.rahva-comparison-controls > span { display:none; }.rahva-comparison-dialog .rahva-comparison-table .rahva-comparison-label { min-width:125px; width:125px; font-size:12px; padding:10px; }.rahva-comparison-dialog .rahva-comparison-table td,.rahva-comparison-dialog .rahva-comparison-table th { min-width:210px; width:210px; }.rahva-comparison-footer { align-items:flex-start; }}

.rahva-comparison-dialog[open] { display:flex; flex-direction:column; height:90dvh; max-height:90dvh; overflow:hidden; box-sizing:border-box; }
.rahva-comparison-dialog > h2 { flex-shrink:0; }
.rahva-comparison-content { display:flex; flex-direction:column; flex:1; min-height:0; }
.rahva-comparison-intro,.rahva-comparison-controls,.rahva-comparison-footer { flex-shrink:0; }
.rahva-comparison-dialog .rahva-comparison-scroll { flex:1; min-height:0; max-height:none; }
.rahva-comparison-dialog .rahva-actions-close { width:30px; height:30px; line-height:1; border-radius:50%; color:#666; }
.rahva-comparison-dialog .rahva-actions-close:hover { background:#f3f3f3; color:#e00e0e; }
.rahva-comparison-photo { height:115px; }
@media(max-width:600px){.rahva-comparison-intro { margin-bottom:10px; }.rahva-comparison-controls { padding:10px 0; }.rahva-comparison-photo { height:100px; }.rahva-comparison-footer { padding-top:12px; }}

/* Fit up to four fresh property columns without horizontal scrolling. */
.rahva-comparison-dialog .rahva-comparison-scroll { overflow-x:hidden; overflow-y:auto; }
.rahva-comparison-dialog .rahva-comparison-table { width:100%; table-layout:fixed; }
.rahva-comparison-dialog .rahva-comparison-table th,.rahva-comparison-dialog .rahva-comparison-table td { width:auto; min-width:0; padding:10px; overflow-wrap:anywhere; }
.rahva-comparison-dialog .rahva-comparison-table .rahva-comparison-label { width:100px; min-width:0; padding:10px; font-size:12px; }
.rahva-comparison-label .fa { width:14px; margin-right:3px; }
.rahva-comparison-property-card { padding:10px; }
.rahva-comparison-photo { height:110px; margin-bottom:8px; }
.rahva-comparison-code { text-align:center; font-weight:600; font-size:13px; color:#56595e; margin:0 0 8px; }
.rahva-comparison-operation { font-size:10px; padding:2px 6px; }
.rahva-comparison-price-row td { font-size:17px !important; }
.rahva-comparison-loading { padding:35px 15px; color:#666; }
.rahva-comparison-unavailable { color:#8d4c20 !important; font-size:12px !important; }
@media(max-width:600px){.rahva-comparison-dialog { padding:16px 8px; width:98vw; }.rahva-comparison-dialog .rahva-comparison-table .rahva-comparison-label { width:55px; padding:5px; font-size:10px; }.rahva-comparison-label .fa { display:none; }.rahva-comparison-dialog .rahva-comparison-table th,.rahva-comparison-dialog .rahva-comparison-table td { min-width:0; width:auto; padding:5px; font-size:11px; }.rahva-comparison-property-card { padding:4px; }.rahva-comparison-photo { height:65px; }.rahva-comparison-operation { display:none; }.rahva-comparison-remove { width:22px; height:22px; font-size:18px; top:3px; right:3px; }.rahva-comparison-open { padding:5px 2px; font-size:10px; }.rahva-comparison-price-row td { font-size:12px !important; }.rahva-comparison-code { font-size:10px; }}

/* Subtle remove control with a centered cross, without the white bubble. */
.rahva-comparison-photo .rahva-comparison-remove { display:flex; align-items:center; justify-content:center; top:7px; right:7px; left:auto; width:26px; height:26px; min-width:0; min-height:0; padding:0; border:0; border-radius:4px; background:rgba(25,25,25,.72); color:#fff; box-shadow:none; font-family:Arial,sans-serif; font-size:23px; font-weight:400; line-height:1; }
.rahva-comparison-photo .rahva-comparison-remove:hover { background:#e00e0e; }
.rahva-comparison-photo .rahva-comparison-remove:focus-visible { outline:2px solid #fff; outline-offset:2px; }
@media(max-width:600px){.rahva-comparison-photo .rahva-comparison-remove { top:3px; right:3px; width:22px; height:22px; font-size:20px; }}

/* Home One sections backed by REGO, retaining the photo-led carousel layout. */
.rahva-home-slide { position:relative; }
.rahva-home-hero-image { display:block; }
.rahva-home-hero-image img { display:block; width:100%; height:650px; object-fit:cover; }
.rahva-home-hero-overlay { position:absolute; left:max(30px,calc((100% - 1140px)/2)); right:30px; bottom:60px; pointer-events:none; }
.rahva-home-hero-caption { width:fit-content; max-width:100%; padding:18px 24px; background:rgba(55,55,55,.9); color:#fff; pointer-events:auto; }
.rahva-home-hero-caption h2 { font-size:34px; margin:0 0 10px; line-height:1.25; }
.rahva-home-hero-caption h2 a { color:#fff; }
.rahva-home-hero-details { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; line-height:1.4; }
.rahva-home-hero-details strong { font-size:25px; }
.rahva-home-hero-details .fa { color:#e00e0e; }
.rahva-home-hero-facts { padding:14px 24px; background:rgba(255,255,255,.94); width:fit-content; max-width:100%; }
.rahva-home-hero-facts .rahva-property-facts { border:0; padding:0; margin:0; gap:20px; }
.rahva-home-hero-facts .fa { font-size:24px; }.rahva-home-hero-facts span { font-size:18px; font-weight:600; }
.rahva-home-hero .owl-nav { position:absolute; bottom:15px; left:50%; transform:translateX(-50%); display:flex; gap:6px; }
.rahva-home-hero .owl-nav button,.rahva-home-property-carousel .owl-nav button { background:#e00e0e !important; color:#fff !important; min-width:38px; height:38px; border:0; }
.rahva-home-discover .ere-heading { margin-bottom:28px; }
.rahva-home-property-carousel .owl-stage { display:flex; }.rahva-home-property-carousel .owl-item .rahva-public-property { height:100%; }
.rahva-home-property-carousel .owl-nav { display:flex; justify-content:flex-end; gap:6px; margin-top:18px; }
.rahva-pending-label { display:inline-block; background:#e00e0e; color:#fff; font-size:12px; margin-top:10px; padding:3px 9px; }
@media(max-width:767px){.rahva-home-hero-image img { height:420px; }.rahva-home-hero-overlay { left:0; right:0; bottom:0; position:relative; }.rahva-home-hero-caption,.rahva-home-hero-facts { width:100%; }.rahva-home-hero-caption { padding:16px 20px; }.rahva-home-hero-caption h2 { font-size:24px; }.rahva-home-hero-details strong { font-size:20px; }.rahva-home-hero-facts { padding:13px 20px; }.rahva-home-hero-facts .rahva-property-facts { gap:10px 18px; }.rahva-home-hero-facts span { font-size:15px; }.rahva-home-hero .owl-nav { bottom:auto; top:360px; }.rahva-home-discover .ere-heading h2 { font-size:23px; }}

/* Keep carousel navigation off the property text and preserve clear controls. */
.rahva-home-property-carousel .owl-nav .owl-prev,.rahva-home-property-carousel .owl-nav .owl-next { position:static !important; float:none !important; transform:none !important; display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; line-height:1; background:#e00e0e; color:#fff; }
.rahva-home-property-carousel .owl-nav .owl-prev::before,.rahva-home-property-carousel .owl-nav .owl-next::before { display:none; }
.rahva-home-hero .owl-nav { width:auto; }
.rahva-home-hero .owl-nav .owl-prev,.rahva-home-hero .owl-nav .owl-next { position:static !important; float:none !important; transform:none !important; display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; line-height:1; background:#e00e0e; color:#fff; }
.rahva-home-hero .owl-nav .owl-prev::before,.rahva-home-hero .owl-nav .owl-next::before { display:none; }

/* Shorter transition from property carousel to the home team. */
.home .vc_custom_1481266908202 { margin-bottom:30px !important; }

/* Mobile property detail: gallery first, then contact and the remaining details. */
@media(max-width:767px){
 .rahva-listing-layout > div:first-child { display:contents; }
 .rahva-listing-layout > div:first-child > .rahva-gallery { order:1; min-width:0; }
 .rahva-listing-layout > .rahva-listing-summary { grid-row:auto; order:2; min-width:0; }
 .rahva-listing-layout > div:first-child > .rahva-listing-section { order:3; min-width:0; }
 .rahva-listing-layout > div:first-child > .rahva-property-tabs { order:4; min-width:0; }
}
/* Home cards use Beyot's original carousel structure and brand palette. */
.rahva-home-card { --ere-color-accent:#e00e0e; --ere-color-heading:#56595e; --ere-color-accent-foreground:#fff; --ere-loop-property-badge-bg-color:#e00e0e; --ere-loop-property-badge-color:#fff; height:100%; }
.rahva-home-discover .rahva-home-card .property-inner { display:flex; flex-direction:column; height:100%; }
.rahva-home-card .property-image { flex:none; }
.rahva-home-card .rahva-card-image-link { display:block; }
.rahva-home-card .property-image img { width:100%; aspect-ratio:400/250; height:auto; object-fit:cover; display:block; }
.rahva-home-card .property-image:before { pointer-events:none; z-index:1; }
.rahva-home-card .property-item-content { display:flex; flex:1; flex-direction:column; }
.rahva-home-card .ere__loop-property-title { font-size:20px; line-height:1.3; margin:0 0 8px; overflow:visible; white-space:normal; }
.rahva-home-card .ere__loop-property-price { font-weight:600; font-size:17px; line-height:1.4; }
.rahva-home-card .ere__loop-property-location,.rahva-home-card .rahva-card-code { font-size:13px; line-height:1.6; margin:0 0 8px; white-space:normal; }
.rahva-home-card .ere__loop-property-location .fa,.rahva-home-card .rahva-card-code .fa { color:#e00e0e; width:16px; }
.rahva-home-card .property-info { margin:4px -15px 0; position:relative; }
.rahva-home-card .rahva-card-code { margin-bottom:12px; flex:1; }
.rahva-home-card .property-info:before { content:''; position:absolute; right:100%; top:0; border-top:30px solid transparent; border-right:10px solid #e00e0e; }
.rahva-home-property-carousel .owl-item:nth-child(even) .property-info:before { border-right-color:#56595e; }
.rahva-home-card .property-inner:hover .property-info:before { border-right-color:#56595e; }
.rahva-home-card .property-info .property-info-inner { padding:9px 12px; }
.rahva-home-card .property-info .rahva-property-facts { display:flex; flex:1; flex-wrap:nowrap; align-items:center; justify-content:space-between; gap:0; margin:0; padding:0; border:0; color:#fff; }
.rahva-home-card .property-info .rahva-property-facts > span { display:inline-flex; align-items:center; gap:5px; padding:0 8px; font-size:12px; white-space:nowrap; line-height:20px; }
.rahva-home-card .property-info .rahva-property-facts > span:first-child { padding-left:0; }
.rahva-home-card .property-info .rahva-property-facts > span:last-child { padding-right:0; }
.rahva-home-card .property-info .rahva-property-facts > span+span { border-left:1px solid rgba(255,255,255,.4); }
.rahva-home-card .property-info .fa { color:#fff; font-size:15px; }
.rahva-home-card .rahva-action-buttons { gap:7px; margin:0; }
.rahva-home-card .rahva-action-buttons button { width:40px; height:40px; min-width:40px; padding:0; border:0; background:#e00e0e; color:#fff; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:17px; }
.rahva-home-card .rahva-action-buttons button:hover,.rahva-home-card .rahva-action-buttons button:focus-visible,.rahva-home-card .rahva-action-buttons button[aria-pressed=true] { background:#56595e; border-color:#56595e; }
.rahva-home-card:focus-within .ere__loop-property-action { opacity:1; }
@media(hover:none),(max-width:767px) { .rahva-home-card .ere__loop-property-action { opacity:1; top:auto; bottom:10px; right:10px; left:auto; transform:none; } }
@media(min-width:481px) and (max-width:767px){ .rahva-home-card .property-info .rahva-property-facts > span { padding:0 4px; gap:3px; font-size:11px; } }
/* Three-row property pages retain Beyot cards with tighter gutters. */
.rahva-home-discover { scroll-margin-top:110px; }
.rahva-home-property-grid { --rahva-grid-columns:4; display:grid; grid-template-columns:repeat(var(--rahva-grid-columns),minmax(0,1fr)); gap:20px 12px; outline:none; }
.rahva-home-property-grid > .rahva-home-card[hidden] { display:none !important; }
.rahva-home-property-grid > .rahva-home-card { width:auto; min-width:0; float:none; padding:0; }
.rahva-home-discover .rahva-home-property-grid .property-inner { padding:8px 8px 0; }
.rahva-home-property-grid .property-item-content { padding-top:14px; }
.rahva-home-discover .rahva-home-property-grid .property-info { margin:4px -8px 0; }
.rahva-home-property-grid > .rahva-home-card:nth-child(even) .property-info { background-color:#56595e; }
.rahva-home-property-grid > .rahva-home-card:nth-child(even) .property-info:before { border-right-color:#56595e; }

.rahva-home-property-grid .property-info .rahva-property-facts > span { padding:0 6px; }
.rahva-home-card .rahva-new-badge { --ere-loop-property-badge-bg-color:#e7e8ea; --ere-loop-property-badge-color:#222; }
.rahva-home-card .rahva-card-meta { display:flex; align-items:center; flex-wrap:wrap; gap:5px 10px; justify-content:space-between; padding-bottom:12px; flex:1; }
.rahva-home-card .rahva-card-meta .rahva-card-code { margin:0; flex:none; }
.rahva-home-card .rahva-card-age { font-size:12px; line-height:1.6; white-space:nowrap; }
.rahva-home-card .rahva-card-age .fa { color:#e00e0e; margin-right:5px; }
.rahva-home-pagination { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; border-top:1px solid #e9eaec; padding:22px 0 4px; margin-top:26px; }
.rahva-home-pagination[hidden] { display:none; }
.rahva-home-pagination .rahva-pagination-summary { margin:0; color:#72757b; font-size:13px; }
.rahva-pagination-controls { display:flex; align-items:center; gap:7px; }
.rahva-pagination-controls button { min-width:40px; height:40px; padding:0 10px; border:1px solid #e5e7eb; border-radius:10px; background:#fff; color:#56595e; font-size:14px; font-weight:600; display:inline-flex; align-items:center; justify-content:center; transition:background .2s,color .2s,box-shadow .2s; }
.rahva-pagination-controls button:first-child,.rahva-pagination-controls button:last-child { font-size:24px; font-weight:400; }
.rahva-pagination-controls button[aria-current=page] { background:#e00e0e; border-color:#e00e0e; color:#fff; box-shadow:0 5px 14px rgba(224,14,14,.18); }
.rahva-pagination-controls button:hover:not(:disabled):not([aria-current]) { background:#f2f3f5; border-color:#cdd0d5; }
.rahva-pagination-controls button:focus-visible { outline:2px solid #e00e0e; outline-offset:3px; }
.rahva-pagination-controls button:disabled { opacity:.35; cursor:default; }
@media(min-width:1200px){ .rahva-home-discover > .container { width:calc(100% - 48px); max-width:1440px; } }
@media(max-width:1199px){ .rahva-home-property-grid { --rahva-grid-columns:3; } }
@media(max-width:991px){ .rahva-home-property-grid { --rahva-grid-columns:2; } }
@media(max-width:599px){ .rahva-home-property-grid { --rahva-grid-columns:1; gap:18px; }.rahva-home-pagination { flex-direction:column; gap:12px; }.rahva-pagination-controls { gap:4px; flex-wrap:wrap; justify-content:center; }.rahva-pagination-controls button { min-width:31px; height:36px; padding:0 7px; border-radius:8px; }.rahva-home-discover { scroll-margin-top:80px; } }
/* Keep feature strips inside their own cards and align text blocks. */
.rahva-home-discover .rahva-home-card .property-info::before,
.rahva-home-discover .rahva-home-card .property-info::after { content:none; display:none; }
.rahva-home-discover .rahva-home-card .property-info { overflow:hidden; }
.rahva-home-card .rahva-card-description { color:#7b7e83; font-size:13px; line-height:1.6; height:4.8em; min-height:4.8em; margin:0 0 12px; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow-wrap:anywhere; }
.rahva-home-card .ere__loop-property-title { height:2.6em; min-height:2.6em; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.rahva-home-card .ere__loop-property-location { min-height:3.2em; max-height:3.2em; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.rahva-pagination-ellipsis { display:inline-flex; min-width:20px; height:40px; align-items:center; justify-content:center; color:#92969d; }
/* Compact card heading and closely grouped property details. */
.rahva-home-discover .rahva-home-card .property-heading { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:3px 8px; margin:0 0 9px; }
.rahva-home-discover .rahva-home-card .ere__loop-property-title { flex:1 1 auto; width:auto; height:auto; min-height:0; margin:0; font-size:18px; line-height:1.3; display:block; }
.rahva-home-discover .rahva-home-card .ere__loop-property-price { flex:0 0 auto; font-size:16px; line-height:1.4; white-space:nowrap; }
.rahva-card-price-connector { font-weight:400; color:#7b7e83; font-size:13px; }
.rahva-home-discover .rahva-home-card .rahva-card-description { margin-bottom:9px; }
.rahva-home-discover .rahva-home-card .ere__loop-property-location { height:auto; min-height:0; margin-bottom:7px; }
.rahva-home-discover .rahva-home-card .rahva-card-meta { flex:none; padding-bottom:8px; gap:4px 8px; margin-top:auto; }
.rahva-home-property-grid .property-item-content { padding-top:11px; }
/* Branded photo gallery shared by cards and the full property page. */
.rahva-photo-viewer.rahva-gallery-luxe { width:94vw; max-width:1440px; height:92dvh; max-height:92dvh; padding:0; border:1px solid #36393e; border-radius:18px; background:#17191d; color:#fff; overflow:hidden; box-shadow:0 28px 100px rgba(0,0,0,.5); }
.rahva-photo-viewer.rahva-gallery-luxe[open] { display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.rahva-photo-viewer.rahva-gallery-luxe::backdrop { background:rgba(16,18,22,.92); backdrop-filter:blur(8px); }
.rahva-gallery-luxe .rahva-viewer-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 24px; background:#22252a; border-bottom:1px solid #373a40; }
.rahva-gallery-luxe .rahva-viewer-identity { min-width:0; }
.rahva-gallery-luxe .rahva-viewer-eyebrow { display:block; font-size:10px; letter-spacing:1.7px; color:#c3c6cb; border-left:3px solid #e00e0e; padding-left:9px; margin-bottom:6px; }
.rahva-gallery-luxe .rahva-viewer-header h2 { color:#fff; font-size:20px; line-height:1.3; margin:0 0 3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.rahva-gallery-luxe .rahva-viewer-header p { margin:0; color:#b2b6bd; font-size:12px; line-height:1.4; }
.rahva-gallery-luxe .rahva-viewer-toolbar { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.rahva-gallery-luxe .rahva-viewer-count { font-size:13px; white-space:nowrap; color:#e3e5e8; background:#34373d; border:1px solid #494d55; border-radius:24px; padding:7px 12px; font-variant-numeric:tabular-nums; }
.rahva-photo-viewer.rahva-gallery-luxe button { position:static; display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid #4d5159; background:#30343a; color:#fff; border-radius:50%; font-size:16px; padding:0; line-height:1; flex-shrink:0; transition:background .18s,border-color .18s; }
.rahva-photo-viewer.rahva-gallery-luxe button:hover { background:#e00e0e; border-color:#e00e0e; }
.rahva-photo-viewer.rahva-gallery-luxe button[hidden] { display:none; }
.rahva-gallery-luxe .rahva-viewer-stage { position:relative; min-height:0; display:flex; justify-content:center; align-items:center; background:radial-gradient(ellipse at center,#303238 0,#111317 85%); overflow:hidden; padding:12px 70px; }
.rahva-gallery-luxe .rahva-viewer-main-image { width:100%; height:100%; min-height:0; object-fit:contain; display:block; transition:opacity .2s; }
.rahva-gallery-luxe .is-loading .rahva-viewer-main-image { opacity:.2; }
.rahva-gallery-luxe .rahva-viewer-loading { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); padding:12px 20px; border-radius:30px; background:#292d33; color:#d8dbe1; font-size:13px; text-align:center; }
.rahva-gallery-luxe .rahva-viewer-loading[hidden] { display:none; }
.rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-prev,.rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-next { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; z-index:2; background:rgba(42,46,52,.88); font-size:25px; box-shadow:0 3px 14px #0005; }
.rahva-gallery-luxe .rahva-viewer-prev { left:16px; }.rahva-gallery-luxe .rahva-viewer-next { right:16px; }
.rahva-gallery-luxe .rahva-viewer-footer { padding:12px 24px 10px; background:#22252a; border-top:1px solid #373a40; min-width:0; }
.rahva-gallery-luxe .rahva-viewer-thumbnails { display:flex; gap:8px; overflow-x:auto; padding:3px 2px 7px; position:relative; scrollbar-width:thin; scrollbar-color:#656a74 transparent; }
.rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-thumbnails button { width:80px; height:56px; border-radius:7px; overflow:hidden; border:2px solid transparent; background:#3b3e44; opacity:.58; }
.rahva-gallery-luxe .rahva-viewer-thumbnails img { width:100%; height:100%; object-fit:cover; display:block; }
.rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-thumbnails button[aria-current=true] { border-color:#e00e0e; opacity:1; box-shadow:0 0 0 1px #e00e0e; }
.rahva-gallery-luxe .rahva-viewer-thumbnails button:hover { opacity:1; }
.rahva-gallery-luxe .rahva-viewer-footer p { display:flex; justify-content:space-between; gap:10px; color:#969da8; font-size:11px; line-height:1.4; margin:6px 0 0; }
.rahva-gallery-luxe .rahva-viewer-caption { color:#e5e7eb; font-weight:500; }
.rahva-photo-viewer.rahva-gallery-luxe:fullscreen { width:100vw; height:100dvh; max-width:none; max-height:none; border:0; border-radius:0; }
@media(max-width:600px){
 .rahva-photo-viewer.rahva-gallery-luxe { width:100vw; max-width:100vw; height:100dvh; max-height:100dvh; border-radius:0; border:0; }
 .rahva-gallery-luxe .rahva-viewer-header { padding:14px; gap:10px; align-items:flex-start; }
 .rahva-gallery-luxe .rahva-viewer-header h2 { font-size:16px; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
 .rahva-gallery-luxe .rahva-viewer-header p { font-size:11px; }.rahva-gallery-luxe .rahva-viewer-eyebrow { font-size:8px; letter-spacing:1px; }
 .rahva-gallery-luxe .rahva-viewer-toolbar { gap:6px; flex-wrap:wrap; justify-content:flex-end; max-width:112px; }
 .rahva-gallery-luxe .rahva-viewer-count { padding:5px 8px; font-size:11px; }
 .rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-toolbar button { width:30px; height:30px; font-size:13px; }
 .rahva-gallery-luxe .rahva-viewer-stage { padding:8px; }
 .rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-prev,.rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-next { width:34px; height:34px; font-size:20px; }
 .rahva-gallery-luxe .rahva-viewer-prev { left:10px; }.rahva-gallery-luxe .rahva-viewer-next { right:10px; }
 .rahva-gallery-luxe .rahva-viewer-footer { padding:10px 12px 12px; }.rahva-photo-viewer.rahva-gallery-luxe .rahva-viewer-thumbnails button { width:64px; height:46px; }
 .rahva-gallery-luxe .rahva-viewer-footer p>span:last-child { display:none; }
}
@media(prefers-reduced-motion:reduce){.rahva-photo-viewer.rahva-gallery-luxe button,.rahva-gallery-luxe .rahva-viewer-main-image { transition:none; }}
/* Subtle brand frame without changing card dimensions. */
.rahva-home-property-grid > .rahva-home-card { position:relative; }
.rahva-home-property-grid > .rahva-home-card::after { content:''; position:absolute; inset:0; border:1px solid #e00e0e; pointer-events:none; z-index:5; opacity:0; transition:opacity .18s; }
@media(hover:hover){.rahva-home-property-grid > .rahva-home-card:hover::after { opacity:1; }}
.rahva-home-property-grid > .rahva-home-card:focus-within::after { opacity:1; }
@media(prefers-reduced-motion:reduce){.rahva-home-property-grid > .rahva-home-card::after { transition:none; }}
/* Keep pagination controls without the visible results counter. */
.rahva-home-pagination .rahva-pagination-summary { display:none; }
.rahva-home-pagination { justify-content:flex-end; }
@media(max-width:599px){.rahva-home-pagination { align-items:center; }}
/* Enlarged photo view works even when native fullscreen is unavailable. */
.rahva-photo-viewer.rahva-gallery-luxe.is-expanded { width:100vw; max-width:100vw; height:100dvh; max-height:100dvh; margin:0; border:0; border-radius:0; grid-template-rows:minmax(0,1fr); }
.rahva-gallery-luxe.is-expanded .rahva-viewer-header { position:absolute; z-index:4; top:14px; right:14px; padding:0; border:0; background:transparent; }
.rahva-gallery-luxe.is-expanded .rahva-viewer-identity,.rahva-gallery-luxe.is-expanded .rahva-viewer-footer { display:none; }
.rahva-gallery-luxe.is-expanded .rahva-viewer-toolbar { max-width:none; flex-wrap:nowrap; }
.rahva-gallery-luxe.is-expanded .rahva-viewer-stage { grid-row:1; padding:8px; }
.rahva-gallery-luxe.is-expanded .rahva-viewer-count { background:rgba(35,38,44,.9); }
.rahva-photo-viewer.rahva-gallery-luxe.is-expanded .rahva-viewer-toolbar button { background:rgba(35,38,44,.9); }
/* REGO property finder: office gray and a light, structured search panel. */
.rahva-property-search { display:grid; grid-template-columns:minmax(230px,1fr) minmax(0,3fr); background:#f1f2f4; margin:0; }
.rahva-search-intro { background:#56595e; color:#fff; padding:44px 32px; display:flex; align-items:center; justify-content:center; }
.rahva-search-eyebrow { font-size:9px; letter-spacing:1.6px; color:#d7d9dd; display:block; margin-bottom:24px; }
.rahva-search-intro p { margin:0 0 8px; font-size:18px; line-height:1.5; color:#fff; }
.rahva-search-intro h2 { color:#fff; font-size:38px; line-height:1.15; letter-spacing:-.5px; margin:0; font-weight:600; }
.rahva-search-intro h2 strong { color:#fff; font-weight:700; }
.rahva-search-intro-rule { display:block; width:54px; height:4px; background:#e00e0e; margin:24px 0; }
.rahva-search-intro .rahva-search-intro-note { color:#e0e2e5; font-size:12px; line-height:1.8; margin:0; }
.rahva-search-content { padding:32px; min-width:0; }
.rahva-search-main-heading { margin-bottom:20px; }
.rahva-search-main-heading>span { color:#858a92; font-size:10px; letter-spacing:1.5px; font-weight:600; }
.rahva-search-main-heading h3 { font-size:22px; color:#34373d; margin:5px 0 0; line-height:1.3; }
.rahva-property-search fieldset { border:0; margin:0; padding:0; min-width:0; }
.rahva-search-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.rahva-search-grid:first-child .rahva-search-field:first-child { grid-column:span 2; }
.rahva-search-field { display:flex; flex-direction:column; gap:6px; min-width:0; margin:0; color:#56595e; font-size:12px; font-weight:500; }
.rahva-search-field>span { line-height:1.4; }
.rahva-property-search .rahva-search-field select,.rahva-property-search .rahva-search-field input[type=text] { border:1px solid #d9dce2; border-radius:8px; background:#fff; color:#383c43; padding:0 12px; min-width:0; width:100%; height:44px; font-size:13px; box-shadow:0 1px 2px #00000003; transition:border-color .15s,box-shadow .15s; }
.rahva-property-search .rahva-search-field select:focus,.rahva-property-search .rahva-search-field input:focus { outline:0; border-color:#e00e0e; box-shadow:0 0 0 3px #e00e0e12; }
.rahva-property-search select:disabled { background:#e9ebef; color:#959aa3; }
.rahva-search-residential { margin-top:14px; }.rahva-property-search [data-land] { margin-top:14px; max-width:300px; }
.rahva-property-search [hidden] { display:none !important; }
.rahva-search-ranges { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:22px; padding-top:20px; border-top:1px solid #dce0e6; }
.rahva-search-range { min-width:0; --range-start:0%; --range-end:100%; }
.rahva-range-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:8px; }
.rahva-range-heading>span { font-size:12px; font-weight:600; color:#56595e; }
.rahva-property-search .rahva-range-heading output { display:block; padding:4px 8px; margin:0; font-size:12px; color:#34373d; font-weight:600; background:#fff; border:1px solid #e0e3e8; border-radius:6px; }
.rahva-range-track { height:30px; position:relative; }
.rahva-range-track::before { content:''; position:absolute; left:0; right:0; top:13px; height:4px; border-radius:6px; background:linear-gradient(to right,#cfd3da 0%,#cfd3da var(--range-start),#e00e0e var(--range-start),#e00e0e var(--range-end),#cfd3da var(--range-end),#cfd3da 100%); }
.rahva-property-search .rahva-range-track input[type=range] { appearance:none; -webkit-appearance:none; position:absolute; left:0; top:0; width:100%; height:30px; padding:0; margin:0; background:transparent; pointer-events:none; border:0; }
.rahva-range-track input[type=range]::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:17px; height:17px; border:3px solid #fff; border-radius:50%; background:#e00e0e; box-shadow:0 1px 5px #0004; pointer-events:auto; cursor:grab; }
.rahva-range-track input[type=range]::-moz-range-thumb { width:12px; height:12px; border:3px solid #fff; border-radius:50%; background:#e00e0e; box-shadow:0 1px 5px #0004; pointer-events:auto; cursor:grab; }
.rahva-range-track input[type=range]:focus-visible { outline:2px solid #e00e0e; outline-offset:2px; border-radius:8px; }
.rahva-range-scale { display:flex; justify-content:space-between; gap:10px; color:#8b9098; font-size:10px; }
.rahva-search-code-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:18px; border-top:1px solid #dce0e6; margin-top:20px; padding-top:18px; }
.rahva-search-field small { color:#868c95; font-size:10px; line-height:1.6; font-weight:400; }
.rahva-property-search .rahva-search-submit { display:inline-flex; justify-content:center; align-items:center; gap:10px; border:0; border-radius:8px; height:44px; padding:0 24px; margin-top:23px; background:#e00e0e; color:#fff; font-size:13px; font-weight:600; box-shadow:0 5px 14px #e00e0e20; transition:background .15s,transform .15s; }
.rahva-search-submit:hover { background:#bc0909; }.rahva-search-submit:disabled { opacity:.5; cursor:default; }.rahva-search-submit:focus-visible { outline:2px solid #e00e0e; outline-offset:4px; }
.rahva-search-live { display:flex; align-items:center; gap:10px; border-left:3px solid #e00e0e; background:#fff; border-radius:0 7px 7px 0; padding:12px 14px; margin-top:18px; color:#737983; font-size:12px; min-height:43px; }
.rahva-search-live strong { font-size:15px; font-weight:600; color:#393d44; }.rahva-live-dot { width:6px; height:6px; background:#e00e0e; border-radius:50%; flex:none; }
.rahva-search-live.is-loading .rahva-live-dot { animation:rahvaSearchPulse 1s infinite; }.rahva-search-live.has-error { border-color:#c54e3e; }
.rahva-search-error { color:#b91c1c; font-size:12px; margin:10px 0 0; }
.rahva-property-search.is-code-search .rahva-search-filters { opacity:.45; }
.rahva-search-filters:disabled { opacity:.45; }
.rahva-search-empty { text-align:center; padding:45px 20px; background:#f5f6f8; border:1px solid #e6e8ec; border-radius:12px; }.rahva-search-empty>.fa { color:#e00e0e; font-size:30px; }.rahva-search-empty h3 { font-size:22px; margin:16px 0 8px; }.rahva-search-empty p { color:#858a92; }.rahva-search-empty a { color:#e00e0e; }
.rahva-pagination-controls a { min-width:40px; height:40px; padding:0 10px; border:1px solid #e5e7eb; border-radius:10px; background:#fff; color:#56595e; font-size:14px; font-weight:600; display:inline-flex; align-items:center; justify-content:center; }
.rahva-pagination-controls a[aria-current=page] { background:#e00e0e; border-color:#e00e0e; color:#fff; box-shadow:0 5px 14px #e00e0e2e; }.rahva-pagination-controls a:hover { border-color:#e00e0e; }.rahva-pagination-controls a:focus-visible { outline:2px solid #e00e0e; outline-offset:3px; }
#rahva-resultados,#buscar-inmueble { scroll-margin-top:110px; }
@keyframes rahvaSearchPulse { 50% { opacity:.25; } }
@media(min-width:1440px){.rahva-search-content { padding:38px max(32px,calc((100vw - 1360px)/2)); }.rahva-search-intro { padding-left:max(32px,calc((100vw - 1360px)/2)); }}
@media(max-width:991px){.rahva-property-search { grid-template-columns:220px minmax(0,1fr); }.rahva-search-intro { padding:30px 20px; }.rahva-search-intro h2 { font-size:30px; }.rahva-search-content { padding:26px 20px; }.rahva-search-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.rahva-search-grid:first-child .rahva-search-field:first-child { grid-column:auto; }.rahva-search-code-row { grid-template-columns:1fr; gap:0; }.rahva-property-search .rahva-search-submit { margin-top:12px; }.rahva-search-ranges { gap:16px; }}
@media(max-width:640px){.rahva-property-search { grid-template-columns:1fr; }.rahva-search-intro { padding:26px 22px; justify-content:flex-start; }.rahva-search-eyebrow,.rahva-search-intro .rahva-search-intro-note,.rahva-search-intro-rule { display:none; }.rahva-search-intro p { font-size:13px; margin-bottom:4px; }.rahva-search-intro h2 { font-size:27px; }.rahva-search-intro h2 br { display:none; }.rahva-search-intro h2 strong::before { content:' '; }.rahva-search-content { padding:22px 16px; }.rahva-search-main-heading h3 { font-size:20px; }.rahva-search-ranges { grid-template-columns:1fr; gap:20px; }.rahva-search-code-row { margin-top:18px; }.rahva-search-grid { gap:12px 10px; }.rahva-search-field { font-size:11px; }.rahva-property-search .rahva-search-field select,.rahva-property-search .rahva-search-field input[type=text] { font-size:12px; padding:0 9px; }.rahva-search-live { font-size:11px; }#rahva-resultados,#buscar-inmueble { scroll-margin-top:75px; }.rahva-pagination-controls a { min-width:31px; height:36px; padding:0 7px; border-radius:8px; }}
@media(prefers-reduced-motion:reduce){.rahva-search-live.is-loading .rahva-live-dot { animation:none; }}
.rahva-search-grid.rahva-search-primary { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rahva-search-grid.rahva-search-primary .rahva-search-field:first-child { grid-column:auto; }
.rahva-search-locations { margin-top:14px; }
@media(max-width:640px){.rahva-search-locations .rahva-search-field:last-child,.rahva-search-residential .rahva-search-field:last-child { grid-column:1/-1; }}
/* Match the original full-width search strip to the site header. */
.rahva-search-fullwidth > .wpb_column > .vc_column-inner { padding-left:0 !important; padding-right:0 !important; }
.rahva-search-fullwidth .rahva-property-search { width:100%; }
.rahva-search-main-heading>span { color:#34373d; font-size:18px; font-weight:600; letter-spacing:.7px; }
@media(max-width:640px){.rahva-search-intro h2 br { display:initial; }.rahva-search-intro h2 strong::before { content:none; }.rahva-search-main-heading>span { font-size:16px; }}
/* Live matches sit alongside the search title. */
.rahva-search-main-heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 14px; }
.rahva-search-main-heading .rahva-search-live { display:inline-flex; margin:0; padding:0; border:0; border-radius:0; background:transparent; min-height:0; font-size:13px; line-height:1.4; color:#858a92; }
.rahva-search-main-heading .rahva-search-live strong { font-size:13px; color:#56595e; }
.rahva-search-main-heading .rahva-search-live.is-loading { opacity:.65; }
@media(max-width:640px){.rahva-search-main-heading { gap:6px 8px; }.rahva-search-main-heading>span { font-size:14px; letter-spacing:.2px; }.rahva-search-main-heading .rahva-search-live,.rahva-search-main-heading .rahva-search-live strong { font-size:11px; }}
/* Search rows: type/operation/price, location, then characteristics/metrage. */
.rahva-search-grid.rahva-search-primary { grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr); align-items:start; gap:14px; }
.rahva-search-primary>.rahva-search-range { margin:0; padding:0; }
.rahva-search-characteristics { display:grid; gap:14px; margin-top:16px; align-items:start; }
.rahva-search-characteristics[data-kind=residential] { grid-template-columns:repeat(3,minmax(0,1fr)) minmax(200px,1.3fr); }
.rahva-search-characteristics[data-kind=land] { grid-template-columns:minmax(0,1fr) minmax(0,2fr); }
.rahva-search-characteristics[data-kind=other] { grid-template-columns:minmax(0,1fr); }
.rahva-search-characteristics .rahva-search-residential,.rahva-search-characteristics [data-land] { display:contents; }
.rahva-search-characteristics .rahva-search-range { margin:0; padding:0; }
@media(max-width:991px){
 .rahva-search-grid.rahva-search-primary { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .rahva-search-primary>.rahva-search-range { grid-column:1/-1; margin-top:4px; }
 .rahva-search-characteristics[data-kind=residential] { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:640px){
 .rahva-search-characteristics { gap:12px 10px; }
 .rahva-search-characteristics>.rahva-search-range { grid-column:1/-1; }
 .rahva-search-characteristics[data-kind=land] { grid-template-columns:1fr; }
}
/* Searchable multiple locations and the advanced-mode switch. */
.rahva-property-search form { position:relative; }
.rahva-property-search .rahva-search-multi { min-width:0; }
.rahva-property-search .select2-container { width:100% !important; min-width:0; font-size:13px; }
.rahva-property-search .select2-container--default .select2-selection--multiple { min-height:44px; border:1px solid #d9dce2; border-radius:8px; background:#fff; padding:4px 8px; box-shadow:0 1px 2px #00000003; }
.rahva-property-search .select2-container--default.select2-container--focus .select2-selection--multiple,.rahva-property-search .select2-container--open .select2-selection--multiple { border-color:#e00e0e; box-shadow:0 0 0 3px #e00e0e12; }
.rahva-property-search .select2-container--default .select2-selection--multiple .select2-selection__rendered { display:flex; flex-wrap:wrap; align-items:center; gap:4px; margin:0; padding:0; line-height:1.5; }
.rahva-property-search .select2-container--default .select2-selection--multiple .select2-selection__choice { display:inline-flex; align-items:center; flex-direction:row-reverse; gap:6px; float:none; margin:2px 0; padding:3px 7px; border:1px solid #f1cece; background:#fff1f1; border-radius:5px; color:#733e3e; font-size:11px; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.rahva-property-search .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { color:#bd4949; margin:0; font-size:15px; }
.rahva-property-search .select2-search--inline { float:none; flex:1 1 70px; min-width:0; }
.rahva-property-search .select2-search--inline .select2-search__field { width:100% !important; height:28px; min-height:0; max-width:100%; margin:0; padding:0 2px; border:0; outline:none; color:#383c43; font:inherit; font-size:12px; background:transparent; box-shadow:none; }
.rahva-property-search .select2-container--disabled .select2-selection--multiple { background:#e9ebef; opacity:.7; }
.rahva-property-search .select2-dropdown { z-index:10020; border:1px solid #dce0e5; border-radius:8px; overflow:hidden; box-shadow:0 12px 30px #21252d20; }
.rahva-property-search .select2-results__option { padding:10px 12px; font-size:12px; line-height:1.5; white-space:normal; }
.rahva-property-search .select2-results__option[aria-selected=true] { background:#fff1f1; color:#a23030; }
.rahva-property-search .select2-results__option--highlighted[aria-selected] { background:#e00e0e; color:#fff; }
.rahva-property-search .select2-results__options { max-height:230px; scrollbar-width:thin; }
.rahva-property-search .select2-results__message { color:#777f8a; background:#f7f8fa; font-size:12px; }
.rahva-property-search .rahva-advanced-toggle { display:inline-flex; align-items:center; gap:9px; margin-left:auto; padding:6px 10px; border:1px solid #d5d9df; border-radius:20px; background:transparent; color:#737b87; font-size:12px; font-weight:500; line-height:1.4; cursor:pointer; }
.rahva-advanced-toggle .rahva-switch-track { display:block; width:28px; height:16px; border-radius:20px; background:#bfc5ce; padding:2px; transition:background .2s; }
.rahva-switch-track>span { display:block; width:12px; height:12px; border-radius:50%; background:#fff; box-shadow:0 1px 3px #0002; transition:transform .2s; }
.rahva-property-search .rahva-advanced-toggle[aria-checked=true] { color:#b22222; border-color:#edc5c5; background:#fff4f4; }
.rahva-advanced-toggle[aria-checked=true] .rahva-switch-track { background:#e00e0e; }.rahva-advanced-toggle[aria-checked=true] .rahva-switch-track>span { transform:translateX(12px); }
.rahva-advanced-toggle:focus-visible { outline:2px solid #e00e0e; outline-offset:3px; }.rahva-advanced-toggle:disabled { opacity:.4; cursor:default; }
@media(max-width:640px){.rahva-property-search .rahva-advanced-toggle { font-size:11px; padding:5px 8px; }.rahva-property-search .select2-container { font-size:12px; }.rahva-property-search .select2-search--inline .select2-search__field { font-size:12px; }}
@media(prefers-reduced-motion:reduce){.rahva-switch-track,.rahva-switch-track>span { transition:none; }}
/* Beyot-style search results: top filters, result heading and grid/list toolbar. */
.rahva-search-results-page .page-title { display:none !important; }
.rahva-search-results-page .primary-content { padding-top:24px; }
.rahva-results-page { padding-bottom:45px; }
.rahva-results-page .rahva-property-search { display:block; background:#fff; border-bottom:2px solid #e00e0e; margin-bottom:38px; }
.rahva-results-page .rahva-search-intro { display:none; }
.rahva-results-page .rahva-search-content { padding:0 0 24px; }
.rahva-results-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; margin-bottom:24px; }
.rahva-results-title h1 { margin:0; font-size:28px; color:#34373d; line-height:1.3; font-weight:600; }
.rahva-results-title h1 sup { font-size:17px; top:-.4em; }
.rahva-results-title>span { display:block; width:100px; height:4px; margin-top:17px; background:#e00e0e; }
.rahva-results-toolbar { display:flex; align-items:center; gap:14px; }
.rahva-results-toolbar form { margin:0; }
.rahva-results-toolbar select { min-width:190px; height:38px; padding:0 12px; border:1px solid #e5e7eb; background:#f7f8fa; color:#56595e; font-size:12px; border-radius:3px; }
.rahva-results-view { display:flex; gap:5px; }
.rahva-results-view a { display:inline-flex; align-items:center; justify-content:center; width:37px; height:37px; border:1px solid #e0e3e8; background:#f7f8fa; color:#848994; font-size:15px; }
.rahva-results-view a[aria-current=true] { background:#56595e; border-color:#56595e; color:#fff; }
.rahva-results-view a:hover { color:#e00e0e; }.rahva-results-view a[aria-current=true]:hover { color:#fff; }
.rahva-results-page .rahva-results-grid { --rahva-grid-columns:3; gap:24px 20px; }
.rahva-results-page .rahva-results-grid.is-list { --rahva-grid-columns:1; gap:20px; }
.rahva-results-grid.is-list .rahva-home-card .property-inner { display:grid; grid-template-columns:minmax(220px,32%) minmax(0,1fr); gap:0 18px; padding:12px 12px 0; }
.rahva-results-grid.is-list .rahva-card-image-link { height:100%; }
.rahva-results-grid.is-list .property-image { margin-bottom:12px; }
.rahva-results-grid.is-list .property-image img { height:100%; min-height:210px; object-fit:cover; }
.rahva-results-grid.is-list .property-item-content { padding-top:3px; min-width:0; }
.rahva-results-grid.is-list .rahva-home-card .property-info { margin:4px -12px 0 0; }
.rahva-results-grid.is-list .rahva-card-description { margin-top:4px; }
.rahva-results-grid.is-list .rahva-home-card .ere__loop-property-title { font-size:22px; }
.rahva-results-page .rahva-home-pagination { justify-content:center; }
@media(max-width:991px){.rahva-results-page .rahva-results-grid { --rahva-grid-columns:2; }.rahva-results-toolbar { gap:8px; }.rahva-results-toolbar select { min-width:170px; }}
@media(max-width:640px){.rahva-results-page .rahva-results-grid { --rahva-grid-columns:1; }.rahva-results-heading { gap:18px; }.rahva-results-title h1 { font-size:24px; }.rahva-results-toolbar { width:100%; justify-content:space-between; }.rahva-results-toolbar select { width:100%; min-width:0; }.rahva-results-toolbar form { flex:1; }.rahva-results-grid.is-list .rahva-home-card .property-inner { display:flex; padding:8px 8px 0; gap:0; }.rahva-results-grid.is-list .property-image { margin:0; }.rahva-results-grid.is-list .property-image img { min-height:0; height:auto; }.rahva-results-grid.is-list .property-item-content { padding-top:11px; }.rahva-results-grid.is-list .rahva-home-card .property-info { margin:4px -8px 0; }.rahva-search-results-page .primary-content { padding-top:18px; }}
/* Original save-search position; saving will require the future client account. */
.rahva-results-page .rahva-property-search { margin-bottom:0; }
.rahva-results-savebar { display:flex; justify-content:center; position:relative; margin:-2px 0 34px; }
.rahva-save-search-button { display:inline-flex; align-items:center; gap:8px; border:0; border-radius:0 0 22px 22px; background:#e00e0e; color:#fff; padding:12px 22px; font-size:12px; line-height:1.5; }
.rahva-save-search-button:hover { background:#be0b0b; }.rahva-save-search-button:focus-visible { outline:2px solid #e00e0e; outline-offset:4px; }
.rahva-search-account-dialog { position:relative; width:min(460px,calc(100vw - 32px)); max-height:90dvh; overflow:auto; padding:34px 30px 28px; border:0; border-radius:16px; background:#fff; color:#56595e; text-align:center; box-shadow:0 25px 90px #0005; }
.rahva-search-account-dialog::backdrop { background:rgba(25,28,34,.7); backdrop-filter:blur(4px); }
.rahva-search-account-dialog .rahva-account-close { position:absolute; right:12px; top:10px; border:0; background:transparent; color:#7d8490; font-size:26px; line-height:1; width:30px; height:30px; padding:0; }
.rahva-account-icon { display:flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:50%; background:#fff0f0; color:#e00e0e; font-size:34px; margin:0 auto 18px; }
.rahva-search-account-dialog h2 { color:#34373d; font-size:24px; line-height:1.3; margin:0 0 12px; }
.rahva-search-account-dialog p { font-size:14px; line-height:1.7; margin:0 0 10px; }
.rahva-search-account-dialog .rahva-account-note { color:#89909b; font-size:12px; margin:0 0 24px; }
.rahva-account-understood { border:0; border-radius:8px; background:#e00e0e; color:#fff; padding:11px 26px; font-size:13px; }
.rahva-search-account-dialog button:focus-visible { outline:2px solid #e00e0e; outline-offset:3px; }
@media(max-width:640px){.rahva-search-account-dialog { padding:30px 22px 24px; }.rahva-search-account-dialog h2 { font-size:21px; }}
.rahva-search-account-dialog { position:fixed; inset:0; height:fit-content; margin:auto; }
.rahva-search-account-dialog .rahva-account-understood,.rahva-search-account-dialog .rahva-account-understood:focus { background:#e00e0e; color:#fff; opacity:1; }
.rahva-search-account-dialog .rahva-account-understood:hover { background:#be0b0b; color:#fff; }
/* Native inline player inside the Video tab, matching the original template. */
.rahva-inline-listing-video { position:relative; width:100%; aspect-ratio:16/9; background:#15171b; overflow:hidden; }
.rahva-inline-listing-video iframe,.rahva-inline-listing-video video { display:block; position:absolute; inset:0; width:100%; height:100%; border:0; margin:0; object-fit:contain; }
/* Área de clientes: colores y proporciones de Beyot, con formularios adaptables. */
.rahva-client-dialog{position:fixed;inset:0;margin:auto;width:min(560px,calc(100% - 30px));max-height:90dvh;overflow:auto;border:0;border-radius:16px;padding:32px;color:#35383d;background:#fff;box-shadow:0 24px 90px #0005;}
.rahva-client-dialog::backdrop{background:#202329b8;backdrop-filter:blur(3px);}
.rahva-client-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#56595e;font-size:28px;line-height:1;padding:8px;}
.rahva-client-dialog-heading>span,.rahva-client-title>span{font-size:11px;font-weight:700;letter-spacing:1.5px;color:#e00e0e;}
.rahva-client-dialog h2{font-size:25px;line-height:1.3;margin:10px 0 20px;}
.rahva-client-auth-tabs{display:flex;gap:20px;border-bottom:1px solid #e7e8eb;margin:0 0 20px;}
.rahva-client-auth-tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:10px 0;color:#72767e;}
.rahva-client-auth-tabs button.is-active{color:#e00e0e;border-color:#e00e0e;font-weight:600;}
.rahva-client-form{display:grid;gap:16px;margin:0;min-width:0;}
.rahva-client-form h2,.rahva-client-form p{margin:0;}
.rahva-client-form p,.rahva-client-dialog>p{font-size:14px;line-height:1.6;color:#72767e;}
.rahva-client-form label{display:flex;flex-direction:column;gap:7px;margin:0;font-size:13px;font-weight:500;color:#454950;}
.rahva-client-form input:not([type=checkbox]),.rahva-client-dialog>input{display:block;width:100%;min-width:0;height:46px;border:1px solid #dfe2e7;border-radius:7px;padding:10px 13px;background:#fff;color:#35383d;font-size:15px;}
.rahva-client-form input:focus{outline:2px solid #e00e0e30;border-color:#e00e0e;}
.rahva-client-form input[readonly]{background:#f3f4f6;color:#737780;}
.rahva-client-form small{font-size:12px;font-weight:400;color:#777d85;line-height:1.6;}
.rahva-client-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.rahva-client-form .rahva-client-check{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;line-height:1.6;}
.rahva-client-check input{flex:0 0 16px;width:16px;height:16px;margin:3px 0 0;accent-color:#e00e0e;}
.rahva-client-password{position:relative;}
.rahva-client-password input{padding-right:48px!important;}
.rahva-client-password button{position:absolute;right:0;top:0;height:46px;width:44px;border:0;background:transparent;color:#6b7078;}
.rahva-client-primary,.rahva-client-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 19px;border:1px solid #e00e0e;border-radius:7px;font-size:14px;font-weight:600;line-height:1.5;text-decoration:none!important;cursor:pointer;}
.rahva-client-primary{background:#e00e0e;color:#fff!important;}
.rahva-client-primary:hover{background:#ba0b0b;border-color:#ba0b0b;}
.rahva-client-secondary{background:#fff;color:#454950!important;border-color:#dfe2e7;}
.rahva-client-secondary:hover{border-color:#e00e0e;color:#e00e0e!important;}
.rahva-client-auth-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.rahva-client-auth-links button{background:none;border:0;padding:0;color:#656b74;text-decoration:underline;font-size:12px;}
.rahva-client-form [data-client-message]{font-size:13px;color:#25754c;}
.rahva-client-form [data-client-message].has-error{color:#bd2020;}
.rahva-client-honey{position:absolute!important;left:-9999px!important;}
.rahva-client-dialog button:disabled,.rahva-client-area button:disabled{opacity:.55;cursor:wait;}
.rahva-client-area{max-width:1180px;margin:30px auto 60px;padding:0 15px;}
.rahva-client-title{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #e5e7eb;}
.rahva-client-title h1{font-size:36px;line-height:1.25;margin:7px 0 10px;}
.rahva-client-title p{margin:0;color:#747a83;}
.rahva-client-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:30px;align-items:start;}
.rahva-client-nav{display:flex;flex-direction:column;background:#f4f5f7;border-radius:12px;padding:20px 14px;gap:5px;}
.rahva-client-nav strong{padding:6px 10px 18px;font-size:15px;}
.rahva-client-nav a,.rahva-client-nav button{display:flex;align-items:center;gap:12px;padding:13px 12px;color:#56595e;border:0;border-radius:6px;background:none;text-align:left;font-size:14px;}
.rahva-client-nav i{width:18px;text-align:center;}
.rahva-client-nav [aria-current=page]{background:#fff;color:#e00e0e;box-shadow:0 2px 7px #00000008;}
.rahva-client-content{min-width:0;}
.rahva-client-content>.rahva-client-form{padding:25px;border:1px solid #e4e7ec;border-radius:12px;margin-bottom:24px;}
.rahva-client-content h2{font-size:25px;}
.rahva-client-content>p{font-size:14px;color:#777d85;}
.rahva-client-welcome{text-align:center;background:#f4f5f7;padding:45px 25px;border-radius:14px;}
.rahva-client-welcome>i{font-size:45px;color:#e00e0e;}
.rahva-client-welcome h2{font-size:27px;margin:20px 0 12px;}
.rahva-client-welcome p{color:#747a83;margin-bottom:25px;}
.rahva-client-notice{padding:16px 20px;border-left:3px solid #e00e0e;background:#f4f5f7;}
.rahva-client-saved{border:1px solid #e1e4e9;padding:22px;border-radius:12px;margin:16px 0;}
.rahva-client-saved>span{font-size:11px;border-radius:20px;padding:4px 10px;background:#f1f2f4;color:#656b74;}
.rahva-client-saved h3{font-size:20px;margin:14px 0 10px;}
.rahva-client-saved p{font-size:13px;color:#747a83;line-height:1.7;}
.rahva-client-saved-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.rahva-client-saved-actions>button:not(.rahva-client-primary):not(.rahva-client-secondary){border:0;background:none;font-size:13px;color:#656b74;text-decoration:underline;padding:5px;}
.rahva-client-empty{padding:35px 20px;border:1px dashed #d8dce3;border-radius:12px;color:#747a83;}
.rahva-client-favorites{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
.rahva-client-advisor{padding:25px;background:#f5f6f7;border-radius:12px;margin:20px 0;}
.rahva-client-advisor img{width:180px;height:200px;object-fit:cover;object-position:top;border-radius:9px;}
.rahva-client-advisor h3{font-size:23px;margin:18px 0 6px;}
.rahva-client-advisor p{font-size:14px;color:#747a83;}
.rahva-client-replace-list{display:grid;gap:10px;margin-top:15px;}
.rahva-client-replace-list a{font-size:12px;text-align:center;margin-top:10px;}
.rahva-client-account-page .page-title,.rahva-client-account-page .page-title-background{display:none!important;}
.rahva-client-favorite-item{display:flex;flex-direction:column;min-width:0;border:1px solid #e4e7ec;border-radius:8px;overflow:hidden;background:#fff;}
.rahva-client-favorite-item>.rahva-home-card{height:auto;flex:1;}
.rahva-client-favorite-item>.rahva-client-empty{flex:1;border:0;border-radius:0;}
.rahva-client-favorite-actions{padding:12px 15px;border-top:1px solid #e4e7ec;}
.rahva-client-favorite-actions .rahva-client-remove-fav{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;margin:0;padding:8px 12px;border:1px solid #e4e7ec;border-radius:8px;background:#fff;color:#656b74;font-size:12px;line-height:1.5;font-weight:600;text-decoration:none;}
.rahva-client-favorite-actions .rahva-client-remove-fav:hover{background:#fff1f1;border-color:#e00e0e;color:#bc0909;}
.rahva-client-favorite-actions .rahva-client-remove-fav:focus-visible{outline:2px solid #e00e0e;outline-offset:3px;}
.rahva-client-favorite-actions .rahva-client-remove-fav:disabled{opacity:.6;cursor:wait;}
@media(max-width:767px){.rahva-client-dialog{padding:30px 20px 22px;}.rahva-client-dialog h2{font-size:23px;}.rahva-client-layout{grid-template-columns:1fr;gap:20px;}.rahva-client-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:12px;}.rahva-client-nav strong{grid-column:1/-1;padding:6px 10px 10px;}.rahva-client-nav a,.rahva-client-nav button{padding:10px;font-size:12px;}.rahva-client-content>.rahva-client-form{padding:18px;}.rahva-client-favorites{grid-template-columns:1fr!important;}.rahva-client-title h1{font-size:30px;}.rahva-client-area{margin-top:20px;}.rahva-client-welcome .rahva-client-primary,.rahva-client-welcome .rahva-client-secondary{width:100%;margin:5px 0;}}
@media(max-width:420px){.rahva-client-two{grid-template-columns:1fr;}}
.rahva-client-account-page .page-wrap{padding-top:30px!important;padding-bottom:40px!important;}
@media(max-width:767px){.rahva-client-account-page .page-wrap{padding-top:16px!important;padding-bottom:25px!important;}}
.rahva-client-dialog.is-registration{width:min(680px,calc(100% - 30px));}
.rahva-client-dialog.is-registration .rahva-client-form{gap:13px;}
@media(max-width:600px){.rahva-client-dialog.is-registration .rahva-client-two{grid-template-columns:1fr;}}
.rahva-client-brand-name{color:#e00e0e;font-weight:600;}
.rahva-client-notice.is-warning{display:flex;align-items:center;gap:12px;}
.rahva-client-notice.is-warning>i{flex:0 0 auto;color:#e00e0e;font-size:20px;}
.rahva-client-notice.is-warning>span{min-width:0;}
.rahva-client-notice.is-success{display:flex;align-items:center;gap:12px;border-left-color:#24834f;}
.rahva-client-notice.is-success>i{flex:0 0 auto;color:#24834f;font-size:20px;}
.rahva-client-notice.is-success>span{min-width:0;}
/* Mis favoritos reutiliza el contexto visual del inicio y separa las franjas de cada tarjeta. */
.rahva-client-favorites-section .rahva-client-favorites{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px 12px!important;}
.rahva-client-favorites-section .rahva-home-card{overflow:hidden;}
.rahva-client-advisor-layout{display:grid;grid-template-columns:minmax(190px,240px) minmax(0,1fr);gap:28px;align-items:start;}
.rahva-client-advisor-identity{min-width:0;}
.rahva-client-photo-trigger{display:inline-flex;flex-direction:column;gap:8px;padding:0;border:0;background:transparent;max-width:100%;text-align:left;color:#e00e0e;cursor:zoom-in;}
.rahva-client-photo-trigger>span{font-size:12px;}
.rahva-client-advisor-bio{min-width:0;overflow-wrap:anywhere;}
.rahva-client-advisor-bio h3{margin:0 0 15px;font-size:23px;}
.rahva-client-advisor-bio p,.rahva-client-advisor-bio li{font-size:14px;line-height:1.8;color:#656b74;}
.rahva-client-photo-dialog{width:min(1000px,calc(100% - 30px));}
.rahva-client-photo-dialog>img{display:block;width:100%;height:min(70dvh,800px);object-fit:contain;border-radius:8px;background:#f4f5f7;}
.rahva-client-photo-dialog>h2{padding-right:25px;font-size:22px;}
@media(max-width:1150px){.rahva-client-favorites-section .rahva-client-favorites{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:900px){.rahva-client-advisor-layout{grid-template-columns:1fr;gap:24px;}}
@media(max-width:600px){.rahva-client-favorites-section .rahva-client-favorites{grid-template-columns:1fr!important;}}
.rahva-client-advisor-layout:not(.has-biography){grid-template-columns:1fr;}
/* Mi Franquiciado: foto, ficha de contacto y currículum opcional en columnas separadas. */
.rahva-client-advisor{padding:20px;background:#fff;border:1px solid #e4e7ec;}
.rahva-client-advisor-layout,.rahva-client-advisor-layout:not(.has-biography){grid-template-columns:minmax(180px,245px) minmax(0,1fr);gap:24px;}
.rahva-client-advisor-layout.has-biography{grid-template-columns:minmax(150px,23%) minmax(230px,1fr) minmax(190px,1fr);gap:20px;}
.rahva-client-advisor-portrait,.rahva-client-advisor-details{min-width:0;}
.rahva-client-advisor .rahva-client-photo-trigger{display:flex;width:100%;}
.rahva-client-advisor .rahva-client-photo-trigger img{width:100%;height:auto;aspect-ratio:270/340;object-fit:cover;object-position:top;border-radius:0;}
.rahva-client-advisor .rahva-person-info h2{font-size:27px;line-height:1.3;margin:0 0 10px;overflow-wrap:anywhere;}
.rahva-client-advisor .rahva-person-info .rahva-person-role{font-size:19px;color:#454950;}
.rahva-client-advisor .rahva-person-detail,.rahva-client-advisor .rahva-contact-list{font-size:14px;}
.rahva-client-advisor .rahva-person-fact .fa{color:#e00e0e;}
.rahva-client-advisor .rahva-client-advisor-bio h3{margin:0 0 12px;}
@media(max-width:1100px){.rahva-client-advisor-layout.has-biography{grid-template-columns:180px minmax(0,1fr);}.rahva-client-advisor-layout.has-biography .rahva-client-advisor-bio{grid-column:1/-1;}}
@media(max-width:600px){.rahva-client-advisor-layout,.rahva-client-advisor-layout:not(.has-biography),.rahva-client-advisor-layout.has-biography{grid-template-columns:1fr;}.rahva-client-advisor-portrait{max-width:270px;width:100%;margin:auto;}.rahva-client-advisor .rahva-person-info h2{font-size:25px;}}
.rahva-client-advisor{border:1px solid #e00e0e;}
.rahva-client-advisor-details h2 a{color:inherit;text-decoration:none;}
.rahva-client-advisor-details h2 a:hover,.rahva-client-advisor-details h2 a:focus-visible{color:#e00e0e;}
.rahva-client-saved-actions [hidden]{display:none!important;}
/* Nuestro Equipo: encabezado gris y filtro instantáneo por nombre. */
.rahva-team-directory-page .page-title{display:none!important;}
.rahva-team-directory-page .page-wrap{padding-top:0!important;}
.rahva-team-page-heading{padding:22px 28px;background:#4b4b4b;color:#fff;margin:0 0 30px;}
.rahva-team-page-heading h1{font-size:34px;line-height:1.25;margin:0;color:#fff;}
.rahva-team-search{display:grid;grid-template-columns:minmax(0,560px) auto;gap:20px;align-items:end;background:#f4f5f7;border:1px solid #e8e9ed;border-radius:10px;padding:18px 20px;margin:0 0 28px;}
.rahva-team-search-field{min-width:0;}
.rahva-team-search label{font-size:13px;font-weight:600;display:block;margin:0 0 7px;color:#454950;}
.rahva-team-search-control{position:relative;}
.rahva-team-search-control>i{position:absolute;top:16px;left:15px;color:#e00e0e;pointer-events:none;}
.rahva-team-search-control input{width:100%;height:48px;padding:10px 44px 10px 42px;border:1px solid #dfe2e7;border-radius:7px;background:#fff;color:#35383d;font-size:15px;box-sizing:border-box;}
.rahva-team-search-control input:focus{border-color:#e00e0e;outline:2px solid #e00e0e20;}
.rahva-team-search-control input::-webkit-search-cancel-button{-webkit-appearance:none;}
.rahva-team-search-control button{position:absolute;right:4px;top:5px;width:38px;height:38px;border:0;background:transparent;color:#656b74;border-radius:6px;}
.rahva-team-search [data-team-count]{margin:0;align-self:end;padding:14px 0;color:#747a83;font-size:13px;text-align:right;}
.rahva-team-directory [hidden]{display:none!important;}
.rahva-team-empty{padding:40px 20px;text-align:center;border:1px dashed #dce0e5;border-radius:10px;background:#fafafb;color:#747a83;}
.rahva-team-empty>i{color:#e00e0e;font-size:26px;}
.rahva-team-empty p{margin:14px 0 8px;font-weight:500;color:#454950;}
.rahva-team-empty>span{font-size:13px;}
@media(max-width:600px){.rahva-team-page-heading{padding:18px;margin-bottom:25px;}.rahva-team-page-heading h1{font-size:27px;}.rahva-team-search{grid-template-columns:1fr;gap:8px;padding:15px;}.rahva-team-search [data-team-count]{padding:0;text-align:left;}}
/* Oficina y perfiles de franquiciados: misma franja gris que Nuestro Equipo. */
:is(.rahva-office-page,.page-id-5041) section.page-title{padding:35px 0 0!important;min-height:0;height:auto;background:none!important;}
:is(.rahva-office-page,.page-id-5041) section.page-title>.page-title-background,:is(.rahva-office-page,.page-id-5041) section.page-title>.vc_row-background-overlay{display:none!important;background-image:none!important;}
:is(.rahva-office-page,.page-id-5041) .page-title .page-title-inner{padding:22px 28px;background:#4b4b4b;min-height:0;}
:is(.rahva-office-page,.page-id-5041) .page-title .page-title-main-info{padding:0;margin:0;}
:is(.rahva-office-page,.page-id-5041) .page-title h1{margin:0;color:#fff;font-size:34px;line-height:1.25;}
:is(.rahva-office-page,.page-id-5041) .page-title .breadcrumbs{display:none;}
:is(.rahva-office-page,.page-id-5041) .pd-top-100{padding-top:30px!important;}
@media(max-width:600px){:is(.rahva-office-page,.page-id-5041) .page-title .page-title-inner{padding:18px;}:is(.rahva-office-page,.page-id-5041) .page-title h1{font-size:27px;}}
/* Captaciones de la oficina: pestañas y tarjetas del sitio. */
.rahva-office-tabs{scroll-margin-top:95px;margin:25px 0 40px;}
.rahva-office-tab-nav{display:flex;gap:0;background:#242424;margin-bottom:26px;}
.rahva-office-tab-nav a{padding:16px 26px;color:#fff;font-weight:600;}
.rahva-office-tab-nav a[aria-current=page],.rahva-office-tab-nav a:hover{background:#e00e0e;color:#fff;}
.rahva-office-inventory-heading h2{font-size:26px;margin:0 0 8px;}
.rahva-office-inventory-heading h2 span{font-size:14px;color:#e00e0e;background:#fff1f1;padding:5px 10px;border-radius:20px;vertical-align:middle;}
.rahva-office-inventory-heading p{color:#747a83;margin-bottom:22px;}
.rahva-office-captador{font-size:13px;line-height:1.5;margin:0 0 7px;overflow-wrap:anywhere;}
.rahva-office-captador .fa{color:#e00e0e;width:16px;}
.rahva-office-captador a:hover{color:#e00e0e;}
.rahva-office-tabs .rahva-home-pagination{justify-content:center;}
.rahva-office-captador a{position:relative;z-index:6;pointer-events:auto;}

/* Compact home transition between the team and property types. */
.home #nuestros-franquiciados {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.home #nuestros-franquiciados + .g5plus-space {
    height: 28px !important;
}
.home .vc_custom_1484883332538 > .wpb_column > .vc_column-inner > .wpb_wrapper > .g5plus-space:first-child {
    height: 30px !important;
}
@media (max-width: 767px) {
    .home #nuestros-franquiciados + .g5plus-space {
        height: 20px !important;
    }
    .home .vc_custom_1484883332538 > .wpb_column > .vc_column-inner > .wpb_wrapper > .g5plus-space:first-child {
        height: 24px !important;
    }
}

/* Compact captions for the home property-type images. */
.home .ere-property-type .property-type-info {
    padding: 12px 16px;
}
.home .ere-property-type .property-title,
.home .ere-property-type .property-title a {
    font-size: 22px;
    line-height: 1.2;
}
.home .ere-property-type .property-title {
    margin-bottom: 5px;
}
.home .ere-property-type .property-count {
    font-size: 12px;
    line-height: 1.4;
}
@media (max-width: 991px) {
    .home .ere-property-type .property-type-info {
        padding: 10px 12px;
    }
    .home .ere-property-type .property-title,
    .home .ere-property-type .property-title a {
        font-size: 20px;
    }
}

/* Home: invitation for property owners. */
.home .rahva-owner-row { background: #f3f3f3; }
.home .rahva-owner-cta { background: transparent; padding: 48px 0; }
.home .rahva-owner-cta h2 { max-width: 900px; margin: 0 auto 16px; }
.home .rahva-owner-cta > p { max-width: 780px; margin: 0 auto 24px; font-size: 16px; line-height: 1.7; }
.rahva-owner-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.rahva-owner-actions .rahva-button { margin: 0; padding: 12px 20px; line-height: 1.5; border: 1px solid #e00e0e; }
.rahva-owner-actions .rahva-button-secondary { background: #fff; color: #b50b0b !important; }
.rahva-owner-actions .rahva-button-secondary:hover { background: #fff1f1; }
.rahva-owner-actions a:focus-visible { outline: 3px solid #333; outline-offset: 3px; }
@media (max-width: 600px) {
    .home .rahva-owner-cta { padding: 36px 0; }
    .home .rahva-owner-cta > p { font-size: 15px; }
    .rahva-owner-actions { flex-direction: column; align-items: stretch; }
}

/* Owner actions and the contact submit button share the home button design. */
.rahva-owner-actions .rahva-button,
.rahva-contact-layout .ere__btn-submit-contact-form {
    display: inline-flex; justify-content: center; align-items: center; gap: 10px;
    height: 44px; padding: 0 24px; margin: 0; border: 0; border-radius: 8px;
    background: #e00e0e; color: #fff !important; font-size: 13px; font-weight: 600;
    line-height: 1.5; box-shadow: 0 5px 14px #e00e0e20;
    transition: background .15s, transform .15s;
}
.rahva-owner-actions .rahva-button:hover,
.rahva-contact-layout .ere__btn-submit-contact-form:hover { background: #bc0909; }
.rahva-owner-actions .rahva-button:focus-visible,
.rahva-contact-layout .ere__btn-submit-contact-form:focus-visible { outline: 2px solid #e00e0e; outline-offset: 4px; }
.rahva-owner-actions .rahva-button i { flex-shrink: 0; font-size: 15px; }

/* Nuestra oficina: description followed by the future photo gallery. */
.rahva-our-office-page .rahva-our-office-description { font-size: 17px; line-height: 1.8; margin-bottom: 32px; }
.rahva-our-office-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin: 30px 0; }
.rahva-our-office-gallery a { display: block; overflow: hidden; border-radius: 8px; }
.rahva-our-office-gallery img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .2s; }
.rahva-our-office-gallery a:hover img { transform: scale(1.03); }
.rahva-our-office-gallery a:focus-visible { outline: 2px solid #e00e0e; outline-offset: 4px; }
@media(max-width:991px) { .rahva-our-office-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .rahva-our-office-gallery { grid-template-columns: 1fr; } }

/* Pending listings: diagonal brand-red ribbon over the photo, shared with Favorites. */
.rahva-home-card .property-image,.rahva-gallery-stage{position:relative;overflow:hidden}
.rahva-pending-ribbon{position:absolute;top:0;right:0;width:170px;height:170px;overflow:hidden;z-index:8;pointer-events:none}
.rahva-pending-ribbon>span{position:absolute;display:block;top:40px;right:-65px;width:240px;padding:8px 0;background:#e00e0e;color:#fff;transform:rotate(45deg);font-family:inherit;font-size:13px;line-height:1.25;font-weight:700;text-align:center;white-space:nowrap;box-shadow:0 2px 6px #0003;letter-spacing:0;text-transform:none}
.rahva-listing-detail .rahva-pending-ribbon{width:230px;height:230px}
.rahva-listing-detail .rahva-pending-ribbon>span{top:58px;right:-87px;width:320px;padding:11px 0;font-size:18px}
@media(max-width:600px){.rahva-listing-detail .rahva-pending-ribbon{width:170px;height:170px}.rahva-listing-detail .rahva-pending-ribbon>span{top:40px;right:-65px;width:240px;padding:8px 0;font-size:13px}}
