/*
Theme Name: Suka Real Estate Pro
Theme URI: https://sukarealty.com/
Author: Suka Real Estate
Description: Professioneel vastgoedthema voor Suka Real Estate. Functioneel geïnspireerd op Surinaamse vastgoedwebsites, volledig in de eigen zwart-gouden huisstijl en geïntegreerd met Estatik.
Version: 2.2.0
Requires at least: 6.4
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: suka-realty-pro
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: real-estate, custom-logo, custom-menu, featured-images, responsive-layout
*/

:root {
  --suka-black: #111111;
  --suka-charcoal: #292929;
  --suka-dark: #1f1f1f;
  --suka-gold: #d7ad2b;
  --suka-gold-dark: #aa7e00;
  --suka-soft-gold: #f5e7b1;
  --suka-white: #ffffff;
  --suka-offwhite: #f5f5f3;
  --suka-light: #eeeeeb;
  --suka-text: #262626;
  --suka-muted: #6f6f6f;
  --suka-border: #ddddda;
  --suka-container: 1320px;
  --suka-shadow: 0 18px 50px rgba(0,0,0,.12);
  --suka-hero-image: url("assets/images/map-pattern.svg");
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; color: var(--suka-text); font-family: Arial, Helvetica, sans-serif; font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; height: auto; }
a { color: #0d3e9a; text-underline-offset: .18em; }
a:hover { color: var(--suka-gold-dark); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.screen-reader-text:focus { width: auto; height: auto; clip: auto; padding: 12px 16px; margin: 8px; background: #fff; z-index: 9999; }
.suka-container { width: min(calc(100% - 48px), var(--suka-container)); margin-inline: auto; }

/* Header, based on the clean two-row structure the user requested. */
.suka-site-header { position: relative; z-index: 100; background: #fff; }
.suka-header-main { background: #fff; }
.suka-header-main__inner { min-height: 140px; display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.suka-brand { display: flex; align-items: center; }
.suka-brand .custom-logo-link { display: block; line-height: 0; }
.suka-brand .custom-logo { max-height: 115px; width: auto; object-fit: contain; }
.suka-brand__fallback { display: flex; align-items: center; gap: 15px; color: var(--suka-black); text-decoration: none; }
.suka-brand__fallback strong { display: block; font-family: Georgia, serif; text-transform: uppercase; letter-spacing: .08em; font-size: 1.55rem; }
.suka-brand__fallback small { display: block; color: var(--suka-muted); letter-spacing: .14em; text-transform: uppercase; font-size: .7rem; }
.suka-brand__mark { width: 70px; height: 82px; border: 4px solid var(--suka-gold); display: grid; place-items: center; font-family: Georgia, serif; font-size: 2.3rem; font-weight: 700; color: var(--suka-gold-dark); }
.suka-header-contact { display: flex; align-items: center; gap: 44px; }
.suka-header-contact a { display: flex; align-items: center; gap: 13px; color: #5f5f5f; text-decoration: none; font-size: 1.05rem; }
.suka-header-contact a:hover { color: var(--suka-gold-dark); }
.suka-header-contact small { display: block; color: #9a9a9a; text-transform: uppercase; letter-spacing: .08em; font-size: .67rem; font-weight: 700; }
.suka-contact-icon { color: var(--suka-gold-dark); font-size: 1.45rem; }
.suka-navigation-bar { background: var(--suka-charcoal); box-shadow: 0 4px 15px rgba(0,0,0,.16); }
.suka-navigation-bar__inner { min-height: 74px; display: flex; align-items: stretch; }
.suka-nav { flex: 1 1 auto; }
.suka-menu, .suka-nav ul { list-style: none; margin: 0; padding: 0; }
.suka-nav > ul { display: flex; align-items: stretch; height: 100%; }
.suka-nav > ul > li { position: relative; display: flex; align-items: stretch; }
.suka-nav > ul > li > a { display: flex; align-items: center; padding: 0 25px; color: #fff; text-decoration: none; font-weight: 600; font-size: 1.03rem; border-right: 1px solid rgba(255,255,255,.08); }
.suka-nav > ul > li:first-child > a { border-left: 1px solid rgba(255,255,255,.08); }
.suka-nav > ul > li:hover > a, .suka-nav > ul > .current-menu-item > a, .suka-nav > ul > .current-menu-ancestor > a { background: #1c1c1c; color: var(--suka-gold); }
.suka-nav .sub-menu { position: absolute; top: 100%; left: 0; min-width: 220px; background: #fff; box-shadow: var(--suka-shadow); opacity: 0; visibility: hidden; transform: translateY(8px); transition: .18s ease; z-index: 30; border-top: 4px solid var(--suka-gold); }
.suka-nav li:hover > .sub-menu, .suka-nav li:focus-within > .sub-menu, .suka-nav li.submenu-open > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.suka-nav .sub-menu a { display: block; padding: 13px 18px; color: var(--suka-text); text-decoration: none; border-bottom: 1px solid #eee; }
.suka-nav .sub-menu a:hover { background: #f5f5f3; color: var(--suka-gold-dark); }
.suka-submenu-toggle { display: none; }
.suka-nav-search { flex: 0 0 260px; margin: 13px 0 13px 20px; padding: 0 18px; background: #fff; color: #838383; display: flex; align-items: center; justify-content: space-between; text-decoration: none; border-radius: 2px; }
.suka-nav-search strong { color: #222; font-size: 1.4rem; }
.suka-menu-toggle { display: none; background: var(--suka-charcoal); border: 0; color: #fff; padding: 0 18px; font-weight: 700; }

/* Hero */
.suka-home-hero { position: relative; min-height: 620px; overflow: hidden; background-image: linear-gradient(90deg, rgba(16,16,16,.94) 0%, rgba(16,16,16,.82) 45%, rgba(16,16,16,.15) 100%), var(--suka-hero-image); background-size: cover; background-position: center; }
.suka-home-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.22)); pointer-events: none; }
.suka-home-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1.25fr) minmax(330px,.65fr); gap: 70px; align-items: center; min-height: 620px; padding-block: 60px; }
.suka-home-hero__copy { color: #fff; max-width: 760px; }
.suka-kicker { margin: 0 0 12px; color: var(--suka-gold); font-weight: 800; text-transform: uppercase; letter-spacing: .15em; font-size: .82rem; }
.suka-home-hero h1, .suka-page-hero h1, .suka-section-heading h2, .suka-trust-grid h2 { font-family: Georgia, "Times New Roman", serif; }
.suka-home-hero h1 { margin: 0; font-size: clamp(3.4rem, 6vw, 6.2rem); line-height: 1; letter-spacing: -.04em; }
.suka-home-hero__copy > p:not(.suka-kicker) { max-width: 680px; margin: 24px 0 0; font-size: 1.23rem; color: rgba(255,255,255,.84); }
.suka-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.suka-btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; padding: 0 25px; font-weight: 800; text-decoration: none; border: 2px solid transparent; transition: .18s ease; }
.suka-btn:hover { transform: translateY(-2px); }
.suka-btn--gold { background: var(--suka-gold); color: #111; }
.suka-btn--gold:hover { background: #efc84e; color: #111; }
.suka-btn--outline { border-color: rgba(255,255,255,.7); color: #fff; }
.suka-btn--outline:hover { border-color: var(--suka-gold); color: var(--suka-gold); }
.suka-btn--dark { background: #222; color: #fff; }
.suka-btn--dark:hover { background: var(--suka-gold); color: #111; }
.suka-hero-search { background: rgba(44,44,44,.94); padding: 28px; box-shadow: var(--suka-shadow); border-top: 5px solid var(--suka-gold); color: #fff; }
.suka-hero-search .es-search__wrapper, .suka-hero-search .es-search { background: transparent !important; box-shadow: none !important; padding: 0 !important; }
.suka-hero-search h2, .suka-hero-search .es-search__title { color: #fff !important; font-size: 1.65rem !important; margin-top: 0 !important; }
.suka-map-decoration .pin { position: absolute; z-index: 1; width: 48px; height: 48px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); display: grid; place-items: center; background: var(--suka-gold); color: #fff; box-shadow: 0 8px 20px rgba(0,0,0,.28); opacity: .95; }
.suka-map-decoration .pin::before { content: ""; width: 14px; height: 14px; border-radius: 50%; background: #fff; }
.suka-map-decoration .pin--1 { top: 14%; left: 52%; }
.suka-map-decoration .pin--2 { top: 58%; left: 67%; background: #a72424; }
.suka-map-decoration .pin--3 { top: 28%; right: 10%; }
.suka-map-decoration .pin--4 { bottom: 12%; right: 28%; background: #6ca314; }
.suka-map-decoration .pin--5 { top: 8%; right: 32%; background: #a72424; }

/* Quick links: every box is a real link. */
.suka-quick-links { position: relative; z-index: 10; margin-top: -1px; background: #fff; border-bottom: 1px solid var(--suka-border); }
.suka-quick-links__grid { display: grid; grid-template-columns: repeat(3,1fr); }
.suka-quick-link { min-height: 135px; display: grid; grid-template-columns: 64px 1fr auto; gap: 20px; align-items: center; padding: 25px 32px; color: var(--suka-text); text-decoration: none; border-right: 1px solid var(--suka-border); transition: .18s ease; }
.suka-quick-link:first-child { border-left: 1px solid var(--suka-border); }
.suka-quick-link:hover { background: var(--suka-offwhite); color: var(--suka-text); transform: translateY(-3px); box-shadow: 0 13px 35px rgba(0,0,0,.08); }
.suka-quick-link__icon { width: 58px; height: 58px; display: grid; place-items: center; background: var(--suka-charcoal); color: var(--suka-gold); border-radius: 50%; font-size: 1.8rem; }
.suka-quick-link strong { display: block; font-size: 1.25rem; text-transform: uppercase; letter-spacing: .03em; }
.suka-quick-link small { display: block; color: var(--suka-muted); }
.suka-quick-link b { font-size: 1.7rem; color: var(--suka-gold-dark); }

/* Sections */
.suka-section, .suka-content-section { padding-block: 84px; }
.suka-section--light { background: var(--suka-offwhite); }
.suka-section--dark { background: var(--suka-charcoal); color: #fff; }
.suka-section-heading { margin-bottom: 35px; }
.suka-section-heading--split { display: flex; justify-content: space-between; align-items: end; gap: 24px; }
.suka-section-heading h2, .suka-trust-grid h2 { margin: 0; font-size: clamp(2.3rem,4vw,4rem); line-height: 1.08; }
.suka-text-link { font-weight: 700; text-decoration: none; color: #0c3b8e; }
.suka-featured-layout { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 36px; align-items: start; }
.suka-owner-cta { position: sticky; top: 24px; background: #17337a; color: #fff; padding: 34px; min-height: 410px; display: flex; flex-direction: column; justify-content: center; border-bottom: 12px solid var(--suka-gold); }
.suka-owner-cta__eyebrow { color: var(--suka-soft-gold); font-weight: 800; text-transform: uppercase; letter-spacing: .1em; font-size: .78rem; }
.suka-owner-cta h3 { margin: 14px 0; font-size: 1.75rem; line-height: 1.25; }
.suka-owner-cta p { color: rgba(255,255,255,.78); }
.suka-owner-cta .suka-btn { margin-top: 16px; }
.suka-trust-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: start; }
.suka-trust-points { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.suka-trust-points article { border-top: 3px solid var(--suka-gold); padding-top: 22px; }
.suka-trust-points strong { color: var(--suka-gold); font-size: 1.7rem; }
.suka-trust-points h3 { margin: 10px 0 5px; }
.suka-trust-points p { color: rgba(255,255,255,.7); margin: 0; }

/* Additional homepage property sections */
.suka-home-popular { background: #f1f1ef; }
.suka-home-recent { background: #fff; padding-top: 72px; padding-bottom: 28px; }
.suka-home-recent--lots { padding-top: 28px; padding-bottom: 84px; }
.suka-home-recent .suka-section-heading { margin-bottom: 18px; }
.suka-home-recent .suka-section-heading h2,
.suka-home-popular .suka-section-heading h2 { font-size: clamp(2.25rem,3.5vw,3.55rem); }
.suka-home-recent .suka-btn { margin: 0; white-space: nowrap; }
.suka-home-listing-panel { background: #282828; padding: 34px; }
.suka-home-listing-panel .suka-empty-note { color: rgba(255,255,255,.82); margin: 0; }
.suka-home-listings .es-listings__list,
.suka-home-listings .es-properties__list,
.suka-home-listings .es-listings-grid,
.suka-home-listings .es-properties-grid { gap: 24px !important; }
.suka-home-listings--popular .es-listings__list,
.suka-home-listings--popular .es-properties__list,
.suka-home-listings--popular .es-listings-grid,
.suka-home-listings--popular .es-properties-grid,
.suka-home-listings--recent .es-listings__list,
.suka-home-listings--recent .es-properties__list,
.suka-home-listings--recent .es-listings-grid,
.suka-home-listings--recent .es-properties-grid {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
}
.suka-home-listings .es-property,
.suka-home-listings .es-property__inner { width: 100% !important; min-width: 0 !important; margin: 0 !important; }
.suka-home-listings--recent .es-property { border: 0 !important; }
.suka-home-listings--recent .es-property:hover { transform: translateY(-3px); }
.suka-home-listings--recent .es-property__image img { aspect-ratio: 4 / 3; object-fit: cover; }
.suka-home-listings--popular .es-property__image img { aspect-ratio: 4 / 3; object-fit: cover; }

/* Internal pages */
.suka-page-hero { background: linear-gradient(120deg, #1d1d1d, #343434); color: #fff; padding-block: 90px; border-bottom: 5px solid var(--suka-gold); }
.suka-page-hero--compact { padding-block: 58px; }
.suka-page-hero h1 { max-width: 1000px; margin: 0; font-size: clamp(3rem,5vw,5.2rem); line-height: 1.04; }
.suka-page-hero p:not(.suka-kicker) { max-width: 750px; margin: 20px 0 0; color: rgba(255,255,255,.78); font-size: 1.15rem; }
.suka-category-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 30px; }
.suka-category-actions a { background: var(--suka-charcoal); color: #fff; padding: 12px 18px; text-decoration: none; font-weight: 700; }
.suka-category-actions a:hover { background: var(--suka-gold); color: #111; }
.suka-readable-content { max-width: 900px; }
.suka-about-layout, .suka-contact-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 55px; align-items: start; }
.suka-about-layout h2, .suka-contact-layout h2, .suka-finance-grid h2 { font-family: Georgia, serif; font-size: 2.25rem; line-height: 1.16; }
.suka-about-layout aside, .suka-contact-panel, .suka-contact-guide { background: var(--suka-offwhite); border: 1px solid var(--suka-border); padding: 38px; }
.suka-check-list { list-style: none; padding: 0; margin: 0; }
.suka-check-list li { position: relative; padding: 13px 0 13px 32px; border-bottom: 1px solid #dededb; }
.suka-check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--suka-gold-dark); font-weight: 900; }
.suka-contact-panel dl { margin: 0 0 28px; }
.suka-contact-panel dl > div { padding: 14px 0; border-bottom: 1px solid var(--suka-border); }
.suka-contact-panel dt { font-size: .76rem; text-transform: uppercase; letter-spacing: .09em; color: var(--suka-muted); font-weight: 700; }
.suka-contact-panel dd { margin: 5px 0 0; font-size: 1.15rem; }
.suka-contact-note { margin-top: 28px; padding: 20px; background: #fff; border-left: 4px solid var(--suka-gold); }
.suka-contact-note p { margin-bottom: 0; }
.suka-finance-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.suka-finance-grid > article { background: var(--suka-offwhite); border-top: 5px solid var(--suka-gold); padding: 30px; }
.suka-finance-grid > article span { color: var(--suka-gold-dark); font-weight: 800; }
.suka-finance-grid > article h2 { font-size: 1.65rem; }
.suka-finance-cta { grid-column: 1 / -1; margin-top: 16px; background: var(--suka-charcoal); color: #fff; padding: 42px; display: flex; align-items: center; gap: 30px; }
.suka-finance-cta h2 { margin: 0; flex: 0 0 30%; }
.suka-finance-cta p { flex: 1; color: rgba(255,255,255,.75); }
.suka-post-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 25px; }
.suka-post-card { border: 1px solid var(--suka-border); padding: 20px; }

/* Estatik integration */
.es-search, .es-search__wrapper, .es-listings, .es-property, .es-property__inner { font-family: Arial, Helvetica, sans-serif !important; }
.es-search input, .es-search select, .es-search textarea, .es-field input, .es-field select { border: 1px solid #d0d0cc !important; border-radius: 0 !important; min-height: 48px !important; background: #fff !important; }
.es-search button, .es-btn, .es-button, button.es-btn, input[type="submit"].es-btn { border-radius: 0 !important; background: var(--suka-charcoal) !important; border-color: var(--suka-charcoal) !important; color: #fff !important; font-weight: 800 !important; text-transform: uppercase; }
.es-search button:hover, .es-btn:hover, .es-button:hover { background: var(--suka-gold) !important; border-color: var(--suka-gold) !important; color: #111 !important; }
.es-listings__list { gap: 26px !important; }
.es-property { background: #fff !important; border: 1px solid #d8d8d4 !important; border-radius: 0 !important; box-shadow: none !important; overflow: hidden; transition: .2s ease; }
.es-property:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,.12) !important; }
.es-property__image, .es-property__image img { border-radius: 0 !important; }
.es-property__title a, .es-property a { text-decoration: none; }
.es-property__title a { color: #10429a !important; font-weight: 700 !important; }
.es-property__price { color: #222 !important; font-size: 1.3rem !important; font-weight: 700 !important; }
.es-property__badge, .es-badge { border-radius: 0 !important; background: var(--suka-gold) !important; color: #111 !important; }
.es-properties__list .es-property__content, .es-property__content { padding: 18px !important; }
.es-listings-filter, .es-listings__navbar { margin-bottom: 25px !important; }
.es-listings__navbar select { border-radius: 0 !important; }
.suka-property-content { padding-top: 35px; }

/* Footer */
.suka-footer { background: #181818; color: rgba(255,255,255,.74); border-top: 6px solid var(--suka-gold); }
.suka-footer__main { display: grid; grid-template-columns: 1.4fr .8fr .8fr 1.1fr; gap: 50px; padding-block: 65px; }
.suka-footer h2, .suka-footer h3 { color: #fff; margin-top: 0; }
.suka-footer h2 { font-family: Georgia, serif; font-size: 2rem; }
.suka-footer h3 { font-size: 1rem; text-transform: uppercase; letter-spacing: .1em; }
.suka-footer ul { list-style: none; padding: 0; margin: 0; }
.suka-footer li { margin: 8px 0; }
.suka-footer a { color: rgba(255,255,255,.78); text-decoration: none; }
.suka-footer a:hover { color: var(--suka-gold); }
.suka-footer-whatsapp { display: inline-block; margin-top: 14px; padding: 11px 15px; border: 1px solid var(--suka-gold); color: var(--suka-gold) !important; }
.suka-footer__bottom { border-top: 1px solid rgba(255,255,255,.12); }
.suka-footer__bottom .suka-container { min-height: 58px; display: flex; justify-content: space-between; align-items: center; gap: 20px; font-size: .86rem; }

@media (max-width: 1180px) {
  .suka-nav > ul > li > a { padding-inline: 15px; font-size: .95rem; }
  .suka-nav-search { flex-basis: 190px; }
  .suka-header-contact { gap: 20px; }
  .suka-home-hero__grid { grid-template-columns: 1fr 390px; gap: 35px; }
}

@media (max-width: 960px) {
  .suka-header-main__inner { min-height: 110px; }
  .suka-brand .custom-logo { max-height: 85px; }
  .suka-header-contact a:first-child { display: none; }
  .suka-navigation-bar__inner { min-height: 62px; position: relative; }
  .suka-menu-toggle { display: block; }
  .suka-nav { display: none; position: absolute; top: 100%; left: 24px; right: 24px; background: var(--suka-charcoal); box-shadow: var(--suka-shadow); }
  .suka-nav.is-open { display: block; }
  .suka-nav > ul { display: block; }
  .suka-nav > ul > li { display: block; }
  .suka-nav > ul > li > a { min-height: 50px; padding: 0 18px; border-bottom: 1px solid rgba(255,255,255,.1); }
  .suka-nav .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; display: none; box-shadow: none; border-top: 0; background: #202020; }
  .suka-nav li.submenu-open > .sub-menu { display: block; }
  .suka-nav .sub-menu a { color: #fff; border-color: rgba(255,255,255,.08); padding-left: 35px; }
  .suka-submenu-toggle { position: absolute; right: 5px; top: 4px; display: grid; place-items: center; width: 44px; height: 42px; border: 0; background: transparent; color: var(--suka-gold); z-index: 2; }
  .suka-nav-search { margin-left: auto; flex-basis: 220px; }
  .suka-home-hero__grid { grid-template-columns: 1fr; padding-block: 70px; }
  .suka-hero-search { max-width: 520px; }
  .suka-quick-links__grid { grid-template-columns: 1fr; }
  .suka-quick-link { border-left: 1px solid var(--suka-border); border-bottom: 1px solid var(--suka-border); }
  .suka-featured-layout { grid-template-columns: 1fr; }
  .suka-home-listings--popular .es-listings__list,
  .suka-home-listings--popular .es-properties__list,
  .suka-home-listings--popular .es-listings-grid,
  .suka-home-listings--popular .es-properties-grid,
  .suka-home-listings--recent .es-listings__list,
  .suka-home-listings--recent .es-properties__list,
  .suka-home-listings--recent .es-listings-grid,
  .suka-home-listings--recent .es-properties-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .suka-home-listing-panel { padding: 24px; }
  .suka-owner-cta { position: static; min-height: auto; }
  .suka-trust-grid, .suka-about-layout, .suka-contact-layout { grid-template-columns: 1fr; }
  .suka-trust-points { grid-template-columns: 1fr 1fr; }
  .suka-footer__main { grid-template-columns: 1fr 1fr; }
  .suka-finance-grid { grid-template-columns: 1fr; }
  .suka-finance-cta { grid-column: auto; display: block; }
  .suka-finance-cta h2 { margin-bottom: 12px; }
}

@media (max-width: 640px) {
  .suka-container { width: min(calc(100% - 28px), var(--suka-container)); }
  .suka-header-main__inner { min-height: 92px; }
  .suka-brand .custom-logo { max-height: 72px; max-width: 150px; }
  .suka-header-contact a { font-size: .92rem; }
  .suka-header-contact small { display: none; }
  .suka-nav-search { flex-basis: auto; margin-left: auto; padding-inline: 12px; }
  .suka-nav-search span { display: none; }
  .suka-home-hero { min-height: auto; }
  .suka-home-hero__grid { min-height: auto; padding-block: 60px; }
  .suka-home-hero h1 { font-size: clamp(2.8rem,14vw,4.2rem); }
  .suka-home-hero__copy > p:not(.suka-kicker) { font-size: 1.05rem; }
  .suka-hero-search { padding: 20px; }
  .suka-map-decoration { display: none; }
  .suka-quick-link { grid-template-columns: 50px 1fr auto; padding: 20px 18px; }
  .suka-quick-link__icon { width: 48px; height: 48px; }
  .suka-section, .suka-content-section { padding-block: 58px; }
  .suka-section-heading--split { display: block; }
  .suka-section-heading--split .suka-text-link { display: inline-block; margin-top: 12px; }
  .suka-home-recent .suka-section-heading .suka-btn { display: inline-block; margin-top: 15px; }
  .suka-home-listings--popular .es-listings__list,
  .suka-home-listings--popular .es-properties__list,
  .suka-home-listings--popular .es-listings-grid,
  .suka-home-listings--popular .es-properties-grid,
  .suka-home-listings--recent .es-listings__list,
  .suka-home-listings--recent .es-properties__list,
  .suka-home-listings--recent .es-listings-grid,
  .suka-home-listings--recent .es-properties-grid { grid-template-columns: 1fr !important; }
  .suka-home-listing-panel { padding: 16px; }
  .suka-page-hero { padding-block: 62px; }
  .suka-page-hero h1 { font-size: 2.75rem; }
  .suka-trust-points, .suka-footer__main, .suka-post-grid { grid-template-columns: 1fr; }
  .suka-footer__bottom .suka-container { align-items: flex-start; justify-content: center; flex-direction: column; padding-block: 15px; }
}


/* Suka OpenStreetMap homepage integration */
.suka-home-map { background: #f2f2ef; border-top: 1px solid var(--suka-border); border-bottom: 1px solid var(--suka-border); }
.suka-home-map .suka-section-heading { margin-bottom: 28px; }
.suka-home-map__note { max-width: 780px; color: var(--suka-muted); }
.suka-map-plugin-missing { background: #fff; border: 1px solid var(--suka-border); border-left: 5px solid var(--suka-gold); padding: 24px; }
.suka-osm-app { box-shadow: var(--suka-shadow); }
.suka-osm-app .suka-osm-panel { background: #242424; }
.suka-osm-app .suka-osm-filter-title,
.suka-osm-app .suka-osm-filter-subtitle { color: #fff; }
.suka-osm-app .suka-osm-reset { color: var(--suka-gold); }
.suka-osm-app .suka-osm-count { color: rgba(255,255,255,.78); }
.suka-osm-app .suka-osm-map { min-height: 650px; }
.suka-osm-app .suka-osm-marker-pin { background: var(--suka-gold); border-color: #fff; color: #111; }
.suka-osm-app .suka-osm-marker-pin::after { border-top-color: var(--suka-gold); }
.suka-osm-app .suka-osm-popup-button { background: var(--suka-charcoal); color: #fff; }
.suka-osm-app .suka-osm-popup-button:hover { background: var(--suka-gold); color: #111; }

@media (max-width: 960px) {
  .suka-osm-app .suka-osm-map { min-height: 520px; }
}

@media (max-width: 640px) {
  .suka-osm-app .suka-osm-map { min-height: 430px; }
}
