/*
blue - 2a7ab5
green - 72a54c
grey - 575757

black - 292929
light green - 738d7f
*/

body { padding: 0; color: #292929; font-family: "Montserrat", sans-serif; }
a, a:link, a:focus, a:active, a:visited { color: #72a54c; text-decoration: underline; }
a:hover  { color: #2a7ab5; }
h1 { color: #72a54c; margin-top: 0; padding-bottom: 10px; font-size: 2em; }
h2  { color: #000; font-size: 1.4em; padding-bottom: 5px; }
h3  { color: #000; font-size: 1.3em; font-weight: bold; }
img { max-width: 100%; display: block; }
.row { margin: 0; }
.table { color: #292929; }
.table a { color: #292929; }
.table a:hover { color: #72a54c; }
.table thead>tr>th, .table tbody>tr>th, .table tfoot>tr>th, .table thead>tr>td, .table tbody>tr>td, .table tfoot>tr>td  { background-color: #F0F0F0; }
.table-striped > tbody > tr:nth-child(2n+1) > td, .table-striped > tbody > tr:nth-child(2n+1) > th { background-color: #E0E0E0; }
.table-bordered td, .table-bordered th { border: 1px solid #FFF; }

@media all and (min-width: 0px) and (max-width: 768px) 
{
	body { font-size: 20px !important; }
	#logo { float: none; margin: 20px auto; width: 300px !important; }
	.navbar { margin-top: 0 !important; }
	#quick_contact { margin-top: 0 !important; }
	#quick_phone { display: block; text-align: center; margin: 10px 0; }
	#quick_email { display: block; text-align: center; margin: 10px 0; }
	#quick_social { display: none !important; }
	.navbar-nav > li > a { border-bottom: 1px solid #000; border-right: none !important; }
	.carousel-caption { display: none !important; }
}

#quick_contact { color: #292929; text-align: left; font-size: 1em; margin-top: 1em; }
#quick_address { font-size: 0.9em; padding-left: 30px; }
#quick_email { padding: 0 2em 0 0.5em; }
#quick_phone { padding: 0 2em 0 0.5em; font-size: 1em; }
#quick_contact a, #quick_contact a:link, #quick_contact a:focus, #quick_contact a:active, #quick_contact a:visited { color: #292929; text-decoration: none; }
#quick_contact a:hover  { color: #72a54c; background: none; text-decoration: underline; } 
.facebook_link { margin-right: 1.5em; }
.instagram_link { margin-right: 1.5em; }

#logo { margin: 0 auto; padding-top: 15px; padding-bottom: 15px;  }
.container_menu_full { margin: 0 auto; width: 100%; padding: 0; }
.navbar { margin-top: 2em; }
.navbar-nav > li > a { padding: 5px 15px 5px 15px; text-align: center; text-decoration: none; border-radius: 0; font-size: 1em; color: #292929; letter-spacing: 1px; }
.navbar-nav > li > a:hover, .navbar-nav > li > a:focus, .navbar-nav  .open > a, 
.navbar-nav  .open > a:hover, .navbar-nav  .open > a:focus { color: #72a54c; background: none;  }
.navbar-nav > li > a.active, .navbar-nav > li > a:active {  text-decoration: underline; }
.navbar-nav > li:first-child > a, .navbar-nav > li:last-child > a  { border-bottom: 0; }
.nav .caret { border-top-color: #000; border-bottom-color: #000; }
.navbar-nav .dropdown-menu { background: #575757; border-radius: 0; padding: 0; margin: 0; width: 280px; }
.navbar-nav .dropdown-menu > li { padding: 0; margin: 0; }
.navbar-nav .dropdown-menu > li  a { color: #FFF; padding: 10px 20px !important; width: 100%; display: block; border-bottom: 1px solid #FFF; font-size: 1em; text-decoration: none; text-align: left; }
.navbar-nav .dropdown-menu > li  a.active, .dropdown-menu > li  a:hover, .dropdown-menu > li  a:active , .dropdown-menu > li  a:focus { color: #FFF; background: #72a54c; }
.dropdown:hover .dropdown-menu { display: block; }
.navbar-toggler-icon { color: #000; }

.carousel-caption { bottom: 6%; }
.carousel-caption h5 { font-size: 4em; color: #72a54c; text-shadow: 2px 2px #000; }
.carousel-caption p { margin-top: 10px; font-size: 2em; color: #000; text-shadow: 2px 2px #adb1bc; }
.carousel-caption a { text-shadow: none !important; }
#home_slideshow { position: relative; width: 100%; }
#slideshow_contact { width: 300px; height: 350px; position: absolute; top: 15%; right: 5%; background: #FFF; border-radius: 25px; border: 2px solid #082b41; padding: 30px 20px; }

.container_content_full { background: #FFF; }
#main_content { padding: 30px 0 40px 0; font-size: 1.1em; }
#main_content li { margin: 1em 0; }
#plain_page_photos { margin-top: 60px;  }
#plain_page_photos img { margin-bottom: 20px; border-radius: 5px; }
#contact_page_map { xxmargin-top: 20px; }

/* services */
.container_services_full { background: #EFEFEF; padding-top: 40px; padding-bottom: 80px;  }
.container_services_full .row { margin-left: 15px; }
#services_intro { text-align: center; }
.service_cell_container { padding: 0; margin: 0 0 50px 0; }
.service_cell { position: relative; margin-right: 15px; overflow: hidden; }
.service_cell h3 { position: absolute; bottom: 10px; left: 10%; width: 80%; padding: 0.5em 1em; text-align: center;  background-color: #3D3D3D; color: #FFF; }
.service_cell a:hover h3 { color: #72a54c; }
#service_cta { margin-top: 30px; }
.service_cell_photo img { transition: transform .2s; width: 100%; height: 100%; }
.service_cell_photo img:hover { transform: scale(1.1); }
.services_photos img { margin-bottom: 20px; border-radius: 5px; }

/* testimonials */
.signature { font-size: 0.85em; font-style: italic; }

/* news */
.container_latest_projects_full { background: #FFF; padding-top: 40px; padding-bottom: 80px;  }
#latest_projects_intro { text-align: center; }
.latest_news_item { margin-bottom: 20px; }
.latest_news_date { font-size: 0.9em; font-style: italic; margin-bottom: 10px; }
.news_list_item { padding-bottom: 30px; margin-bottom: 40px; }
.news_list_description h2 { margin: 20px 10px 5px 10px; }
.news_list_content { margin: 5px 10px 10px 10px; }
.news_photos img { margin-bottom: 25px;  }
.news_date { font-size: 0.9em; font-style: italic; margin-bottom: 10px; }
#news_bottom_photos { margin-top: 40px;  }
#news_bottom_photos img { margin-bottom: 5px; }
.news_bottom_photos_title { margin-bottom: 20px; }

/* partners */
.container_partners_full { background: #EFEFEF; padding-top: 40px; padding-bottom: 80px;  }
.partners_cell { min-height: 200px; margin-bottom: 20px; }
#partners_intro { text-align: center; }

.grecaptcha-badge { visibility: hidden; }
#recaptcha_help { font-size: 0.85em; }
label.error { font-weight: bold; color: #C41E3A; padding: 2px 8px; margin-top: 2px; }
.btn-primary, .btn-primary:link, .btn-primary:focus, .btn-primary:active, .btn-primary:visited, .btn-primary[disabled] { padding: 10px 30px; background: #575757; color: #FFF; border: none; text-decoration: none; }
.btn-primary:hover  { background-color: #72a54c; color: #FFF; }

.container_footer_full { margin: 0 auto; width: 100%; padding: 10px 0; background: #575757; }
#footer_links { padding: 20px 0 10px 0; text-align: left; color: #FFF; font-size: 0.9em; }
#footer_links h2 { color: #FFF !important; }
#footer_links ul li { padding: 10px 0 20px 0; }
#footer_links a, #footer_links a:link, #footer_links a:focus, #footer_links a:active, #footer_links a:visited { color: #FFF; font-weight: normal; }
#footer_links a:hover { color: #e1c782; }
#footer_links .table thead>tr>th, #footer_links .table tbody>tr>th, #footer_links .table tfoot>tr>th, #footer_links .table thead>tr>td, #footer_links .table tbody>tr>td, #footer_links .table tfoot>tr>td  { color: #FFF; background-color: #575757; }
#footer_links .table-striped > tbody > tr:nth-child(2n+1) > td, #footer_links .table-striped > tbody > tr:nth-child(2n+1) > th { color: #FFF; background-color: #575757; }
#footer_links .table-bordered td, .table-bordered th { border: 1px solid #FFF; }
#footer_phone { padding-bottom: 10px; }
#footer_email { padding-bottom: 20px; }

#footer { color: #FFF; padding: 5px 0; }
#footer a, #footer a:link, #footer a:focus, #footer a:active, #footer a:visited { color: #FFF; font-weight: normal; }
#footer a:hover { color: #e1c782; }
.footer_map { margin-bottom: 15px; }
.container_footer_credits_full { margin: 0 auto; width: 100%; padding: 10px 20px; background: #000; font-size: 0.75em; border-bottom: 5px solid #09603d; }
#copyright { padding-left: 0; }
#disclaimers { text-align: center; }
#credits { text-align: right; padding-right: 0; }