/*
File: _variables.scss
This should contain variable declarations. Actual usage should occur elsewhere
*/
/*
COLORS
*/
/*
TYPOGRAPHY
*/
/*
SIZING
*/
/*
BREAKPOINTS
*/
/*
File: _mixins.scss
This should contain mixins that would work throughout the site
TODO: Find a better place for these mixins
*/
/*
File: _animation.scss
This should contain site-wide animation styles
*/
/*
DELAYED BLURB ENTRY
This progressively delays the animation start of images in later columns
to create a cool effect
*/
#rf-body img {
  animation-fill-mode: both;
}
@media only screen and (min-width: 980.02px) {
  #rf-body .et_pb_column:nth-child(2) img {
    animation-delay: 0.25s;
  }
  #rf-body .et_pb_column:nth-child(3) img {
    animation-delay: 0.5s;
  }
  #rf-body .et_pb_column:nth-child(4) img {
    animation-delay: 0.75s;
  }
  #rf-body .et_pb_column:nth-child(5) img {
    animation-delay: 1s;
  }
  #rf-body .et_pb_column:nth-child(6) img {
    animation-delay: 1.25s;
  }
}

/*
File: _typography.scss
This should contain sizing and font choices for typography
*/
body.et_divi_theme h1, body.et_divi_theme .h1 {
  font-family: "Belanosima", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  min-height: 0vw;
  font-size: 4rem;
  font-size: clamp(3rem, 3rem + (1vw - 0.48rem) * 1.3889, 4rem);
}
body.et_divi_theme h1 span, body.et_divi_theme .h1 span {
  display: block;
}
body.et_divi_theme h2, body.et_divi_theme .h2 {
  font-family: "Belanosima", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  min-height: 0vw;
  font-size: 3rem;
  font-size: clamp(2rem, 2rem + (1vw - 0.48rem) * 1.3889, 3rem);
}
body.et_divi_theme h2 span, body.et_divi_theme .h2 span {
  display: block;
}
body.et_divi_theme h3, body.et_divi_theme .h3 {
  font-family: "Belanosima", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  min-height: 0vw;
  font-size: 2.25rem;
  font-size: clamp(1.5rem, 1.5rem + (1vw - 0.48rem) * 1.0417, 2.25rem);
}
body.et_divi_theme h3 span, body.et_divi_theme .h3 span {
  display: block;
}
body.et_divi_theme h4, body.et_divi_theme .h4 {
  font-family: "Belanosima", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  min-height: 0vw;
  font-size: 1.5rem;
  font-size: clamp(1.25rem, 1.25rem + (1vw - 0.48rem) * 0.3472, 1.5rem);
}
body.et_divi_theme h4 span, body.et_divi_theme .h4 span {
  display: block;
}
body.et_divi_theme h5, body.et_divi_theme .h5 {
  font-family: "Belanosima", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  min-height: 0vw;
  font-size: 1.25rem;
  font-size: clamp(1rem, 1rem + (1vw - 0.48rem) * 0.3472, 1.25rem);
}
body.et_divi_theme h5 span, body.et_divi_theme .h5 span {
  display: block;
}
body.et_divi_theme h6, body.et_divi_theme .h6 {
  font-family: "Belanosima", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  min-height: 0vw;
  font-size: 1rem;
  font-size: clamp(0.85rem, 0.85rem + (1vw - 0.48rem) * 0.2083, 1rem);
  line-height: 1.5rem;
}
body.et_divi_theme h6 span, body.et_divi_theme .h6 span {
  display: block;
}
body.et_divi_theme #rf-body,
body.et_divi_theme a #rf-body,
body.et_divi_theme li #rf-body {
  font-family: "Albert Sans", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  line-height: 1.5rem;
  font-weight: 400;
  font-size: 1rem;
}
body.et_divi_theme a {
  transition: all 0.3s ease;
}
body.et_divi_theme h1 a, body.et_divi_theme h2 a,
body.et_divi_theme h3 a,
body.et_divi_theme h4 a,
body.et_divi_theme h5 a,
body.et_divi_theme h6 a,
body.et_divi_theme p a {
  color: inherit !important;
  font-weight: 700;
}
body.et_divi_theme h1 a:hover, body.et_divi_theme h2 a:hover,
body.et_divi_theme h3 a:hover,
body.et_divi_theme h4 a:hover,
body.et_divi_theme h5 a:hover,
body.et_divi_theme h6 a:hover,
body.et_divi_theme p a:hover {
  color: #000000 !important;
}
body.et_divi_theme .rf-paragraph--large #rf-body,
body.et_divi_theme .rf-paragraph--large a #rf-body {
  font-family: "Albert Sans", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  line-height: 1.5rem;
  font-weight: 400;
  font-size: 1.3125rem;
  font-size: clamp(1rem, 1rem + (1vw - 0.3rem) * 0.5435, 1.3125rem);
}
body.et_divi_theme .rf-paragraph--small #rf-body,
body.et_divi_theme .rf-paragraph--small a #rf-body {
  font-family: "Albert Sans", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  line-height: 1.5rem;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.3125rem;
}
body.et_divi_theme .et_pb_layout_dark {
  color: #fff;
}

/*
File: _buttons.scss
This should contain overrides for buttons
*/
#rf-body .et_pb_button,
#rf-body .gform_button,
#rf-body [type=submit] {
  display: inline-flex;
  justify-content: center;
  position: relative;
  border: none;
  font-size: 1rem;
  font-size: clamp(0.85rem, 0.85rem + (1vw - 0.48rem) * 0.2083, 1rem);
  font-weight: 400;
  letter-spacing: 1px;
  padding: 0.75rem 3rem !important;
  text-transform: capitalize;
  transition: all 0.3s ease;
  border-radius: 5px;
  font-family: "Albert Sans", "Open Sans", "Arial", "Helvetica Neue", sans-serif;
  transition: all 0.3s ease;
}
#rf-body .et_pb_button:hover,
#rf-body .gform_button:hover,
#rf-body [type=submit]:hover {
  color: #000000;
}
#rf-body .et_pb_button,
#rf-body .gform_button,
#rf-body [type=submit] {
  line-height: 1.5rem !important;
  text-align: center;
  text-shadow: none;
  cursor: pointer;
}
#rf-body .rf-button--primary, #rf-body .et_pb_button,
#rf-body .gform_button,
#rf-body [type=submit] {
  color: #fff;
  background-color: #CC0000;
}
#rf-body .rf-button--primary:hover, #rf-body .et_pb_button:hover,
#rf-body .gform_button:hover,
#rf-body [type=submit]:hover {
  background-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.125rem inset #CC0000;
}
#rf-body .rf-button--outline {
  color: #CC0000 !important;
  background-color: transparent;
  height: fit-content;
  box-shadow: 0 0 0 0.125rem inset #CC0000;
}
#rf-body .rf-button--outline:hover {
  background-color: #CC0000 !important;
  color: #fff !important;
  opacity: 1 !important;
}
#rf-body .rf-button--secondary {
  color: #fff;
  background-color: #000000;
}
#rf-body .rf-button--secondary:hover {
  background-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.125rem inset #000000;
}
#rf-body .rf-button--secondary-outline {
  color: #000000;
  background-color: #fff;
  box-shadow: 0 0 0 0.125rem inset #000000;
}
#rf-body .rf-button--secondary-outline:hover {
  background-color: #000000 !important;
  color: #fff !important;
  box-shadow: 0 0 0 0.125rem inset #000000;
}
#rf-body .rf-button--inverse {
  color: #000000 !important;
  background-color: #fff;
  height: fit-content;
  box-shadow: 0 0 0 0.125rem inset #fff;
}
#rf-body .rf-button--inverse:hover {
  background-color: transparent;
  color: #fff !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 0.125rem inset #fff;
}
#rf-body .rf-button--inverse-outline {
  color: #fff !important;
  background-color: transparent;
  height: fit-content;
  box-shadow: 0 0 0 0.125rem inset #fff;
}
#rf-body .rf-button--inverse-outline:hover {
  background-color: #fff !important;
  color: #000000 !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 0.125rem inset #fff;
}
#rf-body .rf-button--newsletter {
  color: #fff !important;
  background-color: transparent;
  height: fit-content;
}
#rf-body .rf-button--newsletter:hover {
  background-color: #fff !important;
  color: #000000 !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 0.0625rem inset #fff;
}

/* 
  MULTI-BUTTON LAYOUTS
  */
#rf-body .et_pb_button + .et_pb_button {
  margin-left: 1.5rem;
}

/*
File: _header.scss
This should contain overrides for the main header
*/
#rf-body .rf-centered-inline--menu .et_pb_menu__logo a:hover,
#rf-body .rf-left-aligned--menu .et_pb_menu__logo a:hover {
  opacity: 1;
}
#rf-body .rf-centered-inline--menu li a,
#rf-body .rf-left-aligned--menu li a {
  font-size: 1.3125rem;
  font-size: clamp(0.75rem, 0.75rem + (1vw - 0.48rem) * 0.6944, 1.25rem);
}
#rf-body .rf-centered-inline--menu .et_pb_menu__logo-wrap,
#rf-body .rf-left-aligned--menu .et_pb_menu__logo-wrap {
  margin-bottom: 0px;
}
#rf-body .rf-centered-inline--menu .et_pb_menu_inner_container,
#rf-body .rf-left-aligned--menu .et_pb_menu_inner_container {
  display: flex;
}
@media screen and (max-width: 980px) {
  #rf-body .rf-centered-inline--menu .et_pb_menu__wrap,
  #rf-body .rf-left-aligned--menu .et_pb_menu__wrap {
    justify-content: flex-end;
  }
}
#rf-body .rf-centered-inline--menu .et_pb_menu__wrap,
#rf-body .rf-left-aligned--menu .et_pb_menu__wrap {
  width: 100%;
  display: flex;
  justify-content: center;
}
#rf-body .rf-centered-inline--menu .et_pb_menu__wrap .et_pb_menu__menu,
#rf-body .rf-left-aligned--menu .et_pb_menu__wrap .et_pb_menu__menu {
  width: 100% !important;
  display: flex;
  justify-content: center;
}
#rf-body .rf-centered-inline--menu .et_pb_menu__wrap .et-menu-nav,
#rf-body .rf-left-aligned--menu .et_pb_menu__wrap .et-menu-nav {
  width: 100%;
  display: flex;
  justify-content: center;
}
#rf-body .rf-centered-inline--menu .et_pb_menu__wrap .et-menu-nav #menu-top-menu,
#rf-body .rf-left-aligned--menu .et_pb_menu__wrap .et-menu-nav #menu-top-menu {
  width: 100%;
  display: flex;
  justify-content: center;
}
#rf-body .rf-centered-inline--menu .et_pb_menu__wrap .et-menu-nav #menu-top-menu :last-child,
#rf-body .rf-left-aligned--menu .et_pb_menu__wrap .et-menu-nav #menu-top-menu :last-child {
  margin-left: auto;
}
#rf-body .mobile_nav.opened .mobile_menu_bar::before {
  content: "M";
}
@media (min-width: 980px) {
  #rf-body li.btn {
    display: flex;
    align-items: center;
    margin-left: auto;
  }
  #rf-body li.btn a {
    color: #fff !important;
    background-color: #CC0000;
    height: fit-content;
    padding: 1.5rem 1.5rem !important;
  }
  #rf-body li.btn a:hover {
    background-color: transparent !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: 0 0 0 0.0625rem inset #CC0000;
  }
}

@media only screen and (min-width: 981px) {
  .nav li ul {
    width: fit-content;
    display: flex;
    flex-direction: column;
  }
  .nav li li {
    white-space: nowrap;
  }
  .nav li li a {
    width: auto !important;
  }
}
#main-header .container,
#top-header .container {
  max-width: 1400px;
  width: 90.09%;
}

/*
TOP HEADER
*/
#top-header .container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
#top-header #et-info-phone a {
  font-weight: 500;
  transition: all 0.3s ease;
}
#top-header #et-info-phone a:hover {
  opacity: 0.7;
}
#top-header a {
  font-size: 15px !important;
}
#top-header #et-secondary-menu {
  float: none;
}

/*
  MAIN HEADER
  */
#main-header .et_pb_menu__wrap {
  display: flex;
  justify-content: flex-end;
}
#main-header #menu-top-menu {
  display: flex;
  align-items: center;
}
@media (min-width: 980px) {
  #main-header li.btn a {
    color: #fff;
    background-color: #CC0000;
    border-radius: 0.25rem;
    padding: 0.75rem 3rem !important;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    color: #fff !important;
    height: fit-content;
  }
  #main-header li.btn a:hover {
    color: #fff !important;
    opacity: 1 !important;
  }
}
#main-header #logo {
  max-width: 25%;
}
@media (max-width: 767px) {
  #main-header #logo {
    max-width: 100%;
  }
}

#et-top-navigation {
  padding-top: 42px;
}

/*
  MAIN MENU
  */
#main-header #top-menu {
  display: flex;
  align-items: center;
}
#main-header #top-menu li a {
  font-size: clamp(0.75rem, 0.75rem + (1vw - 0.48rem) * 0.6944, 1.25rem);
}
#main-header #top-menu li ul {
  width: auto;
}
#main-header #top-menu li ul a {
  width: auto;
  white-space: nowrap;
}

@media (max-width: 980px) {
  #main-header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
  }
  #main-header .logo_container {
    position: static;
  }
  #main-header #et-top-navigation {
    padding-left: 0px !important;
  }
  #main-header .logo_container #logo {
    max-width: unset;
    max-height: 100px;
  }
  #main-header .et_header_style_split #logo {
    max-width: unset;
  }
  #main-header #et_search_icon,
  #main-header .select_page {
    display: none;
  }
  #main-header .mobile_menu_bar::before {
    color: rgba(57, 59, 64, 0.6);
    font-size: 3rem;
    position: absolute;
    transform: translate(-50px, -22px);
  }
  #main-header .mobile_nav.opened .mobile_menu_bar::before {
    content: "M";
  }
  #main-header .mobile_nav {
    padding: 0 !important;
  }
  #main-header #et_mobile_nav_menu {
    margin: 0;
  }
  .et_header_style_centered #main-header .container {
    display: block;
    text-align: left;
  }
  .et_header_style_centered #main-header div#et-top-navigation {
    position: absolute;
    bottom: auto;
    top: 0;
    padding-top: 0;
  }
  .et_header_style_centered #main-header #et_mobile_nav_menu {
    margin-top: 0;
  }
  .et_header_style_centered #main-header #et_mobile_nav_menu .mobile_nav {
    padding: 0;
  }
}
