:root{
  --bg:#F2F0EC;--ink:#1D1D1B;--neon:#E7FF00;--white:#FFFFFF;
  --line:rgba(29,29,27,.16);--pill:#E7E4DD;--muted:#6b6a64;--maxw:1280px;
  --r:18px;--r-sm:12px;--r-card:16px;--rt:760px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);
  -webkit-font-smoothing:antialiased;line-height:1.45;overflow-x:hidden;}
.mono{font-family:"SFMono-Regular",ui-monospace,"Cascadia Code","Roboto Mono",Menlo,Consolas,monospace}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,64px)}
.wrap-rt{max-width:var(--rt);margin:0 auto;padding:0 clamp(20px,5vw,64px)}
img{display:block;max-width:100%}
sup{font-size:.6em;vertical-align:super;line-height:0}
a{color:inherit}

.pill{display:inline-flex;align-items:center;gap:.6em;background:var(--pill);color:var(--ink);
  border-radius:999px;padding:.8em 1.3em;font-size:14px;letter-spacing:.02em;
  border:1px solid transparent;text-decoration:none;cursor:pointer;
  transition:background .25s,transform .25s,color .25s;}
.pill:hover{background:var(--ink);color:var(--bg)}
.pill--ghost{background:transparent;border-color:var(--line)}
.pill--ghost:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.pill--neon{background:var(--neon);color:var(--ink)}
.pill--neon:hover{background:var(--ink);color:var(--neon)}
.pill .arr{display:inline-flex;align-items:center;justify-content:center;width:1.05em;height:1.05em;line-height:1;flex:none}
.pill .arr svg{width:100%;height:100%;display:block;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.pill:hover .arr svg,
.mcard-more:hover .arr svg,
a:hover > .arr svg,
button:hover .arr svg{transform:rotate(45deg) translateX(2px)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.badge{width:clamp(64px,7vw,104px);height:clamp(64px,7vw,104px);background:var(--neon);
  border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;
  transition:transform .4s cubic-bezier(.2,.8,.2,1);}
.badge svg{width:42%;height:42%}
.badge:hover{transform:rotate(45deg)}

/* NAV — identisch zur Main-Page */
.nav{position:sticky;top:0;z-index:50;background:rgba(242,240,236,.82);backdrop-filter:blur(10px);
  border-bottom:1px solid transparent;transition:border-color .3s}
.nav.scrolled{border-color:var(--line)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(20px,5vw,64px)}
.nav-logo{height:26px;display:block}.nav-logo svg{height:100%;width:auto}
.nav-links{display:flex;gap:clamp(18px,3vw,44px);align-items:center}
.nav-links a{color:var(--ink);text-decoration:none;font-size:14px;border-bottom:1px solid var(--ink);padding-bottom:2px;transition:opacity .2s}
.nav-links a:hover{opacity:.55}
.nav-cta{display:inline-flex}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}
.burger span{width:26px;height:2px;background:var(--ink);transition:.3s}
.mobile-menu{display:none}

/* BREADCRUMB / BACK */
.crumb{border-bottom:1px solid var(--line)}
.crumb-inner{display:flex;align-items:center;gap:14px;padding:16px clamp(20px,5vw,64px);font-size:13px;color:var(--muted);flex-wrap:wrap}
.crumb a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:1px}
.crumb a:hover{opacity:.6}
.crumb .sep{opacity:.5}
.back-link{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-size:14px}
.back-link .arr-back{display:inline-flex;width:1.05em;height:1.05em}
.back-link .arr-back svg{width:100%;height:100%}
.back-link:hover{opacity:.6}

/* ARTICLE */
.art-hero{padding:clamp(34px,5vw,64px) 0 clamp(24px,3vw,36px)}
.art-kicker{font-size:13px;letter-spacing:.05em;color:var(--muted);margin-bottom:20px;display:flex;align-items:center;gap:10px}
.art-kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--neon);display:inline-block}
.art-cat{display:inline-block;background:var(--pill);font-size:12px;letter-spacing:.03em;padding:6px 13px;border-radius:999px;margin-bottom:18px}
.art-title{font-size:clamp(40px,7vw,92px);font-weight:600;letter-spacing:-.03em;line-height:.95;margin-bottom:18px}
.art-tagline{font-size:clamp(16px,1.9vw,22px);color:#3a3a37;max-width:30ch;line-height:1.3}
.art-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;font-size:12.5px;color:var(--muted);font-family:ui-monospace,monospace}
.art-meta span{display:inline-flex;align-items:center;gap:7px}
.art-meta .dot{width:5px;height:5px;border-radius:50%;background:var(--neon);display:inline-block}

.art-figure{position:relative;border-radius:var(--r);overflow:hidden;height:clamp(280px,42vw,520px);background:#1d2b27;margin-bottom:clamp(40px,5vw,64px)}
.art-figure::before{content:"";position:absolute;inset:0;z-index:0;background:#a6beb7}
.art-figure img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);mix-blend-mode:luminosity}
.art-figure::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg, rgba(29,43,39,.10) 0%, rgba(29,43,39,0) 35%, rgba(29,43,39,0) 60%, rgba(29,43,39,.35) 100%);}
.art-figure .badge{position:absolute;top:18px;right:18px;z-index:3}

.art-lead{font-size:clamp(18px,2.1vw,24px);font-weight:500;letter-spacing:-.01em;line-height:1.4;color:var(--ink);margin-bottom:clamp(34px,4vw,52px)}
.art-body{display:grid;grid-template-columns:1fr;gap:clamp(28px,3.5vw,44px)}
.art-sec h2{font-size:clamp(22px,3vw,32px);font-weight:600;letter-spacing:-.02em;line-height:1.1;margin-bottom:12px}
.art-sec h2 .em{position:relative;display:inline-block}
.art-sec h2 .em::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.16em;background:var(--neon);z-index:-1;opacity:.9}
.art-sec p{font-size:clamp(15px,1.6vw,17px);color:#3a3a37;max-width:64ch;line-height:1.65}
.art-sec h3{font-size:clamp(18px,2vw,22px);font-weight:600;letter-spacing:-.01em;line-height:1.25;margin:18px 0 8px}

/* Zitat (RTE-Button "Zitat") + Zitat-Quelle (RTE-Stil) */
.art-sec blockquote{position:relative;background:var(--white);border:1px solid var(--line);border-left:6px solid var(--neon);border-radius:var(--r-card);padding:clamp(22px,3vw,34px) clamp(22px,3vw,38px);margin:clamp(18px,2.4vw,28px) 0}
.art-sec blockquote p{font-size:clamp(18px,2.2vw,24px);font-weight:600;letter-spacing:-.01em;line-height:1.38;color:var(--ink);max-width:none}
.art-sec blockquote p + p{margin-top:.6em}
.art-sec blockquote .quote-source,.art-sec .quote-source{font-family:"SFMono-Regular",ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;font-weight:400;letter-spacing:.03em;line-height:1.5;color:var(--muted);margin-top:14px}

/* Bilderleiste (1-3 Bilder je Abschnitt), bricht etwas aus der Textspalte aus.
   min-width:0, damit die breitere Leiste die Grid-Spalte von .art-body nicht aufweitet. */
.art-body > .art-sec{min-width:0}
.art-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,18px);margin-top:clamp(22px,3vw,32px);
  width:min(1100px,calc(100vw - 2*clamp(20px,5vw,64px)));position:relative;left:50%;transform:translateX(-50%)}
.art-gallery--1{grid-template-columns:1fr;width:100%;left:0;transform:none}
.art-gallery--2{grid-template-columns:repeat(2,1fr)}
.art-gallery figure{margin:0;border-radius:var(--r-card);overflow:hidden;border:1px solid var(--line);background:var(--pill);aspect-ratio:4/3;position:relative}
.art-gallery--1 figure{aspect-ratio:16/9}
.art-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.art-gallery figcaption{position:absolute;left:0;right:0;bottom:0;font-family:"SFMono-Regular",ui-monospace,Menlo,Consolas,monospace;font-size:12px;color:#fff;background:linear-gradient(0deg,rgba(29,29,27,.78),rgba(29,29,27,0));padding:22px 14px 10px;opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}
.art-gallery figure:hover figcaption{opacity:1;transform:none}
@media(hover:none){.art-gallery figcaption{opacity:1;transform:none}}
@media(max-width:680px){.art-gallery,.art-gallery--2{grid-template-columns:1fr}.art-gallery figure{aspect-ratio:16/9}}

/* FACTS */
.facts{margin:clamp(36px,4vw,52px) 0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,18px)}
.fact{background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);padding:clamp(18px,2.2vw,26px);display:flex;flex-direction:column;gap:8px}
.fact .fk{font-size:12px;color:var(--muted);letter-spacing:.04em}
.fact .fv{font-size:clamp(17px,2vw,21px);font-weight:600;letter-spacing:-.01em;line-height:1.15}

/* PLACEHOLDER note */
.ph-note{display:flex;gap:12px;align-items:flex-start;background:rgba(231,255,0,.16);border:1px solid rgba(29,29,27,.18);border-radius:var(--r-card);padding:16px 18px;font-size:13.5px;color:#4a4a45;line-height:1.5;margin-top:8px}
.ph-note .pk{font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.05em;color:var(--ink);background:var(--neon);border-radius:999px;padding:4px 10px;flex:none;margin-top:1px}

/* CTA BLOCK */
.cta-sec{padding:clamp(40px,5vw,72px) 0}
.cta-card{background:#EBE8E1;color:var(--ink);border-radius:var(--r);overflow:hidden;
  display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:0}
.cta-copy{padding:clamp(30px,4vw,56px)}
.cta-copy .cta-label{font-size:12px;letter-spacing:.06em;color:var(--muted);font-family:ui-monospace,monospace;margin-bottom:14px}
.cta-copy h2{font-size:clamp(28px,4vw,52px);font-weight:600;letter-spacing:-.025em;line-height:.98;margin-bottom:16px}
.cta-copy p{font-size:15px;color:#4a4a45;max-width:42ch;margin-bottom:26px}
.cta-copy .btn-row .pill--ghost{border-color:var(--line);color:var(--ink)}
.cta-copy .btn-row .pill--ghost:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.cta-visual{position:relative;align-self:stretch;min-height:260px;background:#1d2b27}
.cta-visual::before{content:"";position:absolute;inset:0;background:#a6beb7}
.cta-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);mix-blend-mode:luminosity}
.cta-visual .badge{position:absolute;right:20px;bottom:20px;z-index:2}

/* MORE / RELATED */
.more-sec{padding:clamp(30px,4vw,60px) 0 clamp(50px,6vw,90px)}
.more-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.more-head .sec-label{font-size:13px;letter-spacing:.05em;color:var(--muted);display:flex;align-items:center;gap:10px}
.more-head .sec-label::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--neon);display:inline-block}
.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,22px)}
.mcard{position:relative;border-radius:var(--r-card);overflow:hidden;background:var(--white);
  border:1px solid var(--line);display:flex;flex-direction:column;text-decoration:none;color:var(--ink);
  transition:transform .35s,box-shadow .35s;min-height:240px}
.mcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(29,29,27,.5)}
.mcard-img{height:140px;position:relative;overflow:hidden}
.mcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mcard:hover .mcard-img img{transform:scale(1.05)}
.mcard-cat{position:absolute;top:10px;left:10px;z-index:2;background:var(--bg);font-size:10.5px;letter-spacing:.04em;padding:5px 10px;border-radius:999px}
.mcard-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.mcard-body h3{font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.15}
.mcard-more{font-size:12px;display:inline-flex;align-items:center;gap:7px;border-bottom:1px solid var(--ink);align-self:flex-start;padding-bottom:2px;margin-top:auto;cursor:pointer;transition:gap .25s ease,border-color .2s ease}
.mcard-more:hover{gap:11px}
.mcard-more .arr{display:inline-flex;width:1.05em;height:1.05em}
.mcard-more .arr svg{width:100%;height:100%}

/* FOOTER — identisch zur Main-Page */
.footer{background:var(--ink);color:var(--bg);padding:clamp(50px,6vw,80px) 0 30px}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.footer-logo svg{height:30px;width:auto}
.footer-addr{font-size:13.5px;color:#bdbcb5;line-height:1.7;margin-top:18px}
.footer-col h4{font-size:12px;letter-spacing:.05em;color:#8d8c86;margin-bottom:14px}
.footer-col a{display:block;color:var(--bg);text-decoration:none;font-size:14px;margin-bottom:9px;opacity:.85;transition:opacity .2s}
.footer-col a:hover{opacity:1}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:48px;padding-top:22px;border-top:1px solid rgba(242,240,236,.16);font-size:12.5px;color:#8d8c86}
.footer-bottom a{color:#8d8c86;text-decoration:none;margin-left:18px}
.footer-bottom a:hover{color:var(--bg)}
/* Social-Media-Icons im Footer */
.footer-social{display:flex;gap:10px;margin-top:20px}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(242,240,236,.22);color:#bdbcb5;text-decoration:none;transition:color .2s,border-color .2s,background .2s}
.footer-social a svg{width:19px;height:19px;display:block}
.footer-social a:hover{color:var(--ink);background:var(--neon);border-color:var(--neon)}
.footer-social a:focus-visible{outline:2px solid var(--neon);outline-offset:2px}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}

@media(max-width:900px){
  .nav-links,.nav-cta{display:none}
  .burger{display:flex}
  .mobile-menu{display:none;flex-direction:column;gap:4px;padding:8px clamp(20px,5vw,64px) 20px;background:var(--bg);border-bottom:1px solid var(--line)}
  .mobile-menu.open{display:flex}
  .mobile-menu a{padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:16px}
  .mobile-menu .pill{margin-top:10px;justify-content:center}
  .cta-card{grid-template-columns:1fr}
  .cta-visual{min-height:200px;order:-1}
  .facts{grid-template-columns:1fr}
  .more-grid{grid-template-columns:1fr 1fr}
  .footer-top{grid-template-columns:1fr}
}
@media(max-width:560px){
  .more-grid{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr}
}

/* Editierbares Logo (Kundin-Upload) – gleiche Groesse wie das Standard-SVG */
.nav-logo img{height:100%;width:auto;display:block}
.footer-logo img{height:30px;width:auto;display:block}
