/* Page Loader */
body.loading > *:not(#page-loader) {
    visibility: hidden;
}
#page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s ease;
}

.loader-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #B6C7BF;
    border-top: 4px solid #2C7178;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

/* === Style Block 1 === */
/* #2C7178  #B6C7BF #B0413E */
:root{
--paletteColor1: #2C7178;
--paletteColor2: #B6C7BF;
--paletteColor3: #B0413E;

--paletteColor1H: 186;
--paletteColor1S: 46%;
--paletteColor1L: 32%;

--paletteColor2H: 152;
--paletteColor2S: 13%;
--paletteColor2L: 75%;

--paletteColor3H: 2;
--paletteColor3S: 48%;
--paletteColor3L: 47%;
}
a{
    color:#B0413E;
}
h1, h2, h3, h4,
h1 a, h2 a, h3 a, h4 a
{color:#2C7178;}

.c-svg path{
    fill: #2C7178;
}
.c-vcard-download--link {
    color: #2C7178;
}


.back-to-top{background: #B0413E; }

.c-topnav__navbar {
    background: #2C7178;
}

.c-topnav__menu-item .c-topnav__menu-text {
    color: #fff;
}

.angleLeft,
.angleRight {
    background: #fff;
}
.c-topnav__submenu {
    background:rgba(83,94,92,1);
}
.c-topnav__menu-item:hover .c-topnav__menu-text {
    background: #B0413E;
    color: #fff;
}

li.c-topnav__submenu-item a {
    color: #fff;
}

.c-circle {
    background:rgba(47,54,52,1);
}
@media (min-width:992px) {

    .c-topbar {
        background:#B6C7BF;
        color:#fff;
    }
    .c-topbar a {
        color:#c1c1c1;
    }
    .c-topbar a:not(.c-social-media--link):hover{
        color:#B0413E;
    }
    .c-topnav__navbar {
        background:none;
    }

    .c-topnav__menu-item .c-topnav__menu-text {
        color: #B6C7BF;
    }
    .c-topnav__menu-item .c-topnav__menu-text.selected{
        background: #B0413E;
        color: #fff;
    }

    .c-topnav__submenu {
        background:rgba(34,34,34,.95);
    }

    .c-topnav__menu-item:hover .c-topnav__menu-text {
        background:#B0413E;
        opacity:.80;
    }

    .c-topnav__submenu-item:hover{
        background:#B0413E;
    }
    .c-topnav__submenu-item:hover a {
        color: #fff !important;
    }
    
} /* END MEDIA */

/*HERO*/


@media (min-width: 992px) {
    .top-bar  {background:#B6C7BF;}
}

.c-btn {
    color: #fff !important;
    background: #B0413E !important;
    border: solid 2px #B0413E !important;
    box-sizing: border-box;
}

.c-btn:hover,
.c-btn:focus,
.c-btn:active {
    text-decoration: none;
    color: #B0413E !important;
    background-color: #fff !important;
    border: solid 2px #B0413E !important;
    box-sizing: border-box;
}
.c-additional__content {
    background-color: #F7FBFA;
}

.c-additional__content--small .c-accordion__link {
    background: #B0413E;
}

.c-additional__content nav a {
    color: #B6C7BF;
}
.c-additional__content nav a:hover{
   background: #B0413E;
   color: #fff;
}

.c-additional__content nav .selected {
    color: #fff;
    background: #B0413E;
}

.c-additional__content h4 a {
    color: #666;
}

.c-additional__content .viewAll a,
.c-additional__content h4 a:hover {
    color: #B6C7BF;
}

.c-additional__content--small .panel-heading {
    background: #B0413E;
}

.c-matter-flag__body {
    background: #B0413E;
}
.c-matter-flag__body:hover{
    opacity:.95;
}
.c-team-member__info a{
    color:#B0413E;
}

footer {
    background: #fff;
    color: #333;
}

footer h4 {
    color: #2C7178;
    text-decoration:underline;
}

footer a {
    color: #2C7178;
}
footer a:hover{
    color: #B0413E;
}
.quickLinks ul a {
    color: #333;
}
.quickLinks ul a:hover{
    color: #B0413E;
}
footer .c-socialMedia a {
    color: #2C7178;
}

footer .c-socialMedia a:hover {
   color: #B0413E;
}


.article-008 th,
.article-012 th,
.article-017 th {background-color:#B0413E}

/*CONTENT GATE MODAL*/
.c-popup__submit {
    color:#B0413E; border-color:#B0413E; background:#B0413E;
}
.c-popup__submit:hover {
    opacity:0.75;
}

.c-matter__meta {
    color: #2C7178;
}

.c-matter__pull-quote {
    background-color: #B0413E;
    color: #fff;
}

/*EVENTS
//==================================================*/
.c-event__date-box {
    border-color: #B0413E;
}
.c-event-date--day {
    color: #B0413E;
}
.c-event-reg--submit.c-loading:after {
    border-top-color: #B0413E;
}

/* === Style Block 2 === */
:root {
    /*Font*/
    --headingFontFamily: 'Playfair Display', serif;
    --bodyFontFamily: 'Open Sans', sans-serif;
    --bodyFontSize: 18px;
    --bodyFontColor: #000;
    
    /*Buttons*/
    --btnTextColor: #fff;
    --btnTextHoverColor: #B0413E;
    --btnBackgroundColor: #B0413E;
    --btnBackgroundHoverColor: #fff;
    --btnBorderWidth: 2px;
    --btnBorderColor: #B0413E;
    --btnBorderHoverColor: #B0413E;
    --btnBorderRadius: 5px;
    --btnTextTransform: none;
    
    /*Header*/
    --headerBackgroundColor: #fff;
    --topBarBackgroundColor: var(--paletteColor1);
    --headerWidth: 100%;
    --parentNavItemColor: var(--paletteColor1);
    --subNavFontHoverColor: #473335;
    --mobileHamburgerMenuColor: var(--expandCircleColor, var(--paletteColor1));
    --headerBtnBackgroundColor: transparent;
    --headerBtnTextColor: #fff;
    --headerBtnBackgroundHoverColor: transparent;
    --headerBtnTextHoverColor: #fff;
    
    /*Logo*/
    --logoWidth: 200px;
    --logoWidthScroll: 200px;
    
    /*Box Icons*/
    --boxIconColor: var(--paletteColor2);
    --boxIconHoverColor: var(--paletteColor2);

    /*Footer*/
    --footerBackgroundColor: var(--offWhiteColor);
    --footerBodyColor: #000;
    
    /*Subpage Banners*/
    --subpageBannerImg: var(--paletteColor1);
    --subpageBannerTextPosition: center;
    
    /*Misc*/
    --sectionMaxHeight: 500px;
    --mobileSectionMaxHeight: 35vh;
    --boxShadowEffect: 0 1px 1px rgba(0, 0, 0, 0.08), 0 2px 2px rgba(0, 0, 0, 0.12), 0 4px 4px rgba(0, 0, 0, 0.16), 0 8px 12px rgba(0, 0, 0, 0.20);
    --superSectionBackgroundEffect: linear-gradient(0deg,  rgba(255, 255, 255, 0.5), #fff);
    --lineWidth: 4px;
    --overlayColor: hsla(var(--secondaryHSL), 0.75);
    --offWhiteColor: #F8F9FA;
    --navFontSize: 16px;
    --fmgContentFlagFontColor: #473335;
    --fmgContentFlagFontHoverColor: var(--paletteColor1);
}

/* === Style Block 3 === */
.c-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s ease;
}

/* Scrolled state */
.c-header.scrolled .c-topbar {
    display: none;
}

.c-header.scrolled {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.c-header.scrolled img#agentLogo,
.c-header.scrolled img#agentLogoMobile {
    max-height: 40px;
    width: auto;
    transition: max-height 0.3s ease;
}

.c-header img#agentLogo,
.c-header img#agentLogoMobile {
    transition: max-height 0.3s ease;
}

.c-header.scrolled .c-header__container {
    padding-top: 5px;
    padding-bottom: 5px;
    transition: padding 0.3s ease;
}

.c-header .c-header__container {
    transition: padding 0.3s ease;
}
.c-header-btn--link { border: none !important; }
.c-topbar .c-social-media,
.c-topbar .c-social-media--link,
.c-topbar .c-topbar-cta-links { background: transparent !important; }
.c-topbar .c-social-media--link { margin: 0 !important; margin-left: 0 !important; padding: 0 1px !important; min-width: auto !important; width: 30px !important; text-align: center; }
.c-topbar .c-social-media--link:hover { color: #1a3a5c !important; }
.dev-ctaForm.dev-ctaFormHeadline,
.dev-ctaForm.dev-ctaFormFields {
    color: #fff;
}
.dev-ctaForm.dev-ctaFormHeadline h2,
.dev-ctaForm.dev-ctaFormHeadline p,
.dev-ctaForm.dev-ctaFormHeadline em,
.dev-ctaForm.dev-ctaFormHeadline strong {
    color: #fff !important;
}
.dev-ctaForm.dev-ctaFormFields .field-label {
    color: #fff !important;
}
.dev-ctaForm.dev-ctaFormFields {
    --btnTextColor: #B0413E;
    --btnTextHoverColor: #fff;
    --btnBackgroundColor: #fff;
    --btnBackgroundHoverColor: #B0413E;
    --btnBorderWidth: 2px;
    --btnBorderColor: #fff;
    --btnBorderHoverColor: #fff;
    --themeColorBackground: var(--paletteColor3);
    --themeColorBackgroundText: #fff;
}
.dev-ctaForm.dev-ctaFormFields .c-btn {
    background-color: #fff !important;
    color: #B0413E !important;
    border-color: #fff !important;
}
.dev-ctaForm.dev-ctaFormFields .c-btn:hover {
    background-color: #B0413E !important;
    color: #fff !important;
}

#content h1.c-custom-pages-heading {
    padding: 60px 0 0 !important;
}

@media only screen and (max-width: 600px){
#content h1.c-custom-pages-heading {
    padding: 30px 0 0 25px !important;
}
}

.sideBySide-SuperSection .superOverlay {
    --overlayColor: transparent;
}

@media(min-width: 991px){
  .dev-home-HeroSection h2{
    font-size: 2.75em;
  }
  
  #mainNav .c-topnav__menu-item.navBtn .c-topnav__menu-text {
    font-weight: bold;
    padding: 15px 20px;
  }
  
  .sideBySide-SuperSection .o-container.superContainer section.section.dev-boxes-ShadowHover {
    width: 60%;
  }
  
  .sideBySide-SuperSection .o-container.superContainer section.section.dev-textLeft {
    width: 40%;
    padding-right: 50px;
  }
}

.c-header img#agentLogo {
  max-width: 100%;
  width: var(--logoWidth);
}

.dev-boxes-ShadowHover .o-grid__collapse {
  justify-content: center;
}

.dev-bannerSection, .bannerSection {
    --overlayColor: transparent;
}

footer .c-socialMedia {
  --footerHyperlinkColor: #2C7178;
  --footerHyperlinkHoverColor: #B0413E;
}

/* Mobile header overrides */
.c-hambuger-bar,
.c-hambuger-bar::before,
.c-hambuger-bar::after {
    background: #fff !important;
}
@media (max-width: 991px) {
    .c-header-nav--btn {
        display: none;
    }
}

.body-container .o-content__container > section:first-child {
    padding-top: 50px;
}

.c-template__logo--mobile.c-template__logo--noLogo {
    padding-left: 0;
}

.c-template__logo--mobile .c-logo--image {
    max-height: 64px;
}

/* White text on colored background sections */
.dev-colorBackground h1,
.dev-colorBackground h2,
.dev-colorBackground h3,
.dev-colorBackground h4,
.dev-colorBackground p,
.dev-colorBackground label,
.dev-colorBackground .c-box__title,
.dev-colorBackground .c-box__paragraph,
.dev-colorBackground .c-text__section {
    color: #fff !important;
}

