:root{
  --gap:16px;
  --border:#000;
  --blue:#0d3b66;
  --red:#c1121f;
  --darkred:#7b1113;
  --green:#40916c;
  --lightblue:#3a86ff;
  --purple:#7b2cbf;
}

*{box-sizing:border-box}
body{margin:0;background:#fff;color:#000;font-family:"Times New Roman", Times, serif}
.page{min-height:100vh;display:flex;flex-direction:column;padding:14px 18px}
.rule{height:1px;background:var(--border);width:100%}
.spacer8{height:8px}.spacer12{height:12px}.spacer16{height:16px}

.mast svg{display:block;margin:0 auto;max-width:1600px}

.navwrap{display:flex;flex-direction:column;align-items:center;gap:12px}
.menu{display:flex;gap:16px}
.menu a{display:inline-block;padding:6px 20px;border:1px solid var(--border);color:inherit;text-decoration:none;font-size:17px}

.kicker{position:relative;width:100%;height:18px;font-size:14px}
.kicker .left{position:absolute;left:0}
.kicker .center{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}
.kicker .right{position:absolute;right:0}

.grid{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:var(--gap);align-items:start}
.col{display:flex;flex-direction:column;gap:var(--gap)}

/* Hero */
figure.hero{margin:0;border:1px solid var(--border);line-height:0;overflow:hidden}
figure.hero img{display:block;width:100%;height:auto}
.caption{font-size:16px;line-height:1.35;font-style:italic;margin-top:6px;text-align:left}

/* Karten & Grundtypografie */
.card{border:1px solid var(--border);background:#fff;padding:16px;color:inherit;text-decoration:none}
.card h2{margin:0 0 10px;font-size:30px;line-height:1.1}
.card h2.small{font-size:26px;line-height:1.15}
.card p{margin:0 0 10px;line-height:1.6;font-size:16px;text-align:justify}

/* Teaser-Box */
.teaser{border:1px solid var(--border);background:#fff;padding:14px;order:0}
.teaser h3{margin:0 0 10px;font-size:22px;line-height:1.1}
.teaser-item{padding:8px 0;border-top:1px solid var(--border)}
.teaser-cat{font-size:13px;line-height:1.1;margin-bottom:2px;color:var(--purple)}
.teaser-title{font-size:18px;line-height:1.2;color:#000;text-decoration:none}
.teaser-title:hover{text-decoration:underline}
.teaser-author{font-size:13px;line-height:1.1;margin-top:2px}

/* Bilder in Spalten nie breiter als die Spalte */
.grid .col img,
.grid .col figure img,
.card img { max-width:100%; height:auto; display:block; }

/* Asset-Karten (Werbung) */
.card.asset{ padding:0; }
.card.asset a{ display:block; text-decoration:none; }
.card.asset img{ width:100%; height:auto; }

/* Back-to-top */
.backTop{
  position:fixed; right:18px; bottom:18px;
  background:#fff; border:1px solid #000;
  padding:8px 12px; color:#000; text-decoration:none;
  opacity:0; pointer-events:none; transition:opacity .2s ease;
}
.backTop.show{opacity:1; pointer-events:auto}

.copy{font-size:14px;text-align:center;font-style:italic;margin-bottom:10px}

