@charset "UTF-8";
/**!
Theme Name: Didapress DE Relaunch 2026
Description: WordPress Template für Schulen
Version: 0.2.0
Author: COMMWORK
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: didapress_de_relaunch_2026
*/
/* 1. Use a more-intuitive box-sizing model */
*, *::before, *::after {
  box-sizing: border-box;
}

/* 2. Remove default margin */
*:not(dialog) {
  margin: 0;
}

/* 3. Enable keyword animations */
@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}
body {
  /* 4. Add accessible line-height */
  line-height: 1.5;
  /* 5. Improve text rendering */
  -webkit-font-smoothing: antialiased;
  padding-block: 0 !important;
  padding-inline: 0 !important;
}

/* 6. Improve media defaults */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

/* 7. Inherit fonts for form controls */
input, button, textarea, select {
  font: inherit;
}

/* 8. Avoid text overflows */
/* 9. Improve line wrapping */
p {
  text-wrap: pretty;
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

/*
  10. Create a root stacking context
*/
#root, #__next {
  isolation: isolate;
}

.stack {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}
.stack--xxs {
  row-gap: 0.25rem;
}
.stack--xs {
  row-gap: 0.5rem;
}
.stack--s {
  row-gap: 1.5rem;
}
.stack--m {
  row-gap: 2rem;
}
.stack--l {
  row-gap: 2.5rem;
}
.stack--xl {
  row-gap: 4rem;
}
.stack--xxl {
  row-gap: 5rem;
}
.stack--xxxl {
  row-gap: 7.5rem;
}

/**
 * /////////////////////////////////////////////////
 *  Focus visible ring
 * /////////////////////////////////////////////////
 */
:root {
  font-synthesis: none;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body {
  font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin: 0;
  font-family: "scale-variable", system-ui, sans-serif;
  hyphens: auto;
}
@media (max-width: 991.98px) {
  h1,
  .h1,
  h2,
  .h2,
  h3,
  .h3,
  h4,
  .h4,
  h5,
  .h5,
  h6,
  .h6 {
    hyphens: auto;
  }
}

p {
  margin: 0 0 1.5em;
}

.regular-text strong,
.regular-text b {
  font-weight: bold;
}
.regular-text em,
.regular-text i {
  font-style: italic;
}

small,
.small-text {
  font-size: small;
}

sup,
sub {
  font-size: 0.75em;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/**
 * /////////////////////////////////////////////////
 *  Headlines
 * /////////////////////////////////////////////////
 */
.h1,
.h1 * {
  font-size: calc(var(--h1-font-size-mobile) * 1px);
  letter-spacing: var(--h1-letter-spacing);
  line-height: var(--h1-line-height);
  font-weight: var(--h1-font-weight, 400);
  font-variation-settings: "wght" var(--h1-font-weight, 400);
}
@media (min-width: 768px) {
  .h1,
  .h1 * {
    font-size: calc(var(--h1-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .h1,
  .h1 * {
    font-size: calc(var(--h1-font-size-desktop) * 1px);
  }
}

.h2,
.regular-text .h2,
.h2 * {
  font-size: calc(var(--h2-font-size-mobile) * 1px);
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-weight: var(--h2-font-weight, 400);
  font-variation-settings: "wght" var(--h2-font-weight, 400);
}
@media (min-width: 768px) {
  .h2,
  .regular-text .h2,
  .h2 * {
    font-size: calc(var(--h2-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .h2,
  .regular-text .h2,
  .h2 * {
    font-size: calc(var(--h2-font-size-desktop) * 1px);
  }
}

.h3,
.regular-text .h3,
.h3 * {
  font-size: calc(var(--h3-font-size-mobile) * 1px);
  letter-spacing: var(--h3-letter-spacing);
  line-height: var(--h3-line-height);
  font-weight: var(--h3-font-weight, 400);
  font-variation-settings: "wght" var(--h3-font-weight, 400);
}
@media (min-width: 768px) {
  .h3,
  .regular-text .h3,
  .h3 * {
    font-size: calc(var(--h3-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .h3,
  .regular-text .h3,
  .h3 * {
    font-size: calc(var(--h3-font-size-desktop) * 1px);
  }
}

.h4,
.regular-text .h4,
.h4 * {
  font-size: calc(var(--h4-font-size-mobile) * 1px);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
  font-weight: var(--h4-font-weight, 400);
  font-variation-settings: "wght" var(--h4-font-weight, 400);
}
@media (min-width: 768px) {
  .h4,
  .regular-text .h4,
  .h4 * {
    font-size: calc(var(--h4-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .h4,
  .regular-text .h4,
  .h4 * {
    font-size: calc(var(--h4-font-size-desktop) * 1px);
  }
}

.box-title {
  display: block;
  margin: 0;
  font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  hyphens: auto;
  font-size: calc(var(--h4-font-size-mobile) * 1px);
  letter-spacing: var(--h4-letter-spacing);
  line-height: var(--h4-line-height);
  font-weight: 400;
}
@media (min-width: 768px) {
  .box-title {
    font-size: calc(var(--h4-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .box-title {
    font-size: calc(var(--h4-font-size-desktop) * 1px);
  }
}

.h5,
.regular-text .h5,
.h5 * {
  font-size: calc(var(--h5-font-size-mobile) * 1px);
  letter-spacing: var(--h5-letter-spacing);
  line-height: var(--h5-line-height);
  font-weight: var(--h5-font-weight, 400);
  font-variation-settings: "wght" var(--h5-font-weight, 400);
}
@media (min-width: 768px) {
  .h5,
  .regular-text .h5,
  .h5 * {
    font-size: calc(var(--h5-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .h5,
  .regular-text .h5,
  .h5 * {
    font-size: calc(var(--h5-font-size-desktop) * 1px);
  }
}

.h6,
.regular-text .h6,
.h6 * {
  font-size: calc(var(--h6-font-size-mobile) * 1px);
  letter-spacing: var(--h6-letter-spacing);
  line-height: var(--h6-line-height);
  font-weight: var(--h6-font-weight, 400);
  font-variation-settings: "wght" var(--h6-font-weight, 400);
}
@media (min-width: 768px) {
  .h6,
  .regular-text .h6,
  .h6 * {
    font-size: calc(var(--h6-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .h6,
  .regular-text .h6,
  .h6 * {
    font-size: calc(var(--h6-font-size-desktop) * 1px);
  }
}

/**
 * /////////////////////////////////////////////////
 *  Module Intro Text
 * /////////////////////////////////////////////////
 */
.intro-text,
.intro-text * {
  font-size: calc(var(--p2-font-size-mobile) * 1px);
  letter-spacing: var(--p2-letter-spacing);
  line-height: var(--p2-line-height);
  font-weight: var(--p2-font-weight, 400);
  font-variation-settings: "wght" var(--p2-font-weight, 400);
}
@media (min-width: 768px) {
  .intro-text,
  .intro-text * {
    font-size: calc(var(--p2-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .intro-text,
  .intro-text * {
    font-size: calc(var(--p2-font-size-desktop) * 1px);
  }
}

/**
 * /////////////////////////////////////////////////
 *  Regular Text
 * /////////////////////////////////////////////////
 */
.regular-text,
.regular-text * {
  font-size: calc(var(--p1-font-size-mobile) * 1px);
  letter-spacing: var(--p1-letter-spacing);
  line-height: var(--p1-line-height);
  font-weight: var(--p1-font-weight, 400);
  font-variation-settings: "wght" var(--p1-font-weight, 400);
}
@media (min-width: 768px) {
  .regular-text,
  .regular-text * {
    font-size: calc(var(--p1-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .regular-text,
  .regular-text * {
    font-size: calc(var(--p1-font-size-desktop) * 1px);
  }
}

/**
* /////////////////////////////////////////////////
*  Meta Text
* /////////////////////////////////////////////////
*/
.meta,
.meta p {
  display: inline-block;
  font-size: calc(var(--meta-font-size-mobile) * 1px);
  letter-spacing: var(--meta-letter-spacing);
  line-height: var(--meta-line-height);
  font-weight: var(--meta-font-weight, 400);
  font-variation-settings: "wght" var(--meta-font-weight, 400);
}
@media (min-width: 768px) {
  .meta,
  .meta p {
    font-size: calc(var(--meta-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .meta,
  .meta p {
    font-size: calc(var(--meta-font-size-desktop) * 1px);
  }
}

/**
* /////////////////////////////////////////////////
*  Author Text
* /////////////////////////////////////////////////
*/
.author,
.author p {
  display: inline-block;
  font-size: calc(var(--author-font-size-mobile) * 1px);
  letter-spacing: var(--author-letter-spacing);
  line-height: var(--author-line-height);
  font-weight: var(--author-font-weight, 400);
  font-variation-settings: "wght" var(--author-font-weight, 400);
}
@media (min-width: 768px) {
  .author,
  .author p {
    font-size: calc(var(--author-font-size-tablet) * 1px);
  }
}
@media (min-width: 1400px) {
  .author,
  .author p {
    font-size: calc(var(--author-font-size-desktop) * 1px);
  }
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 4rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 4rem;
}

.g-6,
.gx-6 {
  --bs-gutter-x: 5rem;
}

.g-6,
.gy-6 {
  --bs-gutter-y: 5rem;
}

@media screen and (min-width: 1800px) {
  .container {
    max-width: 1400px;
  }
}
@media (min-width: 2000px) {
  .container-narrow {
    max-width: 1600px;
  }
}
html {
  margin-top: 0 !important;
  padding-block-start: 0 !important;
}

img {
  min-width: 100%;
  height: auto;
}

body {
  margin: 0;
  min-height: 100%;
  background: #ffffff;
}

.topbar,
.bottombar {
  pointer-events: none;
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999;
}

.topbar {
  top: 4px;
  width: 89%;
  height: 11px;
  display: block;
  background: oklch(100% 0 none);
  /* Hack to style the browser UI while making it invisible to the user */
  mask-image: linear-gradient(to right, transparent, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, transparent);
}

.bottombar {
  bottom: 3px;
  width: 89%;
  height: 11px;
  display: block;
  background: oklch(100% 0 none);
  /* Hack to style the browser UI while making it invisible to the user */
  mask-image: linear-gradient(to right, transparent, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, transparent);
}

.lcnmb > *:last-child {
  margin-bottom: 0;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.child-mb-0 > * {
  margin-bottom: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.child-mt-0 > * {
  margin-top: 0 !important;
}

.block-xy {
  padding-block: 10rem;
}

.block-xy-top {
  padding-block-start: 10rem;
}

.block-xy-bottom {
  padding-block-end: 10rem;
}

.long-text {
  overflow-wrap: anywhere;
  word-break: break-word;
  min-width: 0;
  max-width: 100%;
}
/*# sourceMappingURL=style.css.map */
