:root{
  --ink:#0E140E; --ink2:#141C13; --panel:#1A241A; --panel2:#202D1F;
  --green:#72B23E; --green-hi:#8FCC5A; --brown:#8A6240; --sand:#C9A57E;
  --paper:#F2F1E8; --mut:#A9B4A2; --line:rgba(242,241,232,.12);
  --r:0; --shadow:0 18px 40px -18px rgba(0,0,0,.65);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Arial,Verdana,Helvetica,sans-serif;background:var(--ink);color:var(--paper);line-height:1.65;font-size:17px}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:Arial,Verdana,Helvetica,sans-serif;line-height:1.18;letter-spacing:-.01em}
h1{font-size:clamp(1.7rem,4.2vw,3rem);font-weight:800}
h2{font-size:clamp(1.4rem,3vw,2.1rem);font-weight:700;margin-bottom:.7em}
h3{font-size:1.13rem;font-weight:700}
p{margin-bottom:1em}
a{color:var(--green-hi);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
:focus-visible{outline:3px solid var(--green);outline-offset:2px}
ul,ol{margin:0 0 1em 1.2em}

/* fejléc */
.site-head{position:sticky;top:0;z-index:60;background:rgba(14,20,14,.93);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.head-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:12px;padding-bottom:10px}
.logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:1.15rem;color:var(--paper)}
.logo:hover{text-decoration:none}
.logo-svg{display:block;flex:0 0 auto}
.logo-text b{color:var(--green-hi)}
.head-cta{display:flex;align-items:center;gap:12px}
.head-tel{font-weight:600;color:var(--paper);white-space:nowrap}
.btn{display:inline-block;padding:.62em 1.25em;border-radius:0;font-weight:600;font-size:.95rem;transition:transform .18s ease,box-shadow .18s ease;border:1px solid transparent}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-accent{background:linear-gradient(135deg,var(--green-hi),var(--green));color:#101710;box-shadow:0 8px 22px -10px rgba(114,178,62,.7)}
.btn-ghost{border-color:var(--sand);color:var(--sand)}
.btn-big{padding:.8em 1.6em;font-size:1.05rem}
.main-nav ul{display:flex;flex-wrap:wrap;gap:2px;list-style:none;margin:0 auto;padding-bottom:8px;justify-content:center;width:fit-content}
.main-nav a{display:block;padding:.55em .85em;border-radius:0;color:var(--paper);font-weight:600;font-size:.94rem;border-bottom:2px solid transparent}
.main-nav a:hover{background:var(--panel);text-decoration:none;color:var(--green-hi);border-bottom-color:var(--green)}
.has-sub{position:relative}
.main-nav ul.sub{display:none;position:absolute;left:0;top:100%;min-width:260px;background:var(--panel2);border:1px solid var(--line);border-radius:0;padding:8px;box-shadow:var(--shadow);z-index:70;flex-direction:column;flex-wrap:nowrap;gap:0}
.main-nav ul.sub li{list-style:none;width:100%}
.main-nav ul.sub a{white-space:nowrap;display:block}
.main-nav .has-sub:hover ul.sub,.main-nav .has-sub:focus-within ul.sub{display:flex}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:0;padding:8px;cursor:pointer}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--paper);margin:5px 0;transition:.2s}

/* hero */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.34}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(14,20,14,.96) 30%,rgba(14,20,14,.55) 70%,rgba(20,28,19,.35))}
.hero-in{position:relative;padding:72px 0 84px;max-width:820px;margin:0 auto;text-align:center}
.eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--green-hi);border:1px solid rgba(114,178,62,.4);border-radius:0;padding:.35em 1em;margin-bottom:1.1em;background:rgba(114,178,62,.08)}
.hero p.lead{font-size:1.14rem;color:#D9DECF;margin:1em 0 1.6em}
.hero-cut{position:absolute;left:0;right:0;bottom:-1px;height:52px;background:var(--ink);clip-path:polygon(0 62%,100% 8%,100% 100%,0 100%)}
.usp-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.4em;justify-content:center}
.usp{font-size:.9rem;background:var(--panel);border:1px solid var(--line);border-radius:0;padding:.42em 1em;color:var(--mut)}

/* szekciók, kártyák */
section{padding:56px 0}
section>.wrap>h2,.prose>h2:first-child{text-align:center}
.grid{display:grid;gap:22px}
.g3{grid-template-columns:repeat(3,1fr)}
.g2{grid-template-columns:repeat(2,1fr)}
.card{background:linear-gradient(160deg,var(--panel),var(--ink2));border:1px solid var(--line);border-radius:0;padding:26px;position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.card::before{content:"";position:absolute;top:0;left:0;width:44px;height:4px;background:linear-gradient(90deg,var(--green),var(--brown));border-radius:0;transition:width .3s ease}
.card:hover{transform:translateY(-6px);border-color:rgba(114,178,62,.45);box-shadow:var(--shadow)}
.card:hover::before{width:100%}
.card h3{margin-bottom:.5em}
.card p{color:var(--mut);font-size:.97rem;margin-bottom:.8em}
.card .more{font-weight:600;font-size:.9rem}
.sec-intro{max-width:780px;margin:0 auto 2em;color:var(--mut);text-align:center}
.alt-bg{background:var(--ink2)}

/* fotók */
.ph{border-radius:0;overflow:hidden;border:1px solid var(--line);background:var(--panel)}
.ph img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .45s ease}
.ph:hover img{transform:scale(1.045)}
.ph figcaption{font-size:.83rem;color:var(--mut);padding:10px 14px;border-top:1px solid var(--line)}
.photo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:1.6em 0}
.photo-row.two{grid-template-columns:repeat(2,1fr)}

/* árkártyák */
.price-card{display:flex;flex-direction:column}
.price-card .tagline{color:var(--sand);font-weight:700;font-size:1.02rem;margin-bottom:.7em}
.price-card ul{list-style:none;margin:0 0 1em}
.price-card li{padding:.38em 0 .38em 1.5em;position:relative;color:#D9DECF;font-size:.95rem;border-bottom:1px dashed var(--line)}
.price-card li::before{content:"✔";position:absolute;left:0;color:var(--green-hi);font-size:.85rem}
.price-card .note{font-size:.87rem;color:var(--mut);margin-top:auto}
.price-card .btn{margin-top:1em;text-align:center}

/* FAQ */
.faq-sec .faq-item{background:var(--panel);border:1px solid var(--line);border-radius:0;margin-bottom:10px;overflow:hidden}
.faq-item summary{cursor:pointer;padding:16px 20px;font-weight:600;font-size:1rem;list-style:none;position:relative;padding-right:44px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--green-hi);transition:transform .25s ease}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq-item p{padding:0 20px 16px;color:var(--mut)}

/* CTA sáv */
.cta-band{background:linear-gradient(120deg,#1E2A14,#141C13 55%,#241C12);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
.cta-band h2{max-width:760px;margin:0 auto .9em}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* breadcrumb */
.crumbs{font-size:.85rem;color:var(--mut);padding:14px 0 10px;text-align:center}
.crumbs a{color:var(--mut)}
.crumbs a:hover{color:var(--green-hi)}

/* tartalomoldal */
.page-head{text-align:center;padding:30px 0 26px;border-bottom:1px solid var(--line);background:linear-gradient(160deg,var(--ink2),var(--ink))}
.page-head p.lead{color:var(--mut);max-width:820px;font-size:1.08rem;margin:.8em auto 0}
.prose{max-width:820px;margin:0 auto}
.prose h2{margin-top:1.6em}
.prose h3{margin-top:1.2em;margin-bottom:.4em;color:var(--sand)}
.prose li{margin-bottom:.35em}
.prose table{width:100%;max-width:920px;border-collapse:collapse;margin:1.4em auto;font-size:.97rem;background:var(--panel);border:1px solid var(--line)}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:.85em 1.1em;text-align:left;vertical-align:top}
.prose th{background:var(--panel2);color:var(--sand);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.prose tr:nth-child(even) td{background:rgba(242,241,232,.03)}
.prose td strong{color:var(--green-hi);font-size:1.05em;white-space:nowrap}
.prose tr:last-child td{border-bottom:none}
.badge-minta{display:inline-block;background:var(--brown);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.08em;border-radius:0;padding:.25em .7em;vertical-align:middle;margin-left:.5em}
.kw-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:1em 0}
.kw-cloud span{background:var(--panel);border:1px solid var(--line);border-radius:0;padding:.32em .9em;font-size:.85rem;color:var(--mut)}

/* űrlap */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid .full{grid-column:1/-1}
label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.35em}
input,select,textarea{width:100%;background:var(--ink2);border:1px solid var(--line);border-radius:0;color:var(--paper);padding:.75em .9em;font:inherit}
input:focus,select:focus,textarea:focus{border-color:var(--green);outline:none}
.form-note{font-size:.85rem;color:var(--mut)}

/* galéria */
.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gal-grid .ph img{aspect-ratio:1/1}

/* lightbox */
.lightbox{position:fixed;inset:0;background:rgba(8,12,8,.94);display:none;align-items:center;justify-content:center;z-index:100;padding:30px}
.lightbox.open{display:flex}
.lightbox img{max-width:min(1100px,92vw);max-height:82vh;border-radius:0;box-shadow:var(--shadow)}
.lb-cap{position:absolute;bottom:26px;left:0;right:0;text-align:center;color:var(--mut);font-size:.92rem;padding:0 40px}
.lb-close,.lb-prev,.lb-next{position:absolute;background:var(--panel);border:1px solid var(--line);color:var(--paper);border-radius:0;width:46px;height:46px;font-size:1.2rem;cursor:pointer;display:grid;place-items:center}
.lb-close{top:20px;right:20px}
.lb-prev{left:18px;top:50%;transform:translateY(-50%)}
.lb-next{right:18px;top:50%;transform:translateY(-50%)}

/* lábléc */
.site-foot{background:#0A0F0A;border-top:1px solid var(--line);padding-top:52px;margin-top:40px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:34px;padding-bottom:36px}
.foot-title{font-size:.92rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--sand);margin-bottom:.9em}
.site-foot ul{list-style:none;margin:0}
.site-foot li{margin-bottom:.5em;font-size:.94rem}
.site-foot a{color:var(--mut)}
.site-foot a:hover{color:var(--green-hi)}
.foot-logo{font-weight:800;font-size:1.2rem;margin-bottom:.6em}
.foot-logo b{color:var(--green-hi)}
.foot-badge{font-size:.85rem;color:var(--sand)}
.foot-bottom{border-top:1px solid var(--line);padding:16px 0;font-size:.85rem;color:var(--mut);text-align:center}

/* animáció */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* reszponzív */
@media(max-width:960px){
  .g3,.photo-row{grid-template-columns:repeat(2,1fr)}
  .gal-grid{grid-template-columns:repeat(3,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .head-tel{display:none}
  .nav-toggle{display:block}
  .main-nav{display:none;border-top:1px solid var(--line)}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;padding:10px 0;width:100%}
  .main-nav ul.sub{display:flex;position:static;box-shadow:none;border:none;background:transparent;padding-left:18px;min-width:0}
  .g2,.g3,.photo-row,.photo-row.two,.form-grid{grid-template-columns:1fr}
  .gal-grid{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr}
  .hero-in{padding:52px 0 66px}
}
