/* aloldalak.css — közös stíluslap az aloldalakhoz (jogi oldalak, kérdőív).
   A főoldalak a styles.css-t használják;
   ez a fájl ugyanazt a világot viszi tovább: papír-alap, petrol tinta, teal,
   hairline vonalak, Hanken Grotesk self-host, pill nyelvváltó. */

@font-face {
  font-family:"Hanken Grotesk";
  src:url("fonts/hanken-grotesk-latin.woff2") format("woff2");
  font-weight:100 900; font-style:normal; font-display:swap;
  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+2212;
}
@font-face {
  font-family:"Hanken Grotesk";
  src:url("fonts/hanken-grotesk-latin-ext.woff2") format("woff2");
  font-weight:100 900; font-style:normal; font-display:swap;
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  --paper:#fafcfc; --ink:#0e3a49; --soft:#3f6472; --ink-soft:#3f6472;
  --teal:#176a80; --aqua:#16a0a9; --line:#c9dcda; --mist:#e4f0ef;
  --deep:#0b2e3a; --nav-h:62px;
  --font:"Hanken Grotesk", sans-serif;
}

* { margin:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  background:var(--paper); color:var(--ink);
  font-family:var(--font); font-size:16px; line-height:1.6;
  letter-spacing:.002em; overflow-x:clip;
}
::selection { background:var(--teal); color:#fff; }

.wrap { width:min(1280px,100%); margin:0 auto; padding-inline:clamp(24px,4vw,64px); }
.narrow { max-width:760px; }

/* nav — a főoldal pill-nyelvváltós fejléce */
nav.top { position:sticky; top:0; z-index:10; --nav-progress:0;
  border-bottom:1px solid rgba(201,220,218,var(--nav-progress));
  background:rgba(250,252,252,calc(var(--nav-progress) * .92));
  -webkit-backdrop-filter:blur(calc(var(--nav-progress) * 10px));
  backdrop-filter:blur(calc(var(--nav-progress) * 10px)); }
nav.top .wrap { display:flex; justify-content:space-between; align-items:center;
                padding-top:16px; padding-bottom:15px; }
.logo { font-weight:800; font-size:19px; letter-spacing:.01em;
        text-decoration:none; color:var(--ink); }
nav.top .navright { display:flex; align-items:center; gap:clamp(18px,2.5vw,34px); }
nav.top .links { display:flex; gap:clamp(18px,2.5vw,34px); font-weight:600; font-size:14px; }
nav.top a { color:var(--ink); text-decoration:none; text-underline-offset:5px; }
nav.top .links a:hover { text-decoration:underline; text-decoration-thickness:1px; }
.lang-switch { display:inline-flex; align-items:center; justify-content:center;
  min-width:44px; min-height:32px; padding:5px 13px;
  border:1px solid var(--line); border-radius:999px;
  font-size:13px; font-weight:800; letter-spacing:.08em;
  color:var(--teal); text-decoration:none; background:transparent;
  transition:background .15s, border-color .15s, color .15s; }
.lang-switch:hover { background:var(--mist); border-color:var(--teal); }
.lang-switch:focus-visible { outline:2px solid var(--aqua); outline-offset:2px; }

/* tipográfia */
h1 { font-weight:800; font-size:clamp(32px,4.2vw,52px); line-height:1.04;
     letter-spacing:-0.035em; text-wrap:balance; }
h2 { font-weight:800; font-size:clamp(21px,2.6vw,27px); letter-spacing:-0.02em;
     line-height:1.15; text-wrap:balance; }
h3 { font-weight:800; font-size:19px; letter-spacing:-0.015em; }
p { max-width:68ch; }
a { color:var(--teal); }
strong, b { font-weight:800; }

/* gombok */
.btn { display:inline-block; text-decoration:none; font-family:inherit;
  font-weight:700; font-size:15px; padding:14px 22px; border-radius:3px;
  background:var(--teal); color:#fff; border:0; cursor:pointer;
  transition:background .2s, transform .2s, box-shadow .2s; }
.btn:hover { background:#135a6d; transform:translateY(-2px);
             box-shadow:0 9px 24px rgba(11,46,58,.12); }
.btn:focus-visible { outline:3px solid rgba(22,160,169,.5); outline-offset:2px; }

/* hajtás-vonal szekcióhatár, a főoldal motívuma */
.fold { height:0; border-top:1px solid var(--line); margin:64px 0 0; position:relative; }
.fold::after { content:attr(data-step); position:absolute; top:-12px;
  left:0; background:var(--paper); padding:1px 10px 1px 0;
  font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--teal); font-weight:800; }

/* jogi / szöveges aloldal */
.legal { padding:clamp(48px,7vh,80px) 0 72px; }
.legal .meta { color:var(--soft); font-size:14.5px; margin-top:12px; }
.legal h2 { margin:44px 0 10px; }
.legal p { margin-bottom:12px; }
.legal ul { margin:0 0 12px 20px; }
.legal li { margin-bottom:4px; }
.back { display:inline-block; margin-top:52px; font-weight:700;
  color:var(--teal); text-decoration:underline; text-underline-offset:3px; }

/* lábléc — sötét blokk, mint a főoldalon */
footer.site { margin-top:88px; background:linear-gradient(#0d3644,var(--deep));
  color:#f2f8f7; }
footer.site .wrap { display:flex; flex-wrap:wrap; justify-content:center;
  align-items:center; text-align:center; gap:10px 28px;
  padding-top:26px; padding-bottom:30px; font-size:13px; color:#a8c6c4; }
footer.site a { color:#a8c6c4; }
footer.site a:hover { color:#f2f8f7; }
.footer-brand { display:inline-flex; align-items:center; gap:11px; color:#f2f8f7; }
.footer-brand img { width:34px; height:30px; object-fit:contain;
  filter:brightness(0) invert(1); opacity:.82; }

@media (max-width:960px) {
  nav.top { position:relative; --nav-progress:0!important; }
  nav.top .links { display:none; }
  nav.top .navright { gap:0; }
}
