.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)
 */
:root {
  --color-primary-rgb: 205, 176, 122;
  --color-primary: rgb(var(--color-primary-rgb));
  --color-primary-lighter: rgb(250, 247.1, 241.7);
  --color-primary-light: rgb(241, 232.88, 217.76);
  --color-primary-highlight: #ab8951;
  --color-primary-typo: rgb(123, 96.2, 55);
  --color-primary-dark: rgb(82.2, 61.52, 32.9);
  --color-primary-darker: #332310;
  --color-secondary-rgb: 237, 233, 227;
  --color-secondary: rgb(var(--color-secondary-rgb));
  --color-secondary-lighter: #faf8f7;
  --color-secondary-light: #f6f4f1;
  --color-secondary-highlight: #8d8579;
  --color-secondary-typo: rgb(111.3, 104.5, 94);
  --color-secondary-dark: rgb(71.7, 66.5, 58);
  --color-secondary-darker: #2a261f;
  --color-tertiary: #b7c2c4;
  --color-tertiary-lighter: rgb(240.6, 242.8, 243.2);
  --color-tertiary-light: rgb(219, 224.5, 225.5);
  --color-tertiary-highlight: rgb(115.05, 130.1, 132.1);
  --color-tertiary-typo: rgb(62.2, 80.4, 82.4);
  --color-tertiary-dark: rgb(47.1, 66.2, 68.2);
  --color-tertiary-darker: #203436;
  --color-white: #ffffff;
  --color-white-rgb: 255, 255, 255;
  --color-white-warm: rgb(252.5, 251.05, 248.35);
  --color-gray-lightest: rgb(241.775, 240.3975, 237.8325);
  --color-gray-lighter: rgb(226.76, 225.484, 223.108);
  --color-gray-light: rgb(205.31, 204.179, 202.073);
  --color-gray-mid: rgb(102.35, 101.915, 101.105);
  --color-gray: #262626;
  --color-gray-dark: rgb(17.1, 17.1, 17.1);
  --color-black: rgb(10.64, 10.64, 10.64);
  --color-page-background: #ffffff;
  --color-background-alt: #faf8f7;
  --color-default: var(--color-primary);
  --color-brand: var(--color-default);
  --color-highlight: var(--color-brand);
  --color-text: var(--color-gray-dark);
  --color-text-muted: var(--color-gray-mid);
  --color-text-inverted: var(--color-white);
  --color-text-highlight: var(--color-primary-typo);
  --color-on-primary: var(--color-primary-darker);
  --color-error: #c0392b;
  --color-error-light: rgba(192, 57, 43, 0.5);
  --color-overlay-background: rgba(0, 0, 0, 0.3);
  --overlay-blur: 6px;
  --img-overlay-primary-20: rgba(var(--color-primary-rgb), 0.2);
  --img-overlay-primary-40: rgba(var(--color-primary-rgb), 0.4);
}

:root {
  --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-columns: 12;
  --grid-gutter: var(--space-lg);
  --grid-gutter-half: calc(var(--grid-gutter) / 2);
  --article-spacing-t: clamp(var(--space-2xl), 6vw, var(--space-5xl));
  --article-spacing-b: clamp(var(--space-2xl), 6vw, var(--space-5xl));
  --article-spacing-sides: var(--layout-spacing-sides);
}

:root {
  --base-font-size-xs: 1rem;
  --base-font-size-sm: 1rem;
  --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: 2.625rem;
  --text-5xl: 4.5rem;
  --text-6xl: 5.25rem;
  --text-7xl: 7.5rem;
  --base-font-family: DM Sans, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
  --base-line-height: 1.5;
  --base-font-weight: var(--font-weight-normal);
  --font-heading: Cormorant Garamond, DM Sans, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Arial, sans-serif;
  --font-size-body: 1.125rem;
  --body-letter-spacing: normal;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --flow-text: var(--space-lg);
  --flow-content: var(--flow-text);
  --list-indent: 1.5em;
  --list-item-gap: var(--space-xs);
  --rte-list-item-space: var(--space-xs);
  --paragraph-link-color: var(--links-color);
  --paragraph-link-decoration: underline;
  --paragraph-link-decoration-hover: none;
  --code-color: var(--color-text-highlight);
  --pre-color-background: var(--color-gray-dark);
  --pre-color: var(--color-text-inverted);
  --selection-background: var(--color-brand);
  --selection-color: var(--color-on-primary);
  --hr-border: var(--base-border);
}

@media screen and (min-width: 48em) {
  :root {
    --font-size-body: 1.25rem;
  }
}
:root {
  --headings-font-family: var(--base-font-family);
  --headings-font-weight: 700;
  --headings-color: currentColor;
  --h1-font-family: var(--headings-font-family);
  --h1-font-weight: 900;
  --h1-color: var(--color-primary-highlight);
  --h1-font-size: var(--text-3xl);
  --h1-font-size-sm: var(--text-4xl);
  --h1-font-size-md: var(--text-4xl);
  --h1-font-size-lg: var(--text-5xl);
  --h1-font-size-xl: var(--text-6xl);
  --h1-line-height: 1.05;
  --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(--headings-color);
  --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-4xl);
  --h2-font-size-xl: var(--text-4xl);
  --h2-line-height: 1.1;
  --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(--text-xl);
  --h3-font-size-sm: var(--text-2xl);
  --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.2;
  --h3-spacing-top: 0;
  --h3-spacing-bottom: var(--space-md);
  --h4-font-family: var(--headings-font-family);
  --h4-font-weight: var(--headings-font-weight);
  --h4-color: var(--headings-color);
  --h4-font-size: var(--text-lg);
  --h4-font-size-sm: var(--text-xl);
  --h4-font-size-md: var(--text-xl);
  --h4-font-size-lg: var(--text-xl);
  --h4-font-size-xl: var(--text-xl);
  --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(--font-weight-semibold);
  --h5-color: var(--headings-color);
  --h5-font-size: var(--text-lg);
  --h5-font-size-sm: var(--text-lg);
  --h5-font-size-md: var(--text-lg);
  --h5-font-size-lg: var(--text-lg);
  --h5-font-size-xl: var(--text-lg);
  --h5-line-height: 1.3;
  --h5-spacing-top: 0;
  --h5-spacing-bottom: var(--space-sm);
  --h6-font-family: var(--headings-font-family);
  --h6-font-weight: var(--font-weight-semibold);
  --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.3;
  --h6-spacing-top: 0;
  --h6-spacing-bottom: var(--space-sm);
}

:root {
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 50px;
  --radius-full: 9999px;
  --base-border-width: 2px;
  --base-border-color: var(--color-gray-light);
  --base-border: var(--base-border-width) solid var(--base-border-color);
  --base-border-radius: var(--radius-lg);
  --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);
  --focus-outline-width: 3px;
  --focus-outline-color: var(--color-text-highlight);
  --focus-outline-offset: 2px;
  --focus-outline: var(--focus-outline-width) solid
  	var(--focus-outline-color);
  --base-transition: 0.3s;
  --base-blur: 20px;
}

:root {
  --wrapper-max: 82.5rem;
  --wrapper-wide: 101.25rem;
  --layout-spacing-sides-sm: var(--space-xl);
  --layout-spacing-sides-md: var(--space-3xl);
  --layout-spacing-sides-lg: var(--space-7xl);
  --layout-spacing-sides: var(--layout-spacing-sides-sm);
  --layout-wrapper-background: transparent;
  --announcement-bar-height: 9rem;
}

@media screen and (min-width: 58.75em) {
  :root {
    --layout-spacing-sides: var(--layout-spacing-sides-md);
  }
}
@media screen and (min-width: 68.75em) {
  :root {
    --layout-spacing-sides: var(--layout-spacing-sides-lg);
  }
}
: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-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-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-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-down::before {
  content: "\f107";
}

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

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

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

.fa-location-dot::before {
  content: "\f3c5";
}

.fa-angle-down::before {
  content: "\f107";
}

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

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

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

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

.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/core-calm/vendor/font-awesome/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/core-calm/vendor/font-awesome/fonts/fa-regular-400.woff2") format("woff2");
}
@font-face {
  font-family: "Font Awesome 7 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../../files/theme/core-calm/vendor/font-awesome/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;
}

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%;
  -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);
  }
}

html.sr .load-hidden {
  visibility: hidden;
}

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

:focus-visible {
  outline: var(--focus-outline);
  outline-offset: var(--focus-outline-offset);
}

/* dm-sans-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: "DM Sans";
  font-style: normal;
  font-weight: 400;
  src: url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-regular.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* dm-sans-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: "DM Sans";
  font-style: italic;
  font-weight: 400;
  src: url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-italic.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* dm-sans-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: "DM Sans";
  font-style: normal;
  font-weight: 600;
  src: url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-600.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-600.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* dm-sans-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: "DM Sans";
  font-style: italic;
  font-weight: 600;
  src: url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-600italic.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-600italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* dm-sans-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: "DM Sans";
  font-style: normal;
  font-weight: 700;
  src: url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-700.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-700.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* dm-sans-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: "DM Sans";
  font-style: italic;
  font-weight: 700;
  src: url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-700italic.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/dm-sans-v17-latin-700italic.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* cormorant-garamond-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: "Cormorant Garamond";
  font-style: normal;
  font-weight: 400;
  src: url("../../files/theme/core-calm/fonts/cormorant-garamond-v21-latin-regular.woff2") format("woff2"), url("../../files/theme/core-calm/fonts/cormorant-garamond-v21-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
.hero__scroll::before, .link--more a::after, a.btn--ghost::after,
span.btn--ghost::after,
button.btn--ghost::after,
div.btn--ghost > a::after,
div.btn--ghost > button::after, .back a::after, a.btn--secondary::after,
span.btn--secondary::after,
button.btn--secondary::after,
div.btn--secondary > a::after,
div.btn--secondary > button::after, input.submit::after,
button.submit::after, a.btn--primary::after,
span.btn--primary::after,
button.btn--primary::after, div.btn--primary > a::after,
div.btn--primary > button::after,
.ce_toplink > a::after,
.ce_toplink > button::after,
.toplink > a::after,
.toplink > button::after,
.content-toplink > a::after,
.content-toplink > button::after, .ce_accordion:not(.handorgel) .toggler::after,
.ce_accordion.handorgel .toggler button::after,
.content-accordion .handorgel__header__button::after {
  display: inline-block;
  line-height: 1;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.svg-icon {
  width: 1em;
  height: 1em;
  display: inline-block;
  fill: currentColor;
  vertical-align: middle;
}

.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;
}

:root {
  --body-letter-spacing: normal;
  --hr-spacing: var(--space-2xl);
  --blockquote-border: var(--base-border-width) solid var(--color-primary);
  --blockquote-padding: var(--space-lg);
  --blockquote-font-size: var(--text-xl);
  --blockquote-line-height: 1.4;
  --blockquote-color: var(--color-text);
  --blockquote-cite-color: var(--color-text-muted);
  --blockquote-cite-font-size: var(--text-sm);
}

body {
  letter-spacing: var(--body-letter-spacing);
}

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

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;
}

:is(ul, ol) > li {
  margin-bottom: var(--list-item-gap);
}
:is(ul, ol) > li:last-child {
  margin-bottom: 0;
}

:is(ul, ol) :is(ul, ol) {
  margin-top: var(--list-item-gap);
  padding-left: calc(var(--list-indent) * 0.85);
}

strong,
b {
  font-weight: var(--font-weight-bold);
}

hr {
  margin-block: var(--hr-spacing);
  margin-inline: 0;
}

blockquote {
  padding-inline-start: var(--blockquote-padding);
  border-inline-start: var(--blockquote-border);
  color: var(--blockquote-color);
  font-size: var(--blockquote-font-size);
  line-height: var(--blockquote-line-height);
}
blockquote > :last-child {
  margin-bottom: 0;
}
blockquote cite {
  display: block;
  margin-top: var(--space-sm);
  color: var(--blockquote-cite-color);
  font-size: var(--blockquote-cite-font-size);
  font-style: normal;
}
blockquote cite::before {
  content: "— ";
}

.content-text {
  margin-bottom: 0;
}

.text-measure {
  max-width: min(var(--measure), 100%);
}

p a:focus-visible,
ul a:focus-visible,
ol a:focus-visible {
  --paragraph-link-decoration: var(--paragraph-link-decoration-hover);
}

.rte p,
.rte ul,
.rte ol,
.rte dl,
.rte blockquote,
.rte pre,
.rte table,
.rte figure {
  margin: 0 0 var(--flow-text);
}
.rte > :last-child {
  margin-bottom: 0;
}
.rte li > p + p {
  margin-top: var(--rte-list-item-space);
}

.row {
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}

.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%;
}

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

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

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

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

.col-2 {
  grid-column: span 2/span 2;
}

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

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

.col-3 {
  grid-column: span 3/span 3;
}

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

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

.col-4 {
  grid-column: span 4/span 4;
}

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

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

.col-5 {
  grid-column: span 5/span 5;
}

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

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

.col-6 {
  grid-column: span 6/span 6;
}

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

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

.col-7 {
  grid-column: span 7/span 7;
}

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

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

.col-8 {
  grid-column: span 8/span 8;
}

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

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

.col-9 {
  grid-column: span 9/span 9;
}

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

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

.col-10 {
  grid-column: span 10/span 10;
}

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

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

.col-11 {
  grid-column: span 11/span 11;
}

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

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

.col-12 {
  grid-column: span 12/span 12;
}

.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;
  }
  .col-xs-2 {
    grid-column: span 2/span 2;
  }
  .col-xs-3 {
    grid-column: span 3/span 3;
  }
  .col-xs-4 {
    grid-column: span 4/span 4;
  }
  .col-xs-5 {
    grid-column: span 5/span 5;
  }
  .col-xs-6 {
    grid-column: span 6/span 6;
  }
  .col-xs-7 {
    grid-column: span 7/span 7;
  }
  .col-xs-8 {
    grid-column: span 8/span 8;
  }
  .col-xs-9 {
    grid-column: span 9/span 9;
  }
  .col-xs-10 {
    grid-column: span 10/span 10;
  }
  .col-xs-11 {
    grid-column: span 11/span 11;
  }
  .col-xs-12 {
    grid-column: span 12/span 12;
  }
}
@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;
  }
  .col-sm-2 {
    grid-column: span 2/span 2;
  }
  .col-sm-3 {
    grid-column: span 3/span 3;
  }
  .col-sm-4 {
    grid-column: span 4/span 4;
  }
  .col-sm-5 {
    grid-column: span 5/span 5;
  }
  .col-sm-6 {
    grid-column: span 6/span 6;
  }
  .col-sm-7 {
    grid-column: span 7/span 7;
  }
  .col-sm-8 {
    grid-column: span 8/span 8;
  }
  .col-sm-9 {
    grid-column: span 9/span 9;
  }
  .col-sm-10 {
    grid-column: span 10/span 10;
  }
  .col-sm-11 {
    grid-column: span 11/span 11;
  }
  .col-sm-12 {
    grid-column: span 12/span 12;
  }
}
@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;
  }
  .col-md-2 {
    grid-column: span 2/span 2;
  }
  .col-md-3 {
    grid-column: span 3/span 3;
  }
  .col-md-4 {
    grid-column: span 4/span 4;
  }
  .col-md-5 {
    grid-column: span 5/span 5;
  }
  .col-md-6 {
    grid-column: span 6/span 6;
  }
  .col-md-7 {
    grid-column: span 7/span 7;
  }
  .col-md-8 {
    grid-column: span 8/span 8;
  }
  .col-md-9 {
    grid-column: span 9/span 9;
  }
  .col-md-10 {
    grid-column: span 10/span 10;
  }
  .col-md-11 {
    grid-column: span 11/span 11;
  }
  .col-md-12 {
    grid-column: span 12/span 12;
  }
}
@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;
  }
  .col-lg-2 {
    grid-column: span 2/span 2;
  }
  .col-lg-3 {
    grid-column: span 3/span 3;
  }
  .col-lg-4 {
    grid-column: span 4/span 4;
  }
  .col-lg-5 {
    grid-column: span 5/span 5;
  }
  .col-lg-6 {
    grid-column: span 6/span 6;
  }
  .col-lg-7 {
    grid-column: span 7/span 7;
  }
  .col-lg-8 {
    grid-column: span 8/span 8;
  }
  .col-lg-9 {
    grid-column: span 9/span 9;
  }
  .col-lg-10 {
    grid-column: span 10/span 10;
  }
  .col-lg-11 {
    grid-column: span 11/span 11;
  }
  .col-lg-12 {
    grid-column: span 12/span 12;
  }
}
@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;
  }
  .col-xl-2 {
    grid-column: span 2/span 2;
  }
  .col-xl-3 {
    grid-column: span 3/span 3;
  }
  .col-xl-4 {
    grid-column: span 4/span 4;
  }
  .col-xl-5 {
    grid-column: span 5/span 5;
  }
  .col-xl-6 {
    grid-column: span 6/span 6;
  }
  .col-xl-7 {
    grid-column: span 7/span 7;
  }
  .col-xl-8 {
    grid-column: span 8/span 8;
  }
  .col-xl-9 {
    grid-column: span 9/span 9;
  }
  .col-xl-10 {
    grid-column: span 10/span 10;
  }
  .col-xl-11 {
    grid-column: span 11/span 11;
  }
  .col-xl-12 {
    grid-column: span 12/span 12;
  }
}
@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;
  }
}
[class^=col-],
[class*=" col-"] {
  display: block;
}

@media screen and (min-width: 68.75em) {
  .grid-50-50 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
}
@media screen and (min-width: 68.75em) {
  .grid-50-50 > div {
    grid-column: 1/-1;
    grid-column: span 6/span 6;
  }
}

body {
  margin: 0;
  min-height: 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;
}

.mod_article {
  background-color: var(--article-bg, transparent);
  padding-block: var(--article-spacing-t) var(--article-spacing-b);
  padding-inline: var(--article-spacing-sides);
}
.mod_article > .inside {
  padding: 0;
  max-width: var(--article-width, var(--wrapper-max));
  margin-inline: auto;
}
.mod_article > .inside > :where(:not(.content-headline)) {
  margin-bottom: var(--flow-content);
}
.mod_article > .inside > :last-child {
  margin-bottom: 0;
}
.mod_article.article--full, .mod_article.article--fluid, .mod_article.article--hero {
  --article-width: 100%;
}
.mod_article.article--full > .inside, .mod_article.article--fluid > .inside, .mod_article.article--hero > .inside {
  width: 100%;
}
.mod_article.article--wide {
  --article-width: var(--wrapper-wide);
}
.mod_article.article--fluid, .mod_article.article--hero {
  padding-inline: 0;
}
.mod_article.article--hero, .mod_article.article--hero-contained {
  --article-spacing-t: 0;
  --article-spacing-b: 0;
}
.mod_article.article--announcement-bar {
  --article-spacing-t: var(--space-lg);
  --article-spacing-b: var(--space-lg);
}
.mod_article.article--announcement-bar > .inside {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--space-md) var(--space-xl);
}
.mod_article.article--announcement-bar > .inside > * {
  margin-bottom: 0;
}
@media screen and (min-width: 68.75em) {
  .mod_article.article--announcement-bar {
    --article-spacing-t: 0;
    --article-spacing-b: 0;
    height: var(--announcement-bar-height);
  }
  .mod_article.article--announcement-bar > .inside {
    height: 100%;
  }
}
@media screen and (min-width: 68.75em) {
  .mod_article.article--w-4-12 {
    --article-width: calc(
    	4 * (min(100%, var(--wrapper-max)) - 11 * var(--grid-gutter)) /
    		12 + 3 * var(--grid-gutter)
    );
  }
}
@media screen and (min-width: 68.75em) {
  .mod_article.article--w-6-12 {
    --article-width: calc(
    	6 * (min(100%, var(--wrapper-max)) - 11 * var(--grid-gutter)) /
    		12 + 5 * var(--grid-gutter)
    );
  }
}
@media screen and (min-width: 68.75em) {
  .mod_article.article--w-8-12 {
    --article-width: calc(
    	8 * (min(100%, var(--wrapper-max)) - 11 * var(--grid-gutter)) /
    		12 + 7 * var(--grid-gutter)
    );
  }
}
@media screen and (min-width: 68.75em) {
  .mod_article.article--w-10-12 {
    --article-width: calc(
    	10 * (min(100%, var(--wrapper-max)) - 11 * var(--grid-gutter)) /
    		12 + 9 * var(--grid-gutter)
    );
  }
}
.mod_article.article--inverse {
  color: var(--color-text-inverted);
  --links-color: var(--color-text-inverted);
  --links-color-hover: var(--color-text-inverted);
  --links-color-visited: var(--color-text-inverted);
  --button-primary-color: var(--color-text-highlight);
  --button-primary-background: var(--color-white);
  --button-primary-border-color: var(--color-white);
  --button-primary-color-hover: var(--color-text);
  --button-primary-background-hover: var(--color-white);
  --button-primary-border-color-hover: var(--color-white);
  --button-color: var(--button-primary-color);
  --button-color-hover: var(--button-primary-color-hover);
  --button-background: var(--button-primary-background);
  --button-background-hover: var(--button-primary-background-hover);
  --button-secondary-color: var(--color-text-inverted);
  --button-secondary-border-color: var(--color-text-inverted);
  --button-secondary-color-hover: var(--color-text-highlight);
  --button-secondary-background-hover: var(--color-white);
  --button-secondary-border-color-hover: var(--color-white);
  --button-ghost-color: var(--color-text-inverted);
  --button-ghost-color-hover: 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--bg-primary {
  --article-bg: var(--color-primary);
}
.mod_article.article--bg-dark {
  --article-bg: var(--color-gray-dark);
  color: var(--color-text-inverted);
  --links-color: var(--color-text-inverted);
  --links-color-hover: var(--color-text-inverted);
  --links-color-visited: var(--color-text-inverted);
  --button-primary-color: var(--color-text-highlight);
  --button-primary-background: var(--color-white);
  --button-primary-border-color: var(--color-white);
  --button-primary-color-hover: var(--color-text);
  --button-primary-background-hover: var(--color-white);
  --button-primary-border-color-hover: var(--color-white);
  --button-color: var(--button-primary-color);
  --button-color-hover: var(--button-primary-color-hover);
  --button-background: var(--button-primary-background);
  --button-background-hover: var(--button-primary-background-hover);
  --button-secondary-color: var(--color-text-inverted);
  --button-secondary-border-color: var(--color-text-inverted);
  --button-secondary-color-hover: var(--color-text-highlight);
  --button-secondary-background-hover: var(--color-white);
  --button-secondary-border-color-hover: var(--color-white);
  --button-ghost-color: var(--color-text-inverted);
  --button-ghost-color-hover: var(--color-text-inverted);
}
.mod_article.article--bg-dark h1,
.mod_article.article--bg-dark h2,
.mod_article.article--bg-dark h3,
.mod_article.article--bg-dark h4,
.mod_article.article--bg-dark h5,
.mod_article.article--bg-dark h6 {
  color: var(--color-text-inverted);
}
.mod_article.article--bg-light {
  --article-bg: var(--color-background-alt);
}
.mod_article.article--bg-white {
  --article-bg: var(--color-white);
}
.mod_article.article--boxed {
  background-color: transparent;
}
.mod_article.article--boxed > .inside {
  padding: var(--space-xl);
  background-color: var(--article-bg, transparent);
}
.mod_article.article--hero.article--boxed > .inside, .mod_article.article--hero-contained.article--boxed > .inside {
  padding: 0;
  background-color: transparent;
}

@media screen and (min-width: 68.75em) {
  .mod_article.article--sticky {
    position: sticky;
    top: 0;
    z-index: 0;
  }
  .mod_article:where(.article--sticky ~ .mod_article) {
    position: relative;
    z-index: 1;
    background-color: var(--article-bg, var(--color-white));
  }
  .mod_article:where(.article--sticky ~ .mod_article).article--boxed {
    background-color: var(--color-white);
  }
}
html:has(> body.layout--lightbox) {
  overflow-y: auto;
}

.layout--lightbox .mod_article {
  padding-block: var(--space-2xl);
  padding-inline: var(--space-2xl);
}
.layout--lightbox .mod_article > .inside {
  padding: 0;
  max-width: var(--article-width, var(--wrapper-max));
  margin-inline: auto;
}

.layout--text [id=main] .mod_article:first-child > .inside {
  padding-top: var(--layout-header-height);
}

:root {
  --layout-header-height: calc(
  	var(--header-pill-offset) + var(--header-pill-height)
  );
  --layout-header-background: transparent;
  --layout-header-color: var(--color-text);
  --layout-header-blur: 0;
  --layout-header-width: var(--wrapper-max);
  --header-pill-gap: var(--space-2xl);
  --header-pill-height: 4rem;
  --header-pill-offset: var(--space-xl);
  --header-pill-padding: var(--space-2xl);
  --header-pill-background: var(--color-white);
  --header-pill-radius: var(--radius-full);
  --header-pill-blur: 5;
  --header-pill-shadow-color: var(--color-primary-darker);
  --header-pill-menu-gap: var(--space-sm);
  --header-burger-size: 3rem;
  --header-pill-shadow: 0 1px 3px
  		color-mix(in srgb, var(--header-pill-shadow-color) 6%, transparent),
  	0 12px 48px -8px color-mix(in srgb, var(--header-pill-shadow-color) 14%, transparent);
}

[id=header] {
  position: fixed;
  inset-block-start: 0;
  inset-inline: 0;
  z-index: 99;
  height: var(--layout-header-height);
  background: var(--layout-header-background);
  backdrop-filter: blur(var(--layout-header-blur));
  -webkit-backdrop-filter: blur(var(--layout-header-blur));
  width: 100%;
  margin-inline: auto;
  padding-inline: var(--layout-spacing-sides);
}
[id=header] > .inside,
[id=header] .header--wrapper,
[id=header] .header--wrapper > .inside {
  height: 100%;
  padding-block: 0;
}
[id=header] .header--wrapper {
  max-width: var(--layout-header-width);
  margin-inline: auto;
}
[id=header] .header--wrapper .row {
  height: 100%;
  align-items: center;
}
[id=header] .title {
  display: flex;
}

[id=header] .header--pill {
  display: flex;
  align-items: center;
  gap: var(--header-pill-gap);
  width: fit-content;
  max-width: 100%;
  height: var(--header-pill-height);
  margin-block-start: var(--header-pill-offset);
  margin-inline: auto;
  padding-inline: var(--header-pill-padding);
  border-radius: var(--header-pill-radius);
  background: var(--header-pill-background);
  box-shadow: var(--header-pill-shadow);
}

@media screen and (max-width: 47.99875em) {
  [id=header] {
    z-index: calc(var(--nav-mobile-z-index) + 1);
    pointer-events: none;
  }
  [id=header] .header--pill {
    justify-content: flex-end;
    width: 100%;
    padding-inline: 0;
    background: none;
    box-shadow: none;
  }
  [id=header] .header--pill .logo--signet {
    display: none;
  }
  [id=header] .nav-toggler,
  [id=header] .nav--mobile {
    pointer-events: auto;
  }
  .has-js [id=header] .header--pill .nav-toggler {
    --nav-toggler-size: var(--header-burger-size);
    position: static;
    background: var(--header-pill-background);
    box-shadow: var(--header-pill-shadow);
    color: var(--color-text-highlight);
  }
}
[id=header] .nav--mobile {
  --nav-mobile-inset: calc(
  		var(--layout-header-height) + var(--header-pill-menu-gap)
  	)
  	var(--layout-spacing-sides) auto;
  --nav-mobile-width: auto;
  --nav-mobile-max-height: calc(
  	100svh - var(--layout-header-height) - 2 * var(--header-pill-menu-gap)
  );
  --nav-mobile-padding: var(--space-lg);
  --nav-mobile-padding-top: var(--space-lg);
  --nav-mobile-background: var(--header-pill-background);
  --nav-mobile-color: var(--color-text);
  --nav-mobile-shadow: var(--header-pill-shadow);
  --nav-mobile-transform: translateY(calc(-1 * var(--space-sm)));
  --nav-mobile-opacity: 0;
}
[id=header] .nav--mobile.is-mobile {
  border-radius: var(--radius-lg);
  text-align: center;
}

:root {
  --header-pill-intro-duration: 700ms;
  --header-pill-intro-distance: var(--space-md);
}

@media (prefers-reduced-motion: no-preference) {
  .is-first-visit [id=header] .header--pill {
    animation: header-pill-intro var(--header-pill-intro-duration) cubic-bezier(0.25, 0.1, 0.2, 1) backwards;
  }
}
@keyframes header-pill-intro {
  from {
    opacity: 0;
    translate: 0 calc(-1 * var(--header-pill-intro-distance));
  }
}
html {
  scroll-padding-top: var(--layout-header-height);
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}
[id=wrapper] {
  overflow-x: clip;
}

@media screen and (min-width: 68.75em) {
  .layout--main-right [id=container],
  .layout--main-left [id=container],
  .layout--left-main-right [id=container] {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
    align-items: start;
    max-width: var(--wrapper-max);
    margin-inline: auto;
    padding-inline: var(--layout-spacing-sides);
  }
  .layout--main-right [id=container] > [id=main],
  .layout--main-right [id=container] > [id=left],
  .layout--main-right [id=container] > [id=right],
  .layout--main-left [id=container] > [id=main],
  .layout--main-left [id=container] > [id=left],
  .layout--main-left [id=container] > [id=right],
  .layout--left-main-right [id=container] > [id=main],
  .layout--left-main-right [id=container] > [id=left],
  .layout--left-main-right [id=container] > [id=right] {
    min-width: 0;
  }
  .layout--main-right [id=container] .mod_article,
  .layout--main-left [id=container] .mod_article,
  .layout--left-main-right [id=container] .mod_article {
    --article-width: 100%;
    padding-inline: 0;
  }
}

@media screen and (min-width: 68.75em) {
  .layout--main-right [id=container] > [id=main] {
    grid-column: 1/-1;
    grid-column: span 8/span 8;
    grid-column-start: 1;
  }
  .layout--main-right [id=container] > [id=right] {
    grid-column: 1/-1;
    grid-column: span 4/span 4;
    grid-column-start: 9;
  }
}

@media screen and (min-width: 68.75em) {
  .layout--main-left [id=container] > [id=left] {
    grid-column: 1/-1;
    grid-column: span 4/span 4;
    grid-column-start: 1;
  }
  .layout--main-left [id=container] > [id=main] {
    grid-column: 1/-1;
    grid-column: span 8/span 8;
    grid-column-start: 5;
  }
}

@media screen and (min-width: 68.75em) {
  .layout--left-main-right [id=container] > [id=left] {
    grid-column: 1/-1;
    grid-column: span 3/span 3;
    grid-column-start: 1;
  }
  .layout--left-main-right [id=container] > [id=main] {
    grid-column: 1/-1;
    grid-column: span 6/span 6;
    grid-column-start: 4;
  }
  .layout--left-main-right [id=container] > [id=right] {
    grid-column: 1/-1;
    grid-column: span 3/span 3;
    grid-column-start: 10;
  }
}

:root {
  --layout-footer-background: var(--color-white);
  --layout-footer-color: var(--color-text);
  --layout-footer-padding-top: var(--space-2xl);
  --layout-footer-padding-bottom: var(--space-sm);
  --layout-footer-width: var(--wrapper-max);
}

[id=footer] {
  --links-color: var(--layout-footer-color);
  padding-block: var(--layout-footer-padding-top) var(--layout-footer-padding-bottom);
  background: var(--layout-footer-background);
  color: var(--layout-footer-color);
  font-size: var(--text-lg);
  width: 100%;
  margin-inline: auto;
  padding-inline: var(--layout-spacing-sides);
}
[id=footer] .footer--wrapper {
  max-width: var(--layout-footer-width);
  margin-inline: auto;
}
[id=footer] .row {
  row-gap: var(--space-lg);
}
[id=footer] :is(.nav--social, .nav--legal) ul {
  flex-direction: row;
  flex-wrap: wrap;
}
[id=footer] .footer--bottom {
  row-gap: 0;
  font-size: var(--text-md);
}
[id=footer] .nav--legal {
  font-size: var(--text-md);
}
[id=footer] .nav--legal ul {
  gap: var(--space-lg);
}
[id=footer] .nav--legal a {
  padding-inline: 0;
  color: var(--color-text);
}
[id=footer] .footer__credit {
  display: inline-block;
  padding-block: calc(var(--nav-item-padding) / 2);
  color: var(--color-text-muted);
  text-decoration: none;
  transition: color var(--base-transition) ease;
  padding-inline: 0;
}
[id=footer] .footer__credit:hover, [id=footer] .footer__credit:focus-visible {
  color: var(--color-text-highlight);
}
[id=footer] .nav--social {
  margin-inline: calc(-1 * var(--space-sm));
}
[id=footer] .nav--social a {
  padding: var(--space-sm);
}

.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: 48em) {
  .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: 48em) {
  .nav--breadcrumb {
    flex-direction: column;
  }
}
@media screen and (min-width: 48em) {
  .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;
}
@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-item-padding: var(--space-md);
}

.nav--horizontal li {
  margin-bottom: 0;
}

:root {
  --nav-main-color: var(--color-text);
  --nav-main-color-hover: var(--color-text-highlight);
  --nav-main-color-active: var(--nav-main-color-hover);
}

.nav--main {
  font-size: var(--text-md);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.nav--main a {
  color: var(--nav-main-color);
  transition: color var(--base-transition) ease;
}
.nav--main a:hover, .nav--main a:focus-visible {
  color: var(--nav-main-color-hover);
}
.nav--main li.active > a,
.nav--main strong.active,
.nav--main a.trail {
  color: var(--nav-main-color-active);
}
@media screen and (max-width: 47.99875em) {
  .nav--main {
    display: none;
  }
}
@media screen and (min-width: 48em) {
  .nav--main {
    display: block;
  }
}

: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: var(--color-overlay-background);
  --nav-mobile-backdrop-blur: var(--overlay-blur);
  --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: 47.99875em) {
  .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);
  backdrop-filter: blur(var(--nav-mobile-backdrop-blur));
  -webkit-backdrop-filter: blur(var(--nav-mobile-backdrop-blur));
  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;
}

:root {
  --signet-color: var(--color-primary);
  --signet-ratio: 341 / 303;
  --signet-logo-size: 2.5rem;
  --signet-top-size: 3.5rem;
  --signet-top-space: var(--space-sm);
  --signet-bg-size: clamp(12.5rem, 22vw, 20rem);
  --signet-bg-color: color-mix(in srgb, var(--color-white) 20%, transparent);
  --signet-bg-turn: 120s;
  --signet-bg-breath: 6s;
  --signet-bg-breath-scale: 1.06;
  --signet-list-size: 1.5em;
  --signet-list-gap: var(--space-sm);
  --signet-list-column-gap: var(--space-xl);
}

.logo.logo--signet {
  display: inline-flex;
  width: var(--signet-logo-size);
  color: var(--signet-color);
}
.logo.logo--signet .svg-icon {
  width: 100%;
  height: auto;
  aspect-ratio: var(--signet-ratio);
}

.signet--top::before {
  content: "";
  display: block;
  aspect-ratio: var(--signet-ratio);
  background-color: var(--signet-color);
  -webkit-mask: url("../../files/theme/core-calm/img/signet.svg") center/contain no-repeat;
  mask: url("../../files/theme/core-calm/img/signet.svg") center/contain no-repeat;
  width: var(--signet-top-size);
  margin: 0 auto var(--signet-top-space);
}

.signet--bg {
  overflow: hidden;
}
.signet--bg > .inside {
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 58.75em) {
  .signet--bg > .inside::after {
    content: "";
    display: block;
    aspect-ratio: var(--signet-ratio);
    background-color: var(--signet-color);
    -webkit-mask: url("../../files/theme/core-calm/img/signet.svg") center/contain no-repeat;
    mask: url("../../files/theme/core-calm/img/signet.svg") center/contain no-repeat;
    --signet-color: var(--signet-bg-color);
    position: absolute;
    z-index: -1;
    inset-block-start: 50%;
    inset-inline-end: 0;
    width: var(--signet-bg-size);
    translate: 0 -50%;
    pointer-events: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .signet--bg > .inside::after {
    transform-origin: 50% 57%;
    animation: signet-turn var(--signet-bg-turn) linear infinite, signet-breath var(--signet-bg-breath) ease-in-out infinite alternate;
  }
}

@keyframes signet-turn {
  to {
    rotate: 1turn;
  }
}
@keyframes signet-breath {
  to {
    scale: var(--signet-bg-breath-scale);
    opacity: 0.6;
  }
}
.list--signet ul {
  padding-left: 0;
  list-style: none;
}
@media screen and (min-width: 58.75em) {
  .list--signet ul {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(var(--signet-list-rows, 3), auto);
    column-gap: var(--signet-list-column-gap);
  }
}

.list--signet li {
  position: relative;
  padding-left: calc(var(--signet-list-size) + var(--signet-list-gap));
}
.list--signet li::before {
  content: "";
  display: block;
  aspect-ratio: var(--signet-ratio);
  background-color: var(--signet-color);
  -webkit-mask: url("../../files/theme/core-calm/img/signet.svg") center/contain no-repeat;
  mask: url("../../files/theme/core-calm/img/signet.svg") center/contain no-repeat;
  position: absolute;
  left: 0;
  top: calc((var(--base-line-height) * 1em - var(--signet-list-size) / (var(--signet-ratio))) / 2);
  width: var(--signet-list-size);
}

:root {
  --box-padding: var(--space-xl);
  --box-radius: var(--radius-lg);
  --box-fill: var(--color-secondary);
  --box-border-width: var(--base-border-width);
  --box-border-color: var(--color-secondary);
  --box-measure: 34ch;
}

.box {
  padding: var(--box-padding);
  border: var(--box-border-width) solid var(--box-border, transparent);
  border-radius: var(--box-radius);
  background-color: var(--box-bg, transparent);
}
.box > :first-child {
  margin-block-start: 0;
}
.box > :last-child {
  margin-block-end: 0;
}
.box h3 {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: var(--text-3xl);
  color: var(--color-primary);
  font-family: "Cormorant Garamond", "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif;
}

.box.text-center > * {
  max-inline-size: var(--box-measure);
  margin-inline: auto;
  text-wrap: balance;
}

.box--fill {
  --box-bg: var(--box-fill);
}

.box--outline {
  --box-border: var(--box-border-color);
}

.box--bg-primary {
  --box-bg: var(--color-primary);
}

.box--bg-dark {
  --box-bg: var(--color-gray-dark);
  color: var(--color-text-inverted);
  --links-color: var(--color-text-inverted);
  --links-color-hover: var(--color-text-inverted);
  --links-color-visited: var(--color-text-inverted);
  --button-primary-color: var(--color-text-highlight);
  --button-primary-background: var(--color-white);
  --button-primary-border-color: var(--color-white);
  --button-primary-color-hover: var(--color-text);
  --button-primary-background-hover: var(--color-white);
  --button-primary-border-color-hover: var(--color-white);
  --button-color: var(--button-primary-color);
  --button-color-hover: var(--button-primary-color-hover);
  --button-background: var(--button-primary-background);
  --button-background-hover: var(--button-primary-background-hover);
  --button-secondary-color: var(--color-text-inverted);
  --button-secondary-border-color: var(--color-text-inverted);
  --button-secondary-color-hover: var(--color-text-highlight);
  --button-secondary-background-hover: var(--color-white);
  --button-secondary-border-color-hover: var(--color-white);
  --button-ghost-color: var(--color-text-inverted);
  --button-ghost-color-hover: var(--color-text-inverted);
}
.box--bg-dark h1,
.box--bg-dark h2,
.box--bg-dark h3,
.box--bg-dark h4,
.box--bg-dark h5,
.box--bg-dark h6 {
  color: var(--color-text-inverted);
}

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

.box--bg-white {
  --box-bg: var(--color-white);
}

:root {
  --reveal-duration: 900ms;
  --reveal-easing: cubic-bezier(0.25, 0.1, 0.2, 1);
  --reveal-distance: 2rem;
  --reveal-stagger: 150ms;
}

.reveal {
  opacity: 0;
  translate: 0 var(--reveal-distance);
}

.reveal.is-revealed {
  opacity: 1;
  translate: none;
  transition: opacity var(--reveal-duration) var(--reveal-easing), translate var(--reveal-duration) var(--reveal-easing);
  transition-delay: calc(var(--reveal-index, 0) * var(--reveal-stagger));
}

@media print {
  .reveal {
    opacity: 1;
    translate: none;
  }
}
.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 {
  border-bottom: 0;
}
.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;
  border-top: 0;
}
.content-accordion .handorgel__content > div {
  padding: var(--accordion-content-spacing);
}

:root {
  --accordion-spacing: var(--space-lg);
  --accordion-radius: var(--radius-lg);
  --accordion-toggler-font-size: var(--text-2xl);
  --accordion-toggler-font-weight: var(--font-weight-semibold);
  --accordion-toggler-spacing: var(--space-lg) var(--space-xl);
  --accordion-toggler-background: var(--color-background-alt);
  --accordion-toggler-color: var(--color-text-highlight);
  --accordion-toggler-color-hover: var(--accordion-toggler-color);
  --accordion-toggler-border: 0;
  --accordion-toggler-border-bottom: 0;
  --accordion-icon-size: 2.5rem;
  --accordion-icon-font-size: var(--text-md);
  --accordion-icon-background: var(--color-primary);
  --accordion-icon-color: var(--color-white);
  --accordion-content-background: var(--color-background-alt);
  --accordion-content-spacing: 0 var(--space-xl) var(--space-xl);
}

.ce_accordion:not(.handorgel) .toggler,
.ce_accordion.handorgel .toggler button,
.content-accordion .handorgel__header__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  border-block-end: var(--accordion-toggler-border-bottom);
  border-radius: var(--accordion-radius);
  font-weight: var(--accordion-toggler-font-weight);
  text-align: start;
}
.ce_accordion:not(.handorgel) .toggler::after,
.ce_accordion.handorgel .toggler button::after,
.content-accordion .handorgel__header__button::after {
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  content: "\f107";
  color: currentColor;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  inline-size: var(--accordion-icon-size);
  block-size: var(--accordion-icon-size);
  border-radius: 50%;
  background: var(--accordion-icon-background);
  color: var(--accordion-icon-color);
  font-size: var(--accordion-icon-font-size);
  transition: transform var(--base-transition) ease;
}

.content-accordion .handorgel__header--open {
  margin-bottom: 0;
}
.content-accordion .handorgel__header--open .handorgel__header__button {
  border-end-start-radius: 0;
  border-end-end-radius: 0;
}
.content-accordion .handorgel__content {
  border-end-start-radius: var(--accordion-radius);
  border-end-end-radius: var(--accordion-radius);
}
.content-accordion .handorgel__content--open {
  margin-bottom: var(--accordion-spacing);
}
.content-accordion .handorgel__header--open .handorgel__header__button,
.content-accordion .handorgel__header--focus .handorgel__header__button {
  background-color: var(--accordion-toggler-background);
}

.ce_accordion:not(.handorgel) .toggler.active::after,
.ce_accordion.handorgel .handorgel__header--open button::after,
.content-accordion .handorgel__header--open .handorgel__header__button::after {
  transform: rotate(180deg);
}

@media (prefers-reduced-motion: reduce) {
  .ce_accordion .toggler::after,
  .ce_accordion .toggler button::after,
  .content-accordion .handorgel__header__button::after {
    transition: none;
  }
}
.ce_accordion:not(.handorgel) .toggler:focus-visible,
.ce_accordion.handorgel .toggler button:focus-visible,
.content-accordion .handorgel__header__button:focus-visible {
  outline: var(--focus-outline);
  outline-offset: calc(-1 * var(--focus-outline-width));
}

/* =============================================
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;
  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);
}

:root {
  --events-grid-columns-sm: 1;
  --events-grid-columns-md: 2;
  --events-grid-columns-lg: 3;
  --events-grid-columns-xl: 3;
}

.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);
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
  row-gap: var(--gallery-gutter);
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.ce_gallery .cols_2 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
.ce_gallery .cols_3 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_3 li {
    grid-column: 1/-1;
    grid-column: span 4/span 4;
  }
}
.ce_gallery .cols_4 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_4 li {
    grid-column: 1/-1;
    grid-column: span 3/span 3;
  }
}
.ce_gallery .cols_5 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_5 li {
    grid-column: 1/-1;
    grid-column: span 2/span 2;
  }
}
.ce_gallery .cols_6 li {
  grid-column: 1/-1;
  grid-column: span 6/span 6;
}
@media screen and (min-width: 58.75em) {
  .ce_gallery .cols_6 li {
    grid-column: 1/-1;
    grid-column: span 2/span 2;
  }
}
.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 {
  row-gap: var(--gallery-gutter);
}
.content-gallery--cols-2 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
.content-gallery--cols-3 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-3 ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
}
.content-gallery--cols-4 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-4 ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
}
.content-gallery--cols-5 ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-5 ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
}
.content-gallery--cols-6 ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: var(--grid-gutter);
  grid-auto-columns: 1fr;
}
@media screen and (min-width: 58.75em) {
  .content-gallery--cols-6 ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    column-gap: var(--grid-gutter);
    grid-auto-columns: 1fr;
  }
}
.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);
}

:root {
  --base-overlay-background: var(--color-overlay-background);
  --gallery-gutter: var(--grid-gutter);
  --gallery-gutter-half: calc(var(--gallery-gutter) / 2);
  --img-overlay: var(--img-overlay-primary-20);
  --img-gradient-dark: linear-gradient(
  	to bottom,
  	rgba(0, 0, 0, 0) 0%,
  	rgba(0, 0, 0, 0.7) 100%
  );
  --img-effect-transition: var(--base-transition);
  --img-zoom-scale: 1.1;
  --figcaption-spacing: var(--space-sm);
  --figcaption-font-size: var(--text-sm);
  --figcaption-color: var(--color-text-muted);
  --figcaption-line-height: 1.4;
}

figcaption {
  margin-top: var(--figcaption-spacing);
  color: var(--figcaption-color);
  font-size: var(--figcaption-font-size);
  line-height: var(--figcaption-line-height);
}

:root {
  --media-float-width: 50%;
  --media-float-gap: var(--grid-gutter);
  --media-float-gap-block: var(--space-md);
}

.media--left figure,
.media--right figure {
  width: fit-content;
  max-width: 100%;
  margin-block-end: var(--media-float-gap-block);
}
@media screen and (min-width: 48em) {
  .media--left figure,
  .media--right figure {
    max-width: var(--media-float-width);
  }
}

@media screen and (min-width: 48em) {
  .media--left figure {
    float: left;
    margin-inline-end: var(--media-float-gap);
  }
}

@media screen and (min-width: 48em) {
  .media--right figure {
    float: right;
    margin-inline-start: var(--media-float-gap);
  }
}

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

.gallery--slider {
  position: relative;
}
.gallery--slider .swiper {
  overflow: hidden;
}
.gallery--slider .swiper-wrapper {
  display: flex;
  grid-template-columns: none;
  grid-auto-columns: auto;
  column-gap: 0;
  row-gap: 0;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.gallery--slider .swiper-slide {
  height: auto;
}

.slider--bleed .gallery--slider .swiper {
  overflow: visible;
  clip-path: inset(0 -100vw 0 0);
}

.image_container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.image_container picture {
  position: relative;
  display: block;
}
.image_container img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform var(--img-effect-transition) ease;
}

.image_container--overlay picture,
.image_container--gradient-dark picture,
.image_container--zoom-hover picture,
.image_container--rounded picture,
.image_container--rounded-lg picture,
.image_container--rounded-full picture {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
}

.image_container--overlay picture::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--img-overlay);
}

.image_container--gradient-dark picture::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: var(--img-gradient-dark);
}

.image_container--zoom-hover picture img {
  transition: transform var(--img-effect-transition) ease;
}

.image_container--zoom-hover picture:hover img {
  transform: scale(var(--img-zoom-scale));
}

.image_container--rounded picture {
  border-radius: var(--radius-md);
}

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

.image_container--rounded-full picture {
  border-radius: var(--radius-full);
}

@media (prefers-reduced-motion: reduce) {
  .image_container img,
  .image_container--zoom-hover picture img {
    transition: none;
  }
  .image_container--zoom-hover picture:hover img {
    transform: none;
  }
}
input.submit,
button.submit, .back a, a.btn--ghost,
span.btn--ghost,
button.btn--ghost,
div.btn--ghost > a,
div.btn--ghost > button, a.btn--secondary,
span.btn--secondary,
button.btn--secondary,
div.btn--secondary > a,
div.btn--secondary > button, a.btn--primary,
span.btn--primary,
button.btn--primary,
div.btn--primary > a,
div.btn--primary > button, 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 > 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;
}

:root {
  --links-color: var(--color-text-highlight);
  --links-color-hover: var(--color-text);
  --links-color-visited: var(--links-color);
  --links-outline-focus: var(--focus-outline);
  --links-outline-active: none;
  --button-spacing: var(--space-md);
  --button-border-radius: var(--radius-full);
  --button-border-width: var(--base-border-width);
  --button-border-style: solid;
  --button-font-family: var(--base-font-family);
  --button-font-weight: var(--font-weight-bold);
  --button-font-size: var(--text-md);
  --button-line-height: var(--base-line-height);
  --button-primary-color: var(--color-text-inverted);
  --button-primary-background: var(--color-highlight);
  --button-primary-border-color: var(--button-primary-background);
  --button-primary-color-hover: var(--button-primary-color);
  --button-primary-background-hover: var(--color-primary-highlight);
  --button-primary-border-color-hover: var(--button-primary-background-hover);
  --button-primary-shadow-hover: var(--base-box-shadow-md);
  --button-color: var(--button-primary-color);
  --button-color-hover: var(--button-primary-color-hover);
  --button-background: var(--button-primary-background);
  --button-background-hover: var(--button-primary-background-hover);
  --button-secondary-color: var(--color-primary);
  --button-secondary-background: transparent;
  --button-secondary-border-color: var(--color-highlight);
  --button-secondary-color-hover: var(--color-on-primary);
  --button-secondary-background-hover: transparent;
  --button-secondary-border-color-hover: var(--color-highlight);
  --button-ghost-color: var(--links-color);
  --button-ghost-color-hover: var(--links-color-hover);
  --button-ghost-underline-color: var(--base-border-color);
  --button-group-gap: var(--space-md);
}

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

input.submit,
button.submit, .back a, a.btn--ghost,
span.btn--ghost,
button.btn--ghost,
div.btn--ghost > a,
div.btn--ghost > button, a.btn--secondary,
span.btn--secondary,
button.btn--secondary,
div.btn--secondary > a,
div.btn--secondary > button, a.btn--primary,
span.btn--primary,
button.btn--primary,
div.btn--primary > a,
div.btn--primary > button, 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 {
  transition: background-color var(--base-transition) ease, border-color var(--base-transition) ease, color var(--base-transition) ease, box-shadow var(--base-transition) ease;
}
p input.submit,
p button.submit, p .back a, .back p a, p a.btn--ghost,
p span.btn--ghost,
p button.btn--ghost,
p div.btn--ghost > a,
p div.btn--ghost > button, p a.btn--secondary,
p span.btn--secondary,
p button.btn--secondary,
p div.btn--secondary > a,
p div.btn--secondary > button, p a.btn--primary,
p span.btn--primary,
p button.btn--primary,
p div.btn--primary > a,
p div.btn--primary > button, p a.btn,
p span.btn,
p button.btn, p div.btn > a,
p div.btn > 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;
}

input.submit,
button.submit, 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 {
  border-color: var(--button-primary-border-color);
}
input.submit::after,
button.submit::after, a.btn--primary::after,
span.btn--primary::after,
button.btn--primary::after, div.btn--primary > a::after,
div.btn--primary > button::after,
.ce_toplink > a::after,
.ce_toplink > button::after,
.toplink > a::after,
.toplink > button::after,
.content-toplink > a::after,
.content-toplink > button::after {
  font-family: "Font Awesome 7 Pro";
  font-weight: 400;
  content: "\f061";
  color: currentColor;
  padding-left: var(--space-xs);
}
input.submit:hover,
button.submit:hover, a.btn--primary:hover,
span.btn--primary:hover,
button.btn--primary: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 {
  border-color: var(--button-primary-border-color-hover);
  box-shadow: var(--button-primary-shadow-hover);
}

.back a, a.btn--secondary,
span.btn--secondary,
button.btn--secondary,
div.btn--secondary > a,
div.btn--secondary > button {
  border-color: var(--button-secondary-border-color) !important;
  background: var(--button-secondary-background);
  color: var(--button-secondary-color);
}
.back a::after, a.btn--secondary::after,
span.btn--secondary::after,
button.btn--secondary::after,
div.btn--secondary > a::after,
div.btn--secondary > button::after {
  font-family: "Font Awesome 7 Pro";
  font-weight: 400;
  content: "\f061";
  color: currentColor;
  padding-left: var(--space-xs);
}
.back a:hover, a.btn--secondary:hover,
span.btn--secondary:hover,
button.btn--secondary:hover,
div.btn--secondary > a:hover,
div.btn--secondary > button:hover {
  border-color: var(--button-secondary-border-color-hover);
  background: var(--button-secondary-background-hover);
  color: var(--button-secondary-color-hover);
}

a.btn--ghost,
span.btn--ghost,
button.btn--ghost,
div.btn--ghost > a,
div.btn--ghost > button {
  border-color: transparent;
  background: transparent;
  color: var(--button-ghost-color);
  text-decoration: underline;
  text-underline-offset: 0.5em;
  text-decoration-color: var(--button-ghost-underline-color, currentColor);
  text-decoration-thickness: 1px;
}
a.btn--ghost::after,
span.btn--ghost::after,
button.btn--ghost::after,
div.btn--ghost > a::after,
div.btn--ghost > button::after {
  font-family: "Font Awesome 7 Pro";
  font-weight: 400;
  content: "\f061";
  color: currentColor;
  padding-left: var(--space-xs);
}
a.btn--ghost:hover,
span.btn--ghost:hover,
button.btn--ghost:hover,
div.btn--ghost > a:hover,
div.btn--ghost > button:hover {
  color: var(--button-ghost-color-hover);
}

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

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

/* =============================================
KICKSTART_ Theme 2025
Project: [Projektname einsetzen]
Version: 1.0
Author: HERRWEISS_ / herrweiss.de
Based on: Nutshell Framework (Erdmann & Freunde)
============================================= */
:root {
  --lightbox-radius: var(--radius-lg);
  --lightbox-spacing-sides: var(--space-md);
}

.glightbox-container .gslide-inner-content {
  padding-inline: var(--lightbox-spacing-sides);
}

.glightbox-container .gslide-media {
  border-radius: var(--lightbox-radius);
}

.glightbox-container :is(.gslide-image, .gslide-video) {
  overflow: hidden;
}

.goverlay,
.glightbox-mobile .goverlay {
  background: var(--color-overlay-background);
  backdrop-filter: blur(var(--overlay-blur));
  -webkit-backdrop-filter: blur(var(--overlay-blur));
}

.gslide-media {
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.gclose {
  width: 35px;
  height: 35px;
  top: 15px;
  right: 10px;
  border-radius: var(--radius-full) !important;
}

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;
}

:root {
  --forms-input-border-width: var(--base-border-width);
  --forms-input-border-radius: var(--base-border-radius);
  --forms-input-border-color: var(--color-gray-light);
  --forms-input-background: var(--color-white);
  --forms-input-line-height: normal;
  --forms-mandatory-color: var(--color-text-highlight);
  --forms-error-color: var(--color-error);
  --forms-readonly-background: var(--color-background-alt);
  --forms-confirmation-background: var(--color-background-alt);
  --forms-confirmation-color: var(--color-text);
  --forms-confirmation-padding: var(--space-lg) var(--space-xl);
  --forms-confirmation-radius: var(--radius-lg);
  --forms-fieldset-space: var(--space-2xl);
  --forms-legend-font-size: var(--text-xl);
  --forms-legend-weight: var(--font-weight-semibold);
  --forms-legend-space: var(--space-md);
  --choice-size: 1.25em;
  --choice-gap: var(--space-sm);
  --choice-gap-row: var(--space-lg);
  --choice-gap-stacked: var(--space-sm);
  --choice-font-size: var(--text-sm);
  --choice-line-height: var(--base-line-height);
  --choice-border-width: 2px;
  --choice-border-color: var(--forms-input-border-color);
  --choice-radius: var(--radius-sm);
  --choice-checked-bg: var(--color-primary);
  --choice-mark-color: var(
  	--color-white
  );
  --choice-focus-ring: var(--color-primary);
}

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

.widget-submit {
  margin-top: var(--space-lg);
}

:is(input, textarea)[readonly] {
  --forms-input-background: var(--forms-readonly-background);
  --forms-input-border-color: transparent;
  cursor: default;
}

.formbody > fieldset {
  margin-bottom: var(--forms-fieldset-space);
}
.formbody > fieldset > :last-child {
  margin-bottom: 0;
}
.formbody > fieldset > legend {
  margin-bottom: var(--forms-legend-space);
  font-size: var(--forms-legend-font-size);
  font-weight: var(--forms-legend-weight);
}

.widget legend {
  margin-bottom: var(--base-spacing-unit-xs);
  font-size: var(--text-sm);
  font-weight: inherit;
}

input.checkbox,
input.radio {
  appearance: none;
  flex-shrink: 0;
  display: inline-grid;
  place-content: center;
  width: var(--choice-size);
  height: var(--choice-size);
  margin: calc((var(--choice-line-height) * 1em - var(--choice-size)) / 2) 0 0;
  border: var(--choice-border-width) solid var(--choice-border-color);
  background-color: var(--forms-input-background);
  font: inherit;
  cursor: pointer;
}
input.checkbox::before,
input.radio::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  background-color: var(--choice-mark-color);
  transform: scale(0);
  transition: transform 0.1s ease-in-out;
}
input.checkbox:checked,
input.radio:checked {
  border-color: var(--choice-checked-bg);
  background-color: var(--choice-checked-bg);
}
input.checkbox:checked::before,
input.radio:checked::before {
  transform: scale(1);
}
input.checkbox:focus-visible,
input.radio:focus-visible {
  outline: 2px solid var(--choice-focus-ring);
  outline-offset: 2px;
}
input.checkbox:disabled, input.checkbox:disabled + label,
input.radio:disabled,
input.radio:disabled + label {
  opacity: 0.5;
  cursor: not-allowed;
}
input.checkbox + label,
input.radio + label {
  cursor: pointer;
}

input.checkbox {
  border-radius: var(--choice-radius);
}
input.checkbox::before {
  clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}

input.radio {
  border-radius: 50%;
}
input.radio::before {
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
}

.checkbox_container,
.radio_container {
  display: flex;
  flex-wrap: wrap;
  gap: var(--choice-gap) var(--choice-gap-row);
}
.checkbox_container > span,
.radio_container > span {
  display: flex;
  align-items: flex-start;
  gap: var(--choice-gap);
  font-size: var(--choice-font-size);
  line-height: var(--choice-line-height);
}
.checkbox_container label,
.radio_container label {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
}

.choices--stacked :is(.checkbox_container, .radio_container),
:is(.checkbox_container, .radio_container).choices--stacked {
  flex-direction: column;
  gap: var(--choice-gap-stacked);
}

p.error {
  margin-block: 0 var(--space-xs);
  color: var(--forms-error-color);
  font-size: var(--text-sm);
}

:is(input, select, textarea).error {
  --forms-input-border-color: var(--forms-error-color);
  border-color: var(--forms-error-color);
}

.error :is(input.checkbox, input.radio) {
  --choice-border-color: var(--forms-error-color);
}

:is(.checkbox_container, .radio_container) > p.error {
  flex-basis: 100%;
}

.form-confirmation {
  padding: var(--space-lg);
  border-radius: var(--forms-confirmation-radius);
  background: var(--forms-confirmation-background);
  color: var(--forms-confirmation-color);
}
@media screen and (min-width: 48em) {
  .form-confirmation {
    padding: var(--forms-confirmation-padding);
  }
}
.form-confirmation > :last-child {
  margin-bottom: 0;
}

:root {
  --newsletter-list-border: var(--base-border);
  --newsletter-reader-width: 37.5rem;
  --newsletter-reader-border: var(--base-border);
}

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;
}

:root {
  --table-border-width: 1px;
  --table-border-style: solid;
  --table-border-color: var(--color-gray-light);
  --table-background-light: var(--color-gray-lightest);
}

.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;
  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);
}

:root {
  --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);
}

:root {
  --swiper-theme-color: var(--color-primary);
  --swiper-navigation-size: 2.75rem;
  --swiper-navigation-sides-offset: 1rem;
  --swiper-navigation-color: var(--slider-nav-color);
  --swiper-navigation-top-offset: calc(
  	50% - var(--slider-pagination-space) / 2
  );
  --swiper-pagination-bottom: 0;
  --swiper-pagination-bullet-width: 0.625rem;
  --swiper-pagination-bullet-height: 0.625rem;
  --swiper-pagination-bullet-horizontal-gap: 0.3125rem;
  --swiper-pagination-color: var(--color-primary);
  --swiper-pagination-bullet-inactive-color: var(--color-gray-light);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --slider-nav-color: var(--color-on-primary);
  --slider-nav-background: var(--color-primary);
  --slider-nav-background-hover: var(--color-primary-highlight);
  --slider-nav-icon-size: 1.125rem;
  --slider-nav-shadow: var(--base-box-shadow-md);
  --slider-pagination-space: var(--space-2xl);
}

.swiper {
  padding-bottom: var(--slider-pagination-space);
}

.swiper-pagination-bullet {
  transition: background-color var(--base-transition) ease;
}

.swiper-button-prev,
.swiper-button-next {
  border-radius: var(--radius-full);
  background: var(--slider-nav-background);
  box-shadow: var(--slider-nav-shadow);
  transition: background-color var(--base-transition) ease, opacity var(--base-transition) ease;
}
.swiper-button-prev .swiper-navigation-icon,
.swiper-button-next .swiper-navigation-icon {
  width: var(--slider-nav-icon-size);
  height: auto;
}
.swiper-button-prev::after,
.swiper-button-next::after {
  font-size: var(--slider-nav-icon-size);
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
  background: var(--slider-nav-background-hover);
}

.swiper-button-disabled {
  opacity: 0.35;
}

@media (prefers-reduced-motion: reduce) {
  .swiper-button-prev,
  .swiper-button-next,
  .swiper-pagination-bullet {
    transition: none;
  }
}
:root {
  --search-spacing: var(--space-md);
  --search-relevance-color: var(--color-text-muted);
  --search-url-color: var(--color-text-muted);
}

.video-wrapper {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.video-wrapper .jarallax {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.hero {
  --hero-gradient-angle: 135deg;
  --hero-min-height: 45.3125rem;
  --hero-min-height-sm: 25rem;
  --hero-secondary-min-height: 31.25rem;
  --hero-text-color: var(--color-text-inverted);
  --hero-font-size: var(--text-lg);
  --hero-font-size-lg: var(--text-xl);
  --hero-font-size-title: var(--text-7xl);
  --hero-title-weight: var(--font-weight-bold);
  --hero-title-space: var(--space-md);
  --hero-buttons-space: var(--space-xl);
  --hero-spacing-block: clamp(var(--space-2xl), 6vw, var(--space-5xl));
  --hero-kicker-font-size: var(--text-xl);
  --hero-kicker-tracking: 0.08em;
  --hero-kicker-space: var(--space-lg);
  --hero-logo-width: 35rem;
  --hero-copy-width-lg: 66.6666%;
  --hero-secondary-padding-y: var(--space-3xl);
  --hero-secondary-content-max: var(--wrapper-max);
  --hero-button-primary-background: var(--color-white);
  --hero-button-primary-color: var(--color-text-highlight);
  --hero-button-ghost-color: var(--color-text-inverted);
  --hero-scroll-size: 2.5rem;
  --hero-scroll-offset: var(--space-lg);
  --hero-scroll-background: rgba(255, 255, 255, 0.2);
  --hero-scroll-color: var(--color-primary);
  --hero-scroll-distance: 0.375rem;
  --hero-scroll-duration: 2.4s;
  --hero-scroll-delay: 1.5s;
  --hero-scroll-repeat: 4;
  --hero-overlay-primary-alpha: 0.6;
  --hero-overlay-primary-alpha-start: var(--hero-overlay-primary-alpha);
  --hero-overlay-primary-alpha-end: 0;
  --hero-overlay-secondary-alpha: 0.9;
  --hero-overlay-secondary-alpha-start: var(--hero-overlay-secondary-alpha);
  --hero-overlay-secondary-alpha-end: 0.65;
  --hero-overlay-dark-alpha: 0.8;
  --hero-overlay-dark-alpha-start: var(--hero-overlay-dark-alpha);
  --hero-overlay-dark-alpha-end: 0;
  --hero-overlay-light-alpha: 1;
  --hero-overlay-light-alpha-start: var(--hero-overlay-light-alpha);
  --hero-overlay-light-alpha-end: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  overflow: hidden;
  color: var(--hero-text-color);
  font-size: var(--hero-font-size);
  padding-block: var(--hero-spacing-block);
  padding-block-end: var(--hero-padding-end, var(--hero-spacing-block));
  width: 100%;
  margin-inline: auto;
  padding-inline: var(--layout-spacing-sides);
}
@media screen and (min-width: 68.75em) {
  .hero {
    font-size: var(--hero-font-size-lg);
  }
}
.hero.hero--video {
  min-height: var(--hero-min-height-sm);
  height: calc(80vh - var(--layout-header-height));
}
@media screen and (min-width: 58.75em) {
  .hero.hero--video {
    min-height: var(--hero-min-height);
  }
}
.hero.hero--img, .hero.hero--color {
  min-height: var(--hero-min-height);
}
.hero.hero--primary {
  padding-block-start: calc(var(--layout-header-height) + var(--hero-spacing-block));
}
.hero.hero--secondary {
  min-height: var(--hero-secondary-min-height);
  height: auto;
  padding-block: var(--hero-secondary-padding-y);
}
.hero.hero--secondary .hero__content {
  align-items: center;
  max-width: var(--hero-secondary-content-max);
  text-align: center;
}
.hero.hero--secondary h2 {
  color: var(--hero-text-color);
  text-transform: uppercase;
}
.hero h1 {
  color: var(--hero-text-color);
  margin-bottom: var(--hero-title-space);
  font-weight: var(--hero-title-weight);
  font-size: var(--hero-font-size-title);
}
.hero .hero__kicker {
  margin-bottom: var(--hero-kicker-space);
  font-size: var(--hero-kicker-font-size);
  letter-spacing: var(--hero-kicker-tracking);
  text-transform: uppercase;
}
.hero .hero__logo {
  width: min(var(--hero-logo-width), 100%);
  margin-bottom: var(--hero-title-space);
}
.hero .hero__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.hero.hero--logo .hero__content {
  align-items: center;
  text-align: center;
}
@media screen and (min-width: 68.75em) {
  .hero .copy {
    width: var(--hero-copy-width-lg);
  }
}
.hero .btn--primary a {
  background-color: var(--hero-button-primary-background);
  border-color: var(--hero-button-primary-background);
  color: var(--hero-button-primary-color);
}
.hero .btn--ghost a {
  color: var(--hero-button-ghost-color);
  display: none;
}
@media screen and (min-width: 58.75em) {
  .hero .btn--ghost a {
    display: inline-block;
  }
}
.hero video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.hero .image_container {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: flex;
  width: 100%;
  height: 100%;
}
.hero .image_container picture,
.hero .image_container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero .hero__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  max-width: var(--wrapper-max);
  margin-inline: auto;
}
.hero .hero__content .btn-group {
  margin-top: var(--hero-buttons-space);
}
.hero .overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.hero .overlay.overlay--fill-primary {
  background: rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha));
}
.hero .overlay.overlay--fill-secondary {
  background: rgba(var(--color-secondary-rgb), var(--hero-overlay-secondary-alpha));
}
.hero .overlay.overlay--fill-dark {
  background: rgba(0, 0, 0, var(--hero-overlay-dark-alpha));
}
.hero .overlay.overlay--fill-light {
  background: rgba(255, 255, 255, var(--hero-overlay-light-alpha));
}
.hero .overlay.overlay--gradient-y-primary {
  background: linear-gradient(to bottom, rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha-start)) 0%, rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha-end)) 100%);
}
.hero .overlay.overlay--gradient-y-dark {
  background: linear-gradient(to bottom, rgba(0, 0, 0, var(--hero-overlay-dark-alpha-start)) 0%, rgba(0, 0, 0, var(--hero-overlay-dark-alpha-end)) 100%);
}
.hero .overlay.overlay--gradient-x-primary {
  background: linear-gradient(to right, rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha-start)) 0%, rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha-end)) 100%);
}
.hero .overlay.overlay--gradient-x-dark {
  background: linear-gradient(to right, rgba(0, 0, 0, var(--hero-overlay-dark-alpha-start)) 0%, rgba(0, 0, 0, var(--hero-overlay-dark-alpha-end)) 100%);
}
.hero .overlay.overlay--gradient-x-light {
  background: linear-gradient(to right, rgba(255, 255, 255, var(--hero-overlay-light-alpha-start)) 0%, rgba(255, 255, 255, var(--hero-overlay-light-alpha-end)) 100%);
}
.hero .overlay.overlay--gradient-x-secondary {
  background: linear-gradient(to right, rgba(var(--color-secondary-rgb), var(--hero-overlay-secondary-alpha-start)) 0%, rgba(var(--color-secondary-rgb), var(--hero-overlay-secondary-alpha-end)) 100%);
}
.hero .overlay.overlay--radial-primary {
  background: radial-gradient(circle, rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha-start)) 0%, rgba(var(--color-primary-rgb), var(--hero-overlay-primary-alpha-end)) 100%);
}
.hero .overlay.overlay--radial-dark {
  background: radial-gradient(circle, rgba(0, 0, 0, var(--hero-overlay-dark-alpha-start)) 0%, rgba(0, 0, 0, var(--hero-overlay-dark-alpha-end)) 100%);
}

@media screen and (min-width: 68.75em) {
  .mod_article:has(+ .article--announcement-bar) .hero--primary {
    --hero-spacing-block: clamp(var(--space-xl), 8svh, var(--space-5xl));
    --hero-logo-min-height: 17.5rem;
    --hero-logo-reserve: 0px;
    height: auto;
    min-height: calc(100vh - var(--announcement-bar-height));
    min-height: calc(100svh - var(--announcement-bar-height));
  }
  .mod_article:has(+ .article--announcement-bar) .hero--primary:has(.hero__kicker) {
    --hero-logo-reserve: calc(
    	var(--hero-kicker-font-size) * var(--base-line-height) +
    		var(--hero-kicker-space)
    );
  }
  .mod_article:has(+ .article--announcement-bar) .hero--primary.hero--logo .hero__logo img {
    width: auto;
    max-width: 100%;
    max-height: max(var(--hero-logo-min-height), 100svh - var(--announcement-bar-height) - var(--layout-header-height) - var(--hero-spacing-block) - var(--hero-padding-end, var(--hero-spacing-block)) - var(--hero-logo-reserve) - var(--hero-title-space));
    margin-inline: auto;
  }
}
.hero--color {
  background-color: var(--hero-bg, transparent);
  background-image: var(--hero-bg-gradient, none);
}

.hero--bg-primary {
  --hero-bg: var(--color-primary);
  --hero-text-color: var(--color-white);
}

.hero--bg-dark {
  --hero-bg: var(--color-gray-dark);
  --hero-text-color: var(--color-white);
}

.hero--bg-light {
  --hero-bg: var(--color-background-alt);
  --hero-text-color: var(--color-text);
}

.hero--bg-white {
  --hero-bg: var(--color-white);
  --hero-text-color: var(--color-text);
}

.hero--bg-gradient-primary {
  --hero-bg-gradient: linear-gradient(var(--hero-gradient-angle), var(--color-primary), var(--color-secondary));
  --hero-text-color: var(--color-white);
}

.hero--bg-gradient-dark {
  --hero-bg-gradient: linear-gradient(var(--hero-gradient-angle), var(--color-primary), var(--color-gray-dark));
  --hero-text-color: var(--color-text-inverted);
}

.hero--bg-gradient-light {
  --hero-bg-gradient: linear-gradient(var(--hero-gradient-angle), var(--color-background-alt), var(--color-white));
  --hero-text-color: var(--color-white);
}

.hero--overlay-light {
  --hero-text-color: var(--color-text);
}

.hero--bg-light,
.hero--bg-white,
.hero--bg-gradient-light,
.hero--overlay-light {
  --hero-button-primary-background: var(--button-primary-background);
  --hero-button-primary-color: var(--button-primary-color);
  --hero-button-ghost-color: var(--button-ghost-color);
  --hero-scroll-background: var(--color-white);
}

.hero__scroll {
  position: absolute;
  inset-block-end: var(--hero-scroll-offset);
  inset-inline-start: 50%;
  z-index: 2;
  display: grid;
  place-items: center;
  inline-size: var(--hero-scroll-size);
  block-size: var(--hero-scroll-size);
  margin-inline-start: calc(var(--hero-scroll-size) / -2);
  border-radius: 50%;
  background: var(--hero-scroll-background);
  color: var(--hero-scroll-color);
  text-decoration: none;
  transition: background-color var(--base-transition) ease;
}
.hero__scroll::before {
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  content: "\f107";
  color: currentColor;
  color: var(--hero-scroll-color);
}
.hero:has(.hero__scroll) {
  --hero-padding-end: max(
  	var(--hero-spacing-block),
  	calc(var(--hero-scroll-size) + 2 * var(--hero-scroll-offset))
  );
}

@media (prefers-reduced-motion: no-preference) {
  .hero__scroll {
    animation: hero-scroll-bob var(--hero-scroll-duration) ease-in-out var(--hero-scroll-delay) var(--hero-scroll-repeat);
  }
}
@keyframes hero-scroll-bob {
  50% {
    translate: 0 var(--hero-scroll-distance);
  }
}
.hero__content .btn--ghost a {
  text-decoration: none;
  font-weight: var(--font-weight-semibold);
}
.hero__content .btn--ghost a::before {
  padding-right: var(--space-xs);
  font-size: var(--text-md);
}

:root {
  --course-row-gap: var(--space-xl);
  --course-text-width: 66.666%;
  --course-block-font-size: var(--text-lg);
  --course-card-gap: var(--space-md);
  --course-card-padding: var(--space-lg);
  --course-card-background: var(--color-secondary);
  --course-card-radius: var(--radius-lg);
  --course-card-border-width: var(--base-border-width);
  --course-card-border-color-hover: var(--color-primary);
  --course-status-color: var(--color-text-muted);
}

.course {
  display: grid;
  gap: var(--course-row-gap);
}
@media screen and (min-width: 58.75em) {
  .course > .course__description {
    max-width: var(--course-text-width);
  }
}

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

.course__block {
  font-size: var(--course-block-font-size);
}
.course__block a {
  text-decoration: none;
}

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

.course__block p {
  margin: 0;
}

.course__blocks {
  display: grid;
  gap: var(--course-card-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media screen and (min-width: 58.75em) {
  .course__blocks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.course__block-note {
  font-size: var(--text-md);
}
@media screen and (min-width: 0) {
  .course__block-note {
    display: block;
  }
}
@media screen and (min-width: 58.75em) {
  .course__block-note {
    display: inline;
  }
}

.course__block .course__block-text {
  margin-top: var(--space-xs);
}

.course__block {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: var(--course-card-padding);
  border: var(--course-card-border-width) solid transparent;
  border-radius: var(--course-card-radius);
  background: var(--course-card-background);
}
.course__block > .link--more,
.course__block > .course__status {
  margin-top: auto;
  padding-top: var(--space-sm);
}

.course__block:has(.link--more a) {
  position: relative;
  transition: border-color var(--base-transition) ease;
}
.course__block:has(.link--more a) .link--more a::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
}
.course__block:has(.link--more a) .link--more a::after {
  transition: translate var(--base-transition) ease;
}
.course__block:has(.link--more a) .link--more a:focus-visible {
  outline: none;
}
.course__block:has(.link--more a):hover {
  border-color: var(--course-card-border-color-hover);
}
.course__block:has(.link--more a):hover .link--more a::after {
  translate: 0.25em 0;
}
.course__block:has(.link--more a):has(a:focus-visible) {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .course__block:has(.link--more a):hover .link--more a::after {
    translate: none;
  }
}

.course__status {
  color: var(--course-status-color);
  font-weight: var(--font-weight-semibold);
}

:root {
  --zertifikat-columns: 2;
  --zertifikat-height: 5.25rem;
  --zertifikat-gap-x: var(--space-lg);
  --zertifikat-gap-y: var(--space-lg);
}

@media screen and (min-width: 58.75em) {
  :root {
    --zertifikat-columns: 6;
    --zertifikat-height: 6.25rem;
    --zertifikat-gap-x: var(--space-md);
  }
}
@media screen and (min-width: 68.75em) {
  :root {
    --zertifikat-height: 7rem;
  }
}
.zertifikate {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--zertifikat-gap-y) var(--zertifikat-gap-x);
}
.zertifikate > * {
  --zertifikat-scale: 1;
  display: flex;
  justify-content: center;
  flex: 0 0 calc((100% - (var(--zertifikat-columns) - 1) * var(--zertifikat-gap-x)) / var(--zertifikat-columns));
  margin: 0;
}
.zertifikate figure {
  margin: 0;
}
.zertifikate img {
  display: block;
  width: auto;
  max-width: 100%;
  height: calc(var(--zertifikat-height) * var(--zertifikat-scale));
  object-fit: contain;
}
.zertifikate .zertifikat--m {
  --zertifikat-scale: 0.9;
}
.zertifikate .zertifikat--s {
  --zertifikat-scale: 0.75;
}
.zertifikate .zertifikat--multiply img {
  mix-blend-mode: multiply;
}

.text-xs {
  font-size: var(--text-xs) !important;
}

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

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

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

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

.text-2xl {
  font-size: var(--text-2xl) !important;
  line-height: 1.3;
}

.text-3xl {
  font-size: var(--text-3xl) !important;
  line-height: 1.2;
}

.text-4xl {
  font-size: var(--text-4xl) !important;
  line-height: 1.1;
}

.text-5xl {
  font-size: var(--text-5xl) !important;
  line-height: 1.1;
}

.text-6xl {
  font-size: var(--text-6xl) !important;
  line-height: 1.05;
}

.text-7xl {
  font-size: var(--text-7xl) !important;
  line-height: 1.05;
}

.font-normal {
  font-weight: var(--font-weight-normal) !important;
}

.font-medium {
  font-weight: var(--font-weight-medium) !important;
}

.font-semibold {
  font-weight: var(--font-weight-semibold) !important;
}

.font-bold {
  font-weight: var(--font-weight-bold) !important;
}

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

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

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

.uppercase {
  text-transform: uppercase !important;
}

.lowercase {
  text-transform: lowercase !important;
}

.capitalize {
  text-transform: capitalize !important;
}

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

.underline {
  text-decoration: underline !important;
}

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

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

.leading-none {
  line-height: 1 !important;
}

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

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

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

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

.whitespace-normal {
  white-space: normal !important;
}

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

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

.truncate {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.text-highlight {
  color: var(--color-text-highlight) !important;
}

.text-muted {
  color: var(--color-text-muted) !important;
}

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

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

@media screen and (min-width: 68.75em) {
  .section--w-4 {
    width: calc(4 * (100% - 11 * var(--grid-gutter)) / 12 + 3 * var(--grid-gutter)) !important;
    margin-inline: auto !important;
  }
}

@media screen and (min-width: 68.75em) {
  .section--w-6 {
    width: calc(6 * (100% - 11 * var(--grid-gutter)) / 12 + 5 * var(--grid-gutter)) !important;
    margin-inline: auto !important;
  }
}

@media screen and (min-width: 68.75em) {
  .section--w-8 {
    width: calc(8 * (100% - 11 * var(--grid-gutter)) / 12 + 7 * var(--grid-gutter)) !important;
    margin-inline: auto !important;
  }
}

@media screen and (min-width: 68.75em) {
  .section--w-10 {
    width: calc(10 * (100% - 11 * var(--grid-gutter)) / 12 + 9 * var(--grid-gutter)) !important;
    margin-inline: auto !important;
  }
}

:root {
  --measure: 68ch;
}

.section--w-text {
  max-width: min(var(--measure), 100%) !important;
  margin-inline: auto !important;
}

.w-full {
  width: 100% !important;
}

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

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

.flex {
  display: flex !important;
}

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

.grid-2,
.grid-3 {
  display: grid !important;
  gap: var(--grid-gutter);
}

@media screen and (min-width: 48em) {
  .grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media screen and (min-width: 48em) {
  .grid-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (min-width: 58.75em) {
  .grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.m-t-0 {
  margin-block-start: 0 !important;
}

.p-t-0 {
  padding-block-start: 0 !important;
}

.m-t-1 {
  margin-block-start: var(--space-xs) !important;
}

.p-t-1 {
  padding-block-start: var(--space-xs) !important;
}

.m-t-2 {
  margin-block-start: var(--space-sm) !important;
}

.p-t-2 {
  padding-block-start: var(--space-sm) !important;
}

.m-t-3 {
  margin-block-start: var(--space-md) !important;
}

.p-t-3 {
  padding-block-start: var(--space-md) !important;
}

.m-t-4 {
  margin-block-start: var(--space-lg) !important;
}

.p-t-4 {
  padding-block-start: var(--space-lg) !important;
}

.m-t-5 {
  margin-block-start: var(--space-xl) !important;
}

.p-t-5 {
  padding-block-start: var(--space-xl) !important;
}

.m-t-6 {
  margin-block-start: var(--space-2xl) !important;
}

.p-t-6 {
  padding-block-start: var(--space-2xl) !important;
}

.m-t-7 {
  margin-block-start: var(--space-3xl) !important;
}

.p-t-7 {
  padding-block-start: var(--space-3xl) !important;
}

.m-t-8 {
  margin-block-start: var(--space-4xl) !important;
}

.p-t-8 {
  padding-block-start: var(--space-4xl) !important;
}

.m-t-9 {
  margin-block-start: var(--space-5xl) !important;
}

.p-t-9 {
  padding-block-start: var(--space-5xl) !important;
}

.m-t-10 {
  margin-block-start: var(--space-6xl) !important;
}

.p-t-10 {
  padding-block-start: var(--space-6xl) !important;
}

.m-b-0 {
  margin-block-end: 0 !important;
}

.p-b-0 {
  padding-block-end: 0 !important;
}

.m-b-1 {
  margin-block-end: var(--space-xs) !important;
}

.p-b-1 {
  padding-block-end: var(--space-xs) !important;
}

.m-b-2 {
  margin-block-end: var(--space-sm) !important;
}

.p-b-2 {
  padding-block-end: var(--space-sm) !important;
}

.m-b-3 {
  margin-block-end: var(--space-md) !important;
}

.p-b-3 {
  padding-block-end: var(--space-md) !important;
}

.m-b-4 {
  margin-block-end: var(--space-lg) !important;
}

.p-b-4 {
  padding-block-end: var(--space-lg) !important;
}

.m-b-5 {
  margin-block-end: var(--space-xl) !important;
}

.p-b-5 {
  padding-block-end: var(--space-xl) !important;
}

.m-b-6 {
  margin-block-end: var(--space-2xl) !important;
}

.p-b-6 {
  padding-block-end: var(--space-2xl) !important;
}

.m-b-7 {
  margin-block-end: var(--space-3xl) !important;
}

.p-b-7 {
  padding-block-end: var(--space-3xl) !important;
}

.m-b-8 {
  margin-block-end: var(--space-4xl) !important;
}

.p-b-8 {
  padding-block-end: var(--space-4xl) !important;
}

.m-b-9 {
  margin-block-end: var(--space-5xl) !important;
}

.p-b-9 {
  padding-block-end: var(--space-5xl) !important;
}

.m-b-10 {
  margin-block-end: var(--space-6xl) !important;
}

.p-b-10 {
  padding-block-end: var(--space-6xl) !important;
}

.m-x-0 {
  margin-inline: 0 !important;
}

.p-x-0 {
  padding-inline: 0 !important;
}

.m-x-1 {
  margin-inline: var(--space-xs) !important;
}

.p-x-1 {
  padding-inline: var(--space-xs) !important;
}

.m-x-2 {
  margin-inline: var(--space-sm) !important;
}

.p-x-2 {
  padding-inline: var(--space-sm) !important;
}

.m-x-3 {
  margin-inline: var(--space-md) !important;
}

.p-x-3 {
  padding-inline: var(--space-md) !important;
}

.m-x-4 {
  margin-inline: var(--space-lg) !important;
}

.p-x-4 {
  padding-inline: var(--space-lg) !important;
}

.m-x-5 {
  margin-inline: var(--space-xl) !important;
}

.p-x-5 {
  padding-inline: var(--space-xl) !important;
}

.m-x-6 {
  margin-inline: var(--space-2xl) !important;
}

.p-x-6 {
  padding-inline: var(--space-2xl) !important;
}

.m-x-7 {
  margin-inline: var(--space-3xl) !important;
}

.p-x-7 {
  padding-inline: var(--space-3xl) !important;
}

.m-x-8 {
  margin-inline: var(--space-4xl) !important;
}

.p-x-8 {
  padding-inline: var(--space-4xl) !important;
}

.m-x-9 {
  margin-inline: var(--space-5xl) !important;
}

.p-x-9 {
  padding-inline: var(--space-5xl) !important;
}

.m-x-10 {
  margin-inline: var(--space-6xl) !important;
}

.p-x-10 {
  padding-inline: var(--space-6xl) !important;
}

.m-y-0 {
  margin-block: 0 !important;
}

.p-y-0 {
  padding-block: 0 !important;
}

.m-y-1 {
  margin-block: var(--space-xs) !important;
}

.p-y-1 {
  padding-block: var(--space-xs) !important;
}

.m-y-2 {
  margin-block: var(--space-sm) !important;
}

.p-y-2 {
  padding-block: var(--space-sm) !important;
}

.m-y-3 {
  margin-block: var(--space-md) !important;
}

.p-y-3 {
  padding-block: var(--space-md) !important;
}

.m-y-4 {
  margin-block: var(--space-lg) !important;
}

.p-y-4 {
  padding-block: var(--space-lg) !important;
}

.m-y-5 {
  margin-block: var(--space-xl) !important;
}

.p-y-5 {
  padding-block: var(--space-xl) !important;
}

.m-y-6 {
  margin-block: var(--space-2xl) !important;
}

.p-y-6 {
  padding-block: var(--space-2xl) !important;
}

.m-y-7 {
  margin-block: var(--space-3xl) !important;
}

.p-y-7 {
  padding-block: var(--space-3xl) !important;
}

.m-y-8 {
  margin-block: var(--space-4xl) !important;
}

.p-y-8 {
  padding-block: var(--space-4xl) !important;
}

.m-y-9 {
  margin-block: var(--space-5xl) !important;
}

.p-y-9 {
  padding-block: var(--space-5xl) !important;
}

.m-y-10 {
  margin-block: var(--space-6xl) !important;
}

.p-y-10 {
  padding-block: var(--space-6xl) !important;
}

.m-x-auto {
  margin-inline: auto !important;
}

.m-l-auto {
  margin-inline-start: auto !important;
}

.m-r-auto {
  margin-inline-end: auto !important;
}

/* =============================================
   OVERLAYS
   Reusable overlay styles for backgrounds
   Usage: Add .overlay class + modifier to element
============================================= */
/* ---------------------------------------------
   TOKENS
--------------------------------------------- */
:root {
  /* Blend Modes */
  --overlay-blend-mode: multiply;
  /* Alpha Values */
  --overlay-fill-alpha: 0.6;
  --overlay-gradient-alpha: 0.55;
  --overlay-dark-alpha: 0.45;
  --overlay-light-alpha: 0.35;
  /* Gradient Stops */
  --overlay-gradient-start: 0%;
  --overlay-gradient-mid: 50%;
  --overlay-gradient-end: 100%;
  /* Vignette */
  --overlay-vignette-inner: 40%;
  --overlay-vignette-outer: 100%;
}

/* ---------------------------------------------
   BASE OVERLAY CLASS
--------------------------------------------- */
.overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-blend-mode: var(--overlay-blend-mode);
  /* ---------------------------------------------
     FILLS
  --------------------------------------------- */
  /* ---------------------------------------------
     GRADIENTS: VERTICAL (Y-AXIS)
  --------------------------------------------- */
  /* Top to Bottom */
  /* ---------------------------------------------
     GRADIENTS: HORIZONTAL (X-AXIS)
  --------------------------------------------- */
  /* ---------------------------------------------
     FADE GRADIENTS
  --------------------------------------------- */
  /* Fade to Bottom */
  /* Fade to Top */
  /* ---------------------------------------------
     RADIAL GRADIENTS
  --------------------------------------------- */
  /* Center Out */
  /* ---------------------------------------------
     VIGNETTE (Reverse Radial)
  --------------------------------------------- */
  /* ---------------------------------------------
     UTILITIES
  --------------------------------------------- */
}
.overlay--fill-primary {
  background: rgba(var(--color-primary-rgb), var(--overlay-fill-alpha));
}
.overlay--fill-secondary {
  background: rgba(var(--color-secondary-rgb), var(--overlay-fill-alpha));
}
.overlay--fill-dark {
  background: rgba(0, 0, 0, var(--overlay-dark-alpha));
}
.overlay--fill-light {
  background: rgba(255, 255, 255, var(--overlay-light-alpha));
}
.overlay--gradient-y-primary {
  background: linear-gradient(to bottom, rgba(var(--color-primary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--gradient-y-secondary {
  background: linear-gradient(to bottom, rgba(var(--color-secondary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-secondary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--gradient-y-dark {
  background: linear-gradient(to bottom, rgba(0, 0, 0, var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(0, 0, 0, 0) var(--overlay-gradient-end));
}
.overlay--gradient-y-light {
  background: linear-gradient(to bottom, rgba(255, 255, 255, var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(255, 255, 255, 0) var(--overlay-gradient-end));
}
.overlay--gradient-x-primary {
  background: linear-gradient(to right, rgba(var(--color-primary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--gradient-x-secondary {
  background: linear-gradient(to right, rgba(var(--color-secondary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-secondary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--gradient-x-dark {
  background: linear-gradient(to right, rgba(0, 0, 0, var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(0, 0, 0, 0) var(--overlay-gradient-end));
}
.overlay--gradient-x-light {
  background: linear-gradient(to right, rgba(255, 255, 255, var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(255, 255, 255, 0) var(--overlay-gradient-end));
}
.overlay--fade-bottom-primary {
  background: linear-gradient(to bottom, rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-start), rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-mid), rgba(var(--color-primary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-end));
}
.overlay--fade-bottom-dark {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) var(--overlay-gradient-start), rgba(0, 0, 0, 0) var(--overlay-gradient-mid), rgba(0, 0, 0, var(--overlay-dark-alpha)) var(--overlay-gradient-end));
}
.overlay--fade-top-primary {
  background: linear-gradient(to bottom, rgba(var(--color-primary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-mid), rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--fade-top-dark {
  background: linear-gradient(to bottom, rgba(0, 0, 0, var(--overlay-dark-alpha)) var(--overlay-gradient-start), rgba(0, 0, 0, 0) var(--overlay-gradient-mid), rgba(0, 0, 0, 0) var(--overlay-gradient-end));
}
.overlay--radial-primary {
  background: radial-gradient(circle, rgba(var(--color-primary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--radial-secondary {
  background: radial-gradient(circle, rgba(var(--color-secondary-rgb), var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(var(--color-secondary-rgb), 0) var(--overlay-gradient-end));
}
.overlay--radial-dark {
  background: radial-gradient(circle, rgba(0, 0, 0, var(--overlay-gradient-alpha)) var(--overlay-gradient-start), rgba(0, 0, 0, 0) var(--overlay-gradient-end));
}
.overlay--vignette-primary {
  background: radial-gradient(ellipse at center, rgba(var(--color-primary-rgb), 0) var(--overlay-gradient-start), rgba(var(--color-primary-rgb), 0) var(--overlay-vignette-inner), rgba(var(--color-primary-rgb), var(--overlay-gradient-alpha)) var(--overlay-vignette-outer));
}
.overlay--vignette-dark {
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0) var(--overlay-gradient-start), rgba(0, 0, 0, 0) var(--overlay-vignette-inner), rgba(0, 0, 0, var(--overlay-dark-alpha)) var(--overlay-vignette-outer));
}
.overlay--hidden {
  opacity: 0;
  visibility: hidden;
}

.border-top {
  border-top: var(--base-border) !important;
  border-width: 1px !important;
}

.border-bottom {
  border-bottom: var(--base-border) !important;
  border-width: 1px !important;
}

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

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

.border-radius-lg {
  border-radius: var(--radius-lg) !important;
}

.border-radius-xl {
  border-radius: var(--radius-xl) !important;
}

.border-radius-full {
  border-radius: var(--radius-full) !important;
}

.sr-only,
.invisible {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

:root {
  --grid-overlay-color: rgba(255, 0, 90, 0.12);
}

body.show-grid::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9999;
  pointer-events: none;
  box-sizing: border-box;
  width: calc(100% - 2 * var(--layout-spacing-sides));
  max-width: var(--wrapper-max);
  margin-inline: auto;
  background-image: repeating-linear-gradient(to right, var(--grid-overlay-color) 0, var(--grid-overlay-color) var(--grid-overlay-column), transparent var(--grid-overlay-column), transparent calc(var(--grid-overlay-column) + var(--grid-gutter)));
  --grid-overlay-column: calc(
  	(100% - (var(--grid-columns) - 1) * var(--grid-gutter)) /
  		var(--grid-columns)
  );
}

