/* The legal pages (/terms, /privacy): the landing page's colours and type, set for long reading. */
@font-face{font-family:Jakarta;src:url('/fonts/jakarta-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Jakarta;src:url('/fonts/jakarta-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Jakarta;src:url('/fonts/jakarta-800.ttf') format('truetype');font-weight:800;font-display:swap}
:root{--paper:#faf8f5;--ink:#352942;--muted:#84748e;--purple:#9877b5;--link:#7c608e;--lilac:#ede5f5;--line:#e5dce9;color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 Jakarta,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
.page{max-width:800px;margin-inline:auto;padding:0 32px 48px}
a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
a:hover{color:var(--ink)}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:24px;letter-spacing:-1.2px;font-weight:800;white-space:nowrap;color:var(--ink);text-decoration:none}
.brand span{color:var(--purple);margin-left:-8px}
.legal-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-block:28px 12px}
.languages{display:flex;gap:8px}
.languages a{padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13px;font-weight:600;text-decoration:none}
.languages a:hover{border-color:var(--purple)}
.texts{display:flex;flex-direction:column}
.texts section{padding-top:20px}
.texts section+section,.hu-first .texts #en{border-top:1px solid var(--line);margin-top:56px;padding-top:36px}
.hu-first .texts #hu{order:-1;border-top:0;margin-top:0;padding-top:20px}
.hu-first .languages a[lang=hu]{order:-1}
h1{font-size:clamp(32px,7vw,46px);line-height:1.12;letter-spacing:-1.8px;font-weight:800;margin:12px 0 6px}
h1+p{margin-top:0;color:var(--muted);font-size:14px}
h3{font-size:19px;line-height:1.35;letter-spacing:-.3px;font-weight:800;margin:36px 0 8px}
p{margin:0 0 14px}
ul{margin:0 0 14px;padding-left:22px}
li{margin:6px 0}
li::marker{color:var(--purple)}
strong{font-weight:600}
.table{margin:16px 0 20px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.55}
th,td{padding:11px 14px;text-align:left;vertical-align:top}
thead th{background:var(--lilac);font-weight:600}
tbody tr+tr td{border-top:1px solid var(--line)}
.legal-footer{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;margin-top:64px;padding-top:28px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.legal-footer .brand{font-size:19px}
.legal-footer .brand img{width:26px;height:26px}
.legal-footer>span{margin-left:auto}
/* On a phone each row of a table becomes a small card: the column name above every value. */
@media(max-width:640px){
 .page{padding:0 20px 40px}
 .legal-header{padding-block:20px 4px}
 .brand{font-size:21px}
 .brand img{width:30px;height:30px}
 h3{font-size:18px;margin-top:30px}
 .table{border-radius:12px}
 table,thead,tbody,tr,th,td{display:block}
 thead{display:none}
 tbody tr{padding:12px 14px}
 tbody tr+tr td{border-top:0}
 tbody tr+tr{border-top:1px solid var(--line)}
 td{padding:0}
 td+td{margin-top:8px}
 td::before{content:attr(data-label);display:block;font-size:12px;font-weight:600;letter-spacing:.2px;color:var(--muted)}
 .legal-footer>span{margin-left:0}
}
