/*
-----------------------------------
TOC
-----------------------------------


Fonts:....................Available font-family declarations

Globals:..................Styling of HTML and BODY

Bootstrap Overrides:......Changes to base-Bootstrap CSS

Site Elements:............Re-usable site elements 	

Structure:................Site structural components

Section Specific:.........Styles for Home and all Sub Pages

Template Specific:........Styles for WP Templates

Page/Element Specific:....Page, element or flow Specific CSS

Additive CSS:.............Additive/override CSS

Responsive:...............Specific styles for Desktop, Tablet and Mobile

*/



/*-----------------------------------
   Globals
-----------------------------------*/
html body { font-size:17px; }



/*-----------------------------------
   Visual Composer Overrides
-----------------------------------*/
/* Visual Composer Full-Width Banners */
.add_vc_banner_row { padding-top:38px; padding-bottom:60px; }


/* ---- Visual Composer Responsive Spacer Heights ----
.add_vc_spacer_20 { height:16px !important; }
.add_vc_spacer_30 { height:25px !important; }
.add_vc_spacer_40 { height:33px !important; }
.add_vc_spacer_50 { height:41px !important; }
.add_vc_spacer_60 { height:50px !important; }
*/


/*-----------------------------------
   Site Elements
-----------------------------------*/
/* ---- Hierarchy ---- */
h1 { height:88px; padding-top:7px; font-size:70px; }
h2 { font-size:37px; }
h3 { font-size:34px; margin-bottom:19px; }
h4 { font-size:17px; }
h5 { font-size:17px; }

.h4 { font-size:17px; } 

h2.page_title { margin-top:-38px; font-size:21px; }
h2.page_title strong { font-size:49px; }

h3.benefit_anchor_header { height:134px; background-size:105px auto; font-size:33px; }


/* ---- Lists ----- */

  /* Lists: Unordered */
  .content_container ul:not(.list-unstyled):not(.resource_list):not(.dropdown-menu):not(.list-inline):not(.nav-tabs):not(.cta_list):not(.pdf_list):not(.menu) { padding-left:29px; }
  
  
/* ---- Breadcrumbs ---- */
.breadcrumb { margin-top:-85px; }


/* ---- Buttons ---- */

  /* Secondary Button */
  .btn_secondary { font-size:17px; }    


/* ---- Callouts ---- */
.callout { border-bottom-width:16px; }
.callout_heading { height:70px; }
.callout_heading h3 { font-size:20px; bottom:8px; left:8px; }

.callout_content { font-size:14px; }
.callout_cta li.doc_pdf { padding-left:17px; background-size:15px auto; }


/* ---- Quotes ---- */
.quote { font-size:26px; }
.quote_attribution { font-size:17px; } 
.quote_attribution .quote_attributor { font-size:21px; }



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

  /* HeaderNav */
  #menu-headernav { margin:0 -16px 10px 0; }
  #menu-headernav > li { font-size:18px; }
  #menu-headernav > li > a { padding:35px 16px 8px; }
  
  #menu-headernav > li:first-child > a { padding-left:8px; }

  #menu-headernav > li + li:before { height:18px; bottom:8px; }  
  
  #menu-headernav > li > .dropdown-menu { font-size:18px; }
  #menu-headernav > li > .dropdown-menu > li > a { padding-left:21px; }
  #menu-headernav > li > .dropdown-menu > li > a:hover::before { width:21px; padding-left:10px; margin-left:-21px; }
  
    /* HeaderNav: Contact Phone */
    .headernav_contact { font-size:23px; }
    .headernav_contact_phone { font-size:32px; }
    
    
  #header_container { margin-bottom:29px; }
  
  .navbar-brand img { width:330px; }
  
  .navbar-nav { width:calc(100% + 15px); margin-left:-15px; }
  .navbar-nav > li > a { padding:14px 15px; font-size:15px; font-weight:500; }

  .navbar-nav > li + li:before { height:18px; top:calc(50% - 9px); }

  .navbar-nav > li > .dropdown-menu { font-size:15px; }
     
  
/* ---- Content Area ---- */
.content_container { min-height:907px; padding-bottom:41px; }

  /* Emphasis Section */
  .add_section_emphasis h3 { font-size:21px; }


/*---- Contact Feature ---- */
.contact_feature_container { margin:41px 0 -41px; }

.contact_feature_content .contact_name { font-size:22px; }
.contact_feature_content .bio_contact_list > li { font-size:18px; }
.contact_feature_content .bio_contact_list > li > .contact_type { width:57px; }


/* ---- Footer ---- */
.footer { font-size:17px; }

.extended_footer { padding:45px 0; }

  /* Extended FooterNav */
  #menu-footernav-extended-col-01 > li,
  #menu-footernav-extended-col-02 > li { width:90%; }
  
    /* Footer Contact Info */
    .footer_contact_info_phone { margin-top:-6px; font-size:24px; }

  
  
/*-----------------------------------
   Section Specific
-----------------------------------*/
/* ---- Home Page ---- */

  /* Hero Image */
  .hero_banner { border-bottom-width:20px; }
  .hero_banner_content_container { height:635px; padding-bottom:18px; }
  .hero_banner_content { font-size:28px; }
  .hero_banner_content p { text-shadow:1px 1px 3px rgba(0,0,0,0.35); }
  .hero_banner_content h1 { margin-bottom:39px; }
  .hero_banner_content h1 em { min-width:139px; padding:35px 5px 31px; }
  
  /* Solutions Feature */
  .solution_element h2 { font-size:34px; }
  .solution_element img { margin-bottom:21px; }  
  
  .solution_element_body { padding:10px 10px 16px; }  
  .solution_element_footer { padding:7px 10px; }
    
  /* Primary Feature */
  .primary_feature { min-height:486px; padding:148px 0 41px; margin-bottom:45px; }
  .primary_feature_content { font-size:44px; }
  
  .primary_feature_content .btn_secondary { margin-top:16px; }
  
  
  /* News Feature */
  .news_feature { padding-bottom:41px; }
  
  .news_feature .news_cube { width:58px; height:58px; }
  
  .news_feature h2 { padding:34px 5px; margin-left:58px; }
  .news_feature h3 { margin-bottom:6px; font-size:20px; }
   
  .news_feature .more-link { margin-top:8px; }


  /* Secondary Feature */
  .secondary_feature_content { font-size:28px; }
  .secondary_feature_content .btn_secondary { margin-top:16px; }
  

/* ---- Sub Pages ---- */

  /* Section Banner */
  .section_banner { margin-bottom:92px; border-bottom-width:21px; }
  .section_banner_title_container { height:254px; }
  
  .section_banner_title_extension { height:88px; right:calc(50% + 470px); }
  
  

/*-----------------------------------
   Template Specific
-----------------------------------*/
/* ---- News Template ---- */
.template_news h1 { font-size:43px; }
.template_news h2 { font-size:17px; }
.template_news h3 { font-size:17px; }

.template_news .section_banner_title { height:88px; padding-top:7px; font-size:70px; }



/*-----------------------------------
   Page/Element Specific
-----------------------------------*/
/* ---- About ---- */

  /* The Team */
  .bio_element { padding-bottom:25px; margin-bottom:63px; }
  
  .bio_element .bio_pic { margin-top:8px; }
  
  .bio_element h3 { font-size:30px; }
  .bio_element h4 { font-size:22px; }
  .bio_element h5 { font-size:17px; }
  
  .bio_contact_list > li > .contact_type { width:56px; }

  
/* ---- Business Insurance ---- */

  /* Lists: Benefit List */
  ul.benefit_anchor { width:165px; padding-top:23px; } 
  ul.benefit_anchor > li { width:165px; font-size:25px; }
  ul.benefit_anchor > li > a { height:165px; padding:12px; }
  ul.benefit_anchor > li > a:before { width:40px; height:40px; } 

  
/* ---- News ---- */
.media_list > li { margin-bottom:37px; }

.media_list h3 { font-size:21px; }
 


/* ------------------------------------
$ Override CSS
------------------------------------ */
/* ---- Additive / Reductive CSS ---- */

	/* Add */

		/* Add: Margin-Bottom */
		.add_margin_0_md { margin-bottom: 0 !important; }
		.add_margin_5_md { margin-bottom: 5px !important; }
		.add_margin_10_md { margin-bottom: 10px !important; }
		.add_margin_15_md { margin-bottom: 15px !important; }
		.add_margin_20_md { margin-bottom: 20px !important; }
		.add_margin_25_md { margin-bottom: 25px !important; }
		.add_margin_30_md { margin-bottom: 30px !important; }
		.add_margin_35_md { margin-bottom: 35px !important; }
		.add_margin_40_md { margin-bottom: 40px !important; }
		.add_margin_45_md { margin-bottom: 45px !important; }
		.add_margin_50_md { margin-bottom: 50px !important; }
		.add_margin_60_md { margin-bottom: 60px !important; }
		.add_margin_70_md { margin-bottom: 70px !important; }
		.add_margin_75_md { margin-bottom: 75px !important; }    
		.add_margin_80_md { margin-bottom: 80px !important; }
		.add_margin_90_md { margin-bottom: 90px !important; }
		.add_margin_100_md { margin-bottom: 100px !important; }
    
    
/* ---- Icon Font ---- */
.iconfont_16_md { font-size:16px !important; }
.iconfont_24_md { font-size:24px !important; }
.iconfont_28_md { font-size:28px !important; }
.iconfont_32_md { font-size:32px !important; }
.iconfont_48_md { font-size:48px !important; } 

    
