/* Testicon – Rechtsseiten im neuen Design (Impressum, AGB) */
:root{
  --navy:#0F2C5C; --accent:#5E93C9; --ink:#1E2530; --muted:#5B6672;
  --subtle:#8A94A2; --border:#E4E9F0; --soft:#F5F8FC;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:#FFFFFF; color:var(--ink);
  font-family:'Archivo',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing:antialiased; line-height:1.6;
}
a{color:var(--navy);}
a:hover{color:var(--accent);}

.container{max-width:1180px; margin:0 auto; padding:0 40px;}

/* Header */
.header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,0.94); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border);
}
.header__inner{display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding:20px 0;}
.header__logo{display:flex; align-items:center; text-decoration:none;}
.header__logo img{height:46px; width:auto; display:block;}
.header__nav{display:flex; align-items:center; gap:28px; flex-wrap:wrap;}
.header__nav a:not(.btn){color:var(--ink); text-decoration:none; font-size:14.5px; font-weight:500;}
.header__nav a:not(.btn):hover{color:var(--accent);}

/* Buttons */
.btn{display:inline-flex; align-items:center; justify-content:center; font-weight:600; font-size:14.5px; border-radius:5px; padding:12px 22px; text-decoration:none; line-height:1; border:1px solid transparent; cursor:pointer;}
.btn--primary,.btn--outline{background:var(--navy); color:#FFFFFF;}
.btn--primary:hover,.btn--outline:hover{background:#0B2247; color:#FFFFFF;}

/* Legal article */
.legal{padding:clamp(48px,6vw,88px) 0 clamp(64px,8vw,110px); max-width:820px; margin:0 auto;}
.legal h1{font-size:clamp(30px,4vw,44px); font-weight:800; letter-spacing:-0.02em; color:var(--navy); margin:0 0 10px; line-height:1.08;}
.legal h2{font-size:clamp(19px,2vw,23px); font-weight:700; color:var(--navy); margin:44px 0 14px; padding-top:26px; border-top:1px solid var(--border); letter-spacing:-0.01em;}
.legal h3{font-size:16.5px; font-weight:700; color:var(--navy); margin:26px 0 10px;}
.legal p,.legal ul,.legal address{font-size:16px; line-height:1.75; color:var(--muted); margin:0 0 14px; font-style:normal;}
.legal ul{padding-left:22px;}
.legal li{margin-bottom:8px;}
.legal strong{color:var(--ink); font-weight:700;}
.legal a{color:var(--navy); font-weight:600; text-decoration:underline; text-underline-offset:2px;}
.legal a:hover{color:var(--accent);}
.legal .note{background:var(--soft); border-left:3px solid var(--accent); padding:14px 20px; border-radius:4px; color:var(--muted); font-size:14.5px; margin:0 0 28px;}

/* Footer */
.footer{border-top:1px solid var(--border); background:var(--navy); color:#C7D6EA; padding:clamp(56px,7vw,80px) 0 32px; margin-top:0;}
.footer a{color:#C7D6EA; text-decoration:none;}
.footer a:hover{color:#FFFFFF;}
.footer__grid{display:grid; grid-template-columns:2fr 1fr 1.4fr; gap:48px; margin-bottom:48px;}
.footer__logo{display:inline-flex; margin-bottom:18px;}
.footer__logo img{height:32px; width:auto; display:block;}
.footer__col address,.footer__col p{font-style:normal; font-size:14.5px; line-height:1.75; color:#B9CBE3; margin:0;}
.footer__col h4{font-size:12.5px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--accent); margin:0 0 16px;}
.footer__col ul{list-style:none; margin:0; padding:0;}
.footer__col li{margin-bottom:9px;}
.footer__socials{display:flex; align-items:center; gap:12px; margin-top:20px;}
.footer__social{display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid rgba(199,214,234,0.25); border-radius:5px; color:#C7D6EA;}
.footer__social:hover{color:#FFFFFF; border-color:rgba(199,214,234,0.5);}
.footer__social svg{width:20px; height:20px;}
.footer__bottom{border-top:1px solid rgba(199,214,234,0.18); padding-top:24px; font-size:13px; color:#7E97B6;}

@media (max-width:820px){
  .footer__grid{grid-template-columns:1fr; gap:36px;}
}
@media (max-width:640px){
  .container{padding:0 20px;}
  .header__nav a:not(.btn){display:none;}
}
