/*
Theme Name: MOS
Template: apparatus
Theme URI: https://www.pixouls.com/
Author: Pixouls
Author URI: https://www.pixouls.com/
Description: Apparatus child theme by Pixouls.
Version: 1.3.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: apparatus-child
Tags:
*/

/* ==========================================================================
   $RESET
   ========================================================================== */

   [id] { scroll-margin-top: 18.4rem; }

   /* ==========================================================================
      $TYPE
      ========================================================================== */
   
   @font-face {
       font-family: 'TAN Angleton';
       src: url('assets/fonts/tan_-_angleton_regular-webfont.woff2') format('woff2'),
            url('assets/fonts/tan_-_angleton_regular-webfont.woff') format('woff');
       font-weight: 400;
       font-style: normal;
       font-display: block;
   }
   @font-face {
       font-family: 'TAN Angleton';
       src: url('assets/fonts/tan_-_angleton_italic-webfont.woff2') format('woff2'),
            url('assets/fonts/tan_-_angleton_italic-webfont.woff') format('woff');
       font-weight: 400;
       font-style: italic;
       font-display: block;
   }
   
   ::-moz-selection {
       background-color: var(--c-pri);
   }
   
   ::selection {
       background-color: var(--c-pri);
   }
   
   html {
       font-family: "Poppins", sans-serif;
   }
       body {
           font-size: 1.4rem;
       }
   
   h1, h2, h3, h4, h5 {
       font-family: 'TAN Angleton', Georgia, serif;
       line-height: 1.5;
       text-wrap: balance;
       word-spacing: -.15em;
   }
   h1 {
       font-size: 5.6rem;
   }
   
   p { line-height: 1.75; }
   
   
   /* ==========================================================================
      $HEADER
      ========================================================================== */
   
   .hdr {
       color-scheme: dark;
   }
       .hdr__logo-img {
           height: 4.8rem;
       }
       .hdr__cta.button {
           margin-left: auto;
           -ms-flex-item-align: center;
               -ms-grid-row-align: center;
               align-self: center;
       }
   
   
   /* ==========================================================================
      $NAV
      ========================================================================== */
   
   .nav__link,
   .nav__button {
       font-family: 'TAN Angleton', Georgia, serif;
       font-size: 1.0rem;
   }
       .nav__button-text {
           color: var(--c-fg);
       }
       .nav__sub-link {
           padding: .8rem 1.6rem;
           -webkit-transition: background-color 0.15s linear, color 0.15s linear;
           -o-transition: background-color 0.15s linear, color 0.15s linear;
           transition: background-color 0.15s linear, color 0.15s linear;
       }
   @media only screen and (max-width: 768px) {
       .nav__link,
       .nav__button {
           font-size: 2.4rem;
       }
   }
   
   /* ==========================================================================
      $FLX OVERRIDES
      ========================================================================== */
   
   /* Editorial */
   .flx__col--editorial ul,
   .flx__col--editorial ol {
       line-height: 1.75;
   }
   
   /* Grid */
   .flx--featured-ctas .flx-grid__item {
       background: var(--c-bg);
       gap: 0;
       -webkit-box-shadow: 0 .1rem .4rem var(--c-10);
               box-shadow: 0 .1rem .4rem var(--c-10);
   }
   .flx--featured-ctas .flx-grid__item:hover {
       -webkit-box-shadow: 0 .8rem 2.4rem var(--c-10);
               box-shadow: 0 .8rem 2.4rem var(--c-10);
   }
       .flx--featured-ctas .flx-grid__item-content {
           padding: 2.4rem;
       }
   a.flx-grid__item {
       -webkit-transition: -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
       transition: -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
       -o-transition: transform .25s ease, box-shadow .25s ease;
       transition: transform .25s ease, box-shadow .25s ease;
       transition: transform .25s ease, box-shadow .25s ease, -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
   }
   a.flx-grid__item:hover {
       -webkit-transform: translateY(-.4rem);
           -ms-transform: translateY(-.4rem);
               transform: translateY(-.4rem);
   }
   .flx--reviews a.flx-grid__item {
       -webkit-box-shadow: none;
               box-shadow: none;
   }
   
   /* Accordion */
   .flx-acc {
       border-top: none;
       gap: 1.6rem;
   }
       .flx-acc__item {
           border-bottom: none;
           background: var(--c-bg);
           border-radius: .8rem;
           -webkit-box-shadow: 0 .1rem .4rem var(--c-10);
                   box-shadow: 0 .1rem .4rem var(--c-10);
       }
           .flx-acc__title {
               padding: 2.4rem 5.6rem 2.4rem 2.4rem;
               font-family: 'TAN Angleton', Georgia, serif;
               font-size: 1.6rem;
               font-weight: 700;
               line-height: 1.5;
               word-spacing: -.15em;
           }
               .flx-acc__title::after {
                   right: 2.4rem;
               }
           .flx-acc__content {
               padding: 0 2.4rem 2.4rem;
               font-size: 1.4rem;
               line-height: 1.75;
           }
   
   
   /* ==========================================================================
      $FLX-CUSTOM
      ========================================================================== */
   
   .overline {
       line-height: 1;
   }
   
   .wp-block-separator, hr {
       border-color: var(--c-05);
   }
   
   .flx--hero-utility h1 {
       font-size: 4.8rem;
   }
   
   .flx--hero-default {
       background-color: var(--c-sec);
   }
   
   .flx--hero-home {
       background-color: var(--c-sec);
       padding-block: 17.6rem 22.4rem;
   }
       .flx--hero-home::after {
           z-index: 10;
           content: '';
           position: absolute;
           bottom: -1.6rem;
           left: 50%;
           -webkit-transform: translateX(-50%);
               -ms-transform: translateX(-50%);
                   transform: translateX(-50%);
           background: url(assets/img/weathervane.svg) center / cover no-repeat scroll transparent;
           width: 10.4rem;
           height: auto;
           aspect-ratio: 400/376;
           -o-object-fit: cover;
              object-fit: cover;
       }
       .flx--hero-home h1 {
           font-weight: 400;
           text-transform: uppercase;
           font-size: 8.0rem;
           line-height: 1.25;
           margin-block: 2.4rem 1.6rem;
       }
       .flx--hero-home h2 {
           text-align: center;
           font-style: italic;
           font-weight: 400;
           color: var(--c-pri);
           margin: 0;
       }
       .flx--hero-home .overline {
           margin: 0;
       }
   @media only screen and (max-width: 768px) {
       .flx--hero-home {
           padding-block: 22.4rem 27.2rem;
       }
       .flx--hero-home h1 {
           font-size: 5.6rem;
       }
   }
   
   /* ==========================================================================
      $BAR
      ========================================================================== */
   
   .hdr__bar-wrap {
       background-color: var(--c-pri);
   }
   .hdr__bar {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-align: center;
           -ms-flex-align: center;
               align-items: center;
       -webkit-box-pack: end;
           -ms-flex-pack: end;
               justify-content: flex-end;
       gap: 1.6rem;
       line-height: 3.2rem;
       width: var(--w-lg);
       margin: 0 auto;
   }
   .hdr__bar .notif {
       width: auto;
       -webkit-box-flex: 1;
           -ms-flex: 1;
               flex: 1;
       min-width: 0;
       background-color: transparent;
       -webkit-box-pack: start;
           -ms-flex-pack: start;
               justify-content: flex-start;
       padding: 0;
   }
   .hdr__bar .notif:hover {
       background-color: transparent;
   }
   .notif__button {
        background-color: var(--c-05);
        border-left: .1rem solid var(--c-25);
        border-right: .1rem solid var(--c-25);
        -webkit-transition: background-color .15s linear;
        -o-transition: background-color .15s linear;
        transition: background-color .15s linear;
   }
   .hdr__bar .notif:hover .notif__button {
        background-color: var(--c-25);
   }
   .notif__button::after {
       content: ' \2192';
       font-size: 1.4rem;
   }
   .hdr__bar-actions {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-align: center;
           -ms-flex-align: center;
               align-items: center;
       -ms-flex-negative: 0;
           flex-shrink: 0;
   }
   .hdr__bar-action {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-align: center;
           -ms-flex-align: center;
               align-items: center;
       gap: .4rem;
       color: var(--c-w);
       background-color: var(--c-05);
       border-left: .1rem solid var(--c-25);
       padding: 0 1.6rem;
       font-size: 1.2rem;
       font-weight: 600;
       white-space: nowrap;
       -webkit-transition: background-color .15s linear;
       -o-transition: background-color .15s linear;
       transition: background-color .15s linear;
   }
   .hdr__bar-action:last-child {
       border-right: .1rem solid var(--c-25);
   }
   .hdr__bar-action:hover {
       background-color: var(--c-25);
   }
   .hdr__bar-action-icon {
       width: 1.2rem;
       height: 1.2rem;
       fill: currentColor;
   }
   
   @media only screen and (max-width: 768px) {
       .notif__button {
           display: none;
       }
       .hdr__bar-actions {
           -ms-flex-item-align: stretch;
               -ms-grid-row-align: stretch;
               align-self: stretch;
       }
       .hdr__bar-action {
           height: 100%;
       }
       .hdr__bar-action-text {
           display: none;
       }
       .hdr__bar-action-icon {
           width: 1.4rem;
           height: 1.4rem;
       }
   }
   
   
   /* ==========================================================================
      $VIM-TRIGGER
      ========================================================================== */
   
   .vim-trigger__play-icon {
       width: 11.2rem;
       height: 11.2rem;
       border: .2rem solid var(--c-pri);
       border-radius: 50%;
       padding: .4rem;
   }
   
   
   /* ==========================================================================
      $TESTIMONIALS
      ========================================================================== */
   
   .testimonial__quote {
       line-height: 1.75;
   }
   .testimonial__quote p::before,
   .testimonial__quote p::after {
       content: '"';
   }
   .testimonial__content {
       -webkit-box-align: center;
           -ms-flex-align: center;
               align-items: center;
   }
   .testimonial__content::after {
       content: '';
       display: block;
       width: 10.4rem;
       height: 1.6rem;
       background: url(assets/img/stars.svg) center / contain no-repeat;
       margin-top: .8rem;
   }
   .testimonial__quote p:last-child {
       margin-bottom: 0;
   }
   
   
   
   /* ==========================================================================
      $GAL
      ========================================================================== */
   
   .gal-swiper--auto .swiper-slide {
       padding-right: .8rem;
   }
   .gal-swiper--auto .swiper-slide:first-child {
       padding-left: .8rem;
   }
   
   
   /* ==========================================================================
      $FOOTER
      ========================================================================== */
   
   .ftr {
       color-scheme: dark;
       background: var(--c-bg);
       color: var(--c-fg);
       padding-block: 8.0rem;
       font-size: 1.4rem;
       line-height: 1.6;
       width: auto;
       margin-inline: 0;
   }
       .ftr a {
           text-decoration: none;
           -webkit-transition: all .15s linear;
           -o-transition: all .15s linear;
           transition: all .15s linear;
       }
       .ftr a:hover {
           opacity: .7;
       }
       .ftr__inner {
           gap: 4.0rem;
       }
           .ftr__top {
               display: -ms-grid;
               display: grid;
               -ms-grid-columns: 3fr 4.0rem 2fr;
               grid-template-columns: 3fr 2fr;
               gap: 4.0rem;
           }
               .ftr__brand {
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   gap: 2.4rem;
                   -webkit-box-align: start;
                       -ms-flex-align: start;
                           align-items: flex-start;
               }
                   .ftr__brand-badge {
                       width: 12.0rem;
                       height: auto;
                       -ms-flex-negative: 0;
                           flex-shrink: 0;
                   }
                   .ftr__brand-info {
                       display: -webkit-box;
                       display: -ms-flexbox;
                       display: flex;
                       -webkit-box-orient: vertical;
                       -webkit-box-direction: normal;
                           -ms-flex-direction: column;
                               flex-direction: column;
                       gap: 2.4rem;
                   }
                       .ftr__brand-about {
                           margin: 0;
                           font-size: 1.2rem;
                           color: var(--c-75);
                       }
                   .ftr__subscribe {
                       display: -webkit-box;
                       display: -ms-flexbox;
                       display: flex;
                       gap: .8rem;
                   }
                       .ftr__subscribe-input {
                           -webkit-box-flex: 1;
                               -ms-flex: 1;
                                   flex: 1;
                           padding: 1.2rem 1.6rem;
                           border: .1rem solid var(--c-25);
                           border-radius: .4rem;
                           background: transparent;
                           color: var(--c-fg);
                           font-size: 1.4rem;
                       }
                       .ftr__subscribe-input::-webkit-input-placeholder {
                           color: var(--c-50);
                       }
                       .ftr__subscribe-input::-moz-placeholder {
                           color: var(--c-50);
                       }
                       .ftr__subscribe-input:-ms-input-placeholder {
                           color: var(--c-50);
                       }
                       .ftr__subscribe-input::-ms-input-placeholder {
                           color: var(--c-50);
                       }
                       .ftr__subscribe-input::placeholder {
                           color: var(--c-50);
                       }
                       .ftr__subscribe-btn {
                           -ms-flex-negative: 0;
                               flex-shrink: 0;
                       }
               .ftr__cols-right {
                   display: -ms-grid;
                   display: grid;
                   -ms-grid-columns: 1fr 4.0rem 1fr;
                   grid-template-columns: 1fr 1fr;
                   gap: 4.0rem;
               }
               .ftr__col {
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   -webkit-box-orient: vertical;
                   -webkit-box-direction: normal;
                       -ms-flex-direction: column;
                           flex-direction: column;
                   gap: 2.4rem;
               }
               .ftr__title {
                   font-size: 1.0rem;
                   text-transform: uppercase;
                   margin: 0;
               }
               .ftr__links {
                   list-style: none;
                   margin: 0;
                   padding: 0;
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   -webkit-box-orient: vertical;
                   -webkit-box-direction: normal;
                       -ms-flex-direction: column;
                           flex-direction: column;
                   gap: .8rem;
               }
               .ftr__contact {
                   list-style: none;
                   margin: 0;
                   padding: 0;
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   -webkit-box-orient: vertical;
                   -webkit-box-direction: normal;
                       -ms-flex-direction: column;
                           flex-direction: column;
                   gap: 1.6rem;
               }
                   .ftr__contact-item {
                       display: -webkit-box;
                       display: -ms-flexbox;
                       display: flex;
                       -webkit-box-align: start;
                           -ms-flex-align: start;
                               align-items: flex-start;
                       gap: 1.2rem;
                   }
                   .ftr__contact-icon {
                       width: 1.6rem;
                       height: 1.6rem;
                       -ms-flex-negative: 0;
                           flex-shrink: 0;
                       fill: currentColor;
                       margin-top: .2rem;
                   }
                   .ftr__address {
                       font-style: normal;
                       color: var(--c-75);
                   }
           .ftr__hours {
               display: -webkit-box;
               display: -ms-flexbox;
               display: flex;
               -webkit-box-pack: justify;
                   -ms-flex-pack: justify;
                       justify-content: space-between;
               border-top: .1rem solid var(--c-10);
               border-bottom: .1rem solid var(--c-10);
               padding-block: 3.2rem;
               margin: 0;
           }
               .ftr__hours-item {
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   -webkit-box-orient: vertical;
                   -webkit-box-direction: normal;
                       -ms-flex-direction: column;
                           flex-direction: column;
                   -webkit-box-align: center;
                       -ms-flex-align: center;
                           align-items: center;
                   gap: .4rem;
                   -webkit-box-flex: 1;
                       -ms-flex: 1;
                           flex: 1;
                   position: relative;
               }
               .ftr__hours-item + .ftr__hours-item::before {
                   content: '';
                   position: absolute;
                   left: 0;
                   top: 50%;
                   -webkit-transform: translateY(-50%);
                       -ms-transform: translateY(-50%);
                           transform: translateY(-50%);
                   height: 3.2rem;
                   width: .1rem;
                   background: var(--c-10);
               }
                   .ftr__hours-item dt {
                       font-size: 1.1rem;
                       font-weight: 700;
                       text-transform: uppercase;
                       letter-spacing: .1em;
                       color: var(--c-pri);
                   }
                   .ftr__hours-item dd {
                       margin: 0;
                       font-size: 1.3rem;
                       color: var(--c-75);
                   }
           .ftr__colophon {
               display: -webkit-box;
               display: -ms-flexbox;
               display: flex;
               -webkit-box-pack: justify;
                   -ms-flex-pack: justify;
                       justify-content: space-between;
               -webkit-box-align: center;
                   -ms-flex-align: center;
                       align-items: center;
           }
               .ftr__colophon-left {
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   -webkit-box-align: center;
                       -ms-flex-align: center;
                           align-items: center;
                   gap: 2.4rem;
               }
                   .ftr__colophon-logo {
                       height: 4.0rem;
                       width: auto;
                   }
                   .ftr__colophon-text {
                       margin: 0;
                       font-size: 1.1rem;
                       color: var(--c-50);
                       line-height: 1.75;
                   }
                   .ftr .ftr__colophon-link {
                       color: var(--c-50);
                       text-decoration: underline;
                       text-underline-offset: .2em;
                       -webkit-text-decoration-color: var(--c-25);
                               text-decoration-color: var(--c-25);
                   }
                   .ftr .ftr__colophon-link:hover {
                       color: var(--c-pri);
                       -webkit-text-decoration-color: var(--c-pri);
                               text-decoration-color: var(--c-pri);
                       opacity: 1;
                   }
               .ftr__socials {
                   display: -webkit-box;
                   display: -ms-flexbox;
                   display: flex;
                   gap: 1.6rem;
               }
                   .ftr__social {
                       display: -webkit-box;
                       display: -ms-flexbox;
                       display: flex;
                       -webkit-box-align: center;
                           -ms-flex-align: center;
                               align-items: center;
                       -webkit-box-pack: center;
                           -ms-flex-pack: center;
                               justify-content: center;
                       width: 4.0rem;
                       height: 4.0rem;
                       border-radius: 50%;
                       border: .1rem solid var(--c-25);
                       -webkit-transition: border-color .15s linear;
                       -o-transition: border-color .15s linear;
                       transition: border-color .15s linear;
                   }
                   .ftr__social:hover {
                       border-color: var(--c-pri);
                       opacity: 1;
                   }
                       .ftr__social-icon {
                           width: 1.6rem;
                           height: 1.6rem;
                           fill: var(--c-pri);
                       }
       @media (max-width: 768px) {
           .ftr__top {
               -ms-grid-columns: 1fr;
               grid-template-columns: 1fr;
           }
           .ftr__brand {
               -webkit-box-orient: vertical;
               -webkit-box-direction: normal;
                   -ms-flex-direction: column;
                       flex-direction: column;
               -webkit-box-align: center;
                   -ms-flex-align: center;
                       align-items: center;
               text-align: center;
           }
           .ftr .gform_footer {
               -webkit-box-pack: center;
                   -ms-flex-pack: center;
                       justify-content: center;
           }
           .ftr__cols-right {
               -ms-grid-columns: 1fr 1fr;
               grid-template-columns: 1fr 1fr;
           }
           .ftr__hours {
               -ms-flex-wrap: nowrap;
                   flex-wrap: nowrap;
               overflow-x: auto;
               -webkit-overflow-scrolling: touch;
               -webkit-mask-image: -webkit-gradient(linear, left top, right top, color-stop(85%, black), to(transparent));
               -webkit-mask-image: linear-gradient(to right, black 85%, transparent);
                       mask-image: -webkit-gradient(linear, left top, right top, color-stop(85%, black), to(transparent));
                       mask-image: linear-gradient(to right, black 85%, transparent);
               gap: 0;
               padding-block: 3.2rem;
           }
           .ftr__hours::after {
               content: '';
               -ms-flex-negative: 0;
                   flex-shrink: 0;
               width: 4.8rem;
           }
           .ftr__hours-item {
               -ms-flex-negative: 0;
                   flex-shrink: 0;
               padding: 0 2.4rem;
               white-space: nowrap;
           }
           .ftr__hours-item dd {
               white-space: nowrap;
           }
           .ftr__colophon {
               -webkit-box-orient: vertical;
               -webkit-box-direction: normal;
                   -ms-flex-direction: column;
                       flex-direction: column;
               gap: 2.4rem;
               text-align: center;
           }
           .ftr__colophon-left {
               -webkit-box-orient: vertical;
               -webkit-box-direction: normal;
                   -ms-flex-direction: column;
                       flex-direction: column;
               -webkit-box-align: center;
                   -ms-flex-align: center;
                       align-items: center;
           }
       }
   
   
   /* ==========================================================================
      $POP
      ========================================================================== */
   
   .pop {
       color-scheme: dark;
   }
       .pop__item {
           background: var(--c-05);
       }
   
   
   /* ==========================================================================
      $SEARCH
      ========================================================================== */
   
   .s-results__item-link {
       line-height: 1.75;
   }
   .s-results__meta {
       display: none;
   }
   
   
   /* ==========================================================================
      $CONTENT
      ========================================================================== */
   
   ul.wp-block-list {
       line-height: 1.75;
   }
   
   
   /* ==========================================================================
      $TEES
      ========================================================================== */
   
   .tees {
       overflow-x: auto;
       -webkit-overflow-scrolling: touch;
   }
       .tees__table {
           width: 100%;
           border-collapse: collapse;
           font-size: 1.4rem;
           line-height: 1.4;
       }
           .tees__table thead th {
               font-size: 1.1rem;
               font-weight: 700;
               text-transform: uppercase;
               letter-spacing: .08em;
               color: var(--c-50);
               padding: 1.6rem 2.0rem;
               border-bottom: .1rem solid var(--c-10);
               text-align: left;
               white-space: nowrap;
           }
           .tees__table tbody th,
           .tees__table tbody td {
               padding: 1.6rem 2.0rem;
               border-bottom: .1rem solid var(--c-10);
               vertical-align: middle;
           }
           .tees__table tbody th {
               font-weight: 600;
               white-space: nowrap;
               text-align: left;
           }
           .tees__table tbody td {
               text-align: left;
               color: var(--c-75);
           }
           .tees__table tbody tr:last-child th,
           .tees__table tbody tr:last-child td {
               border-bottom: none;
           }
           .tees__table tbody tr:hover th,
           .tees__table tbody tr:hover td {
               background: var(--c-05);
           }
       .tees__icon {
           width: 1.8rem;
           height: 1.8rem;
           fill: currentColor;
           vertical-align: middle;
           margin-right: .6rem;
       }
       @media (max-width: 640px) {
           .tees__table thead {
               display: none;
           }
           .tees__table tbody tr {
               display: block;
               padding: 1.6rem 0;
               border-bottom: .1rem solid var(--c-10);
           }
           .tees__table tbody tr:last-child {
               border-bottom: none;
           }
           .tees__table tbody th,
           .tees__table tbody td {
               display: -webkit-box;
               display: -ms-flexbox;
               display: flex;
               -webkit-box-pack: justify;
                   -ms-flex-pack: justify;
                       justify-content: space-between;
               padding: .6rem 0;
               border-bottom: none;
           }
           .tees__table tbody th {
               font-size: 1.6rem;
               padding-bottom: .8rem;
           }
           .tees__table tbody td::before {
               content: attr(data-label);
               font-weight: 600;
               color: var(--c-fg);
               margin-right: 2.0rem;
           }
           .tees__table tbody tr:hover th,
           .tees__table tbody tr:hover td {
               background: transparent;
           }
       }
   
   
   /* ==========================================================================
      $EVENTS
      ========================================================================== */
   
   .events__empty {
       text-align: center;
       color: var(--c-50);
   }
   .events__item {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-align: center;
           -ms-flex-align: center;
               align-items: center;
       gap: 2.4rem;
       padding: 2.4rem 0;
       border-bottom: .1rem solid var(--c-10);
       -webkit-transition: background-color .15s linear;
       -o-transition: background-color .15s linear;
       transition: background-color .15s linear;
   }
   .events__item:first-child {
       border-top: .1rem solid var(--c-10);
   }
       .events__date {
           display: -webkit-box;
           display: -ms-flexbox;
           display: flex;
           -webkit-box-orient: vertical;
           -webkit-box-direction: normal;
               -ms-flex-direction: column;
                   flex-direction: column;
           -webkit-box-align: center;
               -ms-flex-align: center;
                   align-items: center;
           min-width: 6.4rem;
           padding: 1.2rem;
           background: var(--c-05);
           border-radius: .4rem;
       }
           .events__date-month {
               font-size: 1.1rem;
               font-weight: 700;
               text-transform: uppercase;
               letter-spacing: .08em;
               color: var(--c-pri);
           }
           .events__date-day {
               font-family: 'TAN Angleton', Georgia, serif;
               font-size: 2.4rem;
               font-weight: 700;
               line-height: 1.25;
           }
       .events__content {
           -webkit-box-flex: 1;
               -ms-flex: 1;
                   flex: 1;
           min-width: 0;
       }
           .events__title {
               margin: 0 0 .4rem;
               font-size: 1.6rem;
           }
           .events__meta {
               font-size: 1.2rem;
               color: var(--c-50);
               margin: 0;
           }
           .events__excerpt {
               margin: .8rem 0 0;
               font-size: 1.3rem;
               color: var(--c-75);
               line-height: 1.5;
           }
       .events__more {
           -ms-flex-negative: 0;
               flex-shrink: 0;
           font-size: 1.2rem;
           font-weight: 700;
           color: var(--c-pri);
       }
   
   
   /* ==========================================================================
      $EVENT-SINGLE
      ========================================================================== */
   
   .event-single__header {
       background: var(--c-05);
   }
       .event-single__header-inner {
           display: -webkit-box;
           display: -ms-flexbox;
           display: flex;
           -webkit-box-align: center;
               -ms-flex-align: center;
                   align-items: center;
           gap: 2.4rem;
           width: var(--w-md);
           margin: 0 auto;
           padding: 8.0rem 0;
       }
           .event-single__date {
               display: -webkit-box;
               display: -ms-flexbox;
               display: flex;
               -webkit-box-orient: vertical;
               -webkit-box-direction: normal;
                   -ms-flex-direction: column;
                       flex-direction: column;
               -webkit-box-align: center;
                   -ms-flex-align: center;
                       align-items: center;
               min-width: 8.0rem;
               padding: 1.6rem;
               background: var(--c-bg);
               border-radius: .4rem;
           }
               .event-single__date-month {
                   font-size: 1.2rem;
                   font-weight: 700;
                   text-transform: uppercase;
                   letter-spacing: .08em;
                   color: var(--c-pri);
               }
               .event-single__date-day {
                   font-family: 'TAN Angleton', Georgia, serif;
                   font-size: 3.2rem;
                   font-weight: 700;
                   line-height: 1.25;
               }
           .event-single__title {
               margin: 0;
           }
           .event-single__meta {
               margin: .8rem 0 0;
               color: var(--c-50);
           }
   .event-single__inner {
       width: var(--w-md);
       margin: 4.0rem auto 8.0rem;
   }
       .event-single__content {
           margin-bottom: 4.0rem;
       }
       .event-single__gallery {
           margin-bottom: 4.0rem;
       }
       .event-single__back {
           padding-top: 2.4rem;
           border-top: .1rem solid var(--c-10);
       }
   
   
   /* ==========================================================================
      $FORMS
      ========================================================================== */
   
   .app .gform_wrapper.gravity-theme .gfield_checkbox .gfield-choice-input:checked + label::after {
       background-image: url('assets/img/icon-check.svg');
   }
   .app .gform_wrapper.gravity-theme .gfield_radio .gfield-choice-input:checked + label::after {
       background-image: url('assets/img/icon-radio.svg');
   }
   
   .app .gform_confirmation_message {
       line-height: 1.75;
   }
   
   .careers__content p,
   .careers__content ul {
       line-height: 1.75;
   }
   
   
   /* ==========================================================================
      $BUTTONS
      ========================================================================== */
   
   .button,
   input[type="submit"],
   input[type="reset"],
   input[type="button"] {
       padding: 1.4rem 2.4rem;
       border-radius: .4rem;
       font-family: 'TAN Angleton', Georgia, serif;
       font-weight: 700;
       font-size: 1.2rem;
       -webkit-transition: background-color .25s ease, color .25s ease, -webkit-box-shadow .25s ease;
       transition: background-color .25s ease, color .25s ease, -webkit-box-shadow .25s ease;
       -o-transition: box-shadow .25s ease, background-color .25s ease, color .25s ease;
       transition: box-shadow .25s ease, background-color .25s ease, color .25s ease;
       transition: box-shadow .25s ease, background-color .25s ease, color .25s ease, -webkit-box-shadow .25s ease;
   }
   .button:hover,
   input[type="submit"]:hover,
   input[type="reset"]:hover,
   input[type="button"]:hover,
   a:hover .button,
   .button:focus,
   button.button:focus,
   input[type="submit"]:focus,
   input[type="reset"]:focus,
   input[type="button"]:focus {
       -webkit-box-shadow: 0 0 2.0rem color-mix(in srgb, var(--c-pri) 40%, transparent);
               box-shadow: 0 0 2.0rem color-mix(in srgb, var(--c-pri) 40%, transparent);
       background-color: var(--c-qua);
   }
   .button--ter,
   input[type="submit"].button--ter,
   input[type="reset"].button--ter,
   input[type="button"].button--ter {
       font-family: "Poppins", sans-serif;
       padding: 0;
       border: none;
   }
   .button--ter:hover,
   input[type="submit"].button--ter:hover,
   input[type="reset"].button--ter:hover,
   input[type="button"].button--ter:hover,
   a:hover .button--ter,
   .button--ter:focus,
   button.button--ter:focus,
   input[type="submit"].button--ter:focus,
   input[type="reset"].button--ter:focus,
   input[type="button"].button--ter:focus {
       -webkit-box-shadow: none;
               box-shadow: none;
       background-color: transparent;
       color: var(--c-qua);
       opacity: 1;
   }
   
   /* ==========================================================================
      $CAL-VIEW-TOGGLE
      ========================================================================== */
   .cal-view-toggle {
       width: var(--w-md);
       margin-inline: auto;
       margin-block: 4.0rem;
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -webkit-box-pack: center;
           -ms-flex-pack: center;
               justify-content: center;
   }
       .cal-view-toggle__inner {
           display: -webkit-inline-box;
           display: -ms-inline-flexbox;
           display: inline-flex;
           background: var(--c-bg);
           border-radius: 3.2rem;
           padding: .4rem;
           gap: .4rem;
       }
           .cal-view-toggle__btn {
               position: relative;
               padding: 1.2rem 2.4rem;
               font-size: 1.4rem;
               font-weight: 700;
               color: var(--c-75);
               background: transparent;
               border-radius: 2.8rem;
               -webkit-transition: all .2s ease;
               -o-transition: all .2s ease;
               transition: all .2s ease;
               cursor: pointer;
           }
           .cal-view-toggle__btn:hover {
               color: var(--c-fg);
               background: var(--c-10);
           }
           .cal-view-toggle__btn--active {
               color: var(--c-w);
               background: var(--c-pri);
           }
           .cal-view-toggle__btn--active:hover {
               background: var(--c-pri);
           }
               .cal-view-toggle__btn-text {
                   position: relative;
                   z-index: 1;
               }
   @media only screen and (max-width: 512px) {
       .cal-view-toggle__btn {
           padding: 1.0rem 1.6rem;
           font-size: 1.2rem;
       }
   }
   
   
   
.pix-gcal-list-item-content {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.5;
}  
.pix-gcal-grid a {
    color: var(--c-fg);
}
.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events {
    min-height: 6em;
}




/* ==========================================================================
   $NEWS-LAYOUT
   ========================================================================== */

.news-layout {
    padding: 4.8rem 0 8.0rem;
    background: var(--c-05);
}
    .news-layout__inner {
        width: var(--w-lg);
        margin: 0 auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 4.0rem;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
    }
    .news-layout__main {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        min-width: 0;
    }
    .news-layout__sidebar {
        width: 30.4rem;
        -ms-flex-negative: 0;
            flex-shrink: 0;
        position: sticky;
        top: 12rem;
    }
    .news-layout--full .news-layout__inner {
        width: var(--w-md);
    }

@media only screen and (max-width: 900px) {
    .news-layout__inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
    .news-layout__sidebar {
        width: 100%;
        position: static;
    }
}


/* ==========================================================================
   $NEWS-INDEX
   ========================================================================== */

.news__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.4rem;
}
.news__empty {
    text-align: center;
    color: var(--c-50);
    padding: 6.4rem 0;
}

.news__card {
    overflow: hidden;
    background: var(--c-bg);
    -webkit-box-shadow: 0 .1rem .4rem var(--c-10);
            box-shadow: 0 .1rem .4rem var(--c-10);
    -webkit-transition: -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
    transition: -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
    -o-transition: transform .25s ease, box-shadow .25s ease;
    transition: transform .25s ease, box-shadow .25s ease;
    transition: transform .25s ease, box-shadow .25s ease, -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
}
.news__card:hover {
    -webkit-transform: translateY(-.4rem);
        -ms-transform: translateY(-.4rem);
            transform: translateY(-.4rem);
    -webkit-box-shadow: 0 .8rem 2.4rem var(--c-10);
            box-shadow: 0 .8rem 2.4rem var(--c-10);
}
    .news__card-link {
        display: block;
        color: inherit;
    }
    .news__card-image {
        aspect-ratio: 16 / 9;
        overflow: hidden;
    }
        .news__card-image img {
            width: 100%;
            height: 100%;
            -o-object-fit: cover;
               object-fit: cover;
            -webkit-transition: -webkit-transform .3s ease;
            transition: -webkit-transform .3s ease;
            -o-transition: transform .3s ease;
            transition: transform .3s ease;
            transition: transform .3s ease, -webkit-transform .3s ease;
        }
        .news__card:hover .news__card-image img {
            -webkit-transform: scale(1.03);
                -ms-transform: scale(1.03);
                    transform: scale(1.03);
        }
    .news__card-body {
        padding: 4.0rem;
    }
        .news__card-meta {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            gap: .8rem;
            margin-bottom: 2.4rem;
        }
        .news__card-cat {
            font-size: 1.2rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: .08em;
            color: var(--c-pri);
        }
        .news__card-cat::after {
            content: "\00b7";
            margin-left: .8rem;
            color: var(--c-25);
        }
        .news__card-date {
            font-size: 1.2rem;
            color: var(--c-50);
        }
        .news__card-title {
            font-size: 2.4rem;
            margin: 0 0 2.4rem;
        }
        .news__card-excerpt {
            margin: 0 0 2.4rem;
        }
        .news__card-more {
            font-size: 1.2rem;
            font-weight: 700;
            color: var(--c-pri);
            -webkit-transition: color .2s ease;
            -o-transition: color .2s ease;
            transition: color .2s ease;
        }
        .news__card:hover .news__card-more {
            color: var(--c-qua);
        }

@media only screen and (max-width: 640px) {
    .news__card-body {
        padding: 2.4rem;
    }
        .news__card-title {
            font-size: 1.6rem;
        }
}


/* ==========================================================================
   $PRESS
   ========================================================================== */

.press__heading {
    font-size: 1.2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    text-align: center;
    color: var(--c-50);
    margin: 0 0 2.4rem;
    padding: .8rem 0;
    border-top: 1px solid var(--c-25);
    border-bottom: 1px solid var(--c-25);
}
.press__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.6rem;
}

.press__card {
    display: block;
    overflow: hidden;
    background: var(--c-bg);
    border-left: .4rem solid var(--c-pri);
    color: inherit;
    -webkit-box-shadow: 0 .1rem .4rem var(--c-10);
            box-shadow: 0 .1rem .4rem var(--c-10);
    -webkit-transition: -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
    transition: -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
    -o-transition: transform .25s ease, box-shadow .25s ease;
    transition: transform .25s ease, box-shadow .25s ease;
    transition: transform .25s ease, box-shadow .25s ease, -webkit-transform .25s ease, -webkit-box-shadow .25s ease;
}
.press__card:hover {
    -webkit-transform: translateY(-.4rem);
        -ms-transform: translateY(-.4rem);
            transform: translateY(-.4rem);
    -webkit-box-shadow: 0 .8rem 2.4rem var(--c-10);
            box-shadow: 0 .8rem 2.4rem var(--c-10);
}
    .press__card-body {
        position: relative;
        padding: 1.6rem;
    }
        .press__card-ext {
            position: absolute;
            top: 1.6rem;
            right: 1.6rem;
            color: var(--c-25);
            -webkit-transition: color .2s ease;
            -o-transition: color .2s ease;
            transition: color .2s ease;
        }
        .press__card:hover .press__card-ext {
            color: var(--c-pri);
        }
        .press__card-source {
            display: inline-block;
            font-size: 1.2rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: .08em;
            color: var(--c-25);
            margin-bottom: .8rem;
        }
        .press__card-title {
            font-family: 'TAN Angleton', Georgia, serif;
            font-size: 1.2rem;
            font-weight: 700;
            margin: 0;
            line-height: 1.75;
        }

@media only screen and (max-width: 900px) {
    .press__heading {
        margin-top: 4.0rem;
    }
    .press__list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 1.6rem;
    }
    .press__card {
        -webkit-box-flex: 1;
            -ms-flex: 1 1 calc(50% - .8rem);
                flex: 1 1 calc(50% - .8rem);
    }
}
@media only screen and (max-width: 512px) {
    .press__card {
        -webkit-box-flex: 1;
            -ms-flex: 1 1 100%;
                flex: 1 1 100%;
    }
}


/* ==========================================================================
   $NEWS-SINGLE
   ========================================================================== */

.news-single {
    padding-bottom: 12.0rem;
}

    /* ---- Header ---- */

    .news-single__header {
        text-align: center;
        padding: 8.0rem 0 12.0rem;
        background: var(--c-05);
    }
        .news-single__header-inner {
            width: var(--w-sm);
            margin: 0 auto;
        }
    .news-single__meta {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        gap: .8rem;
        margin-bottom: 2.4rem;
    }
        .news-single__cat {
            font-size: 1.2rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: .1em;
            color: var(--c-pri);
            -webkit-transition: color .2s ease;
            -o-transition: color .2s ease;
            transition: color .2s ease;
        }
        .news-single__cat:hover {
            color: var(--c-qua);
        }
        .news-single__meta .news-single__cat::after {
            content: "\00b7";
            margin-left: .8rem;
            color: var(--c-25);
            pointer-events: none;
        }
        .news-single__date {
            font-size: 1.2rem;
            color: var(--c-50);
        }
    .news-single__title {
        font-size: 3.2rem;
        line-height: 1.5;
        margin: 0;
    }

    /* ---- Featured Image ---- */

    .news-single__featured {
        width: var(--w-md);
        margin: -8.0rem auto 4.8rem;
        overflow: hidden;
    }
        .news-single__featured img {
            width: 100%;
            height: auto;
            display: block;
        }
    .news-single__caption {
        padding: 1.6rem 0 0;
        font-size: 1.2rem;
        color: var(--c-50);
        text-align: center;
        font-style: italic;
    }

    /* ---- Body ---- */

    .news-single__body {
        width: var(--w-sm);
        margin: 0 auto;
    }

    .news-single__content {
        margin-bottom: 4.8rem;
    }
        .news-single__content > p:first-child::first-letter {
            float: left;
            font-family: 'TAN Angleton', Georgia, serif;
            font-size: 4.8rem;
            line-height: 1;
            padding-right: .8rem;
            color: var(--c-pri);
        }
        .news-single__content h2 {
            font-size: 2.4rem;
            margin-top: 4.0rem;
            margin-bottom: 1.6rem;
        }
        .news-single__content h3 {
            font-size: 2.4rem;
            margin-top: 3.2rem;
            margin-bottom: .8rem;
        }
        .news-single__content h4 {
            font-size: 1.6rem;
            margin-top: 2.4rem;
            margin-bottom: .8rem;
        }
        .news-single__content p {
            margin-bottom: 2.4rem;
        }
        .news-single__content ul,
        .news-single__content ol {
            margin-bottom: 2.4rem;
            padding-left: 2.4rem;
        }
            .news-single__content li {
                margin-bottom: .8rem;
            }
        .news-single__content img {
            max-width: 100%;
            height: auto;
            margin: .8rem 0;
        }
        .news-single__content blockquote {
            border-left: .3rem solid var(--c-pri);
            padding-left: 2.4rem;
            margin: 3.2rem 0;
            font-style: italic;
            font-size: 2.4rem;
            line-height: 1.6;
            color: var(--c-75);
        }
        .news-single__content a {
            color: var(--c-pri);
            text-decoration: underline;
            -webkit-text-decoration-color: transparent;
                    text-decoration-color: transparent;
            -webkit-transition: -webkit-text-decoration-color .2s ease;
            transition: -webkit-text-decoration-color .2s ease;
            -o-transition: text-decoration-color .2s ease;
            transition: text-decoration-color .2s ease;
            transition: text-decoration-color .2s ease, -webkit-text-decoration-color .2s ease;
        }
        .news-single__content a:hover {
            -webkit-text-decoration-color: currentColor;
                    text-decoration-color: currentColor;
        }
        .news-single__content hr {
            border: none;
            border-top: .1rem solid var(--c-10);
            margin: 4.0rem 0;
        }

    /* ---- Back Link ---- */

    .news-single__back {
        padding-top: 3.2rem;
        border-top: .1rem solid var(--c-10);
    }
        .news-single__back-link {
            display: -webkit-inline-box;
            display: -ms-inline-flexbox;
            display: inline-flex;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            gap: .8rem;
            font-size: 1.2rem;
            font-weight: 600;
            color: var(--c-pri);
            -webkit-transition: color .2s ease;
            -o-transition: color .2s ease;
            transition: color .2s ease;
        }
        .news-single__back-link:hover {
            color: var(--c-qua);
        }

@media only screen and (max-width: 768px) {
    .news-single__title {
        font-size: 2.4rem;
    }
    .news-single__featured {
        width: var(--w-md);
    }
}
@media only screen and (max-width: 640px) {
    .news-single__title {
        font-size: 2.4rem;
    }
    .news-single__title {
        font-size: 2.4rem;
    }
    .news-single__content {
        font-size: 1.6rem;
    }
        .news-single__content > p:first-child::first-letter {
            font-size: 4.0rem;
        }
    .news-single__content blockquote {
        font-size: 1.6rem;
    }
}


/* ==========================================================================
   $TIMELINE
   ========================================================================== */
section:has(+ .timeline-entry--first)::after,
.timeline-entry--last + section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 8.0rem;
    height: .2rem;
    background: var(--c-pri);
    margin-left: -4.0rem;
}
.timeline-entry--last + section::after {
    bottom: auto;
    top: 0;
}
.timeline-entry h2 {
    font-size: 4.8rem;
    text-shadow: .1rem .1rem 0 var(--c-w), .2rem .2rem 0 var(--c-pri);
}
.timeline-entry::after {
    z-index: 1;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    margin-left: -.1rem;
    width: .2rem;
    background: var(--c-pri);
}
.timeline-entry::before {
    z-index: 2;
    content: '';
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 50%;
    margin-left: -.8rem;
    width: 1.6rem;
    height: 1.6rem;
    background: var(--c-pri);
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 0 var(--c-pri);
            box-shadow: 0 0 0 0 var(--c-pri);
    -webkit-animation: timeline-pulse 2s ease-out infinite;
            animation: timeline-pulse 2s ease-out infinite;
}

@-webkit-keyframes timeline-pulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 var(--c-pri);
                box-shadow: 0 0 0 0 var(--c-pri);
    }
    50% {
        -webkit-box-shadow: 0 0 0 1.2rem transparent;
                box-shadow: 0 0 0 1.2rem transparent;
    }
    100% {
        -webkit-box-shadow: 0 0 0 1.2rem transparent;
                box-shadow: 0 0 0 1.2rem transparent;
    }
}

@keyframes timeline-pulse {
    0% {
        -webkit-box-shadow: 0 0 0 0 var(--c-pri);
                box-shadow: 0 0 0 0 var(--c-pri);
    }
    50% {
        -webkit-box-shadow: 0 0 0 1.2rem transparent;
                box-shadow: 0 0 0 1.2rem transparent;
    }
    100% {
        -webkit-box-shadow: 0 0 0 1.2rem transparent;
                box-shadow: 0 0 0 1.2rem transparent;
    }
}
@media only screen and (max-width: 768px) {
    .timeline-entry {
        padding-left: 5%;
    }
    .timeline-entry::after,
    .timeline-entry::before {
        left: 5%;
    }
    section:has(+ .timeline-entry--first)::after,
    .timeline-entry--last + section::after {
        display: none;
    }
    .timeline-entry--first {
        padding-top: var(--s-sm);
    }
    .timeline-entry--last {
        padding-bottom: var(--s-sm);
    }
}