/* ==========================================================
   Unterseiten: Bereichsseite, Kurs, Wissen, Artikel, Formulare, Inhalte aus dem Editor
   ========================================================== */

.crumbs{margin:40px 0 0;font-size:13px;color:var(--muted)}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--ink)}
.crumbs span[aria-hidden]{margin:0 6px;color:var(--line-2)}

/* Bereichsseite */
.sec .ss{margin-top:24px}
.sec-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:end;padding-top:72px}
.sec-hero .pt-lead{margin-top:0}
.sec-hero .b-book{margin-top:28px}

/* Termine */
.dt{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.dt li{display:grid;grid-template-columns:200px minmax(0,1fr) 140px 170px;gap:12px 32px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}
.dt li > .b-book{justify-self:end;text-align:center}
.dt-when{font-family:var(--serif);font-size:20px}
.dt-what strong{display:block;font-weight:500}
.dt-what span{display:block;font-size:14px;color:#4a4a4a}
.dt-status{font-size:13px;color:var(--muted)}

/* Angebotsgruppen */
.offer-bul{margin:0;padding:0;list-style:none;font-size:13px;color:#4a4a4a}
.offer-bul li{padding:3px 0 3px 16px;position:relative}
.offer-bul li::before{content:'–';position:absolute;left:0;color:var(--muted)}

/* Kurs */
.course-head{padding-top:24px;max-width:860px}
.course-head .pt-h1{margin-top:10px}
.course-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:64px;align-items:start;margin-top:56px}
.cg{margin:0}
.cg-main{aspect-ratio:4/3;background:var(--tone);display:flex;align-items:center;justify-content:center;overflow:hidden}
.cg-main img{max-width:92%;max-height:92%;width:auto;height:auto;display:block}
.cg figcaption{margin-top:10px;font-size:13px;color:var(--muted)}
.cg-thumbs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-top:14px}
.cg-th{aspect-ratio:1/1;background:var(--tone);padding:6px;display:flex;align-items:center;justify-content:center;border:1px solid transparent}
.cg-th[aria-pressed="true"]{border-color:var(--ink)}
.cg-th img{max-width:100%;max-height:100%;width:auto;height:auto;display:block}
.course-content{margin-top:72px}
.card{position:sticky;top:calc(var(--hdr-stuck) + var(--wp-admin--admin-bar--height,0px) + 24px);padding:32px 30px 26px}
.card-date{margin:10px 0 0;font-family:var(--serif);font-size:26px;line-height:1.2}
.card-sub{margin:4px 0 0;font-size:14px;color:#4a4a4a}
.card-facts{margin-top:20px;padding-top:20px;border-top:1px solid #e2e2e0;grid-template-columns:110px minmax(0,1fr)}
.card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:0 22px;margin-top:16px}
.card-note{margin:16px 0 0;font-size:13px;color:var(--muted)}

/* Inhalte aus dem Editor (Bereichs-, Kurs-, Portraitseiten) */
.pt-content > h3{margin:48px 0 10px;font-family:var(--serif);font-weight:400;font-size:28px}
.pt-content > ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.pt-content > ul > li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}
.pt-content .wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:40px;margin:0}
.pt-content .wp-block-column h3{margin:0 0 8px;font-family:var(--serif);font-weight:400;font-size:26px}
.pt-content .wp-block-column p{margin:0;font-size:14px;color:#4a4a4a}
.pt-content .wp-block-quote{margin:0;padding:0;border:0}
.pt-content .wp-block-quote p{margin:0;font-family:var(--serif);font-size:24px;line-height:1.45;max-width:36em}
.pt-content .wp-block-quote cite{display:block;margin-top:12px;font-style:normal;font-size:13px;color:var(--muted)}
.pt-content .wp-block-quote + .wp-block-quote{margin-top:48px}
.pt-content .facts-table,.pt-content table{width:100%;border-collapse:collapse;font-size:15px}
.pt-content td,.pt-content th{padding:12px 16px 12px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.pt-content td:first-child{color:var(--muted);width:240px}
.pt-content .wp-block-table{margin:0}
.pt-content .anfrage-box{padding:44px 40px}

/* Formular */
.mz-form{max-width:760px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.fld{margin:0 0 18px}
.fld.full{grid-column:1 / -1}
.fld label{display:block;margin-bottom:6px;font-size:13px;color:#4a4a4a}
.fld input,.fld select,.fld textarea{width:100%;font:inherit;font-size:15px;padding:12px 14px;border:1px solid #c4c4c2;border-radius:0;background:#fff;color:var(--ink)}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:1px solid var(--ink);outline-offset:0;border-color:var(--ink)}
.form-note{font-size:13px;color:var(--muted)}
.form-note a{border-bottom:1px solid var(--line-2)}
.form-ok,.form-err{padding:14px 18px;margin:0 0 24px;font-size:14px}
.form-ok{background:#eef3ec}
.form-err{background:#f6ecea}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Karte */
.map{background:var(--tone);padding:32px;font-size:14px;color:#4a4a4a}
.map p{margin:0 0 14px}
.map [data-map-load]{margin:4px 0 20px}
.map p:last-child{margin-bottom:0}
.map a{border-bottom:1px solid var(--line-2)}
.map iframe{display:block;width:100%;height:420px;border:0}
.map.is-loaded{padding:0}

/* Wissen */
.know .sec-hero{padding-top:40px}
.feat{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px;align-items:center;margin-top:96px;padding:40px}
.feat:hover{color:var(--ink)}
.feat-img{display:block;background:var(--tone);aspect-ratio:4/3;overflow:hidden}
.feat-img img{width:100%;height:100%;object-fit:cover;display:block}
.feat-txt{display:block}
.feat-title{display:block;margin:10px 0 0;font-family:var(--serif);font-size:40px;line-height:1.1}
.feat-ex{display:block;margin-top:14px;color:#4a4a4a}
.feat-more{display:block;margin-top:20px;font-size:13px}
.terms{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.terms li{border:1px solid var(--line-2);padding:6px 14px;font-size:14px}
.terms a{display:block}
.arts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.arts-item{display:block;padding:24px 0;border-top:1px solid var(--ink)}
.arts-title{display:block;margin-top:8px;font-family:var(--serif);font-size:24px;line-height:1.2}
.arts-ex{display:block;margin-top:8px;font-size:14px;color:#4a4a4a}
.jfilter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.jfilter button{min-height:40px;padding:0 14px;border:1px solid var(--line-2);font-size:13px}
.jfilter button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.jlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.jlist li{border-bottom:1px solid var(--line)}
.jlist li[hidden]{display:none}
.jlist a{display:grid;grid-template-columns:140px 170px minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:18px 0}
.jlist time,.jl-cat{font-size:13px;color:var(--muted)}
.jl-title{display:block;font-family:var(--serif);font-size:22px;line-height:1.2}
.jl-ex{display:block;margin-top:4px;font-size:14px;color:#4a4a4a}

/* Artikel */
.art-head{max-width:860px;padding-top:24px}
.art-kicker{margin:0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.art-h1{margin:12px 0 0;font-family:var(--serif);font-weight:400;font-size:clamp(36px,4.2vw,56px);line-height:1.12;text-wrap:balance}
.art-lead{margin:24px 0 0;font-family:var(--serif);font-size:23px;line-height:1.45;color:var(--ink-2)}
.art-by{margin:20px 0 0;font-size:13px;color:var(--muted)}
.art-by a{border-bottom:1px solid var(--line-2)}
.art-hero{margin:56px 0 0}
.art-hero img{width:100%;height:auto;display:block}
.art-hero figcaption{margin-top:10px;font-size:13px;color:var(--muted)}
.art-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;align-items:start;margin-top:72px}
.art-toc{position:sticky;top:calc(var(--hdr-stuck) + var(--wp-admin--admin-bar--height,0px) + 24px);font-size:14px}
.art-toc ol{margin:12px 0 0;padding:0;list-style:none;counter-reset:t}
.art-toc li{counter-increment:t;padding:7px 0;border-top:1px solid #eeeeec}
.art-toc li::before{content:counter(t) ". ";color:#9a9a9a}
.art-body .art-content:only-child{grid-column:1 / -1;max-width:760px}
.art-content{max-width:760px}
.art-content h2{scroll-margin-top:calc(var(--hdr-stuck) + var(--wp-admin--admin-bar--height,0px) + 24px)}
.art-content .fakten{padding:32px 34px;margin:40px 0}
.art-content .fakten h3,.art-content .fakten h2{margin-top:0}
.art-content .fakten .wp-block-table{margin:16px 0 0}
.art-content .fakten .wp-block-group__inner-container > :last-child,.art-content .fakten > :last-child{margin-bottom:0}
.art-content table{width:100%;border-collapse:collapse;font-size:15px;margin:24px 0}
.art-content th,.art-content td{padding:12px 16px 12px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.art-content th{font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.art-content .wp-block-details{border-top:1px solid var(--line);padding:16px 0}
.art-content .wp-block-details summary{font-family:var(--serif);font-size:21px;cursor:pointer}
.art-author{max-width:760px;margin:96px 0 0 312px;padding-top:24px;border-top:1px solid var(--line);font-size:14px;color:#4a4a4a}

/* Allgemeine Inhaltsseiten (Über mich, Kontakt, Rechtliches) */
.prose table{width:100%;border-collapse:collapse;font-size:15px;margin:16px 0 40px}
.prose td,.prose th{padding:10px 16px 10px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.prose td:first-child{color:var(--muted);white-space:nowrap;width:110px}
.prose thead ~ tbody td:first-child{white-space:normal;width:auto} /* Tabellen mit Kopfzeile (z. B. AGB): erste Spalte darf umbrechen */
@media (max-width:600px){.prose thead th,.prose thead ~ tbody td{padding-right:10px;font-size:14px;hyphens:auto}}
.prose .wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px}
.prose .wp-block-image img{height:auto}
.prose .wp-block-column > :first-child{margin-top:0} /* Bild neben Text: oben bündig */
.prose .wp-block-column > :last-child{margin-bottom:0}
.page-wide .prose{max-width:none}
.page-wide .prose > *{max-width:760px}
.page-wide .prose > .wp-block-columns,.page-wide .prose > .wp-block-image.alignwide{max-width:none}

@media (max-width:900px){
  .sec-hero{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:48px}
  .dt li{grid-template-columns:minmax(0,1fr);gap:4px}
  .dt li > .b-book{justify-self:start;margin-top:8px}
  .course-grid{grid-template-columns:minmax(0,1fr);gap:40px}
  .card{position:static}
  .course-main{display:contents}
  .course-main > .cg{order:1}
  .course-grid > .card{order:2}
  .course-main > .course-content{order:3}
  .cg-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pt-content > ul{grid-template-columns:minmax(0,1fr)}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .feat{grid-template-columns:minmax(0,1fr);padding:24px;gap:24px;margin-top:56px}
  .art-content .fakten{padding:20px}
  .feat-title{font-size:30px}
  .arts{grid-template-columns:minmax(0,1fr)}
  .jlist a{grid-template-columns:minmax(0,1fr) auto;gap:4px 16px}
  .jlist time{grid-column:1}
  .jl-cat{display:none}
  .art-body{grid-template-columns:minmax(0,1fr);gap:32px;margin-top:48px}
  .art-toc{position:static}
  .art-author{margin-left:0}
  .pt-content td:first-child{width:auto}
}

/* Tabellen aus dem Editor: nur feine Linien zwischen den Zeilen */
.wp-block-table table{border:0;border-collapse:collapse}
.wp-block-table td,.wp-block-table th{border:0;border-bottom:1px solid var(--line)}
.wp-block-table thead{border-bottom:1px solid var(--ink)}
.wp-block-table thead th{border-bottom:0}
.wp-block-table figcaption{font-size:13px;color:var(--muted)}
/* Aufklappbare Fragen überall gleich */
.wp-block-details summary{list-style:none;display:flex;justify-content:space-between;gap:16px;cursor:pointer}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:'+';font-family:var(--sans);font-weight:300}
.wp-block-details[open] summary::after{content:'−'}
.art-content .wp-block-details p{margin:10px 0 0}

/* Videos aus dem Journal (oft Hochformat): nicht höher als das Fenster */
.wp-block-video{margin:40px 0}
.wp-block-video video{display:block;width:auto;max-width:100%;max-height:80vh;margin:0 auto;background:var(--tone)}
