/**
 * Theme Name: Common Vision
 * Template:   genesis-block-theme
 * 
 */

 @font-face {
  font-family: 'Playlist';
  src: url('fonts/playlist/Playlist-Script.woff2') format('woff2'),
      url('fonts/playlist/Playlist-Script.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

:root {
  --copy: var(--text-color);
  --col-gap: 2rem;
  --col-gap--lg: 4rem;
  --col-gap--sm: 1.5rem;
  --row-gap: 2rem;
  --row-gap--lg: 4rem;
  --row-gap--sm: 1.5rem;
  --row-gap--xs: 0.75rem;
  --font-size--sm: 1.4rem;
  --font-size--xs: 1.2rem;
  --people-img-width: 25rem;
  --people-img-width-sidebar: 10rem;
  --modal-padding: 4rem;
  --border-color: #ddd;
  --cv-primary-color: #7ccfda;
  --cv-secondary-color: #232c32;
  --cv-tertiary-color: #48656b;
  --admin-bar-bg-color: var(--cv-tertiary-color);
  --top-bar-height: 3.2rem;
  --content-list-border-color: var(--border-color);
  --h1-font-size: 4rem;
  --h2-font-size: 2.4rem;
  --h3-font-size: 2.2rem;
  --h4-font-size: 1.8rem;
  --h5-font-size: 1.6rem;
  --h6-font-size: 1.6rem;
  --page-max-width: calc(128rem + (var(--col-gap) * 2));
  --sidebar-width: 35rem;
  --main-max-width: calc(var(--page-max-width) - var(--sidebar-width) - (var(--col-gap) * 2));
}

#wpadminbar {
  background: var(--admin-bar-bg-color);
}

#wp-admin-bar-root-default {
  display: flex;
  justify-content: flex-end;
}

html, body {
  height: 100%;
  margin: 0;
}

html {
  overflow-y: hidden;
}

body {
  color: var(--copy);
  font-family: var(--secondary-font-family);
  font-weight: var(--secondary-font-weight);
  background: var(--page-background-color);
  overflow: initial;
  overflow-y: auto;
}

.wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

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

article, aside, details, figcaption, figure, footer, header, main, nav, section {
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: none;
  font-family: var(--primary-font-family);
  font-weight: var(--primary-font-weight);
}

h1,
.h1,
.editor-styles-wrapper h1 {
  font-size: var(--h1-font-size);
  margin-bottom: 1rem;
}

h2,
.h2,
.editor-styles-wrapper h2 {
  font-size: var(--h2-font-size);
  margin-bottom: 1rem;
}

h3,
.h3,
.editor-styles-wrapper h3 {
  font-size: var(--h3-font-size);
  margin-bottom: 1rem;
}

h4,
.h4,
.editor-styles-wrapper h4 {
  font-size: var(--h4-font-size);
  margin-bottom: 0.5rem;
}

h5,
.h5,
.editor-styles-wrapper h5 {
  font-size: var(--h5-font-size);
  margin-bottom: 0.5rem;
}

h6,
.h6,
.editor-styles-wrapper h6 {
  font-size: var(--h6-font-size);
  margin-bottom: 0.5rem;
}

hr {
  margin: 2rem 0;
}

p {
  font-size: 1.6rem;
  margin-bottom: 1rem;
}

p:last-child{
  margin-bottom: 0;
}

ul, ol {
  font-size: 1.6rem;
}


.btn,
.wp-block-button__link
{
  color: var(--primary-button-text-color);
  font-weight: var(--primary-button-font-weight);
  font-size: var(--primary-button-font-size);
  background-color: var(--primary-button-background-color);
  border-style: var(--primary-button-border-style);
  border-radius: var(--primary-button-border-radius);
  border-color: var(--primary-button-border-color);
  border-width: var(--primary-button-border-width);
  padding: var(--primary-button-vertical-padding) var(--primary-button-horizontal-padding);
  text-transform: var(--primary-button-text-transform);
  line-height: var(--button-line-height);
}

.wp-block-button.has-extra-large-font-size .wp-block-button__link {
  font-size: calc(var(--primary-button-font-size) * 1.4) !important;
  padding: calc(var(--primary-button-vertical-padding) * 1.4) calc(var(--primary-button-horizontal-padding) * 1.4);
}

.wp-block-button.has-large-font-size .wp-block-button__link {
  font-size: calc(var(--primary-button-font-size) * 1.2) !important;
  padding: calc(var(--primary-button-vertical-padding) * 1.2) calc(var(--primary-button-horizontal-padding) * 1.2);
}

.wp-block-button.has-small-font-size .wp-block-button__link {
  font-size: calc(var(--primary-button-font-size) * 0.8) !important;
  padding: calc(var(--primary-button-vertical-padding) * 0.8) calc(var(--primary-button-horizontal-padding) * 0.8);
}

.page-numbers.current,
.page-numbers:hover {
  background-color: var(--primary-button-background-color) !important;
  color: var(--primary-button-text-color) !important;
}

button:hover, .btn:hover,
.wp-block-button__link:hover {
  color: var(--primary-button-text-hover-color);
  border-color: var(--primary-button-border-hover-color);
  background-color: var(--primary-button-background-hover-color);
}

.btn--sm {
  font-size: var(--btn-sm-font-size);
  padding: var(--btn-sm-padding);
}

.tribe-events .tribe-events-c-search__button,
.tribe-events button.tribe-events-c-search__button,
.tribe-events .tribe-events-c-search__button:focus,
.tribe-events button.tribe-events-c-search__button:focus {
  color: var(--primary-button-text-color);
  background-color: var(--primary-button-background-color);
  font-weight: var(--primary-button-font-weight);
  font-size: var(--primary-button-font-size);
  border-style: var(--primary-button-border-style);
  border-radius: var(--primary-button-border-radius);
  border-color: var(--primary-button-border-color);
  border-width: var(--primary-button-border-width);
  padding: var(--primary-button-vertical-padding) var(--primary-button-horizontal-padding);
  text-transform: var(--primary-button-text-transform);
}
.tribe-events .tribe-events-c-search__button:hover,
.tribe-events button.tribe-events-c-search__button:hover,
.tribe-events .tribe-events-c-search__button:focus:hover,
.tribe-events button.tribe-events-c-search__button:focus:hover {
  color: var(--primary-button-text-hover-color);
  border-color: var(--primary-button-hover-border-color);
  background-color: var(--primary-button-hover-background-color);
  border-style: var(--primary-button-border-style);
  border-radius: var(--primary-button-border-radius);
  border-color: var(--primary-button-border-color);
  border-width: var(--primary-button-border-width);
}

.tribe-common .tribe-common-c-btn-border, .tribe-common a.tribe-common-c-btn-border {
  color: var(--primary-button-background-color);
  border-color: var(--primary-button-background-color);
}

.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button.tribe-events-c-subscribe-dropdown__button--active, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within, .single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button.tribe-events-c-subscribe-dropdown__button--active, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:focus-within, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button:hover {
  background-color: var(--primary-button-background-color);
  color: var(--primary-button-text-color);
}

.tribe-events-meta-group a {
  color: var(--hyperlink-text-color);
}

.tribe-events-event-meta a:focus, .tribe-events-event-meta a:hover {
  color: var(--hyperlink-text-color);
}

a {
  color: var(--hyperlink-text-color);
  font-weight: var(--hyperlink-font-weight);
}
.entry-content p a {
  color: var(--hyperlink-text-color) !important;
  box-shadow: none !important;
}

.entry-content .meta-list a {
  color: var(--hyperlink-text-color) !important;
  font-weight: normal;
}

.entry-content p a:hover {
  color: var(--hyperlink-text-color);
  box-shadow: none;
}

.entry-content .wp-block-buttons {
  margin: 1rem 0;
}

.entry-content li {
  margin-bottom: 0.5rem;
}

.entry-content .wp-block-heading:not(:first-child) {
  margin-top: 2rem;
}

.entry-content .iframe-wrapper {
  position: relative;
  padding-bottom: 56.26%;
}

.entry-content .iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.sr-only {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.content-area {
  display: flex;
  flex-direction: column;
  row-gap: var(--row-gap);
}

.post-content {
  display: flex;
  flex-direction: column;
  row-gap: var(--row-gap);
}

.site-main {
  width: 100%;
  display: flex;
  flex-direction: column;
  row-gap: var(--row-gap);
}

.site-main .share-bar {
  border-top: 1px solid var(--border-color);
  padding-top: 1rem;
}

.entry-header {
  display: flex;
  flex-direction: column;
  row-gap: var(--row-gap);
}

.entry-header .entry-title,
.editor-post-title__input {
  font-size: var(--h1-font-size);
  font-weight: var(--primary-font-weight);
  margin-bottom: 0.5rem;
}

.entry-header .entry-title {
  margin-bottom: 0;
  padding-bottom: 1rem;
  border-bottom: 0.1rem solid var(--border-color);
}


.entry-header .entry-title a, .editor-post-title__input a {
  color: var(--hyperlink-text-color);
}

.wp-block-group.alignfull {
  padding: 0;
}

:where(.wp-block-button__link) {
  border-radius: 0;
}

.post .entry-header {
  margin-bottom: 0;
}

#page {
  padding-top: 0;
  flex: 1;
}

.single #page {
  margin: 0;
}

.site-content {
  padding: 0;
}

#primary {
  width: 100%;
  max-width: var(--page-max-width);
  margin: 0 auto;
  padding: var(--page-padding-top) var(--col-gap) var(--page-padding-bottom);
  display: flex;
  column-gap: var(--col-gap--lg);
}

#tribe-events-pg-template {
  display: flex;
  padding: 0;
  max-width: 100%;
}

@media (min-width: 1001px){
  #primary, #tribe-events-pg-template {
    flex-direction: row;
  }
}

.featured-image {
  margin-bottom: 0;
}
.featured-image-full-width {
  height: 20vw;
  width: 100%;
  background-size: var(--featured-image-background-size);
  background-repeat: no-repeat;
  background-color: var(--featured-image-background-color);
  display: flex;
  background-position: var(--featured-image-horizontal-alignment) var(--featured-image-vertical-alignment);
  position: relative;
}
.featured-image-full-width:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--featured-image-overlay-color);
}
.featured-image-layout-upper-right {
  float: right;
  width: 50%;
  margin: 0 0 3rem 3rem;
}
.featured-image-layout-upper-left {
  float: left;
  width: 50%;
  margin: 0 3rem 3rem 0;
}
.featured-image-title {
  position: relative;
  z-index: 1;
  color: var(--featured-image-title-color);
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

aside > div {
  margin-bottom: 2rem;
}

aside > div:last-child {
  margin-bottom: 0;
}

aside .wp-block-button, 
aside .wp-element-button {
  width: 100%;
}

.has-sidebar .entry-content .alignfull,
.has-sidebar .entry-content .alignwide {
  max-width: 100%;
  width: 100%;
  margin-left: 0;
}

@media (min-width: 1001px) {
  .has-sidebar {
    display: flex !important;
  }
  .has-sidebar > aside {
    width: var(--sidebar-width);
    flex: none;
  }
  .sidebar-location--left > aside {
    order: 1;
    margin-left: 0;
    margin-right: auto;
  }
  .sidebar-location--left > .site-main {
    order: 2;
  }
}

.page-header {
  padding: 4rem 0 0 0;
}
.header-text {
  text-align: left;
  margin: 0 0 2rem 0;
}

.slideshow .slick-arrow {
  z-index: 1;
}
.slideshow .slick-prev:before,
.slideshow .slick-next:before {
  font-size: 3rem;
}

.slideshow .slick-prev {
  left: 25px;
}
.slideshow .slick-next {
  right: 25px;
}
.slideshow .slick-list,
.slideshow .slick-track {
  height: 100%;
}
.slideshow {
  position: relative;
  z-index: 1;
  height: 60vh;
}
.slideshow * {
  outline: none;
}
.slideshow .slider {
  margin: 0;
  height: 100%;
}
.slideshow .slider-track {
  transition: all 1s cubic-bezier(0.7, 0, 0.3, 1);
}
.slideshow .slide {
  height: 100%;
  width: 100%;
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.slideshow .slide-video {
  margin: 0 auto;
  position: absolute;
  z-index: 1;
}
.slideshow .slide-image {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  transition: all 1s cubic-bezier(0.7, 0, 0.3, 1);
  transform: scale(1.2);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.slideshow .slide.slick-active .slide-image {
  transform: scale(1);
}

.slideshow .slide-btn {
  margin-top: 2rem;
  font-size: 1.6rem;
}

.slide-overlay {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 1;
}
.slide-title {
  margin-bottom: 0;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.2), 1px 1px 2px rgba(0,0,0,0.2);
}
.slide-btn {
  padding: 2rem;
}
.slide-content {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  width: 100%;
  z-index: 2;
  padding-bottom: 6rem;
}

.top-btn {
  font-size: 1.25rem;
  padding: 0.25rem 1.5rem;
  border: none;
  border-radius: 0;
}

.top-message {
  display: flex;
  align-items: center;
}

.top-message svg {
  margin-left: 0.25rem;
  width: 1.5rem;
}

/* Start: Top Bar
***********************/
.top-bar {
  display: none;
  align-items: center;
  justify-content: space-between;
  color: var(--top-bar-color);
  background-color: var(--top-bar-background-color);
  font-size: 1.2rem;
  height: var(--top-bar-height);
  padding-left: var(--top-bar-padding-left);
  padding-right: var(--top-bar-padding-right);
}

.top-bar svg {
  width: 1.5rem;
}

.top-bar a {
  color: var(--top-bar-color);
  font-weight: 600;
}

.top-bar__contact {
  height: 100%;
  display: flex;
  align-items: center;
}

.top-bar__contact svg {
  margin-right: 0.25rem;
}

.top-bar .btn--sm {
  height: 100%;
  margin-left: 1rem;
  border-radius: 0;
}

.top-bar__secondary {
  display: flex;
  margin-left: auto;
  height: 100%;
}

@media (min-width: 1000px) {
  .top-bar {
    display: flex;
  }
  .top-bar__secondary {
    margin-left: auto;
  }
}
/* End: Top Bar
*************************/

/* Start: Share Bar
***********************/
.share-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.share-bar h3 {
  font-size: 1.6rem;
  margin: 0;
}
.share-bar ul {
  list-style: none;
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
}
.share-bar li:not(:first-child) {
  margin-left: 1rem;
}
.share-bar .facebook svg {
  width: 2.5rem;
}
.share-bar .twitter svg {
  width: 2.25rem;
}
.share-bar .icon--email {
  fill: var(--primary-color);
  width: 4.25rem;
  height: auto;
}
.share-buttons a {
  display: flex;
}
/* End: Share Bar
*************************/

/* Start: Header
***********************/
.site-header {
  position: var(--site-header-position-mobile);
  top: 0;
  display: flex;
  flex-direction: column;
  background: none;
}

.site-header__top {
  height: 100%;
  flex: none;
}

.site-header__main {
  background: var(--site-menu-background-color-mobile);
  border-style: solid;
  border-color: var(--site-menu-border-color);
  border-bottom-width: var(--site-menu-border-width);
  width: 100%;
  height: var(--site-header-height-mobile);
  padding: 0 2rem;
}

body.has-slideshow .site-header__main {
  border-width: 0;
}

@media (max-width: 1000px) {
  .site-header__top {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media (min-width: 1001px) {
  .site-header__main {
    height: var(--site-header-height);
    display: flex;
    flex-direction: row;
    background: var(--site-menu-background-color);
    align-items: center;
    position: var(--site-menu-position);
  }

  .site-header {
    position: var(--site-header-position);
  }

  .site-header.logo--top .site-header__main {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: auto;
    padding-top: 2rem;
  }

  .site-header.logo--top .site-header__navigation {
    height: var(--site-header-height);
  }

  .site-header.logo--left .site-header__navigation {
    margin-left: auto;
  }

  .site-header.logo--center .site-header__top .site-logo {
    display: none;
  }

  .site-header.logo--center .site-header__navigation {
    margin: 0 auto;
  }

  .site-header.logo--center .main-navigation ul li {
    flex: none;
  }
  
  .site-header.logo--top .site-logo {
    transform: none;
    top: 0;
  }
}
/* End: Header
***********************/

/* Start: Logo
***********************/
.site-logo {
  position: var(--site-logo-position-mobile);
  top: var(--site-logo-top-mobile);
  width: auto;
  height: var(--site-logo-size-mobile);
  flex: none;
  display: flex;
}

.site-logo img {
  height: 100%;
  position: relative;
}

.site-logo-desktop {
  display: none;
}

@media (min-width: 1001px) {
  .site-logo {
    transform: translateY(-50%);
    top: 50%;
    height: var(--site-logo-size);
    position: relative;
  }

  .site-logo-desktop {
    display: block;
  }

  .site-logo-mobile {
    display: none;
  }
}
/* End: Logo
***********************/

/* Start: Navigation
***********************/
#menu-main-menu .last-top-level-menu-item .sub-menu {
  margin-left: 0;
}

.main-navigation .sub-menu {
  background: var(--site-menu-background-color-mobile);
  overflow-y: hidden;
  padding: 1rem 0;
  box-shadow: 5px 5px 15px rgba(0,0,0,0.25)
}

.main-navigation .sub-menu::before,
.main-navigation li:hover:after {
  display: none !important;
}

.main-navigation li a,
.main-navigation li ul a,
.main-navigation li ul li a {
  color: var(--navigation-item-text-color);
  border: none;
  font-size: var(--navigation-item-font-size);
  font-weight: 700;
  display: flex;
  align-items: center;
}

.main-navigation li a:hover,
.main-navigation li ul a:hover,
.main-navigation li ul li a:hover {
  color: var(--navigation-item-text-color);
}

.main-navigation ul li.current-menu-item a,
.main-navigation ul li.current-page-item a,
.main-navigation ul li.current-menu-item ul a,
.main-navigation ul li.current-page-item ul a,
.main-navigation ul .sub-menu li.current-menu-item a, 
.main-navigation ul .sub-menu li.current-page-item a {
  color: var(--navigation-item-text-color) !important;
  font-weight: 700;
}

.menu-item:not(.show-mobile) {
  display: none;
}
.menu-item.show-mobile{
  display: inline-block;
}

.site-header__navigation .main-navigation .btn-nav-item {
  position: relative;
  width: 12rem;
  margin-bottom: 0.8rem;
  display: block;
}
.site-header__navigation .main-navigation .btn-nav-item button {
  left: 0;
  top: -1.2rem;
  padding: 0;
  position: absolute;
  border: none;
}
.site-header__navigation .main-navigation .btn-nav-item button:hover {
  background: none;
  box-shadow: none;
}
.site-header__navigation .main-navigation .btn-nav-item button svg {
  width: 100%;
  filter: drop-shadow(2px 2px 3px #444444);
}
.site-header__navigation .main-navigation .btn-tray-one {
  position: absolute;
}

.menu-item-search .menu-item-label {
  display: none;
}

.menu-item-search svg {
  display: none;
}

.menu-toggle {
  display: flex;
  align-items: center;
}

.menu-toggle svg {
  fill:var(--mobile-navigation-button-color);
  width: 4rem;
  height: 4rem;
}

.menu-toggle .icon--close {
  display: none;
}

.toggle-active .icon--menu {
  display: none;
}
.toggle-active .icon--close {
  display: block;
}

@media (min-width: 769px) {
  .main-navigation .sub-menu {
    background: var(--site-menu-background-color-tablet);
  }
}

@media (min-width: 1001px) {
  .last-top-level-menu-item .sub-menu {
    transform: translateX(-50%);
  }

  .menu-centered {
    width: 100%;
    display: flex;
    justify-content: space-between;
  }

  .menu-centered .menu-container {
    flex-basis: 0;
    flex-grow: 1;
  }

  #menu-left {
    display: flex;
    justify-content: flex-end;
    margin-right: 1rem;
  }

  #menu-right {
    display: flex;
    justify-content: flex-start;
    margin-left: 1rem;
  }

  .main-navigation .sub-menu {
    background: var(--site-menu-background-color);
  }
  .menu-item:not(.show-desktop){
    display: none;
  }
  .menu-item.show-desktop {
    display: inline-block;
  }
  .site-header__navigation {
    flex: none;
    height: 100%;
    width: auto;
  }
  .site-header__navigation .sub-menu {
    margin-left: 0 !important;
  }
  .site-header__navigation .main-navigation {
    display: flex;
    justify-content: flex-end;
    text-transform: uppercase;
    font-size: 1.4rem;
    z-index: 2;
    width: 100%;
    height: 100%;
    margin-left: auto;
  }

  .main-navigation li a {
    padding: 3rem 1.5rem;
  }

  .main-navigation li ul a,
  .main-navigation li ul li a {
    text-transform: uppercase;
    position: relative;
    z-index: 1;
    padding: 0.5rem 2rem;
  }

  .main-navigation .menu-main-menu-container > ul {
    display: flex;
    width: 100%;
    margin: 0 auto;
    height: 100%;
    max-width: 1400px;
  }

  .main-navigation ul li {
    padding: 0;
  }
  .main-navigation ul li a {
    display: inline-flex;
    align-items: center;
    margin: 0;
    height: 100%;
    width: 100%;
  }
  .site-header__navigation
    .main-navigation.tray-one-enabled
    .menu
    > .menu-item:first-child {
    display: none;
  }

  .main-navigation .sub-menu,
  .main-navigation .children {
    top: 100%;
  }
  
  .menu-item-search {
    display: inline-flex !important;
    align-items: center;
    height: 100%;
    margin-left: 0.5rem;
  }
  .menu-item-search a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem !important;
    height: 4rem !important;
    padding: 0 !important;
    border-radius: 50%;
    background-color: var(--search-button-background-color);
  }
  .menu-item-search svg {
    display: block;
    width: 2rem;
    height: 2rem;
    fill: var(--search-button-icon-color);
  }
}

@media (max-width: 1000px) {
  body.menu-open {
    overflow: hidden;
  }

  .menu-item-search .menu-item-label {
    display: block;
  }
}
/* End: Navigation
***********************/

/* Start: Drawer
***********************/
@media (max-width: 1000px) {
  .mobile-navigation.mobile-navigation {
    background: none;
    display: flex;
    margin-left: auto;
    width: auto;
    padding: 0;
  }

  .mobile-navigation .button-toggle {
    color: var(--mobile-navigation-button-color);
    border: none;
  }

  .mobile-navigation .button-toggle:hover,
  .mobile-navigation .button-toggle:active {
    background: none;
  }

  .drawer-wrap {
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0;
  }

  .drawer-menu-explore {
    background: var(--site-menu-background-color-mobile);
    padding: 0;
  }

  .drawer .drawer-navigation {
    overflow-y: auto;
    height: calc(100vh - 8.6rem);
  }

  .drawer .drawer-navigation ul li,
  .drawer .drawer-navigation .sub-menu li:first-child {
    border-bottom: 1px solid rgba(255,255,255,0.25);
  }
  .drawer .drawer-navigation li ul a,
  .drawer .drawer-navigation li ul li a {
    padding: 1.5rem;
  }

  .drawer .drawer-navigation ul li a {
    width: 100%;
    text-transform: uppercase;
    font-size: 1.4rem;
    padding: 1.5rem;
    display: flex;
    align-items: center;
  }

  .drawer .drawer-navigation a:hover {
    color: var(--navigation-item-text-color);
  }

  .drawer nav {
    padding: 0;
  }

  .drawer .menu-item-has-children .toggle-sub {
    border: none;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,0,0,0.2);
    color: var(--mobile-navigation-button-color);
  }
  
  .drawer .drawer-navigation .sub-menu,
  .drawer .drawer-navigation .children {
    margin: 0;
    padding: 0;
    background-color: rgba(0,0,0,0.2);
  }

  .drawer .drawer-navigation a {
    color: var(--navigation-item-text-color);
  }
}
/* End: Drawer
*************************/

/* Start: Footer
***********************/
.site-footer {
  background: var(--footer-background-color);
  color: var(--footer-text-color);
  border-style: solid;
  border-width: 0;
  border-top-width: var(--footer-border-width);
  border-color: var(--footer-border-color);
}

.site-footer a {
  color: var(--footer-text-color);
}

.site-footer a:hover {
  color: var(--footer-text-color);
}

.site-footer .widget-title {
  color: var(--footer-text-color);
}

.site-footer .gform-theme--framework,
.site-footer .gform-theme--framework .gform-field-label,
.site-footer .gform-theme--framework .gfield_description {
  --gf-ctrl-label-color-tertiary: var(--footer-text-color);
  --gf-ctrl-label-color-primary: var(--footer-text-color);
  --gf-local-color: var(--footer-text-color);
  color: var(--footer-text-color);
}

.site-footer .tribe-common {
  --tec-color-text-primary: var(--footer-text-color);
  --tec-color-link-accent: var(--footer-text-color);
  --tec-color-accent-primary: var(--footer-text-color);
}
/* End: Footer
*************************/

/* Start: Trays
***********************/
.btn-tray-one {
  background: none;
  position: relative;
}

.tray-one-toggle-bg,
.tray-one-toggle-edge {
  fill: var(--tray-one-button-background-color);
}
.tray-one-toggle-edge {
  opacity: 0.4;
}

.btn-tray-one .btn-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 2rem 3rem;
  color: var(--tray-one-button-label-color);
  font-family: var(--secondary-font-family);
  font-weight: 700;
  text-transform: uppercase;
  font-size: var(--navigation-item-font-size);
}

.btn-tray-two {
  background: var(--tray-two-button-background-color);
  margin-left: 1rem;
}

.btn-tray-two .btn-label {
  color: var(--tray-two-button-label-color);
}

.tray {
  padding: 5rem;
  font-size: 1.6rem;
  background: #fff;
  position: absolute;
  /*top: -100%;*/ /* Position above the viewport */
  left: 0;
  width: 100%;
  transition: all 0.3s ease-in-out; /* Smooth transition */
  transform: translateY(-100%);
  z-index: 1000; /* Ensure it stays above other content */
  box-sizing: border-box;
}

.site-header-content {
  transition: margin-top 0.3s ease-in-out;
  margin-top: calc(100vh - 100vh + var(--panel-height, 0px));
}


.tray.is-open {
  /* margin-top: 0 !important;
  opacity: 1;
  z-index: 1;
  flex: 1; */
  top: 0;
  transform: translateY(0);
}

.tray p:last-child {
  margin-bottom: 0;
}

.tray-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.tray-image {
  background-size: cover;
  width: 20rem;
  height: 20rem;
  margin-bottom: 5rem;
  border-radius: 50%;
  flex: none;
}

.tray-close {
  background: none;
  padding: 0;
  line-height: 1;
  position: absolute;
  top: 2rem;
  right: 2rem;
  width: 3rem;
  height: 3rem;
  border: none;
}
.tray-close svg {
  fill: var(--text-color);
  width: 3rem;
  height: 3rem;
}

@media (min-width: 768px) {
  .tray-inner {
    flex-direction: row;
    align-items: center;
  }
  .tray-image {
    margin: 0 5rem 0 0;
  }
}

@media (min-width: 1200px) {
  .tray {
    padding: 5rem 20rem 5rem 20rem;
  }
}
/* End: Trays
*************************/

/* Start: Modals / Featherlight
*********************************/
.featherlight .featherlight-content {
  padding: 0;
  border-bottom: 0;
  width: 100%;
  max-width: 90rem;
}
.featherlight .featherlight-close-icon {
  top: 1rem;
  right: 1rem;
  font-size: 3rem;
}
.featherlight:last-of-type {
  background: rgba(0, 0, 0, 0.4);
}
.modal {
  width: 100%;
}
.modal-layout--three .modal-image {
  padding: 0;
}
.modal-title {
  padding: var(--modal-padding) var(--modal-padding) 0 var(--modal-padding);
  margin: 0 0 2rem 0;
  font-size: 2.4rem;
}
.modal-content {
  padding: 0 var(--modal-padding) var(--modal-padding) var(--modal-padding);
}
.modal-image {
  padding: 0rem var(--modal-padding) 0 var(--modal-padding);
  margin: 2rem 0;
}
.modal-content p:last-child {
  margin-bottom: 0;
}
.modal-content .confirm-button {
  width: 100%;
}
.modal-close-button {
  display: flex;
  position: absolute;
  background: none;
  padding: 0;
  top: 1rem;
  right: 1rem;
}
.modal-close-button .icon--close {
  fill: var(--copy);
  width: 3rem;
  height: 3rem;
}

.mv-podcast-modal .modal-title {
  margin-bottom: 1rem;
}

.mv-podcast-modal .podcast-episode {
  margin-top: 3.2rem;
}
/* End: Modals / Featherlight
*********************************/

aside .archive-menu {
  margin-bottom: 2rem;
  font-size: 1.6rem;
}

aside .archive-menu-title {
  margin-bottom: 1rem;
}

.post-label {
  color: var(--secondary-color);
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 700;
}

.blog .header-text {
  display: block;
}

.tribe-common--breakpoint-medium.tribe-common .tribe-common-l-container {
  padding-left: 0;
  padding-right: 0;
}

/* Start: Accordion (Details)
***********************/

.wp-block-details[open] summary {
  margin-bottom: 1.5rem;
}

/* End: Accordion (Details)
*************************/


.searchform .searchsubmit {
  background: var(--primary-button-background-color) !important;
  color: var(--primary-button-text-color) !important;
}


.podcast_meta {
  margin-top: 1rem;
}

.post-navigation {
  line-height: 1.2;
}
.post-navigation .meta-title {
  font-size: 1.4rem;
}
.post-navigation .post-title {
  font-size: 1.6rem;
}

.nav-next, .nav-previous {
  padding-bottom: 1rem;
}


.castos-player br,
.castos-player p,
.playback__controls br,
.play-pause-controls br {
  display: none;
}
.playback__controls button {
  padding: 0;
}



.blog .post:not(:last-of-type), .archive #post-wrap .post:not(:last-of-type), .search .post:not(:last-of-type) {
  padding: 0;
  margin: 0;
}

.search-results .entry-byline {
  display: none;
}

.search-results .entry-title {
  font-size: 1.8rem;
}

.search-results #post-wrap {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
}

.search-results .post-content {
  row-gap: 0.5rem;
}

.page-header .text-container {
  display: flex;
  flex-direction: column;
  row-gap: var(--row-gap);
}

.page-header .text-container:before,
.page-header .text-container:after {
  display: none;
}