
.landing-body{margin:0;background:#101014;color:var(--text);overflow-x:hidden}
.landing-main{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:18px 0 80px}
.landing-brand{display:inline-flex;margin-bottom:18px;color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.11em;text-decoration:none}
.landing-hero-image{width:100%;max-height:76vh;overflow:hidden;background:#070709}
.landing-hero-image img{display:block;width:100%;max-height:76vh;object-fit:cover}
.landing-copy{width:min(900px,100%);margin:0 auto;padding:clamp(38px,7vw,90px) 0}
.landing-kicker{display:block;margin-bottom:18px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.landing-copy h1{margin:0;font-size:clamp(58px,11vw,138px);line-height:.82;letter-spacing:-.06em;overflow-wrap:anywhere}
.landing-intro{max-width:720px;margin:32px 0 36px;margin-left:min(18vw,180px);color:var(--muted);font-size:clamp(18px,2.2vw,24px);line-height:1.5}
.landing-richtext{font-size:clamp(16px,1.6vw,20px);line-height:1.7;color:#d5d1c9}
.landing-richtext h1,.landing-richtext h2,.landing-richtext h3,.landing-richtext h4{color:var(--text);line-height:1.05;letter-spacing:-.025em}
.landing-richtext h2{font-size:clamp(34px,6vw,66px);margin:1.25em 0 .45em}.landing-richtext h3{font-size:clamp(26px,4vw,42px);margin:1.2em 0 .4em}.landing-richtext h4{font-size:clamp(20px,3vw,28px)}
.landing-richtext a{color:var(--accent)}.landing-richtext ul,.landing-richtext ol{padding-left:1.4em}.landing-richtext li{margin:.35em 0}.landing-richtext li::marker{color:var(--accent);font-weight:900}
.landing-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}.landing-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:210px;padding:15px 17px;background:var(--accent);color:#101014;text-decoration:none;font-size:clamp(15px,1.7vw,19px);font-weight:900;letter-spacing:.035em}
.landing-gallery{display:grid;gap:16px;margin-top:12px}.landing-gallery figure{margin:0}.landing-gallery img{display:block;width:100%;max-height:88vh;object-fit:contain;background:#070709}.landing-gallery figcaption{padding:8px 0;color:var(--muted);font-size:11px}
.landing-minimal-footer{padding-top:50px;text-align:center}.landing-minimal-footer a{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-decoration:none}
@media(max-width:700px){.landing-main{width:calc(100% - 20px);padding-top:10px}.landing-hero-image,.landing-hero-image img{max-height:58vh}.landing-copy{padding:34px 0}.landing-copy h1{font-size:clamp(48px,18vw,88px)}.landing-intro{margin:24px 0 30px}.landing-buttons{display:grid}.landing-button{min-width:0}}


/* CTA · größere Schrift — absichtlich am Dateiende, damit keine ältere Regel sie überschreibt */
.landing-buttons .landing-button{
  font-size:20px !important;
  line-height:1.15 !important;
  padding:18px 20px !important;
}
.landing-buttons .landing-button > span{
  font-size:24px !important;
  line-height:1 !important;
}
@media(max-width:700px){
  .landing-buttons .landing-button{
    font-size:18px !important;
    padding:17px 18px !important;
  }
  .landing-buttons .landing-button > span{
    font-size:22px !important;
  }
}


/* CTA · Schriftgröße passend zum Fließtext */
.landing-buttons .landing-button{
  font-size:clamp(16px,1.6vw,20px) !important;
  line-height:1.35 !important;
  padding:15px 17px !important;
}
.landing-buttons .landing-button > span{
  font-size:1.1em !important;
  line-height:1 !important;
}
@media(max-width:700px){
  .landing-buttons .landing-button{
    font-size:16px !important;
    padding:15px 17px !important;
  }
  .landing-buttons .landing-button > span{
    font-size:1.1em !important;
  }
}


/* Landingpage · lange Links und Wörter auf kleinen Displays umbrechen */
.landing-richtext,
.landing-richtext p,
.landing-richtext li,
.landing-richtext a{
  overflow-wrap:anywhere;
  word-break:break-word;
  max-width:100%;
}
.landing-richtext a{
  white-space:normal;
}
