@charset "UTF-8";
/* ------------------------------------------------------------------------------ /*
/*  THEME STYLES
/* ------------------------------------------------------------------------------ */
:root {
  /* Colors */
  --phw-background-color: #FFFFFF;
  --phw-light-background-color: #EFEFEF;
  --phw-dark-background-color: #1A1A1A;
  --phw-primary-color: #001848;
  --phw-secondary-color: #0D8CFF;
  --phw-border-color: #70BCFE;
  --phw-accent-color: #0D8CFF;
  --phw-accent-dark-color: #70BCFE;
  --phw-accent-light-color: #69ABCC;
  --phw-accent-pale-color: #C5E0F6;
  --phw-white-color: #FFFFFF;
  --phw-light-grey-color: #EEEEEE;
  --phw-dark-grey-color: #939393;
  --phw-black-color: #070504;
}
:root .dark-mode,
:root #site-header.dark {
  --phw-background-color: #070504;
  --phw-light-background-color: #222222;
  --phw-primary-color: #FFFFFF;
}
:root {
  /* Alignments */
  --phw-inner-width-thin: 64rem;
  --phw-inner-width-small: 84rem;
  --phw-inner-width-medium: 102rem;
  --phw-inner-width-wide: 130rem;
  /* Spacing */
  --phw-gutter: clamp(4.8rem, calc(14.4vw - 3.84rem), 19.2rem);
  --phw-gap: clamp(2.4rem, calc(7.2vw - 1.92rem), 9.6rem);
  --phw-spacer: clamp(2.4rem, calc(2.4vw + 0.96rem), 4.8rem);
  --phw-spacer-xxs: clamp(1.2rem, calc(0.4vw + 0.96rem), 1.6rem);
  --phw-spacer-xs: clamp(1.6rem, calc(0.8vw + 1.12rem), 2.4rem);
  --phw-spacer-sm: clamp(2.4rem, calc(0.8vw + 1.92rem), 3.2rem);
  --phw-spacer-md: clamp(3.2rem, calc(1.6vw + 2.24rem), 4.8rem);
  --phw-spacer-lg: clamp(3.2rem, calc(6.4vw - 0.64rem), 9.6rem);
  --phw-spacer-xl: clamp(4.8rem, calc(4.8vw + 1.92rem), 9.6rem);
  --phw-spacer-xxl: clamp(4.8rem, calc(8vw + 0rem), 12.8rem);
  --phw-spacer-xxxl: clamp(6.4rem, calc(6.4vw + 2.56rem), 12.8rem);
  /* Typography */
  --phw-body-font-size: clamp(1.6rem, calc(0.2vw + 1.48rem), 1.8rem);
  --phw-body-line-height: clamp(2.4rem, calc(0.3vw + 2.22rem), 2.7rem);
  --phw-body-font: "Graphik", Arial, sans-serif;
  --phw-body-font-weight: 400;
  --phw-body-font-weight-bold: 600;
  --phw-body-letter-spacing: 0;
  --phw-body-text-transform: none;
  --phw-body-paragraph-spacing: 1.25em;
  --phw-xs-font-size: clamp(1.2rem, calc(0vw + 1.2rem), 1.2rem);
  --phw-xs-line-height: clamp(1.8rem, calc(0vw + 1.8rem), 1.8rem);
  --phw-sm-font-size: clamp(1.4rem, calc(0vw + 1.4rem), 1.4rem);
  --phw-sm-line-height: clamp(2.1rem, calc(0vw + 2.1rem), 2.1rem);
  --phw-lg-font-size: clamp(2.2rem, calc(0.8vw + 1.72rem), 3rem);
  --phw-lg-line-height: clamp(3.08rem, calc(1.4vw + 2.228rem), 4.5rem);
  --phw-heading-font: "Graphik", Arial, sans-serif;
  --phw-heading-font-weight: 500;
  --phw-heading-font-weight-bold: 600;
  --phw-heading-letter-spacing: 0;
  --phw-heading-text-transform: none;
  --phw-h1-font-size: clamp(4.4rem, calc(2.8vw + 2.72rem), 7.2rem);
  --phw-h1-line-height: clamp(5.06rem, calc(2.9vw + 3.344rem), 7.92rem);
  --phw-h1-font-weight: var(--phw-heading-font-weight);
  --phw-h2-font-size: clamp(2.8rem, calc(2vw + 1.6rem), 4.8rem);
  --phw-h2-line-height: clamp(3.36rem, calc(2.4vw + 1.92rem), 5.76rem);
  --phw-h2-font-weight: 600;
  --phw-h3-font-size: clamp(2.4rem, calc(0.6vw + 2.04rem), 3rem);
  --phw-h3-line-height: clamp(3.24rem, calc(0.7vw + 2.844rem), 3.9rem);
  --phw-h3-font-weight: var(--phw-heading-font-weight);
  --phw-h4-font-size: clamp(1.6rem, calc(0.2vw + 1.48rem), 1.8rem);
  --phw-h4-line-height: clamp(2.24rem, calc(0.3vw + 2.072rem), 2.52rem);
  --phw-h4-font-weight: 600;
  --phw-h5-font-size: clamp(1.6rem, calc(0.2vw + 1.48rem), 1.8rem);
  --phw-h5-line-height: clamp(2.24rem, calc(0.3vw + 2.072rem), 2.52rem);
  --phw-h5-font-weight: 600;
  --phw-h6-font-size: clamp(1.6rem, calc(0.2vw + 1.48rem), 1.8rem);
  --phw-h6-line-height: clamp(2.24rem, calc(0.3vw + 2.072rem), 2.52rem);
  --phw-h6-font-weight: 600;
  /* Prefix */
  --phw-prefix-font-size: clamp(1.6rem, calc(0.3vw + 1.42rem), 1.9rem);
  --phw-prefix-line-height: clamp(2rem, calc(0.3vw + 1.832rem), 2.28rem);
  --phw-prefix-font-weight: 500;
  --phw-prefix-letter-spacing: 0.1em;
  --phw-prefix-text-transform: uppercase;
  /* Buttons */
  --phw-button-font-size: clamp(1.8rem, calc(0.4vw + 1.56rem), 2.2rem);
  --phw-button-text-color: var(--phw-primary-color);
  --phw-button-background-color: var(--phw-light-background-color);
  --phw-button-border-color: var(--phw-light-background-color);
  --phw-button-border-width: 0;
  --phw-button-border-radius: 6rem;
  --phw-button-line-height: 1;
  --phw-button-font-weight: 400;
  --phw-button-padding-y: 2.4rem;
  --phw-button-padding-x: 3.2rem;
  --phw-button-text-transform: none;
  --phw-button-letter-spacing: 0;
  --phw-button-svg-color: var(--phw-primary-color);
  --phw-button-svg-background-color: var(--phw-background-color);
  --phw-button-text-color-active: var(--phw-primary-color);
  --phw-button-background-color-active: var(--phw-accent-dark-color);
  --phw-button-border-color-active: var(--phw-accent-dark-color);
  --phw-button-svg-color-active: var(--phw-primary-color);
  --phw-button-svg-background-color-active: var(--phw-accent-color);
}
:root .dark-mode {
  --phw-button-svg-color-active: var(--phw-white-color);
  --phw-button-svg-background-color-active: var(--phw-accent-color);
}
:root {
  /* Site Header */
  --phw-site-header-background-color: var(--phw-light-background-color);
  --phw-site-header-text-color: var(--phw-primary-color);
  /* Background Gradient */
  --phw-background-gradient: linear-gradient(-20deg, #E5E5E5 0%, #FFFFFF 60%);
}
:root .dark-mode {
  --phw-background-gradient: transparent;
}
:root {
  /* Menu Modal */
  --phw-menu-modal-background-color: var(--phw-light-background-color);
  --phw-menu-modal-text-color: var(--phw-primary-color);
  /* Search Modal */
  --phw-search-modal-background-color: var(--phw-primary-color);
  --phw-search-modal-text-color: var(--phw-white-color);
  /* Site Footer */
  --phw-site-footer-background-color: var(--phw-black-color);
  --phw-site-footer-text-color: var(--phw-white-color);
  /* Animations */
  --phw-anim-speed: 0.75s;
  --phw-glow-speed: 0.6s;
  --phw-trans-speed: 0.15s;
  --phw-trans-speed-slow: 0.5s;
  --phw-trans-ease: ease;
  --phw-trans-bezier: cubic-bezier(0.34, 1.56, 0.64, 1);
  /* Admin Bar */
  --phw-admin-bar-height: 0;
  /* Dynamic Variables */
  --phw-screen-height: 100vh;
  --phw-header-height: 9.6rem;
}

.admin-bar {
  --phw-admin-bar-height: 4.6rem;
}
@media (min-width: 782px) {
  .admin-bar {
    --phw-admin-bar-height: 3.2rem;
  }
}

:root {
  --phw-glass-background-color: rgba(247, 247, 247, 0.35);
  --phw-glass-text-color: var(--phw-primary-color);
  --phw-glass-backdrop-filter: blur(.5rem) saturate(70%);
  --phw-glass-border-width: .1rem;
  --phw-glass-border-color: rgba(225, 225, 225, 0.2);
  --phw-glass-box-shadow-transparent: 0 .2rem 2rem 0 rgba(51, 51, 51, 0),
    inset 0 0 4rem rgba(255, 255, 255, 0),
    inset 0 0 4rem 2rem rgba(255, 255, 255, 0);
  --phw-glass-box-shadow: 0 .2rem 2rem 0 rgba(51, 51, 51, 0.12),
    inset 0 0 4rem rgba(255, 255, 255, 0.24),
    inset 0 0 4rem 2rem rgba(255, 255, 255, 0.2);
  --phw-glass-inner-box-shadow: inset 0 0 4rem rgba(255, 255, 255, 0.24),
    inset 0 0 4rem 2rem rgba(255, 255, 255, 0.2);
  --phw-glass-button-box-shadow: 0 .3rem .6rem 0 rgba(13, 140, 255, .8);
}
:root .dark-mode,
:root #site-header.dark {
  --phw-glass-background-color: rgba(0, 0, 0, 0.25);
  --phw-glass-text-color: var(--phw-white-color);
  --phw-glass-border-color: rgba(128, 128, 128, 0.35);
  --phw-glass-box-shadow-transparent: 0 .2rem 2rem 0 rgba(51, 51, 51, 0),
    inset 0 0 17rem rgba(0, 0, 0, 0),
    inset 0 0 .4rem .2rem rgba(255, 255, 255, 0);
  --phw-glass-box-shadow: 0 .2rem 2rem 0 rgba(51, 51, 51, 0.12),
    inset 0 0 17rem rgba(0, 0, 0, 0.5),
    inset 0 0 .4rem .2rem rgba(255, 255, 255, 0.01);
  --phw-glass-inner-box-shadow: inset 0 0 17rem rgba(0, 0, 0, 0.5),
    inset 0 0 .4rem .2rem rgba(255, 255, 255, 0.01);
  --phw-glass-button-box-shadow: 0 .2rem .8rem 0 rgba(13, 140, 255, .8);
  --phw-glass-nav-box-shadow: 0 .2rem .3rem 0 rgba(13, 140, 255, 1);
}

/* ------------------------------------------------------------------------------ /*
/*  FONTS
/* ------------------------------------------------------------------------------ */
@font-face {
  font-family: "Graphik";
  src: url("../fonts/Graphik-Regular-Web.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Graphik";
  src: url("../fonts/Graphik-RegularItalic-Web.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Graphik";
  src: url("../fonts/Graphik-Medium-Web.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Graphik";
  src: url("../fonts/Graphik-MediumItalic-Web.woff2") format("woff2");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Graphik";
  src: url("../fonts/Graphik-Semibold-Web.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Graphik";
  src: url("../fonts/Graphik-SemiboldItalic-Web.woff2") format("woff2");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
/* ------------------------------------------------------------------------------ /*
/*  CSS RESET
/* ------------------------------------------------------------------------------ */
html, body {
  border: none;
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6, p, blockquote, address, big, cite, code, em, font, img, small, strike, sub, sup, li, ol, ul, fieldset, form, label, legend, button, table, caption, tr, th, td {
  border: none;
  font-size: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0;
  text-align: inherit;
}

blockquote:before,
blockquote:after {
  content: "";
}

/* ------------------------------------------------------------------------------ /*
/*  SETUP
/* ------------------------------------------------------------------------------ */
html {
  font-size: 62.5%;
}

/* Fix for the admin bar */
@media (max-width: 599px) {
  html.scroll-locked {
    margin: 0 !important;
  }
}
body {
  background-color: var(--phw-background-color) !important;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  color: var(--phw-primary-color);
  font-family: var(--phw-body-font);
  font-size: var(--phw-body-font-size);
  font-weight: var(--phw-body-font-weight);
  text-transform: var(--phw-body-text-transform);
  letter-spacing: var(--phw-body-letter-spacing);
  min-height: calc(100vh - var(--phw-admin-bar-height));
  text-align: left;
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
  letter-spacing: 0;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-marquee-increment: 0vw;
  text-decoration-thickness: 0.1rem;
  text-underline-offset: 0.175em;
  word-break: break-word;
}

*:focus:not(:focus-visible) {
  outline: none;
}

::-moz-selection {
  background: var(--phw-primary-color);
  color: var(--phw-background-color);
}

::selection {
  background: var(--phw-primary-color);
  color: var(--phw-background-color);
}

#site-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: calc(100vh - 31.8rem);
  background: var(--phw-background-gradient);
}

.site-content-inner {
  width: 100%;
  position: relative;
}

main {
  display: block;
}

article {
  padding-top: var(--phw-spacer-xxl);
  padding-bottom: var(--phw-spacer-xxxl);
}
@media (min-width: 600px) {
  article {
    padding-top: calc(var(--phw-header-height) + var(--phw-spacer) + var(--phw-spacer-xl));
  }
}

/* Clearing ---------------------------------- */
.group:after,
.entry-content:after,
[class*=__inner-container]:after {
  clear: both;
  content: "";
  display: block;
}

/* Contain Margins --------------------------- */
:root .contain-margins > *:first-child,
:root .entry-content > *:first-child,
:root .wp-site-blocks > *:first-child,
:root .wp-site-blocks > .skip-link + *,
:root .comment-content > *:first-child,
:root *[class*=_inner-container] > *:first-child,
:root *[class*=_inner-container] > .wp-block-image:first-child > [class*=align],
:root fieldset > *:first-child,
:root form > *:first-child,
:root .wp-block-column > *:first-child,
:root .wp-block-media-text__content > *:first-child {
  margin-top: 0;
}

:root .contain-margins > *:last-child,
:root .wp-site-blocks > *:last-child,
:root .entry-content > *:last-child,
:root .comment-content > *:last-child,
:root *[class*=_inner-container] > *:last-child,
:root *[class*=_inner-container] > .wp-block-image:last-child > [class*=align],
:root fieldset > *:last-child,
:root form > *:last-child,
:root .wp-block-column > *:last-child,
:root .wp-block-media-text__content > *:last-child {
  margin-bottom: 0;
}

/* Screen Reader Text ------------------------ */
.screen-reader-text {
  clip: rect(0.1rem, 0.1rem, 0.1rem, 0.1rem);
  height: 0.1rem;
  overflow: hidden;
  position: absolute !important;
  left: -999999rem;
  width: 0.1rem;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 0.3rem;
  -webkit-box-shadow: 0 0 0.2rem 0.2rem rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 0.2rem 0.2rem rgba(0, 0, 0, 0.6);
  clip: auto !important;
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  height: auto;
  left: 0.5rem;
  line-height: normal;
  padding: 1.5rem 2.3rem 1.4rem 2.3rem;
  text-decoration: none;
  top: 0.5rem;
  width: auto;
  z-index: 100000;
}

/* Skip Link --------------------------------- */
.skip-link {
  position: absolute;
  left: -9999rem;
  top: 2.5rem;
  z-index: 999999999;
}

.skip-link:focus {
  left: 2.5rem;
  text-decoration: none;
}

/* ------------------------------------------------------------------------------ /*
/*  LAYOUT
/* ------------------------------------------------------------------------------ */
.no-margin {
  margin: 0 !important;
}

.no-padding {
  padding: 0 !important;
}

.screen-height {
  min-height: 100vh;
}

.screen-width {
  position: relative;
  left: calc(50% - 50vw);
  width: 100vw;
}

.center-vertically {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.center,
.center-h {
  margin-left: auto;
  margin-right: auto;
}

.center,
.center-v {
  margin-bottom: auto;
  margin-top: auto;
}

.no-scrollbars {
  scrollbar-width: none;
}

.no-scrollbars::-webkit-scrollbar {
  display: none;
}

/* Sections ---------------------------------- */
section {
  padding: 5rem 0;
  width: 100%;
}
@media (min-width: 782px) {
  section {
    padding: 8rem 0;
  }
}

.section-inner {
  margin: 0 auto;
  max-width: var(--phw-inner-width-wide);
  width: calc(100% - var(--phw-gutter));
}

.section-inner.max-percentage {
  width: 100%;
}

.section-inner.no-margin {
  margin: 0;
}

/* Alignments ---------------------------------- */
:root .mw-thin {
  max-width: var(--phw-inner-width-thin);
}

:root .mw-small {
  max-width: var(--phw-inner-width-small);
}

:root .mw-medium {
  max-width: var(--phw-inner-width-medium);
}

:root .mw-wide {
  max-width: var(--phw-inner-width-wide);
}

/* Grid Structure ---------------------------- */
.grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: -0.8rem 0 -0.8rem -0.8rem;
  width: calc(100% + 1.6rem);
}
@media (min-width: 782px) {
  .grid {
    margin: -1.6rem 0 -1.6rem -1.6rem;
    width: calc(100% + 3.2rem);
  }
}
@media (min-width: 1300px) {
  .grid {
    margin: -2.4rem 0 -2.4rem -2.4rem;
    width: calc(100% + 4.8rem);
  }
}

.col {
  padding: 0.8rem;
  width: 99.9996%;
}
@media (min-width: 782px) {
  .col {
    padding: 1.6rem;
  }
}
@media (min-width: 1300px) {
  .col {
    padding: 2.4rem;
  }
}

.cols-1 > .col, :root .col-1 {
  width: 8.3333%;
}

.cols-2 > .col, :root .col-2 {
  width: 16.6666%;
}

.cols-3 > .col, :root .col-3 {
  width: 24.9999%;
}

.cols-4 > .col, :root .col-4 {
  width: 33.3332%;
}

.cols-5 > .col, :root .col-5 {
  width: 41.6665%;
}

.cols-6 > .col, :root .col-6 {
  width: 49.9998%;
}

.cols-7 > .col, :root .col-7 {
  width: 58.3331%;
}

.cols-8 > .col, :root .col-8 {
  width: 66.6664%;
}

.cols-9 > .col, :root .col-9 {
  width: 74.9997%;
}

.cols-10 > .col, :root .col-10 {
  width: 83.333%;
}

.cols-11 > .col, :root .col-11 {
  width: 91.6663%;
}

.cols-12 > .col, :root .col-12 {
  width: 99.9996%;
}

@media (min-width: 782px) {
  .cols-t-1 > .col, :root .col-t-1 {
    width: 8.3333%;
  }
  .cols-t-2 > .col, :root .col-t-2 {
    width: 16.6666%;
  }
  .cols-t-3 > .col, :root .col-t-3 {
    width: 24.9999%;
  }
  .cols-t-4 > .col, :root .col-t-4 {
    width: 33.3332%;
  }
  .cols-t-5 > .col, :root .col-t-5 {
    width: 41.6665%;
  }
  .cols-t-6 > .col, :root .col-t-6 {
    width: 49.9998%;
  }
  .cols-t-7 > .col, :root .col-t-7 {
    width: 58.3331%;
  }
  .cols-t-8 > .col, :root .col-t-8 {
    width: 66.6664%;
  }
  .cols-t-9 > .col, :root .col-t-9 {
    width: 74.9997%;
  }
  .cols-t-10 > .col, :root .col-t-10 {
    width: 83.333%;
  }
  .cols-t-11 > .col, :root .col-t-11 {
    width: 91.6663%;
  }
  .cols-t-12 > .col, :root .col-t-12 {
    width: 99.9996%;
  }
}
@media (min-width: 1180px) {
  .cols-l-1 > .col, :root .col-l-1 {
    width: 8.3333%;
  }
  .cols-l-2 > .col, :root .col-l-2 {
    width: 16.6666%;
  }
  .cols-l-3 > .col, :root .col-l-3 {
    width: 24.9999%;
  }
  .cols-l-4 > .col, :root .col-l-4 {
    width: 33.3332%;
  }
  .cols-l-5 > .col, :root .col-l-5 {
    width: 41.6665%;
  }
  .cols-l-6 > .col, :root .col-l-6 {
    width: 49.9998%;
  }
  .cols-l-7 > .col, :root .col-l-7 {
    width: 58.3331%;
  }
  .cols-l-8 > .col, :root .col-l-8 {
    width: 66.6664%;
  }
  .cols-l-9 > .col, :root .col-l-9 {
    width: 74.9997%;
  }
  .cols-l-10 > .col, :root .col-l-10 {
    width: 83.333%;
  }
  .cols-l-11 > .col, :root .col-l-11 {
    width: 91.6663%;
  }
  .cols-l-12 > .col, :root .col-l-12 {
    width: 99.9996%;
  }
}
@media (min-width: 1300px) {
  .cols-d-1 > .col, :root .col-d-1 {
    width: 8.3333%;
  }
  .cols-d-2 > .col, :root .col-d-2 {
    width: 16.6666%;
  }
  .cols-d-3 > .col, :root .col-d-3 {
    width: 24.9999%;
  }
  .cols-d-4 > .col, :root .col-d-4 {
    width: 33.3332%;
  }
  .cols-d-5 > .col, :root .col-d-5 {
    width: 41.6665%;
  }
  .cols-d-6 > .col, :root .col-d-6 {
    width: 49.9998%;
  }
  .cols-d-7 > .col, :root .col-d-7 {
    width: 58.3331%;
  }
  .cols-d-8 > .col, :root .col-d-8 {
    width: 66.6664%;
  }
  .cols-d-9 > .col, :root .col-d-9 {
    width: 74.9997%;
  }
  .cols-d-10 > .col, :root .col-d-10 {
    width: 83.333%;
  }
  .cols-d-11 > .col, :root .col-d-11 {
    width: 91.6663%;
  }
  .cols-d-12 > .col, :root .col-d-12 {
    width: 99.9996%;
  }
}
@media (min-width: 1600px) {
  .cols-dxl-1 > .col, :root .col-dxl-1 {
    width: 8.3333%;
  }
  .cols-dxl-2 > .col, :root .col-dxl-2 {
    width: 16.6666%;
  }
  .cols-dxl-3 > .col, :root .col-dxl-3 {
    width: 24.9999%;
  }
  .cols-dxl-4 > .col, :root .col-dxl-4 {
    width: 33.3332%;
  }
  .cols-dxl-5 > .col, :root .col-dxl-5 {
    width: 41.6665%;
  }
  .cols-dxl-6 > .col, :root .col-dxl-6 {
    width: 49.9998%;
  }
  .cols-dxl-7 > .col, :root .col-dxl-7 {
    width: 58.3331%;
  }
  .cols-dxl-8 > .col, :root .col-dxl-8 {
    width: 66.6664%;
  }
  .cols-dxl-9 > .col, :root .col-dxl-9 {
    width: 74.9997%;
  }
  .cols-dxl-10 > .col, :root .col-dxl-10 {
    width: 83.333%;
  }
  .cols-dxl-11 > .col, :root .col-dxl-11 {
    width: 91.6663%;
  }
  .cols-dxl-12 > .col, :root .col-dxl-12 {
    width: 99.9996%;
  }
}
/* NO VERTICAL GUTTER */
.grid.no-gutter,
.grid.no-v-gutter {
  margin-bottom: 0;
  margin-top: 0;
}

.grid.no-gutter > .col,
.grid.no-v-gutter > .col {
  padding-bottom: 0;
  padding-top: 0;
}

/* NO HORIZONTAL GUTTER */
.grid.no-gutter,
.grid.no-h-gutter {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.grid.no-gutter > .col,
.grid.no-h-gutter > .col {
  padding-left: 0;
  padding-right: 0;
}

/* Cover Modals ------------------------------ */
.cover-modal {
  display: none;
  -ms-overflow-style: none;
  overflow: -moz-scrollbars-none;
}

.cover-modal::-webkit-scrollbar {
  display: none !important;
}

.cover-modal.show-modal {
  display: block;
}

/* Alignments -------------------------------- */
.alignnone,
.aligncenter,
.wp-block-image .aligncenter {
  margin: 4rem 0;
}
@media (min-width: 782px) {
  .alignnone,
  .aligncenter,
  .wp-block-image .aligncenter {
    margin-bottom: 4.8rem;
    margin-top: 4.8rem;
  }
}

.alignwide,
.alignfull {
  margin: 4rem 0;
}
@media (min-width: 782px) {
  .alignwide,
  .alignfull {
    margin-bottom: 6.4rem;
    margin-top: 6.4rem;
  }
}

.alignnone,
.aligncenter,
.alignleft,
.alignright {
  max-width: 100%;
}

.alignleft:not(.is-resized),
.alignright:not(.is-resized) {
  max-width: 100%;
}
@media (min-width: 782px) {
  .alignleft:not(.is-resized),
  .alignright:not(.is-resized) {
    max-width: min(50%, 32rem);
  }
}

.alignleft,
.alignright {
  float: none !important;
  margin: 4rem 0 !important;
}

@media (min-width: 782px) {
  .alignleft {
    float: left !important;
    margin: 0.6rem 3.2rem 3.2rem 0 !important;
  }
}

@media (min-width: 782px) {
  .alignright {
    float: right !important;
    margin: 0.6rem 0 3.2rem 3.2rem !important;
  }
}

.aligncenter,
.aligncenter img {
  margin-left: auto;
  margin-right: auto;
}

.alignwide {
  max-width: var(--phw-inner-width-wide);
}

.alignfull {
  max-width: 100%;
}

.full-width {
  width: 100vw;
  position: relative;
  left: calc(50% - 50vw);
}

/* DIRECT DESCENDANT ALIGNMENTS */
.entry-content > .alignfull,
.wp-site-blocks > .alignfull {
  margin-left: calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
}

.entry-content > .alignwide,
.wp-site-blocks > .alignwide {
  margin-left: max((var(--phw-inner-width-wide) - var(--phw-inner-width-thin)) / -2, (100vw - 100% - var(--phw-gutter)) / -2);
  width: calc(100vw - var(--phw-gutter));
}

@media (min-width: 782px) {
  .entry-content > .alignleft,
  .entry-content > .wp-block-image > .alignleft,
  .wp-site-blocks > .alignleft,
  .wp-site-blocks > .wp-block-image > .alignleft {
    margin-left: max(-24.4rem, (100vw - var(--phw-gutter) - 100%) / -2) !important;
  }
}

@media (min-width: 782px) {
  .entry-content > .alignright,
  .entry-content > .wp-block-image > .alignright,
  .wp-site-blocks > .alignright,
  .wp-site-blocks > .wp-block-image > .alignright {
    margin-right: max(-24.4rem, (100vw - var(--phw-gutter) - 100%) / -2) !important;
  }
}

@media (min-width: 1300px) {
  .entry-content > .wp-block-group.alignfull.has-background,
  .wp-site-blocks > .wp-block-group.alignfull.has-background {
    padding: 6.4rem var(--phw-gap);
  }
}

/* STACKED BACKGROUND BLOCKS */
.alignfull.wp-block-cover + .alignfull.wp-block-cover,
.alignfull.wp-block-cover + .alignfull.has-background,
.alignfull.has-background + .alignfull.wp-block-cover,
.alignfull.has-background + .alignfull.has-background {
  margin-top: -4rem;
}
@media (min-width: 782px) {
  .alignfull.wp-block-cover + .alignfull.wp-block-cover,
  .alignfull.wp-block-cover + .alignfull.has-background,
  .alignfull.has-background + .alignfull.wp-block-cover,
  .alignfull.has-background + .alignfull.has-background {
    margin-top: -6.4rem;
  }
}

/* Entry Media ------------------------------- */
.alignfull > figcaption,
.alignfull > .wp-caption-text {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--phw-inner-width-wide);
  width: calc(100% - var(--phw-gutter));
}

/* ------------------------------------------------------------------------------ /*
/*  UTILITIES
/* ------------------------------------------------------------------------------ */
/* Colors ---------------------------------- */
:root .has-background-color {
  color: var(--phw-background-color);
}

:root .has-background-background-color {
  background-color: var(--phw-background-color);
}

:root .has-background-border-color {
  border-color: var(--phw-background-color);
}

:root .has-light-background-color {
  color: var(--phw-light-background-color);
}

:root .has-light-background-background-color {
  background-color: var(--phw-light-background-color);
}

:root .has-light-background-border-color {
  border-color: var(--phw-light-background-color);
}

:root .has-dark-background-color {
  color: var(--phw-dark-background-color);
}

:root .has-dark-background-background-color {
  background-color: var(--phw-dark-background-color);
}

:root .has-dark-background-border-color {
  border-color: var(--phw-dark-background-color);
}

:root .has-primary-color {
  color: var(--phw-primary-color);
}

:root .has-primary-background-color {
  background-color: var(--phw-primary-color);
}

:root .has-primary-border-color {
  border-color: var(--phw-primary-color);
}

:root .has-secondary-color {
  color: var(--phw-secondary-color);
}

:root .has-secondary-background-color {
  background-color: var(--phw-secondary-color);
}

:root .has-secondary-border-color {
  border-color: var(--phw-secondary-color);
}

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

:root .has-border-background-color {
  background-color: var(--phw-border-color);
}

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

:root .has-accent-color {
  color: var(--phw-accent-color);
}

:root .has-accent-background-color {
  background-color: var(--phw-accent-color);
}

:root .has-accent-border-color {
  border-color: var(--phw-accent-color);
}

:root .has-accent-dark-color {
  color: var(--phw-accent-dark-color);
}

:root .has-accent-dark-background-color {
  background-color: var(--phw-accent-dark-color);
}

:root .has-accent-dark-border-color {
  border-color: var(--phw-accent-dark-color);
}

:root .has-accent-light-color {
  color: var(--phw-accent-light-color);
}

:root .has-accent-light-background-color {
  background-color: var(--phw-accent-light-color);
}

:root .has-accent-light-border-color {
  border-color: var(--phw-accent-light-color);
}

:root .has-accent-pale-color {
  color: var(--phw-accent-pale-color);
}

:root .has-accent-pale-background-color {
  background-color: var(--phw-accent-pale-color);
}

:root .has-accent-pale-border-color {
  border-color: var(--phw-accent-pale-color);
}

:root .has-white-color {
  color: var(--phw-white-color);
}

:root .has-white-background-color {
  background-color: var(--phw-white-color);
}

:root .has-white-border-color {
  border-color: var(--phw-white-color);
}

:root .has-light-grey-color {
  color: var(--phw-light-grey-color);
}

:root .has-light-grey-background-color {
  background-color: var(--phw-light-grey-color);
}

:root .has-light-grey-border-color {
  border-color: var(--phw-light-grey-color);
}

:root .has-dark-grey-color {
  color: var(--phw-dark-grey-color);
}

:root .has-dark-grey-background-color {
  background-color: var(--phw-dark-grey-color);
}

:root .has-dark-grey-border-color {
  border-color: var(--phw-dark-grey-color);
}

:root .has-black-color {
  color: var(--phw-black-color);
}

:root .has-black-background-color {
  background-color: var(--phw-black-color);
}

:root .has-black-border-color {
  border-color: var(--phw-black-color);
}

:root .has-text-color a:not(.wp-block-button__link) {
  color: inherit;
}

/* Hiding and Showing ------------------------ */
.js .show-js {
  display: block !important;
}

.js .hide-js {
  display: none !important;
}

.no-js .show-no-js {
  display: block !important;
}

.no-js .hide-no-js {
  display: none !important;
}

/* Typography -------------------------------- */
.no-select {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Fonts ------------------------------------ */
:root .ff-body {
  font-family: var(--phw-body-font) !important;
}

:root .ff-heading {
  font-family: var(--phw-heading-font) !important;
}

/* Font Sizes -------------------------------- */
:root .has-xsmall-font-size,
:root .has-xs-font-size {
  font-size: var(--phw-xs-font-size) !important;
  line-height: var(--phw-xs-line-height) !important;
}

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

:root .has-regular-font-size,
:root .has-normal-font-size {
  font-size: var(--phw-body-font-size) !important;
  line-height: var(--phw-body-line-height) !important;
}

:root .has-large-font-size,
:root .has-lg-font-size {
  font-size: var(--phw-lg-font-size) !important;
  line-height: var(--phw-lg-line-height) !important;
}

/* Font Weight ------------------------------------ */
:root .fw-100 {
  font-weight: 100 !important;
}

:root .fw-200 {
  font-weight: 200 !important;
}

:root .fw-300 {
  font-weight: 300 !important;
}

:root .fw-400 {
  font-weight: 400 !important;
}

:root .fw-500 {
  font-weight: 500 !important;
}

:root .fw-600 {
  font-weight: 600 !important;
}

:root .fw-700 {
  font-weight: 700 !important;
}

:root .fw-800 {
  font-weight: 800 !important;
}

:root .fw-900 {
  font-weight: 900 !important;
}

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

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

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

:root .has-text-align-justify {
  text-align: justify !important;
}

/* Spacing -------------------------------- */
.ma-none {
  margin: 0;
}

.mt-none, .my-none {
  margin-top: 0 !important;
}

.mb-none, .my-none {
  margin-bottom: 0 !important;
}

.ml-none, .mx-none {
  margin-left: 0 !important;
}

.mr-none, .mx-none {
  margin-right: 0 !important;
}

.pa-none {
  padding: 0;
}

.pt-none, .py-none {
  padding-top: 0 !important;
}

.pb-none, .py-none {
  padding-bottom: 0 !important;
}

.pl-none, .px-none {
  padding-left: 0 !important;
}

.pr-none, .px-none {
  padding-right: 0 !important;
}

.ma-xxs {
  margin: var(--phw-spacer-xxs);
}

.mt-xxs, .my-xxs {
  margin-top: var(--phw-spacer-xxs) !important;
}

.mb-xxs, .my-xxs {
  margin-bottom: var(--phw-spacer-xxs) !important;
}

.ml-xxs, .mx-xxs {
  margin-left: var(--phw-spacer-xxs) !important;
}

.mr-xxs, .mx-xxs {
  margin-right: var(--phw-spacer-xxs) !important;
}

.pa-xxs {
  padding: var(--phw-spacer-xxs);
}

.pt-xxs, .py-xxs {
  padding-top: var(--phw-spacer-xxs) !important;
}

.pb-xxs, .py-xxs {
  padding-bottom: var(--phw-spacer-xxs) !important;
}

.pl-xxs, .px-xxs {
  padding-left: var(--phw-spacer-xxs) !important;
}

.pr-xxs, .px-xxs {
  padding-right: var(--phw-spacer-xxs) !important;
}

.ma-xs {
  margin: var(--phw-spacer-xs);
}

.mt-xs, .my-xs {
  margin-top: var(--phw-spacer-xs) !important;
}

.mb-xs, .my-xs {
  margin-bottom: var(--phw-spacer-xs) !important;
}

.ml-xs, .mx-xs {
  margin-left: var(--phw-spacer-xs) !important;
}

.mr-xs, .mx-xs {
  margin-right: var(--phw-spacer-xs) !important;
}

.pa-xs {
  padding: var(--phw-spacer-xs);
}

.pt-xs, .py-xs {
  padding-top: var(--phw-spacer-xs) !important;
}

.pb-xs, .py-xs {
  padding-bottom: var(--phw-spacer-xs) !important;
}

.pl-xs, .px-xs {
  padding-left: var(--phw-spacer-xs) !important;
}

.pr-xs, .px-xs {
  padding-right: var(--phw-spacer-xs) !important;
}

.ma-sm {
  margin: var(--phw-spacer-sm);
}

.mt-sm, .my-sm {
  margin-top: var(--phw-spacer-sm) !important;
}

.mb-sm, .my-sm {
  margin-bottom: var(--phw-spacer-sm) !important;
}

.ml-sm, .mx-sm {
  margin-left: var(--phw-spacer-sm) !important;
}

.mr-sm, .mx-sm {
  margin-right: var(--phw-spacer-sm) !important;
}

.pa-sm {
  padding: var(--phw-spacer-sm);
}

.pt-sm, .py-sm {
  padding-top: var(--phw-spacer-sm) !important;
}

.pb-sm, .py-sm {
  padding-bottom: var(--phw-spacer-sm) !important;
}

.pl-sm, .px-sm {
  padding-left: var(--phw-spacer-sm) !important;
}

.pr-sm, .px-sm {
  padding-right: var(--phw-spacer-sm) !important;
}

.ma-md {
  margin: var(--phw-spacer-md);
}

.mt-md, .my-md {
  margin-top: var(--phw-spacer-md) !important;
}

.mb-md, .my-md {
  margin-bottom: var(--phw-spacer-md) !important;
}

.ml-md, .mx-md {
  margin-left: var(--phw-spacer-md) !important;
}

.mr-md, .mx-md {
  margin-right: var(--phw-spacer-md) !important;
}

.pa-md {
  padding: var(--phw-spacer-md);
}

.pt-md, .py-md {
  padding-top: var(--phw-spacer-md) !important;
}

.pb-md, .py-md {
  padding-bottom: var(--phw-spacer-md) !important;
}

.pl-md, .px-md {
  padding-left: var(--phw-spacer-md) !important;
}

.pr-md, .px-md {
  padding-right: var(--phw-spacer-md) !important;
}

.ma-lg {
  margin: var(--phw-spacer-lg);
}

.mt-lg, .my-lg {
  margin-top: var(--phw-spacer-lg) !important;
}

.mb-lg, .my-lg {
  margin-bottom: var(--phw-spacer-lg) !important;
}

.ml-lg, .mx-lg {
  margin-left: var(--phw-spacer-lg) !important;
}

.mr-lg, .mx-lg {
  margin-right: var(--phw-spacer-lg) !important;
}

.pa-lg {
  padding: var(--phw-spacer-lg);
}

.pt-lg, .py-lg {
  padding-top: var(--phw-spacer-lg) !important;
}

.pb-lg, .py-lg {
  padding-bottom: var(--phw-spacer-lg) !important;
}

.pl-lg, .px-lg {
  padding-left: var(--phw-spacer-lg) !important;
}

.pr-lg, .px-lg {
  padding-right: var(--phw-spacer-lg) !important;
}

.ma-xl {
  margin: var(--phw-spacer-xl);
}

.mt-xl, .my-xl {
  margin-top: var(--phw-spacer-xl) !important;
}

.mb-xl, .my-xl {
  margin-bottom: var(--phw-spacer-xl) !important;
}

.ml-xl, .mx-xl {
  margin-left: var(--phw-spacer-xl) !important;
}

.mr-xl, .mx-xl {
  margin-right: var(--phw-spacer-xl) !important;
}

.pa-xl {
  padding: var(--phw-spacer-xl);
}

.pt-xl, .py-xl {
  padding-top: var(--phw-spacer-xl) !important;
}

.pb-xl, .py-xl {
  padding-bottom: var(--phw-spacer-xl) !important;
}

.pl-xl, .px-xl {
  padding-left: var(--phw-spacer-xl) !important;
}

.pr-xl, .px-xl {
  padding-right: var(--phw-spacer-xl) !important;
}

.ma-xxl {
  margin: var(--phw-spacer-xxl);
}

.mt-xxl, .my-xxl {
  margin-top: var(--phw-spacer-xxl) !important;
}

.mb-xxl, .my-xxl {
  margin-bottom: var(--phw-spacer-xxl) !important;
}

.ml-xxl, .mx-xxl {
  margin-left: var(--phw-spacer-xxl) !important;
}

.mr-xxl, .mx-xxl {
  margin-right: var(--phw-spacer-xxl) !important;
}

.pa-xxl {
  padding: var(--phw-spacer-xxl);
}

.pt-xxl, .py-xxl {
  padding-top: var(--phw-spacer-xxl) !important;
}

.pb-xxl, .py-xxl {
  padding-bottom: var(--phw-spacer-xxl) !important;
}

.pl-xxl, .px-xxl {
  padding-left: var(--phw-spacer-xxl) !important;
}

.pr-xxl, .px-xxl {
  padding-right: var(--phw-spacer-xxl) !important;
}

.ma-xxxl {
  margin: var(--phw-spacer-xxxl);
}

.mt-xxxl, .my-xxxl {
  margin-top: var(--phw-spacer-xxxl) !important;
}

.mb-xxxl, .my-xxxl {
  margin-bottom: var(--phw-spacer-xxxl) !important;
}

.ml-xxxl, .mx-xxxl {
  margin-left: var(--phw-spacer-xxxl) !important;
}

.mr-xxxl, .mx-xxxl {
  margin-right: var(--phw-spacer-xxxl) !important;
}

.pa-xxxl {
  padding: var(--phw-spacer-xxxl);
}

.pt-xxxl, .py-xxxl {
  padding-top: var(--phw-spacer-xxxl) !important;
}

.pb-xxxl, .py-xxxl {
  padding-bottom: var(--phw-spacer-xxxl) !important;
}

.pl-xxxl, .px-xxxl {
  padding-left: var(--phw-spacer-xxxl) !important;
}

.pr-xxxl, .px-xxxl {
  padding-right: var(--phw-spacer-xxxl) !important;
}

/* Glass -------------------------------- */
.glass {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* ------------------------------------------------------------------------------ /*
/*  ANIMATIONS
/* ------------------------------------------------------------------------------ */
@-webkit-keyframes fade-in-scale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes fade-in-scale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(4rem);
            transform: translateY(4rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fade-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(4rem);
            transform: translateY(4rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes fade-down {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-3rem);
            transform: translateY(-3rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fade-down {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-3rem);
            transform: translateY(-3rem);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/* NAVIGATION TOGGLE ANIMATIONS */
@-webkit-keyframes bars-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes bars-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* State: Initial */
@-webkit-keyframes bar-one {
  0% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(-0.6rem) rotate(0deg);
            transform: translateY(-0.6rem) rotate(0deg);
  }
}
@keyframes bar-one {
  0% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(-0.6rem) rotate(0deg);
            transform: translateY(-0.6rem) rotate(0deg);
  }
}
@-webkit-keyframes bar-three {
  0% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(0.6rem) rotate(0deg);
            transform: translateY(0.6rem) rotate(0deg);
  }
}
@keyframes bar-three {
  0% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(0.6rem) rotate(0deg);
            transform: translateY(0.6rem) rotate(0deg);
  }
}
/* State: Hover */
@-webkit-keyframes bar-one-hover {
  0% {
    -webkit-transform: translateY(-0.6rem) rotate(0deg);
            transform: translateY(-0.6rem) rotate(0deg);
  }
  0%, 50% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0.05rem) rotate(0deg);
            transform: translateY(0.05rem) rotate(0deg);
  }
  50.1%, 100% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  100% {
    -webkit-transform: translateY(0.05rem) rotate(45deg);
            transform: translateY(0.05rem) rotate(45deg);
  }
}
@keyframes bar-one-hover {
  0% {
    -webkit-transform: translateY(-0.6rem) rotate(0deg);
            transform: translateY(-0.6rem) rotate(0deg);
  }
  0%, 50% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0.05rem) rotate(0deg);
            transform: translateY(0.05rem) rotate(0deg);
  }
  50.1%, 100% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  100% {
    -webkit-transform: translateY(0.05rem) rotate(45deg);
            transform: translateY(0.05rem) rotate(45deg);
  }
}
@-webkit-keyframes bar-three-hover {
  0% {
    -webkit-transform: translateY(0.6rem) rotate(0deg);
            transform: translateY(0.6rem) rotate(0deg);
  }
  0%, 50% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  50%, 50.1% {
    -webkit-transform: translateY(-0.05rem) rotate(0deg);
            transform: translateY(-0.05rem) rotate(0deg);
  }
  50.1%, 100% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  100% {
    -webkit-transform: translateY(-0.05rem) rotate(-45deg);
            transform: translateY(-0.05rem) rotate(-45deg);
  }
}
@keyframes bar-three-hover {
  0% {
    -webkit-transform: translateY(0.6rem) rotate(0deg);
            transform: translateY(0.6rem) rotate(0deg);
  }
  0%, 50% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  50%, 50.1% {
    -webkit-transform: translateY(-0.05rem) rotate(0deg);
            transform: translateY(-0.05rem) rotate(0deg);
  }
  50.1%, 100% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  100% {
    -webkit-transform: translateY(-0.05rem) rotate(-45deg);
            transform: translateY(-0.05rem) rotate(-45deg);
  }
}
/* State: Active */
@-webkit-keyframes bar-one-active {
  0% {
    -webkit-transform: translateY(0.05rem) rotate(45deg);
            transform: translateY(0.05rem) rotate(45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
}
@keyframes bar-one-active {
  0% {
    -webkit-transform: translateY(0.05rem) rotate(45deg);
            transform: translateY(0.05rem) rotate(45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(0) rotate(45deg);
            transform: translateY(0) rotate(45deg);
  }
}
@-webkit-keyframes bar-two-active {
  0%, 50% {
    opacity: 1;
  }
  50.1%, 100% {
    opacity: 0;
  }
}
@keyframes bar-two-active {
  0%, 50% {
    opacity: 1;
  }
  50.1%, 100% {
    opacity: 0;
  }
}
@-webkit-keyframes bar-three-active {
  0% {
    -webkit-transform: translateY(0.05rem) rotate(-45deg);
            transform: translateY(0.05rem) rotate(-45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
}
@keyframes bar-three-active {
  0% {
    -webkit-transform: translateY(0.05rem) rotate(-45deg);
            transform: translateY(0.05rem) rotate(-45deg);
  }
  0%, 50% {
    width: 50%;
    -webkit-transform-origin: center right;
            transform-origin: center right;
  }
  50%, 50.1% {
    -webkit-transform: translateY(0) rotate(0deg);
            transform: translateY(0) rotate(0deg);
  }
  50.1%, 100% {
    width: 100%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  100% {
    -webkit-transform: translateY(0) rotate(-45deg);
            transform: translateY(0) rotate(-45deg);
  }
}
/* DOT PULSE */
@-webkit-keyframes dotPulseBefore {
  0%, 60%, 100% {
    -webkit-box-shadow: 997.5rem 0 0 -0.5rem currentColor;
            box-shadow: 997.5rem 0 0 -0.5rem currentColor;
  }
  30% {
    -webkit-box-shadow: 997.5rem 0 0 0.2rem currentColor;
            box-shadow: 997.5rem 0 0 0.2rem currentColor;
  }
}
@keyframes dotPulseBefore {
  0%, 60%, 100% {
    -webkit-box-shadow: 997.5rem 0 0 -0.5rem currentColor;
            box-shadow: 997.5rem 0 0 -0.5rem currentColor;
  }
  30% {
    -webkit-box-shadow: 997.5rem 0 0 0.2rem currentColor;
            box-shadow: 997.5rem 0 0 0.2rem currentColor;
  }
}
@-webkit-keyframes dotPulse {
  0%, 60%, 100% {
    -webkit-box-shadow: 999.9rem 0 0 -0.5rem currentColor;
            box-shadow: 999.9rem 0 0 -0.5rem currentColor;
  }
  30% {
    -webkit-box-shadow: 999.9rem 0 0 0.2rem currentColor;
            box-shadow: 999.9rem 0 0 0.2rem currentColor;
  }
}
@keyframes dotPulse {
  0%, 60%, 100% {
    -webkit-box-shadow: 999.9rem 0 0 -0.5rem currentColor;
            box-shadow: 999.9rem 0 0 -0.5rem currentColor;
  }
  30% {
    -webkit-box-shadow: 999.9rem 0 0 0.2rem currentColor;
            box-shadow: 999.9rem 0 0 0.2rem currentColor;
  }
}
@-webkit-keyframes dotPulseAfter {
  0%, 60%, 100% {
    -webkit-box-shadow: 1002.3rem 0 0 -0.5rem currentColor;
            box-shadow: 1002.3rem 0 0 -0.5rem currentColor;
  }
  30% {
    -webkit-box-shadow: 1002.3rem 0 0 0.2rem currentColor;
            box-shadow: 1002.3rem 0 0 0.2rem currentColor;
  }
}
@keyframes dotPulseAfter {
  0%, 60%, 100% {
    -webkit-box-shadow: 1002.3rem 0 0 -0.5rem currentColor;
            box-shadow: 1002.3rem 0 0 -0.5rem currentColor;
  }
  30% {
    -webkit-box-shadow: 1002.3rem 0 0 0.2rem currentColor;
            box-shadow: 1002.3rem 0 0 0.2rem currentColor;
  }
}
/* Accessibility Settings -------------------- */
@media (prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    -webkit-animation-delay: 0s !important;
            animation-delay: 0s !important;
    -webkit-animation-duration: 0s !important;
            animation-duration: 0s !important;
    -webkit-transition-delay: 0s !important;
            transition-delay: 0s !important;
    -webkit-transition-duration: 0s !important;
            transition-duration: 0s !important;
  }
}
body.no-anim *,
body.no-anim *:before,
body.no-anim *:after {
  -webkit-animation-delay: 0s !important;
          animation-delay: 0s !important;
  -webkit-animation-duration: 0s !important;
          animation-duration: 0s !important;
  -webkit-transition-delay: 0s !important;
          transition-delay: 0s !important;
  -webkit-transition-duration: 0s !important;
          transition-duration: 0s !important;
}

/* Loading Icon ------------------------------ */
/* 
	Based on dot Pulse loading animation by nzbin
	Released under the MIT license
	https://nzbin.github.io/three-dots/
*/
.dot-pulse,
.dot-pulse:before,
.dot-pulse:after {
  -webkit-animation: 1.2s infinite ease-in-out;
          animation: 1.2s infinite ease-in-out;
  background-color: currentColor;
  border-radius: 50%;
  color: currentColor;
  height: 1rem;
  width: 1rem;
}

.dot-pulse {
  -webkit-animation-name: dotPulse;
          animation-name: dotPulse;
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
  -webkit-box-shadow: 999rem 0 0 -0.5rem currentColor;
          box-shadow: 999rem 0 0 -0.5rem currentColor;
  display: block;
  position: relative;
  left: -999rem;
}

.dot-pulse:before,
.dot-pulse:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
}

.dot-pulse:before {
  -webkit-animation-name: dotPulseBefore;
          animation-name: dotPulseBefore;
  -webkit-box-shadow: 997.5rem 0 0 -0.5rem currentColor;
          box-shadow: 997.5rem 0 0 -0.5rem currentColor;
}

.dot-pulse:after {
  -webkit-animation-name: dotPulseAfter;
          animation-name: dotPulseAfter;
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
  -webkit-box-shadow: 1002.3rem 0 0 -0.5rem currentColor;
          box-shadow: 1002.3rem 0 0 -0.5rem currentColor;
}

/* CSS Animations ---------------------------- */
.has-anim .i-a, .has-anim .will-be-spotted {
  -webkit-animation: var(--phw-anim-speed) forwards;
          animation: var(--phw-anim-speed) forwards;
}

/* STATE: INITIAL */
.has-anim .a-fade-in-scale, .has-anim .spot-fade-in-scale {
  opacity: 0;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
}

.has-anim .a-fade-in, .has-anim .spot-fade-in {
  opacity: 0;
}

.has-anim .a-fade-up, .has-anim .spot-fade-up {
  opacity: 0;
  -webkit-transform: translateY(4rem);
          transform: translateY(4rem);
}

.has-anim .a-fade-down, .has-anim .spot-fade-down {
  opacity: 0;
  -webkit-transform: translateY(-3rem);
          transform: translateY(-3rem);
}

/* STATE: ANIMATION */
.has-anim .a-fade-in-scale, .has-anim .spot-fade-in-scale.spotted {
  -webkit-animation-name: fade-in-scale;
          animation-name: fade-in-scale;
}

.has-anim .a-fade-in, .has-anim .spot-fade-in.spotted {
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
}

.has-anim .a-fade-up, .has-anim .spot-fade-up.spotted {
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
}

.has-anim .a-fade-down, .has-anim .spot-fade-down.spotted {
  -webkit-animation-name: fade-down;
          animation-name: fade-down;
}

/* HELPER CLASSES */
:root .a-del-100 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}

:root .a-del-150 {
  -webkit-animation-delay: 0.15s;
          animation-delay: 0.15s;
}

:root .a-del-200 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

:root .a-del-250 {
  -webkit-animation-delay: 0.25s;
          animation-delay: 0.25s;
}

:root .a-del-300 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}

:root .a-del-350 {
  -webkit-animation-delay: 0.35s;
          animation-delay: 0.35s;
}

:root .a-del-400 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

:root .a-del-450 {
  -webkit-animation-delay: 0.45s;
          animation-delay: 0.45s;
}

:root .a-del-500 {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

:root .a-del-550 {
  -webkit-animation-delay: 0.55s;
          animation-delay: 0.55s;
}

:root .a-del-600 {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}

:root .a-del-650 {
  -webkit-animation-delay: 0.65s;
          animation-delay: 0.65s;
}

:root .a-del-700 {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

:root .a-del-750 {
  -webkit-animation-delay: 0.75s;
          animation-delay: 0.75s;
}

:root .a-del-800 {
  -webkit-animation-delay: 0.8s;
          animation-delay: 0.8s;
}

:root .a-del-850 {
  -webkit-animation-delay: 0.85s;
          animation-delay: 0.85s;
}

:root .a-del-900 {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}

:root .a-del-950 {
  -webkit-animation-delay: 0.95s;
          animation-delay: 0.95s;
}

:root .a-dur-250 {
  -webkit-animation-duration: 0.25s;
          animation-duration: 0.25s;
}

:root .a-dur-500 {
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
}

:root .a-dur-750 {
  -webkit-animation-duration: 0.75s;
          animation-duration: 0.75s;
}

:root .a-dur-1000 {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}

:root .a-dur-1500 {
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
}

:root .a-dur-2000 {
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
}

/* Smooth Scroll ---------------------------- */
*[data-scroll-to] {
  cursor: pointer;
}

/* ------------------------------------------------------------------------------ /*
/*  ELEMENTS
/* ------------------------------------------------------------------------------ */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: var(--phw-heading-font);
  -webkit-font-feature-settings: "lnum";
          font-feature-settings: "lnum";
  font-variant-numeric: lining-nums;
  font-weight: var(--phw-heading-font-weight);
  letter-spacing: var(--phw-heading-letter-spacing);
  text-transform: var(--phw-heading-text-transform);
  line-height: 1.25;
  margin: var(--phw-spacer-md) 0 var(--phw-spacer-xs);
}
h1 strong, .h1 strong,
h2 strong, .h2 strong,
h3 strong, .h3 strong,
h4 strong, .h4 strong,
h5 strong, .h5 strong,
h6 strong, .h6 strong {
  font-weight: var(--phw-heading-font-weight-bold);
}

h1, .h1 {
  font-size: var(--phw-h1-font-size);
  line-height: var(--phw-h1-line-height);
  font-weight: var(--phw-h1-font-weight);
}

h2, .h2 {
  font-size: var(--phw-h2-font-size);
  line-height: var(--phw-h2-line-height);
  font-weight: var(--phw-h2-font-weight);
}

h3, .h3 {
  font-size: var(--phw-h3-font-size);
  line-height: var(--phw-h3-line-height);
  font-weight: var(--phw-h3-font-weight);
}

h4, .h4 {
  font-size: var(--phw-h4-font-size);
  line-height: var(--phw-h4-line-height);
  font-weight: var(--phw-h4-font-weight);
}

h5, .h5 {
  font-size: var(--phw-h5-font-size);
  line-height: var(--phw-h5-line-height);
  font-weight: var(--phw-h5-font-weight);
}

h6, .h6 {
  font-size: var(--phw-h6-font-size);
  line-height: var(--phw-h6-line-height);
  font-weight: var(--phw-h6-font-weight);
}

p {
  line-height: var(--phw-body-line-height);
  margin: 0 0 var(--phw-body-paragraph-spacing) 0;
}

strong {
  font-weight: var(--phw-body-font-weight-bold);
}

.prefix,
.is-style-prefix {
  font-size: var(--phw-prefix-font-size);
  line-height: var(--phw-prefix-line-height);
  font-weight: var(--phw-prefix-font-weight);
  letter-spacing: var(--phw-prefix-letter-spacing);
  text-transform: var(--phw-prefix-text-transform);
}

sub,
sup {
  font-size: 65%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.6em;
}

sub {
  bottom: -0.25em;
}

h1 sub, h1 sup, h2 sub, h2 sup, h3 sub, h3 sup, h4 sub, h4 sup, h5 sub, h5 sup, h6 sub, h6 sup,
.h1 sub,
.h1 sup, .h2 sub, .h2 sup, .h3 sub, .h3 sup, .h4 sub, .h4 sup, .h5 sub, .h5 sup, .h6 sub, .h6 sup {
  font-size: 45%;
}
h1 sup, h2 sup, h3 sup, h4 sup, h5 sup, h6 sup,
.h1 sup, .h2 sup, .h3 sup, .h4 sup, .h5 sup, .h6 sup {
  top: -1em;
}
h1 sub, h2 sub, h3 sub, h4 sub, h5 sub, h6 sub,
.h1 sub, .h2 sub, .h3 sub, .h4 sub, .h5 sub, .h6 sub {
  bottom: -0.25em;
}

abbr,
acronym {
  cursor: help;
}

address {
  line-height: 1.5;
  margin: 0 0 2rem 0;
}

a {
  color: var(--phw-accent-color);
  text-decoration: none;
  -webkit-transition: color var(--phw-trans-speed) var(--phw-trans-ease);
  transition: color var(--phw-trans-speed) var(--phw-trans-ease);
}
a:hover, a:focus {
  text-decoration: underline;
}

/* Drop Cap ---------------------------------- */
.has-drop-cap:not(:focus):first-letter {
  color: var(--phw-accent-color);
  font-size: 5.2em;
  font-weight: 700;
  margin: 0.09em 1rem 0.5rem 0;
}
@media (min-width: 782px) {
  .has-drop-cap:not(:focus):first-letter {
    font-size: 5.4em;
    margin: 0.1em 1rem 0.5rem 0;
  }
}

.has-drop-cap.has-text-color:not(:focus):first-letter {
  color: inherit;
}

/* Separators ------------------------------------ */
hr {
  background-color: var(--phw-border-color) !important;
  border: none;
  color: var(--phw-border-color);
  display: block;
  height: 0.2rem;
  margin: 4rem 0;
  text-align: left;
}
@media (min-width: 782px) {
  hr {
    margin: 4.8rem 0;
  }
}

/* Code -------------------------------------- */
code,
kbd,
pre,
samp {
  font-family: monospace;
  font-size: 1em;
  padding: 0.4rem 0.6rem;
}

code,
kbd,
samp {
  background: var(--phw-light-background-color);
  border-radius: 0.2rem;
}

pre {
  border: 0.1rem solid var(--phw-border-color);
  line-height: 1.5;
  margin: 4rem 0;
  overflow: auto;
  padding: 2.4rem;
  text-align: left;
}

pre code {
  background: transparent;
  padding: 0;
}

/* Lists ------------------------------------- */
ul,
ol {
  margin: 2.4rem 0 2.4rem 2.4rem;
}
@media (min-width: 782px) {
  ul,
  ol {
    margin-bottom: 3.2rem;
  }
}

li {
  line-height: 1.5;
  margin: 0.5rem 0 0.5rem 0;
}

li > ul,
li > ol {
  margin-bottom: 0.5rem;
  margin-top: 0.5rem;
}

.reset-list-style,
.reset-list-style ul,
.reset-list-style ol {
  list-style: none;
  margin: 0;
}

.reset-list-style li {
  margin: 0;
}

dt,
dd {
  line-height: 1.5;
}

dt {
  font-weight: 700;
}

dt + dd {
  margin-top: 0.5rem;
}

dd + dt {
  margin-top: 1.5rem;
}

/* Quotes ------------------------------------ */
blockquote {
  border-color: var(--phw-accent-color);
  border-style: solid;
  border-width: 0 0 0 0.2rem;
  color: inherit;
  font-size: 1em;
  margin: 4rem 0;
  padding: 0 0 0 2rem;
}
@media (min-width: 782px) {
  blockquote {
    padding: 0 0 0 2.5rem;
  }
}

cite {
  color: var(--phw-accent-color);
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 700;
}

blockquote cite {
  display: block;
  margin: 2rem 0 0 0;
}

blockquote p:last-of-type {
  margin: 0;
}

/* Media ------------------------------------- */
figure {
  margin: 0;
}

iframe {
  border: none;
  display: block;
  max-width: 100%;
}

img,
embed,
object {
  display: block;
  height: auto;
  max-width: 100%;
}

video {
  display: block;
  width: 100%;
}

svg {
  display: block;
}

figcaption,
.wp-caption-text {
  color: var(--phw-secondary-color);
  display: block;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 1.2rem;
}
@media (min-width: 782px) {
  figcaption,
  .wp-caption-text {
    font-size: 1.6rem;
  }
}

figcaption a {
  color: inherit;
}

/* Remove the dark gradient overlay from Safari's native player */
video::-webkit-media-controls-panel {
  background-image: none !important;
  background-color: transparent !important;
}

/* Optional: If you still see a tint on the edges */
video::-webkit-media-controls-enclosure {
  background-color: transparent !important;
}

/* GALLERIES */
.gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 3em 0 3em -0.8em;
  width: calc(100% + 1.6em);
}

.gallery-item {
  margin: 0.8em 0;
  padding: 0 0.8em;
}

.gallery-item img,
.gallery-item {
  display: block;
  width: 100%;
}

.gallery-caption {
  display: block;
  margin-top: 0.8em;
}

@media (min-width: 782px) {
  .gallery-columns-2 .gallery-item {
    max-width: 50%;
  }
  .gallery-columns-3 .gallery-item {
    max-width: 33.33%;
  }
  .gallery-columns-4 .gallery-item {
    max-width: 25%;
  }
  .gallery-columns-5 .gallery-item {
    max-width: 20%;
  }
  .gallery-columns-6 .gallery-item {
    max-width: 16.66%;
  }
  .gallery-columns-7 .gallery-item {
    max-width: 14.28%;
  }
  .gallery-columns-8 .gallery-item {
    max-width: 12.5%;
  }
  .gallery-columns-9 .gallery-item {
    max-width: 11.11%;
  }
}
/* Image Sizer ------------------------------- */
.image-sizer:not(.auto) {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
  overflow: hidden;
}
.image-sizer:not(.auto).square, .image-sizer:not(.auto).circle {
  padding-bottom: 100%;
}
.image-sizer:not(.auto).circle {
  border-radius: 100%;
}
.image-sizer:not(.auto).landscape {
  padding-bottom: 75%;
}
.image-sizer:not(.auto).portrait {
  padding-bottom: 125%;
}
.image-sizer:not(.auto).wide {
  padding-bottom: 56.25%;
}
.image-sizer:not(.auto).tall {
  padding-bottom: 150%;
}
.image-sizer:not(.auto) > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.image-sizer:not(.auto) img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* Fallback Image ---------------------------- */
.fallback-image-dark-mode {
  display: none;
}

@media (prefers-color-scheme: dark) {
  .has-dark-mode-palette .fallback-image-dark-mode {
    display: block;
  }
  .has-dark-mode-palette .fallback-image-regular {
    display: none;
  }
}
/* Inputs ------------------------------------ */
fieldset {
  border: 0.2rem solid var(--phw-border-color);
  margin-bottom: 3rem;
  margin-top: 3rem;
  padding: var(--phw-gap);
}
@media (min-width: 782px) {
  fieldset {
    padding: 4.8rem;
  }
}

form {
  margin-bottom: 3rem;
  margin-top: 3rem;
}

legend {
  font-size: 0.85em;
  font-weight: 700;
  padding: 0 1rem;
}
@media (min-width: 782px) {
  legend {
    padding: 0 1.5rem;
  }
}

label {
  display: block;
  font-size: 1.5rem;
  margin: 0 0 0.5rem 0;
}
@media (min-width: 782px) {
  label {
    font-size: 1.6rem;
  }
}

label.inline,
input[type=checkbox] + label {
  display: inline;
  font-weight: 400;
  margin-left: 0.5rem;
}

input,
textarea,
button {
  font-family: inherit;
  line-height: 1;
}

input,
textarea {
  background-color: var(--phw-background-color);
  border-color: var(--phw-border-color);
}

input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=date],
input[type=month],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=week],
input[type=number],
input[type=search],
input[type=tel],
input[type=color],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 3.4rem;
  border-style: solid;
  border-width: 0.1rem;
  border-color: var(--phw-primary-color);
  -webkit-box-shadow: none;
          box-shadow: none;
  color: inherit;
  display: block;
  font-size: 0.9em !important;
  line-height: 1;
  margin: 0;
  max-width: 100%;
  padding: 1.6rem 2rem !important;
  width: 100%;
  -webkit-transition: border 0.35s var(--phw-trans-ease);
  transition: border 0.35s var(--phw-trans-ease);
}
input[type=text]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=url]::-webkit-input-placeholder, input[type=date]::-webkit-input-placeholder, input[type=month]::-webkit-input-placeholder, input[type=time]::-webkit-input-placeholder, input[type=datetime]::-webkit-input-placeholder, input[type=datetime-local]::-webkit-input-placeholder, input[type=week]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, input[type=search]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=color]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  opacity: 1;
  -webkit-transition: opacity 0.35s var(--phw-trans-ease);
  transition: opacity 0.35s var(--phw-trans-ease);
}
input[type=text]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=date]::-moz-placeholder, input[type=month]::-moz-placeholder, input[type=time]::-moz-placeholder, input[type=datetime]::-moz-placeholder, input[type=datetime-local]::-moz-placeholder, input[type=week]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=color]::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  -moz-transition: opacity 0.35s var(--phw-trans-ease);
  transition: opacity 0.35s var(--phw-trans-ease);
}
input[type=text]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=url]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, input[type=month]:-ms-input-placeholder, input[type=time]:-ms-input-placeholder, input[type=datetime]:-ms-input-placeholder, input[type=datetime-local]:-ms-input-placeholder, input[type=week]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=search]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=color]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  opacity: 1;
  -ms-transition: opacity 0.35s var(--phw-trans-ease);
  transition: opacity 0.35s var(--phw-trans-ease);
}
input[type=text]::-ms-input-placeholder, input[type=password]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=url]::-ms-input-placeholder, input[type=date]::-ms-input-placeholder, input[type=month]::-ms-input-placeholder, input[type=time]::-ms-input-placeholder, input[type=datetime]::-ms-input-placeholder, input[type=datetime-local]::-ms-input-placeholder, input[type=week]::-ms-input-placeholder, input[type=number]::-ms-input-placeholder, input[type=search]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, input[type=color]::-ms-input-placeholder, textarea::-ms-input-placeholder {
  opacity: 1;
  -ms-transition: opacity 0.35s var(--phw-trans-ease);
  transition: opacity 0.35s var(--phw-trans-ease);
}
input[type=text]::placeholder,
input[type=password]::placeholder,
input[type=email]::placeholder,
input[type=url]::placeholder,
input[type=date]::placeholder,
input[type=month]::placeholder,
input[type=time]::placeholder,
input[type=datetime]::placeholder,
input[type=datetime-local]::placeholder,
input[type=week]::placeholder,
input[type=number]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=color]::placeholder,
textarea::placeholder {
  opacity: 1;
  -webkit-transition: opacity 0.35s var(--phw-trans-ease);
  transition: opacity 0.35s var(--phw-trans-ease);
}
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=week]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=color]:focus,
textarea:focus {
  outline: none;
  border-color: var(--phw-accent-color);
}
input[type=text]:focus::-webkit-input-placeholder, input[type=password]:focus::-webkit-input-placeholder, input[type=email]:focus::-webkit-input-placeholder, input[type=url]:focus::-webkit-input-placeholder, input[type=date]:focus::-webkit-input-placeholder, input[type=month]:focus::-webkit-input-placeholder, input[type=time]:focus::-webkit-input-placeholder, input[type=datetime]:focus::-webkit-input-placeholder, input[type=datetime-local]:focus::-webkit-input-placeholder, input[type=week]:focus::-webkit-input-placeholder, input[type=number]:focus::-webkit-input-placeholder, input[type=search]:focus::-webkit-input-placeholder, input[type=tel]:focus::-webkit-input-placeholder, input[type=color]:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {
  opacity: 0.4;
}
input[type=text]:focus::-moz-placeholder, input[type=password]:focus::-moz-placeholder, input[type=email]:focus::-moz-placeholder, input[type=url]:focus::-moz-placeholder, input[type=date]:focus::-moz-placeholder, input[type=month]:focus::-moz-placeholder, input[type=time]:focus::-moz-placeholder, input[type=datetime]:focus::-moz-placeholder, input[type=datetime-local]:focus::-moz-placeholder, input[type=week]:focus::-moz-placeholder, input[type=number]:focus::-moz-placeholder, input[type=search]:focus::-moz-placeholder, input[type=tel]:focus::-moz-placeholder, input[type=color]:focus::-moz-placeholder, textarea:focus::-moz-placeholder {
  opacity: 0.4;
}
input[type=text]:focus:-ms-input-placeholder, input[type=password]:focus:-ms-input-placeholder, input[type=email]:focus:-ms-input-placeholder, input[type=url]:focus:-ms-input-placeholder, input[type=date]:focus:-ms-input-placeholder, input[type=month]:focus:-ms-input-placeholder, input[type=time]:focus:-ms-input-placeholder, input[type=datetime]:focus:-ms-input-placeholder, input[type=datetime-local]:focus:-ms-input-placeholder, input[type=week]:focus:-ms-input-placeholder, input[type=number]:focus:-ms-input-placeholder, input[type=search]:focus:-ms-input-placeholder, input[type=tel]:focus:-ms-input-placeholder, input[type=color]:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder {
  opacity: 0.4;
}
input[type=text]:focus::-ms-input-placeholder, input[type=password]:focus::-ms-input-placeholder, input[type=email]:focus::-ms-input-placeholder, input[type=url]:focus::-ms-input-placeholder, input[type=date]:focus::-ms-input-placeholder, input[type=month]:focus::-ms-input-placeholder, input[type=time]:focus::-ms-input-placeholder, input[type=datetime]:focus::-ms-input-placeholder, input[type=datetime-local]:focus::-ms-input-placeholder, input[type=week]:focus::-ms-input-placeholder, input[type=number]:focus::-ms-input-placeholder, input[type=search]:focus::-ms-input-placeholder, input[type=tel]:focus::-ms-input-placeholder, input[type=color]:focus::-ms-input-placeholder, textarea:focus::-ms-input-placeholder {
  opacity: 0.4;
}
input[type=text]:focus::placeholder,
input[type=password]:focus::placeholder,
input[type=email]:focus::placeholder,
input[type=url]:focus::placeholder,
input[type=date]:focus::placeholder,
input[type=month]:focus::placeholder,
input[type=time]:focus::placeholder,
input[type=datetime]:focus::placeholder,
input[type=datetime-local]:focus::placeholder,
input[type=week]:focus::placeholder,
input[type=number]:focus::placeholder,
input[type=search]:focus::placeholder,
input[type=tel]:focus::placeholder,
input[type=color]:focus::placeholder,
textarea:focus::placeholder {
  opacity: 0.4;
}

textarea {
  height: 16rem;
  font-size: 0.95em;
  line-height: var(--phw-body-line-height);
  width: 100%;
  border-radius: 2.4rem;
  resize: none !important;
}

select {
  font-family: inherit;
  font-size: inherit;
}

::-webkit-input-placeholder {
  color: var(--phw-accent-light-color);
  line-height: normal;
}

::-moz-placeholder {
  color: var(--phw-accent-light-color);
  line-height: normal;
}

:-ms-input-placeholder {
  color: var(--phw-accent-light-color);
  line-height: normal;
}

::-ms-input-placeholder {
  color: var(--phw-accent-light-color);
  line-height: normal;
  opacity: 1;
}

::placeholder {
  color: var(--phw-accent-light-color);
  line-height: normal;
  opacity: 1;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none;
}

/* Input Reset ------------------------------- */
button.reset,
input.reset,
textarea.reset {
  background: none;
  border: none;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  padding: 0;
  text-transform: none;
}

/* Search Form ------------------------------- */
.search-form {
  max-width: 32rem;
  position: relative;
}

.search-form .search-field {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--phw-background-color);
  border: 0.1rem solid var(--phw-border-color);
  border-radius: 999rem;
  color: var(--phw-primary-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.8rem;
  padding: 1.35rem 6.6rem 1.35rem 2.4rem;
  position: relative;
  -webkit-transition: border-color 0.15s linear;
  transition: border-color 0.15s linear;
  width: 100%;
}

.search-form .search-field:focus {
  border-color: var(--phw-secondary-color);
}

.search-form .search-submit {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--phw-secondary-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 6.6rem;
}

/* Advanced Forms ------------------------------- */
.af-form {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  padding: 3.2rem 2.8rem 2.8rem 2.8rem;
  border-radius: 3.4rem;
}
.af-form .af-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
.af-form .af-fields .af-field {
  border: 0;
  padding: 0;
}
.af-form .af-field.no-label > .af-label {
  display: none;
}
.af-form .acf-true-false > label {
  display: block;
  position: relative;
  padding-left: 3rem;
  cursor: pointer;
}
.af-form .acf-true-false input[type=checkbox] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.af-form .acf-true-false input[type=checkbox]:checked + .message:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Cpath fill='none' stroke='%230D8CFF' stroke-linecap='square' stroke-miterlimit='10' stroke-width='100' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E");
}
.af-form .acf-true-false .message {
  font-size: var(--phw-xs-font-size);
  line-height: var(--phw-xs-line-height);
}
.af-form .acf-true-false .message:before {
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 0.3rem;
  border: 0.1rem solid var(--phw-primary-color);
  content: "";
  position: absolute;
  top: 0.35rem;
  left: 0;
  background: transparent;
}
.af-form .acf-true-false .message a {
  color: inherit;
  text-decoration: underline;
}
.af-form .acf-true-false .message a:hover, .af-form .acf-true-false .message a:focus {
  color: var(--phw-accent-color);
}
.af-form .af-submit {
  margin-top: 1.6rem;
  padding: 0;
}
.af-form .af-submit .af-submit-button {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(13, 140, 255, 0)), color-stop(25%, rgba(13, 140, 255, 0)), color-stop(50%, rgba(7, 5, 4, 0)));
  background: linear-gradient(0deg, rgba(13, 140, 255, 0) 0%, rgba(13, 140, 255, 0) 25%, rgba(7, 5, 4, 0) 50%);
  position: relative;
}
.af-form .af-submit .af-submit-button:before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  -webkit-box-shadow: var(--phw-glass-button-box-shadow);
          box-shadow: var(--phw-glass-button-box-shadow);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
.af-form .af-submit .af-submit-button:after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(13, 140, 255, 0.6)), color-stop(1%, rgba(13, 140, 255, 0.3)), color-stop(60%, rgba(7, 5, 4, 0)));
  background: linear-gradient(0deg, rgba(13, 140, 255, 0.6) 0%, rgba(13, 140, 255, 0.3) 1%, rgba(7, 5, 4, 0) 60%);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
.af-form .af-submit .af-submit-button.active:before, .af-form .af-submit .af-submit-button.active:after, .af-form .af-submit .af-submit-button:hover:before, .af-form .af-submit .af-submit-button:hover:after, .af-form .af-submit .af-submit-button:focus:before, .af-form .af-submit .af-submit-button:focus:after {
  opacity: 1;
}
.af-form .af-submit .af-submit-button .svg-wrapper {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.af-form .af-submit .af-submit-button:hover .svg-wrapper, .af-form .af-submit .af-submit-button:focus .svg-wrapper {
  background-color: var(--phw-button-svg-background-color-active);
  color: var(--phw-button-svg-color-active);
}

button,
.button,
.faux-button,
.wp-block-button__link,
:root .wp-block-file__button,
input[type=button],
input[type=reset],
input[type=submit],
:root .woocommerce #respond input#submit,
:root .woocommerce a.button,
:root .woocommerce button.button,
:root .woocommerce input.button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: var(--phw-button-background-color);
  border: var(--phw-button-border-width) solid var(--phw-button-border-color);
  border-radius: var(--phw-button-border-radius);
  color: var(--phw-button-text-color);
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: var(--phw-button-font-size);
  font-weight: var(--phw-button-font-weight);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-transform: var(--phw-button-text-transform);
  letter-spacing: var(--phw-button-letter-spacing);
  line-height: var(--phw-button-line-height);
  margin: 0;
  padding: var(--phw-button-padding-y) var(--phw-button-padding-x);
  text-align: center;
  text-decoration: none !important;
  text-underline-offset: 0.25em;
  text-decoration-thickness: 0.1rem;
  -webkit-transition: var(--phw-trans-speed) var(--phw-trans-ease);
  transition: var(--phw-trans-speed) var(--phw-trans-ease);
  -webkit-transition-property: background, border, color;
  transition-property: background, border, color;
}
button.active, button:hover, button:focus,
.button.active,
.button:hover,
.button:focus,
.faux-button.active,
.faux-button:hover,
.faux-button:focus,
.wp-block-button__link.active,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
:root .wp-block-file__button.active,
:root .wp-block-file__button:hover,
:root .wp-block-file__button:focus,
input[type=button].active,
input[type=button]:hover,
input[type=button]:focus,
input[type=reset].active,
input[type=reset]:hover,
input[type=reset]:focus,
input[type=submit].active,
input[type=submit]:hover,
input[type=submit]:focus,
:root .woocommerce #respond input#submit.active,
:root .woocommerce #respond input#submit:hover,
:root .woocommerce #respond input#submit:focus,
:root .woocommerce a.button.active,
:root .woocommerce a.button:hover,
:root .woocommerce a.button:focus,
:root .woocommerce button.button.active,
:root .woocommerce button.button:hover,
:root .woocommerce button.button:focus,
:root .woocommerce input.button.active,
:root .woocommerce input.button:hover,
:root .woocommerce input.button:focus {
  color: var(--phw-button-text-color-active);
  background: var(--phw-button-background-color-active);
  border-color: var(--phw-button-border-color-active);
}
button:has(svg),
.button:has(svg),
.faux-button:has(svg),
.wp-block-button__link:has(svg),
:root .wp-block-file__button:has(svg),
input[type=button]:has(svg),
input[type=reset]:has(svg),
input[type=submit]:has(svg),
:root .woocommerce #respond input#submit:has(svg),
:root .woocommerce a.button:has(svg),
:root .woocommerce button.button:has(svg),
:root .woocommerce input.button:has(svg) {
  position: relative;
  padding-right: 8rem;
  text-align: left;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
button:has(svg) .svg-wrapper,
.button:has(svg) .svg-wrapper,
.faux-button:has(svg) .svg-wrapper,
.wp-block-button__link:has(svg) .svg-wrapper,
:root .wp-block-file__button:has(svg) .svg-wrapper,
input[type=button]:has(svg) .svg-wrapper,
input[type=reset]:has(svg) .svg-wrapper,
input[type=submit]:has(svg) .svg-wrapper,
:root .woocommerce #respond input#submit:has(svg) .svg-wrapper,
:root .woocommerce a.button:has(svg) .svg-wrapper,
:root .woocommerce button.button:has(svg) .svg-wrapper,
:root .woocommerce input.button:has(svg) .svg-wrapper {
  position: absolute;
  right: 1.2rem;
  top: 50%;
  -webkit-transform: translateY(-50%) scale3d(1, 1, 1);
          transform: translateY(-50%) scale3d(1, 1, 1);
  height: 4.8rem;
  width: 4.8rem;
  background-color: var(--phw-button-svg-background-color);
  color: var(--phw-button-svg-color);
  border-radius: 50%;
  padding: 1rem;
  -webkit-transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  overflow: visible;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
button:has(svg).active .svg-wrapper, button:has(svg):hover .svg-wrapper, button:has(svg):focus .svg-wrapper,
.button:has(svg).active .svg-wrapper,
.button:has(svg):hover .svg-wrapper,
.button:has(svg):focus .svg-wrapper,
.faux-button:has(svg).active .svg-wrapper,
.faux-button:has(svg):hover .svg-wrapper,
.faux-button:has(svg):focus .svg-wrapper,
.wp-block-button__link:has(svg).active .svg-wrapper,
.wp-block-button__link:has(svg):hover .svg-wrapper,
.wp-block-button__link:has(svg):focus .svg-wrapper,
:root .wp-block-file__button:has(svg).active .svg-wrapper,
:root .wp-block-file__button:has(svg):hover .svg-wrapper,
:root .wp-block-file__button:has(svg):focus .svg-wrapper,
input[type=button]:has(svg).active .svg-wrapper,
input[type=button]:has(svg):hover .svg-wrapper,
input[type=button]:has(svg):focus .svg-wrapper,
input[type=reset]:has(svg).active .svg-wrapper,
input[type=reset]:has(svg):hover .svg-wrapper,
input[type=reset]:has(svg):focus .svg-wrapper,
input[type=submit]:has(svg).active .svg-wrapper,
input[type=submit]:has(svg):hover .svg-wrapper,
input[type=submit]:has(svg):focus .svg-wrapper,
:root .woocommerce #respond input#submit:has(svg).active .svg-wrapper,
:root .woocommerce #respond input#submit:has(svg):hover .svg-wrapper,
:root .woocommerce #respond input#submit:has(svg):focus .svg-wrapper,
:root .woocommerce a.button:has(svg).active .svg-wrapper,
:root .woocommerce a.button:has(svg):hover .svg-wrapper,
:root .woocommerce a.button:has(svg):focus .svg-wrapper,
:root .woocommerce button.button:has(svg).active .svg-wrapper,
:root .woocommerce button.button:has(svg):hover .svg-wrapper,
:root .woocommerce button.button:has(svg):focus .svg-wrapper,
:root .woocommerce input.button:has(svg).active .svg-wrapper,
:root .woocommerce input.button:has(svg):hover .svg-wrapper,
:root .woocommerce input.button:has(svg):focus .svg-wrapper {
  background-color: var(--phw-button-svg-background-color-active);
  color: var(--phw-button-svg-color-active);
}
button.glass-button,
.button.glass-button,
.faux-button.glass-button,
.wp-block-button__link.glass-button,
:root .wp-block-file__button.glass-button,
input[type=button].glass-button,
input[type=reset].glass-button,
input[type=submit].glass-button,
:root .woocommerce #respond input#submit.glass-button,
:root .woocommerce a.button.glass-button,
:root .woocommerce button.button.glass-button,
:root .woocommerce input.button.glass-button {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(13, 140, 255, 0)), color-stop(25%, rgba(13, 140, 255, 0)), color-stop(50%, rgba(7, 5, 4, 0)));
  background: linear-gradient(0deg, rgba(13, 140, 255, 0) 0%, rgba(13, 140, 255, 0) 25%, rgba(7, 5, 4, 0) 50%);
  position: relative;
}
button.glass-button:before,
.button.glass-button:before,
.faux-button.glass-button:before,
.wp-block-button__link.glass-button:before,
:root .wp-block-file__button.glass-button:before,
input[type=button].glass-button:before,
input[type=reset].glass-button:before,
input[type=submit].glass-button:before,
:root .woocommerce #respond input#submit.glass-button:before,
:root .woocommerce a.button.glass-button:before,
:root .woocommerce button.button.glass-button:before,
:root .woocommerce input.button.glass-button:before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  -webkit-box-shadow: var(--phw-glass-button-box-shadow);
          box-shadow: var(--phw-glass-button-box-shadow);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
button.glass-button:after,
.button.glass-button:after,
.faux-button.glass-button:after,
.wp-block-button__link.glass-button:after,
:root .wp-block-file__button.glass-button:after,
input[type=button].glass-button:after,
input[type=reset].glass-button:after,
input[type=submit].glass-button:after,
:root .woocommerce #respond input#submit.glass-button:after,
:root .woocommerce a.button.glass-button:after,
:root .woocommerce button.button.glass-button:after,
:root .woocommerce input.button.glass-button:after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(13, 140, 255, 0.6)), color-stop(1%, rgba(13, 140, 255, 0.3)), color-stop(60%, rgba(7, 5, 4, 0)));
  background: linear-gradient(0deg, rgba(13, 140, 255, 0.6) 0%, rgba(13, 140, 255, 0.3) 1%, rgba(7, 5, 4, 0) 60%);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
button.glass-button.active:before, button.glass-button.active:after, button.glass-button:hover:before, button.glass-button:hover:after, button.glass-button:focus:before, button.glass-button:focus:after,
.button.glass-button.active:before,
.button.glass-button.active:after,
.button.glass-button:hover:before,
.button.glass-button:hover:after,
.button.glass-button:focus:before,
.button.glass-button:focus:after,
.faux-button.glass-button.active:before,
.faux-button.glass-button.active:after,
.faux-button.glass-button:hover:before,
.faux-button.glass-button:hover:after,
.faux-button.glass-button:focus:before,
.faux-button.glass-button:focus:after,
.wp-block-button__link.glass-button.active:before,
.wp-block-button__link.glass-button.active:after,
.wp-block-button__link.glass-button:hover:before,
.wp-block-button__link.glass-button:hover:after,
.wp-block-button__link.glass-button:focus:before,
.wp-block-button__link.glass-button:focus:after,
:root .wp-block-file__button.glass-button.active:before,
:root .wp-block-file__button.glass-button.active:after,
:root .wp-block-file__button.glass-button:hover:before,
:root .wp-block-file__button.glass-button:hover:after,
:root .wp-block-file__button.glass-button:focus:before,
:root .wp-block-file__button.glass-button:focus:after,
input[type=button].glass-button.active:before,
input[type=button].glass-button.active:after,
input[type=button].glass-button:hover:before,
input[type=button].glass-button:hover:after,
input[type=button].glass-button:focus:before,
input[type=button].glass-button:focus:after,
input[type=reset].glass-button.active:before,
input[type=reset].glass-button.active:after,
input[type=reset].glass-button:hover:before,
input[type=reset].glass-button:hover:after,
input[type=reset].glass-button:focus:before,
input[type=reset].glass-button:focus:after,
input[type=submit].glass-button.active:before,
input[type=submit].glass-button.active:after,
input[type=submit].glass-button:hover:before,
input[type=submit].glass-button:hover:after,
input[type=submit].glass-button:focus:before,
input[type=submit].glass-button:focus:after,
:root .woocommerce #respond input#submit.glass-button.active:before,
:root .woocommerce #respond input#submit.glass-button.active:after,
:root .woocommerce #respond input#submit.glass-button:hover:before,
:root .woocommerce #respond input#submit.glass-button:hover:after,
:root .woocommerce #respond input#submit.glass-button:focus:before,
:root .woocommerce #respond input#submit.glass-button:focus:after,
:root .woocommerce a.button.glass-button.active:before,
:root .woocommerce a.button.glass-button.active:after,
:root .woocommerce a.button.glass-button:hover:before,
:root .woocommerce a.button.glass-button:hover:after,
:root .woocommerce a.button.glass-button:focus:before,
:root .woocommerce a.button.glass-button:focus:after,
:root .woocommerce button.button.glass-button.active:before,
:root .woocommerce button.button.glass-button.active:after,
:root .woocommerce button.button.glass-button:hover:before,
:root .woocommerce button.button.glass-button:hover:after,
:root .woocommerce button.button.glass-button:focus:before,
:root .woocommerce button.button.glass-button:focus:after,
:root .woocommerce input.button.glass-button.active:before,
:root .woocommerce input.button.glass-button.active:after,
:root .woocommerce input.button.glass-button:hover:before,
:root .woocommerce input.button.glass-button:hover:after,
:root .woocommerce input.button.glass-button:focus:before,
:root .woocommerce input.button.glass-button:focus:after {
  opacity: 1;
}
button.glass-button .svg-wrapper,
.button.glass-button .svg-wrapper,
.faux-button.glass-button .svg-wrapper,
.wp-block-button__link.glass-button .svg-wrapper,
:root .wp-block-file__button.glass-button .svg-wrapper,
input[type=button].glass-button .svg-wrapper,
input[type=reset].glass-button .svg-wrapper,
input[type=submit].glass-button .svg-wrapper,
:root .woocommerce #respond input#submit.glass-button .svg-wrapper,
:root .woocommerce a.button.glass-button .svg-wrapper,
:root .woocommerce button.button.glass-button .svg-wrapper,
:root .woocommerce input.button.glass-button .svg-wrapper {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.wp-block-button__link:visited {
  color: var(--phw-button-text-color);
}

.wp-block-button__link:active,
.wp-block-button__link:focus,
.wp-block-button__link:hover {
  color: var(--phw-button-text-color-active);
}

/* Toggles ----------------------------------- */
.toggle {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
  position: relative;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  text-align: inherit;
  user-select: none;
}

button.toggle {
  background: none;
  border-radius: 0;
  padding: 0;
}

.toggle svg * {
  stroke: currentColor;
}

/* Tables ------------------------------------ */
table {
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
  margin: 0;
  max-width: 100%;
  overflow: hidden;
  width: 100%;
  border-radius: 3rem;
  -webkit-box-shadow: 0 0 0 0.2rem var(--phw-primary-color);
          box-shadow: 0 0 0 0.2rem var(--phw-primary-color);
}

th,
td,
caption {
  padding: var(--phw-spacer-xs);
}

th,
td {
  border: 0;
  margin: 0;
  overflow: visible;
}

th {
  font-weight: 700;
}

caption {
  background-color: var(--phw-border-color);
  font-weight: 700;
  text-align: center;
}

thead {
  border: 0;
  white-space: nowrap;
  background-color: var(--phw-primary-color);
  color: var(--phw-background-color);
}

tbody {
  background-color: var(--phw-light-grey-color);
}

thead th,
tbody td,
tfoot th {
  border-left: 0.1rem solid var(--phw-primary-color);
  border-right: 0.1rem solid var(--phw-primary-color);
}
thead th:first-child,
tbody td:first-child,
tfoot th:first-child {
  border-left-width: 0;
}
thead th:last-child,
tbody td:last-child,
tfoot th:last-child {
  border-right-width: 0;
}

tbody td,
tfoot th {
  border-top: 0.1rem solid var(--phw-primary-color);
}

tfoot {
  border: 0;
  color: var(--phw-accent-color);
}

/* Social Icons ------------------------------ */
ul.social-icons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

ul.social-icons,
ul.social-icons li {
  margin: 0;
}

.social-icons a {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 0.8rem;
  color: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  outline: none;
  padding: 1rem;
  text-decoration: none;
  -webkit-transition: color 0.15s linear, background-color 0.15s linear, -webkit-box-shadow 0.15s linear, -webkit-transform 0.15s linear;
  transition: color 0.15s linear, background-color 0.15s linear, -webkit-box-shadow 0.15s linear, -webkit-transform 0.15s linear;
  transition: color 0.15s linear, background-color 0.15s linear, box-shadow 0.15s linear, transform 0.15s linear;
  transition: color 0.15s linear, background-color 0.15s linear, box-shadow 0.15s linear, transform 0.15s linear, -webkit-box-shadow 0.15s linear, -webkit-transform 0.15s linear;
}

.social-icons a:hover {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
}

.social-icons a:focus {
  -webkit-box-shadow: inset 0 0 0 0.1rem currentColor;
          box-shadow: inset 0 0 0 0.1rem currentColor;
}

.social-icons svg:not(.icon-link) * {
  fill: currentColor;
}

.social-icons .icon-link path {
  stroke: currentColor;
}

/* CIRCULAR SOCIAL ICONS */
.social-icons.circular {
  margin: -1.2rem 0 0 -1.2rem;
}

.social-icons.circular li {
  margin: 1.2rem 0 0 1.2rem;
}

.social-icons.circular a {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: var(--phw-background-color);
  border-radius: 50%;
  color: var(--phw-primary-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 4rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  position: relative;
  width: 4rem;
}

.social-icons.circular a:focus {
  -webkit-box-shadow: inset 0 0 0 0.3rem var(--phw-background-color), inset 0 0 0 0.4rem currentColor;
          box-shadow: inset 0 0 0 0.3rem var(--phw-background-color), inset 0 0 0 0.4rem currentColor;
}

.menu-modal .social-icons.circular a {
  background-color: var(--phw-menu-modal-text-color);
  color: var(--phw-menu-modal-background-color);
}

.menu-modal .social-icons.circular a:focus {
  -webkit-box-shadow: inset 0 0 0 0.3rem var(--phw-menu-modal-text-color), inset 0 0 0 0.4rem var(--phw-menu-modal-background-color);
          box-shadow: inset 0 0 0 0.3rem var(--phw-menu-modal-text-color), inset 0 0 0 0.4rem var(--phw-menu-modal-background-color);
}

/*
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0;
  display: block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}

.hamburger-box {
  width: 2.6rem;
  height: 2.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 2.6rem;
  height: 0.15rem;
  background-color: currentColor;
  border-radius: 0.1rem;
  position: absolute;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
}

.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -0.6rem;
}

.hamburger-inner::after {
  bottom: -0.6rem;
}

.hamburger--spin .hamburger-inner {
  -webkit-transition-duration: 0.22s;
          transition-duration: 0.22s;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
          transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
  -webkit-transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
  -webkit-transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.1s 0.25s ease-in, -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.active .hamburger--spin .hamburger-inner {
  -webkit-transform: rotate(225deg);
          transform: rotate(225deg);
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
          transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.active .hamburger--spin .hamburger-inner::before {
  top: 0;
  opacity: 0;
  -webkit-transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.active .hamburger--spin .hamburger-inner::after {
  bottom: 0;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.1s ease-out, -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* Cards ------------------------------------ */
.cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--phw-spacer);
  margin-top: calc(2 * var(--phw-spacer-sm));
}
@media (min-width: 1180px) {
  .cards {
    grid-template-columns: 1fr 1fr;
  }
}
.cards.swiper-mobile {
  display: block;
  width: 100vw;
  left: calc(50% - 50vw);
  padding-left: var(--phw-gap);
}
@media (min-width: 1180px) {
  .cards.swiper-mobile {
    width: 100%;
    left: auto;
    padding: 0;
    overflow: visible !important;
  }
  .cards.swiper-mobile .swiper-wrapper {
    display: grid !important;
    -webkit-transform: none !important;
            transform: none !important;
    width: 100% !important;
    grid-template-columns: 1fr 1fr;
    gap: var(--phw-spacer);
  }
  .cards.swiper-mobile .swiper-slide {
    width: 100% !important;
    height: auto;
    margin: 0 !important;
    padding: 0 !important;
  }
  .cards.swiper-mobile .swiper-slide > .card {
    padding: 0 !important;
  }
}

.card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.card-inner {
  background-color: var(--phw-background-color);
  border: 0.1rem solid var(--phw-primary-color) !important;
  color: var(--phw-primary-color);
  border-radius: 4.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-transition: border var(--phw-glow-speed) var(--phw-trans-ease);
  transition: border var(--phw-glow-speed) var(--phw-trans-ease);
  padding: clamp(3.2rem, calc(1.6vw + 2.24rem), 4.8rem);
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

a.card-inner {
  text-decoration: none;
}
a.card-inner:before {
  width: 100%;
  height: 100%;
  border-radius: 4.4rem;
  background: linear-gradient(20deg, rgb(196, 227, 255) 0%, rgb(255, 255, 255) 60%);
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) var(--phw-trans-ease);
  transition: opacity var(--phw-glow-speed) var(--phw-trans-ease);
}
a.card-inner:hover, a.card-inner:focus {
  border-color: var(--phw-accent-color) !important;
}
a.card-inner:hover:before, a.card-inner:focus:before {
  opacity: 1;
}
a.card-inner:hover .card-icon, a.card-inner:focus .card-icon {
  background-color: var(--phw-accent-color);
}

.card-icon {
  width: 6.4rem;
  height: 6.4rem;
  border-radius: 50%;
  position: absolute;
  top: 1.6rem;
  right: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.card-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
}

.card-category {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 4.8rem;
}

.card-title {
  margin-top: 0;
}

.card-description p {
  margin: 0;
}

/* Dark Mode */
.dark a.card-inner:before,
.dark-mode a.card-inner:before {
  background: linear-gradient(20deg, rgb(13, 140, 255) 0%, rgba(13, 140, 255, 0.75) 1%, rgba(13, 140, 255, 0.5) 2%, rgba(0, 0, 0, 0) 50%);
}

/* Swiper ------------------------------------ */
.swiper {
  --swiper-theme-color: var(--phw-accent-color);
  --swiper-navigation-size: 4.8rem;
  --swiper-navigation-padding: 1.4rem;
  --swiper-navigation-spacing: 1.6rem;
  --swiper-navigation-bottom: 1.6rem;
  --swiper-navigation-distance: 2.4rem;
  --swiper-navigation-height: var(--phw-spacer-lg);
  --swiper-navigation-color: var(--swiper-theme-color);
  --swiper-navigation-top-offset: calc(100% - (0.5 * var(--swiper-navigation-size)));
  --swiper-navigation-sides-offset: var(--phw-gap);
  --swiper-pagination-bottom: 0;
  --swiper-pagination-bullet-vertical-gap: .6rem;
  --swiper-pagination-bullet-horizontal-gap: .4rem;
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 1rem;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-inactive-color: var(--phw-primary-color);
}
.swiper:has(.swiper-pagination-bullets:not(.swiper-pagination-lock)), .swiper:has(.swiper-button-prev:not(.swiper-button-lock)), .swiper:has(.swiper-button-next:not(.swiper-button-lock)) {
  padding-bottom: calc(var(--swiper-navigation-size) + var(--swiper-navigation-bottom) + var(--swiper-navigation-distance));
}
.swiper {
  height: auto;
}
.swiper .swiper-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.swiper .swiper-slide {
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.swiper .swiper-slide > .card {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.swiper .swiper-button-prev,
.swiper .swiper-button-next {
  border-radius: 50%;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  padding: var(--swiper-navigation-padding);
  margin-top: 0;
  top: calc(100% - var(--swiper-navigation-size) - var(--swiper-navigation-bottom));
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-transition: var(--phw-trans-speed) var(--phw-trans-ease);
  transition: var(--phw-trans-speed) var(--phw-trans-ease);
  -webkit-transition-property: background, color, border-color;
  transition-property: background, color, border-color;
}
.swiper .swiper-button-prev:hover,
.swiper .swiper-button-next:hover {
  background-color: var(--phw-accent-pale-color);
}
.dark .swiper .swiper-button-prev:hover,
.dark .swiper .swiper-button-next:hover {
  background-color: var(--phw-accent-color);
}
.swiper .swiper-button-prev svg,
.swiper .swiper-button-next svg {
  -webkit-transition: all var(--phw-trans-speed) var(--phw-trans-ease);
  transition: all var(--phw-trans-speed) var(--phw-trans-ease);
}
.swiper .swiper-button-prev.swiper-button-disabled,
.swiper .swiper-button-next.swiper-button-disabled {
  opacity: 1;
}
.swiper .swiper-button-prev.swiper-button-disabled svg,
.swiper .swiper-button-next.swiper-button-disabled svg {
  opacity: 0.25;
}
.swiper .swiper-button-prev {
  right: calc(var(--phw-gap) + var(--swiper-navigation-size) + var(--swiper-navigation-spacing));
  left: auto;
}
.swiper .swiper-button-next {
  right: var(--phw-gap);
  left: auto;
}

/* Swiper Mobile ------------------------------ */
.swiper-mobile .swiper-slide {
  width: min(100%, 33.8rem);
}
@media (min-width: 420px) {
  .swiper-mobile .swiper-slide {
    width: min(90%, 48rem);
  }
}
.swiper-mobile .swiper-slide > .card {
  padding-right: var(--phw-spacer);
  min-height: 36rem;
}
@media (min-width: 1180px) {
  .swiper-mobile .swiper-slide > .card {
    min-height: 48rem;
  }
}
.swiper-mobile .swiper-slide:last-child > .card {
  padding-right: var(--phw-gap);
}

/* Accordions -------------------------------------- */
.accordion {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  padding: 1.8rem var(--phw-spacer-sm);
  border-radius: 3.4rem;
}
.accordion .accordion-item {
  border-bottom: 0.1rem solid var(--phw-border-color);
}
.accordion .accordion-item:last-child {
  border-bottom-width: 0;
}
.accordion .accordion-item-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
  padding: var(--phw-spacer-xxs) 0;
  cursor: pointer;
  list-style: none;
  -webkit-transition: all var(--phw-trans-speed) var(--phw-trans-ease);
  transition: all var(--phw-trans-speed) var(--phw-trans-ease);
}
.accordion .accordion-item-label::-webkit-details-marker {
  display: none;
}
.accordion .accordion-item-label:hover .accordion-icon {
  background: var(--phw-accent-pale-color);
}
.accordion .accordion-item[open] .accordion-item-label,
.accordion .accordion-item-label:hover {
  color: var(--phw-accent-color);
}
.accordion .accordion-item-content {
  display: grid;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 0.3s var(--phw-trans-ease);
  transition: grid-template-rows 0.3s var(--phw-trans-ease);
  transition: grid-template-rows 0.3s var(--phw-trans-ease), -ms-grid-rows 0.3s var(--phw-trans-ease);
}
.accordion .accordion-item[open] > .accordion-item-content {
  grid-template-rows: 1fr;
}
.accordion .accordion-item.closing > .accordion-item-content {
  grid-template-rows: 0fr !important;
}
.accordion .accordion-item-content-inner {
  overflow: hidden;
  min-height: 0;
}
.accordion .accordion-item-content-wrapper {
  padding-bottom: 4.8rem;
}
.accordion .accordion-icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: all 0.3s var(--phw-trans-ease);
  transition: all 0.3s var(--phw-trans-ease);
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.accordion .accordion-icon svg {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transition: all 0.3s var(--phw-trans-ease);
  transition: all 0.3s var(--phw-trans-ease);
}
.accordion .accordion-item:not(.closing)[open] .accordion-icon {
  background-color: var(--phw-accent-color);
}
.accordion .accordion-item:not(.closing)[open] .accordion-icon svg {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

/* Pills -------------------------------------- */
.pills {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.2rem, calc(1.6vw + 0.24rem), 2.8rem);
}
.pills .pill {
  background: var(--phw-accent-color);
  border: 0.1rem solid var(--phw-accent-color);
  color: var(--phw-white-color);
  font-weight: 500;
  line-height: 1;
  min-width: min(20vw, 24rem);
  font-size: clamp(1.7rem, calc(1.2vw + 0.976rem), 2.4rem);
  padding-top: clamp(1.8rem, calc(3.3vw - 0.178rem), 2.4rem);
  padding-bottom: clamp(1.8rem, calc(3.3vw - 0.178rem), 2.4rem);
  padding-left: clamp(2.4rem, calc(6.6vw - 1.556rem), 3.6rem);
  padding-right: clamp(2.4rem, calc(6.6vw - 1.556rem), 3.6rem);
  cursor: auto;
}

/* Advanced Popups -------------------------------------- */
.adp-popup {
  --adp-popup-container-background: linear-gradient(0deg,rgba(196, 227, 255, 0.9) 0%, rgba(255, 255, 255, 0.9) 60%);
}
.dark-mode .adp-popup {
  --adp-popup-container-background: linear-gradient(0deg, rgb(13, 140, 255, 0.9) 0%, rgba(0, 0, 0, 0.9) 80%);
}

.adp-popup {
  max-width: calc(100vw - var(--phw-gutter));
  max-height: calc(100vh - var(--phw-gutter));
  height: auto;
}
@media (min-width: 782px) {
  .adp-popup {
    max-height: 50rem;
  }
  .lang-fr .adp-popup {
    max-height: 51rem;
  }
}
.adp-popup .adp-popup-wrap {
  overflow-y: hidden;
  border-radius: 4.4rem;
  -webkit-box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
          box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
}
.adp-popup .adp-popup-wrap .adp-popup-container {
  height: 100%;
  border-radius: 4.4rem;
  overflow: hidden;
  position: relative;
}
.adp-popup .adp-popup-wrap .adp-popup-container:before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background: var(--phw-background-color);
  opacity: 0.25;
}
.adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer {
  height: 100%;
  overflow-y: auto;
  width: var(--phw-inner-width-medium);
  max-width: 100%;
  padding: 1rem;
  display: grid;
  grid-template-columns: 1fr;
}
@media (min-width: 782px) {
  .adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer {
    grid-template-columns: 1.125fr 2fr;
    gap: var(--phw-spacer-sm);
    padding: 4.8rem 2.4rem 4.8rem 1rem;
    overflow-y: hidden;
  }
}
@media (min-width: 782px) {
  .adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer .adp-popup-media {
    margin-top: -3.8rem;
  }
}
.adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer .adp-popup-media img {
  width: 100%;
  border-radius: 3.6rem;
}
.adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer .adp-popup-content {
  padding: 0;
  place-items: center;
}
@media (min-width: 782px) {
  .adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer .adp-popup-content {
    height: auto;
    overflow-y: scroll;
  }
}
.adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer .adp-popup-content .adp-popup-inner {
  padding: 0 var(--phw-spacer-xs) var(--phw-spacer-xs);
}
@media (min-width: 782px) {
  .adp-popup .adp-popup-wrap .adp-popup-container .adp-popup-outer .adp-popup-content .adp-popup-inner {
    padding: 0 var(--phw-spacer) 2.4rem;
  }
}
.adp-popup .adp-popup-close {
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  position: absolute;
  top: 2rem;
  right: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  z-index: 2;
  cursor: pointer;
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
@media (min-width: 782px) {
  .adp-popup .adp-popup-close {
    width: 5.4rem;
    height: 5.4rem;
    top: 1.2rem;
    right: 1.2rem;
  }
}
.adp-popup .adp-popup-close:before {
  display: none;
}
.adp-popup .adp-popup-close:hover, .adp-popup .adp-popup-close:focus {
  background-color: var(--phw-accent-color);
}

.adp-popup-overlay {
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(0.4rem) saturate(70%);
  -webkit-backdrop-filter: blur(0.4rem) saturate(70%);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* -------------------------------------------------------------------------------- */
/*	SITE HEADER
/* -------------------------------------------------------------------------------- */
#site-header {
  background: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-transition: none;
  transition: none;
  margin-bottom: var(--phw-spacer);
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
}
@media (min-width: 600px) {
  #site-header {
    top: var(--phw-admin-bar-height);
    margin-top: var(--phw-spacer);
    margin-bottom: 0;
    bottom: auto;
  }
}

.header-inner-wrapper {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 9.6rem;
}

.header-inner {
  width: auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--phw-site-header-text-color);
  padding: 1.6rem;
  border-radius: 30rem;
  gap: clamp(0.8rem, calc(0.8vw + 0.32rem), 1.6rem);
}
@media (min-width: 600px) {
  .header-inner {
    width: calc(100% - var(--phw-gutter));
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.header-titles {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.site-title {
  font-size: 2.4rem;
  font-weight: var(--phw-heading-font-weight);
  line-height: 1;
}

.site-title a {
  color: inherit;
  display: block;
  outline: none;
  text-decoration: none;
}
.site-title a:hover, .site-title a:focus {
  text-decoration: underline;
}

.site-logo a,
.site-logo img {
  display: block;
}

h1.site-logo {
  margin: 0;
}

.site-logo:has(.mobile-logo) a:not(.mobile-logo) {
  display: none;
}
@media (min-width: 600px) {
  .site-logo:has(.mobile-logo) a:not(.mobile-logo) {
    display: block;
  }
}

.site-logo a.mobile-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (min-width: 600px) {
  .site-logo a.mobile-logo {
    display: none;
  }
}

.site-logo img {
  width: 100%;
  max-width: min(28rem, 50vw);
}

.site-logo .mobile-logo {
  width: 6.4rem;
  height: 6.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50%;
}

.site-logo .mobile-logo img {
  width: 5.2rem;
  max-width: none;
}

.site-logo img.logo-dark-mode {
  display: none;
}

/* Dark Mode */
.dark-mode .site-logo img.logo-regular:not(:only-child),
#site-header.dark .site-logo img.logo-regular:not(:only-child) {
  display: none;
}

.dark-mode .site-logo img.logo-dark-mode,
#site-header.dark .site-logo img.logo-dark-mode {
  display: block;
}

@media (prefers-color-scheme: dark) {
  .has-dark-mode-palette .site-logo img.logo-regular:not(:only-child) {
    display: none;
  }
  .has-dark-mode-palette .site-logo img.logo-dark-mode {
    display: block;
  }
}
/* Header Nav ---------------------------- */
.header-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
}

/* Main Menu ----------------------------- */
.main-menu {
  display: none;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: clamp(0.2rem, calc(2.4vw - 2.61rem), 1.2rem);
  font-size: clamp(1.7rem, calc(0.2vw + 1.419rem), 1.8rem);
}
@media (min-width: 1180px) {
  .main-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.main-menu li {
  font-size: inherit;
  line-height: 1.5;
  position: relative;
}

.main-menu li a {
  padding: 1.8rem 2.4rem;
  border-radius: 3rem;
  -webkit-transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  transition: all var(--phw-glow-speed) var(--phw-trans-ease);
}

.main-menu > li.menu-item-has-children > .ancestor-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
}
.main-menu > li.menu-item-has-children > .ancestor-wrapper > .toggle-wrapper {
  display: none;
}

.main-menu .ancestor-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.main-menu a {
  display: block;
  line-height: 1;
  text-decoration: none;
  color: var(--phw-primary-color);
}

.main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover {
  background: var(--phw-accent-pale-color) !important;
  color: var(--phw-primary-color) !important;
}
.main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover + .toggle-wrapper {
  background: var(--phw-accent-color) !important;
  color: var(--phw-white-color);
}

.dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover,
.dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover {
  background: var(--phw-accent-color) !important;
}

.main-menu li.current-menu-item > a:hover,
.main-menu li.current-menu-item > .ancestor-wrapper > a:hover {
  text-decoration: none;
}

.main-menu li.current-menu-item > a,
.main-menu li.current-menu-item > .ancestor-wrapper > a,
.main-menu li.current-menu-ancestor > .ancestor-wrapper > a {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  background: var(--phw-accent-color);
  color: var(--phw-white-color);
}
.main-menu li.current-menu-item > a + .toggle-wrapper,
.main-menu li.current-menu-item > .ancestor-wrapper > a + .toggle-wrapper,
.main-menu li.current-menu-ancestor > .ancestor-wrapper > a + .toggle-wrapper {
  background: var(--phw-accent-color) !important;
  color: var(--phw-white-color);
}

/* SUB MENU */
.main-menu ul {
  background: rgba(255, 255, 255, 0);
  color: var(--phw-primary-color);
  font-size: 0.9em;
  opacity: 0;
  padding: 0;
  position: absolute;
  left: 9999rem;
  top: 100%;
  -webkit-transition: opacity 0.15s linear, left 0s 0.15s, -webkit-transform 0.15s linear;
  transition: opacity 0.15s linear, left 0s 0.15s, -webkit-transform 0.15s linear;
  transition: opacity 0.15s linear, transform 0.15s linear, left 0s 0.15s;
  transition: opacity 0.15s linear, transform 0.15s linear, left 0s 0.15s, -webkit-transform 0.15s linear;
  -webkit-transform: translateY(2rem);
          transform: translateY(2rem);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 22rem;
  z-index: 10;
}

.main-menu > li > ul {
  padding-top: 3.2rem;
}

.main-menu li > .ancestor-wrapper > a {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
}
.main-menu li > .ancestor-wrapper > a:before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  -webkit-box-shadow: var(--phw-glass-nav-box-shadow);
          box-shadow: var(--phw-glass-nav-box-shadow);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
.main-menu li > .ancestor-wrapper > a {
  border-color: transparent;
  background-color: transparent;
  -webkit-box-shadow: var(--phw-glass-box-shadow-transparent);
          box-shadow: var(--phw-glass-box-shadow-transparent);
}

.main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active, .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover, .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus {
  border-color: var(--phw-glass-border-color);
  background-color: var(--phw-glass-background-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
}
.dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active, .dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active, .dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover, .dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover, .dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus, .dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus {
  background-color: var(--phw-background-color) !important;
}
.dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active:before, .dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active:before, .dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover:before, .dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover:before, .dark .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus:before, .dark-mode .main-menu li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus:before {
  opacity: 1;
}

.dark .main-menu > li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active, .dark-mode .main-menu > li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a.active, .dark .main-menu > li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover, .dark-mode .main-menu > li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:hover, .dark .main-menu > li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus, .dark-mode .main-menu > li:not(.current-menu-item):not(.current-menu-ancestor) > .ancestor-wrapper > a:focus {
  background-color: var(--phw-glass-background-color) !important;
}

.main-menu ul li > .ancestor-wrapper > a {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
}
.main-menu ul li > .ancestor-wrapper > a:before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  -webkit-box-shadow: var(--phw-glass-nav-box-shadow);
          box-shadow: var(--phw-glass-nav-box-shadow);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
.main-menu ul li > .ancestor-wrapper > a {
  background-color: var(--phw-background-color);
  border-color: var(--phw-glass-border-color);
}

.main-menu li:hover > ul,
.main-menu li.focus > ul {
  left: 0;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: opacity 0.15s linear, -webkit-transform 0.15s linear;
  transition: opacity 0.15s linear, -webkit-transform 0.15s linear;
  transition: opacity 0.15s linear, transform 0.15s linear;
  transition: opacity 0.15s linear, transform 0.15s linear, -webkit-transform 0.15s linear;
}

/* Stagger Animation */
.main-menu ul li {
  opacity: 0;
  -webkit-transform: translateY(4rem);
          transform: translateY(4rem);
  -webkit-transition: opacity 0.35s ease, -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  transition: opacity 0.35s ease, -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  transition: opacity 0.35s ease, transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  transition: opacity 0.35s ease, transform var(--phw-trans-speed-slow) var(--phw-trans-bezier), -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  -webkit-transition-delay: 0.15s;
          transition-delay: 0.15s;
}

.main-menu li:hover > ul > li,
.main-menu li.focus > ul > li {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.main-menu li:hover > ul > li:nth-child(1),
.main-menu li.focus > ul > li:nth-child(1) {
  -webkit-transition-delay: 0.06s;
          transition-delay: 0.06s;
}
.main-menu li:hover > ul > li:nth-child(2),
.main-menu li.focus > ul > li:nth-child(2) {
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
}
.main-menu li:hover > ul > li:nth-child(3),
.main-menu li.focus > ul > li:nth-child(3) {
  -webkit-transition-delay: 0.18s;
          transition-delay: 0.18s;
}
.main-menu li:hover > ul > li:nth-child(4),
.main-menu li.focus > ul > li:nth-child(4) {
  -webkit-transition-delay: 0.24s;
          transition-delay: 0.24s;
}
.main-menu li:hover > ul > li:nth-child(5),
.main-menu li.focus > ul > li:nth-child(5) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.main-menu li:hover > ul > li:nth-child(6),
.main-menu li.focus > ul > li:nth-child(6) {
  -webkit-transition-delay: 0.36s;
          transition-delay: 0.36s;
}
.main-menu li:hover > ul > li:nth-child(7),
.main-menu li.focus > ul > li:nth-child(7) {
  -webkit-transition-delay: 0.42s;
          transition-delay: 0.42s;
}
.main-menu li:hover > ul > li:nth-child(8),
.main-menu li.focus > ul > li:nth-child(8) {
  -webkit-transition-delay: 0.48s;
          transition-delay: 0.48s;
}
.main-menu li:hover > ul > li:nth-child(9),
.main-menu li.focus > ul > li:nth-child(9) {
  -webkit-transition-delay: 0.54s;
          transition-delay: 0.54s;
}
.main-menu li:hover > ul > li:nth-child(10),
.main-menu li.focus > ul > li:nth-child(10) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.main-menu li:hover > ul > li:nth-child(11),
.main-menu li.focus > ul > li:nth-child(11) {
  -webkit-transition-delay: 0.66s;
          transition-delay: 0.66s;
}
.main-menu li:hover > ul > li:nth-child(12),
.main-menu li.focus > ul > li:nth-child(12) {
  -webkit-transition-delay: 0.72s;
          transition-delay: 0.72s;
}

.main-menu ul li + li {
  margin-top: 0.6rem;
}

.main-menu ul a {
  background-color: transparent;
  border: none;
  display: block;
  line-height: inherit;
  width: 100%;
  padding: 1.6rem 2rem;
}

.main-menu ul li.menu-item-has-children > .ancestor-wrapper > a {
  padding-right: 5.6rem;
}

.main-menu .ancestor-wrapper .toggle-wrapper {
  border-radius: 50%;
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 3.6rem;
  height: 3.6rem;
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  pointer-events: none;
  -webkit-transition: var(--phw-glow-speed) ease;
  transition: var(--phw-glow-speed) ease;
  -webkit-transition-property: background, border;
  transition-property: background, border;
}
.main-menu .ancestor-wrapper .toggle-wrapper svg {
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  padding: 1.2rem;
}

/* DEEP DOWN */
.main-menu ul ul {
  top: 0;
}

.main-menu ul li:hover > ul,
.main-menu ul li.focus > ul {
  left: calc(100% + 0.6rem);
}

.main-menu ul ul a {
  padding: 1.4rem 2rem;
}

/* CONDITIONAL SUB LEVEL DIRECTION */
.main-menu ul ul.expand-left {
  left: auto;
  right: 99999rem;
}

.main-menu ul li:hover > ul.expand-left,
.main-menu ul li.focus > ul.expand-left {
  right: calc(100% + 0.6rem);
}

/* Header Toggles ---------------------------- */
.header-toggles {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: clamp(0.8rem, calc(0.8vw + 0.32rem), 1.6rem);
}
@media (min-width: 1180px) {
  .header-toggles {
    -ms-flex-negative: initial;
        flex-shrink: initial;
  }
}

.header-toggles .toggle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  outline: none;
  position: relative;
  text-decoration: none;
}

.header-toggles .icon-toggle {
  border-radius: 50%;
  width: 6.4rem;
  height: 6.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  transition: all var(--phw-glow-speed) var(--phw-trans-ease);
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.header-toggles .icon-toggle:hover, .header-toggles .icon-toggle:focus {
  background-color: var(--phw-accent-pale-color);
}

/* Dark Mode */
#site-header.dark .header-toggles .icon-toggle:hover, #site-header.dark .header-toggles .icon-toggle:focus,
.dark-mode .header-toggles .icon-toggle:hover,
.dark-mode .header-toggles .icon-toggle:focus {
  background-color: var(--phw-accent-color);
}

@media (min-width: 1180px) {
  .header-toggles .nav-toggle {
    display: none;
  }
}

.header-toggles .search-toggle {
  display: none;
}
@media (min-width: 1180px) {
  .header-toggles .search-toggle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.header-toggles .search-toggle {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.header-toggles .nav-toggle.icon-menu-search svg {
  -webkit-transform: translateX(0.2rem);
          transform: translateX(0.2rem);
}

.header-toggles .toggle:focus {
  -webkit-box-shadow: inset 0 0 0 0.2rem var(--phw-border-color);
          box-shadow: inset 0 0 0 0.2rem var(--phw-border-color);
}

/* Language Toggle ---------------------------- */
.lang-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: all var(--phw-trans-speed) var(--phw-trans-ease);
  transition: all var(--phw-trans-speed) var(--phw-trans-ease);
  width: 3.4rem;
  height: 6.4rem;
  border-radius: 6.4rem;
  padding: 0.4rem 0;
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.lang-toggle li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
  text-transform: uppercase;
  color: var(--phw-dark-grey-color);
  font-size: 1rem;
  line-height: 2.4rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  width: 2.4rem;
  height: 2.4rem;
  border: 0.1rem solid transparent;
  border-radius: 50%;
  -webkit-transition: color var(--phw-trans-speed) var(--phw-trans-ease);
  transition: color var(--phw-trans-speed) var(--phw-trans-ease);
  position: relative;
  z-index: 2;
}
.lang-toggle li a:hover {
  color: var(--phw-accent-color);
}
.lang-toggle li a:focus {
  color: var(--phw-primary-color);
}
.lang-toggle li.current-lang a {
  border-color: var(--phw-primary-color);
  color: var(--phw-primary-color);
  pointer-events: none;
}

/* -------------------------------------------------------------------------------- */
/*	NAVIGATION
/* -------------------------------------------------------------------------------- */
.menu-modal {
  background: transparent;
  display: none;
  overflow: hidden;
  position: fixed;
  top: var(--phw-admin-bar-height);
  bottom: 0;
  left: -99999rem;
  right: 99999rem;
  -webkit-transition: left 0s 0.3s, right 0s 0.3s;
  transition: left 0s 0.3s, right 0s 0.3s;
  z-index: 9999;
}

.menu-modal.show-modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.menu-modal.active {
  left: 0;
  right: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
}

.menu-modal a {
  color: inherit;
  text-decoration: none;
}

.menu-modal-cover-untoggle {
  background: transparent;
  cursor: pointer;
  content: "";
  display: block;
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}

.menu-modal.active .menu-modal-cover-untoggle {
  opacity: 1;
}

.menu-modal-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  overflow: visible;
  width: calc(100% - var(--phw-gutter));
  margin-bottom: calc(var(--phw-header-height) + var(--phw-spacer-xs) + 1.6rem);
  background-color: transparent;
  color: var(--phw-primary-color);
  opacity: 0;
  -webkit-transform: translateY(10rem);
          transform: translateY(10rem);
  -webkit-transition: opacity 0.2s ease-in, -webkit-transform 0.2s ease-in;
  transition: opacity 0.2s ease-in, -webkit-transform 0.2s ease-in;
  transition: transform 0.2s ease-in, opacity 0.2s ease-in;
  transition: transform 0.2s ease-in, opacity 0.2s ease-in, -webkit-transform 0.2s ease-in;
}
@media (min-width: 600px) {
  .menu-modal-inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: calc(var(--phw-header-height) + var(--phw-spacer-xs) + 2.4rem);
    margin-bottom: 0;
    -webkit-transform: translateY(-10rem);
            transform: translateY(-10rem);
  }
}

.menu-modal.active .menu-modal-inner {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

.modal-menu-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0;
  position: relative;
  width: 100%;
  max-height: calc(var(--phw-screen-height) - (var(--phw-header-height) + 1.6rem + var(--phw-spacer-xs) + var(--phw-spacer)));
}
@media (min-width: 600px) {
  .modal-menu-wrapper {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    max-height: calc(var(--phw-screen-height) - (var(--phw-header-height) + 2.4rem + var(--phw-spacer-xs) + var(--phw-spacer)));
  }
}
.modal-menu-wrapper:before {
  background: var(--phw-light-background-color);
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 0%;
  border-radius: 3.6rem;
  -webkit-transition: height 0.5s ease;
  transition: height 0.5s ease;
  border-radius: 3.6rem;
  opacity: 0.8;
}

.menu-modal.active .modal-menu-wrapper:before {
  height: 100%;
  top: auto;
}
@media (min-width: 600px) {
  .menu-modal.active .modal-menu-wrapper:before {
    top: 0;
  }
}

/* Mobile Menu --------------------------------- */
.mobile-menu {
  font-size: clamp(1.4rem, calc(0.3vw + 1.22rem), 1.7rem);
  line-height: 1.5;
  position: relative;
  overflow: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media (min-width: 600px) {
  .mobile-menu {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.mobile-menu li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: 0;
  position: relative;
  line-height: 1.3;
  padding: 0;
}

.mobile-menu > li {
  padding: 0 var(--phw-spacer-sm);
}
.mobile-menu > li:first-child {
  padding-top: var(--phw-spacer-sm);
}
.mobile-menu > li:last-child {
  padding-bottom: var(--phw-spacer-sm);
}

.mobile-menu li + li,
.mobile-menu ul > li {
  margin-top: 0.8rem;
}

.mobile-menu .ancestor-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  position: relative;
}

.mobile-menu a {
  display: block;
  outline: none;
  padding: 1.6rem;
  width: 100%;
  border-radius: 999rem;
  -webkit-transition: all var(--phw-trans-speed) ease;
  transition: all var(--phw-trans-speed) ease;
}

.mobile-menu a:not(.sub-menu-toggle) {
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
}
.mobile-menu a:not(.sub-menu-toggle):before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  -webkit-box-shadow: var(--phw-glass-nav-box-shadow);
          box-shadow: var(--phw-glass-nav-box-shadow);
  border-radius: var(--phw-button-border-radius);
  opacity: 0;
  -webkit-transition: opacity var(--phw-glow-speed) ease;
  transition: opacity var(--phw-glow-speed) ease;
}
.mobile-menu a:not(.sub-menu-toggle) {
  background: var(--phw-background-color);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.mobile-menu a:not(.sub-menu-toggle):hover,
.mobile-menu a:not(.sub-menu-toggle):focus {
  border-color: var(--phw-glass-border-color);
  background-color: var(--phw-accent-pale-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
}

.mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a:not(.sub-menu-toggle) {
  border-color: var(--phw-glass-border-color);
  background-color: var(--phw-accent-color);
  color: var(--phw-white-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
}

.mobile-menu a:not(.sub-menu-toggle):hover + .sub-menu-toggle-wrapper a.sub-menu-toggle,
.mobile-menu a:not(.sub-menu-toggle):focus + .sub-menu-toggle-wrapper a.sub-menu-toggle,
.mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a:not(.sub-menu-toggle) + .sub-menu-toggle-wrapper a.sub-menu-toggle {
  color: var(--phw-white-color);
}
.mobile-menu a:not(.sub-menu-toggle):hover + .sub-menu-toggle-wrapper a.sub-menu-toggle:before,
.mobile-menu a:not(.sub-menu-toggle):focus + .sub-menu-toggle-wrapper a.sub-menu-toggle:before,
.mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a:not(.sub-menu-toggle) + .sub-menu-toggle-wrapper a.sub-menu-toggle:before {
  background: var(--phw-accent-color);
}
.dark-mode .mobile-menu a:not(.sub-menu-toggle):hover,
.dark-mode .mobile-menu a:not(.sub-menu-toggle):focus,
.dark-mode .mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a:not(.sub-menu-toggle) {
  background-color: var(--phw-background-color);
}
.dark-mode .mobile-menu a:not(.sub-menu-toggle):hover:before,
.dark-mode .mobile-menu a:not(.sub-menu-toggle):focus:before,
.dark-mode .mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a:not(.sub-menu-toggle):before {
  opacity: 1;
}

.mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a + .sub-menu-toggle-wrapper a.sub-menu-toggle {
  color: var(--phw-white-color);
}
.mobile-menu li.current-menu-ancestor > .ancestor-wrapper > a + .sub-menu-toggle-wrapper a.sub-menu-toggle:before {
  background: var(--phw-accent-color);
}

.mobile-menu li.current-menu-item > .ancestor-wrapper > a {
  background: var(--phw-accent-color);
  color: var(--phw-white-color);
}
.mobile-menu li.current-menu-item > .ancestor-wrapper > a + .sub-menu-toggle-wrapper a.sub-menu-toggle {
  color: var(--phw-white-color);
}
.mobile-menu li.current-menu-item > .ancestor-wrapper > a + .sub-menu-toggle-wrapper a.sub-menu-toggle:before {
  background: var(--phw-accent-color);
}
.dark-mode .mobile-menu li.current-menu-item > .ancestor-wrapper > a {
  background-color: var(--phw-accent-color);
}

.mobile-menu li.current-menu-item > .ancestor-wrapper > a:hover {
  text-decoration: none;
}

.mobile-menu .sub-menu-toggle-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: absolute;
  right: 0.2rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.mobile-menu a.sub-menu-toggle {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 0 1.6rem;
  position: relative;
  background: none !important;
}
.mobile-menu a.sub-menu-toggle:hover, .mobile-menu a.sub-menu-toggle:focus {
  color: var(--phw-white-color);
}
.mobile-menu a.sub-menu-toggle:before {
  background: var(--phw-light-background-color);
  border-radius: 50%;
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  opacity: 1;
  position: absolute;
  left: calc(50% - 2rem);
  top: calc(50% - 2rem);
  -webkit-transition: background 0.15s linear;
  transition: background 0.15s linear;
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.mobile-menu a.sub-menu-toggle:focus:before,
.mobile-menu a.sub-menu-toggle:hover:before {
  background: var(--phw-accent-color);
}
.mobile-menu a.sub-menu-toggle svg {
  -webkit-transition: -webkit-transform 0.15s linear;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
  -webkit-transform: translateY(0.1rem);
          transform: translateY(0.1rem);
}
.mobile-menu a.sub-menu-toggle.active svg {
  -webkit-transform: rotate(180deg) translateY(0.2rem);
          transform: rotate(180deg) translateY(0.2rem);
}

.mobile-menu ul {
  margin: 0;
  width: 100%;
}

.mobile-menu .sub-menu {
  display: none;
  padding-left: var(--phw-spacer-sm);
}

/* Stagger Animation */
.mobile-menu li,
.mobile-menu .sub-menu[aria-expanded=false] li {
  opacity: 0;
  -webkit-transform: translateY(4rem);
          transform: translateY(4rem);
  -webkit-transition: opacity 0.35s ease, -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  transition: opacity 0.35s ease, -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  transition: opacity 0.35s ease, transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  transition: opacity 0.35s ease, transform var(--phw-trans-speed-slow) var(--phw-trans-bezier), -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-bezier);
  -webkit-transition-delay: 0.15s;
          transition-delay: 0.15s;
}

.menu-modal.active .mobile-menu > li,
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.menu-modal.active .mobile-menu > li:nth-child(1),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(1) {
  -webkit-transition-delay: 0.21s;
          transition-delay: 0.21s;
}
.menu-modal.active .mobile-menu > li:nth-child(2),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(2) {
  -webkit-transition-delay: 0.27s;
          transition-delay: 0.27s;
}
.menu-modal.active .mobile-menu > li:nth-child(3),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(3) {
  -webkit-transition-delay: 0.33s;
          transition-delay: 0.33s;
}
.menu-modal.active .mobile-menu > li:nth-child(4),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(4) {
  -webkit-transition-delay: 0.39s;
          transition-delay: 0.39s;
}
.menu-modal.active .mobile-menu > li:nth-child(5),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(5) {
  -webkit-transition-delay: 0.45s;
          transition-delay: 0.45s;
}
.menu-modal.active .mobile-menu > li:nth-child(6),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(6) {
  -webkit-transition-delay: 0.51s;
          transition-delay: 0.51s;
}
.menu-modal.active .mobile-menu > li:nth-child(7),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(7) {
  -webkit-transition-delay: 0.57s;
          transition-delay: 0.57s;
}
.menu-modal.active .mobile-menu > li:nth-child(8),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(8) {
  -webkit-transition-delay: 0.63s;
          transition-delay: 0.63s;
}
.menu-modal.active .mobile-menu > li:nth-child(9),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(9) {
  -webkit-transition-delay: 0.69s;
          transition-delay: 0.69s;
}
.menu-modal.active .mobile-menu > li:nth-child(10),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(10) {
  -webkit-transition-delay: 0.75s;
          transition-delay: 0.75s;
}
.menu-modal.active .mobile-menu > li:nth-child(11),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(11) {
  -webkit-transition-delay: 0.81s;
          transition-delay: 0.81s;
}
.menu-modal.active .mobile-menu > li:nth-child(12),
.menu-modal.active .mobile-menu .sub-menu[aria-expanded=true] > li:nth-child(12) {
  -webkit-transition-delay: 0.87s;
          transition-delay: 0.87s;
}

/* Menu Search ------------------------------- */
.menu-modal-search {
  color: var(--phw-primary-color);
}

.menu-modal-search .search-form {
  margin: 0.8rem 0 0;
  max-width: 100%;
}
.menu-modal-search .search-form:before {
  background-color: var(--phw-background-color);
  border-radius: 999rem;
  content: "";
  display: block;
  opacity: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
}

.menu-modal-search .search-field {
  font-size: clamp(1.4rem, calc(0.3vw + 1.22rem), 1.7rem);
  background-color: transparent;
  color: var(--phw-primary-color);
  padding: 1.6rem 6.6rem 1.6rem 1.6rem;
  line-height: 1;
  border-width: 0;
}

:root .menu-modal-search .search-field {
  border-color: transparent;
}

.menu-modal-search .search-submit {
  color: inherit;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  right: 0.6rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.menu-modal-search .search-field::-webkit-input-placeholder {
  color: var(--phw-primary-color);
}

.menu-modal-search .search-field::-moz-placeholder {
  color: var(--phw-primary-color);
}

.menu-modal-search .search-field:-ms-input-placeholder {
  color: var(--phw-primary-color);
}

.menu-modal-search .search-field::-ms-input-placeholder {
  color: var(--phw-primary-color);
}

.menu-modal-search .search-field::placeholder {
  color: var(--phw-primary-color);
}

/* ------------------------------------------------------------------------------ /*
/*  SEARCH
/* ------------------------------------------------------------------------------ */
.search-modal {
  display: none;
  opacity: 0;
  padding-left: 0;
  position: fixed;
  bottom: 0;
  left: -9999rem;
  right: 0;
  top: 0;
  -webkit-transition: opacity 0.2s linear, left 0s 0.2s linear;
  transition: opacity 0.2s linear, left 0s 0.2s linear;
  z-index: 9999;
}
.search-modal:before {
  background: var(--phw-primary-color);
  content: "";
  opacity: 0.2;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
}

.search-modal-inner {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: -webkit-transform 0.15s linear, -webkit-box-shadow 0.15s linear;
  transition: -webkit-transform 0.15s linear, -webkit-box-shadow 0.15s linear;
  transition: transform 0.15s linear, box-shadow 0.15s linear;
  transition: transform 0.15s linear, box-shadow 0.15s linear, -webkit-transform 0.15s linear, -webkit-box-shadow 0.15s linear;
  margin-top: var(--phw-admin-bar-height);
  background-color: var(--phw-search-modal-background-color);
  color: var(--phw-search-modal-text-color);
}

.search-modal-inner .section-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.search-modal.active {
  left: 0;
  opacity: 1;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.search-modal.active .search-modal-inner {
  -webkit-box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.08);
          box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.08);
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: -webkit-transform 0.25s ease-in-out, -webkit-box-shadow 0.1s 0.25s linear;
  transition: -webkit-transform 0.25s ease-in-out, -webkit-box-shadow 0.1s 0.25s linear;
  transition: transform 0.25s ease-in-out, box-shadow 0.1s 0.25s linear;
  transition: transform 0.25s ease-in-out, box-shadow 0.1s 0.25s linear, -webkit-transform 0.25s ease-in-out, -webkit-box-shadow 0.1s 0.25s linear;
}

.search-untoggle,
.search-untoggle-inner {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.search-untoggle {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: -2.5rem;
  outline: none;
  padding: 0 1.2rem;
}

.search-modal.active .search-untoggle {
  -webkit-animation: popIn both 0.3s 0.2s;
          animation: popIn both 0.3s 0.2s;
}

.search-untoggle-inner {
  border-radius: 50%;
  height: 4.4rem;
  -webkit-transition: color 0.1s linear, background-color 0.1s linear;
  transition: color 0.1s linear, background-color 0.1s linear;
  width: 4.4rem;
}

.search-untoggle svg {
  -webkit-transition: -webkit-transform 0.15s ease-in-out;
  transition: -webkit-transform 0.15s ease-in-out;
  transition: transform 0.15s ease-in-out;
  transition: transform 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
}

.search-untoggle:hover svg {
  -webkit-transform: scale(1.15);
          transform: scale(1.15);
}

.search-untoggle:focus .search-untoggle-inner {
  background-color: var(--phw-primary-color);
  color: var(--phw-background-color);
}

/* Modal Search Form ------------------------- */
.modal-search-form {
  margin: 0;
  position: relative;
  width: 100%;
}

.modal-search-form .search-label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
  -webkit-transition: color 0.15s linear;
  transition: color 0.15s linear;
}

.modal-search-form .search-label svg {
  -webkit-transition: -webkit-transform 0.15s linear;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
}

.modal-search-form .search-field:focus + label {
  color: var(--phw-accent-color);
}

.modal-search-form .search-field:focus + label svg {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.modal-search-form .search-field {
  background: none;
  border: none;
  border-radius: 0.8rem;
  color: inherit;
  font-size: 2.4rem;
  height: 12rem;
  outline: none;
  padding: 0 2.4rem 0 4.8rem;
  width: calc(100% - 9rem);
}

.modal-search-form .search-field::-webkit-input-placeholder {
  color: inherit;
}

.modal-search-form .search-field:-ms-input-placeholder {
  color: inherit;
}

.modal-search-form .search-field::-moz-placeholder {
  color: inherit;
  line-height: 12rem;
}

.modal-search-form .search-field::-ms-input-placeholder {
  color: inherit;
}

.modal-search-form .search-field::placeholder {
  color: inherit;
}

.modal-search-form .search-submit {
  position: absolute;
  right: -9999rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.modal-search-form .search-submit:focus {
  outline: none;
  right: 0;
}

/* ------------------------------------------------------------------------------ /*
/*  ARCHIVE
/* ------------------------------------------------------------------------------ */
.archive-page #site-content {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.archive-page #site-footer {
  margin-top: 0;
}

/* Archive Header ---------------------------- */
.archive-header {
  margin-bottom: 5rem;
}
@media (min-width: 782px) {
  .archive-header {
    margin-bottom: 4.8rem;
  }
}
@media (min-width: 1300px) {
  .archive-header {
    margin-bottom: 6.4rem;
  }
}

.archive-prefix {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.8rem;
}
@media (min-width: 782px) {
  .archive-prefix {
    font-size: 1.8rem;
  }
}

.archive-title {
  font-size: 2.8rem;
  font-weight: var(--phw-heading-font-weight);
  line-height: 1.3;
  max-width: var(--phw-inner-width-small);
  margin: 0;
}
@media (min-width: 782px) {
  .archive-title {
    font-size: 3.2rem;
  }
}

.archive-title p {
  line-height: inherit;
  margin: 0 0 0.75em;
  max-width: 100%;
}

.archive-description {
  margin-top: 1.6rem;
}

/* Home Filter ------------------------------- */
.filter-wrapper {
  font-size: 1.5rem;
  margin: 2.4rem 0 0;
}
@media (min-width: 782px) {
  .filter-wrapper {
    font-size: 1.8rem;
    margin: 3.2rem 0 0;
  }
}
@media (min-width: 1300px) {
  .filter-wrapper {
    margin: 4rem 0 0;
  }
}

.filter-wrapper:first-child {
  margin-top: 0;
}

.filter-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -0.8rem 0 0 -1.6rem;
}
@media (min-width: 782px) {
  .filter-list {
    margin: -1.2rem 0 0 -2.4rem;
  }
}

.filter-list li {
  margin: 0.8rem 0 0 1.6rem;
}
@media (min-width: 782px) {
  .filter-list li {
    margin: 1.2rem 0 0 2.4rem;
  }
}

.filter-list a {
  color: inherit;
  outline: none;
  text-decoration: none;
}

.filter-list a.active {
  color: var(--phw-accent-color);
}

.filter-list a:hover .term-name,
.filter-list a:focus .term-name,
.filter-list a.pre-active .term-name,
.filter-list a.active .term-name {
  text-decoration: underline;
}

.filter-list a.active:focus {
  text-decoration: none;
}

.filter-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.2em;
}

.term-count {
  font-size: 0.7em;
  letter-spacing: 0;
  vertical-align: super;
}

/* Post Grid --------------------------------- */
.posts {
  overflow: hidden;
  padding-bottom: 4.8rem;
  position: relative;
}
@media (min-width: 782px) {
  .posts {
    padding-bottom: 6.4rem;
  }
}
@media (min-width: 1300px) {
  .posts {
    padding-bottom: 8rem;
  }
}

.posts:before {
  background-color: var(--phw-light-background-color);
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 2.4rem;
}
@media (min-width: 782px) {
  .posts:before {
    top: 4.8rem;
  }
}

.posts .section-inner {
  position: relative;
}

.no-js .grid-sizer {
  display: none;
}

.posts .article-wrapper {
  margin-bottom: 1.6rem;
}
@media (min-width: 782px) {
  .posts .article-wrapper {
    margin-bottom: 0;
  }
}

.posts .article-wrapper:last-child {
  margin-bottom: 0;
}

/* Preview: Post ----------------------------- */
.preview a {
  color: inherit;
  text-decoration: none;
}

.preview-media {
  overflow: hidden;
  position: relative;
}

.preview-media-link {
  color: inherit;
  display: block;
  text-decoration: none;
}

.preview-media img {
  width: 100%;
}

.preview .preview-media .sticky-note,
.preview.sticky .preview-media .sticky-note {
  /* On image = always white on black */
  background-color: #1e2d32;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: normal;
  padding: 0.6rem 0.7rem;
  position: absolute;
  left: min(1.6rem, 10%);
  top: min(1.6rem, 10%);
  white-space: nowrap;
}

.preview-media + .preview-header {
  margin-top: 1.2rem;
}

.preview .preview-title {
  margin: 0;
}

.preview-title a:hover,
.preview-title a:focus {
  outline: none;
  text-decoration: underline;
}

.preview .post-meta-wrapper {
  font-size: 1.4rem;
  line-height: 1.25;
  margin-top: 0.8rem;
}
@media (min-width: 782px) {
  .preview .post-meta-wrapper {
    font-size: 1.6rem;
    margin-top: 1rem;
  }
}

.post-meta {
  list-style: none;
  margin: 0;
}

.preview .post-meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -0.25em 0 0 -1em;
}

.preview .post-meta li {
  margin: 0.25em 0 0 1em;
}

.post-meta a:hover,
.post-meta a:focus {
  outline: none;
  text-decoration: underline;
}

/* COLUMN SPECIFIC PREVIEW STYLES */
@media (max-width: 781px) {
  .posts-grid.cols-6 .preview-title {
    font-size: 1.6rem;
  }
  .posts-grid.cols-4 .preview-title {
    font-size: 1.4rem;
  }
  .posts-grid.cols-3 .preview-title {
    font-size: 1.2rem;
  }
  .posts-grid.cols-6 .post-meta-wrapper,
  .posts-grid.cols-4 .post-meta-wrapper {
    font-size: 1.2rem;
  }
  .posts-grid.cols-3 .post-meta-wrapper {
    font-size: 1rem;
  }
  .posts-grid.cols-6 .article-wrapper,
  .posts-grid.cols-4 .article-wrapper,
  .posts-grid.cols-3 .article-wrapper {
    margin-bottom: 0;
  }
}
@media (min-width: 782px) and (max-width: 1179px) {
  .posts-grid.cols-t-3 {
    margin: -0.8rem 0 -0.8rem -0.8rem;
    width: calc(100% + 1.6rem);
  }
  .posts-grid.cols-t-3 .col {
    margin-bottom: 0.8rem;
    padding: 0.8rem;
  }
  .posts-grid.cols-t-4 .preview-title,
  .posts-grid.cols-t-3 .preview-title {
    font-size: inherit;
  }
  .posts-grid.cols-t-4 .post-meta-wrapper {
    font-size: 1.4rem;
  }
  .posts-grid.cols-t-3 .post-meta-wrapper {
    font-size: 1.2rem;
  }
}
@media (min-width: 1179px) and (max-width: 1299px) {
  .posts-grid.cols-l-3 {
    margin: -0.8rem 0 -0.8rem -0.8rem;
    width: calc(100% + 1.6rem);
  }
  .posts-grid.cols-l-3 .col {
    margin-bottom: 0.8rem;
    padding: 0.8rem;
  }
  .posts-grid.cols-l-3 .preview-title {
    font-size: inherit;
  }
  .posts-grid.cols-l-3 .post-meta-wrapper {
    font-size: 1.4rem;
  }
}
@media (min-width: 1299px) and (max-width: 1599px) {
  .posts-grid.cols-d-3 {
    margin: -1.2rem 0 -1.2rem -1.2rem;
    width: calc(100% + 2.4rem);
  }
  .posts-grid.cols-d-3 .col {
    margin-bottom: 0.8rem;
    padding: 1.2rem;
  }
  .posts-grid.cols-d-3 .preview-title {
    font-size: 2.1rem;
  }
  .posts-grid.cols-d-3 .post-meta-wrapper {
    font-size: 1.4rem;
  }
}
/* ------------------------------------------------------------------------------ /*
/*  SINGLE POSTS
/* ------------------------------------------------------------------------------ */
/* Entry Header ------------------------------ */
h1.entry-title,
.entry-title.faux-heading {
  margin: 0;
}

.intro-text {
  font-size: var(--phw-lg-font-size);
  line-height: var(--phw-lg-line-height);
  color: var(--phw-accent-color);
  margin: var(--phw-spacer) 0 0;
}
.intro-text p {
  font-size: inherit;
  line-height: inherit;
}

.intro-cta {
  margin-top: var(--phw-spacer-sm);
}

/* Featured Media ---------------------------- */
.featured-media,
.post-inner {
  margin-top: var(--phw-spacer-xxxl);
}

.featured-media .media-wrapper {
  margin-left: calc(50% - 50vw);
  width: 100vw;
}
@media (min-width: 1180px) {
  .featured-media .media-wrapper {
    margin-left: 0;
    width: 100%;
  }
}

.featured-media img {
  width: 100%;
}

/* Entry Content ------------------------------ */
.entry-content {
  line-height: var(--phw-body-line-height);
}

.entry-content a {
  text-underline-offset: 0.18em;
}

.has-accent-background-color a {
  color: inherit;
}

/* Entry Footer ------------------------------ */
.entry-footer {
  font-size: 1.5rem;
  margin-top: 3.2rem;
  color: var(--phw-secondary-color);
}
@media (min-width: 782px) {
  .entry-footer {
    font-size: 1.6rem;
    margin-top: 4rem;
  }
}
@media (min-width: 1180px) {
  .entry-footer {
    margin-top: 4.8rem;
  }
}

.entry-footer a {
  color: inherit;
}

.entry-footer a:hover,
.entry-footer a:focus {
  text-decoration: none;
}

.entry-footer .post-meta li {
  margin: 0;
}

.entry-footer .date a {
  text-decoration: none;
}

.entry-footer .date a:hover,
.entry-footer .date a:focus {
  text-decoration: underline;
}

/* POST NAV LINKS */
.post-nav-links {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  margin-top: 4.8rem;
}

.post-nav-links-list {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.post-page-numbers {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 3.2rem;
  min-width: 3.2rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 0.4rem;
  text-align: center;
}

.post-page-numbers + .post-page-numbers {
  margin-left: 0.8rem;
}

.post-nav-links a {
  border: 0.2rem solid var(--phw-accent-color);
  text-decoration: none;
}

.post-nav-links a:hover,
.post-nav-links .current {
  background-color: var(--phw-accent-color);
  color: var(--phw-background-color);
}

/* Single Navigation ------------------------- */
.single-nav {
  margin-top: 4.8rem;
}
@media (min-width: 782px) {
  .single-nav {
    margin-top: 12.8rem;
  }
}

.single-nav-grid {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.single-nav.only-next .single-nav-grid {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.single-nav a {
  color: inherit;
  display: block;
  outline: none;
  text-decoration: none;
}

.single-nav .col + .col a {
  margin-top: 4.8rem;
}
@media (min-width: 782px) {
  .single-nav .col + .col a {
    -webkit-animation-delay: 0.2s;
            animation-delay: 0.2s;
    margin-top: 0;
  }
}

.single-nav-item-media {
  position: relative;
}

.single-nav-item-media img {
  width: 100%;
}

.single-nav-item .arrow {
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}

.single-nav .prev-post .arrow {
  position: absolute;
  bottom: 1.6rem;
  right: 0;
  -webkit-transform: translateX(3.2rem);
          transform: translateX(3.2rem);
}
@media (min-width: 782px) {
  .single-nav .prev-post .arrow {
    -webkit-transform: translateX(1.6rem);
            transform: translateX(1.6rem);
  }
}
@media (min-width: 1180px) {
  .single-nav .prev-post .arrow {
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}

@media (min-width: 782px) {
  .has-anim .single-nav .prev-post:hover .arrow,
  .has-anim .single-nav .prev-post:focus .arrow {
    -webkit-transform: translateX(0.8rem);
            transform: translateX(0.8rem);
  }
}
@media (min-width: 1180px) {
  .has-anim .single-nav .prev-post:hover .arrow,
  .has-anim .single-nav .prev-post:focus .arrow {
    -webkit-transform: translateX(calc(50% - 0.8rem));
            transform: translateX(calc(50% - 0.8rem));
  }
}

.single-nav .next-post .arrow {
  position: absolute;
  top: 1.6rem;
  left: 0;
  -webkit-transform: translateX(-3.2rem);
          transform: translateX(-3.2rem);
}
@media (min-width: 782px) {
  .single-nav .next-post .arrow {
    -webkit-transform: translateX(-1.6rem);
            transform: translateX(-1.6rem);
  }
}
@media (min-width: 1180px) {
  .single-nav .next-post .arrow {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media (min-width: 782px) {
  .has-anim .single-nav .next-post:hover .arrow,
  .has-anim .single-nav .next-post:focus .arrow {
    -webkit-transform: translateX(-0.8rem);
            transform: translateX(-0.8rem);
  }
}
@media (min-width: 1180px) {
  .has-anim .single-nav .next-post:hover .arrow,
  .has-anim .single-nav .next-post:focus .arrow {
    -webkit-transform: translateX(calc(-50% + 0.8rem));
            transform: translateX(calc(-50% + 0.8rem));
  }
}

.single-nav-item:hover .single-nav-item-title,
.single-nav-item:focus .single-nav-item-title {
  text-decoration: underline;
}

.single-nav-item-header {
  margin-top: 1.6rem;
}

/* Disclaimer ------------------------- */
.disclaimer {
  font-size: var(--phw-xs-font-size);
  line-height: var(--phw-xs-line-height);
  margin-top: var(--phw-spacer-xxxl);
}
.disclaimer p {
  font-size: inherit;
  line-height: inherit;
  margin-bottom: 0.75em;
}
.disclaimer a {
  color: inherit;
  text-decoration: underline;
}
.disclaimer a:hover, .disclaimer a:focus {
  color: var(--phw-accent-color);
}

/* ------------------------------------------------------------------------------ /*
/*  BLOCKS
/* ------------------------------------------------------------------------------ */
/* Block: Base Margins ----------------------- */
.wp-block-archives,
.wp-block-button,
.wp-block-buttons,
.wp-block-calendar,
.wp-block-categories,
.wp-block-code,
.wp-block-columns,
.wp-block-cover,
.wp-block-cover-image,
.wp-block-embed,
.wp-block-file,
.wp-block-gallery,
.wp-block-group,
.wp-block-latest-comments,
.wp-block-latest-posts,
.wp-block-media-text,
.wp-block-preformatted,
.wp-block-pullquote,
.wp-block-quote,
.wp-block-quote.is-large,
.wp-block-quote.is-style-large,
.wp-block-search,
.wp-block-social,
.wp-block-social-links,
.wp-block-tag-cloud,
.wp-block-table,
.wp-block-verse,
.wp-block-video {
  margin-bottom: 4rem;
  margin-top: 4rem;
}
@media (min-width: 782px) {
  .wp-block-archives,
  .wp-block-button,
  .wp-block-buttons,
  .wp-block-calendar,
  .wp-block-categories,
  .wp-block-code,
  .wp-block-columns,
  .wp-block-cover,
  .wp-block-cover-image,
  .wp-block-embed,
  .wp-block-file,
  .wp-block-gallery,
  .wp-block-group,
  .wp-block-latest-comments,
  .wp-block-latest-posts,
  .wp-block-media-text,
  .wp-block-preformatted,
  .wp-block-pullquote,
  .wp-block-quote,
  .wp-block-quote.is-large,
  .wp-block-quote.is-style-large,
  .wp-block-search,
  .wp-block-social,
  .wp-block-social-links,
  .wp-block-tag-cloud,
  .wp-block-table,
  .wp-block-verse,
  .wp-block-video {
    margin-bottom: 4.8rem;
    margin-top: 4.8rem;
  }
}

/* Block: Shared Nesting Alignment Resets ---- */
.wp-block-group,
.wp-block-cover {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--phw-inner-width-thin);
}

/* Shared Block Styles ----------------------- */
.is-style-no-top-margin,
.is-style-no-vertical-margin {
  margin-top: 0 !important;
}

.is-style-no-bottom-margin,
.is-style-no-vertical-margin {
  margin-bottom: 0 !important;
}

.is-style-no-top-margin.wp-block-image > *:first-child,
.is-style-no-vertical-margin.wp-block-image > *:first-child {
  margin-top: 0 !important;
}

.is-style-no-bottom-margin.wp-block-image > *:last-child,
.is-style-no-vertical-margin.wp-block-image > *:last-child {
  margin-bottom: 0 !important;
}

/* Block: _Shared Lists ---------------------- */
.wp-block-archives,
.wp-block-categories,
.wp-block-latest-posts,
.wp-block-latest-comments {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}

.wp-block-archives ul,
.wp-block-archives ol,
.wp-block-categories ul,
.wp-block-categories ol,
.wp-block-latest-posts ul,
.wp-block-latest-posts ol,
.wp-block-latest-comments ul,
.wp-block-latest-comments ol {
  list-style: inherit;
}

.wp-block-archives li,
.wp-block-categories li,
.wp-block-latest-posts > li,
.wp-block-latest-comments > li {
  line-height: 1.2;
  margin: 2.4rem 0 0 0;
}

.wp-block-archives > li:first-child,
.wp-block-categories > li:first-child,
.wp-block-latest-posts > li:first-child,
.wp-block-latest-comments > li:first-child {
  margin-top: 0;
}

.wp-block-archives li li,
.wp-block-categories li li {
  margin-left: 2.4rem;
}

.wp-block-archives li > a,
.wp-block-categories li > a,
.wp-block-latest-posts > li > a,
.wp-block-latest-comments > li > a {
  font-size: 2.1rem;
  font-weight: var(--phw-heading-font-weight);
  text-decoration: none;
}

.wp-block-archives li > a:hover,
.wp-block-categories li > a:hover,
.wp-block-latest-posts > li > a:hover,
.wp-block-latest-comments > li > a:hover,
.wp-block-archives li > a:focus,
.wp-block-categories li > a:focus,
.wp-block-latest-posts > li > a:focus,
.wp-block-latest-comments > li > a:focus {
  text-decoration: underline;
}

.wp-block-archives.aligncenter,
.wp-block-categories.aligncenter {
  text-align: center;
}

/* Block: Archives --------------------------- */
/* Block: Audio ------------------------------ */
.wp-block-audio.alignleft,
.wp-block-audio.alignright {
  min-width: 20rem;
  width: 100%;
}

.wp-block-audio audio {
  width: 100%;
}

/* Block: Calendar --------------------------- */
.wp-block-calendar {
  border-color: var(--phw-border-color);
}

:root .wp-block-calendar * {
  border-color: inherit;
}

.wp-block-calendar table {
  font-family: inherit;
  margin: 0;
}

.wp-block-calendar table tbody {
  color: inherit;
}

:root .wp-block-calendar caption {
  background-color: var(--phw-primary-color);
  color: var(--phw-background-color);
  position: relative;
}
:root .wp-block-calendar caption:after {
  background-color: currentColor;
  content: "";
  display: block;
  height: 0.1rem;
  opacity: 0.2;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.wp-block-calendar table thead {
  border: none;
}

.wp-block-calendar table th {
  background-color: var(--phw-primary-color);
  border: none;
  color: var(--phw-background-color);
  font-weight: 700;
}

:root .wp-block-calendar td,
:root .wp-block-calendar th {
  padding: 0.8rem;
}

.wp-block-calendar td a {
  font-weight: 700;
}

@media (min-width: 782px) {
  :root .wp-block-calendar:not(.alignleft):not(.alignright) table {
    font-size: inherit;
  }
  :root .wp-block-calendar:not(.alignleft):not(.alignright) table th, :root .wp-block-calendar:not(.alignleft):not(.alignright) table td, :root .wp-block-calendar:not(.alignleft):not(.alignright) table caption {
    padding: 1.6rem;
  }
  :root .wp-block-calendar:not(.alignleft):not(.alignright) table td {
    font-size: 2.2rem;
    height: 9.3rem;
  }
  @supports (aspect-ratio: 1/1) {
    :root .wp-block-calendar:not(.alignleft):not(.alignright) table td {
      height: auto;
      aspect-ratio: 1/1;
    }
  }
}

.wp-calendar-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 1.6rem 0 0;
}

/* Block: Categories ------------------------- */
/* Block: Classic ---------------------------- */
/* Block: Code ------------------------------- */
/* Block: Columns ---------------------------- */
@media (min-width: 600px) {
  .wp-block-columns:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) + .wp-block-columns:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
    margin-top: 0;
  }
}

@media (min-width: 782px) {
  .wp-block-columns.alignwide + .wp-block-columns.alignwide,
  .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    margin-top: -4rem;
  }
}
@media (min-width: 1180px) {
  .wp-block-columns.alignwide + .wp-block-columns.alignwide,
  .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    margin-top: -3.2rem;
  }
}
@media (min-width: 1600px) {
  .wp-block-columns.alignwide + .wp-block-columns.alignwide,
  .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    margin-top: -1.6rem;
  }
}

.wp-block-columns.alignfull {
  padding: 0 1.6rem;
}
@media (min-width: 782px) {
  .wp-block-columns.alignfull {
    padding: 0 2.4rem;
  }
}

@media (min-width: 782px) {
  .wp-block-column p.has-background,
  .wp-block-column h1.has-background, .wp-block-column .h1.has-background,
  .wp-block-column h2.has-background, .wp-block-column .h2.has-background,
  .wp-block-column h3.has-background, .wp-block-column .h3.has-background,
  .wp-block-column h4.has-background, .wp-block-column .h4.has-background,
  .wp-block-column h5.has-background, .wp-block-column .h5.has-background,
  .wp-block-column h6.has-background, .wp-block-column .h6.has-background,
  .wp-block-column .wp-block-group.has-background {
    padding: 3.2rem;
  }
}
@media (min-width: 1300px) {
  .wp-block-column p.has-background,
  .wp-block-column h1.has-background, .wp-block-column .h1.has-background,
  .wp-block-column h2.has-background, .wp-block-column .h2.has-background,
  .wp-block-column h3.has-background, .wp-block-column .h3.has-background,
  .wp-block-column h4.has-background, .wp-block-column .h4.has-background,
  .wp-block-column h5.has-background, .wp-block-column .h5.has-background,
  .wp-block-column h6.has-background, .wp-block-column .h6.has-background,
  .wp-block-column .wp-block-group.has-background {
    padding: 4rem;
  }
}
@media (min-width: 1600px) {
  .wp-block-column p.has-background,
  .wp-block-column h1.has-background, .wp-block-column .h1.has-background,
  .wp-block-column h2.has-background, .wp-block-column .h2.has-background,
  .wp-block-column h3.has-background, .wp-block-column .h3.has-background,
  .wp-block-column h4.has-background, .wp-block-column .h4.has-background,
  .wp-block-column h5.has-background, .wp-block-column .h5.has-background,
  .wp-block-column h6.has-background, .wp-block-column .h6.has-background,
  .wp-block-column .wp-block-group.has-background {
    padding: 4.8rem;
  }
}

.wp-block-column {
  margin-bottom: 0;
}

@media (max-width: 599px) {
  .wp-block-column + .wp-block-column {
    margin-top: var(--phw-gap);
  }
}

@media (min-width: 600px) and (max-width: 781px) {
  :root .wp-block-column:not(:only-child) {
    -ms-flex-preferred-size: calc(50% - 1.6rem) !important;
        flex-basis: calc(50% - 1.6rem) !important;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin: 0 0 3.2rem;
  }
}

@media (min-width: 600px) and (max-width: 781px) {
  :root .wp-block-column:nth-child(2n) {
    margin-left: 3.2rem;
  }
}

/* Last two when they form a full row. */
@media (min-width: 600px) and (max-width: 781px) {
  .wp-block-column:nth-last-of-type(-n+1):nth-child(even),
  .wp-block-column:nth-last-of-type(-n+2):nth-child(odd) {
    margin-bottom: 0;
  }
}

@media (min-width: 782px) {
  :root .wp-block-column:not(:first-child) {
    margin: 0 0 0 2.4rem;
  }
}
@media (min-width: 1180px) {
  :root .wp-block-column:not(:first-child) {
    margin: 0 0 0 3.2rem;
  }
}
@media (min-width: 1600px) {
  :root .wp-block-column:not(:first-child) {
    margin: 0 0 0 4.8rem;
  }
}

@media (min-width: 782px) {
  .wp-block-column .wp-block-cover,
  .wp-block-column .wp-block-group {
    margin-bottom: 3.2rem;
    margin-top: 3.2rem;
  }
}

/* Block: Cover ------------------------------ */
.wp-block-cover,
.wp-block-cover-image {
  color: #fff; /* Always default to white on the cover block */
  padding: 0;
}

.wp-block-cover hr.wp-block-separator:not(.has-background) {
  color: inherit; /* Inherit unless set otherwise */
}

.wp-block-cover-image.alignleft, .wp-block-cover-image.alignright,
.wp-block-cover.alignleft, .wp-block-cover.alignright {
  max-width: 30.5rem;
  width: 100%;
}

.wp-block-cover-image > .wp-block-cover__inner-container,
.wp-block-cover > .wp-block-cover__inner-container {
  color: inherit;
  margin: 0 auto;
  max-width: var(--phw-inner-width-wide);
  width: calc(100% - var(--phw-gutter));
  z-index: 1;
}
@media (min-width: 782px) {
  .wp-block-cover-image > .wp-block-cover__inner-container,
  .wp-block-cover > .wp-block-cover__inner-container {
    width: calc(100% - 9.6rem);
  }
}

.wp-block-cover-image .wp-block-cover-image-text,
.wp-block-cover .wp-block-cover-text,
section.wp-block-cover-image > h2 {
  max-width: 58rem;
}

.wp-block-cover-image .wp-block-cover-image-text,
.wp-block-cover .wp-block-cover-text {
  font-size: inherit;
  line-height: 1.5;
  width: 100%;
}

.wp-block-cover a,
.wp-block-cover-image a {
  color: inherit;
}

/* Block: Embed ------------------------------ */
@media (min-width: 782px) {
  .wp-block-embed {
    margin-bottom: 6rem;
    margin-top: 6rem;
  }
}

@media (min-width: 782px) {
  .wp-block-embed.alignleft,
  .wp-block-embed.alignright {
    margin-top: 0.5rem;
  }
}

.wp-block-embed.aligncenter * {
  margin-left: auto;
  margin-right: auto;
}

.wp-block-embed figcaption {
  margin-bottom: 0;
  margin-top: 1.2rem;
}

:root .wp-block-embed.alignleft .wp-block-embed__wrapper,
:root .wp-block-embed.alignright .wp-block-embed__wrapper,
:root .wp-block[data-align=left] > [data-type="core/embed"] .wp-block-embed__wrapper,
:root .wp-block[data-align=right] > [data-type="core/embed"] .wp-block-embed__wrapper {
  min-width: 0;
}

.wp-block-embed-twitter.alignleft,
.wp-block-embed-twitter.alignright {
  min-width: 25rem;
}

/* Block: File ------------------------------- */
.wp-block-file {
  background-color: var(--phw-light-background-color);
  display: block;
  padding: 2.4rem;
  text-align: center;
  width: 100%;
}
@media (min-width: 782px) {
  .wp-block-file {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    text-align: inherit;
  }
}

.wp-block-file.aligncenter {
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 782px) {
  .wp-block-file.aligncenter {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.wp-block-file a:not(.wp-block-file__button) {
  color: inherit;
  font-weight: 700;
  text-decoration: none;
}

.wp-block-file a:not(.wp-block-file__button):hover {
  text-decoration: underline;
}

.wp-block-file .wp-block-file__button {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 1.6rem 0 0;
  width: 100%;
}
@media (min-width: 782px) {
  .wp-block-file .wp-block-file__button {
    margin: 0 0 0 1.6rem;
    width: auto;
  }
}

.wp-block-file a.wp-block-file__button:active,
.wp-block-file a.wp-block-file__button:focus,
.wp-block-file a.wp-block-file__button:hover,
.wp-block-file a.wp-block-file__button:visited {
  opacity: 1;
}

.wp-block-file a.wp-block-file__button:hover,
.wp-block-file a.wp-block-file__button:focus {
  text-decoration: underline;
}

.wp-block-file > *:first-child {
  margin: 0 0 1rem 0;
}
@media (min-width: 782px) {
  .wp-block-file > *:first-child {
    margin: 0 1rem 0 0;
  }
}

.wp-block-file > a:only-child {
  margin: 0;
}

/* STYLE: ALIGN LEFT/RIGHT */
.wp-block-file.alignleft,
.wp-block-file.alignright {
  display: block;
  text-align: center;
}

@media (min-width: 782px) {
  .wp-block-file.alignright {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.wp-block-file.alignright .wp-block-file__button,
.wp-block-file.alignleft .wp-block-file__button {
  width: 100%;
  margin: 1.6rem 0 0;
}

/* Block: Gallery ---------------------------- */
:root .wp-block-gallery {
  --wp--style--unstable-gallery-gap: 1.6rem;
  gap: var(--wp--style--unstable-gallery-gap);
}
@media (min-width: 600px) {
  :root .wp-block-gallery {
    --wp--style--unstable-gallery-gap: 2.4rem;
  }
}

@media (min-width: 1180px) {
  :root .wp-block-gallery.alignfull,
  :root .wp-block-gallery.alignwide {
    --wp--style--unstable-gallery-gap: 3.2rem;
  }
}
@media (min-width: 1600px) {
  :root .wp-block-gallery.alignfull,
  :root .wp-block-gallery.alignwide {
    --wp--style--unstable-gallery-gap: 4.8rem;
  }
}

.wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) + .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter),
.wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) + .wp-block-image:not(.alignleft):not(.alignright),
.wp-block-image:not(.alignleft):not(.alignright) + .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) {
  margin-top: -1.6rem;
}
@media (min-width: 600px) {
  .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) + .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter),
  .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) + .wp-block-image:not(.alignleft):not(.alignright),
  .wp-block-image:not(.alignleft):not(.alignright) + .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) {
    margin-top: -0.8rem;
  }
}
@media (min-width: 782px) {
  .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) + .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter),
  .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) + .wp-block-image:not(.alignleft):not(.alignright),
  .wp-block-image:not(.alignleft):not(.alignright) + .wp-block-gallery:not(.alignleft):not(.alignright):not(.is-style-no-gutter) {
    margin-top: -2.4rem;
  }
}

@media (min-width: 782px) {
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-gallery:not(.is-style-no-gutter),
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-image,
  .alignfull.wp-block-image + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-image,
  .alignwide.wp-block-image + .alignwide.wp-block-gallery:not(.is-style-no-gutter) {
    margin-top: -4rem !important;
  }
}
@media (min-width: 1180px) {
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-gallery:not(.is-style-no-gutter),
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-image,
  .alignfull.wp-block-image + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-image,
  .alignwide.wp-block-image + .alignwide.wp-block-gallery:not(.is-style-no-gutter) {
    margin-top: -3.2rem !important;
  }
}
@media (min-width: 1600px) {
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-gallery:not(.is-style-no-gutter),
  .alignfull.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-image,
  .alignfull.wp-block-image + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignfull.wp-block-gallery:not(.is-style-no-gutter),
  .alignwide.wp-block-gallery:not(.is-style-no-gutter) + .alignwide.wp-block-image,
  .alignwide.wp-block-image + .alignwide.wp-block-gallery:not(.is-style-no-gutter) {
    margin-top: -1.6rem !important;
  }
}

.wp-block-gallery > .blocks-gallery-grid {
  margin-bottom: -1.6rem;
  width: 100%;
}

@media (min-width: 600px) {
  .wp-block-gallery > figcaption {
    margin-top: 1.2rem;
  }
}

.blocks-gallery-grid .blocks-gallery-image,
.blocks-gallery-grid .blocks-gallery-item,
.wp-block-gallery .blocks-gallery-image,
.wp-block-gallery .blocks-gallery-item {
  margin: 0 1.6rem 1.6rem 0;
  width: calc(50% - 0.8rem);
}

.blocks-gallery-grid .blocks-gallery-image:last-child,
.blocks-gallery-grid .blocks-gallery-item:last-child,
.wp-block-gallery .blocks-gallery-image:last-child,
.wp-block-gallery .blocks-gallery-item:last-child {
  margin-right: 0 !important;
}

.blocks-gallery-grid .blocks-gallery-image figure,
.blocks-gallery-grid .blocks-gallery-item figure,
.wp-block-gallery .blocks-gallery-image figure,
.wp-block-gallery .blocks-gallery-item figure {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.wp-block-gallery figure > a {
  width: 100%;
}

.blocks-gallery-grid .blocks-gallery-image figcaption,
.blocks-gallery-grid .blocks-gallery-item figcaption,
.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #1e2d32;
  border-radius: 0.4rem;
  bottom: 0.8rem;
  color: #fff;
  font-size: 1.2rem;
  left: auto;
  max-height: calc(100% - 1.6rem);
  max-width: calc(100% - 1.6rem);
  padding: 0.5rem 1.2rem;
  width: auto;
}
@media (min-width: 782px) {
  .blocks-gallery-grid .blocks-gallery-image figcaption,
  .blocks-gallery-grid .blocks-gallery-item figcaption,
  .wp-block-gallery .blocks-gallery-image figcaption,
  .wp-block-gallery .blocks-gallery-item figcaption {
    bottom: 1.6rem;
    font-size: 1.4rem;
    max-height: calc(100% - 3.2rem);
    max-width: calc(100% - 3.2rem);
  }
}

.wp-block-gallery .wp-block-image img {
  margin: 0 !important;
}

@media (min-width: 600px) {
  .wp-block-gallery > .blocks-gallery-grid {
    margin-bottom: -2.4rem;
  }
  :root .wp-block-gallery .blocks-gallery-item {
    margin: 0 2.4rem 2.4rem 0;
  }
  .wp-block-gallery .blocks-gallery-item {
    width: calc(50% - 1.2rem);
  }
  .wp-block-gallery.columns-3 .blocks-gallery-item {
    width: calc(33.33333% - 1.6rem);
  }
  .wp-block-gallery.columns-4 .blocks-gallery-item {
    width: calc(25% - 1.8rem);
  }
  .wp-block-gallery.columns-5 .blocks-gallery-item {
    width: calc(20% - 1.92rem);
  }
  .wp-block-gallery.columns-6 .blocks-gallery-item {
    width: calc(16.66667% - 2rem);
  }
  .wp-block-gallery.columns-7 .blocks-gallery-item {
    width: calc(14.28571% - 2.0571428571rem);
  }
  .wp-block-gallery.columns-8 .blocks-gallery-item {
    width: calc(12.5% - 2.1rem);
  }
}
@media (min-width: 1180px) {
  .alignfull.wp-block-gallery > .blocks-gallery-grid,
  .alignwide.wp-block-gallery > .blocks-gallery-grid {
    margin-bottom: -3.2rem;
  }
  .alignfull.wp-block-gallery .blocks-gallery-item,
  .alignwide.wp-block-gallery .blocks-gallery-item {
    margin: 0 3.2rem 3.2rem 0;
  }
  .alignfull.wp-block-gallery .blocks-gallery-item,
  .alignwide.wp-block-gallery .blocks-gallery-item {
    width: calc(50% - 1.6rem);
  }
  .alignfull.wp-block-gallery.columns-3 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-3 .blocks-gallery-item {
    width: calc(33.33333% - 2.1333333333rem);
  }
  .alignfull.wp-block-gallery.columns-4 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-4 .blocks-gallery-item {
    width: calc(25% - 2.4rem);
  }
  .alignfull.wp-block-gallery.columns-5 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-5 .blocks-gallery-item {
    width: calc(20% - 2.56rem);
  }
  .alignfull.wp-block-gallery.columns-6 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-6 .blocks-gallery-item {
    width: calc(16.66667% - 2.6666666667rem);
  }
  .alignfull.wp-block-gallery.columns-7 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-7 .blocks-gallery-item {
    width: calc(14.28571% - 2.7428571429rem);
  }
  .alignfull.wp-block-gallery.columns-8 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-8 .blocks-gallery-item {
    width: calc(12.5% - 2.8rem);
  }
}
@media (min-width: 1600px) {
  .alignfull.wp-block-gallery > .blocks-gallery-grid,
  .alignwide.wp-block-gallery > .blocks-gallery-grid {
    margin-bottom: -4.8rem;
  }
  .alignfull.wp-block-gallery .blocks-gallery-item,
  .alignwide.wp-block-gallery .blocks-gallery-item {
    margin: 0 4.8rem 4.8rem 0;
  }
  .alignfull.wp-block-gallery .blocks-gallery-item,
  .alignwide.wp-block-gallery .blocks-gallery-item {
    width: calc(50% - 2.4rem);
  }
  .alignfull.wp-block-gallery.columns-3 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-3 .blocks-gallery-item {
    width: calc(33.33333% - 3.2rem);
  }
  .alignfull.wp-block-gallery.columns-4 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-4 .blocks-gallery-item {
    width: calc(25% - 3.6rem);
  }
  .alignfull.wp-block-gallery.columns-5 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-5 .blocks-gallery-item {
    width: calc(20% - 3.84rem);
  }
  .alignfull.wp-block-gallery.columns-6 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-6 .blocks-gallery-item {
    width: calc(16.66667% - 4rem);
  }
  .alignfull.wp-block-gallery.columns-7 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-7 .blocks-gallery-item {
    width: calc(14.28571% - 4.1142857143rem);
  }
  .alignfull.wp-block-gallery.columns-8 .blocks-gallery-item,
  .alignwide.wp-block-gallery.columns-8 .blocks-gallery-item {
    width: calc(12.5% - 4.2rem);
  }
}
/* STYLE: NO GUTTER */
.wp-block-gallery.is-style-no-gutter .blocks-gallery-grid,
.wp-block-gallery.is-style-no-gutter .blocks-gallery-image,
.wp-block-gallery.is-style-no-gutter .blocks-gallery-item,
.wp-block-gallery.is-style-no-gutter .wp-block-image {
  margin: 0 !important;
}

/* Block: Group ------------------------------ */
.wp-block-group.has-background {
  padding: var(--phw-gap);
}
@media (min-width: 782px) {
  .wp-block-group.has-background {
    padding: 4.8rem;
  }
}

.wp-block-group__inner-container {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--phw-inner-width-wide);
}

/* Block: Heading ---------------------------- */
h1.has-background, .h1.has-background,
h2.has-background, .h2.has-background,
h3.has-background, .h3.has-background,
h4.has-background, .h4.has-background,
h5.has-background, .h5.has-background,
h6.has-background, .h6.has-background {
  padding: var(--phw-gap);
}
@media (min-width: 782px) {
  h1.has-background, .h1.has-background,
  h2.has-background, .h2.has-background,
  h3.has-background, .h3.has-background,
  h4.has-background, .h4.has-background,
  h5.has-background, .h5.has-background,
  h6.has-background, .h6.has-background {
    padding: 4.8rem;
  }
}

/* Block: HTML ------------------------------- */
/* Block: Image ------------------------------ */
.wp-block-image,
:root .wp-block-image:only-child figure {
  margin-bottom: 0;
  margin-top: 0;
}

.wp-block-image figure.aligncenter {
  width: 100%;
}

.wp-block-image:not(:first-child):not(.alignwide):not(.alignfull):not(.alignnone) figure:not(.alignleft):not(.alignright):not(.aligncenter),
.wp-block-image:not(:first-child):not(.alignwide):not(.alignfull):not(.alignnone) > img:first-child,
.wp-block-image:not(:first-child):not(.alignwide):not(.alignfull):not(.alignnone) > img:only-child {
  margin-top: 4rem;
}
@media (min-width: 782px) {
  .wp-block-image:not(:first-child):not(.alignwide):not(.alignfull):not(.alignnone) figure:not(.alignleft):not(.alignright):not(.aligncenter),
  .wp-block-image:not(:first-child):not(.alignwide):not(.alignfull):not(.alignnone) > img:first-child,
  .wp-block-image:not(:first-child):not(.alignwide):not(.alignfull):not(.alignnone) > img:only-child {
    margin-top: 4.8rem;
  }
}

.wp-block-image:not(:last-child):not(.alignwide):not(.alignfull):not(.alignnone) figure:not(.alignleft):not(.alignright):not(.aligncenter),
.wp-block-image:not(:last-child):not(.alignwide):not(.alignfull):not(.alignnone) > figcaption:last-child,
.wp-block-image:not(:last-child):not(.alignwide):not(.alignfull):not(.alignnone) > img:only-child {
  margin-bottom: 4rem;
}
@media (min-width: 782px) {
  .wp-block-image:not(:last-child):not(.alignwide):not(.alignfull):not(.alignnone) figure:not(.alignleft):not(.alignright):not(.aligncenter),
  .wp-block-image:not(:last-child):not(.alignwide):not(.alignfull):not(.alignnone) > figcaption:last-child,
  .wp-block-image:not(:last-child):not(.alignwide):not(.alignfull):not(.alignnone) > img:only-child {
    margin-bottom: 4.8rem;
  }
}

.wp-block-image.alignwide img,
.wp-block-image .alignwide img,
.wp-block-image.alignfull img,
.wp-block-image .alignfull img {
  width: 100%;
}

.wp-block-image figcaption {
  margin-bottom: 0;
  margin-top: 1.2rem;
}

/* Block: Latest Comments -------------------- */
.wp-block-latest-comments__comment {
  font-size: inherit;
}

.wp-block-latest-comments__comment-meta {
  font-weight: var(--phw-heading-font-weight);
}

.wp-block-latest-comments__comment-meta a {
  text-decoration: none;
}

.wp-block-latest-comments__comment-meta a:hover,
.wp-block-latest-comments__comment-meta a:focus {
  text-decoration: underline;
}

/* HAS EXCERPT */
.wp-block-latest-comments__comment-excerpt {
  margin: 0.36em 0 0;
}

.wp-block-latest-comments__comment-excerpt p {
  font-size: 0.9em;
  line-height: inherit;
}

/* HAS TIME */
.wp-block-latest-comments time {
  color: var(--phw-secondary-color);
  font-size: 0.9em;
  font-weight: 400;
  margin-top: 0.2rem;
}

/* Block: Latest Posts ----------------------- */
@media (min-width: 782px) {
  .wp-block-latest-posts > li {
    margin-top: 3.2rem;
  }
}

.wp-block-latest-posts li > a {
  display: block;
}

@media (min-width: 782px) {
  .wp-block-latest-posts > li > a {
    font-size: 2.4rem;
  }
}

.wp-block-latest-posts .wp-block-latest-posts__featured-image {
  margin-bottom: 1.2rem;
  margin-top: 0;
}
@media (min-width: 782px) {
  .wp-block-latest-posts .wp-block-latest-posts__featured-image {
    margin-bottom: 1.6rem;
  }
}

.wp-block-latest-posts .wp-block-latest-posts__featured-image:not(.alignleft):not(.aligncenter):not(.alignright),
.wp-block-latest-posts .wp-block-latest-posts__featured-image:not(.alignleft):not(.aligncenter):not(.alignright) a {
  width: 100%;
}

.wp-block-latest-posts .wp-block-latest-posts__featured-image:not(.aligncenter) img {
  width: 100%;
}

@media (min-width: 782px) {
  .wp-block-latest-posts .wp-block-latest-posts__featured-image.alignleft:not(.is-resized),
  .wp-block-latest-posts .wp-block-latest-posts__featured-image.alignright:not(.is-resized) {
    margin-bottom: 1.6rem;
    max-width: min(33.33%, 16rem);
  }
  .wp-block-latest-posts .wp-block-latest-posts__featured-image.alignleft:not(.is-resized) {
    margin-right: 1.6rem;
  }
  .wp-block-latest-posts .wp-block-latest-posts__featured-image.alignright:not(.is-resized) {
    margin-left: 1.6rem;
  }
}
.wp-block-latest-posts .wp-block-latest-posts__post-author,
.wp-block-latest-posts .wp-block-latest-posts__post-date {
  color: var(--phw-secondary-color);
  display: inline-block;
  font-size: 1.5rem;
  margin: 1rem 1.6rem 0 0;
}
@media (min-width: 782px) {
  .wp-block-latest-posts .wp-block-latest-posts__post-author,
  .wp-block-latest-posts .wp-block-latest-posts__post-date {
    font-size: 1.6rem;
  }
}

.wp-block-latest-posts__post-excerpt {
  font-size: 1.5rem;
  line-height: 1.4;
  margin: 1.2rem 0 0;
}
@media (min-width: 782px) {
  .wp-block-latest-posts__post-excerpt {
    font-size: 1.8rem;
    margin-top: 1.6rem;
  }
}

/* STYLE: LIST */
/* STYLE: GRID */
.wp-block-latest-posts.is-grid > li {
  margin: 0 0 2.4rem 0;
  width: 100%;
}
@media (min-width: 600px) {
  .wp-block-latest-posts.is-grid > li {
    margin: 1.6rem 2.4rem 1.6rem 0;
  }
}

.wp-block-latest-posts.columns-2 > li:nth-child(2n),
.wp-block-latest-posts.columns-3 > li:nth-child(3n),
.wp-block-latest-posts.columns-4 > li:nth-child(4n),
.wp-block-latest-posts.columns-5 > li:nth-child(5n),
.wp-block-latest-posts.columns-6 > li:nth-child(6n) {
  margin-right: 0 !important;
}

@media (min-width: 600px) {
  .wp-block-latest-posts.columns-1 > li {
    margin-right: 0 !important;
  }
  .wp-block-latest-posts.columns-1 > li:nth-child(-n+1),
  .wp-block-latest-posts.columns-2 > li:nth-child(-n+2),
  .wp-block-latest-posts.columns-3 > li:nth-child(-n+3),
  .wp-block-latest-posts.columns-4 > li:nth-child(-n+4),
  .wp-block-latest-posts.columns-5 > li:nth-child(-n+5),
  .wp-block-latest-posts.columns-6 > li:nth-child(-n+6) {
    margin-top: 0 !important;
  }
  .wp-block-latest-posts.columns-2 > li {
    width: calc(50% - 1.2rem);
  }
  .wp-block-latest-posts.columns-3 > li {
    width: calc(33.33333% - 1.6rem);
  }
  .wp-block-latest-posts.columns-4 > li {
    width: calc(25% - 1.8rem);
  }
  .wp-block-latest-posts.columns-5 > li {
    width: calc(20% - 1.92rem);
  }
  .wp-block-latest-posts.columns-6 > li {
    width: calc(16.66667% - 2rem);
  }
}
@media (min-width: 1180px) {
  .wp-block-latest-posts.alignwide.is-grid > li,
  .wp-block-latest-posts.alignfull.is-grid > li {
    margin: 1.6rem 3.2rem 1.6rem 0;
  }
  .wp-block-latest-posts.alignfull.columns-2 > li,
  .wp-block-latest-posts.alignwide.columns-2 > li {
    width: calc(50% - 1.6rem);
  }
  .wp-block-latest-posts.alignfull.columns-3 > li,
  .wp-block-latest-posts.alignwide.columns-3 > li {
    width: calc(33.33333% - 2.1333333333rem);
  }
  .wp-block-latest-posts.alignfull.columns-4 > li,
  .wp-block-latest-posts.alignwide.columns-4 > li {
    width: calc(25% - 2.4rem);
  }
  .wp-block-latest-posts.alignfull.columns-5 > li,
  .wp-block-latest-posts.alignwide.columns-5 > li {
    width: calc(20% - 2.56rem);
  }
  .wp-block-latest-posts.alignfull.columns-6 > li,
  .wp-block-latest-posts.alignwide.columns-6 > li {
    width: calc(16.66667% - 2.6666666667rem);
  }
  .wp-block-latest-posts.alignwide.is-grid .wp-block-latest-posts__featured-image,
  .wp-block-latest-posts.alignfull.is-grid .wp-block-latest-posts__featured-image {
    margin-bottom: 2.1rem;
  }
}
@media (min-width: 1600px) {
  .wp-block-latest-posts.alignwide.is-grid > li,
  .wp-block-latest-posts.alignfull.is-grid > li {
    margin: 2.4rem 4.8rem 2.4rem 0;
  }
  .wp-block-latest-posts.alignfull.columns-2 > li,
  .wp-block-latest-posts.alignwide.columns-2 > li {
    width: calc(50% - 2.4rem);
  }
  .wp-block-latest-posts.alignfull.columns-3 > li,
  .wp-block-latest-posts.alignwide.columns-3 > li {
    width: calc(33.33333% - 3.2rem);
  }
  .wp-block-latest-posts.alignfull.columns-4 > li,
  .wp-block-latest-posts.alignwide.columns-4 > li {
    width: calc(25% - 3.6rem);
  }
  .wp-block-latest-posts.alignfull.columns-5 > li,
  .wp-block-latest-posts.alignwide.columns-5 > li {
    width: calc(20% - 3.84rem);
  }
  .wp-block-latest-posts.alignfull.columns-6 > li,
  .wp-block-latest-posts.alignwide.columns-6 > li {
    width: calc(16.66667% - 4rem);
  }
}
/* Block: List ------------------------------- */
/* Block: Media and Text --------------------- */
.wp-block-media-text .wp-block-media-text__content {
  padding: var(--phw-gap);
}
@media (min-width: 782px) {
  .wp-block-media-text .wp-block-media-text__content {
    padding: 4.8rem;
  }
}

.wp-block-media-text:not(.is-stacked-on-mobile):not(.has-background):not(.has-media-on-the-right) .wp-block-media-text__content {
  padding-bottom: 0;
  padding-right: 0;
  padding-top: 0;
}

.wp-block-media-text:not(.is-stacked-on-mobile):not(.has-background).has-media-on-the-right .wp-block-media-text__content {
  padding-bottom: 0;
  padding-left: 0;
  padding-top: 0;
}

.wp-block-media-text__content > .wp-block-group {
  margin-left: auto;
  margin-right: auto;
}

.wp-block-media-text__content > .wp-block-group:not(.alignwide):not(.alignfull) {
  max-width: var(--phw-inner-width-thin);
}

@media (min-width: 601px) {
  .wp-block-media-text:not(.alignfull):not(.has-background):not(.has-media-on-the-right) .wp-block-media-text__content {
    padding-right: 0;
  }
}

@media (min-width: 601px) {
  .wp-block-media-text:not(.alignfull):not(.has-background).has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
  }
}

@media (min-width: 601px) {
  .wp-block-media-text:not(.has-background) .wp-block-media-text__content {
    padding-bottom: 0;
    padding-top: 0;
  }
}

@media (max-width: 600px) {
  .wp-block-media-text.is-stacked-on-mobile:not(.has-background) .wp-block-media-text__content {
    padding: 3.2rem 0 0;
  }
}

@media (min-width: 601px) {
  .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media,
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-right: 0;
    margin-right: 1.6rem;
  }
}
@media (min-width: 782px) {
  .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media,
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-right: 0;
    margin-right: 2.4rem;
  }
}

@media (min-width: 601px) {
  .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content,
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
    padding-left: 0;
    margin-left: 1.6rem;
  }
}
@media (min-width: 782px) {
  .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content,
  .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
    padding-left: 0;
    margin-left: 2.4rem;
  }
}

/* Block: More ------------------------------- */
/* Block: Navigation Menu -------------------- */
/* Block: Page Break ------------------------- */
/* Block: Paragraph -------------------------- */
p.has-background {
  padding: var(--phw-gap);
}
@media (min-width: 782px) {
  p.has-background {
    padding: 4.8rem;
  }
}

/* Block: Preformatted ----------------------- */
/* Block: Pullquote -------------------------- */
.wp-block-pullquote {
  border: none;
  padding: 0;
  text-align: left;
}

.wp-block-pullquote:not(.has-background).alignfull {
  padding: 0 1.6rem;
}
@media (min-width: 782px) {
  .wp-block-pullquote:not(.has-background).alignfull {
    padding: 0 2.4rem;
  }
}

.wp-block-pullquote blockquote {
  border: none;
  font-size: 2.8rem;
  margin: 0;
  padding: 1.45em 0 0;
  position: relative;
}
@media (min-width: 782px) {
  .wp-block-pullquote blockquote {
    font-size: 3.2rem;
    line-height: 1.35;
  }
}

@media (min-width: 782px) {
  .wp-block-pullquote.alignwide blockquote,
  .wp-block-pullquote.alignfull blockquote {
    font-size: 4rem;
  }
}

.wp-block-pullquote blockquote:before {
  content: "“";
  display: block;
  font-size: 3em;
  font-weight: 700;
  height: 0.33em;
  line-height: 0.75;
  position: absolute;
  left: -0.2rem;
  top: 0;
}

.wp-block-pullquote blockquote:not(.has-text-color):before {
  color: var(--phw-accent-color);
}

.wp-block-pullquote p {
  font-size: inherit;
  font-weight: 700;
  line-height: 1.25;
}

.wp-block-pullquote p,
.wp-block-pullquote.is-style-solid-color blockquote p,
.wp-block-pullquote.alignleft p,
.wp-block-pullquote.alignright p {
  font-size: inherit;
}

.wp-block-pullquote blockquote:not(.has-text-color) cite {
  color: var(--phw-accent-color);
}

/* STYLE: SOLID */
.wp-block-pullquote.is-style-solid-color.has-background {
  padding: var(--phw-gap);
}
@media (min-width: 782px) {
  .wp-block-pullquote.is-style-solid-color.has-background {
    padding: 4.8rem;
  }
  .wp-block-pullquote.is-style-solid-color.has-background blockquote {
    padding-top: 1.6em;
  }
  .wp-block-pullquote.is-style-solid-color.has-background cite {
    margin-top: 2.4rem;
  }
}

.wp-block-pullquote.is-style-solid-color blockquote {
  max-width: 100%;
}

/* Block: Quote ------------------------------ */
.wp-block-quote.has-text-align-center,
.wp-block-quote[style*="text-align:center"],
.wp-block-quote[style*="text-align: center"] {
  border: none;
  padding: 0;
}

.wp-block-quote.has-text-align-center:before,
.wp-block-quote[style*="text-align:center"]:before,
.wp-block-quote[style*="text-align: center"]:before,
.wp-block-quote.has-text-align-center:after,
.wp-block-quote[style*="text-align:center"]:after,
.wp-block-quote[style*="text-align: center"]:after {
  background-color: var(--phw-accent-color);
  content: "";
  display: block;
  height: 0.2rem;
  margin: 0 auto;
  width: 6.4rem;
}

.wp-block-quote.has-text-align-center:before,
.wp-block-quote[style*="text-align:center"]:before,
.wp-block-quote[style*="text-align: center"]:before {
  margin-bottom: 2.4rem;
}

.wp-block-quote.has-text-align-center:after,
.wp-block-quote[style*="text-align:center"]:after,
.wp-block-quote[style*="text-align: center"]:after {
  margin-top: 2.6rem;
}

.wp-block-quote.has-text-align-right,
.wp-block-quote[style*="text-align:right"],
.wp-block-quote[style*="text-align: right"] {
  border-width: 0 0.2rem 0 0;
  padding-left: 0;
  padding-right: 2rem;
}

.wp-block-quote p {
  max-width: 100%;
}

/* STYLE: LARGE */
.wp-block-quote.is-style-large {
  font-size: 2.1rem;
}
@media (min-width: 782px) {
  .wp-block-quote.is-style-large {
    font-size: 2.4rem;
  }
}

.wp-block-quote.is-large:not(.is-style-plain) p,
.wp-block-quote.is-style-large:not(.is-style-plain) p {
  font-size: inherit;
  font-style: normal;
  line-height: 1.5;
}

.wp-block-quote.is-large:not(.is-style-plain) cite,
.wp-block-quote.is-large:not(.is-style-plain) footer,
.wp-block-quote.is-style-large:not(.is-style-plain) cite,
.wp-block-quote.is-style-large:not(.is-style-plain) footer {
  font-size: 1.6rem;
  text-align: inherit;
}

/* Block: RSS -------------------------------- */
/* Block: Search ----------------------------- */
.wp-block-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
}

.wp-block-search .wp-block-search__label {
  width: 100%;
}

.wp-block-search .wp-block-search__input {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 20rem;
}

.wp-block-search .wp-block-search__input {
  border-color: var(--phw-border-color);
}

.wp-block-search .wp-block-search__button {
  background-color: var(--phw-accent-color);
  border: none;
  color: var(--phw-background-color);
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-left: 1rem;
  padding: 1.5rem 1.8rem;
}

/* Block: Separator -------------------------- */
hr.wp-block-separator {
  border: none;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* Block: Site Title ------------------------- */
.wp-block-site-title a {
  text-decoration: none;
}
.wp-block-site-title a:hover, .wp-block-site-title a:focus {
  text-decoration: underline;
}

/* Block: Social ----------------------------- */
.wp-block-social-links .wp-social-link {
  margin: 0 1.2rem 1.2rem 0;
  -webkit-transition-duration: 0.15s;
          transition-duration: 0.15s;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  width: auto;
}

.wp-block-social-links:not([class*=is-content-justification-]).aligncenter .wp-social-link {
  margin: 0 0.6rem 1.2rem 0.6rem;
}

.wp-block-social-links:not([class*=is-content-justification-]).alignright .wp-social-link {
  margin: 0 0 1.2rem 1.2rem;
}

.wp-block-social-links .wp-social-link svg {
  height: 1em;
  width: 1em;
}

/* STYLE: ONLY LOGOS */
:root .wp-block-social-links[class*=is-style-logos-only] .wp-social-link {
  background: none;
  margin: 0.8rem 1.6rem 0.8rem 0;
  padding: 0;
}

.wp-block-social-links:not([class*=is-content-justification-])[class*=is-style-logos-only].aligncenter .wp-social-link {
  margin: 0 0.8rem 1.6rem 0.8rem;
}

.wp-block-social-links:not([class*=is-content-justification-])[class*=is-style-logos-only].alignright .wp-social-link {
  margin: 0 0 1.6rem 1.6rem;
}

.wp-block-social-links[class*=is-style-logos-only].has-normal-icon-size,
.wp-block-social-links[class*=is-style-logos-only]:not([class*=-icon-size]) {
  font-size: 2.8rem;
}

.wp-block-social-links[class*=is-style-logos-only] .wp-social-link a {
  padding: 0;
}

/* STYLE: INHERITED ICON COLOR */
.wp-block-social-links.is-style-logos-only-monochrome .wp-social-link {
  color: inherit;
}

/* Block: Spacer ----------------------------- */
/* Block: Table ------------------------------ */
.wp-block-table table {
  margin: 0;
}

/* STYLE: STRIPES */
.wp-block-table.is-style-stripes,
table.is-style-stripes * {
  border: none;
}

table.is-style-stripes tbody tr:nth-child(odd),
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background: var(--phw-light-background-color);
}

/* Block: Tag Cloud -------------------------- */
.wp-block-tag-cloud {
  font-weight: 700;
}

.wp-block-tag-cloud a {
  margin-right: 0.8rem;
  text-decoration: none;
}

.wp-block-tag-cloud a:hover,
.wp-block-tag-cloud a:focus {
  text-decoration: underline;
}

/* Block: Verse ------------------------------ */
/* Block: Video ------------------------------ */
.wp-block-video video {
  display: block;
}

.wp-block-video figcaption {
  margin-bottom: 0;
  margin-top: 1.2rem;
}

.wp-block-video.aligncenter {
  text-align: inherit;
}

/* ------------------------------------------------------------------------------ /*
/*  PAGINATION
/* ------------------------------------------------------------------------------ */
.pagination-wrapper {
  position: relative;
}

.pagination-wrapper.pagination-type-button.last-page,
.pagination-wrapper.pagination-type-scroll.last-page,
.pagination-wrapper:not(.pagination-type-button) #load-more,
.js .pagination-wrapper:not(.pagination-type-links) .link-pagination,
.no-js #load-more,
.no-js .scroll-loading {
  display: none;
}

#pagination {
  position: relative;
}

/* Loading Icon ------------------------------ */
.pagination-wrapper .loading-icon {
  height: 1rem;
  opacity: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  text-align: left;
  -webkit-transform: translateX(calc(-50% - 0.9rem)) translateY(-50%);
          transform: translateX(calc(-50% - 0.9rem)) translateY(-50%);
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  width: 1rem;
}

.pagination-wrapper.loading .loading-icon {
  opacity: 1;
}

/* Type: Button ------------------------------ */
.js .pagination-wrapper.pagination-type-button {
  background-color: transparent;
  margin-bottom: 1.6rem;
  padding-bottom: 0;
}
@media (min-width: 1300px) {
  .js .pagination-wrapper.pagination-type-button {
    margin-bottom: 3.2rem;
  }
}

.js .pagination-wrapper.pagination-type-button:before {
  background: var(--phw-light-background-color);
  content: "";
  display: block;
  position: absolute;
  bottom: 50%;
  left: 0;
  right: 0;
  top: 0;
}

#load-more {
  padding: 2.1rem 3rem;
  position: relative;
  width: 100%;
}
@media (min-width: 782px) {
  #load-more {
    font-size: 1.8rem;
    padding: 3.1rem 4.5rem;
  }
}
@media (min-width: 1600px) {
  #load-more {
    font-size: 2.1rem;
    padding: 3.75rem 4.5rem;
  }
}

#load-more .load-text {
  opacity: 1;
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

#load-more .loading-icon {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.pagination-wrapper.loading #load-more .load-text {
  opacity: 0;
}

/* Type: Scroll ------------------------------ */
.js .pagination-wrapper.pagination-type-scroll {
  background-color: var(--phw-light-background-color);
  padding-bottom: 4.8rem;
}
@media (min-width: 782px) {
  .js .pagination-wrapper.pagination-type-scroll {
    padding-bottom: 8rem;
  }
}

.js .pagination-wrapper .scroll-loading {
  color: var(--phw-accent-color);
  height: 1.6rem;
  margin: 0 auto;
  position: relative;
}

/* Type: Links/JS Fallback ------------------- */
.no-js .pagination-wrapper,
.pagination-wrapper.pagination-type-links {
  background-color: var(--phw-light-background-color);
}

.no-js .pagination-wrapper #pagination,
.pagination-wrapper.pagination-type-links #pagination {
  padding: 3.2rem 0;
}
@media (min-width: 782px) {
  .no-js .pagination-wrapper #pagination,
  .pagination-wrapper.pagination-type-links #pagination {
    padding: 4.8rem 0;
  }
}

.link-pagination {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.link-pagination.only-next,
.link-pagination .next-wrapper a {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.link-pagination > div {
  width: 100%;
}

.link-pagination a {
  color: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: none;
}

.link-pagination svg {
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
  height: 3.2rem;
  width: 6.4rem;
}
@media (min-width: 782px) {
  .link-pagination svg {
    height: 4.8rem;
    width: 9.6rem;
  }
}

.link-pagination .previous-wrapper a:hover svg,
.link-pagination .previous-wrapper a:focus svg {
  -webkit-transform: translateX(-8.333%);
          transform: translateX(-8.333%);
}

.link-pagination .next-wrapper a:hover svg,
.link-pagination .next-wrapper a:focus svg {
  -webkit-transform: translateX(8.333%);
          transform: translateX(8.333%);
}

/* ------------------------------------------------------------------------------ /*
/*  ERROR 404
/* ------------------------------------------------------------------------------ */
.error404 #site-header {
  margin-bottom: 0;
}

.error404 #site-content {
  background: url(../img/404.svg) no-repeat center;
  background-size: contain;
  text-align: center;
}

.error404-inner {
  margin: 0 auto;
  max-width: 56rem;
  margin-top: calc(var(--phw-spacer) + var(--phw-header-height));
  padding: var(--phw-spacer-xxxl) 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media (min-width: 782px) {
  .error404-inner .archive-title {
    font-size: 4rem;
  }
}

.error404-inner p {
  margin: 1.8rem auto 0 auto;
}
@media (min-width: 782px) {
  .error404-inner p {
    margin-top: 2.4rem;
  }
}

.error404-inner .search-form {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 2.4rem auto 0 auto;
}
@media (min-width: 782px) {
  .error404-inner .search-form {
    margin-top: 3.2rem;
  }
}

/* ------------------------------------------------------------------------------ /*
/*  SITE FOOTER
/* ------------------------------------------------------------------------------ */
#site-footer {
  background-color: var(--phw-site-footer-background-color);
  color: var(--phw-site-footer-text-color);
  padding-bottom: calc(var(--phw-header-height) + var(--phw-spacer));
  position: relative;
}
@media (min-width: 600px) {
  #site-footer {
    padding-bottom: 0;
  }
}

.footer-inner {
  padding-top: clamp(4.8rem, calc(1.6vw + 3.84rem), 6.4rem);
  padding-bottom: calc(var(--phw-spacer) + 10.8rem);
  position: relative;
}
@media (min-width: 782px) {
  .footer-inner {
    padding-bottom: var(--phw-spacer);
  }
}
.footer-inner a {
  color: inherit;
  outline: none;
  text-decoration: none;
  -webkit-transition: color var(--phw-trans-speed) var(--phw-trans-ease);
  transition: color var(--phw-trans-speed) var(--phw-trans-ease);
}
.footer-inner a:hover, .footer-inner a:focus {
  color: var(--phw-accent-color);
}
.footer-inner .bus-headlights {
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0;
}
.footer-inner .bus-headlights.active {
  opacity: 1;
}

a.contact-link,
.footer-legal a,
.footer-menu a {
  font-weight: var(--phw-body-font-weight-bold);
}

/* Footer Logo ------------------------------- */
.footer-logo img {
  width: 100%;
  max-width: 30rem;
}

/* Footer Content ---------------------------- */
.footer-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4.8rem var(--phw-gap);
  padding-top: calc(2 * var(--phw-spacer-xs));
}
@media (min-width: 782px) {
  .footer-content {
    grid-template-columns: 1fr 1.125fr;
  }
  .lang-fr .footer-content {
    grid-template-columns: 1fr 1.25fr;
  }
}

/* Footer Navigation ------------------------- */
.footer-nav {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--phw-gap) 4.8rem;
}
@media (min-width: 600px) {
  .footer-nav {
    grid-template-columns: auto 1fr;
  }
}
@media (min-width: 782px) {
  .footer-nav {
    grid-template-columns: minmax(-webkit-max-content, 1fr) 1fr;
    grid-template-columns: minmax(max-content, 1fr) 1fr;
  }
}

/* Footer Contact ---------------------------- */
.footer-contact .contact-link {
  display: block;
  margin-bottom: 1.6rem;
  line-height: 1.5;
}

/* Footer Social ----------------------------- */
#site-footer .social-menu {
  margin: -1rem;
}

#site-footer .social-menu a:focus {
  -webkit-box-shadow: inset 0 0 0 0.2rem var(--phw-accent-color);
          box-shadow: inset 0 0 0 0.2rem var(--phw-accent-color);
}

/* Footer Menu ------------------------------- */
.footer-menu li + li {
  margin-top: 1.6rem;
}

/* Footer Legal ------------------------------ */
.footer-legal {
  font-size: var(--phw-sm-font-size);
  line-height: var(--phw-sm-line-height);
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
}

.footer-disclaimer p {
  font-size: inherit;
  line-height: inherit;
}
.footer-disclaimer a {
  font-weight: inherit;
  text-decoration: underline;
}

/* Legal Menu --------------------------------- */
.legal-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.6rem;
}
@media (min-width: 600px) {
  .legal-menu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    gap: 0.4rem 1.6rem;
  }
  .legal-menu li:not(:last-child)::after {
    content: "|";
    margin-left: 1.6rem;
  }
}

/* Footer Images ------------------------------ */
.footer-images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.4rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* Footer Copyright --------------------------- */
.footer-copyright {
  margin-top: var(--phw-spacer);
}

/* -------------------------------------------------------------------------------- */
/*	HOME
/* -------------------------------------------------------------------------------- */
/* Hero ---------------------------- */
.hero {
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(10, 10, 10)), color-stop(49%, rgb(10, 10, 10)), color-stop(50%, rgb(3, 3, 3)), to(rgb(3, 3, 3)));
  background: linear-gradient(180deg, rgb(10, 10, 10) 0%, rgb(10, 10, 10) 49%, rgb(3, 3, 3) 50%, rgb(3, 3, 3) 100%);
  min-height: max(70rem, var(--phw-screen-height));
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
}

.hero-bg {
  background-image: url(../img/home-bg.webp);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: clamp(56rem, 140vw, 224rem) auto;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 2240px) {
  .hero-bg {
    background-size: cover;
  }
}

.hero-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  position: relative;
  padding-bottom: calc(var(--phw-header-height) + var(--phw-spacer));
}
@media (min-width: 600px) {
  .hero-inner {
    padding-top: 20rem;
    padding-bottom: calc(var(--phw-header-height) + var(--phw-spacer) + 20rem);
  }
}

.hero-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 10rem;
}

.hero-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: var(--phw-gap) 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transform: translateY(max(-5vw, -4rem));
          transform: translateY(max(-5vw, -4rem));
}

.hero-scroll {
  height: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.hero-scroll .scroll-btn {
  color: inherit;
  -webkit-transition: color var(--phw-trans-speed) var(--phw-trans-ease);
  transition: color var(--phw-trans-speed) var(--phw-trans-ease);
  padding: 1rem;
  border-radius: 0.8rem;
}
.hero-scroll .scroll-btn:hover {
  color: var(--phw-accent-color);
}
.hero-scroll .scroll-btn:focus {
  -webkit-box-shadow: inset 0 0 0 0.2rem var(--phw-accent-color);
          box-shadow: inset 0 0 0 0.2rem var(--phw-accent-color);
  outline: none;
}

@media (min-width: 600px) {
  .hero-logo,
  .hero-scroll {
    display: none;
  }
}

/* Home Intro ---------------------------- */
#home-intro {
  padding-top: var(--phw-gap);
  padding-bottom: var(--phw-spacer-xxxl);
}
#home-intro .home-intro-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4.8rem var(--phw-gutter);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 1180px) {
  #home-intro .home-intro-inner {
    grid-template-columns: 1fr auto;
  }
}
#home-intro .intro-text {
  color: var(--phw-primary-color);
  margin: 0;
}

/* -------------------------------------------------------------------------------- */
/*	PRODUCTS
/* -------------------------------------------------------------------------------- */
/* Product Footer --------------------- */
.product-footer {
  padding: var(--phw-spacer-xxl) 0;
  background: var(--phw-dark-background-color);
}
.product-footer .product-footer-header {
  color: var(--phw-white-color);
}

.product-footer-cards {
  display: block;
  width: 100vw;
  left: calc(50% - 50vw);
  padding-left: var(--phw-gap);
}
@media (min-width: 1300px) {
  .product-footer-cards {
    width: 100%;
    max-width: var(--phw-inner-width-wide);
    left: auto;
    padding: 0;
  }
}
.product-footer-cards .swiper-slide {
  width: min(100%, 33.8rem);
}
@media (min-width: 420px) {
  .product-footer-cards .swiper-slide {
    width: min(90%, 39.9rem);
  }
}
.product-footer-cards .swiper-slide > .card {
  padding-right: var(--phw-spacer);
  min-height: 38rem;
}
@media (min-width: 1300px) {
  .product-footer-cards .swiper-slide > .card {
    padding-right: 0;
  }
}
.product-footer-cards .swiper-slide:last-child > .card {
  padding-right: var(--phw-gap);
}
@media (min-width: 1300px) {
  .product-footer-cards .swiper-slide:last-child > .card {
    padding-right: 0;
  }
}
.product-footer-cards a.card-inner {
  padding-top: var(--phw-spacer-xxl);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color) !important;
}
@media (min-width: 1300px) {
  .product-footer-cards .swiper-button-prev {
    right: calc(var(--swiper-navigation-size) + var(--swiper-navigation-spacing));
    left: auto;
  }
  .product-footer-cards .swiper-button-next {
    right: 0;
    left: auto;
  }
}

/* SMAs ---------------------------- */
.sma-partnerships {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem var(--phw-spacer);
  margin-top: var(--phw-spacer-xxxl);
}
@media (min-width: 1180px) {
  .sma-partnerships {
    grid-template-columns: auto 64rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 1180px) {
  .sma-partnerships .sma-partnerships-intro {
    max-width: 32rem;
  }
  .lang-fr .sma-partnerships .sma-partnerships-intro {
    max-width: 38rem;
  }
}

/* Foreign Exchange ---------------------------- */
.fx-table-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.2rem var(--phw-spacer);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.fx-table {
  margin-top: var(--phw-spacer);
  font-size: clamp(1.4rem, calc(0.4vw + 1.16rem), 1.8rem);
}
.fx-table td:not(:first-child) {
  white-space: nowrap;
}

/* Broad Market Access ---------------------------- */
.template-bma .intro-text {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-weight: bold;
  font-size: var(--phw-h2-font-size);
  line-height: var(--phw-h2-line-height);
  max-width: min(20ch, 100%);
  margin-top: calc(2 * var(--phw-spacer-sm));
}
.template-bma .post-inner {
  margin-top: var(--phw-spacer);
}
.template-bma .bma-content {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: var(--phw-gap);
}

/* Client Portal ---------------------------- */
.portal-gallery {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--phw-spacer);
}
@media (min-width: 782px) {
  .portal-gallery {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.portal-gallery img {
  border-radius: 4.4rem;
  -webkit-box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
          box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
  max-width: min(42rem, 100%);
  margin-left: auto;
  margin-right: auto;
}

.portal-app {
  margin-top: var(--phw-spacer-xxxl);
  display: grid;
  grid-template-columns: 1fr;
  gap: 4.8rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 900px) {
  .portal-app {
    grid-template-columns: 1fr 1fr;
  }
}
.portal-app .portal-app-intro {
  max-width: 56rem;
}
.portal-app .portal-app-links {
  margin-top: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.2rem;
}
.portal-app .portal-app-links a {
  border-radius: 0.4rem;
  overflow: hidden;
  -webkit-box-shadow: 0 0 0.6rem 0.1rem rgba(13, 140, 255, 0);
          box-shadow: 0 0 0.6rem 0.1rem rgba(13, 140, 255, 0);
  -webkit-transition: -webkit-box-shadow var(--phw-glow-speed) var(--phw-trans-ease);
  transition: -webkit-box-shadow var(--phw-glow-speed) var(--phw-trans-ease);
  transition: box-shadow var(--phw-glow-speed) var(--phw-trans-ease);
  transition: box-shadow var(--phw-glow-speed) var(--phw-trans-ease), -webkit-box-shadow var(--phw-glow-speed) var(--phw-trans-ease);
}
.portal-app .portal-app-links a:hover, .portal-app .portal-app-links a:focus {
  -webkit-box-shadow: 0 0 0.6rem 0.1rem rgba(13, 140, 255, 0.8);
          box-shadow: 0 0 0.6rem 0.1rem rgba(13, 140, 255, 0.8);
}
.portal-app .portal-app-links img {
  height: 4rem;
}
.portal-app .portal-app-image img {
  border-radius: 4.4rem;
  -webkit-box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
          box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
}

/* -------------------------------------------------------------------------------- */
/*	OUR DIFFERENCE
/* -------------------------------------------------------------------------------- */
.template-difference .post-inner {
  margin-top: calc(2 * var(--phw-spacer));
}
.template-difference .pills {
  margin-bottom: var(--phw-spacer);
}
.template-difference .pills .pill {
  min-width: min(40vw, 32rem);
  padding-left: 3.6rem;
  padding-right: 3.6rem;
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  background-color: var(--phw-background-color);
  border-color: var(--phw-primary-color);
  color: var(--phw-primary-color);
}

/* -------------------------------------------------------------------------------- */
/*	OUR STORY
/* -------------------------------------------------------------------------------- */
.sections {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--phw-spacer-xxxl);
}
.sections .section {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3.2rem var(--phw-gap);
}
.sections .section:nth-child(even) .section-text {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
@media (min-width: 900px) {
  .sections .section {
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sections .section .section-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.sections .section img {
  border-radius: 4.4rem;
  -webkit-box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
          box-shadow: 0 0 0 0.1rem var(--phw-primary-color);
}

.template-story .intro-text {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-weight: bold;
  font-size: var(--phw-h2-font-size);
  line-height: var(--phw-h2-line-height);
  max-width: min(24ch, 100%);
  margin-top: var(--phw-spacer-xl);
}

/* -------------------------------------------------------------------------------- */
/*	OUR TEAM
/* -------------------------------------------------------------------------------- */
.team-cards {
  grid-template-columns: 1fr;
  gap: var(--phw-spacer-sm);
}
@media (min-width: 420px) {
  .team-cards {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 900px) {
  .team-cards {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.team-cards .team-card a.team-card-inner {
  display: block;
  width: 100%;
  padding: 1rem;
}
.team-cards .team-card a.team-card-inner:hover, .team-cards .team-card a.team-card-inner:focus {
  border-color: var(--phw-primary-color) !important;
}
.team-cards .team-card .card-icon {
  width: 5.4rem;
  height: 5.4rem;
  top: 2rem;
  right: 2rem;
  z-index: 10;
}
.team-cards .team-card .card-content {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.team-cards .team-card .card-content .card-image {
  width: 100%;
  border-radius: 3.6rem;
  overflow: hidden;
  height: 0;
  padding-bottom: 100%;
  position: relative;
}
.team-cards .team-card .card-content .card-image img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transition: -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-ease);
  transition: -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-ease);
  transition: transform var(--phw-trans-speed-slow) var(--phw-trans-ease);
  transition: transform var(--phw-trans-speed-slow) var(--phw-trans-ease), -webkit-transform var(--phw-trans-speed-slow) var(--phw-trans-ease);
}
.team-cards .team-card a.team-card-inner:focus .card-image img,
.team-cards .team-card a.team-card-inner:hover .card-image img {
  -webkit-transform: scale3d(1.075, 1.075, 1.075);
          transform: scale3d(1.075, 1.075, 1.075);
}

.team-card .card-info,
.adp-popup .card-info {
  padding: var(--phw-spacer-xs);
}
.team-card .card-title,
.adp-popup .card-title {
  margin-bottom: 0.6rem;
}
.team-card .card-description p,
.adp-popup .card-description p {
  line-height: inherit;
}

/* -------------------------------------------------------------------------------- */
/*	CONTACT
/* -------------------------------------------------------------------------------- */
@media (min-width: 900px) {
  .template-contact .post-inner {
    margin-top: var(--phw-spacer);
  }
}

.contact-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3.2rem var(--phw-gap);
}
@media (min-width: 900px) {
  .contact-wrapper {
    grid-template-columns: 1fr minmax(48rem, 1fr);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

/* Contact Info ---------------------------- */
.contact-info {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--phw-spacer-md);
}
.contact-info .prefix {
  margin-bottom: 1rem;
}
.contact-info a {
  color: inherit;
  text-decoration: underline;
}
.contact-info a:hover, .contact-info a:focus {
  color: var(--phw-accent-color);
}

/* Contact Form ---------------------------- */
.contact-form .af-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 56rem;
}
.contact-form .af-form:has(.af-success) {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}

/* -------------------------------------------------------------------------------- */
/*	CLIENT RESOURCES
/* -------------------------------------------------------------------------------- */
.template-client-resources .post-inner {
  margin-top: var(--phw-spacer);
}

.resources {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: var(--phw-spacer-sm);
}

.resource-player,
.resource-list {
  padding: 2.4rem;
  border-radius: 3.6rem;
  color: var(--phw-glass-text-color);
  background: var(--phw-glass-background-color);
  backdrop-filter: var(--phw-glass-backdrop-filter);
  -webkit-backdrop-filter: var(--phw-glass-backdrop-filter);
  border: var(--phw-glass-border-width) solid var(--phw-glass-border-color);
  -webkit-box-shadow: var(--phw-glass-box-shadow);
          box-shadow: var(--phw-glass-box-shadow);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.resource-player figure {
  border-radius: 2.8rem;
  overflow: hidden;
}
.resource-player .resource-player-footer {
  margin-top: 2.4rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
}
@media (min-width: 600px) {
  .resource-player .resource-player-footer {
    grid-template-columns: 1fr auto;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.resource-player .resource-player-footer .resource-info {
  padding-left: 0.4rem;
}
.resource-player .resource-player-footer .resource-title {
  margin-bottom: 0.6rem;
}
.resource-player .resource-player-footer .resource-pdf .button {
  width: 100%;
}
.resource-player .resource-player-footer .resource-pdf .button[href=""], .resource-player .resource-player-footer .resource-pdf .button[href="#"], .resource-player .resource-player-footer .resource-pdf .button:not([href]) {
  display: none;
}

.resource-list {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.8rem;
}
@media (min-width: 900px) {
  .resource-list {
    grid-template-columns: 1fr 1fr;
  }
}
.resource-list .resource-list-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8rem;
}
.resource-list .resource-list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.resource-list .resource-list-item .button {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.resource-list .resource-list-item svg {
  margin-left: 0.2rem;
}