/* 2.0.165: compact, paginated event overview; month dividers match Heine heute. */
.event-row{grid-template-columns:100px minmax(0,1fr)}
.event-row time{width:100%;height:auto;min-height:54px;padding:8px;font-size:14px;text-align:center}
.event-month{margin-bottom:32px}
.event-month>h2{display:flex;align-items:center;gap:14px;margin:18px 0 16px;padding:0;border:0;letter-spacing:.01em}
.event-month>h2::after{content:"";height:1px;flex:1;background:var(--line)}
.event-month:first-child>h2{margin-top:0}
@layer heine-typography{
  html body main .event-month>h2{font-size:16px!important;font-weight:750!important;line-height:1.5!important;letter-spacing:.01em!important}
  html body main .event-archive-copy h3{font-size:24px!important;line-height:1.2!important}
  @media(max-width:620px){html body main .event-archive-copy h3{font-size:20px!important}}
}
.event-archive-item>.event-overview-row{padding:18px 20px;gap:24px}
.event-archive-date{min-height:74px}
.event-archive-date strong{font-size:22px}
.event-archive .pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.event-archive .pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;color:var(--gd)}
.event-archive .pagination .current{background:var(--gd);color:#fff;border-color:var(--gd)}
.event-archive .pagination a:hover{background:var(--mint)}
.event-archive .pagination a:focus-visible{outline:3px solid var(--g);outline-offset:3px}
@media(max-width:620px){
  .event-archive-item>.event-overview-row{padding:16px 12px;gap:12px}
  .event-archive-date{min-height:0}
  .event-archive-date strong{font-size:17px}
}
/* 2.0.164: wide desktop hero alignment follows Unsere Schule. */
@media (min-width:1600px){
  .heine-learning-v100 .learning-hero-wide-copy,
  .heine-learning-v100 .learning-hero-contained,
  .experience-hero-fullbleed.rubric-entry-media{
    width:min(1460px,calc(100% - 112px))!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}
/* 2.0.112: same purpose, same presentation; scoped to explicit UI roles. */
/* Service actions need no additional divider above the pills. */
.service-page-v2 .service-primary-card-v50 .service-tool-action{border-top:0!important}
.service-page-v2 .service-tool-copy h3{margin:5px 0 6px;color:var(--gd)}
/* Service uses the homepage section scale and the shared main-page title scale. */
@layer heine-typography{
  html body main.service-page-v2 h1{font-size:clamp(52px,5.8vw,82px)!important;line-height:.96!important;letter-spacing:-.055em!important}
  html body main.service-page-v2 h2{font-size:clamp(35px,3.8vw,50px)!important;line-height:1.02!important;letter-spacing:-.04em!important}
  html body main.service-page-v2 .service-tool-copy h3,
  html body main.service-page-v2 .service-more-rail-copy h3{font-size:22px!important;line-height:1.2!important;letter-spacing:-.025em!important}
  html body main.service-page-v2 .kicker,
  html body main.service-page-v2 .service-tool-copy>small{font-size:var(--heine-text-label)!important;line-height:1.45!important;letter-spacing:.07em!important;text-transform:uppercase}
  @media(max-width:720px){html body main.service-page-v2 h1{font-size:48px!important}}
  @media(max-width:680px){
    html body main.service-page-v2 h2{font-size:42px!important;line-height:1.06!important}
    html body main.service-page-v2 .service-tool-copy h3,
    html body main.service-page-v2 .service-more-rail-copy h3{font-size:20px!important}
  }
}

@media(min-width:1100px){
  .heine-school-page .school-hero-copy>.school-hero-intro-single,
  .new-heine-page-v106 .new-hero-copy>.new-hero-intro-single{
    max-width:none!important;
    white-space:nowrap;
    font-size:clamp(15px,1.45vw,17px)!important;
    letter-spacing:-.01em;
  }
}
@layer heine-typography.weights{
  html body main.service-page-v2 :is(h1,h2){font-weight:650!important}
  html body main.service-page-v2 .service-tool-copy h3,
  html body main.service-page-v2 .service-more-rail-copy h3,
  html body main.service-page-v2 .kicker,
  html body main.service-page-v2 .service-tool-copy>small{font-weight:600!important}
}
main .heine-ui-pill,
main .heine-ui-pill:visited{
  appearance:none;display:inline-flex;align-items:center;justify-content:center;
  gap:10px;width:max-content;max-width:100%;min-height:44px;padding:8px 16px;
  border:1px solid #bfdacf;border-radius:999px;background:#fff;color:#17624d!important;
  font:inherit;font-size:14px;line-height:1.5;font-weight:500;text-decoration:none;
  box-shadow:none;white-space:normal;cursor:pointer;
}
main .heine-ui-pill:hover{background:#e5f3ed;border-color:#2fac81;color:#17624d!important;transform:none;text-decoration:none}
main .heine-ui-pill>span{flex-shrink:0;color:inherit}
.new-heine-page-v106 .new-entry .heine-ui-pill{margin-top:auto}
main .heine-ui-pill--submit{background:#17624d;border-color:#17624d;color:#fff!important}
main .heine-ui-pill--submit:hover{background:#237b60;border-color:#237b60;color:#fff!important}
main .heine-ui-pill:focus-visible,
main .heine-ui-entry:focus-visible{outline:3px solid #2fac81;outline-offset:4px}

/* Intro links share a mint surface and leading arrow; statements remain text. */
main .heine-ui-entry,
main .learning-hero-statement{
  display:inline-flex;align-items:center;gap:12px;width:max-content;max-width:100%;
  margin-top:24px;padding:10px 16px 10px 10px;border:0;border-radius:999px;
  background:#eef8f4;color:#17624d;font-size:16px;line-height:1.5;font-weight:500;
  text-decoration:none;
}
main .heine-ui-entry>span,
main .learning-hero-statement>span{
  display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;
  padding:0;border:0;border-radius:50%;background:#fff;color:#2fac81;
}
main .heine-ui-entry>strong,
main .learning-hero-statement>strong{font:inherit}
main .heine-ui-entry:hover{background:#e5f3ed;color:#17624d}
@layer heine-typography{
  html body main .heine-ui-pill,
  html body main .heine-ui-pill>span,
  html body main .service-tool-action .service-portal-link,
  html body main .service-tool-action .service-portal-link>span,
  html body main .heine-more-link{font-size:14px!important;line-height:1.5!important}
  html body main .heine-ui-entry,
  html body main .heine-ui-entry>strong,
  html body main .learning-hero-statement,
  html body main .learning-hero-statement>strong{font-size:16px!important;line-height:1.5!important}
}
@layer heine-typography.weights{
  html body main .heine-ui-pill,
  html body main .service-tool-action .service-portal-link,
  html body main .heine-more-link,
  html body main .heine-ui-entry,
  html body main .heine-ui-entry>strong,
  html body main .learning-hero-statement>strong{font-weight:500!important}
}

/* Support cards use the PL contact pills and the same content order. */
.support-page-v5 .support-icon-card{min-width:0}
.support-page-v5 .support-icon-grid{align-items:stretch}
.support-page-v5 .support-icon-copy{display:flex;flex-direction:column;gap:14px;height:100%}
.support-page-v5 .support-icon-copy>h3,
.support-page-v5 .support-icon-copy>p,
.support-page-v5 .support-icon-copy>.support-card-contact-stack{margin:0}
.support-page-v5 .support-icon-copy>p{flex:0 0 auto}
.support-page-v5 .support-card-contact-stack{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding-top:14px;border-top:1px solid #dcebe5}
.support-page-v5 .support-card-label{display:block;color:#17624d;font-size:13px;line-height:1.4;font-weight:650}
.support-page-v5 .support-card-people{display:flex;flex-direction:column;align-items:flex-start;gap:9px;color:#17624d}
.support-page-v5 .support-card-people .heine-ui-pill{min-height:40px;padding:7px 13px;font-size:13px!important}
.support-page-v5 .support-person-entry{display:flex;flex-direction:column;align-items:flex-start;gap:4px;max-width:100%}
.support-page-v5 .support-person-entry>small{max-width:210px;color:#17624d;font-size:13px;line-height:1.4;font-weight:650}
.support-page-v5 .support-person-entry>.support-person-overline{max-width:none;font-size:13px;line-height:1.4;font-weight:650}
.support-page-v5 .support-card-phone{display:inline-flex;align-items:center;gap:7px;margin-top:2px;min-height:28px!important;color:#17624d!important;font-size:13px!important;font-weight:600!important;text-decoration:none}
.heine-phone-icon{width:16px;height:16px;flex:0 0 16px;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
#produktives-lernen .heine-pl-phone{gap:8px;text-decoration:none}
.support-page-v5 .support-career-service{display:inline-flex;align-items:center;gap:9px;margin-top:2px;padding-top:10px;border-top:1px solid #dcebe5;color:#17624d!important;font-size:12px!important;font-weight:600!important;text-decoration:none}
.support-page-v5 .support-career-service img{display:block;width:30px;height:30px;flex:0 0 30px;object-fit:contain}
.support-page-v5 .support-career-service>span{display:block;line-height:1.3}
.support-page-v5 .support-career-service:hover{text-decoration:underline;text-underline-offset:3px}
@media(min-width:901px){
  .support-page-v5 .support-icon-grid{align-items:stretch}
  .support-page-v5 .support-icon-card{height:100%}
  .support-page-v5 .support-icon-copy{display:grid;grid-template-rows:auto 132px auto;align-content:start}
  .support-page-v5 .support-card-contact-stack{display:flex;min-height:0}
  .support-funding-v5 .support-funding-link{justify-self:end!important}
  .support-foundation-panel .support-foundation-actions{justify-self:end!important}
  .support-foundation-actions .support-foundation-more.heine-more-link{align-self:flex-end!important}
}

/* Jahrgangsteams: Klassenleitungen klar vor weiteren Teammitgliedern. */
.yearteam-person-group{display:grid;gap:8px;margin-top:16px}
.yearteam-person-label{color:#6d827a;font-size:11px;line-height:1.3;font-weight:750}
.yearteam-lead-pair{display:inline-flex;align-items:stretch}
.yearteam-lead-pair .name-card{display:inline-flex;align-items:center}
.yearteam-lead-name{border-radius:999px 0 0 999px;border-right:0}
.yearteam-class-pill{border-radius:0 999px 999px 0;background:#fff;color:#2fac81;min-width:43px;justify-content:center}

.support-foundation-actions{align-items:flex-end}
.support-foundation-actions .support-foundation-more.heine-more-link,
.support-foundation-actions .support-foundation-more.heine-more-link:visited{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  min-height:0!important;
  padding:4px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:900!important;
  text-decoration:none!important;
}
.support-foundation-actions .support-foundation-more.heine-more-link:hover{
  color:#bce6d6!important;
  text-decoration:none!important;
  text-underline-offset:4px;
}
@media(max-width:900px){.support-foundation-actions{align-items:flex-start}}

/* Mobile Navigation: the entry point for new families is gently prioritised. */
@media(max-width:1000px){
  .mobile-nav .mobile-nav-new-at-heine,
  .mobile-nav .mobile-nav-new-at-heine:visited{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:7px;
    padding:12px 12px 12px 15px;
    border:1px solid #dcebe5;
    border-radius:15px;
    background:#eef8f4;
    color:#17624d;
    font-weight:800;
  }
  .mobile-nav .mobile-nav-new-at-heine:hover{background:#e5f3ed;color:#17624d}
  .mobile-nav-new-at-heine-arrow{
    display:grid;
    place-items:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#fff;
    color:#2fac81;
    font-size:17px;
    line-height:1;
  }
}

/* Berufsorientierung: beide Informationszonen beginnen auf derselben Höhe. */
@media(min-width:761px){
  .heine-learning-v100 .learning-career-showcase .fair-card>div:last-child,
  .heine-learning-v100 .learning-career-showcase .internships-card>div:last-child{display:flex!important;flex-direction:column}
  .heine-learning-v100 .learning-career-event-meta,
  .heine-learning-v100 .learning-practice-contact{margin-top:auto!important;padding-top:14px!important;min-height:116px}
}

/* Ganztagskarten bleiben Übersichten: keine Klickfläche. */
.heine-offer-archive .offer-archive-card:hover .offer-archive-image img{transform:none!important}
@media(min-width:761px){
  .heine-offer-archive .offer-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .experience-offer-mosaic-card{min-height:205px}
  .experience-offer-mosaic-card .experience-offer-image{position:relative;height:auto;min-height:0;align-self:stretch;aspect-ratio:auto}
  .experience-offer-mosaic-card .experience-offer-image img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:cover}
}
@media(min-width:901px){
  .heine-offer-archive .offer-archive-card{display:grid;grid-template-columns:minmax(190px,42%) minmax(0,1fr);min-height:250px}
  .heine-offer-archive .offer-archive-image{position:relative;height:100%;min-height:100%;aspect-ratio:auto}
  .heine-offer-archive .offer-archive-image img{position:absolute;inset:0;width:100%;height:100%;min-height:100%;object-fit:cover}
}

/* School profile: a replaceable visual break before the profile section. */
.school-profile-visual-section{padding:0 0 12px;background:#fff}
.school-profile-visual{position:relative;margin:0;aspect-ratio:16/5;border-radius:28px;overflow:hidden;background:#eaf6f1}
.school-profile-visual img{display:block;width:100%;height:100%;object-fit:cover}
.school-profile-visual-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px;text-align:center;color:#17624d;background:linear-gradient(135deg,#eef8f4,#dcefe8)}
.school-profile-visual-placeholder span{font-size:12px;line-height:1.4;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#2fac81}
.school-profile-visual-placeholder strong{font-size:clamp(22px,3vw,34px);line-height:1.15;font-weight:600}
.school-profile-visual-placeholder small{font-size:12px;line-height:1.4;color:#687d75}

/* Service portals are peers: all links now sit on the same action baseline. */
.service-page-v2 .service-tool-action-iserv .service-action-row{align-items:center;justify-content:flex-end;flex-wrap:wrap}
.service-page-v2 .service-tool-action-iserv .service-portal-link{padding:8px 16px!important;line-height:1.5!important}

/* Footer rows stay compact even when mobile text scaling is active. */
.site-footer .footer-service-column{row-gap:0}

/* Schülerrat: längerer Originaltext und kompakte Erfolgsliste. */
.experience-voice-head{max-width:980px}
.experience-voice-head>p{max-width:920px}
.experience-council-achievements{display:grid;gap:10px;margin:15px 0 0;padding:0;list-style:none}
.experience-council-achievements li{position:relative;padding-left:18px;color:#5f786f;font-size:14px;line-height:1.48}
.experience-council-achievements li::before{content:"✓";position:absolute;left:0;top:0;color:#2fac81;font-weight:900}
.site-footer .footer-service-column>strong{margin-bottom:5px;line-height:1.15!important}
.site-footer .footer-service-column a{min-height:22px!important;line-height:1.22!important;padding-block:1px}
.site-footer .footer-identity{line-height:1.18!important}

@media(max-width:720px){
  .school-profile-visual-section{padding-bottom:6px}
  .school-profile-visual{aspect-ratio:16/9;border-radius:20px}
  .school-profile-visual-placeholder{padding:18px}
  .school-profile-visual-placeholder strong{font-size:22px}
  .school-profile-grid{border-top-color:rgba(255,255,255,.13)!important;border-bottom-color:rgba(255,255,255,.13)!important}
  .school-profile-card,
  .school-profile-card:nth-child(2n),
  .school-profile-card:nth-last-child(-n+2){border-bottom:0!important}
  .school-profile-card:not(:last-child)::after{content:"";position:absolute;left:21px;right:21px;bottom:0;height:1px;background:rgba(255,255,255,.13);pointer-events:none}
  .school-profile-card:last-child{border-bottom:0!important}
  .site-footer{padding-top:32px!important;padding-bottom:28px!important}
  .footer-service-grid{gap:17px!important}
  .site-footer .footer-service-column a{min-height:21px!important;line-height:1.15!important}
  .site-footer .footer-meta-nav{gap:4px 18px}
}

/* Card links follow the Startchancen pattern: plain text, contrasting per background. */
@media(max-width:900px){
  .support-page-v5 .support-card-phone-placeholder{display:none}
  .support-foundation-panel .support-foundation-actions{display:flex!important;grid-column:1/-1!important;width:100%;margin-top:4px!important;opacity:1!important;visibility:visible!important}
  .support-foundation-actions .support-foundation-more.heine-more-link,
  .support-foundation-actions .support-foundation-more.heine-more-link:visited{
    display:inline-flex!important;align-self:flex-start!important;min-height:0!important;padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#fff!important;opacity:1!important;visibility:visible!important;
  }
}

/* Lernen & Wege: Klasse 10 sitzt wie die übrigen Stationen direkt auf der Route. */
.heine-learning-v100 .hrn5{top:43%}
.learning-sol-intro-desktop{font-size:16px;line-height:1.55;color:#62766e;max-width:700px;margin:0}
@media(min-width:721px){
  .learning-sol-head-copy>.learning-sol-short,
  .learning-sol-head-copy>.learning-sol-intro-details{display:none!important}
}
@media(max-width:720px){
  .learning-sol-intro-desktop{display:none}
}

/* Neu an der Heine: Termine gut erkennbar, aber weiterhin ruhig. */
.new-heine-page-v106 .new-start-date small{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin-top:8px;
  padding:7px 10px;
  border-radius:9px;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-size:13px;
  line-height:1.25;
  font-weight:800;
}
.new-heine-page-v106 .new-arrival .new-section-head{grid-template-columns:1fr}
.new-heine-page-v106 .new-arrival .new-section-head>p{max-width:none;white-space:nowrap}
@media(max-width:1050px){.new-heine-page-v106 .new-arrival .new-section-head>p{white-space:normal}}

/* Optional event facts stay collapsed until requested. */
.event-extra-details{min-width:0;align-self:start;justify-self:end;width:min(100%,320px)}
.event-extra-details>summary{display:flex;align-items:center;justify-content:flex-end;gap:10px;cursor:pointer;list-style:none;color:var(--g);font-size:14px;font-weight:600;min-height:44px;border-radius:8px}
.event-extra-details>summary::-webkit-details-marker{display:none}
.event-extra-details>summary>span[aria-hidden]{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eef7f3;font-size:23px;font-weight:400}
.event-extra-details>summary>span[aria-hidden]::before{content:'+'}
.event-extra-details[open]>summary>span[aria-hidden]::before{content:'−'}
.event-extra-details>summary:focus-visible{outline:2px solid var(--g);outline-offset:4px}
.event-extra-details .event-archive-meta{margin-top:10px}
@media(max-width:700px){.event-extra-details{grid-column:2;justify-self:start;width:100%}.event-extra-details>summary{justify-content:flex-start}}

.event-essential-info{display:block;margin-top:7px;color:var(--mut);font-size:14px;line-height:1.5}
.event-essential-info>strong{font-weight:650;white-space:nowrap}
.event-info-separator{padding-inline:5px}
.event-extra-details>p{font-size:14px;line-height:1.6;color:var(--mut);margin:12px 0 0}

.event-archive-copy>.event-extra-details{width:100%;max-width:none;margin-top:8px}
.event-archive-copy>.event-extra-details>summary{justify-content:flex-start;width:fit-content}
.event-archive-copy>.event-extra-details>p{max-width:75ch}
.event-overview-row>.event-archive-copy{grid-column:2}

.event-archive-copy>.event-description{max-width:65ch;font-size:15px;line-height:1.6;margin-top:12px}

/* Desktop review September 2026 */
.foundation-page .foundation-join h2{color:#fff}
.foundation-page .foundation-join .kicker{color:#bfe8d9}
.foundation-page .foundation-hero{padding-bottom:48px}
.heine-learning-v100 .seal-card .learning-career-visual{display:grid;place-items:center;padding:32px;background:#f1f8f5}
.heine-learning-v100 .seal-card .learning-career-visual img{position:static!important;inset:auto!important;width:100%!important;height:100%!important;max-width:300px!important;max-height:180px;object-fit:contain!important;transform:none!important}
.event-archive-meta span{font-size:14px;padding:10px 13px;line-height:1.4}
.event-archive-meta span small{font-size:12px;letter-spacing:.02em;text-transform:none}
@media(min-width:1050px){#erweiterte-schulleitung .leadership-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}#erweiterte-schulleitung .leader-card{flex:0 1 calc((100% - 48px)/3);min-width:0}}
@media(min-width:1450px){#erweiterte-schulleitung .leader-card{flex-basis:calc((100% - 96px)/5)}}

.foundation-projects{background:#f2f8f5}.foundation-project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;margin-top:28px}
.foundation-project-card{background:white;border:1px solid var(--line);border-radius:24px;overflow:hidden}.foundation-project-card>div{padding:28px}.foundation-project-card figure{margin:0;aspect-ratio:16/10;overflow:hidden}.foundation-project-card img{width:100%;height:100%;object-fit:cover}.foundation-project-card h3{font-size:24px}.foundation-project-card p{line-height:1.65}

.foundation-join-copy>p+p{margin-top:14px}
@media(min-width:1000px){.school-profile-grid{grid-template-rows:auto auto 1fr auto}.school-profile-grid .school-profile-card{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0}.school-profile-card h3{align-self:start}}

/* Year teams: natural-width pills aligned in two fixed columns. */
/* 2.0.214: Keep the complete group photo stable when members are expanded. */
/* 2.0.215: Continue the photo background to the card edge without stretching the photo. */
.yearteam-card{background:linear-gradient(135deg,#d6efe6,#edf8f4)}
.yearteam-card .yearteam-photo{align-self:start;width:100%;min-width:0;min-height:0;aspect-ratio:4/3;background:transparent}
.yearteam-card .yearteam-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center top}
.yearteam-card .yearteam-content{min-width:0;container-type:inline-size;background:#fff}
.yearteam-card .name-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;justify-items:start;align-items:start}
.yearteam-card .name-cards > *{justify-self:start;width:max-content;max-width:100%;min-width:0}
.yearteam-card .yearteam-lead-pair{display:grid;grid-template-columns:minmax(0,1fr) max-content;min-width:0}
.yearteam-card .name-card{min-width:0;white-space:normal;overflow-wrap:anywhere;display:flex;align-items:center;line-height:1.4}
.yearteam-card .yearteam-class-pill{min-width:38px;padding-inline:7px;justify-content:center;white-space:nowrap}
@container (max-width:309px){
 .yearteam-card .name-cards{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:620px){
 .yearteam-card .name-cards{grid-template-columns:minmax(0,1fr)}
}

/* Each grade occupies its own column, independently of class count. */
.yearteam-card .yearteam-grade-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;align-items:start}
.yearteam-card .yearteam-grade{min-width:0}
.yearteam-card .yearteam-grade .name-cards{grid-template-columns:minmax(0,1fr)}
@container (max-width:309px){.yearteam-card .yearteam-grade-columns{grid-template-columns:minmax(0,1fr)}}
@media(max-width:620px){.yearteam-card .yearteam-grade-columns{grid-template-columns:minmax(0,1fr);gap:20px}}

/* Foundation projects: permanent title and photo, optional details. */
.foundation-projects .foundation-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start;margin-top:24px}
.foundation-project-heading{padding:22px 24px;min-height:104px;display:flex;align-items:center}
.foundation-project-heading h3{margin:0;font-size:22px;line-height:1.35}
.foundation-project-card figure{margin:0;aspect-ratio:16/10;overflow:hidden}
.foundation-project-disclosure{border-top:1px solid var(--line)}
.foundation-project-disclosure summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;cursor:pointer;color:var(--gd);font-size:16px;font-weight:600}
.foundation-project-disclosure summary::-webkit-details-marker{display:none}
.foundation-project-toggle{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--mint);color:var(--g)}
.foundation-project-toggle::before{content:'+';font-size:24px;font-weight:400}
.foundation-project-disclosure[open] .foundation-project-toggle::before{content:'−'}
.foundation-project-disclosure>div{padding:0 24px 24px}
.foundation-project-disclosure p{margin:0;font-size:16px;line-height:1.65}
.foundation-project-disclosure summary:focus-visible{outline:3px solid var(--g);outline-offset:-3px}
@media(max-width:1000px){.foundation-projects .foundation-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.foundation-projects .foundation-project-grid{grid-template-columns:minmax(0,1fr);gap:18px}.foundation-project-heading{min-height:0;padding:20px}.foundation-project-disclosure summary{padding:16px 20px}.foundation-project-disclosure>div{padding:0 20px 20px}}

/* Center the disclosure symbol geometrically, independent of font metrics. */
.foundation-project-toggle{position:relative;width:30px;padding:0;line-height:1}
.foundation-project-toggle::before,.foundation-project-toggle::after{content:'';position:absolute;left:50%;top:50%;width:12px;height:2px;background:currentColor;transform:translate(-50%,-50%)}
.foundation-project-toggle::after{transform:translate(-50%,-50%) rotate(90deg)}
.foundation-project-disclosure[open] .foundation-project-toggle::before{content:''}
.foundation-project-disclosure[open] .foundation-project-toggle::after{display:none}
.foundation-projects p,.foundation-join p,.foundation-project-disclosure p{font-size:16px}

.foundation-join-actions .heine-ui-pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:12px 20px;border:1px solid #d1e4dc;background:#fff;color:#185e4d;font-size:16px;font-weight:600;line-height:1.3;text-decoration:none;border-radius:999px}
.foundation-join-actions .heine-ui-pill:hover{background:#eaf6ef;border-color:#fff}
.foundation-person-link{color:inherit;text-decoration:underline;text-underline-offset:4px;font-weight:600}
.foundation-person-link:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Team portraits: more vertical room, preserving all existing names and links. */
.multi-team-card{display:flex;flex-direction:column}
.multi-team-card .multi-team-photo{aspect-ratio:16/9;flex:none}
.multi-team-card .multi-team-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.multi-team-card .multi-team-content{display:flex;flex-direction:column;flex:1}
.multi-team-card .multi-contact-link{margin-top:auto;padding-top:16px;align-self:flex-start}

/* Override the existing important typography layer, not just its local fallback. */
@layer heine-typography {
  html body main.sc-page p:not(.kicker):not(.sc-lead):not(.sc-brand-claim):not(.sc-reveal-note){font-size:16px!important}
  html body main.sc-page .sc-lead{font-size:18px!important}
  html body main.sc-page .sc-reveal-note{font-size:10px!important}
  html body main.sc-page .sc-brand-claim{font-size:25px!important}
}

/* Projects first; center incomplete rows without stretching image cards. */
.foundation-projects .foundation-project-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;align-items:flex-start}
.foundation-projects .foundation-project-card{flex:0 0 calc((100% - 48px)/3);min-width:0}
.foundation-impact-compact{padding:28px 0}
.foundation-impact-compact details>summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:18px 0;font-weight:600;color:var(--green,#155d4d)}
.foundation-impact-compact details>summary::-webkit-details-marker{display:none}
.foundation-impact-compact details>summary>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eef8f4;flex:none}
.foundation-impact-compact details[open]>summary>span{transform:rotate(45deg)}
.foundation-impact-compact .foundation-section-head{margin-top:20px}
.foundation-page .foundation-projects>.wrap>p{font-size:16px;color:var(--mut,#6d827a)}
@media(max-width:1000px){.foundation-projects .foundation-project-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:620px){.foundation-projects .foundation-project-grid{gap:18px}.foundation-projects .foundation-project-card{flex-basis:100%}}

/* 2.0.201: Keep shared text baselines, with space below the tallest title. */
@media(min-width:1000px){
  .heine-school-page .school-profile-grid .school-profile-card h3{padding-bottom:18px}
}

/* 2.0.203: Separate appointments and use the shared person-pill treatment. */
#heine-home.hh-final-home .hh-calendar-card .hh-event+.hh-event{border-top:1px solid #d1e4dc!important}
.foundation-join .foundation-person-link.heine-ui-pill{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 16px;margin-top:8px;border:1px solid rgba(255,255,255,.6);border-radius:999px;background:transparent;color:#fff;text-decoration:none;font-size:16px;font-weight:600;line-height:1.3}
.foundation-join .foundation-person-link.heine-ui-pill:hover{background:rgba(255,255,255,.12)}
@media(max-width:760px){
 .experience-dog-copy .experience-checks{gap:10px}
 .experience-dog-copy .experience-checks span{min-height:0;padding:12px 14px;gap:12px}
}

/* 2.0.204: Readable staff roles, mobile team disclosures and prominent absence route. */
.team-page .leader-card .leader-copy{min-width:0}
.team-page .leader-card .leader-copy p{white-space:normal;overflow-wrap:anywhere;hyphens:auto;max-width:100%;height:auto}
.yearteam-mobile-disclosure>summary{list-style:none;cursor:pointer}
.yearteam-mobile-disclosure>summary::-webkit-details-marker{display:none}
.yearteam-grade>summary{display:none}
/* 2.0.211: Additional team members start collapsed on every screen size. */
.yearteam-card .yearteam-members{display:block;min-width:0;border:1px solid #dcebe5;border-radius:16px;padding:0;background:#fff}
.yearteam-card .yearteam-members>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;list-style:none;font-size:14px;line-height:1.4;font-weight:650;color:#17624d;cursor:pointer;border-radius:15px}
.yearteam-members>summary::-webkit-details-marker{display:none}
.yearteam-members>summary::marker{content:''}
.yearteam-card .yearteam-members>summary:hover{background:#f3faf7}
.yearteam-card .yearteam-members>summary:focus-visible{outline:3px solid #2fac81;outline-offset:2px}
.yearteam-disclosure-icon{display:grid;place-items:center;flex:none;width:28px;height:28px;background:#eef8f4;border-radius:50%;color:#2fac81;font-size:20px}
.yearteam-members[open]>summary .yearteam-disclosure-icon{transform:rotate(45deg)}
/* 2.0.213: Separate the hover area from the first row of names. */
.yearteam-card .yearteam-members>.name-cards{padding:12px 14px 14px}
.yearteam-card .yearteam-members:not([open])>.name-cards{display:none}
.service-absence-notice{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 36px;padding:26px;border:1px solid #b6d9ca;border-left:5px solid #2fac81;border-radius:20px;background:#eaf6f0}
.service-absence-copy{max-width:680px}
.service-absence-notice h2{margin:6px 0 12px;font-size:clamp(24px,2.4vw,32px);line-height:1.15;color:#17624d}
.service-absence-notice p{margin:0;color:#355f50}
.service-absence-notice .heine-ui-pill{flex:none;background:#fff;color:#17624d;border-color:#b6d9ca;display:inline-flex;align-items:center;gap:10px;max-width:100%;white-space:normal}
@media(max-width:760px){
 .service-daily-compact-head{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:10px}
 .service-daily-compact-head>div{min-width:0;max-width:100%}
 .service-daily-compact-head h2{font-size:clamp(28px,8vw,40px)!important;overflow-wrap:normal}
 .service-daily-compact-head>span{display:block;white-space:nowrap}
 .service-absence-notice{display:block;padding:20px;margin-bottom:28px}
 .service-absence-notice .heine-ui-pill{margin-top:18px}
}
@media(max-width:620px){
 .yearteam-card .yearteam-grade-columns{gap:10px}
 .yearteam-card .yearteam-mobile-disclosure{display:block;min-width:0;border:1px solid #dcebe5;border-radius:16px;padding:0;margin-top:10px;background:#fff}
 .yearteam-card .yearteam-mobile-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;font-size:14px;line-height:1.4;font-weight:650;color:#17624d;cursor:pointer}
 .yearteam-card .yearteam-mobile-disclosure>summary>span:last-child:not(:first-child),.yearteam-card .yearteam-grade>summary>span{display:grid;place-items:center;flex:none;width:28px;height:28px;background:#eef8f4;border-radius:50%;color:#2fac81;font-size:20px}
 .yearteam-card .yearteam-mobile-disclosure[open]>summary>span:last-child{transform:rotate(45deg)}
 .yearteam-card .yearteam-mobile-disclosure>.name-cards{padding:0 14px 14px}
 .yearteam-card .yearteam-mobile-disclosure:not([open])>.name-cards{display:none}
}

/* 2.0.205: consistent, readable contact actions. */
@media(min-width:761px){
 #heine-home.hh-final-home .hh-calendar-card .hh-event+.hh-event{border-top-width:.5px!important;border-top-color:#e4eee9!important}
}
@layer heine-typography {
 html body .service-absence-notice a.heine-ui-pill,
 html body .service-absence-notice a.heine-ui-pill:visited,
 html body .service-absence-notice a.heine-ui-pill:hover,
 html body .service-absence-notice a.heine-ui-pill span{color:#17624d!important;-webkit-text-fill-color:#17624d!important}
 html body .foundation-join a.foundation-person-link,
 html body .foundation-join a.foundation-person-link:visited,
 html body .foundation-join a.foundation-person-link span{color:#17624d!important;-webkit-text-fill-color:#17624d!important}
 html body .topbar .mobile-nav a.mobile-nav-new-at-heine{color:#fff!important;-webkit-text-fill-color:#fff!important}
}
.foundation-join .foundation-person-link{display:inline-flex;gap:8px;align-items:center;padding:0;border:0;background:none;border-radius:0;color:#fff!important;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){
 .topbar .mobile-nav a.mobile-nav-new-at-heine{display:inline-flex!important;width:auto!important;justify-content:center;padding:12px 16px!important;background:var(--g,#2fac81)!important;border:0!important;border-radius:999px!important;font-size:14px!important;font-weight:900!important;color:#fff!important}
 .topbar .mobile-nav .mobile-nav-new-at-heine-arrow{display:none!important}
}

/* Absence information follows the complete timetable. */
.service-times-compact-grid + .service-absence-notice{margin-top:28px;margin-bottom:0}

/* 2.0.207: quieter Heine Heute pagination, retaining touch target sizes. */
@layer heine-typography {
 html body .news-archive-pagination .page-numbers{font-size:14px!important;line-height:1.4!important}
}

/* 2.0.208: keep foreground and background together for every absence-link state. */
@layer heine-typography {
 html body .service-absence-notice a.heine-ui-pill:is(:link,:visited,:hover,:focus,:active){background:#fff!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;border-color:#b6d9ca!important}
 html body .service-absence-notice a.heine-ui-pill:focus-visible{outline:3px solid #17624d;outline-offset:3px}
}

/* Förderverein: same contact pill as the support cards. */
.foundation-page .foundation-person-link.heine-ui-pill,
.foundation-person-link.heine-ui-pill{display:inline-flex!important;align-items:center!important;gap:12px!important;min-height:44px;padding:10px 18px!important;border:1px solid rgba(255,255,255,.48)!important;border-radius:999px!important;background:#f0f8f4!important;color:#17624d!important;text-decoration:none!important;font-size:15px!important;line-height:1.4!important;vertical-align:middle;margin:6px 0}
.foundation-person-link.heine-ui-pill span{text-decoration:none!important}
@media(max-width:760px){
 .heine-school-page .school-profile-grid p{color:#e0eee8!important}
 .heine-school-page .school-profile-grid h3{margin-top:20px!important}
}

/* 2.0.227: Match the pale green mobile holiday highlight. */
.event-archive-item.is-holiday{background:#eef8f4}

/* 2.0.229: Mobile calendar uses the Heine Heute heading hierarchy. */
@media(max-width:760px){
 html body .heine-calendar-mobile-group{display:flex;flex-direction:column;min-width:0;grid-column:1/-1;margin-top:24px}
 html body .heine-calendar-mobile-group>.heine-calendar-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start;margin:0 0 24px}
 html body .heine-calendar-heading>div{min-width:0}
 html body .heine-calendar-heading .heine-calendar-overview-link{display:inline-flex;justify-self:end;align-items:center;gap:6px;min-height:44px;margin:0;padding:0;background:none;border:0;color:#17624d;font-size:14px;line-height:1.5;text-decoration:none}
 html body .heine-calendar-overview-link:hover{text-decoration:underline;text-underline-offset:4px}
 html body .heine-calendar-overview-link:focus-visible{outline:3px solid #2fac81;outline-offset:4px;border-radius:4px}
 html body .heine-calendar-mobile-title,
 html body .heine-calendar-mobile-eyebrow{display:none!important}
 html body .heine-calendar-mobile-group>.hh-calendar-card,
 html body .heine-calendar-mobile-group>.panel{margin:0;width:100%}
 /* Theme fallback without the homepage plugin. */
 #service .heine-calendar-heading .hh-eyebrow{margin:0 0 10px;color:#50ad88;font-size:11px;font-weight:600;letter-spacing:.07em;line-height:1.45;text-transform:uppercase}
 #service .heine-calendar-heading h2{margin:0;color:#17624d;font-size:clamp(32px,10vw,42px);line-height:1.08;letter-spacing:-.035em}
}

/* 2.0.231: Use the same grid, right edge and card spacing for both mobile headings.
   The homepage plugin also styles .hh-heading, so scope both headers equally. */
@media(max-width:760px){
 html body #heine-home.hh-final-home .hh-news-heading,
 html body #heine-home.hh-final-home .heine-calendar-mobile-group>.heine-calendar-heading{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;align-items:start!important;margin-bottom:24px!important;padding-bottom:0!important}
 html body #heine-home.hh-final-home .hh-news-heading>.hh-all-news,
 html body #heine-home.hh-final-home .heine-calendar-heading>.heine-calendar-overview-link{grid-column:1/-1!important;justify-self:end!important;display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;width:max-content!important;max-width:100%;min-height:44px!important;margin:0!important;padding:0!important}
 html body #heine-home.hh-final-home .hh-news-heading+.hh-news-grid,
 html body #heine-home.hh-final-home .heine-calendar-heading+.hh-calendar-card{margin-top:0!important}
 html body #heine-home.hh-final-home .hh-news-heading+.hh-news-grid{padding-top:0!important}
}

/* 2.0.257: A light membership section, using the site's existing palette. */
.foundation-page .foundation-join{background:var(--mint,#eef8f4);color:var(--ink,#31574b)}
.foundation-page .foundation-join h2{color:var(--gd,#17624d)}
.foundation-page .foundation-join .kicker{color:var(--g,#2fac81)}
.foundation-page .foundation-join-copy>p{color:var(--mut,#6d827a)}
.foundation-page .foundation-join-copy>p strong{color:var(--gd,#17624d)}
.foundation-page .foundation-join .foundation-person-link.heine-ui-pill{background:#fff;border:1px solid var(--line,#dcebe5)}

/* 2.0.262: Compact section headings for long legal texts. */
@layer heine-typography {
 html body main.heine-legal-page .content-narrow h2{font-size:26px!important;line-height:1.3!important;font-weight:650!important;letter-spacing:-.015em!important;margin:30px 0 12px}
 html body main.heine-legal-page .content-narrow h3{font-size:21px!important;line-height:1.35!important;font-weight:650!important;letter-spacing:normal!important;margin:24px 0 10px}
 html body main.heine-legal-page .content-narrow h4{font-size:18px!important;line-height:1.4!important;font-weight:650!important}
 @media(max-width:760px){
  html body main.heine-legal-page .content-narrow h2{font-size:22px!important}
  html body main.heine-legal-page .content-narrow h3{font-size:19px!important}
 }
}

/* 2.0.264: Combinable event filters, matching the shared form and button style. */
.event-filters{padding:24px;margin-bottom:30px;background:var(--mint);border:1px solid var(--line);border-radius:22px}
.event-filter-form{display:grid;grid-template-columns:minmax(140px,1fr) minmax(180px,1.2fr) minmax(180px,1.4fr) auto;gap:16px;align-items:end}
.event-filter-form>label{display:flex;flex-direction:column;gap:7px;min-width:0;color:var(--gd);font-weight:600}
.event-filter-form select,.event-filter-form input[type="search"]{width:100%;min-width:0;min-height:44px;border:1px solid #bfdacf;border-radius:12px;background:#fff;color:var(--ink);padding:10px 12px;font:inherit}
.event-filter-form .event-filter-past{grid-column:1/-1;flex-direction:row;align-items:center;gap:9px;font-weight:400;cursor:pointer}
.event-filter-past input{width:18px;height:18px;accent-color:var(--gd);flex:none}
.event-filter-status{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:18px;color:var(--mut);font-size:14px;line-height:1.5}
.event-filter-status a{color:var(--gd);text-decoration:underline;text-underline-offset:3px}
.event-filter-form :is(input,select):focus-visible{outline:3px solid var(--g);outline-offset:2px}
@media(max-width:1000px){.event-filter-form{grid-template-columns:1fr 1fr}.event-filter-form>.heine-ui-pill{justify-self:start}}
@media(max-width:560px){.event-filters{padding:18px}.event-filter-form{grid-template-columns:1fr}.event-filter-form>.heine-ui-pill{width:100%}}

/* 2.0.267: One compact footer row on desktop, wrapping naturally on mobile. */
html body .site-footer.site-footer-compact{padding:20px 0;margin-top:28px}
html body .footer-compact-row{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap}
html body .footer-compact-identity{font-size:14px;line-height:1.5;color:#eaf7f2}
html body .footer-compact-nav{display:flex;align-items:center;flex-wrap:wrap;gap:6px 20px}
html body .footer-compact-nav>a{display:inline-flex;align-items:center;min-height:40px;font-size:14px;color:#eaf7f2}
html body .footer-compact-nav>a:hover{text-decoration:underline;text-underline-offset:4px}
html body .footer-compact-row>.footer-social{margin:0;padding:0;border:0;display:flex;gap:8px}
html body .footer-compact-row>.footer-social a{color:#eaf7f2;border-color:#ffffff55}
html body .footer-compact-row a:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:760px){html body .footer-compact-row{justify-content:flex-start;gap:10px 20px}html body .footer-compact-identity{flex-basis:100%}html body .footer-compact-nav{gap:4px 16px}}

/* 421: approved mobile search design extended to desktop. */
/* 2.0.403: approved search prototype, based on the contact finder. */
@layer heine-mobile-rules{@media(min-width:901px){
html body .service-az-shell.heine-search-shell{border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
html body .service-download-controls{background:#eef7f2!important;padding:20px!important;border:0!important;border-radius:16px!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls,#supportSearch) .heine-search-topline{display:block!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls,#supportSearch) .heine-search-field{display:block!important;margin-bottom:16px!important;min-width:0!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls,#supportSearch) .heine-search-field>span{position:static!important;clip-path:none!important;width:auto!important;height:auto!important;display:block!important;font-size:16px!important;line-height:1.4!important;font-weight:700!important;margin:0 0 10px!important;text-transform:none!important;letter-spacing:normal!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls,#supportSearch) :is(input[type=search],select){height:48px!important;border-radius:14px!important;background:#fff!important;padding:12px!important;width:100%!important;box-sizing:border-box!important;font-size:16px!important;min-width:0!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls) .heine-search-extra,
html body .news-mobile-filters{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:20px 0!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls) .heine-search-extra>summary,
html body .news-mobile-filters>summary{padding:0!important;min-height:44px!important;font-size:16px!important;line-height:1.4!important;justify-content:space-between!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls) .heine-search-extra>summary>small{font-size:13px!important}
html body .event-search-controls>.heine-search-status,
html body .service-download-controls>.heine-search-status,
html body .heine-offer-archive .heine-search-controls>.heine-search-status,
html body .heine-mobile-search-action{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;margin:20px 0 0!important}
html body .event-search-controls .heine-search-status>button,
html body .heine-mobile-search-action>button{background:#17634f!important;color:#fff!important;border:0!important;border-radius:999px!important;min-height:48px!important;padding:12px 20px!important;font-size:16px!important;font-weight:700!important;text-decoration:none!important}
html body .news-archive-form{display:block!important}
html body .news-archive-search{display:block!important;height:auto!important;border:0!important;border-radius:0!important;overflow:visible!important;background:transparent!important}
html body .news-archive-search label{position:static!important;display:block!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;overflow:visible!important;margin:0 0 10px!important;font-size:16px!important;font-weight:700!important;line-height:1.4!important}
html body .news-archive-search input{width:100%!important;box-sizing:border-box!important;border:1px solid #d4e7dc!important;border-radius:14px!important;padding:12px!important;height:48px!important;background:#fff!important}
html body .news-archive-controls>.wrap{padding:20px!important}
html body .heine-mobile-search-action .news-archive-status{flex:1 1 110px!important;margin:0!important;line-height:1.5!important;font-size:13px!important}
html body .heine-mobile-search-action .news-archive-status>span{font-size:13px!important}
html body .heine-site-search-field{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:20px!important}
html body .heine-site-search-field input{height:48px!important;border-radius:14px!important;background:#fff!important}
html body .heine-site-search-field button{min-height:48px!important;border-radius:999px!important;font-size:16px!important;font-weight:700!important;padding:12px 20px!important}
html body .heine-search-page label,.heine-site-search label{font-size:16px!important;font-weight:700!important;margin-bottom:10px!important}
}}


/* 2.0.405: all mobile search surfaces use the same rounded card. */
@layer heine-mobile-rules{@media(min-width:901px){
html body :is(.event-filters.heine-search-shell,.news-archive-controls>.wrap,.heine-offer-archive .heine-search-controls,.service-download-controls,#supportSearch,.heine-site-search-box,.heine-search-page form){border-radius:16px!important;background:#eef7f2!important;box-sizing:border-box!important}
}}

/* 2.0.406: prevent old wrapping flex rules from collapsing the site search input. */
@layer heine-mobile-rules{@media(min-width:901px){
html body .heine-site-search-field{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
html body .heine-site-search-field input{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;flex:0 0 auto!important;height:48px!important;min-height:48px!important;box-sizing:border-box!important}
html body .heine-site-search-field button{align-self:flex-start!important;flex:0 0 auto!important}
}}



@layer heine-mobile-rules{@media(min-width:901px){
html body :is(.event-filters.heine-search-shell,.news-archive-controls>.wrap,.heine-offer-archive .heine-search-controls,.service-download-controls,#supportSearch,.heine-site-search-box,.heine-search-page form){background:#eef7f2!important;border:0!important;border-radius:16px!important;padding:20px!important;box-sizing:border-box!important;overflow:visible!important}
html body .event-filters .event-search-controls,html body #supportSearch>.heine-search-controls{background:transparent!important;border:0!important;padding:0!important}
html body #supportSearch .heine-search-results{background:transparent!important}
html body #supportSearch .heine-search-field[hidden]{display:none!important}
html body .news-mobile-filter-fields{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
html body .news-mobile-filters>summary{display:flex!important;align-items:center;list-style:none;cursor:pointer}
html body .news-mobile-filters>summary:after{content:'+';font-size:22px}
html body .news-mobile-filters[open]>summary:after{content:'−'}
html body .news-archive-select label{display:block!important;font-size:16px!important;font-weight:700!important;margin-bottom:10px!important}
html body :is(.news-archive-select,.heine-search-extra) select{height:48px!important;border-radius:14px!important;background:#fff!important;border:1px solid #d4e7dc!important;font-size:16px!important}
html body main :is(.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-new-contact,.js-foundation-contact,.finder-contact-fallback,.service-parent-text-link,.multi-contact-link){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;max-width:100%!important;min-height:44px!important;padding:8px 16px!important;border:1px solid #bfdacf!important;border-radius:999px!important;background:#fff!important;color:#17624d!important;font-size:16px!important;line-height:1.5!important;text-decoration:none!important;box-sizing:border-box!important}
html body main :is(.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-new-contact,.js-foundation-contact,.finder-contact-fallback,.service-parent-text-link,.multi-contact-link):hover{background:#e5f3ed!important;border-color:#2fac81!important;text-decoration:none!important}
html body .contact-form :is(input:not([type=checkbox]):not([type=radio]),select),html body .new-contact-form :is(input:not([type=checkbox]):not([type=radio]),select){min-height:48px!important;border-radius:14px!important;background:#fff!important;font-size:16px!important}
html body :is(.contact-form,.new-contact-form) label{font-size:16px!important;line-height:1.45!important}
/* Common desktop photo height; the homepage video remains its separate hero. */
html body :is(.school-profile-visual-section .school-profile-visual,.experience-hero-photo.rubric-entry-photo.heine-generated-crop-frame,.learning-hero-photo-wide,.new-hero-photo,.team-hero-photo.has-photo){height:clamp(300px,26.4vw,420px)!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;border-radius:20px!important}
html body :is(.school-profile-visual,.experience-hero-photo,.learning-hero-photo-wide,.new-hero-photo,.team-hero-photo.has-photo)>img{width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important}
html body .school-profile-visual>img{object-position:50% 15%!important}
html body .experience-hero-photo>img{object-position:50% 30%!important}
html body .heine-learning-page .learning-career-visual{aspect-ratio:2/1!important;height:auto!important}
html body .heine-learning-page .learning-career-card{height:auto!important;min-height:0!important}
}}

@layer heine-mobile-rules{@media(min-width:901px){
html body main:is(.heine-experience-page,.support-page,.service-page-v2) .wrap{width:min(1180px,calc(100% - 64px))!important;max-width:1180px!important;margin-inline:auto!important}
html body main:is(.heine-experience-page,.support-page,.service-page-v2)>.section{padding:48px 0!important}
html body main:is(.heine-experience-page,.support-page,.service-page-v2) h2{font-size:clamp(36px,3.5vw,50px)!important;line-height:1.15!important}
html body main:is(.heine-experience-page,.support-page,.service-page-v2) h3{font-size:24px!important;line-height:1.25!important}
html body main:is(.heine-experience-page,.support-page,.service-page-v2) p{font-size:16px!important;line-height:1.6!important}
html body #supportSearch{max-width:860px!important;margin-inline:auto!important}
html body .support-mobile-photo{display:block!important;margin:0!important;aspect-ratio:4/3!important;overflow:hidden!important}
html body .support-mobile-photo img{width:100%!important;height:100%!important;object-fit:cover!important}
html body .support-icon-card{display:flex!important;flex-direction:column!important;padding:0!important;overflow:hidden!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important}
html body .support-icon-card .support-line-icon{display:none!important}
html body .support-icon-copy{padding:24px!important}
html body .support-icon-grid{gap:24px!important}
html body .experience-mobile-partner-logos{display:flex!important;gap:24px!important;align-items:center!important;justify-content:center!important;padding:20px!important;background:#fff!important;border-radius:16px!important;flex-wrap:wrap}
html body .experience-mobile-partner-logos figure{margin:0!important;width:220px!important}
html body .experience-mobile-pad-logo{display:block!important;width:250px!important}
html body .experience-mobile-partner-logos img{display:block!important;width:100%!important;max-height:88px!important;object-fit:contain!important}
html body .experience-voice-work-list{padding:0 24px 24px 44px!important;margin:0!important;font-size:16px!important;line-height:1.6!important}
html body .experience-voice-work-list li{margin-bottom:12px}
html body .experience-voice-work-list li::marker{color:#2fac81}
html body main.service-page-v2{display:flex!important;flex-direction:column!important}
html body main.service-page-v2>section{width:100%!important;order:4}
html body main.service-page-v2>.service-hero{order:0}
html body main.service-page-v2>.service-daily{order:1}
html body main.service-page-v2>.service-quick{order:2}
html body main.service-page-v2>.service-downloads{order:3}
html body .service-parent-card{border-radius:20px!important;padding:24px!important;background:#fff!important}
html body .service-parent-grid{gap:24px!important}
}}
/* Standalone learning details: calm, open information instead of large nested accordions. */
html body .heine-learning-detail .learning-detail-hero{padding:40px 0 24px;background:#fff}
html body .heine-learning-detail .learning-pl-panel{background:#fff!important;border:0!important;padding:0!important;box-shadow:none!important}
html body .heine-learning-detail .learning-pl-content{width:100%!important}
html body .heine-learning-detail .heine-pl-week{display:block!important;background:#eef7f2!important;padding:24px!important;border-radius:20px!important}
html body .heine-learning-detail .heine-pl-week-count{display:none!important}
html body .heine-learning-detail .heine-pl-week-stories{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
html body .heine-learning-detail .heine-pl-week-photo{grid-column:1/-1!important;max-width:760px!important;margin:0 auto 24px!important;width:100%!important;aspect-ratio:4/3!important;height:auto!important}
html body .heine-learning-detail .heine-pl-week-photo img{object-fit:contain!important;width:100%!important;height:100%!important}
html body .heine-learning-detail .heine-pl-week-story{position:static!important;display:block!important;background:#fff!important;border-radius:16px!important;padding:24px!important}
html body .heine-learning-detail .learning-detail-information{margin:32px 0!important}
html body .heine-learning-detail .learning-detail-information>h3>b{display:none!important}
html body .heine-learning-detail .heine-family-gallery{max-width:820px!important;margin-inline:auto!important}
html body .heine-learning-detail .heine-family-card-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}
html body .heine-learning-detail .heine-family-more{background:#fff!important;padding:0!important;border:0!important}
@media(max-width:900px){html body .heine-learning-detail .wrap{width:calc(100% - 36px)!important;margin-inline:auto!important;padding-inline:0!important}html body .heine-learning-detail :is(.heine-family-card-grid,.heine-pl-week-stories){grid-template-columns:1fr!important}html body .heine-learning-detail h1{font-size:36px!important;line-height:1.15!important}html body .heine-learning-detail h2{font-size:28px!important;line-height:1.25!important}}

@layer heine-mobile-rules{@media(min-width:901px){
html body main.service-page-v2 .service-parent-card :is(h2,h3){font-size:24px!important;line-height:1.25!important;color:#17624d!important}
html body main.service-page-v2 .service-parent-card p{color:#526a62!important}
html body .experience-hero-photo>img{object-position:50% 50%!important}
}}
html body .heine-learning-detail .heine-pl-week-model{background:transparent!important;padding:0 0 24px!important;box-shadow:none!important;color:#17624d!important}
html body .heine-learning-detail .heine-pl-week-model p{color:#17624d!important}
html body .heine-learning-detail .heine-family{background:#fff!important}

@layer heine-mobile-rules{@media(min-width:901px){
html body .support-icon-card .support-mobile-photo{width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;align-self:stretch!important}
html body .support-icon-card .support-icon-copy{width:100%!important;box-sizing:border-box!important}
html body .experience-europe-copy>.experience-europe-logo{display:none!important}
html body .footer-compact-row{width:min(1180px,calc(100% - 64px))!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:16px!important}
html body .footer-compact-school{display:flex!important;flex-direction:row!important;align-items:center!important;gap:16px!important;white-space:nowrap!important}
html body .footer-compact-identity{font-size:12px!important}
html body .footer-compact-contact{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:12px!important;font-size:11px!important;white-space:nowrap!important}
html body .footer-compact-nav{display:flex!important;flex-wrap:nowrap!important;white-space:nowrap!important;margin-left:auto!important;gap:12px!important}
html body .footer-compact-nav a,html body .footer-compact-nav button{font-size:12px!important}
html body .footer-social{flex-shrink:0;white-space:nowrap!important}
}}
@layer heine-mobile-rules{@media(min-width:901px) and (max-width:1279px){html body .footer-compact-contact{display:none!important}}}

@layer heine-mobile-rules{@media(min-width:901px){html body .support-icon-card{height:auto!important;min-height:0!important;max-height:none!important}html body .support-icon-card .support-mobile-photo{flex:0 0 auto!important;aspect-ratio:4/3!important}html body .support-icon-card .support-mobile-photo img{object-position:center!important}html body .heine-learning-page .fair-card .learning-career-visual img{object-position:50% 25%!important;transform:none!important}}}

/* Desktop: lesbare Krankmeldung nach der weißen Kartenregel. */
@layer heine-mobile-rules{@media(min-width:901px){html body main.service-page-v2 .service-parent-grid .service-parent-card.service-absence-notice :is(h2,h3){color:#17624d!important;-webkit-text-fill-color:#17624d!important}html body main.service-page-v2 .service-parent-grid .service-absence-notice :is(p,p strong){color:#526a62!important;-webkit-text-fill-color:#526a62!important}}}

@layer heine-mobile-rules{@media(min-width:901px){html body .heine-learning-page .learning-career-card .learning-career-visual{aspect-ratio:2/1!important;height:auto!important}}}

@layer heine-mobile-rules{@media(min-width:901px){html body .heine-learning-page .seal-card .learning-career-visual{position:relative!important}html body .heine-learning-page .seal-card .learning-career-visual img{position:absolute!important;inset:16px!important;width:calc(100% - 32px)!important;height:calc(100% - 32px)!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important}}}

/* 423: Common page builder and corrected desktop refinements. */
@layer heine-mobile-rules{
html body .heine-detail-builder .wrap{width:min(1180px,calc(100% - 64px))!important;max-width:1180px!important;margin-inline:auto!important}
html body .heine-detail-builder>.section,html body .heine-detail-builder>.learning-detail-hero{padding:48px 0!important;margin:0!important;background:#fff!important}
html body .heine-detail-builder>.detail-highlight{background:#eef7f2!important}
html body .heine-detail-builder h1{font-size:clamp(48px,5.7vw,82px)!important;line-height:1.08!important;margin:12px 0 24px!important;color:#17624d!important}
html body .heine-detail-builder h2{font-size:clamp(36px,3.5vw,50px)!important;line-height:1.15!important;margin:10px 0 24px!important;color:#17624d!important}
html body .heine-detail-builder h3{font-size:24px!important;line-height:1.25!important;margin:0 0 16px!important;color:#17624d!important}
html body .heine-detail-builder :is(p,li){font-size:16px!important;line-height:1.6!important;color:#526a62!important}
html body .heine-detail-builder .detail-intro-grid{display:grid!important;grid-template-columns:1.05fr 1fr!important;align-items:center!important;gap:48px!important}
html body .heine-detail-builder .detail-intro-photo{margin:0!important;position:relative!important;aspect-ratio:4/3!important;overflow:hidden!important;border-radius:20px!important;background:#fff!important}
html body .heine-detail-builder .detail-intro-photo img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
html body .heine-detail-builder .detail-intro-photo figcaption{position:absolute;bottom:16px;left:16px;padding:6px 12px;border-radius:8px;background:#fff;font-size:12px}
html body .heine-detail-builder :is(.detail-card-grid,.detail-facts-grid,.detail-contact-grid){display:grid!important;gap:24px!important;align-items:start!important}
html body .heine-detail-builder .detail-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
html body .heine-detail-builder :is(.detail-facts-grid,.detail-contact-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body .heine-detail-builder .detail-info-card{padding:24px!important;border:1px solid #d3e5dc!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important}
html body .heine-detail-builder .detail-info-card p{margin-bottom:0!important}
html body .heine-detail-builder .detail-info-card ul{margin:0!important;padding-left:22px!important}
html body .heine-detail-builder li+li{margin-top:12px!important}
html body .heine-detail-builder li::marker{color:#2fac81}
html body .detail-contact-links{display:flex;flex-wrap:wrap;gap:16px 24px}
@media(min-width:901px){
/* Contact links: text and arrow, no surrounding button frame. */
html body main :is(.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-new-contact,.js-foundation-contact,.finder-contact-fallback,.service-parent-text-link,.multi-contact-link,.heine-contact-link,.experience-cta-row .heine-ui-pill,.lwm-download){display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;min-height:44px!important;padding:6px 0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;font-size:18px!important;font-weight:700!important;line-height:1.5!important;text-decoration:none!important;box-shadow:none!important}
html body main :is(.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-new-contact,.js-foundation-contact,.finder-contact-fallback,.service-parent-text-link,.multi-contact-link,.heine-contact-link,.experience-cta-row .heine-ui-pill):hover{background:transparent!important;text-decoration:none!important;text-underline-offset:4px}
html body .team-hero-photo.has-photo{height:clamp(300px,26.4vw,420px)!important;overflow:hidden!important;background:#fff!important}
html body .team-photo-enlarge{display:block!important;position:relative!important;width:100%!important;height:100%!important}
html body .team-photo-enlarge img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 65%!important}
html body .team-photo-enlarge span{position:absolute;right:16px;bottom:16px;background:#fff;color:#17624d;padding:8px 12px;border-radius:10px;font-size:14px;font-weight:700}
html body .service-downloads .service-az-shell{border:1px solid #bfdacf!important;border-radius:20px!important;overflow:hidden!important;padding:0!important;background:#fff!important}
html body .service-downloads .service-download-controls{border:0!important;border-bottom:1px solid #bfdacf!important;border-radius:19px 19px 0 0!important;margin:0!important}
html body .service-downloads .service-az-list{border:0!important;border-radius:0 0 19px 19px!important;padding:0 20px!important;margin:0!important}
html body .support-finder-layout{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;gap:32px!important;align-items:start!important}
html body .support-finder-layout #supportSearch{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important}
html body .support-wayfinder{padding:24px!important;border:1px solid #d3e5dc;border-radius:20px;background:#fff}
html body .support-wayfinder h3{font-size:24px!important;margin:10px 0 20px}
html body .support-wayfinder ul{list-style:none;margin:0;padding:0;display:grid;gap:20px}
html body .support-wayfinder li{display:grid;gap:4px}
html body .support-wayfinder strong{color:#17624d;font-size:18px}
html body .support-wayfinder span,html body .support-wayfinder p{font-size:16px;line-height:1.6;color:#526a62}
html body .experience-europe-media{height:auto!important;max-height:none!important;overflow:visible!important;background:transparent!important;border-radius:0!important}
html body .experience-mobile-partner-logos{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:20px!important;margin-top:24px!important;padding:0!important;background:transparent!important;border-radius:0!important}
html body .experience-mobile-partner-logos :is(figure,a){display:flex!important;align-items:center!important;justify-content:center!important;width:calc(50% - 10px)!important;height:76px!important;margin:0!important;padding:12px 16px!important;box-sizing:border-box!important;border:1px solid #d3e5dc!important;border-radius:10px!important;background:#fff!important}
html body .experience-mobile-partner-logos img{width:100%!important;height:48px!important;max-height:48px!important;object-fit:contain!important}
}
@media(max-width:900px){
html body .heine-detail-builder .wrap{width:calc(100% - 36px)!important}
html body .heine-detail-builder>.section,html body .heine-detail-builder>.learning-detail-hero{padding:32px 0!important}
html body .heine-detail-builder :is(.detail-intro-grid,.detail-card-grid,.detail-facts-grid,.detail-contact-grid){grid-template-columns:1fr!important;gap:24px!important}
html body .heine-detail-builder h1{font-size:36px!important;line-height:1.15!important}
html body .heine-detail-builder h2{font-size:28px!important;line-height:1.25!important}
html body .heine-detail-builder h3{font-size:20px!important}
html body .heine-detail-builder .detail-info-card{padding:20px!important;border-radius:16px!important}
html body .heine-detail-builder .detail-intro-photo{border-radius:16px!important}
html body .support-wayfinder{display:none!important}
html body #lwm-berufsorientierung .lwm-career-heading{display:grid!important;grid-template-columns:minmax(0,1fr) 96px!important;gap:16px!important;align-items:center!important}
html body #lwm-berufsorientierung .lwm-career-heading h2{font-size:28px!important;margin:0!important}
html body #lwm-berufsorientierung .lwm-career-heading .lwm-seal{display:block!important;position:static!important;width:96px!important;height:90px!important;aspect-ratio:auto!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
html body #lwm-berufsorientierung .lwm-career-heading .lwm-seal img{width:100%!important;height:100%!important;object-fit:contain!important;aspect-ratio:auto!important;transform:none!important}
html body #lwm-berufsorientierung .lwm-career-fair{margin-top:24px!important}
}
}

@layer heine-mobile-rules{@media(min-width:901px){html body .team-hero-photo.has-photo{position:relative!important}html body .team-hero-photo.has-photo .team-photo-enlarge{position:absolute!important;inset:0!important;aspect-ratio:auto!important;height:100%!important}html body .team-hero-photo.has-photo .team-photo-enlarge img{position:absolute!important;inset:0!important;height:100%!important;aspect-ratio:auto!important;object-position:50% 100%!important}html body .team-photo-enlarge span{z-index:2}}}

/* Consistent desktop photo ratio; Team can open its uncropped original. */
@layer heine-mobile-rules{@media(min-width:901px){html body :is(.school-profile-visual-section .school-profile-visual,.experience-hero-photo.rubric-entry-photo.heine-generated-crop-frame,.learning-hero-photo-wide,.new-hero-photo,.team-hero-photo.has-photo){position:relative!important;height:auto!important;aspect-ratio:2/1!important;min-height:0!important}html body :is(.school-profile-visual,.experience-hero-photo,.learning-hero-photo-wide,.new-hero-photo)>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;aspect-ratio:auto!important}html body .team-hero-photo.has-photo .team-photo-enlarge img{object-position:50% 63%!important}}}

@layer heine-mobile-rules{@media(max-width:900px){html body .learning-mobile-profile .lwm-detail-links{background:#eef7f2!important}html body .learning-mobile-profile .lwm-detail-link{padding:20px;margin-top:20px;background:#fff;border:1px solid #d3e5dc;border-radius:16px}html body .learning-mobile-profile .lwm-detail-link h3{font-size:20px!important;margin-top:0!important}html body .team-photo-enlarge{display:block;position:relative}html body .team-photo-enlarge span{display:none!important}}}

@layer heine-mobile-rules{@media(min-width:901px){html body main.service-page-v2 #downloads .service-az-shell .service-download-controls.heine-search-controls{border:0!important;border-bottom:1px solid #bfdacf!important;border-radius:19px 19px 0 0!important}}}

/* 424: quieter information, aligned desktop typography and cards. */
/* 425: Roberts gewählte Laufweite, nur Desktop-Überschriften. */
@layer heine-desktop-type{
@media(min-width:901px){
html body main h1{letter-spacing:-.045em!important}
html body main h2{letter-spacing:-.030em!important}
html body main h3{letter-spacing:-.015em!important}
html body main .leader-card h3,html body main .support-search-person h3{letter-spacing:normal!important}
}}
@layer heine-mobile-rules{
html body .team-photo-dialog{width:min(1100px,calc(100% - 32px));max-height:92vh;padding:16px;border:0;border-radius:16px;background:#fff;box-sizing:border-box}
html body .team-photo-dialog::backdrop{background:rgba(10,35,28,.8)}
html body .team-photo-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
html body .team-photo-dialog-head h2{font-size:24px!important;line-height:1.25!important;margin:0!important;color:#17624d}
html body .team-photo-dialog>img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain}
html body .heine-detail-builder>.detail-ataglance{padding:24px 0!important;background:#eef7f2!important}
html body .heine-detail-builder .detail-ataglance h2{font-size:20px!important;line-height:1.3!important;margin:0 0 16px!important}
html body .detail-fact-strip{display:flex;flex-wrap:wrap;gap:24px 48px}
html body .detail-fact-strip>div{display:grid;gap:4px}
html body .detail-fact-strip strong{font-size:20px;line-height:1.3;color:#17624d}
html body .detail-fact-strip span{font-size:14px;line-height:1.5;color:#526a62}
html body .detail-family-gallery{min-width:0}
html body .family-detail-slide{position:absolute;inset:0;margin:0;display:none}
html body .family-detail-slide.is-active{display:block}
html body .heine-detail-builder .family-detail-slide img{width:100%!important;height:100%!important;object-fit:contain!important;background:#eef7f2}
html body .heine-detail-builder .family-detail-slide:first-child img{object-fit:cover!important}
html body .family-gallery-controls{position:absolute;bottom:14px;right:14px;display:flex;gap:14px;align-items:center;padding:4px 10px;background:#fff;border-radius:999px;color:#17624d;font-size:14px;z-index:2}
html body .family-gallery-controls button{width:40px;height:40px;background:transparent;border:0;color:#17624d;font-size:22px;cursor:pointer}
html body .family-gallery-dots{display:flex;justify-content:center;gap:16px;margin-top:16px}
html body .family-gallery-dots button{position:relative;width:8px;height:8px;padding:0;border:0;background:#b5d5c8;border-radius:999px;cursor:pointer}
html body .family-gallery-dots button:before{content:'';position:absolute;inset:-16px}
html body .family-gallery-dots button.is-active{width:26px;background:#2fac81}
@media(min-width:901px){
html body.home .topbar .brand{width:220px!important;flex:0 0 220px!important}
html body.home .topbar .brand img{width:220px!important}
html body .heine-learning-v100 .learning-classroom-card{min-height:0!important;padding:24px!important}
html body .heine-learning-v100 .learning-space-card{min-height:0!important;height:auto!important;justify-content:flex-start!important}
html body .heine-learning-v100 .learning-space-card>div{min-height:0!important;padding:20px!important}
html body .learning-door-open{margin-top:16px!important}
html body .heine-learning-v100 .learning-open-spaces{align-items:stretch!important}
html body .heine-learning-v100 .learning-space-card small{font-size:16px!important;line-height:1.6!important}
html body .heine-learning-v100 .learning-classroom-card>p{font-size:16px!important;line-height:1.6!important;max-width:none!important}
html body .team-page :is(#schulleitung,#erweiterte-schulleitung) .leadership-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;overflow:visible!important}
html body .team-page :is(#schulleitung,#erweiterte-schulleitung) .leader-card{width:auto!important;flex:none!important;min-width:0!important;height:auto!important;min-height:0!important}
html body .team-page :is(#schulleitung,#erweiterte-schulleitung) .leader-photo{height:320px!important;min-height:0!important}
html body #ganztag .experience-offer-mosaic{grid-auto-rows:1fr!important;align-items:stretch!important}
html body #ganztag .experience-offer-mosaic-card{height:100%!important;min-height:0!important;box-sizing:border-box!important}
html body #ganztag .experience-offer-image{height:auto!important;min-height:0!important;align-self:stretch!important}
html body #ganztag .experience-section-head{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:48px!important;align-items:end!important}
html body #ganztag .experience-section-head h2{font-size:clamp(36px,2.95vw,44px)!important;white-space:nowrap!important}
html body #mitbestimmung .experience-council-card{border:0!important;box-shadow:none!important}
html body .experience-council-achievements li{position:relative;padding-left:34px!important;min-height:24px}
html body .experience-council-achievements li::before,html body .experience-council-label i{font-family:inherit!important;font-style:normal!important;font-size:16px!important;font-weight:700!important;display:inline-grid!important;place-items:center!important;width:24px!important;height:24px!important;color:#17634f!important;background:#e3f2eb!important;border-radius:50%!important;top:0!important;left:0!important}
html body .experience-europe-copy .experience-mobile-partner-logos{gap:16px!important;margin-top:28px!important;justify-content:flex-start!important}
html body .experience-europe-copy .experience-mobile-partner-logos :is(figure,a){width:calc((100% - 32px)/3)!important;height:80px!important;padding:10px!important;border:0!important;background:#fff!important}
html body .experience-europe-copy .experience-mobile-partner-logos img{height:60px!important;max-height:60px!important}
html body main.service-page-v2>.service-daily,html body .service-daily-compact-panel,html body .service-times-panel{background:#fff!important}
html body #downloads .service-download-topline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;position:relative!important}
html body #downloads .service-download-topline .service-az-search{flex:1!important;min-width:0!important}
html body #downloads .service-download-topline .service-filter-status{position:absolute!important;top:0!important;right:0!important;margin:0!important;width:auto!important}
html body #downloads .service-az-search>span{padding-right:240px!important}
html body .support-finder-layout .support-wayfinder{order:0!important}
html body .support-finder-layout #supportSearch{order:1!important}
html body .support-pathways-head{display:grid!important;grid-template-columns:1.4fr 1fr!important;gap:80px!important;align-items:end!important}
html body .support-pathways-head h2{white-space:nowrap!important}
html body .support-icon-card .support-icon-copy{padding-top:16px!important}
html body main :is(.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-new-contact,.js-foundation-contact,.finder-contact-fallback,.service-parent-text-link,.multi-contact-link,.heine-contact-link,.experience-cta-row .heine-ui-pill){font-size:16px!important;line-height:1.5!important}
html body #teamFinderResult .support-search-person{display:block!important;padding:20px!important}
html body #teamFinderResult .support-search-person h3{font-size:24px!important;line-height:1.25!important;margin:0 0 8px!important}
html body #teamFinderResult .support-search-person p{font-size:14px!important;line-height:1.5!important;font-weight:400!important;margin:0!important}
html body #teamFinderResult .support-search-person>.heine-ui-pill{display:inline-flex!important;min-height:44px!important;margin-top:12px!important;padding:6px 0!important;background:transparent!important;border:0!important;border-radius:0!important;color:#17624d!important;font-size:16px!important;font-weight:700!important;line-height:1.5!important}
html body .support-wayfinder{background:#eef7f2!important}
}
@media(min-width:1200px){html body .team-page :is(#schulleitung,#erweiterte-schulleitung) .leadership-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(min-width:901px) and (max-width:1199px){html body #ganztag .experience-section-head,html body .support-pathways-head{grid-template-columns:1fr!important;gap:20px!important}html body #ganztag .experience-section-head>p,html body .support-pathways-head>p{justify-self:end;max-width:380px}html body #ganztag .experience-section-head h2{font-size:36px!important}}
@media(max-width:900px){html body .experience-bildungsnetzwerk-logo{display:flex!important;max-width:180px!important;align-items:center;justify-content:center;padding:12px;background:#fff;border-radius:10px}html body .experience-bildungsnetzwerk-logo img{width:100%;height:60px;object-fit:contain}html body .detail-fact-strip{gap:20px!important}html body .detail-fact-strip>div{flex:1 1 140px}}
}

@layer heine-mobile-rules{html body .detail-family-stage .family-detail-slide{margin:0!important;height:100%!important;width:100%!important}html body .team-photo-dialog-head button{min-height:44px;padding:8px 16px;border:1px solid #bfdacf;border-radius:999px;background:#fff;color:#17624d;font-size:16px;font-weight:650}}

@layer heine-mobile-rules{@media(min-width:901px){html body .learning-door-description{max-width:900px;font-size:16px;line-height:1.6;color:#526a62;margin:0 0 24px!important}html body .heine-learning-v100 .learning-classroom-card h3{margin:0 0 12px!important}html body .heine-learning-v100 .learning-classroom-card>p{margin-bottom:0!important}html body .learning-door-open{padding:10px 13px!important}html body .learning-door-graphic,html body .learning-door-frame{width:30px!important;height:44px!important}html body .learning-door-return{display:none!important;grid-column:2;margin:0!important;font-size:14px!important;line-height:1.5!important;color:#17624d}html body .learning-door-world.is-open .learning-door-return{display:block!important}html body main :is(.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-new-contact,.js-foundation-contact,.finder-contact-fallback,.service-parent-text-link,.multi-contact-link,.heine-contact-link,.experience-cta-row .heine-ui-pill),html body #teamFinderResult .support-search-person>.heine-ui-pill{font-weight:650!important}}}
/* 425: gleiche Detailseiten-Flächen und flexible Bereichsköpfe. */
@layer heine-mobile-rules{
html body .heine-detail-builder>.detail-highlight{background:#eef7f2!important}
html body .detail-gallery-pl .family-detail-slide img{object-fit:contain!important}
html body .experience-council-contact dd{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
html body .experience-council-contact dd a{display:inline-flex;min-height:44px;align-items:center;font-weight:650;color:#17624d}
@media(min-width:901px){
html body #ganztag .experience-section-head{grid-template-columns:1fr!important;gap:20px!important}
html body #ganztag .experience-section-head h2{white-space:normal!important}
html body #ganztag .experience-section-head>p{justify-self:start!important;max-width:760px!important}
html body #mitbestimmung .experience-council-card.is-current h3{font-size:28px!important;line-height:1.2!important}
html body .support-pathways-head h2{white-space:normal!important}
html body .detail-fact-strip{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}
html body .detail-fact-strip span{max-width:260px}
}
@media(min-width:901px) and (max-width:1199px){html body .detail-fact-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
}

/* 426: Bildkarten, klarer Kontaktbereich und lesbarer einzeiliger Footer. */
@layer heine-mobile-rules{@media(min-width:901px){
html body #ansprechperson.finder-section-v5{background:#fff!important}
html body #ansprechperson .support-wayfinder{background:#fff!important;border:1px solid #d3e5dc!important}
html body #ansprechperson #supportSearch{background:#fff!important;border:1px solid #bfdacf!important}
html body #ansprechperson #supportSearch .heine-search-controls{background:#eef7f2!important;border-bottom:1px solid #bfdacf!important}
html body #ansprechperson #teamFinderResult{background:#fff!important;color:#526a62!important}
html body #ansprechperson .heine-search-empty{background:#fff!important;color:#526a62!important}
html body .footer-compact-row{width:min(1440px,calc(100% - 64px))!important;gap:14px!important}
html body .footer-compact-identity{font-size:14px!important}
html body .footer-compact-contact{font-size:12px!important}
html body .footer-compact-nav :is(a,button){font-size:14px!important}
html body .footer-compact-nav{gap:10px!important}
html body .footer-compact-school{gap:14px!important}
}}

/* 427: gemeinsame Lernweg-Detailseiten. */
@layer heine-mobile-rules{
html body .heine-detail-builder .detail-card-grid{align-items:stretch!important}
html body .heine-detail-builder .detail-card-grid>.detail-info-card{height:100%!important;box-sizing:border-box!important}
html body .heine-detail-builder .detail-back-row{padding-top:16px!important}
html body .heine-detail-builder>.learning-detail-hero{padding-top:24px!important}
html body .heine-detail-builder .detail-next-step .detail-contact-grid{margin-top:28px!important;align-items:stretch!important}
html body .heine-detail-builder .detail-contact-panel{padding:0!important;border:0!important;background:transparent!important;border-radius:0!important}
html body .heine-detail-builder .detail-contact-links{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important}
html body .heine-detail-builder .detail-next-step .detail-downloads{padding-left:0!important;list-style:none!important}
}

@layer heine-mobile-rules{@media(min-width:901px){html body .support-pathways .support-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}}

/* 429: schmalerer Footer, kompakte Begleitung und direkter Finder. */
@layer heine-mobile-rules{@media(min-width:901px){
html body .footer-compact-row{width:min(1180px,calc(100% - 64px))!important}
html body .support-pathways-head{grid-template-columns:1fr!important;gap:18px!important}
html body .support-pathways-head>p{justify-self:start!important;max-width:760px!important}
html body .support-pathways .support-icon-card .support-mobile-photo{aspect-ratio:2/1!important}
html body .support-pathways .support-mobile-photo img{object-position:50% 35%!important}
html body .support-pathways .support-icon-grid{align-items:stretch!important}
html body .support-pathways .support-icon-card .support-icon-copy{display:flex!important;flex-direction:column!important;flex:1!important}
html body .support-pathways .support-contact-details{margin-top:auto!important;padding-top:16px!important;width:100%;display:block!important}
html body .support-contact-details>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;cursor:pointer;list-style:none;color:#17624d;font-size:16px;font-weight:650}
html body .support-contact-details>summary::-webkit-details-marker{display:none}
html body .support-contact-details[open]>summary span{font-size:0}
html body .support-contact-details[open]>summary span:after{content:'−';font-size:20px}
html body .support-contact-details:not([open])>:not(summary){display:none!important}
html body .support-contact-details .support-card-people{padding-top:12px}
html body .support-finder-layout{display:block!important}
html body .support-finder-layout #supportSearch{max-width:760px!important;width:100%!important;margin:0!important}
}}

/* 430: PL-Kontakte nebeneinander bei ausreichendem Desktop-Platz. */
@layer heine-mobile-rules{@media(min-width:901px){html body .heine-detail-builder .detail-next-step .detail-contact-links{flex-direction:row!important;flex-wrap:wrap!important;gap:8px 24px!important}}}

/* 431: kompakter Desktop-Kontaktfinder und gemeinsame Kontaktregel. */
@layer heine-mobile-rules{@media(min-width:901px){
html body .support-pathways-head>p{max-width:none!important;white-space:normal!important}
html body #gemeinsamer-unterricht .support-mobile-photo img{object-position:50% 25%!important}
html body #schulsozialarbeit .support-mobile-photo img{object-position:50% 10%!important}
html body .support-contact-details .support-card-people{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:4px 8px!important}
html body .support-card-people .contact-person-separator{color:#526a62;font-size:16px}
html body #supportSearch .heine-search-topline{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;align-items:start!important}
html body #supportSearch #supportFinderTopicWrap{display:block!important}
html body #supportSearch .heine-search-status{grid-column:1/-1!important}
html body #supportSearch #teamFinderResult[data-selection-state="empty"]{display:none!important}
html body #supportSearch select:disabled{opacity:.6}
}}

/* 432: Teamfoto auf derselben Seite einpassen und vergrößern. */
@layer heine-mobile-rules{
html body .team-photo-dialog{width:calc(100% - 24px)!important;max-width:none!important;height:96vh!important;height:96dvh!important;max-height:96vh!important;max-height:96dvh!important;padding:16px!important;overflow:hidden!important}
html body .team-photo-dialog[open]{display:flex!important;flex-direction:column!important;gap:12px!important}
html body .team-photo-dialog-head{flex:none!important;margin:0!important}
html body .team-photo-tools{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;flex:none;color:#17624d;font-size:14px}
html body .team-photo-tools label{display:flex;gap:12px;align-items:center;margin:0}
html body .team-photo-tools input{width:180px;min-height:44px;accent-color:#17624d}
html body .team-photo-tools output{min-width:46px;font-variant-numeric:tabular-nums}
html body .team-photo-tools button{min-height:44px;border:1px solid #bfdacf;border-radius:999px;padding:8px 16px;background:#fff;color:#17624d;font-size:16px;font-weight:650}
html body .team-photo-tools>span{margin-left:auto;color:#526a62}
html body .team-photo-stage{flex:1;min-height:0;min-width:0;overflow:auto;background:#eef7f2;overscroll-behavior:contain}
html body .team-photo-stage>img{display:block;max-width:none!important;max-height:none!important;object-fit:contain;margin:0 auto}
@media(max-width:600px){html body .team-photo-dialog{padding:12px!important}html body .team-photo-tools input{width:120px}html body .team-photo-tools>span{margin-left:0;width:100%}}
}

/* 433: vollständige Familienfotos, kuratierte AGs und kompakte Desktop-Suche. */
@layer heine-mobile-rules{
html body .heine-detail-builder .detail-gallery-family .family-detail-slide img{object-fit:cover!important}
@media(min-width:901px){
html body #ganztag .experience-section-head>p{max-width:none!important;width:100%!important}
html body .heine-search-shell .heine-search-controls{padding:16px 20px 12px!important;background:#eef7f2!important}
html body .heine-search-shell .heine-search-field>span{margin:0 0 8px!important;font-size:16px!important;line-height:24px!important;font-weight:650!important;text-transform:none!important;letter-spacing:normal!important}
html body .heine-search-shell .heine-search-extra{margin:8px 0 0!important;padding:0!important}
html body .heine-search-shell .heine-search-extra>summary{min-height:44px!important;padding:4px 0!important}
html body .heine-search-shell .heine-search-topline{gap:10px!important;position:relative!important}
html body .heine-search-shell .heine-search-topline>.heine-search-status{position:absolute!important;top:0!important;right:0!important;margin:0!important;min-height:24px!important;line-height:24px!important;padding:0!important;display:flex!important;align-items:center!important;gap:12px!important}
html body #downloads .service-download-topline .service-filter-status{top:0!important;min-height:24px!important;line-height:24px!important}
html body .heine-search-shell .heine-search-status strong{font-size:14px!important;line-height:24px!important;display:block!important;margin:0!important}
html body #downloads .service-filter-disclosure{margin-top:8px!important;padding:0!important}
html body #downloads .service-filter-disclosure>summary{padding:4px 0!important;min-height:44px!important}
html body #supportSearch .heine-search-topline>.heine-search-status{position:static!important;grid-column:1/-1!important;min-height:0!important;line-height:1.5!important}
html body #supportSearch .heine-search-status:has(strong:empty):not(:has(button:not([hidden]))){display:none!important}
}}
@layer heine-mobile-rules{@media(min-width:901px){
html body #downloads .service-download-controls{padding:16px 20px 12px!important}
html body #downloads .service-download-topline{gap:10px!important}
html body #downloads .service-az-search{margin:0!important}
html body #downloads .service-filter-disclosure{margin:8px 0 0!important}
html body .event-search-controls .heine-search-topline>.heine-search-status{position:static!important;min-height:44px!important}
html body .event-search-controls .heine-search-status>strong{position:absolute;top:0;right:0}
html body .heine-offer-archive .heine-search-controls{padding:16px 20px 12px!important}
html body .heine-offer-archive .heine-search-extra{margin:8px 0 0!important;padding:0!important}
html body .heine-offer-archive .heine-search-extra>summary{min-height:44px!important;padding:4px 0!important}
html body .news-archive-form,html body .heine-search-page form[role="search"]{padding:16px 20px!important;background:#eef7f2!important;border:1px solid #bfdacf!important;border-radius:20px!important}
html body .news-archive-form label,html body .heine-search-page form[role="search"]>label,html body .heine-site-search-box form>label{font-size:16px!important;line-height:24px!important;font-weight:650!important;color:#17624d!important;letter-spacing:normal!important;text-transform:none!important}
html body .news-archive-form :is(input,select),html body .heine-site-search-field input{min-height:48px!important;border:1px solid #cfe3dc!important;border-radius:14px!important;background:#fff!important;font-size:16px!important;padding:10px 14px!important}
html body .news-archive-form{gap:12px!important}
}}

@layer heine-mobile-rules{@media(min-width:901px){
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls,#supportSearch) .heine-search-field{margin:0!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls) .heine-search-extra{margin:8px 0 0!important}
html body :is(.event-search-controls,.service-download-controls,.heine-offer-archive .heine-search-controls,#supportSearch>.heine-search-controls){padding:16px 20px 12px!important}
html body .heine-offer-archive .heine-search-topline>.heine-search-status{position:absolute!important;top:0!important;right:0!important;margin:0!important;min-height:24px!important}
}}
@layer heine-mobile-rules{@media(min-width:901px){
html body .news-archive-controls>.wrap:has(#heine-news-search){padding:0!important;background:transparent!important;border:0!important}
html body .news-archive-form:has(#heine-news-search){position:relative!important;padding:16px 20px 12px!important}
html body .news-archive-form:has(#heine-news-search) .news-archive-status{position:absolute!important;top:16px!important;right:20px!important;margin:0!important;font-size:14px!important;line-height:24px!important}
html body .heine-site-search-box:has(#heine-header-search),html body .heine-search-page form:has(#heine-results-search){padding:16px 20px 12px!important;background:#eef7f2!important;border:1px solid #bfdacf!important;border-radius:20px!important}
}}

/* 434: ruhige Teamkontakte, ein Schulbüro-Kontakt und Foto ohne Zoomregler. */
@layer heine-desktop-type{
html body a:hover,html body main a:hover,html body footer a:hover{text-decoration:none!important}
}
@layer heine-mobile-rules{
html body .team-photo-stage{overflow:hidden!important}
html body .team-photo-stage>img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
html body .team-page .multi-team-card .multi-contact-link{align-self:flex-start!important;justify-content:flex-start!important;text-align:left!important;margin-left:0!important;margin-right:auto!important}
@media(min-width:901px){
html body #schulbuero .office-portrait-grid{align-items:stretch!important}
html body #schulbuero .office-person{height:100%!important;box-sizing:border-box!important}
html body #schulbuero .leader-copy{flex:1!important}
html body #schulbuero>.wrap:last-child{margin-top:20px!important}
html body #schulleitung .leader-role-long{font-size:14px!important;white-space:nowrap!important;letter-spacing:normal!important}
}}

/* 435: Anmeldung eigenständig, Desktop-Einleitung breit, Teamkontakt rechts. */
@layer heine-mobile-rules{
html body .heine-offer-archive .wrap>.heine-ag-registration{margin:0 0 20px!important;padding:0 20px!important;border:1px solid #cfe3dc!important;border-radius:20px!important;background:#fff!important}
html body .heine-offer-archive .wrap>.heine-ag-registration>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;min-height:56px!important;padding:12px 0!important;list-style:none!important;color:#17624d!important;font-size:16px!important;font-weight:650!important;box-sizing:border-box!important}
html body .heine-offer-archive .wrap>.heine-ag-registration>summary::-webkit-details-marker{display:none}
html body .heine-offer-archive .wrap>.heine-ag-registration>summary>b{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cfe3dc;border-radius:50%;font-size:22px;color:#2fac81}
html body .heine-offer-archive .wrap>.heine-ag-registration>p{margin:0!important;padding:0 0 18px!important;font-size:16px!important;line-height:1.6!important;max-width:850px}
html body .team-page .multi-team-card .multi-contact-link{align-self:flex-end!important;justify-content:flex-end!important;text-align:right!important;margin-left:auto!important;margin-right:0!important}
@media(min-width:901px){
html body .heine-offer-archive .offer-archive-hero p{max-width:none!important;width:100%!important;font-size:18px!important;line-height:1.6!important}
html body .heine-offer-archive .offer-archive-hero{padding-bottom:24px!important}
html body .heine-offer-archive .offer-archive-hero+.section{padding-top:0!important}
html body .team-page .leader-contact-link{align-self:flex-end!important;text-align:right!important;margin-left:auto!important}
html body #schulbuero>.wrap:last-child{text-align:right!important}
}}

/* 436: Berufsorientierung – mehr Inhaltsraum, kompakte Fußbereiche. */
@layer heine-mobile-rules{@media(min-width:901px){
html body #berufsorientierung .learning-practice-contact,html body #berufsorientierung .learning-career-event-meta{margin-top:auto!important;min-height:78px!important;height:78px!important;flex:0 0 78px!important;padding-top:12px!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:6px!important}
html body #berufsorientierung .learning-practice-people{margin-top:0!important}
html body #berufsorientierung .learning-practice-contact a{margin-top:0!important;min-height:32px!important}
html body #berufsorientierung .seal-card .learning-career-visual{padding:0!important;overflow:hidden!important}
html body #berufsorientierung .seal-card .learning-career-visual img{inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;transform:scale(1.65)!important;transform-origin:50% 45%!important}
}}

/* 437: gemeinsamer Desktop-Suchbaukasten nach Ganztag. */
@layer heine-mobile-rules{@media(min-width:901px){
html body :is(.heine-search-shell,#supportSearch){border:1px solid #dcebe5!important;border-radius:22px!important;overflow:hidden!important;background:#fff!important}
html body :is(.heine-search-shell,#supportSearch)>.heine-search-controls,html body .event-search-controls{position:relative!important;background:#eef7f2!important;padding:16px 20px 12px!important;border-radius:21px 21px 0 0!important;border-bottom:1px solid #dcebe5!important}
html body :is(.heine-search-shell,#supportSearch) .heine-search-field :is(input,select){min-height:48px!important;border-radius:14px!important;border:1px solid #cfe3dc!important;background:#fff!important;padding:10px 14px!important;font-size:16px!important}
html body .heine-search-shell .heine-search-extra>summary{min-height:44px!important;padding:4px 0!important;font-size:16px!important}
html body #supportSearch .heine-search-topline{position:relative!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
html body #supportSearch .heine-search-status>strong:not(:empty){position:absolute!important;right:0!important;top:0!important;font-size:14px!important;line-height:24px!important}
html body #supportSearch .heine-search-status>button{margin-left:auto!important}
html body #supportSearch .heine-search-status:has(strong:not(:empty)):not(:has(button:not([hidden]))){min-height:0!important;height:0!important}
html body #supportSearch .heine-search-field>span{padding-right:110px!important}
html body .news-archive-form:has(#heine-news-search){border:1px solid #dcebe5!important;border-radius:22px!important;gap:8px!important;padding:16px 20px 12px!important}
html body .news-archive-form .news-archive-search{padding-top:32px!important}
html body .news-archive-search>label{position:absolute!important;top:16px!important;left:20px!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;overflow:visible!important;white-space:normal!important;font-size:16px!important;line-height:24px!important;color:#279b78!important}
html body .news-archive-form .news-mobile-filters{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
html body .news-archive-form .news-mobile-filters>summary{min-height:44px!important;padding:4px 0!important;box-sizing:border-box!important;font-size:16px!important;color:#17624d!important}
html body .news-archive-form .heine-mobile-search-action{padding:0!important;margin-top:8px!important}
html body .heine-site-search-box:has(#heine-header-search){padding:20px!important;background:#fff!important}
html body .heine-site-search-box form:has(#heine-header-search),html body .heine-search-page form:has(#heine-results-search){padding:16px 20px 12px!important;border-radius:22px!important;border:1px solid #dcebe5!important;background:#eef7f2!important}
html body .heine-site-search-box form>label,html body .heine-search-page form>label{display:block!important;margin:0 0 8px!important;line-height:24px!important;color:#279b78!important}
}}

/* GU-Mindmap: testweise, nur Entwurfsseite. */
html body main:has(.gu-trial)>.section>.content-narrow{max-width:1180px!important;width:calc(100% - 64px)!important;padding:0!important}
html body main:has(.gu-trial) .subhero{padding-bottom:8px!important}
.gu-trial-note{font-size:13px;color:#647c72;margin:0 0 16px}.gu-back{display:inline-block;font-size:16px;font-weight:650;color:#17624d;margin-bottom:24px}.gu-lead{font-size:22px;line-height:1.5;max-width:850px;margin:0 0 40px}
.gu-map{display:grid;grid-template-columns:1fr 1.18fr 1fr;grid-template-rows:auto auto auto;gap:28px;position:relative;align-items:stretch;margin-bottom:64px;background:linear-gradient(#e0eee8 1px,transparent 1px),linear-gradient(90deg,#e0eee8 1px,transparent 1px);background-size:24px 24px;padding:24px;border-radius:20px}
.gu-map-center{grid-column:2;grid-row:2;align-self:center;text-align:center;padding:28px 12px;background:#17624d;color:#fff;border-radius:20px;position:relative;box-shadow:0 0 0 10px #eef7f2}
html body .gu-map-center h2{font-size:32px!important;color:#fff!important;margin:12px 0!important}.gu-map-center>span{font-size:13px;letter-spacing:.04em}.gu-map-center p{font-size:18px!important;line-height:1.6;margin:0;color:#fff!important}
.gu-node{position:relative;background:#fff;border:1px solid #bfdacf;border-radius:16px;padding:20px;box-shadow:0 4px 14px #17624d08;min-width:0}
html body .gu-node h2{display:inline;font-size:23px!important;line-height:1.25!important;background:linear-gradient(transparent 45%,var(--gu-accent,#ccece4) 45%);box-decoration-break:clone;-webkit-box-decoration-break:clone;color:#17624d!important;letter-spacing:-.02em!important}
.gu-node-intro{font-weight:650;color:#17624d;font-size:16px!important;line-height:1.5;margin:14px 0 8px}.gu-node ul{padding:0 0 0 18px;margin:0;list-style:disc}.gu-node li{font-size:15px!important;line-height:1.5!important;margin:0 0 7px;padding-left:2px}.gu-node li::marker{color:#2fac81}.gu-node a{display:inline-block;font-size:15px;font-weight:700;color:#17624d;margin-top:12px}.gu-perspective{font-size:13px!important;color:#647c72;line-height:1.5;margin:12px 0 0}
.gu-wir{grid-area:1/1;--gu-accent:#f7d5d7}.gu-unterricht{grid-area:1/2;--gu-accent:#f6d7b5}.gu-haltung{grid-area:1/3;--gu-accent:#f3e9a9}.gu-trauma{grid-area:2/1;--gu-accent:#e7d7ef}.gu-familie{grid-area:2/3;--gu-accent:#f4cee0}.gu-autismus{grid-area:3/1;--gu-accent:#f3e9a9}.gu-kreativ{grid-area:3/2;--gu-accent:#cce9ee}.gu-coaching{grid-area:3/3;--gu-accent:#ccece4}
.gu-next{display:grid;grid-template-columns:2fr 1fr;gap:48px;align-items:end;margin-bottom:32px}.gu-next h2{font-size:38px!important}.gu-next p{font-size:18px;line-height:1.6}.gu-next>div:last-child{text-align:right}.gu-next a{color:#17624d;font-size:18px;font-weight:700}
@media(max-width:900px){html body main:has(.gu-trial)>.section>.content-narrow{width:calc(100% - 36px)!important}.gu-lead{font-size:18px}.gu-map{display:flex;flex-direction:column;padding:16px;gap:18px}.gu-map-center{align-self:stretch;order:-1}.gu-next{grid-template-columns:1fr;gap:12px}.gu-next>div:last-child{text-align:left}.gu-next h2{font-size:28px!important}}

@media(min-width:901px){
.gu-map::before{content:"";position:absolute;inset:24px;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M500 500 L166 166 M500 500 L500 166 M500 500 L834 166 M500 500 L166 500 M500 500 L834 500 M500 500 L166 834 M500 500 L500 834 M500 500 L834 834' stroke='%2395bfae' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-size:100% 100%}
.gu-node,.gu-map-center{z-index:1}
}
@layer heine-mobile-rules{@media(min-width:901px){
html body .news-archive-form .news-mobile-filters>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;list-style:none!important}
html body .news-archive-form .news-mobile-filters>summary::after{content:"+"!important;display:grid!important;place-items:center!important;width:28px!important;height:28px!important;border:1px solid #dcebe5!important;border-radius:50%!important;background:#fff!important;color:#279b78!important;font-size:20px!important;font-weight:400!important;line-height:1!important}
html body .news-archive-form .news-mobile-filters[open]>summary::after{transform:rotate(45deg)}
}}

/* 438: GU-Mindmap verdichten, Kontakt direkt darunter. */
html body .gu-trial .gu-lead{font-size:20px!important;line-height:1.6!important;margin-bottom:32px!important}
html body .gu-trial .gu-map{gap:36px;margin-bottom:32px;background-image:linear-gradient(#e9f2ed 1px,transparent 1px),linear-gradient(90deg,#e9f2ed 1px,transparent 1px)}
html body .gu-trial .gu-node{padding:20px;align-self:center;box-shadow:none}
html body .gu-trial .gu-node li{font-size:16px!important;line-height:1.5!important;margin-bottom:7px!important}
html body .gu-trial .gu-node-intro{font-weight:700!important;margin:12px 0 10px!important}
html body .gu-trial .gu-map-center{padding:28px 16px}
html body .gu-trial .gu-next{margin:0 0 24px!important;padding:24px 0!important;border-top:1px solid #bfdacf;grid-template-columns:1fr 1fr;gap:24px}
html body .gu-trial .gu-next h2{font-size:28px!important;margin:8px 0 12px!important}
html body .gu-trial .gu-next nav{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
html body .gu-trial .gu-next a{display:inline-block;min-height:32px;line-height:1.6;font-size:16px;font-weight:650}
@media(min-width:901px){html body .gu-trial .gu-map::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1000' preserveAspectRatio='none'%3E%3Cpath d='M500 500 L166 166 M500 500 L500 166 M500 500 L834 166 M500 500 L166 500 M500 500 L834 500 M500 500 L166 834 M500 500 L500 834 M500 500 L834 834' stroke='%235b967e' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}}
@media(max-width:900px){html body .gu-trial .gu-map{gap:18px}html body .gu-trial .gu-node{align-self:stretch}html body .gu-trial .gu-next{grid-template-columns:1fr}html body .gu-trial .gu-next nav{align-items:flex-start}html body .gu-trial .gu-lead{font-size:18px!important}}

/* 439: zwei echte GU-Einblicke, Originalformat ohne angeschnittene Lernmaterialien. */
html body .gu-trial .gu-intro{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;margin:0 0 32px}
html body .gu-trial .gu-intro .gu-lead{margin:0!important;font-size:22px!important}
html body .gu-trial .gu-intro-photo{margin:0!important}
html body .gu-trial .gu-intro-photo img,html body .gu-trial .gu-coaching-photo img{display:block;width:100%!important;height:auto!important;aspect-ratio:3/2;object-fit:contain!important;max-width:100%;border-radius:16px}
html body .gu-trial .gu-intro-photo figcaption{font-size:13px;color:#647c72;line-height:1.5;margin-top:8px}
html body .gu-trial .gu-coaching-photo{margin:0 0 16px!important}
html body .gu-trial .gu-coaching-photo img{border-radius:10px}
@media(max-width:900px){html body .gu-trial .gu-intro{grid-template-columns:1fr;gap:20px}html body .gu-trial .gu-intro .gu-lead{font-size:18px!important}}

/* 440: einheitliche Nummerierungen je Hintergrund, keine wechselnden Kartenfarben. */
@layer heine-mobile-rules{
html body main :is(.school-card-number,.school-fact-index,.foundation-impact-number,.sc-project-index,.heine-start-number,.new-path-number,.heine-guide-choice-number),html body main .school-principle summary>span:first-child,html body main .learning-sol-card>span:first-child{color:#17624d!important;-webkit-text-fill-color:#17624d!important;opacity:1!important}
html body main .school-profile .school-card-number,html body main .school-facts .school-fact-index{color:#84dfbf!important;-webkit-text-fill-color:#84dfbf!important}
}

@layer heine-mobile-rules{html body main .heine-start-number{background:#eef7f2!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;border-color:#bfdacf!important}}

/* Kooperationen: einheitlich offene Logo-Flächen auf Startseite und Unsere Schule. */
@layer heine-mobile-rules{
html body .partners-section .partner-card,html body .hh-partners .hh-partner-mark,html body .school-network .school-partner-logo{border:0!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;box-sizing:border-box!important}
html body .partners-section .partner-card:hover,html body .school-network .school-partner-logo:hover{border:0!important;box-shadow:none!important;background:transparent!important;transform:none!important}
html body .partners-section .partner-card img,html body .hh-partners .hh-partner-mark img,html body .school-network .school-partner-logo img{object-fit:contain!important;max-width:100%!important;height:100%!important;max-height:88px!important;width:auto!important}
@media(min-width:901px){html body .partners-section .partner-card,html body .hh-partners .hh-partner-mark,html body .school-network .school-partner-logo{height:128px!important}}
}

/* 441: GU – offene Themen, vertrauter Baukasten mit dezenten Akzenten. */
@layer heine-mobile-rules{
html body .gu-open .gu-open-title{font-size:clamp(30px,3.3vw,46px)!important;line-height:1.12!important;letter-spacing:-.03em!important;margin:12px 0 20px!important;color:#17624d!important}
html body .gu-open-title>span{background:linear-gradient(transparent 68%,#fae0cc 68%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
html body .gu-open .gu-open-values{display:flex;flex-wrap:wrap;gap:20px 36px;padding:20px 0;margin:0 0 36px;border-block:1px solid #d4e5dc;font-size:18px;font-weight:700;color:#17624d}
html body .gu-open-values>span:nth-child(1){box-shadow:inset 0 -8px #dcefe5}html body .gu-open-values>span:nth-child(2){box-shadow:inset 0 -8px #fae0cc}html body .gu-open-values>span:nth-child(3){box-shadow:inset 0 -8px #e9dff1}
html body .gu-open-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 48px;margin-bottom:36px}
html body .gu-open-topic{padding:0 0 0 20px;border-left:3px solid #bfdacf;min-width:0}
html body .gu-open-topic:nth-child(2){border-color:#f0d2b9}html body .gu-open-topic:nth-child(3){border-color:#ddcce8}
html body .gu-open-topic h2{font-size:26px!important;line-height:1.25!important;letter-spacing:-.02em!important;margin:0 0 12px!important;color:#17624d!important}
html body .gu-open-topic p,html body .gu-open-topic li{font-size:16px!important;line-height:1.65!important;color:#526a62!important}
html body .gu-open-topic p{margin:0 0 12px!important}html body .gu-open-topic ul{margin:0!important;padding-left:20px!important;list-style:disc!important}html body .gu-open-topic li{padding-left:2px;margin:0 0 6px!important}html body .gu-open-topic li::marker{color:#17624d}
html body .gu-open-topic .gu-perspective{font-size:13px!important;margin-top:12px!important}
html body .gu-open-photo{width:100%;max-width:680px;margin:0 auto 36px!important}
html body .gu-open-photo img{display:block;width:100%!important;height:auto!important;aspect-ratio:3/2;object-fit:contain!important;border-radius:16px}
html body .gu-open-photo figcaption{font-size:13px!important;line-height:1.5!important;margin-top:8px;color:#647c72}
@media(max-width:900px){html body .gu-open-topics{grid-template-columns:1fr;gap:28px}html body .gu-open-topic h2{font-size:24px!important}html body .gu-open .gu-open-values{gap:12px 20px;font-size:16px;margin-bottom:28px}html body .gu-open .gu-open-title{font-size:30px!important}}
}

/* 442: GU-Einstieg ohne doppelte Überschrift, direkter Kontakt im Entwurf. */
@layer heine-mobile-rules{
html body .heine-gu-page>.section{padding-top:24px!important}
html body .heine-gu-page .gu-open .gu-open-title{font-size:clamp(38px,4.3vw,62px)!important;line-height:1.1!important;letter-spacing:-.035em!important}
html body .heine-gu-page .gu-trial-note{font-size:12px!important;margin:0 0 8px!important;color:#647c72!important}
html body .heine-gu-page .gu-back{margin-bottom:24px!important}
html body .heine-gu-page .gu-intro{align-items:center;gap:40px}
html body .heine-gu-page .gu-intro .gu-lead{font-size:18px!important;line-height:1.6!important;margin-top:16px!important}
html body .heine-gu-page .gu-next .gu-contact{display:inline-flex;justify-content:flex-end;align-items:center;min-height:44px}
html body .heine-gu-page .gu-open-photo{max-width:560px}
@media(max-width:900px){html body .heine-gu-page .gu-open .gu-open-title{font-size:36px!important}html body .heine-gu-page .gu-intro{gap:20px}}
}

/* 443: kürzere GU-Themen und Lernförderung mit zugehörigem Foto. */
@layer heine-mobile-rules{
html body .heine-gu-page>.section{padding-top:16px!important}
html body .heine-gu-page .gu-back{margin-bottom:16px!important}
html body .gu-open-topics{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px!important;margin-bottom:32px!important}
html body .gu-open-topics .gu-open-topic h2{font-size:24px!important}
html body .gu-learning-insight{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin:0 0 32px;padding:28px 0;border-top:1px solid #d4e5dc}
html body .gu-learning-insight .gu-open-photo{margin:0!important;max-width:none!important}
html body .gu-learning-insight .gu-open-topic{border-color:#f0d2b9}
@media(max-width:900px){html body .gu-open-topics,html body .gu-learning-insight{grid-template-columns:1fr;gap:24px!important}html body .gu-learning-insight{padding-top:24px}}
@media(min-width:901px) and (max-width:1100px){html body .gu-open-topics{grid-template-columns:1fr 1fr}html body .gu-open-topics .gu-open-topic:last-child{grid-column:1/-1}}
}

/* 444: BO-Kontakt und Termin einheitlich aufklappbar. */
@layer heine-mobile-rules{
html body #berufsorientierung .learning-career-disclosure{display:block!important;margin-top:auto!important;padding-top:12px!important;border:0!important;border-top:1px solid #dcebe5!important;border-radius:0!important;background:transparent!important;box-sizing:border-box!important}
html body #berufsorientierung .learning-career-disclosure>summary{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px;min-height:32px!important;list-style:none!important;padding:0!important;color:#17624d!important;font-size:14px!important;line-height:1.5!important;font-weight:650!important;cursor:pointer}
html body #berufsorientierung .learning-career-disclosure>summary::-webkit-details-marker{display:none}
html body #berufsorientierung .learning-career-disclosure>summary>span{font-size:20px;font-weight:400;line-height:1}
html body #berufsorientierung .learning-career-disclosure[open]>summary>span{font-size:0}
html body #berufsorientierung .learning-career-disclosure[open]>summary>span::after{content:"−";font-size:20px}
html body #berufsorientierung .learning-career-disclosure>div{padding-top:8px!important}
html body #berufsorientierung .learning-career-disclosure:not([open])>div{display:none!important}
@media(min-width:901px){html body #berufsorientierung .learning-career-disclosure{height:auto!important;min-height:46px!important;flex:0 0 auto!important}html body #berufsorientierung .learning-career-disclosure[open]{min-height:78px!important}}
}

/* 445: kurze feine Trennlinien in den Fakten von PL und Familienklasse. */
@layer heine-mobile-rules{
html body .detail-fact-strip>div{position:relative}
html body .detail-fact-strip>div:nth-child(n+2)::before{content:"";position:absolute;left:-12px;top:50%;width:1px;height:32px;transform:translateY(-50%);background:#bfdacf}
@media(max-width:1199px){html body .detail-fact-strip>div:nth-child(odd)::before{display:none}html body .detail-fact-strip>div:nth-child(even)::before{display:block}}
@media(max-width:900px){html body .detail-fact-strip>div:nth-child(even)::before{left:-10px}}
@media(max-width:350px){html body .detail-fact-strip>div:nth-child(n+2)::before{display:block;left:0;top:-10px;width:32px;height:1px;transform:none}}
}

/* 446: echte Preisfotos ergänzen das Veranstalterlogo links. */
@layer heine-mobile-rules{
html body .heine-partner-card .heine-award-photo{grid-column:1/-1;margin:16px 0 0!important;width:100%;min-width:0}
html body .heine-partner-card .heine-award-photo img{display:block;width:100%!important;height:280px!important;object-fit:contain!important;background:#eef7f2;border-radius:12px}
html body .heine-partner-card .heine-award-photo figcaption{margin-top:8px;font-size:13px;line-height:1.5;color:#647c72}
@media(max-width:900px){html body .heine-partner-card .heine-award-photo img{height:260px!important}}
}

/* 2.0.448: shared plus/minus rule; early important layer also overrides mobile variants. */
@layer heine-desktop-type{
 html body main details>summary.heine-disclosure-summary{position:relative!important;padding-right:52px!important;list-style:none!important}
 html body main details>summary.heine-disclosure-summary::-webkit-details-marker{display:none!important}
 html body main details>summary.heine-disclosure-summary>.heine-disclosure-legacy-icon{display:none!important}
 html body main details>summary.heine-disclosure-summary::after{content:'+'!important;position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:#eef8f4!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;font-family:inherit!important;font-size:22px!important;font-weight:400!important;line-height:1!important;opacity:1!important;box-shadow:none!important}
 html body main details[open]>summary.heine-disclosure-summary::after{content:'−'!important;transform:translateY(-50%)!important}
 html body #berufsorientierung .learning-career-event-meta>div>strong,html body .lwm-fair-event .lwm-download{color:#2fac81!important;-webkit-text-fill-color:#2fac81!important}
}

/* 2.0.471: approved photo entry on desktop; service/support and mobile unchanged. */
@layer heine-desktop-type{
@media(min-width:901px){
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero){position:relative!important;isolation:isolate!important;display:flex!important;align-items:flex-end!important;height:clamp(480px,38vw,540px)!important;min-height:480px!important;max-height:540px!important;padding:0 0 18px!important;margin:0!important;background:#eef8f4!important;border:0!important;border-bottom:2px solid #fff!important;border-radius:0!important;overflow:hidden!important;box-sizing:border-box!important}
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero)::before{content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;background:linear-gradient(180deg,rgba(244,250,247,0) 0%,rgba(244,250,247,0) max(0px,calc(var(--heine-copy-start,70%) - 150px)),rgba(244,250,247,.82) var(--heine-copy-start,70%),rgba(244,250,247,.84) 100%)!important}
html body main :is(.learning-hero-wide-copy,.experience-hero-copy,.team-hero-copy,.new-hero-copy){position:relative!important;z-index:2!important;display:block!important;max-width:1180px!important;width:calc(100% - 48px)!important;margin:0 auto!important;padding:24px 0!important;background:transparent!important;box-sizing:border-box!important}
html body main :is(.team-hero>.wrap,.team-hero-grid,.new-hero-inner){position:static!important;display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
html body main :is(.learning-hero-wide-media,.experience-hero-fullbleed,.team-hero-photo,.new-hero-media){position:absolute!important;inset:0!important;z-index:0!important;display:block!important;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;padding:0!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;overflow:hidden!important;transform:none!important}
html body main :is(.learning-hero-photo,.experience-hero-photo,.new-hero-photo),html body main .team-hero-photo>a{display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}
html body main :is(.learning-hero-wide-media,.experience-hero-fullbleed,.team-hero-photo,.new-hero-media) img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 42%!important;transform:none!important;border-radius:0!important;max-height:none!important}
html body main .learning-hero-photo picture{display:block!important;height:100%!important}
html body main .team-hero-photo img{object-position:50% 48%!important}
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero) h1{font-size:clamp(56px,5.7vw,82px)!important;line-height:1.08!important;letter-spacing:-.045em!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;max-width:1180px!important;margin:8px 0 0!important;text-shadow:none!important}
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero) .kicker{color:#17624d!important;-webkit-text-fill-color:#17624d!important}
html body main :is(.learning-hero-wide-copy,.experience-hero-copy,.team-hero-copy,.new-hero-copy)>p{color:#234f40!important;-webkit-text-fill-color:#234f40!important;max-width:1000px!important;font-size:18px!important;line-height:1.55!important;margin:16px 0 0!important}
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero) :is(.heine-ui-entry,.learning-hero-statement,.learning-mobile-jumps,.experience-mobile-header){display:none!important}
html body main .team-hero-photo .team-photo-enlarge>span{position:absolute!important;top:16px!important;right:24px!important;bottom:auto!important;z-index:3!important;background:#fff!important;color:#17624d!important}
}
}

/* 2.0.473: taller shared desktop photo headers, scaled for wide group photos. */
@layer heine-desktop-type{@media(min-width:901px){
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero),html body main.heine-photo-entry-glass .school-hero{height:max(640px,44.45vw)!important;min-height:640px!important;max-height:none!important}
html body main .team-hero-photo img{object-position:50% 60%!important}
}}

.heine-mobile-entry-preview{display:none}
@layer heine-desktop-type{
@media(max-width:900px){
html body.heine-mobile-header-v1 main :is(.school-hero,.school-mobile-opening,.school-profile-visual-section,.learning-hero-wide,.lwm-hero,.experience-hero,.team-hero,.new-hero){display:none!important}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview{position:relative!important;isolation:isolate!important;display:flex!important;align-items:flex-end!important;min-height:460px!important;height:76svh!important;max-height:none!important;background:#eef8f4!important;overflow:hidden!important;border-bottom:2px solid #fff!important}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(244,250,247,0) 20%,rgba(244,250,247,.34) 40%,rgba(244,250,247,.90) 70%,rgba(244,250,247,.96) 100%)}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview-photo{position:absolute!important;inset:0!important;z-index:-2!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 42%!important;transform:none!important;border-radius:0!important}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview-copy{padding:28px 20px!important;width:100%!important;box-sizing:border-box!important}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview .kicker{color:#17624d!important;font-size:13px!important;line-height:1.4!important;margin:0 0 12px!important}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview h1{color:#17624d!important;-webkit-text-fill-color:#17624d!important;font-size:38px!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:0!important}
html body.heine-mobile-header-v1 .heine-mobile-entry-preview p{display:block!important;color:#234f40!important;-webkit-text-fill-color:#234f40!important;font-size:17px!important;line-height:1.55!important;margin:16px 0 0!important}
html body.heine-mobile-header-v2 :is(.school-mobile-opening figure,.lwm-hero .lwm-photo,.experience-mobile-header,.team-hero-photo,.new-hero-media){position:relative!important;width:100vw!important;max-width:none!important;left:50%!important;right:auto!important;margin-left:-50vw!important;margin-right:0!important;border-radius:0!important;border:0!important;box-sizing:border-box!important}
html body.heine-mobile-header-v2 :is(.school-mobile-opening figure,.lwm-hero .lwm-photo,.experience-mobile-header,.team-hero-photo,.new-hero-media) img,html body.heine-mobile-header-v2 .new-hero-photo{border-radius:0!important;width:100%!important}
html body.heine-mobile-header-v2 .team-hero-photo>a{border-radius:0!important}
}
}

/* 2.0.482: extended mobile text zone only for experience and team. */
@layer heine-desktop-type{
@media(max-width:900px){
html body.heine-mobile-header-v1 main:has(>.experience-hero) .heine-mobile-entry-preview,html body.heine-mobile-header-v1 main:has(>.team-hero) .heine-mobile-entry-preview{height:66svh!important;min-height:420px!important;background:#eef8f4!important}
html body.heine-mobile-header-v1 main:has(>.experience-hero) .heine-mobile-entry-preview-photo,html body.heine-mobile-header-v1 main:has(>.team-hero) .heine-mobile-entry-preview-photo{height:100%!important}
html body.heine-mobile-header-v1 main:has(>.experience-hero) .heine-mobile-entry-preview-copy,html body.heine-mobile-header-v1 main:has(>.team-hero) .heine-mobile-entry-preview-copy{padding-bottom:20px!important}
html body.heine-mobile-header-v1 .heine-learning-page .heine-mobile-entry-preview-photo{object-position:10% 42%!important}
}
}

/* 2.0.483: desktop contact names side by side, middle-dot separators. */
@layer heine-desktop-type{@media(min-width:901px){
html body .heine-experience-page .experience-council-contact dd{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:0 12px!important;margin-left:0!important}
html body .heine-experience-page .experience-council-contact dd a{display:inline-flex!important;align-items:center!important;min-height:44px!important;white-space:nowrap!important}
html body .heine-experience-page .experience-council-contact dd a+a::before{content:'·';display:inline-block;margin-right:12px;color:#17624d;font-weight:400}
}}
@layer heine-desktop-type{@media(min-width:901px){html body .heine-experience-page .experience-council-meeting>.experience-council-contact{display:block!important}html body .heine-experience-page .experience-council-contact dd{width:100%!important;grid-column:1/-1!important}}}
/* 2.0.485: experience mobile text baseline returns to the shared photo entry. */
@layer heine-desktop-type{@media(max-width:900px){
html body.heine-mobile-header-v1 main:has(>.experience-hero) .heine-mobile-entry-preview{height:76svh!important;min-height:460px!important}
html body.heine-mobile-header-v1 main:has(>.experience-hero) .heine-mobile-entry-preview-copy{padding-bottom:28px!important}
}}
/* 2.0.486: all five mobile photo entries share height and text baseline. */
@layer heine-desktop-type{@media(max-width:900px){
html body.heine-mobile-header-v1.heine-mobile-alignment-preview main:has(>.team-hero) .heine-mobile-entry-preview{height:76svh!important;min-height:460px!important}
html body.heine-mobile-header-v1.heine-mobile-alignment-preview main:has(>.team-hero) .heine-mobile-entry-preview-copy{padding-bottom:28px!important}
}}
/* 2.0.487: preview only – text finishes close to the photo's lower edge. */
@layer heine-desktop-type{@media(max-width:900px){
html body.heine-mobile-alignment-preview:is(.heine-mobile-header-v1,#heine-mobile-header-preview) main .heine-mobile-entry-preview-copy{padding-bottom:0!important}
html body.heine-mobile-alignment-preview:is(.heine-mobile-header-v1,#heine-mobile-header-preview) main .heine-mobile-entry-preview-copy>p:last-child{margin-bottom:0!important}
}}

@layer heine-desktop-type{@media(max-width:900px){html body.heine-mobile-alignment-preview:is(.heine-mobile-header-v1,#heine-mobile-header-preview) main .heine-mobile-entry-preview{padding:0!important}}}

/* 2.0.489: approved mobile photo-header standard, based on Unsere Schule reference. */
@layer heine-desktop-type{@media(max-width:900px){
html body:is(.heine-mobile-header-v1,#heine-mobile-header-standard) main .heine-mobile-entry-preview{height:76svh!important;min-height:460px!important;padding:0!important}
html body:is(.heine-mobile-header-v1,#heine-mobile-header-standard) main .heine-mobile-entry-preview-copy{padding:28px 20px 32px!important}
html body:is(.heine-mobile-header-v1,#heine-mobile-header-standard) main .heine-mobile-entry-preview-copy>p:last-child{margin-bottom:0!important}
}}

/* 2.0.490: desktop header alignment, learning focus and council contacts. */
@layer heine-desktop-type{@media(min-width:901px){
html body main.heine-photo-entry-glass .school-hero{display:flex!important;align-items:flex-end!important;box-sizing:border-box!important;border-bottom:2px solid #fff!important}
html body main.heine-photo-entry-glass .school-hero-copy>p{font-size:18px!important;line-height:1.55!important;margin:16px 0 0!important;max-width:1000px!important}
html body main .learning-hero-wide .learning-hero-photo img{object-position:var(--heine-header-x,50%) var(--heine-header-y,45%)!important;transform:scale(var(--heine-header-zoom,1))!important;transform-origin:var(--heine-header-x,50%) var(--heine-header-y,45%)!important}
html body .heine-experience-page .experience-council-meeting>.experience-council-contact{display:none!important}
}}

/* 492: new-starter photo fills the entire desktop header, including text area. */
@layer heine-desktop-type{@media(min-width:901px){
html body main .new-hero .new-hero-media .new-hero-photo{position:absolute!important;inset:0!important;height:100%!important;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;background:transparent!important}
html body main .new-hero .new-hero-media .new-hero-photo img{height:100%!important;min-height:0!important;max-height:none!important;object-position:50% 0%!important}
}}

/* 493: optional desktop year-team image-height preview. */
@layer heine-desktop-type{@media(min-width:901px){
html body.heine-team-height-preview .yearteam-card .yearteam-photo.has-photo{position:relative!important;align-self:stretch!important;height:100%!important;aspect-ratio:auto!important;min-height:360px!important;overflow:hidden!important}
html body.heine-team-height-preview .yearteam-card .yearteam-photo.has-photo img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:50% 25%!important}
}}

/* 494: shorter desktop entries; mobile dog introduction before photo and natural team photos. */
@layer heine-desktop-type{
@media(min-width:901px){
html body main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero),html body main.heine-photo-entry-glass .school-hero{height:calc(clamp(420px,calc(74svh - 160px),calc(42.857vw - 38px)) + 80px)!important;min-height:500px!important;max-height:none!important}
}
@media(max-width:900px){
html body .yearteam-card .yearteam-photo.has-photo{height:auto!important;min-height:0!important;aspect-ratio:auto!important;align-self:start!important;background:transparent!important}
html body .yearteam-card .yearteam-photo.has-photo img{position:static!important;display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;transform:none!important}
html body .experience-dog .experience-dog-grid{display:flex!important;flex-direction:column!important;gap:20px!important}
html body .experience-dog .experience-dog-copy{display:contents!important}
html body .experience-dog .experience-dog-heading{order:0!important}
html body .experience-dog .experience-dog-copy>p{order:1!important;margin:0!important}
html body .experience-dog .experience-dog-photo{order:2!important;margin:0!important;width:100%!important}
html body .experience-dog .experience-checks{order:3!important;width:100%!important}
html body .experience-dog .experience-cta-row{order:4!important}
}}

/* 496: mobile person-card wrapping and plain school-office contact link. */
.school-network-desktop-break{display:none}
@media(min-width:901px){.school-network-desktop-break{display:block}}
@layer heine-desktop-type{@media(max-width:900px){
html body .leader-card .leader-photo{align-self:stretch!important;height:100%!important;min-height:148px!important;max-height:none!important;aspect-ratio:auto!important}
html body .leader-card .leader-copy>p{word-break:normal!important;overflow-wrap:normal!important;hyphens:auto!important;font-size:16px!important;line-height:1.45!important}
html body .leader-card .team-role-separator{display:block!important;height:0!important;overflow:hidden!important}
html body .team-page .service-parent-text-link.js-service-office-contact{appearance:none!important;display:block!important;width:max-content!important;max-width:100%!important;margin:18px 0 0 auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;font:inherit!important;font-weight:650!important;text-align:right!important;white-space:normal!important}
}}

/* 497: desktop learning-path cards match support cards; PL voices and calm Erasmus alignment. */
.pl-first-hand{display:none}
@layer heine-desktop-type{@media(min-width:901px){
html body .learning-path-cards{gap:24px!important;align-items:stretch!important}
html body .learning-path-cards .learning-path-card{border:1px solid #dcebe5!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important;text-decoration:none!important}
html body .learning-path-cards .learning-path-photo{height:auto!important;aspect-ratio:2/1!important}
html body .learning-path-cards .learning-path-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:40% 42%!important}
html body .learning-path-cards .learning-path-copy{padding:16px 24px 24px!important;gap:12px!important}
html body .learning-path-cards .learning-path-kicker{display:none!important}
html body .learning-path-cards .learning-path-title{font-size:24px!important;line-height:1.25!important;letter-spacing:-.015em!important}
html body .learning-path-cards .learning-path-text{font-size:18px!important;line-height:1.55!important}
html body .learning-path-cards .learning-path-action{margin-top:auto!important;justify-content:flex-end!important;font-size:16px!important}
html body .learning-career-intro{display:block!important}
html body .learning-career-intro h2{max-width:none!important;font-size:clamp(36px,3.5vw,50px)!important;white-space:nowrap!important}
html body .learning-career-intro>p{max-width:1000px!important;margin:20px 0 0!important}
html body .pl-first-hand{display:block!important}
html body .pl-first-hand h2{margin-bottom:28px}
html body .pl-voices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
html body .pl-voice{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px;margin:0;align-items:center}
html body .pl-voice>img{display:block;width:100%;height:320px;object-fit:cover;object-position:36% 45%;border-radius:16px}
html body .pl-voice blockquote{font-size:20px;line-height:1.55;margin:0 0 20px;color:#17624d;font-style:normal}
html body .pl-voice figcaption>strong,html body .pl-voice figcaption>span{display:block}
html body .pl-voice figcaption>span{font-size:14px;line-height:1.5;margin-top:4px;color:#647c72}
html body .experience-europe-grid{align-items:start!important}
html body .experience-europe-media{align-self:start!important;margin-top:0!important;padding-top:0!important}
html body .experience-europe-facts{align-items:stretch!important}
html body .experience-europe-facts>div{height:auto!important;min-height:110px!important;box-sizing:border-box!important}
html body .experience-europe-copy .experience-mobile-partner-logos{align-items:stretch!important}
html body .experience-europe-copy .experience-mobile-partner-logos :is(figure,a){height:88px!important;min-height:88px!important;margin:0!important;align-self:stretch!important;box-sizing:border-box!important}
html body .experience-europe-copy .experience-mobile-partner-logos img{height:60px!important;max-height:60px!important}
}}

@layer heine-desktop-type{@media(min-width:901px){html body #learning-path-pl .learning-path-photo img{object-position:50% 0%!important}}}

/* 498: contact text links consistently dark Heine green, both viewport ranges. */
@layer heine-desktop-type{
html body main :is(.leader-contact-link,.heine-contact-link,.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-service-office-contact),html body #supportSearch [data-contact-id]{color:#17624d!important;-webkit-text-fill-color:#17624d!important}
html body main :is(.leader-contact-link,.heine-contact-link,.js-team-contact,.js-learning-contact,.js-support-direct-contact,.js-service-office-contact):hover,html body #supportSearch [data-contact-id]:hover{color:#17624d!important;-webkit-text-fill-color:#17624d!important;text-decoration:none!important}
}

/* 499: shared desktop card borders, service links and class-five disclosures. */
@layer heine-desktop-type{@media(min-width:901px){
html body .learning-path-cards .learning-path-card,html body .support-icon-grid .support-icon-card{border:1px solid #dcebe5!important;box-shadow:none!important;border-radius:20px!important}
html body main.service-page-v2 :is(.service-quick-card,.service-more-rail-item,.service-parent-card,.service-times-compact-grid){border:1px solid #dcebe5!important;border-radius:20px!important;box-shadow:none!important}
html body main.service-page-v2 .service-parent-card :is(a.heine-ui-pill,.service-parent-text-link){appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-height:44px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;font:inherit!important;font-weight:650!important;text-decoration:none!important}
html body main.service-page-v2 .service-parent-card{display:flex!important;flex-direction:column!important;align-items:stretch!important}
html body main.service-page-v2 .service-parent-card>a.heine-ui-pill{align-self:flex-end!important;margin-top:auto!important}
html body main.service-page-v2 .service-signup-copy{display:flex!important;flex-direction:column!important;flex:1!important}
html body main.service-page-v2 .service-feature-actions{margin-top:auto!important;justify-content:flex-end!important;align-items:center!important;gap:16px!important}
html body .support-page>section.support-hero-v5{padding-bottom:24px!important}
html body .finder-section-v5{padding-top:28px!important}
html body .new-class5 .heine-start-timeline{display:none!important}
html body .new-class5 .new-class5-mobile{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:20px!important;margin-top:28px!important}
html body .new-class5-mobile>details{border:1px solid #dcebe5!important;border-radius:20px!important;background:#fff!important;padding:0!important;overflow:hidden!important}
html body .new-class5-mobile>details>summary{display:block!important;cursor:pointer!important;min-height:88px!important;box-sizing:border-box!important;padding:22px 60px 22px 24px!important;font-size:22px!important;font-weight:650!important;color:#17624d!important}
html body .new-class5-mobile>details>summary small{display:block!important;font-size:14px!important;font-weight:400!important;color:#647c72!important;margin-top:6px!important}
html body .new-class5-mobile .new-arrival-mobile-body{padding:0 24px 24px!important}
html body .new-class5-mobile .heine-start-photo{margin:0 0 18px!important;transform:none!important}
html body .new-class5-mobile .heine-start-photo img{display:block!important;width:100%!important;height:220px!important;object-fit:cover!important;border-radius:12px!important}
html body .new-class5-mobile .heine-start-photo figcaption{display:none!important}
html body .support-gu-more{text-align:right;margin:14px 0!important}
}}

/* 500: stacked section introductions and contained team disclosures on desktop. */
@layer heine-desktop-type{@media(min-width:901px){
html body .school-profile .school-section-head,html body .new-week-head{display:block!important}
html body .school-profile .school-section-head>p,html body .new-week-head-copy{margin:20px 0 0!important;max-width:1000px!important}
html body .new-week .new-gallery-context{display:none!important}
html body .yearteam-card{background:#fff!important;align-items:start!important;overflow:hidden!important}
html body .yearteam-card .yearteam-photo.has-photo{height:auto!important;min-height:0!important;aspect-ratio:auto!important;align-self:start!important;background:#fff!important}
html body .yearteam-card .yearteam-photo.has-photo img{position:static!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;transform:none!important}
html body .yearteam-card>.yearteam-members{grid-column:1/-1!important;width:100%!important;box-sizing:border-box!important;border:0!important;border-top:1px solid #dcebe5!important;border-radius:0!important;margin:0!important;padding:0!important;background:#fff!important}
html body .yearteam-card>.yearteam-members>summary{padding:20px 60px 20px 24px!important;min-height:64px!important;box-sizing:border-box!important;background:#fff!important}
html body .yearteam-card>.yearteam-members .name-cards{display:flex!important;flex-wrap:wrap!important;gap:12px!important;padding:0 24px 24px!important;grid-template-columns:none!important}
html body .yearteam-card>.yearteam-members .name-card{flex:0 1 auto!important;width:auto!important}
}}

/* 501: remove duplicate service outlines and close mobile download shell. */
@layer heine-desktop-type{
html body .heine-start-welcome,html body .heine-start-resources{display:none!important}
html body main.service-page-v2 :is(.service-absence-notice,.service-signup){background:#eef8f4!important}
@media(min-width:901px){
html body .service-primary-grid-v50,html body .service-more-rail,html body .service-digital-shell{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;gap:16px!important}
html body .yearteam-card .yearteam-content{padding:20px!important}
html body .yearteam-class-leads .name-card,html body .yearteam-class-leads .yearteam-class-pill{font-size:14px!important;min-height:36px!important;height:36px!important;box-sizing:border-box!important;padding:6px 10px!important}
html body .yearteam-class-leads .name-cards{gap:8px!important}
html body .yearteam-content .yearteam-class-leads{margin-top:12px!important}
}
@media(max-width:900px){
html body .service-downloads .service-az-shell{border:1px solid #dcebe5!important;border-radius:20px!important;overflow:hidden!important;background:#fff!important}
html body .service-downloads .service-download-controls{border:0!important;border-bottom:1px solid #dcebe5!important;border-radius:19px 19px 0 0!important;margin:0!important}
html body .service-downloads .service-az-list{border:0!important;padding:0 12px 12px!important;margin:0!important}
}}

.gu-open-title{white-space:pre-line}

.pl-parent-evening{display:none}
@layer heine-desktop-type{@media(min-width:901px){
html body .new-week-head-copy,html body .new-week-head-copy>p{width:100%!important;max-width:none!important}
html body :is(.school-development,.school-network) .school-section-head{display:block!important}
html body :is(.school-development,.school-network) .school-section-head>p{width:100%!important;max-width:none!important;margin:20px 0 0!important}
html body .heine-detail-builder .detail-fact-strip>div{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important}
html body .support-icon-card .support-mobile-photo img{object-position:var(--support-crop-x,50%) var(--support-crop-y,50%)!important;transform:scale(var(--support-crop-z,1))!important;transform-origin:var(--support-crop-x,50%) var(--support-crop-y,50%)!important}
html body .heine-detail-builder :is(.detail-info-card,.detail-contact-panel){border:1px solid #dcebe5!important;border-radius:20px!important;background:#fff!important;padding:24px!important;box-shadow:none!important}
html body .heine-detail-builder :is(.detail-info-card,.detail-contact-panel) h3{font-size:24px!important;line-height:1.25!important;letter-spacing:-.015em!important;color:#17624d!important}
html body .heine-detail-builder :is(.detail-info-card,.detail-contact-panel) :is(p,li){font-size:18px!important;line-height:1.55!important;color:#526a62!important}
html body .heine-detail-builder .pl-parent-evening{display:block!important;grid-column:2!important}
}}

.arrival-step-number{display:none!important}
@layer heine-desktop-type{
@media(max-width:900px){
html body .service-absence-notice{height:auto!important;min-height:0!important;border-color:#dcebe5!important;background:#eef8f4!important}
html body .service-absence-notice :is(h2,h3){color:#17624d!important;-webkit-text-fill-color:#17624d!important}
html body .service-absence-notice :is(p,p strong){color:#526a62!important;-webkit-text-fill-color:#526a62!important}
html body .service-absence-notice .heine-ui-pill{background:#17624d!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:0!important}
}
@media(min-width:901px){
html body .service-digital-shell{border:1px solid #dcebe5!important;border-radius:20px!important;overflow:hidden!important;padding:0!important;background:#fff!important}
html body .service-primary-grid-v50,html body .service-more-rail{gap:0!important;border:0!important}
html body main.service-page-v2 :is(.service-quick-card,.service-more-rail-item){border:0!important;border-bottom:1px solid #dcebe5!important;border-radius:0!important;margin:0!important}
html body main.service-page-v2 .service-more-rail-item:last-child{border-bottom:0!important}
html body .new-class5 .new-class5-mobile{grid-template-columns:repeat(4,minmax(0,1fr))!important;position:relative!important;gap:20px!important;align-items:start!important}
html body .new-class5-mobile>details{position:relative!important;background:transparent!important;border:0!important;overflow:visible!important}
html body .new-class5-mobile>details::before{content:'';position:absolute;left:46px;right:-20px;top:22px;height:1px;background:#aacfc0;pointer-events:none}
html body .new-class5-mobile>details:last-child::before{display:none}
html body .new-class5-mobile>details>summary{position:relative!important;padding:68px 38px 16px 0!important;font-size:22px!important;min-height:174px!important;background:transparent!important}
html body .new-class5-mobile>details>summary::after{top:88px!important;right:0!important}
html body .new-class5-mobile>details>summary>.arrival-step-number{display:grid!important;place-items:center!important;position:absolute!important;left:0!important;top:0!important;width:44px!important;height:44px!important;border-radius:50%!important;background:#eef8f4!important;color:#17624d!important;border:1px solid #aacfc0!important;font-size:16px!important;z-index:1!important}
html body .new-class5-mobile .new-arrival-mobile-body{padding:16px!important;border:1px solid #dcebe5!important;border-radius:16px!important;background:#fff!important}
html body .new-class5-mobile .heine-start-photo img{height:150px!important}
html body .learning-career-background{font-size:18px!important;line-height:1.55!important;max-width:1000px!important;margin:0 0 28px!important}
html body .heine-detail-builder .detail-next-step .detail-contact-grid:has(.pl-parent-evening){grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:start!important}
html body .heine-detail-builder .detail-next-step .detail-contact-panel{border:0!important;background:transparent!important;padding:0!important;border-radius:0!important;box-shadow:none!important}
html body .heine-detail-builder .detail-next-step .pl-parent-evening{grid-column:auto!important}
html body .heine-detail-builder .detail-next-step .detail-contact-links{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
html body .heine-detail-builder .detail-next-step :is(.detail-contact-panel p,.detail-downloads li,.detail-contact-links a){font-size:16px!important;line-height:1.55!important}
html body .learning-path-cards .learning-path-copy{padding:16px 24px 24px!important;gap:16px!important}
html body .learning-path-cards .learning-path-title{font-size:24px!important;line-height:1.25!important;letter-spacing:-.015em!important;font-weight:700!important}
html body .learning-path-cards .learning-path-text{font-size:18px!important;line-height:1.55!important;color:#526a62!important;font-weight:400!important}
html body .learning-path-cards .learning-path-action{font-size:16px!important;font-weight:650!important;margin-top:12px!important}
}}

/* 504: desktop foundation intro uses the full content width. */
@layer heine-desktop-type{@media(min-width:901px){
html body .foundation-hero-grid{display:block!important}
html body .foundation-hero-copy{width:100%!important;max-width:none!important}
html body .foundation-hero-copy h1{max-width:none!important;white-space:nowrap!important;font-size:clamp(42px,4.3vw,66px)!important;line-height:1.08!important}
html body .foundation-hero-copy>p:first-of-type{display:block!important;width:100%!important;max-width:none!important;margin-top:20px!important;white-space:normal!important}
}}

/* 505: desktop admission steps without pictures; omit redundant BO explanation. */
@layer heine-desktop-type{@media(min-width:901px){
html body .new-class5-mobile .heine-start-photo,html body .learning-career-details .learning-career-background{display:none!important}
}}

/* 507: central desktop type roles replace the separate 506 teaser rules.
   Highest existing desktop layer; mobile declarations and approved colors remain intact. */
@layer heine-desktop-type{@media(min-width:901px){
html body :is(main,#heine-home) h3,
html body :is(main,#heine-home) h4,
html body :is(main,#heine-home) .learning-path-title{font-size:24px!important;line-height:30px!important;font-weight:650!important;letter-spacing:-.015em!important}
html body :is(main,#heine-home) p:not(.kicker):not(.hh-eyebrow),
html body :is(main,#heine-home) li{font-size:16px!important;line-height:1.6!important;font-weight:400!important;letter-spacing:normal!important}
html body :is(main,#heine-home) strong,
html body :is(main,#heine-home) b{font-weight:650!important}
html body :is(main,#heine-home) .kicker,
html body :is(main,#heine-home) .hh-eyebrow,
html body :is(main,#heine-home) .learning-path-kicker{font-size:13px!important;line-height:19px!important;font-weight:650!important;letter-spacing:.055em!important}
html body :is(main,#heine-home) summary,
html body :is(main,#heine-home) summary.heine-disclosure-summary{font-size:16px!important;line-height:24px!important;font-weight:650!important;letter-spacing:normal!important}
html body :is(main,#heine-home) label,
html body :is(main,#heine-home) .heine-search-field>span{font-size:16px!important;line-height:24px!important;font-weight:650!important;letter-spacing:normal!important;color:#17624d!important}
html body :is(main,#heine-home) input:not([type=checkbox]):not([type=radio]),
html body :is(main,#heine-home) select,
html body :is(main,#heine-home) textarea{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;font-size:16px!important;line-height:24px!important;font-weight:400!important;letter-spacing:normal!important}
html body :is(main,#heine-home) button,
html body :is(main,#heine-home) .heine-ui-pill,
html body :is(main,#heine-home) .heine-contact-link,
html body :is(main,#heine-home) .leader-contact-link,
html body :is(main,#heine-home) .learning-path-action{font-size:16px!important;line-height:24px!important;font-weight:650!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .support-icon-copy>p,
html body :is(main,#heine-home) .learning-path-text,
html body :is(main,#heine-home) .detail-info-card :is(p,li),
html body :is(main,#heine-home) .detail-contact-panel p,
html body :is(main,#heine-home) .foundation-project p,
html body :is(main,#heine-home) .service-tool-copy p,
html body :is(main,#heine-home) .service-more-rail-copy p,
html body :is(main,#heine-home) .new-arrival-card p{font-size:16px!important;line-height:25.6px!important;color:#6d827a!important}
html body :is(main,#heine-home) .school-hero-copy>p,
html body :is(main,#heine-home) .learning-hero-wide-copy>p,
html body :is(main,#heine-home) .experience-hero-copy>p,
html body :is(main,#heine-home) .team-hero-copy>p,
html body :is(main,#heine-home) .new-hero-copy>p,
html body :is(main,#heine-home) .support-hero-v5-copy>p,
html body :is(main,#heine-home) .service-hero-copy>p,
html body :is(main,#heine-home) .learning-detail-hero .detail-intro-grid>div>p,
html body :is(main,#heine-home) .foundation-hero-copy>p,
html body :is(main,#heine-home) .offer-archive-hero p,
html body :is(main,#heine-home) .gu-open-intro,
html body :is(main,#heine-home) .article-content p,
html body :is(main,#heine-home) .article-content li{font-size:18px!important;line-height:28.8px!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .pl-voice blockquote{font-size:18px!important;line-height:28.8px!important;font-weight:400!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .news-card-copy h2,
html body :is(main,#heine-home) .hh-news-copy h3,
html body :is(main,#heine-home) .hh-event-copy h4,
html body :is(main,#heine-home) .event-archive-copy h3,
html body :is(main,#heine-home) .heine-search-article h3,
html body :is(main,#heine-home) .heine-partner-copy h3{font-size:20px!important;line-height:26px!important;font-weight:650!important;letter-spacing:-.015em!important}
html body :is(main,#heine-home) .leader-copy h3{font-size:18px!important;line-height:23.4px!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .leader-copy p,
html body :is(main,#heine-home) .news-card-meta,
html body :is(main,#heine-home) .hh-news-meta,
html body :is(main,#heine-home) .hh-event-meta,
html body :is(main,#heine-home) .offer-archive-copy dt,
html body :is(main,#heine-home) .heine-search-status,
html body :is(main,#heine-home) .pl-voice figcaption>span{font-size:14px!important;line-height:21px!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .offer-archive-copy h2,
html body :is(main,#heine-home) .gu-open-topic h2,
html body :is(main,#heine-home) .new-entry h2,
html body :is(main,#heine-home) .service-absence-copy h2,
html body :is(main,#heine-home) .service-new-card h2,.service-enrollment-card h2{font-size:24px!important;line-height:30px!important;font-weight:650!important;letter-spacing:-.015em!important}
html body :is(main,#heine-home) .team-page .section-head h2,
html body :is(main,#heine-home) .new-class5-mobile h2,
html body :is(main,#heine-home) .new-week h2,
html body :is(main,#heine-home) .new-arrival h2,
html body :is(main,#heine-home) .new-contact h2,
html body :is(main,#heine-home) .foundation-page .section-head h2{font-size:clamp(36px,3.5vw,50px)!important;line-height:1.15!important;font-weight:650!important;letter-spacing:-.03em!important}
html body :is(main,#heine-home) .new-class5-mobile summary{font-size:22px!important;line-height:27.5px!important}
html body :is(main,#heine-home) .event-month>h2{font-size:16px!important;line-height:24px!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .heine-legal-content h2{font-size:20px!important;line-height:26px!important;letter-spacing:-.015em!important}
html body :is(main,#heine-home) .detail-ataglance h2{font-size:20px!important;line-height:26px!important;letter-spacing:normal!important}
html body .site-footer-compact{font-size:14px!important;line-height:21px!important}
html body .site-footer-compact a{font-size:14px!important;line-height:21px!important;font-weight:650!important}
html body .site-footer-compact .footer-compact-identity{font-size:12px!important;line-height:18px!important}
html body .site-footer-compact .footer-compact-row{flex-wrap:wrap!important;row-gap:12px!important}
html body :is(main,#heine-home) .detail-fact-strip strong{font-size:18px!important;line-height:25px!important;font-weight:650!important}
html body :is(main,#heine-home) .detail-fact-strip span{font-size:16px!important;line-height:25.6px!important}
html body :is(main,#heine-home) .support-search-person{display:block!important;min-width:0!important;padding:0 0 24px!important;margin:0 0 24px!important;border:0!important;border-bottom:1px solid #dcebe5!important;border-radius:0!important}
html body :is(main,#heine-home) .support-search-person:last-child{margin-bottom:0!important;border-bottom:0!important;padding-bottom:0!important}
html body :is(main,#heine-home) .support-search-person .heine-ui-pill{margin-top:16px!important}
html body .primary-nav a{font-weight:650!important}
html body :is(main.team-page,#heine-home) h2,html body :is(main,#heine-home) .new-section-head h2,html body :is(main,#heine-home) .foundation-page .section-head h2{font-size:clamp(36px,3.5vw,50px)!important;line-height:1.15!important;font-weight:650!important;letter-spacing:-.03em!important}
html body :is(main,#heine-home) h1{line-height:1.08!important;letter-spacing:-.045em!important}
html body.home #heine-home h1{line-height:.96!important}
html body :is(main,#heine-home) :is(.gu-open-title,.foundation-hero-copy h1){line-height:1.1!important}
html body :is(main,#heine-home) .tag{font-size:13px!important;line-height:19px!important;font-weight:650!important;letter-spacing:.055em!important}
html body :is(main,#heine-home) .offer-archive-copy dd{font-size:14px!important;line-height:21px!important}
html body .site-footer-compact .footer-compact-contact{font-size:14px!important;line-height:21px!important}
html body :is(main.foundation-page,#heine-home) .section h2{font-size:clamp(36px,3.5vw,50px)!important;line-height:1.15!important;font-weight:650!important;letter-spacing:-.03em!important}
html body :is(main,#heine-home) .gu-open-contact h2,html body :is(main,#heine-home) .related-posts h2{font-size:24px!important;line-height:30px!important;letter-spacing:-.015em!important}
/* Shared finder frame: controls left, matching contacts right. */
html body .support-finder-layout{display:block!important;width:100%!important;max-width:none!important}
html body #supportSearch{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;padding:0!important;gap:0!important;border:1px solid #dcebe5!important;border-radius:22px!important;background:#fff!important;overflow:hidden!important}
html body #supportSearch:has(#teamFinderResult[data-selection-state="selected"]),html body #supportSearch:has(#teamFinderResult[data-selection-state="selected"]){grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
html body #supportSearch>.heine-search-controls{padding:24px!important;border-radius:0!important;border:0!important;background:#eef7f2!important;min-width:0!important}
html body #supportSearch>.heine-search-controls{border-right:1px solid #dcebe5!important}
html body #supportSearch #teamFinderResult{padding:24px!important;margin:0!important;border:0!important;min-width:0!important;display:block!important}
html body #supportSearch #teamFinderResult>.heine-search-empty{padding:0!important}
html body #supportSearch .heine-search-status>strong:not(:empty){position:static!important;display:block!important;font-size:14px!important;line-height:21px!important;white-space:normal!important}
html body #supportSearch .heine-search-status{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
html body #supportSearch .heine-search-status>button{margin-left:0!important}
html body #supportSearch .heine-search-field>span{padding-right:0!important}
html body #supportSearch .heine-search-more{grid-column:2!important;justify-self:start!important;margin:0 24px 24px!important}
html body .learning-detail-hero .pl-redundant-kicker{display:none!important}
}}

/* 508: Ganztag search standard, desktop only. Same fields and sibling disclosures. */
@layer heine-desktop-type{@media(min-width:901px){
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form){position:relative!important;background:#eef7f2!important;padding:16px 20px 12px!important;gap:8px!important}
html body :is(main,#heine-home) .news-archive-form{display:block!important;border:1px solid #dcebe5!important;border-radius:22px!important}
html body :is(main,#heine-home) :is(.heine-search-field input,.heine-search-field select,.news-archive-form input,.news-archive-form select){box-sizing:border-box!important;display:block!important;width:100%!important;min-width:0!important;height:48px!important;min-height:48px!important;border:1px solid #cfe3dc!important;border-radius:14px!important;background-color:#fff!important;color:#17624d!important;padding:10px 14px!important;font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;font-size:16px!important;line-height:24px!important;font-weight:400!important}
html body :is(main,#heine-home) :is(.heine-search-shell,.news-archive-form) select{appearance:none!important;-webkit-appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m6 8 4 4 4-4' fill='none' stroke='%2317624d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-position:right 14px center!important;background-repeat:no-repeat!important;background-size:20px!important;padding-right:44px!important}
html body :is(main,#heine-home) :is(.heine-search-shell,.news-archive-form) select:disabled{opacity:.55!important;cursor:not-allowed!important}
html body :is(main,#heine-home) :is(.heine-search-shell,.news-archive-form) :is(input,select):focus-visible{outline:3px solid #279b78!important;outline-offset:3px!important}
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form)>.heine-search-extra{display:block!important;margin:8px 0 0!important;padding:0!important;border:0!important;border-top:1px solid #dcebe5!important;border-radius:0!important;background:transparent!important}
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form)>.heine-search-extra>summary{display:flex!important;align-items:center!important;gap:10px!important;list-style:none!important;min-height:44px!important;padding:4px 0!important;font-size:16px!important;line-height:24px!important;font-weight:650!important;color:#17624d!important}
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form)>.heine-search-extra>summary>small{font-size:14px!important;line-height:21px!important;font-weight:400!important;color:#6d827a!important;max-width:none!important;flex:1!important}
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form)>.heine-search-extra>summary:after{content:'+'!important;position:static!important;inset:auto!important;display:grid!important;place-items:center!important;flex:0 0 28px!important;width:28px!important;height:28px!important;border:0!important;border-radius:50%!important;background:#eef8f4!important;color:#17624d!important;font-size:22px!important;font-weight:400!important;line-height:1!important;margin-left:auto!important;transform:none!important}
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form)>.heine-search-extra[open]>summary:after{content:'−'!important;transform:none!important}
html body :is(main,#heine-home) :is(.heine-search-controls,.news-archive-form)>.heine-search-extra>summary>.heine-disclosure-legacy-icon{display:none!important}
html body :is(main,#heine-home) .search-standard-content{padding:12px 0!important;min-width:0!important}
html body :is(main,#heine-home) .search-standard-label,html body :is(main,#heine-home) .search-standard-old-caption{display:none!important}
html body :is(main,#heine-home) .search-standard-controls .heine-search-group{border:0!important;margin:0!important;padding:12px 0!important}
html body :is(main,#heine-home) .search-standard-controls .heine-search-caption{display:none!important}
html body :is(main,#heine-home) :is(.heine-search-filters button,.event-rubric-options label>span){font-size:14px!important;line-height:21px!important;font-weight:400!important;min-height:40px!important;padding:8px 12px!important;border-radius:999px!important}
html body :is(main,#heine-home) .event-search-controls .heine-search-topline>.heine-search-status{position:absolute!important;right:0!important;top:0!important;min-height:24px!important;display:flex!important;flex-direction:row-reverse!important;align-items:center!important;gap:12px!important}
html body :is(main,#heine-home) .event-search-controls .heine-search-status>strong{position:static!important}
html body :is(main,#heine-home) .event-search-controls .heine-search-status>button{font-size:14px!important;line-height:24px!important;padding:0!important;min-height:24px!important}
html body :is(main,#heine-home) .news-archive-form>.news-mobile-filters{display:none!important}
html body :is(main,#heine-home) .news-archive-form .news-archive-search{padding-top:32px!important;display:block!important}
html body :is(main,#heine-home) .news-archive-form .news-archive-search>label{position:absolute!important;top:16px!important;left:20px!important;width:auto!important;height:auto!important;clip:auto!important;clip-path:none!important;overflow:visible!important;white-space:normal!important;margin:0!important;font-size:16px!important;line-height:24px!important;font-weight:650!important;color:#17624d!important;letter-spacing:normal!important}
html body :is(main,#heine-home) .news-archive-form .heine-mobile-search-action{margin:0!important;padding:0!important}
html body :is(main,#heine-home) .news-archive-form .heine-mobile-search-action>button{position:absolute!important;top:16px!important;right:20px!important;min-height:24px!important;font-size:14px!important;line-height:24px!important;padding:0!important;background:transparent!important;color:#17624d!important;border:0!important}
html body :is(main,#heine-home) .news-archive-form .news-archive-status{position:static!important;margin:8px 0 0!important;font-size:14px!important;line-height:21px!important}
html body :is(main,#heine-home) .news-archive-form .search-standard-count{position:absolute!important;top:16px!important;right:100px!important;font-size:14px!important;line-height:24px!important;color:#6d827a!important;font-weight:400!important}
html body :is(main,#heine-home) .news-archive-form .news-archive-status>span{display:none!important}
html body :is(main,#heine-home) #supportSearch>.heine-search-controls{border-right:1px solid #dcebe5!important;padding:24px!important}
}}

/* 509: rubric spacing and search repairs, desktop only. */
@layer heine-desktop-type{@media(min-width:901px){
html body :is(main,#heine-home){--heine-rubric-space:48px;--heine-compact-space:24px}
html body :is(main,#heine-home) :is(.school-profile,.school-development,.school-network,.learning-route-section,.learning-door-section,.learning-sol-explain,.learning-paths,.learning-career-section,.experience-ganztag,.experience-europe,.experience-dog,.experience-voice,.support-pathways,.support-funding-v5,.support-foundation-feature,.service-quick,.service-downloads,.service-daily,.new-paths,.new-class5,.new-week,.new-arrival,.new-contact,.pl-first-hand,.detail-next-step,.foundation-projects,.foundation-join){padding-top:var(--heine-rubric-space)!important;padding-bottom:var(--heine-rubric-space)!important;margin-top:0!important;margin-bottom:0!important}
html body :is(main.team-page,main.heine-detail-builder)>.section:not(.detail-ataglance){padding-top:48px!important;padding-bottom:48px!important;margin-top:0!important;margin-bottom:0!important}
html body :is(main,#heine-home) .finder-section-v5{padding-top:24px!important;padding-bottom:48px!important}
html body :is(main,#heine-home) :is(.support-hero-v5,.service-hero){padding-bottom:24px!important}
html body :is(main,#heine-home) .service-quick{padding-top:24px!important}
html body :is(main,#heine-home) :is(.detail-ataglance,.foundation-impact-compact){padding-top:24px!important;padding-bottom:24px!important}
html body :is(main,#heine-home) .heine-partners-group{padding-top:48px!important;padding-bottom:48px!important;margin-top:0!important;margin-bottom:0!important}
html body :is(main,#heine-home) .heine-partners-group+.heine-partners-group{border-top:1px solid #dcebe5!important}
html body :is(main,#heine-home) .news-archive-results{padding-top:24px!important;padding-bottom:48px!important}
html body :is(main,#heine-home) .news-archive-hero{padding-bottom:24px!important}
html body :is(main,#heine-home) .news-archive-controls{padding-top:0!important;padding-bottom:0!important}
html body :is(main,#heine-home) .event-archive-hero{padding-bottom:24px!important}
html body :is(main,#heine-home) .event-archive-section{padding-top:0!important;padding-bottom:48px!important}
html body :is(main,#heine-home) .event-filters.heine-search-shell{padding:0!important;margin:0 0 24px!important;border:1px solid #dcebe5!important;border-radius:22px!important;background:#eef7f2!important;overflow:hidden!important}
html body :is(main,#heine-home) .event-filters>.event-search-controls{border:0!important;border-radius:0!important;padding:16px 20px 12px!important;margin:0!important}
html body :is(main,#heine-home) .event-search-controls .heine-search-status>button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:24px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#17624d!important;-webkit-text-fill-color:#17624d!important;box-shadow:none!important;padding:0!important}
html body :is(main,#heine-home) .news-archive-form .search-standard-news-filter .news-archive-select{display:none!important}
html body main.heine-offer-archive>.section,html body main.heine-legal-page>.section,html body main.heine-gu-page>.section{padding-bottom:48px!important}
html body :is(main,#heine-home) .news-filter-chips{padding:0!important;margin:0!important}
html body :is(main,#heine-home) .news-filter-chips button{background:transparent!important;border:1px solid transparent!important;color:#6d827a!important;box-shadow:none!important;font-size:14px!important;line-height:21px!important;font-weight:400!important;min-height:40px!important;padding:8px 12px!important;border-radius:999px!important}
html body :is(main,#heine-home) .news-filter-chips button[aria-pressed="true"]{background:#fff!important;border-color:#b7ded0!important;color:#17624d!important}
html body :is(main,#heine-home) .news-filter-chips button:hover{background:#e6f4ee!important;color:#17624d!important}
html body :is(main,#heine-home) .gu-open-topics,html body :is(main,#heine-home) .gu-learning-insight,html body :is(main,#heine-home) .gu-next{margin-top:48px!important;margin-bottom:0!important}
}}

/* 510: selected desktop back-to-top button and opt-in header previews. */
html body .heine-back-top .heine-back-top-label{display:none}
@layer heine-desktop-type{
@media(min-width:901px){
html body .heine-back-top{width:auto!important;height:48px!important;min-width:132px!important;min-height:48px!important;padding:0 18px!important;gap:10px!important;right:22px!important;bottom:22px!important;border:1px solid #bfdacf!important;border-radius:999px!important;background:#fff!important;color:#17624d!important;box-shadow:0 2px 10px #17624d12!important;font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;font-size:16px!important;line-height:24px!important;font-weight:650!important}
html body .heine-back-top img{display:none!important}
html body .heine-back-top .heine-back-top-label{display:inline!important;font-size:16px!important;line-height:24px!important;font-weight:650!important}
html body .heine-back-top .heine-back-top-arrow{display:inline!important;font-size:22px!important;line-height:1!important;font-weight:400!important}
html body[data-header-height-preview="80"]{--heine-header-extra:80px}
html body[data-header-height-preview="120"]{--heine-header-extra:120px}
html body[data-header-height-preview] main :is(.school-hero,.learning-hero-wide,.experience-hero,.team-hero,.new-hero){height:calc(clamp(420px,calc(74svh - 160px),calc(42.857vw - 38px)) + var(--heine-header-extra))!important;min-height:calc(420px + var(--heine-header-extra))!important;max-height:none!important}
html body[data-header-height-preview] main.heine-photo-entry-glass .school-hero .school-hero-copy,html body[data-header-height-preview] main :is(.school-hero-copy,.learning-hero-wide-copy,.experience-hero-copy,.team-hero-copy,.new-hero-copy){padding-bottom:12px!important}
}
@media(max-width:900px){
html body.home #heine-home :is(.hh-all-news,.hh-all-events,.heine-calendar-overview-link){display:flex!important;justify-content:flex-end!important;align-items:center!important;text-align:right!important;justify-self:end!important;grid-column:1/-1!important;min-height:44px!important;max-width:100%!important}
}}

/* 512: approved +80px photo headers; white-intro comparison stays opt-in. */
.desktop-header-white-intro{display:none}
@layer heine-desktop-type{@media(min-width:901px){
html body main.heine-photo-entry-glass .school-hero .school-hero-copy,html body main :is(.learning-hero-wide-copy,.experience-hero-copy,.team-hero-copy,.new-hero-copy){padding-bottom:12px!important}
html body[data-header-layout="weiss"] main .desktop-header-white-intro{display:block!important;width:100%!important;margin:0!important;padding:48px 0 32px!important;background:#fff!important;color:#17624d!important;border:0!important;border-radius:0!important}
html body[data-header-layout="weiss"] main .desktop-header-white-copy{width:min(1180px,calc(100% - 64px))!important;max-width:1180px!important;margin:0 auto!important;padding:0!important;box-sizing:border-box!important}
html body[data-header-layout="weiss"] main .desktop-header-white-copy>.kicker{color:#2fac81!important;-webkit-text-fill-color:#2fac81!important;margin:0 0 8px!important;font-size:13px!important;line-height:19px!important;font-weight:650!important;letter-spacing:.055em!important}
html body[data-header-layout="weiss"] main .desktop-header-white-copy>h1{color:#17624d!important;-webkit-text-fill-color:#17624d!important;font-size:clamp(56px,5.7vw,82px)!important;line-height:1.08!important;letter-spacing:-.045em!important;font-weight:650!important;margin:0!important;max-width:none!important}
html body[data-header-layout="weiss"] main .desktop-header-white-copy>p{display:block!important;font-size:18px!important;line-height:28.8px!important;color:#526a62!important;-webkit-text-fill-color:#526a62!important;margin:16px 0 0!important;max-width:none!important}
html body[data-header-layout="weiss"] main.heine-photo-entry-glass .school-hero .school-hero-copy,html body[data-header-layout="weiss"] main :is(.learning-hero-wide,.experience-hero,.team-hero,.new-hero) :is(.learning-hero-wide-copy,.experience-hero-copy,.team-hero-copy,.new-hero-copy){display:none!important}
html body[data-header-layout="weiss"] main :is(.school-hero,.learning-hero-wide,.experience-hero,.team-hero,.new-hero){height:max(240px,calc(clamp(420px,calc(74svh - 160px),calc(42.857vw - 38px)) + 80px - var(--heine-header-intro-size,0px)))!important;min-height:240px!important;max-height:none!important;padding:0!important;border-bottom:2px solid #fff!important}
html body[data-header-layout="weiss"] main :is(.school-hero,.learning-hero-wide,.experience-hero,.team-hero,.new-hero)::before,html body[data-header-layout="weiss"] main :is(.school-hero,.learning-hero-wide,.experience-hero,.team-hero,.new-hero)::after{display:none!important;content:none!important;background:none!important}
}}

/* 517: quieter school-life photo fade and directly readable admission sequence. */
.arrival-open-step{display:none}
@layer heine-desktop-type{@media(min-width:901px){
html body main .experience-hero::before{background:linear-gradient(180deg,rgba(244,250,247,0) 0%,rgba(244,250,247,0) max(0px,calc(var(--heine-copy-start,70%) - 120px)),rgba(244,250,247,.70) var(--heine-copy-start,70%),rgba(244,250,247,.76) 100%)!important}
html body .new-class5 .new-class5-mobile{align-items:stretch!important}
html body .new-class5-mobile>details{display:none!important}
html body .new-class5-mobile>.arrival-open-step{display:flex!important;flex-direction:column!important;position:relative!important;min-width:0!important;background:#fff!important;border:1px solid #dcebe5!important;border-radius:20px!important;padding:20px!important}
html body .arrival-open-number{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;background:#eef8f4!important;border:1px solid #aacfc0!important;border-radius:50%!important;color:#17624d!important;font-size:16px!important;font-weight:650!important;margin-bottom:24px!important;position:relative!important;z-index:1!important}
html body .arrival-open-step:not(:last-child)::after{content:'';position:absolute;top:42px;left:64px;right:-21px;height:1px;background:#aacfc0;pointer-events:none}
html body .arrival-open-step h3{font-size:24px!important;line-height:1.25!important;font-weight:650!important;letter-spacing:-.015em!important;margin:0 0 12px!important;min-height:60px!important}
html body .arrival-open-step .arrival-open-date{font-size:14px!important;line-height:21px!important;color:#6d827a!important;margin:0 0 20px!important;min-height:42px!important}
html body .new-class5-mobile .arrival-open-step .new-arrival-mobile-body{display:flex!important;flex:1!important;flex-direction:column!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important}
html body .arrival-open-step .new-arrival-mobile-body>p{font-size:16px!important;line-height:1.6!important;margin:0 0 16px!important}
html body .arrival-open-step .new-start-footer{margin-top:auto!important;padding-top:12px!important}
}}

/* 519: center the white holiday date badge within its green desktop row. */
@layer heine-desktop-type{@media(min-width:901px){
html body main .event-archive-item.is-holiday>.event-overview-row{padding:12px 20px!important;align-items:center!important}
}}
