html {
  --fla-heading-font-family: "CenturyGothicStd", "Inter", sans-serif;
  --fla-subheading-font-family: "Poppins";
  --fla-body-font-family: "Inter", "Helvetica Neue", "Arial", "Helvetica", "sans-serif";
  --fla-text-color-light: rgba(255,255,255,0.618);
}

body {
  --fla-dock-height: 0px;
}

body[data-fla-state*="do:1"] {
  --fla-dock-height: var(--fla-footer-height);
}

/**
 * TO BE INCLUDED WITHIN THE CONTENT CONTAINING ELEMENT
 * (WHERE THE SCOLLING DOES HAPPEN)
 */
/**
 * Must be applied not to the block element but the h1/h2/h3 directly
 * block must be display: contents
 */
/**
  NOTE: THIS IS SPECIFIC TO FONTS
  ARIAL: 0.318/2
 */
/**
 * What this does, is:
 * Given a Text like "First, Last and Always" we have the descender "y"
 * this mixin calculates the space that is taken by descenders and subtracts it
 * from the height of the element via negative margin bottom. By the way:
 * the descender space is also taken if we have text that does NOT have a descender!
 * When to use:
 * - The text block needs to sit bottom align with a specific design line or element
 *
 * When NOT to use:
 * - If another text block is placed below this one. in that case we need to use another mixin "centuryGothicDescendantEqualizer"
 *
 * Get the UnitsPerEM via "ttx -t head CenturyGothicStd.ttf" (fonttools)
 * Get the sTypoDescender via `ttx -t OS/2 CenturyGothicStd.ttf` (fonttools)
 * Calculate the Descener Ratio: Descender Ratio = |sTypoDescender| / unitsPerEm
 * Translate into CSS: margin-bottom: calc(-1*<DescenderRatio>)
 *
 * @see https://stackoverflow.com/questions/27631736/meaning-of-top-ascent-baseline-descent-bottom-and-leading-in-androids-font
 */
/**
 What we do here is:
 Based on this graphic: https://i.sstatic.net/LwZJF.png we cut off the
 distance from the bottom to the Descent
 */
/**
 * @deprecated Moved to a SDC component
 */
/**
 * Meant to glue the menu image before and after the content area so it can be used as glass background..
 */
/**
 * Use the content's image as a background below the content area to prevent boring grey areas
 */
/*
 * Use this for sections where the main content area must start below the header (not overlayed by the glass header)
 * to look fine u need to define a backkground image either for the body element or the layout container
 */
body.page-node-type-page {
  /**
 * TO BE INCLUDED WITHIN THE CONTENT CONTAINING ELEMENT
 * (WHERE THE SCOLLING DOES HAPPEN)
 */
  /**
 * Must be applied not to the block element but the h1/h2/h3 directly
 * block must be display: contents
 */
  /**
  NOTE: THIS IS SPECIFIC TO FONTS
  ARIAL: 0.318/2
 */
  /**
 * What this does, is:
 * Given a Text like "First, Last and Always" we have the descender "y"
 * this mixin calculates the space that is taken by descenders and subtracts it
 * from the height of the element via negative margin bottom. By the way:
 * the descender space is also taken if we have text that does NOT have a descender!
 * When to use:
 * - The text block needs to sit bottom align with a specific design line or element
 *
 * When NOT to use:
 * - If another text block is placed below this one. in that case we need to use another mixin "centuryGothicDescendantEqualizer"
 *
 * Get the UnitsPerEM via "ttx -t head CenturyGothicStd.ttf" (fonttools)
 * Get the sTypoDescender via `ttx -t OS/2 CenturyGothicStd.ttf` (fonttools)
 * Calculate the Descener Ratio: Descender Ratio = |sTypoDescender| / unitsPerEm
 * Translate into CSS: margin-bottom: calc(-1*<DescenderRatio>)
 *
 * @see https://stackoverflow.com/questions/27631736/meaning-of-top-ascent-baseline-descent-bottom-and-leading-in-androids-font
 */
  /**
 What we do here is:
 Based on this graphic: https://i.sstatic.net/LwZJF.png we cut off the
 distance from the bottom to the Descent
 */
  /**
 * @deprecated Moved to a SDC component
 */
  /**
 * Meant to glue the menu image before and after the content area so it can be used as glass background..
 */
  /**
 * Use the content's image as a background below the content area to prevent boring grey areas
 */
  /*
 * Use this for sections where the main content area must start below the header (not overlayed by the glass header)
 * to look fine u need to define a backkground image either for the body element or the layout container
 */
}

body.page-node-type-page[class*="options-texture__html"], body.page-node-type-page[class*="options-grade__html"] {
  background-color: #333;
}

body.page-node-type-page .node__content {
  width: 100%;
  /**
     * TOC Table of contents (within header image area)
     */
}

body.page-node-type-page .node__content .field--name-field-image .toc-filter {
  display: none;
}

@container layout-container (min-aspect-ratio: 1) {
  body.page-node-type-page .node__content .field--name-field-image .toc-filter {
    display: block;
    position: absolute;
    bottom: 1em;
    right: calc(1em);
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 3;
    padding-left: 2em;
    border-radius: 10px;
  }
  body.page-node-type-page .node__content .field--name-field-image .toc-filter:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
  }
  body.page-node-type-page .node__content .field--name-field-image .toc-filter:before {
    z-index: -1;
    background-color: rgba(0, 0, 0, 0.35);
    border-radius: 0;
    backdrop-filter: grayscale(20%) blur(3px) brightness(60%);
  }
  body.page-node-type-page .node__content .field--name-field-image .toc-filter li {
    list-style-type: disclosure-closed;
  }
}

@container layout-container (min-aspect-ratio: 1.6666666667) {
  body.page-node-type-page .node__content .field--name-field-image .toc-filter {
    display: none;
  }
}

body.page-node-type-page .node__content .field--name-field-image {
  width: 100%;
  margin: unset;
  position: relative;
}

body.page-node-type-page .node__content h2 {
  margin: 0;
  padding: 1rem;
}

body.page-node-type-page .node__content .fla-content-background {
  z-index: -1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

body.page-node-type-page .node__content .fla-content-background, body.page-node-type-page .node__content .fla-content-background > img {
  position: absolute;
  top: 0;
  left: 0;
}

body.page-node-type-page .node__content .fla-content-background > img {
  width: 100%;
  height: 100%;
  object-position: center center;
  object-fit: cover;
}

body.page-node-type-page .node__content .fla-content-background:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  pointer-events: none;
}

body.page-node-type-page .node__content .fla-content-background:before {
  z-index: 2;
  background-color: rgba(0, 0, 0, 0.35);
  border-radius: 0;
  backdrop-filter: grayscale(20%) blur(3px) brightness(60%);
}

body.page-node-type-page .node__content .fla-content-background:before {
  backdrop-filter: grayscale(20%) blur(10px) brightness(60%);
}

@container layout-container (min-aspect-ratio: 1.6666666667) {
  body.page-node-type-page .node__content .fla-content-background {
    display: none;
  }
}

body.page-node-type-page .node__content div:first-of-type:last-of-type.field--name-field-image {
  width: 100%;
  position: relative;
  overflow: auto;
  overflow-y: hidden;
  margin: 0;
  padding: 10px 10px 30px 10px;
}

body.page-node-type-page .node__content div:first-of-type:last-of-type.field--name-field-image .field__item {
  position: relative;
  width: 100%;
  display: inline-block;
  margin-bottom: 20px;
}

body.page-node-type-page .node__content div:first-of-type:last-of-type.field--name-field-image .field__item img {
  width: 100%;
  height: calc(100vw - 20px);
  object-position: center bottom;
  object-fit: cover;
}

body.page-node-type-page .node__content div:first-of-type:last-of-type.field--name-field-image .field__item .caption.before {
  display: block !important;
  position: absolute;
  width: 100%;
  top: 0;
  font-size: 1.125rem;
  line-height: 1.6;
  background-color: rgba(0, 0, 0, 0.8);
  color: #efefef;
  padding: 3px 5px 0 5px;
}

body.page-node-type-page .node__content .field--name-body {
  padding: 0 10px 10px 10px;
}

body.page-node-type-page .node__content .field--name-body h3 {
  font-weight: 300;
  margin-bottom: 0.25em;
}

body.page-node-type-page .node__content .field--name-body .toc-filter .toc-default {
  margin: auto;
  width: auto;
  padding: 0 1em;
}

body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image .field__item {
  height: 100%;
}

body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image img {
  min-height: calc(var(--fla-header-height) + 40vh);
  width: 100%;
  object-fit: cover;
  object-position: left bottom;
}

@container layout-container (min-aspect-ratio: 1) {
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image {
    width: 100%;
  }
}

@container layout-container (min-aspect-ratio: 1.6666666667) {
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image {
    height: calc(100vh);
    position: absolute;
  }
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image img {
    height: 100%;
    object-position: left center;
  }
}

body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content {
  position: relative;
  padding-bottom: calc(var(--fla-header-footer-height));
}

@container layout-container (min-aspect-ratio: 1) {
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content .field--name-body .toc-filter > .toc-default {
    display: none !important;
  }
}

@container layout-container (min-aspect-ratio: 1.6666666667) {
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content {
    z-index: 0;
    height: auto;
    position: absolute;
    right: 1em;
    top: calc(1em + var(--fla-header-height));
    bottom: calc(1em + var(--fla-dock-height));
    left: 50%;
    max-height: calc(100vh - 2em - var(--fla-header-height));
    border-radius: 10px;
    padding-bottom: 10px;
  }
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    pointer-events: none;
  }
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content:before {
    z-index: -1;
    background-color: rgba(0, 0, 0, 0.35);
    border-radius: 10px;
    backdrop-filter: grayscale(20%) blur(3px) brightness(60%);
  }
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content .field--name-body .toc-filter > .toc-default {
    display: block !important;
  }
  body.page-node-type-page .node__content div:first-of-type:not(:last-of-type).field--name-field-image + .actual-content .field--name-body {
    height: 100%;
    overflow: auto;
    padding-bottom: var(--fla-header-footer-height);
  }
}

body.page-node-type-page html {
  --fla-heading-font-family: "CenturyGothicStd", "Inter", sans-serif;
  --fla-subheading-font-family: "Poppins";
  --fla-body-font-family: "Inter", "Helvetica Neue", "Arial", "Helvetica", "sans-serif";
  --fla-text-color-light: rgba(255,255,255,0.618);
}

body.page-node-type-page body {
  --fla-dock-height: 0px;
}

body.page-node-type-page body[data-fla-state*="do:1"] {
  --fla-dock-height: var(--fla-footer-height);
}

body.page-node-type-page article.has-gmap .node__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: calc(100dvh - var(--fla-dock-height));
}

body.page-node-type-page article.has-gmap .actual-content {
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.35);
  border-radius: 10px;
  backdrop-filter: grayscale(20%) blur(3px) brightness(60%);
}

body.page-node-type-page article.has-gmap .actual-content .fla-content-background {
  display: none !important;
}

body.page-node-type-page article.has-gmap .actual-content .field {
  flex: 0 0 50%;
}

body.page-node-type-page article.has-gmap .actual-content .field.field--name-field-simple-gmap {
  flex-basis: calc(50% + var(--fla-header-height));
  position: relative;
}

body.page-node-type-page article.has-gmap .actual-content .field.field--name-field-simple-gmap iframe {
  display: none;
}

html:not(.touchevents) body.page-node-type-page article.has-gmap .actual-content .field.field--name-field-simple-gmap {
  mix-blend-mode: screen;
}

html:not(.touchevents) body.page-node-type-page article.has-gmap .actual-content .field.field--name-field-simple-gmap:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  pointer-events: none;
}

html:not(.touchevents) body.page-node-type-page article.has-gmap .actual-content .field.field--name-field-simple-gmap:before {
  pointer-events: none;
  transition: backdrop-filter 0.4s ease-in-out;
  backdrop-filter: saturate(0.05) contrast(1);
}

html:not(.touchevents) body.page-node-type-page article.has-gmap .actual-content .field.field--name-field-simple-gmap:hover:before {
  opacity: 1;
  backdrop-filter: saturate(0.85) contrast(1);
}

body.page-node-type-page article.has-gmap .actual-content .field.field--name-body {
  overflow-y: auto;
}

body.page-node-type-page article.has-gmap .actual-content .field.field--name-body a:hover {
  text-decoration: underline;
  text-underline-offset: 0.3em;
}

@media screen and (min-width: 1024px) {
  body.page-node-type-page article.has-gmap .node__content {
    height: calc(100dvh - var(--fla-dock-height));
    display: flex;
    flex-direction: column;
    justify-content: end;
  }
  body.page-node-type-page article.has-gmap .actual-content {
    flex-direction: row;
    height: calc(50dvh);
    width: 45dvw;
    margin-bottom: 2rem;
    margin-left: 2rem;
    min-width: 700px;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.35);
    border-radius: 10px;
    backdrop-filter: grayscale(20%) blur(3px) brightness(60%);
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.5);
  }
  body.page-node-type-page article.has-gmap .field {
    flex: 0 0 50dvw;
  }
  body.page-node-type-page article.has-gmap .field.field--name-field-simple-gmap {
    display: block !important;
    flex: 1 1 61.8%;
    height: 100%;
    align-self: end;
    padding: 2rem;
    margin-right: -2rem;
  }
  body.page-node-type-page article.has-gmap .field.field--name-field-simple-gmap iframe {
    display: block !important;
  }
  body.page-node-type-page article.has-gmap .field.field--name-field-simple-gmap iframe {
    border: 2px solid rgba(255, 255, 255, 0.7) !important;
    border-radius: 10px;
  }
  body.page-node-type-page article.has-gmap .field.field--name-field-simple-gmap p.simple-gmap-link {
    display: none;
  }
  body.page-node-type-page article.has-gmap .field.field--name-body {
    flex: 0 0 38.2%;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: end;
    text-align: left;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: calc(2rem);
    overflow-y: visible;
    min-width: 200px;
  }
  body.page-node-type-page article.has-gmap .field.field--name-body p {
    white-space: nowrap;
  }
  body.page-node-type-page article.has-gmap .field.field--name-body p:last-of-type {
    margin-block-end: 0;
  }
}

/*# sourceMappingURL=fla-page.css.map */