/* Seitenspezifische Regeln für team-detail — aus dem Prototyp team-martin-weissensteiner.html.
   Die Fachbereichsfarbe kommt aus dem Router, nicht von hier. */

.nav-item::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}
.nav-item:focus-within>.dropdown{opacity:1;pointer-events:all;transform:translateY(0)}
/* LOCATIONS */
.location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:960px){
  .nav-main,.nav-right{display:none!important}
  .hamburger{display:flex!important}
  .hero{padding:56px 0 44px}
  .ansatz-grid,.warum-intro-grid{grid-template-columns:1fr}
  .card-grid,.subtherapy-grid{grid-template-columns:repeat(2,1fr)}
  .warum-grid{grid-template-columns:1fr}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .intensiv-band{grid-template-columns:1fr}
  .diag-grid{grid-template-columns:repeat(3,1fr)}
  .price-grid{grid-template-columns:1fr}
  .testimonial-grid,.location-grid{grid-template-columns:1fr}
  /* Fußzeile: die Regeln für kleine Schirme stehen in site.css.
     Hier standen sie doppelt und haben die dortigen überschrieben, weil
     diese Datei später geladen wird — dadurch sah die Fußzeile auf jeder
     Unterseite anders aus als auf der Startseite, die keine eigene
     Datei hat. */
}
/* ===== PERSONENSEITE ===== */
.per-hero{display:grid;grid-template-columns:230px 1fr;gap:38px;align-items:center}
.per-photo{position:relative;overflow:visible}
.per-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:48% 52% 45% 55%/50% 42% 58% 50%;
               border:5px solid rgba(255,255,255,.5)}
.per-photo::before{content:'';position:absolute;width:78px;height:78px;border-radius:50%;background:var(--gold-main);
                   bottom:-12px;right:-10px;z-index:-1;opacity:.8}
.per-fach{display:inline-flex;align-items:center;gap:8px;background:var(--cat-main);color:var(--green-deepest);
          font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:7px 16px;border-radius:20px}
.per-hero h1{margin:14px 0 8px}
.per-role{font-size:17px;color:rgba(255,255,255,.82);font-weight:600}
.per-motto{margin-top:18px;padding-left:18px;border-left:4px solid var(--gold-main);
           font-family:'Playfair Display',serif;font-style:italic;font-size:21px;color:var(--gold-main);line-height:1.45}
/* two-column body */
.per-grid{display:grid;grid-template-columns:1fr 340px;gap:34px;align-items:start}
.per-main > section{margin-bottom:32px}
.per-main h2{font-size:24px;margin-bottom:14px;position:relative;padding-left:16px}
.per-main h2::before{content:'';position:absolute;left:0;top:6px;bottom:6px;width:5px;border-radius:3px;background:var(--cat-main)}
.per-main p{color:var(--text-mid);font-size:14.5px;line-height:1.75}
/* education */
.edu-row{position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;background:var(--white);
         border:1px solid var(--cream-border);border-left:5px solid var(--cat-main);border-radius:14px;padding:18px 20px}
.edu-year{font-family:'Playfair Display',serif;font-weight:700;font-size:16px;color:var(--cat-dark);white-space:nowrap;
          background:var(--cat-light);padding:6px 13px;border-radius:20px}
.edu-row b{display:block;font-size:15.5px;color:var(--green-deepest);line-height:1.35}
.wb-label{font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);margin:22px 0 10px}
.wb-tags{display:flex;flex-wrap:wrap;gap:8px}
.wb-tag{background:var(--white);border:1px solid var(--cream-border);border-radius:20px;padding:7px 14px;
        font-size:13px;color:var(--text-mid);transition:all .2s}
.wb-tag:hover{border-color:var(--cat-main);color:var(--cat-deeptext);background:var(--cat-light)}
/* specialisation */
.spez-row{display:flex;flex-wrap:wrap;gap:10px}
.spez{display:inline-flex;align-items:center;gap:8px;background:var(--cat-light);border:1.5px solid var(--cat-main);
      color:var(--cat-deeptext);border-radius:20px;padding:9px 16px;font-size:14px;font-weight:700}
/* sidebar */
.per-side{position:sticky;top:calc(var(--header-h) + 20px);display:flex;flex-direction:column;gap:16px}
.side-card{position:relative;background:var(--white);border:1px solid var(--cream-border);border-radius:18px;padding:22px 22px}
.side-card h3{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}
.side-list{display:flex;flex-direction:column;gap:9px}
.side-pill{display:inline-flex;align-items:center;gap:9px;background:var(--cream-bg);border:1px solid var(--cream-border);
           border-radius:14px;padding:11px 14px;font-size:14px;font-weight:600;color:var(--green-deepest);transition:all .22s}
.side-pill:hover{border-color:var(--cat-main);background:var(--cat-light);color:var(--cat-deeptext)}
.side-pill.fach{background:var(--cat-light);border-color:var(--cat-main);color:var(--cat-deeptext)}
.side-pill .dot{width:10px;height:10px;border-radius:50%;background:var(--cat-main);flex-shrink:0}
.side-cta{background:linear-gradient(135deg,var(--gold-light) 0%,var(--white) 60%);border:2px solid var(--gold-main);
          border-radius:18px;padding:24px 22px;position:relative;overflow:visible;box-shadow:0 12px 30px rgba(196,154,40,.15)}
.side-cta h3{color:var(--gold-deeptext)}
.side-cta p{font-size:14px;color:var(--text-mid);line-height:1.55;margin-bottom:14px}
.side-cta .btn{width:100%}
.back-link{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;color:var(--cat-dark);
           border:1.5px solid var(--cream-border);background:var(--white);border-radius:22px;padding:11px 18px;
           min-height:46px;transition:all .22s}
.back-link:hover{border-color:var(--cat-main);background:var(--cat-light);gap:11px}
@media(max-width:900px){
  .per-hero{grid-template-columns:1fr;gap:24px;text-align:center}
  .per-photo{max-width:200px;margin:0 auto}
  .per-motto{text-align:left}
  .per-grid{grid-template-columns:1fr}
  .per-side{position:static}
}
/* ── „Aus dem Team von …" ────────────────────────────────────────────────────
   Steht im Kopf der Seite, unter Name und Zitat. Weiss auf dem farbigen Kopf,
   damit es sich als Hinweis abhebt und nicht als weitere Zeile des Zitats
   gelesen wird. Der linke Balken in der Farbe der Fachrichtung bindet es an
   die Seite.

   Ohne eingetragene Leitung gibt es das Band gar nicht — keine leere Zeile und
   kein „keine Zuordnung". */
/* Der Balken traegt die Farbe der Fachrichtung dieser Person: index.php setzt
   --cat-* je Seite aus fachrichtung_css_vars(). Ein fester Farbwert waere auf
   einer Logopaedie-Seite blau. */
.teamband{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;
          max-width:430px;background:var(--white);border-radius:12px;
          border-left:5px solid var(--cat-main);
          padding:9px 15px;text-decoration:none;color:var(--text-primary);
          box-shadow:0 6px 18px -8px rgba(0,0,0,.35);transition:transform .2s}
.teamband:hover{transform:translateY(-2px)}
.teamband .av{width:40px;height:40px;flex:0 0 40px;border-radius:50%;object-fit:cover;
              display:flex;align-items:center;justify-content:center;
              background:var(--cream-bg);font-family:'Playfair Display',serif;
              font-size:15px;font-weight:700;color:var(--text-mid)}
.teamband .txt{min-width:0}
.teamband .txt small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.09em;
                     text-transform:uppercase;color:var(--text-muted)}
.teamband .txt b{font-family:'Playfair Display',serif;font-size:16px;line-height:1.25}
.teamband .pfeil{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--cat-deeptext)}
@media (max-width:560px){
  .teamband{max-width:none}
  .teamband .pfeil{margin-left:0;width:100%}
}

/* ── „Mein Team" auf der Seite der Leitung ───────────────────────────────── */
.meinteam{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:11px}
.mt-karte{display:flex;align-items:center;gap:11px;min-width:0;padding:9px 12px;
          background:var(--white);border:1px solid var(--cream-border);border-radius:14px;
          text-decoration:none;color:var(--text-primary);transition:border-color .2s,transform .2s}
.mt-karte:hover{border-color:var(--cat-main);transform:translateY(-2px)}
.mt-karte img,.mt-ph{width:44px;height:44px;flex:0 0 44px;border-radius:50%;object-fit:cover}
.mt-ph{display:flex;align-items:center;justify-content:center;background:var(--cat-light);
       font-family:'Playfair Display',serif;font-size:15px;font-weight:700;color:var(--cat-deeptext)}
.mt-text{min-width:0}
.mt-text b{display:block;font-size:14px;line-height:1.25}
.mt-text small{font-size:11.5px;color:var(--text-muted)}
