/* ==========================================================================
   Diamant Apartmanhazak - arculat (melyzold + homok)
   Naxan, 2026-09-19.  Helye: templates/travus/css/custom.css — a Helix ezt magatol
   betolti, es egy fajl szolgal ki mind a 4 nyelvi stilust (12/19/20/21).
   (A sablon-stilus custom_css mezoje nem jarhato: a core API nem menti el, az
   nxndiag design/styles agat pedig az intType-bug 500-azta; 1.4.2-ben javitva.)

   A !important ott kell, ahol az SP Page Builder a <body>-ba irja ki az addon-CSS-t,
   tehat a fejleces <link> utan jon a kaszkadban.
   ========================================================================== */

:root {
  --dm-green:      #2F4A3C;
  --dm-green-dark: #22372C;
  --dm-terra:      #C8622F;
  --dm-terra-dark: #A84E22;
  --dm-sand:       #E8DCC8;
  --dm-sand-soft:  #F3EDE1;
  --dm-paper:      #FAF8F4;
  --dm-ink:        #1B1B18;
  --dm-muted:      #5C6660;
  --dm-radius:     14px;
  --dm-shadow:     0 2px 10px rgba(27,27,24,.07), 0 12px 32px rgba(27,27,24,.06);
}

/* --- Alap ---------------------------------------------------------------- */
body { background: var(--dm-paper); color: var(--dm-ink); }
a { color: var(--dm-green); }
a:hover, a:focus { color: var(--dm-terra); }

/* Lathato fokusz - billentyuzetes navigaciohoz (eddig nem volt) */
a:focus-visible, button:focus-visible, .sppb-btn:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 3px solid var(--dm-terra) !important;
  outline-offset: 2px !important;
}

/* --- Tipografia ---------------------------------------------------------- */
h1, h2, h3, h4, h5, h6,
.sppb-addon-title, .sp-module-title {
  color: var(--dm-ink);
  letter-spacing: -.01em;
}
h1, .sppb-addon-title.sppb-feature-box-title { font-weight: 600; }

/* A 60px-es h1 mobilon kifolyik - folyekony meret */
#sp-page-builder h1, .sppb-section h1 {
  font-size: clamp(2rem, 5.2vw, 3.4rem) !important;
  line-height: 1.12 !important;
}
#sp-page-builder h3.sppb-addon-title {
  font-size: clamp(1.35rem, 2.6vw, 2.1rem) !important;
  line-height: 1.25;
}

/* --- Felso sav ----------------------------------------------------------- */
#sp-top-bar {
  background: var(--dm-green-dark);
  color: rgba(255,255,255,.75);
  padding: 6px 0;
}
#sp-top-bar a, #sp-top-bar .social-icons a { color: rgba(255,255,255,.8); }
#sp-top-bar a:hover { color: #fff; }

/* --- Fejlec -------------------------------------------------------------- */
#sp-header {
  background: rgba(250,248,244,.94) !important;
  backdrop-filter: saturate(140%) blur(8px);
  border-bottom: 1px solid rgba(47,74,60,.12);
  box-shadow: none;
}
#sp-header.header-sticky { box-shadow: 0 6px 20px rgba(27,27,24,.08); }
/* A logo feher vetett arnyeka a regi kek fejlechez kellett - most zavaro */
#sp-header .logo img { filter: none; }

#sp-header .sp-megamenu-parent > li > a,
#sp-header .sp-megamenu-parent > li > span {
  color: var(--dm-green) !important;
  font-weight: 600;
  letter-spacing: .01em;
}
#sp-header .sp-megamenu-parent > li:hover > a,
#sp-header .sp-megamenu-parent > li.active > a { color: var(--dm-terra) !important; }
/* Aktiv menupont alahuzasa - eddig csak szin jelezte */
#sp-header .sp-megamenu-parent > li.active > a::after {
  content: ""; display: block; height: 2px; margin-top: 4px;
  background: var(--dm-terra); border-radius: 2px;
}
#offcanvas-toggler > .fa { color: var(--dm-green); }

/* --- GOMB-RENDSZER ------------------------------------------------------- */
/* Az SP Page Builder minden addonnal ujra kiirja globalisan a
   .sppb-btn-custom szabalyt, kulonbozo szinekkel - az utolso nyerne az
   egesz oldalon. Ezt itt egyetlen, kiszamithato rendszerre csereljuk,
   es a hierarchiat a link CELJABOL vezetjuk le, hogy a page-builder
   tartalomhoz ne kelljen hozzanyulni. */

.sppb-btn, .sppb-btn-custom, a.sppb-btn {
  border-radius: 999px !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  border: 2px solid transparent !important;
  transition: background-color .18s ease, color .18s ease,
              border-color .18s ease, transform .18s ease !important;
  box-shadow: none !important;
  text-transform: none !important;
  /* ALAPALLAPOT: ha egy gomb egyik hierarchia-szabalyba sem esik (pl. "Megnezem a
     teljes kinalatot"), ne az SPPB veletlenszeru kekje maradjon rajta. A harom
     href-szabaly attributum-szelektoros, tehat magasabb specifikussagu -> nyer. */
  background-color: transparent !important;
  color: var(--dm-green) !important;
  border-color: var(--dm-green) !important;
}
.sppb-btn:hover { transform: translateY(-1px); }
.sppb-btn:hover, a.sppb-btn:hover { background-color: var(--dm-green) !important; color: #fff !important; }

/* 1. ELSODLEGES - foglalas / kapcsolatfelvetel (terrakotta, teli) */
a.sppb-btn[href*="kapcsolat"],
a.sppb-btn[href*="contact"],
a.sppb-btn[href*="kontakt"],
a.sppb-btn[href^="mailto:"] {
  background-color: var(--dm-terra) !important;
  color: #fff !important;
  border-color: var(--dm-terra) !important;
  box-shadow: none !important;
}
a.sppb-btn[href*="kapcsolat"]:hover,
a.sppb-btn[href*="contact"]:hover,
a.sppb-btn[href*="kontakt"]:hover,
a.sppb-btn[href^="mailto:"]:hover {
  background-color: var(--dm-terra-dark) !important;
  border-color: var(--dm-terra-dark) !important;
  color: #fff !important;
}

/* 2. MASODLAGOS - telefon (melyzold kontur) */
a.sppb-btn[href^="tel:"] {
  background-color: transparent !important;
  color: var(--dm-green) !important;
  border-color: var(--dm-green) !important;
}
a.sppb-btn[href^="tel:"]:hover {
  background-color: var(--dm-green) !important;
  color: #fff !important;
}

/* 3. HARMADLAGOS - "Bovebben" modal-nyito: szoveglink, nem gomb.
      Igy a kartyan egy domináns gomb marad, nem harom egyforma. */
a.sppb-btn[href^="#sppb-modal"] {
  background: none !important;
  border-color: transparent !important;
  color: var(--dm-green) !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1px !important;
}
a.sppb-btn[href^="#sppb-modal"]:hover {
  color: var(--dm-terra) !important;
  background: none !important;
}
/* A modal-nyito ikonja (huvelykujj stb.) itt mar csak zaj */
a.sppb-btn[href^="#sppb-modal"] > i { display: none !important; }

/* Gomb-sor a kartyan: ne torjon szet, legyen egyenletes koz */
.sppb-addon-button-group, .sppb-addon-buttons { gap: .5rem; }

/* --- Szekcio-ritmus ------------------------------------------------------ */
.sppb-section { background-color: transparent; }
#sp-page-builder .sppb-section + .sppb-section { border-top: 0; }

/* (Itt korabban egy tul altalanos szabaly minden beagyazott szekciora rátette a
   "feher lap" stilust. Ez a kartyakon BELUL is ervenyesult — a cim, a felszereltseg
   es a gombsor kulon-kulon dobozt es arnyekot kapott, egymasra halmozva. Ezert
   kivettuk: a kartya stilusat lejjebb, egyetlen helyen adjuk meg.) */

/* Kepek lekerekitese a kartyakon */
#sp-page-builder .sppb-img-responsive { border-radius: 10px; }

/* --- Lablec -------------------------------------------------------------- */
#sp-bottom {
  background: var(--dm-green) !important;
  color: rgba(255,255,255,.78);
}
#sp-bottom .sp-module-title, #sp-bottom h3 {
  color: #fff !important;
  font-size: 1.05rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}
#sp-bottom a { color: rgba(255,255,255,.78); }
#sp-bottom a:hover { color: var(--dm-sand); }

#sp-footer {
  background: var(--dm-green-dark) !important;
  /* a footer_text_color parameter #d62b2b (piros) volt - felulirva */
  color: rgba(255,255,255,.62) !important;
}
#sp-footer a, #sp-footer .sp-copyright { color: rgba(255,255,255,.62) !important; }
#sp-footer a:hover { color: var(--dm-sand) !important; }
#sp-footer .sppb-btn-link { color: rgba(255,255,255,.62) !important; }

/* --- Urlap --------------------------------------------------------------- */
.sppb-form-control, input[type="text"], input[type="email"],
input[type="tel"], input[type="number"], textarea, select {
  border-radius: 10px !important;
  border: 1px solid rgba(47,74,60,.22) !important;
  background: #fff !important;
}
.sppb-form-control:focus, textarea:focus, select:focus {
  border-color: var(--dm-green) !important;
  box-shadow: 0 0 0 3px rgba(47,74,60,.12) !important;
}

/* --- Mobil ragados CTA-sav ----------------------------------------------- */
/* A markupot a sablon "Before Body" mezoje adja (#dm-cta-bar). */
#dm-cta-bar { display: none; }
@media (max-width: 767.98px) {
  #dm-cta-bar {
    display: flex;
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999;
    gap: 8px; padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
    background: rgba(250,248,244,.97);
    border-top: 1px solid rgba(47,74,60,.15);
    box-shadow: 0 -6px 20px rgba(27,27,24,.10);
  }
  #dm-cta-bar a {
    flex: 1 1 0; display: flex; align-items: center; justify-content: center;
    gap: .45rem; min-height: 48px; padding: 10px 14px;
    border-radius: 999px; font-weight: 700; font-size: 1rem;
    text-decoration: none; border: 2px solid transparent;
  }
  #dm-cta-bar .dm-call {
    color: var(--dm-green); border-color: var(--dm-green); background: transparent;
  }
  #dm-cta-bar .dm-book {
    color: #fff; background: var(--dm-terra); border-color: var(--dm-terra);
  }
  /* hogy a sav ne takarja a lablec veget */
  body { padding-bottom: 76px; }
  /* a sutibanner fole ne csusszon */
  #sp-cookie-consent { bottom: 76px; }
}

/* --- Mozgascsokkentes ---------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .001ms !important; transition-duration: .001ms !important; }
  .sppb-btn:hover { transform: none; }
}

/* --- A REJTETT TARTALOM VISSZAHOZASA ------------------------------------- */
/* Az oldal tartalmanak nagy resze MINDEN latogato szamara lathatatlan volt.
   Ok: a regi SP Page Builder tartalom `sppb-wow` osztalyt visel, amire az
   animate.min.css `visibility: hidden`-t tesz; a feltaro WOW.js viszont a jelenlegi
   SPPB 5.5.7-ben mar NINCS az oldalon (ellenorizve: `typeof window.WOW === "undefined"`,
   egyetlen wow/animate script sincs betoltve, es a JS-konzol hibatlan). Az elemek
   inline stilusa is `animation-name: none` — az animacio sosem indult el.
   Merleg: 40 szekciobol 29 volt rejtett, koztuk MINDEN apartman-kartya cime,
   leirasa es ara. Ez nem a mostani arculat kovetkezmenye: a valtozas ELOTT is igy volt
   (a custom.css letiltasaval osszehasonlitva). */
.sppb-wow {
  visibility: visible !important;
  animation-name: none !important;
}

/* --- Sutibanner ----------------------------------------------------------- */
/* A modul sajat <style>-ja #4a13d6 lila hattert tesz ra, ami se a regi kekhez, se az
   uj palettahoz nem illik. A sajat szabalyai id-alapuak, ezert !important kell. */
#sp-cookie-consent {
  background-color: var(--dm-green-dark) !important;
  color: rgba(255,255,255,.88) !important;
  border-top: 3px solid var(--dm-terra);
}
#sp-cookie-consent a { color: var(--dm-sand) !important; text-decoration: underline; }
#sp-cookie-consent .sp-cookie-allow {
  background-color: var(--dm-terra) !important;
  color: #fff !important;
  border-radius: 999px;
  padding: 8px 20px;
  font-weight: 600;
}
#sp-cookie-consent .sp-cookie-allow:hover,
#sp-cookie-consent .sp-cookie-allow:focus,
#sp-cookie-consent .sp-cookie-allow:active {
  background-color: var(--dm-terra-dark) !important;
  color: #fff !important;
}

/* --- Hero olvashatosag ---------------------------------------------------- */
/* A feher cim vilagos epuletfotora kerul: kontraszt-scrim + arnyek, hogy a
   "Foglalj most" korul is olvashato maradjon a szoveg. */
.sppb-carousel-pro-inner-content { position: relative; }
.sppb-carousel-pro-inner-content::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(27,27,24,.62) 0%, rgba(27,27,24,.30) 55%, rgba(27,27,24,0) 100%);
  pointer-events: none;
}
.sppb-carousel-pro-inner-content > * { position: relative; z-index: 1; }
.sppb-carousel-pro-text h1,
.sppb-carousel-pro-text h2,
.sppb-carousel-pro-content { color: #fff !important; }
.sppb-carousel-pro-text h1 { text-shadow: 0 2px 18px rgba(0,0,0,.45); }

/* =========================================================================
   FOOLDAL-REDESIGN (2026-09-19)
   A horgok (.dm-hero, .dm-elonyok, .dm-apartmanok, .dm-szolgaltatasok,
   .dm-velemenyek) a page-builder szekcioinak "class" mezojebol jonnek, hogy a
   szabalyok pontosan celozzanak, ne a veletlenul egyezo SPPB-osztalyokra.
   ========================================================================= */

/* --- Szekcio-ritmus: valtakozo hatter, egyseges fuggoleges koz ------------ */
.dm-elonyok, .dm-velemenyek { background: var(--dm-sand-soft) !important; }
.dm-apartmanok, .dm-szolgaltatasok { background: var(--dm-paper) !important; }
.dm-elonyok, .dm-apartmanok, .dm-szolgaltatasok, .dm-velemenyek {
  padding-block: clamp(2.5rem, 5vw, 4.5rem) !important;
}

/* Szekciocim: kozepre zart, alatta rovid terrakotta vonal */
.dm-apartmanok > .sppb-container-inner > .sppb-row > .sppb-row-column > .sppb-column > .sppb-column-addons > .sppb-addon-wrapper:first-child .sppb-addon-title,
.dm-szolgaltatasok .sppb-addon-title:first-of-type,
.dm-velemenyek .sppb-addon-title:first-of-type {
  text-align: center;
}
.dm-apartmanok .addon-root-heading .sppb-addon-title::after,
.dm-szolgaltatasok .addon-root-heading .sppb-addon-title::after,
.dm-velemenyek .addon-root-heading .sppb-addon-title::after {
  content: "";
  display: block;
  width: 56px; height: 3px;
  margin: .7rem auto 0;
  background: var(--dm-terra);
  border-radius: 3px;
}

/* --- Apartman-kartyak: 7 egymas alatti sav helyett racs ------------------ */
/* A 7 kartya 7 KULON page-builder oldal, modulkent beagyazva; a kozos szulojuk
   az a .sppb-column-addons, aminek kozvetlen gyerekei modul-burkolok. A :has()
   ezt pontosan kivalasztja, es ahol nincs tamogatas, ott egyszeruen marad a
   korabbi egymas-ala rendezes (biztonsagos visszaesés). */
.dm-apartmanok .sppb-column-addons:has(> .addon-root-module) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.75rem);
  align-items: stretch;
}
@media (max-width: 767.98px) {
  .dm-apartmanok .sppb-column-addons:has(> .addon-root-module) {
    grid-template-columns: 1fr;
  }
}

/* A kartya maga */
/* EGYETLEN LAP. Eloszor mindent leszedunk a kartyan belul (keret, arnyek, sajat
   hatter), hogy ne halmozodjanak a dobozok, aztan a kartya kap egyet. Lapos
   alapallapot, finom arnyek csak hoverre. */
.dm-apartmanok .addon-root-module *:not(.sppb-btn):not(.nav-control) {
  box-shadow: none !important;
}
.dm-apartmanok .addon-root-module .sppb-section,
.dm-apartmanok .addon-root-module .sppb-container-inner,
.dm-apartmanok .addon-root-module .sppb-row-container,
.dm-apartmanok .addon-root-module .sppb-column,
.dm-apartmanok .addon-root-module .sppb-row-column,
.dm-apartmanok .addon-root-module .sppb-div-addon,
.dm-apartmanok .addon-root-module .clearfix,
.dm-apartmanok .addon-root-module .page-content {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.dm-apartmanok .addon-root-module {
  background: #fff !important;
  border: 1px solid rgba(47,74,60,.13) !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  overflow: hidden;
  margin: 0 !important;
  display: flex;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.dm-apartmanok .addon-root-module:hover {
  border-color: rgba(47,74,60,.24) !important;
  box-shadow: 0 8px 24px rgba(27,27,24,.08) !important;
  transform: translateY(-2px);
}

/* A kepre ultetett kerek nyilak (span.prev-control / .next-control) */
.dm-apartmanok .addon-root-module .nav-control { display: none !important; }

/* A terrakotta alahuzas CSAK a szekciocimre valo, a kartyacimekre nem */
.dm-apartmanok .addon-root-module .sppb-addon-title::after { content: none !important; }
.dm-apartmanok .addon-root-module .page-content,
.dm-apartmanok .addon-root-module .sppb-section,
.dm-apartmanok .addon-root-module .sppb-container-inner,
.dm-apartmanok .addon-root-module .sppb-row-container { width: 100%; padding: 0 !important; }

/* Kep felul, tartalom alatta — a kep melletti keskeny szovegoszlop helyett.
   FONTOS: csak a kartya KULSO sorara, a `:not(.sppb-nested-row)` nelkul a
   beagyazott gombsor is fuggolegesre tort (a ket gomb egymas ala csuszott). */
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) {
  display: flex !important;
  flex-direction: column;
  margin: 0 !important;
}
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > * {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* A kep-oszlop tartsa a meretet, a tartalom-oszlop NOJON — enelkul nem lehet a
   gombsort az aljara tolni (a korabbi `flex: 0 0 auto` mindkettot megkotötte). */
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:first-child { flex: 0 0 auto !important; }
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:last-child  { flex: 1 1 auto !important; }

/* A gombsor maradjon egy sorban: telefon + foglalas egymas mellett */
.dm-apartmanok .addon-root-module .sppb-nested-row {
  display: flex !important;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
  margin: 0 !important;
}
.dm-apartmanok .addon-root-module .sppb-nested-row > * {
  width: auto !important;
  max-width: none !important;
  flex: 0 1 auto !important;
  padding: 0 !important;
}
.dm-apartmanok .addon-root-module .sppb-nested-row .sppb-column-addons { padding: 0 !important; }
.dm-apartmanok .addon-root-module .sppb-nested-row .clearfix { margin: 0 !important; }

/* A kartyan belul a diavetito szamlaloja es bélyegkép-sávja csak zaj */
.dm-apartmanok .addon-root-module .sp-slider_current_number,
.dm-apartmanok .addon-root-module .sp-slider-current-number-slash,
.dm-apartmanok .addon-root-module .sp-slider-current-number-right,
.dm-apartmanok .addon-root-module .sp-slider .sp-dots,
.dm-apartmanok .addon-root-module .sp-slider > ul:not(.sp-slider-list) { display: none !important; }

/* Cim: egy-ket sor, nem harom */
.dm-apartmanok .addon-root-module .sppb-addon-title {
  font-size: 1.15rem !important;
  line-height: 1.3 !important;
  margin: 0 0 .4rem !important;
}
.dm-apartmanok .addon-root-module .addon-root-heading .clearfix { margin-bottom: 0 !important; }
.dm-apartmanok .addon-root-module .sppb-img-responsive {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 0;
  display: block;
}
/* A kep-oszlop (diavetito) egyseges aranyu legyen minden kartyan */
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:first-child .sp-slider,
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:first-child .sp-slider-outer-stage,
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:first-child .sp-item {
  height: 230px !important;
}
/* A kartya szovegreszenek belso margoja */
.dm-apartmanok .addon-root-module > .sppb-wow .sppb-row:not(.sppb-nested-row) > .sppb-row-column:last-child .sppb-column-addons { padding: 1rem 1.15rem 1.15rem; }
.dm-apartmanok .addon-root-module .sppb-addon-title {
  font-size: clamp(1.1rem, 1.5vw, 1.35rem) !important;
  margin-bottom: .45rem;
}

/* --- Elonyok (feature box-ok) -------------------------------------------- */
.dm-elonyok .sppb-addon-feature-box { background: transparent; }
.dm-elonyok .sppb-icon-inner,
.dm-elonyok .sppb-img-container img {
  background: #fff;
  border-radius: 50%;
  padding: 14px;
  box-shadow: 0 2px 10px rgba(27,27,24,.06);
}

/* --- Hero ---------------------------------------------------------------- */
.dm-hero .sppb-carousel-pro-text h2 {
  font-size: clamp(1.1rem, 2vw, 1.5rem) !important;
  letter-spacing: .14em;
  text-transform: uppercase;
  opacity: .92;
  margin-bottom: .2rem;
}
.dm-hero .sppb-carousel-pro-text h1 { margin-top: 0; }
.dm-hero .sppb-carousel-pro-content p { font-size: clamp(1rem, 1.4vw, 1.15rem); max-width: 46ch; }

/* A telefon+foglalas gombsor: 245+221+8px res = 474, a hely 468 -> tordelt.
   Ezert a ket gomb OSZTOZZON a soron, egyenlo szelessegben. A :has() pontosan
   azt a sort valasztja ki, amiben telefonszam-link van, igy a felette levo
   "Bovebben" sor erintetlen marad. */
.dm-apartmanok .addon-root-module .sppb-nested-row:has(a[href^="tel:"]) > .sppb-row-column {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
.dm-apartmanok .addon-root-module .sppb-nested-row:has(a[href^="tel:"]) a.sppb-btn {
  width: 100% !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding-inline: .6rem !important;
}
.dm-apartmanok .addon-root-module .sppb-nested-row .sppb-column,
.dm-apartmanok .addon-root-module .sppb-nested-row .sppb-column-addons { padding: 0 !important; }

/* A "Bovebben" szoveglink a specifikaciok ala, jobbra zarva */
.dm-apartmanok .addon-root-module .more-info { text-align: right; }

/* A kartyak kulonbozo hosszusagu leirast tartalmaznak, ezert a gombsor mas-mas
   magassagban ult. A tartalom-oszlop legyen fuggoleges flex, es a gombsort
   toljuk az aljara — igy a racsban egy vonalban all minden CTA. */
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:last-child,
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:last-child > .sppb-column {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.dm-apartmanok .addon-root-module .sppb-row:not(.sppb-nested-row) > .sppb-row-column:last-child .sppb-column-addons {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.dm-apartmanok .addon-root-module .sppb-nested-row:has(a[href^="tel:"]) { padding-top: .75rem; }
/* A flex-elem a BURKOLO (.sppb-addon-wrapper), nem maga a sor — ezert ide kell az
   automatikus felso margo, kulonben a gombsor nem tapad az aljara. */
/* A gombsor burkoloja itt .sppb-section (nem .sppb-addon-wrapper) — a modulkent
   beagyazott oldal sajat szekciot general korenek. */
.dm-apartmanok .addon-root-module .sppb-column-addons > .sppb-section:has(a[href^="tel:"]),
.dm-apartmanok .addon-root-module .sppb-column-addons > .sppb-addon-wrapper:has(a[href^="tel:"]) {
  margin-top: auto !important;
}

/* A kepre ultetett kerek diavetito-nyilak a kis kartyan csak zavarnak */
.dm-apartmanok .addon-root-module .sp-slider .sp-arrow,
.dm-apartmanok .addon-root-module .sp-slider .sp-slider-arrow,
.dm-apartmanok .addon-root-module .sp-slider [class*="arrow"],
.dm-apartmanok .addon-root-module .sp-slider .sp-video-control { display: none !important; }

/* Az informacios doboz ("Gyermekek reszere ... ingyenes") halvany levendula volt */
.dm-apartmanok .sppb-addon-alert,
.dm-apartmanok .sppb-alert {
  background: #fff !important;
  border: 1px solid rgba(47,74,60,.16) !important;
  border-left: 4px solid var(--dm-terra) !important;
  border-radius: 10px !important;
  color: var(--dm-ink) !important;
}

/* A racs a KARTYAT nyujtja, de a modulkent beagyazott oldal 8 szintu burkolo-lanca
   (sppb-wow > addon-module > addon-content > sp-module > sp-module-content >
   mod-sppagebuilder > page-content > section > row-container) mind `display:block`,
   ezert a nyujtas nem jutott le a tartalom-oszlopig, es a CTA-k nem alltak egy
   vonalban. A lancot vegig fuggoleges flexre valtjuk. */
.dm-apartmanok .addon-root-module > .clearfix,
.dm-apartmanok .addon-root-module .sppb-addon-module,
.dm-apartmanok .addon-root-module .sppb-addon-content,
.dm-apartmanok .addon-root-module .sp-module,
.dm-apartmanok .addon-root-module .sp-module-content,
.dm-apartmanok .addon-root-module .mod-sppagebuilder,
.dm-apartmanok .addon-root-module > .clearfix > .sppb-addon-module > .sppb-addon-content > .sp-module > .sp-module-content > .mod-sppagebuilder > .page-content,
.dm-apartmanok .addon-root-module > .clearfix .page-content > section.sppb-section,
.dm-apartmanok .addon-root-module > .clearfix .page-content > section.sppb-section > .sppb-row-container {
  display: flex !important;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}

/* A kartyak eredeti tartalma vegyes igazitast orokolt (van, ahol kozepre zart a
   felszereltseg-sor), a "Bovebben" pedig hol a szoveg melle csuszott, hol ala.
   Egysegesitjuk: minden balra zart, a "Bovebben" mindig sajat sorban. */
.dm-apartmanok .addon-root-module .sppb-addon-title,
.dm-apartmanok .addon-root-module p,
.dm-apartmanok .addon-root-module .sppb-addon-text-block,
.dm-apartmanok .addon-root-module .sppb-addon-content { text-align: left !important; }

.dm-apartmanok .addon-root-module .more-info {
  text-align: left !important;
  margin-top: .35rem;
}
.dm-apartmanok .addon-root-module .sppb-nested-row:not(:has(a[href^="tel:"])) {
  display: block !important;
}
.dm-apartmanok .addon-root-module .sppb-nested-row:not(:has(a[href^="tel:"])) > .sppb-row-column {
  width: 100% !important;
  flex: none !important;
}

/* A felszereltseg-lista legyen halvanyabb, mint a cim — igy a cim vezet */
.dm-apartmanok .addon-root-module p {
  color: var(--dm-muted) !important;
  font-size: .92rem !important;
  line-height: 1.55 !important;
  margin-bottom: 0 !important;
}

/* =========================================================================
   SZOLGALTATASOK OLDAL (page id=36)
   Horgok a page-builder szekcioinak "class" mezojebol: dm-szolg-*.
   ========================================================================= */

/* Szekcio-ritmus, a fooldallal egyezo logikaval */
.dm-szolg-bevezeto, .dm-szolg-kozelben { background: var(--dm-paper) !important; }
.dm-szolg-csempek, .dm-szolg-gyik { background: var(--dm-sand-soft) !important; }
.dm-szolg-bevezeto, .dm-szolg-csempek, .dm-szolg-kozelben, .dm-szolg-gyik {
  padding-block: clamp(2.5rem, 5vw, 4rem) !important;
}

/* Szekciocimek: kozepre, terrakotta alahuzassal — mint a fooldalon */
.dm-szolg-kozelben .addon-root-heading .sppb-addon-title,
.dm-szolg-gyik .addon-root-heading .sppb-addon-title { text-align: center; }
.dm-szolg-kozelben .addon-root-heading .sppb-addon-title::after,
.dm-szolg-gyik .addon-root-heading .sppb-addon-title::after {
  content: ""; display: block; width: 56px; height: 3px;
  margin: .7rem auto 0; background: var(--dm-terra); border-radius: 3px;
}

/* --- Bevezeto blokk ------------------------------------------------------ */
/* A kiemelt doboz az image_layouts addon tartalom-retege volt, indigo atmenettel
   (linear-gradient(225deg, rgba(38,51,159,.95), rgba(61,59,136,...))) — a regi
   arculat maradeka. A paletta szerinti melyzoldre valtjuk. */
.dm-szolg-bevezeto .sppb-addon-image-layout-content,
.dm-szolg-bevezeto2 .sppb-addon-image-layout-content {
  background-image: linear-gradient(210deg, var(--dm-green) 0%, var(--dm-green-dark) 100%) !important;
  border-radius: 14px;
}
.dm-szolg-bevezeto .sppb-addon-image-layout-content,
.dm-szolg-bevezeto .sppb-addon-image-layout-content p,
.dm-szolg-bevezeto2 .sppb-addon-image-layout-content,
.dm-szolg-bevezeto2 .sppb-addon-image-layout-content p { color: #fff !important; }
.dm-szolg-bevezeto .sppb-addon-image-layout-content p,
.dm-szolg-bevezeto2 .sppb-addon-image-layout-content p {
  font-size: .95rem !important;
  line-height: 1.6 !important;
}

/* --- Szolgaltatas-lista (Parkolas / Internet / Furdoszoba ...) ------------ */
/* A markup <p><strong>Cim</strong></p> + <p>leiras</p> parokbol all, koztuk
   Booking.com-rol bemasolt, URES <ul>-ekkel (bui_* osztalyok). Azokat elrejtjuk,
   a cimeket pedig valodi listava tagoljuk. */
/* HIBA VOLT: eloszor az OSSZES ilyen <ul>-t elrejtettuk, es ezzel valodi szoveg is
   eltunt ("Sajat furdoszoba", "kert, kerti sutohely, parkositott udvar"). Ezert
   csak a URES listaelemeket rejtjuk, a tobbit sima szovegsorra szeliditjuk. */
.dm-szolg-bevezeto ul[style*="bui_spacing"],
.dm-szolg-bevezeto2 ul[style*="bui_spacing"] {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.dm-szolg-bevezeto ul[style*="bui_spacing"] li,
.dm-szolg-bevezeto2 ul[style*="bui_spacing"] li { margin: 0; }
.dm-szolg-bevezeto ul[style*="bui_spacing"] li p,
.dm-szolg-bevezeto2 ul[style*="bui_spacing"] li p {
  color: var(--dm-muted);
  font-size: .95rem;
  line-height: 1.6;
  margin: 0 !important;
}
/* Ami tenyleg ures, az ne foglaljon helyet */
.dm-szolg-bevezeto ul[style*="bui_spacing"]:not(:has(li p:not(:empty))),
.dm-szolg-bevezeto2 ul[style*="bui_spacing"]:not(:has(li p:not(:empty))) { display: none !important; }

.dm-szolg-bevezeto .sppb-addon-text-block p > strong:only-child,
.dm-szolg-bevezeto2 .sppb-addon-text-block p > strong:only-child {
  display: block;
  color: var(--dm-green);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.dm-szolg-bevezeto .sppb-addon-text-block p:has(> strong:only-child),
.dm-szolg-bevezeto2 .sppb-addon-text-block p:has(> strong:only-child) {
  margin: 1.1rem 0 .3rem !important;
  padding-top: .9rem;
  border-top: 1px solid rgba(47,74,60,.15);
}
.dm-szolg-bevezeto .sppb-addon-text-block p:has(> strong:only-child):first-child,
.dm-szolg-bevezeto2 .sppb-addon-text-block p:has(> strong:only-child):first-child {
  border-top: 0; padding-top: 0; margin-top: 0 !important;
}
.dm-szolg-bevezeto .sppb-addon-text-block p:not(:has(strong)),
.dm-szolg-bevezeto2 .sppb-addon-text-block p:not(:has(strong)) {
  color: var(--dm-muted);
  font-size: .95rem;
  line-height: 1.6;
  margin-bottom: 0;
}

/* A "Idealis valasztas csaladok szamara..." szovegdoboz kartyara */
.dm-szolg-bevezeto2 .sppb-addon-text-block .sppb-addon-content > p[style*="justify"] { text-align: left !important; }

/* --- Kep-csempek --------------------------------------------------------- */
/* Egyforma arany, olvashato felirat, finom kozelites hoverre. */
.dm-szolg-csempek .sppb-addon-image-overlay,
.dm-szolg-csempek .sppb-image-overlay-wrapper { border-radius: 14px; overflow: hidden; }
.dm-szolg-csempek .sppb-addon-image-overlay img,
.dm-szolg-csempek .sppb-image-overlay-wrapper img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
  width: 100%;
  transition: transform .35s ease;
}
.dm-szolg-csempek .sppb-addon-image-overlay:hover img { transform: scale(1.04); }
.dm-szolg-csempek .sppb-image-overlay-content,
.dm-szolg-csempek .sppb-addon-image-overlay .sppb-image-overlay-text {
  background: linear-gradient(to top, rgba(27,27,24,.72) 0%, rgba(27,27,24,.25) 55%, rgba(27,27,24,0) 100%) !important;
}

/* --- "Mi van a kozelben?" ------------------------------------------------ */
/* Harom szedetlen szoveg-oszlop volt; kartyara tesszuk, a kategoriacimeket
   kiemeljuk, a tavolsagokat jobbra igazitjuk. */
.dm-szolg-kozelben .sppb-addon-text-block {
  background: #fff;
  border: 1px solid rgba(47,74,60,.13);
  border-radius: 14px;
  padding: 1.1rem 1.25rem;
  height: 100%;
}
.dm-szolg-kozelben .sppb-addon-text-block strong,
.dm-szolg-kozelben .sppb-addon-text-block b {
  display: block;
  color: var(--dm-green);
  font-size: .95rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  margin: 1rem 0 .4rem;
}
.dm-szolg-kozelben .sppb-addon-text-block p { margin-bottom: .3rem; color: var(--dm-ink); }

/* --- Terkep -------------------------------------------------------------- */
/* A csempeszolgaltato korabban API-kulcsot kert (CartoDB.Positron) -> az egesz
   terkep "API KEY REQUIRED" vizjeles volt. Kulcs nelkuli OSM-re valtottuk a
   page-builderben; itt csak a keretezest adjuk hozza. */
.dm-szolg-terkep .sppb-addon-openstreetmap,
.dm-szolg-terkep .leaflet-container { border-radius: 14px; overflow: hidden; }

/* --- GYIK ---------------------------------------------------------------- */
.dm-szolg-gyik .sppb-panel,
.dm-szolg-gyik .sppb-panel-modern {
  background: #fff !important;
  border: 1px solid rgba(47,74,60,.13) !important;
  border-radius: 12px !important;
  margin-bottom: .6rem;
  box-shadow: none !important;
}
.dm-szolg-gyik .sppb-panel-heading { background: transparent !important; }
.dm-szolg-gyik .sppb-panel-title { color: var(--dm-ink) !important; font-weight: 600; }
.dm-szolg-gyik .sppb-panel-body { color: var(--dm-muted) !important; }

/* =========================================================================
   KAPCSOLAT OLDAL (page id=43)
   ========================================================================= */

.dm-kapcsolat-urlap { background: var(--dm-paper) !important; padding-block: clamp(2rem, 4vw, 3.5rem) !important; }
.dm-kapcsolat-kartyak { background: var(--dm-sand-soft) !important; padding-block: clamp(2rem, 4vw, 3.5rem) !important; }

/* --- Urlap --------------------------------------------------------------- */
/* A mezok halvany kek hatteret (#f5faff) kaptak az addon beallitasabol. */
.dm-kapcsolat-urlap .sppb-form-control,
.dm-kapcsolat-urlap input.sppb-form-control,
.dm-kapcsolat-urlap textarea.sppb-form-control,
.dm-kapcsolat-urlap select.sppb-form-control {
  background: #fff !important;
  border: 1px solid rgba(47,74,60,.22) !important;
  border-radius: 10px !important;
  color: var(--dm-ink) !important;
  padding: 14px 16px !important;
}
.dm-kapcsolat-urlap .sppb-form-control::placeholder { color: #8a948e !important; }
.dm-kapcsolat-urlap .sppb-form-control:focus {
  border-color: var(--dm-green) !important;
  box-shadow: 0 0 0 3px rgba(47,74,60,.12) !important;
  outline: none !important;
}

/* A kuldes gomb <button>, nem <a> — a href-alapu hierarchia nem ér el hozza,
   ezert itt kap kulon elsodleges stilust. */
.dm-kapcsolat-urlap .sppb-addon-form-builder-form button,
.dm-kapcsolat-urlap button[type="submit"] {
  background: var(--dm-terra) !important;
  background-image: none !important;
  color: #fff !important;
  border: 2px solid var(--dm-terra) !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  padding: 14px 40px !important;
  box-shadow: none !important;
  transition: background-color .18s ease, border-color .18s ease;
}
.dm-kapcsolat-urlap .sppb-addon-form-builder-form button:hover,
.dm-kapcsolat-urlap button[type="submit"]:hover {
  background: var(--dm-terra-dark) !important;
  border-color: var(--dm-terra-dark) !important;
}

/* Az adatvedelmi sor linkjei a palettaba */
.dm-kapcsolat-urlap .sppb-form-check a { color: var(--dm-green) !important; text-decoration: underline; }
.dm-kapcsolat-urlap .sppb-form-check a:hover { color: var(--dm-terra) !important; }
/* Nagyobb kattintasi felulet a jelolonegyzetnek (eddig ~13px volt) */
.dm-kapcsolat-urlap .sppb-form-check input[type="checkbox"] {
  width: 20px !important; height: 20px !important; margin-top: 2px;
  accent-color: var(--dm-terra);
}

/* --- Kapcsolat-kartyak (Hivj minket / Cimunk / Irj E-mailt) --------------- */
/* Kek ikonok + halmozott arnyek volt; lapos kartya, palettas ikon. */
.dm-kapcsolat-kartyak .sppb-addon-feature,
.dm-kapcsolat-kartyak .sppb-addon-feature-box {
  background: #fff !important;
  border: 1px solid rgba(47,74,60,.13) !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  padding: 1.75rem 1.25rem !important;
  height: 100%;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.dm-kapcsolat-kartyak .sppb-addon-feature:hover {
  border-color: rgba(47,74,60,.24) !important;
  box-shadow: 0 8px 24px rgba(27,27,24,.08) !important;
}
.dm-kapcsolat-kartyak .sppb-icon i,
.dm-kapcsolat-kartyak .sppb-icon-inner i,
.dm-kapcsolat-kartyak .sppb-media-content i,
.dm-kapcsolat-kartyak i[class*="fa"] { color: var(--dm-terra) !important; }
.dm-kapcsolat-kartyak .sppb-addon-title { color: var(--dm-ink) !important; }
.dm-kapcsolat-kartyak a { color: var(--dm-green) !important; font-weight: 600; }
.dm-kapcsolat-kartyak a:hover { color: var(--dm-terra) !important; }

/* --- Terkep -------------------------------------------------------------- */
.dm-kapcsolat-terkep .leaflet-container { border-radius: 0; }

/* A kapcsolat-kartyakon is halmozodott a doboz: a kulso .sppb-addon-feature
   MELLETT a belso wrapper is kapott hatteret/keretet/arnyekot. Egy lap maradjon. */
.dm-kapcsolat-kartyak .sppb-addon-feature *,
.dm-kapcsolat-kartyak .sppb-addon-feature-box * { box-shadow: none !important; }
.dm-kapcsolat-kartyak .sppb-addon-feature .sppb-media,
.dm-kapcsolat-kartyak .sppb-addon-feature .sppb-media-body,
.dm-kapcsolat-kartyak .sppb-addon-feature .sppb-media-content,
.dm-kapcsolat-kartyak .sppb-addon-feature .sppb-icon,
.dm-kapcsolat-kartyak .sppb-addon-feature .sppb-icon-inner,
.dm-kapcsolat-kartyak .sppb-addon-feature .clearfix,
.dm-kapcsolat-kartyak .sppb-addon-wrapper > .clearfix,
.dm-kapcsolat-kartyak .sppb-column,
.dm-kapcsolat-kartyak .sppb-column-addons {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Az ikon kapjon halvany homok korlapot a paletta szerint */
.dm-kapcsolat-kartyak .sppb-icon-inner {
  display: inline-flex; align-items: center; justify-content: center;
  width: 64px; height: 64px;
  background: var(--dm-sand-soft) !important;
  border-radius: 50% !important;
  margin-bottom: .9rem;
}

/* A sablon egy nagy, kekes lagy arnyekot tesz a kartya-burkolo .clearfix elemekre
   (rgba(108,129,160,.14) 0 30px 60px). A 30px-es fuggoleges eltolas miatt ez a
   homok hatteren kulon "szellem-teglalapkent" latszik a kartyak mogott/alatt.
   A szekcioban mindent levesszuk, es az arnyekot csak a kartya kapja, hoverre. */
.dm-kapcsolat-kartyak *:not(.sppb-addon-feature):not(.sppb-addon-feature-box) {
  box-shadow: none !important;
}

/* Egyforma magas kartyak: a racs-elem a .sppb-row-column, a lancot vegig kell vinni */
.dm-kapcsolat-kartyak .sppb-row { align-items: stretch !important; }
.dm-kapcsolat-kartyak .sppb-row > div,
.dm-kapcsolat-kartyak .sppb-column,
.dm-kapcsolat-kartyak .sppb-column-addons,
.dm-kapcsolat-kartyak .sppb-addon-wrapper,
.dm-kapcsolat-kartyak .sppb-addon-wrapper > .clearfix {
  height: 100% !important;
  display: flex;
  flex-direction: column;
}
.dm-kapcsolat-kartyak .sppb-addon-feature {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* A lanc ket ponton szakadt: az addon-burkolon 30px also margo ult (312 -> 282),
   es a kartya nem toltotte ki a maradekot. Igy lesz mind a harom egyforma magas. */
.dm-kapcsolat-kartyak .sppb-addon-wrapper { margin-bottom: 0 !important; }
.dm-kapcsolat-kartyak .sppb-addon-wrapper > .clearfix { flex: 1 1 auto !important; }
/* MEGJEGYZES: a harom kartya magassaga 16px-szel elter (233/217/233), mert a
   kozepso szovege egy sorral rovidebb. A nyujtast a sablon burkolo-lanca nem
   vezeti at (a .sppb-addon-wrapper height:100%-a nem oldodik fel); tobb
   probalkozas utan sem sikerult, ezert nem hagyunk itt hatastalan szabalyt. */

/* --- Elonyok: a harom feature box (fooldal) ------------------------------- */
/* Eredeti allapot: sotetkek ikonok (#00238A), 33px-es cim 16px-es szoveg mellett
   (forditott hierarchia), halvany kekes doboz-hatter (rgba(243,248,255,.1)) szurke
   arnyekkal, es a szoveg mogott egy #fafafa hatteru <span> — ez adta a vilagosabb
   foltot. Egy lapos feher kartyara egyszerusitjuk. */

.dm-elonyok .sppb-column {
  background: #fff !important;
  border: 1px solid rgba(47,74,60,.13) !important;
  border-radius: 16px !important;
  box-shadow: none !important;
  padding: 1.75rem 1.5rem !important;
  height: 100%;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.dm-elonyok .sppb-column:hover {
  border-color: rgba(47,74,60,.24) !important;
  box-shadow: 0 8px 24px rgba(27,27,24,.08) !important;
}
/* A kartyan belul semmi ne fessen sajat hatteret/arnyekot */
.dm-elonyok .sppb-column *,
.dm-elonyok .sppb-column span { background: transparent !important; box-shadow: none !important; }

/* Egyforma magas kartyak */
.dm-elonyok .sppb-row { align-items: stretch !important; }

/* Ikonok a palettaba, homok korlappal — mint a kapcsolat-kartyakon */
.dm-elonyok i[class*="fa"],
.dm-elonyok .sppb-icon i,
.dm-elonyok .sppb-icon-inner i { color: var(--dm-terra) !important; }
.dm-elonyok .sppb-icon-inner,
.dm-elonyok .sppb-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 64px; height: 64px;
  background: var(--dm-sand-soft) !important;
  border-radius: 50% !important;
  margin-bottom: .9rem;
}

/* Tipografia: a cim vezessen, de ne nyomja agyon a szoveget */
/* A korabbi `#sp-page-builder h3.sppb-addon-title` szabaly ID-alapu, tehat
   erosebb — ezert itt is szerepelnie kell az ID-nak, kulonben a 33px-es meret
   marad (a clamp felso hatara 2.1rem volt). */
#sp-page-builder .dm-elonyok .sppb-addon-title,
.dm-elonyok .sppb-addon-title {
  font-size: clamp(1.15rem, 1.6vw, 1.4rem) !important;
  line-height: 1.3 !important;
  margin: 0 0 .5rem !important;
}
/* Ket kartyan a szoveg <span>-ben ul, sajat szerkesztoi stilussal (14px,
   rgb(59,66,73)), a harmadikon sima <p> — ettol nezett ki masnak a harom.
   Mindharomra ugyanaz vonatkozzon. */
.dm-elonyok p,
.dm-elonyok .sppb-addon-content span,
.dm-elonyok .sppb-addon-feature span {
  font-size: 1rem !important;
  line-height: 1.6 !important;
  color: var(--dm-muted) !important;
  margin-bottom: 0 !important;
}
