@font-face{font-family:"Outfit";src:url(fonts/outfit.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Swanky";src:url(fonts/swanky.woff2) format("woff2");font-weight:400;font-display:swap}

:root{
  --lila:#4A1758;
  --lila-tief:#3A1046;
  --violett:#963DE0;
  --lime:#D9FF6A;
  --lavendel:#EADFFF;
  --weiss:#FFFFFF;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--lila);color:var(--weiss);font-family:"Outfit",system-ui,sans-serif;font-weight:500;line-height:1.55;font-size:17px}
a{color:inherit}
img{max-width:100%;display:block}

.wrap{max-width:1080px;margin:0 auto;padding:0 24px}

/* Kopf */
.kopf{display:flex;justify-content:space-between;align-items:center;padding:22px 0}
.marke{font-weight:900;text-transform:uppercase;letter-spacing:.02em;font-size:18px;text-decoration:none}
.marke span{color:var(--lime)}
.kopf nav a{font-weight:700;text-decoration:none;font-size:15px;opacity:.85}
.kopf nav a:hover{opacity:1;color:var(--lime)}

/* Start */
.held{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;padding:48px 0 88px}
.hand{font-family:"Swanky",cursive;color:var(--lime);font-size:30px;line-height:1;margin:0 0 10px}
h1{font-weight:900;text-transform:uppercase;font-size:clamp(44px,7vw,84px);line-height:.92;letter-spacing:-.01em;margin:0 0 26px}
h1 em{font-style:normal;color:var(--lime)}
.intro{font-size:19px;max-width:30em;margin:0 0 32px;color:var(--lavendel)}
.intro b{color:var(--weiss);font-weight:700}
.knopf{display:inline-block;background:var(--lime);color:var(--lila);font-weight:900;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;padding:16px 26px;border-radius:999px;font-size:16px}
.knopf:hover{background:var(--weiss)}
.knopf-zart{display:inline-block;margin-left:18px;font-weight:700;text-decoration:none;color:var(--lavendel)}
.knopf-zart:hover{color:var(--lime)}

.foto{position:relative;justify-self:center;width:100%;max-width:380px}
.foto img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 35%;border-radius:24px}
.foto .notiz{position:absolute;left:50%;transform:translateX(-50%);top:-15px;white-space:nowrap;background:var(--lime);color:var(--lila);font-family:"Swanky",cursive;font-size:17px;line-height:1.2;padding:4px 14px;border-radius:999px}

/* Abschnitte */
.abschnitt{padding:80px 0;border-top:1px solid rgba(234,223,255,.18)}
.abschnitt h2{font-weight:900;text-transform:uppercase;font-size:clamp(30px,4.4vw,48px);line-height:.98;margin:0 0 14px}
.abschnitt .unter{color:var(--lavendel);max-width:36em;margin:0 0 40px;font-size:18px}

.saeulen{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.saeule{background:var(--lila-tief);border-radius:20px;padding:28px 26px 30px}
.saeule .nr{font-family:"Swanky",cursive;color:var(--lime);font-size:26px;line-height:1}
.saeule h3{font-weight:900;text-transform:uppercase;font-size:22px;line-height:1.05;margin:10px 0 10px}
.saeule p{margin:0;color:var(--lavendel);font-size:16px}

.zwei{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.karte{border:2px solid var(--lime);border-radius:20px;padding:30px 28px}
.karte.ruhig{border-color:rgba(234,223,255,.35)}
.karte h3{font-weight:900;text-transform:uppercase;font-size:24px;margin:0 0 8px;line-height:1.05}
.karte p{margin:0 0 20px;color:var(--lavendel)}
.karte a.link{font-weight:700;color:var(--lime);text-decoration:none}
.karte a.link:hover{text-decoration:underline}

/* Fuß */
.fuss{border-top:1px solid rgba(234,223,255,.18);padding:30px 0 40px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--lavendel)}
.fuss a{text-decoration:none;margin-left:20px}
.fuss a:first-child{margin-left:0}
.fuss a:hover{color:var(--lime)}

/* Rechtstexte */
.recht{max-width:760px;padding:30px 0 80px}
.recht h1{font-size:clamp(38px,6vw,60px);margin-bottom:34px}
.recht h2{font-weight:900;text-transform:uppercase;font-size:20px;margin:38px 0 8px;color:var(--lime)}
.recht p,.recht li{color:var(--lavendel)}
.recht strong{color:var(--weiss)}
.recht a{color:var(--lime)}

/* Helle Variante im Studio-Look */
body.hell{background:#F3F0EE;color:var(--lila)}
.hell .marke span{color:var(--violett)}
.hell .kopf nav a:hover,.hell .knopf-zart:hover,.hell .fuss a:hover{color:var(--violett)}
.hell .hand{color:var(--violett)}
.hell h1 em{color:var(--violett)}
.hell .intro,.hell .abschnitt .unter,.hell .saeule p,.hell .karte p,.hell .fuss,.hell .knopf-zart{color:#6E5C78}
.hell .intro b{color:var(--lila)}
.hell .knopf{background:var(--lila);color:var(--weiss)}
.hell .knopf:hover{background:var(--violett)}
.hell .foto .notiz{background:var(--lime);color:var(--lila)}
.hell .abschnitt,.hell .fuss{border-top-color:rgba(74,23,88,.14)}
.hell .saeule{background:var(--weiss)}
.hell .saeule .nr{color:var(--violett)}
.hell .karte{background:var(--lila);border-color:var(--lila);color:var(--weiss)}
.hell .karte p{color:var(--lavendel)}
.hell .karte.ruhig{background:var(--weiss);border-color:var(--weiss);color:var(--lila)}
.hell .karte.ruhig p{color:#6E5C78}
.hell .karte.ruhig a.link{color:var(--violett)}
.hell .recht p,.hell .recht li{color:#6E5C78}
.hell .recht strong{color:var(--lila)}
.hell .recht h2,.hell .recht a{color:var(--violett)}

@media (max-width:820px){
  .wrap{padding:0 16px}
  .held{grid-template-columns:1fr;gap:56px;padding:24px 0 72px;text-align:center}
  .intro{margin-left:auto;margin-right:auto}
  .foto{max-width:300px;grid-row:1}
  .knopf-zart{display:block;margin:18px 0 0}
  .saeulen,.zwei{grid-template-columns:1fr}
  .abschnitt{padding:60px 0}
  .fuss{justify-content:center;text-align:center}
}
