:root{--green:#123c32;--deep:#09271e;--gold:#cda64c;--paper:#f6f7f1;--text:#193127;--muted:#5d6f63;--line:#e1e7de}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:"Segoe UI",Arial,sans-serif;color:var(--text);line-height:1.6}
a{color:inherit}img{max-width:100%}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:10px;z-index:99}.skip:focus{left:10px}
.top{background:#06201a;padding:7px max(4%,calc((100% - 1260px)/2));color:#cbd9cf;font-size:12px;letter-spacing:.5px}
.hdr{position:sticky;top:0;background:var(--deep);z-index:30;box-shadow:0 4px 20px #0000002a}
.head{max-width:1260px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 22px}
.brand img{display:block;width:150px;height:auto}
.nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.nav a{padding:11px 12px;color:#e8efe9;font-weight:650;border-radius:9px;text-decoration:none}
.nav a:hover,.nav a[aria-current=page]{background:#ffffff1a}
.nav a.buy{background:var(--gold);color:#1d3126;margin-left:6px}
.menubtn{display:none;background:transparent;color:#fff;border:1px solid #ffffff66;border-radius:9px;padding:9px 14px;font:inherit;cursor:pointer}
.hero{background:linear-gradient(90deg,#08251eee 0%,#0a3024d9 48%,#0b33234f 100%),var(--bg) center/cover;color:#fff}
.heroinner{max-width:1260px;margin:auto;padding:95px 25px 105px}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800}
h1{font-size:clamp(36px,5vw,62px);line-height:1.08;max-width:720px;letter-spacing:-1.5px;margin:18px 0}
h1.pagetitle{font-size:clamp(30px,4vw,46px);color:var(--green);margin:8px 0 18px}
h2{font-size:clamp(25px,3vw,38px);letter-spacing:-.8px;margin:8px 0 14px;line-height:1.2}h3{font-size:20px;margin:8px 0}
.lead p{max-width:600px;color:#dce7e0;font-size:18px}
.btn{background:var(--green);color:#fff;border:0;border-radius:10px;display:inline-block;padding:14px 21px;font-weight:700;margin:8px 8px 8px 0;text-decoration:none}
.btn.gold{background:var(--gold);color:#1d3126}.btn.border{background:transparent;border:1px solid #ffffffaa}
.btn:focus-visible,.nav a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.container{max-width:1260px;padding:60px 24px;margin:auto}.light{background:#fff}
.intro,.muted{color:var(--muted);max-width:760px}
.label{color:#8a6d22;font-size:12px;font-weight:850;letter-spacing:1.4px;text-transform:uppercase}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;margin-top:26px}
.card{border-radius:17px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 10px 25px #14291c0a}
.pic{height:225px;background:linear-gradient(140deg,#ecf1e9,#fff);display:flex;justify-content:center;align-items:center;padding:18px}
.pic img{max-width:100%;max-height:100%;object-fit:contain}.content{padding:20px}
.content .meta{color:var(--muted);font-size:14px;margin:0}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.filters button{border:1px solid var(--line);background:#fff;border-radius:20px;padding:8px 14px;font:inherit;cursor:pointer;color:var(--green)}
.filters button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.split>img{width:100%;max-height:440px;object-fit:cover;border-radius:20px}
.featuregrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}
.feature{padding:24px;border-radius:15px;background:#eff4ed}.feature strong{display:block;margin-bottom:6px}
.banner{background:var(--green);color:#fff;padding:50px 25px}
.banner .wrap{max-width:1260px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}
.footer{background:var(--deep);color:#d9e5dc;padding:42px 25px}
.footerinner{max-width:1260px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}
.footer a{display:block;color:#e7e9e1;margin:8px 0;text-decoration:none}.footer a:hover{text-decoration:underline}
.contactline span{display:block}
.draft{padding:16px 18px;background:#fff3cd;color:#5f4610;border:2px solid #e0b84f;border-radius:10px;margin:10px 0 24px;font-weight:600}
.draft p{margin:0}
.project{border:1px solid #d8e2d8;padding:25px;border-radius:14px;background:#fff;margin-top:20px}
.project img{display:block;width:100%;max-width:420px;height:auto;cursor:zoom-in;border-radius:6px;margin:0 auto 18px}
@media (min-width:900px){.project{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:32px;align-items:start}.project img{grid-row:1 / span 2;margin:0}.project .rich{grid-column:2}}
.contacts{display:grid;gap:10px;margin:20px 0}.contacts div{display:grid;grid-template-columns:200px 1fr;gap:12px}.contacts dt{font-weight:700}.contacts dd{margin:0;white-space:pre-line}
[hidden]{display:none!important}
@media(max-width:900px){.cards,.featuregrid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.footerinner{grid-template-columns:1fr 1fr}
 .menubtn{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--deep);flex-direction:column;align-items:stretch;padding:10px 16px 16px}
 .nav.open{display:flex}.nav a.buy{margin:6px 0 0}.head{position:relative}}
@media(max-width:560px){.cards,.featuregrid,.footerinner{grid-template-columns:1fr}.container{padding:38px 16px}.heroinner{padding:58px 18px}
 .banner .wrap{display:block}.pic{height:190px}.contacts div{grid-template-columns:1fr;gap:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Kötelező kedvezményezetti infoblokk (Széchenyi Terv Plusz): megnyitáskor görgetés nélkül látható, legalább 100 px magas, változatlan
   kép. Gépen lebeg: a menü alatt jobbra, görgetéskor is szem előtt; kattintásra a projekt oldala. Telefonon a menü alatt, külön sorban. */
.infoblokk{display:flex;justify-content:flex-end;background:#fff;line-height:0}
.infoblokk a{display:block}
.infoblokk img{display:block;height:100px;width:auto;max-width:100vw}
@media (min-width:900px){.infoblokk{position:fixed;right:0;top:var(--ib-top,76px);z-index:25;background:none}
.infoblokk a{box-shadow:0 6px 18px #0003;transition:transform .15s}.infoblokk a:hover{transform:translateY(-1px)}}
