/* Eko Kristal – az Elementor widgetek megjelenése.
   Az itt megadott értékek alapértelmezések: amit az Elementor Stílus fülén átállítasz, az felülírja őket. */

body.ek-theme .elementor-widget-heading .elementor-heading-title,
body.ek-theme .elementor-widget-text-editor,
body.ek-theme .elementor-widget-button .elementor-button{font-family:"DM Sans EK",Arial,sans-serif}
.elementor .elementor-widget-text-editor p{margin:0}
.elementor .elementor-widget-text-editor p+p{margin-top:18px}
.elementor .elementor-widget-html{width:100%}

/* --- Szövegstílusok (widget → Speciális → CSS osztályok) --- */
.elementor .ek-eyebrow .elementor-heading-title{display:block;color:var(--green);font-size:.73rem;font-weight:850;letter-spacing:.18em;line-height:1.5;text-transform:uppercase}
.elementor .elementor-element.ek-eyebrow{margin-bottom:14px}
.elementor .ek-eyebrow--light .elementor-heading-title{color:#9de3cb}
.elementor .ek-h1 .elementor-heading-title{color:var(--navy);font-size:clamp(3.6rem,6.7vw,6.6rem);font-weight:900;line-height:1.06;letter-spacing:-.055em}
.elementor .ek-h1 .elementor-heading-title em{color:#15916e;font-style:normal}
.elementor .ek-h1 .elementor-heading-title span{color:var(--green)}
.elementor .ek-h1--page .elementor-heading-title{font-size:clamp(3.6rem,6.3vw,6.2rem)}
.elementor .ek-h1--map .elementor-heading-title{font-size:clamp(3.4rem,5.9vw,6.1rem);font-weight:700}
.elementor .ek-h1--product .elementor-heading-title{font-size:clamp(3.7rem,6vw,6rem);font-weight:700}
.elementor .ek-h2 .elementor-heading-title{color:var(--navy);font-size:clamp(2.3rem,4.4vw,4.8rem);font-weight:850;line-height:1.06;letter-spacing:-.055em}
.elementor .ek-h2--banner .elementor-heading-title{color:#fff;font-size:clamp(2.6rem,4.3vw,4.8rem);font-weight:700}
.elementor .elementor-element.ek-h2--banner{max-width:650px}
.elementor .ek-h2--contact .elementor-heading-title{font-size:clamp(2.3rem,3.6vw,3.6rem);font-weight:700}
.elementor .ek-h2--steps .elementor-heading-title{color:#fff;font-size:clamp(2.1rem,3.4vw,3.5rem);font-weight:700}
.elementor .ek-h2--small .elementor-heading-title{font-size:clamp(2.3rem,4vw,4rem);font-weight:700}
.elementor .ek-subhead .elementor-heading-title{color:var(--navy);font-size:1.35rem;font-weight:750;line-height:1.5;letter-spacing:0}
.elementor .elementor-element.ek-subhead{margin:12px 0 19px}
.elementor .ek-text{color:var(--navy-soft);line-height:1.62}
.elementor .ek-text--lead{max-width:460px;margin:25px 0 27px;font-size:1.22rem}
.elementor .ek-text--page{max-width:500px;margin:23px 0 26px;font-size:1.16rem}
.elementor .ek-text--wide{max-width:650px}
.elementor .ek-text--map{max-width:510px;margin:20px 0;font-size:1.12rem}
.elementor .ek-text--banner{max-width:550px;margin:18px 0 26px;color:#e4fff4;font-size:1.05rem}
.elementor .ek-text--center{width:100%;max-width:570px;margin:12px auto 0}
.elementor .ek-text--intro{max-width:660px;font-size:1.08rem}
.elementor .ek-text--body{margin:18px 0}
.elementor .ek-text--contact{margin-top:6px}
.elementor .ek-note .elementor-heading-title{color:#738aa4;font-size:.72rem;font-weight:750;letter-spacing:.12em;line-height:1.5;text-transform:uppercase}
.elementor .elementor-element.ek-note{margin-top:34px}
.elementor .elementor-element.ek-mb{margin-bottom:38px}
.elementor .elementor-element.ek-mb-sm{margin-bottom:30px}

/* --- Gombok (ek-btn; változatok: ek-btn--outline, ek-btn--light, ek-btn--link) --- */
.elementor .ek-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 25px;border:1px solid transparent;border-radius:999px;background:linear-gradient(130deg,#009767,#006548 72%,#003c35);box-shadow:0 8px 18px rgba(0,95,72,.18);color:#fff;fill:#fff;font-size:.88rem;font-weight:800;line-height:1.5;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}
.elementor .ek-btn .elementor-button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,95,72,.23)}
.elementor .ek-btn--outline .elementor-button{border-color:var(--green);background:rgba(255,255,255,.85);box-shadow:none;color:var(--green-dark)}
.elementor .ek-btn--outline .elementor-button:hover{background:var(--ice);box-shadow:none}
.elementor .ek-btn--light .elementor-button{background:#fff;box-shadow:none;color:var(--green-dark)}
.elementor .ek-btn--link .elementor-button{min-height:0;padding:0 0 3px;border:0;border-bottom:2px solid var(--green);border-radius:0;background:none;box-shadow:none;color:var(--green-dark);font-size:1rem}
.elementor .ek-btn--link .elementor-button:hover{transform:none;box-shadow:none}

/* --- Hero és képes sávok: a háttérkép az Elementorban cserélhető (konténer → Stílus → Háttér), az átmenetes fátyol innen jön --- */
.elementor .ek-hero,.elementor .ek-banner{position:relative;overflow:hidden}
.elementor .ek-hero{background-color:#eff9fc}
.elementor .ek-banner{background-color:#003e38}
.elementor .e-con.ek-hero::before,.elementor .e-con.ek-banner::before{content:"";display:block;position:absolute;inset:0;top:0;left:0;z-index:0;width:auto;height:auto;opacity:1;pointer-events:none}
.elementor .ek-hero>.e-con-inner,.elementor .ek-banner>.e-con-inner{position:relative;z-index:1}
.elementor .e-con.ek-hero--home::before{background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.88) 25%,rgba(255,255,255,.06) 58%,transparent 80%)}
.elementor .e-con.ek-hero--about::before{background:linear-gradient(90deg,rgba(255,255,255,.99),rgba(255,255,255,.94) 33%,rgba(255,255,255,.27) 66%,transparent)}
.elementor .ek-hero--docs{background:radial-gradient(circle at 78% 30%,#a6e9e9,transparent 26%),radial-gradient(circle at 68% 84%,#bcf2de,transparent 23%),#eefaff}
.elementor .e-con.ek-hero--docs::before,.elementor .e-con.ek-hero--map::before{content:none}
.elementor .ek-hero--map{background-color:#eaf8fd}
.elementor .e-con.ek-banner::before{background:linear-gradient(90deg,rgba(0,54,49,.94),rgba(0,54,49,.69) 42%,transparent 82%)}
.elementor .ek-contact{background:linear-gradient(105deg,#e7fbfa,#f7fdff 55%,#b6eff4)}
.elementor .ek-split-img img{width:100%;height:460px;object-fit:cover;border-radius:var(--radius)}
.elementor .ek-round{border-radius:var(--radius)}

/* --- HTML blokkok képei (az Elementor általános img szabálya fölé) --- */
.elementor .product-card img{height:235px}
.elementor .audience-card img{height:260px}
.elementor .thumb-row img{height:115px}
.elementor .application-card img{height:190px}
.elementor .product-image img{height:auto}
.elementor .category svg{width:32px;height:32px}
.elementor .globe svg{width:82%;height:82%}

@media(max-width:1200px){
.elementor .ek-h1--home .elementor-heading-title{font-size:clamp(3.4rem,6.4vw,5.5rem)}
.elementor .product-card img{height:205px}
}
@media(max-width:1024px){
.elementor .e-con.ek-hero--home::before{background:linear-gradient(90deg,#fff 0%,#fffd 48%,#ffffff12 100%)}
.elementor .ek-hero--home{background-position:60% center!important}
.elementor .ek-h1--home .elementor-heading-title{font-size:clamp(3.8rem,8vw,5rem)}
.elementor .ek-hero--about{background-position:65% center!important}
.elementor .e-con.ek-hero--about::before{background:linear-gradient(90deg,#ffffffed,#ffffffe0 43%,#ffffff22)}
.elementor .ek-h1--about .elementor-heading-title{font-size:clamp(3.7rem,8vw,5.3rem)}
.elementor .ek-split-img img{height:380px}
.elementor .application-card img{height:150px}
}
@media(max-width:767px){
.elementor .ek-hero--home{background-position:65% bottom!important;background-size:auto 72%!important}
.elementor .e-con.ek-hero--home::before{background:linear-gradient(#fff 0%,#fff 29%,#ffffffee 36%,#ffffff00 65%)}
.elementor .ek-h1--home .elementor-heading-title{font-size:clamp(3.2rem,11vw,4.8rem)}
.elementor .ek-text--lead{max-width:390px;margin:18px 0;font-size:1rem}
.elementor .elementor-element.ek-note{margin-top:18px}
.elementor .ek-btn .elementor-button{min-height:45px;padding:10px 19px}
.elementor .ek-btn--link .elementor-button{min-height:0;padding:0 0 3px}
.elementor .ek-h2 .elementor-heading-title{font-size:clamp(2.35rem,8vw,3.9rem)}
.elementor .ek-banner{background-position:68% center!important}
.elementor .e-con.ek-banner::before{background:linear-gradient(90deg,#003b38ee,#003b38a8)}
.elementor .ek-h1--page .elementor-heading-title{font-size:clamp(3.5rem,10.7vw,5.2rem)}
.elementor .ek-hero--about{background-position:center bottom!important;background-size:auto 58%!important}
.elementor .e-con.ek-hero--about::before{background:linear-gradient(#fff 0%,#fff 43%,#fffffff8 55%,#ffffff00 83%)}
.elementor .ek-h1--map .elementor-heading-title{font-size:clamp(3.2rem,10vw,5rem)}
.elementor .ek-h1--product .elementor-heading-title{font-size:4.2rem}
.elementor .ek-split-img img{height:300px}
.elementor .product-card img{height:250px}
.elementor .audience-card img{height:230px}
.elementor .thumb-row img{height:75px}
.elementor .application-card img{height:190px}
}
@media(prefers-reduced-motion:reduce){.elementor .ek-btn .elementor-button{transition:none}}
/* --- Kiegészítések --- */
.elementor .ek-btn .elementor-button{white-space:nowrap}
.elementor .elementor-element.ek-btn{flex-shrink:0}
.elementor .steps{color:#fff}

/* --- Natív képes kártyák (a képek az Elementorban cserélhetők) --- */
.elementor .ek-h3 .elementor-heading-title{color:var(--navy);font-size:1.6rem;font-weight:700;line-height:1.06;letter-spacing:-.055em}
.elementor .ek-h3 .elementor-heading-title a,.elementor .ek-arrow .elementor-heading-title a{color:inherit;text-decoration:none}
.elementor .ek-h3--lg .elementor-heading-title{font-size:1.75rem}
.elementor .ek-text--small{font-size:.88rem}
.elementor .ek-text--card{max-width:340px;margin:10px 0 18px;font-size:.9rem}
.elementor .elementor-element.ek-mt{margin-top:30px}
.elementor .ek-pcard{overflow:hidden;min-height:360px;border:1px solid var(--line);border-radius:var(--radius)}
.elementor .ek-pcard-img img{display:block;width:100%;height:235px;object-fit:cover;object-position:center 43%;transition:transform .45s}
.elementor .ek-pcard-img{overflow:hidden}
.elementor .ek-pcard:hover .ek-pcard-img img{transform:scale(1.04)}
.elementor .elementor-element.ek-pcard-body{flex-grow:1;background:linear-gradient(#fff8,#fff)}
.elementor .ek-arrow{flex:none}
.elementor .ek-arrow .elementor-heading-title{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--green);font-size:1.35rem;font-weight:400;line-height:1;letter-spacing:0}
.elementor .ek-product-image{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#ebf7fb}
.elementor .ek-product-image img{display:block;width:100%;height:auto;aspect-ratio:1.12;object-fit:cover}
.elementor .elementor-element.ek-thumb{flex:1 1 0;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#eef8fa;cursor:pointer}
.elementor .ek-thumb img{display:block;width:100%;height:115px;object-fit:cover}
.elementor .ek-acard{overflow:hidden;border:1px solid var(--line);border-radius:13px}
.elementor .ek-acard-img img{display:block;width:100%;height:190px;object-fit:cover}
.elementor .ek-acard-title .elementor-heading-title{padding:16px 19px;color:var(--navy);font-size:1rem;font-weight:700;line-height:1.5;letter-spacing:0}
.elementor .ek-ocard{position:relative;overflow:hidden;border-radius:var(--radius)}
.elementor .e-con.ek-ocard::before{content:"";display:block;position:absolute;inset:0;top:0;left:0;z-index:0;width:auto;height:auto;opacity:1;pointer-events:none}
.elementor .ek-ocard>.elementor-element{position:relative;z-index:1}
.elementor .e-con.ek-ocard--audience::before{background:linear-gradient(90deg,rgba(255,255,255,.92),rgba(255,255,255,.25) 73%,transparent)}
.elementor .e-con.ek-ocard--partner::before{background:#eaf9fa9e}
.elementor .e-con.ek-ocard--partner2::before{background:#d8f5f0a8}
.elementor .ek-ocard--partner,.elementor .ek-ocard--partner2{border-radius:15px}
.elementor .ek-ocard--partner .ek-text--card,.elementor .ek-ocard--partner2 .ek-text--card{color:var(--navy);font-size:1rem;margin:9px 0 16px}
@media(max-width:1200px){.elementor .ek-pcard-img img{height:205px}}
@media(max-width:1024px){.elementor .ek-acard-img img{height:150px}.elementor .ek-pcard{min-height:325px}}
@media(max-width:767px){.elementor .ek-pcard-img img{height:250px}.elementor .ek-pcard{min-height:360px}.elementor .ek-thumb img{height:75px}.elementor .ek-acard-img img{height:190px}}

/* ===== 1.2: minden blokk alap Elementor widgetekből (nincs HTML widget) ===== */
.elementor .ek-icon{line-height:0}
.elementor .ek-icon .elementor-icon{color:var(--green);fill:var(--green);line-height:1}
.elementor .ek-icon .elementor-icon svg{width:1em;height:1em;fill:currentColor}
.elementor .ek-icon--ring .elementor-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--green);border-radius:50%}
/* ikonsor a kezdőlapon */
.elementor .ek-cats{background:#fff linear-gradient(175deg,#b3ecf3 0 25%,#fff 29% 100%) top/100% 21px no-repeat}
.elementor .ek-cat:not(:last-child){border-right:1px solid var(--line)}
.elementor .ek-cat-title .elementor-heading-title{color:var(--navy);font-size:.95rem;font-weight:700;line-height:1.5;letter-spacing:0}
.elementor .ek-cat-sub .elementor-heading-title{color:#6f8a9e;font-size:.68rem;font-weight:400;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}
/* zöld sáv alsó pontjai */
.elementor .elementor-element.ek-points{margin-top:32px}
.elementor .ek-point .elementor-heading-title{color:#c4ede0;font-size:.72rem;font-weight:800;line-height:1.5;letter-spacing:.11em;text-transform:uppercase}
.elementor .ek-point+.ek-point{padding-left:27px;border-left:1px solid #a7d3ca77}
/* termékoldal */
.elementor .ek-crumb{margin-bottom:34px;color:#55718d;font-size:.81rem}
.elementor .ek-crumb a{color:inherit;text-decoration:none}
.elementor .ek-crumb a:hover{color:var(--green)}
.elementor .ek-crumb strong{color:var(--navy)}
.elementor .elementor-element.ek-buy{margin-top:28px;border-top:1px solid var(--line)}
.elementor .ek-price .elementor-heading-title{color:var(--navy);font-size:1.2rem;font-weight:750;line-height:1.5;letter-spacing:0}
.elementor .ek-btn--block .elementor-button{width:100%}
.elementor .ek-btn--link-sm .elementor-button{border-bottom:0;font-size:.84rem;text-decoration:underline;text-underline-offset:4px}
/* fülek: gombok (ek-tab, link: #panel-azonosító) + panelek (ek-panel, CSS ID = azonosító) */
.elementor .ek-tabbar{border-bottom:1px solid var(--line);overflow-x:auto}
.elementor .elementor-element.ek-tab{flex:none}
.elementor .ek-tab .elementor-button{padding:17px 4px;border:0;border-bottom:3px solid transparent;border-radius:0;background:none;box-shadow:none;color:var(--navy-soft);fill:var(--navy-soft);font-size:1rem;font-weight:700;line-height:1.5;white-space:nowrap}
.elementor .ek-tab.is-active .elementor-button{border-bottom-color:var(--green);color:var(--green)}
.elementor .ek-text--panel{max-width:800px}
html.ek-tabs-ready .elementor .ek-panel:not(.is-active){display:none!important}
/* disztribúció */
.elementor .ek-globe{position:relative}
.elementor .ek-globe-img img{width:min(100%,560px);height:auto}
.elementor .elementor-element.ek-globe-caption{position:absolute;right:0;bottom:30px;z-index:2;width:auto}
.elementor .ek-globe-caption .elementor-heading-title{padding:11px 15px;border:1px solid #d0e7ec;border-radius:9px;background:#fff;box-shadow:var(--shadow);color:#42637d;font-size:.74rem;font-weight:400;line-height:1.5;letter-spacing:0}
.elementor .ek-formcard{border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow)}
.elementor .ek-card-label .elementor-heading-title{color:var(--navy);font-size:1rem;font-weight:800;line-height:1.5;letter-spacing:0}
/* rólunk */
.elementor .ek-benefits{border-bottom:1px solid var(--line)}
.elementor .ek-benefit:not(:last-child){border-right:1px solid var(--line)}
.elementor .ek-benefit-title .elementor-heading-title{color:var(--navy);font-size:1rem;font-weight:750;line-height:1.5;letter-spacing:0}
.elementor .ek-step:not(:last-child){border-right:1px solid #8ac3ae99}
.elementor .ek-step-num{flex:none}
.elementor .ek-step-num .elementor-heading-title{color:#8bd3bf;font-size:3.3rem;font-weight:300;line-height:1;letter-spacing:0}
.elementor .ek-step-title .elementor-heading-title{margin:7px 0 4px;color:#fff;font-size:1rem;font-weight:700;line-height:1.5;letter-spacing:0}
.elementor .ek-step-text{color:#c5efe2;font-size:.83rem}
/* dokumentáció */
.elementor .elementor-element.ek-group{margin:34px 0 16px}
.elementor .ek-doc{border:1px solid var(--line);border-radius:16px;background:#faffff}
.elementor .ek-doc-icon .elementor-icon{display:grid;place-items:center;width:45px;height:45px;border:1px solid #b2e2d5;border-radius:10px;background:#e8faf4}
.elementor .ek-h3--doc .elementor-heading-title{font-size:1.42rem}
.elementor .elementor-element.ek-h3--doc{margin:20px 0 7px}
.elementor .elementor-element.ek-doc-link{margin-top:16px}
.elementor .ek-doc .ek-btn--link .elementor-button{font-size:.9rem}
.elementor .ek-doc .elementor-button:not([href]),.elementor .ek-doc .elementor-button[href=""],.elementor .ek-doc .elementor-button[href="#"]{opacity:.45;border-bottom-color:transparent;pointer-events:none}
.elementor .elementor-element.ek-help{margin-top:30px;border-radius:15px}
.elementor .ek-help-title .elementor-heading-title{color:var(--navy);font-size:1.2rem;font-weight:700;line-height:1.5;letter-spacing:0}
.elementor .ek-text--help{margin:8px 0 16px}
@media(max-width:1024px){
.elementor .ek-cat:nth-child(2n){border-right:0}
}
@media(max-width:767px){
.elementor .ek-cat-title .elementor-heading-title{font-size:.85rem}
.elementor .ek-cat-sub .elementor-heading-title{font-size:.56rem}
.elementor .ek-point+.ek-point{padding-left:10px}
.elementor .ek-tab .elementor-button{font-size:.8rem}
.elementor .ek-benefit:not(:last-child){border-right:0}
.elementor .ek-step:not(:last-child){border-right:0;border-bottom:1px solid #8ac3ae99;padding-bottom:16px}
.elementor .elementor-element.ek-globe-caption{bottom:0}
.elementor .ek-globe-img img{width:min(83vw,400px)}
}
