/* akv-r.de Refresh – Stylesheet (Original ignite-Palette, ein Gelb, eckig, schlicht) */
:root{
  --gold:#f7b500; --ink:#373b41; --ink-dark:#303338; --muted:#7c7d7f;
  --border:#d9dcdf; --soft:#f5f5f5; --white:#fff; --red:#b03030;
  --serif:'Fraunces',Georgia,serif; --sans:'Inter',Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;border-radius:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--sans);color:var(--ink);background:var(--white);line-height:1.7;font-size:17px}
img{max-width:100%;display:block}
a{color:var(--ink)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.skip-link{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--ink);padding:10px 14px;font-weight:700;z-index:100}
.skip-link:focus{left:0}
h1,h2,h3,h4{font-family:var(--serif);font-style:normal;color:var(--ink);line-height:1.18}

/* Header */
header.site{border-bottom:1px solid var(--border);background:var(--white)}
.hd{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;max-width:1080px;margin:0 auto;flex-wrap:wrap;gap:12px}
.logo-img{height:31px;width:auto;display:block}
nav.main{display:flex;gap:2px;flex-wrap:wrap}
nav.main a{font-size:14px;font-weight:600;color:var(--ink);padding:10px 13px;border-bottom:3px solid transparent;text-decoration:none}
nav.main a:hover{color:var(--gold)} nav.main a.active{border-bottom-color:var(--gold)}

/* Article */
.article-wrap{display:grid;grid-template-columns:1fr 300px;gap:40px;padding:34px 0 60px}
.kick{display:inline-block;background:var(--gold);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:5px 11px;margin-bottom:14px}
article h1{font-size:38px;line-height:1.14;margin-bottom:12px}
.meta{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--muted);border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:24px}
.meta .d{font-weight:600;color:var(--ink)}
article h2{font-size:26px;margin:34px 0 12px;border-left:5px solid var(--gold);padding-left:14px}
article h3{font-size:20px;margin:24px 0 8px}
article p{margin:0 0 16px}
article p a,article li a{color:var(--ink);border-bottom:2px solid var(--gold);text-decoration:none}
article p a:hover{background:#fef3d2}
article ul,article ol{margin:0 0 18px 22px} article li{margin:0 0 8px}
.lede{font-size:20px;color:var(--muted);margin-bottom:24px}

/* Info-/Warn-/§-Kästen */
.ibox{display:flex;gap:14px;border:1px solid var(--border);border-left:4px solid var(--gold);padding:14px 16px;margin:24px 0;background:#fff}
.ibox .chip{flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:22px;background:var(--gold);color:var(--ink)}
.ibox .tx{font-size:15px;line-height:1.55}
.ibox .tx b{display:block;font-family:var(--serif);font-size:16px;margin-bottom:2px}
.ibox.warn{border-left-color:var(--red)} .ibox.warn .chip{background:var(--red);color:#fff}
.ibox.info{border-left-color:var(--ink)} .ibox.info .chip{background:var(--ink);color:#fff}

/* Länder-Umriss-Marke */
.country{display:flex;align-items:center;gap:14px;border:1px solid var(--border);padding:12px 16px;margin:24px 0;background:var(--soft)}
.country svg{flex:none;width:58px;height:58px}
.country .o{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linejoin:round}
.country .lab b{font-family:var(--serif);font-size:18px;display:block}
.country .lab span{font-size:13px;color:var(--muted)}

/* Studienlage / mehrere Quellen */
.studien{border:1px solid var(--border);border-top:3px solid var(--gold);padding:16px 18px;margin:26px 0}
.studien h4{font-size:15px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-family:var(--sans);font-weight:700}
.studien ul{list-style:none;margin:0}
.studien li{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--soft);font-size:14px}
.studien li:last-child{border-bottom:0}
.studien .fig{flex:none;min-width:62px;font-family:var(--serif);font-weight:700;font-size:18px;color:var(--ink)}
.studien a{color:var(--ink);border-bottom:2px solid var(--gold);text-decoration:none}

/* Pull-Quote */
.pq{font-family:var(--serif);font-size:23px;line-height:1.35;border-left:5px solid var(--gold);padding:6px 0 6px 18px;margin:28px 0;color:var(--ink)}
.pq .src{display:block;font-family:var(--sans);font-size:13px;color:var(--muted);margin-top:8px}

/* Daten-Tabelle */
table.dt{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px}
table.dt th,table.dt td{border:1px solid var(--border);padding:9px 11px;text-align:left}
table.dt th{background:var(--ink);color:#fff;font-family:var(--sans);font-weight:600}
table.dt tr:nth-child(even) td{background:var(--soft)}

/* Sidebar */
aside .widget{border:1px solid var(--border);margin-bottom:22px}
aside .widget h4{background:var(--gold);color:var(--ink);font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:10px 14px}
aside .widget ul{list-style:none;padding:6px 14px 12px}
aside .widget li{border-bottom:1px solid var(--soft);padding:9px 0;font-size:14px}
aside .widget li:last-child{border-bottom:0}
aside .widget a{color:var(--ink);text-decoration:none}
aside .widget a:hover{color:var(--gold)}
aside .help{border-left:4px solid var(--red)}
aside .help .h{padding:12px 14px;font-size:13px;color:#44474c}

/* Quellenliste unten */
.sources{border-top:1px solid var(--border);margin-top:34px;padding-top:16px;font-size:13px;color:var(--muted)}
.sources b{color:var(--ink)} .sources a{color:var(--ink);border-bottom:1px solid var(--gold);text-decoration:none}

/* Footer */
footer.site{background:var(--ink-dark);color:#cfd2d6;margin-top:10px}
footer.site .wrap{padding:30px 20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-size:13px}
footer.site a{color:var(--gold);text-decoration:none}

@media(max-width:820px){.article-wrap{grid-template-columns:1fr}.meta{gap:10px}}
@media(max-width:560px){article h1{font-size:29px}body{font-size:16px}}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto}}

/* Homepage / Cards / Legal */
.hero{background:#fff;border-bottom:1px solid var(--border)}
.hero .wrap{padding:46px 20px}
.hero .kick{display:inline-block;background:var(--gold);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:5px 11px;margin-bottom:14px}
.hero h1{font-family:var(--serif);font-size:38px;line-height:1.15;max-width:820px;border-left:5px solid var(--gold);padding-left:18px;margin-bottom:12px}
.hero h1 a{color:var(--ink);text-decoration:none}
.hlede{font-size:19px;color:var(--muted);max-width:680px;margin-bottom:20px}
.hmeta{display:flex;align-items:center;gap:18px;font-size:13px;color:var(--muted)}
.btn{display:inline-block;background:var(--gold);color:var(--ink);font-weight:700;font-size:14px;padding:11px 20px;border:1px solid var(--gold);text-decoration:none}
.btn:hover{background:#fff}
.sec-head{max-width:1080px;margin:40px auto 22px;padding:0 20px;display:flex;align-items:baseline;justify-content:space-between;border-bottom:3px solid var(--gold);padding-bottom:8px}
.sec-head h2{font-family:var(--serif);font-size:24px}
.sec-head span{font-size:13px;color:var(--muted)}
.grid{max-width:1080px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{border:1px solid var(--border);border-top:3px solid var(--gold);background:#fff;padding:16px 16px 14px;display:flex;flex-direction:column}
.card .cat{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--gold);padding:2px 8px}
.card h3{font-family:var(--serif);font-size:20px;line-height:1.22;margin:10px 0 8px}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{color:var(--gold-dark,#b8860b)}
.card .ex{font-size:14px;color:var(--muted);margin-bottom:12px;flex:1}
.card .cmeta{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);border-top:1px solid var(--soft);padding-top:9px}
.card .more{font-weight:700;color:var(--ink);border-bottom:2px solid var(--gold);text-decoration:none}
.toolsband{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--border);border-left:4px solid var(--gold);padding:16px 18px;margin:36px auto;flex-wrap:wrap}
.toolsband b{font-family:var(--serif);font-size:18px;display:block}
.toolsband span{font-size:14px;color:var(--muted)}
.legal{max-width:760px;margin:30px auto 60px;padding:0 20px}
.legal h1{font-size:32px;margin-bottom:16px}
.legal h2{font-size:20px;margin:24px 0 8px;border-left:5px solid var(--gold);padding-left:12px}
.legal p{margin-bottom:14px}
.legal .hint{font-size:13px;color:var(--muted);border-top:1px solid var(--border);padding-top:12px}
.legal a{color:var(--ink);border-bottom:2px solid var(--gold);text-decoration:none}
@media(max-width:820px){.grid{grid-template-columns:1fr 1fr}.hero h1{font-size:30px}}
@media(max-width:560px){.grid{grid-template-columns:1fr}}

/* FEATURES + Kontaktformular */
.legend{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px;font-size:13px;font-weight:600}
.legend span{display:inline-flex;align-items:center;gap:7px;cursor:pointer;padding:5px 9px;border:1px solid var(--border);user-select:none}
.legend span.off{opacity:.4}
.sw{width:15px;height:15px;display:inline-block;border:1px solid rgba(0,0,0,.15)}
.sw.g{background:var(--gold)} .sw.m{background:#373b41} .sw.r{background:var(--red)}
.sw.u{background:repeating-linear-gradient(45deg,var(--gold),var(--gold) 4px,#373b41 4px,#373b41 8px)}
.maprow{display:grid;grid-template-columns:1fr 330px;gap:22px;align-items:start;margin-bottom:8px}
.mapbox{border:1px solid var(--border);background:#fbfbfc;padding:8px}
#eu{width:100%;height:auto;display:block}
.cn{stroke:#fff;stroke-width:.6;cursor:pointer;transition:opacity .12s,filter .12s}
.cn.g{fill:var(--gold)} .cn.m{fill:#373b41} .cn.r{fill:var(--red)} .cn.u{fill:url(#hatch)} .cn.x{fill:#e4e4e7;cursor:default}
.cn.isl{stroke:#373b41;stroke-width:1}
.cn:hover{filter:brightness(1.08)} .cn.sel{stroke:#373b41;stroke-width:2} .cn.dim{opacity:.12;pointer-events:none}
.panel{border:1px solid var(--border);border-top:3px solid var(--gold);padding:18px;position:sticky;top:14px;min-height:260px}
.panel .pc{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.panel h3{font-size:24px;margin:4px 0 10px}
.panel .badge{display:inline-block;font-size:12px;font-weight:700;padding:3px 9px;color:#fff;margin-bottom:14px}
.panel .badge.g{background:var(--gold);color:var(--ink)} .panel .badge.m{background:#373b41} .panel .badge.r{background:var(--red)} .panel .badge.u{background:#373b41} .panel .badge.x{background:#9a9da3}
.auth{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.amark{background:var(--ink);color:#fff;font-weight:700;font-size:13px;padding:8px 10px;min-width:44px;text-align:center}
.afull{font-size:13px;color:var(--muted);line-height:1.3}
.panel p{font-size:14px;color:#44474c;margin-bottom:8px}
.reglink{display:inline-block;margin-top:6px;font-size:13px;font-weight:700;color:var(--ink);border-bottom:2px solid var(--gold);text-decoration:none}
.reg{font-size:13px;color:var(--muted)}
.clockbar{height:34px;display:flex;border:1px solid var(--border);position:relative;margin-top:8px}
.zone{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}
.zone.ban{background:var(--red);flex:15} .zone.ok{background:var(--gold);color:var(--ink);flex:9}
.marker{position:absolute;top:-6px;bottom:-6px;width:2px;background:var(--ink)}
.marker:after{content:"";position:absolute;top:-6px;left:-5px;border:6px solid transparent;border-top-color:var(--ink)}
.timeval{font-weight:700}
.verdict{margin-top:12px;padding:12px 14px;border:1px solid var(--border);font-weight:600}
.verdict.bad{border-left:5px solid var(--red)} .verdict.good{border-left:5px solid var(--gold)}
input[type=range]{width:100%;accent-color:var(--gold);margin-top:10px}
.scen{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}
.sc{border:1px solid var(--border);padding:14px;cursor:pointer}
.sc .q{font-weight:600;margin-bottom:8px} .sc .rv{font-size:12px;color:var(--muted)}
.sc .a{display:none;font-size:14px;margin-top:8px} .sc.open .a{display:block}
.tagv{display:inline-block;font-size:12px;font-weight:700;padding:2px 9px;color:#fff;margin-bottom:8px}
.tagv.bad{background:var(--red)} .tagv.good{background:var(--gold);color:var(--ink)} .tagv.gray{background:#373b41}
.toolsrc{font-size:12px;color:var(--muted);margin:16px 0 0}
.toolsrc a{color:var(--ink);border-bottom:1px solid var(--gold);text-decoration:none}
.toolblock{padding-top:6px}
.cform{display:flex;flex-direction:column;gap:4px;max-width:520px;margin:16px 0}
.cform label{font-size:13px;font-weight:600;margin-top:10px}
.cform input,.cform textarea{border:1px solid var(--border);padding:10px;font-family:var(--sans);font-size:15px;width:100%}
.cform button{margin-top:16px;align-self:flex-start}
@media(max-width:780px){.maprow{grid-template-columns:1fr}.panel{position:static}.scen{grid-template-columns:1fr}}
