/* Variables */
/* Fonts */
@font-face {
  font-family: 'gloss_and_bloomregular';
  src: url("../fonts/gloss_and_bloom-webfont.woff2") format("woff2"), url("../fonts/gloss_and_bloom-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }
/* Mixins */
/* Bootstrap Overrides */
.btn-light {
  color: #099ECC;
  border-color: #FFFFFF; }
  .btn-light:hover {
    color: #FFFFFF;
    background-color: #099ECC;
    border-color: #FFFFFF; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  text-transform: uppercase;
  font-weight: 700;
  position: relative;
  z-index: 10;
  margin-bottom: 1rem; }
  h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong,
  .h1 strong, .h2 strong, .h3 strong, .h4 strong, .h5 strong, .h6 strong {
    position: relative;
    color: #FFFFFF;
    display: inline-block; }
    h1 strong::before, h2 strong::before, h3 strong::before, h4 strong::before, h5 strong::before, h6 strong::before,
    .h1 strong::before, .h2 strong::before, .h3 strong::before, .h4 strong::before, .h5 strong::before, .h6 strong::before {
      content: "";
      position: absolute;
      width: calc(100% + 1rem);
      height: calc(100% + 1rem);
      top: 0;
      left: 0;
      z-index: -1;
      background: #099ECC;
      transform: rotate(-2deg) translate(-0.5rem, -0.5rem); }
  h1 em, h2 em, h3 em, h4 em, h5 em, h6 em,
  .h1 em, .h2 em, .h3 em, .h4 em, .h5 em, .h6 em {
    position: relative;
    font-style: normal;
    display: inline-block; }
    h1 em::before, h2 em::before, h3 em::before, h4 em::before, h5 em::before, h6 em::before,
    .h1 em::before, .h2 em::before, .h3 em::before, .h4 em::before, .h5 em::before, .h6 em::before {
      content: "";
      position: absolute;
      width: calc(100% + 1rem);
      height: 1rem;
      top: 0;
      left: 0;
      z-index: -1;
      background: #099ECC;
      transform: rotate(-2deg) translate(-0.5rem, calc(100% + 1rem)); }
  h1 i, h2 i, h3 i, h4 i, h5 i, h6 i,
  .h1 i, .h2 i, .h3 i, .h4 i, .h5 i, .h6 i {
    font-family: 'gloss_and_bloomregular';
    font-weight: normal;
    font-style: normal;
    text-transform: none; }

.accordion-button:not(.collapsed) {
  background-color: #53C2B0;
  color: #FFFFFF;
  border-color: #53C2B0; }
  .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); }

/* Bootstrap Extensions */
.bg-mid-blue {
  background-color: #099ECC; }

.bg-grad {
  background: #099ecc;
  background: linear-gradient(180deg, #099ecc 0%, #53c2b0 100%); }

.bg-offset-grad {
  position: relative;
  z-index: 10;
  color: #FFFFFF; }
  .bg-offset-grad::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 1rem;
    left: -1rem;
    z-index: -1;
    transition-property: opacity;
    transition-duration: 0.2s;
    background: #099ecc;
    background: linear-gradient(180deg, #099ecc 0%, #53c2b0 100%); }
  .bg-offset-grad p, .bg-offset-grad h1, .bg-offset-grad h2, .bg-offset-grad h3, .bg-offset-grad h4, .bg-offset-grad h5, .bg-offset-grad h6 {
    padding-right: 1.5rem; }

a.bg-offset-grad::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 1rem;
  left: -1rem;
  z-index: -1;
  transition-property: opacity;
  transition-duration: 0.2s;
  opacity: 0;
  background: #099ecc;
  background: linear-gradient(0deg, #099ecc 0%, #53c2b0 100%); }
a.bg-offset-grad:hover::before {
  opacity: 0; }
a.bg-offset-grad:hover::after {
  opacity: 1; }

.btn-primary {
  color: #FFFFFF;
  border-color: #53C2B0;
  background: #099ecc;
  background: linear-gradient(180deg, #099ecc 0%, #53c2b0 100%); }
  .btn-primary:hover {
    color: #53C2B0;
    background: #FFFFFF;
    border-color: #53C2B0; }

.btn-xxl {
  font-weight: 700;
  font-size: 2.5rem;
  line-height: 2.5rem; }

.links-white a {
  color: #FFFFFF; }
  .links-white a:hover {
    color: #1C2C80; }

.links-text-decoration-none a {
  text-decoration: none; }

/* WordPress Selectors */
.alignleft,
.alignright,
.aligncenter,
.alignnone {
  max-width: 100%;
  height: auto; }

.alignleft {
  float: left;
  margin: 0 1rem 1rem 0; }

.alignright {
  float: right;
  margin: 0 0 1rem 1rem; }

.aligncenter {
  display: block;
  margin: 0 auto 1rem auto; }

/* Custom Styles */
body {
  text-rendering: optimizeLegibility;
  font-family: 'Raleway', sans-serif;
  background-color: #099ECC; }

main {
  background-color: #FFFFFF;
  background-size: cover;
  background-attachment: fixed; }
  @media screen and (min-width: 576px) {
    main {
      background-image: url(../images/bg-splash.png); } }

a {
  color: #099ECC;
  transition-property: color;
  transition-duration: 0.2s; }
  a:hover {
    color: #53C2B0; }

@media screen and (min-width: 576px) {
  .awaken {
    transform: translateY(100px);
    opacity: 0;
    transition-property: all;
    transition-duration: 1s; }
    .awaken.in-viewport {
      transform: translateY(0);
      opacity: 1; } }

.rotate {
  transform: rotate(-2deg); }

.rotate-on-hover {
  transition-property: transform;
  transition-duration: 0.2s; }
  .rotate-on-hover:hover {
    transform: rotate(-1deg); }

#mobile-menu-wrap {
  position: fixed;
  z-index: 10;
  width: 100%;
  max-width: 250px;
  top: 0;
  right: 0;
  height: 100vh;
  transform: translateX(100%);
  transition-property: transform;
  transition-duration: 0.2s;
  padding: 0.5rem 0;
  overflow: auto; }
  #mobile-menu-wrap li a {
    display: block;
    color: #FFFFFF;
    text-decoration: none;
    padding: 0.5rem 1rem; }
  #mobile-menu-wrap .sub-menu {
    background-color: #000000;
    padding: 0; }
    #mobile-menu-wrap .sub-menu a {
      padding-left: 1.5rem; }
  #mobile-menu-wrap #mobile-menu-close {
    position: absolute;
    top: 15px;
    right: 25px; }

body.mobile-menu-active #mobile-menu-wrap {
  transform: translateX(0); }

#desktop-menu {
  display: flex;
  align-items: center; }
  #desktop-menu > li {
    margin-left: 1rem;
    position: relative; }
    #desktop-menu > li.menu-item-has-children > a::after {
      content: "\f107";
      font-family: "Font Awesome 5 Pro";
      font-weight: 300;
      margin-left: 0.25rem; }
    #desktop-menu > li a {
      text-decoration: none;
      color: #FFFFFF; }
      #desktop-menu > li a:hover {
        color: #53C2B0; }
    #desktop-menu > li .sub-menu {
      padding: 1rem;
      list-style: none;
      display: none;
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 180px;
      text-align: center;
      transform: translate(-50%, 100%); }
      #desktop-menu > li .sub-menu::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: -1;
        background: #1C2C80;
        transform: rotate(-1deg); }
      #desktop-menu > li .sub-menu a {
        padding: 0.25rem 0;
        display: block; }
        #desktop-menu > li .sub-menu a:hover {
          color: #53C2B0; }
    #desktop-menu > li:hover .sub-menu {
      display: block; }

section.banner_rotator .carousel-item {
  background-color: #099ECC; }
  @media screen and (min-width: 992px) {
    section.banner_rotator .carousel-item .ratio {
      max-height: 1000px; } }
  @media screen and (min-width: 992px) {
    section.banner_rotator .carousel-item .content {
      padding: 1rem;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center; } }
  section.banner_rotator .carousel-item .content .container {
    max-width: 560px; }
section.banner_video {
  background-color: #099ECC;
  position: relative; }
  @media screen and (min-width: 992px) {
    section.banner_video .content {
      padding: 1rem;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center; } }
  section.banner_video .content .container {
    max-width: 560px; }

#footer-menu li {
  margin: 0 0 0 1rem; }
