.elementor-kit-5{--e-global-color-primary:#87CBC9;--e-global-color-secondary:#C7B69A;--e-global-color-text:#000000;--e-global-color-accent:#2F7D7C;--e-global-color-tealsoft:#EDF7F7;--e-global-color-sandsoft:#F6F1E9;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:500;color:#000000;font-family:"Poppins", Sans-serif;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:0px;padding-inline-start:0px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --teal:#87CBC9; --teal-dark:#2F7D7C; --teal-soft:#EEF8F8; --sand:#C7B69A; --sand-soft:#F6F1E9; --ink:#000000; --muted:#4B5152; --white:#FFFFFF; --poppins:Poppins; }
/* Start custom CSS *//* ===== Melou – Hauptnavigation ===== */
.elementor-location-header .elementor-widget-nav-menu { flex: 1 1 auto; min-width: 0; }
.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu { flex-wrap: nowrap !important; justify-content: center; }
.elementor-location-header .elementor-nav-menu--main .elementor-item { white-space: nowrap; padding-left: 6px !important; padding-right: 6px !important; font-family: 'Poppins', sans-serif; font-size: 15px !important; font-weight: 500; color: #000; }
.elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active { color: #000 !important; }
.elementor-location-header .elementor-nav-menu--main .elementor-item:before,
.elementor-location-header .elementor-nav-menu--main .elementor-item:after { background-color: #87CBC9 !important; height: 2px !important; }
.elementor-location-header .elementor-nav-menu--dropdown { background: #fff; border-radius: 16px; box-shadow: 0 18px 40px rgba(0,0,0,.10); padding: 8px 0; overflow: hidden; }
/* Desktop: Untermenüs (3. Ebene) dürfen über das Dropdown hinausragen, sonst werden sie abgeschnitten */
.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu--dropdown { overflow: visible; }
.elementor-location-header .elementor-nav-menu--dropdown a { font-family: 'Poppins', sans-serif; font-size: 14px; color: #000 !important; background: transparent !important; }
.elementor-location-header .elementor-nav-menu--dropdown a:hover,
.elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active { background: #EDF7F7 !important; color: #000 !important; }
.elementor-location-header .elementor-menu-toggle { background: #EDF7F7; border-radius: 50%; padding: 10px; color: #000; margin-left: auto; }
@media (min-width: 1025px) and (max-width: 1299px) {
  .elementor-location-header [data-id="1be38f76"] { display: none !important; }
}
@media (max-width: 1024px) {
  .elementor-location-header .elementor-widget-nav-menu { position: static !important; flex: 0 0 auto; }
  .elementor-location-header .elementor-widget-nav-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: absolute !important; left: 0 !important; right: 0 !important; top: 100% !important; width: auto !important;
    margin-top: 0 !important; border-radius: 0 0 24px 24px !important; box-shadow: 0 24px 40px rgba(0,0,0,.10) !important; z-index: 999;
  }
}

/* ===== Melou – Textlinks in Karten, Boxen und Brotkrumen (Einzugsgebiet, Ortsseiten) ===== */
.m-card .m-text a, .m-box .m-text a, .m-crumb a { color: inherit; text-decoration: underline; text-decoration-color: #87CBC9; text-decoration-thickness: 2px; text-underline-offset: 3px; transition: color .2s ease; }
.m-card .m-text a:hover, .m-box .m-text a:hover, .m-crumb a:hover { color: #2F7D7C; }

/* ===== Melou – Ortsseiten: Hero-Foto (Hochformat) oben ausrichten, damit der Kopf nicht abgeschnitten wird ===== */
.m-hero-img[data-id="5992df8c"] { object-position: 50% 12%; }

/* ===== Melou – Frymo: gemeinsame Elemente ===== */
.elementor-widget-frymo-listing *:not([class*="icon"]):not(i),
[data-elementor-type="frymo-single"] *:not([class*="icon"]):not(i):not(.fa):not([class*="fa-"]) { font-family: 'Poppins', sans-serif; }
.frymo-icon { color: #2F7D7C; }
.elementor .elementor-element.elementor-widget .frymo-listing-button.frymo-listing-button.frymo-listing-button,
.elementor .elementor-element.elementor-widget .frymo-contact-data-button.frymo-contact-data-button.frymo-contact-data-button,
.elementor .elementor-element.elementor-widget .frymo-submit.frymo-submit.frymo-submit,
.frymo-listing-button, .frymo-contact-data-button, .frymo-submit {
  display: inline-flex; align-items: center; justify-content: center; background: #87CBC9 !important; background-color: #87CBC9 !important; color: #000 !important;
  border: 0 !important; border-radius: 999px !important; padding: 14px 28px !important; font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important; font-weight: 600 !important; letter-spacing: .06em; text-transform: uppercase; transition: all .2s ease; text-decoration: none !important;
}
.elementor .elementor-element.elementor-widget .frymo-listing-button.frymo-listing-button.frymo-listing-button:hover,
.elementor .elementor-element.elementor-widget .frymo-contact-data-button.frymo-contact-data-button.frymo-contact-data-button:hover,
.elementor .elementor-element.elementor-widget .frymo-submit.frymo-submit.frymo-submit:hover { background: #000 !important; background-color: #000 !important; color: #fff !important; }
.frymo-input, [data-elementor-type="frymo-single"] select, [data-elementor-type="frymo-single"] textarea, .frymo-phone-country-.elementor-kit-5 {
  font-family: 'Poppins', sans-serif !important; font-size: 15px !important; border: 1px solid rgba(0,0,0,.14) !important; border-radius: 14px !important; padding: 12px 16px !important; background: #fff !important;
}
.frymo-input:focus, [data-elementor-type="frymo-single"] textarea:focus { border-color: #2F7D7C !important; outline: none; }

/* ===== Melou – Immobilienübersicht (Frymo Listing) ===== */
.frymo-listing-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 28px; font-size: 14px; color: #4B5152; }
.frymo-orderby-select { border: 1px solid rgba(0,0,0,.14) !important; border-radius: 999px !important; padding: 10px 18px !important; font-family: 'Poppins', sans-serif; font-size: 14px; background: #fff; }
html body .elementor .frymo-listing-grid-skin { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 28px !important; }
@media (max-width: 1024px) { html body .elementor .frymo-listing-grid-skin { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 767px) { html body .elementor .frymo-listing-grid-skin { grid-template-columns: minmax(0, 1fr) !important; } }
.frymo-listing-item { background: #fff !important; border-radius: 24px !important; overflow: hidden; box-shadow: 0 14px 36px rgba(0,0,0,.08); transition: transform .25s ease, box-shadow .25s ease; display: flex; flex-direction: column; }
.frymo-listing-item:hover { transform: translateY(-4px); box-shadow: 0 22px 46px rgba(0,0,0,.12); }
.frymo-listing-image { position: relative; display: block; }
.frymo-listing-image-wrapper { aspect-ratio: 4 / 3; overflow: hidden; }
.frymo-listing-image-wrapper img { width: 100% !important; height: 100% !important; object-fit: cover; transition: transform .5s ease; }
.frymo-listing-item:hover .frymo-listing-image-wrapper img { transform: scale(1.04); }
.frymo-listing-badges { position: absolute; top: 16px; left: 16px; z-index: 2; display: flex; gap: 8px; }
.frymo-listing-badge { background: #fff !important; color: #000 !important; border-radius: 999px !important; padding: 6px 14px !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .04em; }
.frymo-listing-badge.badge-status { background: #87CBC9 !important; }
.frymo-listing-content { padding: 24px 26px 28px !important; display: flex; flex-direction: column; gap: 12px; flex: 1 1 auto; }
.frymo-listing-title, .frymo-listing-title a { font-family: 'Poppins', sans-serif !important; font-size: 19px !important; font-weight: 600 !important; line-height: 1.35 !important; color: #000 !important; margin: 0 !important; text-decoration: none; }
.frymo-listing-location { font-size: 14px; color: #4B5152; display: flex; align-items: center; gap: 6px; }
.frymo-listing-meta { display: flex; flex-wrap: wrap; gap: 8px; }
.frymo-listing-meta-item { display: inline-flex; align-items: center; gap: 6px; background: #EDF7F7; border-radius: 999px; padding: 6px 12px; font-size: 13px; color: #000; }
.frymo-listing-price { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding-top: 14px; margin-top: auto; border-top: 1px solid rgba(0,0,0,.08); font-size: 13px; color: #4B5152; text-transform: uppercase; letter-spacing: .08em; }
.frymo-listing-price-value { font-size: 22px; font-weight: 600; color: #000; text-transform: none; letter-spacing: 0; }
.frymo-listing-button-wrapper { margin-top: 6px; }
.frymo-listing-button { width: 100%; }

/* ===== Melou – Exposé (Frymo Objektdetails) ===== */
.single-immobilie [data-elementor-type="frymo-single"] > .elementor-element-5f27cd08 { background: linear-gradient(180deg, #EDF7F7 0%, #FFFFFF 100%) !important; padding-top: 56px !important; padding-bottom: 72px !important; }
.single-immobilie .elementor-element-4848b859 { gap: 32px !important; align-items: flex-start; }
.single-immobilie .elementor-element-611b1cb2 { background: #fff !important; border-radius: 28px; box-shadow: 0 18px 44px rgba(0,0,0,.07); overflow: hidden; }
.single-immobilie .elementor-element-70ba6be2 { position: sticky !important; top: 110px; }
.single-immobilie .elementor-widget-frymo-contact-data > .elementor-widget-container { border-radius: 28px !important; box-shadow: 0 18px 44px rgba(0,0,0,.07); }
.frymo-title { font-family: 'Poppins', sans-serif !important; font-size: 40px !important; font-weight: 500 !important; line-height: 1.15 !important; letter-spacing: -0.015em; color: #000 !important; }
.frymo-widget-heading { font-family: 'Poppins', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; text-transform: uppercase; letter-spacing: .16em; color: #2F7D7C !important; }
.frymo-widget-heading-line { background-color: #87CBC9 !important; width: 60px !important; height: 2px !important; }
.frymo-short-overview { gap: 14px; }
.frymo-short-overview-item { background: #EDF7F7 !important; border-radius: 18px !important; border: 0 !important; }
.frymo-short-overview-item-label { font-size: 13px !important; color: #4B5152 !important; }
.frymo-short-overview-item-value { font-size: 20px !important; font-weight: 600 !important; color: #000 !important; }
.frymo-data-item-label { color: #4B5152 !important; font-size: 14px !important; }
.frymo-data-item-value { color: #000 !important; font-weight: 500 !important; }
.frymo-text-wpautop, .frymo-widget-text-content { font-size: 16px; line-height: 1.75; color: #4B5152; }
.frymo-contact-item-label { color: #4B5152; font-size: 13px; }
.frymo-contact-item-value, .frymo-contact-item-value a { color: #000 !important; font-weight: 500; }
.single-immobilie .elementor-widget-gallery img, .single-immobilie .frymo-lightbox-gellery img { border-radius: 14px; }
.single-immobilie .elementor-element-44759aa2 { background: #F6F1E9; padding-top: 72px !important; padding-bottom: 72px !important; }
.single-immobilie .elementor-element-44759aa2 .elementor-widget-frymo-contact-form > .elementor-widget-container { background: #fff; border-radius: 28px; padding: 40px; box-shadow: 0 18px 44px rgba(0,0,0,.07); }
.single-immobilie .elementor-element-58a44f0f .elementor-heading-title { font-family: 'Poppins', sans-serif !important; font-size: 40px !important; font-weight: 500 !important; letter-spacing: -0.015em; color: #000 !important; }
.single-immobilie .elementor-element-2d289f5b { padding-top: 80px !important; padding-bottom: 80px !important; }
@media (max-width: 1024px) {
  .single-immobilie .elementor-element-70ba6be2 { position: static !important; }
  .frymo-title { font-size: 32px !important; }
}
@media (max-width: 767px) {
  .frymo-title { font-size: 26px !important; }
  .single-immobilie .elementor-element-611b1cb2 { border-radius: 20px; }
  .single-immobilie .elementor-element-44759aa2 .elementor-widget-frymo-contact-form > .elementor-widget-container { padding: 22px; }
  .single-immobilie .elementor-element-58a44f0f .elementor-heading-title { font-size: 28px !important; }
}/* End custom CSS */