@charset "UTF-8";
:root {
  --gutter: 50px;
  --double-gutter: calc(var(--gutter) * 2);
  --half-gutter: calc(var(--gutter) / 2);
  --content-width: min(1100px, calc(100vw - var(--double-gutter)));
  --content-width-wide: max(var(--content-width), calc(100vw - 300px));
  --gap-small: 16px;
  --gap-medium: 20px;
  --gap-large: 30px;
  --block-spacing: 120px;
  --half-block-spacing: calc(var(--block-spacing) / 2);
  --paragraph-spacing: 1rem;
  --spacing-small: 20px;
  --spacing-medium: 40px;
  --spacing-large: 100px;
  --spacing-xlarge: 170px;
  --border-radius-large: 25px;
  --border-radius-medium: 18px;
  --border-radius-small: 10px;
  --radius-small: 20px;
  --radius-large: 35px;
  --border-radius-media: var(--radius-small);
  --border-width: 2px;
  --press-scale: 0.96;
}
@media (min-width: 1501px) and (max-width: 2399px) {
  :root {
    --gutter: 40px;
  }
}
@media (max-width: 1500px) {
  :root {
    --gutter: 30px;
    --gap-large: 25px;
    --border-radius-large: 15px;
    --block-spacing: 100px;
  }
}
@media (max-width: 950px) {
  :root {
    --gutter: 25px;
    --spacing-small: 15px;
    --spacing-medium: 30px;
    --spacing-large: 90px;
    --spacing-xlarge: 100px;
    --block-spacing: 80px;
  }
}
@media (max-width: 550px) {
  :root {
    --gutter: 20px;
    --spacing-xlarge: 70px;
  }
}

/**General Setup**/
.content > *:not(.alignwide):not(.alignfull) {
  max-width: var(--content-width);
  margin-left: auto;
  margin-right: auto;
}

.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  width: 100%;
}

.content > .alignwide {
  max-width: var(--content-width-wide);
  margin-left: auto;
  margin-right: auto;
}

.content > .alignfull {
  width: 100%;
}

.shadow, .has-shadow {
  -webkit-box-shadow: 0 4px 100px rgba(0, 62, 124, 0.1);
  box-shadow: 0 4px 100px rgba(0, 62, 124, 0.1);
}

/*----------------------
Farbsystem
------------------------*/
:root {
  --primary: #003e7c;
  --mid-blue: #508cd2;
  --light: #bedcfa;
  --lightblue: #e8f3fb;
  --airy: #f1faff;
  --white: #ffffff;
  --grey: #b3b9c8;
  --black: #000115;
  --positive: #249437;
  --negative: #ce1517;
}

/*----------------------
Schrifteinbindung
------------------------*/
@font-face {
  font-family: "Brix Sans";
  src: url("../fonts/Brix-Sans-Web-Medium.woff2") format("woff2"), url("../fonts/Brix-Sans-Web-Medium.woff") format("woff"), url("../fonts/Brix-Sans-Web-Medium.eot?#iefix") format("embedded-opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Brix Sans";
  src: url("../fonts/Brix-Sans-Web-Bold.woff2") format("woff2"), url("../fonts/Brix-Sans-Web-Bold.woff") format("woff"), url("../fonts/Brix-Sans-Web-Bold.eot?#iefix") format("embedded-opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Brix Sans";
  src: url("../fonts/Brix-Sans-Web-Black.woff2") format("woff2"), url("../fonts/Brix-Sans-Web-Black.woff") format("woff"), url("../fonts/Brix-Sans-Web-Black.eot?#iefix") format("embedded-opentype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Brix Slab";
  src: url("../fonts/Brix-Slab-Web-Regular.woff2") format("woff2"), url("../fonts/Brix-Slab-Web-Regular.woff") format("woff"), url("../fonts/Brix-Slab-Web-Regular.eot?#iefix") format("embedded-opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/*----------------------
Schriftsatz
------------------------*/
:root {
  /* Brix Slab: per the Visual Identity the face for historic material and
     attachments, and in the design also the language switcher. Only Regular
     is embedded — the one slab cut of the identity, which is what the block
     style "Brix Slab" further down sets. */
  --font-slab: "Brix Slab", "Brix Sans", serif;
  /* Fluid type scale: six steps (0-5) as clamp() formulas, deliberately
     without a --size-* indirection — the formula sits on the token the theme
     already uses. Step → element: 5 = h1, 4 = h2, 3 = h3, 2 = h4, 1 = h5,
     0 = h6 and body copy.
     Each formula interpolates between phone and desktop width by itself and
     caps at both ends, so nothing grows on a wide monitor. The generated
     maxima were pulled down from there — headings by 15%, body copy by 20% —
     which also moves the upper cap inwards: body copy stops growing at around
     780px viewport, the headings between 920 and 975px. Above roughly 1000px
     the scale is therefore static. That is why none of these tokens appear in
     the breakpoint blocks further down any more — the scale has no jump
     points left. --small and --button still do. */
  --copy: clamp(1rem, 0.7443rem + 1.1364vw, 1.3rem); /* Step 0 */
  --h6: var(--copy); /* Step 0 */
  --h5: clamp(1.2rem, 0.8599rem + 1.5114vw, 1.7266rem); /* Step 1 */
  --h4: clamp(1.44rem, 0.9904rem + 1.9983vw, 2.1582rem); /* Step 2 */
  --h3: clamp(1.728rem, 1.1365rem + 2.6288vw, 2.6977rem); /* Step 3 */
  --h2: clamp(2.0736rem, 1.2989rem + 3.4431vw, 3.3722rem); /* Step 4 */
  --h1: clamp(2.4883rem, 1.4775rem + 4.4923vw, 4.2152rem); /* Step 5 */
  --copy-height: calc(var(--copy) * 1.5);
  --h6-height: var(--copy-height);
  --h5-height: calc(var(--h5) * 1.25);
  --h4-height: calc(var(--h4) * 1.2);
  --h3-height: calc(var(--h3) * 1.15);
  --h2-height: calc(var(--h2) * 1.1);
  --h1-height: calc(var(--h1) * 0.95);
  --button: 17px;
  --button-height: 100%;
  --small: 16px;
  --small-height: 25px;
  --overline: 20px;
  --overline-height: 28px;
  --lead: var(--h5);
  --lead-height: calc(var(--lead) * 1.25);
  --category: calc(var(--small) - 1px);
  --readmore: calc(var(--category) - 1px);
  --wide: 3px;
  --medium: 1.2px;
  --semi-narrow: 0.7px;
  --narrow: 0;
  --tight: -0.3px;
}
@media (max-width: 1500px) {
  :root {
    --button: 16px;
    --small: 15px;
    --small-height: 24px;
  }
}
@media (max-width: 950px) {
  :root {
    --button: 15px;
    --small: 14px;
    --small-height: 23px;
  }
}

p, .wp-block-heading, .has-text-align-center {
  width: 100%;
  transition: 300ms ease-in-out;
}

.has-small-font-size {
  font-size: var(--small) !important;
  line-height: var(--small-height) !important;
}

.has-medium-font-size {
  line-height: 1.5 !important;
}

.has-large-font-size {
  line-height: 1.2 !important;
}

.has-x-large-font-size {
  line-height: 1.15 !important;
}

.has-large-font-size,
.has-x-large-font-size {
  overflow-wrap: anywhere;
}

body, p {
  color: var(--primary);
  font-family: "Brix Sans", sans-serif;
  font-size: var(--copy);
  line-height: var(--copy-height);
  letter-spacing: var(--medium);
  padding: 0;
  font-weight: 500;
  font-synthesis: none;
}

html body b, html body strong {
  font-family: "Brix Sans", sans-serif;
  font-weight: 700;
  letter-spacing: var(--medium);
}
html body a {
  color: inherit;
  font-family: "Brix Sans", sans-serif;
  font-weight: 900;
  text-decoration: none !important;
  transition: 300ms ease-in-out;
}
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6 {
  font-family: "Brix Sans", sans-serif;
  font-weight: 700;
  text-wrap: balance;
  transition: 300ms ease-in-out;
}
html body h1 a, html body h1 b, html body h1 strong, html body h2 a, html body h2 b, html body h2 strong, html body h3 a, html body h3 b, html body h3 strong, html body h4 a, html body h4 b, html body h4 strong, html body h5 a, html body h5 b, html body h5 strong, html body h6 a, html body h6 b, html body h6 strong {
  font-weight: inherit;
}
html body .overline,
html body .is-style-subheadline {
  font-size: var(--overline) !important;
  line-height: var(--overline-height) !important;
  letter-spacing: var(--wide) !important;
  padding-inline-start: 1px;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-family: "Brix Sans", sans-serif;
  font-weight: 900 !important;
}
@media (max-width: 950px) {
  html body .overline,
  html body .is-style-subheadline {
    margin-bottom: 6px;
  }
}
@media (max-width: 550px) {
  html body .overline,
  html body .is-style-subheadline {
    margin-bottom: 10px;
  }
}
html body .is-style-lead {
  font-size: var(--lead);
  line-height: var(--lead-height);
  letter-spacing: var(--tight);
  font-weight: 700;
}
html body .is-style-level-5 {
  font-size: var(--h1);
  line-height: var(--h1-height);
  letter-spacing: var(--tight);
  font-weight: 700;
  text-wrap: balance;
}
html body .is-style-level-4 {
  font-size: var(--h2);
  line-height: var(--h2-height);
  letter-spacing: var(--narrow);
  font-weight: 700;
  text-wrap: balance;
}
html body .is-style-level-3 {
  font-size: var(--h3);
  line-height: var(--h3-height);
  letter-spacing: var(--semi-narrow);
  font-weight: 700;
  text-wrap: balance;
}
html body .is-style-level-2 {
  font-size: var(--h4);
  line-height: var(--h4-height);
  letter-spacing: var(--medium);
  font-weight: 700;
  text-wrap: balance;
}
html body .is-style-level-1 {
  font-size: var(--h5);
  line-height: var(--h5-height);
  letter-spacing: var(--medium);
  font-weight: 700;
  text-wrap: balance;
}
html body .is-style-level-0 {
  font-size: var(--h6);
  line-height: var(--h6-height);
  letter-spacing: var(--medium);
  font-weight: 700;
  text-wrap: balance;
}
html body .is-style-specimen {
  font-size: calc(var(--h1) * 2);
  line-height: 1;
  letter-spacing: var(--tight);
  font-weight: 700;
}
html body .is-style-slab {
  font-family: var(--font-slab);
}
html body .is-style-slab p, html body .is-style-slab a, html body .is-style-slab b, html body .is-style-slab strong, html body .is-style-slab em, html body .is-style-slab i, html body .is-style-slab li {
  font-family: var(--font-slab);
}
html body .main .content h1, html body .main .content h2 {
  margin-left: -1px;
  font-weight: 700;
}
html body p {
  text-wrap: pretty;
}
html body h1, html body h2 {
  margin-bottom: var(--half-gutter) !important;
}
html body h1 {
  font-size: var(--h1);
  line-height: var(--h1-height);
  letter-spacing: var(--tight);
  font-weight: 700;
}
html body h2 {
  font-size: var(--h2) !important;
  line-height: var(--h2-height) !important;
  letter-spacing: var(--narrow) !important;
  font-weight: 700 !important;
}
html body h3 {
  font-size: var(--h3);
  line-height: var(--h3-height);
  letter-spacing: var(--semi-narrow);
  font-weight: 700;
}
html body h4 {
  font-size: var(--h4);
  line-height: var(--h4-height);
  letter-spacing: var(--medium);
  font-weight: 700;
}
html body h5 {
  font-size: var(--h5);
  line-height: var(--h5-height);
  letter-spacing: var(--medium);
  font-weight: 700;
}
html body h6 {
  font-size: var(--h6);
  line-height: var(--h6-height);
  letter-spacing: var(--medium);
  font-weight: 700;
}
html body button, html body .button, html body .button span, html body .btn, html body .wp-element-button {
  font-family: "Brix Sans", sans-serif;
  font-weight: 900;
  font-size: var(--button);
  line-height: var(--button-height);
  letter-spacing: var(--semi-narrow);
  transition: 300ms ease-in-out;
}
html body .headermenu a, html body .headermenu-mobile__menu a {
  font-family: "Brix Sans", sans-serif;
  font-weight: 900;
}
html body footer a {
  font-size: var(--small);
  line-height: var(--small-height);
  font-family: "Brix Sans", sans-serif;
  font-weight: 900;
  letter-spacing: 1px;
  transition: 300ms ease-in-out;
}
html body small, html body #menu-footermenu a {
  font-size: var(--small);
  line-height: var(--small-height);
  font-family: "Brix Sans", sans-serif;
  letter-spacing: 1px;
}

/*--------------------------------------------------------------
Allgemeine Einstellungen
--------------------------------------------------------------*/
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body * {
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

html {
  scroll-behavior: smooth;
  --admin-bar-height: 0px;
  scroll-padding-top: calc(var(--admin-bar-height) + var(--menubar-height) + var(--gap-large));
}
html:has(body.admin-bar) {
  --admin-bar-height: var(--wp-admin--admin-bar--height, 32px);
  scroll-padding-top: calc(var(--admin-bar-height) + var(--menubar-height) + var(--gap-large));
}

body, html {
  overscroll-behavior: none;
}

a {
  cursor: pointer;
}

.content :where(p, li, h1, h2, h3, h4, h5, h6, blockquote, figcaption, td, th) a:not(.wp-element-button) {
  display: inline-block;
  transition: 200ms ease-out;
}
.content :where(p, li, h1, h2, h3, h4, h5, h6, blockquote, figcaption, td, th) a:not(.wp-element-button):active:not(:disabled) {
  scale: var(--press-scale);
}

.the-page {
  overflow: hidden;
}

.content {
  min-height: 100vh;
  padding-top: calc(var(--admin-bar-height) + var(--menubar-height));
}
.content > *:first-child {
  margin-top: 0;
}
.content > *:last-child {
  margin-bottom: 0;
}
.content > *:only-child {
  margin: 0;
}
.content :where(p) {
  margin-block-end: var(--paragraph-spacing);
}

:where(.wp-block-group.is-layout-flow, .wp-block-group.is-layout-constrained) {
  display: flow-root;
}
:where(.wp-block-group.is-layout-flow, .wp-block-group.is-layout-constrained) > :first-child {
  margin-block-start: 0;
}
:where(.wp-block-group.is-layout-flow, .wp-block-group.is-layout-constrained) > :last-child {
  margin-block-end: 0;
}

:where(.is-layout-flex) {
  gap: 0;
}

.is-layout-flex {
  flex-wrap: nowrap;
}

.is-vertical {
  flex-direction: column;
}

.has-border-color {
  border-style: solid;
  border-width: var(--border-width);
}

.has-positive-border-color {
  border-color: var(--positive);
}

.has-negative-border-color {
  border-color: var(--negative);
}

figure {
  overflow: hidden;
}

@media (max-width: 950px) {
  .wp-block-columns {
    flex-direction: column;
  }
}

:focus {
  outline: none;
}

/*--------------------------------------------------------------
Headline mit vorangestelltem Pfeil
--------------------------------------------------------------*/
:root {
  --headline-arrow-height: 0.676em;
  --headline-arrow-ratio: 1.2065365154;
  --headline-arrow-gap: 0.35em;
}

.is-style-arrow::before {
  content: "";
  display: inline-block;
  width: calc(var(--headline-arrow-height) * var(--headline-arrow-ratio));
  height: var(--headline-arrow-height);
  margin-right: var(--headline-arrow-gap);
  vertical-align: baseline;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 127.806 105.928'%3E%3Cpath d='M82.913,0h-15.697c0,17.903,7.807,34.014,20.193,45.116H0v15.697h87.409c-12.386,11.102-20.193,27.213-20.193,45.116h15.697c0-24.754,20.138-44.892,44.892-44.892v-16.143C103.052,44.893,82.914,24.754,82.914,0h0Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 127.806 105.928'%3E%3Cpath d='M82.913,0h-15.697c0,17.903,7.807,34.014,20.193,45.116H0v15.697h87.409c-12.386,11.102-20.193,27.213-20.193,45.116h15.697c0-24.754,20.138-44.892,44.892-44.892v-16.143C103.052,44.893,82.914,24.754,82.914,0h0Z'/%3E%3C/svg%3E") no-repeat center/contain;
}

/*--------------------------------------------------------------
Listen im Fließtext – Aufzählungszeichen, Einzug und Abstände
--------------------------------------------------------------*/
:root {
  --list-line-height: 1.75;
  --list-marker-size: 1.1em;
  --list-marker-gap: 0.5em;
}

.content ul, .content ol {
  line-height: var(--list-line-height);
  transition: 300ms ease-in-out;
}
.content ul {
  list-style: disc;
  padding-inline-start: var(--gap-medium);
}
.content ol {
  list-style: decimal;
  padding-inline-start: var(--gap-large);
}
.content li > ul,
.content li > ol {
  padding-inline-end: 0;
}
.content li > ul {
  list-style: circle;
  padding-inline-start: var(--gap-medium);
}
.content li > ol {
  list-style: lower-alpha;
  padding-inline-start: var(--gap-large);
}
.content li {
  margin-bottom: var(--half-gutter);
  transition: 300ms ease-in-out;
}
.content li::marker {
  color: inherit;
}
.content li ul, .content li ol {
  margin-top: var(--half-gutter);
}
.content li:last-child {
  margin-bottom: 0 !important;
}
.content {
  /*------------------------------------------------------------
  Marker lists: check, cross and the arrow instead of a bullet
  ------------------------------------------------------------*/
}
.content .wp-block-list.is-style-check,
.content .wp-block-list.is-style-cross,
.content .wp-block-list.is-style-arrow {
  list-style: none;
  padding-inline-start: 0;
}
.content .wp-block-list.is-style-check > li,
.content .wp-block-list.is-style-cross > li,
.content .wp-block-list.is-style-arrow > li {
  position: relative;
  padding-inline-start: calc(var(--list-marker-width) + var(--list-marker-gap));
}
.content .wp-block-list.is-style-check > li::before,
.content .wp-block-list.is-style-cross > li::before,
.content .wp-block-list.is-style-arrow > li::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  top: calc((1em * var(--list-line-height) - var(--list-marker-height)) / 2);
  width: var(--list-marker-width);
  height: var(--list-marker-height);
}
.content .wp-block-list.is-style-check,
.content .wp-block-list.is-style-cross {
  --list-marker-width: var(--list-marker-size);
  --list-marker-height: var(--list-marker-size);
}
.content .wp-block-list.is-style-check > li::before,
.content .wp-block-list.is-style-cross > li::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.content .wp-block-list.is-style-check > li::before {
  background-image: url("../icons/check-s.svg");
}
.content .wp-block-list.is-style-cross > li::before {
  background-image: url("../icons/cross-s.svg");
}
.content .wp-block-list.is-style-arrow {
  --list-marker-width: calc(var(--headline-arrow-height) * var(--headline-arrow-ratio));
  --list-marker-height: var(--headline-arrow-height);
}
.content .wp-block-list.is-style-arrow::before {
  content: none;
}
.content .wp-block-list.is-style-arrow > li::before {
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 127.806 105.928'%3E%3Cpath d='M82.913,0h-15.697c0,17.903,7.807,34.014,20.193,45.116H0v15.697h87.409c-12.386,11.102-20.193,27.213-20.193,45.116h15.697c0-24.754,20.138-44.892,44.892-44.892v-16.143C103.052,44.893,82.914,24.754,82.914,0h0Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 127.806 105.928'%3E%3Cpath d='M82.913,0h-15.697c0,17.903,7.807,34.014,20.193,45.116H0v15.697h87.409c-12.386,11.102-20.193,27.213-20.193,45.116h15.697c0-24.754,20.138-44.892,44.892-44.892v-16.143C103.052,44.893,82.914,24.754,82.914,0h0Z'/%3E%3C/svg%3E") no-repeat center/contain;
}

:root {
  --logo-width: 340px;
  --logo-width-scroll: 50px;
  --logo-height: 68px;
  --menubar-height: 128px;
  --menubar-height-scroll: 76px;
  --logo-margin-block: calc((var(--menubar-height) - var(--logo-height)) / 2);
  --menu-padding: 23px;
  --menu-padding-inline-end: 30px;
  --z-menubar: 100;
  --scrollbar-width: 0px;
}
@media (max-width: 950px) {
  :root {
    --menubar-height: 96px;
  }
}

.headermenu {
  background-color: var(--primary);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gutter);
  position: fixed;
  top: var(--admin-bar-height);
  left: 0;
  width: 100%;
  height: var(--menubar-height);
  z-index: var(--z-menubar);
  transition: 300ms ease-in-out;
}
@media (max-width: 950px) {
  .headermenu {
    display: none;
  }
}
.headermenu .menu {
  display: flex;
  list-style: none;
  padding: 15px var(--menu-padding-inline-end) 21px 40px;
  gap: var(--gutter);
  font-size: var(--button);
  text-transform: uppercase;
}
.headermenu .menu:has(li:active, li:hover) li.current-menu-item::before {
  height: 0;
}
.headermenu .menu:has(li:active, li:hover) li.current-menu-item:hover::before {
  height: 20px;
}
.headermenu .menu li {
  color: var(--white);
  position: relative;
  transition: 200ms ease-out;
}
.headermenu .menu li::before {
  content: "";
  width: 100%;
  height: 0;
  background-color: var(--light);
  position: absolute;
  top: -47px;
  transition: 300ms ease-in-out;
}
.headermenu .menu li:hover::before, .headermenu .menu li.current-menu-item::before {
  height: 20px;
}
.headermenu .menu li.is-next::before {
  height: 20px;
}
.headermenu .menu li.is-leaving::before {
  height: 0;
}
.headermenu__logocontainer {
  position: relative;
  display: block;
  flex: 0 0 auto;
  width: var(--logo-width);
  height: var(--logo-height);
  margin: var(--logo-margin-block) 35px;
  transition: 300ms ease-in-out;
}
.headermenu__logocontainer:active:not(:disabled) {
  scale: var(--press-scale);
}
.headermenu__logo, .headermenu__logoscroll {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  color: var(--white);
  transition: 300ms ease-in-out;
}
.headermenu__logo svg, .headermenu__logoscroll svg {
  display: block;
  height: auto;
}
.headermenu__logo {
  opacity: 1;
}
.headermenu__logo svg {
  width: var(--logo-width);
}
.headermenu__logoscroll {
  opacity: 0;
}
.headermenu__logoscroll svg {
  width: var(--logo-width-scroll);
}

.scroll .headermenu {
  height: var(--menubar-height-scroll);
  background-color: var(--white);
  -webkit-box-shadow: 0 4px 100px rgba(0, 62, 124, 0.1);
  box-shadow: 0 4px 100px rgba(0, 62, 124, 0.1);
}
.scroll .headermenu li {
  color: var(--primary);
}
.scroll .headermenu li::before {
  top: -21px;
}
.scroll .headermenu__logocontainer {
  width: var(--logo-width-scroll);
  height: 51px;
  margin: 10px 20px 15px 15px;
}
.scroll .headermenu__logo {
  opacity: 0;
}
.scroll .headermenu__logoscroll {
  opacity: 1;
}
.scroll .headermenu__logo, .scroll .headermenu__logoscroll {
  color: var(--primary);
}

/*----------------------
Sprachumschalter unter der Kopfleiste
------------------------*/
/* Der Entwurf setzt ihn 18px unter die Leiste, rechtsbuendig mit der
   Navigation. Absolut statt im Fluss, weil .headermenu fixiert ist und der
   Umschalter sonst hinter ihr laege — und weil .content seinen Offset zur
   Leiste selbst mitbringt, den ein Element im Fluss verschieben wuerde.
   Ohne positionierten Vorfahren bezieht sich das auf den Dokumentanfang, und
   genau dort steht <header>: der Umschalter scrollt also mit der Seite weg,
   waehrend die Leiste stehen bleibt. */
.headermenu__language {
  position: absolute;
  top: calc(var(--admin-bar-height) + var(--menubar-height) + 18px);
  right: var(--menu-padding-inline-end);
  z-index: calc(var(--z-menubar) - 1);
  /* Auf Mobile ist die Kopfleiste selbst weg — dort sitzt der Umschalter im
     Menue-Panel. */
}
@media (max-width: 950px) {
  .headermenu__language {
    display: none;
  }
}

/*----------------------
Mobile menu
------------------------*/
.headermenu-mobile {
  display: none;
}
@media (max-width: 950px) {
  .headermenu-mobile {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: fixed;
    top: var(--admin-bar-height);
    left: 0;
    right: 0;
    height: var(--menubar-height);
    padding: 0 33px 0 var(--menu-padding);
    z-index: var(--z-menubar);
  }
}
.headermenu-mobile {
  /* The bar's surface is a pseudo-element on the same layer as logo and
     hamburger, not the bar's own background: a stacking context paints its
     own background underneath every descendant, so on the bar itself the
     panel would slide over it and its scrolled items would pass under the
     logo. As a layer of its own the surface sits above the panel — the panel
     is really behind the bar, emerges from under it and its items disappear
     under it when scrolled. */
}
.headermenu-mobile::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: var(--primary);
  box-shadow: 0 0 34px rgba(80, 140, 210, 0.5);
}
.headermenu-mobile {
  /* Logo and hamburger sit on the surface, above the panel. */
}
.headermenu-mobile__logo, .headermenu-mobile__hamburger {
  position: relative;
  z-index: 1;
}
.headermenu-mobile__logo {
  display: block;
  width: 50px;
  color: var(--white);
  transition: 200ms ease-out;
}
.headermenu-mobile__logo:active:not(:disabled) {
  scale: var(--press-scale);
}
.headermenu-mobile__logo svg {
  display: block;
  width: 100%;
  height: auto;
}
.headermenu-mobile {
  /*----------------------
  Hamburger
  ------------------------*/
  /* Ober- und Unterstrich sind Pseudoelemente, nur der Mittelstrich braucht ein
     eigenes Element. Alle drei liegen absolut, damit sie im offenen Zustand auf
     dieselbe Höhe wandern und dort das Kreuz bilden. */
}
.headermenu-mobile__hamburger {
  width: 34px;
  height: 30px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
}
.headermenu-mobile__hamburger::before, .headermenu-mobile__hamburger::after {
  content: "";
}
.headermenu-mobile__hamburger::before, .headermenu-mobile__hamburger::after,
.headermenu-mobile__hamburger .headermenu-mobile__line {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: var(--white);
  transition: 300ms ease-in-out;
}
.headermenu-mobile__hamburger::before {
  top: 0;
}
.headermenu-mobile__hamburger .headermenu-mobile__line {
  top: 13px;
}
.headermenu-mobile__hamburger::after {
  top: 26px;
}
.headermenu-mobile {
  /*----------------------
  Panel
  ------------------------*/
}
.headermenu-mobile__panel {
  position: fixed;
  inset: 0;
  display: flex;
  flex-direction: column;
  gap: 60px;
  padding: calc(var(--admin-bar-height) + var(--menubar-height) + 74px) var(--menu-padding) 50px;
  background-color: var(--primary);
  overflow-x: hidden;
  overflow-y: auto;
  transform: translateY(-100%);
  visibility: hidden;
  transition: transform 400ms ease-in-out, visibility 400ms;
}
.headermenu-mobile__panel > * {
  opacity: 0;
  transition: opacity 400ms ease-in-out;
}
.headermenu-mobile__menu {
  display: flex;
  list-style: none;
  flex-direction: column;
  gap: 40px;
  margin-block-end: 84px;
}
.headermenu-mobile__menu a {
  display: block;
  position: relative;
  color: var(--white);
  font-size: 26px;
  line-height: 28px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}
.headermenu-mobile__menu {
  /* The marker grows out of the left screen edge towards the text, the way
     the desktop marker grows down from the top edge. 14px of width plus 9px
     of gap add up to the panel's padding, so it starts exactly at the edge. */
}
.headermenu-mobile__menu a::before {
  content: "";
  position: absolute;
  top: 7px;
  left: calc(-1 * var(--menu-padding));
  width: 0;
  height: 17px;
  background-color: var(--light);
  transition: 300ms ease-in-out;
}
.headermenu-mobile__menu li:hover a::before,
.headermenu-mobile__menu li.current-menu-item a::before {
  width: 14px;
}

@media (max-width: 950px) {
  .menu-open,
  .menu-closing {
    overflow: hidden;
    padding-right: var(--scrollbar-width);
  }
  .menu-open .headermenu-mobile,
  .menu-closing .headermenu-mobile {
    right: var(--scrollbar-width);
  }
  .menu-open .headermenu-mobile::before,
  .menu-closing .headermenu-mobile::before {
    box-shadow: none;
  }
}

.menu-open .headermenu-mobile__panel {
  transform: none;
  visibility: visible;
}
.menu-open .headermenu-mobile__panel > * {
  opacity: 1;
}
.menu-open .headermenu-mobile__hamburger::before, .menu-open .headermenu-mobile__hamburger::after {
  top: 13px;
}
.menu-open .headermenu-mobile__hamburger::before {
  transform: rotate(45deg);
}
.menu-open .headermenu-mobile__hamburger::after {
  transform: rotate(-45deg);
}
.menu-open .headermenu-mobile__hamburger .headermenu-mobile__line {
  opacity: 0;
}

/*----------------------
Sprachumschalter EN/HR
------------------------*/
/* Masse aus dem Figma-Footer: Kreis 35px, Abstand 20px (Tablet 16px).
   Die Farben kommen aus der Palette — aktiv ist der Kreis weiss gefuellt mit
   blauer Schrift, inaktiv blau mit weisser 1px-Kontur. Damit sitzt der
   Umschalter sowohl auf dem Footer als auch auf dem Menue-Panel, beide --primary. */
:root {
  --language-switcher-size: 35px;
  --language-switcher-gap: var(--gap-medium);
}
@media (max-width: 1500px) {
  :root {
    --language-switcher-gap: var(--gap-small);
  }
}

.language-switcher__list {
  display: flex;
  gap: var(--language-switcher-gap);
  list-style: none;
}
.language-switcher__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--language-switcher-size);
  height: var(--language-switcher-size);
  border: 1px solid var(--white);
  border-radius: 50%;
  background-color: var(--primary);
  color: var(--white);
  font-family: var(--font-slab);
  font-size: 14px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  transition: 300ms ease-in-out;
}
.language-switcher__link--current {
  background-color: var(--white);
  color: var(--primary);
}
.language-switcher {
  /*----------------------
  Auf hellem Grund
  ------------------------*/
  /* Unter der Kopfleiste steht der Umschalter auf der hellen Flaeche, nicht auf
     Blau — der Entwurf dreht dafuer die Fuellungen um und macht die Kontur
     2px stark. Die drei Farben stehen so nicht in der Visual Identity und
     bleiben deshalb Bausteintokens statt Palette. --language-switcher-ring
     entspricht dem Blau, das _menu.scss schon als Schlagschatten der Kopfleiste
     verwendet (rgba(80, 140, 210, ...)). */
}
.language-switcher--on-light {
  --language-switcher-face: #e8f3fb;
  --language-switcher-ring: #508cd2;
  --language-switcher-ink: #000115;
}
.language-switcher--on-light .language-switcher__link {
  border-width: 2px;
  font-size: 15px;
  line-height: 31px;
}
.language-switcher--on-light .language-switcher__link--current {
  border-color: var(--language-switcher-ring);
  background-color: var(--language-switcher-face);
  color: var(--language-switcher-ink);
}
.language-switcher--on-light .language-switcher__link:not(.language-switcher__link--current) {
  border-color: var(--primary);
}
.language-switcher--on-light a.language-switcher__link:hover {
  border-color: var(--language-switcher-ring);
  background-color: var(--language-switcher-face);
  color: var(--language-switcher-ink);
}
.language-switcher {
  /* Nur der wechselbare Eintrag reagiert — der aktive ist ein <span>. */
}
.language-switcher a.language-switcher__link:hover {
  background-color: var(--light);
  border-color: var(--light);
  color: var(--primary);
}

button[type=submit],
.wp-element-button, .wp-block-button.jasenovac-btn--primary .wp-element-button,
.wp-block-buttons.jasenovac-btn--primary .wp-element-button, .jasenovac-btn--primary:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: var(--white) !important;
}
button[type=submit]:hover,
.wp-element-button:hover, .wp-block-button.jasenovac-btn--primary .wp-element-button:hover,
.wp-block-buttons.jasenovac-btn--primary .wp-element-button:hover, .jasenovac-btn--primary:hover:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--airy) !important;
  border-color: var(--light) !important;
  color: var(--primary) !important;
}
button[type=submit]:active,
.wp-element-button:active, .wp-block-button.jasenovac-btn--primary .wp-element-button:active,
.wp-block-buttons.jasenovac-btn--primary .wp-element-button:active, .jasenovac-btn--primary:active:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--light) !important;
  border-color: var(--primary) !important;
  color: var(--primary) !important;
}

.wp-block-button.jasenovac-btn--secondary .wp-element-button,
.wp-block-buttons.jasenovac-btn--secondary .wp-element-button, .jasenovac-btn--secondary:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--airy) !important;
  border-color: var(--light) !important;
  color: var(--primary) !important;
}
.wp-block-button.jasenovac-btn--secondary .wp-element-button:hover,
.wp-block-buttons.jasenovac-btn--secondary .wp-element-button:hover, .jasenovac-btn--secondary:hover:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--light) !important;
  border-color: var(--light) !important;
  color: var(--primary) !important;
}
.wp-block-button.jasenovac-btn--secondary .wp-element-button:active,
.wp-block-buttons.jasenovac-btn--secondary .wp-element-button:active, .jasenovac-btn--secondary:active:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--light) !important;
  border-color: var(--primary) !important;
  color: var(--primary) !important;
}

.is-on-dark button[type=submit],
.is-on-dark .wp-element-button, .is-style-bg-dark-01 button[type=submit], .is-style-bg-dark-02 button[type=submit], .is-style-bg-primary button[type=submit], .loginpage button[type=submit], .pagefooter button[type=submit],
.is-style-bg-dark-01 .wp-element-button,
.is-style-bg-dark-02 .wp-element-button,
.is-style-bg-primary .wp-element-button,
.loginpage .wp-element-button,
.pagefooter .wp-element-button, .wp-block-button.jasenovac-btn--white .wp-element-button,
.wp-block-buttons.jasenovac-btn--white .wp-element-button, .jasenovac-btn--white:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--white) !important;
  border-color: var(--white) !important;
  color: var(--primary) !important;
}
.is-on-dark button[type=submit]:hover,
.is-on-dark .wp-element-button:hover, .is-style-bg-dark-01 button[type=submit]:hover, .is-style-bg-dark-02 button[type=submit]:hover, .is-style-bg-primary button[type=submit]:hover, .loginpage button[type=submit]:hover, .pagefooter button[type=submit]:hover,
.is-style-bg-dark-01 .wp-element-button:hover,
.is-style-bg-dark-02 .wp-element-button:hover,
.is-style-bg-primary .wp-element-button:hover,
.loginpage .wp-element-button:hover,
.pagefooter .wp-element-button:hover, .wp-block-button.jasenovac-btn--white .wp-element-button:hover,
.wp-block-buttons.jasenovac-btn--white .wp-element-button:hover, .jasenovac-btn--white:hover:not(.wp-block-button, .wp-block-buttons), .is-on-dark button[type=submit]:active,
.is-on-dark .wp-element-button:active, .is-style-bg-dark-01 button[type=submit]:active, .is-style-bg-dark-02 button[type=submit]:active, .is-style-bg-primary button[type=submit]:active, .loginpage button[type=submit]:active, .pagefooter button[type=submit]:active,
.is-style-bg-dark-01 .wp-element-button:active,
.is-style-bg-dark-02 .wp-element-button:active,
.is-style-bg-primary .wp-element-button:active,
.loginpage .wp-element-button:active,
.pagefooter .wp-element-button:active, .wp-block-button.jasenovac-btn--white .wp-element-button:active,
.wp-block-buttons.jasenovac-btn--white .wp-element-button:active, .jasenovac-btn--white:active:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--primary) !important;
  border-color: var(--white) !important;
  color: var(--white) !important;
}

.wp-block-button.jasenovac-btn--white-active .wp-element-button,
.wp-block-buttons.jasenovac-btn--white-active .wp-element-button, .jasenovac-btn--white-active:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--primary) !important;
  border-color: var(--white) !important;
  color: var(--white) !important;
}
.wp-block-button.jasenovac-btn--white-active .wp-element-button:hover,
.wp-block-buttons.jasenovac-btn--white-active .wp-element-button:hover, .jasenovac-btn--white-active:hover:not(.wp-block-button, .wp-block-buttons), .wp-block-button.jasenovac-btn--white-active .wp-element-button:active,
.wp-block-buttons.jasenovac-btn--white-active .wp-element-button:active, .jasenovac-btn--white-active:active:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--white) !important;
  border-color: var(--white) !important;
  color: var(--primary) !important;
}

.jasenovac-btn--white-outline:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--white) !important;
  border-color: var(--primary) !important;
  color: var(--primary) !important;
}
.jasenovac-btn--white-outline:hover:not(.wp-block-button, .wp-block-buttons), .jasenovac-btn--white-outline:active:not(.wp-block-button, .wp-block-buttons) {
  background-color: var(--airy) !important;
  border-color: var(--primary) !important;
  color: var(--primary) !important;
}

button[type=submit],
.wp-element-button {
  position: relative;
  isolation: isolate;
  overflow: hidden !important;
  font-size: var(--button) !important;
  line-height: var(--button-height) !important;
  background-size: cover;
  border: 2px solid;
  border-radius: 25px 25px 25px 25px !important;
  padding: 0 35px 3px 35px;
  text-transform: uppercase;
  letter-spacing: 2px;
  cursor: pointer;
  height: 40px;
  z-index: 5;
  font-family: "Brix Sans", sans-serif;
  font-weight: 900;
  display: flex;
  align-items: center;
  width: fit-content;
  justify-content: center;
  transition: 300ms ease-in-out;
}
button[type=submit]:focus,
.wp-element-button:focus {
  outline: none !important;
}
button[type=submit]:active:not(:disabled),
.wp-element-button:active:not(:disabled) {
  scale: var(--press-scale);
}

.wp-element-button .icon, button .icon {
  left: 0;
  position: relative;
  width: auto;
  height: 12px;
  margin-left: 6px;
}
.wp-element-button:hover .icon, button:hover .icon {
  left: 6px;
}

.wp-block-buttons {
  padding: 0 var(--half-gutter);
}
.wp-block-buttons:only-child {
  padding: 0;
}

.is-style-bg-dark-01, .is-style-bg-dark-02, .is-style-bg-primary, .loginpage, .pagefooter, .is-on-dark {
  color: var(--white);
}
.is-style-bg-dark-01 p, .is-style-bg-dark-02 p, .is-style-bg-primary p, .loginpage p, .pagefooter p, .is-on-dark p {
  color: var(--white);
}
:root {
  --pagefooter-menu-max-width: 400px;
}

.pagefooter {
  /* Die Zeitenspalte wächst auf Desktop mit dem Inhalt, damit der Schlusssatz
     einzeilig bleibt. Auf Tablet gibt der Entwurf 338px vor und er bricht um. */
  display: grid;
  grid-template-columns: 359px auto 1fr;
  grid-template-rows: 1fr auto;
  grid-template-areas: "contact   hours buttons" "copyright hours language";
  align-items: start;
  background-color: var(--primary);
  background-image: url("../gradient/gradient-official-01.jpg");
  background-position: center center;
  background-size: cover;
  padding: 41px 20px 20px;
}
@media (max-width: 1500px) {
  .pagefooter {
    grid-template-columns: 260px 338px 1fr;
    padding: 37px 20px 20px;
  }
}
@media (max-width: 950px) {
  .pagefooter {
    /* rows: none, damit die Zeilenhöhen aus den Areas kommen und mitwachsen */
    /* Zweite Spalte nur fuer den Sprachumschalter: er teilt sich die letzte
       Zeile mit dem Copyright, so wie auf Desktop und Tablet auch. Fuer den
       Footer auf Mobile gibt es keinen Entwurf — der Artboard „Mobile" zeigt
       gar keinen Footer, die Aufteilung ist hier also gesetzt, nicht abgeleitet. */
    grid-template-columns: 1fr auto;
    grid-template-rows: none;
    grid-template-areas: "contact   contact" "hours     hours" "buttons   buttons" "copyright language";
    gap: 61px;
    padding: 34px 20px 33px;
  }
}
.pagefooter p {
  /* Die 24px lösen --copy-height ab und bilden das Raster des Footers:
     Zeilen, Abstände und Icon-Ausrichtung hängen daran. */
  line-height: 24px;
}
.pagefooter strong {
  font-weight: 700;
}
.pagefooter > small {
  grid-area: copyright;
  /* Der Sprachumschalter macht die zweite Zeile 35px hoch. Ohne dieses
     align-self haenge der Copyright-Hinweis oben in dieser Zeile statt wie
     im Entwurf auf einer Linie mit den Kreisen. */
  align-self: end;
}
.pagefooter {
  /*----------------------
  Sprachumschalter
  ------------------------*/
}
.pagefooter__language {
  grid-area: language;
  justify-self: end;
  align-self: end;
}
.pagefooter {
  /*----------------------
  Kontakt
  ------------------------*/
}
.pagefooter__contact {
  grid-area: contact;
  font-style: normal;
}
.pagefooter__contact p {
  display: grid;
  grid-template-columns: 19px 1fr;
  column-gap: 9px;
  align-items: start;
  font-weight: 700;
}
.pagefooter__contact p:has(a) {
  color: var(--light);
}
.pagefooter__contact p + p {
  margin-top: 24px;
}
.pagefooter__contact p a {
  font: inherit;
  letter-spacing: inherit;
  display: inline-block;
  transition: 200ms ease-out;
}
.pagefooter__contact p a:active:not(:disabled) {
  scale: var(--press-scale);
}
.pagefooter__contact p a:hover {
  color: var(--white);
}
.pagefooter__contact {
  /* Die Icons behalten ihre Originalgrößen aus dem Entwurf. Der negative bzw.
     positive Versatz zentriert sie in der 24px hohen ersten Textzeile. */
}
.pagefooter__contact .icon {
  justify-self: center;
}
.pagefooter__contact .icon--adress {
  width: 17px;
  margin-top: -1px;
}
.pagefooter__contact .icon--mail {
  width: 19px;
  margin-top: 4px;
}
.pagefooter__contact .icon--phone {
  width: 14px;
  margin-top: 1px;
}
.pagefooter {
  /*----------------------
  Öffnungszeiten
  ------------------------*/
}
.pagefooter__hours {
  grid-area: hours;
}
.pagefooter__hours p:first-child {
  text-transform: uppercase;
}
.pagefooter__hours p + p {
  margin-top: 24px;
}
.pagefooter {
  /*----------------------
  Buttons
  ------------------------*/
}
.pagefooter__buttons {
  display: flex;
  flex-direction: column;
  gap: 20px;
  grid-area: buttons;
  justify-self: end;
}
@media (max-width: 950px) {
  .pagefooter__buttons {
    justify-self: start;
  }
}
.pagefooter__button {
  min-width: 243px;
}
@media (max-width: 1500px) {
  .pagefooter__button {
    min-width: 213px;
  }
}
.pagefooter {
  /*----------------------
  In the mobile menu panel
  ------------------------*/
  /* The panel ("MENU-blue" frame) continues the navigation with the footer's
     content in one left-aligned column on the panel's plain blue: no gradient,
     and no padding of its own — the panel brings that. Placed last on purpose:
     at equal specificity it has to beat the mobile grid above. */
}
.pagefooter--menu {
  grid-template-columns: 1fr;
  grid-template-rows: none;
  grid-template-areas: "contact" "hours" "buttons" "copyright";
  max-width: var(--pagefooter-menu-max-width);
  padding: 0;
  background-image: none;
}

:root {
  --toast-duration: 260ms;
  --toast-offset: var(--gutter);
  --toast-padding: 12px 20px;
  --toast-font-size: 13px;
  --toast-shadow: 0 4px 8px rgba(0, 62, 124, 0.12);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --toast-duration: 0ms;
  }
}
.jasenovac-toast {
  position: fixed;
  bottom: var(--toast-offset);
  left: 50%;
  z-index: calc(var(--z-menubar) + 1);
  max-width: calc(100vw - 2 * var(--toast-offset));
  padding: var(--toast-padding);
  font-family: "Brix Sans", sans-serif;
  font-size: var(--toast-font-size);
  font-weight: 500;
  line-height: 1;
  letter-spacing: var(--medium);
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--white);
  background-color: var(--primary);
  border-radius: var(--border-radius-small);
  box-shadow: var(--toast-shadow);
  transform: translate(-50%, calc(100% + var(--toast-offset)));
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: transform var(--toast-duration) ease, opacity var(--toast-duration) ease, visibility 0s linear var(--toast-duration);
}
.jasenovac-toast.is-visible {
  transform: translate(-50%, 0);
  opacity: 1;
  visibility: visible;
  transition: transform var(--toast-duration) ease, opacity var(--toast-duration) ease, visibility 0s;
}
.jasenovac-toast__value {
  font-weight: 900;
}

/*--------------------------------
Headline
--------------------------------*/
.errorpage {
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 0 25px;
}
.errorpage h1 {
  margin: 0 0 40px 0;
}

/*--------------------------------
Text & Button
--------------------------------*/
:root {
  --loginpage-panel-width: 480px;
  --loginpage-field-height: 56px;
  --loginpage-reveal-space: 84px;
}
@media (max-width: 950px) {
  :root {
    --loginpage-field-height: 50px;
    --loginpage-reveal-space: 66px;
  }
}

.loginpage {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: var(--double-gutter) var(--gutter);
  background-color: var(--primary);
  background-image: url("../gradient/gradient-official-01.jpg");
  background-position: center center;
  background-size: cover;
}
.loginpage__panel {
  width: min(var(--loginpage-panel-width), 100%);
  text-align: center;
}
.loginpage__logo {
  display: block;
  max-width: var(--logo-width);
  margin: 0 auto var(--gap-large);
  transition: 300ms ease-in-out;
}
.loginpage__logo:active:not(:disabled) {
  scale: var(--press-scale);
}
.loginpage__logo svg {
  width: 100%;
}
.loginpage__title {
  font-size: var(--h4);
  line-height: var(--h4-height);
  letter-spacing: var(--medium);
}
.loginpage__label {
  display: block;
  margin-bottom: var(--gap-small);
  font-size: var(--small);
  line-height: var(--small-height);
  letter-spacing: var(--wide);
  text-transform: uppercase;
  font-weight: 900;
}
.loginpage__field {
  position: relative;
  margin-bottom: var(--gap-large);
}
.loginpage__input {
  width: 100%;
  height: var(--loginpage-field-height);
  padding: 0 0 3px 25px;
  border: var(--border-width) solid var(--white);
  border-radius: calc(var(--loginpage-field-height) / 2);
  background-color: transparent;
  color: var(--white);
  font-family: "Brix Sans", sans-serif;
  font-size: var(--copy);
  font-weight: 500;
  letter-spacing: var(--wide);
  text-align: left;
  transition: 300ms ease-in-out;
}
.loginpage__input:focus {
  background-color: rgba(255, 255, 255, 0.15);
}
.loginpage__reveal {
  position: absolute;
  top: 0;
  right: var(--gap-medium);
  height: var(--loginpage-field-height);
  border: 0;
  background: none;
  color: var(--white);
  font-family: "Brix Sans", sans-serif;
  font-size: var(--small);
  letter-spacing: var(--wide);
  text-transform: uppercase;
  font-weight: 900;
  cursor: pointer;
  transition: 300ms ease-in-out;
}
.loginpage__reveal:active:not(:disabled) {
  scale: var(--press-scale);
}
.loginpage__reveal:hover {
  color: var(--light);
}
.loginpage__remember {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--gap-small);
  margin-bottom: var(--gap-large);
  font-size: var(--small);
  line-height: var(--small-height);
  cursor: pointer;
}
.loginpage button[type=submit] {
  margin: 0 auto;
}
.loginpage .notice-error,
.loginpage .message {
  margin-bottom: var(--gap-large);
  padding: var(--gap-small) var(--gap-medium);
  border-radius: var(--border-radius-small);
  font-size: var(--small);
  line-height: var(--small-height);
  text-align: center;
}
.loginpage .notice-error {
  background-color: var(--negative);
}
.loginpage .message {
  background-color: rgba(255, 255, 255, 0.15);
}

html body .content .wp-block-media-text {
  padding-left: 0;
  padding-right: 0;
  gap: var(--gutter);
}
html body .content .wp-block-media-text__media {
  border-radius: var(--border-radius-large);
  overflow: hidden;
}
html body .content .wp-block-media-text__content {
  padding: 0 !important;
}
@media (max-width: 950px) {
  html body .content .wp-block-media-text {
    display: flex;
    flex-direction: column;
    max-width: 710px !important;
  }
}
html body .content .wp-block-media-text ul li {
  margin-bottom: calc(0.5 * var(--half-gutter));
}
html body .content .wp-block-media-text ul li:last-child {
  margin-bottom: var(--half-gutter);
}

/*--------------------------------------------------------------
core/image — block style "Caption inside"
--------------------------------------------------------------*/
:root {
  --image-caption-inset: var(--gap-medium);
  --image-caption-bottom: 11px;
}

.content .wp-block-image.is-style-caption-inside {
  position: relative;
  margin-bottom: 0;
}
.content .wp-block-image.is-style-caption-inside figcaption {
  position: absolute;
  inset-inline: 0;
  bottom: var(--image-caption-bottom);
  margin: 0;
  padding-inline: var(--image-caption-inset);
  font-size: var(--small);
  line-height: 1.2;
  text-align: center;
  color: inherit;
}
@media (max-width: 950px) {
  .content .wp-block-image.is-style-caption-inside {
    --image-caption-inset: var(--gap-small);
  }
}

/*--------------------------------------------------------------
core/image — block style "Rounded"
--------------------------------------------------------------*/
.wp-block-image.is-style-rounded img,
.wp-block-image .is-style-rounded img {
  border-radius: var(--border-radius-media);
}

/*--------------------------------------------------------------
core/cover — block style "Rounded"
--------------------------------------------------------------*/
.wp-block-cover.is-style-rounded {
  border-radius: var(--border-radius-media);
}

:root {
  --asset-slider-arrow-size: 35px;
  --asset-slider-arrows-inset: 10px;
  --asset-slider-dot-size: 14px;
  --asset-slider-arrows-width: calc(var(--asset-slider-arrow-size) * 2 + var(--gap-small) + var(--asset-slider-arrows-inset));
  --asset-slider-surface: var(--airy);
}
@media (max-width: 950px) {
  :root {
    --asset-slider-arrow-size: 30px;
  }
}

.is-style-bg-airy,
.has-airy-background-color {
  --asset-slider-surface: var(--white);
}

.jasenovac-asset-slider {
  position: relative;
  overflow: hidden;
  padding: var(--block-spacing) 0;
}
.jasenovac-asset-slider__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: var(--asset-slider-surface);
  transition: 500ms ease-in-out;
}
.jasenovac-asset-slider__inner {
  position: relative;
  z-index: 1;
  max-width: var(--content-width);
  margin: 0 auto;
}
.jasenovac-asset-slider__arrows {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: var(--gap-small);
  height: calc(var(--h2-height) + var(--asset-slider-arrows-inset));
  padding: 0 var(--gutter) var(--asset-slider-arrows-inset) var(--asset-slider-arrows-inset);
  background-color: var(--asset-slider-surface);
  transition: 500ms ease-in-out;
}
.jasenovac-asset-slider__arrow {
  width: var(--asset-slider-arrow-size);
  height: var(--asset-slider-arrow-size);
  border: 2px solid;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: 200ms ease-out;
}
.jasenovac-asset-slider__arrow svg {
  width: 55%;
  height: 55%;
}
.jasenovac-asset-slider__arrow--prev svg {
  transform: scaleX(-1);
}
.jasenovac-asset-slider__arrow:hover {
  opacity: 0.85;
}
.jasenovac-asset-slider__arrow:disabled {
  opacity: 0.35;
  cursor: default;
  transform: none;
}
.jasenovac-asset-slider__viewport {
  overflow: hidden;
  position: relative;
  transition: height 400ms ease-in-out;
}
.jasenovac-asset-slider__viewport.is-instant {
  transition: none;
}
.jasenovac-asset-slider__track {
  display: flex;
  align-items: flex-start;
  transition: transform 500ms ease-in-out;
}
.jasenovac-asset-slider__track.is-instant {
  transition: none;
}
.jasenovac-asset-slider__slide {
  flex: 0 0 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.jasenovac-asset-slider__dots {
  display: flex;
  justify-content: center;
  gap: var(--gap-small);
  margin-top: var(--gap-large);
}
.jasenovac-asset-slider__dot {
  width: var(--asset-slider-dot-size);
  height: var(--asset-slider-dot-size);
  border: 2px solid;
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  transition: 200ms ease-out;
}
.jasenovac-asset-slider__head {
  margin-bottom: var(--gap-large);
}
.jasenovac-asset-slider__title {
  margin: 0 0 12px;
}
.jasenovac-asset-slider--has-arrows .jasenovac-asset-slider__title {
  padding-right: calc(var(--asset-slider-arrows-width) + var(--gap-large));
}
.jasenovac-asset-slider__description {
  margin: 0;
  max-width: 900px;
}
.jasenovac-asset-slider__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: var(--gap-large);
}
.jasenovac-asset-slider__pills--sizes {
  margin-bottom: 0;
}
.jasenovac-asset-slider__pills--sizes.is-space-reserved {
  visibility: hidden;
  pointer-events: none;
}
.jasenovac-asset-slider__pill {
  white-space: nowrap;
  transition: 200ms ease-out;
}
.jasenovac-asset-slider__pill[hidden] {
  display: none;
}
.jasenovac-asset-slider__preview {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 300px;
  margin-bottom: var(--gap-large);
}
.jasenovac-asset-slider__preview-image {
  width: 55%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.jasenovac-asset-slider__download-label {
  margin: 0 0 16px;
}
@media (max-width: 950px) {
  .jasenovac-asset-slider__preview-image {
    width: 90%;
  }
}

.jasenovac-asset-slider.is-on-primary-bg .jasenovac-asset-slider__slide.is-active .jasenovac-asset-slider__title,
.jasenovac-asset-slider.is-on-primary-bg .jasenovac-asset-slider__slide.is-active .jasenovac-asset-slider__description,
.jasenovac-asset-slider.is-on-primary-bg .jasenovac-asset-slider__slide.is-active .jasenovac-asset-slider__download-label {
  color: var(--white);
}

:root {
  --card-slider-card-width-xl: 725px;
  --card-slider-card-gap-xl: 54px;
  --card-slider-card-radius-xl: 34px;
  --card-slider-card-padding-xl: 22px;
  --card-slider-card-width-cap: 70vw;
  --card-slider-card-width: min(var(--card-slider-card-width-xl), var(--card-slider-card-width-cap));
  --card-slider-card-gap: var(--card-slider-card-gap-xl);
  --card-slider-card-radius: var(--card-slider-card-radius-xl);
  --card-slider-card-padding: var(--card-slider-card-padding-xl);
  --card-slider-surface: var(--airy);
  --card-slider-preview-ratio: 16 / 9;
  --card-slider-preview-image-size: 70%;
  --card-slider-preview-text-size: 20cqw;
  --card-slider-title-size: var(--h3);
  --card-slider-title-height: var(--h3-height);
  --card-slider-title-tracking: var(--semi-narrow);
  --card-slider-text-size: var(--copy);
  --card-slider-text-height: var(--copy-height);
  --card-slider-arrow-size: 35px;
  --card-slider-arrow-gap: 43px;
  --card-slider-toggle-height: 35px;
  --card-slider-toggle-font-size: var(--button);
  --card-slider-toggle-padding: 35px;
  --card-slider-chip-height: 25px;
  --card-slider-chip-font-size: 13px;
  --card-slider-chip-padding: 10px;
  --card-slider-chip-row-gap: 12px;
  --card-slider-menu-offset: 6px;
  --card-slider-menu-duration: 260ms;
  --card-slider-menu-item-duration: 200ms;
  --card-slider-menu-item-stagger: 45ms;
  --card-slider-menu-marker-duration: 220ms;
  --card-slider-menu-shadow: 0 4px 8px rgba(0, 62, 124, 0.12);
  --card-slider-menu-space: 110px;
  --card-slider-fit-tolerance: 0.15;
}
@media (max-width: 1500px) {
  :root {
    --card-slider-card-gap-xl: 30px;
    --card-slider-card-radius-xl: 25px;
    --card-slider-arrow-gap: 20px;
  }
}
@media (max-width: 950px) {
  :root {
    --card-slider-card-width-cap: 84vw;
    --card-slider-card-padding-xl: 18px;
    --card-slider-arrow-size: 30px;
  }
}

.is-style-bg-airy,
.has-airy-background-color {
  --card-slider-surface: var(--white);
}

.jasenovac-card-slider {
  --card-slider-scale: 1;
  --card-slider-card-width: min(calc(var(--card-slider-card-width-xl) * var(--card-slider-scale)), var(--card-slider-card-width-cap));
  --card-slider-card-gap: calc(var(--card-slider-card-gap-xl) * var(--card-slider-scale));
  --card-slider-card-radius: calc(var(--card-slider-card-radius-xl) * var(--card-slider-scale));
  --card-slider-card-padding: calc(var(--card-slider-card-padding-xl) * var(--card-slider-scale));
  --card-slider-preview-gap: calc(var(--gap-large) * var(--card-slider-scale));
  --card-slider-title-gap: calc(var(--gap-small) * var(--card-slider-scale));
  --card-slider-row-gap: calc(var(--gap-medium) * var(--card-slider-scale));
  --card-slider-inset: max(
    var(--gutter),
    calc((100% - var(--content-width-wide)) / 2)
  );
  display: flow-root;
}
.jasenovac-card-slider__head {
  display: flex;
  align-items: center;
  gap: var(--gap-large);
  padding: 0 calc(var(--card-slider-inset) + var(--card-slider-card-padding));
  margin-bottom: var(--gap-medium);
}
.jasenovac-card-slider__heading {
  margin: 0;
}
.jasenovac-card-slider__arrows {
  display: flex;
  align-items: center;
  gap: var(--card-slider-arrow-gap);
  margin-left: auto;
  flex: 0 0 auto;
}
.jasenovac-card-slider__arrow {
  width: var(--card-slider-arrow-size);
  height: var(--card-slider-arrow-size);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 2px solid;
  border-radius: 50%;
  cursor: pointer;
  transition: 200ms ease-out;
}
.jasenovac-card-slider__arrow svg {
  width: 55%;
  height: 55%;
}
.jasenovac-card-slider__arrow--prev svg {
  transform: scaleX(-1);
}
.jasenovac-card-slider__arrow:hover {
  opacity: 0.85;
}
.jasenovac-card-slider__arrow:disabled {
  opacity: 0.35;
  cursor: default;
  transform: none;
}
.jasenovac-card-slider__track {
  display: flex;
  align-items: stretch;
  gap: var(--card-slider-card-gap);
  padding: 0 var(--card-slider-inset) var(--card-slider-menu-space);
  margin-bottom: calc(-1 * var(--card-slider-menu-space));
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-padding-left: var(--card-slider-inset);
  scrollbar-width: none;
  cursor: grab;
}
.jasenovac-card-slider__track::-webkit-scrollbar {
  display: none;
}
.jasenovac-card-slider__track.is-dragging, .jasenovac-card-slider__track.is-settling {
  scroll-snap-type: none;
}
.jasenovac-card-slider__track.is-dragging {
  cursor: grabbing;
  user-select: none;
}
.jasenovac-card-slider__card {
  flex: 0 0 var(--card-slider-card-width);
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  padding: var(--card-slider-card-padding);
  background-color: var(--card-slider-surface);
  border-radius: var(--card-slider-card-radius);
  transition: background-color 300ms ease-in-out;
}
.jasenovac-card-slider__preview {
  position: relative;
  flex: 0 0 auto;
  aspect-ratio: var(--card-slider-preview-ratio);
  min-height: 0;
  margin-bottom: var(--card-slider-preview-gap);
  container-type: inline-size;
}
.jasenovac-card-slider__preview-image {
  position: absolute;
  inset: 0;
  margin: auto;
  width: var(--card-slider-preview-image-size);
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.jasenovac-card-slider__preview-text {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.28em;
  margin: 0;
  padding: 0 var(--gap-medium);
  color: inherit;
  font-size: var(--card-slider-preview-text-size);
  line-height: 1;
  letter-spacing: var(--tight);
  font-weight: 700;
  text-align: center;
}
.jasenovac-card-slider__title {
  margin: 0 0 var(--card-slider-title-gap);
  font-size: var(--card-slider-title-size);
  line-height: var(--card-slider-title-height);
  letter-spacing: var(--card-slider-title-tracking);
}
.jasenovac-card-slider__description {
  margin: 0 0 var(--card-slider-row-gap);
  font-size: var(--card-slider-text-size);
  line-height: var(--card-slider-text-height);
}
.jasenovac-card-slider__variants {
  display: flex;
  flex-wrap: wrap;
  gap: var(--card-slider-title-gap);
  margin-bottom: var(--card-slider-row-gap);
}
.jasenovac-card-slider__variant {
  --button: var(--card-slider-toggle-font-size);
  height: var(--card-slider-toggle-height);
  padding: 0 var(--card-slider-toggle-padding) 3px;
}
.jasenovac-card-slider__downloads {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--card-slider-chip-row-gap);
}
.jasenovac-card-slider__downloads[hidden] {
  display: none;
}
.jasenovac-card-slider__chip {
  display: inline-flex;
  align-items: center;
  gap: var(--card-slider-chip-padding);
  height: var(--card-slider-chip-height);
  padding: 0 var(--card-slider-chip-padding);
  border: 1.5px solid;
  border-radius: calc(var(--card-slider-chip-height) / 2);
  font-size: var(--card-slider-chip-font-size);
  font-weight: 500;
  line-height: 1;
  letter-spacing: var(--medium);
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  transition: 200ms ease-out;
}
.jasenovac-card-slider__chip svg {
  flex: 0 0 auto;
}
.jasenovac-card-slider__format {
  position: relative;
  display: inline-flex;
}
.jasenovac-card-slider__sizes {
  position: absolute;
  top: calc(100% + var(--card-slider-menu-offset));
  left: 0;
  z-index: 2;
  display: grid;
  grid-template-rows: 0fr;
  width: max-content;
  min-width: 100%;
  background-color: var(--white);
  border-radius: var(--border-radius-small);
  box-shadow: var(--card-slider-menu-shadow);
  opacity: 0;
  visibility: hidden;
  transition: grid-template-rows var(--card-slider-menu-duration) ease, opacity var(--card-slider-menu-duration) ease, visibility 0s linear var(--card-slider-menu-duration);
}
.jasenovac-card-slider__sizes.is-open {
  grid-template-rows: 1fr;
  opacity: 1;
  visibility: visible;
  transition: grid-template-rows var(--card-slider-menu-duration) ease, opacity var(--card-slider-menu-duration) ease, visibility 0s;
}
.jasenovac-card-slider__sizes-inner {
  position: relative;
  overflow: hidden;
  padding: 0 calc(var(--card-slider-menu-offset) / 2);
}
.jasenovac-card-slider__sizes-marker {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  border-radius: calc(var(--card-slider-chip-height) / 2);
  background-color: var(--primary);
  opacity: 0;
  pointer-events: none;
  transition: transform var(--card-slider-menu-marker-duration) ease, width var(--card-slider-menu-marker-duration) ease, height var(--card-slider-menu-marker-duration) ease, opacity 140ms ease;
}
.jasenovac-card-slider__sizes-marker.is-instant {
  transition: opacity 140ms ease;
}
.jasenovac-card-slider__size {
  position: relative;
  z-index: 1;
  display: flex;
  margin: calc(var(--card-slider-menu-offset) / 2) 0;
  align-items: center;
  gap: var(--card-slider-chip-padding);
  height: var(--card-slider-chip-height);
  padding: 0 var(--card-slider-chip-padding);
  border-radius: calc(var(--card-slider-chip-height) / 2);
  font-size: var(--card-slider-chip-font-size);
  font-weight: 500;
  letter-spacing: var(--medium);
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--primary);
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity var(--card-slider-menu-item-duration) ease, transform var(--card-slider-menu-item-duration) ease, color var(--card-slider-menu-marker-duration) ease;
}
.jasenovac-card-slider__size svg {
  flex: 0 0 auto;
}
.jasenovac-card-slider__size:hover, .jasenovac-card-slider__size:focus-visible {
  color: var(--white);
}
.jasenovac-card-slider--size-l {
  --card-slider-scale: 0.85;
  --card-slider-title-size: var(--h4);
  --card-slider-title-height: var(--h4-height);
  --card-slider-title-tracking: var(--medium);
  --card-slider-toggle-height: 33px;
  --card-slider-toggle-font-size: 15px;
  --card-slider-toggle-padding: 28px;
  --card-slider-chip-height: 24px;
  --card-slider-chip-font-size: 12px;
  --card-slider-chip-padding: 9px;
  --card-slider-chip-row-gap: 10px;
}
.jasenovac-card-slider--size-m {
  --card-slider-scale: 0.7;
  --card-slider-title-size: var(--h5);
  --card-slider-title-height: var(--h5-height);
  --card-slider-title-tracking: var(--medium);
  --card-slider-toggle-height: 31px;
  --card-slider-toggle-font-size: 14px;
  --card-slider-toggle-padding: 22px;
  --card-slider-chip-height: 22px;
  --card-slider-chip-font-size: 11px;
  --card-slider-chip-padding: 8px;
  --card-slider-chip-row-gap: 9px;
}
.jasenovac-card-slider--size-s {
  --card-slider-scale: 0.55;
  --card-slider-title-size: var(--h6);
  --card-slider-title-height: var(--h6-height);
  --card-slider-title-tracking: var(--medium);
  --card-slider-text-size: var(--small);
  --card-slider-text-height: var(--small-height);
  --card-slider-toggle-height: 29px;
  --card-slider-toggle-font-size: 13px;
  --card-slider-toggle-padding: 18px;
  --card-slider-chip-height: 21px;
  --card-slider-chip-font-size: 11px;
  --card-slider-chip-padding: 7px;
  --card-slider-chip-row-gap: 8px;
}
.jasenovac-card-slider__preview--flush {
  margin: calc(-1 * var(--card-slider-card-padding)) calc(-1 * var(--card-slider-card-padding)) var(--card-slider-preview-gap);
  overflow: hidden;
  border-radius: var(--card-slider-card-radius) var(--card-slider-card-radius) 0 0;
}
.jasenovac-card-slider__preview--flush .jasenovac-card-slider__preview-image {
  width: 100%;
  object-fit: cover;
}
.jasenovac-card-slider--single {
  --card-slider-card-width: 100%;
}
.jasenovac-card-slider.is-fitted {
  --card-slider-card-width: calc(
    (100% - (var(--card-slider-count, 1) - 1) * var(--card-slider-card-gap))
    / var(--card-slider-count, 1)
  );
}
.jasenovac-card-slider.is-fitted .jasenovac-card-slider__arrows, .jasenovac-card-slider.is-fitted .jasenovac-card-slider__head--arrows-only {
  display: none;
}
.jasenovac-card-slider--single .jasenovac-card-slider__track, .jasenovac-card-slider.is-fitted .jasenovac-card-slider__track {
  cursor: default;
}

.jasenovac-card-slider__sizes.is-open .jasenovac-card-slider__size {
  opacity: 1;
  transform: none;
  transition: opacity var(--card-slider-menu-item-duration) ease calc(var(--card-slider-menu-index, 0) * var(--card-slider-menu-item-stagger)), transform var(--card-slider-menu-item-duration) ease calc(var(--card-slider-menu-index, 0) * var(--card-slider-menu-item-stagger)), color var(--card-slider-menu-marker-duration) ease;
}

@media (prefers-reduced-motion: reduce) {
  .jasenovac-card-slider {
    --card-slider-menu-duration: 0s;
    --card-slider-menu-item-duration: 0s;
    --card-slider-menu-item-stagger: 0s;
    --card-slider-menu-marker-duration: 0s;
  }
  .jasenovac-card-slider__size {
    transform: none;
  }
}
.jasenovac-card-slider__card.is-on-primary-bg .jasenovac-card-slider__title,
.jasenovac-card-slider__card.is-on-primary-bg .jasenovac-card-slider__description,
.jasenovac-card-slider__card.is-on-primary-bg .jasenovac-card-slider__preview-text {
  color: var(--white);
}

:root {
  --image-slider-card-height: 480;
  --image-slider-card-width-reference: 725;
  --image-slider-caption-gap: var(--gap-small);
}

.jasenovac-image-slider {
  --image-slider-inset: max(
    var(--gutter),
    calc((100% - var(--content-width-wide)) / 2)
  );
}
.jasenovac-image-slider__head {
  display: flex;
  align-items: center;
  gap: var(--gap-large);
  padding: 0 calc(var(--image-slider-inset) + var(--card-slider-card-padding));
  margin-bottom: var(--gap-medium);
}
.jasenovac-image-slider__heading {
  margin: 0;
}
.jasenovac-image-slider__arrows {
  display: flex;
  align-items: center;
  gap: var(--card-slider-arrow-gap);
  margin-left: auto;
  flex: 0 0 auto;
}
.jasenovac-image-slider__arrow {
  width: var(--card-slider-arrow-size);
  height: var(--card-slider-arrow-size);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 2px solid;
  border-radius: 50%;
  cursor: pointer;
  transition: 200ms ease-out;
}
.jasenovac-image-slider__arrow svg {
  width: 55%;
  height: 55%;
}
.jasenovac-image-slider__arrow--prev svg {
  transform: scaleX(-1);
}
.jasenovac-image-slider__arrow:hover {
  opacity: 0.85;
}
.jasenovac-image-slider__arrow:active {
  transform: scale(0.92);
}
.jasenovac-image-slider__arrow:disabled {
  opacity: 0.35;
  cursor: default;
  transform: none;
}
.jasenovac-image-slider__track {
  display: flex;
  align-items: flex-start;
  gap: var(--card-slider-card-gap);
  padding: 0 var(--image-slider-inset);
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-padding-left: var(--image-slider-inset);
  scrollbar-width: none;
  cursor: grab;
}
.jasenovac-image-slider__track::-webkit-scrollbar {
  display: none;
}
.jasenovac-image-slider__track.is-dragging, .jasenovac-image-slider__track.is-settling {
  scroll-snap-type: none;
}
.jasenovac-image-slider__track.is-dragging {
  cursor: grabbing;
  user-select: none;
}
.jasenovac-image-slider__item {
  position: relative;
  flex: 0 0 var(--card-slider-card-width);
  scroll-snap-align: start;
  margin: 0;
}
.jasenovac-image-slider__card {
  position: relative;
  aspect-ratio: var(--image-slider-card-width-reference)/var(--image-slider-card-height);
  overflow: hidden;
  background-color: var(--card-slider-surface);
  border-radius: var(--card-slider-card-radius);
}
.jasenovac-image-slider__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.jasenovac-image-slider__image--contain {
  object-fit: contain;
}
.jasenovac-image-slider__caption {
  margin: 0;
  font-size: var(--small);
  line-height: var(--small-height);
  color: inherit;
}
.jasenovac-image-slider__caption--below {
  margin-top: var(--image-slider-caption-gap);
  padding-inline: var(--card-slider-card-padding);
}
.jasenovac-image-slider__caption--inside {
  position: absolute;
  inset-inline: 0;
  bottom: var(--image-caption-bottom);
  padding-inline: var(--image-caption-inset);
  line-height: 1.2;
  text-align: center;
}
@media (max-width: 950px) {
  .jasenovac-image-slider__caption--inside {
    padding-inline: var(--gap-small);
  }
}

:root {
  --color-palette-min-height: 360px;
  --color-palette-swatch-min-width: 200px;
  --color-palette-padding-block: var(--gap-large);
  --color-palette-row-min-width: 320px;
  --color-palette-key-gap: var(--gap-small);
  --color-palette-item-gap: 2px;
  --color-palette-item-gap-stacked: 8px;
  --color-palette-mark-size: 0.7em;
  --color-palette-mark-size-hex: 0.45em;
  --color-palette-mark-gap: 0.35em;
  --color-palette-shadow: 0 4px 8px rgba(0, 62, 124, 0.12);
}
@media (max-width: 950px) {
  :root {
    --color-palette-padding-block: var(--gap-medium);
  }
}

.jasenovac-color-palette.wp-block-jasenovac-color-palette.alignfull {
  max-width: calc(var(--content-width) + var(--double-gutter));
  margin-inline: auto;
}
.jasenovac-color-palette {
  box-shadow: var(--color-palette-shadow);
  border-radius: var(--border-radius-medium);
  overflow: hidden;
}
.jasenovac-color-palette .jasenovac-color-palette__band {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: inherit;
}
.jasenovac-color-palette .jasenovac-color-palette__swatch {
  position: relative;
  flex: var(--color-palette-weight, 1) 1 0;
  min-width: var(--color-palette-swatch-min-width);
  min-height: max(var(--color-palette-min-height), var(--color-palette-swatch-height, 0px));
  display: flex;
  flex-direction: column;
  gap: var(--gap-medium);
  margin: 0;
  padding: var(--color-palette-padding-block) var(--gutter);
  background-color: var(--color-palette-swatch);
  color: var(--primary);
  transition: none;
}
.jasenovac-color-palette .jasenovac-color-palette__swatch.is-on-dark {
  color: var(--white);
}
.jasenovac-color-palette .jasenovac-color-palette__band.is-wrapped {
  display: grid;
  grid-template-columns: var(--color-palette-columns);
}
.jasenovac-color-palette__band.is-wrapped .jasenovac-color-palette__swatch {
  grid-column: span var(--color-palette-span, 1);
}
.jasenovac-color-palette .jasenovac-color-palette__values {
  display: flex;
  flex-direction: column;
  gap: var(--color-palette-item-gap);
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--small);
  line-height: var(--small-height);
}
.jasenovac-color-palette .jasenovac-color-palette__item {
  margin: 0;
  transition: none;
}
.jasenovac-color-palette__copy {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}
.jasenovac-color-palette__copy:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
.jasenovac-color-palette__copy--hex {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}
.jasenovac-color-palette__copy--hex:hover .jasenovac-color-palette__hex {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.jasenovac-color-palette__name {
  font-size: var(--overline);
  line-height: var(--overline-height);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: var(--wide);
}
.jasenovac-color-palette__hex {
  position: relative;
  font-size: min(var(--h3), (var(--color-palette-swatch-narrowest, var(--color-palette-swatch-min-width)) - 2 * var(--gutter)) / 5);
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: var(--tight);
}
.jasenovac-color-palette__copy--value {
  display: flex;
  gap: var(--color-palette-key-gap);
  align-items: baseline;
  width: auto;
}
.jasenovac-color-palette__copy--value:hover .jasenovac-color-palette__value {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.jasenovac-color-palette__key {
  flex: 0 0 5em;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: var(--medium);
  opacity: 0.7;
}
.jasenovac-color-palette__value {
  position: relative;
  font-weight: 500;
}
.jasenovac-color-palette__band.is-stacked .jasenovac-color-palette__values {
  gap: var(--color-palette-item-gap-stacked);
}
.jasenovac-color-palette__band.is-stacked .jasenovac-color-palette__copy--value {
  flex-direction: column;
  gap: 0;
}
.jasenovac-color-palette__band.is-stacked .jasenovac-color-palette__key {
  flex-basis: auto;
}
.jasenovac-color-palette__hex::after, .jasenovac-color-palette__value::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(100% + var(--color-palette-mark-gap));
  width: var(--color-palette-mark-size);
  height: var(--color-palette-mark-size);
  background-color: currentColor;
  -webkit-mask: url("../icons/copy.svg") center/contain no-repeat;
  mask: url("../icons/copy.svg") center/contain no-repeat;
  opacity: 0;
  transition: 200ms ease-out;
}
.jasenovac-color-palette__hex::after {
  width: var(--color-palette-mark-size-hex);
  height: var(--color-palette-mark-size-hex);
}
.jasenovac-color-palette__swatch:hover .jasenovac-color-palette__hex::after,
.jasenovac-color-palette__swatch:hover .jasenovac-color-palette__value::after, .jasenovac-color-palette__swatch:focus-within .jasenovac-color-palette__hex::after,
.jasenovac-color-palette__swatch:focus-within .jasenovac-color-palette__value::after {
  opacity: 1;
}

/*--------------------------------------------------------------
core/table
--------------------------------------------------------------*/
:root {
  --table-cell-padding-block: 14px;
  --table-cell-padding-inline: 16px;
}
@media (max-width: 950px) {
  :root {
    --table-cell-padding-inline: 12px;
  }
}

.wp-block-table {
  overflow-x: auto;
}
.wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.wp-block-table th,
.wp-block-table td {
  padding: var(--table-cell-padding-block) var(--table-cell-padding-inline);
  vertical-align: baseline;
  text-align: left;
  border: 0;
  border-top: 1px solid var(--grey);
}
.wp-block-table tbody th {
  font-weight: 700;
  white-space: nowrap;
}
.wp-block-table thead th {
  border-top: 0;
  border-bottom: 1px solid var(--primary);
  font-size: var(--small);
  line-height: var(--small-height);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: var(--wide);
}
.wp-block-table thead + tbody tr:first-child th,
.wp-block-table thead + tbody tr:first-child td {
  border-top: 0;
}
.wp-block-table figcaption {
  margin-top: var(--gap-small);
  font-size: var(--small);
  line-height: var(--small-height);
}

/*--------------------------------------------------------------
core/code — the copy-and-paste panel
--------------------------------------------------------------*/
:root {
  --code-height: 400px;
  --code-font-size: calc(var(--copy) * 0.7);
  --code-line-height: 1.6;
  --code-fade-height: 140px;
  --code-chip-height: 25px;
  --code-chip-font-size: 13px;
  --code-chip-padding: 10px;
  --code-surface: var(--airy);
}

.is-style-bg-airy,
.has-airy-background-color {
  --code-surface: var(--white);
}

.wp-block-code {
  padding: var(--gap-large);
  border: 0;
  border-radius: var(--border-radius-media);
  color: var(--primary);
  background: var(--code-surface);
}
.wp-block-code code {
  display: block;
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-size: var(--code-font-size);
  line-height: var(--code-line-height);
  letter-spacing: 0;
  color: inherit;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.jasenovac-code {
  color: var(--primary);
}
.jasenovac-code__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--border-radius-media);
  background: var(--code-surface);
  overflow: hidden;
}
.jasenovac-code .wp-block-code {
  flex: 1 1 auto;
  min-height: 0;
  padding-top: var(--gap-small);
  border-radius: 0;
  background: none;
}
.jasenovac-code__bar {
  display: flex;
  flex: 0 0 auto;
  justify-content: flex-end;
  padding: var(--gap-medium) var(--gap-large) 0;
}
.jasenovac-code .jasenovac-code__copy {
  display: inline-flex;
  align-items: center;
  height: var(--code-chip-height);
  padding: 0 var(--code-chip-padding);
  font-family: "Brix Sans", sans-serif;
  font-size: var(--code-chip-font-size);
  font-weight: 500;
  line-height: 1;
  letter-spacing: var(--medium);
  text-transform: uppercase;
  white-space: nowrap;
  border: 1.5px solid;
  border-radius: calc(var(--code-chip-height) / 2);
  cursor: pointer;
  transition: 200ms ease-out;
}
.jasenovac-code__fade {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: calc(var(--code-fade-height) + 60px);
  background: linear-gradient(to bottom, transparent, var(--code-surface) 60%);
  opacity: 0;
  pointer-events: none;
  transition: 300ms ease-in-out;
}
.jasenovac-code__foot {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  justify-content: center;
  padding: var(--gap-small) var(--gap-large) var(--gap-medium);
}
.jasenovac-code__foot[hidden] {
  display: none;
}
.jasenovac-code .jasenovac-code__expand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  font-family: "Brix Sans", sans-serif;
  font-size: var(--code-chip-font-size);
  font-weight: 900;
  line-height: 1;
  letter-spacing: var(--medium);
  text-transform: uppercase;
  color: inherit;
  border: 0;
  background: none;
  cursor: pointer;
  transition: 200ms ease-out;
}
.jasenovac-code .jasenovac-code__expand svg {
  flex: 0 0 auto;
  transition: 200ms ease-out;
}
.jasenovac-code .jasenovac-code__expand:hover {
  opacity: 0.7;
}
.jasenovac-code.is-collapsed .jasenovac-code__panel {
  max-height: var(--code-height);
}
.jasenovac-code.is-collapsed .wp-block-code {
  overflow: hidden;
}
.jasenovac-code.is-collapsed .jasenovac-code__fade {
  opacity: 1;
}
.jasenovac-code.is-expanded .jasenovac-code__expand svg {
  transform: rotate(180deg);
}

:root {
  --bg-airy-rose-min-height: 70vh;
  --bg-airy-rose-height: 100%;
  --bg-airy-rose-top: 5%;
  --bg-airy-rose-bleed: -10%;
  --bg-airy-rose-opacity: 0.18;
  --bg-airy-rose-glow-rgb: 152, 195, 217;
  --bg-airy-rose-glow-alpha: 0.3;
  --bg-airy-rose-glow-height: 195px;
}
@media (max-width: 1500px) {
  :root {
    --bg-airy-rose-bleed: -25%;
  }
}
@media (max-width: 1200px) {
  :root {
    --bg-airy-rose-bleed: -40%;
  }
}
@media (max-width: 950px) {
  :root {
    --bg-airy-rose-glow-height: 120px;
  }
}

.is-style-bg-airy-rose {
  position: relative;
  min-height: var(--bg-airy-rose-min-height);
  overflow: hidden;
  isolation: isolate;
  background-image: url("../gradient/gradient-light-01.jpg");
  background-position: center center;
  background-size: cover;
}
.is-style-bg-airy-rose:not(.is-layout-flex):not(.is-layout-grid) {
  display: grid;
  align-content: center;
}
.is-style-bg-airy-rose::before {
  content: "";
  position: absolute;
  top: var(--bg-airy-rose-top);
  right: 0;
  z-index: -1;
  height: var(--bg-airy-rose-height);
  aspect-ratio: 984.389/795;
  transform: translateX(calc(var(--bg-airy-rose-bleed) * -1));
  background-image: url("../flower-illustration.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  opacity: var(--bg-airy-rose-opacity);
}
.is-style-bg-airy-rose::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  height: var(--bg-airy-rose-glow-height);
  background-image: linear-gradient(to top, rgba(var(--bg-airy-rose-glow-rgb), var(--bg-airy-rose-glow-alpha)), rgba(var(--bg-airy-rose-glow-rgb), 0));
}

.is-style-bg-light-02 {
  background-image: url("../gradient/gradient-light-02.jpg");
  background-position: center center;
  background-size: cover;
}

.is-style-bg-light-03 {
  background-image: url("../gradient/gradient-light-03.jpg");
  background-position: center center;
  background-size: cover;
}

.is-style-bg-dark-01 {
  background-image: url("../gradient/gradient-dark-01.jpg");
  background-position: center center;
  background-size: cover;
}

.is-style-bg-dark-02 {
  background-image: url("../gradient/gradient-dark-02.jpg");
  background-position: center center;
  background-size: cover;
}

.is-style-bg-primary {
  background-color: var(--primary);
}

.is-style-bg-light {
  background-color: var(--light);
}

.is-style-bg-airy {
  background-color: var(--airy);
}

.has-block-link {
  position: relative;
  transition: 200ms ease-out;
}
.has-block-link :where(a, button, input, select, textarea, summary):not(.jasenovac-block-link) {
  position: relative;
  z-index: 1;
}
.has-block-link:has(> .jasenovac-block-link:active) {
  scale: var(--press-scale);
}

.jasenovac-block-link {
  position: absolute;
  inset: 0;
}

:root {
  --full-height: calc(100dvh - var(--admin-bar-height) - var(--menubar-height));
}

.has-full-height {
  min-height: var(--full-height);
}

.wp-block-group-is-layout-flex:not(.is-vertical) {
  flex-wrap: wrap !important;
}
.wp-block-group-is-layout-flex:not(.is-vertical) > * {
  flex: 1 1 0;
}
@media (max-width: 1200px) {
  .wp-block-group-is-layout-flex:not(.is-vertical) > * {
    flex-basis: 40%;
  }
}
@media (max-width: 950px) {
  .wp-block-group-is-layout-flex:not(.is-vertical) > * {
    flex-basis: 100%;
  }
}

.frontpageheader__teaser:hover {
  -webkit-box-shadow: 0px 0px 25px 0px rgba(80, 160, 210, 0.7);
  -moz-box-shadow: 0px 0px 25px 0px rgba(80, 160, 210, 0.7);
  box-shadow: 0px 0px 25px 0px rgba(80, 160, 210, 0.7);
}

.frontpageheading {
  text-transform: uppercase;
  font-size: clamp(30px, 7vw, 150px);
  margin-bottom: var(--gutter);
  padding: 0 var(--gutter);
  line-height: 100%;
}

/*# sourceMappingURL=main.css.map */
