/* Doctor Property visual alignment. Rental navigation and content remain independent. */
body {
  --dp-brand-red: #ed1c24;
  --dp-brand-ink: #333;
  --dp-brand-text: #777;
  --dp-brand-footer: #f7f6f5;
  --drproperty-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  font-size: 16px; font-weight: 400; line-height: 1.4; color: var(--dp-brand-text) !important;
}
body h1, body h2, body h3, body h4, body h5, body h6 {
  font-family: "Helvetica Neue", Helvetica, Verdana, Arial, sans-serif !important;
}
body h1, body h2 { font-weight: 300; line-height: 1.3; letter-spacing: normal; }
body h1 { font-size: 32px; }
body h2 { font-size: 28.8px; }
body h3 { font-size: 20px; font-weight: 400; line-height: 1.3; }
body button, body input, body select, body textarea, body .btn, body .navi, body .mobile-menu {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
}
body .nav-area > header {
  background: #fff; border-top: 3px solid var(--dp-brand-red);
  border-bottom: 1px solid var(--dp-brand-red); box-shadow: none;
}
body .nav-area .header-comp-logo { margin: 0; padding: 0; flex: 0 0 190px; }
body .nav-area .header-comp-logo img { width: 190px; max-width: 100%; height: auto; max-height: 82px; padding: 0; }
body .nav-area .header-comp-nav .navi { align-items: stretch; }
body .nav-area .navi > .main-menu > li > a,
body .nav-area .crncy-lang-block > li > a {
  color: #333; font-size: 16px; font-weight: 400; text-transform: none;
}
body .nav-area .navi > .main-menu > li > a:hover,
body .nav-area .navi > .main-menu > li > a:focus-visible,
body .nav-area .crncy-lang-block > li > a:hover {
  background: var(--dp-brand-red); color: #fff;
}
body .nav-area .crncy-lang-block span { font-weight: 400; }
body #drproperty-subheader { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; color: #333; }
body #drproperty-subheader .wp-social-link { color: #333; background: transparent; }
body #drproperty-subheader .wp-social-link svg { fill: currentColor; }
body #drproperty-subheader .wp-social-link a { padding: 5px; }
body .page-title h1, body .block-title h2, body .section-title, body .widget-title,
body #section-body h2:not(.has-text-color), body #section-body h3:not(.has-text-color) { color: #777 !important; }
body #section-body .wp-block-post-title.has-white-color,
body #section-body .wp-block-post-title.has-white-color a { color: #fff !important; }
body .dp-rental-search-form label { font-weight: 400; font-size: 14px; }
body .dp-rental-search-form .btn { background: #ed1c24; border-color: #ed1c24; border-radius: 4px; }
body .dp-rental-search-form .btn:hover { background: #333 !important; border-color: #333 !important; }
/* Use the measured DP main search styling with the rental site's simpler fields. */
body #homey-main-search.dp-rental-search > .dp-rental-search-inner {
  background:#fff; border:1px solid #d8d8d8; border-radius:4px;
  box-shadow:0 1px 2px 1px rgba(0,0,0,.15); padding:25px 30px;
}
body .dp-rental-search-form { gap:15px; }
body .dp-rental-search-form label {
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px; font-weight:400; line-height:1.4; color:#333; gap:8px;
}
body .dp-rental-search-form input, body .dp-rental-search-form select {
  height:39px; border:1px solid #e6e6e6; border-radius:4px; background:#fff;
  padding:0 15px; color:#6f6f6f; font-size:16px; font-weight:400; line-height:34px;
  box-shadow:none;
}
body .dp-rental-search-form input::placeholder { color:#999; opacity:1; }
body .dp-rental-search-form .dp-rental-search-submit {
  height:40px; padding:0 20px; border:0; border-radius:4px;
  font-size:16px; font-weight:700; line-height:40px; color:#fff; background:#ed1c24;
}
@media(max-width:540px) {
  body #homey-main-search.dp-rental-search > .dp-rental-search-inner { padding:20px 16px; }
  body .dp-rental-search-form input, body .dp-rental-search-form select,
  body .dp-rental-search-form .dp-rental-search-submit { min-height:44px; }
}
/* Let the homepage photograph show through the mobile search panel. */
@media(max-width:767px) {
  /* Centre the heading and complete form together within the photograph. */
  body.home #section-body > .wp-block-cover:has(.homey-main-search-holder) {
    display:flex;
    align-items:center;
    justify-content:center;
  }
  body.home #section-body > .wp-block-cover:has(.homey-main-search-holder) > .wp-block-cover__inner-container {
    position:relative;
    inset:auto;
    height:auto;
    padding:28px 0;
  }
  body.home #section-body > .wp-block-cover:has(.homey-main-search-holder) h1 {
    position:static;
    margin:0 12px 22px;
    text-align:center;
  }
  body.home #section-body > .wp-block-cover:has(.homey-main-search-holder) .homey-main-search-holder {
    position:static;
    transform:none;
    width:calc(100% - 24px);
    max-width:none;
    margin:0 auto!important;
  }
  body.home #homey-main-search.dp-rental-search > .dp-rental-search-inner {
    background:rgba(255,255,255,.5);
    padding:18px 16px!important;
  }
  /* Three visible rows: area, bedrooms/budget, then type/search. */
  body.home #homey-main-search .dp-rental-search-form {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:12px 8px;
  }
  body.home #homey-main-search .dp-rental-search-area {
    flex:0 0 100%;
    min-width:0;
  }
  body.home #homey-main-search .dp-rental-search-bedrooms,
  body.home #homey-main-search .dp-rental-budget {
    flex:0 0 calc((100% - 8px) / 2);
    min-width:0;
  }
  body.home #homey-main-search .dp-rental-kind {
    flex:0 0 calc((100% - 8px) / 2);
    min-width:0;
  }
  body.home #homey-main-search .dp-rental-kind select {
    width:100%;
    height:44px!important;
    min-height:44px;
  }
  body.home #homey-main-search .dp-rental-search-submit {
    flex:0 0 calc((100% - 8px) / 2);
    width:auto;
    min-width:0;
    height:44px!important;
    min-height:44px;
    padding:0 8px;
    line-height:44px;
  }
  /* Keep pagination below the mobile property list. */
  body.home #rental-properties .dp-pagination-top {
    display:none;
  }
  body.home #rental-properties .dp-catalogue-toolbar {
    justify-content:flex-end;
  }
  body.home #rental-properties .dp-catalogue-toolbar form {
    margin-top:0;
  }
}
@media(max-width:380px) {
  body.home #homey-main-search .dp-rental-search-submit { font-size:14px; padding:0 8px; }
}
@media(max-width:360px) {
  body.home #homey-main-search.dp-rental-search > .dp-rental-search-inner { padding:16px 12px!important; }
  body.home #homey-main-search .dp-rental-search-submit { padding:0 6px; }
  body.home #homey-main-search .dp-rental-search-submit i { margin-right:4px; }
}
/* Style the mobile property picker so its single separator has a real stroke. */
@supports (appearance:base-select) {
  @media(max-width:767px) {
    body.home #homey-main-search select[name="property-kind"],
    body.home #homey-main-search select[name="property-kind"]::picker(select) {
      appearance:base-select;
    }
    body.home #homey-main-search select[name="property-kind"]::picker(select) {
      min-inline-size:max-content;
      max-inline-size:calc(100vw - 24px);
      padding:4px 0;
      border:1px solid #d8d8d8;
      border-radius:4px;
      background:#fff;
      color:#333;
      font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
      font-size:16px;
    }
    body.home #homey-main-search select[name="property-kind"] option {
      padding:8px 12px;
      line-height:1.4;
    }
    body.home #homey-main-search select[name="property-kind"] hr {
      height:0;
      margin:6px 0;
      padding:0;
      border:0;
      border-top:2px solid #777;
      box-shadow:none;
    }
  }
}
/* Match DP main card typography without changing listing content. */
body .wp-block-post.type-listing,
body .wp-block-post.type-listing .item-amenities,
body .wp-block-post.type-listing .wp-block-mfb-meta-field-block {
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif !important;
}
body #section-body .wp-block-post.type-listing .wp-block-post-title,
body #section-body .wp-block-post.type-listing .wp-block-post-title a {
  font-family:"Helvetica Neue",Helvetica,Verdana,Arial,sans-serif !important;
  font-size:16px !important; font-weight:700 !important; line-height:1.3;
  color:#fff !important; text-decoration:none;
}
/* Additional photographs under each red rental-card title. */
body .wp-block-post.type-listing .dp-rental-card-thumbnails {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px;
  margin:0 !important; padding:0; border:0; width:100%; max-width:none; box-sizing:border-box;
}
body .wp-block-post.type-listing .dp-rental-card-thumbnail {
  display:block; aspect-ratio:2/1; overflow:hidden; background:#f3f3f3; border:0;
}
body .wp-block-post.type-listing .dp-rental-card-thumbnail img {
  display:block; width:100%; height:100%; object-fit:cover;
}
body .wp-block-post.type-listing .dp-rental-card-thumbnails:focus-visible {
  outline:2px solid #ed1c24; outline-offset:2px;
}
/* Match DP main's 2:1 photographs and desktop card footprint. */
body .wp-block-query:has(.type-listing) > .wp-block-post-template {
  gap:30px;
}
body .wp-block-post.type-listing > .wp-block-group {
  border:1px solid #e6e6e6 !important; overflow:hidden; height:100%;
}
body .wp-block-post.type-listing .wp-block-cover {
  min-height:0 !important; aspect-ratio:2/1 !important; padding:0;
}
body .wp-block-post.type-listing .wp-block-cover__image-background {
  width:100%; height:100%; object-fit:cover;
}
body #section-body .wp-block-post.type-listing .wp-block-post-title {
  box-sizing:border-box; min-height:64.8px; display:flex; align-items:center;
}
body #section-body .wp-block-post.type-listing .wp-block-post-title a {
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
@media(min-width:992px) {
  body #section-body > .wp-block-group:has(.wp-block-query .type-listing) {
    width:calc(100% - 32px); max-width:1110px; padding-left:0 !important; padding-right:0 !important;
  }
  body .wp-block-query:has(.type-listing) { max-width:1110px; }
  body .wp-block-post.type-listing { aspect-ratio:350 / 419.46875; }
}
/* Compact rental-card summary; full listing details remain available on the property page. */
body .wp-block-post.type-listing .item-amenities > span:has(.total-guests),
body .wp-block-post.type-listing .item-amenities > .item-type { display:none !important; }
body .wp-block-post.type-listing .item-amenities {
  display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px;
  color:#333; font-size:14.4px; font-weight:400; line-height:1.4; margin:0;
}
body .wp-block-post.type-listing .item-amenities > span { margin:0; }
body .wp-block-post.type-listing .item-amenities i { margin-right:5px; color:#999; }
body .wp-block-post.type-listing .wp-block-mfb-meta-field-block:has(.item-amenities) {
  padding:14px 15px !important;
}
body .wp-block-post.type-listing .has-text-align-right.wp-block-mfb-meta-field-block {
  padding:5px 15px !important; font-size:16px; line-height:1.4; font-weight:700 !important;
  border-top-color:#e6e6e6 !important; color:#333;
}
@media(min-width:992px) {
  body #homey_nav_sticky .header-inner { display:flex; align-items:center; justify-content:space-between; min-height:106px; gap:20px; }
  body #homey_nav_sticky .header-comp-nav { flex:1; }
  body #homey_nav_sticky .header-comp-nav > .navi { justify-content:flex-end; }
  body .nav-area .navi > .main-menu > li > a,
  body .nav-area .crncy-lang-block > li > a {
    box-sizing:border-box; height:106px; line-height:80px; padding:26px 12px 0;
  }
  body .header-comp-right:not(:has(*)) { display:none; }
}
/* Match the pale, red-topped footer treatment on DP main. */
body footer.footer {
  background:#fff; border-top:0; color:#777; padding-top:0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
}
body footer.footer .footer-top-wrap {
  box-sizing:border-box; max-width:1110px; width:calc(100% - 32px); margin:0 auto;
  background:#f7f6f5; border-top:3px solid #ed1c24; border-radius:12px 12px 0 0;
  color:#777; padding:42px 38px 24px;
}
body footer.footer .footer-top-wrap > .container { width:100%; max-width:none; padding:0; }
body footer.footer .footer-top-wrap > .container > .row { margin-left:-15px; margin-right:-15px; }
body footer.footer .footer-widget { margin-bottom:20px; }
body footer.footer .widget-title, body footer.footer .widget h3 { color:#777 !important; font-size:16px !important; font-weight:700 !important; line-height:1.3; margin-bottom:16px; }
body #section-body .wp-block-paragraph:not(.has-text-color) { color:#777; }
body footer.footer .footer-copyright { color:#777; }
body footer.footer p, body footer.footer small, body footer.footer li, body footer.footer a {
  color:#777; font-size:16px; line-height:1.5; font-weight:400;
}
body footer.footer .footer-widget p { margin-bottom:12px; }
body footer.footer .footer-widget .menu li { padding:0; border:0; }
body footer.footer .footer-widget .menu a { display:block; padding:5px 0; text-decoration:none; }
body footer.footer .footer-widget .menu a:before { display:none; }
body footer.footer .footer-widget img { max-width:190px; height:auto; }
body footer.footer a:hover { color:#ed1c24; text-decoration:underline; text-underline-offset:4px; }
body footer.footer .widget-contact a { color:#ed1c24; }
body footer.footer .footer-bottom-wrap {
  box-sizing:border-box; max-width:1110px; width:calc(100% - 32px); margin:0 auto;
  background:#f7f6f5; color:#777; border-top:1px solid #dedbd9; padding:22px 38px;
}
body footer.footer .footer-bottom-wrap > .container { width:100%; padding:0; }
body footer.footer .footer-bottom-wrap, body footer.footer .footer-bottom-wrap a { font-size:13px; line-height:1.6; }
@media(max-width:991px) {
  body .nav-area .mobile-logo img { max-width:160px; width:160px; height:auto; }
  body .nav-area .header-mobile-wrap { padding:10px 0; }
  body .nav-area .mobile-menu a { font-size:16px; font-weight:400; color:#333; }
  body h1 { font-size:28px; }
  body h2 { font-size:26px; }
}
@media(max-width:767px) {
  body footer.footer .footer-top-wrap { padding:30px 24px 20px; }
  body footer.footer .footer-bottom-wrap { padding:20px 24px; }
}



