/**
* Template Name: TheProperty
* Template URL: https://bootstrapmade.com/theproperty-bootstrap-real-estate-template/
* Updated: Aug 05 2025 with Bootstrap v5.3.7
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/

/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
.hero {
  min-height: auto;
}

.btn-soft.disabled {
  background-color: #f8f9fa;
  color: #6c757d;
  cursor: default;
  pointer-events: none;
  opacity: 0.7;
}

.btn-main.disabled {
  pointer-events: none;
  opacity: 0.6;
  cursor: default;
}

.mini-btn.disabled {
  background-color: #f8f9fa;
  color: #6c757d;
  pointer-events: none;
  opacity: 0.6;
  cursor: default;
  text-decoration: none;
}

.stack-link.disabled {
  pointer-events: none;
  opacity: .6;
  cursor: default;
  text-decoration: none;
}


/* RSR Brand Guide 1.2: only the central TEST portal uses this logo treatment.
   At 180 px SVG width, 13 extra units of padding cover the remaining
   clear space: (17 - 4) * 180 / 408.6777 = 5.73 px; rounded up to 6 px. */
.rsr-main-brand .header .logo.rsr-platform-logo {
  padding: 6px;
  flex-shrink: 0;
}

.rsr-main-brand .header .logo.rsr-platform-logo img {
  display: block;
  width: 180px;
  height: auto;
  max-height: none;
  margin: 0;
}

/* Keep content below the taller protected logo on the existing mobile header. */
@media (max-width: 1200px) {
  .rsr-main-brand .hero {
    padding-top: 130px;
  }
}

/* Public presentation update 2026-09-26. Brand assets are the approved PNG and icons. */
.rsr-main-brand .header .logo.rsr-platform-logo img.rsr-family-png {width:260px;max-width:calc(100vw - 112px);height:auto;}
.rsr-home-page .rsr-home-hero {padding-top:154px;padding-bottom:40px;}
.rsr-home-hero .hero-text h1 {font-size:clamp(2rem,3.8vw,3.35rem);line-height:1.14;letter-spacing:-.035em;}
.rsr-home-hero .hero-text p {max-width:530px;margin-bottom:28px;font-size:1.1rem;}
.rsr-hero-actions {display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.rsr-cta {display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:9px;padding:14px 19px;min-height:50px;font-size:.94rem;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;transition:background-color .18s,color .18s;}
.rsr-cta-primary {color:#fff;background:#214e68;border-color:#214e68;}
.rsr-cta-primary:hover {color:#fff;background:#163a50;}
.rsr-cta-secondary {color:#214e68;background:#fff;border-color:#b7c8d1;}
.rsr-cta-secondary:hover {color:#163a50;background:#eef3f6;}
.rsr-cta:focus-visible,.rsr-region-card:focus-visible {outline:3px solid #638dab;outline-offset:4px;}
.rsr-regions {padding:32px 0 46px;}
.rsr-section-intro {margin-bottom:24px;}
.rsr-section-intro h2 {font-size:1.55rem;letter-spacing:-.025em;margin-bottom:8px;}
.rsr-section-intro p {color:#5b6973;margin-bottom:0;}
.rsr-region-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.rsr-region-card {--region-accent:#416f91;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:25px 24px;border:1px solid #dfe6eb;border-top:3px solid var(--region-accent);border-radius:14px;background:#fff;color:#193747;box-shadow:0 6px 20px #17324406;min-width:0;text-decoration:none;}
.rsr-region-vallendar {--region-accent:#5c7869;}
.rsr-region-boppard {--region-accent:#aa7059;}
a.rsr-region-card:hover {color:#193747;background:#f7fafb;border-color:var(--region-accent);}
.rsr-region-place {font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--region-accent);}
.rsr-region-domain {font-size:clamp(1.05rem,1.55vw,1.3rem);font-weight:650;letter-spacing:-.025em;overflow-wrap:anywhere;}
.rsr-region-description {font-size:.92rem;color:#5b6973;line-height:1.55;}
.rsr-region-action {margin-top:12px;font-size:.88rem;font-weight:600;display:flex;gap:18px;align-items:center;}
.rsr-region-status {margin-top:12px;font-size:.82rem;line-height:1.6;color:#765442;background:#f6eee9;border-radius:20px;padding:2px 10px;}
.rsr-home-page .featured-properties {padding-top:28px;}
.rsr-catalogue {padding:160px 0 64px;}
.rsr-catalogue h1 {font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em;}
.rsr-catalogue-filters {display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:16px;padding:22px;background:#f2f6f8;border:1px solid #e0e8ed;border-radius:14px;align-items:end;}
.rsr-catalogue-filters label {display:flex;flex-direction:column;gap:7px;font-size:.84rem;font-weight:600;min-width:0;}
.rsr-catalogue-filters input,.rsr-catalogue-filters select {width:100%;min-width:0;height:48px;border:1px solid #bdcdd6;border-radius:7px;padding:10px;background:#fff;color:#193747;font-size:.95rem;}
.rsr-results-summary {display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin:25px 0 18px;}
.rsr-results-summary p {margin:0;color:#586a75;}
.rsr-catalogue-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;}
.rsr-offer-card {overflow:hidden;border:1px solid #e0e7eb;border-radius:16px;background:#fff;display:flex;flex-direction:column;min-width:0;}
.rsr-offer-image {aspect-ratio:1.5;overflow:hidden;background:#f1f4f6;}
.rsr-offer-image a {display:block;height:100%;}
.rsr-offer-image img {width:100%;height:100%;object-fit:cover;}
.rsr-offer-body {padding:22px;display:flex;flex-direction:column;flex:1;}
.rsr-offer-type {font-size:.75rem;font-weight:700;color:#557085;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;}
.rsr-offer-body h2 {font-size:1.1rem;line-height:1.45;margin:0 0 10px;overflow-wrap:anywhere;}
.rsr-offer-body h2 a {color:inherit;}
.rsr-offer-location {font-size:.9rem;color:#60717d;}
.rsr-offer-specs {display:flex;flex-wrap:wrap;gap:14px;color:#60717d;font-size:.85rem;margin-bottom:20px;}
.rsr-offer-bottom {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid #edf0f2;}
.rsr-offer-bottom strong {color:#214e68;}
.rsr-offer-bottom a {font-size:.86rem;font-weight:600;}
@media(max-width:1199px){.rsr-catalogue-filters{grid-template-columns:1fr 1fr}.rsr-hero-actions{gap:10px}.rsr-cta{padding:13px 16px}}
@media(min-width:768px) and (max-width:991px){.rsr-home-hero .hero-text{max-width:690px}.rsr-home-hero .hero-text h1{font-size:3rem}.rsr-home-hero .hero-text p{max-width:630px}.rsr-region-grid{gap:12px}.rsr-region-card{padding:21px 17px}.rsr-region-domain{font-size:1.05rem}.rsr-catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.rsr-home-page .rsr-home-hero{padding-top:152px;padding-bottom:22px}.rsr-home-hero .hero-text h1{font-size:clamp(1.8rem,7.8vw,2.7rem)}.rsr-home-hero .hero-text p{font-size:1rem;line-height:1.65;margin-bottom:22px}.rsr-hero-actions{gap:10px;margin-bottom:10px}.rsr-hero-actions .rsr-cta{flex:1 1 180px}.rsr-region-grid{grid-template-columns:1fr}.rsr-region-card{padding:21px 22px}.rsr-region-domain{font-size:1.25rem}.rsr-regions{padding:25px 0 28px}.rsr-catalogue{padding-top:156px}.rsr-catalogue-grid{grid-template-columns:1fr}.rsr-catalogue-filters{grid-template-columns:1fr;padding:18px}.rsr-section-intro h2{font-size:1.4rem}}

/* Remove only unused stack space; the existing image dimensions remain unchanged. */
.rsr-home-hero .hero-images .image-stack {height:auto;}

/* TEST public refinement, 2026-09-27 */
.rsr-contact-section {padding-top:150px;padding-bottom:72px;}
.rsr-contact-wrap {max-width:820px;}
.rsr-contact-wrap h1 {margin-bottom:24px;}
.rsr-contact-intro {font-size:1.15rem;line-height:1.7;max-width:640px;}
.rsr-contact-email {margin:24px 0 32px;}
.rsr-contact-form label {font-weight:600;}
.rsr-contact-form .form-control {margin-top:8px;padding:12px 14px;border-radius:10px;}
.rsr-contact-form textarea {min-height:160px;}
.rsr-contact-privacy,.rsr-test-note {font-size:.875rem;line-height:1.6;margin-top:16px;color:#526374;}
.rsr-contact-hint {border-top:1px solid #dce3e9;padding-top:24px;margin-top:32px;color:#526374;}
#footer.rsr-footer-dark {background:#102633;color:#d6e1e8;--background-color:#102633;--default-color:#d6e1e8;--heading-color:#fff;--accent-color:#dcecff;padding:56px 0 28px;border-top:3px solid #55768a;}
#footer.rsr-footer-dark h3,#footer.rsr-footer-dark h4 {color:#fff;}
#footer.rsr-footer-dark a {color:#e7f1f7;text-underline-offset:4px;}
#footer.rsr-footer-dark a:hover {color:#fff;text-decoration:underline;}
#footer.rsr-footer-dark a:focus-visible {outline:2px solid #c3e5fa;outline-offset:5px;}
#footer .rsr-footer-brand {display:inline-block;margin-bottom:20px;}
#footer .rsr-footer-brand img {width:220px;height:auto;max-width:100%;}
#footer.rsr-footer-dark .row {padding-bottom:28px;margin-bottom:24px;border-bottom:1px solid #39515f;}
#footer.rsr-footer-dark p {line-height:1.7;}
@media(max-width:575px){.rsr-contact-section{padding-top:128px;padding-bottom:48px;}#footer.rsr-footer-dark{padding-top:40px;}.rsr-contact-form .rsr-cta{width:100%;}}

/* Approved regional logos; cards keep their existing destinations/status. */
.rsr-region-logo {display:flex;align-items:center;width:100%;height:110px;margin-bottom:8px;}
.rsr-region-logo img {display:block;width:100%;max-width:310px;height:100%;object-fit:contain;object-position:left center;}
@media(min-width:768px) and (max-width:991px){.rsr-region-logo{height:82px;}}
@media(max-width:767px){.rsr-region-logo{height:105px;}}

.rsr-preview-label {font-size:.8rem!important;color:#526572!important;font-weight:600;letter-spacing:.03em;margin-bottom:12px!important;}
.rsr-empty-region{padding:0 0 20px;color:#526572;}
