/* Helvio presentation overrides for the ported FindHouse template */
body.template-page #header-container,
body.template-page #header-container .header,
body.template-page #header-container #header {
  position: relative !important;
  background: #fff !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.08);
}
body.template-page #header-container #logo img {
  max-width: 180px;
  max-height: 64px;
  width: auto;
}
body.template-page #header-container #navigation ul li a,
body.template-page #header-container .show-lang strong,
body.template-page #header-container .show-lang i {
  color: #272727 !important;
}
body.template-page #header-container .header-user-menu .lang-tooltip {
  background: #fff;
  box-shadow: 0 4px 20px rgba(0,0,0,.12);
}
body.template-page .headings-2 { padding-top: 35px; }
body.template-page .pro-wrapper { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 20px; }
body.template-page .pro-wrapper .detail-wrapper-body { flex: 1 1 60%; }
body.template-page .pro-wrapper .single.detail-wrapper { flex: 0 0 auto; margin: 0; }
body.template-page .pro-wrapper .listing-title-bar h3 { font-size: 28px; line-height: 1.3; margin-bottom: 8px; }
body.template-page .pro-wrapper .listing-title-bar h4 { font-size: 26px; color: #1451b8; margin: 0; }
body.template-page .headings-2 h3 { font-size: 34px; color: #272727; }
body.template-page .properties-right .widget-boxed { background: #fff; }
body.template-page .properties-right .trip-search { padding: 0 20px 20px; }
body.template-page .properties-right .trip-search form .grid { display: block !important; }
body.template-page .properties-right .trip-search form > label { display: block; margin-bottom: 14px; }
body.template-page .properties-right .field-label { display: block; color: #777; font-size: 12px; margin-bottom: 5px; }
body.template-page .properties-right .form-control {
  width: 100%; height: 42px; border-radius: 0; border: 1px solid #e3e3e3;
  background: #fff; color: #333; padding: 8px 12px;
}
body.template-page .properties-right select.form-control { margin-bottom: 0; }
body.template-page .properties-right .homes-img img { width: 100%; height: 260px; object-fit: cover; }
body.template-page .properties-right .homes-content h3 a { color: #272727; }
body.template-page .properties-right .homes-content h3 { font-size: 19px; line-height: 1.35; min-height: 50px; }
body.template-page #header-container { height: 96px !important; overflow: visible; }
body.template-page #header-container .header,
body.template-page #header-container #header { height: 96px !important; min-height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
body.template-page #header-container .container { height: 96px; align-items: center; }
body.template-page .single-proper .headings-2 { padding-top: 28px; padding-bottom: 20px; }
body.template-page .single-proper .blog-pots h2 { font-size: 24px; margin-top: 30px; margin-bottom: 12px; }
body.template-page .single-proper .blog-pots { padding-top: 25px; }
body.template-page .single-proper aside .widget-boxed { padding: 20px; background: #fff; }
body.template-page .about-us { padding: 70px 0; }
body.template-page .about-us .about-image img { width: 100%; height: 420px; object-fit: cover; }
body.template-page .about-us .about-text h3 { font-size: 30px; color: #272727; margin-bottom: 6px; }
body.template-page .about-list { list-style: none; padding: 0; margin: 18px 0; }
body.template-page .about-list li { padding: 6px 0; color: #555; }
body.template-page .about-list i, body.template-page .contact-list i { color: #1451b8; margin-right: 8px; }
body.template-page .contact-list { list-style: none; padding: 0; margin: 20px 0; }
body.template-page .contact-list li { padding: 7px 0; color: #555; font-size: 15px; }
body.template-page .sec-title.text-left { text-align: left; }
body.template-page .contact-us { padding: 60px 0; }
body.template-page .contact-us .widget-boxed { background: #fff; padding: 22px; }
body.template-page .contact-us .contact-list { list-style: none; padding: 0; margin: 15px 0; }
body.template-page .contact-us .contact-list li { padding: 6px 0; font-size: 14px; color: #555; }
body.template-page .contact-us .contact-list i { color: #1451b8; width: 18px; margin-right: 6px; }
body.template-page .contact-us form.border { border: 0 !important; padding: 0 !important; background: transparent !important; }
body.template-page .contact-us .btn-dark { background: #1451b8; color: #fff; border: 0; padding: 12px 22px; }
body.template-page .legal-content { padding-top: 45px; padding-bottom: 70px; }
body.template-page .legal-content h2 { font-size: 21px; color: #272727; margin-top: 28px; margin-bottom: 8px; }
body.template-page .legal-content p { color: #555; line-height: 1.8; }
body.template-page .legal-content .rich h2:first-child { margin-top: 0; }
body.template-page .legal-content .btn-dark { background: #1451b8; color: #fff; border: 0; padding: 12px 22px; }
body.template-page .about-us .btn.btn-default { background: #1451b8; color: #fff; border: 0; padding: 12px 24px; }
body.template-page .legal-content details { margin: 0 0 12px !important; padding: 18px 20px !important; border: 1px solid #e5e5e5; background: #fff; }
body.template-page .legal-content details summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; list-style: none; cursor: pointer; }
body.template-page .legal-content details > p { margin: 10px 0 0 !important; }
body.template-page .legal-content .bg-ink p,
body.template-page .legal-content .bg-ink h2,
body.template-page .legal-content .bg-ink span,
body.template-page .legal-content .bg-ink a { color: #fff !important; }
body.template-page .legal-content .bg-ink .text-accent-light { color: #9fc0ff !important; }
/* Footer branding and responsive layout */
.first-footer .netabout .footer-brand-logo {
  max-height: 56px; width: auto; filter: brightness(0) invert(1);
}
.first-footer .second-footer { padding-top: 18px; padding-bottom: 18px; }
.footer-meta {
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  flex-wrap: wrap; width: 100%;
}
.footer-copyright { margin: 0; color: rgba(255,255,255,.72); font-size: 13px; }
.first-footer .netsocials { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.first-footer .netsocials li { margin: 0; }
.first-footer .netsocials a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%; color: #fff; font-size: 14px;
}
.first-footer .netsocials a:hover { background: #1451b8; border-color: #1451b8; color: #fff; }
.first-footer .second-footer .container-fluid.sd-f { display: block; }
.legal-links { display: block; width: 100%; margin-top: 10px; font-size: 12px; line-height: 1.8; color: rgba(255,255,255,.55); }
.legal-links a { color: rgba(255,255,255,.68); }
.legal-links a:hover { color: #fff; }
.legal-links span { margin: 0 5px; color: rgba(255,255,255,.35); }
@media (max-width: 767px) {
  .footer-meta { flex-direction: column; align-items: flex-start; gap: 14px; }
  .footer-copyright { max-width: 100%; line-height: 1.6; }
  .first-footer .netabout .footer-brand-logo { max-height: 48px; }
  .legal-links { line-height: 1.9; }
}
/* Collapsible, compact property filters */
body.template-page .property-filter-box { margin-bottom: 18px; }
body.template-page .filter-toggle {
  display: inline-flex; align-items: center; gap: 9px;
  background: #1451b8; color: #fff; border: 0; border-radius: 0;
  padding: 11px 18px; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
}
body.template-page .filter-toggle:hover { background: #0f3f91; color: #fff; }
body.template-page .filter-count {
  background: #fff; color: #1451b8; border-radius: 10px; padding: 1px 7px; font-size: 11px;
}
body.template-page .filter-toggle-mark { margin-left: 6px; font-size: 18px; line-height: 1; }
body.template-page .property-filter-panel {
  margin-top: 12px; padding: 18px; border: 1px solid #e3e8f0; background: #fff;
}
body.template-page .filters-form .filters-grid {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px 14px;
}
body.template-page .filters-form label { margin-bottom: 0; }
body.template-page .filters-form .field-label { display: block; margin-bottom: 4px; font-size: 11px; color: #7b8494; }
body.template-page .filters-form .form-control { height: 38px; padding: 6px 10px; border: 1px solid #e3e8f0; background: #fff; font-size: 13px; }
body.template-page .filters-form fieldset { margin-top: 12px; }
body.template-page .filters-form fieldset > div { max-height: 92px; border: 1px solid #e3e8f0; padding: 8px; }
body.template-page .filters-form .btn { padding: 10px 20px; }
@media (max-width: 991px) {
  body.template-page .filters-form .filters-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  body.template-page .filters-form .filters-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 10px; }
  body.template-page .property-filter-panel { padding: 14px; }
}
/* Give inner-page headings breathing room below the header */
body.template-page .headings { padding-top: 35px; padding-bottom: 12px; }

body.template-page { scroll-padding-top: 110px; }

@media (min-width: 768px) { .footer-meta .netsocials { margin-right: 64px; } }

body.template-page .filters-form button[type="submit"] { background: #1451b8; color: #fff; border: 0; }
body.template-page .filters-form button[type="submit"]:hover { background: #0f3f91; }
/* Template legal content extracted from the original site */
.legal-template-content .faq.service-details { padding: 50px 0 60px; background: #fff; }
.legal-template-content h3 { font-size: 24px; margin-bottom: 24px; }
.legal-template-content h4 { font-size: 18px; margin-top: 28px; }
.legal-template-content h5 { font-size: 16px; margin-top: 22px; }
.legal-template-content p, .legal-template-content li { color: #555; line-height: 1.85; font-size: 15px; }
.legal-template-content ul { padding-left: 20px; }
.sell-list { display: flex; flex-wrap: wrap; list-style: none; padding: 0; }
.sell-list li { width: 50%; padding: 6px 0; }
.sell-list.block li { width: 100%; }
.sell-list i { color: #1451b8; margin-right: 8px; }
@media (max-width: 575px) { .sell-list li { width: 100%; } }
/* Agents, journal and project pages */
.agents-listing .homes-img img, .portfolio-items .homes-img img, .news-item-img img {
  width: 100%; height: 280px; object-fit: cover;
}
.the-agents { padding: 0 0 10px; }
.the-agents h3 { font-size: 21px; margin-bottom: 10px; }
.the-agents-details { list-style: none; padding: 0; margin: 0; }
.the-agents-details li { padding: 3px 0; color: #666; font-size: 13px; }
.the-agents-details i { color: #1451b8; width: 18px; }
.agent-profile { padding: 55px 0; }
.agent-profile .agent-photo { width: 100%; height: 430px; object-fit: cover; }
.agent-profile p { color: #555; line-height: 1.8; }
.journal-tabs { display: flex; flex-wrap: wrap; gap: 8px; padding: 18px 0 30px; }
.journal-tabs .btn { padding: 8px 16px; font-size: 12px; }
.blog-section { padding: 55px 0; }
.news-item { background: #fff; margin-bottom: 28px; border: 1px solid #e9edf3; }
.news-item-img img { height: 250px; object-fit: cover; }
.news-item-text { padding: 22px; }
.news-item-text h3 { font-size: 21px; color: #272727; }
.news-item-descr p { color: #666; font-size: 14px; line-height: 1.75; }
.news-item-bottom .news-link { color: #1451b8; font-weight: 700; font-size: 13px; }
.article-body { max-width: 900px; }
.article-hero img { width: 100%; height: 480px; object-fit: cover; margin-bottom: 28px; }
.article-body .lead { font-size: 18px; color: #555; line-height: 1.8; }
.article-cta { margin-top: 35px; padding: 25px; background: #fff; border: 1px solid #e9edf3; }
.projects-filter { display: flex; flex-wrap: wrap; gap: 10px; padding-top: 10px; }
.projects-filter .form-control { max-width: 240px; }
.project-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: #e9edf3; }
.project-stats > div { background: #fff; padding: 18px; }
.project-stats span { display: block; color: #777; font-size: 12px; }
.project-stats strong { display: block; font-size: 22px; color: #272727; }
.service-card { background: #fff; border: 1px solid #e9edf3; padding: 30px; margin-bottom: 24px; }
.service-card h2 { font-size: 24px; margin-top: 16px; }
.service-card p { color: #666; }
.service-step { border-top: 2px solid #1451b8; padding-top: 16px; margin-bottom: 20px; }
.service-step .step-number { color: #1451b8; font-size: 30px; font-weight: 800; }
.compare-table { background: #fff; }
@media (max-width: 767px) {
  .project-stats { grid-template-columns: repeat(2, 1fr); }
  .article-hero img { height: 260px; }
  .news-item-img img { height: 220px; }
}
.projects-filter .btn, .journal-tabs .btn-default { background: #1451b8; color: #fff; border: 0; }
.projects-filter .form-control { height: 42px; }
