/* exsos Design-System – aus abgenommener Vorschau extrahiert */
/* &#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;
   exsos &#183; Pflegeimmobilien Guide &#8212; Design-Variante v2
   Angelehnt an das exsos Designmanual (Referenz-Website):
   vollfl&#228;chige B&#228;nder, diagonale Schnittkanten, gr&#252;ne
   Vollfl&#228;chen, gro&#223;er Kontakt-CTA, Dark-Green-Footer mit Arc-Mark.
   &#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552;&#9552; */
/* Marken-Tokens (Farben, Radius, Slant, Shadows, Schrift-Stacks) kommen aus
   der Design-System-SSoT (exsos-brand, generierte Datei exsos-tokens.css).
   NIE hier duplizieren – Aenderungen in exsos-brand/tokens.css + sync-brand.py. */
@import url("exsos-tokens.css");

:root{
  /* Projekt-spezifische Tokens (bleiben bewusst im Guide) */
  /* Themenbereiche &#8212; aus der exsos-Familie hergeleitet */
  --p1:#0f9f7e; --p2:#00302f; --p3:#8a6d4b; --p4:#6f9576;
  --maxw:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--sand);color:var(--ink);
  font-family:var(--sans);font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--sans);text-wrap:balance;margin:0;color:var(--forest);
  font-weight:700;letter-spacing:-.01em}
.container{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,5vw,40px)}
.eyebrow{font-size:.74rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--green);margin:0 0 1rem;display:inline-flex;align-items:center;gap:.6rem}
.eyebrow::before{content:"";width:26px;height:2px;background:currentColor}
.btn{display:inline-flex;align-items:center;gap:.55rem;justify-content:center;
  font-family:var(--sans);font-weight:700;font-size:.98rem;padding:.85rem 1.6rem;
  border-radius:999px;cursor:pointer;border:2px solid transparent;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease}
.btn--primary{background:var(--green);color:#fff}
.btn--primary:hover{background:var(--green-deep);transform:translateY(-2px);box-shadow:0 12px 24px -12px var(--green)}
.btn--ghost{background:transparent;border-color:rgba(255,255,255,.7);color:#fff}
.btn--ghost:hover{background:rgba(255,255,255,.14);border-color:#fff;transform:translateY(-2px)}
.btn--outline{background:transparent;border-color:var(--green);color:var(--green-deep)}
.btn--outline:hover{background:var(--green);color:#fff;transform:translateY(-2px)}
.btn--light{background:var(--sand);color:var(--forest)}
.btn--light:hover{transform:translateY(-2px);box-shadow:0 12px 24px -12px rgba(0,0,0,.4)}
.btn--lg{padding:1.02rem 2rem;font-size:1.05rem}
:where(a,button):focus-visible{outline:3px solid var(--green);outline-offset:3px;border-radius:6px}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; NAV &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--sand) 90%,transparent);
  backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--hair)}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;height:72px}
.brand{display:flex;align-items:center;gap:.9rem}
.brand__logo{height:30px;width:auto}
.brand__logo--light{display:none}
.brand__div{width:1px;height:28px;background:var(--hair)}
.brand__label{font-size:.9rem;font-weight:700;letter-spacing:.02em;line-height:1.1;color:var(--forest)}
.brand__label small{display:block;font-size:.64rem;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted)}
.nav__menu{display:flex;align-items:center;gap:1.7rem;list-style:none;margin:0;padding:0}
.nav__menu a:not(.btn){font-size:.95rem;font-weight:600;color:var(--ink);position:relative;padding:.3rem 0}
.nav__menu a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;
  background:var(--green);transition:width .22s ease}
.nav__menu a:not(.btn):hover::after{width:100%}
.nav__toggle{display:none;background:none;border:0;cursor:pointer;padding:8px}
.nav__toggle span{display:block;width:24px;height:2px;background:var(--forest);margin:5px 0}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; HERO (vollfl&#228;chig, KEINE Linien) &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.hero{position:relative;min-height:min(84vh,720px);display:flex;align-items:flex-end;
  background:var(--forest);overflow:hidden}
.hero__photo{position:absolute;inset:0}
.hero__photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
/* weicher Scrim unten-links f&#252;r Lesbarkeit &#8212; kein diagonaler Balken */
.hero__scrim{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(0,48,47,.72) 0%,rgba(0,48,47,.38) 42%,transparent 68%),
  linear-gradient(0deg,rgba(0,48,47,.7) 0%,transparent 46%)}
.hero__in{position:relative;z-index:2;width:100%;padding-bottom:clamp(3rem,7vw,5.5rem)}
.hero__content{max-width:600px;color:var(--sand)}
.hero__eyebrow{color:#a7e6d1}
.hero h1{color:#f6efe2;font-size:clamp(2.4rem,5.2vw,3.9rem);line-height:1.04;font-weight:700;
  letter-spacing:-.015em}
.hero h1 span{color:var(--mint)}
.hero__sub{font-size:clamp(1.05rem,1.7vw,1.25rem);line-height:1.5;color:#e7efe5;
  max-width:40ch;margin:1.3rem 0 2rem;font-weight:400}
.hero__ctas{display:flex;gap:1rem;flex-wrap:wrap}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; ICON-TRIADE (gr&#252;ne Kreise) &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.triad{background:var(--tan);padding:clamp(3rem,6vw,4.5rem) 0}
.triad__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:820px;margin:0 auto}
.triad__item{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}
.triad__circle{width:92px;height:92px;border-radius:50%;background:var(--green);
  display:grid;place-items:center;transition:transform .25s ease}
.triad__item:hover .triad__circle{transform:translateY(-4px)}
.triad__circle svg{width:40px;height:40px;stroke:#fff;fill:none;stroke-width:1.7}
.triad__label{font-weight:700;font-size:1.06rem;color:var(--forest)}
.triad__desc{font-size:.9rem;color:var(--muted);max-width:22ch;margin:-.4rem 0 0}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; FULLBLEED PHOTO BAND &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.photoband{position:relative;height:clamp(320px,44vw,540px);overflow:hidden}
.photoband img{width:100%;height:100%;object-fit:cover}
/* Fotos bleiben volle Rechtecke &#8212; die Diagonale tr&#228;gt das folgende Farbband,
   das per negativem Margin &#252;ber das Foto greift (keine freigelegte HG-Farbe). */
.photoband__tag{position:absolute;left:clamp(20px,5vw,40px);top:clamp(20px,4vw,34px);
  display:inline-flex;align-items:center;gap:.5rem;background:rgba(0,48,47,.55);
  backdrop-filter:blur(6px);color:#eaf3ee;font-size:.8rem;letter-spacing:.04em;
  padding:.45rem .9rem;border-radius:999px}
.photoband__tag img{height:16px;width:auto}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; GR&#220;NE MISSION-BAND (diagonal) &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.mission{position:relative;background:var(--green);color:#f4ede0;
  padding:calc(var(--slant) + clamp(3.5rem,7vw,6rem)) 0 calc(var(--slant) + clamp(3.5rem,7vw,6rem));
  margin-top:calc(var(--slant) * -1);
  clip-path:polygon(0 var(--slant),100% 0,100% calc(100% - var(--slant)),0 100%)}
.mission__mark{width:34px;height:auto;opacity:.9;margin-bottom:1rem}
.mission h2{color:#fff;font-size:clamp(1.7rem,3.4vw,2.55rem);line-height:1.1;max-width:none}
.mission__lead{font-family:var(--serif);font-size:1.22rem;line-height:1.55;
  max-width:66ch;color:#fff;margin:1.1rem 0 0}
.mission__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.6rem,3vw,2.6rem);margin-top:2.4rem}
.mission__cols p{margin:0;font-size:.98rem;line-height:1.6;color:#eef3e6;
  border-top:2px solid rgba(255,255,255,.4);padding-top:1rem}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; SECTION SHELL &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.band{padding:clamp(3.5rem,7vw,6rem) 0}
.band--sand{background:var(--sand)}
.band--tan{background:var(--tan)}
.sec-head{max-width:720px;margin:0 auto 3rem;text-align:center}
.sec-head h2{font-size:clamp(1.9rem,3.6vw,2.7rem);line-height:1.06}
.sec-head p{color:var(--muted);font-family:var(--serif);font-size:1.16rem;margin:1rem 0 0;line-height:1.55}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; PILLARS &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}
.pillar{position:relative;background:var(--surface);border-radius:var(--radius);
  padding:2rem 2rem 1.7rem;box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--hair);
  transition:transform .22s ease,box-shadow .22s ease;display:block}
.pillar::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--pc)}
.pillar:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.pillar__idx{font-weight:700;font-size:.8rem;letter-spacing:.14em;color:var(--pc);opacity:.9}
.pillar__title{font-size:1.4rem;margin:.5rem 0 .6rem;color:var(--forest)}
.pillar__sub{color:var(--ink);font-size:1rem;margin:0 0 .9rem}
.pillar__persona{font-family:var(--serif);font-style:italic;color:var(--muted);font-size:1rem;
  border-top:1px solid var(--hair);padding-top:.9rem;margin:0 0 1.1rem}
.pillar__cta{font-weight:700;font-size:.92rem;color:var(--pc);display:inline-flex;gap:.4rem;align-items:center}
.pillar:hover .pillar__cta{gap:.7rem}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; ARTICLES + EVENTS shared head &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.row-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}
.row-head h2{font-size:clamp(1.7rem,3vw,2.3rem)}
.row-head a{color:var(--green);font-weight:700;font-size:.95rem}
.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.acard{background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
  border:1px solid var(--hair);display:flex;flex-direction:column;transition:transform .22s ease,box-shadow .22s ease}
.acard:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.acard__bar{height:5px;background:var(--pc)}
.acard__body{padding:1.5rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.badge{align-self:flex-start;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:#fff;background:var(--pc);padding:.3rem .6rem;border-radius:6px}
.acard__title{font-size:1.14rem;line-height:1.25;color:var(--forest)}
.acard__meta{margin-top:auto;color:var(--muted);font-size:.85rem;border-top:1px solid var(--hair);padding-top:.9rem}

.events{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}
.ecard{background:var(--surface);border-radius:var(--radius);padding:1.8rem;box-shadow:var(--shadow);
  border:1px solid var(--hair);border-left:5px solid var(--green);display:flex;flex-direction:column;gap:1rem}
.ecard__badge{align-self:flex-start;font-size:.72rem;font-weight:700;
  color:var(--green-deep);background:color-mix(in srgb,var(--green) 15%,transparent);
  padding:.35rem .75rem;border-radius:999px;display:inline-flex;gap:.4rem;align-items:center}
.ecard__title{font-size:1.24rem;line-height:1.22;color:var(--forest)}
.ecard__meta{display:flex;flex-direction:column;gap:.55rem;color:var(--muted);font-size:.95rem}
.ecard__meta span{display:flex;gap:.6rem;align-items:center}
.ecard__meta svg{width:18px;height:18px;stroke:var(--green);fill:none;stroke-width:1.8;flex:none}
.ecard .btn{align-self:flex-start;margin-top:.3rem}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; ERFAHRUNGS-CLAIM (gr&#252;n auf Tan, wie Referenz) &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.claim{background:var(--tan);text-align:center;
  padding:calc(var(--slant) + clamp(3.5rem,7vw,6rem)) 0 clamp(3.5rem,7vw,6rem);
  margin-top:calc(var(--slant) * -1);
  clip-path:polygon(0 var(--slant),100% 0,100% 100%,0 100%)}
.claim h2{color:var(--green-deep);font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.14;max-width:26ch;margin:0 auto}
.claim__sub{max-width:60ch;margin:1.1rem auto 0;color:var(--ink);font-family:var(--serif);
  font-size:1.14rem;line-height:1.55}
.claim__partner{max-width:52ch;margin:2rem auto 0;color:var(--muted);font-size:.95rem;
  border-top:1px solid var(--hair);padding-top:1.3rem;font-variant-numeric:tabular-nums}
.claim__partner strong{color:var(--forest);font-weight:700}
.claim a{display:inline-block;margin-top:1.5rem;color:var(--forest);font-weight:700;font-size:.95rem;
  border-bottom:2px solid var(--green);padding-bottom:2px}
/* exsos-Kennzahlen-Trio */
.exstats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,3vw,2.4rem);
  margin:2.2rem auto .3rem;padding-top:1.9rem;border-top:1px solid var(--hair);max-width:940px}
.exstat{text-align:center}
.exstat__num{font-weight:700;font-size:clamp(1.7rem,3.2vw,2.5rem);color:var(--green-deep);
  line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.exstat__label{font-size:.78rem;letter-spacing:.08em;color:var(--muted);margin-top:.6rem;
  text-transform:uppercase;font-weight:600;line-height:1.3}

/* &#9472;&#9472; Partner-Seite &#9472;&#9472; */
.pagehead{background:var(--forest);color:var(--sand);padding:clamp(2.6rem,6vw,4.2rem) 0 clamp(3rem,6vw,4.6rem)}
.pagehead .eyebrow{color:var(--mint)}
.pagehead h1{color:#fff;font-size:clamp(2rem,4.5vw,3.1rem);line-height:1.05}
.pagehead p{font-family:var(--serif);font-size:clamp(1.05rem,1.8vw,1.28rem);color:#dfeae4;max-width:62ch;margin:1.1rem 0 0;line-height:1.5}
.partners-list{display:flex;flex-direction:column;gap:1.6rem}
.pcard{display:grid;grid-template-columns:210px 1fr;gap:clamp(1.5rem,4vw,2.8rem);align-items:start;
  background:var(--surface);border:1px solid var(--hair);border-radius:var(--radius);
  padding:clamp(1.6rem,3vw,2.3rem);box-shadow:var(--shadow)}
.pcard__logo{display:flex;align-items:center;justify-content:center;min-height:120px;padding:1.4rem;
  background:#fff;border:1px solid var(--hair);border-radius:10px}
.pcard__logo img{max-height:72px;width:auto;object-fit:contain}
.pcard__role{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;background:var(--green);padding:.3rem .65rem;border-radius:6px;margin-bottom:.8rem}
.pcard__role--muted{background:var(--muted)}
.pcard h2{font-size:clamp(1.35rem,2.4vw,1.7rem);color:var(--forest);margin:0 0 .7rem}
.pcard__desc{color:var(--ink);font-size:1.02rem;line-height:1.6;margin:0}
.pcard__stats{display:flex;gap:clamp(1.4rem,4vw,2.6rem);flex-wrap:wrap;
  border-top:1px solid var(--hair);padding-top:1.1rem;margin-top:1.3rem}
.pcard__stat{font-size:.9rem;color:var(--muted);font-variant-numeric:tabular-nums}
.pcard__stat b{display:block;font-size:1.4rem;color:var(--forest);font-weight:700;line-height:1.1;letter-spacing:-.01em}
.pcard__link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.2rem;color:var(--green-deep);
  font-weight:700;font-size:.92rem}
.pcard__link:hover{gap:.7rem}
.pnote{font-size:.82rem;color:var(--muted);font-style:italic;margin:.6rem 0 0}
.pcta{background:var(--tan);text-align:center;padding:clamp(2.6rem,5vw,4rem) 0;margin-top:0}
.pcta h2{color:var(--forest);font-size:clamp(1.5rem,3vw,2.1rem)}
.pcta p{color:var(--muted);font-family:var(--serif);font-size:1.1rem;margin:.8rem auto 1.5rem;max-width:52ch}
@media (max-width:760px){.pcard{grid-template-columns:1fr}.pcard__logo{min-height:96px;max-width:220px}}
/* Themenbereich-Header (farbig) + Themen-Chips */
.pagehead--tb .eyebrow{color:rgba(255,255,255,.92)}
.pagehead--tb p{color:rgba(255,255,255,.94)}
.pillchips{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.7rem}
.pillchip{font-size:.82rem;font-weight:600;padding:.42rem .95rem;border-radius:999px;
  border:1px solid rgba(255,255,255,.45);color:rgba(255,255,255,.92);transition:background .2s ease,color .2s ease}
.pillchip:hover{background:rgba(255,255,255,.18)}
.pillchip--active{background:#fff;color:#00302f;border-color:#fff}

/* &#9472;&#9472; Artikel-Detail &#9472;&#9472; */
.breadcrumb{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.82rem;color:#9fe3cd;margin-bottom:1rem}
.breadcrumb a{color:#9fe3cd}.breadcrumb a:hover{color:#fff}.breadcrumb span{opacity:.55}
.art-badge{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;padding:.32rem .7rem;border-radius:6px;margin-bottom:.9rem}
.pagehead h1.article-title{font-size:clamp(1.9rem,3.8vw,2.9rem)}
.article-desc{font-family:var(--serif);font-size:clamp(1.05rem,1.7vw,1.25rem);color:#e7efe5;max-width:60ch;margin:1rem 0 0;line-height:1.5}
.article-meta{display:flex;gap:1.4rem;flex-wrap:wrap;margin-top:1.4rem;color:#cfe0d8;font-size:.9rem}
.article-wrap{padding:clamp(3rem,6vw,5rem) 0}
.article-content{max-width:72ch;margin:0 auto;font-size:1.08rem;line-height:1.72;color:var(--ink)}
.article-content>*:first-child{margin-top:0}
.article-content h2{font-family:var(--sans);font-size:clamp(1.5rem,2.6vw,2rem);color:var(--forest);margin:2.5rem 0 .9rem;line-height:1.15;letter-spacing:-.01em}
.article-content h3{font-size:1.28rem;color:var(--forest);margin:1.9rem 0 .7rem}
.article-content p{margin:0 0 1.1rem}
.article-content ul,.article-content ol{margin:0 0 1.2rem;padding-left:1.35rem}
.article-content li{margin:.4rem 0}
.article-content a{color:var(--green-deep);text-decoration:underline;text-underline-offset:2px;word-break:break-word}
.article-content strong{color:var(--forest);font-weight:700}
.article-content blockquote{border-left:4px solid var(--green);background:var(--surface-2);margin:1.4rem 0;padding:1rem 1.3rem;border-radius:0 8px 8px 0;font-style:italic}
.article-content table{border-collapse:collapse;width:100%;font-size:.95rem}
.article-content th{background:var(--forest);color:#fff;text-align:left;padding:.7rem .9rem;font-weight:700}
.article-content td{padding:.7rem .9rem;border-bottom:1px solid var(--hair)}
.article-content tr:nth-child(even) td{background:var(--surface-2)}
.tblwrap{overflow-x:auto;margin:1.4rem 0}.tblwrap table{margin:0}

/* &#9472;&#9472; Legal &#9472;&#9472; */
.legal-content{max-width:82ch;margin:0 auto;font-size:1rem;line-height:1.65;color:var(--ink)}
.legal-content>*:first-child{margin-top:0}
.legal-content h2{font-size:1.5rem;color:var(--forest);margin:2.1rem 0 .8rem}
.legal-content h3{font-size:1.2rem;color:var(--forest);margin:1.6rem 0 .6rem}
.legal-content h4{font-size:1.02rem;color:var(--forest);margin:1.2rem 0 .5rem}
.legal-content p{margin:0 0 1rem}
.legal-content a{color:var(--green-deep);text-decoration:underline;word-break:break-word}
.legal-content ul,.legal-content ol{margin:0 0 1rem;padding-left:1.35rem}
.legal-content li{margin:.35rem 0}
.legal-content strong{color:var(--forest)}
.legal-content table{border-collapse:collapse;width:100%;font-size:.88rem}
.legal-content th{background:var(--forest);color:#fff;text-align:left;padding:.55rem .7rem}
.legal-content td{padding:.55rem .7rem;border-bottom:1px solid var(--hair);vertical-align:top}

/* &#9472;&#9472; Kontakt-Formular &#9472;&#9472; */
.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(1.6rem,4vw,2.6rem);align-items:start}
.cform{background:var(--surface);border:1px solid var(--hair);border-radius:var(--radius);padding:clamp(1.6rem,3vw,2.3rem);box-shadow:var(--shadow)}
.cform__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cform label{display:block;font-size:.85rem;font-weight:600;color:var(--forest);margin:.9rem 0 .35rem}
.cform input,.cform textarea{width:100%;font-family:var(--sans);font-size:1rem;padding:.75rem .9rem;border:1px solid var(--hair);border-radius:8px;background:var(--surface-2);color:var(--ink)}
.cform input:focus,.cform textarea:focus{outline:2px solid var(--green);border-color:var(--green)}
.cform__check{display:flex;gap:.6rem;align-items:flex-start;margin-top:1rem;font-size:.88rem;color:var(--muted)}
.cform__note{font-size:.8rem;color:var(--muted);margin-top:1rem;font-style:italic}
.cinfo{display:flex;flex-direction:column;gap:1.3rem}
.cinfo__item h4{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .3rem;font-weight:700}
.cinfo__item p{margin:0;color:var(--ink);line-height:1.5}
.cinfo__item a{color:var(--green-deep);font-weight:600}
@media (max-width:760px){.contact-grid{grid-template-columns:1fr}.cform__row{grid-template-columns:1fr}}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; KONTAKT-CTA (gro&#223;e gr&#252;ne Band, wie Referenz) &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.contact{position:relative;background:var(--green);color:#f4ede0;text-align:center;
  padding:calc(var(--slant) + clamp(3rem,6vw,5rem)) 0 clamp(3rem,6vw,5rem);
  margin-top:calc(var(--slant) * -1);
  clip-path:polygon(0 var(--slant),100% 0,100% 100%,0 100%)}
.contact__eyebrow{color:#eaf6ef;font-size:1.1rem;font-weight:600;margin:0 0 .4rem}
.contact__big{font-size:clamp(2.4rem,6vw,4.4rem);font-weight:700;color:#fff;letter-spacing:-.01em;
  line-height:1.05;margin:.2rem 0 0;font-variant-numeric:tabular-nums}
.contact .btn{margin-top:1.8rem}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; PARTNER &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.partner{background:var(--sand);text-align:center;padding:clamp(3rem,6vw,4.5rem) 0}
.partner__label{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
  font-weight:600;margin:0 0 1.8rem}
.partner__logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(2rem,6vw,4.5rem)}
.partner__logos img{height:44px;width:auto;object-fit:contain;display:block}
/* Einheitliche Silhouetten, pro Theme umgef&#228;rbt (transparente PNGs) */
.partner__logos a,.partner__logos span{display:inline-flex;filter:brightness(0) opacity(.5);
  transition:filter .3s ease,transform .25s ease}
.partner__logos a:hover{filter:brightness(0) opacity(1);transform:translateY(-3px)}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; FOOTER (Dark Green + Arc-Mark, wie Referenz) &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
.footer{position:relative;background:var(--forest);color:#dfe9e4;
  padding:clamp(3.5rem,7vw,5rem) 0 2.2rem;overflow:hidden}
.footer__mark{position:absolute;left:-40px;bottom:-40px;width:min(300px,40vw);opacity:.14;pointer-events:none}
.footer__in{position:relative;z-index:1;display:flex;justify-content:space-between;gap:2.5rem;flex-wrap:wrap}
.footer__brand{max-width:340px}
.footer__logo{height:38px;margin-bottom:1.1rem}
.footer__claim{font-family:var(--serif);font-size:1.3rem;line-height:1.4;margin:0;color:#fff}
.footer__note{font-size:.85rem;color:#a9c4bb;margin:.9rem 0 0}
.footer__cols{display:flex;gap:clamp(2rem,5vw,4rem);flex-wrap:wrap}
.footer__col h4{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:#7fb3a4;margin:0 0 .9rem;font-weight:700}
.footer__col a{display:block;color:#dfe9e4;font-size:.95rem;padding:.28rem 0;opacity:.9}
.footer__col a:hover{opacity:1;color:#fff}
.footer__bottom{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;
  gap:1rem;flex-wrap:wrap;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.16);
  font-size:.84rem;color:#a9c4bb}
.footer__bottom nav{display:flex;gap:1.4rem;flex-wrap:wrap}
/* Blau (Pflegeimmoguide-Ausnahme) als feiner Akzentstreifen im Footer */
.footer__accent{position:absolute;left:0;right:0;top:0;height:4px;background:var(--blue);z-index:2}

/* demo bar */
.demo{background:var(--forest);color:#dfe9e4;font-size:.82rem;text-align:center;padding:.6rem 1rem}
.demo b{color:var(--mint)}

/* reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}}

/* &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; RESPONSIVE &#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472;&#9472; */
@media (max-width:900px){
  :root{--slant:5vw}
  .nav__menu{position:fixed;inset:72px 0 auto 0;background:var(--sand);flex-direction:column;
    align-items:stretch;gap:0;padding:1rem clamp(20px,5vw,40px) 1.6rem;border-bottom:1px solid var(--hair);
    transform:translateY(-140%);transition:transform .3s ease;box-shadow:var(--shadow)}
  .nav__menu.open{transform:none}
  .nav__menu li{padding:.5rem 0;border-bottom:1px solid var(--hair)}
  .nav__menu .btn{margin-top:.8rem}
  .nav__toggle{display:block}
  .triad__grid{grid-template-columns:1fr;gap:2.4rem}
  .mission__cols{grid-template-columns:1fr}
  .pillars,.articles,.events{grid-template-columns:1fr}
}
@media (max-width:560px){.brand__label small{display:none}.exstats{grid-template-columns:1fr;gap:1.6rem}}


/* ── exsos-Wortmarke nie in Versalien (CI) ── */
.nocaps{text-transform:none !important;letter-spacing:0}

/* ── Cookie-Banner im exsos-Design (überschreibt cookie-banner.css) ── */
.cookie-banner{background:var(--forest);color:#dfe9e4;font-family:var(--sans);
  border-top:4px solid var(--green);box-shadow:0 -8px 30px rgba(0,48,47,.28)}
.cookie-banner__title{font-family:var(--sans);font-weight:700;color:#fff;letter-spacing:-.01em}
.cookie-banner__text{color:#c9ddd5}
.cookie-banner__text a{color:var(--mint);text-decoration:underline}
.cookie-banner .btn--outline{border-color:rgba(255,255,255,.7);color:#fff;background:transparent}
.cookie-banner .btn--outline:hover{background:rgba(255,255,255,.14);color:#fff}
