/* UFP Finance - Blog. Farben: Weiss, Anthrazit, Dunkelblau (nur Akzent). Keine externen Schriften. */
:root{
  --white:#FFFFFF;
  --ink:#242830;
  --accent:#285D85;
  --surface:#F3F4F6;
  --line:#E5E7EB;
  --mute:#5B6270;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--white);color:var(--ink);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:1.0625rem;line-height:1.7;
}
a{color:var(--accent);text-underline-offset:.18em}
a:hover{text-decoration-thickness:2px}
a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

.wide{width:min(1080px,calc(100% - 2.5rem));margin:0 auto}
.wrap{width:min(720px,calc(100% - 2.5rem));margin:0 auto;padding:3rem 0 4.5rem}

/* Kopfzeile */
header.site{border-bottom:1px solid var(--line)}
header.site .wide{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 2rem;padding:1.25rem 0}
.brand{color:var(--ink);font-weight:700;font-size:1.2rem;letter-spacing:-.01em;text-decoration:none}
header.site nav{display:flex;flex-wrap:wrap;gap:.25rem 1.5rem}
header.site nav a{color:var(--ink);text-decoration:none;font-size:.97rem;padding:.25rem 0}
header.site nav a:hover{color:var(--accent)}

/* Artikel */
.crumb,.meta{margin:0 0 .75rem;font-size:.9rem;color:var(--mute)}
.crumb a{color:var(--mute)}
.cat{text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--accent);font-size:.8rem}
h1{font-size:clamp(1.9rem,5.2vw,2.7rem);line-height:1.15;letter-spacing:-.02em;margin:.25rem 0 1.25rem;font-weight:700}
.lead{font-size:1.2rem;line-height:1.6;color:var(--ink);margin:0 0 2rem}
article h2{font-size:1.5rem;line-height:1.25;letter-spacing:-.01em;margin:2.75rem 0 .9rem}
article h3{font-size:1.15rem;line-height:1.35;margin:1.9rem 0 .5rem}
article p,article li{margin:0 0 1rem}
article ul,article ol{padding-left:1.35rem;margin:0 0 1.5rem}
article li{margin:.3rem 0}
figure{margin:0 0 2.5rem}
figure img{display:block;width:100%;height:auto;background:var(--surface)}
figcaption{margin-top:.6rem;font-size:.9rem;color:var(--mute)}
a.more{font-weight:600}

.answer,.warning{background:var(--surface);padding:1.4rem 1.5rem;margin:2rem 0}
.answer h3,.warning h3{margin:0 0 .5rem;font-size:1rem;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}
.warning h3{color:var(--ink)}
.answer p:last-child,.warning p:last-child,.answer ul:last-child{margin-bottom:0}

.table-wrap{overflow-x:auto;margin:1.5rem 0 2rem}
table{width:100%;border-collapse:collapse;font-size:.98rem}
th,td{text-align:left;vertical-align:top;padding:.75rem 1rem .75rem 0;border-bottom:1px solid var(--line)}
th{font-weight:600;border-bottom:2px solid var(--ink);white-space:nowrap}

aside.source{margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.95rem;color:var(--mute)}
aside.source p{margin:0 0 .6rem}
aside.source .small{font-size:.85rem}

/* Übersicht */
.label{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin:3rem 0 .5rem}
.list{list-style:none;padding:0;margin:0}
.list li{margin:0;border-bottom:1px solid var(--line)}
.list a{display:block;padding:1rem 0;text-decoration:none;color:var(--ink)}
.list .t{display:block;font-weight:600;font-size:1.08rem;line-height:1.35}
.list .d{display:block;margin-top:.2rem;font-size:.95rem;color:var(--mute);line-height:1.5}
.list a:hover .t{color:var(--accent)}

/* Fusszeile */
footer.site{background:var(--surface);padding:3rem 0 2.5rem;margin-top:1rem}
footer.site h2{margin:0 0 1.5rem;font-size:1.05rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
footer.site ul{list-style:none;margin:0;padding:0}
footer.site li{margin:0 0 1.15rem}
footer.site li a{color:var(--ink);text-decoration:none;font-size:1.2rem}
footer.site li a:hover{color:var(--accent);text-decoration:underline}
footer.site .legal{margin:2rem 0 0;font-size:.85rem;color:var(--mute)}
footer.site .legal a{color:var(--mute)}

@media (max-width:600px){
  body{font-size:1rem}
  .wrap{padding:2rem 0 3rem}
  .lead{font-size:1.1rem}
  article h2{font-size:1.3rem;margin-top:2.25rem}
  .answer,.warning{padding:1.1rem 1.1rem}
}
@media (prefers-reduced-motion:no-preference){a{transition:color .15s ease}}

.next{margin:2.5rem 0 0;font-weight:600}
