/**
Theme Name: TGS ENGINEERS
Author: Big Britches Creative
Author URI: https://bigbritchescreative.com/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tgsengineers2026
Template: astra
*/

@font-face {
    font-family: 'nexa_boldregular';
    src: url('assets/fonts/Nexa_Free_Bold-webfont.eot');
    src: url('assets/fonts/Nexa_Free_Bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('assets/fonts/Nexa_Free_Bold-webfont.woff2') format('woff2'),
         url('assets/fonts/Nexa_Free_Bold-webfont.woff') format('woff'),
         url('assets/fonts/Nexa_Free_Bold-webfont.ttf') format('truetype'),
         url('assets/fonts/Nexa_Free_Bold-webfont.svg#nexa_boldregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'nexa_lightregular';
    src: url('assets/fonts/Nexa_Free_Light-webfont.eot');
    src: url('assets/fonts/Nexa_Free_Light-webfont.eot?#iefix') format('embedded-opentype'),
         url('assets/fonts/Nexa_Free_Light-webfont.woff2') format('woff2'),
         url('assets/fonts/Nexa_Free_Light-webfont.woff') format('woff'),
         url('assets/fonts/Nexa_Free_Light-webfont.ttf') format('truetype'),
         url('assets/fonts/Nexa_Free_Light-webfont.svg#nexa_lightregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

/*
 * BODY CLASSES 
 */

body {
    font-family:'nexa_lightregular','Lato', Arial, sans-serif !important;
    font-weight: normal;
    -webkit-text-size-adjust: 100%;
}

/*
 * HEADER 
 */

body.ast-desktop #masthead {
    position: fixed !important;
    width: 100%;
}

.ast-site-identity {
    padding: 0 !important;
}

#masthead .ast-container {
    padding-left: 0 !important;
}

.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar {
    padding-left: 0 !important;
}

.ast-primary-header-bar .site-primary-header-wrap,
.ast-mobile-header-wrap .ast-primary-header-bar {
    min-height: 66px !important;
}

.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item {
    line-height: 66px !important;
}

@media (max-width: 921px) {
    
    .site-header {
        position: absolute !important;
    }
    
}

@media (max-width: 544px) {
    
    
    
}

.site-content {
    padding-top: 120px;
    padding-bottom: 60px;
    transition: padding 0.3s;
}

.home .site-content {
    padding-top: 0 !important;
}

.archive #content > .ast-container,
.search #content > .ast-container {
    display: block !important;
}
.archive.post-type-archive #content > .ast-container {
    display: flex !important;
}


/*
 * TYPOGRAPHY
 */

h1,h2,h3,h4,h5,h6 {
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    color: #464646 !important;
}
h1 {
    text-transform:uppercase;
    color: #009ba6 !important;
}
.hero-unit h1 {
    color:#009ba6 !important;
}
h2 {
    text-transform:uppercase;
    color:#009ba6 !important;
}
h3 {
    text-transform:uppercase;
    margin:0 0 30px 0;
}
h3.title-box_secondary {
    font-family:'nexa_lightregular','Lato', Arial, sans-serif !important;
    font-size:22px !important;
    line-height:1.6em !important;
}
h4 {
    text-transform:none;
}
h5 {
    font-family:'nexa_lightregular','Lato', Arial, sans-serif !important;
    text-transform:uppercase;
}
h6 {
    font-family:'nexa_lightregular','Lato', Arial, sans-serif !important;
    text-transform:none;
}

address {
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
}

.disclaimer {
    font-size: 14px;
    font-style: italic;
}

.all_caps {
    text-transform: uppercase !important;
}

.xbold {
    font-weight: 800 !important;
}

.lead {
    font-size: 23px;
    line-height: 1.6em;
}

/*
 * CONTENT WELL MISC
 */
.ast-article-single figure, 
.ast-article-single img:not(figure img) {
    box-shadow: none;
}
.ast-single-post .entry-content a {
    text-decoration: none;
}

/*
 * NAVIGATION
 */
.ast-builder-menu-1 .menu-item > .menu-link {
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
}

.ast-header-search .astra-search-icon {
    background:#4b4948;
	display:inline-block;
	width:43px;
	height:43px;
	margin:0;
	padding:0;
	vertical-align:top;
	border-radius:50%;
	transition:0.8s;
	line-height:43px;
	font-size:20px;
	text-align:center;
	color:#fff;
	cursor:pointer;
}
.ast-header-search .astra-search-icon:hover {
	background:#fe8301;
	transition:0.4s;
}
.ast-header-search .icon-search {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 41px;
}

.ast-header-search .ast-dropdown-active .astra-search-icon {
    width:28px;
	height:28px;
	background: #009ba6;
    border-radius:0;
    line-height:28px;
}

.ast-header-search .ast-dropdown-active .astra-search-icon:hover {
	background: #fe8301;
}

.ast-header-search .ast-dropdown-active .icon-search {
    height: 26px;
}

.ast-header-search .ast-dropdown-active .astra-search-icon svg {
    fill: #fff;
}

.ast-search-menu-icon.slide-search .search-form {
    right: -0.5em;
}

/*
 * BUTTONS
 */

.button,
button.vc_general,
.vc_do_btn a.vc_general {
    display: inline-block;
    background: #009ba6 !important;
    text-decoration: none !important;
    font-size: 18px !important;
    padding: 24px 60px 23px !important;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #fff !important;
}

.button:hover,
button.vc_general:hover,
.vc_do_btn a.vc_general:hover {
    background: #fe8301 !important;
    color: #fff !important;
}


/*
 * COMMENTS (REMOVED)
 */

#comments {
    display: none !important
}

/*
 * FOOTER
 */
.site-footer {
    
}
.site-footer .ast-container {
    padding-top: 50px;
    padding-bottom: 39px;
}
.site-footer .widget_text {
    color: #fff;
}
.site-footer .contact_links {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.site-footer .contact_links h4 {
    flex: 0 0 auto;
    padding-right: 38px;
    color: #fff !important;
    font-size: 21px !important;
    line-height: 24px;
}
.site-footer .contact_links .phone,
.site-footer .contact_links .email,
.site-footer .contact_links .linkedin {
    display: inline-block;
    flex: 0 0 auto;
    position: relative;
    padding-left: 25px;
    padding-right: 19px;
    color: #fff;
    font-size: 18px;
    line-height: 24px;
}
.site-footer .contact_links .linkedin {
    padding-left: 0;
}
.site-footer .contact_links .linkedin .fa-linkedin-square {
    margin-right: 5px;
    font-size: 24px;
}
.site-footer .contact_links .phone:before,
.site-footer .contact_links .email:before {
    position: absolute;
    left: 0;
    top: 0;
	width: 20px;
	height: 24px
	line-height:24px;
	font-family:FontAwesome;
	font-size:22px;
	content:'\f095';
}
.site-footer .contact_links .email {
    padding-left: 29px;
}
.site-footer .contact_links .email:before {
    top: -1px;
    width: 24px;
    font-size:20px;
    content:'\f0e0';
}
.site-footer .contact_links .phone:hover,
.site-footer .contact_links .phone:hover:before,
.site-footer .contact_links .email:hover,
.site-footer .contact_links .email:hover:before,
.site-footer .contact_links .linkedin:hover {
    color: #ef662f !important;
}
.site-footer .menu-footer-nav-container {
    margin: 45px 0 0 0;
    padding: 36px 0 0 0;
    border-top: 1px solid #757575;
}
.site-footer #menu-footer-nav {
    margin: 0;
    padding: 0;
}
.site-footer #menu-footer-nav li {
    display: inline-block;
    margin: 0;
    padding: 0;
}
.site-footer #menu-footer-nav li:first-of-type a {
    padding-left: 0;
}
.site-footer #menu-footer-nav li a {
    padding: 0 10px;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
    color: #c2c2c2;
    transition: all 0.3s;
}
.site-footer #menu-footer-nav li a:hover,
.site-footer #menu-footer-nav li.active a {
    color: #ef662f !important;
}

@media (max-width: 921px) {
    
    .site-footer .contact_links {
        flex-wrap: wrap;
    }
    .site-footer .contact_links h4 {
        flex: 0 0 100%;
        margin-bottom: 20px;
    }
    
}

@media (max-width: 767px) {
    
    .site-footer .contact_links {
        display: block;
    }
    .site-footer .contact_links h4 {
        margin: 0 0 20px;
        padding-right: 0;
    }
    .site-footer .contact_links .phone,
    .site-footer .contact_links .email {
        display: block;
        margin: 0 0 10px;
        padding-right: 0;
    }
    
}

@media (max-width: 544px) {
    
    .site-footer #menu-footer-nav li a {
        font-size: 15px;
    }
    
}

/*
 * TITLE BLOCK, BREADCRUMBS
 */
 
.archive header.entry-header .entry-title,
.search header.entry-header .entry-title {
    font-size: 1.75rem;
}
header.entry-header .entry-title span {
    color: #999;
}
.entry-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin: 0 0 45px !important;
    padding-bottom: 32px !important;
    border-bottom: 2px solid #545454 !important;
}
.entry-header .entry-title {
    flex: 0 0 50%;
    margin: 0 !important;
    color: #464646 !important;
}
.entry-header .ast-breadcrumbs-wrapper {
    flex: 0 0 50%;
}
.ast-breadcrumbs-wrapper .trail-items a {
    color: #464646 !important;
}
.ast-breadcrumbs-wrapper .trail-items a:hover,
.ast-breadcrumbs-wrapper .trail-items a:hover span {
    color: #ef662f !important;
}
.ast-breadcrumbs-wrapper .trail-items a span {
    color: #464646 !important;
}
.ast-breadcrumbs-wrapper .trail-items .trail-end span {
    color: #fe8301 !important;
}

@media (max-width: 1199px) {
    
    .entry-header {
        display: block;
    }
    
    .entry-header .entry-title {
        margin: 0 0 10px !important;
    }
    .entry-header .ast-breadcrumbs-wrapper {
        text-align: left;
    }
    
}

@media (max-width: 544px) {
    
    
    
}



/*
 * CONTACT PAGE
 */
.wpb_gmaps_widget.contact_loc_map .wpb_wrapper {
    padding: 0;
}

/*
 * CONTACT FORM
 */
select, textarea, input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], .uneditable-input { outline:none; }
select:-moz-placeholder, textarea:-moz-placeholder, input[type="text"]:-moz-placeholder, input[type="password"]:-moz-placeholder, input[type="datetime"]:-moz-placeholder, input[type="datetime-local"]:-moz-placeholder, input[type="date"]:-moz-placeholder, input[type="month"]:-moz-placeholder, input[type="time"]:-moz-placeholder, input[type="week"]:-moz-placeholder, input[type="number"]:-moz-placeholder, input[type="email"]:-moz-placeholder, input[type="url"]:-moz-placeholder, input[type="search"]:-moz-placeholder, input[type="tel"]:-moz-placeholder, input[type="color"]:-moz-placeholder, .uneditable-input:-moz-placeholder { color:#999; }
select:-ms-input-placeholder, textarea:-ms-input-placeholder, input[type="text"]:-ms-input-placeholder, input[type="password"]:-ms-input-placeholder, input[type="datetime"]:-ms-input-placeholder, input[type="datetime-local"]:-ms-input-placeholder, input[type="date"]:-ms-input-placeholder, input[type="month"]:-ms-input-placeholder, input[type="time"]:-ms-input-placeholder, input[type="week"]:-ms-input-placeholder, input[type="number"]:-ms-input-placeholder, input[type="email"]:-ms-input-placeholder, input[type="url"]:-ms-input-placeholder, input[type="search"]:-ms-input-placeholder, input[type="tel"]:-ms-input-placeholder, input[type="color"]:-ms-input-placeholder, .uneditable-input:-ms-input-placeholder { color:#999; }
select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, input[type="text"]::-webkit-input-placeholder, input[type="password"]::-webkit-input-placeholder, input[type="datetime"]::-webkit-input-placeholder, input[type="datetime-local"]::-webkit-input-placeholder, input[type="date"]::-webkit-input-placeholder, input[type="month"]::-webkit-input-placeholder, input[type="time"]::-webkit-input-placeholder, input[type="week"]::-webkit-input-placeholder, input[type="number"]::-webkit-input-placeholder, input[type="email"]::-webkit-input-placeholder, input[type="url"]::-webkit-input-placeholder, input[type="search"]::-webkit-input-placeholder, input[type="tel"]::-webkit-input-placeholder, input[type="color"]::-webkit-input-placeholder, .uneditable-input::-webkit-input-placeholder { color:#999; }
select::-moz-placeholder, textarea::-moz-placeholder, input[type="text"]::-moz-placeholder, input[type="password"]::-moz-placeholder, input[type="datetime"]::-moz-placeholder, input[type="datetime-local"]::-moz-placeholder, input[type="date"]::-moz-placeholder, input[type="month"]::-moz-placeholder, input[type="time"]::-moz-placeholder, input[type="week"]::-moz-placeholder, input[type="number"]::-moz-placeholder, input[type="email"]::-moz-placeholder, input[type="url"]::-moz-placeholder, input[type="search"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="color"]::-moz-placeholder, .uneditable-input::-moz-placeholder {
	color:#999;
	opacity:1;
}
select.btn:focus, textarea.btn:focus, input[type="text"].btn:focus, input[type="password"].btn:focus, input[type="datetime"].btn:focus, input[type="datetime-local"].btn:focus, input[type="date"].btn:focus, input[type="month"].btn:focus, input[type="time"].btn:focus, input[type="week"].btn:focus, input[type="number"].btn:focus, input[type="email"].btn:focus, input[type="url"].btn:focus, input[type="search"].btn:focus, input[type="tel"].btn:focus, input[type="color"].btn:focus, .uneditable-input.btn:focus { outline:none; }
select:focus, textarea:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="color"]:focus, .uneditable-input:focus { outline:none; }
label[for^=pwbox] { display:inline-block; }

.wpcf7-form input[type="text"], .wpcf7-form input[type="email"], .wpcf7-form textarea { 
    padding:5px 8px !important; 
    border-radius:0 !important; 
    border: 1px solid #b6b6b6 !important;
    color: #464646 !important;
    font-family:'nexa_lightregular','Lato', Arial, sans-serif !important;
    font-size: 14px;
}

.wpcf7-form p.field {
	position:relative;
	overflow:hidden;
	margin-bottom:15px;
	vertical-align:top;
}
.wpcf7-form p.field input {
	margin:0;
	padding:6px 6px 7px 6px;
	width:100%;
	height:30px;
	line-height:15px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.wpcf7-form p.field input[type="file"] {
	position:relative;
	cursor:pointer;
	height:25px;
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
}
.wpcf7-form textarea {
	overflow:auto;
	margin:0;
	padding:6px 6px 7px 6px;
	width:100%;
	height:200px;
	line-height:15px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	resize:none;
	overflow:auto;
}
.wpcf7-form .submit-wrap {
	margin:0;
	padding:0;
}
.wpcf7-form .submit-wrap input { margin-right:10px; }
span.wpcf7-form-control-wrap { display:block; }
.wpcf7-not-valid-tip {
	position:absolute;
	top:0 !important;
	right:0 !important;
	bottom:0 !important;
	left:0 !important;
	padding:4px 6px !important;
	width:auto !important;
	height:auto !important;
	background:#F2DEDE !important;
	border:1px solid #DDD !important;
	color:#B94A48 !important;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	border-radius:2px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
@media (min-width: 768px) and (max-width: 979px) {
	.wpcf7-not-valid-tip { font-size:11px !important; }
}
div.wpcf7-response-output {
	margin:20px 0 !important;
	padding:8px 35px 8px 14px !important;
	border:1px solid #DDD !important;
	background-color:#FCF8E3;
	color:#C09853;
	text-shadow:0 1px 0 rgba(255,255,255,0.5);
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
}
div.wpcf7-validation-errors {
	background-color:#F2DEDE !important;
	border-color:#DDD !important;
	color:#B94A48 !important;
}
div.wpcf7-mail-sent-ok {
	background:#DFF0D8 !important;
	border:1px solid #DDD !important;
	color:#468847 !important;
}


.wpcf7-form .flex-row {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    margin: 0;
}
.wpcf7-form .flex-row .third {
    flex: 0 0 calc(33.333% - 20px);
}

/* SWIPER SLIDER ******************************************/
.hero_slider {
    height: 716px;
}
.hero_slider_wrap {
    height: 100%;
}
.hero_slider .swiper_hero-slider {
    height: 100%;
}
.hero_slider .swiper-slide {
    position: relative;
    z-index: 5;
}
.hero_slider .img_cont {
    height: 100%;
}
.hero_slider .img_cont img {
    height: auto;
    min-height: 110%;
    min-width: 100%;
    max-width: none;
    object-fit: cover;
}
.hero_slider .hero_overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 6;
    //background: rgba(0,0,0,0.2);
}
.hero_slider .cont_wrap {
    position: absolute;
    top: 66px;
    right: 80px;
    bottom: 0;
    left: 80px;
    z-index: 7;
}
.hero_slider .inner_content {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 35vw;
    min-width: 430px;
    padding: 40px 40px 24px;
    box-sizing: border-box;
    background: rgba(255,255,255,0.5);
    transform: translateY(-50%);
}
.hero_slider .inner_content:before {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 3px;
    height: calc(100% - 40px);
    background: #ef662f;
    content: '';
}
.hero_slider .inner_content .heading,
.hero_slider .inner_content .subheading {
    margin: 0 0 20px;
    padding: 0 0 30px;
    font-size: 60px;
    line-height: 1em;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-weight: 700;
    color: #292625;
}
.hero_slider .inner_content .subheading {
    margin: 0;
    padding: 0;
    font-size: 36px;
    text-transform: uppercase;
    line-height: 1.2em;
}
.hero_slider .swiper-button-prev,
.hero_slider .swiper-button-next {
    left: 0;
    width: 40px;
    height: 60px;
    border-radius: 0 3px 3px 0;
    background: rgba(0,155,166,0.7);
    transition: background 0.2s;
}
.hero_slider .swiper-button-next {
    left: auto;
    right: 0;
    border-radius: 3px 0 0 3px;
}
.hero_slider .swiper-button-prev:hover,
.hero_slider .swiper-button-next:hover {
    background: rgba(0,155,166,1);
}
.hero_slider .swiper-button-prev:after,
.hero_slider .swiper-button-next:after {
    font-family: FontAwesome;
    font-size: 25px;
    font-weight: normal;
    font-style: normal;
    line-height: 63px;
    color: #fff;
    content: '\f053';
}
.hero_slider .swiper-button-next:after {
    content: '\f054';
}

@media (max-width: 1100px) {
    
    .hero_slider .inner_content {
        left: calc(100% - 450px);
    }
    
}

@media (max-width: 921px) {
    
    .hero_slider {
        height: 80vh;
    }
    
    .hero_slider .cont_wrap {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .hero_slider .inner_content {
        position: relative;
        top: 0;
        left: auto;
        width: 100%;
        min-width: 0;
        transform: none;
    }
    
    .hero_slider .inner_content .heading,
    .hero_slider .inner_content .subheading {
        font-size: 48px;
    }
    .hero_slider .inner_content .subheading {
        font-size: 30px;
    }
    
}

@media (max-width: 544px) {
    
    .hero_slider {
        height: 100vh;
    }
    
    .hero_slider .cont_wrap {
        right: 50px;
        left: 50px;
    }
    
    .hero_slider .inner_content .heading,
    .hero_slider .inner_content .subheading {
        font-size: 32px;
    }
    .hero_slider .inner_content .subheading {
        font-size: 20px;
    }
    
}

@media (max-width: 400px) {
    
    .hero_slider .inner_content .heading,
    .hero_slider .inner_content .subheading {
        font-size: 26px;
    }
    .hero_slider .inner_content .subheading {
        font-size: 18px;
    }
    
}

/* SERVICES GRID (WITH SPINNING ICON) *********************************/
.services_grid,
.wpb_wrapper .services_grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 80px;
    row-gap: 60px;
    margin: 70px 0;
    padding: 0 40px;
}
.services_grid > article,
.services_grid > div {
    
}
.service_card {
    
}
/*.service_card .thumbnail {
	float: right;
	max-width: 130px;
	margin: 0 0 0 30px;
	margin-bottom: 10px;
	background: none;
	border: none;
	border-radius: 50%;
}*/
.service_card .thumbnail {
    position: relative;
	float: right;
	width: 130px;
	height: 0;
	padding-bottom: 130px;
	margin: 0 0 0 30px;
	margin-bottom: 10px;
	background: none;
	border: none;
	border-radius: 50%;
}
.service_card .thumbnail a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.service_card .thumbnail img {
    transition:0.8s;
}
.service_card:hover .thumbnail img {
    transform: rotateY(360deg);
	transition: 0.4s;
}
.service_card .thumbnail a:hover img {
    
}

.service_card .thumbnail .img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transition: transform 0.8s;
    
    -webkit-mask-image: url('assets/img/service-image-mask.svg#clipping');
    mask-image: url('assets/img/service-image-mask.svg');
    mask-position: center center;
    mask-size: 100% 100%;
    mask-repeat: no-repeat;
}
.service_card:hover .thumbnail .img {
    transform: rotateY(360deg);
	transition: 0.4s;
}
.service_card .thumbnail a:hover .img {
    
}

.service_card .cont {
    
}
.service_card h5 {
    margin: 0 0 15px 0;
	padding: 2px 0 0 0;
	line-height: 30px;
	font-size: 24px;
	font-weight: bold;
	text-transform: none;
	color: #545454;
}
.service_card h5 a {
    text-decoration: none;
	color: #545454;
}
.service_card:hover h5 a,
.service_card h5 a:hover {
    text-decoration: none;
	color: #fe8301;
}
.service_card .excerpt {
    
}

@media (max-width: 921px) {
    
    .services_grid,
    .wpb_wrapper .services_grid {
        padding: 0;
    }
    
}

@media (max-width: 767px) {
    
    .services_grid,
    .wpb_wrapper .services_grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        padding: 0;
    }
    
}

/* SINGLE PROJECT */
.single-portfolio .flex_row {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.single-portfolio .left_col {
    flex: 0 0 58%;
}
.single-portfolio .entry-content {
    flex: 0 0 42%;
    padding-left: 30px; 
}
.single-portfolio .portfolio-meta {
    margin: 0;
    padding: 1em 0;
    border-top: 1px solid #ddd;
}
.single-portfolio .portfolio-meta span {
    display:inline-block;
    padding-right: 15px;
    font-family:'nexa_lightregular','Lato', Arial, sans-serif !important;
    font-size: 16px;
    line-height: 20px;
    font-weight: normal;
}
.single-portfolio .portfolio-meta a {
    color: #fe8301;
    text-decoration: none;
}
.single-portfolio .portfolio-meta a:hover {
    color: #009ba6;
}
.single-portfolio .portfolio-client {
    margin: 0 0 2em;
    padding: 1em 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-weight: 700;
    text-transform: uppercase;
}
.single-portfolio .portfolio-image {
    display: block;
    position: relative;
}
.single-portfolio .portfolio-image img {
    width: 100%;
    height: auto;
}
.single-portfolio .portfolio-image .zoom {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background: rgba(0,0,0,0.4);
    opacity: 0;
    cursor: pointer;
    transition: all 0.2s;
}
.single-portfolio .portfolio-image .zoom:before {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 32px;
    height: 32px;
    overflow: hidden;
    margin: -16px 0 0 -16px;
    transition: all 0.8s;
    content: '';
    background: url('assets/img/magnify.png');
    cursor: pointer;
}
.single-portfolio .portfolio-image:hover .zoom {
    opacity: 1;
    visibility: visible;
}
.single-portfolio .portfolio-image:hover .zoom:before {
    transform: rotateY(360deg);
    transition: all 0.4s;
}

/* RELATED PROJECTS */
.related_projects {
    padding-right: 42%;
}
.related_projects h3 {
    margin: 26px 0 20px;
    font-size: 28px !important;
    color: #009ba6 !important;
}
.related_projects_list {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(100% + 26px);
    margin: 0 -13px;
    padding: 0;
    list-style: none;
}
.related_projects_list li {
    flex: 0 1 25%;
    padding: 0 13px;
    list-style-type: none;
}
.related_projects_list li:first-of-type {
    padding-
}
.related_projects_list figure.thumbnail {
    position: relative;
    height: 0;
    padding-bottom: 60%;
    margin-bottom: 10px;
}
.related_projects_list figure.thumbnail .img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
}
.related_projects_list figure.thumbnail img {
    object-fit: cover;
    transition: transform 0.3s;
}
.related_projects_list li span {
    display: block;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-size:16px !important;
    text-transform:uppercase !important;
    color: #464646 !important;
    transition: color 0.3s;
}
.related_projects_list a:hover figure.thumbnail img {
    transform: scale(1.05);
}
.related_projects_list a:hover span {
    color: #fe8301 !important;
}

@media (max-width: 1200px) {
    
    .related_projects_list li span {
        font-size:15px !important;
    }
    
}

@media (max-width: 921px) {
    
    .related_projects_list li span {
        font-size:13px !important;
    }
    
}

@media (max-width: 767px) {
    
    .single-portfolio .flex_row {
        display: block;
    }
    
    .single-portfolio .left_col {
        margin-bottom: 30px;
    }
    .single-portfolio .entry-content {
        padding: 0 0 30px;
    }
    
    .related_projects {
        padding-right: 0;
    }
    
}

@media (max-width: 544px) {
    
    .related_projects_list {
        flex-wrap: wrap;
    }
    .related_projects_list li {
        flex: 0 0 50%;
        margin-bottom: 30px;
    }
    .related_projects_list figure.thumbnail {
        padding-bottom: 50%;
    }
    
}

/* PROJECT CARDS **********************************************************/
.project_card {
    border-bottom: 3px solid #f0662f;
}
.project_card .wrap_link {
    display: block;
}
.project_card .img_wrap {
    position: relative;
    height: 0;
    padding-bottom: 70%;
    overflow: hidden;
}
.project_card .img_wrap .inner {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: all 0.3s;
    overflow: hidden;
}
.project_card .img_wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.project_card .cont {
    padding: 30px 10px 50px;
    text-align: center;
}
.project_card h3 {
    margin: 0 0 5px;
    color: #464646;
    font-size: 20px;
    transition: color 0.3s;
}
.project_card p {
    margin: 0;
    color: #464646;
}
.project_card .wrap_link:hover .img_wrap .inner  {
    top: -20px;
    right: -20px;
    bottom: -20px;
    left: -20px;
}
.project_card .wrap_link:hover h3 {
    color: #f0662f !important;
}
.project_card .wrap_link:hover p {
    color: #464646;
}

/* PORTFOLIO ARCHIVE */
.archive.post-type-archive-portfolio #primary {
    flex: 0 0 100%;
}
.archive.post-type-archive-portfolio .entry-content {
    display: block;
}
.archive.post-type-archive-portfolio .projects_grid,
.single-services .projects_grid,
.wpb_wrapper .projects_grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    row-gap: 40px;
}
.archive.tax-portfolio_tag .projects_grid,
.archive.tax-portfolio_category .projects_grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    row-gap: 40px;
}
.projects_grid > article,
.projects_grid > div {
    
}

@media (max-width: 767px) {
    
    .archive.post-type-archive-portfolio .projects_grid,
    .single-services .projects_grid,
    .wpb_wrapper .projects_grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .archive.tax-portfolio_tag .projects_grid,
    .archive.tax-portfolio_category .projects_grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    
}

@media (max-width: 544px) {
    
    .archive.post-type-archive-portfolio .projects_grid,
    .single-services .projects_grid,
    .wpb_wrapper .projects_grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    .archive.tax-portfolio_tag .projects_grid,
    .archive.tax-portfolio_category .projects_grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    
}

/* SINGLE SERVICE */
.single-services .flex_row {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.single-services .left_col {
    flex: 0 0 67%;
    width auto;
    margin: 0 !important;
}
.single-services .right_col {
    margin-top: 0;
    flex: 0 0 33%;
    padding-left: 40px;
    width: auto;
}
.single-services .right_col h3.projects {
    color: #009ba6 !important;
}
.assoc_projects_list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.assoc_projects_list li {
    margin: 0 0 20px;
    padding: 0;
    list-style-type: none;
}
.assoc_projects_list li a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.assoc_projects_list li a .thumb {
    flex: 0 0 50%;
    aspect-ratio: 1.78;
    overflow: hidden;
}
.assoc_projects_list li a .thumb img {
    position: relative;
    top: 50%;
    width: 100%;
    height: auto;
    object-fit: cover;
    transform: translateY(-50%) scale(1.0);
    transition: all 0.3s;
}
.assoc_projects_list li a .label {
    flex: 0 0 50%;
    padding-left: 10px;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-size:15px !important;
    text-transform:uppercase !important;
    color: #464646 !important;
    transition: color 0.3s;
}
.assoc_projects_list li a:hover .thumb img {
    transform: translateY(-50%) scale(1.15);
}
.assoc_projects_list li a:hover .label {
    color: #fe8301 !important;
}

@media (max-width: 921px) {
    
    .single-services .left_col {
        flex: 0 0 58%;
    }
    .single-services .right_col {
        flex: 0 0 42%;
    }
    
}

@media (max-width: 767px) {
    
    .single-services .flex_row {
        display: block;
    }
    .single-services .right_col {
        padding-left: 0;
    }
    .assoc_projects_list li a .thumb {
        flex: 0 0 30%;
    }
    .assoc_projects_list li a .label {
        flex: 0 0 70%;
    }
    
}

/* TAXONOMY ARCHIVE */
.archive .entry-content {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.archive #primary {
    flex: 0 0 67%;
    width auto;
    margin: 0 !important;
}
.archive #secondary {
    margin-top: 0;
    flex: 0 0 33%;
    padding-left: 40px;
    width: auto;
}
.archive #primary article.portfolio {
    padding: 0 !important;
}
.archive #secondary .wp-block-group h2 {
    line-height: 1.2em;
}
#secondary .project_cat_list {
    margin: 0;
    padding: 0;
    list-style: none;
}
#secondary .project_cat_list li {
    margin: 0 0 20px;
    padding: 0;
    list-style-type: none;
}
#secondary .project_cat_list li a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
#secondary .project_cat_list li a .thumb {
    flex: 0 0 50%;
    aspect-ratio: 1.78;
    overflow: hidden;
}
#secondary .project_cat_list li a .thumb img {
    position: relative;
    top: 50%;
    width: 100%;
    height: auto;
    object-fit: cover;
    transform: translateY(-50%) scale(1.0);
    transition: all 0.3s;
}
#secondary .project_cat_list li a .label {
    flex: 0 0 50%;
    padding-left: 10px;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-size:15px !important;
    text-transform:uppercase !important;
    color: #464646 !important;
    transition: color 0.3s;
}
#secondary .project_cat_list li a:hover .thumb img {
    transform: translateY(-50%) scale(1.15);
}
#secondary .project_cat_list li a:hover .label {
    color: #fe8301 !important;
}

@media (max-width: 921px) {
    
    .archive #primary {
        flex: 0 0 58%;
    }
    .archive #secondary {
        flex: 0 0 42%;
    }
    
}

@media (max-width: 767px) {
    
    .archive .entry-content {
        display: block;
    }
    .archive #secondary {
        padding-left: 0;
    }
    
    #secondary .project_cat_list li a .thumb {
        flex: 0 0 30%;
    }
    #secondary .project_cat_list li a .label {
        flex: 0 0 70%;
    }
    
}

/* SEARCH */
.search #search_results_container article {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0;
}
.search #search_results_container article .img_wrap {
    display: block;
    position: relative;
    flex: 0 0 15%;
    height: 0;
    padding-bottom: 10%;
}
.search #search_results_container article .img {
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;
    left: 0;
    overflow: hidden;
}
.search #search_results_container article .img img {
    display: block;
    width: 100%;
    object-fit: contain;
}
.search #search_results_container article .cont {
    flex: 0 1 auto;
}
.search #search_results_container article h3 {
    margin: 0;
}
.search #search_results_container article .eyebrow {
    margin: 0;
    font-family:'nexa_boldregular','Lato', Arial, sans-serif !important;
    font-size:14px !important;
    text-transform:uppercase !important;
    color: #f0662f !important;
    text-transform: uppercase;
}

@media (max-width: 921px) {
    
    .search #search_results_container article .img_wrap {
        flex: 0 0 24%;
        padding-bottom: 16%;
    }
    
}

@media (max-width: 767px) {
    
    .search #search_results_container article .img_wrap {
        flex: 0 0 30%;
        padding-bottom: 20%;
    }
    
}