	:root{
      --bg:#0b0b0b;
      --text:#f7f7f7;
      --muted:#bdbdbd;
      --accent:#ffd200;
      --accent-ink:#111;
      --card:#121212;
      --maxw:1100px;
      --radius:18px;
      --shadow:0 6px 24px rgba(0,0,0,.25);
      --navh:60px;
    }
    html{scroll-behavior:smooth}
    *{box-sizing:border-box}
    body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,sans-serif;background:var(--bg);color:var(--text)}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block;border-radius:12px}

    /* --- NAV DESKTOP DEFAULT --- */
    header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.85);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.06)}
    .nav{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:12px;padding:10px 16px;min-height:var(--navh)}
    .brand{font-weight:700;white-space:nowrap}
    .spacer{flex:1}
    .menu{display:flex;gap:10px;align-items:center} /* desktop látható */
    .menu a{padding:10px 12px;border-radius:12px;transition:background .2s,color .2s}
    .menu a.active{background:var(--accent);color:var(--accent-ink);font-weight:600}
    .menu a:hover{background:rgba(255,210,0,.12)}
    .cta{background:var(--accent);color:var(--accent-ink);padding:10px 14px;border-radius:12px;font-weight:600}
    .menu-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:#0b0b0b;color:#fff}
    .menu-toggle svg{width:22px;height:22px}

    /* --- NAV MOBILE DROPDOWN --- */
    @media(max-width:900px){
      .nav{flex-wrap:wrap}
      .menu-toggle{display:inline-flex}
      .menu{width:100%;order:3;flex-direction:column;align-items:stretch;gap:8px;overflow:hidden;max-height:0;transition:max-height .35s ease, padding .25s ease, opacity .25s ease;padding:0;opacity:.0}
      header.open .menu{max-height:320px;padding:8px 0;opacity:1}
      .menu a,.menu .cta{display:block;width:100%;text-align:left;padding:12px 14px;border-radius:12px}
    }

    /* --- Sections & layout --- */
    section{scroll-margin-top:var(--navh);padding:50px 16px;position:relative}
    section:nth-of-type(even){background:#111}
    section::after{content:"";position:absolute;left:50%;bottom:0;width:60%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:translateX(-50%)}
    .wrap{max-width:var(--maxw);margin:0 auto}

    .hero{padding:80px 16px 80px;background:linear-gradient(180deg, #0b0b0b 0%, #0f0f0f 60%, #0b0b0b 100%)}
    .hero .wrap{display:grid;gap:40px;grid-template-columns:1fr 1fr;align-items:center}
    h1{font-size:clamp(28px,4.5vw,48px);margin:0}
    .lead{color:var(--muted)}
    .hero-illus{aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;border:2px dashed rgba(255,255,255,.18);display:grid;place-items:center}

    .kpis{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
    .kpi{display:flex;flex-direction:column;align-items:center;padding:20px;border-radius:16px;background:#0f0f0f;border:1px solid rgba(255,255,255,.06)}
    .kpi svg{width:40px;height:40px;margin-bottom:8px;color:var(--accent)}
    .kpi .num{font-size:clamp(32px,5vw,48px);font-weight:800;color:var(--accent)}
    h2{font-size:clamp(24px,3vw,36px);margin-bottom:20px;text-align:center;color:var(--accent)}

    .about{display:grid;grid-template-columns:1fr;gap:24px;justify-items:center;text-align:center}
	.about p {text-align: left;line-height: 1.5em;}
    .portrait{width:200px;height:200px;border-radius:50%;overflow:hidden;border:3px solid var(--accent)}
    .tags{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
    .tag{background:var(--accent);color:var(--accent-ink);padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700}

    .service-grid{display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:30px}
    .service{padding:24px;text-align:center;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:#0f0f0f;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:14px}
    .service img{width:100%;height:160px;object-fit:cover}
    .service p{color:var(--muted);font-size:15px;margin:0}
	.service div {min-height: 5em;text-align:left;line-height: 1.5em;}

    .references{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:40px;text-align:center}
    .ref-card{background:#0f0f0f;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:10px}
    .ref-card img{width:120px;height:120px;object-fit:contain;margin-bottom:10px;background:#fff;border-radius:10px;padding:8px}
    .ref-card .num{font-size:clamp(28px,4vw,40px);font-weight:800;color:var(--accent)}
    .label{color:var(--muted);font-size:.8em;text-align:center;}
	
	address {font-style: normal;}

    form{display:grid;gap:16px;margin-top:30px}
    input,textarea{width:100%;padding:14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#0f0f0f;color:var(--text)}
    textarea{min-height:140px}
    .button{background:var(--accent);color:var(--accent-ink);padding:14px 18px;border:0;border-radius:12px;font-weight:700;cursor:pointer}

    footer{padding:40px 16px;text-align:center;border-top:1px solid rgba(255,255,255,.1);color:var(--muted)}

    /* --- Fade-in reveal --- */
    .reveal{transition:opacity .6s ease, transform .6s ease}
    .js .reveal{opacity:0;transform:translateY(16px)}
    .js .reveal.show{opacity:1;transform:none}

    @media(max-width:900px){
	.hero, section {padding: 20px 16px 40px}
	  .hero-illus {display:none}
      .hero .wrap{grid-template-columns:1fr}
      .kpis{grid-template-columns:1fr}
      .about{text-align:left}
      .service-grid{grid-template-columns:1fr}
      .references{grid-template-columns:1fr}
    }
	.brand img {width: 39px;float: left;margin-right: 7px;}
	.brand span {display: block;margin-top: 6px;font-size:1.1em;}