/*
-----------------------------------
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:14px; }



/*-----------------------------------
   Bootstrap Overrides
-----------------------------------*/



/*-----------------------------------
   Visual Composer Overrides
-----------------------------------*/
.spacer_height_30 { height:15px !important; }
.spacer_height_70 { height:15px !important; }

.donate_feature h3 { margin-bottom:15px; font-size:20px; }



/*-----------------------------------
   Site Elements
-----------------------------------*/
/* ---- Hierarchy ---- */
h1 { font-size:32px; }
h2 { font-size:24px; }
h3 { font-size:16px; }
h4 { font-size:14px; }

/* ---- Paragraph ---- */
p.intro { font-size:16px; }
p.intro.emphasis { margin-bottom:25px; font-size:20px; }


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

  /* Lists: CTA */
  ul.cta_list > li { padding-left:20px; background-position:0 .275em; background-size:14px 14px; }


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

  /* Primary Button */
  .btn_primary { padding:15px 35px 13px; }


/* ---- Modals ---- */
.close { font-size:38px; }


/* ---- Quotes ---- */
.quote_container { font-size:18px; }
.quote_container .quote_attribution { font-size:13px; }
.quote_container .open_quote_large img { width:25px; height:auto; }
.quote_container .close_open { width:17px; height:auto; }
.quote_container .close_quote { width:17px; height:auto; }



/*-----------------------------------
   Structure
-----------------------------------*/
/* ---- Alert CTA ---- */
.alert_cta_content { font-size:14px; }
.alert_cta_content p { height:auto; }
.alert_cta_content .alert_cta { margin-left:-10px; display:block; font-size:12px; top:0; }


/* ---- Header ---- */
.header { height:auto; padding:7px 0; background:#000; }

  /* Global Navbars */
  .sticky_header_container .header { padding:0; }
  
  .navbar { min-height:0; background:#fff; }
  .navbar-default .navbar-collapse { margin:0 -15px; border:none; }
  
  .navbar-brand { height:auto; padding:0 15px; float:left; }
  .navbar-brand img { max-width:135px; }
  
  .navbar-toggle { width:34px; height:auto; margin-top:8px; margin-bottom:0; padding:0; border:none; border-radius:0; cursor:pointer; }
  .navbar-toggle:hover { opacity:0.75; }
  
  .navbar-nav { margin-top:0px; margin-bottom:0px; background:#6fb92f; }
  
  .navbar-default .navbar-nav + .navbar-nav { border-top:1px solid rgba(255,255,255,0.25); }
  .navbar-default .navbar-nav > li { border-bottom:1px solid rgba(255,255,255,0.25); }
  .navbar-default .navbar-nav > li:last-child { border-bottom:none; }
  .navbar-default .navbar-nav > li > a { font-weight:600; font-size:14px; color:#fff; }
  
  .navbar-default .navbar-nav > li > a:hover,
  .navbar-default .navbar-nav > li > a:focus { color:#fff; }
  
  .navbar-default .navbar-nav > .open > a,
  .navbar-default .navbar-nav > .open > a:hover,
  .navbar-default .navbar-nav > .open > a:focus { color:#fff; background:#6fb92f; }
  
  .navbar-default .navbar-nav > .active > a,
  .navbar-default .navbar-nav > .active > a:focus,
  .navbar-default .navbar-nav > .active > a:hover { background:rgba(0,0,0,0.25); color:#fff; }
  
  .navbar-default .navbar-nav > .current-page-ancestor > a,
  .navbar-default .navbar-nav > .current-page-ancestor > a:focus,
  .navbar-default .navbar-nav > .current-page-ancestor > a:hover { background:rgba(0,0,0,0.25); color:#fff; }
  
    /* Donate Link */
    .navbar-default .navbar-nav > li#menu-item-1862 > a { background-color:#fd9827 !important; }
    .navbar-default .navbar-nav > li#menu-item-1862:hover > a,
    .navbar-default .navbar-nav > li#menu-item-1862 > a:hover { background-color:#fd9827 !important; }   
  
  .navbar-nav .open .dropdown-menu { padding:0; background:rgba(255,255,255,0.15); border-top:1px solid rgba(255,255,255,0.35); }
  .navbar-nav .open .dropdown-menu > li { padding:0; margin:0; }
  .navbar-nav .open .dropdown-menu > li > a { padding:10px 20px 10px 30px; white-space:normal; }
  .navbar-nav .open .dropdown-menu > li.topnav_child_link > a { padding-left:45px; }
  
  .navbar-default .navbar-nav .open .dropdown-menu > li > a,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { color:#fff; }
  
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { background:rgba(0,0,0,0.25); color:#fff; }


/* ---- Content Area ---- */
.content_container { min-height:100px; padding-bottom:40px; }


/*---- Newsletter Signup ---- */
.newsletter_signup_container { padding:20px 0; font-size:14px; line-height:1.25; }

.newsletter_signup_content { display:block; }
.newsletter_signup_content .roca_ink_logo { height:25px; margin-bottom:5px; float:none; }

.newsletter_signup_form { padding-top:10px; }


/* ---- Sponsors ---- */
.sponsor_container { padding:30px 0; }
.sponsor_container ul { width:100%; max-width:450px; }

.sponsor_container .sponsor_element img { max-height:75px; }


/* ---- Footer ---- */
.footer { padding:20px 0 0; font-size:13px; }

  /* FooterNav */
    /* FooterNav: Contact */
    .footernav_contact { font-size:13px; }
    
    .footer_donate_btn { width:65%; max-width:180px; margin:0 auto; display:block; }
    
      /* Social Media */
      .footernav_socialmedia ul { width:100%; margin-bottom:20px; }
      .footernav_socialmedia ul > li { width:25%; margin-right:0; }
      
      .socialmedia_list_item a { width:32px; height:32px; margin:0 auto; }  

  /* Roca Locations */
  .footer_locations { padding-top:20px; font-size:13px; }
  .footer_locations strong { font-size:13px; }
  
  @media (max-width:380px) {
    .footer_locations .col-xs-6 { width:100%; }
    .footer_locations .text_right_xs { text-align:left !important; }
  }

  

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

  /* Hero Carousel */
  #home_carousel { margin-bottom:30px; }

  #home_carousel .item .col-xs-12 { padding-right:0; padding-left:0; }
  
    /* Carousel Controls */
    #home_carousel .chevron-left,
    #home_carousel .chevron-right { width:27px; height:auto; top:15px; }    


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

  /* Section Banner */
  .section_banner { margin-bottom:30px; }
  .section_banner_title { padding:5px 0 4px; }
  
    /* Section Banner Carousel */
    #section_banner_carousel { margin-bottom:30px; }
    #section_banner_carousel .item { min-height:240px; }    
  
  /* Arrow Banner */
  .arrow_banner { background:#6fb92f none; }
  
  .arrow_banner_image { height:200px; margin:0 -15px; position:relative; }
  .arrow_banner_image_mask { display:none; }
  
  .arrow_banner_content { padding:29px 0; }
  .arrow_banner_content h3 { font-size:18px; }
  
  /* Basic Full-Width Feature Banner */
  .basic_banner h3 { margin-bottom:15px; font-size:20px; }
  
  .basic_banner.basic_banner_padding_50 { padding:30px 0; }
  .basic_banner.basic_banner_padding_70 { padding:30px 0; }     
  
  /* Outcomes Feature */
  
    /* Visual Composer Version */
    .vc_outcomes_feature { font-size:16px; }
    .vc_outcomes_feature h4 { font-size:110px; }
    
    .vc_outcomes_feature .vc_col-sm-4,
    .vc_outcomes_feature .vc_col-sm-6 { padding-top:25px; border-bottom:1px solid rgba(0,0,0,0.2); }
    .vc_outcomes_feature .vc_col-sm-4:first-child,
    .vc_outcomes_feature .vc_col-sm-6:first-child { padding-top:0; }
    .wpb_wrapper .vc_outcomes_feature.vc_row:last-child .vc_col-sm-4:last-child,
    .wpb_wrapper .vc_outcomes_feature.vc_row:last-child .vc_col-sm-6:last-child { border-bottom:none; }


  /* Story Gallery */
  .story_gallery_container { padding-top:33px; }
  .story_gallery_container .story_card { height:220px; margin-bottom:33px !important; }
  .story_gallery_container .story_card_content h3 { font-size:19px; }
  .story_gallery_container .story_card_content h4 { font-size:14px; }    
      
    
  /* Story Carousel */
  .story_carousel_header { display:none; }
  
  .story_carousel_body { margin-top:0; background:#6fb92f; }
  
    /* Carousel */
    .story_carousel:before { background:none; } 
    
    .story_carousel .item { min-height:10px !important; padding:15px 0; }    
    
      /* Image Banner */
      .story_carousel_image_banner { margin:0; background:none; }
      .story_carousel_image { height:225px; margin:0 0 15px; position:relative; }
      .story_carousel_image_mask { display:none; }
      
      /* Post Content */
      .story_carousel_post_content { padding:15px 15px 0; margin-top:0; background:#efeff0; }
      
      .story_name { padding:0 15px; font-size:26px; color:#000; }
      .story_title { padding:0 15px; margin-bottom:15px; color:#000; font-size:16px; }      
      
      .story_carousel_quote { padding:15px; }
      .story_quote { padding-right:0; font-size:16px; }
      .story_quote_attribution { padding-right:0; font-size:14px; }

      .story_carousel_content { padding:15px; }

    /* Carousel Controls */
    .story_carousel_controls { right:5px; top:20px; }
    .story_carousel_controls ol.carousel-indicators { padding-top:4px; }
    
    /* Theme Colors */
    .story_carousel_container.pink_theme .story_carousel_body { background-color:#ed1165; }    
    
 
 
/*-----------------------------------
   Template Specific
-----------------------------------*/
/* ---- Team Detail Template ---- */
.team_detail .team_photo { margin-top:0; }


/* ---- Location Detail Template ---- */
.google_map iframe { height:300px; }



/*-----------------------------------
   Page/Element Specific
-----------------------------------*/
/* ---- About: Our Story ---- */
.vc_our_story_intro .vc_column-inner .vc_col-sm-6:first-child .vc_column-inner { margin-bottom:30px; }


/* ---- Work: Overview ---- */

  /* Program Feature */
  .program_feature_element { padding:15px; margin-bottom:25px !important; }
  .program_feature_element_image { height:200px; margin-bottom:10px; }
  .program_feature_element_desc { font-size:16px; }
  .program_feature_element_desc h3 { margin-bottom:7px; font-size:16px; }
  
  .program_feature .col-sm-6:last-child .program_feature_element { margin-bottom:0 !important; }   
  
  
/* ---- Work: Our Intervention Model ---- */

  /* Intervention Model Components */
  .intervention_components_feature { padding-bottom:30px; }
  .intervention_components_feature_heading_container { padding:0 15px; margin-bottom:15px; }
  
  .intervention_components_feature_stub { height:15px; }
  
  .im_components_panel_container { padding:15px 15px 0;  }
  
  .im_components_panel { margin-bottom:15px; }
  .im_components_panel_image { height:120px; }
  
  .im_components_panel_content { padding:10px; font-size:13px; }
  .im_components_panel_content h3 { font-size:16px; }
  
  .im_components_panel_content_mask { bottom:15px; top:120px; }
  
    /* Intervention Model: Subnav */
    .menu-subnav-intervention-model-container { padding:15px; margin-bottom:20px; border:2px solid #6fb92f; }
    .menu-subnav-intervention-model-container *:last-child { margin-bottom:0; }

  
  
/* ---- Work: Young Men & Mothers Programs ---- */  

  /* Stats Feature */
  .stats_table_container h3 { margin-bottom:7px; font-size:17px; }
  .stats_table td.stats_table_left_col { font-size:17px; }
  .stats_table td.stats_table_right_col { font-size:13px; }
  .stats_table_footer { font-size:14px; } 
  
    
/* ---- Work: Locations ---- */  

  /* Location Feature */
  .location_feature_image { height:200px; }    


/* ---- Work: Pay for Success ---- */  
.faq_question { width:auto; float:left; }    
.faq_question .wpb_content_element { margin-bottom:0; }


/* ---- Impact: Overview ---- */

  /* Carousel Controls */
  #outcomes_carousel .chevron-left,
  #outcomes_carousel .chevron-right { width:27px; height:auto; top:15px; }      


/* ---- Impact: News ---- */

  /* News Feature */
  .news_feature { font-size:15px; }       
  .news_feature h2 { padding-bottom:0; }
    
  .news_element { padding:0 0 0 52px; margin-bottom:25px !important; background-size:40px 23px; }       
  .news_element h3 { font-size:15px; }
  .news_element .news_publish_date { font-size:13px; }
  .news_element .news_permalink { font-size:13px; }
  
  .news_feature .col-sm-6:last-child .news_element { margin-bottom:0 !important; }  
 
   /* Twitter Feed */ 
  .twitter_heading { padding:0 calc(25px + 12px); background-size:25px 25px; }
  .twitter_feature { padding:30px 0; }
  .twitter_feature .kcontainer { margin-bottom:30px; }
  
  .twitter_feature .kebo-tweets.list > .ktweet { padding:25px 25px 61px !important; border:none; border-bottom:15px solid #e6e7e8; background:#fff; position:relative; }
  .twitter_feature .kebo-tweets.list > .ktweet:last-child { border-bottom:none; }
  
  .twitter_feature .kebo-tweets > .ktweet .kfooter { bottom:18px; right:25px; }
  
  
/*---- Impact: Roca Ink ---- */
.template_ink .sidebar_container { font-size:14px; }
.template_ink .sidebar_container h3 { margin-bottom:12px; font-size:14px; }
.template_ink .sidebar_container h4 { font-size:18px; }

.template_ink .sidebar_container .archive-posts { margin-bottom:30px; }
.template_ink .sidebar_container .recent-posts { margin-bottom:30px; }

.ink_email_blast { font-size:14px; }
.ink_email_blast h1 { padding:10px 10px 5px; margin-bottom:26px; font-size:23px; }
.ink_email_blast .ink_intro { padding-left:5px; }
.ink_email_blast .ink_article h3 { font-size:14px; }  

  
/*---- Impact: Awards ---- */

  /* Awards Feature */
  .awards_feature .award_element { text-align:center; }
  .awards_feature .award_element img { margin-right:auto; margin-left:auto; }
  
  
/* ---- Join Us: Careers ---- */
.careers_container .wpb_column:first-child .wpb_content_element { margin-bottom:0; }


/* ---- Join Us: Contact Form ---- */
#contact_form label { font-size:14px; line-height:1.25; }

  /* Contact Form: Alerts */
  .alert { font-size:13px; }
  
  
/* ---- Join Us: Fundraise ---- */
.fundraise_feature { padding:0; }
.fundraise_feature h3 { margin-bottom:5px; font-size:16px; }

.fundraise_feature .vc_col-sm-4 { padding-top:25px; border-bottom:1px solid rgba(0,0,0,0.2); }
.fundraise_feature .vc_col-sm-4:first-child { padding-top:0; }
.wpb_wrapper .fundraise_feature.vc_row:last-child .vc_col-sm-4:last-child { border-bottom:none; }   


/* ---- COVID-19 ---- */
#covid_19_feature h3 { font-size:22px; }
#covid_19_feature h4 { font-size:18px; }
#covid_19_feature h4:after { background-size:12px 12px; right:calc(-1 * (50vw - 205px / 2)); left:205px; }

.facebook_feed_container { padding:30px 0 10px; }
.facebook_feed_container:before { background-size:10px 10px; }

.facebook_feed_content { padding-bottom:0; }

.facebook_heading{ padding:0 calc(25px + 30px) 0 15px; background-size:25px 25px; }
.facebook_heading:before { left:calc(-1 * (50vw - 190px / 2)); right:190px; background-size:10px 10px; }
.facebook_heading:after { right:calc(-1 * (50vw - 180px / 2)); left:190px; background-size:10px 10px; }  
  


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

	/* Add */

		/* Add: Margin-Bottom */
		.add_margin_0_xs { margin-bottom: 0 !important; }
		.add_margin_5_xs { margin-bottom: 5px !important; }
		.add_margin_10_xs { margin-bottom: 10px !important; }
		.add_margin_15_xs { margin-bottom: 15px !important; }
		.add_margin_20_xs { margin-bottom: 20px !important; }
		.add_margin_25_xs { margin-bottom: 25px !important; }
		.add_margin_30_xs { margin-bottom: 30px !important; }
		.add_margin_35_xs { margin-bottom: 35px !important; }
		.add_margin_40_xs { margin-bottom: 40px !important; }
		.add_margin_45_xs { margin-bottom: 45px !important; }
		.add_margin_50_xs { margin-bottom: 50px !important; }
		.add_margin_60_xs { margin-bottom: 60px !important; }
		.add_margin_70_xs { margin-bottom: 70px !important; }
		.add_margin_75_xs { margin-bottom: 75px !important; }    
		.add_margin_80_xs { margin-bottom: 80px !important; }
		.add_margin_90_xs { margin-bottom: 90px !important; }
		.add_margin_100_xs { margin-bottom: 100px !important; }  


    /* Add: Text-Align */
    .text_left_xs { text-align:left; } 
    .text_center_xs { text-align:center; } 
    .text_right_xs { text-align:right; }  
    
    
    
    
  