/* Lomtalanítás Profi – Theme CSS */
html { scroll-behavior: smooth; scroll-padding-top: 72px; }

/* ── Reszponzív flexbox ──────────────────────────────────── */
.elementor-row { display: flex; flex-wrap: wrap; }
.elementor-column { align-self: stretch !important; }
.elementor-column > .elementor-column-wrap { height: 100% !important; }
.elementor-column > .elementor-column-wrap > .elementor-widget-wrap {
    height: 100% !important; display: flex !important; flex-direction: column !important;
}

@media (max-width: 767px) {
    .elementor-section > .elementor-container > .elementor-row { flex-direction: column !important; }
    .elementor-column { width: 100% !important; max-width: 100% !important; }
    .elementor-heading-title { font-size: clamp(22px, 6vw, 38px) !important; line-height: 1.25 !important; }
    #lt-scroll-top { bottom: 16px; right: 16px; width: 38px; height: 38px; }
    .lt-mobile-call { display: flex !important; }
    /* Árlista mobilon ne scale-elje a middle kártyát */
    [style*="transform:scale"] { transform: none !important; }
}

@media (min-width: 768px) and (max-width: 1024px) {
    .elementor-col-33 { width: 50% !important; }
    .elementor-col-25 { width: 50% !important; }
}

/* ── WPForms ─────────────────────────────────────────────── */
.wpforms-container { width:100% !important; }
.wpforms-field { margin-bottom:12px !important; }
.wpforms-field-label { font-family:'Inter',sans-serif !important; font-size:13px !important; font-weight:500 !important; color:#0f172a !important; margin-bottom:5px !important; }
.wpforms-field input[type="text"],.wpforms-field input[type="email"],.wpforms-field input[type="tel"],.wpforms-field textarea,.wpforms-field select {
    width:100% !important; border:1.5px solid #e2e8f0 !important; border-radius:10px !important; padding:11px 14px !important;
    font-size:14px !important; font-family:'Inter',sans-serif !important; background:#fafaf9 !important;
    color:#0f172a !important; outline:none !important; box-sizing:border-box !important;
}
.wpforms-field input:focus,.wpforms-field textarea:focus { border-color:#10b981 !important; box-shadow:0 0 0 3px rgba(16,185,129,0.12) !important; }
.wpforms-field textarea { min-height:100px !important; resize:vertical !important; }
.wpforms-submit { background:#10b981 !important; color:#fff !important; border:none !important; border-radius:8px !important; padding:12px 32px !important; font-size:15px !important; font-weight:600 !important; font-family:'Inter',sans-serif !important; cursor:pointer !important; width:100% !important; }
.wpforms-submit:hover { background:#047857 !important; }

/* ── Scroll to top ───────────────────────────────────────── */
#lt-scroll-top { position:fixed; bottom:28px; right:28px; width:42px; height:42px; background:#10b981; color:#fff; border:none; border-radius:50%; cursor:pointer; display:flex; align-items:center; justify-content:center; opacity:0; transform:translateY(20px); transition:opacity .3s,transform .3s; z-index:9999; box-shadow:0 4px 12px rgba(16,185,129,.4); }
#lt-scroll-top.visible { opacity:1; transform:translateY(0); }

/* ── Mobilon sticky call gomb ────────────────────────────── */
@media (min-width: 768px) { .lt-mobile-call { display:none !important; } }

/* ── LT Nav ─── */
.lt-nav-wrap{display:flex;align-items:center;justify-content:center;width:100%;position:relative}
.lt-nav{display:flex;justify-content:center}
.lt-menu{list-style:none;margin:0;padding:0;display:flex;gap:2px;align-items:center}
.lt-menu li a{font-family:'Inter',sans-serif;font-size:14px;font-weight:500;color:#475569;text-decoration:none;padding:6px 12px;border-radius:6px;transition:color .2s;white-space:nowrap;display:block}
.lt-menu li a:hover{color:#047857}
.lt-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;width:36px;height:36px;position:absolute;right:0;top:50%;transform:translateY(-50%)}
.lt-hamburger span{display:block;width:22px;height:2px;background:#0f172a;border-radius:2px;transition:transform .25s,opacity .25s}
.lt-hamburger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.lt-hamburger.is-open span:nth-child(2){opacity:0}
.lt-hamburger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:900px){
  .lt-hamburger{display:flex}
  .lt-nav{display:none;position:fixed;top:72px;left:0;right:0;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.12);padding:8px 0 16px;z-index:9999}
  .lt-nav.is-open{display:block}
  .lt-menu{flex-direction:column;gap:0}
  .lt-menu li a{padding:11px 24px;border-radius:0;font-size:15px}
}

/* Elementor header wrapper: 0 magasság */
.elementor-location-header,.elementor-location-header>.elementor-section-wrap,.elementor-location-header .elementor-section{height:0!important;min-height:0!important;padding:0!important;margin:0!important;overflow:visible!important;display:block!important}
.elementor-location-header .elementor-column,.elementor-location-header .elementor-widget-wrap,.elementor-location-header .elementor-widget,.elementor-location-header .elementor-widget-container{height:auto!important;padding:0!important;margin:0!important}
html,body{margin-top:0!important}
/* Admin bar */
.admin-bar .lh-h,.admin-bar .kh-h{top:32px!important}
@media screen and (max-width:782px){.admin-bar .lh-h,.admin-bar .kh-h{top:46px!important}}
/* Kutfuras hero mobil padding */
@media(max-width:900px){#fooldal{padding-top:66px!important}}

/* Hamburger jobbra tolás */
@media(max-width:900px){.lh-bur{margin-left:auto!important}}

/* Árazás kártyák: egyenlő magasság, gomb alulra */
#arak .elementor-column { display: flex !important; flex-direction: column; }
#arak .elementor-widget-wrap { display: flex !important; flex-direction: column; flex: 1; }
#arak .elementor-widget-price-table { flex: 1; display: flex; flex-direction: column; }
#arak .elementor-widget-price-table .elementor-widget-container { flex: 1; display: flex; flex-direction: column; }
#arak .elementor-price-table { flex: 1; display: flex; flex-direction: column; }
#arak .elementor-price-table__features-list { flex: 1; }
#arak .elementor-price-table__footer { margin-top: auto !important; }

/* Árazás fejléc: #10b981 zöld háttér, fehér szöveg */
#arak .elementor-price-table__header {
    background-color: #10b981 !important;
}
#arak .elementor-price-table__heading,
#arak .elementor-price-table__subheading,
#arak .elementor-price-table__header * {
    color: #ffffff !important;
}

/* Popular ribbon elrejtése */
#arak .elementor-price-table__ribbon,
#arak .elementor-ribbon { display: none !important; }

/* Footer max-width az oldalszélességhez */
.elementor-location-footer .elementor-section > .elementor-container {
    max-width: 1400px !important;
    margin: 0 auto !important;
}

/* Árazás fejléc: egyenlő magasság */
#arak .elementor-price-table__header {
    min-height: 110px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
}

/* Ft az összeg UTÁN: currency szimbólum elrejtése elölről */
#arak .elementor-price-table__currency {
    order: 3 !important;
    font-size: 16px !important;
    align-self: flex-end !important;
    margin-bottom: 8px !important;
    margin-left: 4px !important;
    margin-right: 0 !important;
}
#arak .elementor-price-table__integer-part {
    order: 1 !important;
}
#arak .elementor-price-table__price {
    flex-wrap: wrap !important;
}

/* ── Footer: reszponzív 4 oszlop ────────────────────────────── */
.elementor-location-footer .elementor-widget-wrap { height: auto !important; }

/* Footer: helyes selektor – Elementor JSON id-ből osztályt generál, nem HTML id-t */
.elementor-element-lt_footer_inner > .elementor-container > .elementor-row {
    display: grid !important;
    grid-template-columns: 35fr 22fr 18fr 25fr !important;
    gap: 24px !important;
    flex-wrap: unset !important;
}
.elementor-element-lt_footer_inner .elementor-column {
    width: auto !important;
    max-width: none !important;
}
@media(max-width:900px){
    .elementor-element-lt_footer_inner > .elementor-container > .elementor-row {
        grid-template-columns: 1fr 1fr !important;
    }
}
@media(max-width:480px){
    .elementor-element-lt_footer_inner > .elementor-container > .elementor-row {
        grid-template-columns: 1fr !important;
    }
}
