/* TREEMIGHTY – statikus újraépítés (HU) */
@font-face{font-family:"Gordita";font-weight:300;src:url(../fonts/gordita-light-webfont.woff2) format("woff2"),url(../fonts/gordita-light-webfont.woff) format("woff")}
@font-face{font-family:"Gordita";font-weight:400;src:url(../fonts/gordita-regular-webfont.woff2) format("woff2"),url(../fonts/gordita-regular-webfont.woff) format("woff")}
@font-face{font-family:"Gordita";font-weight:500;src:url(../fonts/gordita-medium-webfont.woff2) format("woff2"),url(../fonts/gordita-medium-webfont.woff) format("woff")}
@font-face{font-family:"Gordita";font-weight:700;src:url(../fonts/gordita-bold-webfont.woff2) format("woff2"),url(../fonts/gordita-bold-webfont.woff) format("woff")}
@font-face{font-family:"Prata";font-weight:400;font-display:swap;src:url(../fonts/prata-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Open Sans";font-weight:300;font-display:swap;src:url(../fonts/open-sans-latin-ext-300-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Open Sans";font-weight:300;font-display:swap;src:url(../fonts/open-sans-latin-300-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Open Sans";font-weight:400;font-display:swap;src:url(../fonts/open-sans-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Open Sans";font-weight:400;font-display:swap;src:url(../fonts/open-sans-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Open Sans";font-weight:600;font-display:swap;src:url(../fonts/open-sans-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Open Sans";font-weight:600;font-display:swap;src:url(../fonts/open-sans-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Open Sans";font-weight:700;font-display:swap;src:url(../fonts/open-sans-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Open Sans";font-weight:700;font-display:swap;src:url(../fonts/open-sans-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--mint:#89ffc7;--crimson:#ca054d;--ink:rgb(34,30,32);--beige:rgb(239,230,215);--grey:#595959;--lgrey:#999}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6em}
body{margin:0;font-family:"Open Sans",sans-serif;font-size:16px;line-height:1.7;color:var(--ink);background:#fff;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:"Prata",serif;font-weight:400;line-height:1.2;margin:0}

/* header */
.site-header{position:fixed;top:0;left:0;right:0;height:6em;background:var(--mint);z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 4%}
.site-header .logo img{width:200px}
.nav{display:flex;gap:2.2em;list-style:none;margin:0;padding:0}
.nav a{font-family:"Gordita",sans-serif;font-weight:500;font-size:.95em;text-decoration:none;color:var(--ink);padding:.4em 0;border-bottom:2px solid transparent;transition:border-color .25s}
.nav a:hover{border-color:rgba(34,30,32,.45)}
.nav-toggle{display:none;background:none;border:0;font-size:2em;cursor:pointer;color:var(--ink)}

/* hero */
.hero{position:relative;margin-top:6em;height:600px;background:#000;overflow:hidden}
.hero-bg{position:absolute;inset:-32% 0 -4% 0;background:url(../img/final.jpg) center/cover no-repeat;animation:kb 26s ease-in-out infinite alternate;will-change:transform}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.09)}}
.hero::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5);z-index:1;animation:fade .3s both}
.hero-in{position:relative;z-index:2;max-width:1240px;height:100%;margin:0 auto}
.hero h1{position:absolute;left:150px;top:240px;margin:0;font-size:74px;line-height:80px;letter-spacing:2px;color:#fff;opacity:0;animation:rise 1s .4s both ease-out}
.hero h1 span{color:var(--mint)}
.hero .btn-hero{position:absolute;left:150px;top:420px;font-weight:700;font-size:24px;letter-spacing:2px;line-height:58px;height:58px;padding:0 40px;border-radius:25px;background:#fff;color:#000;text-decoration:none;opacity:0;animation:rise 1s .9s both ease-out;transition:background .25s,color .25s}
.hero .btn-hero:hover{background:var(--mint)}
.hero .hero-logo{position:absolute;left:150px;top:123px;width:300px;opacity:0;animation:rise 1s .1s both ease-out}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}

/* sections */
section{position:relative}
.wrap{max-width:1100px;margin:0 auto}
.h-custom{font-size:4em;color:var(--grey)}
.h-sup{display:block;margin-bottom:1em;font-family:"Open Sans",sans-serif;font-size:.375em;font-weight:400;letter-spacing:.15em;line-height:1;text-transform:uppercase;color:inherit}
.h-custom hr{width:50%;max-width:180px;height:2px;border:0;margin:.4em 0 0;background:var(--mint)}
.h-custom.center{text-align:center}.h-custom.center hr{margin-left:auto;margin-right:auto}
.accent-2 hr,hr.a2{background:#f5a623}.accent-4 hr{background:#b3d430}
.colorgreen{color:var(--crimson)}
.parallax{background-attachment:fixed;background-size:cover;background-position:center}

/* vízió */
#vizio{padding:100px 8% 100px;background:linear-gradient(rgba(255,255,255,.78),rgba(255,255,255,.78)),url(../img/aron-marci-portre-8740-retus.jpg) center/cover fixed}
#vizio .wrap{max-width:900px}
#vizio p{color:var(--lgrey);font-size:1rem;max-width:42em}

/* tudatos */
#tudatos{padding:10% 5%;background:linear-gradient(rgba(0,0,0,.5),rgba(0,0,0,.5)),url(../img/DJI_0084.jpg) center/cover fixed;color:#fff}
#tudatos .h-custom{color:#fff}
#tudatos .cols{display:grid;grid-template-columns:1fr 1fr;gap:3em;margin-top:2em}
#tudatos p{margin:0 0 1em}

/* program */
#program{padding:10%;background:#fff}
#program .h-custom{color:#272727;font-size:3.2em}
#program .lead{font-size:130%;color:#272727;max-width:44em;margin:1.5em 0 3em;line-height:1.6}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5em;text-align:center}
.steps img{height:180px;width:auto;margin:0 auto 1.2em;object-fit:contain}
.steps h3{font-size:1.5em;color:#000}

/* csapat */
#csapat{padding:10% 0;background:var(--beige)}
#csapat .head{padding:0 10%}
#csapat .h-custom{font-size:3.4em}
.team{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:2.5em;padding:3em 10% 0;align-items:start}
.person img{width:100%;aspect-ratio:2/3;object-fit:cover}
.person h3{font-size:1.4em;margin-top:.8em;color:#000}
.team .about{font-size:1.2rem;color:var(--ink)}
.team .about p{margin:0 0 1em}

/* szakmai hatter */
#hatter{padding:10% 10% 56px;background:#fff;border-bottom:4px solid hsl(167,100%,32%)}
#hatter .h-custom{font-size:3.4em}
#hatter .grid{display:grid;grid-template-columns:1.1fr 1fr;gap:4em;margin-top:2.5em;align-items:start}
#hatter .txt{font-size:1.2rem;color:var(--lgrey)}
#hatter .txt a{color:var(--crimson)}
.counters{display:grid;grid-template-columns:repeat(3,1fr);gap:1em;text-align:center;align-items:end;padding:2em 0 0}
.counter .num{font-size:3.25em;line-height:1;margin-top:.25em;color:var(--ink)}
.counter .lbl{text-transform:uppercase;letter-spacing:.125em;font-size:1em;line-height:1.5}
.counter img{height:120px;width:auto;margin:0 auto 1em;object-fit:contain}
.cars{display:flex;justify-content:center;padding:1em 0 0}.cars img{max-width:230px}

/* kapcsolat */
#kapcsolat{padding:100px 10%;background:var(--ink);color:#fff}
#kapcsolat .h-custom{color:#fff}
.cf{margin-top:2.5em;display:grid;grid-template-columns:1fr 1fr;gap:1.2em}
.cf label{display:block;font-size:.9em;margin-bottom:.4em}
.cf input,.cf textarea{width:100%;background:transparent;border:1px solid #fff;border-radius:6px;color:#fff;font:inherit;font-size:1.2em;padding:.6em .8em}
.cf input:focus,.cf textarea:focus{outline:0;border-color:var(--mint)}
.cf .full{grid-column:1/-1}
.cf textarea{min-height:10em}
.cf button{justify-self:end;background:transparent;border:1px solid #fff;color:#fff;border-radius:6px;font:inherit;font-size:1.4em;padding:.4em 2em;cursor:pointer;transition:background .25s,color .25s}
.cf button:hover{background:var(--mint);color:#000;border-color:var(--mint)}
.hp{position:absolute;left:-9999px}
.cf-msg{grid-column:1/-1;color:var(--mint)}

/* footer */
.site-footer{background:var(--crimson);min-height:10em;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1em;padding:2em 4%;color:#fff}
.site-footer img{width:220px}
.site-footer small{opacity:.8}

/* reveal */
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}
.rv.in{opacity:1;transform:none}

@media(max-width:991px){
 .hero{height:520px}.hero h1{left:8%;top:130px;font-size:66px;line-height:96px}.hero .btn-hero{left:8%;top:300px;font-size:26px}.hero .hero-logo{left:8%}
 #tudatos .cols,#hatter .grid,.team{grid-template-columns:1fr}.steps{grid-template-columns:1fr}
 .parallax,#vizio,#tudatos{background-attachment:scroll}
}
@media(max-width:767px){
 .nav{display:none;position:absolute;top:6em;left:0;right:0;background:var(--mint);flex-direction:column;gap:0;padding:1em 4%;border-top:1px solid rgba(255,255,255,.4)}
 .nav.open{display:flex}.nav li a{display:block;padding:.8em 0}.nav-toggle{display:block}
 .site-header .logo img{width:150px}
 .hero{height:480px}.hero h1{left:0;right:0;text-align:center;top:140px;font-size:42px;line-height:56px;letter-spacing:1px}.hero .btn-hero{left:0;right:0;margin:0 auto;width:max-content;top:320px;font-size:20px;white-space:nowrap}.hero .hero-logo{left:50%;margin-left:-107px;width:215px;top:50px}
 @keyframes rise{from{opacity:0;margin-top:30px}to{opacity:1;margin-top:0}}
 .h-custom{font-size:2.4em}#program .h-custom,#csapat .h-custom,#hatter .h-custom{font-size:2.2em}
 .counters{grid-template-columns:1fr}.cf{grid-template-columns:1fr}
 #program,#kapcsolat,#hatter{padding-left:6%;padding-right:6%}.team,#csapat .head{padding-left:6%;padding-right:6%}
}

/* ===== v3 kiegészítések ===== */
::selection{background:var(--mint);color:var(--ink)}
/* CTA – az eredeti RevSlider gomb: bordó, fehér szöveg, 266×60, 25px sarok */
.hero .btn-hero{height:60px;line-height:60px;padding:0 20px;border-radius:25px;background:var(--crimson);color:#fff;font-size:24px;letter-spacing:2px;box-shadow:0 10px 24px rgba(202,5,77,.35);transition:background .25s,box-shadow .25s,transform .25s}
.hero .btn-hero:hover{background:#a10440;box-shadow:0 14px 30px rgba(202,5,77,.5)}
.hero-cue{position:absolute;left:50%;bottom:22px;margin-left:-14px;z-index:3;width:28px;height:44px;border:2px solid rgba(255,255,255,.7);border-radius:16px}
.hero-cue::after{content:"";position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:#fff;animation:cue 1.8s infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(16px)}}
/* fejléc */
.site-header{transition:box-shadow .3s,height .3s}
.site-header.scrolled{box-shadow:0 4px 22px rgba(0,0,0,.14)}
.nav a{position:relative;border-bottom:0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--crimson);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav a:hover::after{transform:scaleX(1)}
.nav .lang a{display:flex;align-items:center;gap:.5em;padding:.35em .8em;border:1px solid rgba(34,30,32,.35);border-radius:20px;font-size:.8em;letter-spacing:.08em;transition:background .25s,border-color .25s}
.nav .lang a::after{display:none}
.nav .lang a:hover{background:#fff;border-color:#fff}
.nav .lang img{width:18px;height:12px;display:block}
/* idézet szekció */
#idezet{padding:90px 8%;background:linear-gradient(rgba(255,255,255,.78),rgba(255,255,255,.78)),url(../img/aron-marci-portre-8740-retus.jpg) center/cover fixed;text-align:center}
#idezet blockquote{margin:0 auto;max-width:960px;font:400 1.35rem/1.6 "Prata",serif;color:var(--ink)}
/* vízió doboz */
.styled{margin:2.5em 0 0;max-width:720px;padding:2.2em 2.5em;background:var(--crimson);color:#fff;font-size:1.1rem;line-height:1.7;box-shadow:0 18px 40px rgba(202,5,77,.25)}
.styled cite{display:block;font-style:normal;opacity:.6;letter-spacing:.15em;text-transform:uppercase;font-size:.75em;margin-bottom:.6em}
/* lépések leírás */
.steps>div{text-align:center}
.steps p{margin-top:.7em;font-size:.95rem;line-height:1.7;color:#999}
.steps img{transition:transform .5s}.steps>div:hover img{transform:translateY(-8px) scale(1.04)}
/* sexi mozgás */
.h-custom hr{transform:scaleX(0);transition:transform .9s .35s cubic-bezier(.2,.7,.2,1)}
.in .h-custom hr,.h-custom.in hr{transform:scaleX(1)}
.h-custom.left hr{transform-origin:left}
.person{overflow:visible}
.person img{transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s}
.person:hover img{transform:translateY(-8px);box-shadow:0 22px 44px rgba(0,0,0,.2)}
.team .person:nth-child(2){transition-delay:.15s}
.rv{transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.cf input,.cf textarea{transition:border-color .25s,box-shadow .25s}
.cf input:focus,.cf textarea:focus{box-shadow:0 0 0 3px rgba(137,255,199,.25)}
.cf button{transition:background .25s,color .25s,transform .25s}.cf button:hover{transform:translateY(-2px)}
.cf button[disabled]{opacity:.5;cursor:wait}
.cf-msg{grid-column:1/-1;margin:0;color:var(--mint)}.cf-msg.err{color:#ff8fa8}
.ts{grid-column:1/-1;min-height:65px}
.site-footer a.xl{text-decoration:none}
@media(max-width:767px){.hero-cue{display:none}.nav .lang a{display:inline-flex;margin:.4em 0}#idezet{padding:60px 6%}#idezet blockquote{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.hero-bg,.hero-cue::after{animation:none}.rv{transition:none;opacity:1;transform:none}}
/* EN: hosszabb főcím a hero-ban */
.en .hero h1{font-size:50px;line-height:60px;letter-spacing:1px;max-width:860px}
@media(max-width:991px){.en .hero h1{font-size:44px;line-height:54px;max-width:84%}}
@media(max-width:767px){.en .hero h1{font-size:30px;line-height:38px;top:130px;max-width:none}.en .hero .btn-hero{top:330px}}
@media(min-width:768px){.en .hero .btn-hero{top:440px}}
@media(max-width:767px){.hero .btn-hero,.en .hero .btn-hero{left:0;right:0;margin:0 auto;width:max-content}}
