/* Original Divi module values, with explicit approximations recorded by the builder. */
@font-face { font-family: 'Alefbata Kreide'; src: url('/assets/fonts/KGBrokenVesselsSketch.ttf') format('truetype'); font-display: swap; }
.af-classic { --divi-blue: #19556c; --divi-yellow: #edf000; }
.af-classic .af-site-header__inner { max-width: 1493px; width: 92%; min-height: 112px; }
.af-classic .af-brand img { width: 250px; max-width: 100%; }
.af-classic .af-nav { gap: 24px; }
.af-classic .af-nav a { color: #19556c; }
.af-classic .af-nav .af-button { background: #edf000; color: #142f3c; border-radius: 6px; }
.af-classic-main { --divi-original-width: 1428px; --divi-original-yellow: #edf000; --divi-original-title: 55px; --home-ink: #19556c; --home-copy: #344b55; }
.af-classic-main h1, .af-classic-main h2, .af-classic-main h3 { font-family: 'Alefbata Kreide', sans-serif; font-weight: 400; text-wrap: balance; }
.af-classic-main .af-home-wrap { max-width: var(--divi-original-width); width: min(90%, var(--divi-original-width)); }
.af-classic-main .af-home-hero { padding: 26px 0 60px; position: relative; isolation: isolate; overflow: hidden; }
.af-classic-main .af-home-hero::before { content: ''; position: absolute; z-index: -1; background: var(--divi-original-yellow); inset: 8% -8% -18% 55%; clip-path: polygon(75% 0, 100% 0, 100% 100%, 0 100%); }
.af-classic-main .af-home-hero__grid { grid-template-columns: 1fr 1fr; gap: 4%; align-items: center; }
.af-classic-main .af-home-hero__copy { background: var(--divi-blue); border-radius: 8px; padding: 36px 33px 32px; }
.af-classic-main .af-home-hero__copy h1 { color: #fff; font-size: clamp(34px, 3.45vw, var(--divi-original-title)); line-height: 1.22; max-width: none; }
.af-classic-main .af-home-location { color: #f5f6d3; font-size: 14px; margin-bottom: 18px; }
.af-classic-main .af-home-hero__copy .af-home-lead { color: #fff; font-size: 18px; line-height: 1.65; margin-top: 24px; }
.af-classic-main .af-home-hero__checks { color: #fff; font-size: 17px; line-height: 1.6; gap: 15px; margin-top: 26px; }
.af-classic-main .af-home-hero__checks li { grid-template-columns: 28px 1fr; gap: 13px; }
.af-classic-main .divi-check { width: 28px; height: 28px; object-fit: contain; margin-top: 1px; }
.af-classic-main .af-home-button { border-radius: 6px; background: var(--divi-original-yellow); border-color: var(--divi-original-yellow); color: #183e4c !important; padding: 15px 20px; }
.af-classic-main .af-home-button:hover { background: #f5f791; border-color: #f5f791; }
.af-classic-main .af-home-hero__copy .af-home-address-note { color: #e4eff2; line-height: 1.65; }
.af-classic-main .af-home-hero__call, .af-classic-main .af-home-hero__call a { color: #fff; font-size: 15px; }
.af-classic-main .divi-original-hero { margin: 0; }
.af-classic-main .divi-original-hero img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; border-radius: 0; }
.af-classic-main #faecher { padding: 65px 0 58px; background: #244e39 url('/assets/images/classic/tafel.webp') center / cover; }
.af-classic-main #faecher h2 { font-size: clamp(30px, 3.6vw, 52px); color: #fff; margin: 0 auto; max-width: 25ch; text-align: center; }
.af-classic-main .af-home-subjects { gap: 7%; margin-top: 40px; }
.af-classic-main .af-home-subjects article { align-items: center; text-align: center; }
.af-classic-main .divi-subject-icon { width: min(45%, 150px); height: auto; display: block; margin-bottom: 22px; filter: brightness(0) invert(1); }
.af-classic-main .af-home-subjects h3 { color: #fff; font-size: 29px; }
.af-classic-main .af-home-subjects p { color: #fff; font-size: 17px; }
.af-classic-main .af-home-subjects a, .af-classic-main .af-home-exams a { color: #f4f789; }
.af-classic-main .af-home-exams { border-color: #ffffff70; }
.af-classic-main .af-home-exams p { color: #fff; }
.af-classic-main #lernziele { background: #fff url('/assets/images/classic/schulmuster.webp') center / 800px; }
.af-classic-main #lernziele > .af-home-wrap > h2 { display: table; margin: 0 auto; background: #fff; padding: 16px 26px; font-size: 37px; text-align: center; }
.af-classic-main .af-home-benefits { gap: 28px; }
.af-classic-main .af-home-benefits article { background: #4682b4; border: none; padding: 30px 26px; border-radius: 18px; }
.af-classic-main .af-home-benefits h3 { color: #fff; font-size: 25px; }
.af-classic-main .af-home-benefits p { color: #fff; font-size: 17px; }
.af-classic-main #lernfortschritt { background: var(--divi-blue); }
.af-classic-main #lernfortschritt h2 { font-size: 37px; }
.af-classic-main #lernfortschritt h2, .af-classic-main #lernfortschritt h3 { color: #fff; }
.af-classic-main #lernfortschritt a { color: #f4f789; }
.af-classic-main #lernfortschritt p { color: #fff; }
.af-classic-main #ablauf h2, .af-classic-main #but h2, .af-classic-main #standort h2, .af-classic-main #anfrage h2 { font-size: 36px; }
.af-classic-main #but { background: #f7f7f7; }
.af-classic-main #standort { background: #fff; }
.af-classic-main #anfrage { background: #f7f7f7; }
.af-classic-main .af-lead-form { border-radius: 8px; border: none; }
.af-classic-main .af-lead-form input { background: #f1f1f1; border: 1px solid #bdcbd0; }
.af-classic .af-site-footer { background: var(--divi-blue); }
.af-classic .af-site-footer .af-footer-logo { background: #fff; border-radius: 6px; padding: 12px; }
/* Shared supporting pages keep the same heading, color and button system. */
.af-classic-main.af-pages .af-home-hero__copy .af-home-phone { color: #fff; white-space: normal; }
.af-classic-main.af-pages .af-home-hero__image { background: #fff; border-radius: 8px; overflow: hidden; }
.af-classic-main.af-pages #lernfortschritt .af-brand-illustration { background: #fff; border-radius: 8px; overflow: hidden; }
.af-classic-main.af-pages .af-home-hero__copy h1 { font-size: clamp(30px, 3vw, 44px); overflow-wrap: break-word; }
.af-classic-main.af-pages .af-home-hero__copy .af-home-address-note { color: #e4eff2; }
.af-classic-main.af-pages #kontakt, .af-classic-main.af-pages > #anfrage:first-child { background: #f7f7f7 url('/assets/images/classic/schulmuster.webp') center / 800px; }
.af-classic-main.af-pages #kontakt .af-page-contact-grid, .af-classic-main.af-pages > #anfrage:first-child .af-home-enquiry { background: #fff; border-radius: 8px; padding: 36px; }
.af-classic-main.af-pages #kontakt .af-home-wrap { background: #fff; border-radius: 8px; padding: 36px; }
.af-classic-main.af-pages #kontakt .af-page-contact-grid { padding: 0; }
.af-classic-main.af-pages #kontakt .af-breadcrumb, .af-classic-main.af-pages > #anfrage:first-child .af-breadcrumb { background: #fff; width: fit-content; padding: 8px 12px; border-radius: 4px; }
.af-classic-main.af-pages .af-page-faq { padding: 0 24px; background: #fff; border-radius: 8px; }
.af-classic-main.af-pages .af-home-steps { gap: 26px; }
.af-classic .af-site-footer .af-logo { background: #fff; border-radius: 6px; padding: 12px; width: fit-content; }
.af-classic-main :focus-visible { outline: 3px solid #edf000; outline-offset: 4px; box-shadow: 0 0 0 6px #19556c; }
@media (max-width: 1120px) {
  .af-classic .af-site-header__inner { min-height: 96px; }
  .af-classic .af-nav { gap: 8px; }
  .af-classic-main .af-home-hero__copy { padding: 30px 24px; }
  .af-classic-main .af-home-hero__copy h1 { font-size: 38px; }
  .af-classic-main .af-home-hero__checks { font-size: 16px; }
  .af-classic-main .af-home-button { font-size: 15px; }
  .af-classic-main .af-home-benefits { gap: 20px; }
  .af-classic-main .af-home-benefits article { padding: 25px 20px; }
  .af-classic-main .af-home-benefits h3 { font-size: 22px; }
}
@media (max-width: 980px) {
  .af-classic-main .af-home-hero__grid { grid-template-columns: 1fr; gap: 28px; }
  .af-classic-main .af-home-hero__copy { padding: 36px; }
  .af-classic-main .af-home-hero__copy h1 { font-size: 44px; max-width: 25ch; }
  .af-classic-main .af-home-hero__checks { font-size: 18px; }
  .af-classic-main .divi-original-hero { width: min(85%, 460px); justify-self: center; }
  .af-classic-main .af-home-hero::before { inset: 40% -15% -30% 30%; }
  .af-classic-main .af-home-feedback, .af-classic-main .af-home-split, .af-classic-main .af-home-enquiry { grid-template-columns: 1fr; gap: 28px; }
  .af-classic-main .af-home-benefits { grid-template-columns: 1fr; }
  .af-classic-main .af-home-benefits article { padding: 28px; }
  .af-classic-main h2 { max-width: 100%; }
}
@media (max-width: 760px) {
  .af-classic-main.af-pages #kontakt .af-page-contact-grid, .af-classic-main.af-pages > #anfrage:first-child .af-home-enquiry { padding: 24px 16px; }
  .af-classic-main.af-pages #kontakt .af-home-wrap { padding: 24px 16px; }
  .af-classic-main.af-pages #kontakt .af-page-contact-grid { padding: 0; }
  .af-classic-main.af-pages > #anfrage:first-child .af-lead-form { padding: 0; }
  .af-classic-main.af-pages .af-page-faq { padding: 0 16px; }
  .af-classic .af-site-header__inner { min-height: 82px; width: calc(100% - 32px); }
  .af-classic .af-brand img { width: 185px; }
  .af-classic-main .af-home-wrap { width: calc(100% - 32px); }
  .af-classic-main .af-home-hero { padding: 16px 0 28px; }
  .af-classic-main .af-home-hero__copy { padding: 27px 22px; }
  .af-classic-main .af-home-hero__copy h1 { font-size: 34px; line-height: 1.25; text-wrap: initial; }
  .af-classic-main .af-home-location { font-size: 12px; }
  .af-classic-main .af-home-hero__copy .af-home-lead { font-size: 17px; margin-top: 21px; }
  .af-classic-main .af-home-hero__checks { font-size: 16px; gap: 15px; }
  .af-classic-main .af-home-hero__checks li { gap: 10px; grid-template-columns: 23px 1fr; }
  .af-classic-main .divi-check { width: 23px; height: 23px; }
  .af-classic-main .af-home-button { font-size: 15px; padding: 14px 13px; }
  .af-classic-main .af-home-hero__call { font-size: 14px; }
  .af-classic-main .divi-original-hero { width: min(95%, 360px); }
  .af-classic-main #faecher { padding: 44px 0; }
  .af-classic-main #faecher h2 { font-size: 31px; }
  .af-classic-main .af-home-subjects { grid-template-columns: 1fr; gap: 32px; }
  .af-classic-main .af-home-subjects article + article { border-color: #ffffff60; padding-top: 32px; }
  .af-classic-main .divi-subject-icon { width: 110px; }
  .af-classic-main #lernziele > .af-home-wrap > h2 { font-size: 30px; padding: 14px; }
  .af-classic-main #lernfortschritt h2, .af-classic-main #ablauf h2, .af-classic-main #but h2, .af-classic-main #standort h2, .af-classic-main #anfrage h2 { font-size: 29px; }
  .af-classic-main .af-home-benefits h3 { font-size: 25px; }
}
@media (max-width: 380px) {
  .af-classic .af-brand img { width: 158px; }
  .af-classic-main .af-home-hero__copy { padding: 25px 18px; }
  .af-classic-main .af-home-hero__copy h1 { font-size: 29px; }
  .af-classic-main .af-home-hero__checks { font-size: 15px; }
  .af-classic-main .af-home-button { font-size: 14px; }
  .af-classic-main .af-home-benefits article { padding: 25px 20px; }
}
