/*
 * The Typekit service used to deliver this font or fonts for use on websites
 * is provided by Adobe and is subject to these Terms of Use
 * http://www.adobe.com/products/eulas/tou_typekit. For font license
 * information, see the list below.
 *
 * proxima-nova:
 *   - http://typekit.com/eulas/00000000000000007735e603
 *   - http://typekit.com/eulas/00000000000000007758cf7d
 *   - http://typekit.com/eulas/00000000000000007735e60d
 *   - http://typekit.com/eulas/00000000000000007758cf8e
 *   - http://typekit.com/eulas/00000000000000007735e609
 *   - http://typekit.com/eulas/00000000000000007758cf8f
 *   - http://typekit.com/eulas/00000000000000007735e605
 *   - http://typekit.com/eulas/00000000000000007735e60e
 *
 * © 2009-2025 Adobe Systems Incorporated. All Rights Reserved.
 */
/*{"last_published":"2025-05-27 09:33:24 UTC"}*/
@import url("https://p.typekit.net/p.css?s=1&k=mgp3onf&ht=tk&f=139.140.173.174.175.176.25136.25137&a=109283763&app=typekit&e=css");
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/5be242/00000000000000007735e603/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"), url("https://use.typekit.net/af/5be242/00000000000000007735e603/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"), url("https://use.typekit.net/af/5be242/00000000000000007735e603/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/38ea3a/00000000000000007758cf7d/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff2"), url("https://use.typekit.net/af/38ea3a/00000000000000007758cf7d/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("woff"), url("https://use.typekit.net/af/38ea3a/00000000000000007758cf7d/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i7&v=3") format("opentype");
  font-display: swap;
  font-style: italic;
  font-weight: 700;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/e37e5a/00000000000000007735e60d/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("woff2"), url("https://use.typekit.net/af/e37e5a/00000000000000007735e60d/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("woff"), url("https://use.typekit.net/af/e37e5a/00000000000000007735e60d/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n6&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 600;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/0bd0af/00000000000000007758cf8e/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3") format("woff2"), url("https://use.typekit.net/af/0bd0af/00000000000000007758cf8e/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3") format("woff"), url("https://use.typekit.net/af/0bd0af/00000000000000007758cf8e/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i6&v=3") format("opentype");
  font-display: swap;
  font-style: italic;
  font-weight: 600;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/d7ff92/00000000000000007735e609/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"), url("https://use.typekit.net/af/d7ff92/00000000000000007735e609/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"), url("https://use.typekit.net/af/d7ff92/00000000000000007735e609/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/6eb0e3/00000000000000007758cf8f/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff2"), url("https://use.typekit.net/af/6eb0e3/00000000000000007758cf8f/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("woff"), url("https://use.typekit.net/af/6eb0e3/00000000000000007758cf8f/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i4&v=3") format("opentype");
  font-display: swap;
  font-style: italic;
  font-weight: 400;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/26f7ec/00000000000000007735e605/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff2"), url("https://use.typekit.net/af/26f7ec/00000000000000007735e605/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff"), url("https://use.typekit.net/af/26f7ec/00000000000000007735e605/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("opentype");
  font-display: swap;
  font-style: normal;
  font-weight: 500;
  font-stretch: normal;
}
@font-face {
  font-family: "proxima-nova";
  src: url("https://use.typekit.net/af/c7cac4/00000000000000007735e60e/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff2"), url("https://use.typekit.net/af/c7cac4/00000000000000007735e60e/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff"), url("https://use.typekit.net/af/c7cac4/00000000000000007735e60e/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("opentype");
  font-display: swap;
  font-style: italic;
  font-weight: 500;
  font-stretch: normal;
}
.tk-proxima-nova {
  font-family: "proxima-nova", sans-serif;
}
.headerLarge {
  font-size: 40px;
  font-size: 2.5rem;
  line-height: 1;
  font-weight: var(--fw-bold);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.headerMedium {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.headerSmall {
  font-size: 23px;
  font-size: 1.4375rem;
  line-height: 1.30434783;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.buttonText {
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
@keyframes rotate360 {
  to {
    transform: rotate(360deg);
  }
}
:root {
  --module-gap: 6rem;
  --section-padding: 6rem;
  --split-gap: 0;
  --gallery-gap: 24px;
  --media-border-radius: 6px;
  --border-radius: 6px;
  --transition-duration: 290ms;
  --transition-easing: cubic-bezier(0.31, 0, 0.46, 1);
  --size-step-1: 8px;
  --size-step-2: 16px;
  --size-step-3: 24px;
  --size-step-4: 32px;
  --size-step-5: 40px;
  --size-step-6: 48px;
  --size-step-7: 56px;
  --size-step-8: 64px;
  --size-step-9: 72px;
  --size-step-10: 80px;
  --size-step-11: 96px;
  --size-gutter: var(--size-step-4);
  --fs-huge: 3.5rem;
  --fs-big: 2rem;
  --fs-large: 1.5rem;
  --fs-medium: 1.125rem;
  --fs-standard: 1rem;
  --fs-small: 0.875rem;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semi: 600;
  --fw-bold: 700;
  --fw-extraBold: 800;
  --fw-black: 900;
  --color-primary: #6b1937;
  --color-secondary: #123463;
  --color-tertiary: #f3d9da;
  --color-dark: #0e0e2c;
  --color-accent: #31d0aa;
  --color-light: #fafcfe;
  --color-grey: #595959;
  --color-text: #000;
  --color-link: #3537ff;
  --color-background: #fff;
  --color-dagtilbud: #57b4b0;
  --color-voksen: #508c59;
  --color-skole: #e78e3d;
  --color-sundhed: #f6bf3d;
  --color-green: #3f6357;
  --color-terracotta: #b1523d;
  --color-forest: #324f46;
  --color-blue: #61809d;
  --color-yellow: #fcdb86;
  --color-sand: #f6f0e8;
  --plate-color-green: #3f6357;
  --plate-color-terracotta: #b1523d;
  --plate-color-blue: #61809d;
  --plate-color-yellow: #fcdb86;
  --plate-color-sand: #f6f0e8;
  --color-green-display: #3f6357;
  --color-terracotta-display: #b1523d;
  --color-blue-display: #61809d;
  --color-yellow-display: #fcdb86;
  --button-bg-primary: #123463;
  --button-bg-primary-hover: #061222;
  --button-bg-secondary: #f3d9da;
  --button-bg-secondary-hover: #e19fa1;
}
@property --progress {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 0%;
}
:root {
  --theme-bg-color: #4F324B;
  --theme-fg-color: #fff;
  --theme-icon: url(icon-themed-vcfs.png);
  --theme-name: "Videncenter for Sang";
}
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}
/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}
/* Remove default margin in favour of better control in authored CSS */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}
/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}
/* Set core body defaults */
body {
  min-height: 100vh;
  line-height: 1.5;
}
/* Set shorter line heights on headings and interactive elements */
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}
/* Balance text wrapping on headings */
h1,
h2,
h3,
h4 {
  text-wrap: balance;
}
/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}
/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}
/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}
/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}
@media screen {
  /**
 * Swiper 9.3.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 15, 2023
 */
  /* FONT_START */
  @font-face {
    font-family: 'swiper-icons';
    src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
    font-weight: 400;
    font-style: normal;
  }
  /* FONT_END */
  :root {
    --swiper-theme-color: #007aff;
    /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
  }
  .swiper,
  swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    /* Fix of Webkit flickering */
    z-index: 1;
    display: block;
  }
  .swiper-vertical > .swiper-wrapper {
    flex-direction: column;
  }
  .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box;
  }
  .swiper-android .swiper-slide,
  .swiper-wrapper {
    transform: translate3d(0px, 0, 0);
  }
  .swiper-horizontal {
    touch-action: pan-y;
  }
  .swiper-vertical {
    touch-action: pan-x;
  }
  .swiper-slide,
  swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block;
  }
  .swiper-slide-invisible-blank {
    visibility: hidden;
  }
  /* Auto Height */
  .swiper-autoheight,
  .swiper-autoheight .swiper-slide {
    height: auto;
  }
  .swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
  }
  .swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden;
  }
  /* 3D Effects */
  .swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
  }
  .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
  }
  .swiper-3d {
    perspective: 1200px;
  }
  .swiper-3d .swiper-slide,
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom,
  .swiper-3d .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
  .swiper-3d .swiper-slide-shadow,
  .swiper-3d .swiper-slide-shadow-left,
  .swiper-3d .swiper-slide-shadow-right,
  .swiper-3d .swiper-slide-shadow-top,
  .swiper-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  /* CSS Mode */
  .swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    /* For Firefox */
    -ms-overflow-style: none;
    /* For Internet Explorer and Edge */
  }
  .swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
  }
  .swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  .swiper-horizontal.swiper-css-mode > .swiper-wrapper {
    scroll-snap-type: x mandatory;
  }
  .swiper-vertical.swiper-css-mode > .swiper-wrapper {
    scroll-snap-type: y mandatory;
  }
  .swiper-centered > .swiper-wrapper::before {
    content: '';
    flex-shrink: 0;
    order: 9999;
  }
  .swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
  }
  .swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before);
  }
  .swiper-centered.swiper-horizontal > .swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after);
  }
  .swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before);
  }
  .swiper-centered.swiper-vertical > .swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after);
  }
  .swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent;
  }
  .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
  swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader,
  .swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
  .swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
  }
  .swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
  }
  @keyframes swiper-preloader-spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  .swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0);
  }
  .swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
  }
  .swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size);
  }
  .swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size);
  }
  :root {
    --swiper-navigation-size: 44px;
    /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
  }
  .swiper-button-prev,
  .swiper-button-next {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
  }
  .swiper-button-prev.swiper-button-disabled,
  .swiper-button-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-button-prev.swiper-button-hidden,
  .swiper-button-next.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled .swiper-button-prev,
  .swiper-navigation-disabled .swiper-button-next {
    display: none !important;
  }
  .swiper-button-prev:after,
  .swiper-button-next:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
  }
  .swiper-button-prev,
  .swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto;
  }
  .swiper-button-prev:after,
  .swiper-rtl .swiper-button-next:after {
    content: 'prev';
  }
  .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
  }
  .swiper-button-next:after,
  .swiper-rtl .swiper-button-prev:after {
    content: 'next';
  }
  .swiper-button-lock {
    display: none;
  }
  :root {
    /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
  }
  .swiper-pagination {
    position: absolute;
    text-align: center;
    transition: 300ms opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10;
  }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
  }
  .swiper-pagination-disabled > .swiper-pagination,
  .swiper-pagination.swiper-pagination-disabled {
    display: none !important;
  }
  /* Common Styles */
  .swiper-pagination-fraction,
  .swiper-pagination-custom,
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: var(--swiper-pagination-bottom, 8px);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%;
  }
  /* Bullets */
  .swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  }
  button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
  }
  .swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
  }
  .swiper-pagination-bullet:only-child {
    display: none !important;
  }
  .swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
  }
  .swiper-vertical > .swiper-pagination-bullets,
  .swiper-pagination-vertical.swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    transform: translate3d(0px, -50%, 0);
  }
  .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
  }
  .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: 200ms transform, 200ms top;
  }
  .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
  .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms left;
  }
  .swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
  :host(.swiper-horizontal.swiper-rtl) .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms right;
  }
  /* Fraction */
  .swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit);
  }
  /* Progress */
  .swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
    position: absolute;
    /*ADD_HOST*/
  }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  .swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  .swiper-horizontal > .swiper-pagination-progressbar,
  .swiper-pagination-progressbar.swiper-pagination-horizontal,
  .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
  .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  .swiper-vertical > .swiper-pagination-progressbar,
  .swiper-pagination-progressbar.swiper-pagination-vertical,
  .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
  .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
  .swiper-pagination-lock {
    display: none;
  }
  :root {
    /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
  }
  .swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    -ms-touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
  }
  .swiper-scrollbar-disabled > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important;
  }
  .swiper-horizontal > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  .swiper-vertical > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-vertical {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  .swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0;
  }
  .swiper-scrollbar-cursor-drag {
    cursor: move;
  }
  .swiper-scrollbar-lock {
    display: none;
  }
  .swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .swiper-zoom-container > img,
  .swiper-zoom-container > svg,
  .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .swiper-slide-zoomed {
    cursor: move;
    touch-action: none;
  }
  /* a11y */
  .swiper .swiper-notification,
  swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
  }
  .swiper-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
  }
  .swiper-grid > .swiper-wrapper {
    flex-wrap: wrap;
  }
  .swiper-grid-column > .swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column;
  }
  .swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out;
  }
  .swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
  }
  .swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  .swiper-fade .swiper-slide-active,
  .swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper-cube {
    overflow: visible;
  }
  .swiper-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
  }
  .swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  .swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
  }
  .swiper-cube .swiper-slide-active,
  .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper-cube .swiper-slide-active,
  .swiper-cube .swiper-slide-next,
  .swiper-cube .swiper-slide-prev,
  .swiper-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
  }
  .swiper-cube .swiper-slide-shadow-top,
  .swiper-cube .swiper-slide-shadow-bottom,
  .swiper-cube .swiper-slide-shadow-left,
  .swiper-cube .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
  .swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;
  }
  .swiper-cube .swiper-cube-shadow:before {
    content: '';
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px);
  }
  .swiper-flip {
    overflow: visible;
  }
  .swiper-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
  }
  .swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  .swiper-flip .swiper-slide-active,
  .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper-flip .swiper-slide-shadow-top,
  .swiper-flip .swiper-slide-shadow-bottom,
  .swiper-flip .swiper-slide-shadow-left,
  .swiper-flip .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
  .swiper-creative .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
  .swiper-cards {
    overflow: visible;
  }
  .swiper-cards .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
  }
  /*!
 * baguetteBox.js
 * @author  feimosi
 * @version 1.12.0
 * @url https://github.com/feimosi/baguetteBox.js
 */
  #baguetteBox-overlay {
    display: none;
    opacity: 0;
    position: fixed;
    overflow: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000000;
    background-color: #222;
    background-color: rgba(0, 0, 0, 0.8);
    transition: opacity 0.5s ease;
  }
  #baguetteBox-overlay.visible {
    opacity: 1;
  }
  #baguetteBox-overlay .full-image {
    display: inline-block;
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
  }
  #baguetteBox-overlay .full-image figure {
    display: inline;
    margin: 0;
    height: 100%;
  }
  #baguetteBox-overlay .full-image img {
    display: inline-block;
    width: auto;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    vertical-align: middle;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  }
  #baguetteBox-overlay .full-image figcaption {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: center;
    line-height: 1.8;
    white-space: normal;
    color: #ccc;
    background-color: #000;
    background-color: rgba(0, 0, 0, 0.6);
    font-family: sans-serif;
  }
  #baguetteBox-overlay .full-image:before {
    content: "";
    display: inline-block;
    height: 50%;
    width: 1px;
    margin-right: -1px;
  }
  #baguetteBox-slider {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    white-space: nowrap;
    transition: left 0.4s ease, transform 0.4s ease;
  }
  #baguetteBox-slider.bounce-from-right {
    animation: bounceFromRight 0.4s ease-out;
  }
  #baguetteBox-slider.bounce-from-left {
    animation: bounceFromLeft 0.4s ease-out;
  }
  @keyframes bounceFromRight {
    0% {
      margin-left: 0;
    }
    50% {
      margin-left: -30px;
    }
    100% {
      margin-left: 0;
    }
  }
  @keyframes bounceFromLeft {
    0% {
      margin-left: 0;
    }
    50% {
      margin-left: 30px;
    }
    100% {
      margin-left: 0;
    }
  }
  .baguetteBox-button#previous-button,
  .baguetteBox-button#next-button {
    top: 50%;
    top: calc(50% - 30px);
    width: 44px;
    height: 60px;
  }
  .baguetteBox-button {
    position: absolute;
    cursor: pointer;
    outline: none;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 15%;
    background-color: #323232;
    background-color: rgba(50, 50, 50, 0.5);
    color: #ddd;
    font: 1.6em sans-serif;
    transition: background-color 0.4s ease;
  }
  .baguetteBox-button:focus,
  .baguetteBox-button:hover {
    background-color: rgba(50, 50, 50, 0.9);
  }
  .baguetteBox-button#next-button {
    right: 2%;
  }
  .baguetteBox-button#previous-button {
    left: 2%;
  }
  .baguetteBox-button#close-button {
    top: 20px;
    right: 2%;
    right: calc(2% + 6px);
    width: 30px;
    height: 30px;
  }
  .baguetteBox-button svg {
    position: absolute;
    left: 0;
    top: 0;
  }
  /*
    Preloader
    Borrowed from http://tobiasahlin.com/spinkit/
*/
  .baguetteBox-spinner {
    width: 40px;
    height: 40px;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -20px;
  }
  .baguetteBox-double-bounce1,
  .baguetteBox-double-bounce2 {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff;
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    animation: bounce 2s infinite ease-in-out;
  }
  .baguetteBox-double-bounce2 {
    animation-delay: -1s;
  }
  @keyframes bounce {
    0%,
    100% {
      transform: scale(0);
    }
    50% {
      transform: scale(1);
    }
  }
}
img {
  height: auto;
}
html {
  scroll-padding-top: 128px;
}
body {
  font-family: "proxima-nova", Helvetica, sans-serif;
  font-weight: var(--fw-normal);
  background: var(--color-background);
  color: var(--color-text);
  /* &::after {
		content: "";
		display: block;
		mask: url(blob.svg) bottom center no-repeat;
		mask-size: 100% 200%;
		background-color: white;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: -230vh;
		z-index: 100;
		pointer-events: none;
		scale: 2.5;
		transition: top 1.3s ease-in, transform 2.5s ease-in-out, opacity .25s ease-in;
		transform: rotate(85deg);
		opacity: 1;

		@starting-style {
			top: 0;
			transform: rotate(0deg);
			opacity: 0;
		}

	} */
}
.focus-only-link:not(:focus) {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.focus-only-link:focus {
  position: absolute;
  inset: 1rem auto auto 1rem;
  background: var(--color-light);
  z-index: 40;
}
.js-only {
  display: none;
}
share-link {
  position: relative;
  display: flex;
  flex-direction: column;
}
share-link button + ul {
  display: none;
}
share-link button[aria-pressed="true"] + ul {
  display: block;
}
share-link ul {
  position: absolute;
  top: 20px;
  left: 0;
}
share-link ul,
share-link li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.remove-top-spacing {
  padding-block-start: 0 !important;
}
.remove-bottom-spacing {
  padding-block-end: 0 !important;
}
@keyframes revealMedia {
  from {
    opacity: 0;
    clip-path: inset(0% 95% 95% 0);
  }
  to {
    opacity: 1;
    clip-path: inset(0);
  }
}
@view-transition {
  navigation: auto;
}
.placeholder {
  box-sizing: border-box;
  background: var(--bg-color, rgba(0, 100, 200, 0.3));
  min-height: 5em;
  border: 2px dashed rgba(0, 0, 0, 0.7);
  display: flex;
  flex-direction: column;
  padding: 10px;
  text-align: center;
}
.placeholder h3 {
  margin: auto;
  font-size: 1em;
  font-weight: normal;
}
.placeholder h3::before {
  content: "[ ";
}
.placeholder h3::after {
  content: " ]";
}
.text {
  line-height: 1.4;
}
.text > .module + * {
  margin-block-start: 1rem;
}
.text > .module:has(.spacer),
.text > .module:has(.spacer) + .module {
  margin-block-start: 0;
}
.text.contain p,
.text.contain ul,
.text.contain ol,
.text.contain h2,
.text.contain h3,
.text.contain h4 {
  max-inline-size: 75ch;
}
.text.start {
  text-align: start;
}
.text.center {
  text-align: center;
}
.text.end {
  text-align: end;
}
.text blockquote {
  padding-inline-start: 3rem;
  border-inline-start: 0.5em solid;
  font-style: italic;
}
.text a:not(.linkbutton) {
  color: var(--color-link);
}
.text h1,
.text h2.large,
.text h3.large {
  font-size: var(--fs-big);
  letter-spacing: -0.64px;
  margin-block-end: 14px;
}
.text h2,
.text h1.medium,
.text h3.medium {
  font-size: var(--fs-large);
  letter-spacing: -0.48px;
  margin-block-end: 14px;
}
.text h3,
.text h1.small,
.text h2.small {
  font-size: var(--fs-medium);
  margin-block-end: 14px;
}
.text h4 {
  font-size: var(--fs-standard);
  margin-block-end: 14px;
}
.text :where(h1, h2, h3, h4) {
  font-weight: var(--fw-bold);
}
/* .module:has(> .text) {
	.hasInnerGrid();

	.text { grid-column: 1 / -1; }

	@media screen and (min-width: 900px) {
		max-width: 770px;
	}
} */
.linkbutton {
  --progress: 0%;
  --button-bg-color: #324f46;
  --button-bg-hover-color: #578174;
  --button-fg-color: #fafcfe;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
  display: inline-block;
  border: none;
  border-radius: var(--border-radius);
  padding: 0.5em 1.5em;
  text-decoration: none;
  color: var(--button-fg-color);
  background: linear-gradient(90deg, var(--button-bg-hover-color) var(--progress), var(--button-bg-color) 0);
  transition: 400ms ease-in-out;
  transition-property: --progress;
}
.linkbutton:hover,
.linkbutton:focus {
  --progress: 100%;
}
.linkbutton.light {
  --button-bg-color: #fff;
  --button-bg-hover-color: #F0E9DB;
  --button-fg-color: #000;
}
.linkbutton.disabled {
  opacity: 0.5;
  pointer-events: none;
}
.mediablock {
  position: relative;
}
.mediablock video,
.mediablock iframe,
.mediablock img {
  width: 100%;
  height: auto;
  border: none;
}
.mediablock .plyr__video-embed,
.mediablock video,
.mediablock iframe {
  aspect-ratio: 16 / 9;
}
.mediablock.noscale {
  display: inline-block;
}
.mediablock:not(.noscale) picture,
.mediablock:not(.noscale) img,
.mediablock:not(.noscale) video {
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.mediablock.empty,
.mediablock.deleted {
  background-color: #cfcfe4;
  inline-size: 100%;
  aspect-ratio: 5 / 3;
}
.mediablock.deleted {
  background-color: rgba(200, 0, 0, 0.2);
  box-shadow: inset 0 0 0 4px rgba(200, 100, 100, 0.4);
}
.mediablock.masked {
  -webkit-mask: url(mediablock_mask.svg) no-repeat;
          mask: url(mediablock_mask.svg) no-repeat;
}
.mediablock.mirror img,
.mediablock.mirror video {
  transform: scaleX(-1);
}
.mediablock.veiled::before {
  content: "";
  display: block;
  background: var(--veil-color, rgba(245, 245, 245, 0.5));
  opacity: 0.7;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
  z-index: 8;
}
.components .mediablock.empty,
.components .mediablock.deleted {
  max-inline-size: 500px;
}
.video {
  --media-button-icon-width: 70px;
  --media-button-icon-height: 70px;
}
@supports (display: grid) {
  .video {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 20px;
    max-inline-size: var(--layout-column-size, 1376px);
    margin-inline: auto;
  }
  [data-size="full"] .video {
    max-inline-size: 100%;
  }
}
.video > * {
  grid-column: 1 / -1;
}
.video media-controller {
  position: relative;
  aspect-ratio: 16 / 9;
  max-block-size: 100%;
  max-inline-size: 100%;
  display: block;
}
.video media-controller:hover {
  cursor: pointer;
}
.video media-controller:hover media-play-button::after {
  animation-play-state: paused;
  transform: rotate(0.2turn);
}
.video media-control-bar {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.video media-play-button {
  inline-size: 180px;
  block-size: 180px;
  background-color: transparent;
}
.video media-play-button::after {
  position: absolute;
  top: 0%;
  left: 0%;
  content: "";
  inline-size: 100%;
  aspect-ratio: 1;
  display: block;
  background: #fff;
  -webkit-mask: url(logo.svg) center no-repeat;
          mask: url(logo.svg) center no-repeat;
  cursor: pointer;
  transition: transform 30s ease-out;
  animation: rotator 30s linear infinite;
}
.video media-play-button::part(tooltip) {
  visibility: hidden;
}
@keyframes rotator {
  to {
    rotate: 1turn;
  }
}
.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.actions.at-end {
  justify-content: end;
}
.text > .actions,
.text + .actions {
  margin-block-start: 3.5rem;
}
.contactperson {
  display: flex;
  flex-direction: column;
  gap: var(--size-gutter, 1rem);
}
.contactperson .mediablock {
  aspect-ratio: 1 / 1;
  inline-size: 100%;
}
.contactperson .text {
  font-size: var(--fs-small);
}
.contactperson .text > * + * {
  margin-block-start: 0;
}
.contactperson .text > :is(h3, .desc) + :where(.tel, .email) {
  margin-block-start: 1em;
}
.contactperson .text a {
  color: inherit;
}
.contactperson .text .desc {
  font-size: 0.8571em;
  font-weight: var(--fw-bold);
  text-transform: uppercase;
}
.mainnav {
  overflow: hidden;
  overflow: clip;
  font-weight: var(--fw-semi);
  padding-inline: 2px;
  border-radius: 10px;
  background: #f1f1f1;
  display: flex;
  flex-direction: row;
  align-items: center;
  pointer-events: auto;
}
.mainnav > ul {
  display: flex;
  flex-direction: row;
  gap: var(--size-step-2, 1rem);
  list-style: none;
  padding-inline-start: 0;
  margin: 0;
  padding-block: 2px;
  gap: 2px;
}
@container (inline-size < 34rem) {
  .mainnav > ul {
    flex-direction: column;
    gap: 2px;
  }
}
.mainnav > ul ul {
  display: flex;
  flex-direction: row;
  gap: var(--size-step-2, 1rem);
  list-style: none;
  padding-inline-start: 0;
  transition: var(--transition-duration, 200ms) var(--transition-easing, ease-in-out);
  background: var(--color-background);
  flex-direction: column;
  padding-block-start: 0.3rem;
  gap: 0.3rem;
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.mainnav > ul > li {
  position: relative;
}
.mainnav > ul > li::after {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 50%;
  width: 20px;
  height: 4px;
  transform: translateX(-50%);
  background: #b1523d;
  border-radius: 3px;
  transition: bottom 270ms ease-in-out;
}
.mainnav > ul > li:has(> a:hover, > a:focus-visible)::after {
  bottom: 2px;
}
.mainnav > ul li:focus-within > ul,
.mainnav > ul li:hover > ul {
  opacity: 1;
  pointer-events: auto;
}
.mainnav > ul li {
  border-radius: 8px;
}
.mainnav a {
  transition: var(--transition-duration, 200ms) var(--transition-easing, ease-in-out);
  color: black;
  text-decoration: none;
  display: block;
  padding-block: 12px;
  padding-inline: 1.3em;
}
.mainnav a:hover,
.mainnav a:focus {
  text-decoration: none;
}
.mainnav a + .arrow {
  display: none;
}
@media screen and (max-width: 899px) {
  .mainnav {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0px;
    right: 100%;
    width: 100vw;
    height: 100vh;
    background: #fff;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    padding-block-start: 80px;
    transition: right 0.4s ease-in-out;
    overflow-y: auto;
    @starting-style {
      right: 100%;
    }
  }
  .mainnav > ul {
    flex-direction: column;
    width: 100%;
  }
  .mainnav > ul:has(.megamenu.open) > li > a {
    color: #909090;
  }
  .mainnav > ul > li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }
  .mainnav > ul > li a {
    color: black;
  }
  .mainnav > ul > li a + .arrow {
    border: none;
    background: transparent;
    margin: 0 30px 0 0;
    padding: 0;
    cursor: pointer;
    display: block;
    width: 30px;
    height: 30px;
  }
  .mainnav > ul > li a + .arrow::after {
    content: "";
    display: block;
    inline-size: 24px;
    block-size: 24px;
    background: currentcolor;
    -webkit-mask: url('arrow-fat-e.svg') center no-repeat;
            mask: url('arrow-fat-e.svg') center no-repeat;
  }
  .mainnav > ul > li a + .arrow::after {
    transform: rotate(90deg);
    flex-shrink: 0;
    flex-grow: 0;
  }
  .mainnav > ul > li:after {
    content: none;
  }
  .mainnav .arrow {
    transition: var(--transition-duration, 200ms) var(--transition-easing, ease-in-out);
  }
  .mainnav .arrow:has(+ .megamenu.open) {
    transform: rotate(180deg);
  }
  .mainnav li:has(a.selected) .arrow {
    transform: rotate(-90deg);
  }
  .mainnav .megamenu .links a {
    color: black;
  }
}
@media screen and (min-width: 900px) {
  .mainnav {
    margin-inline-start: -113px;
  }
  .mainnav > ul > li > a.selected,
  .mainnav > ul > ul > a[aria-current="page"] {
    color: var(--color-light);
  }
  .mainnav li:has([aria-current]),
  .mainnav li:has(> a.selected) {
    background: #b1523d;
  }
  .mainnav li:has([aria-current])::after,
  .mainnav li:has(> a.selected)::after {
    content: none;
  }
}
.breadcrumb {
  font-size: 12px;
  font-size: 0.75rem;
  /* font-size: var(--fs-small); */
  --breadcrumb-gutter: 0.5em;
  --breadcrumb-separator: "/";
}
.breadcrumb h2 {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.breadcrumb a {
  color: inherit;
  text-decoration: none;
}
.breadcrumb a:hover,
.breadcrumb a:focus {
  text-decoration: underline;
}
.breadcrumb ul {
  display: flex;
  flex-direction: row;
  gap: var(--size-step-2, 1rem);
  list-style: none;
  padding-inline-start: 0;
  margin-block: 13px;
  gap: var(--breadcrumb-gutter, 0.5em);
}
.breadcrumb ul li {
  display: flex;
  color: #595959;
}
.breadcrumb ul li + li::before {
  display: inline;
  content: var(--breadcrumb-separator, ">");
  margin-inline-end: var(--breadcrumb-gutter, 0.5em);
}
@media screen and (min-width: 900px) {
  .breadcrumb ul {
    margin-block: 21px;
  }
}
.expando {
  overflow: hidden;
  overflow: clip;
  position: relative;
  color: #fff;
  background: var(--color-green);
}
.expando summary {
  position: relative;
  padding-block: 1.375rem;
  padding-inline-start: 0.75em;
  cursor: pointer;
  list-style: none;
  transition: var(--expando-duration, 200ms) ease-in-out;
  transition-property: background-size;
}
.expando summary::after {
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url('arrow-e.svg') center no-repeat;
          mask: url('arrow-e.svg') center no-repeat;
}
.expando summary::-webkit-details-marker {
  display: none;
}
.expando summary::after {
  transform: rotate(90deg);
  transition: rotate 180ms ease-in-out;
  position: absolute;
  inset-inline-end: 1rem;
  inset-block-start: 14px;
}
.expando .content {
  padding-block: 0.5em var(--size-gutter);
  padding-inline: 0.75em;
}
.expando .content > .module + * {
  margin-block-start: 1rem;
}
.expando .content > .module:has(.spacer),
.expando .content > .module:has(.spacer) + .module {
  margin-block-start: 0;
}
.expando .content .module {
  padding-inline: 0;
}
.expando[open] {
  /* summary {
			font-weight: var(--fw-bold);
		} */
}
.expando[open] summary::after {
  rotate: -180deg;
}
.expando.is-closing summary::after {
  rotate: 0deg;
}
.expando.is-closing summary {
  transition-delay: 300ms;
}
@media screen and (min-width: 900px) {
  .expando .content {
    padding-inline-start: 0.75em;
  }
}
.teasercard {
  display: flex;
  flex-direction: column;
  gap: var(--size-step-3);
  position: relative;
  padding-block: var(--size-step-3);
  background: var(--card-bg-color, #fff);
  border-top: 1px solid #000;
}
.teasercard::after {
  transition: 500ms ease;
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url(arrow-long.svg) center right no-repeat;
          mask: url(arrow-long.svg) center right no-repeat;
  -webkit-mask-size: 100% 24px;
          mask-size: 100% 24px;
}
.teasercard:hover::after,
.teasercard:focus-visible::after {
  -webkit-mask-image: url(arrow-long-stroked.svg);
          mask-image: url(arrow-long-stroked.svg);
  inline-size: 60px;
}
.teasercard::after {
  margin-block-start: auto;
}
.teasercard header > * {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3;
  font-family: "proxima-nova", Helvetica, sans-serif;
  font-weight: var(--fw-bold);
}
.teasercard a {
  text-decoration: none;
  color: inherit;
}
.teasercard a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.output-error {
  background: #f00C;
  color: #000;
  border: 6px solid #0006;
  padding-inline: 3em;
  padding-block: 2rem;
  word-wrap: break-word;
}
.card {
  display: flex;
  flex-direction: column;
  position: relative;
  text-decoration: none;
  color: #000;
  background: #fff;
}
.card::after {
  transition: 500ms ease;
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url(arrow-long.svg) center right no-repeat;
          mask: url(arrow-long.svg) center right no-repeat;
  -webkit-mask-size: 100% 24px;
          mask-size: 100% 24px;
}
.card:hover::after,
.card:focus-visible::after {
  -webkit-mask-image: url(arrow-long-stroked.svg);
          mask-image: url(arrow-long-stroked.svg);
  inline-size: 60px;
}
.card::after {
  margin-block-start: 30px;
}
.card-slider .card {
  padding: 0;
  background: transparent;
}
.card-slider .card:hover {
  box-shadow: none;
  background: transparent;
}
.plate .card {
  background: transparent;
  color: inherit;
}
.card .mediablock {
  border-radius: var(--border-radius);
  overflow: hidden;
  margin-block-start: auto;
}
.card .mediablock + * {
  margin-block-start: 30px;
}
.card h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3;
  font-family: "proxima-nova", Helvetica, sans-serif;
  font-weight: var(--fw-bold);
}
.card h3 + p {
  margin-block-start: 10px;
}
.card a {
  color: inherit;
  text-decoration: none;
  display: block;
}
.card a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.controls {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  inline-size: 150px;
}
.controls button {
  inline-size: 60px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
  color: inherit;
  position: relative;
}
.controls button::after {
  transition: 500ms ease;
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url(arrow-long.svg) center right no-repeat;
          mask: url(arrow-long.svg) center right no-repeat;
  -webkit-mask-size: 100% 24px;
          mask-size: 100% 24px;
}
.controls button:hover::after,
.controls button:focus-visible::after {
  -webkit-mask-image: url(arrow-long-stroked.svg);
          mask-image: url(arrow-long-stroked.svg);
  inline-size: 60px;
}
.controls button.prev {
  transform: rotate(180deg) translateY(-1px);
}
.controls button.next::after {
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  position: absolute;
  inset: 0;
}
.controls button:hover {
  cursor: pointer;
}
.controls button.swiper-button-disabled {
  opacity: 0.3;
  pointer-events: none;
}
.controls button span {
  display: none;
}
.card,
.card.event,
.card.material,
.card.filterpage,
.card.videnscenter {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  --card-tint-color: var(--category-color, #b1523d);
  --card-faded-color: #f9f5ee;
  --card-hover-color: color-mix(in srgb, #f9f5ee, black 8%);
  padding: 1rem;
  border-radius: var(--border-radius);
  transition: 500ms ease;
  transition-property: background-color, box-shadow;
  background-color: var(--card-faded-color);
}
.card::after,
.card.event::after,
.card.material::after,
.card.filterpage::after,
.card.videnscenter::after {
  content: none;
}
.card:has(a:hover, :focus-visible),
.card.event:has(a:hover, :focus-visible),
.card.material:has(a:hover, :focus-visible),
.card.filterpage:has(a:hover, :focus-visible),
.card.videnscenter:has(a:hover, :focus-visible) {
  background-color: var(--card-hover-color);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
}
.card .meta .icon,
.card.event .meta .icon,
.card.material .meta .icon,
.card.filterpage .meta .icon,
.card.videnscenter .meta .icon,
.card .empty.mediablock,
.card.event .empty.mediablock,
.card.material .empty.mediablock,
.card.filterpage .empty.mediablock,
.card.videnscenter .empty.mediablock {
  background-color: var(--card-tint-color);
}
.card.skole,
.card.event.skole,
.card.material.skole,
.card.filterpage.skole,
.card.videnscenter.skole {
  --card-tint-color: var(--color-skole);
}
.card.dagtilbud,
.card.event.dagtilbud,
.card.material.dagtilbud,
.card.filterpage.dagtilbud,
.card.videnscenter.dagtilbud {
  --card-tint-color: var(--color-dagtilbud);
}
.card.voksen,
.card.event.voksen,
.card.material.voksen,
.card.filterpage.voksen,
.card.videnscenter.voksen {
  --card-tint-color: var(--color-voksen);
}
.card.sundhed,
.card.event.sundhed,
.card.material.sundhed,
.card.filterpage.sundhed,
.card.videnscenter.sundhed {
  --card-tint-color: var(--color-sundhed);
}
.card:not(.skole):not(.dagtilbud):not(.voksen):not(.sundhed)[data-isvidenscenter="True"],
.card.event:not(.skole):not(.dagtilbud):not(.voksen):not(.sundhed)[data-isvidenscenter="True"],
.card.material:not(.skole):not(.dagtilbud):not(.voksen):not(.sundhed)[data-isvidenscenter="True"],
.card.filterpage:not(.skole):not(.dagtilbud):not(.voksen):not(.sundhed)[data-isvidenscenter="True"],
.card.videnscenter:not(.skole):not(.dagtilbud):not(.voksen):not(.sundhed)[data-isvidenscenter="True"] {
  --card-tint-color: #AFEEFF;
}
.card h3,
.card.event h3,
.card.material h3,
.card.filterpage h3,
.card.videnscenter h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.1;
}
.card .mediablock,
.card.event .mediablock,
.card.material .mediablock,
.card.filterpage .mediablock,
.card.videnscenter .mediablock {
  aspect-ratio: 315 / 220;
}
.card .mediablock.empty,
.card.event .mediablock.empty,
.card.material .mediablock.empty,
.card.filterpage .mediablock.empty,
.card.videnscenter .mediablock.empty {
  display: flex;
  place-items: center;
  place-content: center;
}
.card .mediablock.empty::after,
.card.event .mediablock.empty::after,
.card.material .mediablock.empty::after,
.card.filterpage .mediablock.empty::after,
.card.videnscenter .mediablock.empty::after {
  content: "";
  inline-size: 47%;
  aspect-ratio: 1;
  display: block;
  background: #fff;
  -webkit-mask: url(logo.svg) center no-repeat;
          mask: url(logo.svg) center no-repeat;
}
.meta {
  font-size: 14px;
  font-size: 0.875rem;
  display: flex;
  -moz-column-gap: 16px;
       column-gap: 16px;
}
.meta .icon {
  overflow: hidden;
  overflow: clip;
  position: relative;
  inline-size: 48px;
  block-size: 48px;
  border-radius: var(--border-radius);
  grid-row: 1 / 3;
  flex: 0 0 auto;
}
.meta .icon::after {
  position: absolute;
  content: "";
  display: block;
  top: 11px;
  left: 11px;
  right: 11px;
  bottom: 11px;
  background: #fff;
  -webkit-mask: url(generel.svg) center no-repeat;
          mask: url(generel.svg) center no-repeat;
}
.event .meta .icon::after,
.filterpage .meta .icon::after {
  -webkit-mask: url(calendar.svg) center no-repeat;
          mask: url(calendar.svg) center no-repeat;
}
.material .meta .icon::after {
  -webkit-mask: url(book.svg) center no-repeat;
          mask: url(book.svg) center no-repeat;
}
.videnscenter .meta .icon::after {
  -webkit-mask: url(bulb.svg) center no-repeat;
          mask: url(bulb.svg) center no-repeat;
  background: #000;
}
.event-info .meta .icon {
  background-color: var(--category-color, #f6bf3d);
}
.event-info .meta .icon::after {
  -webkit-mask: url(calendar.svg) center no-repeat;
          mask: url(calendar.svg) center no-repeat;
}
.material-info .meta .icon {
  background-color: var(--category-color, #f6bf3d);
}
.material-info .meta .icon::after {
  -webkit-mask: url(book.svg) center no-repeat;
          mask: url(book.svg) center no-repeat;
}
.meta > *:not(.icon) {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  text-transform: capitalize;
}
.meta > *:not(.icon) .area {
  text-transform: capitalize;
}
.meta > *:not(.icon) .date time span {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.pageheader {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
  overflow: hidden;
  max-height: 700px;
  inline-size: 100vw;
  position: relative;
  color: white;
  margin-inline-start: calc(var(--side-gutter) * -1);
  aspect-ratio: 440 / 660;
}
.pageheader > * {
  grid-area: 1 / 1;
}
.pageheader.overlay::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);
  display: block;
  width: 100%;
  height: 100%;
}
.pageheader .mediablock {
  position: absolute;
  inset: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 100%;
}
.pageheader .header-content {
  z-index: 2;
  align-self: flex-end;
  padding: 1rem 1rem 1.625rem 1rem;
  grid-column: 1 / -1;
}
.pageheader .header-content h1 {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.pageheader .header-content h1 + p {
  font-size: 17px;
  font-size: 1.0625rem;
  margin-block-start: 40px;
}
[data-layout="searchpage"] .pageheader .header-content {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
@media screen and (min-width: 900px) {
  .pageheader {
    inline-size: 100%;
    aspect-ratio: 1400 / 700;
    border-bottom-right-radius: var(--media-border-radius);
    border-bottom-left-radius: var(--media-border-radius);
    margin-inline-start: auto;
  }
  [data-layout="searchpage"] .pageheader,
  [data-layout="contentpage"] .pageheader {
    max-height: 110px;
  }
  [data-layout="materialspage"] .pageheader,
  [data-layout="filterpage"] .pageheader,
  [data-layout="indexedextendedeventpage"] .pageheader {
    max-height: 450px;
  }
  .pageheader .header-content {
    grid-column: 1 / span 6;
    padding-inline: 55px 20px;
    padding-block-end: 100px;
  }
  .pageheader .header-content h1 {
    font-size: 40px;
    font-size: 2.5rem;
    line-height: 1;
    font-weight: var(--fw-bold);
    font-family: "proxima-nova", Helvetica, sans-serif;
  }
  .pageheader .header-content h1 + p {
    font-size: 20px;
    font-size: 1.25rem;
    margin-block-start: 25px;
  }
}
.searchheader {
  align-items: center;
}
.searchheader .content > h1 {
  font-size: 23px;
  font-size: 1.4375rem;
  line-height: 1.30434783;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.searchheader .content > h1 + p {
  margin-block-start: 30px;
}
.searchheader .content > p {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.3;
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.searchheader .mediablock {
  border-radius: var(--border-radius);
  overflow: hidden;
  grid-column: 6 / -1;
}
@media screen and (max-width: 899px) {
  .searchheader .mediablock {
    margin-block-start: 20px;
    aspect-ratio: 16 / 9;
  }
}
@media screen and (min-width: 900px) {
  .searchheader {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.25rem;
    align-items: center;
  }
  .searchheader .content {
    padding-inline: 40px 70px;
    grid-column: 1 / 6;
  }
  .searchheader .content > h1 {
    font-size: 40px;
    font-size: 2.5rem;
    line-height: 1;
    font-weight: var(--fw-bold);
    font-family: "proxima-nova", Helvetica, sans-serif;
  }
  .searchheader .mediablock {
    grid-column: 6 / -1;
  }
}
.paging-wrapper {
  --arrow-spacing: 40px;
  width: 100%;
  display: flex;
}
.searchresults .paging-wrapper {
  grid-column: 6 / -1;
}
.paging-wrapper .paging {
  display: flex;
  align-items: center;
}
.paging-wrapper a {
  text-decoration: none;
}
.paging-wrapper a.active {
  font-weight: var(--fw-bold);
  background: #324f46;
  color: white !important;
}
.paging-wrapper a.active + .next {
  color: rgba(0, 0, 0, 0.3);
}
.paging-wrapper a:not(.active, .prev, .next):hover {
  text-decoration: underline;
}
.paging-wrapper a.prev,
.paging-wrapper a.next {
  color: black;
  display: block;
  inline-size: 24px;
}
.paging-wrapper a.prev::after,
.paging-wrapper a.next::after {
  transition: 500ms ease;
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url(arrow-long.svg) center right no-repeat;
          mask: url(arrow-long.svg) center right no-repeat;
  -webkit-mask-size: 100% 24px;
          mask-size: 100% 24px;
}
.paging-wrapper a.prev:hover::after,
.paging-wrapper a.next:hover::after,
.paging-wrapper a.prev:focus-visible::after,
.paging-wrapper a.next:focus-visible::after {
  -webkit-mask-image: url(arrow-long-stroked.svg);
          mask-image: url(arrow-long-stroked.svg);
  inline-size: 60px;
}
.paging-wrapper a.prev span,
.paging-wrapper a.next span {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.paging-wrapper a.prev {
  margin-inline-end: var(--arrow-spacing);
}
.paging-wrapper a.prev:has(+ .active) {
  color: rgba(0, 0, 0, 0.3);
}
.paging-wrapper a.next {
  margin-inline-start: var(--arrow-spacing);
}
.paging-wrapper a:not([class]),
.paging-wrapper a.active {
  display: flex;
  align-items: center;
  justify-content: center;
  color: black;
  inline-size: 34px;
  block-size: 34px;
  border-radius: 8px;
}
.paging-wrapper a.prev {
  transform: rotate(180deg) translateY(-1px);
}
.definition dt {
  color: #b1523d;
  font-weight: var(--fw-bold);
  font-size: var(--fs-huge);
  letter-spacing: -1.12px;
}
.spacer {
  block-size: var(--spacer-size, 10px);
}
.spacer.small {
  --spacer-size: 30px;
}
.spacer.medium {
  --spacer-size: 60px;
}
.spacer.large {
  --spacer-size: 120px;
}
@media (min-width: 900px) {
  .spacer.small {
    --spacer-size: 50px;
  }
  .spacer.medium {
    --spacer-size: 100px;
  }
  .spacer.large {
    --spacer-size: 200px;
  }
}
.components .component .spacer,
.debug .spacer {
  background: hotpink;
}
.sample-panel {
  background: rgba(0, 0, 0, 0.1);
  padding: 10px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
}
.plate {
  padding-block: var(--size-step-2, 2rem);
  background-color: var(--plate-bg-color);
}
.plate.green-sheet {
  color: #fff;
  --plate-bg-color: var(--plate-color-green);
}
.plate.terracotta-sheet {
  color: #fff;
  --plate-bg-color: var(--plate-color-terracotta);
}
.plate.blue-sheet {
  color: #fff;
  --plate-bg-color: var(--plate-color-blue);
}
.plate.yellow-sheet {
  color: #000;
  --plate-bg-color: var(--plate-color-yellow);
}
.plate.sand-sheet {
  color: #000;
  --plate-bg-color: var(--plate-color-sand);
}
.plate[class*="-sheet"] > .text {
  padding-inline: var(--side-gutter);
}
.plate[style*="plate-bg-image"] {
  color: var(--color-light);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-blend-mode: multiply;
  background-color: color-mix(in srgb, var(--plate-bg-color) 75%, transparent);
  background-image: var(--plate-bg-image-fallback);
  background-image: -webkit-image-set(var(--plate-bg-image-fallback) 1x, var(--plate-bg-image) 2x);
  background-image: image-set(var(--plate-bg-image-fallback) 1x, var(--plate-bg-image) 2x);
}
.textwithmedia {
  --threshold: 30rem;
  --align: stretch;
  display: flex;
  align-items: var(--align);
  flex-wrap: wrap;
  gap: 1rem;
  --threshold: 670px;
  align-items: center;
  gap: 44px;
}
.textwithmedia > * {
  flex-grow: 1;
  flex-basis: calc((var(--threshold) - 100%) * 999);
}
.textwithmedia.topped {
  align-items: flex-start;
}
.textwithmedia.topped .text {
  border-block-start: 1px solid currentcolor;
}
.textwithmedia.flipped {
  flex-direction: row-reverse;
}
.textwithmedia.ended > .text {
  text-align: end;
}
.textwithmedia.themed {
  position: relative;
  background-color: var(--theme-bg-color, rebeccapurple);
  color: var(--theme-fg-color, white);
  border-radius: var(--border-radius);
  padding-inline: 1rem;
  padding-block: 5.4rem 4.5rem;
}
.textwithmedia.themed::before {
  content: var(--theme-name, "Custom Theme");
  display: block;
  font-size: var(--fs-small);
  font-weight: var(--fw-semi);
  color: var(--theme-fg-color, white);
  position: absolute;
  padding-inline-start: 30px;
  inset: 1rem auto auto 1rem;
  background: var(--theme-icon, linear-gradient(white, white)) left center no-repeat;
  background-size: 20px 20px;
  opacity: 0.8;
}
.textwithmedia .mediablock {
  overflow: hidden;
  overflow: clip;
  border-radius: var(--media-border-radius);
}
.textwithmedia .text :where(h1, h2, h3):first-child {
  font-size: var(--fs-big);
}
.textwithmedia .text > *:first-child {
  margin-block-start: 5rem;
}
@media screen and (max-width: 669px) {
  [data-size="full"] .textwithmedia > .text {
    padding-inline: var(--side-gutter);
  }
}
@media screen and (min-width: 670px) {
  @supports (display: grid) {
    .textwithmedia {
      display: grid;
      grid-template-columns: repeat(10, 1fr);
      gap: 20px;
      max-inline-size: var(--layout-column-size, 1376px);
      margin-inline: auto;
      max-inline-size: none;
    }
    .textwithmedia .mediablock {
      grid-row: 1;
      grid-column: span 6;
    }
    .textwithmedia .text {
      grid-row: 1;
      grid-column-end: span 4;
      margin-inline: 24px 0;
    }
    [data-size="full"] .textwithmedia {
      display: grid;
      grid-template-columns: repeat(11, 1fr);
      gap: 20px;
      max-inline-size: var(--layout-column-size, 1376px);
      margin-inline: auto;
      max-inline-size: 100%;
    }
    [data-size="full"] .textwithmedia .mediablock {
      grid-column: span 7;
    }
    [data-size="full"] .textwithmedia.flipped .text {
      grid-column: 1 / span 4;
    }
    .textwithmedia.flipped > .mediablock {
      order: 1;
    }
    .textwithmedia.flipped > .text {
      order: -1;
      margin-inline: 0 24px;
    }
    .textwithmedia:not(.flipped) .mediablock.noscale {
      justify-self: end;
    }
    .textwithmedia.flipped .mediablock.noscale {
      justify-self: start;
    }
  }
}
section.themed:has(.textwithmedia).has-logo:not([class*="-sheet"]):has(.module:only-child .textwithmedia) {
  padding-block-start: 200px;
  background: url(logo-dimmed.svg) left -295px top no-repeat;
  background-size: auto 100%;
}
section.themed:has(.textwithmedia).has-logo:not([class*="-sheet"]):has(.module:only-child .themed.textwithmedia) {
  padding-block-start: 88px;
}
section.themed:has(.textwithmedia).has-logo:not([class*="-sheet"]):has(.module:only-child .flipped.textwithmedia) {
  background-position: right -295px top;
}
.split {
  --threshold: 30rem;
  --align: stretch;
  display: flex;
  align-items: var(--align);
  flex-wrap: wrap;
  gap: 1rem;
  gap: var(--split-gap, 10px);
}
.split > * {
  flex-grow: 1;
  flex-basis: calc((var(--threshold) - 100%) * 999);
}
.split[data-direction="vertical"] {
  flex-direction: column;
  flex-wrap: nowrap;
}
.linkcard.center .text {
  text-align: center;
}
.linkcard.center .text .actions {
  justify-content: center;
}
.people .items {
  display: flex;
  gap: var(--size-step-6);
}
.people .items .contactperson {
  flex: 1 20%;
  max-inline-size: 420px;
}
@container module (inline-size > 42rem) {
  .people .items {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
    justify-items: center;
  }
  .people .items .contactperson {
    inline-size: 100%;
  }
}
.columns {
  max-inline-size: var(--module-size);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-inline: var(--side-gutter);
}
.columns .column > .module {
  --side-gutter: 0;
}
.columns.at-end {
  align-items: end;
}
.columns.at-center {
  align-items: center;
}
@container (inline-size > 46rem) {
  .columns {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.25rem;
    grid-template-columns: subgrid;
    grid-column: 1 / -1;
    padding-inline: 32px;
  }
  .columns[data-split="3"] > :first-child {
    grid-column: 1 / span 3;
  }
  .columns[data-split="3"] > :last-child {
    grid-column: 4 / -1;
  }
  .columns[data-split="4"] > :first-child {
    grid-column: 1 / span 4;
  }
  .columns[data-split="4"] > :last-child {
    grid-column: 5 / -1;
  }
  .columns[data-split="5"] > :first-child {
    grid-column: 1 / span 5;
  }
  .columns[data-split="5"] > :last-child {
    grid-column: 6 / -1;
  }
  .columns[data-split="6"] > :first-child {
    grid-column: 1 / span 6;
  }
  .columns[data-split="6"] > :last-child {
    grid-column: 7 / -1;
  }
  .columns[data-split="7"] > :first-child {
    grid-column: 1 / span 7;
  }
  .columns[data-split="7"] > :last-child {
    grid-column: 8 / -1;
  }
  .columns[data-split="8"] > :first-child {
    grid-column: 1 / span 8;
  }
  .columns[data-split="8"] > :last-child {
    grid-column: 9 / -1;
  }
  .columns[data-split="9"] > :first-child {
    grid-column: 1 / span 9;
  }
  .columns[data-split="9"] > :last-child {
    grid-column: 10 / -1;
  }
}
.gallery.grid .images {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  grid-auto-rows: auto;
  justify-content: center;
  grid-gap: var(--gallery-gap);
  padding-block: var(--gallery-gap);
}
.gallery.grid .images > .item {
  display: block;
}
.gallery.grid .images > .item > * {
  inline-size: 100%;
  block-size: 100%;
}
.gallery.grid .images:has(:nth-child(2)) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.gallery.grid .images > :first-child:nth-last-child(3) + .item,
.gallery.grid .images > :first-child:nth-last-child(5) + .item,
.gallery.grid .images > :first-child:nth-last-child(6) + .item,
.gallery.grid .images > :first-child:nth-last-child(6) ~ .item:nth-child(4),
.gallery.grid .images > :first-child:nth-last-child(7) ~ .item:nth-child(4),
.gallery.grid .images > :first-child:nth-last-child(8) ~ .item:nth-child(2),
.gallery.grid .images > :first-child:nth-last-child(8) ~ .item:nth-child(6),
.gallery.grid .images > :first-child:nth-last-child(9) ~ .item:nth-child(6),
.gallery.grid .images > :first-child:nth-last-child(10) ~ .item:nth-child(4),
.gallery.grid .images > :first-child:nth-last-child(10) ~ .item:nth-child(6) {
  grid-row: span 2;
}
.gallery.slider {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
}
.gallery.slider .items {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: 2 / span 10;
}
.gallery.slider .items-wrapper {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: repeat(2, auto);
  grid-auto-flow: column;
  grid-column: 1 / -1;
  -moz-column-gap: 20px;
       column-gap: 20px;
  align-items: end;
}
.gallery.slider .items-wrapper > *.active:is(:first-child) ~ .controls-wrapper button.prev,
.gallery.slider .items-wrapper > *.active:is(:nth-last-child(2)) ~ .controls-wrapper button.next {
  opacity: 0.3;
}
.gallery.slider .controls-wrapper {
  grid-column: 10 / -1;
  grid-row: 2 / -1;
  align-self: self-start;
  text-align: right;
  margin-block-start: 30px;
  translate: 36px;
}
.gallery.slider .controls-wrapper .controls {
  grid-column: 10 / -1;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper) {
  grid-column: span 1;
  grid-row: 1 / span 1;
  display: none;
  position: relative;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper) .mediablock {
  view-transition-name: match-element;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active {
  display: grid;
  grid-template-rows: subgrid;
  grid-template-columns: subgrid;
  grid-column: 1 / span 8;
  grid-row: 1 / span 2;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active .mediablock {
  grid-column: 1 / -1;
  grid-row: 1 / 1;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active p {
  display: block;
  grid-column: 1 / span 4;
  grid-row: 2 / -1;
  margin-block-start: 20px;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active ~ div .mediablock {
  height: 100%;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div,
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div + div {
  display: block;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div {
  height: 60%;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div + div {
  height: 80%;
}
[data-size="full"] .gallery.slider .items-wrapper > *:not(.controls-wrapper).active {
  grid-column: 1 / span 7;
}
[data-size="full"] .gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div + div + div {
  display: block;
}
[data-size="full"] .gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div {
  height: 65.8284%;
}
[data-size="full"] .gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div + div {
  height: 46.5976%;
}
[data-size="full"] .gallery.slider .items-wrapper > *:not(.controls-wrapper).active + div + div + div {
  height: 79.142%;
}
.gallery.slider .items-wrapper > *:not(.controls-wrapper) p {
  display: none;
}
::view-transition-group(*) {
  overflow: hidden;
  overflow: clip;
  animation-duration: 0.5s;
}
@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*) {
    animation-duration: 0s;
  }
}
::view-transition-old(*),
::view-transition-new(*) {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  overflow: clip;
}
.quote {
  color: var(--color-terracotta);
}
.plate .quote {
  color: inherit;
}
.quote .container {
  position: relative;
  padding-block-start: 40px;
  padding-inline-start: calc(120px + var(--side-gutter));
  max-width: 770px;
}
.quote .mediablock {
  position: absolute;
  width: 100px;
  height: auto;
  aspect-ratio: 1 / 1;
  top: 0px;
  left: 0px;
}
.quote .mediablock img,
.quote .mediablock svg,
.quote .mediablock::after {
  width: 100%;
  height: 100%;
  display: inline-block;
}
.quote .mediablock::after {
  font-size: 90px;
  font-size: 5.625rem;
  position: absolute;
  top: 0;
  left: 0;
  content: '\201C';
  text-align: center;
}
.quote blockquote {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.45;
  font-weight: var(--fw-regular);
  display: inline;
  hanging-punctuation: first;
}
.quote blockquote :first-child::before {
  content: open-quote;
  display: inline;
}
.quote blockquote :last-child::after {
  content: close-quote;
  display: inline;
}
.quote .person {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: var(--fw-bold);
  line-height: 1;
  align-self: center;
  display: flex;
}
.quote .person + .content {
  margin-block-start: 50px;
}
.quote .content {
  margin-block-start: 10px;
}
.accordion {
  --progress: 0%;
  --arrowWidth: 75px;
  font-size: var(--fs-medium);
}
.accordion > .header {
  font-size: 23px;
  font-size: 1.4375rem;
  line-height: 1.30434783;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
  margin-block-end: 1.875rem;
}
.accordion .expando {
  border-radius: 2px;
  background-color: #f6f0e8;
  color: #000;
}
section[data-size="layout"].primary .accordion .expando {
  background-color: #fff;
  color: #000;
}
section[data-size="layout"].primary .accordion .expando summary {
  background: linear-gradient(90deg, #fff, #fff) right center / var(--arrowWidth) 100% no-repeat, linear-gradient(90deg, var(--color-terracotta) var(--progress), transparent 0);
}
.accordion .expando summary {
  padding-inline: 2rem calc(4.5rem + var(--arrowWidth));
  color: inherit;
  background: linear-gradient(90deg, #f6f0e8, #f6f0e8) right center / var(--arrowWidth) 100% no-repeat, linear-gradient(90deg, var(--color-terracotta) var(--progress), transparent 0);
  transition: 400ms ease-in-out;
  transition-property: --progress, color;
}
.accordion .expando summary::before {
  content: "";
  inline-size: 12px;
  block-size: 100%;
  background-color: var(--color-terracotta);
  border-radius: inherit;
  display: block;
  position: absolute;
  inset: 0 auto 0 0;
}
.accordion .expando summary::after {
  background-color: #000;
  inset-inline-end: 23px;
  position: absolute;
  top: calc(50% - 12px);
}
.accordion .expando:hover summary,
.accordion .expando[open] summary {
  color: #fff;
  --progress: 100%;
}
.accordion .expando[open] summary::after {
  -webkit-mask-image: url('arrow-e-stroked.svg');
          mask-image: url('arrow-e-stroked.svg');
}
.accordion .expando .content {
  padding-inline: 2rem calc(1.75rem + var(--arrowWidth));
  padding-block: 2.25rem;
}
.accordion .expando + .expando {
  margin-block-start: 2px;
}
.teasercards > header > * {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.teasercards .items {
  margin-block-start: 50px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: var(--size-step-3);
}
.teasercards .items header > * {
  font-size: 23px;
  font-size: 1.4375rem;
  line-height: 1.30434783;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.site-footer {
  inline-size: 100%;
  padding-block: 60px;
  margin-block-start: 50px;
  background-color: var(--color-grey);
}
.site-footer .container {
  display: grid;
  grid-template-columns: 1fr;
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 60px;
  padding-inline: var(--side-gutter);
  color: #fff;
}
.site-footer .container > *,
.site-footer .container a {
  color: inherit;
  text-decoration: none;
}
.site-footer .container .row {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #959595;
}
.site-footer .container .row > *:last-child {
  margin-block-start: 30px;
}
.site-footer .container .cell.text {
  padding-block-end: 60px;
}
.site-footer .container .cell.text h3 {
  font-size: 23px;
  font-size: 1.4375rem;
  line-height: 1.30434783;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
}
.site-footer .container .cell.location p:has(+ a) {
  margin-block-end: 30px;
}
.site-footer .container .cell.location a {
  display: block;
}
.site-footer .container .footer-links ul,
.site-footer .container .footer-links li,
.site-footer .container .some-links ul,
.site-footer .container .some-links li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer .container .footer-links ul li {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}
.site-footer .container .footer-links ul li a {
  display: flex;
  justify-content: space-between;
  padding-block: 15px;
}
.site-footer .container .some-links ul {
  display: flex;
}
.site-footer .container .some-links ul li.facebook a::after {
  -webkit-mask: url('icon-facebook.svg') no-repeat;
          mask: url('icon-facebook.svg') no-repeat;
}
.site-footer .container .some-links ul li.instagram a::after {
  -webkit-mask: url('icon-instagram.svg') no-repeat;
          mask: url('icon-instagram.svg') no-repeat;
}
.site-footer .container .some-links ul li.linkedin a::after {
  -webkit-mask: url('icon-linkedin.svg') no-repeat;
          mask: url('icon-linkedin.svg') no-repeat;
}
.site-footer .container .some-links ul li.youtube a::after {
  -webkit-mask: url('icon-youtube.svg') no-repeat;
          mask: url('icon-youtube.svg') no-repeat;
  width: 28px;
  height: 20px;
}
.site-footer .container .some-links ul li + li {
  margin-inline-start: 1.562rem;
}
.site-footer .container .some-links ul a {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: var(--fw-bold);
  border-radius: 100%;
  overflow: hidden;
  background-color: #4C4C4C;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  transition: background-color 0.25s ease-in-out;
}
.site-footer .container .some-links ul a span {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.site-footer .container .some-links ul a:hover {
  background-color: black;
}
.site-footer .container .some-links ul a::after {
  content: '';
  display: block;
  background-color: white;
  width: 24px;
  height: 24px;
  transition: background-color 0.25s ease-in-out;
}
@media screen and (min-width: 900px) {
  .site-footer {
    display: block;
    margin-block-start: 150px;
    background-image: url(footer-logo.svg);
    background-repeat: no-repeat;
    background-size: 408px;
    background-position: center bottom -485px;
    background-size: 975px auto;
  }
  .site-footer .container {
    grid-template-columns: repeat(12, 1fr);
  }
  .site-footer .container .row {
    grid-column: 1 / -1;
    display: flex;
    flex-direction: row;
  }
  .site-footer .container .row > * {
    width: calc(50% - 15px);
  }
  .site-footer .container .row > *:last-child {
    margin-block-start: 0px;
    margin-inline-end: 30px;
  }
  .site-footer .container .cell.text {
    order: 1;
  }
  .site-footer .container .cell.some-links {
    order: 2;
  }
  .site-footer .container .cell.location {
    grid-column: span 6;
    order: 3;
  }
  .site-footer .container .cell.newsletter {
    grid-column: span 6;
    order: 4;
  }
  .site-footer .container .cell.footer-links {
    grid-column: 1 / -1;
    order: 5;
  }
  .site-footer .container .footer-links ul {
    width: 100%;
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(12, 1fr);
    margin-block-start: 65px;
  }
  .site-footer .container .footer-links ul li {
    grid-column: span 3;
    flex: 1 calc((100% - 40px) / 3);
    min-inline-size: 16rem;
    border-block-start: 1px solid rgba(255, 255, 255, 0.3);
    padding-block-start: 0.5rem;
    position: relative;
  }
  .site-footer .container .footer-links ul li::before {
    transition: opacity 500ms;
    content: "";
    display: block;
    inline-size: 100%;
    block-size: 3px;
    background: #fff;
    position: absolute;
    top: -2px;
    opacity: 0;
  }
  .site-footer .container .footer-links ul li:has(a:hover, a:focus)::before {
    opacity: 1;
  }
  .site-footer .container .footer-links ul a {
    display: block;
    justify-content: space-between;
    align-items: center;
    color: inherit;
    text-decoration: none;
  }
}
.link-grid {
  font-size: var(--fs-medium);
  background-color: #61809d;
  background-image: url(logo-dimmed-tinted.svg);
  background-size: 560px;
  background-position: right -280px bottom -140px;
  background-repeat: no-repeat;
  color: #fff;
  border-radius: var(--border-radius);
  padding-inline: 1rem;
  padding-block: 4rem 160px;
}
@media (min-width: 600px) {
  .link-grid {
    background-position: right -330px top 65px;
    background-size: 660px;
    padding-block-end: 6rem;
  }
}
.link-grid .container {
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
}
.link-grid .links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  max-inline-size: 48rem;
}
.link-grid .links li {
  flex: 1 calc((100% - 40px) / 3);
  min-inline-size: 16rem;
  border-block-start: 1px solid rgba(255, 255, 255, 0.3);
  padding-block-start: 0.5rem;
  position: relative;
}
.link-grid .links li::before {
  transition: opacity 500ms;
  content: "";
  display: block;
  inline-size: 100%;
  block-size: 3px;
  background: #fff;
  position: absolute;
  top: -2px;
  opacity: 0;
}
.link-grid .links li:has(a:hover, a:focus)::before {
  opacity: 1;
}
.link-grid .links a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: inherit;
  text-decoration: none;
}
.link-grid .links a::after {
  transition: 500ms ease;
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url(arrow-long.svg) center right no-repeat;
          mask: url(arrow-long.svg) center right no-repeat;
  -webkit-mask-size: 100% 24px;
          mask-size: 100% 24px;
}
.link-grid .links a:hover::after,
.link-grid .links a:focus-visible::after {
  -webkit-mask-image: url(arrow-long-stroked.svg);
          mask-image: url(arrow-long-stroked.svg);
  inline-size: 60px;
}
@media (min-width: 900px) {
  .link-grid .text {
    max-inline-size: 50%;
  }
  .link-grid .links {
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    gap: 20px;
    max-inline-size: var(--layout-column-size, 1376px);
    margin-inline: auto;
    max-inline-size: 75%;
    margin-inline: 0;
    gap: 3.125rem 20px;
  }
  .link-grid .links li {
    min-inline-size: 0;
    grid-column-end: span 3;
    padding-block-start: 1rem;
  }
  .link-grid .links li a {
    display: block;
  }
  .link-grid .links li a::after {
    margin-block-start: 1rem;
  }
}
.module:has(.link-grid) {
  max-inline-size: none;
}
.card-slider {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
  row-gap: 34px;
}
.card-slider > header {
  display: grid;
  grid-template-columns: subgrid;
  align-items: flex-start;
  grid-column: 1 / -3;
}
.card-slider > header > * + * {
  margin-block-start: 0;
}
.card-slider > header > h1,
.card-slider > header > h2,
.card-slider > header > h3 {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
  font-family: "proxima-nova", Helvetica, sans-serif;
  grid-column: span 9;
}
.card-slider > header .controls {
  grid-column: span 3 / -1;
  margin-inline-start: auto;
  translate: 36px;
}
.card-slider header,
.card-slider .cards {
  grid-column: 1 / -1;
}
.card-slider .card .mediablock {
  aspect-ratio: 1 / 1;
}
.card-slider.indexed .swiper-slide {
  height: auto;
}
.card-slider.indexed .card {
  height: 100%;
}
.card-slider.indexed .card .mediablock {
  aspect-ratio: 315 / 220;
}
.card-slider .swiper-wrapper > *:last-child {
  margin-right: 0px !important;
}
.card-slider .not-enough-slides .swiper-slide {
  flex: 1 0 0;
}
.module:has(.card-slider) {
  max-inline-size: none;
}
.brand {
  display: none;
  flex-direction: row;
  position: relative;
}
.brand .logo {
  display: grid;
  position: relative;
  top: 0;
  width: 875px;
  height: auto;
  aspect-ratio: 1 / 1;
  margin-left: -437.5px;
}
.brand .logo > * {
  grid-area: 1 / 1;
}
.brand .path {
  color: transparent;
}
.brand .items-wrapper {
  overflow: hidden;
  overflow: clip;
  margin-block: 175px;
}
.brand .items {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-inline-start: 100px;
  height: 100%;
}
.brand .items .item {
  border: 1px solid #000;
  display: flex;
  justify-content: space-between;
  width: 53%;
}
.brand .items .item p {
  width: 47%;
}
.listfilter {
  height: 100%;
  background-color: var(--plate-bg-color);
  color: currentColor;
}
.plate .listfilter {
  background-color: inherit;
  color: inherit;
}
.listfilter .expando.static summary {
  cursor: default;
}
.listfilter .expando.static summary::after {
  display: none;
}
.listfilter .expando {
  margin-block-start: 1em;
  background-color: inherit;
  color: inherit;
}
.listfilter .expando.hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.listfilter .expando:first-child {
  margin-block-start: 0;
}
.listfilter .expando .content {
  padding-inline: 0;
  padding-block: var(--size-gutter);
}
.listfilter .expando summary {
  border-bottom: 1px solid currentColor;
  padding-inline: 0;
}
.listfilter .field {
  margin-block-end: 15px;
}
.listfilter .field label::before {
  border-color: black;
}
.listfilter .field label:has(+ input:checked)::before {
  background-color: black;
}
.listfilter .field.skole label::before {
  border-color: #e78e3d;
}
.listfilter .field.skole label:has(+ input:checked)::before {
  background-color: #e78e3d;
}
.listfilter .field.dagtilbud label::before {
  border-color: #57b4b0;
}
.listfilter .field.dagtilbud label:has(+ input:checked)::before {
  background-color: #57b4b0;
}
.listfilter .field.voksen label::before {
  border-color: #508c59;
}
.listfilter .field.voksen label:has(+ input:checked)::before {
  background-color: #508c59;
}
.listfilter .field.sundhed label::before {
  border-color: #f6bf3d;
}
.listfilter .field.sundhed label:has(+ input:checked)::before {
  background-color: #f6bf3d;
}
.listfilter .field label {
  display: flex;
  align-items: center;
}
.listfilter .field label:hover {
  cursor: pointer;
}
.listfilter .field label::before {
  display: block;
  content: " ";
  width: 30px;
  height: 30px;
  border: 2px solid currentColor;
  border-color: inherit;
  border-radius: 2px;
  margin-inline-end: 10px;
  flex-shrink: 0;
  flex-grow: 0;
}
.listfilter .field label:has(+ input[type="radio"])::before {
  border-radius: 100%;
}
.listfilter .field label:has(+ input[type="date"]) {
  margin-block-end: 2px;
}
.listfilter .field label:has(+ input[type="date"])::before {
  content: none;
}
.listfilter .field input {
  display: none;
}
.listfilter .field input[type="date"] {
  display: block;
  width: 100%;
  line-height: 35px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  padding-inline: 5px;
  border-radius: 2px;
}
.listfilter button[type="submit"] {
  inline-size: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  padding-block: 5px;
  margin-block-start: 20px;
}
.listview {
  width: 100%;
  background-color: inherit;
  color: inherit;
  padding-block: 1.8125em;
}
[data-size="full"] .listview {
  max-inline-size: 1440px;
  margin-inline: auto;
}
.listview .listfilter {
  width: 100%;
}
.listview .result {
  width: 100%;
}
.listview .result header {
  padding-inline: 0.75em;
  padding-block: 1.375rem;
  border-bottom: 1px solid currentColor;
  margin-block-end: 2em;
  margin-block-start: 2em;
}
.listview .result .result-wrapper {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 6px;
}
@media screen and (min-width: 768px) {
  .listview {
    padding-inline: 0;
    display: flex;
  }
  .listview .listfilter {
    width: 25%;
  }
  .listview .listfilter + .result {
    padding-inline-start: 20px;
    width: 75%;
  }
  .listview .result {
    grid-template-rows: auto 1fr;
  }
  .listview .result header {
    padding-inline: 0;
    grid-column: 1 / -1;
    margin-block-start: 0;
  }
  .listview .result .result-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
  .listview .card {
    margin-block-end: 0;
  }
}
@media screen and (min-width: 1180px) {
  .listview .result .result-wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}
.event-info-wrapper {
  position: relative;
  margin-block-end: 50px;
}
@media screen and (min-width: 900px) {
  .event-info-wrapper {
    margin-block-end: 0px;
    right: 118px;
    height: 100%;
    max-width: 300px;
    grid-column: 10 / -1;
  }
}
.event-info,
.material-info {
  background: white;
  border-radius: var(--border-radius);
}
.event-info .info-wrapper,
.material-info .info-wrapper {
  overflow: hidden;
  overflow: clip;
  border-radius: var(--border-radius);
  padding: 1rem;
  background-color: #f6f0e8;
}
.event-info .info-wrapper > .linkbutton,
.material-info .info-wrapper > .linkbutton {
  margin-block-start: 1rem;
}
.event-info .meta,
.material-info .meta {
  margin-block-end: 40px;
}
.event-info a[href^="mailto:"],
.material-info a[href^="mailto:"],
.event-info a[href^="tel:"],
.material-info a[href^="tel:"] {
  text-decoration: none;
  color: inherit;
}
.event-info a[href^="mailto:"]:hover,
.material-info a[href^="mailto:"]:hover,
.event-info a[href^="tel:"]:hover,
.material-info a[href^="tel:"]:hover {
  text-decoration: underline;
}
[data-indexed="skole"] .event-info .info-wrapper,
[data-indexed="skole"] .material-info .info-wrapper,
.event-info.skole .info-wrapper,
.material-info.skole .info-wrapper {
  background-color: rgba(231, 142, 61, 0.1);
}
[data-indexed="skole"] .event-info .meta .icon,
[data-indexed="skole"] .material-info .meta .icon,
.event-info.skole .meta .icon,
.material-info.skole .meta .icon {
  background-color: #e78e3d;
}
[data-indexed="voksen"] .event-info .info-wrapper,
[data-indexed="voksen"] .material-info .info-wrapper,
.event-info.voksen .info-wrapper,
.material-info.voksen .info-wrapper {
  background-color: rgba(80, 140, 89, 0.1);
}
[data-indexed="voksen"] .event-info .meta .icon,
[data-indexed="voksen"] .material-info .meta .icon,
.event-info.voksen .meta .icon,
.material-info.voksen .meta .icon {
  background-color: #508c59;
}
[data-indexed="sundhed"] .event-info .info-wrapper,
[data-indexed="sundhed"] .material-info .info-wrapper,
.event-info.sundhed .info-wrapper,
.material-info.sundhed .info-wrapper {
  background-color: rgba(246, 191, 61, 0.1);
}
[data-indexed="sundhed"] .event-info .meta .icon,
[data-indexed="sundhed"] .material-info .meta .icon,
.event-info.sundhed .meta .icon,
.material-info.sundhed .meta .icon {
  background-color: #f6bf3d;
}
[data-indexed="dagtilbud"] .event-info .info-wrapper,
[data-indexed="dagtilbud"] .material-info .info-wrapper,
.event-info.dagtilbud .info-wrapper,
.material-info.dagtilbud .info-wrapper {
  background-color: rgba(87, 180, 176, 0.1);
}
[data-indexed="dagtilbud"] .event-info .meta .icon,
[data-indexed="dagtilbud"] .material-info .meta .icon,
.event-info.dagtilbud .meta .icon,
.material-info.dagtilbud .meta .icon {
  background-color: #57b4b0;
}
.event-info .text,
.material-info .text {
  max-width: 100%;
}
.event-info .contact,
.material-info .contact {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-block-start: 1rem;
}
.event-info .share,
.material-info .share {
  display: flex;
  flex-direction: row;
  gap: 20px;
  margin-block-start: 1rem;
  padding-inline: 1rem;
  background: white;
  align-items: flex-start;
}
.event-info .share button,
.material-info .share button {
  font-size: 13px;
  font-size: 0.8125rem;
  color: #595959;
  text-decoration: none;
  border: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
}
@media screen and (min-width: 900px) {
  .event-info,
  .material-info {
    position: sticky;
    top: 120px;
    width: 100%;
  }
  .modules:has(> .pageheader) .event-info,
  .modules:has(> .pageheader) .material-info {
    margin-block-start: -330px;
  }
}
.page-header {
  --burger-line-ani-y-trans: 10px;
  --burger-line-ani-x-trans: 0px;
  position: fixed;
  display: grid;
  grid-template-columns: min-content auto min-content;
  transition: all 0.25s ease-in-out;
  color: black;
  pointer-events: none;
  padding-inline: var(--side-gutter);
  padding-block-start: 24px;
  width: 100%;
}
.header-in .page-header .logo {
  opacity: 1;
}
.page-header > a {
  color: inherit;
  text-decoration: none;
}
.page-header .logo {
  width: 163px;
  height: auto;
  opacity: 0;
  color: #fff;
  transition: opacity 0.25s ease-in-out;
  pointer-events: auto;
}
.page-header .nav-toggle,
.page-header .search-btn {
  display: flex;
  justify-content: flex-end;
  margin-inline-start: auto;
  margin-block-start: 6px;
  pointer-events: auto;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #f1f1f1;
  border-radius: 8px;
  border: none;
  width: 50px;
  height: 50px;
  overflow: hidden;
}
.page-header .nav-toggle {
  margin-inline-start: 10px;
  background: #f1f1f1;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  padding: 17px 14px;
  transition-property: background, padding;
  transition-duration: 0.25s;
  transition-timing-function: ease-in-out;
}
.page-header .nav-toggle .burger-line {
  transition: var(--transition-duration, 200ms) var(--transition-easing, ease-in-out);
}
.nav-open .page-header .nav-toggle,
.search-open .page-header .nav-toggle {
  position: absolute;
  top: 24px;
  right: 20px;
  background: transparent;
  padding: 17px 18px;
}
.nav-open .page-header .nav-toggle .burger-line:nth-child(1),
.search-open .page-header .nav-toggle .burger-line:nth-child(1) {
  transform: rotate(45deg) translateY(var(--burger-line-ani-y-trans)) translateX(var(--burger-line-ani-x-trans));
}
.nav-open .page-header .nav-toggle .burger-line:nth-child(2),
.search-open .page-header .nav-toggle .burger-line:nth-child(2) {
  display: none;
}
.nav-open .page-header .nav-toggle .burger-line:nth-child(3),
.search-open .page-header .nav-toggle .burger-line:nth-child(3) {
  transform: rotate(-45deg) translateY(calc(var(--burger-line-ani-y-trans) * -1)) translateX(var(--burger-line-ani-x-trans));
  width: 22px;
}
.page-header .nav-toggle span:not(.burger-line) {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
.page-header .nav-toggle span {
  width: 22px;
  height: 2px;
  background-color: black;
}
.page-header .nav-toggle span + span {
  width: 18px;
}
.page-header .nav-toggle span + span + span {
  width: 14px;
}
.page-header .search-btn .searchhelp {
  display: none;
}
.page-header .search-btn form {
  display: flex;
  justify-content: flex-end;
  width: 0;
  transform: translateX(6px);
}
.page-header .search-btn input {
  background: #f1f1f1;
  color: black;
  height: 50px;
  width: 0;
  opacity: 0;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  transition: width 0.25s ease-in-out;
  outline: none;
}
.page-header .search-btn button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #f1f1f1;
  border-radius: 8px;
  border: none;
  width: 50px;
  height: 50px;
  overflow: hidden;
}
.page-header .search-btn button:hover {
  cursor: pointer;
}
.page-header .search-btn button::before {
  content: "";
  display: block;
  inline-size: 22px;
  block-size: 23px;
  background-color: #000;
  -webkit-mask: url('icon-magnify.svg') center no-repeat;
          mask: url('icon-magnify.svg') center no-repeat;
}
.page-header .search-btn button:hover::after {
  bottom: 2px;
}
.page-header .search-btn button span {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}
@media screen and (max-width: 899px) {
  .page-header {
    z-index: 50;
  }
  .nav-open .page-header .mainnav {
    right: 0%;
  }
  .nav-open .page-header .search-btn {
    display: none;
  }
  .page-header .searchhelp {
    display: none;
  }
  .search-open .page-header .mainnav {
    display: none;
  }
  .search-open .page-header .search-btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 100vw;
    position: absolute;
    top: 0;
    height: calc(100vh);
    margin: 0;
    padding-top: 80px;
    padding-inline: 27px;
  }
  .search-open .page-header .search-btn form,
  .search-open .page-header .search-btn input {
    width: 100%;
    opacity: 1;
  }
  .search-open .page-header .search-btn form {
    flex-direction: column;
    width: 85%;
    justify-content: flex-start;
  }
  .search-open .page-header .search-btn input {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .search-open .page-header .search-btn .searchhelp {
    font-size: 14px;
    font-size: 0.875rem;
    position: relative;
    display: block;
    width: 100%;
    padding-block-start: 30px;
  }
  .search-open .page-header .search-btn .searchhelp::before {
    position: absolute;
    content: "";
    display: block;
    inline-size: calc(100vw - 54px);
    border-top: 1px solid #D9D9D9;
    left: 0;
    top: 0px;
  }
}
@media screen and (min-width: 900px) {
  .page-header {
    align-items: center;
    justify-content: space-between;
    padding-inline: calc(var(--side-gutter) + 40px);
    padding-block-start: 25px;
    z-index: 50;
    /* html:not(.header-in).search-open & .search-btn button {
			background: @namedColor[@forest];
			color: @white;
		} */
  }
  [data-layout] .page-header {
    position: fixed;
  }
  .page-header .mainnav {
    display: block;
  }
  .page-header .nav-toggle {
    display: none;
  }
  .page-header .nav-toggle,
  .page-header .search-btn {
    margin-block-start: 0;
  }
  .page-header .search-btn {
    @starting-style {
      width: 50px;
    }
    transition: width 0.25s ease-in-out;
  }
  .page-header .search-btn button::after {
    content: '';
    position: absolute;
    bottom: -12px;
    left: 50%;
    width: 20px;
    height: 4px;
    transform: translateX(-50%);
    background: #b1523d;
    border-radius: 3px;
    transition: bottom 270ms ease-in-out;
  }
  .search-open .page-header .mainnav {
    display: none;
  }
  .search-open .page-header .search-btn {
    width: 100%;
    grid-column: 2 / -1;
  }
  .search-open .page-header .search-btn form {
    width: 100%;
  }
  .search-open .page-header .search-btn input {
    width: 100%;
    opacity: 1;
    padding-inline: 15px;
  }
  .search-open .page-header .search-btn button {
    background: #b1523d;
    color: #f1f1f1;
    border: 2px solid #f1f1f1;
    width: 50px;
    height: 50px;
  }
  .search-open .page-header .search-btn button:before {
    background-color: white;
  }
  html:not(.header-in).search-open body:has(.megamenu:target) .page-header .search-btn button,
  html:not(.header-in).search-open body:has(.megamenu:target) .page-header .search-btn input,
  html:not(.header-in).search-open body:has(.megamenu.open) .page-header .search-btn button,
  html:not(.header-in).search-open body:has(.megamenu.open) .page-header .search-btn input {
    background: #f1f1f1;
    color: black;
  }
  body:has(.megamenu.open) .page-header .logo,
  body:has(.megamenu:target) .page-header .logo {
    opacity: 1;
    color: black;
  }
}
.cta-links > * {
  width: 100%;
  align-items: stretch;
}
.cta-links .mediablock {
  overflow: hidden;
  overflow: clip;
  aspect-ratio: 690 / 540;
  border-radius: var(--border-radius);
}
.cta-links .links {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding-inline: 1rem;
}
.cta-links .links h2 {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
  margin-block: 30px 30px;
}
.cta-links .links a {
  position: relative;
  text-decoration: none;
  color: black;
  padding-block: 15px 20px;
  border-top: 1px solid rgba(0, 0, 0, 0.3);
}
.cta-links .links a::after {
  transition: 500ms ease;
  transition-property: inline-size, -webkit-mask-size, -webkit-mask-image;
  transition-property: mask-size, inline-size, mask-image;
  transition-property: mask-size, inline-size, mask-image, -webkit-mask-size, -webkit-mask-image;
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url(arrow-long.svg) center right no-repeat;
          mask: url(arrow-long.svg) center right no-repeat;
  -webkit-mask-size: 100% 24px;
          mask-size: 100% 24px;
}
.cta-links .links a:hover::after,
.cta-links .links a:focus-visible::after {
  -webkit-mask-image: url(arrow-long-stroked.svg);
          mask-image: url(arrow-long-stroked.svg);
  inline-size: 60px;
}
.cta-links .links a::after {
  margin-block-start: 15px;
}
.cta-links .links a::before {
  transition: opacity 500ms;
  content: "";
  display: block;
  inline-size: 100%;
  block-size: 3px;
  background: currentcolor;
  position: absolute;
  top: -2px;
  opacity: 0;
}
.cta-links .links a:hover::before,
.cta-links .links a:focus-visible::before {
  opacity: 1;
}
.cta-links .links a:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 900px) {
  .cta-links {
    display: flex;
    flex-direction: row;
    gap: 20px;
  }
  .cta-links > * {
    width: 50%;
    aspect-ratio: none;
  }
  .cta-links .links {
    padding-inline: 0;
    border-top: 1px solid black;
    border-bottom: none;
  }
  .cta-links .links h2 {
    margin-inline: 30px;
    margin-block-start: 60px;
    margin-block-end: auto;
  }
  .cta-links .links a {
    border-top: 1px solid rgba(0, 0, 0, 0.3);
  }
  .cta-links .links a:first-of-type {
    margin-block-start: 60px;
  }
  .cta-links .links a:last-child {
    padding-block-end: 0;
    border-bottom: none;
  }
}
.module:has(.cta-links) {
  max-inline-size: none;
}
.megamenu {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.25rem;
  grid-template-rows: 0fr;
  position: fixed;
  top: 0;
  left: 0;
  background: white;
  width: 100%;
  height: 0;
  transition: all 0.5s ease;
  overflow: hidden;
  @starting-style {
    grid-template-rows: 0fr;
  }
}
@media screen and (max-width: 899px) {
  .megamenu {
    position: relative;
    width: 100%;
    grid-template-columns: 1fr;
    display: none;
    flex-direction: column;
    transition: height 0.5s ease;
  }
  .megamenu:target,
  .megamenu.open {
    display: grid;
    grid-template-rows: 1fr;
    height: auto;
    padding-block: 20px;
    padding-inline-start: 20px;
    box-shadow: none;
    opacity: 1;
    @starting-style {
      height: 0;
    }
  }
  .megamenu .card {
    display: none;
  }
}
@media screen and (min-width: 900px) {
  .megamenu {
    padding-block: 0;
    padding-inline: 20px;
    align-items: start;
    z-index: -1;
  }
  .megamenu .links {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.25rem;
    grid-template-columns: subgrid;
    grid-column: 1 / 7;
    align-content: baseline;
  }
  .megamenu .links > * {
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    grid-column: span 3;
    padding-block: 15px 30px;
    border-top: 1px solid rgba(0, 0, 0, 0.3);
    text-decoration: none;
    color: currentColor;
  }
  .megamenu .links > *:last-child {
    grid-column: 4 / -1;
  }
  .megamenu .links > *::before {
    transition: opacity 500ms;
    content: "";
    display: block;
    inline-size: 100%;
    block-size: 3px;
    background: currentcolor;
    position: absolute;
    top: -2px;
    left: 0px;
    opacity: 0;
  }
  .megamenu .links > *:hover::before,
  .megamenu .links > *:focus-visible::before {
    opacity: 1;
  }
  .megamenu .card {
    overflow: hidden;
    overflow: clip;
    border-radius: var(--border-radius);
    grid-column: 8 / -1;
    background-color: #b1523d;
    color: white;
  }
  .megamenu .card::after {
    display: none;
  }
  .megamenu .card .mediablock {
    overflow: hidden;
    overflow: clip;
    max-height: 200px;
    margin: 0;
  }
  .megamenu .card .linkbutton {
    color: #fff;
    display: inline-block;
    align-self: flex-start;
  }
  .megamenu .card .linkbutton.light {
    color: #000;
  }
  .megamenu .card .text {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.5rem;
  }
  .megamenu .card .text h4 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: var(--fw-semi);
  }
  .megamenu .card .mediablock + .text {
    padding-block-start: 0;
  }
  .megamenu:target,
  .megamenu.open {
    grid-template-rows: 1fr;
    height: auto;
    padding-block: 175px 75px;
    box-shadow: 0px 18px 100px -8px rgba(0, 0, 0, 0.65);
    opacity: 1;
    @starting-style {
      height: 0;
    }
  }
}
.related {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.related > header h2 {
  font-size: 23px;
  font-size: 1.4375rem;
  line-height: 1.30434783;
  font-weight: var(--fw-semi);
  font-family: "proxima-nova", Helvetica, sans-serif;
  letter-spacing: -0.48px;
}
.related .items {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 0;
  list-style: none;
}
@media screen and (min-width: 900px) {
  .related .items {
    display: flex;
    flex-direction: row;
    gap: 4px;
    margin-block: 0;
  }
}
.related .items > * {
  flex: 1;
  container-name: card-item;
  container-type: inline-size;
}
.related .card {
  block-size: 100%;
}
@container card-item (inline-size > 500px) {
  .related .card {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 2fr 1fr;
  }
  .related .card .meta {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
  }
  .related .card > h2 {
    grid-column: 1;
    grid-row: 2;
  }
  .related .card .mediablock {
    grid-column: 2;
    grid-row: 1 / -1;
  }
}
.frontpageheader {
  overflow: hidden;
  overflow: clip;
  position: relative;
  border-bottom-right-radius: var(--media-border-radius);
  border-bottom-left-radius: var(--media-border-radius);
  width: 100vw;
  margin-inline-start: calc(var(--side-gutter) * -1);
}
.frontpageheader .slide {
  aspect-ratio: 440 / 660;
  color: #fff;
}
.frontpageheader .slide .mediablock {
  block-size: 100%;
  inline-size: 100%;
  aspect-ratio: 440 / 660;
}
.frontpageheader .slide .content {
  position: absolute;
  bottom: 55px;
  padding-inline: 20px;
  display: flex;
  flex-direction: row;
  gap: 30px;
  flex-wrap: wrap;
  z-index: 5;
  color: #fff;
}
.frontpageheader .slide .content h3 {
  font-size: 30px;
  font-size: 1.875rem;
  font-weight: var(--fw-bold);
}
.frontpageheader .slide .content .linkbutton {
  width: -moz-fit-content;
  width: fit-content;
  white-space: nowrap;
}
.frontpageheader .slide .content p {
  display: none;
}
.frontpageheader .slide .content .wrapper {
  display: flex;
  gap: 30px;
  align-items: flex-start;
}
.frontpageheader .mediablock::after {
  display: block;
  content: " ";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 1;
}
.frontpageheader .links {
  z-index: 5;
  display: flex;
  flex-direction: column;
}
.frontpageheader .links > * {
  font-size: 23px;
  font-size: 1.4375rem;
  font-weight: var(--fw-semibold);
  width: 100%;
  height: 88px;
  padding-inline: 20px;
  text-decoration: none;
  color: #000;
  background-color: #EFDBB2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
}
.frontpageheader .links > * div.arrow::after {
  content: "";
  display: block;
  inline-size: 24px;
  block-size: 24px;
  background: currentcolor;
  -webkit-mask: url('arrow-e.svg') center no-repeat;
          mask: url('arrow-e.svg') center no-repeat;
}
.frontpageheader .links > * div.arrow::after {
  transform: rotate(90deg);
  flex-shrink: 0;
  flex-grow: 0;
}
.frontpageheader .controls {
  position: absolute;
  bottom: 235px;
  right: 20px;
  z-index: 5;
}
.frontpageheader .controls button::after {
  background-color: #fff;
}
@media screen and (max-width: 899px) {
  .frontpageheader .links > * > div > div {
    display: none;
  }
}
@media screen and (min-width: 900px) {
  .frontpageheader {
    width: initial;
    margin-inline-start: 0;
  }
  .frontpageheader .slide {
    position: relative;
    aspect-ratio: 1400 / 850;
    max-height: 850px;
    width: 100%;
  }
  .frontpageheader .slide .mediablock {
    aspect-ratio: 1400 / 850;
  }
  .frontpageheader:has(.links a:hover) .content,
  .frontpageheader:has(.links a:hover) .controls {
    bottom: 370px;
  }
  .frontpageheader .slide .content {
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out;
    transition-duration: 1000ms;
    position: absolute;
    bottom: 0px;
    padding-inline: 0;
    margin-inline-start: 40px;
    display: flex;
    flex-direction: row;
    gap: 30px;
    flex-wrap: wrap;
    width: 50%;
    opacity: 0;
  }
  .frontpageheader .slide .content h3 {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: var(--fw-bold);
  }
  .frontpageheader .slide .content p {
    display: inline-block;
  }
  .frontpageheader .swiper-slide-active .slide .content {
    opacity: 1;
    bottom: 230px;
  }
  .frontpageheader .links {
    position: absolute;
    bottom: 0px;
    width: 100%;
    gap: 1px;
    flex-direction: row;
    align-items: flex-end;
  }
  .frontpageheader .links > * {
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out;
    width: 100%;
    width: 50%;
    height: 120px;
    padding-inline: 50px;
    padding-block: 43px;
    color: #000;
    background-color: rgba(239, 219, 178, 0.6);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    flex-direction: row;
  }
  .frontpageheader .links > * div.arrow::after {
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out;
    transform: rotate(45deg);
  }
  .frontpageheader .links > *:hover {
    height: 260px;
  }
  .frontpageheader .links > *:hover div.arrow {
    background-color: #fff;
  }
  .frontpageheader .links > *:hover div.arrow::after {
    transform: rotate(0deg);
  }
  .frontpageheader .links > *:hover > div > div {
    opacity: 1;
  }
  .frontpageheader .links > * > div {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    justify-items: center;
  }
  .frontpageheader .links > * > div > div {
    font-size: 17px;
    font-size: 1.0625rem;
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out;
    display: block;
    opacity: 0;
    flex-direction: row;
    margin-block-start: 20px;
  }
  .frontpageheader .links > * > div > div p + p {
    margin-block-start: 1rem;
  }
  .frontpageheader .links > * > div.arrow {
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
    flex-grow: 0;
    width: 40px;
    height: 40px;
    margin-inline-start: 40px;
    display: flex;
    align-items: center;
    align-self: flex-start;
    justify-content: center;
  }
  .frontpageheader .links > * > div.arrow::after {
    content: "";
    display: block;
    inline-size: 24px;
    block-size: 24px;
    background: currentcolor;
    -webkit-mask: url('arrow-e.svg') center no-repeat;
            mask: url('arrow-e.svg') center no-repeat;
  }
  .frontpageheader .controls {
    bottom: 220px;
    right: 4px;
  }
  .frontpageheader .controls button::after {
    background-color: #fff;
  }
  .frontpageheader .controls {
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: ease-in-out;
    transition-duration: 1000ms;
    opacity: 1;
  }
  .frontpageheader:has(.links *:hover) .slide .content,
  .frontpageheader:has(.links *:hover) .controls {
    opacity: 0;
  }
}
.downloads .package {
  border-bottom: 1px solid #000;
  margin: 0 0 38px 0;
  padding: 0 0 50px 0;
}
.downloads .package:last-child {
  border-bottom: none;
}
.downloads .package h4 {
  margin: 0 0 17px 0;
  width: 100%;
}
.downloads .package .content {
  display: flex;
  flex-direction: column;
}
.downloads .package a {
  flex-grow: 0;
  flex-shrink: 0;
  align-self: flex-start;
  margin-block-start: 17px;
}
@media screen and (min-width: 900px) {
  .downloads .package .content {
    flex-direction: row;
  }
  .downloads .package a {
    margin-inline-start: 90px;
    margin-block-start: 0;
  }
}
.searchresults {
  position: relative;
  background-color: #f6f0e8;
  padding: 17px 35px;
  border-radius: var(--border-radius);
  margin-block-start: 30px;
  overflow: hidden;
}
.searchresults::before {
  content: '';
  display: block;
  width: 67px;
  height: 67px;
  position: absolute;
  top: 55px;
  left: 40px;
  background-color: #b1523d;
  -webkit-mask: url(logo.svg) center no-repeat;
          mask: url(logo.svg) center no-repeat;
  z-index: 1;
}
.searchresults::after {
  content: '';
  display: block;
  width: 330px;
  height: 485px;
  position: absolute;
  bottom: 0px;
  left: 0px;
  background-color: #fff;
  -webkit-mask: url(logo.svg) top right no-repeat;
          mask: url(logo.svg) top right no-repeat;
  -webkit-mask-size: 200%;
          mask-size: 200%;
  z-index: 1;
}
.searchresults ul,
.searchresults ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.searchresults ul,
.searchresults .paging {
  position: relative;
  z-index: 5;
}
.searchresults li {
  border-bottom: 1px solid #000;
}
.searchresults li:first-child .item {
  margin-block-start: 125px;
}
.searchresults li:last-child {
  border-bottom: none;
}
.searchresults .paging {
  grid-column: 1 / -1;
  margin-block-start: 2rem;
}
.searchresults .item {
  position: relative;
  margin: 38px 0;
  text-decoration: none;
  color: #000;
}
.searchresults .item h4 {
  margin: 0 0 17px 0;
  width: 100%;
}
.searchresults .item .content {
  display: flex;
  flex-direction: column;
}
.searchresults .item .linkbutton {
  flex-grow: 0;
  flex-shrink: 0;
  align-self: flex-start;
  margin-block-start: 17px;
}
.searchresults .item .linkbutton::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 900px) {
  .searchresults {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.25rem;
    margin-block-start: 60px;
  }
  .searchresults ul,
  .searchresults .paging {
    grid-column: 6 / -1;
  }
  .searchresults li:first-child .item {
    margin-block-start: 38px;
  }
  .searchresults .item .content {
    flex-direction: row;
    justify-content: space-between;
  }
  .searchresults .item .content .text + .linkbutton {
    margin-inline-start: 90px;
  }
  .searchresults .item .content .linkbutton {
    min-width: -moz-fit-content;
    min-width: fit-content;
    margin-block-start: 0;
  }
  .searchresults .item {
    margin-block: 38px;
  }
}
.definitions .definition {
  text-align: center;
  max-inline-size: 100ch;
}
.definitions .definition dt {
  font-size: var(--fs-huge);
}
.definitions .definition dd {
  margin-block-start: 1.5em;
}
@property --rotation {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: true;
}
@media (min-width: 1380px) {
  .rotator {
    display: flex;
    padding-block-start: 15vh;
    padding-block-end: 35vh;
  }
  .rotator::before {
    content: "";
    display: block;
    block-size: 80vh;
    aspect-ratio: 203 / 191;
    position: sticky;
    top: 15vh;
    background-image: url(rotator-image.svg), radial-gradient(50% 50% at 50% 50%, #c2f6ee 0%, #fff 70%);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100%;
    translate: -50%;
    rotate: var(--rotation);
    animation: rotate 3s linear;
    animation-timeline: view(block -30%);
    animation-range: cover;
  }
  .rotator dl {
    flex: 1;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 34vh;
    padding-block-start: 10vh;
    translate: -25%;
  }
  .rotator dl > div {
    display: flex;
    gap: 2em;
    justify-content: space-between;
  }
  .rotator dl > div dd {
    animation: show-appear linear both;
    animation-timeline: view(block);
    animation-range: contain;
  }
  .rotator dt {
    animation: grow-appear ease-in-out both;
    animation-timeline: view(block);
    animation-range: cover;
    flex: 0;
  }
  .rotator dd {
    margin-inline: 1em;
    inline-size: 45ch;
    text-align: start;
  }
}
@keyframes rotate {
  100% {
    --rotation: -240deg;
  }
}
@keyframes grow-appear {
  0% {
    font-size: 1rem;
  }
  15% {
    font-size: 3rem;
  }
  75% {
    font-size: 3rem;
  }
  100% {
    font-size: 2rem;
  }
}
@keyframes show-appear {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.newsletter .mailchimp-form {
  margin-block-start: 42px;
  display: flex;
  flex-direction: column;
}
.newsletter .mailchimp-form.submitted {
  display: none;
}
.newsletter .mailchimp-form .fields {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
.newsletter .mailchimp-form .fields select {
  width: 100%;
  background: transparent;
  border: 1px solid #fff;
  margin-block-end: 24px;
}
.newsletter .mailchimp-form .fields input {
  width: 50%;
  background: transparent;
  border-bottom: 4px solid #fff;
  width: calc(50% - 8px);
}
.newsletter .mailchimp-form input,
.newsletter .mailchimp-form select,
.newsletter .mailchimp-form button {
  font-weight: var(--fw-regular);
  border: none;
  margin: 0px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #fff;
  padding-block: 9px;
  padding-inline: 10px;
  border-radius: 0px;
}
.newsletter .mailchimp-form input::-moz-placeholder, .newsletter .mailchimp-form select::-moz-placeholder, .newsletter .mailchimp-form button::-moz-placeholder {
  color: #fff;
}
.newsletter .mailchimp-form input::placeholder,
.newsletter .mailchimp-form select::placeholder,
.newsletter .mailchimp-form button::placeholder {
  color: #fff;
}
.newsletter .mailchimp-form button {
  margin-block-start: 24px;
  cursor: pointer;
  color: #000;
  border-radius: var(--border-radius);
  padding-inline: 24px;
}
.newsletter .receipt {
  margin-block-start: 24px;
  display: none;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  @starting-style {
    opacity: 0;
  }
}
.newsletter .receipt.visible {
  display: block;
  opacity: 1;
}
@media screen and (min-width: 900px) {
  .newsletter .mailchimp-form {
    flex-direction: row;
    align-items: flex-end;
  }
  .newsletter .mailchimp-form .fields input + input {
    margin-inline-start: 16px;
  }
  .newsletter .mailchimp-form button {
    margin-inline-start: 24px;
  }
}
:root {
  --side-gutter: 20px;
  --content-size: 676px;
  --layout-column-size: calc(1440px - 2 * var(--side-gutter));
}
body > header {
  position: relative;
}
.module {
  margin-inline: auto;
  box-sizing: content-box;
  container: module / inline-size;
  /* &:has(.constrained) {
		.grid();

		> * {
			grid-column: 1 / -1;
		}
	} */
}
[data-layout] main {
  /* overflow: auto; */
  padding-inline: var(--side-gutter);
  overflow-x: clip;
}
[data-layout] main > article > section:not(.event-info),
[data-layout] main > section {
  padding-block: var(--section-padding, 4rem);
  padding-block-start: 0;
  container: section / inline-size;
}
[data-layout] main > article > section:not(.event-info) > .module + *,
[data-layout] main > section > .module + * {
  margin-block-start: var(--module-gap, 2rem);
}
[data-layout] main > article > section:not(.event-info) > .module:has(.spacer),
[data-layout] main > section > .module:has(.spacer),
[data-layout] main > article > section:not(.event-info) > .module:has(.spacer) + .module,
[data-layout] main > section > .module:has(.spacer) + .module {
  margin-block-start: 0;
}
[data-layout] main > article > section:not(.event-info).plate,
[data-layout] main > section.plate {
  border-radius: var(--border-radius);
  padding-inline: var(--side-gutter);
}
[data-layout] main > article > section:not(.event-info):not(.plate):has( + section:not(.plate)),
[data-layout] main > section:not(.plate):has( + section:not(.plate)) {
  padding-block-end: var(--module-gap, 2rem);
}
[data-layout] main > article > section:not(.event-info):not(.plate):has( + section:not(.plate)) + section:not(.plate),
[data-layout] main > section:not(.plate):has( + section:not(.plate)) + section:not(.plate) {
  padding-block-start: 0;
}
[data-layout] main > article > section:not(.event-info) > :where(.module, .columns),
[data-layout] main > section > :where(.module, .columns) {
  --module-size: var(--layout-column-size);
}
[data-layout] main > article > section:not(.event-info)[data-size="content"] > :where(.module, .columns),
[data-layout] main > section[data-size="content"] > :where(.module, .columns) {
  --module-size: var(--content-size);
}
[data-layout] main > article > section:not(.event-info)[data-size="layout"] > :where(.module, .columns),
[data-layout] main > section[data-size="layout"] > :where(.module, .columns) {
  --module-size: var(--layout-column-size);
  padding-inline: 0;
  /* > .text { padding-inline: var(--side-gutter); } */
}
[data-layout] main > article > section:not(.event-info)[data-size="full"] > :where(.module, .columns),
[data-layout] main > section[data-size="full"] > :where(.module, .columns) {
  --module-size: 100%;
  padding-inline: 0;
}
[data-layout] main > article > section:not(.event-info)[data-size="full"] > :where(.module, .columns) > .text,
[data-layout] main > section[data-size="full"] > :where(.module, .columns) > .text {
  padding-inline: var(--side-gutter);
}
@media screen and (min-width: 900px) {
  [data-layout] main > article > section:not(.event-info),
  [data-layout] main > section {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.25rem;
    padding-block-start: var(--section-padding, 4rem);
  }
  [data-layout] main > article > section:not(.event-info) > .module,
  [data-layout] main > section > .module {
    grid-column: 1 / -1;
    width: 100%;
  }
  [data-layout] main > article > section:not(.event-info) > .module:has(.constrained),
  [data-layout] main > section > .module:has(.constrained) {
    grid-column: span 7;
  }
}
@media screen and (max-width: 899px) {
  [data-layout] main > section {
    padding-block-start: 35px;
  }
}
@media screen and (min-width: 900px) {
  [data-layout="indexedextendedeventpage"] main section[data-size="layout"]:has(.event-info),
  [data-layout="filterpage"] main section[data-size="layout"]:has(.event-info),
  [data-layout="materialspage"] main section[data-size="layout"]:has(.event-info),
  [data-layout="indexedeventpage"] main section[data-size="layout"]:has(.event-info) {
    position: relative;
    padding-inline-start: 40px;
    max-width: var(--layout-column-size);
    margin-inline: auto;
  }
}
@media screen and (min-width: 900px) {
  [data-layout="contentpage"] main section[data-size="layout"].primary {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.25rem;
    position: relative;
    background-color: #f6f0e8;
    padding: 55px 35px;
    border-radius: var(--border-radius);
    margin-block-start: 55px;
    margin-block-end: 120px;
    overflow: hidden;
  }
  [data-layout="contentpage"] main section[data-size="layout"].primary::before {
    content: '';
    display: block;
    width: 67px;
    height: 67px;
    position: absolute;
    top: 55px;
    left: 40px;
    background-color: #b1523d;
    -webkit-mask: url(logo.svg) center no-repeat;
            mask: url(logo.svg) center no-repeat;
    z-index: 1;
  }
  [data-layout="contentpage"] main section[data-size="layout"].primary::after {
    content: '';
    display: block;
    width: 330px;
    height: 485px;
    position: absolute;
    bottom: 0px;
    left: 0px;
    background-color: #fff;
    -webkit-mask: url(logo.svg) top right no-repeat;
            mask: url(logo.svg) top right no-repeat;
    -webkit-mask-size: 200%;
            mask-size: 200%;
    z-index: 1;
  }
  [data-layout="contentpage"] main section[data-size="layout"].primary > *.module {
    width: 100%;
    grid-column: 6 / -1;
  }
  [data-layout="contentpage"] main section[data-size="layout"].primary ~ section[data-size] > *.module.contrained {
    width: 100%;
    grid-column: 1 / 7;
  }
}
