.course-guide{max-width:1176px;margin:0 auto 90px;padding:40px 32px;border-top:1px solid var(--line)}
.course-guide h2{max-width:800px;font-size:clamp(32px,4vw,48px);line-height:1.12;margin:0 0 24px}
.course-guide h3{font-size:19px;line-height:1.35;margin:0 0 14px}
.course-guide p{color:var(--muted);font-size:15px;line-height:1.75;margin:0 0 24px;max-width:850px}
.course-guide-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;margin:32px 0}
.course-guide-links{display:flex;flex-wrap:wrap;gap:12px 20px}
.course-guide a{text-decoration:underline;text-underline-offset:4px}
.course-guide a:focus-visible,.course-guide summary:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.course-guide details{border-top:1px solid var(--line);padding:20px 0}
.course-guide summary{cursor:pointer;font-weight:700;line-height:1.5}
.course-guide details p{margin:18px 0 0}
@media(max-width:760px){.course-guide{padding:32px 20px;margin-bottom:60px}.course-guide-columns{grid-template-columns:1fr;gap:28px}}

.provider-directory{max-width:1200px;margin:72px auto;padding:0 24px}.provider-directory-heading{margin-bottom:26px}.provider-directory-heading h2{font-size:clamp(2rem,4vw,3rem);margin:10px 0}.provider-directory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:22px}.provider-directory-card{border:1px solid #e1e5de;border-radius:16px;overflow:hidden;background:#fff}.provider-directory-cover,.provider-directory-placeholder{width:100%;height:190px;object-fit:cover}.provider-directory-placeholder{display:flex;align-items:center;justify-content:center;background:#eaf0e9;color:#345449}.provider-directory-content{padding:22px}.provider-directory-content h3{margin:0 0 8px}.provider-directory-meta{font-size:.9rem;opacity:.7}.provider-directory-details{margin-top:14px}.provider-directory-details summary{cursor:pointer;font-weight:700}.provider-directory-details a{display:inline-block;margin-top:12px}.provider-directory-photos{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.provider-directory-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}

.course-extra-filters{max-width:1200px;margin:0 auto 24px;padding:18px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:24px;background:#f5f7f3;border-radius:14px}.course-extra-filters label{display:flex;align-items:center;gap:10px;font-weight:600;flex-wrap:wrap}.course-extra-filters input[type=checkbox]{width:20px;height:20px;accent-color:#37614a}.course-extra-filters input[type=range]{width:min(280px,60vw);accent-color:#37614a;cursor:pointer}.course-extra-filters output{min-width:95px;font-weight:700}

/* Zurueckhaltende Zusatzfilter passend zu den bestehenden Filterchips */
.course-extra-filters{background:transparent;border:0;border-top:1px solid #e6e9e3;border-radius:0;padding:14px 0;margin:16px auto 24px;gap:28px;box-shadow:none}
.course-extra-filters label{font-size:13px;font-weight:500;color:var(--muted,#65736a);gap:9px}
.course-extra-filters input[type=checkbox]{width:16px;height:16px;accent-color:#52725c}
.course-extra-filters input[type=range]{width:min(180px,40vw);height:4px;accent-color:#52725c}
.course-extra-filters output{font-size:13px;font-weight:600;min-width:85px;color:inherit}
@media(max-width:760px){.course-extra-filters{margin:16px 20px 20px;gap:14px}}

/* Kompakte, getrennte Anbieterprofile: Banner, Logo und Galerie */
.provider-directory-grid{align-items:start}
.provider-directory-card{align-self:start;min-height:0;box-shadow:0 8px 26px rgba(25,52,45,.045)}
.provider-directory-banner{position:relative;height:166px;overflow:hidden;background:#e5ece0}
.provider-directory-banner .provider-directory-cover{display:block;width:100%;height:100%;object-fit:cover}
.provider-directory-banner.is-default{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 83% 4%,#d7f277 0 13%,transparent 45%),linear-gradient(145deg,#e4ede0,#f7f6ef 65%,#dfe9d8)}
.provider-directory-banner.is-default:before{content:"";position:absolute;left:-52px;bottom:-77px;border:1px solid rgba(25,52,45,.12);width:230px;height:170px;border-radius:50%;transform:rotate(-15deg)
  box-shadow:0 0 0 27px rgba(25,52,45,.035),0 0 0 55px rgba(25,52,45,.025);
}
.provider-directory-default-mark{display:flex;align-items:center;gap:12px;position:relative;z-index:1;background:rgba(255,254,250,.83);border:1px solid rgba(25,52,45,.09);border-radius:15px;padding:11px 20px}
.provider-directory-default-mark img{display:block;width:42px;height:42px;object-fit:contain}
.provider-directory-default-wordmark{font-family:"DM Sans",sans-serif;font-size:26px;letter-spacing:-.06em;font-weight:700;color:#19342d}
.provider-directory-content{padding:20px 22px 22px}
.provider-directory-content h3{font-size:21px;line-height:1.2;margin:4px 0 8px;font-family:"Playfair Display",Georgia,serif;letter-spacing:-.025em;color:#19342d}
.provider-directory-meta{font-size:12px;line-height:1.5;color:#61736c;opacity:1;margin:0}
.provider-directory-logo{display:block;width:66px;height:66px;object-fit:contain;border:1px solid #e4e9df;border-radius:12px;background:#fffefa;padding:6px;margin:0 0 12px}
.provider-directory-details{margin-top:18px;border-top:1px solid #e4e9df;padding-top:14px}
.provider-directory-details summary{display:list-item;list-style-position:inside;color:#19342d;font-weight:700;cursor:pointer}
.provider-directory-details[open] summary{margin-bottom:18px}
.provider-directory-details h4{font-family:"DM Sans",sans-serif;font-size:13px;font-weight:700;letter-spacing:0;margin:17px 0 8px}
.provider-directory-details p{font-size:13px;line-height:1.65;color:#61736c;overflow-wrap:anywhere;margin:0 0 12px}
.provider-directory-details a{font-size:13px;color:#19342d;text-decoration:underline;text-underline-offset:3px}
.provider-directory-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:8px}
.provider-directory-photos img{border-radius:8px;object-fit:cover;width:100%;aspect-ratio:4/3}
@media(max-width:650px){.provider-directory-banner{height:152px}.provider-directory-content{padding:18px}.provider-directory-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Render the approved banner artwork unchanged instead of the CSS placeholder. */
.provider-directory-banner.is-default{display:block;background:transparent}
.provider-directory-banner.is-default::before{content:none}
.provider-directory-banner.is-default .provider-directory-cover{display:block;width:100%;height:100%;object-fit:cover}

/* Dezenter Hover-Effekt für die Karten unter «Kursanbieter entdecken». */
.provider-directory-card{
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
  will-change:transform;
}
@media (hover:hover) and (pointer:fine){
  .provider-directory-card:hover{
    transform:translateY(-5px);
    border-color:#b7c9b7;
    box-shadow:0 16px 36px rgba(25,52,45,.13);
  }
}
.provider-directory-card:focus-within{
  border-color:#b7c9b7;
  box-shadow:0 16px 36px rgba(25,52,45,.13);
}
@media (prefers-reduced-motion:reduce){
  .provider-directory-card{transition:none}
  .provider-directory-card:hover{transform:none}
}

/* Gut sichtbarer Profil-Button innerhalb jeder Anbieterkarte. */
.provider-directory-content .provider-directory-profile-link{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:18px;padding:11px 16px;border-radius:999px;background:#19342d;color:#fff;text-decoration:none;font-size:13px;font-weight:700;transition:background .2s ease,transform .2s ease}
.provider-directory-content .provider-directory-profile-link:hover{background:#2c5745;transform:translateY(-2px)}
.provider-directory-content .provider-directory-profile-link:focus-visible{outline:3px solid #ed8d59;outline-offset:3px}

/* Anbieterkarte: Logo und Titel gut lesbar auf dem Banner. */
.provider-directory-banner{height:205px;isolation:isolate}
.provider-directory-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,34,24,0) 14%,rgba(12,34,24,.86) 100%);z-index:0;pointer-events:none}
.provider-directory-banner .provider-directory-identity{position:absolute;left:18px;right:18px;bottom:17px;z-index:2;display:flex;align-items:center;gap:12px;min-width:0}
.provider-directory-banner .provider-directory-logo{width:61px;height:61px;flex:none;box-sizing:border-box;border:3px solid #fff;border-radius:50%;padding:0;margin:0;object-fit:cover;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.2)}
.provider-directory-banner .provider-directory-logo-fallback{display:grid;place-items:center;background:#e2edde;color:#19342d;font-size:26px;font-weight:700}
.provider-directory-heading-overlay{min-width:0}
.provider-directory-heading-overlay h3{margin:0 0 3px;font-family:"Playfair Display",Georgia,serif;font-size:22px;line-height:1.1;overflow-wrap:anywhere}
.provider-directory-heading-overlay h3 a{color:#fff;text-decoration:none}
.provider-directory-heading-overlay h3 a:hover{text-decoration:underline}
.provider-directory-heading-overlay .provider-directory-meta{color:#f3f5ee;opacity:1;font-size:12px;margin:0}
.provider-directory-location{font-size:12px;color:#61736c;margin:0 0 6px}

/* Alle Kursanbieter ansehen */
.provider-directory-more{text-align:center;margin:32px auto 0}
.provider-directory-more-button{display:inline-flex;justify-content:center;align-items:center;gap:14px;padding:17px 34px;min-height:54px;box-sizing:border-box;border-radius:999px;background:#19342d;color:#fff;text-decoration:none;font-size:15px;font-weight:700;box-shadow:0 8px 20px rgba(25,52,45,.13);transition:transform .2s ease,background .2s ease}
.provider-directory-more-button:hover{background:#2e5947;transform:translateY(-2px)}
.provider-directory-more-button:focus-visible{outline:3px solid #ed8d59;outline-offset:4px}
.provider-directory-all{min-height:55vh;padding-top:48px}
@media(max-width:600px){.provider-directory-more-button{width:100%;max-width:390px}}

/* Kategorien im Ratgeber als interaktive Buttons */
.course-guide-links{display:flex;flex-wrap:wrap;gap:10px}
.course-guide-links a{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;min-height:42px;box-sizing:border-box;border:1px solid rgba(25,52,45,.22);border-radius:999px;background:#f3f6ef;color:#19342d;text-decoration:none;font-size:13px;font-weight:700;line-height:1.35;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.course-guide-links a:hover{background:#19342d;color:#fff;border-color:#19342d;transform:translateY(-2px);box-shadow:0 5px 14px rgba(25,52,45,.14)}
.course-guide-links a:focus-visible{outline:3px solid #ed8d59;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.course-guide-links a{transition:none}.course-guide-links a:hover{transform:none}}

/* Die sechs Kurskategorie-Buttons übernehmen die Pastellfarben der Startseite. */
.course-guide-links a{color:#234137;border-color:rgba(35,65,55,.12);background:linear-gradient(135deg,var(--cat-start),var(--cat-end));box-shadow:0 4px 12px rgba(32,58,48,.06)}
.course-guide-links a:nth-child(1){--cat-start:#E9F0E5;--cat-end:#CEDECA}
.course-guide-links a:nth-child(2){--cat-start:#F8EEE2;--cat-end:#EBD3B5}
.course-guide-links a:nth-child(3){--cat-start:#F6EAE5;--cat-end:#E5C5BA}
.course-guide-links a:nth-child(4){--cat-start:#EAF0F0;--cat-end:#CCDDE0}
.course-guide-links a:nth-child(5){--cat-start:#F0EBF2;--cat-end:#DACFE5}
.course-guide-links a:nth-child(6){--cat-start:#EBF1E4;--cat-end:#D1DDBE}
.course-guide-links a:hover{color:#234137;border-color:rgba(35,65,55,.28);background:linear-gradient(135deg,var(--cat-start),var(--cat-end));transform:translateY(-3px);box-shadow:0 9px 20px rgba(32,58,48,.15)}

/* Dezenter Hover-Effekt für die beiden FAQ-Fragen am Ende der Kursseite. */
.course-guide details{border-radius:12px;padding:0 16px;transition:background-color .2s ease,box-shadow .2s ease}
.course-guide details summary{padding:20px 0;transition:color .2s ease,transform .2s ease}
.course-guide details:hover{background:#eaf1e8;box-shadow:0 5px 16px rgba(25,52,45,.07)}
.course-guide details:hover summary{color:#19342d;transform:translateX(4px)}
.course-guide details[open]{background:#f0f5ed}
.course-guide details p{margin:0 0 20px}
@media(prefers-reduced-motion:reduce){.course-guide details,.course-guide details summary{transition:none}.course-guide details:hover summary{transform:none}}

/* Deutlich erkennbare, individuelle Startseitenfarben ohne Variablen-Abhängigkeit. */
.course-guide .course-guide-links > a:nth-child(1){background:#D5E5CF;border-color:#ACCBA5}
.course-guide .course-guide-links > a:nth-child(2){background:#F2DFC6;border-color:#DFC09B}
.course-guide .course-guide-links > a:nth-child(3){background:#EED4CB;border-color:#D9AEA0}
.course-guide .course-guide-links > a:nth-child(4){background:#D8E8EA;border-color:#AACBD0}
.course-guide .course-guide-links > a:nth-child(5){background:#E5D8EC;border-color:#C7B0D5}
.course-guide .course-guide-links > a:nth-child(6){background:#DDE9CF;border-color:#B6CE9C}
.course-guide .course-guide-links > a:hover{filter:saturate(1.15) brightness(.97);color:#19342d;transform:translateY(-3px);box-shadow:0 9px 20px rgba(32,58,48,.16)}

/* Course provider category (e.g. Yoga) styled as a compact pill. */
.provider-directory-heading-overlay .provider-directory-meta{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:10px 0 0;padding:6px 14px;border:1px solid rgba(255,255,255,.55);border-radius:999px;background:rgba(255,254,250,.92);color:#19342d;font:600 12px/1.35 'DM Sans',sans-serif;letter-spacing:.01em;opacity:1;box-shadow:0 2px 9px rgba(20,46,32,.1)}

/* Course filters: solid, clearly separated pills on the warm hero background. */
.course-filters .filter{background:#f6f5e9!important;border:1px solid #c8d1bc!important;color:#284539!important;box-shadow:0 2px 7px rgba(25,52,45,.07);opacity:1!important;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.course-filters .filter:hover{background:#e2ebd9!important;border-color:#8ba88f!important;transform:translateY(-2px);box-shadow:0 5px 13px rgba(25,52,45,.12)}
.course-filters .filter.active{background:#193b30!important;border-color:#193b30!important;color:#fff!important;box-shadow:0 3px 11px rgba(25,52,45,.16)}
.course-filters .filter.active:hover{background:#2a5845!important}
@media(prefers-reduced-motion:reduce){.course-filters .filter{transition:none}.course-filters .filter:hover{transform:none}}

/* Refined quick filters: today pill and accessible price slider. */
.course-extra-filters{align-items:center;gap:20px}
.course-extra-filters .today-filter-pill{display:inline-flex;position:relative;align-items:center;cursor:pointer;margin:0;gap:0}
.course-extra-filters .today-filter-pill input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.course-extra-filters .today-filter-pill span{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:9px 17px;background:#f6f5e9;border:1px solid #c8d1bc;border-radius:999px;color:#284539;font-size:12px;font-weight:700;box-shadow:0 2px 7px rgba(25,52,45,.07);transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.course-extra-filters .today-filter-pill:hover span{background:#e2ebd9;border-color:#8ba88f;transform:translateY(-2px)}
.course-extra-filters .today-filter-pill input:checked+span{background:#193b30;border-color:#193b30;color:#fff}
.course-extra-filters .today-filter-pill input:focus-visible+span{outline:3px solid #ed8d59;outline-offset:3px}
.course-extra-filters .price-filter-label{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:210px;font-size:12px;font-weight:700;color:#284539}
.course-extra-filters .price-filter-label>span{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px}
.course-extra-filters .price-filter-label output{margin-left:auto;min-width:unset;color:#193b30;background:#e2ebd9;padding:4px 9px;border-radius:7px;font-size:12px}
.course-extra-filters #filter-price{appearance:none;-webkit-appearance:none;width:min(260px,100%);height:7px;border:0;border-radius:999px;background:linear-gradient(90deg,#376b51 0%,#376b51 var(--price-progress,100%),#d4ddd1 var(--price-progress,100%),#d4ddd1 100%);cursor:pointer}
.course-extra-filters #filter-price::-webkit-slider-thumb{-webkit-appearance:none;width:19px;height:19px;border-radius:50%;background:#fff;border:5px solid #285940;box-shadow:0 2px 7px rgba(25,52,45,.19)}
.course-extra-filters #filter-price::-moz-range-thumb{width:11px;height:11px;border-radius:50%;background:#fff;border:5px solid #285940;box-shadow:0 2px 7px rgba(25,52,45,.19)}
.course-extra-filters #filter-price:focus-visible{outline:3px solid #ed8d59;outline-offset:5px}
@media(max-width:600px){.course-extra-filters{gap:18px}.course-extra-filters .price-filter-label{width:min(100%,300px)}}
@media(prefers-reduced-motion:reduce){.course-extra-filters .today-filter-pill span{transition:none;transform:none!important}}

/* Keep quick filters visually connected to the category and location filters. */
.course-extra-filters{border-top:0!important;border-bottom:0!important}

/* Give the full provider directory the same opening breathing room. */
.provider-directory-all{padding-top:112px}
@media(max-width:760px){.provider-directory-all{padding-top:76px}}
