.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}}
@charset "UTF-8";
/*!
 * Kickstart Theme
 * Version 2.0
 * © 2026 HERRWEISS_ – herrweiss.de
 * Based on Nutshell Framework (MIT)
 */
/* ---------------------------------------------
   WRAPPER
--------------------------------------------- */
/* ---------------------------------------------
   COLORS
   // https://uicolors.app für Varianten
--------------------------------------------- */
/* ---------------------------------------------
   NEUTRAL GRAYS
--------------------------------------------- */
/* ---------------------------------------------
   BACKGROUNDS
--------------------------------------------- */
/* ---------------------------------------------
   SPACING
--------------------------------------------- */
/* ---------------------------------------------
   BORDER / RADIUS / SHADOWS
--------------------------------------------- */
/* ---------------------------------------------
   TYPOGRAPHY
--------------------------------------------- */
/* ---------------------------------------------
   EFFECTS
--------------------------------------------- */
/* ---------------------------------------------
   BREAKPOINTS
--------------------------------------------- */
/* ---------------------------------------------
   BREAKPOINT MAPS
--------------------------------------------- */
:root {
  /* ---------------------------------------------
     COLORS
  --------------------------------------------- */
  --color-primary-rgb: 255, 115, 0;
  --color-primary: rgb(var(--color-primary-rgb));
  --color-primary-dark: #461904;
  --color-primary-light: #fff1d3;
  --color-primary-lighter: #fff9ec;
  --color-primary-highlight: #ff7300;
  --color-secondary-rgb: 59, 130, 246;
  --color-secondary: rgb(var(--color-secondary-rgb));
  --color-secondary-dark: #2563eb;
  --color-secondary-light: #60a5fa;
  --color-secondary-highlight: #dbeafe;
  --color-gray-dark: #0f172a;
  --color-gray: #403832;
  --color-gray-light: #d8d0c8;
  --color-white: #ffffff;
  --color-white-rgb: 255, 255, 255;
  --color-page-background: #fff9ec;
  --color-background-alt: #fff9ec;
  --color-default: var(--color-primary);
  --color-brand: var(--color-default);
  --color-highlight: var(--color-brand);
  --color-text: var(--color-gray-dark);
  --color-text-inverted: var(--color-page-background);
  --color-error: #dbeafe;
  --color-error-light: rgba(219, 234, 254, 0.5);
  /* ---------------------------------------------
     OVERLAYS
  --------------------------------------------- */
  --color-overlay-background: rgba(0, 0, 0, 0.7);
  --img-overlay-primary-20: rgba(var(--color-primary-rgb), 0.2);
  --img-overlay-primary-40: rgba(var(--color-primary-rgb), 0.4);
}

:root {
  /* ---------------------------------------------
     SPACING SCALE
  --------------------------------------------- */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 5rem;
  --space-5xl: 6rem;
  --space-6xl: 8rem;
  --space-7xl: 10rem;
  --space-8xl: 12rem;
  /* ---------------------------------------------
     GRID SYSTEM
  --------------------------------------------- */
  --grid-columns: 12;
  --grid-gutter: var(--space-lg);
  --grid-gutter-half: calc(var(--grid-gutter) / 2);
  /* ---------------------------------------------
     ARTICLE SPACING
  --------------------------------------------- */
  --article-spacing-t-sm: var(--space-md);
  --article-spacing-t-md: var(--space-xl);
  --article-spacing-t-lg: var(--space-2xl);
  --article-spacing-b-sm: var(--space-md);
  --article-spacing-b-md: var(--space-xl);
  --article-spacing-b-lg: var(--space-2xl);
  --article-spacing-sides: var(--layout-spacing-sides);
}

:root {
  /* ---------------------------------------------
     BASE TYPOGRAPHY
  --------------------------------------------- */
  --base-font-size-xs: 0.9375rem;
  --base-font-size-sm: 0.9375rem;
  --base-font-size: 1rem;
  --base-font-size-lg: 1rem;
  --base-font-size-xl: 1rem;
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-md: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 2.25rem;
  --text-4xl: 3.5rem;
  --text-5xl: 4.5rem;
  --text-6xl: 6rem;
  --text-7xl: 7.5rem;
  --base-font-family: Nunito, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
  --base-line-height: 1.5;
  --base-font-weight: 400;
  --font-heading: Nunito, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
  --font-size-body: var(--text-lg);
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  /* Flow & Rhythm */
  --flow-content: var(--space-md);
  --flow-text: var(--space-md);
  /* Lists */
  --list-indent: 1em;
  --list-item-gap: var(--space-xs);
  --list-indent: 1em;
  --list-item-gap: var(--space-xs);
  /* ---------------------------------------------
     PARAGRAPH & CODE
  --------------------------------------------- */
  --paragraph-link-color: var(--links-color);
  --paragraph-link-decoration: underline;
  --paragraph-link-decoration-hover: none;
  --code-color: var(--color-highlight);
  --selection-background: var(--color-brand);
  --pre-color-background: var(--color-gray);
  --pre-color: var(--color-text-inverted);
  --selection-color: var(--color-text-inverted);
  --hr-border: var(--base-border);
}

:root {
  /* ---------------------------------------------
     HEADINGS
  --------------------------------------------- */
  --headings-font-family: var(--font-heading);
  --headings-font-weight: 700;
  --headings-color: currentColor;
  --h1-font-family: var(--headings-font-family);
  --h1-font-weight: var(--headings-font-weight);
  --h1-color: var(--color-primary);
  --h1-font-size: var(--text-3xl);
  --h1-font-size-sm: var(--text-3xl);
  --h1-font-size-md: var(--text-3xl);
  --h1-font-size-lg: var(--text-3xl);
  --h1-font-size-xl: var(--text-3xl);
  --h1-line-height: 1.125;
  --h1-spacing-top: 0;
  --h1-spacing-bottom: var(--space-lg);
  --h2-font-family: var(--headings-font-family);
  --h2-font-weight: var(--headings-font-weight);
  --h2-color: var(--color-primary);
  --h2-font-size: var(--text-3xl);
  --h2-font-size-sm: var(--text-3xl);
  --h2-font-size-md: var(--text-3xl);
  --h2-font-size-lg: var(--text-3xl);
  --h2-font-size-xl: var(--text-3xl);
  --h2-line-height: 1.125;
  --h2-spacing-top: 0;
  --h2-spacing-bottom: var(--space-lg);
  --h3-font-family: var(--headings-font-family);
  --h3-font-weight: var(--headings-font-weight);
  --h3-color: var(--headings-color);
  --h3-font-size: var(--font-size-body);
  --h3-font-size-sm: var(--text-xl);
  --h3-font-size-md: var(--text-2xl);
  --h3-font-size-lg: var(--text-2xl);
  --h3-font-size-xl: var(--text-2xl);
  --h3-line-height: 1.25;
  --h3-spacing-top: 0;
  --h3-spacing-bottom: var(--space-sm);
  --h4-font-family: var(--headings-font-family);
  --h4-font-weight: var(--headings-font-weight);
  --h4-color: var(--headings-color);
  --h4-font-size: var(--font-size-body);
  --h4-font-size-sm: var(--font-size-body);
  --h4-font-size-md: var(--font-size-body);
  --h4-font-size-lg: var(--font-size-body);
  --h4-font-size-xl: var(--font-size-body);
  --h4-line-height: 1.25;
  --h4-spacing-top: 0;
  --h4-spacing-bottom: var(--space-sm);
  --h5-font-family: var(--headings-font-family);
  --h5-font-weight: var(--headings-font-weight);
  --h5-color: var(--headings-color);
  --h5-font-size: var(--font-size-body);
  --h5-font-size-sm: var(--font-size-body);
  --h5-font-size-md: var(--font-size-body);
  --h5-font-size-lg: var(--font-size-body);
  --h5-font-size-xl: var(--font-size-body);
  --h5-line-height: 1.25;
  --h5-spacing-top: 0;
  --h5-spacing-bottom: var(--space-sm);
  --h6-font-family: var(--headings-font-family);
  --h6-font-weight: var(--headings-font-weight);
  --h6-color: var(--headings-color);
  --h6-font-size: var(--text-sm);
  --h6-font-size-sm: var(--text-sm);
  --h6-font-size-md: var(--text-sm);
  --h6-font-size-lg: var(--text-sm);
  --h6-font-size-xl: var(--text-sm);
  --h6-line-height: 1.25;
  --h6-spacing-top: 0;
  --h6-spacing-bottom: 0;
}

:root {
  /* ---------------------------------------------
     BORDER RADIUS
  --------------------------------------------- */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 50px;
  --radius-full: 9999px;
  /* ---------------------------------------------
     BORDERS
  --------------------------------------------- */
  --base-border-width: 2px;
  --base-border-color: var(--color-brand);
  --base-border: var(--base-border-width) solid var(--base-border-color);
  --base-border-radius: var(--radius-lg);
  --forms-input-border-color: var(--color-gray);
  --forms-input-line-height: normal;
  --forms-mandatory-color: var(--color-brand);
  --forms-input-background: var(--color-page-background);
  /* ---------------------------------------------
     SHADOWS
  --------------------------------------------- */
  --base-box-shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
  --base-box-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.15);
  --base-box-shadow-lg: 0 15px 30px rgba(0, 0, 0, 0.2);
  /* ---------------------------------------------
     EFFECTS
  --------------------------------------------- */
  --base-transition: 0.3s;
  --base-blur: 20px;
}

:root {
  /* ---------------------------------------------
     CONTAINER / WRAPPER
  --------------------------------------------- */
  --wrapper-max: 72.1875rem;
  --wrapper-wide: 72.1875rem;
  /* ---------------------------------------------
     LAYOUT SPACING
  --------------------------------------------- */
  --layout-spacing-sides: var(--space-xl);
  --layout-spacing-sides-sm: var(--space-xl);
  --layout-spacing-sides-md: var(--space-3xl);
  --layout-spacing-sides-lg: var(--space-7xl);
  --layout-wrapper-background: transparent;
  /* ---------------------------------------------
     HEADER
  --------------------------------------------- */
  --layout-header-background: var(--color-page-background);
  --layout-header-color: var(--color-text);
  /* ---------------------------------------------
     FOOTER
  --------------------------------------------- */
  --layout-footer-background: var(--color-gray);
  --layout-footer-color: var(--color-text);
  --layout-footer-paddding-top: var(--space-4xl);
  --layout-footer-paddding-bottom: var(--space-4xl);
}

:root {
  /* ---------------------------------------------
     LINKS
  --------------------------------------------- */
  --links-color: var(--color-highlight);
  --links-color-hover: var(--color-highlight);
  --links-color-visited: var(--links-color);
  --links-outline-focus: 2px dotted
  	var(--links-outline-color, var(--color-highlight));
  --links-outline-active: none;
  /* ---------------------------------------------
     BUTTONS
  --------------------------------------------- */
  --button-color: var(--color-text-inverted);
  --button-background: var(--color-highlight);
  --button-color-hover: var(--button-color);
  --button-background-hover: var(--color-highlight);
  --button-spacing: var(--space-sm) var(--space-md);
  --button-border-radius: var(--base-border-radius);
  --button-border-width: var(--base-border-width);
  --button-font-family: var(--base-font-family);
  --button-font-weight: 400;
  --button-font-size: var(--text-md);
  --button-line-height: var(--base-line-height);
  /* ---------------------------------------------
     NAVIGATION
  --------------------------------------------- */
  --nav-item-padding: var(--space-md);
  /* ---------------------------------------------
     FORMS
  --------------------------------------------- */
  --forms-input-border-width: var(--base-border-width);
  --forms-input-border-radius: var(--base-border-radius);
  --forms-input-border-color: var(--color-primary);
  --forms-input-background: var(--color-white);
  --forms-input-line-height: normal;
  --forms-mandatory-color: var(--color-brand);
  /* ---------------------------------------------
     ACCORDION
  --------------------------------------------- */
  --accordion-spacing: var(--space-md);
  --accordion-content-spacing: 0 var(--space-md) var(--space-lg);
  --accordion-content-background: transparent;
  --accordion-toggler-font-size: var(--text-lg);
  --accordion-toggler-background: var(--color-highlight);
  --accordion-toggler-color: var(--color-text-inverted);
  --accordion-toggler-color-hover: var(--color-text-inverted);
  --accordion-toggler-spacing: 1.25rem var(--space-md);
  --accordion-toggler-border: 0;
  /* ---------------------------------------------
     MEDIA / GALLERY
  --------------------------------------------- */
  --gallery-gutter: var(--grid-gutter);
  --gallery-gutter-half: calc(var(--gallery-gutter) / 2);
  /* ---------------------------------------------
     NEWS
  --------------------------------------------- */
  --news-grid-columns-sm: 2;
  --news-grid-columns-md: 2;
  --news-grid-columns-lg: 3;
  --news-grid-columns-xl: 3;
  --news-border: var(--base-border);
  /* ---------------------------------------------
     EVENTS
  --------------------------------------------- */
  --events-grid-columns-sm: 1;
  --events-grid-columns-md: 2;
  --events-grid-columns-lg: 3;
  --events-grid-columns-xl: 3;
  /* ---------------------------------------------
     DOWNLOADS
  --------------------------------------------- */
  --download-link-color: inherit;
  --download-link-decoration: none;
  /* ---------------------------------------------
     TABLES
  --------------------------------------------- */
  --table-border-width: 1px;
  --table-border-style: solid;
  --table-border-color: var(--color-gray-light);
  --table-background-light: var(--color-gray-lightest);
  /* ---------------------------------------------
     NEWSLETTER
  --------------------------------------------- */
  --newsletter-list-border: var(--base-border);
  --newsletter-reader-width: 600px;
  --newsletter-reader-border: var(--base-border);
  /* ---------------------------------------------
     FAQ
  --------------------------------------------- */
  --faq-border: var(--base-border);
  /* ---------------------------------------------
     SEARCH
  --------------------------------------------- */
  --search-spacing: var(--space-md);
  --search-relevance-color: var(--color-gray);
  --search-url-color: var(--color-gray);
}

:root {
  /* ---------------------------------------------
     NUTSHELL COMPATIBILITY ALIASES
     Nur Weiterleitungen - keine eigene Logik!
  --------------------------------------------- */
  --base-spacing-unit: var(--space-md);
  --base-spacing-unit-xs: calc(var(--base-spacing-unit) / 4);
  --base-spacing-unit-sm: calc(var(--base-spacing-unit) / 2);
  --base-spacing-unit-lg: calc(var(--base-spacing-unit) * 2);
  --base-spacing-unit-xl: calc(var(--base-spacing-unit) * 4);
  --base-font-weight: var(--font-weight-normal);
  --slider-arrow-color: inherit;
  --slider-arrow-size: 2rem;
  --slider-arrow-font-family: "Arial";
  --slider-menu-point-size: 2rem;
  --slider-menu-point-color: inherit;
  --slider-menu-point-color-active: var(--color-brand);
}

/*! normalize.css v4.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary { /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * Change font properties to `inherit` in all browsers (opinionated).
 */
button,
input,
select,
textarea {
  font: inherit;
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 * 2. Show the overflow in Edge, Firefox, and IE.
 */
button,
input,
select { /* 2 */
  overflow: visible;
}

/**
 * Remove the margin in Safari.
 * 1. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea { /* 1 */
  margin: 0;
}

/**
 * Remove the inheritence of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritence of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Change the cursor in all browsers (opinionated).
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

/**
 * Restore the default cursor to disabled elements unset by the previous rule.
 */
[disabled] {
  cursor: default;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
input:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the odd appearance of search inputs in Chrome and Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
}

/**
 * Remove the inner padding and cancel buttons in Chrome on OS X and
 * Safari on OS X.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

.float_left {
  float: left;
}

.float_right {
  float: right;
}

.invisible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/**
 * Set the global `box-sizing` state to `border-box`.
 *
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 * paulirish.com/2012/box-sizing-border-box-ftw
 */
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

/* Font Awesome 7 Pro – generated subset */
/* Source: .icons.resolved.json */
/* Generated file – do not edit manually */
.fa, .fa-solid, .fa-regular, .fa-light, .fa-brands {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.fa::before, .fa-solid::before, .fa-regular::before, .fa-light::before, .fa-brands::before {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
}

:root {
  --fa-family-classic:"Font Awesome 7 Pro";
  --fa-family-brands:"Font Awesome 7 Brands";
}

.fa-solid {
  --fa-family:"Font Awesome 7 Pro";
  --fa-style:900;
  font-family: var(--fa-family);
  font-weight: var(--fa-style);
  font-style: normal;
}

.fa-regular {
  --fa-family:"Font Awesome 7 Pro";
  --fa-style:400;
  font-family: var(--fa-family);
  font-weight: var(--fa-style);
  font-style: normal;
}

.fa-light {
  --fa-family:"Font Awesome 7 Pro";
  --fa-style:300;
  font-family: var(--fa-family);
  font-weight: var(--fa-style);
  font-style: normal;
}

.fa-brands {
  --fa-family:"Font Awesome 7 Brands";
  --fa-style:400;
  font-family: var(--fa-family);
  font-weight: var(--fa-style);
  font-style: normal;
}

.fa-angle-right::before {
  content: "\f105";
}

.fa-angle-up::before {
  content: "\f106";
}

.fa-arrow-right::before {
  content: "\f061";
}

.fa-arrow-up-right-from-square::before {
  content: "\f08e";
}

.fa-bars::before {
  content: "\f0c9";
}

.fa-xmark::before {
  content: "\f00d";
}

.fa-envelope::before {
  content: "\f0e0";
}

.fa-phone::before {
  content: "\f095";
}

.fa-facebook-f::before {
  content: "\f39e";
}

.fa-instagram::before {
  content: "\f16d";
}

@font-face {
  font-family: "Font Awesome 7 Pro";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../../files/theme/yihh-2026/fonts/fa-solid-900.woff2") format("woff2");
}
@font-face {
  font-family: "Font Awesome 7 Pro";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../../files/theme/yihh-2026/fonts/fa-regular-400.woff2") format("woff2");
}
@font-face {
  font-family: "Font Awesome 7 Pro";
  font-style: normal;
  font-weight: 300;
  font-display: block;
  src: url("../../files/theme/yihh-2026/fonts/fa-light-300.woff2") format("woff2");
}
@font-face {
  font-family: "Font Awesome 7 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../../files/theme/yihh-2026/fonts/fa-brands-400.woff2") format("woff2");
}
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: var(--base-spacing-unit-sm);
}

ul,
ol,
dl,
blockquote,
p,
address,
hr,
fieldset,
figure,
pre {
  margin-bottom: var(--base-spacing-unit);
}

ul,
ol,
dd {
  margin-left: var(--base-spacing-unit);
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

a:focus-visible,
[tabindex="0"]:focus-visible {
  outline: var(--links-outline-focus);
}
a:active,
[tabindex="0"]:active {
  outline: var(--links-outline-active);
}

a {
  color: var(--links-color);
}
a:visited {
  color: var(--links-color-visited);
}

:not(p) a {
  text-decoration: none;
}

figure {
  margin: 0;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

/* # _shared.scss
   Globale Utility-Klassen:
   - Border-Radius-Utilities (sm, md, lg)
   - Section-Width-Utilities (xs–xl und grid-basiert 2–10 von 12 Spalten)
   - Wrapper-Helper für zentrierten Content
*/
.border-radius-lg {
  border-radius: var(--border-radius-l);
}

.border-radius-md {
  border-radius: var(--border-radius-m);
}

.border-radius-sm {
  border-radius: var(--border-radius-s);
}

/* Flex / Grid Helpers (minimal & nützlich) */
.flex {
  display: flex;
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--grid-gutter);
}

.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--grid-gutter);
}

.wrapper {
  max-width: var(--wrapper-max, 1240px);
  width: 100%;
  margin-inline: auto;
  padding-inline: var(--layout-spacing-sides);
}

.wrapper--wide {
  max-width: var(--wrapper-wide, 1440px);
}

/* Section widths (prozentual & grid-basiert) */
.section--w-xs {
  width: 33.333%;
  margin-inline: auto;
}

.section--w-sm {
  width: 50%;
  margin-inline: auto;
}

.section--w-md {
  width: 66.666%;
  margin-inline: auto;
}

.section--w-lg {
  width: 75%;
  margin-inline: auto;
}

.section--w-xl {
  width: 90%;
  margin-inline: auto;
}

.section--w-2 {
  width: 16.6667%;
  margin-inline: auto;
} /* 2/12 */
.section--w-4 {
  width: 33.3333%;
  margin-inline: auto;
} /* 4/12 */
.section--w-6 {
  width: 50%;
  margin-inline: auto;
} /* 6/12 */
@media screen and (min-width: 68.75em) {
  .section--w-8 {
    width: 66.6667%;
    margin-inline: auto;
  }
}

/* 8/12 */
@media screen and (min-width: 68.75em) {
  .section--w-10 {
    width: 83.3333%;
    margin-inline: auto;
  }
}

/* 10/12 */
.section--wrapper {
  max-width: 66.625em;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.wrapper {
  max-width: var(--wrapper-max, 1240px);
  width: 100%;
  margin-inline: auto;
  padding-inline: var(--layout-spacing-sides);
}

.wrapper--wide {
  max-width: var(--wrapper-wide, 1440px);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

html {
  font-family: var(--base-font-family, sans-serif);
  font-size: var(--base-font-size-xs);
  line-height: var(--base-line-height);
  font-weight: var(--base-font-weight);
  background-color: var(--color-page-background);
  color: var(--color-text);
  overflow-y: scroll;
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}
@media screen and (min-width: 48em) {
  html {
    font-size: var(--base-font-size-sm, var(--base-font-size));
  }
}
@media screen and (min-width: 58.75em) {
  html {
    font-size: var(--base-font-size);
  }
}
@media screen and (min-width: 68.75em) {
  html {
    font-size: var(--base-font-size-lg, var(--base-font-size));
  }
}
@media screen and (min-width: 71.25em) {
  html {
    font-size: var(--base-font-size-xl);
  }
}

/* # _page.scss
   Globale Page-Styles:
   - Basis-Setup für <html> (z. B. scroll-padding, responsive font-size)
   - Font-Scaling über Breakpoints (xs → xl)
   - Utilities für Progressive Enhancement (z. B. .load-hidden bei ScrollReveal)
*/
html.sr .load-hidden {
  visibility: hidden;
}

body {
  font-size: var(--font-size-body);
}

/* nunito-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-regular.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: italic;
  font-weight: 400;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-italic.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: normal;
  font-weight: 500;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-500.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-500.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: italic;
  font-weight: 500;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-500italic.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-500italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: normal;
  font-weight: 600;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-600.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-600.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: italic;
  font-weight: 600;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-600italic.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-600italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: normal;
  font-weight: 700;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-700.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-700.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: italic;
  font-weight: 700;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-700italic.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-700italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: normal;
  font-weight: 800;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-800.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-800.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* nunito-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Nunito";
  font-style: normal;
  font-weight: 900;
  src: url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-900.woff2") format("woff2"), url("../../files/theme/yihh-2026/fonts/nunito-v32-latin-900.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
ul.contact .mail a::before, ul.contact .phone a::before, .link--more a:after {
  display: inline-block;
  line-height: 1;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Häufig genutzte Glyphen */
.svg-icon {
  width: 1em;
  height: 1em;
  display: inline-block;
  fill: currentColor;
  vertical-align: middle;
}

/* Größenvarianten (skalieren relativ zur Fontgröße) */
.svg-icon--sm {
  width: 0.75em;
  height: 0.75em;
}

.svg-icon--md {
  width: 1em;
  height: 1em;
}

.svg-icon--lg {
  width: 1.5em;
  height: 1.5em;
}

.svg-icon--xl {
  width: 2em;
  height: 2em;
}

.heading--1 h1, .heading--1 h2, .heading--1 h3, .heading--1 h4, .heading--1 h5, .heading--1 h6, .heading--1.content-headline, .heading--1.ce_headline, h1 {
  font-family: var(--h1-font-family);
  font-size: var(--h1-font-size);
  font-weight: var(--h1-font-weight);
  line-height: var(--h1-line-height);
  color: var(--h1-color);
  margin-top: var(--h1-spacing-top);
  margin-bottom: var(--h1-spacing-bottom);
}
@media screen and (min-width: 48em) {
  .heading--1 h1, .heading--1 h2, .heading--1 h3, .heading--1 h4, .heading--1 h5, .heading--1 h6, .heading--1.content-headline, .heading--1.ce_headline, h1 {
    --h1-font-size: var(--h1-font-size-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .heading--1 h1, .heading--1 h2, .heading--1 h3, .heading--1 h4, .heading--1 h5, .heading--1 h6, .heading--1.content-headline, .heading--1.ce_headline, h1 {
    --h1-font-size: var(--h1-font-size-md);
  }
}
@media screen and (min-width: 68.75em) {
  .heading--1 h1, .heading--1 h2, .heading--1 h3, .heading--1 h4, .heading--1 h5, .heading--1 h6, .heading--1.content-headline, .heading--1.ce_headline, h1 {
    --h1-font-size: var(--h1-font-size-lg);
  }
}
@media screen and (min-width: 71.25em) {
  .heading--1 h1, .heading--1 h2, .heading--1 h3, .heading--1 h4, .heading--1 h5, .heading--1 h6, .heading--1.content-headline, .heading--1.ce_headline, h1 {
    --h1-font-size: var(--h1-font-size-xl);
  }
}

.heading--2 h1, .heading--2 h2, .heading--2 h3, .heading--2 h4, .heading--2 h5, .heading--2 h6, .heading--2.content-headline, .heading--2.ce_headline, h2 {
  font-family: var(--h2-font-family);
  font-size: var(--h2-font-size);
  font-weight: var(--h2-font-weight);
  line-height: var(--h2-line-height);
  color: var(--h2-color);
  margin-top: var(--h2-spacing-top);
  margin-bottom: var(--h2-spacing-bottom);
}
@media screen and (min-width: 48em) {
  .heading--2 h1, .heading--2 h2, .heading--2 h3, .heading--2 h4, .heading--2 h5, .heading--2 h6, .heading--2.content-headline, .heading--2.ce_headline, h2 {
    --h2-font-size: var(--h2-font-size-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .heading--2 h1, .heading--2 h2, .heading--2 h3, .heading--2 h4, .heading--2 h5, .heading--2 h6, .heading--2.content-headline, .heading--2.ce_headline, h2 {
    --h2-font-size: var(--h2-font-size-md);
  }
}
@media screen and (min-width: 68.75em) {
  .heading--2 h1, .heading--2 h2, .heading--2 h3, .heading--2 h4, .heading--2 h5, .heading--2 h6, .heading--2.content-headline, .heading--2.ce_headline, h2 {
    --h2-font-size: var(--h2-font-size-lg);
  }
}
@media screen and (min-width: 71.25em) {
  .heading--2 h1, .heading--2 h2, .heading--2 h3, .heading--2 h4, .heading--2 h5, .heading--2 h6, .heading--2.content-headline, .heading--2.ce_headline, h2 {
    --h2-font-size: var(--h2-font-size-xl);
  }
}

.heading--3 h1, .heading--3 h2, .heading--3 h3, .heading--3 h4, .heading--3 h5, .heading--3 h6, .heading--3.content-headline, .heading--3.ce_headline, h3 {
  font-family: var(--h3-font-family);
  font-size: var(--h3-font-size);
  font-weight: var(--h3-font-weight);
  line-height: var(--h3-line-height);
  color: var(--h3-color);
  margin-top: var(--h3-spacing-top);
  margin-bottom: var(--h3-spacing-bottom);
}
@media screen and (min-width: 48em) {
  .heading--3 h1, .heading--3 h2, .heading--3 h3, .heading--3 h4, .heading--3 h5, .heading--3 h6, .heading--3.content-headline, .heading--3.ce_headline, h3 {
    --h3-font-size: var(--h3-font-size-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .heading--3 h1, .heading--3 h2, .heading--3 h3, .heading--3 h4, .heading--3 h5, .heading--3 h6, .heading--3.content-headline, .heading--3.ce_headline, h3 {
    --h3-font-size: var(--h3-font-size-md);
  }
}
@media screen and (min-width: 68.75em) {
  .heading--3 h1, .heading--3 h2, .heading--3 h3, .heading--3 h4, .heading--3 h5, .heading--3 h6, .heading--3.content-headline, .heading--3.ce_headline, h3 {
    --h3-font-size: var(--h3-font-size-lg);
  }
}
@media screen and (min-width: 71.25em) {
  .heading--3 h1, .heading--3 h2, .heading--3 h3, .heading--3 h4, .heading--3 h5, .heading--3 h6, .heading--3.content-headline, .heading--3.ce_headline, h3 {
    --h3-font-size: var(--h3-font-size-xl);
  }
}

.heading--4 h1, .heading--4 h2, .heading--4 h3, .heading--4 h4, .heading--4 h5, .heading--4 h6, .heading--4.content-headline, .heading--4.ce_headline, h4 {
  font-family: var(--h4-font-family);
  font-size: var(--h4-font-size);
  font-weight: var(--h4-font-weight);
  line-height: var(--h4-line-height);
  color: var(--h4-color);
  margin-top: var(--h4-spacing-top);
  margin-bottom: var(--h4-spacing-bottom);
}
@media screen and (min-width: 48em) {
  .heading--4 h1, .heading--4 h2, .heading--4 h3, .heading--4 h4, .heading--4 h5, .heading--4 h6, .heading--4.content-headline, .heading--4.ce_headline, h4 {
    --h4-font-size: var(--h4-font-size-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .heading--4 h1, .heading--4 h2, .heading--4 h3, .heading--4 h4, .heading--4 h5, .heading--4 h6, .heading--4.content-headline, .heading--4.ce_headline, h4 {
    --h4-font-size: var(--h4-font-size-md);
  }
}
@media screen and (min-width: 68.75em) {
  .heading--4 h1, .heading--4 h2, .heading--4 h3, .heading--4 h4, .heading--4 h5, .heading--4 h6, .heading--4.content-headline, .heading--4.ce_headline, h4 {
    --h4-font-size: var(--h4-font-size-lg);
  }
}
@media screen and (min-width: 71.25em) {
  .heading--4 h1, .heading--4 h2, .heading--4 h3, .heading--4 h4, .heading--4 h5, .heading--4 h6, .heading--4.content-headline, .heading--4.ce_headline, h4 {
    --h4-font-size: var(--h4-font-size-xl);
  }
}

.heading--5 h1, .heading--5 h2, .heading--5 h3, .heading--5 h4, .heading--5 h5, .heading--5 h6, .heading--5.content-headline, .heading--5.ce_headline, h5 {
  font-family: var(--h5-font-family);
  font-size: var(--h5-font-size);
  font-weight: var(--h5-font-weight);
  line-height: var(--h5-line-height);
  color: var(--h5-color);
  margin-top: var(--h5-spacing-top);
  margin-bottom: var(--h5-spacing-bottom);
}
@media screen and (min-width: 48em) {
  .heading--5 h1, .heading--5 h2, .heading--5 h3, .heading--5 h4, .heading--5 h5, .heading--5 h6, .heading--5.content-headline, .heading--5.ce_headline, h5 {
    --h5-font-size: var(--h5-font-size-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .heading--5 h1, .heading--5 h2, .heading--5 h3, .heading--5 h4, .heading--5 h5, .heading--5 h6, .heading--5.content-headline, .heading--5.ce_headline, h5 {
    --h5-font-size: var(--h5-font-size-md);
  }
}
@media screen and (min-width: 68.75em) {
  .heading--5 h1, .heading--5 h2, .heading--5 h3, .heading--5 h4, .heading--5 h5, .heading--5 h6, .heading--5.content-headline, .heading--5.ce_headline, h5 {
    --h5-font-size: var(--h5-font-size-lg);
  }
}
@media screen and (min-width: 71.25em) {
  .heading--5 h1, .heading--5 h2, .heading--5 h3, .heading--5 h4, .heading--5 h5, .heading--5 h6, .heading--5.content-headline, .heading--5.ce_headline, h5 {
    --h5-font-size: var(--h5-font-size-xl);
  }
}

.heading--6 h1, .heading--6 h2, .heading--6 h3, .heading--6 h4, .heading--6 h5, .heading--6 h6, .heading--6.content-headline, .heading--6.ce_headline, h6 {
  font-family: var(--h6-font-family);
  font-size: var(--h6-font-size);
  font-weight: var(--h6-font-weight);
  line-height: var(--h6-line-height);
  color: var(--h6-color);
  margin-top: var(--h6-spacing-top);
  margin-bottom: var(--h6-spacing-bottom);
}
@media screen and (min-width: 48em) {
  .heading--6 h1, .heading--6 h2, .heading--6 h3, .heading--6 h4, .heading--6 h5, .heading--6 h6, .heading--6.content-headline, .heading--6.ce_headline, h6 {
    --h6-font-size: var(--h6-font-size-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .heading--6 h1, .heading--6 h2, .heading--6 h3, .heading--6 h4, .heading--6 h5, .heading--6 h6, .heading--6.content-headline, .heading--6.ce_headline, h6 {
    --h6-font-size: var(--h6-font-size-md);
  }
}
@media screen and (min-width: 68.75em) {
  .heading--6 h1, .heading--6 h2, .heading--6 h3, .heading--6 h4, .heading--6 h5, .heading--6 h6, .heading--6.content-headline, .heading--6.ce_headline, h6 {
    --h6-font-size: var(--h6-font-size-lg);
  }
}
@media screen and (min-width: 71.25em) {
  .heading--6 h1, .heading--6 h2, .heading--6 h3, .heading--6 h4, .heading--6 h5, .heading--6 h6, .heading--6.content-headline, .heading--6.ce_headline, h6 {
    --h6-font-size: var(--h6-font-size-xl);
  }
}

p,
ul,
ol {
  margin-top: 0;
}
p a,
ul a,
ol a {
  text-decoration: var(--paragraph-link-decoration);
}
p a:hover,
ul a:hover,
ol a:hover {
  --paragraph-link-decoration: var(--paragraph-link-decoration-hover);
}
p:last-child,
ul:last-child,
ol:last-child {
  margin-bottom: 0;
}

code {
  color: var(--code-color);
}

pre {
  padding: 1rem;
  background: var(--pre-color-background);
  color: var(--pre-color);
  overflow-x: scroll;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: var(--hr-border);
}

.li--block {
  margin-bottom: 1rem;
}

.ce_text,
.content-text {
  margin-bottom: var(--base-spacing-unit);
}

::selection {
  background: var(--selection-background);
  color: var(--selection-color);
  opacity: 1;
}

/* ---------------------------------------------
   TOKENS (Fallbacks)
--------------------------------------------- */
/* ---------------------------------------------
   CONTENT LIST BASE (Artikel-Content)
   Gilt für Downloads, Listen-CE, Tabellen-CE, Booknav etc.
   Navigationen sind durch .nav neutralisiert.
--------------------------------------------- */
body {
  letter-spacing: 0.07em;
}

ul,
ol {
  margin: 0;
  padding-left: var(--list-indent, 1.5em);
  list-style-position: outside;
}

/* Marker je Ebene */
ul {
  list-style-type: disc;
}

ul ul {
  list-style-type: circle;
}

ul ul ul {
  list-style-type: square;
}

ol {
  list-style-type: decimal;
}

ol ol {
  list-style-type: lower-alpha;
}

ol ol ol {
  list-style-type: lower-roman;
}

/* Item-Abstände (eng) */
ul > li,
ol > li {
  margin-bottom: var(--list-item-gap, var(--base-spacing-unit-xs));
}

ul > li:last-child,
ol > li:last-child {
  margin-bottom: 0;
}

/* Verschachtelte Listen */
ul ul,
ul ol,
ol ul,
ol ol {
  margin-top: var(--list-item-gap, var(--base-spacing-unit-xs));
  padding-left: calc(var(--list-indent, 1.5em) * 0.85);
}

/* ---------------------------------------------
   BASE (minimal)
--------------------------------------------- */
strong,
b {
  font-weight: var(--font-weight-bold);
}

hr {
  border: 0;
  border-top: var(--hr-border);
  margin: 0;
}

/* ---------------------------------------------
   KICKSTART OVERRIDES – Nutshell neutralisieren
--------------------------------------------- */
/* Nutshell: p/ul/ol &:last-child { margin-bottom: 0; } -> raus */
p,
ul,
ol {
  margin-top: 0;
}
p:last-child,
ul:last-child,
ol:last-child {
  margin-bottom: revert;
}

/* Nutshell setzt ce_text/content-text margin-bottom -> raus */
.ce_text,
.content-text {
  margin-bottom: 0;
}

/* ---------------------------------------------
   FLOW ZWISCHEN CONTAO INHALTSELEMENTEN (Artikel)
   -> Einziger Mechanismus für Abstände zwischen CEs
   -> margin-bottom (wie gewünscht)
--------------------------------------------- */
.mod_article > .inside > *:not([class*=m-b-]):not(.content-headline):not(.ce_headline) {
  margin-bottom: var(--flow-content);
}

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

.rte {
  /* Reset: keine Default-Margins (NICHT für Headlines – die haben
     ihr eigenes Spacing über --hX-spacing-top/-bottom, siehe
     variables/_headings.scss, analog zu Nutshells base/_type.scss) */
  /* Letztes Element im RTE ohne Abstand – gilt für alle Elemente,
     auch Headlines, da hier nicht nach Tag gefiltert wird */
}
.rte p,
.rte ul,
.rte ol,
.rte dl,
.rte blockquote,
.rte pre,
.rte table,
.rte figure {
  margin: 0;
  margin-bottom: var(--flow-text);
}
.rte > :last-child {
  margin-bottom: 0;
}
.rte li {
  line-height: inherit;
}
.rte li > p + p {
  margin-top: var(--rte-list-item-space);
}

/* ---------------------------------------------
   LINKS IM FLIESSTEXT
--------------------------------------------- */
.rte p a,
.rte li a {
  text-decoration: var(--paragraph-link-decoration);
}
.rte p a:hover, .rte p a:focus,
.rte li a:hover,
.rte li a:focus {
  text-decoration: var(--paragraph-link-decoration-hover);
}

/* ---------------------------------------------
   DEBUG (optional) – nur zum Testen aktivieren
   Tipp: später wieder löschen oder per body.debug-layout scopen
--------------------------------------------- */
/*
.rte { outline: 1px solid green; }
.mod_article [class^="content-"] { outline: 1px dashed red; }
*/
/* ---------------------------------------------
   TYPO UTILITIES (wie gehabt)
--------------------------------------------- */
/* Font Sizes */
.text-xs {
  font-size: var(--text-xs);
}

.text-sm {
  font-size: var(--text-sm);
}

.text-md {
  font-size: var(--text-md);
}

.text-lg {
  font-size: var(--text-lg);
}

.text-xl {
  font-size: var(--text-xl);
}

.text-2xl {
  font-size: var(--text-2xl);
}

.text-3xl {
  font-size: var(--text-3xl);
}

.text-4xl {
  font-size: var(--text-4xl);
}

.text-5xl {
  font-size: var(--text-5xl);
}

/* Font Weight */
.font-normal {
  font-weight: 400;
}

.font-medium {
  font-weight: 500;
}

.font-semibold {
  font-weight: 600;
}

.font-bold {
  font-weight: 700;
}

/* Text Alignment */
.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

/* Text Transform */
.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.capitalize {
  text-transform: capitalize;
}

.normal-case {
  text-transform: none;
}

/* Text Decoration */
.underline {
  text-decoration: underline;
}

.line-through {
  text-decoration: line-through;
}

.no-underline {
  text-decoration: none;
}

/* Line Height */
.leading-none {
  line-height: 1;
}

.leading-tight {
  line-height: 1.25;
}

.leading-normal {
  line-height: 1.5;
}

.leading-relaxed {
  line-height: 1.75;
}

.leading-loose {
  line-height: 2;
}

/* White Space */
.whitespace-normal {
  white-space: normal;
}

.whitespace-nowrap {
  white-space: nowrap;
}

.whitespace-pre {
  white-space: pre;
}

/* Text Overflow */
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Special */
.text-highlight {
  color: var(--color-text-highlight);
}

.row {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@supports not (display: grid) {
  .row {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}

.row--gap-y {
  row-gap: var(--grid-gutter);
}

.ce_gallery > ul li, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col-xs-12, .col-xs-11, .col-xs-10, .col-xs-9, .col-xs-8, .col-xs-7, .col-xs-6, .col-xs-5, .col-xs-4, .col-xs-3, .col-xs-2, .col-xs-1 {
  display: grid;
  grid-column: 1/-1;
  max-width: 100%;
}
@supports not (display: grid) {
  .ce_gallery > ul li, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col-xs-12, .col-xs-11, .col-xs-10, .col-xs-9, .col-xs-8, .col-xs-7, .col-xs-6, .col-xs-5, .col-xs-4, .col-xs-3, .col-xs-2, .col-xs-1 {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
  }
}

.col {
  grid-column: 1/-1;
}

.col-1 {
  grid-column: span 1/span 1;
}
@supports not (display: grid) {
  .col-1 {
    width: 8.3333333333%;
  }
}

.row-start-1 {
  grid-row-start: 1;
}

.row-span-1 {
  grid-row: span 1/span 1;
}

.col-2 {
  grid-column: span 2/span 2;
}
@supports not (display: grid) {
  .col-2 {
    width: 16.6666666667%;
  }
}

.row-start-2 {
  grid-row-start: 2;
}

.row-span-2 {
  grid-row: span 2/span 2;
}

.col-3 {
  grid-column: span 3/span 3;
}
@supports not (display: grid) {
  .col-3 {
    width: 25%;
  }
}

.row-start-3 {
  grid-row-start: 3;
}

.row-span-3 {
  grid-row: span 3/span 3;
}

.col-4 {
  grid-column: span 4/span 4;
}
@supports not (display: grid) {
  .col-4 {
    width: 33.3333333333%;
  }
}

.row-start-4 {
  grid-row-start: 4;
}

.row-span-4 {
  grid-row: span 4/span 4;
}

.col-5 {
  grid-column: span 5/span 5;
}
@supports not (display: grid) {
  .col-5 {
    width: 41.6666666667%;
  }
}

.row-start-5 {
  grid-row-start: 5;
}

.row-span-5 {
  grid-row: span 5/span 5;
}

.col-6 {
  grid-column: span 6/span 6;
}
@supports not (display: grid) {
  .col-6 {
    width: 50%;
  }
}

.row-start-6 {
  grid-row-start: 6;
}

.row-span-6 {
  grid-row: span 6/span 6;
}

.col-7 {
  grid-column: span 7/span 7;
}
@supports not (display: grid) {
  .col-7 {
    width: 58.3333333333%;
  }
}

.row-start-7 {
  grid-row-start: 7;
}

.row-span-7 {
  grid-row: span 7/span 7;
}

.col-8 {
  grid-column: span 8/span 8;
}
@supports not (display: grid) {
  .col-8 {
    width: 66.6666666667%;
  }
}

.row-start-8 {
  grid-row-start: 8;
}

.row-span-8 {
  grid-row: span 8/span 8;
}

.col-9 {
  grid-column: span 9/span 9;
}
@supports not (display: grid) {
  .col-9 {
    width: 75%;
  }
}

.row-start-9 {
  grid-row-start: 9;
}

.row-span-9 {
  grid-row: span 9/span 9;
}

.col-10 {
  grid-column: span 10/span 10;
}
@supports not (display: grid) {
  .col-10 {
    width: 83.3333333333%;
  }
}

.row-start-10 {
  grid-row-start: 10;
}

.row-span-10 {
  grid-row: span 10/span 10;
}

.col-11 {
  grid-column: span 11/span 11;
}
@supports not (display: grid) {
  .col-11 {
    width: 91.6666666667%;
  }
}

.row-start-11 {
  grid-row-start: 11;
}

.row-span-11 {
  grid-row: span 11/span 11;
}

.col-12 {
  grid-column: span 12/span 12;
}
@supports not (display: grid) {
  .col-12 {
    width: 100%;
  }
}

.row-start-12 {
  grid-row-start: 12;
}

.row-span-12 {
  grid-row: span 12/span 12;
}

@media screen and (min-width: 0) {
  .col-xs-1 {
    grid-column: span 1/span 1;
  }
  @supports not (display: grid) {
    .col-xs-1 {
      width: 8.3333333333%;
    }
  }
  .col-xs-2 {
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .col-xs-2 {
      width: 16.6666666667%;
    }
  }
  .col-xs-3 {
    grid-column: span 3/span 3;
  }
  @supports not (display: grid) {
    .col-xs-3 {
      width: 25%;
    }
  }
  .col-xs-4 {
    grid-column: span 4/span 4;
  }
  @supports not (display: grid) {
    .col-xs-4 {
      width: 33.3333333333%;
    }
  }
  .col-xs-5 {
    grid-column: span 5/span 5;
  }
  @supports not (display: grid) {
    .col-xs-5 {
      width: 41.6666666667%;
    }
  }
  .col-xs-6 {
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .col-xs-6 {
      width: 50%;
    }
  }
  .col-xs-7 {
    grid-column: span 7/span 7;
  }
  @supports not (display: grid) {
    .col-xs-7 {
      width: 58.3333333333%;
    }
  }
  .col-xs-8 {
    grid-column: span 8/span 8;
  }
  @supports not (display: grid) {
    .col-xs-8 {
      width: 66.6666666667%;
    }
  }
  .col-xs-9 {
    grid-column: span 9/span 9;
  }
  @supports not (display: grid) {
    .col-xs-9 {
      width: 75%;
    }
  }
  .col-xs-10 {
    grid-column: span 10/span 10;
  }
  @supports not (display: grid) {
    .col-xs-10 {
      width: 83.3333333333%;
    }
  }
  .col-xs-11 {
    grid-column: span 11/span 11;
  }
  @supports not (display: grid) {
    .col-xs-11 {
      width: 91.6666666667%;
    }
  }
  .col-xs-12 {
    grid-column: span 12/span 12;
  }
  @supports not (display: grid) {
    .col-xs-12 {
      width: 100%;
    }
  }
}
@media screen and (min-width: 0) {
  .row-span-xs-1 {
    grid-row: span 1/span 1;
  }
  .row-span-xs-2 {
    grid-row: span 2/span 2;
  }
  .row-span-xs-3 {
    grid-row: span 3/span 3;
  }
  .row-span-xs-4 {
    grid-row: span 4/span 4;
  }
  .row-span-xs-5 {
    grid-row: span 5/span 5;
  }
  .row-span-xs-6 {
    grid-row: span 6/span 6;
  }
  .row-span-xs-7 {
    grid-row: span 7/span 7;
  }
  .row-span-xs-8 {
    grid-row: span 8/span 8;
  }
  .row-span-xs-9 {
    grid-row: span 9/span 9;
  }
  .row-span-xs-10 {
    grid-row: span 10/span 10;
  }
  .row-span-xs-11 {
    grid-row: span 11/span 11;
  }
  .row-span-xs-12 {
    grid-row: span 12/span 12;
  }
}
@media screen and (min-width: 0) {
  .col-start-xs-1 {
    grid-column-start: 1;
  }
  .row-start-xs-1 {
    grid-row-start: 1;
  }
  .col-start-xs-2 {
    grid-column-start: 2;
  }
  .row-start-xs-2 {
    grid-row-start: 2;
  }
  .col-start-xs-3 {
    grid-column-start: 3;
  }
  .row-start-xs-3 {
    grid-row-start: 3;
  }
  .col-start-xs-4 {
    grid-column-start: 4;
  }
  .row-start-xs-4 {
    grid-row-start: 4;
  }
  .col-start-xs-5 {
    grid-column-start: 5;
  }
  .row-start-xs-5 {
    grid-row-start: 5;
  }
  .col-start-xs-6 {
    grid-column-start: 6;
  }
  .row-start-xs-6 {
    grid-row-start: 6;
  }
  .col-start-xs-7 {
    grid-column-start: 7;
  }
  .row-start-xs-7 {
    grid-row-start: 7;
  }
  .col-start-xs-8 {
    grid-column-start: 8;
  }
  .row-start-xs-8 {
    grid-row-start: 8;
  }
  .col-start-xs-9 {
    grid-column-start: 9;
  }
  .row-start-xs-9 {
    grid-row-start: 9;
  }
  .col-start-xs-10 {
    grid-column-start: 10;
  }
  .row-start-xs-10 {
    grid-row-start: 10;
  }
  .col-start-xs-11 {
    grid-column-start: 11;
  }
  .row-start-xs-11 {
    grid-row-start: 11;
  }
  .col-start-xs-12 {
    grid-column-start: 12;
  }
  .row-start-xs-12 {
    grid-row-start: 12;
  }
}
@media screen and (min-width: 0) {
  .pull-right-xs {
    grid-column-end: -1;
  }
  .pull-left-xs {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}
@media screen and (min-width: 48em) {
  .col-sm-1 {
    grid-column: span 1/span 1;
  }
  @supports not (display: grid) {
    .col-sm-1 {
      width: 8.3333333333%;
    }
  }
  .col-sm-2 {
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .col-sm-2 {
      width: 16.6666666667%;
    }
  }
  .col-sm-3 {
    grid-column: span 3/span 3;
  }
  @supports not (display: grid) {
    .col-sm-3 {
      width: 25%;
    }
  }
  .col-sm-4 {
    grid-column: span 4/span 4;
  }
  @supports not (display: grid) {
    .col-sm-4 {
      width: 33.3333333333%;
    }
  }
  .col-sm-5 {
    grid-column: span 5/span 5;
  }
  @supports not (display: grid) {
    .col-sm-5 {
      width: 41.6666666667%;
    }
  }
  .col-sm-6 {
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .col-sm-6 {
      width: 50%;
    }
  }
  .col-sm-7 {
    grid-column: span 7/span 7;
  }
  @supports not (display: grid) {
    .col-sm-7 {
      width: 58.3333333333%;
    }
  }
  .col-sm-8 {
    grid-column: span 8/span 8;
  }
  @supports not (display: grid) {
    .col-sm-8 {
      width: 66.6666666667%;
    }
  }
  .col-sm-9 {
    grid-column: span 9/span 9;
  }
  @supports not (display: grid) {
    .col-sm-9 {
      width: 75%;
    }
  }
  .col-sm-10 {
    grid-column: span 10/span 10;
  }
  @supports not (display: grid) {
    .col-sm-10 {
      width: 83.3333333333%;
    }
  }
  .col-sm-11 {
    grid-column: span 11/span 11;
  }
  @supports not (display: grid) {
    .col-sm-11 {
      width: 91.6666666667%;
    }
  }
  .col-sm-12 {
    grid-column: span 12/span 12;
  }
  @supports not (display: grid) {
    .col-sm-12 {
      width: 100%;
    }
  }
}
@media screen and (min-width: 48em) {
  .row-span-sm-1 {
    grid-row: span 1/span 1;
  }
  .row-span-sm-2 {
    grid-row: span 2/span 2;
  }
  .row-span-sm-3 {
    grid-row: span 3/span 3;
  }
  .row-span-sm-4 {
    grid-row: span 4/span 4;
  }
  .row-span-sm-5 {
    grid-row: span 5/span 5;
  }
  .row-span-sm-6 {
    grid-row: span 6/span 6;
  }
  .row-span-sm-7 {
    grid-row: span 7/span 7;
  }
  .row-span-sm-8 {
    grid-row: span 8/span 8;
  }
  .row-span-sm-9 {
    grid-row: span 9/span 9;
  }
  .row-span-sm-10 {
    grid-row: span 10/span 10;
  }
  .row-span-sm-11 {
    grid-row: span 11/span 11;
  }
  .row-span-sm-12 {
    grid-row: span 12/span 12;
  }
}
@media screen and (min-width: 48em) {
  .col-start-sm-1 {
    grid-column-start: 1;
  }
  .row-start-sm-1 {
    grid-row-start: 1;
  }
  .col-start-sm-2 {
    grid-column-start: 2;
  }
  .row-start-sm-2 {
    grid-row-start: 2;
  }
  .col-start-sm-3 {
    grid-column-start: 3;
  }
  .row-start-sm-3 {
    grid-row-start: 3;
  }
  .col-start-sm-4 {
    grid-column-start: 4;
  }
  .row-start-sm-4 {
    grid-row-start: 4;
  }
  .col-start-sm-5 {
    grid-column-start: 5;
  }
  .row-start-sm-5 {
    grid-row-start: 5;
  }
  .col-start-sm-6 {
    grid-column-start: 6;
  }
  .row-start-sm-6 {
    grid-row-start: 6;
  }
  .col-start-sm-7 {
    grid-column-start: 7;
  }
  .row-start-sm-7 {
    grid-row-start: 7;
  }
  .col-start-sm-8 {
    grid-column-start: 8;
  }
  .row-start-sm-8 {
    grid-row-start: 8;
  }
  .col-start-sm-9 {
    grid-column-start: 9;
  }
  .row-start-sm-9 {
    grid-row-start: 9;
  }
  .col-start-sm-10 {
    grid-column-start: 10;
  }
  .row-start-sm-10 {
    grid-row-start: 10;
  }
  .col-start-sm-11 {
    grid-column-start: 11;
  }
  .row-start-sm-11 {
    grid-row-start: 11;
  }
  .col-start-sm-12 {
    grid-column-start: 12;
  }
  .row-start-sm-12 {
    grid-row-start: 12;
  }
}
@media screen and (min-width: 48em) {
  .pull-right-sm {
    grid-column-end: -1;
  }
  .pull-left-sm {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}
@media screen and (min-width: 58.75em) {
  .col-md-1 {
    grid-column: span 1/span 1;
  }
  @supports not (display: grid) {
    .col-md-1 {
      width: 8.3333333333%;
    }
  }
  .col-md-2 {
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .col-md-2 {
      width: 16.6666666667%;
    }
  }
  .col-md-3 {
    grid-column: span 3/span 3;
  }
  @supports not (display: grid) {
    .col-md-3 {
      width: 25%;
    }
  }
  .col-md-4 {
    grid-column: span 4/span 4;
  }
  @supports not (display: grid) {
    .col-md-4 {
      width: 33.3333333333%;
    }
  }
  .col-md-5 {
    grid-column: span 5/span 5;
  }
  @supports not (display: grid) {
    .col-md-5 {
      width: 41.6666666667%;
    }
  }
  .col-md-6 {
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .col-md-6 {
      width: 50%;
    }
  }
  .col-md-7 {
    grid-column: span 7/span 7;
  }
  @supports not (display: grid) {
    .col-md-7 {
      width: 58.3333333333%;
    }
  }
  .col-md-8 {
    grid-column: span 8/span 8;
  }
  @supports not (display: grid) {
    .col-md-8 {
      width: 66.6666666667%;
    }
  }
  .col-md-9 {
    grid-column: span 9/span 9;
  }
  @supports not (display: grid) {
    .col-md-9 {
      width: 75%;
    }
  }
  .col-md-10 {
    grid-column: span 10/span 10;
  }
  @supports not (display: grid) {
    .col-md-10 {
      width: 83.3333333333%;
    }
  }
  .col-md-11 {
    grid-column: span 11/span 11;
  }
  @supports not (display: grid) {
    .col-md-11 {
      width: 91.6666666667%;
    }
  }
  .col-md-12 {
    grid-column: span 12/span 12;
  }
  @supports not (display: grid) {
    .col-md-12 {
      width: 100%;
    }
  }
}
@media screen and (min-width: 58.75em) {
  .row-span-md-1 {
    grid-row: span 1/span 1;
  }
  .row-span-md-2 {
    grid-row: span 2/span 2;
  }
  .row-span-md-3 {
    grid-row: span 3/span 3;
  }
  .row-span-md-4 {
    grid-row: span 4/span 4;
  }
  .row-span-md-5 {
    grid-row: span 5/span 5;
  }
  .row-span-md-6 {
    grid-row: span 6/span 6;
  }
  .row-span-md-7 {
    grid-row: span 7/span 7;
  }
  .row-span-md-8 {
    grid-row: span 8/span 8;
  }
  .row-span-md-9 {
    grid-row: span 9/span 9;
  }
  .row-span-md-10 {
    grid-row: span 10/span 10;
  }
  .row-span-md-11 {
    grid-row: span 11/span 11;
  }
  .row-span-md-12 {
    grid-row: span 12/span 12;
  }
}
@media screen and (min-width: 58.75em) {
  .col-start-md-1 {
    grid-column-start: 1;
  }
  .row-start-md-1 {
    grid-row-start: 1;
  }
  .col-start-md-2 {
    grid-column-start: 2;
  }
  .row-start-md-2 {
    grid-row-start: 2;
  }
  .col-start-md-3 {
    grid-column-start: 3;
  }
  .row-start-md-3 {
    grid-row-start: 3;
  }
  .col-start-md-4 {
    grid-column-start: 4;
  }
  .row-start-md-4 {
    grid-row-start: 4;
  }
  .col-start-md-5 {
    grid-column-start: 5;
  }
  .row-start-md-5 {
    grid-row-start: 5;
  }
  .col-start-md-6 {
    grid-column-start: 6;
  }
  .row-start-md-6 {
    grid-row-start: 6;
  }
  .col-start-md-7 {
    grid-column-start: 7;
  }
  .row-start-md-7 {
    grid-row-start: 7;
  }
  .col-start-md-8 {
    grid-column-start: 8;
  }
  .row-start-md-8 {
    grid-row-start: 8;
  }
  .col-start-md-9 {
    grid-column-start: 9;
  }
  .row-start-md-9 {
    grid-row-start: 9;
  }
  .col-start-md-10 {
    grid-column-start: 10;
  }
  .row-start-md-10 {
    grid-row-start: 10;
  }
  .col-start-md-11 {
    grid-column-start: 11;
  }
  .row-start-md-11 {
    grid-row-start: 11;
  }
  .col-start-md-12 {
    grid-column-start: 12;
  }
  .row-start-md-12 {
    grid-row-start: 12;
  }
}
@media screen and (min-width: 58.75em) {
  .pull-right-md {
    grid-column-end: -1;
  }
  .pull-left-md {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}
@media screen and (min-width: 68.75em) {
  .col-lg-1 {
    grid-column: span 1/span 1;
  }
  @supports not (display: grid) {
    .col-lg-1 {
      width: 8.3333333333%;
    }
  }
  .col-lg-2 {
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .col-lg-2 {
      width: 16.6666666667%;
    }
  }
  .col-lg-3 {
    grid-column: span 3/span 3;
  }
  @supports not (display: grid) {
    .col-lg-3 {
      width: 25%;
    }
  }
  .col-lg-4 {
    grid-column: span 4/span 4;
  }
  @supports not (display: grid) {
    .col-lg-4 {
      width: 33.3333333333%;
    }
  }
  .col-lg-5 {
    grid-column: span 5/span 5;
  }
  @supports not (display: grid) {
    .col-lg-5 {
      width: 41.6666666667%;
    }
  }
  .col-lg-6 {
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .col-lg-6 {
      width: 50%;
    }
  }
  .col-lg-7 {
    grid-column: span 7/span 7;
  }
  @supports not (display: grid) {
    .col-lg-7 {
      width: 58.3333333333%;
    }
  }
  .col-lg-8 {
    grid-column: span 8/span 8;
  }
  @supports not (display: grid) {
    .col-lg-8 {
      width: 66.6666666667%;
    }
  }
  .col-lg-9 {
    grid-column: span 9/span 9;
  }
  @supports not (display: grid) {
    .col-lg-9 {
      width: 75%;
    }
  }
  .col-lg-10 {
    grid-column: span 10/span 10;
  }
  @supports not (display: grid) {
    .col-lg-10 {
      width: 83.3333333333%;
    }
  }
  .col-lg-11 {
    grid-column: span 11/span 11;
  }
  @supports not (display: grid) {
    .col-lg-11 {
      width: 91.6666666667%;
    }
  }
  .col-lg-12 {
    grid-column: span 12/span 12;
  }
  @supports not (display: grid) {
    .col-lg-12 {
      width: 100%;
    }
  }
}
@media screen and (min-width: 68.75em) {
  .row-span-lg-1 {
    grid-row: span 1/span 1;
  }
  .row-span-lg-2 {
    grid-row: span 2/span 2;
  }
  .row-span-lg-3 {
    grid-row: span 3/span 3;
  }
  .row-span-lg-4 {
    grid-row: span 4/span 4;
  }
  .row-span-lg-5 {
    grid-row: span 5/span 5;
  }
  .row-span-lg-6 {
    grid-row: span 6/span 6;
  }
  .row-span-lg-7 {
    grid-row: span 7/span 7;
  }
  .row-span-lg-8 {
    grid-row: span 8/span 8;
  }
  .row-span-lg-9 {
    grid-row: span 9/span 9;
  }
  .row-span-lg-10 {
    grid-row: span 10/span 10;
  }
  .row-span-lg-11 {
    grid-row: span 11/span 11;
  }
  .row-span-lg-12 {
    grid-row: span 12/span 12;
  }
}
@media screen and (min-width: 68.75em) {
  .col-start-lg-1 {
    grid-column-start: 1;
  }
  .row-start-lg-1 {
    grid-row-start: 1;
  }
  .col-start-lg-2 {
    grid-column-start: 2;
  }
  .row-start-lg-2 {
    grid-row-start: 2;
  }
  .col-start-lg-3 {
    grid-column-start: 3;
  }
  .row-start-lg-3 {
    grid-row-start: 3;
  }
  .col-start-lg-4 {
    grid-column-start: 4;
  }
  .row-start-lg-4 {
    grid-row-start: 4;
  }
  .col-start-lg-5 {
    grid-column-start: 5;
  }
  .row-start-lg-5 {
    grid-row-start: 5;
  }
  .col-start-lg-6 {
    grid-column-start: 6;
  }
  .row-start-lg-6 {
    grid-row-start: 6;
  }
  .col-start-lg-7 {
    grid-column-start: 7;
  }
  .row-start-lg-7 {
    grid-row-start: 7;
  }
  .col-start-lg-8 {
    grid-column-start: 8;
  }
  .row-start-lg-8 {
    grid-row-start: 8;
  }
  .col-start-lg-9 {
    grid-column-start: 9;
  }
  .row-start-lg-9 {
    grid-row-start: 9;
  }
  .col-start-lg-10 {
    grid-column-start: 10;
  }
  .row-start-lg-10 {
    grid-row-start: 10;
  }
  .col-start-lg-11 {
    grid-column-start: 11;
  }
  .row-start-lg-11 {
    grid-row-start: 11;
  }
  .col-start-lg-12 {
    grid-column-start: 12;
  }
  .row-start-lg-12 {
    grid-row-start: 12;
  }
}
@media screen and (min-width: 68.75em) {
  .pull-right-lg {
    grid-column-end: -1;
  }
  .pull-left-lg {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}
@media screen and (min-width: 71.25em) {
  .col-xl-1 {
    grid-column: span 1/span 1;
  }
  @supports not (display: grid) {
    .col-xl-1 {
      width: 8.3333333333%;
    }
  }
  .col-xl-2 {
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .col-xl-2 {
      width: 16.6666666667%;
    }
  }
  .col-xl-3 {
    grid-column: span 3/span 3;
  }
  @supports not (display: grid) {
    .col-xl-3 {
      width: 25%;
    }
  }
  .col-xl-4 {
    grid-column: span 4/span 4;
  }
  @supports not (display: grid) {
    .col-xl-4 {
      width: 33.3333333333%;
    }
  }
  .col-xl-5 {
    grid-column: span 5/span 5;
  }
  @supports not (display: grid) {
    .col-xl-5 {
      width: 41.6666666667%;
    }
  }
  .col-xl-6 {
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .col-xl-6 {
      width: 50%;
    }
  }
  .col-xl-7 {
    grid-column: span 7/span 7;
  }
  @supports not (display: grid) {
    .col-xl-7 {
      width: 58.3333333333%;
    }
  }
  .col-xl-8 {
    grid-column: span 8/span 8;
  }
  @supports not (display: grid) {
    .col-xl-8 {
      width: 66.6666666667%;
    }
  }
  .col-xl-9 {
    grid-column: span 9/span 9;
  }
  @supports not (display: grid) {
    .col-xl-9 {
      width: 75%;
    }
  }
  .col-xl-10 {
    grid-column: span 10/span 10;
  }
  @supports not (display: grid) {
    .col-xl-10 {
      width: 83.3333333333%;
    }
  }
  .col-xl-11 {
    grid-column: span 11/span 11;
  }
  @supports not (display: grid) {
    .col-xl-11 {
      width: 91.6666666667%;
    }
  }
  .col-xl-12 {
    grid-column: span 12/span 12;
  }
  @supports not (display: grid) {
    .col-xl-12 {
      width: 100%;
    }
  }
}
@media screen and (min-width: 71.25em) {
  .row-span-xl-1 {
    grid-row: span 1/span 1;
  }
  .row-span-xl-2 {
    grid-row: span 2/span 2;
  }
  .row-span-xl-3 {
    grid-row: span 3/span 3;
  }
  .row-span-xl-4 {
    grid-row: span 4/span 4;
  }
  .row-span-xl-5 {
    grid-row: span 5/span 5;
  }
  .row-span-xl-6 {
    grid-row: span 6/span 6;
  }
  .row-span-xl-7 {
    grid-row: span 7/span 7;
  }
  .row-span-xl-8 {
    grid-row: span 8/span 8;
  }
  .row-span-xl-9 {
    grid-row: span 9/span 9;
  }
  .row-span-xl-10 {
    grid-row: span 10/span 10;
  }
  .row-span-xl-11 {
    grid-row: span 11/span 11;
  }
  .row-span-xl-12 {
    grid-row: span 12/span 12;
  }
}
@media screen and (min-width: 71.25em) {
  .col-start-xl-1 {
    grid-column-start: 1;
  }
  .row-start-xl-1 {
    grid-row-start: 1;
  }
  .col-start-xl-2 {
    grid-column-start: 2;
  }
  .row-start-xl-2 {
    grid-row-start: 2;
  }
  .col-start-xl-3 {
    grid-column-start: 3;
  }
  .row-start-xl-3 {
    grid-row-start: 3;
  }
  .col-start-xl-4 {
    grid-column-start: 4;
  }
  .row-start-xl-4 {
    grid-row-start: 4;
  }
  .col-start-xl-5 {
    grid-column-start: 5;
  }
  .row-start-xl-5 {
    grid-row-start: 5;
  }
  .col-start-xl-6 {
    grid-column-start: 6;
  }
  .row-start-xl-6 {
    grid-row-start: 6;
  }
  .col-start-xl-7 {
    grid-column-start: 7;
  }
  .row-start-xl-7 {
    grid-row-start: 7;
  }
  .col-start-xl-8 {
    grid-column-start: 8;
  }
  .row-start-xl-8 {
    grid-row-start: 8;
  }
  .col-start-xl-9 {
    grid-column-start: 9;
  }
  .row-start-xl-9 {
    grid-row-start: 9;
  }
  .col-start-xl-10 {
    grid-column-start: 10;
  }
  .row-start-xl-10 {
    grid-row-start: 10;
  }
  .col-start-xl-11 {
    grid-column-start: 11;
  }
  .row-start-xl-11 {
    grid-row-start: 11;
  }
  .col-start-xl-12 {
    grid-column-start: 12;
  }
  .row-start-xl-12 {
    grid-row-start: 12;
  }
}
@media screen and (min-width: 71.25em) {
  .pull-right-xl {
    grid-column-end: -1;
  }
  .pull-left-xl {
    grid-row-start: 1;
    grid-column-end: inherit;
  }
}
.justify-start {
  justify-self: start;
  text-align: left;
}

.justify-center {
  justify-self: center;
  text-align: center;
}

.justify-end {
  justify-self: end;
  text-align: right;
}

@media screen and (min-width: 0) {
  .justify-xs-start {
    justify-self: start;
    text-align: left;
  }
  .justify-xs-center {
    justify-self: center;
    text-align: center;
  }
  .justify-xs-end {
    justify-self: end;
    text-align: right;
  }
}
@media screen and (min-width: 48em) {
  .justify-sm-start {
    justify-self: start;
    text-align: left;
  }
  .justify-sm-center {
    justify-self: center;
    text-align: center;
  }
  .justify-sm-end {
    justify-self: end;
    text-align: right;
  }
}
@media screen and (min-width: 58.75em) {
  .justify-md-start {
    justify-self: start;
    text-align: left;
  }
  .justify-md-center {
    justify-self: center;
    text-align: center;
  }
  .justify-md-end {
    justify-self: end;
    text-align: right;
  }
}
@media screen and (min-width: 68.75em) {
  .justify-lg-start {
    justify-self: start;
    text-align: left;
  }
  .justify-lg-center {
    justify-self: center;
    text-align: center;
  }
  .justify-lg-end {
    justify-self: end;
    text-align: right;
  }
}
@media screen and (min-width: 71.25em) {
  .justify-xl-start {
    justify-self: start;
    text-align: left;
  }
  .justify-xl-center {
    justify-self: center;
    text-align: center;
  }
  .justify-xl-end {
    justify-self: end;
    text-align: right;
  }
}
.align-start {
  align-self: start;
}

.align-center {
  align-self: center;
}

.align-end {
  align-self: end;
}

@media screen and (min-width: 0) {
  .align-xs-start {
    align-self: start;
  }
  .align-xs-center {
    align-self: center;
  }
  .align-xs-end {
    align-self: end;
  }
}
@media screen and (min-width: 48em) {
  .align-sm-start {
    align-self: start;
  }
  .align-sm-center {
    align-self: center;
  }
  .align-sm-end {
    align-self: end;
  }
}
@media screen and (min-width: 58.75em) {
  .align-md-start {
    align-self: start;
  }
  .align-md-center {
    align-self: center;
  }
  .align-md-end {
    align-self: end;
  }
}
@media screen and (min-width: 68.75em) {
  .align-lg-start {
    align-self: start;
  }
  .align-lg-center {
    align-self: center;
  }
  .align-lg-end {
    align-self: end;
  }
}
@media screen and (min-width: 71.25em) {
  .align-xl-start {
    align-self: start;
  }
  .align-xl-center {
    align-self: center;
  }
  .align-xl-end {
    align-self: end;
  }
}
/* # _grid.scss
   Ergänzungen zu nutshell/scss/base/grid
   Beispiel: .grid-50-50 für 2-spaltige Layouts ab screen-lg
*/
[class^=col-],
[class*=" col-"] {
  display: block;
}

@media screen and (min-width: 68.75em) {
  .grid-50-50 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
  @supports not (display: grid) {
    .grid-50-50 {
      display: flex;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--grid-gutter) / 2);
      margin-right: calc(-1 * var(--grid-gutter) / 2);
    }
  }
}
@media screen and (min-width: 68.75em) {
  .grid-50-50 > div {
    grid-column: 1/-1;
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .grid-50-50 > div {
      padding-left: var(--grid-gutter-half);
      padding-right: var(--grid-gutter-half);
    }
  }
  @supports not (display: grid) {
    .grid-50-50 > div {
      width: 50%;
    }
  }
}

/* ---------------------------------------------
   BASE LAYOUT
--------------------------------------------- */
body {
  margin: 0;
  min-height: 100%;
  padding-left: var(--space-xl);
  padding-right: var(--space-xl);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  height: 100vh;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(to bottom, var(--color-white) 0%, var(--color-primary-light) 100%);
}

.mod_article {
  position: relative;
}
.mod_article > .inside {
  max-width: 66.625em;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--layout-spacing-sides);
  padding-right: var(--layout-spacing-sides);
  padding-top: var(--article-spacing-top);
  padding-bottom: var(--article-spacing-bottom);
}

.article--full > .inside {
  max-width: none;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
  padding-bottom: 0;
}

/* ---------------------------------------------
   BASE ARTICLE
--------------------------------------------- */
.mod_article {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--article-spacing-sides);
  padding-right: var(--article-spacing-sides);
  background-color: var(--color-white);
  padding-top: var(--article-spacing-t-sm);
  padding-bottom: var(--article-spacing-b-sm);
  padding-left: var(--layout-spacing-sides);
  padding-right: var(--layout-spacing-sides);
}
@media screen and (min-width: 58.75em) {
  .mod_article {
    padding-top: var(--article-spacing-t-md);
    padding-bottom: var(--article-spacing-b-md);
    padding-left: var(--layout-spacing-sides-md);
    padding-right: var(--layout-spacing-sides-md);
  }
}
@media screen and (min-width: 68.75em) {
  .mod_article {
    padding-top: var(--article-spacing-t-lg);
    padding-bottom: var(--article-spacing-b-lg);
    padding-left: var(--space-7xl);
    padding-right: var(--space-7xl);
  }
}
.mod_article > .inside {
  padding: 0;
}
.mod_article:not(:last-of-type) {
  position: relative;
}
.mod_article:not(:last-of-type)::after {
  content: "";
  display: block;
  position: absolute;
  left: var(--space-2xl);
  bottom: 0;
  width: var(--space-2xl);
  height: 2px;
  background-color: #f28c00;
}

/* ---------------------------------------------
   ARTICLE VARIANTS
--------------------------------------------- */
.mod_article.article--hero {
  padding: 0;
  margin-bottom: 0 !important;
}
.mod_article.article--hero > .inside {
  max-width: 100%;
  width: 100%;
}
.mod_article.article--hero::after {
  display: none;
}

.mod_article.article--full > .inside {
  max-width: 100%;
  width: 100%;
}

.mod_article.article--fluid {
  padding-left: 0;
  padding-right: 0;
}
.mod_article.article--fluid > .inside {
  max-width: 100%;
  width: 100%;
}

/* ---------------------------------------------
   WIDTH VARIANTS
--------------------------------------------- */
.mod_article.article--w-4-12 > .inside {
  max-width: calc(var(--wrapper-max) * 0.333333);
}

.mod_article.article--w-6-12 > .inside {
  max-width: calc(var(--wrapper-max) * 0.5);
}

.mod_article.article--w-8-12 > .inside {
  max-width: calc(var(--wrapper-max) * 0.666667);
}

.mod_article.article--w-10-12 > .inside {
  max-width: calc(var(--wrapper-max) * 0.833333);
}

.mod_article.article--wide > .inside {
  max-width: var(--wrapper-wide);
}

/* ---------------------------------------------
   COLOR VARIANTS
--------------------------------------------- */
.mod_article.article--inverse {
  color: var(--color-text-inverted);
}
.mod_article.article--inverse a {
  color: var(--color-text-inverted);
}
.mod_article.article--inverse h1,
.mod_article.article--inverse h2,
.mod_article.article--inverse h3,
.mod_article.article--inverse h4,
.mod_article.article--inverse h5,
.mod_article.article--inverse h6 {
  color: var(--color-text-inverted);
}
.mod_article.article--inverse h1 a,
.mod_article.article--inverse h2 a,
.mod_article.article--inverse h3 a,
.mod_article.article--inverse h4 a,
.mod_article.article--inverse h5 a,
.mod_article.article--inverse h6 a {
  color: var(--color-text-inverted);
}

.mod_article.article--bg-primary {
  background-color: var(--color-primary);
}

.mod_article.article--bg-secondary {
  background-color: var(--color-secondary);
}

.mod_article.article--bg-dark {
  background-color: var(--color-gray-dark);
}

.mod_article.article--bg-light {
  background-color: var(--color-background-alt);
}

.mod_article.article--bg-muted {
  background-color: var(--color-background-muted);
}

.mod_article.article--bg-white {
  background-color: var(--color-white);
}

/* ---------------------------------------------
   BOXED VARIANT
--------------------------------------------- */
.mod_article.article--boxed {
  background: transparent;
}
.mod_article.article--boxed > .inside {
  padding: var(--space-xl);
}
.mod_article.article--boxed.article--bg-primary > .inside {
  background-color: var(--color-primary);
}
.mod_article.article--boxed.article--bg-secondary > .inside {
  background-color: var(--color-secondary);
}
.mod_article.article--boxed.article--bg-dark > .inside {
  background-color: var(--color-gray-dark);
}
.mod_article.article--boxed.article--bg-light > .inside {
  background-color: var(--color-background-alt);
}
.mod_article.article--boxed.article--bg-muted > .inside {
  background-color: var(--color-background-muted);
}
.mod_article.article--boxed.article--bg-white > .inside {
  background-color: var(--color-white);
}

[id=header] {
  color: var(--color-text-inverted);
  position: relative;
}
[id=header] a {
  color: var(--color-text-inverted);
}
[id=header] h1,
[id=header] h2,
[id=header] h3,
[id=header] h4,
[id=header] h5,
[id=header] h6 {
  color: var(--color-text-inverted);
}
[id=header] h1 a,
[id=header] h2 a,
[id=header] h3 a,
[id=header] h4 a,
[id=header] h5 a,
[id=header] h6 a {
  color: var(--color-text-inverted);
}
[id=header] .header-panel {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  overflow: hidden;
  border-radius: var(--radius-xl) var(--radius-xl) 0 0;
  background-color: var(--color-primary);
}
@media screen and (min-width: 0) {
  [id=header] .header-panel {
    height: 120px;
  }
}
@media screen and (min-width: 68.75em) {
  [id=header] .header-panel {
    height: 200px;
  }
}
[id=header] .header-panel .mod_navigation {
  margin-bottom: var(--spacing-l);
}
[id=header] .logo-wrapper {
  position: absolute;
  top: -50px;
  left: 50%;
  z-index: 2;
  transform: translateX(-50%);
}

[id=wrapper] {
  padding: 0;
  max-width: var(--wrapper-max);
  margin: 0 auto;
  margin-top: var(--space-3xl);
}

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
[id=footer] {
  color: var(--color-text-inverted);
  position: relative;
  margin-bottom: 96px;
}
[id=footer] a {
  color: var(--color-text-inverted);
}
[id=footer] h1,
[id=footer] h2,
[id=footer] h3,
[id=footer] h4,
[id=footer] h5,
[id=footer] h6 {
  color: var(--color-text-inverted);
}
[id=footer] h1 a,
[id=footer] h2 a,
[id=footer] h3 a,
[id=footer] h4 a,
[id=footer] h5 a,
[id=footer] h6 a {
  color: var(--color-text-inverted);
}
[id=footer] .logo-sign {
  width: 96px;
  height: 96px;
  position: absolute;
  left: calc(50% - 48px);
  bottom: -48px;
  background: var(--color-primary);
  border-radius: var(--radius-full);
}
[id=footer] .footer-panel {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--article-spacing-sides);
  padding-right: var(--article-spacing-sides);
  padding-top: var(--article-spacing-t-lg);
  padding-bottom: var(--article-spacing-b-lg);
  background-color: var(--color-primary);
  border-radius: 0 0 var(--radius-xl) var(--radius-xl);
  overflow: hidden;
  font-size: var(--text-md);
}
@media screen and (min-width: 58.75em) {
  [id=footer] .footer-panel {
    padding-top: var(--article-spacing-t-md);
    padding-bottom: var(--article-spacing-b-md);
    padding-left: var(--layout-spacing-sides-md);
    padding-right: var(--layout-spacing-sides-md);
  }
}
@media screen and (min-width: 68.75em) {
  [id=footer] .footer-panel {
    padding-top: var(--article-spacing-t-lg);
    padding-bottom: var(--article-spacing-b-lg);
    padding-left: var(--space-7xl);
    padding-right: var(--space-7xl);
  }
}
[id=footer] .contact li a {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  font-weight: var(--font-weight-bold);
}
[id=footer] .contact li a:before {
  width: 1.25em;
  flex: 0 0 1.25em;
  text-align: center;
  font-size: var(--text-2xl);
  font-weight: 300;
}
[id=footer] .contact .phone a:before {
  display: inline-block;
  font-family: "Font Awesome 7 Pro";
  font-weight: 300;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f095";
}
[id=footer] .contact .mail a:before {
  display: inline-block;
  font-family: "Font Awesome 7 Pro";
  font-weight: 300;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f0e0";
}

.nav ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.nav a {
  text-decoration: none;
}

.nav--horizontal ul {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 71.25em) {
  .nav--horizontal ul {
    flex-direction: row;
  }
}
.nav--horizontal a,
.nav--horizontal strong.active,
.nav--horizontal strong.trail,
.nav--horizontal strong.forward {
  display: block;
  padding: calc(var(--nav-item-padding) / 2) var(--nav-item-padding);
}

.nav--vertical a,
.nav--vertical strong.active,
.nav--vertical strong.trail,
.nav--vertical strong.forward {
  display: block;
  padding: calc(var(--nav-item-padding) / 2) var(--nav-item-padding);
}

.nav--border {
  border: var(--base-border);
}
.nav--border a,
.nav--border strong.active,
.nav--border strong.trail,
.nav--border strong.forward {
  padding: var(--nav-item-padding) var(--nav-item-padding);
  border-bottom: 1px solid var(--base-border-color);
}
.nav--border a.last,
.nav--border strong.active.last,
.nav--border strong.trail.last,
.nav--border strong.forward.last {
  border-bottom: 0;
}

.nav--breadcrumb {
  border: var(--base-border);
  padding: var(--base-spacing-unit-sm) var(--base-spacing-unit);
  display: flex;
}
@media screen and (min-width: 71.25em) {
  .nav--breadcrumb {
    flex-direction: column;
  }
}
@media screen and (min-width: 71.25em) {
  .nav--breadcrumb li {
    padding-right: var(--base-spacing-unit);
  }
}
.nav--breadcrumb a:after {
  font-size: 0.75rem;
  display: inline-block;
  content: "►";
  vertical-align: middle;
  padding-left: var(--base-spacing-unit);
}

.nav--select select {
  appearance: none;
  background: transparent;
  border: var(--base-border);
  padding: var(--base-spacing-unit-xs) var(--base-spacing-unit-sm);
}
.nav--select .submit {
  vertical-align: middle;
  padding: var(--base-spacing-unit-xs) var(--base-spacing-unit-sm);
}

.nav--pager ul {
  text-align: center;
}
.nav--pager li {
  display: inline-block;
}
.nav--pager .empty {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.nav--pager a {
  padding: var(--base-spacing-unit-sm);
}

.pagination {
  display: grid;
  grid-column: 1/-1;
  margin-top: var(--base-spacing-unit);
  text-align: center;
  line-height: 1;
}
.pagination ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.pagination a {
  text-decoration: none;
}
@supports not (display: grid) {
  .pagination {
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (min-width: 48em) {
  .pagination {
    grid-template-columns: 1fr 1fr;
  }
}
.pagination p {
  padding: var(--base-spacing-unit-xs);
  padding-left: 0;
  margin: var(--base-spacing-unit-xs);
  margin-left: 0;
  border-top: var(--base-border-width) solid transparent;
}
.pagination li {
  display: inline;
}
.pagination a,
.pagination strong {
  display: inline-block;
  padding: var(--base-spacing-unit-xs);
  margin: var(--base-spacing-unit-xs);
}
.pagination strong {
  border: var(--base-border);
}
.pagination a.next {
  margin-right: 0;
  padding-right: 0;
}
@media screen and (min-width: 48em) {
  .pagination p {
    justify-self: start;
  }
  .pagination p + ul {
    justify-self: end;
  }
}

:root {
  --nav-mobile-offset: 0px;
  --nav-mobile-inset: var(--nav-mobile-offset) 0 0 auto;
  --nav-mobile-width: min(22rem, 85vw);
  --nav-mobile-height: auto;
  --nav-mobile-max-height: 100%;
  --nav-mobile-transform: translateX(100%);
  --nav-mobile-opacity: 1;
  --nav-mobile-padding: var(--base-spacing-unit-lg) var(--base-spacing-unit);
  --nav-mobile-padding-top: calc(
  	var(--nav-toggler-top) + var(--nav-toggler-size)
  );
  --nav-mobile-background: var(--color-primary);
  --nav-mobile-color: var(--color-text-inverted);
  --nav-mobile-shadow: 0 0 2rem rgba(0, 0, 0, 0.2);
  --nav-mobile-backdrop: rgba(0, 0, 0, 0.5);
  --nav-mobile-z-index: 1000;
  --nav-mobile-duration: 300ms;
  --nav-mobile-easing: cubic-bezier(0.4, 0, 0.2, 1);
  --nav-toggler-size: 2.75rem;
  --nav-toggler-bar-width: 1.5rem;
  --nav-toggler-bar-height: 2px;
  --nav-toggler-bar-gap: 0.4rem;
  --nav-toggler-top: 100px;
  --nav-toggler-right: calc(var(--space-xl) + var(--space-lg));
  --nav-toggler-z-index: calc(var(--nav-mobile-z-index) + 1);
  --nav-toggler-radius: var(--radius-full);
  --nav-toggler-background: var(--color-primary);
  --nav-close-size: 2.75rem;
  --nav-close-icon-size: 1.25rem;
  --nav-submenu-toggle-size: 2.75rem;
  --nav-submenu-icon-size: 0.5rem;
  --nav-submenu-indent: var(--base-spacing-unit);
}

.nav-toggler {
  display: none;
}
@media screen and (max-width: 71.24875em) {
  .has-js .nav-toggler {
    position: fixed;
    top: var(--nav-toggler-top);
    right: var(--nav-toggler-right);
    z-index: var(--nav-toggler-z-index);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--nav-toggler-size);
    min-height: var(--nav-toggler-size);
    border-radius: var(--nav-toggler-radius);
    background: var(--nav-toggler-background);
    padding: 0;
    border: 0;
    color: inherit;
    cursor: pointer;
  }
}

.nav-toggler__icon {
  position: relative;
  display: block;
  width: var(--nav-toggler-bar-width);
  height: var(--nav-toggler-bar-height);
  background: currentColor;
  transition: background-color var(--nav-mobile-duration) var(--nav-mobile-easing);
}
.nav-toggler__icon::before, .nav-toggler__icon::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background: currentColor;
  transition: transform var(--nav-mobile-duration) var(--nav-mobile-easing);
}
.nav-toggler__icon::before {
  transform: translateY(calc(-1 * var(--nav-toggler-bar-gap)));
}
.nav-toggler__icon::after {
  transform: translateY(var(--nav-toggler-bar-gap));
}

.nav-toggler.is-active .nav-toggler__icon {
  background: transparent;
}
.nav-toggler.is-active .nav-toggler__icon::before {
  transform: rotate(45deg);
}
.nav-toggler.is-active .nav-toggler__icon::after {
  transform: rotate(-45deg);
}

.nav--mobile.is-mobile {
  position: fixed;
  inset: var(--nav-mobile-inset);
  z-index: var(--nav-mobile-z-index);
  display: flex;
  flex-direction: column;
  width: var(--nav-mobile-width);
  height: var(--nav-mobile-height);
  max-width: 100%;
  max-height: var(--nav-mobile-max-height);
  padding: var(--nav-mobile-padding);
  padding-top: var(--nav-mobile-padding-top);
  overflow-y: auto;
  overscroll-behavior: contain;
  background: var(--nav-mobile-background);
  color: var(--nav-mobile-color);
  box-shadow: var(--nav-mobile-shadow);
  visibility: hidden;
  transform: var(--nav-mobile-transform);
  opacity: var(--nav-mobile-opacity);
  transition: transform var(--nav-mobile-duration) var(--nav-mobile-easing), opacity var(--nav-mobile-duration) var(--nav-mobile-easing), visibility 0s linear var(--nav-mobile-duration);
}
.nav--mobile.is-mobile:focus {
  outline: none;
}
.nav--mobile.is-mobile.is-open {
  visibility: visible;
  transform: none;
  opacity: 1;
  transition: transform var(--nav-mobile-duration) var(--nav-mobile-easing), opacity var(--nav-mobile-duration) var(--nav-mobile-easing), visibility 0s linear 0s;
}
.nav--mobile.is-mobile .level_1 {
  width: 100%;
}
.nav--mobile.is-mobile a,
.nav--mobile.is-mobile strong.active,
.nav--mobile.is-mobile strong.trail,
.nav--mobile.is-mobile strong.forward {
  padding: var(--base-spacing-unit-sm) 0;
}

.nav--from-left {
  --nav-mobile-inset: var(--nav-mobile-offset) auto 0 0;
  --nav-mobile-transform: translateX(-100%);
}

.nav--from-top {
  --nav-mobile-inset: var(--nav-mobile-offset) 0 auto 0;
  --nav-mobile-width: auto;
  --nav-mobile-max-height: calc(100vh - var(--nav-mobile-offset));
  --nav-mobile-transform: translateY(-100%);
}

.nav--from-bottom {
  --nav-mobile-inset: auto 0 0 0;
  --nav-mobile-width: auto;
  --nav-mobile-max-height: 85vh;
  --nav-mobile-transform: translateY(100%);
}

.nav--overlay {
  --nav-mobile-inset: var(--nav-mobile-offset) 0 0 0;
  --nav-mobile-width: auto;
  --nav-mobile-shadow: none;
  --nav-mobile-transform: none;
  --nav-mobile-opacity: 0;
}

@supports (height: 100dvh) {
  .nav--from-top {
    --nav-mobile-max-height: calc(100dvh - var(--nav-mobile-offset));
  }
  .nav--from-bottom {
    --nav-mobile-max-height: 85dvh;
  }
}
.nav__submenu-toggle {
  display: none;
}

.nav--mobile.is-mobile li.has-submenu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.nav--mobile.is-mobile li.has-submenu > a,
.nav--mobile.is-mobile li.has-submenu > strong,
.nav--mobile.is-mobile li.has-submenu > span {
  flex: 1 1 auto;
}
.nav--mobile.is-mobile li.has-submenu > ul {
  flex: 0 0 100%;
  padding-left: var(--nav-submenu-indent);
}
.nav--mobile.is-mobile li.has-submenu > ul:not(.is-open) {
  display: none;
}
.nav--mobile.is-mobile .nav__submenu-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: var(--nav-submenu-toggle-size);
  height: var(--nav-submenu-toggle-size);
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
}
.nav--mobile.is-mobile .nav__submenu-toggle .nav__submenu-icon {
  width: var(--nav-submenu-icon-size);
  height: var(--nav-submenu-icon-size);
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translate(-25%, -25%);
  transition: transform var(--nav-mobile-duration) var(--nav-mobile-easing);
}
.nav--mobile.is-mobile .nav__submenu-toggle.is-open .nav__submenu-icon {
  transform: rotate(-135deg) translate(-25%, -25%);
}

.nav-close {
  display: none;
}

.nav--mobile.is-mobile .nav-close {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  align-self: flex-end;
  align-items: center;
  justify-content: center;
  gap: var(--base-spacing-unit-sm);
  min-width: var(--nav-close-size);
  min-height: var(--nav-close-size);
  margin-bottom: var(--base-spacing-unit);
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  cursor: pointer;
}
.nav--mobile.is-mobile .nav-close .nav-close__icon::before, .nav--mobile.is-mobile .nav-close .nav-close__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--nav-close-icon-size);
  height: 2px;
  background: currentColor;
}
.nav--mobile.is-mobile .nav-close .nav-close__icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.nav--mobile.is-mobile .nav-close .nav-close__icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.nav-backdrop {
  position: fixed;
  inset: 0;
  z-index: calc(var(--nav-mobile-z-index) - 1);
  background: var(--nav-mobile-backdrop);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--nav-mobile-duration) var(--nav-mobile-easing), visibility 0s linear var(--nav-mobile-duration);
}
.nav-backdrop.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity var(--nav-mobile-duration) var(--nav-mobile-easing), visibility 0s linear 0s;
}

html {
  scrollbar-gutter: stable;
}

html.has-nav-open {
  overflow: hidden;
}

@supports not (scrollbar-gutter: stable) {
  html.has-nav-open body {
    padding-right: var(--nav-scrollbar-width, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .nav--mobile,
  .nav-backdrop,
  .nav__submenu-icon,
  .nav-toggler__icon,
  .nav-toggler__icon::before,
  .nav-toggler__icon::after {
    transition-duration: 1ms !important;
  }
}
@media print {
  .nav-backdrop {
    display: none;
  }
}
.logo {
  --layout-logo-width-sm: 100px;
  --layout-logo-width-md: 110px;
  --layout-logo-width-lg: 130px;
  margin-right: auto;
  transition: all 0.3s;
}
@media screen and (min-width: 0) {
  .logo {
    width: var(--layout-logo-width-sm);
  }
}
@media screen and (min-width: 58.75em) {
  .logo {
    width: var(--layout-logo-width-md);
  }
}
@media screen and (min-width: 68.75em) {
  .logo {
    width: var(--layout-logo-width-lg);
  }
}

.logo {
  --logo-bg: var(--color-primary);
  --logo-fg: var(--color-white);
  fill-rule: evenodd;
  clip-rule: evenodd;
  stroke-linejoin: round;
  stroke-miterlimit: 2;
}

.logo__bg {
  fill: var(--logo-bg);
}

.logo__mark,
.logo__wordmark {
  fill: var(--logo-fg);
}

.logo__wordmark {
  fill-rule: nonzero;
}

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
.ce_accordion {
  margin-bottom: var(--accordion-spacing);
}
.ce_accordion:not(.handorgel) .toggler {
  font-size: var(--accordion-toggler-font-size);
  cursor: pointer;
  background: var(--accordion-toggler-background);
  color: var(--accordion-toggler-color);
  padding: var(--accordion-toggler-spacing);
  border: var(--accordion-toggler-border);
}
.ce_accordion:not(.handorgel) .toggler:hover {
  color: var(--accordion-toggler-color-hover);
}
.ce_accordion:not(.handorgel) .toggler:focus {
  outline: 0;
}
.ce_accordion.handorgel .toggler button {
  display: flex;
  width: 100%;
  appearance: none;
  font-size: var(--accordion-toggler-font-size);
  cursor: pointer;
  background: var(--accordion-toggler-background);
  color: var(--accordion-toggler-color);
  padding: var(--accordion-toggler-spacing);
  border: var(--accordion-toggler-border);
}
.ce_accordion.handorgel .toggler button:hover {
  color: var(--accordion-toggler-color-hover);
}
.ce_accordion.handorgel .toggler button:focus {
  outline: 0;
}
.ce_accordion .accordion {
  background: var(--accordion-content-background);
  overflow: hidden;
}
.ce_accordion .accordion > div {
  padding: var(--accordion-content-spacing);
}

.content-accordion .handorgel__header {
  line-height: var(--base-line-height);
  margin-bottom: var(--accordion-spacing);
}
.content-accordion .handorgel__header__button {
  display: flex;
  width: 100%;
  appearance: none;
  font-size: var(--accordion-toggler-font-size);
  cursor: pointer;
  background: var(--accordion-toggler-background);
  color: var(--accordion-toggler-color);
  padding: var(--accordion-toggler-spacing);
  border: var(--accordion-toggler-border);
}
.content-accordion .handorgel__header__button:hover {
  color: var(--accordion-toggler-color-hover);
}
.content-accordion .handorgel__header__button:focus {
  outline: 0;
}
.content-accordion .handorgel__content {
  background: var(--accordion-content-background);
  overflow: hidden;
}
.content-accordion .handorgel__content > div {
  padding: var(--accordion-content-spacing);
}

.content-accordion .handorgel__header:not(.handorgel__header--opened) .handorgel__header__button:hover {
  margin-bottom: 0;
}

.content-accordion .handorgel__header {
  margin-top: var(--accordion-spacing);
  margin-bottom: 0;
}

.content-accordion .handorgel__header--open .handorgel__header__button {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.content-accordion {
  border-bottom: 0;
}
.content-accordion .handorgel__header__button {
  position: relative;
  padding-right: 3rem;
  border-radius: var(--radius-lg);
}
.content-accordion .handorgel__header__button::after {
  display: inline-block;
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f106";
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%) rotate(180deg);
  transform-origin: center;
  transition: transform 0.2s ease;
}
.content-accordion .handorgel__content {
  padding: 0;
  border: 0;
  border-radius: 0;
  font-size: var(--text-md);
  letter-spacing: normal;
}
.content-accordion .handorgel__content > div {
  padding-top: var(--space-lg);
}
.content-accordion .handorgel__content__inner {
  border-right: 2px solid var(--color-primary);
  border-bottom: 2px solid var(--color-primary);
  border-left: 2px solid var(--color-primary);
  border-bottom-right-radius: var(--radius-lg);
  border-bottom-left-radius: var(--radius-lg);
}

.team .content-text.media {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: var(--space-lg);
  align-items: start;
}
.team .content-text.media figure {
  float: none;
  display: flex;
  margin: 0;
}
.team .content-text.media .rte {
  min-width: 0;
}
@media (max-width: 700px) {
  .team .content-text.media {
    grid-template-columns: 1fr;
  }
  .team .content-text.media figure {
    width: 150px;
  }
}

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
.events-list {
  margin-bottom: var(--base-spacing-unit);
}
.events-list > h1, .events-list > h2, .events-list > h3, .events-list > h4, .events-list > h5, .events-list > h6 {
  margin-bottom: 0;
}
.events-list .image_container {
  margin-top: var(--base-spacing-unit);
  margin-bottom: var(--base-spacing-unit);
}
.events-list .float_left {
  margin-right: var(--base-spacing-unit);
}
.events-list .float_right {
  margin-left: var(--base-spacing-unit);
}
.events-list .event > h1, .events-list .event > h2, .events-list .event > h3, .events-list .event > h4, .events-list .event > h5, .events-list .event > h6 {
  margin-top: var(--base-spacing-unit);
}
.events-list .layout_upcoming time,
.events-list .layout_upcoming a {
  padding-top: var(--base-spacing-unit);
  display: inline-block;
}
.events-list .header {
  margin-top: var(--base-spacing-unit);
}

.events-grid {
  display: grid;
  grid-gap: var(--grid-gutter);
  margin-bottom: var(--base-spacing-unit);
}
@media screen and (min-width: 48em) {
  .events-grid {
    grid-template-columns: repeat(var(--events-grid-columns-sm), 1fr);
  }
}
@media screen and (min-width: 58.75em) {
  .events-grid {
    grid-template-columns: repeat(var(--events-grid-columns-md), 1fr);
  }
}
@media screen and (min-width: 68.75em) {
  .events-grid {
    grid-template-columns: repeat(var(--events-grid-columns-lg), 1fr);
  }
}
@media screen and (min-width: 71.25em) {
  .events-grid {
    grid-template-columns: repeat(var(--events-grid-columns-xl), 1fr);
  }
}

.events-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.events-menu a {
  text-decoration: none;
}
.events-menu .year {
  margin-bottom: var(--base-spacing-unit-sm);
}
.events-menu .year > a,
.events-menu .year > .active {
  color: inherit;
  font-weight: var(--headings-font-weight);
  font-family: var(--headings-font-family);
}
.events-menu .level_2 li {
  margin-bottom: var(--base-spacing-unit-xs);
}

.image--left img {
  text-align: left;
  margin-left: 0;
}

.image--right img {
  text-align: right;
  margin-right: 0;
}

.image--center img {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.ce_gallery {
  margin-bottom: var(--base-spacing-unit);
}
.ce_gallery > ul {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
  grid-row-gap: var(--gallery-gutter);
  padding: 0;
  margin: 0;
  list-style-type: none;
}
@supports not (display: grid) {
  .ce_gallery > ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}
.ce_gallery .cols_2 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@supports not (display: grid) {
  .ce_gallery .cols_2 li {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
  }
}
@supports not (display: grid) {
  .ce_gallery .cols_2 li {
    width: 50%;
  }
}
.ce_gallery .cols_3 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@supports not (display: grid) {
  .ce_gallery .cols_3 li {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
  }
}
@supports not (display: grid) {
  .ce_gallery .cols_3 li {
    width: 50%;
  }
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_3 li {
    grid-column: 1/-1;
    grid-column: span 4/span 4;
  }
  @supports not (display: grid) {
    .ce_gallery .cols_3 li {
      padding-left: var(--grid-gutter-half);
      padding-right: var(--grid-gutter-half);
    }
  }
  @supports not (display: grid) {
    .ce_gallery .cols_3 li {
      width: 33.3333333333%;
    }
  }
}
.ce_gallery .cols_4 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@supports not (display: grid) {
  .ce_gallery .cols_4 li {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
  }
}
@supports not (display: grid) {
  .ce_gallery .cols_4 li {
    width: 50%;
  }
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_4 li {
    grid-column: 1/-1;
    grid-column: span 3/span 3;
  }
  @supports not (display: grid) {
    .ce_gallery .cols_4 li {
      padding-left: var(--grid-gutter-half);
      padding-right: var(--grid-gutter-half);
    }
  }
  @supports not (display: grid) {
    .ce_gallery .cols_4 li {
      width: 25%;
    }
  }
}
.ce_gallery .cols_5 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@supports not (display: grid) {
  .ce_gallery .cols_5 li {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
  }
}
@supports not (display: grid) {
  .ce_gallery .cols_5 li {
    width: 50%;
  }
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_5 li {
    grid-column: 1/-1;
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .ce_gallery .cols_5 li {
      padding-left: var(--grid-gutter-half);
      padding-right: var(--grid-gutter-half);
    }
  }
  @supports not (display: grid) {
    .ce_gallery .cols_5 li {
      width: 16.6666666667%;
    }
  }
}
.ce_gallery .cols_6 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@supports not (display: grid) {
  .ce_gallery .cols_6 li {
    padding-left: var(--grid-gutter-half);
    padding-right: var(--grid-gutter-half);
  }
}
@supports not (display: grid) {
  .ce_gallery .cols_6 li {
    width: 50%;
  }
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_6 li {
    grid-column: 1/-1;
    grid-column: span 2/span 2;
  }
  @supports not (display: grid) {
    .ce_gallery .cols_6 li {
      padding-left: var(--grid-gutter-half);
      padding-right: var(--grid-gutter-half);
    }
  }
  @supports not (display: grid) {
    .ce_gallery .cols_6 li {
      width: 16.6666666667%;
    }
  }
}
.ce_gallery img {
  display: block;
}

.content-gallery {
  margin-bottom: var(--base-spacing-unit);
}
.content-gallery ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.content-gallery a {
  text-decoration: none;
}
.content-gallery ul {
  grid-row-gap: var(--gallery-gutter);
}
.content-gallery--cols-2 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@supports not (display: grid) {
  .content-gallery--cols-2 ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}
.content-gallery--cols-3 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@supports not (display: grid) {
  .content-gallery--cols-3 ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-3 ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
  @supports not (display: grid) {
    .content-gallery--cols-3 ul {
      display: flex;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--grid-gutter) / 2);
      margin-right: calc(-1 * var(--grid-gutter) / 2);
    }
  }
}
.content-gallery--cols-4 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@supports not (display: grid) {
  .content-gallery--cols-4 ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-4 ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
  @supports not (display: grid) {
    .content-gallery--cols-4 ul {
      display: flex;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--grid-gutter) / 2);
      margin-right: calc(-1 * var(--grid-gutter) / 2);
    }
  }
}
.content-gallery--cols-5 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@supports not (display: grid) {
  .content-gallery--cols-5 ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-5 ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
  @supports not (display: grid) {
    .content-gallery--cols-5 ul {
      display: flex;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--grid-gutter) / 2);
      margin-right: calc(-1 * var(--grid-gutter) / 2);
    }
  }
}
.content-gallery--cols-6 ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@supports not (display: grid) {
  .content-gallery--cols-6 ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: calc(-1 * var(--grid-gutter) / 2);
    margin-right: calc(-1 * var(--grid-gutter) / 2);
  }
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-6 ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
  @supports not (display: grid) {
    .content-gallery--cols-6 ul {
      display: flex;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--grid-gutter) / 2);
      margin-right: calc(-1 * var(--grid-gutter) / 2);
    }
  }
}
.content-gallery img {
  display: block;
}

.ce_player .video_container,
.ce_youtube .video_container {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: auto;
}

.content-player figure:has(video),
.content-player figure:has(iframe),
.content-youtube figure:has(video),
.content-youtube figure:has(iframe) {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: auto;
}

.ce_player video,
.content-player video {
  border: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100% !important;
  height: 100% !important;
}

.ce_youtube iframe,
.content-youtube iframe {
  border: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100% !important;
  height: 100% !important;
}
.ce_youtube button,
.content-youtube button {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  appearance: none;
  border: none;
  padding: 0;
}
.ce_youtube button img,
.content-youtube button img {
  grid-column: 1/-1;
  grid-row: 1;
}
.ce_youtube button p,
.content-youtube button p {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  padding: var(--base-spacing-unit);
  background: var(--base-overlay-background);
  color: var(--color-text-inverted);
}

.content-gallery ul {
  margin: 0;
  padding: 0;
}
.content-gallery ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.content-gallery figure {
  margin-bottom: 0;
}

img {
  margin: 0;
}

figure {
  display: flex;
  justify-content: center;
}

.article--hero .content-image {
  margin-bottom: 0 !important;
}

/* ---------------------------------------------
   BASE IMAGE CONTAINER
--------------------------------------------- */
.image_container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.image_container img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}
.image_container picture {
  position: relative;
  display: block;
}

.img--team {
  border-radius: 50%;
}

.media--right {
  float: right;
}

/* ---------------------------------------------
   OVERLAY EFFECTS (Opt-In)
--------------------------------------------- */
.image_container--overlay-subtle picture::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--img-overlay-primary-20);
  z-index: 1;
  pointer-events: none;
}
.image_container--overlay-subtle img {
  filter: grayscale(15%) contrast(1.05);
  opacity: 0.95;
}

.image_container--overlay-strong picture::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--img-overlay-primary-40);
  z-index: 1;
  pointer-events: none;
}
.image_container--overlay-strong img {
  filter: grayscale(25%) contrast(1.1);
  opacity: 0.9;
}

.image_container--gradient-primary picture::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(var(--color-primary-rgb), 0.3) 0%, rgba(var(--color-primary-rgb), 0.1) 100%);
  z-index: 1;
  pointer-events: none;
}
.image_container--gradient-primary img {
  filter: grayscale(20%) contrast(1.1);
  opacity: 0.9;
}

.image_container--gradient-secondary picture::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(var(--color-secondary-rgb), 0.3) 0%, rgba(var(--color-secondary-rgb), 0.1) 100%);
  z-index: 1;
  pointer-events: none;
}
.image_container--gradient-secondary img {
  filter: grayscale(20%) contrast(1.1);
  opacity: 0.9;
}

.image_container--gradient-dark picture::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
  z-index: 1;
  pointer-events: none;
}

/* ---------------------------------------------
   FILTER EFFECTS (Standalone)
--------------------------------------------- */
.image_container--grayscale img {
  filter: grayscale(100%);
  transition: filter 0.3s ease;
}
.image_container--grayscale:hover img {
  filter: grayscale(0%);
}

.image_container--desaturate img {
  filter: saturate(0.7) contrast(1.05);
}
.image_container--desaturate:hover img {
  filter: saturate(1) contrast(1);
}

.image_container--duotone img {
  filter: grayscale(100%) contrast(1.2);
  mix-blend-mode: multiply;
}
.image_container--duotone picture::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom right, var(--color-primary), var(--color-secondary));
  mix-blend-mode: screen;
  z-index: 1;
  pointer-events: none;
}

/* ---------------------------------------------
   HOVER EFFECTS
--------------------------------------------- */
.image_container--zoom-hover {
  overflow: hidden;
}
.image_container--zoom-hover img {
  transition: transform 0.5s ease;
}
.image_container--zoom-hover:hover img {
  transform: scale(1.1);
}

.image_container--lift-hover {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.image_container--lift-hover:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
}

.image_container--overlay-subtle:hover picture::before,
.image_container--overlay-strong:hover picture::before {
  opacity: 0.5;
  transition: opacity 0.3s ease;
}

/* ---------------------------------------------
   ROUNDED VARIANTS
--------------------------------------------- */
.image_container--rounded {
  border-radius: var(--radius-md);
}
.image_container--rounded img,
.image_container--rounded picture::before {
  border-radius: var(--radius-md);
}

.image_container--rounded-lg {
  border-radius: var(--radius-lg);
}
.image_container--rounded-lg img,
.image_container--rounded-lg picture::before {
  border-radius: var(--radius-lg);
}

.image_container--rounded-full {
  border-radius: 50%;
  overflow: hidden;
}
.image_container--rounded-full img {
  border-radius: 50%;
}

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
input.submit,
button.submit, .back a, div.btn > a,
div.btn > button,
.ce_toplink > a,
.ce_toplink > button,
.toplink > a,
.toplink > button,
.content-toplink > a,
.content-toplink > button, a.btn,
span.btn,
button.btn {
  border-radius: var(--button-border-radius);
  padding: var(--button-spacing);
  display: inline-block;
  border: var(--button-border-width) var(--button-border-style, solid) var(--button-border-color, transparent);
  font-family: var(--button-font-family);
  font-weight: var(--button-font-weight);
  font-size: var(--button-font-size);
  line-height: var(--button-line-height);
  text-align: center;
  background: transparent;
  color: var(--button-color);
  background-image: none;
  white-space: nowrap;
  text-decoration: none;
}

input.submit,
button.submit, div.btn--primary a, div.btn--primary > a,
div.btn--primary > button,
.ce_toplink > a,
.ce_toplink > button,
.toplink > a,
.toplink > button,
.content-toplink > a,
.content-toplink > button, a.btn--primary,
span.btn--primary,
button.btn--primary {
  background: var(--button-background);
  color: var(--button-color);
}
input.submit:hover,
button.submit:hover, div.btn--primary a:hover,
div.btn--primary > button:hover,
.ce_toplink > a:hover,
.ce_toplink > button:hover,
.toplink > a:hover,
.toplink > button:hover,
.content-toplink > a:hover,
.content-toplink > button:hover, a.btn--primary:hover,
span.btn--primary:hover,
button.btn--primary:hover {
  --button-background: var(--button-background-hover);
  --button-color: var(--button-color-hover);
}

a.btn,
span.btn,
button.btn {
  margin-bottom: var(--base-spacing-unit);
}

div.btn:not(:last-child),
.ce_toplink:not(:last-child),
.toplink:not(:last-child),
.content-toplink:not(:last-child) {
  margin-bottom: var(--base-spacing-unit);
}

div.btn--left {
  text-align: left;
}

div.btn--center {
  text-align: center;
}

div.btn--right {
  text-align: right;
}

.btn--floated {
  float: left;
  margin-right: var(--base-spacing-unit-xs);
}

.ce_toplink a,
.toplink a,
.content-toplink a {
  text-decoration: none;
}

.back {
  border-top: var(--base-border);
  margin-top: var(--base-spacing-unit);
  padding-top: var(--base-spacing-unit-sm);
}
.back a {
  text-decoration: none;
}

html {
  --links-color: var(--color-primary);
  --links-color-hover: var(---color-secondary);
  --button-color: var(--color-text-inverted);
  --button-background: var(--color-primary);
  --button-background-hover: var(--color-brand-primary);
  --button-spacing: var(--spacing-sm) var(--spacing-md);
  --button-border-radius: var(--base-border-radius);
  --button-shadow-primary: 0 10px 40px 0 rgba(50, 50, 50, 0.25);
  --button-color-secondary: var(--color-primary);
  --button-background-secondary: var(--color-white);
  --button-background-secondary-hover: var(--color-secondary);
  --button-background-highlight: var(--color-text);
  --button-background-highlight-hover: var(--color-brand-secondary);
  --button-color-highlight: var(--color-text-inverted);
}

.btn-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-md);
}

a {
  color: var(--links-color);
}
a:hover {
  --links-color: var(--links-color-hover);
}

input.submit,
button.submit, .back a, a.btn,
span.btn,
button.btn, div.btn > a,
div.btn > button,
.ce_toplink > a,
.ce_toplink > button,
.toplink > a,
.toplink > button,
.content-toplink > a,
.content-toplink > button {
  border: none;
}

input.submit,
button.submit, div.btn--primary a, a.btn--primary,
span.btn--primary,
button.btn--primary, div.btn--primary > a,
div.btn--primary > button,
.ce_toplink > a,
.ce_toplink > button,
.toplink > a,
.toplink > button,
.content-toplink > a,
.content-toplink > button {
  text-decoration: none;
  transition: background-color 0.3s, box-shadow 0.3s;
  font-weight: 600;
}
input.submit:hover,
button.submit:hover, div.btn--primary a:hover, a.btn--primary:hover,
span.btn--primary:hover,
button.btn--primary:hover,
div.btn--primary > button:hover,
.ce_toplink > a:hover,
.ce_toplink > button:hover,
.toplink > a:hover,
.toplink > button:hover,
.content-toplink > a:hover,
.content-toplink > button:hover {
  box-shadow: var(--button-shadow-primary);
}
p input.submit,
p button.submit, p div.btn--primary a, div.btn--primary p a, p a.btn--primary,
p span.btn--primary,
p button.btn--primary,
p div.btn--primary > button,
p .ce_toplink > a,
p .ce_toplink > button,
p .toplink > a,
p .toplink > button,
p .content-toplink > a,
p .content-toplink > button {
  margin-bottom: 0;
  text-decoration: none;
}

.back a, div.btn--secondary a, a.btn--secondary,
span.btn--secondary,
button.btn--secondary {
  border-radius: var(--button-border-radius);
  color: var(--button-color-secondary);
  border: var(--button-border-width) solid var(--button-background-secondary);
  background: var(--button-background-secondary);
  transition: background-color 0.3s;
  font-weight: 600;
}
.back a:hover, div.btn--secondary a:hover, a.btn--secondary:hover,
span.btn--secondary:hover,
button.btn--secondary:hover {
  --button-background-secondary: var(--button-background-secondary-hover);
}
p .back a, .back p a, p div.btn--secondary a, div.btn--secondary p a, p a.btn--secondary,
p span.btn--secondary,
p button.btn--secondary {
  margin-bottom: 0;
  text-decoration: none;
}

div.btn--ghost a, a.btn--ghost,
span.btn--ghost,
button.btn--ghost {
  background: transparent;
  color: var(--links-color);
  text-decoration: underline;
  text-underline-offset: 0.15em;
  border: none;
  box-shadow: none;
  transition: color 0.2s ease;
}
div.btn--ghost a:hover, a.btn--ghost:hover,
span.btn--ghost:hover,
button.btn--ghost:hover {
  color: var(--links-color-hover);
}
p div.btn--ghost a, div.btn--ghost p a, p a.btn--ghost,
p span.btn--ghost,
p button.btn--ghost {
  margin-bottom: 0;
}

.article--highlight div.btn--primary a {
  --button-background: var(--button-background-highlight);
  --button-color: var(--button-color-highlight);
}
.article--highlight div.btn--primary a:hover {
  --button-background: var(--button-background-highlight-hover);
}

.link--more {
  margin-top: var(--spacing-lg);
}
.link--more a {
  font-weight: 600;
}
.link--more a:after {
  font-family: "Font Awesome 7 Pro";
  font-weight: 400;
  content: "\f061";
  color: currentColor;
  padding-left: var(--spacing-xs);
}

/* Fixed Call Button: circle → pill on hover (expands left) */
.call-button {
  /* tunable tokens */
  --call-size: 64px;
  --call-expanded-width: 230px;
  position: fixed;
  right: var(--spacing-lg);
  bottom: var(--spacing-lg);
  z-index: 200;
  display: inline-flex;
  align-items: center;
  height: var(--call-size);
  width: var(--call-size); /* Start: Kreis */
  padding: 0 var(--spacing-sm);
  border-radius: var(--radius-full); /* rund / pill */
  overflow: hidden;
  background: var(--color-primary);
  color: var(--color-white);
  text-decoration: none;
  box-shadow: var(--base-box-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.15));
  transition: width 0.25s ease;
  box-shadow: var(--base-box-shadow-lg);
  /* Icon */
  /* Label (Telefonnummer) – versteckt bis Hover */
}
.call-button i {
  font-size: 1.5rem;
  line-height: 1;
  flex: 0 0 auto;
  margin-right: var(--spacing-sm);
}
.call-button .call-button__label {
  white-space: nowrap;
  opacity: 0;
  transform: translateX(8px);
  transition: opacity 0.2s ease, transform 0.2s ease;
  /* verhindert, dass der Text im Kreis sichtbar wird */
  pointer-events: none;
  font-weight: 600;
}
.call-button:hover, .call-button:focus-visible {
  width: var(--call-expanded-width); /* expandiert nach links (right-anchored) */
}
.call-button:hover .call-button__label, .call-button:focus-visible .call-button__label {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

/* Motion-friendly fallback */
@media (prefers-reduced-motion: reduce) {
  .call-button {
    transition: none;
  }
  .call-button .call-button__label {
    transition: none;
  }
}
.goverlay {
  background: var(--color-overlay-background);
}

.ginlined-content.team-modal-content {
  padding: 60px;
}

.ginlined-content.team-modal .glightbox-content,
.ginlined-content.team-modal .glinline-content {
  height: auto;
  max-height: 90vh;
  overflow: auto;
}

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: var(--base-spacing-unit-xs);
}

input.text,
input.captcha,
textarea.textarea,
select.select {
  display: block;
  width: 100%;
  padding: var(--base-spacing-unit-sm) var(--base-spacing-unit-sm);
  border-radius: var(--forms-input-border-radius);
  border: var(--forms-input-border-width) solid var(--forms-input-border-color);
  background-clip: padding-box;
  background-image: none;
  background-color: var(--forms-input-background);
  line-height: var(--forms-input-line-height);
}

textarea.textarea {
  height: auto;
}

.widget-text,
.widget-textarea,
.widget-password {
  margin-bottom: var(--base-spacing-unit);
}

input[type=search] {
  appearance: none;
}

input[type=file] {
  display: block;
  line-height: 1;
}

input.radio,
input.checkbox {
  margin-left: 1px;
  margin-right: var(--base-spacing-unit-xs);
  line-height: var(--base-line-height);
  vertical-align: middle;
}
input.radio + label,
input.checkbox + label {
  margin-right: var(--base-spacing-unit-xs);
  margin-bottom: 0;
  font-weight: normal;
}

.widget-radio,
.widget-checkbox,
.widget-select,
.widget-upload {
  margin-bottom: var(--base-spacing-unit);
}
.widget-radio legend,
.widget-checkbox legend,
.widget-select legend,
.widget-upload legend {
  font-weight: 700;
}

.radio_container > span,
.checkbox_container > span {
  display: inline-flex;
  align-items: center;
}

span.mandatory {
  color: var(--forms-mandatory-color);
}

p.error {
  margin-bottom: 0;
}

label,
.explanation {
  font-size: var(--font-sm);
}

.widget-submit {
  margin-top: var(--base-spacing-unit-4);
}

.widget-fineuploader label {
  display: none;
}
.widget-fineuploader .qq-upload-button-selector {
  padding: var(--spacing-lg) !important;
  border-radius: var(--border-radius-l);
  border: 1px dashed var(--color-gray);
}
.widget-fineuploader .qq-upload-button-selector h4 {
  text-transform: none;
  letter-spacing: 0;
}
.widget-fineuploader .qq-upload-button-selector .svg-icon {
  width: 56px;
  height: 56px;
}

.fineuploader-wrapper .qq-upload-button {
  display: block;
  width: 100%;
  text-align: center;
  background: var(--color-page-background);
  padding: var(--base-spacing-unit-4);
  line-height: 1;
  cursor: pointer;
  margin-top: var(--base-spacing-unit);
  margin-bottom: var(--base-spacing-unit);
  font-size: var(--text-base);
}

.fineuploader-wrapper .qq-upload-button:focus,
.fineuploader-wrapper .qq-upload-button:hover {
  border-color: var(--color-default);
  background: var(--color-page-background);
  color: var(--color-default);
}

.values-container {
  margin-top: var(--base-spacing-unit);
  margin-bottom: var(--base-spacing-unit);
  font-size: var(--text-sm);
  color: var(--color-gray);
}

.fineuploader-wrapper .values-list,
.fineuploader-wrapper .values-list li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.checkbox_container {
  position: relative;
  margin: 1em 0;
  text-align: left;
  display: flex;
}
.checkbox_container.md-checkbox-inline {
  display: inline-block;
}
.checkbox_container label {
  cursor: pointer;
  display: inline;
  line-height: 1.25em;
  vertical-align: top;
  clear: both;
  padding-left: 0.75em;
}
.checkbox_container label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1.25em;
  height: 1.25em;
  background: #fff;
  border: 2px solid var(--color-gray);
  border-radius: 0.125em;
  transition: background 0.3s;
}
.checkbox_container label:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
}
.checkbox_container input[type=checkbox] {
  outline: 0;
  visibility: hidden;
  width: 1.25em;
  margin: 0;
  display: block;
  float: left;
  font-size: inherit;
}
.checkbox_container input[type=checkbox]:checked + label:before {
  background: var(--color-brand);
  border: none;
}
.checkbox_container input[type=checkbox]:checked + label:after {
  transform: translate(0.25em, 0.3365384615em) rotate(-45deg);
  width: 0.75em;
  height: 0.375em;
  border: 0.125em solid #fff;
  border-top-style: none;
  border-right-style: none;
}
.checkbox_container input[type=checkbox]:disabled + label:before {
  width: 1.25em;
  height: 1.25em;
  background: #fff;
  border: 2px solid rgba(0, 0, 0, 0.26);
  border-radius: 0.125em;
  transition: background 0.3s;
}
.checkbox_container input[type=checkbox]:disabled:checked + label:before {
  background: rgba(0, 0, 0, 0.26);
}

.mod_subscribe {
  --subscribe-control-height: 56px;
}

.mod_subscribe .formbody {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: stretch;
}

/* E-Mail */
.mod_subscribe .widget-text {
  flex: 1 1 300px;
  order: 1;
}

.mod_subscribe .widget-text input.text {
  width: 100%;
  height: var(--subscribe-control-height);
  box-sizing: border-box;
  border-color: var(--color-gray-light);
}

/* Button */
.mod_subscribe .widget-submit {
  flex: 0 0 auto;
  order: 2;
}

.mod_subscribe .widget-submit .submit {
  height: var(--subscribe-control-height);
  box-sizing: border-box;
}

/* Captcha */
.mod_subscribe .widget-captcha {
  flex: 0 0 100%;
  order: 3;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

/* Sicherheitsfrage in eigener Zeile */
.mod_subscribe .widget-captcha label {
  flex: 0 0 100%;
  order: 1;
  margin: 0;
  font-weight: 700;
}

/* Rechenaufgabe */
.mod_subscribe .widget-captcha .captcha_text {
  order: 2;
  margin: 0;
  white-space: nowrap;
}

/* Antwort */
.mod_subscribe .widget-captcha input.captcha {
  order: 3;
  flex: 0 0 auto;
  width: 72px;
  height: 48px;
  box-sizing: border-box;
  border-color: var(--color-gray-light);
}

table {
  margin-bottom: var(--base-spacing-unit);
  width: 100%;
  padding: 0;
  border-spacing: 0;
  border-left: var(--table-border-width) var(--table-border-style) var(--table-border-color);
  border-top: var(--table-border-width) var(--table-border-style) var(--table-border-color);
}
table th,
table td {
  border-right: var(--table-border-width) var(--table-border-style) var(--table-border-color);
  border-bottom: var(--table-border-width) var(--table-border-style) var(--table-border-color);
  padding: 10px;
}

thead {
  text-align: left;
  background: var(--table-background-light);
}

tfoot {
  font-style: italic;
}

.table--striped .even {
  background: var(--table-background-light);
}

.table--overflow {
  overflow-x: scroll;
  -ms-overflow-x: auto;
}

.news-list {
  margin-bottom: var(--base-spacing-unit);
}
.news-list > h1, .news-list > h2, .news-list > h3, .news-list > h4, .news-list > h5, .news-list > h6 {
  margin-bottom: 0;
}
.news-list .info {
  margin-bottom: 0;
}
.news-list .float_left {
  margin-right: var(--base-spacing-unit);
}
.news-list .float_right {
  margin-left: var(--base-spacing-unit);
}
.news-list .layout_short > h1, .news-list .layout_short > h2, .news-list .layout_short > h3, .news-list .layout_short > h4, .news-list .layout_short > h5, .news-list .layout_short > h6,
.news-list .layout_latest > h1,
.news-list .layout_latest > h2,
.news-list .layout_latest > h3,
.news-list .layout_latest > h4,
.news-list .layout_latest > h5,
.news-list .layout_latest > h6,
.news-list .layout_simple > h1,
.news-list .layout_simple > h2,
.news-list .layout_simple > h3,
.news-list .layout_simple > h4,
.news-list .layout_simple > h5,
.news-list .layout_simple > h6 {
  margin-top: var(--base-spacing-unit);
}
.news-list .layout_simple time,
.news-list .layout_simple a,
.news-list .layout_upcoming time,
.news-list .layout_upcoming a {
  padding-top: var(--base-spacing-unit);
  display: inline-block;
}
.news-list .header {
  margin-top: var(--base-spacing-unit);
}

.news-grid {
  display: grid;
  grid-gap: var(--grid-gutter);
  margin-bottom: var(--base-spacing-unit);
  margin-bottom: var(--base-spacing-unit);
}
@media screen and (min-width: 48em) {
  .news-grid {
    grid-template-columns: repeat(var(--news-grid-columns-sm), 1fr);
  }
}
@media screen and (min-width: 58.75em) {
  .news-grid {
    grid-template-columns: repeat(var(--news-grid-columns-md), 1fr);
  }
}
@media screen and (min-width: 68.75em) {
  .news-grid {
    grid-template-columns: repeat(var(--news-grid-columns-lg), 1fr);
  }
}
@media screen and (min-width: 71.25em) {
  .news-grid {
    grid-template-columns: repeat(var(--news-grid-columns-xl), 1fr);
  }
}
.news-grid > h1, .news-grid > h2, .news-grid > h3, .news-grid > h4, .news-grid > h5, .news-grid > h6 {
  grid-column: 1/-1;
}
.news-grid .layout_simple time {
  display: block;
}

.news-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.news-menu a {
  text-decoration: none;
}
.news-menu .year {
  margin-bottom: var(--base-spacing-unit-sm);
}
.news-menu .year > a,
.news-menu .year > .active {
  color: inherit;
  font-weight: var(--headings-font-weight);
  font-family: var(--headings-font-family);
}
.news-menu .level_2 li {
  margin-bottom: var(--base-spacing-unit-xs);
}

@media screen and (min-width: 68.75em) {
  .newslist--grid > .ce-wrapper {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
  @supports not (display: grid) {
    .newslist--grid > .ce-wrapper {
      display: flex;
      flex-wrap: wrap;
      margin-left: calc(-1 * var(--grid-gutter) / 2);
      margin-right: calc(-1 * var(--grid-gutter) / 2);
    }
  }
}
@media screen and (min-width: 68.75em) and (min-width: 68.75em) {
  .newslist--grid > .ce-wrapper .layout_latest {
    grid-column: 1/-1;
    grid-column: span 6/span 6;
  }
  @supports not (display: grid) {
    .newslist--grid > .ce-wrapper .layout_latest {
      padding-left: var(--grid-gutter-half);
      padding-right: var(--grid-gutter-half);
    }
  }
  @supports not (display: grid) {
    .newslist--grid > .ce-wrapper .layout_latest {
      width: 50%;
    }
  }
}
.newslist--grid > .ce-wrapper .layout_latest {
  margin-bottom: var(--spacing-2xl);
}
.newslist--grid > .ce-wrapper .layout_latest .info {
  margin-bottom: 0;
  font-size: var(--text-sm);
  color: rgba(var(--color-gray-rgb), 0.5);
}
.newslist--grid > .ce-wrapper .layout_latest h2 {
  margin-bottom: var(--spacing-xs);
}
.newslist--grid > .ce-wrapper .teaser-text {
  padding: var(--spacing-base) var(--spacing-md) 0;
}

.news--reader {
  margin-top: calc(var(--hero-height-img) * -0.5 - 80px);
}
.news--reader .news--hero {
  max-width: 60%;
  margin: 0 auto;
  border-radius: var(--border-radius-l);
  overflow: hidden;
  margin-bottom: var(--spacing-xl);
}
.news--reader .btn-back {
  text-align: center;
  margin-bottom: var(--spacing-md);
}
.news--reader .btn-back.bottom {
  margin-top: var(--spacing-xl);
}
.news--reader .btn-back .btn {
  opacity: 1;
  height: 52px !important;
  font-size: 1em;
}
.news--reader .btn-back .btn .svg-icon {
  font-size: 1.5em;
  margin-left: 0;
}
.news--reader .cta--news {
  background-color: var(--color-primary);
  border-radius: var(--border-radius-m);
  padding: var(--spacing-lg);
  margin-top: var(--spacing-lg);
}

.mod_newscategories_cumulative {
  margin-bottom: var(--spacing-xl);
}
.mod_newscategories_cumulative .btn {
  margin-bottom: var(--spacing-sm);
  margin-right: var(--spacing-sm);
}

.content-swiper .swiper-button-prev,
.content-swiper .swiper-button-next {
  border: none;
  background: transparent;
  appearance: none;
}

.slider {
  position: relative;
}
.slider .slider-control {
  position: static;
  height: 0;
}
.slider .slider-control a {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--slider-arrow-size);
  line-height: 1;
  position: absolute;
  display: block;
  color: var(--slider-arrow-color);
  font-family: var(--slider-arrow-font-family);
}
.slider .slider-control a:before {
  padding: var(--base-spacing-unit-sm);
  display: block;
}
.slider .slider-control a:hover {
  opacity: 0.5;
}
.slider .slider-prev:before {
  content: "◄";
}
.slider .slider-next:before {
  content: "►";
}
.slider .slider-menu {
  font-size: var(--slider-menu-point-size);
  line-height: 1;
  top: auto;
  bottom: 0;
}
.slider .slider-menu b {
  color: var(--slider-menu-point-color);
}
.slider .slider-menu b.active {
  color: var(--slider-menu-point-color-active);
}
.slider .slider-menu b:hover {
  opacity: 0.5;
}

html {
  --swiper-theme-color: var(--color-primary);
  --swiper-pagination-height: var(--spacing-2xl);
  --swiper-pagination-bullet-width: 10px;
  --swiper-pagination-bullet-height: 10px;
  --swiper-pagination-bullet-inactive-color: rgba(var(--color-gray-rgb), 0.2);
  --swiper-pagination-bullet-active-color: rgba(var(--color-primary-rgb), 1);
  --swiper-pagination-bullet-width: 12px;
  --swiper-pagination-bullet-height: 12px;
}

/* nur für diesen Slider */
.swiper-pagination {
  height: var(--swiper-pagination-height);
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-pagination .swiper-pagination-bullet {
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--swiper-pagination-bullet-active-color);
}

.swiper-controls {
  height: var(--slider-space-bottom);
  width: 100%;
  display: flex;
  justify-content: start;
  align-items: center;
  gap: 10px;
}

.swiper-button-prev,
.swiper-button-next {
  position: static !important;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  opacity: 1;
  color: var(--color-white);
}
.swiper-button-prev .svg-icon,
.swiper-button-next .svg-icon {
  height: 24px;
  width: 24px;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  display: none;
}

.swiper-button-prev .svg-icon {
  transform: rotate(180deg);
}

.swiper-horizontal {
  position: relative;
  padding-bottom: var(--slider-space-bottom);
}

.swiper-pagination-bullet {
  border: 1px solid var(--color-green);
}

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
.cta {
  background-color: var(--color-background-alt);
}

ul.contact {
  list-style: none;
  padding: 0;
}
ul.contact li {
  margin-bottom: 0.5em;
}
ul.contact a {
  display: flex;
  align-items: center;
  gap: 0.5em;
  text-decoration: none;
}
ul.contact a::before {
  font-size: var(--text-xl);
  line-height: 1;
}
ul.contact .phone a::before {
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  content: "\f2a0";
  color: currentColor;
}
ul.contact .mail a::before {
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  content: "\f0e0";
  color: currentColor;
}

.cta-phone a {
  color: var(--color-text);
  text-decoration: none;
}

@media screen and (min-width: 0) {
  .cta-bild {
    margin-top: var(--spacing-md);
  }
}
@media screen and (min-width: 68.75em) {
  .cta-bild {
    margin-top: calc(var(--spacing-3xl) * -1);
  }
}
.cta-bild figure {
  margin-bottom: 0;
}

.ce_rsce_stundenplan h2 {
  margin-bottom: var(--space-2xl);
}
.ce_rsce_stundenplan .stundenplan__day {
  margin-bottom: var(--space-xl);
  padding-bottom: var(--space-xl);
  border-bottom: 1px solid var(--color-gray-light);
}
.ce_rsce_stundenplan .stundenplan__day-title {
  font-size: var(--text-lg);
  text-transform: uppercase;
}
.ce_rsce_stundenplan .stundenplan__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ce_rsce_stundenplan .stundenplan__item {
  padding: 0;
}
@media screen and (min-width: 68.75em) {
  .ce_rsce_stundenplan .stundenplan__item {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 1.5rem;
  }
}
@media screen and (min-width: 0) {
  .ce_rsce_stundenplan .stundenplan__item {
    margin-bottom: var(--space-lg);
  }
}
@media screen and (min-width: 68.75em) {
  .ce_rsce_stundenplan .stundenplan__item {
    margin-bottom: 0;
  }
}
.ce_rsce_stundenplan .stundenplan__item:last-child {
  border-bottom: none;
}
.ce_rsce_stundenplan .stundenplan__item--cancelled .stundenplan__course,
.ce_rsce_stundenplan .stundenplan__item--cancelled .stundenplan__time {
  text-decoration: line-through;
  opacity: 0.6;
}
.ce_rsce_stundenplan .stundenplan__time {
  flex: 0 0 8rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.ce_rsce_stundenplan .stundenplan__content {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.ce_rsce_stundenplan .stundenplan__course-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
.ce_rsce_stundenplan .stundenplan__course {
  flex: 0 1 auto;
}
.ce_rsce_stundenplan .stundenplan__info {
  font-size: var(--text-sm);
}
.ce_rsce_stundenplan .stundenplan__mode {
  display: inline-block;
  flex: 0 0 auto;
  width: fit-content;
  padding: 0.1rem 0.5rem;
  border-radius: 999px;
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-primary);
  background: rgba(var(--color-primary-rgb), 0.2);
}
.ce_rsce_stundenplan .stundenplan__cancelled-badge {
  display: inline-block;
  flex: 0 0 auto;
  width: fit-content;
  padding: 0.1rem 0.5rem;
  border-radius: 999px;
  font-size: var(--text-xs);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-white);
  background: var(--color-primary);
}

.stundenplan-week {
  width: 100%;
  padding: var(--space-3xl) !important;
  display: none;
}
.stundenplan-week__headline {
  margin: 0 0 var(--space-lg);
  color: var(--color-primary);
  font-size: var(--text-xl);
}
.stundenplan-week__grid {
  display: grid;
  grid-template-columns: 7rem repeat(7, minmax(0, 1fr));
  border-radius: var(--radius-lg);
  overflow: hidden;
  border-top: 1px solid var(--color-primary);
  border-left: 1px solid var(--color-primary);
}
.stundenplan-week__cell, .stundenplan-week__day-title, .stundenplan-week__period, .stundenplan-week__corner {
  min-width: 0;
  padding: 0.75rem 0.5rem;
  border-right: 1px solid var(--color-primary);
  border-bottom: 1px solid var(--color-primary);
}
.stundenplan-week__corner {
  background: var(--color-primary);
}
.stundenplan-week__day-title {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-primary);
  color: var(--color-white);
  font-size: var(--text-sm);
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
}
.stundenplan-week__period {
  display: flex;
  align-items: center;
  color: var(--color-primary);
  background: rgba(var(--color-primary-rgb), 0.08);
  font-size: var(--text-sm);
  font-weight: 700;
}
.stundenplan-week__cell {
  background: var(--color-white);
  text-align: center;
}
.stundenplan-week__item + .stundenplan-week__item {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--color-gray-light);
}
.stundenplan-week__item--cancelled .stundenplan-week__time,
.stundenplan-week__item--cancelled .stundenplan-week__course,
.stundenplan-week__item--cancelled .stundenplan-week__teacher {
  text-decoration: line-through;
  opacity: 0.6;
}
.stundenplan-week__time {
  margin-bottom: 0.25rem;
  color: var(--color-primary);
  font-size: var(--text-sm);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.stundenplan-week__course {
  font-size: var(--text-sm);
  font-weight: 700;
  line-height: 1.3;
}
.stundenplan-week__teacher {
  margin-top: 0.15rem;
  font-size: var(--text-sm);
  line-height: 1.3;
}
.stundenplan-week__mode, .stundenplan-week__cancelled-badge {
  display: inline-block;
  width: fit-content;
  margin-top: 0.4rem;
  padding: 0.1rem 0.4rem;
  border-radius: 999px;
  font-size: var(--text-xs);
  font-weight: 700;
  line-height: 1.4;
  text-transform: uppercase;
}
.stundenplan-week__mode {
  color: var(--color-primary);
  background: rgba(var(--color-primary-rgb), 0.15);
}
.stundenplan-week__cancelled-badge {
  color: var(--color-white);
  background: var(--color-primary);
}

.link-open {
  margin-bottom: var(--space-2xl);
  margin-top: calc(-1 * var(--space-lg));
  font-weight: var(--font-weight-bold);
}
@media screen and (min-width: 0) {
  .link-open {
    display: none;
  }
}
@media screen and (min-width: 71.25em) {
  .link-open {
    display: block;
  }
}

.ce_rsce_preisliste .preisliste__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ce_rsce_preisliste .preisliste__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1.5rem;
  padding: var(--space-md) 0;
  border-top: 1px solid var(--color-gray-light);
}
.ce_rsce_preisliste .preisliste__row:last-child {
  border-bottom: 1px solid var(--color-gray-light);
}
.ce_rsce_preisliste .preisliste__title {
  flex: 1 1 30%;
  min-width: 200px;
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
  font-size: var(--text-xl);
}
.ce_rsce_preisliste .preisliste__duration {
  flex: 1 1 30%;
  min-width: 150px;
}
.ce_rsce_preisliste .preisliste__price {
  flex: 0 0 auto;
  margin-left: auto;
  font-weight: 700;
  font-size: var(--text-2xl);
  color: var(--color-primary);
}
@media (max-width: 599px) {
  .ce_rsce_preisliste .preisliste__row {
    flex-direction: column;
    gap: 0.25rem;
  }
  .ce_rsce_preisliste .preisliste__price {
    margin-left: 0;
  }
}

.ce_rsce_linkliste .linkliste__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ce_rsce_linkliste .linkliste__row {
  margin-bottom: 1.5em;
}
.ce_rsce_linkliste .linkliste__row:last-child {
  margin-bottom: 0;
}
.ce_rsce_linkliste .linkliste__title {
  display: block;
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
}
.ce_rsce_linkliste .linkliste__link {
  color: inherit;
  text-decoration: none;
}
.ce_rsce_linkliste .linkliste__link:hover {
  text-decoration: none;
}

.nav--main {
  font-size: var(--font-md);
}
@media screen and (min-width: 0) {
  .nav--main {
    display: none;
  }
}
@media screen and (min-width: 68.75em) {
  .nav--main {
    display: block;
  }
}
@media screen and (min-width: 0) {
  .nav--main ul {
    flex-direction: column;
    text-align: center;
  }
}
@media screen and (min-width: 68.75em) {
  .nav--main ul {
    flex-direction: row;
    gap: var(--space-2xl);
    margin-bottom: var(--space-sm);
  }
}
.nav--main li a,
.nav--main li strong.active {
  padding: 0;
  font-weight: 700;
  transition: var(--base-transition);
}
@media screen and (min-width: 68.75em) {
  .nav--main li a,
  .nav--main li strong.active {
    border-bottom: 1px solid rgba(var(--color-white-rgb), 0.5);
  }
}
.nav--main li strong.active {
  padding: 0;
  font-weight: 700;
  transition: var(--base-transition);
  font-weight: 800;
}
@media screen and (min-width: 68.75em) {
  .nav--main li strong.active {
    border-bottom: 3px solid var(--color-white);
  }
}
@media screen and (min-width: 68.75em) {
  .nav--main li a:hover {
    border-bottom: 1px solid rgba(var(--color-white-rgb), 1);
  }
}
/* ---------------------------------------------
   TEXT
--------------------------------------------- */
.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.w-full {
  width: 100%;
}

.aspect-square {
  aspect-ratio: 1/1;
}

.aspect-video {
  aspect-ratio: 16/9;
}

.border-top {
  border-top: var(--base-border);
}

.border-bottom {
  border-bottom: var(--base-border);
}

/* ---------------------------------------------
   SPACING VALUES
--------------------------------------------- */
/* ---------------------------------------------
   MARGIN UTILITIES
--------------------------------------------- */
.m-t-0 {
  margin-top: 0;
}

.m-b-0 {
  margin-bottom: 0;
}

.m-x-0 {
  margin-left: 0;
  margin-right: 0;
}

.m-y-0 {
  margin-top: 0;
  margin-bottom: 0;
}

.m-t-1 {
  margin-top: var(--space-xs);
}

.m-b-1 {
  margin-bottom: var(--space-xs);
}

.m-x-1 {
  margin-left: var(--space-xs);
  margin-right: var(--space-xs);
}

.m-y-1 {
  margin-top: var(--space-xs);
  margin-bottom: var(--space-xs);
}

.m-t-2 {
  margin-top: var(--space-sm);
}

.m-b-2 {
  margin-bottom: var(--space-sm);
}

.m-x-2 {
  margin-left: var(--space-sm);
  margin-right: var(--space-sm);
}

.m-y-2 {
  margin-top: var(--space-sm);
  margin-bottom: var(--space-sm);
}

.m-t-3 {
  margin-top: var(--space-md);
}

.m-b-3 {
  margin-bottom: var(--space-md);
}

.m-x-3 {
  margin-left: var(--space-md);
  margin-right: var(--space-md);
}

.m-y-3 {
  margin-top: var(--space-md);
  margin-bottom: var(--space-md);
}

.m-t-4 {
  margin-top: var(--space-lg);
}

.m-b-4 {
  margin-bottom: var(--space-lg);
}

.m-x-4 {
  margin-left: var(--space-lg);
  margin-right: var(--space-lg);
}

.m-y-4 {
  margin-top: var(--space-lg);
  margin-bottom: var(--space-lg);
}

.m-t-5 {
  margin-top: var(--space-xl);
}

.m-b-5 {
  margin-bottom: var(--space-xl);
}

.m-x-5 {
  margin-left: var(--space-xl);
  margin-right: var(--space-xl);
}

.m-y-5 {
  margin-top: var(--space-xl);
  margin-bottom: var(--space-xl);
}

.m-t-6 {
  margin-top: var(--space-2xl);
}

.m-b-6 {
  margin-bottom: var(--space-2xl);
}

.m-x-6 {
  margin-left: var(--space-2xl);
  margin-right: var(--space-2xl);
}

.m-y-6 {
  margin-top: var(--space-2xl);
  margin-bottom: var(--space-2xl);
}

.m-t-7 {
  margin-top: var(--space-3xl);
}

.m-b-7 {
  margin-bottom: var(--space-3xl);
}

.m-x-7 {
  margin-left: var(--space-3xl);
  margin-right: var(--space-3xl);
}

.m-y-7 {
  margin-top: var(--space-3xl);
  margin-bottom: var(--space-3xl);
}

.m-t-8 {
  margin-top: var(--space-4xl);
}

.m-b-8 {
  margin-bottom: var(--space-4xl);
}

.m-x-8 {
  margin-left: var(--space-4xl);
  margin-right: var(--space-4xl);
}

.m-y-8 {
  margin-top: var(--space-4xl);
  margin-bottom: var(--space-4xl);
}

.m-t-9 {
  margin-top: var(--space-5xl);
}

.m-b-9 {
  margin-bottom: var(--space-5xl);
}

.m-x-9 {
  margin-left: var(--space-5xl);
  margin-right: var(--space-5xl);
}

.m-y-9 {
  margin-top: var(--space-5xl);
  margin-bottom: var(--space-5xl);
}

.m-t-10 {
  margin-top: var(--space-6xl);
}

.m-b-10 {
  margin-bottom: var(--space-6xl);
}

.m-x-10 {
  margin-left: var(--space-6xl);
  margin-right: var(--space-6xl);
}

.m-y-10 {
  margin-top: var(--space-6xl);
  margin-bottom: var(--space-6xl);
}

/* ---------------------------------------------
   PADDING UTILITIES
--------------------------------------------- */
.p-t-0 {
  padding-top: 0;
}

.p-b-0 {
  padding-bottom: 0;
}

.p-x-0 {
  padding-left: 0;
  padding-right: 0;
}

.p-y-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.p-t-1 {
  padding-top: var(--space-xs);
}

.p-b-1 {
  padding-bottom: var(--space-xs);
}

.p-x-1 {
  padding-left: var(--space-xs);
  padding-right: var(--space-xs);
}

.p-y-1 {
  padding-top: var(--space-xs);
  padding-bottom: var(--space-xs);
}

.p-t-2 {
  padding-top: var(--space-sm);
}

.p-b-2 {
  padding-bottom: var(--space-sm);
}

.p-x-2 {
  padding-left: var(--space-sm);
  padding-right: var(--space-sm);
}

.p-y-2 {
  padding-top: var(--space-sm);
  padding-bottom: var(--space-sm);
}

.p-t-3 {
  padding-top: var(--space-md);
}

.p-b-3 {
  padding-bottom: var(--space-md);
}

.p-x-3 {
  padding-left: var(--space-md);
  padding-right: var(--space-md);
}

.p-y-3 {
  padding-top: var(--space-md);
  padding-bottom: var(--space-md);
}

.p-t-4 {
  padding-top: var(--space-lg);
}

.p-b-4 {
  padding-bottom: var(--space-lg);
}

.p-x-4 {
  padding-left: var(--space-lg);
  padding-right: var(--space-lg);
}

.p-y-4 {
  padding-top: var(--space-lg);
  padding-bottom: var(--space-lg);
}

.p-t-5 {
  padding-top: var(--space-xl);
}

.p-b-5 {
  padding-bottom: var(--space-xl);
}

.p-x-5 {
  padding-left: var(--space-xl);
  padding-right: var(--space-xl);
}

.p-y-5 {
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
}

.p-t-6 {
  padding-top: var(--space-2xl);
}

.p-b-6 {
  padding-bottom: var(--space-2xl);
}

.p-x-6 {
  padding-left: var(--space-2xl);
  padding-right: var(--space-2xl);
}

.p-y-6 {
  padding-top: var(--space-2xl);
  padding-bottom: var(--space-2xl);
}

.p-t-7 {
  padding-top: var(--space-3xl);
}

.p-b-7 {
  padding-bottom: var(--space-3xl);
}

.p-x-7 {
  padding-left: var(--space-3xl);
  padding-right: var(--space-3xl);
}

.p-y-7 {
  padding-top: var(--space-3xl);
  padding-bottom: var(--space-3xl);
}

.p-t-8 {
  padding-top: var(--space-4xl);
}

.p-b-8 {
  padding-bottom: var(--space-4xl);
}

.p-x-8 {
  padding-left: var(--space-4xl);
  padding-right: var(--space-4xl);
}

.p-y-8 {
  padding-top: var(--space-4xl);
  padding-bottom: var(--space-4xl);
}

.p-t-9 {
  padding-top: var(--space-5xl);
}

.p-b-9 {
  padding-bottom: var(--space-5xl);
}

.p-x-9 {
  padding-left: var(--space-5xl);
  padding-right: var(--space-5xl);
}

.p-y-9 {
  padding-top: var(--space-5xl);
  padding-bottom: var(--space-5xl);
}

.p-t-10 {
  padding-top: var(--space-6xl);
}

.p-b-10 {
  padding-bottom: var(--space-6xl);
}

.p-x-10 {
  padding-left: var(--space-6xl);
  padding-right: var(--space-6xl);
}

.p-y-10 {
  padding-top: var(--space-6xl);
  padding-bottom: var(--space-6xl);
}

.m-x-auto {
  margin-left: auto;
  margin-right: auto;
}

.m-l-auto {
  margin-left: auto;
}

.m-r-auto {
  margin-right: auto;
}

.p-x-0 {
  padding-left: 0;
  padding-right: 0;
}

