/*
 Theme Name:     Sopris
 Theme URI:      http://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     http://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
@import url("../Divi/style.css");
 
/* Theme customization starts here
------------------------------------------------------- */

/* Utility class to hide or show elements at a 1300 breakpoint  */

@media (max-width: 1300px) {
	.desktop {display:none;}
	.mobile {display:inherit;}
}
@media (min-width: 1301px) {
	.desktop {display:inherit;}
	.mobile {display:none;}
}



/* hide the main nav from main pages, show on blog posts and archive pages */
#top-menu-nav {visibility:hidden;}
.post-template-default.single-post #top-menu-nav, .archive #top-menu-nav, .search-results #top-menu-nav, .page-id-2032 #top-menu-nav {visibility:visible;}
/* the coloring of these initial menu is handled under BLOG adjustments */

body { font-family: 'Fira Sans', sans-serif; font-weight:300;}

/* lighten font weight of main heads
h1, h2, h3, h4, h5 {font-weight:500; line-height: 1.25em !important;} */ 
/* lightne and enlarge headings for full row promos  */
.row-heading h2 { font-weight:300 !important; font-size: 30px !important; line-height: 1.25em !important; }

/* color subheads green  */
.et_pb_text_inner h3, .et_pb_text_inner h4, .et_pb_text_inner h5 {color: #6fb62a !important;}



/* tight 4 column gutters and widen columns */
@media (min-width: 981px) {
.et_pb_gutters3 .et_pb_column_1_4, .et_pb_gutters3.et_pb_row .et_pb_column_1_4 {width: 23%;}
.et_pb_gutters3 .et_pb_column, .et_pb_gutters3.et_pb_row .et_pb_column { margin-right: 2%;}
	}

blockquote {
width: 80%;
padding:12px;
border-left:none;
border-top: 3px double #0071CE;
border-bottom: 3px double #0071CE;
}
.wp-caption-text {
	text-align: left;
    font-size: 15px;
    line-height: 1.3;
	padding-top:12px;
}
/* restyle builtin Divi buttons */
a.big-button, a.icon-button, a.small-button {
	color: #0071ce;
    font-size: 20px;
    font-weight: 500;
	padding: 9px 18px;
    border: 2px solid #ebebeb;
    background-color: #ebebeb;
	border-radius:0;
	box-shadow: none;
}
a.big-button:hover, a.icon-button:hover, a.small-button:hover {
    background-color: #ffffff;
}
/* Fix ordered lists */ 
.entry-content ol {
    padding: 0 0 23px 48px;
    line-height: 26px;
    list-style-position: outside;
    list-style-type: decimal; 
    counter-reset: nCounter 0; }

.entry-content ol li {
    list-style: none outside;
}
.entry-content ol li:before {
	color: #6fb62a;
    content:  counter(nCounter) ".";
    counter-increment: nCounter;
    font-weight: 400;
	font-size: 30px;
	font-style: italic;
    float: left;
    margin: 0 0 0 -35px;
    padding: 0;
    width: 30px;
}

/* /\/\/\/\/\/\/\/\/ FULL WIDTH HEADER \/\/\/\/\/\/\/\/\/\/  */
/* allow wider text in full width header */
.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content {
    width: 100%;
    max-width: 1000px;
    margin: 20px auto;
    min-height: 250px;
}
/* Center image both horizontal and vertical for parallax  */
.et_parallax_bg {
background-position: center center !important;
}
/* smaller line of type above main H1 in Banner */
p.eyebrow {font-size:20px; text-shadow: 0 1px 3px rgba(0,0,0,0.3);}

/*  /\/\/\/\/\/\/\/\/\  HEADER and MENU ADJUSTMENTS  /\//\/\/\/\/\/\/\/\/\/ */
/* adjust vertical location of logo (higher) in header when on desktop */
@media (min-width: 980px) { span.logo_helper {height: 50%; } }

/* make logo container oversized to pull logo up into top menu area */
@media (min-width: 981px) {
.et_header_style_left .logo_container {
	height: 110%;
	margin-top: -8px;
}
}
/* lift main header higher in z-index than the top menu */
header#main-header { z-index: 1100000; }


/* adjust top menu fonts in header */
#et-secondary-menu > ul > li a {font-weight: 300 !important;}
#top-menu li a {font-size: 18px !important;}
#et-top-navigation {font-weight: 400;}


/* headline in full width header weight
.et_pb_fullwidth_header p {font-weight:400; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);} */

/* make top header transparent and bleed splash image off top */
div#top-header {background-color: transparent; line-height: 1.2em;}

/* make header bar background blue once scrolling starts (class et-fixed-header is added at that point)  */
header#main-header.et-fixed-header { background-color: #0071CE; }

/* reduce vertical space in main nav bar in the header - top-nav  */
#top-menu-nav .nav li.top-level-menu {line-height: 0; }

/* adjust top and bottom spacing of full width header - remove padding above headline add padding under text  */
.et_pb_fullwidth_header {
padding: 100px 0 0px 0 !important;
}

/* vertical padding in main image headers to show image on wide screens */
div.et_pb_fullwidth_header_container {padding-bottom: 3em;}

/* Make Active menu item stay white --- this is added to Theme general settgins page to position them as late as possible in the header */

/* tighten line height of sub menu entries - add some space above each entry */
#top-menu li li a {line-height:1.3em; padding-top: 12px; }

/* adjustments to drop down menus from top menu */
#top-menu-nav li.qualifications-menu ul { left: -200px; }
/* make submenus wider than parent */
#top-menu-nav li ul.sub-menu {width:340px;}
#top-menu-nav li ul.sub-menu li a {width:280px;}

/* Post title size and attributes */
.et_pb_title_container h1.entry-title {font-family: 'Fira Sans', sans-serif; font-size: 48px !important; font-weight: 300 !important; text-align:center; margin:2em 1em;}


/* h2 in sliders */
.et_pb_slide_content h2 {font-weight:400;font-size:48px;padding-top:18px;}
.et_pb_promo_description h2 {font-weight: 500;}

.et_pb_slide_description .et_pb_slide_title {
	font-weight: 400 !important;
}

/* homepage grid styles */
.grid-cell h3 {color:#0071ce !important; font-size: 24px; margin-bottom: 12px;}
.grid-cell p {color:#ffffff !important; font-size: 16px; line-height: 1.4;}
.et_pb_section_6 .grid-cell h3 {color:#ffffff !important; font-size: 24px; margin-bottom: 12px;}
.et_pb_section_6 .grid-cell p {font-weight:400;}
.checkered-grid h2, h2.checkered-grid {font-size: 70px;font-weight: 300; text-align: center;color:#0071ce;}
@media (max-width: 640px) { 
	.checkered-grid h2, h2.checkered-grid {font-size: 48px;}
}
div.grid-cell:hover {background-color:#000000;cursor:pointer;}

/*  /\/\/\/\/\/\/\   SPECIAL MID PAGE FULL WIDTH MENU BAR  /\/\/\/\/\/\/\/\/\  */
.custom-menu .nav li li {line-height: 1.8em; }
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards li ul { border-top: 6px solid #0071CE;}

/* shadow that appears with sticky starts and thing slide under menu - also insure the row is white */
div.sticky-wrapper.is-sticky div#sticker {
	box-shadow: 0px 6px 12px rgba(0,0,0, 0.25);
	background-color: #ffffff;
}

/* icon decoration */
img.menu-icon { opacity:0.5;}
.fullwidth-menu a:hover {opacity:1; color:#0071CE;}
.fullwidth-menu a:hover .menu-icon {opacity:1;}

/* tight padding above icons in menu bar */
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul {
    padding: 50px 0 0 !important;
}
/* drop down submenus */
/* make top level menu items spread across the page */
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards > li {width:18%; text-transform:uppercase; font-weight:400; }

/* make submenus wider than parent link */
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards li ul {width: 340px; background-color:#e5e5e5 !important;}

.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards > li > ul > li a {width: 280px; text-transform:none; font-size: 17px; border-bottom: 1px solid rgb(255,255,255);}
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards > li > ul > li.et-hover a {background-color: rgba(0,0,0,.1);}
.custom-menu .nav li li {line-height: 1.6em;}
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards > li > ul > li:last-child a {border-bottom: none; }

/* move dropdown indicator icon to middle of menu items and closer */
.fullwidth-menu .menu-item-has-children > a:first-child:after {right:inherit; top:inherit;}

/* shift rightmost submenu to the left to avoid making the page wider */
.et_pb_fullwidth_menu .fullwidth-menu-nav > ul.downwards li.qualifications-menu ul { left: -100px; }


/* styling of submenu selling headlines */
li.market-menu > ul.sub-menu, li.solutions-menu > ul.sub-menu, li.services-menu > ul.sub-menu, li.qualifications-menu > ul.sub-menu { padding-top:0; }
li.menu-head {width: 100%; background-color:#ffffff;}
li.menu-head h3 {padding: 24px 9px; color:#0071CE; text-transform:none; font-size:16px; font-style: italic; font-weight:300;}


/* /\/\/\/\/\/\/\/\/\   TRUST BAR STYLES   /\/\/\/\/\/\/\/\/\/\  */
/* add white border to top of Trust Bar for desktop to allow graphic on right to show completely */
@media (min-width: 981px) { div.et_pb_section.trust-bar {border-top: solid #fff 30px; }}
/* make links in Trust bar white */
.trust-bar p {margin-top:10px;}
.et_pb_section.trust-bar {padding-bottom: 0px;}
.trust-bar a:link, .trust-bar a:visited { color: #ffffff;}
.trust-bar a:hover { color: #ebebeb;}
.trust-bar .lens {opacity: 0.8;}
.trust-bar .lens:hover {opacity:1;}
@media (max-width: 980px) { 
	.trust-bar p {font-size: 22px;}
}

/* /\/\/\/\/\/\/\/\/\   TESTIMONIAL MODULE   /\/\/\/\/\/\/\/\/\/\  */
.et_pb_testimonial {background-color: #ffffff; margin-top: 36px; border-top: 4px solid #0071CE; border-bottom: 4px solid #0071CE; }
.et_pb_testimonial_description_inner p { font-style:italic; font-size:22px; color: #6fb62a;} 
.et_pb_testimonial_author {font-size: 90%; font-weight: 400; text-align:right;}
p.et_pb_testimonial_meta {font-style: inherit; font-size: 85%; color:#666; text-align:right;}

/* /\/\/\/\/\/\/\/\/\   EMPLOYEE TESTIMONIAL MODULE   /\/\/\/\/\/\/\/\/\/\  */
.et_pb_testimonial.employee-testimonial {border-bottom: none;}
.employee-testimonial .et_pb_testimonial_description_inner p { font-style:italic; font-size:18px; color: #6fb62a; font-weight: 400;}
.employee-testimonial .et_pb_testimonial_author {margin-top:0px;}
.employee-testimonial p.et_pb_testimonial_meta {font-style: inherit; font-size: 85%; color:#666; text-align:right;}

/* Special control of mobile menu top header to keep it transparent while letting the drop down have color */
@media (max-width: 980px) { 
.et_non_fixed_nav.et_transparent_nav #main-header, .et_fixed_nav #main-header {background:transparent; }
/* color hamburger white */
.mobile_menu_bar:before { color: #ffffff !important; }
 }
@media (min-width: 981px) {
.et_pb_fullwidth_menu.et_pb_fullwidth_menu_fullwidth .et_pb_row {padding:0 !important; }
}

/* standardize manually created buttons that use button tag */
.et_pb_text_inner button {
	font-family: 'Fira Sans', sans-serif;
	padding: 9px 18px;
    border: 2px solid #ebebeb;
	background-color: #ebebeb;
}
.et_pb_text_inner button:hover {
	background-color: #ffffff;
}
.et_pb_text_inner button a:link, .et_pb_text_inner button a:visited {
	color: #0071ce;
    font-size: 20px;
	font-weight:500;
}
.et_pb_text_inner button a:hover {
	color: #0071ce;
}

/* /\/\/\/\/\/\/\/\/\   CASE STUDY BLURB MODULE   /\/\/\/\/\/\/\/\/\/\  */

.case-study-blurb.et_pb_blurb:before {
    width: 100%;
    content: "CASE STUDY";
	font-size: 15px;
	color: #fff;
    padding: 9px 0 6px 0;
    float: left;
    background-color: #aaa;
}
.case-study-blurb.et_pb_blurb h4 {
	font-size: 32px;
	font-weight: 300;
	padding-bottom:20px;
}
.case-study-blurb.et_pb_blurb {
 	border-bottom: solid 2px #aaa;
}
.case-study-blurb.et_pb_blurb button {
	font-family: 'Fira Sans', sans-serif;
	padding: 9px 18px;
    border: 2px solid #ebebeb;
	background-color: #ebebeb;
}
.case-study-blurb.et_pb_blurb button:hover {
	background-color: #ffffff;
}
.case-study-blurb.et_pb_blurb button a:link, .case-study-blurb.et_pb_blurb button a:visited {
	color: #0071ce;
    font-size: 20px;
	font-weight:500;
}
.case-study-blurb.et_pb_blurb button a:hover {
	color: #0071ce;
}
.case-study-blurb .et_pb_blurb_container {
	padding: 0 12px 24px 12px;
}

/*  /\/\/\/\/\/\/\/  EVENTS PAGE  /\/\\/\/\/\/\/\  */
/* color event headline blue */
.page-id-1578 h3 {color: #0071ce; }

/*  /\/\/\/\/\/\/\/  FOOTER ELEMENTS  /\/\\/\/\/\/\/\  */
#main-footer {
font-size: 18px;
line-height: 1.4;
}
#footer-widgets {
padding-top: 3%;
}

/* /\/\/\/\/\/\/\  BLOG  /\/\/\/\/\/\/\/\/\   */
/* NOTE - Make preview text smaller - this CSS is in Divi theme options page CSS */

/* color the background of blog post template */
.post-template-default.single-post div#top-header, .post-template-default #main-header, .archive div#top-header, .archive #main-header, .search-results div#top-header, .search-results #main-header, .page-id-2032 div#top-header, .page-id-2032 #main-header {background-color: #0071CE !important;}


body.single h1 { font-weight: 400; }
/* on single post make headline smaller - default 60px from main styles is too large */
@media only screen and (min-width: 981px) {
body.single .et_post_meta_wrapper h1 {
	font-size: 48px !important;
}
}

/* single post sidebar - tighten line height  */
body.single .et_pb_widget ul li, body.archive .et_pb_widget ul li  { line-height: 1.4;}

/* Managing upper main menu - hiding icons and repositioning dropdown caret */
#top-menu-nav img.menu-icon { display: none; }
/* #top-menu .menu-item-has-children > a:first-child:after {right:inherit; top:inherit;} */

/* match border around blog grid box to background because we cannot turn it off  */
.et_pb_blog_grid .et_pb_post {border: 1px solid #ebebeb; }

/* adjust weight of headline in blog grid listing - this is then the advanced tab of the module */


/* tight line height for tags
.et_pb_blog_grid .post-meta { line-height: 1.3; } */

/* better button for more link in listing module */
   a.more-link:after {
   content: " »";
}
a.more-link {
   padding: 0 12px;
   margin-top: 12px;
   color: #0071CE;
   background-color:#fff;
   text-transform: uppercase;
   font-size: 11px;
   width: 100%;
   display: inline-block;
   text-align: right;
   line-height: 1.4em;
}
a.more-link:hover {
   color: #fff;
   background-color:#0071CE;
}

/* latest post and category sidebars  */
.widget_recent_entries, .widget_categories {background: #ebebeb; padding: 24px 12px;}
.widget_recent_entries h4, .widget_categories h4 {color: #0071CE; font-weight: 300;}

.widget_recent_entries li, .widget_categories li {font-size: 14px; }

/* for on-page teaser band, turn off date and content */
.blog-band .post-meta, .blog-band .post-content {display:none;}

/* special styles for archive pages  */
/* make feature smaller */
.archive article img { width: 50%;}
body.archive article h2 {font-size: 18px;}
@media only screen and (min-width: 981px) {
body.home-posts #left-area .et_pb_post h2, body.archive #left-area .et_pb_post h2, body.search #left-area .et_pb_post h2 {font-size: 28px !important;}
}




/* style search and filter module  */
form.searchandfilter input.text, form.searchandfilter input.title, form.searchandfilter input[type=text], form.searchandfilter select, form.searchandfilter textarea, form.searchandfilter input[type="submit" i] {
    margin: 0;
    padding: 9px;
    font-size: 16px;
    font-family: "fira sans";
	font-weight:300;
}
/* submit (filter) button */
form.searchandfilter input[type="submit" i] {
    background-color: #ebebeb;
    border: solid 1px #cbcbcb;
}

/* /\/\/\/\/\/\/\/\/   FOR TEAM PAGE  /\/\/\/\/\/\/\/\/\/  */

/* for person module */
/* larger name text */
.et_pb_team_member_description h4 {font-size: 24px; font-weight: 300;}

/* people row */
.et_pb_team_member_description h4 {padding: 9px 9px 3px 9px; background-color: #fff; margin: 0;}
.et_pb_team_member_description p.et_pb_member_position {
   background-color: #fff;
    padding: 0 9px;
    margin-bottom: 18px;
}

/* for people aligned photo right - must have class 'right' in person module */
.right > .et_pb_team_member_image {
   float: right;
   margin-left: 30px; 
   margin-right: 0px;}
/* recenter the right aligned image for mobile */
@media (max-width: 767px) {
.right .et_pb_team_member_image {
    display: block;
    float: none !important;
    width: auto;
    margin: 0 0 12px !important;
    text-align: center; }}

/* /\/\/\/\/\/\/\/\  CASE STUDY ACCORDIAN  /\/\/\/\/\/\/\/\/  */
.case-study .et_pb_toggle {border:none;}
.case-study .et_pb_toggle_close { background-color: #0071CE; border-top: 1px solid #757677; margin-bottom: 0px !important;}
.case-study .et_pb_toggle_close:first-child {border:none;}
.case-study .et_pb_toggle_close h5.et_pb_toggle_title {color:#ffffff; }
.case-study .et_pb_toggle_open { margin-bottom: 0px !important; }
.case-study.et_pb_accordion  { border-top: 4px solid #0071CE; border-bottom: 4px solid #0071CE; }

/* /\/\/\/\/\/\/\/\  CTA MODULE  /\/\/\/\/\/\/\/\/  */
.et_pb_promo {
    border-top: 4px solid #0071CE;
    border-bottom: 4px solid #0071CE; 
}
.et_pb_promo .et_pb_promo_description p {
    font-style: italic;
    font-size: 22px;
    color: #0071CE;
}


/*   /\/\/\/\/\/\/\/\/\ Sopris Difference promo row  /\/\/\/\/\/\/\  */

/* old test code toggle styles */
body.page-id-1916 .et_pb_accordion .et_pb_toggle, body.home .et_pb_accordion .et_pb_toggle {border:none; margin-bottom: 0px !important;}
body.page-id-1916 .et_pb_toggle h5.et_pb_toggle_title, body.home .et_pb_toggle h5.et_pb_toggle_title {font-size: 32px; font-weight:300;color:#0071CE;}

#sopris-difference  .et_pb_accordion .et_pb_toggle { 
	padding: 9px 18px;
	border: none;
    margin-bottom: 0px !important;
}
#sopris-difference .et_pb_accordion .et_pb_toggle_close, #sopris-difference .et_pb_accordion .et_pb_toggle_open {
		background-color:transparent;
}
body.home .et_pb_toggle h5.et_pb_toggle_title {
	font-size: 26px !important; font-weight:300;color:#0071CE;
	}
#sopris-difference .checkered-grid h2, #sopris-difference h2.checkered-grid {font-size: 76px;font-weight: 300; text-align: center;color:#ffffff;}
	
@media (max-width: 640px) { 
	#sopris-difference .checkered-grid h2, #sopris-difference h2.checkered-grid {font-size: 48px;}
}


/* CONTACT FORM 7 STYLING */
.wpcf7-text, .wpcf7-textarea, .wpcf7-select, .wpcf7-captchar {
background-color: #eee !important;
border: none !important;
width: 100% !important;
-moz-border-radius: 0 !important;
-webkit-border-radius: 0 !important;
border-radius: 0 !important;
font-size: 17px;
color: #999 !important;
padding: 16px !important;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.wpcf7-submit {
color: #2EA3F2 !important;
margin: 8px auto 0;
cursor: pointer;
font-size: 20px;
font-weight: 500;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
padding: 6px 20px;
line-height: 1.7em;
background: transparent;
border: 2px solid;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-moz-transition: all 0.2s;
-webkit-transition: all 0.2s;
transition: all 0.2s;
}
.wpcf7-submit:hover {
background-color: #eee;
border-color:#eee;
padding: 6px 20px !important;
}


/* Sticky Side Buttons mu=odule override to raise buttons above sticky menu bar  */
#ssb-container {z-index: 10000 !important; }

/* test page for grid layout  */

.page-id-1380 .et_pb_blurb_content {width:100% !important; max-width:100% !important;}
.page-id-1380 .et_pb_main_blurb_image {width: 50% !important; margin-bottom: 0 !important;}
.page-id-1380 .pic-right .et_pb_main_blurb_image {float:right;}
.page-id-1380 .et_pb_main_blurb_image img {width: initial !important; display:block;}
.page-id-1380 .et_pb_blurb_container {padding: 16px 16px 0 16px !important;}
.page-id-1380 .et_pb_blurb_container h4 {font-size: 24px; padding-bottom: 12px;}
.page-id-1380 .et_pb_blurb_container p {line-height: 1.4; padding-bottom: 9px;}
.page-id-1380 .et_pb_blurb_container p.homepage-quote-id {font-size: 16px; font-style: italic; padding-bottom:0px;}
.page-id-1380 .pic-right .et_pb_blurb_container {text-align:right;}

@media (max-width: 980px) {
	.page-id-1380 .homepage-grid .et_pb_row_fullwidth {margin-left: 0; margin-right: 0; width: 100% !important; }
	.page-id-1380 .et_pb_blurb_container {padding: 9px 9px 0 9px !important;}
    .page-id-1380 .et_pb_blurb_container p {font-size: 18px;line-height: 1.3; padding-bottom: 3px;}
    .page-id-1380 .et_pb_blurb_container p.homepage-quote-id {font-size: 17px; font-style: italic; padding-bottom:0px;}
}
@media (max-width: 640px) {
	.page-id-1380 .et_pb_blurb_container h4 {font-size: 18px; padding-bottom: 3px;}
    .page-id-1380 .et_pb_blurb_container p {font-size: 15px;line-height: 1.3; padding-bottom: 3px;}
    .page-id-1380 .et_pb_blurb_container p.homepage-quote-id {font-size: 14px; font-style: italic; padding-bottom:0px;}

}


/* raise the WP admin bar above the page header */
#wpadminbar {
    z-index: 10000001;
}