/* Theme Name: BoilerSplat v1.9
Theme URI: https://splatworld.tv/
Author: Brian Mishico
Author URI: https://splatworld.tv/
Description: A theme created by Splat, Inc for Ehrenstein Sager and Fishman Marketing.
Version: 1.9
License: GNU General Public License v2 or later
License URI: LICENSE
Tags: Modernizr, Conditionizr, HTML5, CSS3
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

BoilerSplatv1.9 - 2023 is based on Hello Elementor, Underscores, HTML5blank themes.
Hello - https://elementor.com/products/hello-theme/
Underscores - https://underscores.me/, (C) 2012-2019 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
HTML5blank - http://html5blank.com/
HTML5blank is distributed under the terms of the GNU GPL v2 or later.
*/


/*login h1 a {
    background-image: url('') !important;
    width: 328px !important;
    background-size: 81%;
    background-position: center;
}*/



/*/ DEBUG OUTLINE /*/
*, *:before, *:after {
    /*border: 2px solid red;*/
}



/*//////// FONT FACE IMPORT ////////*/
/* @font-face { */ /*SAMPLE*/
    /* font-family: 'Bebas Neue'; */
    /* src: local('Bebas Neue'), */ /*local('BebasNeue'), /* CAN HAVE MORE THAN ONE local() FOR POSSIBLE NAMING DIFFERENCES */
        /* url('./inc/fonts/BebasNeue.woff2') format('woff2'), */
        /* url('./inc/fonts/BebasNeue.woff') format('woff'); */
    /* font-weight: normal; */
    /* font-style: normal; */
/* } */



/*//////// IMAGE PLACEHOLDERS ////////*/
img.placeholder,
img.place-holder {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 0;
    margin: 0 0;
    background-color: #cccccc;
    border: 1px solid #999999;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
img.placeholder:after,
img.place-holder:after {
    content: "Placeholder";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: Inter;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.33;
    color: #3B5266;
}


/*//////// GLOBAL DOCUMENT SET UP ////////*/
html, body {
    width: 100%; 
    height: 100%;
    margin: 0 0;
    padding: 0 0;
}
html {
    font-family: "Montserrat", "Verdana", "Arial", "Helvetica", sans-serif;
    font-size: 62.5%; /* = 10px BASE FONT-SIZE FOR EM */
    line-height: 1.3; /* = 130% BASE LINE HEIGHT */
    font-weight: normal;
    font-style: normal;
    color: var(--var-font-color);
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    scroll-behavior: smooth;
}
body {
    overflow-x: hidden;
    /* overflow: overlay; */
    background-color: var(--var-body-color);
}

/*//// SCROLL BAR ////*/
body::-webkit-scrollbar {
  width: 10px;
}
body::-webkit-scrollbar-track {
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: rgba(255, 255, 255, 0);;
}
body::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, .6);
  outline: 1px solid rgba(0, 0, 0, .6);
}



/*//////// LINKS ////////*/
a, a:link {
    color: var(--var-link-color);
    text-decoration: none;
    transition: color .4s ease-in-out;
}
a:hover, 
a:active {
    color: var(--var-active-link-color);
    text-decoration: none;
}
a:visited {
    color: var(--var-visited-link-color);
}



/*//////// TYPE ELEMENTS ////////*/
/*/ SYSTEM RATIO CHOICE - MAJOR THIRD (1.25) < Chosen /*/
/*/ SYSTEM RATIO CHOICE - PERFECT FOURTH (1.333) /*/
/*/ SYSTEM RATIO CHOICE - GOLDEN RATIO (1.618) /*/

h1 { font-family: "Montserrat"; font-size: 4.8rem; }
h2 { font-family: "Montserrat"; font-size: 3.9rem; }
h3 { font-family: "Montserrat"; font-size: 3.1rem; }
h4 { font-family: "Montserrat"; font-size: 2.5rem; }
h5 { font-family: "Montserrat"; font-size: 2rem; }
h6 { font-family: "Montserrat"; font-size: 1.6rem; }
p,
li,
a { font-family: "Montserrat"; font-size: 1.6rem; }

/*//// FONT CLASSES ////*/

/*// FONT SMALL CAPS //*/
.small-caps {
  font-variant: small-caps;
}



/*//////// SHARED PAGE ELEMENTS ////////*/

/*//// SCREEN READER TEXT & SKIPLINK ////*/
.screenreader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* When focused (keyboard tab) — make visible for skip-nav usability */
.screenreader-text:focus {
    position: fixed;
    top: 1rem;
    left: 1rem;
    width: auto;
    height: auto;
    padding: 1rem 2rem;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
    background: #09C;
    color: #fff;
    z-index: 100000;
    text-decoration: none;
    border-radius: 4px;
}

/*//// BREAD CRUMBS ////*/

/*//// PAGE CONTAINER WRAPS ALL - 100% EDGE TO EDGE ////*/
.page-container {
    position: relative;
    min-height: 100%;
    background-color: var(--var-gutter-color);
    background-color: #ffffff;
}

/*//// SECTION CONTAINER WRAPS MAIN & SECTIONS - DESIGN WIDTH ////*/
div.section-container {
    position: relative;
    width: 100%;
    max-width: var(--var-design-width); 
    height: auto;
    min-height: calc( 100vh - ( 100vh * var(--var-sticky-footer-height) ) );
    margin: 0 auto;
    background-color: var(--var-page-color);
    background-color: #ffffff;
}
/*//// MAIN WRAPS SECTIONS EXCEPT FOR NAVIGATION AND FOOTER - DESIGN WIDTH ////*/
main {
    display: block;
    position: relative;
    z-index: 10;
}
/*//// SECTIONS HOLD PAGE/DESIGN ELEMENTS ////*/
section { 
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    min-height: 10rem;
}
/*// NAVIGATION SECTION //*/
section.page-navigation-section { 
    min-height: initial;
}


/*//// CONTAINERS - CONTENT WIDTH ////*/
div.container-content-width {
    position: relative;
    width: 100%;
    height: 100%;
    max-width: var(--var-content-width);
    margin: 0 auto;
    padding: 0;
    background-color: inherit;
}
/*// SPECIFIC WIDTH CONTAINERS //*/
div.container-1440-width {
    max-width: 1440px;
}
div.container-1920-width {
    max-width: 1920px;
}



/*//////// NAVIGATION SECTION ////////*/
section.page-navigation-section { 
    transition: all .2s ease;
}
section.page-navigation-section.sink-into-hero {
    margin-bottom: calc( var(--var-header-height) * -1 );
}
section.page-navigation-section.fixed {
    position: fixed;
    z-index: 10001;
}

/*//// PAGE HEADER ////*/
section.page-navigation-section header.page-header {
    position: relative;
    z-index: 10001;
    width: 100%;
    height: var(--var-header-height);
    max-width: var(--var-header-width);
    background-color: var(--var-header-color);
    background: #09C;
    transition: all .4s ease;
    overflow: visible;
}
#page-navigation-section.animated,
#page-navigation-section.animated header.page-header { 
    height: 8rem;
}
#page-navigation-section.animated {
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

/*// MAIN MENU //*/
#page-navigation-section.animated ul.main-menu {
    position: absolute;
    top: 43%;
}

/*//// SITE LOGO ////*/
div.top-site-logo {
    position: relative;
    width: 21%;
    height: auto;
    transition: all .4s ease;
}
div.top-site-logo a.top-logo-link {
    display: inline-block;
    position: absolute;
    z-index: 101;
    /*top: 50%;*/
    top: 0;
    left: 16.2rem;
    /*transform: translateY(-50%);*/
    width: 100%;
    height: 100%;
}
a.top-logo-link img,
a.top-logo-link svg {
    position: relative;
    top: 50%;
    transform: translateY(-50%);    
    width: 100%;
    max-width: 40rem;
    transition: all .4s ease;
}
/*// ANIMATED HEADER SITE LOGO //*/
#page-navigation-section.animated div.top-site-logo svg {
    width: 20rem;
}

/*//// FLEX CONTAINER ////*/
div.header-flex-container {
    position: relative;
    z-index: 100;
    height: 100%;
    margin: 0 auto;
    padding-top: 1rem;
    justify-content: space-between;
}
div.header-flex-container div.splat-flex-item {
    position: relative;
}
/*/ LEFT /*/
div.splat-flex-item.logo-flex-item {
    padding-left: 4rem;
}
/*/ RIGHT /*/
div.splat-flex-item.hamburger-flex-item {
    padding-top: 4rem;
    padding-right: 4rem;
}

/*/ HIDE INITIAL LINKS AND BURGER /*/
div.hamburger-flex-item a.nav-link,
div.hamburger-flex-item div.hamburger-container {
    opacity: 1;
}





/*//// DESKTOP NAVIGATION ////*/
nav#desktop-menu { 
    position: relative;
    width: 65%;
}
/*//// MAIN MENU LINKS ////*/
nav#desktop-menu #menu-main-menu {
    position: absolute;
    top: 50%;
    right: 19rem;
    transform: translateY(-50%);
    width: calc(100% - 19rem);
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: right;
}
nav#desktop-menu #menu-main-menu > li {
    position: relative;
    z-index: 100;
    display: inline-block;
    width: auto;
    padding: 1rem 0;
    margin: 0 0;
    margin-left: 6rem;
}
nav#desktop-menu #menu-main-menu > li > a { 
    color: #FFF;
    text-align: center;
    font-family: "Montserrat";
    font-size: 2rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    transition: color 0.3s ease;
}
/* Main menu link hover */
nav#desktop-menu #menu-main-menu > li > a:hover {
    color: #221E1F;
}
/* Main menu - current page */
nav#desktop-menu #menu-main-menu > li.current-menu-item > a,
nav#desktop-menu #menu-main-menu > li.current-menu-parent > a,
nav#desktop-menu #menu-main-menu > li.current-menu-ancestor > a {
    color: #221E1F;
}
/* Bridge the gap between parent and submenu */
nav#desktop-menu #menu-main-menu > li.menu-item-has-children::after {
    content: '';
    position: absolute;
    top: 100%;
    left: -1rem;
    width: calc(100% + 2rem);
    height: 3rem;
    background: transparent;
    pointer-events: auto;
}
/*//// SUBMENU - HIDDEN BY DEFAULT ////*/
nav#desktop-menu #menu-main-menu ul.sub-menu {
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 0;
    min-width: 200px;
    list-style: none;
    margin: 0;
    padding: 0.8rem 0.8rem;
    background: #09C;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-1rem);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
    max-height: 0;
}
nav#desktop-menu #menu-main-menu ul.sub-menu > li {
    margin: 0 0;
    text-align: left;
}
nav#desktop-menu #menu-main-menu ul.sub-menu > li:hover {}
nav#desktop-menu #menu-main-menu ul.sub-menu > li:first-of-type {
    padding-top: 1.4rem;
}
nav#desktop-menu #menu-main-menu ul.sub-menu > li:last-of-type {
    padding-bottom: 1.4rem;
}
nav#desktop-menu #menu-main-menu ul.sub-menu > li > a {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0 0;
    padding: 0.8rem 0.8rem;
    white-space: nowrap;
    color: #fff;
    font-family: "Montserrat";
    font-size: 2rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;    
    text-align: left;
    transition: color 0.3s ease, background 0.3s ease;
}
/* Submenu link hover */
nav#desktop-menu #menu-main-menu ul.sub-menu > li > a:hover {
    color: #000;
    background-color: rgba(255, 255, 255, .3);
}
/* Submenu - current page */
nav#desktop-menu #menu-main-menu ul.sub-menu > li.current-menu-item > a {
    color: #000;
}
/* SHOW SUBMENU ON PARENT HOVER */
nav#desktop-menu #menu-main-menu > li:hover > ul.sub-menu,
nav#desktop-menu #menu-main-menu > li:focus-within > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(1.2rem);
    max-height: 100rem;
}





/*// MENU ACCENT / SEPERATOR //*/
nav#desktop-drop-menu div.menu-seperator {
    position: absolute;
    /*top: 59rem;*/
    top: 67%;
    transform: translateY(-50%);
    left: 41rem;
    padding: 0;
    margin: 1rem 0 1rem 3rem;
    width: 5.4rem;
    height: 0.1rem;
    background: #ffffff;
}

/*// MENU IMAGE / QUOTE //*/
div.menu-image-container {
    position: absolute;
    /*top: 14rem;*/
    top: 51%;
    transform: translateY(-50%);
    right: 0;
    width: 81rem;
    /*height: 85rem;*/
    height: auto;
    /*padding-top: 65rem;*/
    padding-top: 62rem;
}
div.menu-image-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 81rem;
    /*height: 60.5rem;*/
    height: auto;
}
div.menu-image-container img.nav-image {
    display: block;
    opacity: 0;
    transition: opacity .4s ease;
    transition-delay: .2s;
}
div.menu-image-container img.nav-image.show-opacity,
nav#desktop-drop-menu.open img.nav-image {
    opacity: 1;
}
div.menu-image-container p.quote {
    margin: 3rem 0 0 0rem;
    color: #727070;
    font-family: "Reddit Sans";
    font-size: 4rem;
    font-style: italic;
    font-weight: 300;
    line-height: normal;
    text-transform: lowercase;
} 
div.menu-image-container p.source {
    margin: 1rem 0 0 44rem;
    color: #727070;
    font-family: "Reddit Sans";
    font-size: 2.6rem;
    font-style: italic;
    font-weight: 300;
    line-height: normal;
    text-transform: uppercase;
}

/*//// WIDGET TRANSLATION TOGGLE ////*/
div.manual-lang-toggle,
div.lang-toggle {
    position: absolute;
    top: 53%;
    right: 8rem;
    transform: translateY(-50%);
    min-width: 2rem;
    min-height: 2rem;
    padding: .3rem .6rem;
    background: rgba(255, 255, 255, .2);
}
div.manual-lang-toggle a.lang-link {
    display: inline-block;
    width: 3rem;
    width: 2.2rem;
    margin: 0 .5rem;
}




/*// DESKTOP HAMBURGER //*/
div.splat-flex-item.hamburger-flex-item div.hamburger-container {
    display: inline-block;
    position: relative;
    top: -16%;
    left: initial;
    transform: translateY(-50%);
    width: 5.4rem;
    height: 2rem;
    cursor: pointer;
}
div.hamburger-flex-item div.hamburger-container .hamburger {
    width: 100%;
    height: 2px;
    background-color: #ffffff;
    border-radius: 0;
}
div.hamburger-flex-item div.hamburger-container .bar-1 { top: 0; }
div.hamburger-flex-item div.hamburger-container .bar-2 { top: 50%; }
div.hamburger-flex-item div.hamburger-container .bar-3 { top: 100%; }


/*// DESKTOP MENU HOVER STATES //*/
section.page-navigation-section.fixed:hover header.page-header { 
    /*background-color: var(--var-header-color);
    background-color: #565652;*/
}
section.page-navigation-section.fixed:hover a.nav-link,
section.page-navigation-section.fixed:hover div.hamburger-container {
    opacity: 1;
}  

/*// DESKTOP MENU ANIMATED STATES //*/
section.slide-down-navigation.animated div#slide-down-menu,
section.slide-down-navigation.keep-animated div#slide-down-menu {
    transform: translate(-50%, 0);
}
section.slide-down-navigation.animated header.page-header,
section.slide-down-navigation.keep-animated header.page-header { 
    /*background-color: var(--var-header-color);*/
    /*background-color: #565652;*/
}
section.slide-down-navigation.animated a.nav-link,
section.slide-down-navigation.keep-animated a.nav-link,
section.slide-down-navigation.animated div.hamburger-container,
section.slide-down-navigation.keep-animated div.hamburger-container {
    opacity: 1;
}



/*//// DESKTOP MENU ACCENTS ////*/
div.menu-accent {
    display: none;
    visibility: hidden;
    float: left;
    width: 0;
    max-width: 6rem;
    height: .5rem;
    margin: -.5rem auto 0 auto;    
    border-bottom: 1px solid transparent;
    transition: all 1.5s ease;
}
div.hover-link,
div.accent-on-this-page,
div.on-this-page { 
    width: 100%;
    border-bottom: 1px solid var(--var-nav-link-hover-color);
}
/*// VERT ACCENT - HIDDEN //*/
div.vert-menu-accent {
    display: none;
    visibility: hidden;
    position: absolute;
    left: .8rem;
    bottom: 0;
    width: 1px;
    height: 0;
    border-right: 1px solid transparent;
    transition: all .5s linear;    
}
div.vert-menu-accent.hover-link,
div.vert-menu-accent.accent-on-this-page,
div.vert-menu-accent.on-this-page { 
    height: 3.2rem;
    border-right: 1px solid #A41E22;
}

/*// HORIZONTAL ACCENT //*/
div.horiz-menu-accent {
    display: none;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 19.6rem;
    height: 1px;
    margin: -1px auto 0 auto;    
    border-bottom: 1px solid var(--var-nav-link-color);
    transition: all .4s ease;
}
div.horiz-menu-accent.hover-link,
div.horiz-menu-accent.accent-on-this-page,
div.horiz-menu-accent.on-this-page { 
/*    width: 100%;*/
    border-bottom: 1px solid var(--var-nav-link-hover-color);
}


/*//// DESKTOP SUB-MENU ////*/
ul.main-menu ul.main-sub-menu {
     position: absolute;
     left: -9999px;
     width: 100%;
     height: auto;
     margin: 0;
     padding: 0;
     opacity: 0;
     transition: opacity .4s ease-in-out;
     list-style: none;
}
ul.main-sub-menu li.sub-main-menu-item {
    width: 100%;
    height: auto;
    margin: auto;
    transition: color .4s ease-in-out;
    text-align: left;
    background-color: rgba( 18, 25, 34, .9 );
}
.main-sub-menu .sub-main-menu-item:hover {
    background-color: rgba( 18, 25, 34, 1 );
}
.main-menu-item .sub-main-menu-item a {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 2rem; 
    letter-spacing: 0.1rem;
    font-weight: 400;
    text-transform: uppercase;
}
/*// HOVER SUB-MENU VISIBILITY //*/
ul.main-menu li.page-item-x:hover #child-of-x { /*<< x = PARENT PAGE ID */
    left: 100%;
    top: 0;
    opacity: 1;
    border: 1px solid transparent;
}





/*//// DEBUG SETTINGS .debug ////*/
main .debug {
    border: 1px solid rgba( 255, 0, 0, .5) !important;
}





/*/////// PAGE LOGO WATERMARK ///////*/
div.logo-watermark {
    position: absolute;
    top: 12rem;
    left: 50%;
    transform: translateX(-50%);
    width: 178.0309rem;
    height: 99.029rem;
}
div.logo-watermark img.watermark,
div.logo-watermark svg {
    width: 100%;
    height: auto;
    margin: 0 0;
    padding: 0 0;
    opacity: 1;
}
div.logo-watermark svg path {
    fill: #F6F6F6 !important;
}





/*//// PAGE HERO SECTION ////*/
section.page-hero-section {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
section.page-hero-section div.page-hero-container {
    height: var(--var-hero-section-height);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

/*// HERO CONTENT FLEX //*/
div.page-hero-container div.hero-flex-container {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 99;
    align-items: stretch;
}
div.hero-flex-container div.full-hero-flex-item {
    padding-top: 30rem;
    padding-left: 12.5rem;
    text-align: left;
}

/*// FLUID IMAGE - SECTION & CONTENT CONTAINER //*/
section.page-hero-section img.fluid-image {
    width: 100%;
    height: auto;
}

/*// HEADLINE //*/
div.headline-container { }
div.headline-container h1 { }
div.headline-container h1.animated { }
div.headline-container h1 span {
    font-style: italic;
    font-variant: initial;
}


/*// BYLINE //*/
div.byline-container {}
div.byline-container h2 {}


/*// WYSIWYG CONTENT //*/
div.hero-content-container {}
div.hero-content-container h3 {}


/*// SCROLL DOWN HERO ARROW //*/
a.hero-section-arrow {
    position: absolute;
    top: 90.5%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    cursor: pointer;
}
a.next-section-link img {
    width: 4.5rem;
    height: auto;
}





/*//// PAGE HERO ALERT BOX ////*/
div.alert-box {
    position: absolute;
    top: 10rem;
    right: -100%;
    z-index: 100;
    padding: 2.5rem 0 2.5rem 3.5rem;
    background-color: rgba(23, 26, 58, 65.43%);
    transition: all .4s ease;
}
div.alert-box.slide-closed {
    right: -100%;
}
div.alert-box.slide-open {
    right: 0;
}
div.alert-box div.alert-container {
    width: 100%;
    max-width: 31rem;
    padding: 2rem 1rem;
    border: 1px solid #A4A0A0;
}                         
div.alert-container h2 {
    margin-bottom: 1.8rem;
    font-family: "Open Sans Condensed", sans-serif;
    font-style: normal;
    font-weight: bold;
    font-size: 2.8rem;
    line-height: 3.8rem;
    color: #ffffff;
}
div.alert-container p {
    margin-bottom: 2rem;
    padding-left: 2rem;    
    font-style: normal;
    font-weight: normal;
    font-size: 1.5rem;
    line-height: 1.333;
    letter-spacing: -0.015em;
    color: #ffffff;
}
div.alert-container a.shca-red-button {
    margin-left: 2rem;
}





/*//// LINK HOT SPOT ////*/
a.hot-spot,
a.hotspot {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}





/*//// STICKY FOOTER ////*/
/* REMOVE COMMENTS FOR STICKY FOOTER */
/*main, footer {
    padding-bottom: var(--var-sticky-footer-height);
}*/
/*footer {
    position: absolute;
    left: 50%; 
    bottom: 0;
    transform: translateX(-50%);
}*/





/*//// SITE BADGES ////*/
section.badges-section {
    padding-top: 12rem;
    background-color: var(--var-footer-color);       
}
section.badges-section div.badges-container {
    position: relative;
    z-index: 1000;
    width: 100%;
    height: 100%;
    max-width: var(--var-content-width);
    margin: 0 auto;
    padding: 12rem 15rem 0 15rem;
    background-color: var(--var-footer-color);
}
div.badges-container div.badges-flex-container {
    justify-content: space-around;
}
div.badges-container div.badges-flex-item {
    text-align: center;
}
div.badges-flex-item img.foooter-badge {
    width: auto;
    max-height: 18rem;
    margin: 0 auto;
}

/*//// SITE FOOTER ////*/
footer {
    width: 100%;
    max-width: var(--var-design-width);    
    height: var(--var-footer-height);
    height: auto;    
    margin: 0 auto;
    text-align: center;
    background-color: var(--var-footer-color);
}
footer p, 
footer a { }
footer a:active {
    color: var(--var-active-link-color);
}
footer a:visited {
    color: var(--var-visited-link-color);
}


/*//// FOOTER CONTAINER ////*/
footer div.footer-container {
    position: relative;
    z-index: 1000;
    width: 100%;
    height: 100%;
    max-width: var(--var-content-width);
    margin: 0 auto;
    padding: 8rem 15rem;
    background-color: var(--var-footer-color);
}


/*//// FOOTER ACCENT ////*/
#footer-full-width {
    background: #29ABE2;
    height: 1px;
    margin-bottom: 4rem;    
}



/*//// FOOTER TOP FLEX ROW ////*/
div.footer-container div.footer-top-flex {
    width: 100%;
}
/*// TOP LEFT COLUMN //*/
div.footer-top-flex div.footer-top-left-column {
    position: relative;
    text-align: left;
}
/*// TOP RIGHT COLUMN //*/
div.footer-top-flex div.footer-top-right-column {
    position: relative;
    padding: 0 3rem 0 0;
    text-align: left;
}

div.footer-top-right-column p,
div.footer-top-right-column address {
    margin-bottom: 1rem;
    color: #000;
    font-family: Montserrat;
    font-size: 2.4rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.41; /* 141.667% */
}
div.footer-top-right-column p a {
    color: #069;
    font-family: Montserrat;
    font-size: 2.4rem;
    font-style: normal;
    font-weight: 500;
    line-height: 3.4rem;   
}
div.footer-top-right-column p.copyright {
    color: #565652;
    text-align: right;
    font-family: "Reddit Sans";
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.5; /* 250% */
    letter-spacing: 0.06rem;
}
div.footer-top-right-column img {
    width: 2.8rem;
    height: auto;
    margin: 3.2rem 0;
}
div.footer-top-right-column p a { }
div.footer-top-right-column p address { }

/*//// FOOTER LOGO ////*/
img.footer-logo {
    width: 40.381rem;
    height: auto;
    margin-top: 3rem;
}
img.footer-logo.logo-hide {
    display: none;
}

/*//// FOOTER NAVIGATION ////*/
ul.footer-menu {
    display: inline-block;
    width: 100%;
    width: auto;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}
ul.footer-menu li {
    display: inline-block;
    width: auto;
    padding: 0 2rem;
    margin-bottom: 3rem;
    vertical-align: top;
    font-size: 1.5rem;
    line-height: 1.1;
    text-align: center;
    border-right: 1px solid #B78952;
}
ul.footer-menu li:last-of-type {
    border-right: 1px solid transparent;    
}

/*// BOTTOM MENU //*/
ul.footer-menu.bottom-footer-menu li:last-of-type {
    padding-right: 4.2rem;
    border-right: 1px solid transparent;
}



/*// HIDE MENU ACCENTS //*/
ul.footer-menu li div.menu-accent,
ul.footer-menu li div.vert-menu-accent,
ul.footer-menu li div.horiz-menu-accent {
    display: none;
}
ul.footer-menu li > a {
    font-family: 'Red Hat Display', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: inherit;
    line-height: inherit;
    text-align: center;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #ffffff;
    transition: all .3s ease;
}
ul.footer-menu li > a:hover {
    text-decoration: underline;
}
/*// HIDE MENU SUB MENU //*/
li ul.footer-sub-menu {
    display: none;
}

/*// SCROLL TO TOP //*/
div.scroll-to-top {
    position: fixed;
    z-index: 10000;
    width: 10rem;
    height: 10rem;
    padding: 3rem;
    border-radius: 50%;
    background: #09C;
    opacity: 0;
    transition: opacity .3s ease;
}
div.scroll-to-top.show {
    bottom: 4rem;
    left: 4rem;
    opacity: 1;
}
div.scroll-to-top a {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-54%,-46%);
    color: #ffffff;
    text-align: center;
}



/*//// PAGE MODAL ////*/
.page-modal {
    display: none;
    position: fixed;
    z-index: 99999;
    padding-top: 5%;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
}
@media screen and (min-width: 1600px) {
    /*.page-modal { padding-top: 8%; }*/
}
.page-modal.show-modal {
    display: block;
}
/*/// MODAL SCRIM ///*/
#pageModal .modal-scrim {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.6);
}
#pageModal .modal-box {
    position: relative;
    width: 85%;
    max-width: 600px;
    height: auto;
    margin: auto;
    padding: 0;
    background-color: #ffffff;
    background: linear-gradient(0deg, rgba(194,223,240,1) 0%, rgba(255,255,255,1) 100%);
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    -webkit-animation-name: animatetop;
    animation-name: animatetop;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    border-radius: 10px;
}
#pageModal .modal-box .modal-header {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 6rem;
    margin: 0;
    padding: 0;
    background-color: #125695;
}
#pageModal .modal-header h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 85%;
    max-width: 550px;
    padding: .75% 1%; 
    margin: 0;
    font-size: 2.6rem;
    line-height: 1.2;
    font-weight: 500;
    text-transform: capitalize;
}
/*/ CLOSE BUTTON /*/
#pageModal span.close {
    position: absolute;
    z-index: 1000;
    top: 12px;
    right: 19px;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    cursor: pointer;
    transition: opacity .3s ease;
}
#pageModal span.close:hover,
#pageModal span.close:focus {
    color: #007CC3;
    text-decoration: none;
    cursor: pointer;
}
#pageModal .modal-box .modal-body {
    position: relative;
    width: 100%;
    padding: 1.5rem 4.5rem 0 4.5rem;
    padding: 1.5rem 0 0 0;
}
#pageModal .modal-body p { 
    margin-top: 0;
    font-size: 1.6rem;
    line-height: 1.625;
    font-weight: 400;
    font-weight: normal;
    font-style: normal;
    color: #555454;
    padding: 0 4.5rem;
}
/*//// LOADING SCRIM ////*/
div.loader-scrim {
    display: none;
    position: absolute;
    z-index: 1000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 124, 195, 0.5);
}
div.loader-scrim.show-loader-scrim {
    display: block;
}
div.loader-scrim #modal-loader {
    position: absolute;
    top: 50%;
    left: calc(50% - 20px);
    width: 4rem;
    height: 4rem;
    margin: 0 auto;
    border: 4px solid #ffffff;
    border-top: 4px solid rgb(0, 124, 195);
    border-radius: 50%;
    animation: spin 2s linear infinite;
}
div.modal-loader-info {
    position: absolute;
    top: 55%;
    left: 50%;
    transform: translateX(-50%);
    color: #ffffff;
}

/*//// MODAL ANIMATION ////*/
@-webkit-keyframes animatetop {
    from { top: -300px; opacity: 0; }
    to { top: 0; opacity: 1; }
}
@keyframes animatetop {
    from { top: -300px; opacity: 0; }
    to { top: 0; opacity: 1; }
}

/*//// MODAL FORM ////*/
#pageModal form {
    width: 98%;
    margin: 0 auto;
    padding-bottom: 2rem;
}
#pageModal form p {
    width: 100%;
    margin: 1rem 0;
}
#pageModal form p:nth-child(2),
#pageModal form p:nth-child(3) {
    display: inline-block;
    width: 48.5%;
    margin-right: 0;
}
#pageModal form p:nth-child(2) {
    padding: 0 0 0 4.5rem;
}
#pageModal form p:nth-child(3) {
    padding: 0 4.5rem 0 0;
}

#pageModal form label {
    font-family: "Calibre", sans-serif;
    font-weight: bold;
    font-size: 1.4rem;
    letter-spacing: .096rem;
    color: #231F20;
    color: rgb(35, 31, 32);
}
#pageModal form input[type='text'],
#pageModal form input[type='email'],
#pageModal form input[type='tel'],
#pageModal textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #231F20;
    font-family: "Calibre", sans-serif;
    font-size: 1.6rem;
    padding: .6rem 1rem;
    margin: 1rem 0;
    color:  darkgray;
    transition: background .4s ease-in-out;
    outline: none;
}
#pageModal form input[type='text']:hover,
#pageModal form input[type='email']:hover,
#pageModal form input[type='tel']:hover,
#pageModal textarea:hover,
#pageModal form input[type='text']:active,
#pageModal form input[type='email']:active,
#pageModal form input[type='tel']:active,
#pageModal textarea:active {
    outline: none;
    background: #f6f8f8;
}
#pageModal textarea {
    height: 10rem;
}

#pageModal form input[type='submit'] {
    width: 20rem;
    padding: 1.4rem 3rem 1.4rem 3rem; 
    font-style: normal;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1;
    text-align: center;
    color: #FFFFFF;
    background: #A3C50A; /* LeaderGreen */
    transition: background .4s ease-in-out;
    border: none;
    cursor: pointer;
}





/*//// ELEMENT ANIMATIONS ////*/
.fade-in-up {
    transform: translateY(16px);
    opacity: 0;
    transition: all .4s ease;
}
.fade-in-up.animate {
    transform: translateY(0px);
    opacity: 1;
}
