/* Lokal bereitgestellte Webfonts – keinerlei Abruf von externen Fontdiensten. */
@font-face{font-family:"Source Sans 3";src:url("/files/Schulhomepage/fonts/source-sans-3-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("/files/Schulhomepage/fonts/source-sans-3-600.woff2") format("woff2");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("/files/Schulhomepage/fonts/source-sans-3-700.woff2") format("woff2");font-style:normal;font-weight:700 900;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url("/files/Schulhomepage/fonts/source-serif-4-400.woff2") format("woff2");font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url("/files/Schulhomepage/fonts/source-serif-4-400-italic.woff2") format("woff2");font-style:italic;font-weight:400 500;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url("/files/Schulhomepage/fonts/source-serif-4-600.woff2") format("woff2");font-style:normal;font-weight:600 900;font-display:swap}
:root{--green:#67af22;--green-dark:#4b8b12;--blue:#cad8e8;--navy:#132b40;--ink:#193247;--muted:#647585;--cream:#f6f7f4;--line:#dce3e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Source Sans 3","Segoe UI",Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.page-width{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:10px 16px;background:#fff;transform:translateY(-160%)}.skip-link:focus{transform:none}.topbar{height:36px;background:var(--navy);color:#dce8ef;font-size:12px}.topbar-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.topbar-inner div{display:flex;gap:26px}.site-header{position:sticky;z-index:100;top:0;background:#fffffff5;border-bottom:1px solid #142d4117;backdrop-filter:blur(12px)}.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px;line-height:1}.brand img{width:64px;height:64px;object-fit:cover;border-radius:50%}.brand div{display:grid}.brand span{font-family:"Source Serif 4",Georgia,serif;font-size:19px;color:#36536b}.brand strong{font-family:"Source Serif 4",Georgia,serif;font-size:26px;color:var(--navy)}.brand small{margin-top:8px;font-size:8px;text-transform:uppercase;letter-spacing:.21em;color:var(--green-dark)}.main-nav ul{display:flex;align-items:center;gap:25px;margin:0;padding:0;list-style:none}.main-nav a{position:relative;padding:38px 0 33px;font-size:13px;font-weight:650;color:#425767;white-space:nowrap}.main-nav a:after{position:absolute;bottom:24px;left:0;width:0;height:2px;background:var(--green);content:"";transition:.25s}.main-nav a:hover:after,.main-nav a.active:after{width:100%}.main-nav a.active{color:var(--navy)}.menu-toggle{display:none;border:0;background:transparent;color:var(--navy)}
.hero{position:relative;min-height:640px;overflow:hidden;background:var(--navy);color:#fff}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.82)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b2538f0 0%,#0b2538b8 42%,#0b25381f 75%),linear-gradient(0deg,#0b253852,transparent 45%)}.hero-content{position:relative;z-index:2;padding-top:112px}.eyebrow{margin:0 0 16px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.19em}.eyebrow:before{display:inline-block;width:28px;height:2px;margin:0 12px 3px 0;background:var(--green);content:""}.hero h1{max-width:720px;margin:0;font:500 clamp(46px,6vw,76px)/1.02 "Source Serif 4",Georgia,serif;letter-spacing:-.035em}.hero h1 em{color:#aad777;font-weight:400}.hero-content>p:not(.eyebrow){max-width:610px;margin:26px 0 34px;font-size:18px;color:#e5edf2}.hero-actions{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 22px;border-radius:3px;font-size:13px;font-weight:750;transition:.2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:#102435}.button-ghost{border:1px solid #ffffffa6;color:#fff}.button-dark{background:var(--navy);color:#fff}.hero-note{position:absolute;right:max(24px,calc((100% - 1180px)/2));bottom:45px;z-index:2;width:340px;padding:22px 26px;border-left:3px solid var(--green);background:#0b2538d1;backdrop-filter:blur(8px)}.hero-note span{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#aad777}.hero-note blockquote{margin:8px 0;font:italic 17px/1.45 "Source Serif 4",Georgia,serif}.hero-note small{color:#b9c8d1}
.quick-section{position:relative;z-index:4;background:#fff}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 14px 45px #122d401f}.quick-grid>a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;min-height:115px;padding:20px;border-right:1px solid var(--line);transition:.25s}.quick-grid>a:hover{background:#f5f9ef}.quick-grid>a>b{color:var(--green);font-size:20px}.quick-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#edf5e6;color:var(--green-dark);font-weight:800}.quick-grid small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.quick-grid strong{display:block;margin-top:3px;font:600 15px/1.25 "Source Serif 4",Georgia,serif}.news-section{padding:110px 0;background:var(--cream)}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px}.green{color:var(--green-dark)}.section-heading h2,.profile-copy h2,.info-band h2{margin:0;font:500 clamp(34px,4vw,48px)/1.1 "Source Serif 4",Georgia,serif;letter-spacing:-.02em}.text-link,.read-more{font-size:12px;font-weight:800;color:var(--green-dark)}.text-link span,.read-more span{margin-left:8px}.news-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px}.news-card{overflow:hidden;background:#fff;box-shadow:0 8px 30px #122d4012;transition:.25s}.news-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #122d401f}.image-wrap{position:relative;display:block;height:230px;overflow:hidden}.image-wrap img{width:100%;height:100%;object-fit:cover;transition:.45s}.news-card:hover img{transform:scale(1.04)}.tag{position:absolute;bottom:0;left:0;padding:7px 12px;background:var(--green);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#102435}.card-content{padding:25px}.card-content h3{margin:0 0 12px;font:600 23px/1.25 "Source Serif 4",Georgia,serif}.card-content p{margin:0 0 18px;color:var(--muted);font-size:14px}
.profile-section{padding:110px 0}.profile-grid{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:90px}.profile-copy>p:not(.eyebrow){max-width:580px;color:var(--muted);font-size:16px}.profile-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.profile-points div{padding-top:14px;border-top:2px solid var(--blue)}.profile-points span{display:block;color:var(--green-dark);font-size:11px;font-weight:800}.profile-points strong{font-size:13px}.profile-visual{position:relative;padding:0 0 65px 45px}.image-panel{padding:40px;background:var(--cream)}.image-panel img{width:100%;aspect-ratio:1.4;object-fit:contain}.green-card{position:absolute;bottom:0;left:0;width:68%;padding:27px;background:var(--green);color:#122536}.green-card strong{display:block;font:600 22px "Source Serif 4",Georgia,serif}.green-card span{font-size:12px}.info-band{padding:58px 0;background:var(--blue)}.info-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);align-items:center;gap:30px}.info-grid>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:20px 0;border-bottom:1px solid #132b4040}.info-grid>a span{font-size:10px;color:var(--green-dark);font-weight:800}.info-grid>a strong{font:600 15px "Source Serif 4",Georgia,serif}.info-grid>a b{color:var(--green-dark)}#footer{background:var(--navy);color:#dce7ed}.footer-main{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:60px;padding:72px 0}.footer-brand{align-self:start}.footer-brand img{border:3px solid #fff}.footer-brand span,.footer-brand strong{color:#fff}.footer-main h3{margin:0 0 15px;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.13em}.footer-main p{margin:0 0 8px;color:#9fb1bd;font-size:13px}.footer-main>div>a{display:block;margin:6px 0;font-size:13px}.footer-bottom{display:flex;justify-content:space-between;padding:20px 0;border-top:1px solid #ffffff1f;font-size:11px;color:#90a4b1}.footer-bottom div{display:flex;gap:24px}
@media(max-width:1080px){.main-nav ul{gap:14px}.main-nav a{font-size:11px}.quick-grid{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:repeat(2,1fr)}.news-card:first-child{grid-column:span 2}.profile-grid{gap:45px}.info-grid{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.page-width{width:min(100% - 32px,1180px)}.topbar{display:none}.header-inner{height:78px}.brand img{width:50px;height:50px}.brand span{font-size:15px}.brand strong{font-size:21px}.brand small{display:none}.menu-toggle{display:grid;grid-template-columns:24px auto;column-gap:9px;align-items:center}.menu-toggle span{grid-column:1;display:block;width:24px;height:2px;margin:2px 0;background:var(--navy)}.menu-toggle b{grid-column:2;grid-row:1/4;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.main-nav{position:fixed;top:78px;inset-inline:0;bottom:0;padding:25px 24px;background:#fff;transform:translateX(100%);transition:.3s;overflow:auto}.main-nav.is-open{transform:none}.main-nav ul{display:block}.main-nav li{border-bottom:1px solid var(--line)}.main-nav a{display:block;padding:16px 4px;font:600 21px "Source Serif 4",Georgia,serif}.main-nav a:after{display:none}.hero{min-height:650px}.hero-content{padding-top:90px}.hero-note{right:16px;bottom:22px;width:calc(100% - 32px)}.quick-section{padding:20px 0}.quick-grid{box-shadow:none;gap:1px;background:var(--line)}.quick-grid>a{background:#fff}.news-section,.profile-section{padding:75px 0}.profile-grid{grid-template-columns:1fr}.profile-visual{max-width:570px}.info-grid{grid-template-columns:1fr 1fr}.footer-main{gap:35px}}
@media(max-width:560px){.page-width{width:calc(100% - 28px)}.hero{min-height:700px}.hero-content{padding-top:70px}.hero h1{font-size:44px}.hero-actions{align-items:stretch;flex-direction:column}.hero-note{bottom:20px;padding:17px 20px}.hero-note blockquote{font-size:15px}.quick-grid{grid-template-columns:1fr}.quick-grid>a{min-height:92px}.section-heading{align-items:flex-start;flex-direction:column;gap:18px}.news-grid{grid-template-columns:1fr}.news-card:first-child{grid-column:auto}.image-wrap{height:215px}.profile-points{grid-template-columns:1fr}.profile-visual{padding-left:15px}.image-panel{padding:20px}.green-card{width:86%}.info-grid,.footer-main{grid-template-columns:1fr}.footer-main{padding:50px 0}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Bereich Schulfamilie – bewusst mit Contao-kompatiblen Modulklassen */
.family-nav{position:sticky;z-index:90;top:96px;background:#fff;border-bottom:1px solid var(--line);overflow:auto}.family-nav .page-width{display:flex;gap:3px}.family-nav a{flex:0 0 auto;padding:13px 12px;border-bottom:2px solid transparent;color:var(--muted);font-size:11px;font-weight:750;white-space:nowrap}.family-nav a:hover,.family-nav a.active{border-color:var(--green);color:var(--navy)}.family-hero{padding:84px 0 92px;background:var(--navy);color:#fff;overflow:hidden}.family-hero-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:85px}.family-hero h1,.detail-hero h1{margin:0;font:500 clamp(54px,7vw,88px)/.96 "Source Serif 4",Georgia,serif;letter-spacing:-.045em}.family-hero h1 em{color:#aad777;font-weight:400}.family-hero blockquote{max-width:480px;margin:38px 0 0;padding-left:20px;border-left:2px solid var(--green);font:italic 16px/1.55 "Source Serif 4",Georgia,serif;color:#cbd8df}.family-hero blockquote small{display:block;margin-top:8px;font:700 10px "Source Sans 3",sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#8fa4b1}.family-hero-image{position:relative}.family-hero-image:before{position:absolute;z-index:2;inset:-14px auto auto -14px;width:76px;height:76px;border-top:2px solid var(--green);border-left:2px solid var(--green);content:""}.family-hero-image img{width:100%;height:440px;object-fit:cover;filter:saturate(.78)}.family-hero-image span{position:absolute;right:-28px;bottom:-28px;padding:21px 28px;background:var(--green);color:#132b40;font:600 18px/1.35 "Source Serif 4",Georgia,serif}.family-intro{padding:105px 0}.intro-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.intro-grid h2{margin:0;font:500 clamp(38px,5vw,56px)/1.06 "Source Serif 4",Georgia,serif;letter-spacing:-.03em}.intro-grid div>p{max-width:720px;color:var(--muted);font-size:17px}.family-overview{padding:100px 0;background:var(--cream)}.family-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.family-card{position:relative;min-height:300px;padding:28px;background:#fff;border-top:3px solid transparent;box-shadow:0 7px 25px #122d400d;transition:.25s}.family-card:hover{border-color:var(--green);transform:translateY(-5px);box-shadow:0 16px 35px #122d4018}.family-card-number{color:#9eacb5;font-size:10px;font-weight:800}.family-card-icon{display:grid;width:56px;height:56px;margin:30px 0 20px;place-items:center;border-radius:50%;background:#eef5e9;color:var(--green-dark);font-size:25px}.family-card h3{margin:0 0 2px;font:600 21px "Source Serif 4",Georgia,serif}.family-card small{color:var(--green-dark);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.family-card p{min-height:45px;color:var(--muted);font-size:12px;line-height:1.45}.family-card b{position:absolute;bottom:25px;font-size:11px;color:var(--green-dark)}.family-quote{padding:85px 0;background:var(--blue);text-align:center}.quote-mark{display:block;height:50px;color:var(--green-dark);font:80px "Source Serif 4",Georgia,serif}.family-quote p{margin:10px 0 0;font:500 clamp(28px,4vw,45px)/1.25 "Source Serif 4",Georgia,serif}.family-quote em{color:var(--green-dark)}
.detail-hero{padding:56px 0 68px;background:var(--navy);color:#fff}.breadcrumbs{display:flex;gap:9px;margin-bottom:42px;color:#91a6b3;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.breadcrumbs b{color:#c8d6de}.detail-hero h1{font-size:clamp(50px,7vw,78px)}.detail-hero>.page-width>p:last-child{max-width:680px;margin:22px 0 0;color:#c8d6de;font-size:17px}.detail-content{min-height:500px;padding:90px 0 110px;background:#fff}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.person-card{overflow:hidden;background:var(--cream)}.person-card>img{width:100%;height:370px;object-fit:cover;object-position:top}.person-card>div{padding:24px}.person-role{margin:0 0 6px;color:var(--green-dark);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.person-card h2{margin:0;font:600 25px "Source Serif 4",Georgia,serif}.person-card p,.reading-copy p,.gahr-grid p{color:var(--muted);font-size:14px}.wide-photo{margin:0 0 48px}.wide-photo img{width:100%;max-height:620px;object-fit:cover}.wide-photo figcaption{padding:12px 0;color:var(--muted);font-size:11px}.teacher-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.teacher-list div{display:flex;justify-content:space-between;padding:13px 15px;background:#fff;font-size:12px}.teacher-list span{color:var(--green-dark);font-weight:800}.two-column-content,.gahr-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.two-column-content h2,.reading-copy h2,.gahr-grid h2{margin:0 0 22px;font:500 39px/1.1 "Source Serif 4",Georgia,serif}.two-column-content>img{width:100%;max-height:580px;object-fit:cover}.role-list p{display:grid;grid-template-columns:170px 1fr;margin:0;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.role-list b{color:var(--muted)}.contact-box{display:grid;grid-template-columns:1fr auto;gap:0 15px;margin-top:25px;padding:20px;background:var(--blue)}.contact-box small{font-size:10px;text-transform:uppercase}.contact-box strong{color:var(--green-dark)}.contact-box span{grid-column:2;grid-row:1/3;align-self:center}.secretaries{grid-template-columns:repeat(2,1fr);max-width:850px;margin:auto}.secretaries .person-card>img{height:420px}.service-panel{display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;margin:35px auto 0;background:var(--navy);color:#fff}.service-panel div{padding:22px;border-right:1px solid #ffffff24}.service-panel small{display:block;color:#a9bac4;font-size:10px;text-transform:uppercase}.service-panel strong,.service-panel a{display:block;margin-top:5px;font:600 17px "Source Serif 4",Georgia,serif}.reading-copy{max-width:820px;margin:auto}.reading-copy h2{font-size:42px}.advisor-list{display:grid;gap:25px}.advisor-list .person-card{display:grid;grid-template-columns:230px 1fr}.advisor-list .person-card>img{height:100%;min-height:310px}.detail-list{padding-left:18px;color:var(--muted);font-size:13px}.detail-list li::marker{color:var(--green)}.centered-profile{max-width:800px;margin:auto;text-align:center}.centered-profile img{width:100%;max-height:520px;object-fit:cover}.centered-profile h2{margin:25px 0 0;font:600 32px "Source Serif 4",Georgia,serif}.centered-profile p{color:var(--muted)}.gahr-grid>img{width:100%;max-height:600px;object-fit:contain;background:var(--cream)}
@media(max-width:1080px){.family-nav{top:96px}.family-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.family-nav{top:78px}.family-hero{padding:60px 0 75px}.family-hero-grid{grid-template-columns:1fr;gap:55px}.family-hero-image img{height:360px}.family-hero-image span{right:0}.intro-grid{grid-template-columns:1fr;gap:20px}.people-grid{grid-template-columns:1fr 1fr}.leadership .person-card:last-child{grid-column:1/3}.teacher-list{grid-template-columns:1fr 1fr}.two-column-content,.gahr-grid{grid-template-columns:1fr;gap:40px}.advisor-list .person-card{grid-template-columns:180px 1fr}.family-intro,.family-overview,.detail-content{padding:70px 0}}
@media(max-width:560px){.family-nav .page-width{width:auto;margin-left:14px}.family-hero-image img{height:290px}.family-hero-image span{bottom:-24px;padding:15px 18px;font-size:15px}.family-card-grid,.people-grid,.teacher-list,.secretaries,.service-panel{grid-template-columns:1fr}.leadership .person-card:last-child{grid-column:auto}.family-card{min-height:270px}.person-card>img,.secretaries .person-card>img{height:360px}.advisor-list .person-card{grid-template-columns:1fr}.advisor-list .person-card>img{height:330px;min-height:0}.role-list p{grid-template-columns:1fr}.service-panel div{border-right:0;border-bottom:1px solid #ffffff24}.detail-hero{padding-top:40px}.breadcrumbs{overflow:hidden;white-space:nowrap}.detail-content{padding:55px 0}.family-quote{padding:60px 0}}

/* Markenabgleich: Logo-Grün und stärkere Logo-Präsenz auf Desktop */
:root{--green:#58c880;--green-dark:#267a4b}
@media(min-width:1181px){
  .header-inner{height:116px}
  .brand{gap:17px}
  .brand img{width:86px;height:86px;box-shadow:0 0 0 5px #fff,0 5px 18px #132b4020}
  .brand span{font-size:20px}
  .brand strong{font-size:29px}
  .brand small{margin-top:9px;font-size:9px}
  .main-nav a{padding-top:48px;padding-bottom:43px}
  .main-nav a:after{bottom:33px}
  .family-nav{top:116px}
}
.hero h1 em,.hero-note span{color:#8be0aa}
.quick-icon,.family-card-icon{background:#e8f8ee}

/* Die vollständige Navigation benötigt inklusive Wortmarke ausreichend Platz. */
@media(max-width:1180px){
  .topbar{display:none}
  .site-header{backdrop-filter:none}
  .header-inner{height:78px}
  .brand img{width:50px;height:50px;box-shadow:none}
  .brand span{font-size:15px}
  .brand strong{font-size:21px}
  .brand small{display:none}
  .menu-toggle{position:relative;z-index:140;display:grid;grid-template-columns:24px auto;column-gap:9px;align-items:center;cursor:pointer}
  .menu-toggle span{grid-column:1;display:block;width:24px;height:2px;margin:2px 0;background:var(--navy)}
  .menu-toggle b{grid-column:2;grid-row:1/4;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
  .main-nav{position:fixed;z-index:130;top:78px;right:0;bottom:auto;left:0;width:100%;height:calc(100dvh - 78px);padding:25px 24px 60px;background:#fff;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(100%);transition:transform .3s ease,opacity .2s ease,visibility 0s linear .3s;overflow-y:auto;overscroll-behavior:contain}
  .main-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0);transition:transform .3s ease,opacity .2s ease,visibility 0s}
  .main-nav ul{display:block}
  .main-nav li{border-bottom:1px solid var(--line)}
  .main-nav a{display:block;padding:16px 4px;font:600 21px "Source Serif 4",Georgia,serif}
  .main-nav a:after{display:none}
  .family-nav{top:78px}
}

/* Typografische Feinabstimmung für die lokal eingebundenen Source-Schriften */
body{font-size:16px}
.brand small{font-size:10px}
.main-nav a{font-size:14px}
.hero h1{line-height:1.06}
.hero-note span,.quick-grid small,.tag,.info-grid>a span,.footer-main h3,
.family-card-number,.family-card small,.person-role,.contact-box small,
.service-panel small,.breadcrumbs{font-size:11px}
.family-nav a{font-size:12px}
.card-content p{font-size:15px;line-height:1.65}
.green-card span{font-size:13px;line-height:1.5}
.footer-main p,.footer-main>div>a{font-size:14px}
.footer-bottom{font-size:12px}
.family-hero h1,.detail-hero h1{line-height:1.02}
.family-hero blockquote{font-size:17px}
.family-hero blockquote small{font-size:11px}
.family-card p{font-size:14px;line-height:1.55}
.family-card b{font-size:12px}
.teacher-list div{font-size:13px}
.wide-photo figcaption{font-size:12px}
.role-list p,.detail-list{font-size:14px}
.person-card p,.reading-copy p,.gahr-grid p{font-size:15px;line-height:1.65}
.leadership .person-role span{display:block;margin-top:3px;color:var(--muted);font-size:12px;letter-spacing:.05em}
@media(max-width:1180px){.main-nav a{font-size:22px}}
@media(max-width:560px){
  .hero h1{font-size:42px;line-height:1.08}
  .family-hero h1,.detail-hero h1{line-height:1.05}
}

/* Freundlicheres Schulblau – angelehnt an die Blautöne des Logos */
:root{--navy:#28657f;--ink:#24485b}
.hero-shade{background:linear-gradient(90deg,#245b78ed 0%,#245b78b8 42%,#245b781f 75%),linear-gradient(0deg,#1d506b4d,transparent 45%)}
.hero-note{background:#245b78dc}

/* Eigenständige mobile Bereichsnavigation für „Schulfamilie“ */
.family-nav-toggle{display:none}
.family-nav-links{display:flex;gap:3px;overflow-x:auto}
@media(max-width:820px){
  .family-nav{overflow:visible}
  .family-nav .family-nav-inner{display:block;width:calc(100% - 28px);margin-inline:auto}
  .family-nav-toggle{display:flex;width:100%;min-height:64px;align-items:center;justify-content:space-between;padding:9px 4px;border:0;background:#fff;color:var(--ink);text-align:left;cursor:pointer}
  .family-nav-toggle span{display:grid}
  .family-nav-toggle small{color:var(--green-dark);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
  .family-nav-toggle strong{font:600 18px "Source Serif 4",Georgia,serif}
  .family-nav-toggle b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#e8f8ee;color:var(--green-dark);font-size:22px;line-height:1;transition:transform .2s ease}
  .family-nav.is-open .family-nav-toggle b{transform:rotate(180deg)}
  .family-nav-links{position:absolute;top:100%;right:0;left:0;display:grid;max-height:0;padding:0 14px;background:#fff;box-shadow:0 18px 30px #132b4020;opacity:0;visibility:hidden;overflow:hidden;transition:max-height .3s ease,opacity .2s ease,visibility 0s linear .3s}
  .family-nav.is-open .family-nav-links{max-height:calc(100dvh - 142px);padding-bottom:14px;opacity:1;visibility:visible;overflow-y:auto;transition:max-height .3s ease,opacity .2s ease,visibility 0s}
  .family-nav-links a{display:flex;align-items:center;justify-content:space-between;min-height:47px;padding:9px 4px;border-bottom:1px solid var(--line);font-size:15px;white-space:normal}
  .family-nav-links a:after{color:var(--green-dark);content:"→"}
  .family-nav-links a.active{padding-left:12px;border-left:3px solid var(--green);background:#f4faf6}
}

/* Mobil: Schulfamilie als Akkordeon im Hauptmenü, Bereichsleiste nur als Kontext. */
.nav-parent-row button,.nav-family .level_2,.family-current{display:none}
@media(max-width:1180px){
  .nav-parent-row{display:flex;align-items:center;border-bottom:1px solid var(--line)}
  .main-nav .nav-parent-row>a{flex:1;border-bottom:0}
  .nav-parent-row button{display:grid;flex:0 0 48px;height:48px;place-items:center;border:0;border-radius:50%;background:#e8f8ee;color:var(--green-dark);font-size:24px;cursor:pointer;transition:transform .2s ease}
  .nav-family.is-expanded .nav-parent-row button{transform:rotate(180deg)}
  .main-nav .nav-family>.level_2{display:grid;max-height:0;margin:0;padding:0 0 0 18px;background:#f5faf7;overflow:hidden;transition:max-height .3s ease}
  .main-nav .nav-family.is-expanded>.level_2{max-height:520px}
  .main-nav .nav-family>.level_2 li{border-bottom:1px solid #dce9e1}
  .main-nav .nav-family>.level_2 a{padding:11px 12px;font:600 16px "Source Sans 3","Segoe UI",Arial,sans-serif;color:var(--muted)}
  .main-nav .nav-family>.level_2 a.active{border-left:3px solid var(--green);color:var(--green-dark);background:#fff}
}
@media(max-width:820px){
  .family-nav .family-nav-inner{min-height:58px;display:flex;align-items:center}
  .family-current{display:grid;padding:8px 4px}
  .family-current small{color:var(--green-dark);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
  .family-current strong{font:600 17px "Source Serif 4",Georgia,serif}
  .family-nav .family-nav-links{display:none!important}
}


/* Contao-Wrapper neutralisieren */
#main .inside,.mod_article,.mod_article>.ce_html{margin:0;padding:0;max-width:none}
.mod_article>.ce_html{overflow:visible}
#header>.inside>.mod_navigation{display:none}
#header>.inside,.mod_html{margin:0;padding:0;max-width:none}
.mod_article p,.mod_article h1,.mod_article h2,.mod_article h3,.mod_article h4,.mod_article h5,.mod_article h6,.mod_article blockquote,.mod_article figure{margin:0}
.mod_article>.family-nav{position:relative;top:0}

