/*
Theme Name: KSA Bayern Modern
Theme URI: https://www.ksa-bayern.de/
Author: KSA Bayern
Description: Modernes, barrierearmes WordPress-Theme für KSA Bayern mit Kursdarstellung und flexibler Startseite.
Version: 1.6.59
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: ksa-bayern
*/

:root{--ksa-navy:#173b57;--ksa-navy-dark:#0f2d43;--ksa-teal:#2c7f80;--ksa-teal-dark:#21696a;--ksa-ivory:#f7f3ec;--ksa-sand:#e8d5ae;--ksa-ink:#183044;--ksa-muted:#5b6b77;--ksa-line:#dce3e6;--ksa-white:#fff;--ksa-shadow:0 14px 40px rgba(20,49,70,.09);--ksa-radius:18px;--ksa-width:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ksa-ink);background:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--ksa-teal-dark);text-decoration-thickness:.08em;text-underline-offset:.2em}a:hover{color:var(--ksa-navy)}.container{width:min(calc(100% - 40px),var(--ksa-width));margin-inline:auto}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto;width:auto;height:auto;margin:12px;padding:10px 16px;background:#fff;z-index:10000}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.75rem 1.25rem;border:2px solid var(--ksa-teal);border-radius:6px;background:var(--ksa-teal);color:#fff;font-weight:750;text-decoration:none;transition:.2s ease}.button:hover,.wp-block-button__link:hover{background:var(--ksa-teal-dark);border-color:var(--ksa-teal-dark);color:#fff;transform:translateY(-1px)}.button--outline{background:transparent;color:var(--ksa-navy);border-color:var(--ksa-teal)}

.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(23,59,87,.1);backdrop-filter:blur(12px)}.header-inner{min-height:76px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;flex:0 0 auto;color:var(--ksa-navy);font-size:1.24rem;font-weight:800;text-decoration:none}.brand-mark{width:48px;height:48px;border:2px solid var(--ksa-navy);border-radius:50%;display:grid;place-items:center;position:relative;overflow:hidden}.brand-mark:before{content:"✝";font-size:22px;position:absolute;top:1px}.brand-mark:after{content:"≈";font-size:30px;position:absolute;bottom:-5px}.custom-logo{max-height:58px;width:auto}.main-navigation{margin-left:auto}.menu{display:flex;align-items:center;gap:25px;margin:0;padding:0;list-style:none}.menu a{color:var(--ksa-ink);font-size:.94rem;font-weight:650;text-decoration:none}.menu a:hover,.menu .current-menu-item>a{color:var(--ksa-teal);text-decoration:underline;text-underline-offset:8px}.header-actions{display:flex;align-items:center;gap:12px}.menu-toggle{display:none;border:0;background:transparent;color:var(--ksa-navy);font-size:1.5rem;padding:8px}.search-link{display:grid;place-items:center;width:44px;height:44px;color:var(--ksa-navy);text-decoration:none}.header-cta{white-space:nowrap}

.hero{background:linear-gradient(100deg,var(--ksa-ivory),#fff);overflow:hidden}.hero-grid{min-height:610px;display:grid;grid-template-columns:.92fr 1.18fr;align-items:stretch}.hero-copy{align-self:center;padding:80px 60px 80px max(20px,calc((100vw - var(--ksa-width))/2));}.eyebrow{display:block;margin-bottom:18px;color:#54718a;font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.hero h1{max-width:670px;margin:0 0 20px;color:var(--ksa-navy);font-size:clamp(2.7rem,5vw,4.6rem);line-height:1.08;letter-spacing:-.045em}.hero p{max-width:620px;margin:0 0 28px;font-size:1.18rem;line-height:1.5}.hero-buttons{display:flex;flex-wrap:wrap;gap:12px}.hero-note{display:flex;align-items:center;gap:14px;margin-top:30px;color:#50697d;font-size:.9rem;font-weight:650}.hero-note:before{content:"";width:54px;height:3px;background:#7eb4ae}.hero-media{min-height:520px;background:linear-gradient(135deg,#dbe9e6,#bdd6d3);position:relative}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,243,236,.1),transparent 28%);pointer-events:none}

.entry-cards{position:relative;margin-top:-36px;z-index:3}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.entry-card{min-height:235px;padding:30px;background:#fff;border:1px solid rgba(23,59,87,.09);border-radius:12px;box-shadow:var(--ksa-shadow);text-decoration:none;color:inherit;transition:.22s ease}.entry-card:hover{transform:translateY(-5px);border-color:#a5cfca;color:inherit}.card-icon{width:58px;height:58px;display:grid;place-items:center;margin-bottom:18px;border-radius:50%;background:var(--ksa-ivory);color:var(--ksa-navy);font-size:1.55rem}.entry-card h2{margin:0 0 8px;color:var(--ksa-navy);font-size:1.36rem;line-height:1.25}.entry-card p{margin:0;color:var(--ksa-muted);font-size:.98rem}.card-arrow{display:block;margin-top:14px;color:var(--ksa-teal);font-size:1.55rem}

.section{padding:88px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.section h2{margin:.2rem 0 0;color:var(--ksa-navy);font-size:clamp(2rem,3vw,2.75rem);line-height:1.15;letter-spacing:-.03em}.section-link{font-weight:750;text-decoration:none}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.course-card{overflow:hidden;border:1px solid var(--ksa-line);border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(20,49,70,.06)}.course-image{aspect-ratio:16/8.5;background:linear-gradient(135deg,#c8dedc,#e8d5ae);position:relative}.course-image img{width:100%;height:100%;object-fit:cover}.course-date{position:absolute;top:14px;left:14px;min-width:54px;padding:7px 8px;background:#fff;border-radius:6px;color:var(--ksa-navy);font-size:.76rem;font-weight:850;line-height:1.15;text-align:center;box-shadow:0 5px 16px rgba(0,0,0,.1)}.course-status{position:absolute;top:14px;right:14px;padding:6px 10px;border-radius:20px;background:#c7e8df;color:#164c46;font-size:.74rem;font-weight:750}.course-content{padding:20px}.course-content h3{margin:0 0 7px;color:var(--ksa-navy);font-size:1.12rem;line-height:1.3}.course-content h3 a{color:inherit;text-decoration:none}.course-content p{margin:0;color:var(--ksa-muted);font-size:.9rem}.course-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;padding-top:14px;border-top:1px solid var(--ksa-line);font-size:.8rem;color:#647784}

.values{padding:74px 0;background:linear-gradient(110deg,#e0f1f0,#f2f8f7)}.values-grid{display:grid;grid-template-columns:1.15fr .9fr 1fr;gap:50px;align-items:center}.values-copy h2{margin:0 0 18px;color:var(--ksa-navy);font-size:clamp(2rem,3.2vw,3rem);line-height:1.12}.values-list{display:grid;gap:20px}.value{display:grid;grid-template-columns:44px 1fr;gap:12px}.value-icon{font-size:1.55rem;color:var(--ksa-teal)}.value strong{display:block;color:var(--ksa-navy)}.value p{margin:0;color:var(--ksa-muted);font-size:.88rem}.values-image{overflow:hidden;border-radius:12px;aspect-ratio:4/3;background:#b9d8d5}.values-image img{width:100%;height:100%;object-fit:cover}

.content-wrap{padding:60px 0 90px}.content-layout{display:grid;grid-template-columns:minmax(0,780px) 260px;gap:70px}.entry-title{margin:0 0 32px;color:var(--ksa-navy);font-size:clamp(2.3rem,5vw,4rem);line-height:1.1}.entry-content h2,.entry-content h3{color:var(--ksa-navy);line-height:1.25}.entry-content h2{margin-top:2.2em;font-size:1.8rem}.entry-content>*:first-child{margin-top:0}.entry-content figure{margin:2.2rem 0}.entry-content img{border-radius:10px}.sidebar{padding-left:25px;border-left:1px solid var(--ksa-line)}.sidebar .widget{margin-bottom:32px}.sidebar .widget-title{color:var(--ksa-navy);font-size:1rem}.sidebar ul{padding-left:18px}.breadcrumb{padding-top:24px;color:var(--ksa-muted);font-size:.85rem}.breadcrumb a{text-decoration:none}

.site-footer{padding:48px 0 24px;background:var(--ksa-navy-dark);color:#dce8ef}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.site-footer a{color:#fff}.footer-title{margin:0 0 12px;color:#fff;font-size:1.16rem}.footer-menu{margin:0;padding:0;list-style:none}.footer-menu li{margin:7px 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);font-size:.8rem;color:#b7cad6}

@media(max-width:1050px){.header-cta{display:none}.menu{gap:16px}.hero-grid{grid-template-columns:1fr 1fr}.hero-copy{padding:65px 35px}.values-grid{grid-template-columns:1fr 1fr}.values-image{display:none}.content-layout{grid-template-columns:1fr}.sidebar{padding-left:0;border-left:0;border-top:1px solid var(--ksa-line);padding-top:25px}}
@media(max-width:820px){body{font-size:16px}.header-inner{min-height:68px}.menu-toggle{display:block;margin-left:auto}.main-navigation{position:absolute;display:none;top:68px;left:0;right:0;margin:0;padding:20px;background:#fff;border-top:1px solid var(--ksa-line);box-shadow:var(--ksa-shadow)}.main-navigation.is-open{display:block}.menu{align-items:stretch;flex-direction:column;gap:0}.menu a{display:block;padding:12px;border-bottom:1px solid var(--ksa-line)}.header-actions{margin-left:0}.search-link{display:none}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:58px 24px 48px}.hero-media{min-height:360px;order:-1}.entry-cards{margin-top:28px}.card-grid,.course-grid{grid-template-columns:1fr}.entry-card{min-height:0}.values-grid,.footer-grid{grid-template-columns:1fr;gap:30px}.section{padding:65px 0}.section-head{align-items:flex-start;flex-direction:column}.footer-bottom{flex-direction:column}.content-wrap{padding-top:38px}}
@media(max-width:480px){.container{width:min(calc(100% - 28px),var(--ksa-width))}.brand{font-size:1.06rem}.brand-mark{width:42px;height:42px}.hero h1{font-size:2.55rem}.hero-media{min-height:285px}.hero-buttons .button{width:100%}.section{padding:54px 0}}

/* Stable media dimensions and shared SVG icon rendering. */
.hero-media img,.values-image img{display:block;aspect-ratio:1672/941}
.ksa-icon{display:block;width:1.55em;height:1.55em}
