@charset "UTF-8";
/*
available fonts:
font-family: "Reddit Sans", sans-serif; (400,500,600,700)
font-family: "Red Hat Display", sans-serif; (400,500,600)
font-family: "Work Sans", sans-serif; (300,400,500,600,700)
*/
* {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Work Sans", sans-serif;
  background-color: #5F002F;
}
/*================================================================
  SITE BASE STYLES
=================================================================*/
/*------------ Base: media restrictions ------------*/
.tablet, .mobile {
  display: none;
}
.desktop {
  display: block;
}
/*------------ Base: fonts ------------*/
/*------ font headers ------*/
h1, h2, h3, h4, h5, h6 {
  color: #000;
  font-family: "Reddit Sans", sans-serif;
}
h1, .h1-like {
  margin: 0 0 18px 0;
  /* font-size: 42px; */
  font-size: 40px;
  font-weight: 500;
  /* line-height: 44px; */
  line-height: 42px;
}
h2, .h2-like {
  margin: 0 0 16px 0;
  font-size: 34px;
  font-weight: 500;
  line-height: 36px;
}
h3, .h3-like {
  margin: 0 0 14px 0;
  /* font-size: 28px; */
  font-size: 26px;
  font-weight: 500;
  /* line-height: 30px; */
  line-height: 28px;
}
h4, .h4-like {
  margin: 0 0 14px 0;
  font-size: 24px;
  font-weight: 500;
  line-height: 26px;
}
h5, .h5-like {
  margin: 0 0 14px 0;
  font-size: 20px;
  font-weight: 500;
  line-height: 22px;
}
/*------ font body ------*/
strong {
  font-weight: 600;
}
a {
  color: #AE1167;
  font-family: "Work Sans", sans-serif;
  /*
  font-size: 22px;
  line-height: 28px;
  */
  font-size: 18px;
  line-height: 24px;
  text-decoration-color: #960058;
  text-underline-offset: 5px;
}
a[href*="//"]:not(.skip-offsite):not([href*="https://mmwconline.org/"]):after {
  content: "";
  /*
  width: 15px;
  height: 15px;
  */
  width: 13px;
  height: 13px;
  margin: 0 0 0 5px;
  background: url('/assets/images/icon_external-link.png') no-repeat center center;
  background-size: cover;
  display: inline-block;
}
p {
  margin: 0 0 20px 0;
  color: #5B5B5B;
  font-family: "Work Sans", sans-serif;
  /*
  font-size: 22px;
  line-height: 28px;
  */
  font-size: 18px;
  line-height: 24px;
  position: relative;
  z-index: 0;
}
p.intro {
  margin: 0 0 50px 0;
  color: #000;
  font-family: "Reddit Sans", sans-serif;
  font-size: 22px;
  font-weight: 500;
  font-style: italic;
  line-height: 33px;
}
p.intro a {
  font-size: 22px;
  font-weight: 500;
  line-height: 33px;
}
p.caption-like {
  color: #5B5B5B;
  font-size: 14px;
  line-height: 16px;
}
ul {
  margin: 0 0 26px 0;
  padding: 0 0 0 22px;
  color: #5B5B5B;
  font-family: "Work Sans", sans-serif;
  /*
  font-size: 22px;
  line-height: 28px;
  */
  font-size: 18px;
  line-height: 24px;
  list-style-type: none;
}
ul li {
  margin: 0 0 10px 0;
  padding: 0;
  position: relative;
}
ul li:before {
  content: "";
  width: 10px;
  height: 10px;
  background-color: #960058;
  border: 1px solid #960058;
  border-radius: 50%;
  display: block;
  position: absolute;
  /* top: 8px; */
  top: 6px;
  left: -22px;
}
ul li ul {
  margin: 10px 0 0 0;
}
ul li ul li:last-of-type {
  margin: 0;
}
ul li ul li:before {
  background-color: transparent;
}
ul li ul li ul li:before {
  background-color: #960058;
}
ol {
  margin: 0 0 26px 0;
  padding: 0 0 0 22px;
  color: #5B5B5B;
  font-family: "Work Sans", sans-serif;
  /*
  font-size: 22px;
  line-height: 28px;
  */
  font-size: 18px;
  line-height: 24px;
}
ol li {
  margin: 0 0 10px 0;
  padding: 0;
  position: relative;
}
ol li::marker {
  color: #960058;
  font-family: "Reddit Sans", sans-serif;
  font-weight: 600;
}
ol li ol {
  margin: 10px 0 0 0;
  list-style: lower-alpha;
}
ol li ol li:last-of-type {
  margin: 0;
}
ol li ol li ol {
  margin: 10px 0 0 0;
  list-style: lower-roman;
}
/*------ base form fields ------*/
form {
  margin: 0 0 70px 0;
}
fieldset {
  margin: 0;
  padding: 0;
  border: none;
}
label {
  margin: 0;
  color: #5B5B5B;
  font-size: 20px;
  font-weight: 500;
  line-height: 24px;
}
input, textarea {
  margin: 0;
  padding: 9px 11px;
  background-color: #F9F9F9;
  border: 1px solid #CACACA;
  color: #000;
  font-family: "Work Sans", sans-serif;
  font-size: 12px;
  font-weight: 300;
  line-height: 16px;
}
input::placeholder, textarea::placeholder {
  opacity: 0.5;
}
/*--- base form fields: page element unique styles ---*/
fieldset .field-row {
  margin: 0 0 18px 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
fieldset .field-row br {
  display: none;
}
fieldset .field-row .field-container {}
fieldset .field-row .field-container label {
  margin: 0 0 10px 0;
  display: block;
}
fieldset .field-row .field-container input {
  width: 100%;
}
/*------ base buttons ------*/
/*--- buttons: primary ---*/
button, a.button-like {
  margin: 0 0 5px 5px;
  padding: 10px 18px;
  /* background: url('/assets/images/button_offset-circle.svg') no-repeat left center; */
  background-color: #960058;
  border: 1px solid #E38EAA;
  border-radius: 100px;
  color: #fff;
  font-family: "Red Hat Display", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: 0.5px;
  text-transform: uppercase;/* ??? */
  text-decoration: none;
  display: inline-block;
  position: relative;
  transition: background-color 0.3s;
}
button:hover, a.button-like:hover {
  background-color: #E38EAA;
}
button:before, a.button-like:before {
  content: "";
  width: 38px;
  height: 38px;
  background-color: #E38EAA;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: calc(50% - 19px);
  left: -5px;
  z-index: -1;
}
/*--- buttons: secondary ---*/
button.secondary, a.button-like.secondary {
  background-color: #5F002F;
  border-color: #E38EAA;
}
button.secondary:hover, a.button-like.secondary:hover {
  background-color: #E38EAA;
}
button.secondary:before, a.button-like.secondary:before {
  background-color: #E38EAA;
}
/*--- buttons: tertiary ---*/
button.tertiary, a.button-like.tertiary {
  background-color: #fff;
  border-color: #EAD8DE;
  color: #000;
  font-weight: 600;
}
button.tertiary:hover, a.button-like.tertiary:hover {
  background-color: #EAD8DE;
}
button.tertiary:before, a.button-like.tertiary:before {
  background-color: #960058;
}
/*------------ Base: share link ------------*/
.share-link {
  display: inline-block;
  position: relative;
}
.share-link .share-clickable-area {
  width: 100%;
  height: 100%;
  /* background-color: rgba(255,0,0,.4); */
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}
.share-link .share-pulldown {
  margin: 0;
  padding: 0;
  /* border: 1px solid #BFBFBF; */
  list-style-type: none;
  list-style-image: none;
  opacity: 0;
  position: absolute;
  top: 100%;
  left: 15px;
  transition: opacity .3s, top .3s;
  pointer-events: none;
}
.share-link.active .share-pulldown {
  opacity: 1;
  top: calc(100% + 5px);
  pointer-events: all;
}
.share-link .share-pulldown li {
  /* margin-bottom: 5px; */
  background-color: #D9D9D9;
  border: 1px solid #fff;
  border-bottom: 1px solid transparent;
  transition: background-color .3s;
}
.share-link .share-pulldown li:last-of-type {
  margin-bottom: 0;
}
.share-link .share-pulldown li:hover {
  background-color: #E0E0E0;
}
.share-link .share-pulldown li a {
  padding: 4px 15px 2px 15px;
  box-sizing: border-box;
  color: #5E5E5C;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.2px;
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.share-link .share-pulldown .share-permalink .share-url {
  opacity: 0;
  position: absolute;
  left: -9999px;
  pointer-events: none;
}
.share-link .share-pulldown .share-permalink i {
  opacity: 0;
}
.share-link .share-pulldown .share-permalink.active i {
  opacity: 1;
}
/*------------ Base: unique line break ------------*/
.mmwc-line-break {
  width: 100%;
  height: 25px;
  margin: 20px 0;
  background: url('/assets/images/icon_moon-line-break.svg') no-repeat center center;
  display: block;
  position: relative;
}
/*------ unique line break: pesudo lines ------*/
/* both pesudo elements will act as a pointed line to go on each side of the line-break element */
.mmwc-line-break:before, .mmwc-line-break:after {
  content: "";
  width: calc(50% - 27px);
  height: 100%;
  background: url('/assets/images/element_line-break-bg.svg') no-repeat center left;
  display: block;
  position: absolute;
  top: 0;
}
/* pesudo line, positioned to the left */
.mmwc-line-break:before {
  transform: scaleX(-1);
  left: 0;
}
/* pesudo line, positioned to the right */
.mmwc-line-break:after {
  right: 0;
}
/*------ unique line break: fake variant edit ------*/
.mmwc-line-break.fake {
  margin: 5px 0;
  opacity: 0;
  pointer-events: none;
}
/*------------ Base: viewport-load ------------*/
.viewport-load {
  opacity: 0;
  transition: opacity .3s .1s;
}
.viewport-load.element-initialized {
  opacity: 1;
}
/*------------ Base: image states ------------*/
/*------ image float statuses: these are decided in the page editor ------*/
.img_right_25, .img_right_25_rounded {
  float: right;
  width: 25%;
  margin: 1em 0 1.5em .75em;
  clear: right;
}
.img_right_50, .img_right_50_rounded {
  float: right;
  width: 50%;
  margin: 1.75em 0 .75em 1.7em;
  clear: right;
}
.img_left_25, .img_left_25_rounded {
  float: left;
  width: 25%;
  margin: 1em .75em 1.5em 0;
  clear: left;
}
.img_left_50, .img_left_50_rounded {
  float: left;
  width: 50%;
  margin: 1.75em 1.7em .75em 0;
  clear: left;
}
.img_full_width, .img_full_width_rounded {
  width: 100%;
  float: none;
  margin: .5em auto 1em;
}
img.img_right_25_rounded, img.img_right_50_rounded, img.img_left_25_rounded, img.img_left_50_rounded, img.img_full_width_rounded {
  border-radius: 50%;
}
figure.img_right_25_rounded img, figure.img_right_50_rounded img, figure.img_left_25_rounded img, figure.img_left_50_rounded img, figure.img_full_width_rounded img {
  border-radius: 50%;
}
figure {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
figure img {
  max-width: 100%;
}
figcaption {
  margin: 0;
  padding: 0;
  color: #5B5B5B;
  /*
  font-size: 16px;
  line-height: 18px;
  */
  font-size: 14px;
  line-height: 16px;
}
figure figcaption {
  margin: 12px 0 0 0;
}
/*------ image states: default-state aka; background before image is loaded ------*/
.active-state {
  background-color: #960058;
}
/*------ image states: default-state aka; placeholder image ------*/
.default-state {
  background: url('/assets/images/icon_mmwc-logo.png') no-repeat center center;
  background-color: #FFF7ED;
}
/*------------ Base: table styles ------------*/
table {
  max-width: 100%;
  margin: 3em 0;
  border: none;
  border-collapse: collapse;
}
table caption {
  margin: 0 0 17px 0;
  font-family: "Reddit Sans", sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 26px;
}
table tbody {
  border: none;
}
table tbody tr {}
table tbody tr td {
  padding: 9px 13px;
  border: 0.5px solid #5B5B5B;
  color: #5B5B5B;
  /*
  font-size: 20px;
  line-height: 22px;
  */
  font-size: 18px;
  line-height: 20px;
}
/*------------ Base: pullquote styles ------------*/
.pullquote {
  width: 100%;
  max-width: 100%;
  margin: 50px 0 70px 0;
  padding: 73px 76px 66px 100px;
  background: url('/assets/images/icon_quote.png') no-repeat #F6EEF1 51px 61px;
  background-size: 39px;
  color: #960058;
  font-family: "Reddit Sans", sans-serif;
  font-size: 24px;
  font-style: italic;
  line-height: 31px;
  display: block;
}
/*------ pullquote: secondary edits ------*/
.pullquote.secondary {
  background-image: url('/assets/images/icon_quote-secondary.png');
  background-color: #FFF7ED;
  color: #5F002F;
}
/* (!) overwrite any "base styles" for this asset */
.pullquote br {
  display: none;
}
/*------ pullquote: pullquote-author ------*/
.pullquote .pullquote-author {
  margin: 16px 0 0 0;
  padding: 0 0 0 55px;
  color: #000;
  font-family: "Work Sans", sans-serif;
  font-size: 22px;
  font-weight: 500;
  font-style: initial;
  line-height: 28px;
  display: block;
  position: relative;
}
/*--- pullquote-author: pesudo line ---*/
.pullquote .pullquote-author:before {
  content: "";
  width: 45px;
  height: 5px;
  background-color: #960058;
  display: block;
  position: absolute;
  top: calc(50% - (5px / 2));
  left: 0;
  pointer-events: none;
}
/*--- pullquote-author > pesudo line: secondary edits ---*/
.pullquote.secondary .pullquote-author:before {
  background-color: #5F002F;
}
.pullquote .pullquote-author-title {
  margin: 8px 0 0 0;
  color: #585858;
  font-size: 14px;
  font-weight: 600;
  font-style: initial;
  line-height: 16px;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
}


/*================================================================
  HEADER STYLES
=================================================================*/
header {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 28px 20px 12px 27px;
  background-color: #FCFCFC;
  /* background-color: rgba(255,0,0,0.25); */
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 99;
}
/* update the base styles, to avoid bloating the header styles */
header a {
  color: #000;
  font-family: "Red Hat Display", sans-serif;
  text-decoration: none;
  display: block;
}
header ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  color: #000;
  font-family: "Red Hat Display", sans-serif;
}
header ul li {
  margin: 0;
}
header ul li:before {
  display: none;
}
header button, header a.button-like {
  margin: 0 0 0 5px;
}
/*------------ header: skip button ------------*/
header a.button-like.skip {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 5px;
  left: 5px;
  transition: opacity 0.3s, background-color 0.3s;
}
header a.button-like.skip:focus {
  opacity: 1;
}
/*------------ header: header-logo ------------*/
header a.header-logo {
  position: relative;
  z-index: 5;
}
/*------------ header: navigations-handle ------------*/
header .header-navigations-handle {
  width: 35px;
  position: relative;
  z-index: 5;
}
/*------ navigations-handle: line ------*/
header .header-navigations-handle .line {
  width: 100%;
  height: 2px;
  margin-bottom: 9px;
  background-color: #5F002F;
  display: block;
  transition: opacity .2s ease-out, transform .3s ease-out;
}
header .header-navigations-handle .line:last-of-type {
  margin-bottom: 0;
}
/*--- line: show-navigation edits ---*/
header.show-navigation .header-navigations-handle .line {
  margin-bottom: 0;
  position: absolute;
  top: -1px;
}
header.show-navigation .header-navigations-handle .line:first-of-type {
  transform: rotate(45deg);
}
header.show-navigation .header-navigations-handle .line:nth-of-type(2) {
  transform: rotate(-45deg);
}
header.show-navigation .header-navigations-handle .line:last-of-type {
  opacity: 0;
}
/*------------ header: wrapper ------------*/
header .header-wrapper {}
/*------ header: navigations ------*/
header .header-navigations {}
/*--- navigations: utility region ---*/
header .header-navigations .utility-region {
  margin: 0 0 28px 0;
  /* background-color: rgba(255,0,0,0.5); */
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
/*- utility region: navigation -*/
header .header-navigations .utility-region .utility-navigation {
  /* margin-right: 1.8em; */
  margin-right: 1.4em;
}
header .header-navigations .utility-region .utility-navigation ul {
  display: flex;
}
header .header-navigations .utility-region .utility-navigation ul li {
  /* margin-right: 1.8em; */
  margin-right: .5em;
  display: flex;
  align-items: center;
  justify-content: center;
}
header .header-navigations .utility-region .utility-navigation ul li:last-of-type {
  margin-right: 0;
}
header .header-navigations .utility-region .utility-navigation ul li a.item-link {
  padding: 7px 10px;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.5px;
  position: relative;
  z-index: 5;
  /* background-color: rgba(255,0,0,0.5); */
}
header .header-navigations .utility-region .utility-navigation ul li .item-icon {
  top: calc(50% - 18px);
  left: 8px;
}
header .header-navigations .utility-region .utility-navigation ul li a.item-arrow {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  pointer-events: none;

  /* background-color: rgba(0,0,255,0.5); */
}
/*- utility region: socials-list -*/
header .socials .socials-list {
  margin-right: 1em;
  display: flex;
  align-items: center;
}
header .socials .socials-list li {
  margin-right: 0.375em;
}
header .socials .socials-list li:last-of-type {
  margin-right: 0;
}
header .socials .socials-list li a {
  opacity: 0.6;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s;
}
header .socials .socials-list li a[href*="//"]:not(.skip-offsite):not([href*="https://mmwconline.org/"]):after {
  display: none;
}
header .socials .socials-list li a:hover {
  opacity: 1;
}
/*--- navigations: site-search ---*/
header .site-search {
  position: relative;
  z-index: 99;
}
header .site-search .top-search-input {
  max-width: 0;
  height: 31px;
  border-radius: 15px;
  position: absolute;
  top: 0;
  right: 0;
  transition: max-width .3s, left .3s .1s;
  overflow: hidden;

  /* display: none; */
}
header .site-search .top-search-input.show-search {
  overflow: initial;
  transition: max-width .3s, left .3s;
}
/* this pesudo element acts as a spinner for when the user doing a site search */
header .site-search .top-search-input:before {
  content: "";
  width: calc(31px - 2px);
  height: calc(31px - 2px);
  background-color: transparent;
  border: 1px solid #C0C0C0;
  border-bottom-color: #fff;
  border-radius: 50%;
  opacity: 0;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  transform-origin: 50% 50%;
  transition: opacity;
  transition-duration: 0s;
  animation: search-spinner .8s infinite linear;
  pointer-events: none;
}
header .site-search .top-search-input label {
  text-indent: -9999px;
  display: inline-block;
  position: absolute;
}
header .site-search .top-search-input form {
  height: 100%;
  position: relative;
  z-index: 5;
}
/*- site-search: input pesudo circle -*/
header .site-search .top-search-input form:before {
  content: "";
  width: 31px;
  height: 31px;
  background-color: #EAD8DE;
  border-radius: 50%;
  opacity: 0;
  position: absolute;
  left: -504px;
  z-index: 1;
  transform: translateX(12px);
  transition: opacity .2s, transform .2s;
}
header .site-search .top-search-input.show-search form:before {
  opacity: 1;
  transform: translateX(0);
  transition: opacity .3s .05s, transform .3s .05s;
}
header .site-search .top-search-input input.onsite-search-input {
  width: 500px;
  height: 100%;
  padding: 6px calc(31px + 8px) 4px 15px;
  background-color: #fff;
  border: 1px solid #EAD8DE;
  border-radius: 25px;
  opacity: 0;
  font-family: "Red Hat Display", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 15px;
  position: absolute;
  left: -500px;
  z-index: 5;
  transition: opacity .3s;
}
header .site-search input.onsite-search-input:focus {/* focus edits */
  /* border-color: #E38EAA; */
  outline: transparent;
}
header .site-search .top-search-input.show-search input.onsite-search-input {/* show-search edits */
  opacity: 1;
}
/*- site-search: search-results -*/
header .site-search .top-search-input .search-results {
  width: 500px;
  min-height: 75px;
  margin-top: -17px;
  padding: 0;
  background-color: #fff;
  border: 2px solid #EAD8DE;
  opacity: 0;
  box-shadow: 0 1px 5px -1px rgba(0,0,0,0.1);
  position: absolute;
  top: 100%;
  left: -500px;
  z-index: 1;
  transition: padding .3s, opacity .3s;
  pointer-events: none;
}
/*
header .site-search .top-search-input .search-results:before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #003057;
  opacity: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  pointer-events: none;
  transition: opacity .3s;
}
*/
@keyframes search-spinner {
  0%   {transform: rotate(0deg);}
  50%  {transform: rotate(180deg);}
  100% {transform: rotate(360deg);}
}
header .site-search .top-search-input .search-results .h5-like {
  margin: 0 0 10px 0;
  text-transform: capitalize;
  display: block;
}
header .site-search .top-search-input .search-results .search-bar-item {
  margin: 0 0 5px 0;
  color: #5B5B5B;
  font-size: 14px;
  line-height: 16px;
  text-decoration: underline;
  display: inline-block;
}
header .site-search .top-search-input .search-results .meta-info,
header .site-search .top-search-input .search-results .full-results {
  font-size: 12px;
  font-weight: 300;
  line-height: 14px;
  display: block;
}
header .site-search .top-search-input .search-results .row {
  padding: 0 10px;
}
header .site-search .top-search-input .search-results .row .result {
  margin-bottom: 10px;
}
header .site-search .top-search-input .search-results .row .result:last-of-type {
  margin-bottom: 20px;
}
header .site-search .top-search-input .search-results .full-search-results {
  width: 100%;
  padding: 0 10px;
  opacity: 1;
  /* background-color: #003057; */
  position: relative;
  z-index: 5;
  transition: opacity .3s;
}
header .site-search .top-search-input.blur-results .search-results .full-search-results {
  opacity: .4;
}
header .site-search .top-search-input .search-results .result-col {
  opacity: 1;
  transition: opacity .3s;
}
header .site-search .top-search-input.blur-results .search-results .result-col {
  opacity: 0.4;
}
header .site-search .top-search-input .search-results .direct-link .search-bar-item {
  display: block;
  text-decoration: none;
}
/*- site-search: button -*/
header .site-search button {
  width: 30px;
  height: 30px;
  padding: 0;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #C0C0C0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  cursor: pointer;
}
header .site-search button:hover,
header .site-search button:focus {
  background-color: rgba(192,192,192,0.5);
}
header .site-search button:before {
  display: none;
}
/* site-search button: show-search edits */
header .site-search button.show-search {
  background-color: transparent;
  border-color: transparent;
}
header .site-search button.show-search:hover,
header .site-search button.show-search:focus {
  background-color: transparent;
}
header .site-search button.show-search svg.icon-close {
  display: block;
}
header .site-search button svg.icon-close {
  display: none;
}
header .site-search button.show-search svg {
  display: none;
}
header .site-search button.show-search svg.icon-close {
  display: block;
}
/* searching edits */
header .site-search .top-search-input.searching:before {
  opacity: 1;
  transition-duration: .3s;
}
/* show-results edits */
header .site-search .top-search-input.show-results:before {
  opacity: 0;
}
header .site-search .top-search-input.show-results .search-results {
  /* padding: 25px 10px 10px 10px; */
  padding: 25px 0 10px 0;
  opacity: 1;
  pointer-events: all;
}
/* blur-results edits */
header .site-search .top-search-input.blur-results:before {
  opacity: 1;
  transition-duration: .3s;
}
header .site-search .top-search-input.blur-results .search-results:before {
  opacity: 0.6;
}
/*- site-search: direct-link -*/
header .site-search .top-search-input .search-results .direct-link {
  width: 100%;
  margin: 0 0 10px 0;
  padding: 5px 10px;
  background-color: var(--theme-color-4);
}
header .site-search .top-search-input .search-results .direct-link .h4-like {
  margin: 0;
  color: var(--font-secondary-color);
  display: inline-block;
}

/*--- navigations: main ---*/
header .header-navigations .main-navigation {
  /* background-color: rgba(255,0,0,0.25); */
}
header .header-navigations .main-navigation ul {
  display: flex;
  align-items: center;
}
header .header-navigations .main-navigation ul li {
  /* margin-right: 1.8em; */
  margin-right: 1em;
}
header .header-navigations .main-navigation ul li:last-of-type {
  margin-right: 0;
}
header .header-navigations .main-navigation ul li a.item-link {
  padding: 4px 9px;
}
header .header-navigations .main-navigation ul li a.item-link .item-subheader {
  font-size: 12px;
  font-weight: 500;
  line-height: 10px;
  letter-spacing: 0.75px;
  text-transform: uppercase;
  display: block;
}
header .header-navigations .main-navigation ul li a.item-link .item-name {
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  display: block;
}
header .header-navigations .main-navigation ul li a.item-link.donate .item-name {
  padding: 5px;
  font-size: 14px;
}
header .header-navigations .main-navigation ul li .item-arrow {
  display: none;/* TODO: bring this arrow back for tablet/mobile */
}
/*--- navigations: dropdowns ---*/
/*- dropdowns: item-icon pesudo moon icon -*/
header .header-navigations nav ul li.has-children a.item-link {
  position: relative;
  z-index: 5;
}
header .header-navigations nav ul li .item-icon {
  width: 36px;
  height: 36px;
  display: block;
  position: absolute;
  top: calc(50% - 20px);
  left: 0;
  z-index: 1;
  pointer-events: none;
}
/* this pesudo element acts as a moon icon, by having two circles (:before and :after) and having one circle cover part of the other forming a moon-like icon  */
header .header-navigations nav ul li .item-icon:before, header .header-navigations nav ul li .item-icon:after {
  content: "";
  width: 36px;
  height: 36px;
  background-color: transparent;
  border-radius: 50%;
  display: block;
  position: absolute;
  transition: opacity .2s, transform .2s;
}
/* this :before pesudo circle is positioned behind the :after pesudo circle (appearing as a moon-like icon) */
header .header-navigations nav ul li .item-icon:before {
  opacity: 0;
  background-color: #EAD8DE;
  left: -12px;
  transform: translateX(-12px);
}
header .header-navigations nav ul li.has-children:hover .item-icon:before,
header .header-navigations nav ul li.has-children:focus-within .item-icon:before,
header .header-navigations nav ul li.active .item-icon:before {
  opacity: 1;
  transform: translateX(0);
  transition: opacity .3s, transform .3s;
}
/* this :after pesudo circle is positioned above the :before pesudo circle hiding part of said element */
header .header-navigations nav ul li .item-icon:after {
  background-color: #FCFCFC;
  left: -8px;
  transform: translateX(-15px);
}
header .header-navigations nav ul li.has-children:hover .item-icon:after,
header .header-navigations nav ul li.has-children:focus-within .item-icon:after,
header .header-navigations nav ul li.active .item-icon:after {
  opacity: 1;
  transform: translateX(0);
  transition: opacity .3s, transform .4s;
}
/*- dropdowns: dropdown element -*/
header .header-navigations nav ul li .item-dropdown {
  margin: 0 -70px;
  background-color: #fff;
  border: 2px solid #EAD8DE;
  opacity: 0;
  position: absolute;
  top: calc(100% + 19px);
  left: 39px;
  z-index: 99;
  transform: translateY(-30px);
  pointer-events: none;
  transition: opacity .2s, transform .2s;
}
header .header-navigations nav ul li:hover .item-dropdown,
header .header-navigations nav ul li:focus-within .item-dropdown {/* reveal on hover or focus-within */
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
  transition: opacity .3s .1s, transform .3s;
}
/* dropdown element: pesudo hover-area */
/* - this pesudo element acts as a extension of the dropdown, meaning the user doesn't lose the hover-state when navigating to the dropdown */
header .header-navigations nav ul li .item-dropdown:before {
  content: "";
  width: calc(100% + 4px);
  height: 21px;
  display: block;
  position: absolute;
  top: -21px;
  left: -2px;
}
/* overwrite unordered-list styles from the other menus */
header .header-navigations .utility-region .utility-navigation ul li .item-dropdown ul,
header .header-navigations .main-navigation ul li .item-dropdown ul {
  margin: 0;
  padding: 12px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
/* dropdown element: pesudo arrows */
/* - these pesudo elements are used to create an arrow with a "border" that rest at the top of the dropdown */
header .header-navigations nav ul li .item-dropdown ul:before, header .header-navigations nav ul li .item-dropdown ul:after {
  content: "";
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-bottom: 14px solid transparent;
  display: block;
  position: absolute;
  top: -14px;
  left: 17px;
  transform: scaleY(0);
  transform-origin: 50% 100%;
  transition: transform .2s;
}
header .header-navigations nav ul li:hover .item-dropdown ul:before,
header .header-navigations nav ul li:focus-within .item-dropdown ul:before,
header .header-navigations nav ul li:hover .item-dropdown ul:after,
header .header-navigations nav ul li:focus-within .item-dropdown ul:after {
  transform: scaleY(1);
  transition: transform .3s;
}
/* the :before pesudo arrow acts as "border" for the :after arrow */
header .header-navigations nav ul li .item-dropdown ul:before {
  border-bottom-color: #EAD8DE;
}
/* the :after pesudo arrow is positioned above and lower than the :before arrow, to give the look of an arrow with a 2px border */
header .header-navigations nav ul li .item-dropdown ul:after {
  border-bottom-color: #fff;
  top: -12px;
}
/* overwrite list-item styles from the other menus */
header .header-navigations .utility-region .utility-navigation ul li .item-dropdown ul li,
header .header-navigations .main-navigation ul li .item-dropdown ul li {
  width: 100%;
  margin: 0;
  padding: 0;
  display: block;
}
header .header-navigations nav ul li .item-dropdown ul li a {
  padding: 2px 21px;
  opacity: 0.7;
  font-family: "Work Sans", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 19px;
  transition: opacity .3s;
}
header .header-navigations nav ul li .item-dropdown ul li a:hover {/* hover-state: for nav dropdown links */
  opacity: 1;
}


/*================================================================
  MAIN CONTENT STYLES
=================================================================*/
/*------------ main content: structure assets ------------*/
.main-content {
  width: 100%;
  max-width: 1440px;
  /* min-height: 68vh; */
  margin: 0 auto;
  padding: 0 0 50px 0;
  background-color: #FCFCFC;
}
/*------ structure asset: page-banner  ------*/
.main-content .page-banner {
  width: calc(100% + 30px);
  /* height: 456px; */
  margin: 0 0 64px 0;
  padding: 17px 0 0 0;
  /* background-color: #FFF7ED; */
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  left: -15px;
}
/* (!) overwrite any "base styles" for the banner */
.main-content .page-banner h1 {
  margin: 0;
  color: #fff;
  font-size: 63px;
  line-height: 66px;
}
/*
.main-content .page-banner .banner-media {
  width: calc(100% - 184px);
  height: 100%;
  border-radius: 300px 0 0 300px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
*/
/*--- page-banner: media  ---*/
.main-content .page-banner .banner-media {
  width: 100%;
  max-width: 1170px;
  height: 440px;
  border-radius: 300px 0 0 300px;
  display: block;
  overflow: hidden;
}
.main-content .page-banner .banner-media .image-like {
  width: 100%;
  height: 100%;
  background: transparent no-repeat center center;
  background-size: cover;
  display: block;
}
/*- media: active-state edits  -*/
.main-content .page-banner .banner-media.active-state {
  background-color: #5F002F;
}
.main-content .page-banner .banner-media img {
  display: block;
}
.main-content .page-banner .banner-header {
  max-width: 60%;
  border-radius: 0 300px 300px 0;
  padding: 33px 50px 33px 39px;
  background-color: #960058;
  position: absolute;
  left: 0;
  z-index: 5;
}
.main-content .page-banner .banner-header .subheader {
  padding-left: 2px;
  color: #fff;
  font-family: "Reddit Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  display: block;
  /* background-color: rgba(0,255,0,0.2); */
}
/*
.main-content .page-banner .banner-header h1 {
  background-color: rgba(0,0,255,0.2);
}
*/
/*------ structure asset: page-banner (basic version)  ------*/
.main-content .basic-page-banner {
  width: calc(100% - 73px);
  max-width: 1222px;
  margin: 0 0 45px 0;
  /* padding: 145px 0 0 0; */
  padding: 163px 0 0 0;
  position: relative;
  left: -15px;
}
/* (!) overwrite any "base styles" for the banner */
.main-content .basic-page-banner h1 {
  margin: 0;
  color: #fff;
  /*
  font-size: 63px;
  line-height: 66px;
  */
  font-size: 59px;
  line-height: 62px;
}
.main-content .basic-page-banner .banner-header {
  width: 100%;
  padding: 42px 70px;
  padding-left: calc(15px + 260px + 51px);/* 15(offset) + 260(left-sidebar width) + 51(space in-between left-sidebar and body) */
  background-color: #960058;
  border-radius: 0 300px 300px 0;
}
.main-content .basic-page-banner .banner-header .subheader {
  color: #fff;
  font-family: "Reddit Sans", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  display: block;
  /* background-color: rgba(0,255,0,0.2); */
}
/*- page-content > body: xl-body(unique class) edits -*/
.main-content.xl-body .basic-page-banner .banner-header {
  padding-left: calc(260px + 57px);/* 15(offset) + 260(left-sidebar width) + 61 - 4(space in-between left-sidebar and body) */
  padding-left: calc(260px + 76px);/* 15(offset) + 260(left-sidebar width) + 61 - 4(space in-between left-sidebar and body) */
}

/*------ structure asset: page-content ------*/
.main-content .page-content {
  width: 100%;
  display: flex;
  /* background-color: rgba(0,0,0,0.1); */
}


/*================================================================
  LEFT SIDEBAR STYLES
=================================================================*/
.left-sidebar {
  width: 260px;
  /* padding: 390px 0 0 47px; */
  /* padding: 232px 0 0 47px; */
  padding: 0 0 0 47px;
  position: relative;
  overflow: hidden;
  /* background-color: rgba(255,0,0,0.25); */
}
/*- left-sidebar: context-navigation -*/
.left-sidebar .context-navigation {
  width: 100%;
  max-width: 146px;
  min-height: 665px;
  padding: 232px 0 0 0;
  position: relative;
  top: 0;
  left: auto;
}
.left-sidebar .context-navigation.being-moved {
  position: fixed;
}
.left-sidebar .context-navigation.move-to-bottom {
  position: absolute;
  top: auto;
  bottom: 209px;
}
/* context-navigation: pesudo circle background */
.left-sidebar .context-navigation:before, .left-sidebar .context-navigation:after {
  content: "";
  width: 665px;
  height: 665px;
  display: block;
  position: absolute;
  top: -8px;
  pointer-events: none;
}
.left-sidebar .context-navigation:before {
  background-color: #FFF7ED;
  border-radius: 50%;
  /* top: -240px; *//* <- when the context navigation had no padding */
  left: -452px;
  z-index: 1;
}
.left-sidebar .context-navigation:after {
  background-color: #5F002F;
  left: calc(-100% + -566px);
  z-index: 5;
}
/* (!) overwrite any "base styles" for the navigation */
.left-sidebar .context-navigation a {
  padding: 5px 0;
  color: #000;
  font-family: "Reddit Sans", sans-serif;
  text-decoration: none;
  display: block;
  position: relative;
}
.left-sidebar .context-navigation a:after {
  content: "";
  width: 100%;
  height: 3px;
  background: url('/assets/images/element_line-break-bg.svg') no-repeat left center;
  background-size: 100%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition: transform .2s;
}
.left-sidebar .context-navigation ul {
  margin: 0;
  padding: 0;
  color: #000;
}
.left-sidebar .context-navigation ul li {
  margin: 0;
}
.left-sidebar .context-navigation ul li:before {
  display: none;
}
/* context-navigation: primary-list */
.left-sidebar .context-navigation .primary-list {
  position: relative;
  z-index: 5;
}
.left-sidebar .context-navigation .primary-list .primary-item {}
.left-sidebar .context-navigation .primary-list .primary-item a.item-link {
  /* font-size: 20px; */
  font-size: 18px;
  font-weight: 500;
  /* line-height: 20px; */
  line-height: 18px;
}
/* context-navigation > primary-list > item-link: active/hover+focus edits */
.left-sidebar .context-navigation .primary-list .primary-item.active a.item-link {
  font-weight: 600;
}
.left-sidebar .context-navigation .primary-list .primary-item.active a.item-link:after,/* link relates to active page */
.left-sidebar .context-navigation .primary-list .primary-item a.item-link:hover:after,/* hover-state */
.left-sidebar .context-navigation .primary-list .primary-item a.item-link:focus:after {/* focused-state */
  transform: scaleX(1);
  transition: transform .3s;
}
/* context-navigation > primary-list: secondary-list */
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list {
  margin: 5px 0 0 0;
}
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item {
  margin: 0 0 5px 0;
}
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item:last-of-type {
  margin: 0;
}
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item a {
  /* font-size: 17px; */
  font-size: 15px;
  font-weight: 400;
  /* line-height: 19px; */
  line-height: 17px;
}
/* context-navigation > primary-list > secondary-list > link: active/hover+focus edits */
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item.active a {
  font-weight: 500;
}
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item.active a:after,/* link relates to active page */
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item a:hover:after,/* hover-state */
.left-sidebar .context-navigation .primary-list .primary-item .secondary-list .secondary-item a:focus:after {/* focused-state */
  transform: scaleX(1);
  transition: transform .3s;
}

/*================================================================
  PAGE BODY STYLES
=================================================================*/
.main-content .page-content .body {
  width: calc(100% - (260px));/* 260(left-sidebar size) */
  max-width: 640px;
  min-height: 50vh;
  /* padding-left: 8.85vw; */
  padding-left: 51px;
  box-sizing: initial;
  /* background-color: rgba(0,255,0,0.25); */
}
/*------------ page body: tertiary edits ------------*/
.main-content.tertiary .page-content .body {
  width: calc(100% - (260px + 272px));/* 260(left-sidebar size) + 272(right-sidebar size) */
  padding-top: 20px;
}
/*------------ page body: home(unique class) edits ------------*/
.main-content.home .page-content .body {
  width: 100%;
  max-width: none;
  padding-left: 0;
}
/*------------ page body: xl-body(unique class) edits ------------*/
.main-content.xl-body .page-content .body {
  width: calc(100% - 260px);/* 260(left-sidebar size) */
  max-width: 813px;
  padding-left: 61px;
  /* padding-left: 42px; */
}
/*------------ page body: full-body(unique class) edits ------------*/
.main-content.full-body .page-content .body {
  width: 100%;/* 260(left-sidebar size) */
  max-width: none;
  padding-left: 61px;
  padding-right: 61px;
  /* padding-left: 42px; */
}
/*------------ page body: bs_editable ------------*/
.main-content .page-content bs_editable {}
.main-content .page-content bs_editable img {
  max-width: 100%;
  height: auto;
}


/*================================================================
  RIGHT SIDEBAR STYLES
=================================================================*/
.right-sidebar {
  width: 272px;
  margin-left: auto;
  overflow: hidden;
  /* background-color: rgba(0,0,255,0.25); */
}
/*------------ right-sidebar: sidebar-block ------------*/
.right-sidebar .sidebar-block {
  margin-bottom: 100px;
  /* background-color: rgba(0,0,255,0.25); */
}
.right-sidebar .sidebar-block:last-of-type {
  margin-bottom: 0;
}
/*------------ right-sidebar: media-block ------------*/
.right-sidebar .media-block {
  width: calc(100% + 28px);
}
.right-sidebar .media-block .media {
  width: 300px;
  height: 300px;
  max-width: 100%;
  border-radius: 50%;
  overflow: hidden;
}
/*------ media-block: image-like ------*/
.right-sidebar .media-block .media .image-like {
  width: 100%;
  height: 100%;
  background: transparent no-repeat center center;
  background-size: cover;
  display: block;
}
/*------------ right-sidebar: text-block ------------*/
.right-sidebar .text-block {
  max-width: 100%;
  padding-right: 30px;
}
.right-sidebar .text-block h5 {
  margin: 0;
}
.right-sidebar .text-block p {
  margin: 8px 0 0 0;
  font-size: 16px;
  line-height: 20px;
}
.right-sidebar .text-block a.button-like {
  margin-top: 10px;
}
.right-sidebar .text-block img {
  max-width: 100%;
	margin-bottom: 5px;
	display: block;
}

/*================================================================
  PAGE ELEMENT STYLES
=================================================================*/
/*------------ Page Element: accordion ------------*/
.acc-container {
  margin: 45px 0;
}
/* (!) overwrite any "base styles" for this page element */
.acc-container p {
  margin: 0;
  font-size: 16px;
  line-height: 18px;
}
.acc-container input {
  display: none;
}
/*------ accordion: content area (div) ------*/
.acc-container div {
  margin-bottom: 12px;
  border: 1px solid #CACACA;
  background-color: transparent;
  transition: opacity .3s;
}
.acc-container div:last-of-type {
  margin-bottom: 0;
}
/*--- content area (div): hover edits ---*/
.acc-container div:hover {
  opacity: 1;
}
/*--- content area (div): :checked edits ---*/
.acc-container input:checked + div {
  opacity: 1;
}
/*--- content area (div): label ---*/
.acc-container label {
  margin: 0;
  padding: 12px 15px;
  padding-right: 42px;
  font-size: 22px;
  font-weight: 600;
  line-height: 28px;
  display: block;
  position: relative;
  cursor: pointer;
}
/*- label: hover edits -*/
.acc-container label:hover {
  opacity: 1;
}
/*- label: :checked edits -*/
.acc-container input:checked + label {
  opacity: 1;
}
/*- label: pesudo elements - shared styles -*/
.acc-container label:before, .acc-container label:after {
  content: "";
  width: 24px;
  height: 24px;
  display: block;
  position: absolute;
  top: calc(50% - 12px);
}
/* label pesudo elements: this pesudo poses as a dropdown arrow that is positioned to the right of the accordion element */
.acc-container label:before {
  background-image: url("/assets/images/icon_caret-up.png");
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: center;
  top: calc(50% - 11px);
  right: 15px;
  transform: scaleY(-1);
  z-index: 5;
}
.acc-container input:checked + label:before {/* this should rotate the arrow icon for the accordion element */
  top: calc(50% - 13px);
  transform: scaleY(1);
}
/* label pesudo elements: this pesudo poses as a background circle for the pesudo arrow */
.acc-container label:after {
  content: "";
  border-radius: 50%;
  background-color: #960058;
  right: 15px;
  z-index: 1;
}
.acc-container input:checked + label:after {
  content: "";
  top: calc(50% - 12px);
  right: 15px;
}
/*--- content area (div): article (this hows the content of the accordion element) ---*/
.acc-container article {
  height: 0;
  padding: 0 15px;
  border: none;
  position: relative;
  transition: padding .3s;
  overflow: hidden;
}
/*- article: :checked edits -*/
.acc-container input:checked ~ article {
  height: auto;
  padding: 9px 15px 15px 15px;
}
/*- article: pesudo line element -*/
/* this pesudo element acts as a line that is positioned above the accordion's content, thqt grows in when the content is shown via the :checked state */
.acc-container article:before {
  content: "";
  width: calc(100% - (15px * 2));
  height: 1px;
  background-color: #CACACA;
  display: block;
  position: absolute;
  top: 0;
  left: 15px;
  transform: scaleX(0);
  transform-origin: 50% 50%;
  transition: transform .2s;
}
/* article pesudo line element: :checked edits */
.acc-container input:checked ~ article:before {
  transform: scaleX(1);
  transition: transform .3s;
}
/*------------ Page Element: Adaptive Column Grid (.wysiwygs-accross) ------------*/
.wysiwygs-accross {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
/* (!) overwrite any "base styles" for this page element */
.wysiwygs-accross h3 {
  margin: 0 0 8px 0;
}
.wysiwygs-accross p {
  margin: 0;
}
.wysiwygs-accross .wysiwygs {
  width: 100%;
  display: flex;
  column-gap: 20px;
  row-gap: 35px;
  flex-wrap: wrap;
}
.wysiwygs-accross .wysiwygs .wysiwyg {
  margin: 0 0 34px 0;
  flex: 0 1 auto;
  box-sizing: border-box;
  overflow: hidden;
}
/*------------ Page Element: Alternating Images & Text (.alternating-image-plus-text-block) ------------*/
.alternate-image-text {
  width: 100%;
  margin: 0 0 70px 0;
}
/*------ Alternating Images & Text: content container ------*/
.alternate-image-text .alternating-image-plus-text-block {
  display: flex;
  flex-flow: row-reverse;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 25px;
}
/*--- content container: circle-version edits ---*/
.alternate-image-text.circle-version .alternating-image-plus-text-block {
  margin-bottom: 0;
}
.alternate-image-text .alternating-image-plus-text-block:last-of-type {
  margin-bottom: 0;
}
/*--- content container: left-alignment edits ---*/
.alternate-image-text .alternating-image-plus-text-block.left-alignment {
  flex-flow: row;
}
/*- content container: content -*/
.alternate-image-text .alternating-image-plus-text-block .block-content {
  width: calc(100% - 350px);
  align-self: center;
}
/* content: circle-version edits */
.alternate-image-text.circle-version .alternating-image-plus-text-block .block-content {
  width: calc(100% - 334px);
}
/*- content container: image -*/
.alternate-image-text .alternating-image-plus-text-block .block-image {
  width: 100%;
  max-width: 310px;
  height: 180px;
  background-size: 30%;
  align-self: flex-start;
}
/* image: circle-version edits */
.alternate-image-text.circle-version .alternating-image-plus-text-block .block-image {
  width: 100%;
  max-width: 300px;
  height: 300px;
  border-radius: 50%;
  overflow: hidden;
}

/*------------ Page Element: Galleries ------------*/
.gallery-wrapper {
  margin: 0 0 70px 0;
  /* 	TODO: add a wrapper element we can apply the variables to */	
  position: relative;
  clear: both;
}
.gallery-slider-container {
  margin: 0px auto;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 360px;
  visibility: visible;
  margin-bottom: 15px;
  position: relative;
  overflow-x: hidden;
  overflow-y: visible;
}
.gallery-slider-window {
  height:100%;
  position: absolute;
  left: 0;
  transition: transform 1s ease-in-out;
}
.gallery-slide {
  height: 100%;
  background-size: cover;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: relative;
  z-index: 10;
  cursor: pointer;
}
.gallery-wrapper .gallery-arrow {
  width: 60px;
  height:100%;
  margin: 0px;
  padding: 0px 5px;
  background-color: transparent;
  border: none;
  opacity: 0.8;
  color: inherit;
  font-size: 40px;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0px;
  bottom: 0px;
  z-index: 11;
  cursor: pointer;
  transition: opacity .3s;
}
.gallery-wrapper .gallery-arrow:hover {
  background-color: transparent;
  opacity: 1;
}
.gallery-wrapper .gallery-arrow:before {
  display: none;
}
.gallery-wrapper .gallery-arrow:after {
  width: 38px;
  height: 38px;
  box-sizing: border-box;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 50%;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gallery-nav-left {
  left: 0;
}
.gallery-nav-left:after {
  padding-right: 3px;
}
.gallery-nav-right {
  right: 0;
}
.gallery-nav-right:after {
  padding-left: 3px;
}
.slider-preview-line {
  width: 100%;
  height: 65px;
  margin-bottom: 25px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.gallery-thumbnail {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
  opacity: .75;
  background-color: unset;
  border-radius: unset;
  min-width: 113px;
  min-height: 65px;
  margin: 0;
  border: none;
  transition: all .25s ease-in-out;
 }
.gallery-thumbnail:before {
  display: none;
}
.gallery-thumbnail:hover, .gallery-thumbnail.active {
  opacity: 1;
  /* transform: scale(1.15); */
}
.gallery-thumb-left {
  left: 0;
}
.gallery-thumb-right {
  right: 0;
}
.thumbnail-arrow{
  position: absolute;
  cursor: pointer;
  height:100%;
  padding: 0px 5px;
  z-index: 8;
  font-size: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0px;
  top: 0px;
  bottom: 0px;
  width: 60px;
  color: inherit;	
  background-color: rgb(253, 252, 248, .5);
  display: none;
}
.slider-preview-container {
  width: 100%;
  height:100%;
  display: flex;
  transform: initial;
}
.gallery-slider-view-window {
  width: 100%;
}
.gallery-grid {
  --cell-size: 350px;
  display: grid;
  column-gap: 19px;
  row-gap: 19px;
  grid-template-columns: repeat(3, 1fr)
}
.gallery-grid .gallery-grid-image {
  display: inline-flex;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
  padding-top: 75%;/*4:3 ratio*/
}
.slider-caption {
  position: absolute;
  bottom: 0;
  height: auto;
  width: 100%;
  padding: 5px 10px;
  display: block;
}
.gallery-overlay-bg {
  position: absolute;
  display: flex;
  z-index: 100;
  left: 0px;
  top: 0px;
  bottom: 0px;
  right: 0px;
  /* background-color: rgba(103,96,130,1); */
  background-color: rgba(255,255,255,0.75);
  border-radius: 10px;
  /* margin: 15px; */
}
.gallery-overlay {
  position: fixed;
  height: 100vh;
  width: 100vw;
  top: 0px;
  left: 0px;
  z-index: 10000;
  cursor: pointer;
  display: none;
  padding: 22px;
  box-sizing: border-box;
  justify-content: center;
}
.gallery-overlay.open{
  display: flex;
}
.gallery-overlay figure {
  position: relative;
  z-index: 100;
  margin: 0;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 25px;
}
.gallery-overlay figure figcaption {
  background-color: white;
  border-radius: 5px;
  padding: 5px;
  font-size: 20px;
  width: 100%;
  text-align: center;
  margin-top: 10px;
}
.gallery-overlay figure figcaption span {
  font-size: 16px;
}
.gallery-overlay img {
  display: inline-flex;
  vertical-align: middle;
  max-width: 100%;
  max-height: calc(100% - 50px);
  box-sizing: border-box;
  box-shadow: 0 0 5px #ccc;
}
.gallery-overlay .close-button {
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  background: url('/assets/images/icon_close.svg') no-repeat;
  background-size: cover;
  border: none;
  display: block;
  position: absolute;
  top: 2em;
  right: 2em;
  z-index: 100000;
}
.gallery-overlay .close-button:before {
  display: none;
}
.image-container > .picrow > .photo-container > figure > a > img {
  margin: 0!important;
}
.gallery-overlay > .photo-caption > .caption, .gallery-overlay figcaption {
  display: block;
  font-size: 16px; 
}
.gallery-overlay > .photo-caption > .credit {
  display: block;
  font-size: 16px;
}
.gallery-overlay > .photo-caption {
  position: absolute;
  padding: 5px;
  text-align: left;
}
.masonry-wrapper {
  position: relative;
  transition: opacity .25s ease-in-out;
  opacity: 0;
  display: none;
}
.masonry-wrapper.obscure {
  opacity: 0;
}
.masonry-wrapper.loaded {
  opacity: 1;
}
.masonry {
  position: relative;
  display: grid;
}
.masonry-item {
  position: relative;
  display: block;
  
  width: 33.3333333333%;
  opacity: 1;
  transition: opacity .25s ease-in-out;
}
.masonry-item:hover {
  opacity: .75;
}
.masonry-item img {
  display: flex;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
}
.gallery-loader {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;	
  margin-top: 10px;		
}
.gallery-loader.hide {
  display: none;
}
.gallery-loader div {
  margin-top: 17px;	
}
#l-path{transform-origin:CENTER;animation:l 1s cubic-bezier(0.2, 0.8, 0.6,0.6) infinite;fill:#675F83;}
@keyframes l{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
 
@media screen and  (max-width: 63.9375em) {
  .gallery-grid{
    grid-template-columns: repeat(2, 1fr)
   }
}

/*================================================================
  BUCKETS STYLES
=================================================================*/
/*------------ Bucket: alert-block (overlay) ------------*/
.alert-block {
	width: 100%;
	height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
}
/* (!) overwrite any "base styles" for this bucket */
.alert-block h1, .alert-block h2, .alert-block h3, .alert-block h4, .alert-block h5, .alert-block h6 {
	color: #960058;
}
.alert-block.hidden {
	display: none;
}
.alert-block .alert-block-bkgd {
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.75);
  position: absolute;
  top: 0;
  left: 0;
}
.alert-block .alert-block-content {
	max-width: 720px;
	min-width: 720px;
	padding: 30px;
	background-color: #F6EEF1;
	border: 2px solid #960058;
	box-shadow: 0 0 5px rgba(0,0,0,0.4);
  color: #960058;
	position: relative;
	/* top: 10%; */
	/* left: calc(50% - (720px / 2)); */
	z-index: 1000;
}
.alert-block .alert-block-content p {
	margin-bottom: 10px;
	font-size: 16px;
}
.alert-block .alert-block-content ol {
	margin-bottom: 10px;
	padding: 0 0 0 35px;
}
.alert-block .alert-block-content .close {
	color: #000;
	font-size: 25px;
	position: absolute;
	top: 15px;
	right: 15px;
}
/* end alert-block css */

/*------------ Bucket: action-section, event-section, & embed-section (for 'Below Body' region) ------------*/
.mmwc-bucket-section {
  width: 100%;
  margin: 0 0 40px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
/*------ Bucket: action-section | embed edits  ------*/
.mmwc-bucket-section.embed-section {
  display: block;
}
/* (!) overwrite any "base styles" for this bucket */
.mmwc-bucket-section h4 {
  margin: 0 0 14px 0;
}
.mmwc-bucket-section p {
  margin: 0;
}
.mmwc-bucket-section .section-media {
  width: 340px;
  height: 340px;
  border-radius: 50%;
  display: block;
  overflow: hidden;
}
.mmwc-bucket-section .section-media .image-like {
  width: 100%;
  height: 100%;
  background: transparent no-repeat center center;
  display: block;
}
.mmwc-bucket-section .section-content {
  width: calc(100% - 387px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.mmwc-bucket-section .section-content .subheader {
  margin: 0 0 6px 0;
  font-family: "Red Hat Display", sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.mmwc-bucket-section .section-content p {
  font-size: 19px;
  line-height: 26px;
}
.mmwc-bucket-section .section-content a.button-like {
  margin-top: 19px;
}


/*================================================================
  SLIDER STYLES - from https://swiperjs.com/
=================================================================*/
.swiper-container {
  width: 100%;
  margin: 0 0 48px 0;

  /* overwrite swiper variables */
  --swiper-theme-color: #fff;
  --swiper-pagination-bullet-size: 13px;
  --swiper-pagination-bullet-horizontal-gap: 6px;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-inactive-color: transparent;
  
  /* background-color: rgba(255,0,0,0.25); */
}
/* (!) overwrite any "base styles" for the slider */
.swiper-container .h1-like, .home .swiper-container .h1-like {
  margin: 0 0 5px 0;
  color: #fff;
  font-family: "Red Hat Display", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: inline-block;
}
.swiper-container p {
  margin: 0;
  color: #fff;
  font-family: "Reddit Sans", sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 29px;
  text-align: center;
}
.swiper-container a.button-like {
  margin: 21px 0 0 0;
}
.swiper-container .swiper {
  width: 100%;
  --swiper-pagination-color: #fff;
}
.swiper-container .swiper .swiper-wrapper {}
.swiper-container .swiper .swiper-wrapper .swiper-slide {
  padding: 17px 0;
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-media {
  width: 100%;
  max-width: 1170px;
  height: 440px;
  background-color: rgba(150,0,88,1);
  position: relative;
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-media .image-like {
  width: 100%;
  height: 100%;
  background: transparent no-repeat center center;
  background-size: cover;
  display: block;
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content {
  max-width: 307px;
  height: 100%;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 73px;
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content {
  width: 100%;
  height: calc(100% - 88px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 10;

  /* background-color: rgba(0,0,255,0.25); */
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content .swiper-pagination {}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content .swiper-pagination .swiper-pagination-bullet {
  border: 1px solid var(--swiper-theme-color);
}
/*------ slider: pesudo background ------*/
/* this element poses as a circle to give the slider content a rounded left side */
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background {
  content: "";
  width: calc(100% + 73px);
  height: 100%;
  position: absolute;
  top: 0;
  right: -73px;
  z-index: 1;
  /* pointer-events: none; */

  /* background-color: rgba(0,255,0,0.25); */
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background:before {
  content: "";
  width: 444px;
  height: 444px;
  background-color: #960058;
  border: 17px solid #fcfcfc;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: -107px;
  z-index: 1;
  /* pointer-events: none; */

  /* border-color: red; */
}
.swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background:after {
  content: "";
  width: calc(100% - 138px);
  height: calc(100% - 30px);
  background-color: #960058;
  /* border: 17px solid #fcfcfc; */
  border-right: none;
  border-left: none;
  position: absolute;
  /* top: 0; */
  top: 17px;
  right: 0;
  z-index: 1;
  pointer-events: none;

  /* background-color: pink; */
  /* border-color: blue; */
}

/*================================================================
  MMWC POSTER STYLES (used on home page and for the "" bucket)
=================================================================*/
.mmwc-poster {
  width: 100%;
  margin: 0 0 100px 0;
  padding: 17px 0;
  position: relative;
}
/* (!) overwrite any "base styles" for this section */
.mmwc-poster h3 {
  margin: 0;
  color: #fff;
  font-size: 25px;
  font-weight: 400;
  line-height: 30px;
  text-align: center;
}
.mmwc-poster p {
  margin: 12px 0 0 0;
  opacity: 0.8;
  color: #fff;
  font-size: 18px;
  line-height: 24px;
  text-align: center;
}
/*------ mmwc poster: media ------*/
.mmwc-poster .poster-media {
  /* width: 100%; */
  width: calc(100% - 208px);
  max-width: 1170px;
  height: 440px;
}
.mmwc-poster .poster-media .image-like {
  width: 100%;
  /* width: calc(100% - 20px); */
  height: 100%;
  background: transparent no-repeat center center;
  background-size: cover;
  display: block;
  transition: width .3s;
}
/*--- media: active-state edits ---*/
.mmwc-poster .poster-media.active-state {
  background-color: #5F002F;
}
/*--- media: default-state edits ---*/
.mmwc-poster .poster-media.default-state {
  background-position: 42% 50%;
}
.mmwc-poster .poster-media img {
  /* height: 100%; */
  display: block;
}
.mmwc-poster .poster-media.bucket-preview {
  display: none;
}
.mmwc-poster .poster-content {
  max-width: 307px;
  height: 100%;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 73px;
}
.mmwc-poster .poster-content .content {
  width: 100%;
  height: calc(100% - 88px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 10;
}
.mmwc-poster .poster-content .content .subheader {
  margin: 0 0 12px 0;
  color: #fff;
  font-family: "Red Hat Display", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
/*------ poster: pesudo background ------*/
/* this element poses as a circle to give the content a rounded left side */
.mmwc-poster .poster-content .content-background {
  content: "";
  width: calc(100% + 73px);
  height: 100%;
  position: absolute;
  top: 0;
  right: -73px;
  z-index: 1;
  pointer-events: none;
}
.mmwc-poster .poster-content .content-background:before {
  content: "";
  width: 440px;
  height: 440px;
  background-color: #960058;
  border: 17px solid #fcfcfc;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: -107px;
  z-index: 1;
  pointer-events: none;
}
.mmwc-poster .poster-content .content-background:after {
  content: "";
  width: calc(100% - 138px);
  height: calc(100% - 34px);
  background-color: #960058;
  position: absolute;
  top: 17px;
  right: 0;
  z-index: 1;
  pointer-events: none;
}

/*================================================================
  MMWC RECTANGLE CONTAINER STYLES
=================================================================*/
.mmwc-rectangle-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  /* background-color: rgba(255,0,0,0.25); */
}
/* (!) overwrite any "base styles" for this section */
.mmwc-rectangle-container p {
  /* margin: 0; */
  margin: 0 0 5px 0;
}
.mmwc-rectangle-container a.button-like {
  /* margin: 0; */
  margin: 0 0 0 5px;
}
.mmwc-rectangle-container .mmwc-poster {
  margin: 0 0 86px 0;
}
.mmwc-rectangle-container .mmwc-poster h3 {
  font-size: 30px;
  line-height: 37px;
}
.mmwc-rectangle-container .mmwc-poster p {
  margin: 12px 0 0 0;
}
.mmwc-rectangle-container .mmwc-poster p:nth-of-type(2) {
  margin: 27px 0 0 0;
}
.mmwc-rectangle-container .mmwc-poster a.button-like {
  margin-bottom: 0;
}
/*------ rectangle container: content ------*/
.mmwc-rectangle-container .content {
  width: calc(100% - 50px);
  max-width: 745px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 5;
  /* background-color: rgba(0, 255, 0, 0.25); */
}
.mmwc-rectangle-container .content p {
  text-align: center;
}
/*------ rectangle container: rectangles ------*/
.mmwc-rectangle-container .rectangles {
  width: auto;
  max-width: 100%;
  margin: 0 0 40px 0;
  /* padding: 0 5.175vw; */
  display: flex;
  column-gap: 35px;
  row-gap: 38px;
  flex-wrap: wrap;
  /* justify-content: center; */
  /* background-color: rgba(0,0,255,0.25); */
}
.mmwc-rectangle-container .rectangle {
  width: 100%;
  max-width: 355px;
  /* margin: 0 0 38px 0; */
  position: relative;
  /* background-color: rgba(0,0,255,0.25); */
}
/*--- rectangles: rectangle-tag ---*/
.mmwc-rectangle-container .rectangle .rectangle-tag {
  padding: 7px 10px;
  background-color: #5F002F;
  border-radius: 25px;
  color: #fff;
  font-family: "Red Hat Display", sans-serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 12px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  display: block;
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 5;
}
/*--- rectangles: rectangle-image ---*/
.mmwc-rectangle-container .rectangle .rectangle-image {
  width: 355px;
  height: 256px;
  margin: 0 0 12px 0;
  display: block;
}
/*- rectangle-image: default-state edits -*/
/*
.mmwc-rectangle-container .rectangle .rectangle-image.default-state {
  width: 355px;
  height: 256px;
}
*/
.mmwc-rectangle-container .rectangle .rectangle-image img {
  max-width: 100%;
  max-height: 100%;
  display: block;
}
/*- rectangle-image: active-state edits -*/
.mmwc-rectangle-container .rectangle .rectangle-image.active-state .image-like {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  /* background-size: cover; */
  display: block;
}
/*
.mmwc-rectangle-container .rectangle .h3-like {
  max-height: 29px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
*/
.mmwc-rectangle-container .rectangle .subheader {
  font-family: "Red Hat Display", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.mmwc-rectangle-container .rectangle .h3-like {
  max-height: 60px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mmwc-rectangle-container .rectangle .h3-like a {
  width: 100%;
  margin: 0;
  /* color: #000; */
  font-family: "Reddit Sans", sans-serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 30px;
  text-decoration: none;
  display: block;
}
.mmwc-rectangle-container .rectangle .h3-like a:hover {
  opacity: 1;
}
.mmwc-rectangle-container .rectangle p {
  max-height: 56px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mmwc-rectangle-container .rectangle a.image-like {
  /* box-shadow: inset 0 0 0 rgba(95,0,47,0.5); */
  background-size: 100%;
  position: relative;
  transition: box-shadow .2s, background-size .2s;
}
.mmwc-rectangle-container .rectangle a.image-like:hover {
  /* box-shadow: inset 0 0 10px rgba(95,0,47,0.5); */
  background-size: 102%;
  transition: box-shadow .3s ease-out, background-size .3s ease-out;
}
.mmwc-rectangle-container .rectangle a.image-like .zoom-in-icon {
  position: absolute;
  bottom: 9px;
  right: 9px;
}


.press-overlay {
  width: 100%;
  height: 100%;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  /* pointer-events: none; */
  /* transition: opacity .3s, left 0s .3s; */
  animation: reveal-press-overlay .2s ease-out forwards;
}
.press-overlay.remove-overlay {
  animation: remove-press-overlay .2s forwards;
}
@keyframes reveal-press-overlay {
  0%   {opacity: 0;}
  100% {opacity: 1;}
}
@keyframes remove-press-overlay {
  0%   {opacity: 1;}
  100% {opacity: 0;}
}
.press-overlay .overlay-background {
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.75;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.press-overlay .overlay-close {
  width: 22px;
  height: 22px;
  background: url('/assets/images/icon_close.svg') no-repeat;
  background-size: cover;
  display: block;
  position: absolute;
  top: 2em;
  right: 2em;
  z-index: 10;
}
.press-overlay .overlay-media {
  max-width: 95%;
  max-height: 95%;
  box-shadow: 0 0 5px #ccc;
  display: block;
  position: relative;  
  z-index: 5;
}


/*================================================================
  MMWC CIRCLE CONTAINER STYLES
=================================================================*/
/*------------ mmwc-circle-container ------------*/
.mmwc-circle-container {
  width: 100%;
  margin: 0 0 70px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
/* (!) overwrite any "base styles" for this section */
.mmwc-circle-container h5 {
  margin: 0 0 9px 0;
  text-align: center;
}
.mmwc-circle-container p {
  margin: 0;
  display: inline-block;
}
.mmwc-circle-container a.button-like {
  margin: 16px 0 0 5px;
}
/*------ mmwc-circle-container: circles ------*/
.mmwc-circle-container .circles {
  display: flex;
  flex-wrap: wrap;
  column-gap: 27px;
  row-gap: 35px;
  align-items: flex-start;
}
/*--- circles: item ---*/
.mmwc-circle-container .circles .circle-item {
  width: 100%;
  max-width: 195px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
/*- item-image: xl-body(unique page) edits -*/
.main-content.xl-body .mmwc-circle-container .circles .circle-item {
  max-width: 250px;
}
/*--- item: item-image ---*/
.mmwc-circle-container .circles .circle-item .item-image {
  width: 195px;
  height: 195px;
  margin: 0 0 10px 0;
  padding: 4px 2px 0 2px;
  background-color: #5F002F;
  border-radius: 50%;
  position: relative;
}
/*- item-image: xl-body(unique page) edits -*/
.main-content.xl-body .mmwc-circle-container .circles .circle-item .item-image {
  width: 250px;
  height: 250px;
}
/*- item-image: pesudo background circle -*/
.mmwc-circle-container .circles .circle-item .item-image:before {
  content: "";
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  background-color: #960058;
  border-radius: 50%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 2px;
  z-index: 5;
}
/*- item-image: image element -*/
.mmwc-circle-container .circles .circle-item .item-image a.image-like {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  border-radius: 50%;
  display: block;
  position: relative;
  z-index: 10;
  transition: background-size .2s, opacity .3s .1s;
}
/* image element: hover edits */
.mmwc-circle-container .circles .circle-item .item-image a.image-like:hover {
  background-size: 103%;
  transition: background-size .3s ease-out, opacity .3s .1s;
}
/* image element: default-state edits */
.mmwc-circle-container .circles .circle-item .item-image a.image-like.default-state {
  background-size: 35%;
}
/* image element > default-state: hover edits */
.mmwc-circle-container .circles .circle-item .item-image a.image-like.default-state:hover {
  background-size: 37%;
}
/*--- item: subheader ---*/
.mmwc-circle-container .circles .circle-item .subheader {
  margin: 0 0 6px 0;
  font-family: "Red Hat Display", sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  display: block;
}
/*--- item: body ---*/
.mmwc-circle-container .circles .circle-item p {
  max-height: 57px;
  font-size: 16px;
  line-height: 19px;
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/*================================================================
  SEARCH PAGE UNIQUE STYLES
=================================================================*/
.search-container {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.search-container .search-page-search {
  width: 100%;
}
.search-container .search-page-search .search-results-count {
  display: block;
}
.search-container .search-page-search input[type="text"] {
  width: 250px;
}
.search-container .search-col-left, .search-container .search-col-right {
  width: calc(50% - 15px);
}


/*================================================================
  Campaign Transparency Updated: 02.03.25
=================================================================*/
@media only screen and (min-width: 1024px) {
	.campaign-transparency {
	 	text-align: center;
	 	background-color:#f5ebef;
	 	margin: 30px;
		padding:30px 60px;
		border-radius: 200px;
	}
	.campaign-transparency p.intro {
    max-width: 745px;
    margin: 0 auto;
	 	margin-bottom: 25px;
	}
	.campaign-transparency .campaign-images {
		width: 100%;
	 	display: flex;
		column-gap: 25px;
		align-items: center;
		justify-content: center;
	}
	.campaign-transparency .campaign-images a {
		display: block;
	}
}
@media only screen and (min-width: 501px) and (max-width: 1023px) {
	.campaign-transparency {
	  	text-align: center;
	  	background-color:#f5ebef;
	  	margin: 30px;
	  	padding:30px 70px;
	  	border-radius: 200px;
	}
}
@media only screen and (max-width: 500px) {
	.campaign-transparency {
	  	text-align: center;
	  	padding:30px;
	}
}


/*================================================================
  FOOTER STYLES
=================================================================*/
footer {
  width: 100%;
  max-width: 1470px;
  margin: 0 auto;
  /* margin-top: 50px; */
  /* background-color: rgba(234,216,222,0.5); */
  /* background-color: #FCFCFC; */
  display: flex;
  position: relative;
}
/*------ footer: pesudo backgrounds ------*/
/*--- pesudo backgrounds: main-content-like background ---*/
footer:before, footer:after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 1;
  pointer-events: none;
}
footer:before {
  width: calc(100% - 30px);
  margin: 0 auto;
  min-width: 1440px;
  height: calc(100% + 17px);
  background-color: #fff;
  left: calc(50% - (1440px / 2));
}
/*--- pesudo backgrounds: foreground ---*/
footer:after {
  width: 100%;
  height: 100%;
  background-color: #F5EBEF;
  left: 0;
}
/* (!) overwrite any "base styles" for the footer */
footer ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  line-height: 0;
}
footer ul li {
  margin: 0;
  padding: 0;
}
footer ul li:before {
  display: none;
}
/*------------ footer: footer-information ------------*/
footer .footer-information {
  margin: 0 13em 0 0;
  /* padding: 85px 37px 45px 50px; */
  padding: 0 37px 0 50px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  z-index: 5;
}
footer .footer-information .logo {
  margin: 0 0 15px 0;
  display: block;
}
footer .footer-information p {
  margin: 0 0 8px 0;
  color: #000;
  font-size: 15px;
  line-height: 19px;
}
footer .footer-information .socials-list {
  margin: 18px 0;
  display: flex;
  align-items: center;
}
footer .footer-information .socials-list li {
  margin-right: 0.375em;
}
footer .footer-information .socials-list li:last-of-type {
  margin-right: 0;
}
footer .footer-information .socials-list li a {
  opacity: 0.6;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s;
}
footer .footer-information .socials-list li a[href*="//"]:not(.skip-offsite):not([href*="https://mmwconline.org/"]):after {
  display: none;
}
footer .footer-information .credits {
  margin: 19px 0 0 0;
  font-size: 14px;
  line-height: 18px;
}
footer .footer-information .credits a {
  color: #000;
  font-size: 14px;
  line-height: 18px;
  text-decoration-color: transparent;
  transition: text-decoration-color .3s;
}
footer .footer-information .credits a:hover {
  text-decoration-color: #000;
}
/*------------ footer: site-map ------------*/
footer .site-map {
  width: 100%;
  max-width: 1080px;
  min-height: 516px;
  margin: 0 auto;
  /* padding: 0 66px 0 0; */
  /* padding: 25px 66px 25px 0; */
  padding: 25px 0;
  /* padding: 25px 15px; */
  /* background-color: #960058; */
  /* border: 17px solid transparent; */
  border-right: none;
  border-left: none;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 5;
}
/*------ site-map: pesudo background ------*/
/* this element poses as a circle to give the site-map a rounded left side */
footer .site-map:before {
  content: "";
  width: 516px;
  /* height: 516px; */
  height: 100%;
  background-color: #960058;
  border: 17px solid #fcfcfc;
  border-radius: 50%;
  position: absolute;
  top: -17px;
  left: -228px;
  z-index: 1;
  pointer-events: none;
}
/* this element poses as a background, so the content can flow normal while having a unique background */
footer .site-map:after {
  content: "";
  width: calc(100% - 50px);
  height: 100%;
  background-color: #960058;
  /* border: 17px solid #fcfcfc; */
  /* border-right: none; */
  /* border-left: none; */
  position: absolute;
  /* top: -17px; */
  top: 0;
  right: 0;
  z-index: 1;
  pointer-events: none;
}
footer .site-map ul {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style-type: none;
  line-height: 0;
  display: flex;
  column-gap: 14px;
  row-gap: 45px;
  flex-wrap: wrap;
  /* justify-content: space-between; */
  position: relative;
  z-index: 5;
}
footer .site-map ul li {
  width: 160px;
}
footer .site-map ul li a {
  color: #fff;
  text-decoration: none;
}
footer .site-map ul li a.item-link {
  font-family: "Red Hat Display", sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 19px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
footer .site-map ul li a.item-link:hover {
  /* color: rgba(0,0,0,1); */
}
footer .site-map ul li .item-dropdown {
  margin-top: 10px;
}
footer .site-map ul li .item-dropdown ul {
  margin: 0;
  padding: 0;
  gap: initial;
  flex-direction: column;
}
footer .site-map ul li .item-dropdown ul li {
  margin: 0 0 5px 0;
}
footer .site-map ul li .item-dropdown ul li:last-of-type {
  margin: 0;
}
footer .site-map ul li .item-dropdown ul li a {
  opacity: 0.9;
  font-family: "Work Sans", sans-serif;
  font-size: 15px;
  line-height: 20px;
  transition: opacity .3s;
}
footer .site-map ul li .item-dropdown ul li a:hover {
  opacity: 1;
}

/*================================================================================================================================
  MEDIA QUERIES
=================================================================================================================================*/
/*================ media queries: below max body width (1440px) ================*/
@media only screen and (max-width: 1440px) {
  .main-content .page-banner {
    width: 100%;
    left: auto;
  }
  .main-content .basic-page-banner {
    width: calc(100% - 88px);
    max-width: 1207px;
    /* width: calc(100% - 63px); */
    left: auto;
  }
  .main-content .basic-page-banner .banner-header {
    padding-left: calc(260px + 51px);/* 260(left-sidebar width) + 51(space in-between left-sidebar and body) */
  }

  footer:before {
    width: 100%;
    min-width: initial;
    left: auto;
  }
}

/*================ media queries: in-between body max-width and body min-width (1200px) ================*/
@media only screen and (max-width: 1200px) {
  /*------------ @1200 - header ------------*/
  header a.header-logo img {
    width: 205px;
    height: 94px;
  }
  header .header-navigations .utility-region .utility-navigation ul li a.item-link {
    font-size: 13px;
  }
  header .header-navigations .main-navigation ul li {
    margin-right: 0.75em;
  }
  header .header-navigations .main-navigation ul li a.item-link {
    padding: 4px 0 4px 4px;
  }
  header .header-navigations .main-navigation ul li a.item-link .item-subheader {
    font-size: 10px;
  }
  header .header-navigations .main-navigation ul li a.item-link .item-name {
    font-size: 14px;
  }

  /*------------ @1200 - footer ------------*/
  footer .footer-information {
    margin: 0 9em 0 0;
  }
  footer .site-map:before {
    left: -160px;
  }
  footer .site-map:after {
    width: calc(100% - 115px);
  }
  footer .site-map ul li a.item-link {
    font-size: 13px;
    line-height: 17px;
  }
  footer .site-map ul li .item-dropdown ul li a {
    font-size: 13px;
    line-height: 15px;
  }
}

/*================ media queries: start tablet styles (1023px) ================*/
@media only screen and (max-width: 1023px) {
  /*------------ @1023 - Base: media restrictions ------------*/
  .desktop, .mobile {
    display: none;
  }
  .tablet {
    display: block;
  }
  /*------------ @1023 - Base: fonts ------------*/
  /*------ @1023 - font headers ------*/
  h1, .h1-like {
    margin: 0 0 15px 0;
    font-size: 34px;
    line-height: 38px;
  }
  h2, .h2-like {
    margin: 0 0 12px 0;
    font-size: 29px;
    line-height: 31px;
  }
  h3, .h3-like {
    margin: 0 0 10px 0;
    font-size: 24px;
    line-height: 26px;
  }
  h4, .h4-like {
    margin: 0 0 8px 0;
    font-size: 20px;
    line-height: 22px;
  }
  h5, .h5-like {
    margin: 0 0 8px 0;
    font-size: 18px;
    line-height: 20px;
  }
  /*------ @1023 - font body ------*/
  a {
    font-size: 18px;
    line-height: 22px;
  }
  p {
    margin: 0 0 15px 0;
    font-size: 18px;
    line-height: 22px;
  }
  p.intro {
    margin: 0 0 36px 0;
    font-size: 20px;
    line-height: 26px;
  }
  ul {
    margin: 0 0 30px 0;
    font-size: 18px;
    line-height: 22px;
  }
  ol {
    margin: 0 0 30px 0;
    font-size: 18px;
    line-height: 22px;
  }
  /*------ @1023 - base form fields ------*/
  form {
    margin: 0 0 60px 0;
  }
  label {
    font-size: 18px;
    font-weight: 600;
    line-height: 20px;
  }
  /*--- @1023 - base form fields: page element unique styles ---*/
  fieldset .field-row {
    margin: 0 0 22px 0;
  }
  /*------ @1023 - base buttons ------*/
  /*--- @1023 - buttons: primary ---*/
  button, a.button-like {
    font-size: 12px;
    line-height: 14px;
  }
  
  button:before, a.button-like:before {
    width: 36px;
    height: 36px;
    top: calc(50% - (36px / 2));
  }
  /*------------ @1023 - Base: unique line break ------------*/
  .mmwc-line-break {
    margin: 17px 0 30px 0;
  }
  /*------------ @1023 - Base: table styles ------------*/
  table {
    margin: 3.5em 0;
  }
  table tbody tr td {
    font-size: 18px;
    line-height: 22px;
  }
  /*------------ @1023 - Base: pullquote styles ------------*/
  .pullquote {
    margin: 60px 0;
    padding: 73px 76px 51px 100px;
    font-size: 21px;
    line-height: 27px;
  }
  .pullquote .pullquote-author {
    font-size: 20px;
  }
  .pullquote .pullquote-author-title {
    font-size: 12px;
  }
  
  /*------------ @1023 - tablet/mobile layout: header ------------*/
  header {
    padding: 18px 25px 15px 23px;
    box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
    position: fixed;
    top: 0;
    left: 0;
  }
  /*------ @1023 - header: header-wrapper ------*/
  header .header-wrapper {
    width: 100%;
    height: 100%;
    padding: 0 25px 25px 23px;
    /* opacity: 0; */
    display: flex;
    flex-direction: column;
    position: fixed;
    /* top: -25%; */
    top: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
    transition: padding .4s;
  }
  /*--- @1023 - header-wrapper: show-navigation edits ---*/
  header.show-navigation .header-wrapper {
    padding-top: 140px;
    opacity: 1;
    pointer-events: all;
    transition: padding .3s;
  }
  /*- @1023 - header-wrapper: pesudo background circles -*/
  header .wrapper-circle-background {
    width: 100%;
    max-width: 100vw;
    height: 0;
    /* max-height: 100vh; */
    background-color: #FCFCFC;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
    transition: height .3s;
    overflow: hidden;
  }
  /* @1023 - header-wrapper > pesudo background elements */
  header.show-navigation .wrapper-circle-background {
    height: 100%;
    transition: height .3s;
  }
  header .wrapper-circle-background:before, header .wrapper-circle-background:after {
    content: "";
    width: 342px;
    height: 342px;
    background-color: #EAD8DE;
    border-radius: 50%;
    opacity: 0;
    display: block;
    position: absolute;
    z-index: 1;
    pointer-events: none;
    transition: none;
  }
  /* this pesudo element poses as a circle which is positioned at the top-right, behind all the mobile navigation's content */
  header .wrapper-circle-background:before {
    top: -36px;
    right: -217px;
    transform: translateX(60px);
  }
  /* this pesudo element poses as a circle which is positioned at the bottom-left, behind all the mobile navigation's content */
  header .wrapper-circle-background:after {
    bottom: -53px;
    left: -280px;
    transform: translateX(-60px);
  }
  /* @1023 - header-navigations > pesudo background element: show-navigation edits */
  header.show-navigation .wrapper-circle-background:before, header.show-navigation .wrapper-circle-background:after {
    opacity: 0.5;
    transform: translateX(0);
    
  }
  header.show-navigation .wrapper-circle-background:before {
    transition: opacity 1s .2s, transform .6s .2s ease-out;
  }
  header.show-navigation .wrapper-circle-background:after {
    transition: opacity 1.4s .2s, transform .8s .2s ease-out;
  }

  header .header-navigations nav ul li .item-icon {
    display: none;
  }
  /*--- @1023 - header: site-search ---*/
  header .site-search {
    width: calc(100% - 9px);
    margin: 0 4px 0 auto;
    opacity: 0;
    transition: opacity .2s;
  }
  /*- @1023 - site-search: show-navigation edits -*/
  header.show-navigation .site-search {
    opacity: 1;
    transition: opacity .3s .1s;
  }
  header .site-search .top-search-input {
    max-width: none;
    height: 36px;
    position: relative;
    top: auto;
    right: auto;
    overflow: initial;
    /* transition: max-width .3s, left .3s; */
  }
  header .site-search .top-search-input form {
    margin: 0;
  }
  header .site-search .top-search-input form:before {
    width: 36px;
    height: 36px;
    opacity: 1;
    left: -4px;
    transform: translateX(0);
    transition: opacity .3s .05s, transform .3s .05s;
  }
  header .site-search .top-search-input input.onsite-search-input {
    width: 100%;
    opacity: 1;
    position: relative;
    left: auto;
  }
  header .site-search .onsite-search-submit {
    padding: 8px 15px;
    /* padding: 8px 7px; */
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
  }
  /*------ @1023 - header: header-navigations ------*/
  header .header-navigations {
    width: 100%;
    max-width: 100vw;
    height: 100%;
    max-height: calc(100vh - 209px);/* 125px + 15px(wrapper's padding top & bottom) + 31px(search height) + 38px(socials height)*/
    margin: 15px 0 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
    z-index: 5;
    overflow: scroll;
    /* background-color: rgba(255,0,0,0.25); */
  }
  /*--- @1023 - header-navigations: item-dropdown ---*/
  header .header-navigations nav ul li .item-dropdown {
    width: 100%;
    margin: 0;
    padding: 0 0 15px 0;
    opacity: 0;
    background-color: transparent;
    border: none;
    position: absolute;
    top: auto;
    left: auto;
    z-index: initial;
    pointer-events: none;
    transform: translateY(-15px);
    transition: none;
  }
  /*--- @1023 - item-dropdown: overwrite :hover and :focus-within edits ---*/
  header .header-navigations nav ul li:hover .item-dropdown, header .header-navigations nav ul li:focus-within .item-dropdown {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-15px);
    transition: none;
  }
  /*--- @1023 - item-dropdown: show-pages edits ---*/
  header .header-navigations nav ul li.show-pages .item-dropdown {
    position: relative;
    opacity: 1;
    pointer-events: all;
    transform: translateY(0);
    transition: opacity .4s, transform .3s;
  }
  header .header-navigations nav ul li .item-dropdown:before {
    display: none;
  }
  header .header-navigations nav ul li .item-dropdown ul {}
  /*- @1023 - item-dropdown > unordered list: pesudo arrow elements -*/
  header .header-navigations nav ul li .item-dropdown ul:before, header .header-navigations nav ul li .item-dropdown ul:after {
    display: none;
  }
  header .header-navigations nav ul li .item-dropdown ul {}
  /*- @1023 - item-dropdown: overwrite navigation styles -*/
  header .header-navigations .utility-region .utility-navigation ul li .item-dropdown ul, header .header-navigations .main-navigation ul li .item-dropdown ul {
    padding: 0;    
  }
  header .header-navigations nav ul li .item-dropdown ul li:after {
    display: none;
  }
  header .header-navigations nav ul li .item-dropdown ul li a {
    padding: 2px 0;
    pointer-events: none;
  }
  /* @1023 - item-dropdown: show-pages edits */
  header .header-navigations nav ul li.show-pages .item-dropdown ul li a {
    pointer-events: all;
  }
  /*--- @1023 - header-navigations: utility-region ---*/
  header .header-navigations .utility-region {
    width: 100%;
    margin: 0;
    padding: 0 10px;
    opacity: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    order: 1;
    position: relative;
    z-index: 1;
    transition: opacity .2s;
  }
  /*- @1023 - utility-region: show-navigation -*/
  header.show-navigation .header-navigations .utility-region {
    opacity: 1;
    transition: opacity .3s .1s;
  }
  header .header-navigations .utility-region .utility-navigation {
    width: 100%;
    margin: 0 0 25px 0;
    position: relative;
    z-index: 5;
  }
  header .header-navigations .utility-region .utility-navigation ul {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
  }
  header .header-navigations .utility-region .utility-navigation ul li {
    width: 100%;
    margin: 0;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  header .header-navigations .utility-region .utility-navigation ul li:last-of-type {
    margin: 0;
  }
  header .header-navigations .utility-region .utility-navigation ul li a.item-link {
    padding: 5px 0;
  }
  header .header-navigations .utility-region .utility-navigation ul li a.item-arrow {
    padding: 5px 0;
    padding-right: 1px;
    position: relative;
    top: auto;
    right: auto;
    pointer-events: all;
  }
  /*- @1023 - utility-region: socials-list -*/
  header .socials {
    width: 100%;
    margin: 10px 0 0 0;
    opacity: 0;
    display: none;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 5;
    transition: opacity .1s;
  }
  header.show-navigation .socials {
    opacity: 1;
    transition: opacity .3s .15s;
  }
  header .socials.tablet {
    display: flex;
  }
  header .socials p {
    margin: 0;
    z-index: 1;
  }
  header .socials .socials-list {
    margin: 0;
    position: relative;
    z-index: 10;
  }
  header .socials .socials-list li {}
  /*--- @1023 - header-navigations: main-navigation ---*/
  header .header-navigations .main-navigation {
    width: 100%;
    margin: 0 0 25px 0;
    padding: 0 10px;
    opacity: 0;
    order: 0;
    position: relative;
    z-index: 5;
    transition: opacity .2s;
  }
  /*- @1023 - main-navigation: show-navigation -*/
  header.show-navigation .header-navigations .main-navigation {
    opacity: 1;
    transition: opacity .3s .1s;
  }
  /*- @1023 - main-navigation: unordered-list -*/
  header .header-navigations .main-navigation ul {
    flex-direction: column;
    align-items: flex-start;
    position: relative;
    z-index: 5;
  }
  header .header-navigations .main-navigation ul li {
    width: 100%;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  header .header-navigations .main-navigation ul li.desktop {
    display: none;
  }
  header .header-navigations .main-navigation ul li:after {
    content: "";
    width: 100%;
    height: 2px;
    background: url('/assets/images/element_line-break-bg.svg') no-repeat center left;
    background-size: 100%;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  header .header-navigations .main-navigation ul li a.item-link {
    padding: 7px 0 15px 0;
  }
  header .header-navigations .main-navigation ul li a.item-link .item-subheader,
  header .header-navigations .main-navigation ul li a.item-link .item-name {
    font-size: 14px;
    font-weight: 600;
    line-height: 16px;
    letter-spacing: 0.75px;
    display: inline-block;
  }
  /*- @1023 - main-navigation: item-arrow -*/
  header .header-navigations .main-navigation ul li .item-arrow {
    padding: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  /* @1023 - item-arrow: show-pages edits */
  header .header-navigations .main-navigation ul li.show-pages .item-arrow {
    transform: scaleY(-1);
  }

  /*------------ @1023 - main-content ------------*/
  .main-content {
    padding: 133px 0 0 0;
  }
  /*------ @1023 - main-content: page-banner ------*/
  .main-content .page-banner {
    margin: 0 0 36px 0;
    padding: 0;
    display: block;
  }
  /* (!) overwrite any "base styles" for this section */
  .main-content .page-banner h1 {
    font-size: 43px;
    line-height: 45px;
  }
  /*--- @1023 - page-banner: banner-media ---*/
  .main-content .page-banner .banner-media {
    width: calc(100% - 25px);
    height: 395px;
    margin: 0 0 26px auto;
  }
  /*--- @1023 - page-banner: banner-header ---*/
  .main-content .page-banner .banner-header {
    width: calc(100% - 25px);
    max-width: none;
    padding: 27px 64px;
    position: relative;
    top: auto;
    left: auto;
  }
  .main-content .page-banner .banner-header .subheader {
    font-size: 13px;
    line-height: 16px;
  }
  /*------ @1023 - main-content: page-banner (basic version) ------*/
  .main-content .basic-page-banner {
    width: calc(100% - 25px);
    max-width: none;
    margin: 0 0 35px 0;
    padding: 33px 0 0 0;
  }
  /* (!) overwrite any "base styles" for this section */
  .main-content .basic-page-banner h1 {
    font-size: 43px;
    line-height: 45px;
  }
  .main-content .basic-page-banner .banner-header {
    /* width: calc(100% - 25px); */
    padding: 27px 64px;
  }
  .main-content.xl-body .basic-page-banner .banner-header {
    padding-left: 64px;
  }
  /*--- @1023 - page-banner (basic version): banner-media *exclusive for tablet/mobile layout ---*/
  .main-content .basic-page-banner .banner-media {
    width: 300px;
    height: 300px;
    /* margin: -15px 0 0 auto; */
    margin: 30px auto 0 auto;
    border-radius: 50%;
    overflow: hidden;
  }
  .main-content .basic-page-banner .banner-media .image-like {
    width: 100%;
    height: 100%;
    background: transparent no-repeat center center;
    background-size: cover;
    display: block;
  }

  /*------ @1023 - main-content: swiper-container ------*/
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-media {
    height: 683px;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content {
    align-items: flex-end;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content {
    max-height: 380px;
    margin: 0 0 17px 0;
    /* justify-content: flex-end; */
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background {
    height: 380px;
    top: auto;
    bottom: 0;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background:before {
    width: 380px;
    height: 380px;
    /* display: none; */
    top: auto;
    bottom: 0;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background:after {
    width: calc(100% - 103px);
    height: 100%;
    border: 17px solid #fcfcfc;
    border-left: none;
    border-right: none;
    top: auto;
    bottom: 0;
  }

  /*------ @1023 - mmwc-poster ------*/
  .mmwc-poster {}
  .mmwc-poster .poster-media {
    width: 100%;
    height: 683px;
  }
  .mmwc-poster .poster-media.default-state {
    background-position: 15% 50%;
    background-size: 20%;
  }
  .mmwc-poster .poster-content {
    width: 100%;
    max-width: 450px;
    max-height: 380px;
    padding-right: 54px;
    background-color: #960058;
    border: 13px solid #fcfcfc;
    border-right: none;
    border-radius: 300px 0 0 300px;
    align-items: center;
    justify-content: flex-end;
    top: auto;
    bottom: 0;
    right: 0;
  }
  .mmwc-poster .poster-content .content {
    /* max-width: 255px; */
    max-width: 300px;
    height: 100%;
    max-height: none;
    margin: 0;
    padding: 30px 0;
  }
  .mmwc-poster .poster-content .content-background {
    display: none;
  }
  /*
  .mmwc-poster .poster-content .content-background:before {
    top: auto;
    bottom: 0;
  }
  .mmwc-poster .poster-content .content-background:after {
    height: 440px;
    border: 17px solid #fcfcfc;
    border-right: none;
    border-left: none;
    top: auto;
    bottom: 0;
  }
  */

  /*------ @1023 - main-content: page-content ------*/
  .main-content .page-content {
    flex-direction: column;
  }
  /*--- @1023 - page-content: left-sidebar ---*/
  .left-sidebar {
    order: 1;
  }
  /*------ @1023 - main-content: body ------*/
  .main-content .page-content .body {
    width: calc(100% - 126px);
    margin: 0 auto;
    padding: 0;
    order: 0;
  }
  /*--- @1023 - body: tertiary edits ---*/
  .main-content.tertiary .page-content .body {
    width: calc(100% - 126px);
    max-width: none;
  }
  /*- @1023 - body: xl-body edits -*/
  .main-content.xl-body .page-content .body {
    padding: 0;
  }

  /*------------ @1023 - swiper container ------------*/
  .swiper-container p {
    font-size: 24px;
    line-height: 27px;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content {
    width: 100%;
    max-width: 450px;
    max-height: 380px;
    padding-right: 54px;
    background-color: #960058;
    border: 13px solid #fcfcfc;
    border-right: none;
    border-radius: 300px 0 0 300px;
    align-items: center;
    justify-content: flex-end;
    top: auto;
    bottom: 0;
    right: 0;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content {
    max-width: 255px;
    height: 100%;
    max-height: none;
    margin: 0;
    padding: 30px 0;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content-background {
    display: none;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content .swiper-pagination {
    bottom: 12px;
  }

  /*------ @1023 - mmwc-rectangle-container ------*/
  .mmwc-rectangle-container .rectangles {
    column-gap: initial;
    row-gap: 35px;
    justify-content: space-between;
  }
  .mmwc-rectangle-container .rectangle {
    width: calc(50% - (15px / 2));
    max-width: initial;
  }
  .mmwc-rectangle-container .rectangle .rectangle-image {
    width: 100%;
    /* height: 200px; */
  }
  .mmwc-rectangle-container .rectangle .rectangle-image.active-state .image-like {
    background-size: cover;
  }
  .mmwc-rectangle-container .rectangle .h3-like a {
    font-size: 24px;
    line-height: 26px;
  }

  /*------------ @1023 - below body buckets ------------*/
  .mmwc-bucket-section h4 {
    margin: 0 0 7px 0;
  }
  .mmwc-bucket-section .section-content p {
    font-size: 18px;
    line-height: 24px;
  }
  .mmwc-bucket-section .section-content .subheader {
    margin: 0 0 7px 0;
    font-size: 11px;
  }
  .mmwc-bucket-section .section-content a.button-like {
    margin-top: 12px;
  }

  /*------------ @1023 - right sidebar ------------*/
  .right-sidebar {
    width: calc(100% - 126px);
    margin: 0 auto;
  }

  /*================================
    @1023 - PAGE ELEMENT STYLES
  ================================*/
  /*------------ @1023 - Page Element: accordion ------------*/
  .acc-container label {
    font-size: 18px;
    line-height: 22px;
  }

  /*------------ @1023 - footer ------------*/
  footer {
    border-bottom: 12px solid #fcfcfc;
    /* display: none; */
    overflow: hidden;
  }
  /*------ @1023 - footer: footer-information ------*/
  footer .footer-information {
    margin: 0 12em 0 0;
    padding: 0 26px 0 50px;
  }
  /* (!) overwrite any "base styles" for this section */
  footer .footer-information p {
    margin: 0 0 4px 0;
    font-size: 13px;
    line-height: 18px;
  }
  footer .footer-information .logo {
    margin: 0 0 20px 0;
  }
  footer .footer-information .logo img {
    max-width: 187px;
    max-height: 91px;
  }
  footer .footer-information .socials-list {
    margin: 13px 0 16px 0;
  }
  footer .footer-information .credits {
    margin: 33px 0 0 0;
    font-size: 12px;
    line-height: 14px;
  }
  footer .footer-information .credits a {
    font-size: 12px;
    line-height: 14px;
  }
  /*------ @1023 - footer: site-map ------*/
  footer .site-map {
    min-height: 452px;
  }
  footer .site-map:before {
    width: 452px;
    height: 452px;
    border: 12px solid #fcfcfc;
    top: -12px;
    left: -192px;
  }
  footer .site-map:after {
    width: calc(100% - 50px);
  }
  footer .site-map ul {
    flex-direction: column;
    column-gap: initial;
    row-gap: 12px;
  }
  footer .site-map ul li {
    width: 100%;
    display: flex;
    justify-content: center;
  }
  footer .site-map ul li a.item-link {
    text-align: center;
  }
  footer .site-map ul li .item-dropdown {
    display: none;
  }
}

/*================ media queries: in-between tablet and mobile (685px) ================*/
@media only screen and (max-width: 685px) {
  /*------------ @685 - Base: image states ------------*/
  /*------ @685 - image float statuses: these are decided in the page editor ------*/
  .img_right_25, .img_right_25_rounded,
  .img_right_50, .img_right_50_rounded,
  .img_left_25, .img_left_25_rounded,
  .img_left_50, .img_left_50_rounded,
  .img_full_width, .img_full_width_rounded {
    width: auto;
    margin: 1em auto;
    float: none;
    display: block;
  }
  figure {
    width: 100%;
  }
  figcaption {
    font-size: 16px;
    line-height: 18px;
  }
  .pullquote {
    padding: 67px 25px 32px 25px;
    background-position: 25px 25px;
  }

  /*------------ @685 - main-content ------------*/
  .main-content .page-content .body {
    width: calc(100% - 40px)
  }
  /*------ @685 - main-content: tertiary edits ------*/
  .main-content.tertiary .page-content .body {
    width: calc(100% - 40px)
  }
  .main-content.xl-body .page-content .body {
    padding: 0;
  }

  /*--- @685 - page-banner: banner-header ---*/
  .main-content .page-banner .banner-header {
    width: calc(100% - 20px);
    padding: 20px;
  }
  /*--- @685 - page-banner: banner-media ---*/
  .main-content .page-banner .banner-media {
    width: calc(100% - 20px);
    height: 309px;
  }
  /*------ @685 - main-content: page-banner (basic version) ------*/
  .main-content .basic-page-banner {
    width: calc(100% - 20px);
  }
  .main-content .basic-page-banner .banner-header {
    padding: 20px;
  }
  .main-content.xl-body .basic-page-banner .banner-header {
    padding: 20px;
  }

  /*------------ @685 - swiper container ------------*/
  .swiper-container p {
    font-size: 22px;
    line-height: 25px;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content {
    max-width: 340px;
    max-height: 340px;
    padding-right: 45px;
    border: 12px solid #fcfcfc;
    border-right: none;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content {
    max-width: 200px;
  }
  .swiper-container .swiper .swiper-wrapper .swiper-slide .slide-content .content .swiper-pagination {
    bottom: 12px;
  }

  /*------ @685 - mmwc-circle-container: circles ------*/
  .mmwc-circle-container .circles {
    column-gap: initial;
    row-gap: 20px;
    justify-content: center;
  }
  /*--- @685 - circles: xl-body edits ---*/
  .mmwc-circle-container .circles .circle-item {
    width: calc(50% - (15px / 2));
    max-width: none;
  }
  .main-content.xl-body .mmwc-circle-container .circles .circle-item .item-image {
    width: 195px;
    height: 195px;
  }
  /*--- @685 - circles: xl-body edits ---*/
  /*
  .main-content.xl-body .mmwc-circle-container .circles .circle-item {
    max-width: none;
  }
  */

  /*------ @1023 - mmwc-rectangle-container ------*/
  .mmwc-rectangle-container .rectangles {
    /* column-gap: initial; */
    /* row-gap: 35px; */
    justify-content: center;
  }
  .mmwc-rectangle-container .rectangle {
    width: 100%;
    max-width: 355px;
  }

  /*------------ @685 - below body buckets ------------*/
  .mmwc-bucket-section {
    flex-direction: column;
    row-gap: 16px;
  }
  .mmwc-bucket-section h4 {
    text-align: center;
  }
  .mmwc-bucket-section .section-media {
    order: 0;
  }
  .mmwc-bucket-section .section-content {
    width: 100%;
    max-width: 320px;
    align-items: center;
    order: 1;
  }
  .mmwc-bucket-section .section-content p {
    text-align: center;
  }

  /*------------ @685 - Page Element: Alternating Images & Text (.alternating-image-plus-text-block) ------------*/
  .alternate-image-text .alternating-image-plus-text-block {
    margin: 0 0 23px 0;
    flex-direction: column;
    row-gap: 16px;
    align-items: center;
    justify-content: center;
  }
  .alternate-image-text .alternating-image-plus-text-block:last-of-type {
    margin: 0;
  }
  /*------ @685 - alternating-image-plus-text-block: circle-version edits ------*/
  .alternate-image-text.circle-version .alternating-image-plus-text-block {
    margin: 0 0 23px 0;
  }
  .alternate-image-text.circle-version .alternating-image-plus-text-block:last-of-type {
    margin: 0;
  }
  /*------ @685 - alternating-image-plus-text-block: left-alignment edits ------*/
  .alternate-image-text .alternating-image-plus-text-block.left-alignment {
    flex-direction: column;
  }
  /*--- @685 - alternating-image-plus-text-block: image ---*/
  .alternate-image-text .alternating-image-plus-text-block .block-image {
    margin: 0 auto;
  }
  /*- @685 - image: circle-version edits -*/
  .alternate-image-text.circle-version .alternating-image-plus-text-block .block-image {
    margin: 0 auto;
  }
  /*--- @685 - alternating-image-plus-text-block: content ---*/
  .alternate-image-text .alternating-image-plus-text-block .block-content {
    width: 100%;
  }
  /*- @685 - content: circle-version edits -*/
  .alternate-image-text.circle-version .alternating-image-plus-text-block .block-content {
    width: 100%;
  }
  /*------------ @685 - Page Element: Galleries ------------*/
  .gallery-slider-container {
    height: 160px;
  }

  /*------------ @685 - right sidebar ------------*/
  .right-sidebar {
    width: calc(100% - 40px);
  }
  .right-sidebar .text-block {
    padding: 0;
  }

  /*------------ @685 - footer ------------*/
  footer .footer-information {
    margin: 0 2em 0 0;
  }
  footer .site-map {
    padding: 0 15px 0 30px;
  }
  footer .site-map:before {
    left: -32px;
  }
  footer .site-map:after {
    width: calc(100% - 210px);
  }
}

/*================ media queries: mobile (500px) ================*/
@media only screen and (max-width: 500px) {
  /*------------ @500 - Base: media restrictions ------------*/
  .desktop, .tablet {
    display: none;
  }
  .mobile {
    display: block;
  }

  /*------------ @500 - header ------------*/
  header a.header-logo img {
    width: 120px;
    height: auto;
  }
  header.show-navigation .header-wrapper {
    padding-top: 100px;
  }

  /*------ @500 - main-content ------*/
  .main-content {
    padding: 95px 0 0 0;
  }

  /*------ @500 - mmwc-circle-container: circles ------*/
  /*--- @500 - circles: xl-body edits ---*/
  .mmwc-circle-container .circles .circle-item {
    width: 100%;
  }
  /*
  .mmwc-circle-container .circles .circle-item .item-image {
    width: 150px;
    height: 150px;
  }
  .main-content.xl-body .mmwc-circle-container .circles .circle-item .item-image {
    width: 150px;
    height: 150px;
  }
  */

  /*------ @500 - mmwc-rectangle-container ------*/
  .mmwc-rectangle-container .rectangles {
    flex-direction: column;
    align-items: center;
  }
  .mmwc-rectangle-container .rectangle {
    width: 100%;
  }
  .mmwc-rectangle-container .rectangle .rectangle-image {
    width: 355px;
    max-width: 100%;
  }


  /*------------ @500 - below body buckets ------------*/
  .mmwc-bucket-section .section-media {
    width: calc(100vw - 40px);
    max-width: 340px;
    height: calc(100vw - 40px);
    max-height: 340px;
  }
  
  /*------------ @500 - footer ------------*/
  footer {
    padding: 60px 0 17px 0;
    flex-direction: column;
    border-bottom: none;
  }
  /*------ @500 - footer: footer-information ------*/
  footer .footer-information {
    width: 100%;
    max-width: 222px;
    margin: 0 auto;
    padding: 0;
    align-items: center;
  }
  footer .footer-information p {
    text-align: center;
  }
  footer .footer-information .logo {
    margin: 0 0 28px 0;
  }
  footer .footer-information .logo img {
    max-width: none;
    max-height: none;
  }
  footer .footer-information .socials-list {
    margin: 18px 0 27px 0;
  }
  /*------ @500 - footer: site-map ------*/
  footer .site-map {
    min-height: 358px;
    margin: 37px 0 26px 0;
    padding: 0 31px 0 0;
    justify-content: flex-end;
  }
  footer .site-map:before {
    width: 358px;
    height: 358px;
    left: 20px;
  }
  footer .site-map:after {
    width: calc(100% - 210px);
    border: 12px solid #fcfcfc;
    border-left: none;
    border-right: none;
    top: -12px;
  }
  footer .site-map ul {
    width: auto;
  }
  footer .site-map ul li {
    width: auto;
  }
  footer .footer-credits {
    margin: 0;
    color: #000;
    font-size: 12px;
    line-height: 14px;
    text-align: center;
    position: relative;
    z-index: 5;
  }
  footer .footer-credits a {
    color: #000;
    font-size: 12px;
    line-height: 14px;
    text-decoration-color: #000;
  }
}

/*================ media queries: mobile (350px) ================*/
@media only screen and (max-width: 350px) {
  /*------ @350 - mmwc-circle-container: circles ------*/
  .mmwc-circle-container .circles .circle-item {
    width: 100%;
  }
}
