/* Zentrales Stylesheet STERN IMMOBILIEN AG (b-prospekt).
   Lokal gehostete Schriften statt Google-Fonts-CDN (kein externer Request
   mehr beim Seitenaufruf); Variable Font "Newsreader" deckt Schnittgewichte
   400 und 600 über einen einzigen Dateisatz ab (font-weight als Bereich). */

@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url('../fonts/Newsreader-Regular.woff2') format('woff2');
}
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/Newsreader-Italic.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/IBMPlexMono-Regular.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/IBMPlexMono-Medium.woff2') format('woff2');
}

:root{
  --paper:#f7f5f0;
  --ink:#1c1a17;
  --rule:#c9c3b6;
  --accent:#7a1f2b;
  --muted:#6e685c;
  --body:#33302b;
}
*{box-sizing:border-box;}
body{
  margin:0;background:#fff;color:var(--ink);font-family:'Newsreader',Georgia,serif;
  background-image:url('../watermark.png');
  background-repeat:no-repeat;
  background-position:top right;
  background-size:640px auto;
  background-attachment:fixed;
}
.mono{font-family:'IBM Plex Mono',monospace;font-size:.78rem;letter-spacing:.03em;color:var(--muted);}
.wrap{max-width:920px;margin:0 auto;padding:0 2rem;}
header{border-bottom:2px solid var(--ink);padding:1.6rem 0;}
header .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.8rem 1.6rem;}
.brand{font-size:1.4rem;letter-spacing:.01em;color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;}
.brand:hover{color:var(--accent);border-color:var(--accent);}
nav{display:flex;gap:1.6rem;font-family:'IBM Plex Mono',monospace;font-size:.78rem;}
nav a{color:var(--ink);text-decoration:none;border-bottom:1px solid transparent;}
nav a:hover{border-color:var(--accent);color:var(--accent);}
.chapter-label{font-family:'IBM Plex Mono',monospace;font-size:.78rem;color:var(--accent);display:block;margin-bottom:.5rem;}
.titleblock{padding:3.4rem 0 2.2rem;border-bottom:1px solid var(--rule);}
h1{font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15;margin:.4rem 0 1.2rem;max-width:20ch;}
h1 em{font-style:normal;font-weight:600;color:var(--accent);}
.lead{font-size:1.15rem;line-height:1.65;color:var(--body);max-width:58ch;}
.kurzportrait{padding:2.6rem 0;border-bottom:1px solid var(--rule);}
.kurzportrait .row{display:grid;grid-template-columns:180px 1fr;padding:.55rem 0;border-top:1px dotted var(--rule);}
.kurzportrait .row:first-child{border-top:none;}
.kurzportrait .label{font-family:'IBM Plex Mono',monospace;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;}
.kurzportrait .value{font-size:1.02rem;}
.kapitel{padding:2.8rem 0;border-bottom:1px solid var(--rule);}
.kapitel h2,.anleihe h2{font-size:1.4rem;margin:0 0 1rem;font-weight:600;}
.staedte{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 2.4rem;}
.staedte div h3{font-size:1rem;margin:0 0 .3rem;font-style:italic;font-weight:400;}
.staedte div p{margin:0;font-size:.92rem;color:var(--muted);line-height:1.5;}
.banner{margin:2.4rem 0 0;height:180px;border:1px solid var(--rule);position:relative;overflow:hidden;}
.banner img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.15) sepia(.08);}
.anleihe{padding:3rem 0 3.6rem;}
.anleihe p{font-size:.98rem;line-height:1.7;color:var(--body);max-width:64ch;}
.cta-link{
  display:inline-block;margin-top:1.2rem;background:var(--accent);color:#fff;text-decoration:none;
  padding:.75rem 1.4rem;font-family:'IBM Plex Mono',monospace;font-size:.78rem;letter-spacing:.05em;
}
.cta-link:hover{background:#5e1620;}
footer{border-top:2px solid var(--ink);padding:1.4rem 0;}
footer .wrap{font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:var(--muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;}
footer a{color:var(--muted);text-decoration:none;}
footer a:hover{color:var(--accent);}
@media (max-width:700px){
  .kurzportrait .row{grid-template-columns:1fr;gap:.2rem;}
  .staedte{grid-template-columns:1fr;}
}

/* anleihe.html / anleihedokument.html Disclaimer-Titelblock */
.titleblock.compact{padding:3rem 0 1.6rem;}
.title-hero{font-size:clamp(1.7rem,3.4vw,2.3rem);line-height:1.2;max-width:26ch;}
.disclaimer{border-top:1px solid var(--rule);padding:2rem 0;}
.disclaimer p{font-size:.96rem;line-height:1.75;color:var(--body);margin:0 0 1.3rem;}
.disclaimer p:last-child{margin-bottom:0;}
.disclaimer strong{font-weight:600;color:var(--ink);}
.gate{border:1px solid var(--ink);padding:1.6rem;margin:2rem 0 3.6rem;background:#fff;}
.gate label{display:flex;gap:.7rem;font-size:.9rem;line-height:1.55;align-items:flex-start;}
.gate button{
  margin-top:1.2rem;background:var(--accent);color:#fff;border:none;padding:.75rem 1.4rem;
  font-family:'IBM Plex Mono',monospace;font-size:.78rem;letter-spacing:.05em;cursor:pointer;
}
.gate button:disabled{background:var(--rule);color:#8a8378;cursor:not-allowed;}

/* anleihedokument.html Dokumentliste */
.sub{font-size:1rem;color:var(--muted);margin:0 0 1.6rem;}
.kapitel .note{font-size:.92rem;color:var(--muted);line-height:1.6;margin:0 0 1.4rem;max-width:64ch;}
.doclist{border-top:1px solid var(--rule);}
.doclist a{
  display:flex;justify-content:space-between;align-items:baseline;gap:1rem;
  padding:1rem 0;border-bottom:1px dotted var(--rule);text-decoration:none;color:var(--ink);
}
.doclist a:hover{color:var(--accent);}
.doclist .name{font-size:1rem;}
.doclist .meta{font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:var(--muted);white-space:nowrap;flex:none;}
.back{padding:2.4rem 0 3rem;}
.back a{font-family:'IBM Plex Mono',monospace;font-size:.78rem;color:var(--muted);text-decoration:none;}
.back a:hover{color:var(--accent);}

/* impressum.html / datenschutz.html Rechtstext */
.legal-doc h1{font-size:2rem;margin:0 0 1.6rem;font-weight:600;}
.legal-doc h2{font-size:1.1rem;margin:2rem 0 .7rem;font-weight:600;font-style:italic;color:var(--accent);}
.legal-doc p,.legal-doc li{color:var(--body);font-size:.98rem;line-height:1.7;}
.legal-doc ul{padding-left:1.2rem;}
.legal-doc a{color:var(--accent);}
