/**
* Theme Name:     Hello Elementor Child
* Author:         Elementor Team
* Template:       hello-elementor
* Text Domain:     hello-elementor-child
* Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
*/

.comments-area a, .page-content a{
	outline:none !important;
}
/*---button css start---*/

.elementor-widget-button .elementor-button{
    z-index:1;
}
.button,
.facetwp-load-more{
    position:relative;
    z-index:0;
}
.button::before,
.facetwp-load-more::before,
.elementor-widget-button .elementor-button::before,
div.wpforms-container-full button[type=submit]::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #4a6b5e !important;
    transform: scaleX(0);
    transform-origin: left;
    transition: all .4s ease-in-out;
    z-index:0;
}
.button::before,
.facetwp-load-more::before{
    z-index:-1;
}
.button:hover::before,
.facetwp-load-more:hover::before,
.elementor-widget-button .elementor-button:hover::before,
div.wpforms-container-full button[type=submit]:hover::before{
    transform: scaleX(1);
}
.elementor-widget-button.er-transparent-btn .elementor-button::before,
div.wpforms-container-full button[type=submit]::before{
    background: #A2762F !important;
}
.elementor-button-content-wrapper {
    position: relative;
    align-items: center !important;
    z-index: 10;
}

/*---button css end---*/


/*---header css start----*/
.she-header-yes {
    border-bottom:1px solid transparent;
}
.she-header-yes.she-header{
    border-color: #DCD3B9;
}
.hfe-pointer__underline .menu-item.parent a.hfe-menu-item:after {
    height: 1px !important;
    background-color: #A2762F !important;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .4s cubic-bezier(.16, 1, .3, 1);
    opacity:1 !important;
}

.hfe-pointer__underline .menu-item.parent a.hfe-menu-item:hover:after {
    transform: scaleX(1);
    transform-origin: left;
    opacity:1 !important;
}

/*---header css end----*/

/*---hero css start---*/
.er-hero-row::before{
    content:"";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(23,24,26,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(23,24,26,.05) 1px,transparent 1px);
    background-size: 80px 80px;
    pointer-events: none;
    mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, black, transparent);
    -webkit-mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, black, transparent);
}

/*---hero css end---*/

/*---about css start---*/
.er-about-numbers-info ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.er-about-numbers-info ul li {
    padding: 17px 0;
    border-bottom: 1px solid #DCD3B9;
    line-height: 1.25;
    font-size: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}
.er-about-numbers-info ul li strong {
    color: #A2762F;
    font-weight: 600;
}
.er-about-numbers-info ul li:last-child {
    border: none;
    padding-bottom: 0;
}

/*---about css end---*/


/*---contact form css start---*/
div.wpforms-container-full {
    margin: 0 !important;
}
div.wpforms-container-full input,
div.wpforms-container-full select, 
div.wpforms-container-full textarea {
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 16px !important;
    background: #F2EEE3 !important;
    border-color: #DCD3B9 !important;
}
div.wpforms-container-full input:focus,
div.wpforms-container-full select:focus, 
div.wpforms-container-full textarea:focus{
    border-color:#17181A !important;
}
div.wpforms-container-full button[type=submit] {
    border-radius: 0 !important;
    padding: 18px 32px !important;
    height: auto !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    border-color:  #6E7168 !important;
    line-height: 1 !important;
    letter-spacing: 0.08em;
    background:#F2EEE3 !important;
    color: #17181A !important;
    font-weight: 600;
    z-index:0;
}
div.wpforms-container-full button[type=submit]::before{
    z-index:-1;
}
div.wpforms-container-full button[type=submit]:is(:hover,:focus){
    border-color:#A2762F !important;
    color:#F2EEE3 !important;
}

.wpforms-container .wpforms-field, 
.wp-core-ui div.wpforms-container .wpforms-field{
    padding:10px 0 !important;
}

/*---contact form css end---*/

/*--- Our Team form css Start -----*/

.er-team-member-img {
    position: relative !important;
    box-shadow: 0 0 20px 5px rgb(0 0 0 / 20%);
    border: 2px solid #ddd;
}
.er-team-member-img::before {
    content: "";
    position: absolute;
    left: -25px;
    top: 25px;
    height: 100%;
    width: 100%;
    border: 2px solid #A2762F;
    z-index: -1;
}

/*--- Our Team form css End -----*/

/*----case archive css start----*/
#primary.er-case-archive-main{
    max-width: 100% !important;
}
.er-case-archive-container {
    width:1320px;
    max-width: 100%;
    margin: 0 auto;
    padding: 60px 20px;
}
.er-case-archive-header {
    margin-bottom: 40px;
}
.er-case-archive-subtitle {
    position:relative;
    color: rgb(162, 118, 47);
    font-family: "IBM Plex Mono", sans-serif;
    font-size: 11px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    padding-left:40px;
}
.er-case-archive-subtitle::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 30px;
    height: 1px;
    background: #A2762F;
}
.er-case-archive-title {
    font-size: 50px !important;
    line-height: 1.1 !important;
    font-weight: 800;
    margin-bottom: 20px;
}
.er-case-archive-description {
    font-size: 18px;
    font-weight: 400;
}

.er-case-filter-item:first-child {
    flex: 2;
}

.er-case-filter-item .facetwp-facet {
    margin: 0;
}

.er-case-filter-item .facetwp-facet > * {
    width: 100%;
    max-width: 100%;
}

.er-case-filters-row {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    gap: 20px;
    margin-bottom: 15px;
}

.er-case-filter-item {
    flex: 1;
    min-width: 200px;
}

.facetwp-facet input.facetwp-search, .facetwp-facet input.facetwp-location, .fs-label-wrap .fs-label {
    background: #FBF9F2 !important;
    border-radius: 0 !important;
    border: 1px solid  #DCD3B9 !important;
    box-shadow: none !important;
    padding: 10px 18px !important;
    line-height: 1.8 !important;
    height: 52px;
    color: #6E7168;
    font-weight: 400;
    font-size: 15px;
}
i.facetwp-icon,
.fs-arrow{
    right: 10px !important;
}
.fs-label-wrap {
    padding: 0 !important;
    border: none !important;
}
.fs-dropdown {
    background: #FBF9F2 !important;
    border-radius: 0 !important;
    border: 1px solid  #DCD3B9 !important;
    box-shadow: none !important;
    padding: 10px 18px;
}
.fs-search{
    border-bottom:1px solid  #DCD3B9;
}
.fs-option, .fs-search, .fs-optgroup-label {
    background: transparent !important; 
    padding:6px 0 !important;
}
.fs-dropdown .fs-options {
    padding-top: 10px !important;
}
.er-case-count-row {
    display:flex;
    flex-flow:row wrap;
    align-content:center;
    gap:10px;
    font-size: 14px;
    font-family: "IBM Plex Mono", sans-serif;
    margin-bottom: 30px;
}
.er-case-count-row .facetwp-counts{
    color:#A2762F;
    font-weight:500;
}
.facetwp-facet.facetwp-facet-er_case_load_more.facetwp-type-pager {
    margin-bottom: 0 !important;
}
.er-case-load-more-wrap {
    text-align: center;
}
.facetwp-load-more {
    background:#17181A !important;
    margin-top: 40px !important;
}
/*----case archive css end----*/

/*---case single page css start----*/
.er-case-single-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 60px 20px;
}

.er-case-single-back-wrap {
    margin-bottom: 30px;
}

.er-case-single-back-link {
    font-size: 12px;
    font-weight: 400;
    text-decoration: none;
    color:#6E7168 !important;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.er-case-single-back-link:hover{
    color: #A2762F !important;
}
.er-case-single-header {
    margin-bottom: 60px;
}

.er-case-single-meta-top {
    display: flex;
    flex-flow:row wrap;
    align-items:center;
    gap: 15px;
    margin-bottom: 20px;
}

.er-case-single-tag {
    font-size: 14px;
    font-weight: 400;
    font-family: 'IBM Plex Mono';
    text-transform: uppercase;
    line-height: 1.3;
    letter-spacing: 0.04em;
    padding: 8px 16px;
    border: 1px solid #A2762F;
    background: transparent;
    color: #A2762F;
}
.er-case-single-tag.er-case-single-status {
    font-size: 11px;
    color: #3e6357;
    border-color: #d9e4dc;
    height: 30px;
}
.er-case-single-title {
    font-size: 50px !important;
    font-weight: 800;
    line-height: 1.1 !important;
    margin-bottom: 50px;
}

/* Top Meta Grid Bar */
.er-case-single-top-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid #DCD3B9;
    border-bottom: 1px solid #DCD3B9;
}

.er-case-single-top-col {
    padding: 20px 25px;
    border-right: 1px solid #DCD3B9;
    display: flex;
    flex-direction: column;
}

.er-case-single-top-col:last-child {
    border-right: none;
}

.er-case-single-label {
    font-size: 11px;
    font-weight: 400;
    font-family: 'IBM Plex Mono';
    text-transform: uppercase;
    letter-spacing: 0.1em;
    line-height:1.2;
    color: #777;
    margin-bottom: 6px;
}

.er-case-single-val {
    font-size: 15px;
    font-weight: 500;
    line-height:1.2;
    color: #33362f;
}

/* Main Content and Sidebar Layout */
.er-case-single-layout-grid {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 50px;
    align-items: start;
}

.er-case-single-entry-content {
    font-weight: 400;
    margin-top: -25px;
    display: inline-block;
}
.er-case-single-entry-content h2,
.er-case-single-entry-content h3, 
.er-case-single-entry-content h4, 
.er-case-single-entry-content h5 {
    border-bottom: 1px solid #DCD3B9;
    padding-bottom: 13px;
    margin-top: 25px;
}

.er-case-single-entry-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.er-case-single-entry-content ul li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 7px;
}
.er-case-single-entry-content ul li::before {
    content: "—";
    position: absolute;
    left: 0;
    color: #A2762F;
}

/* Media & Records Tabs */
.er-case-single-section {
    margin-top: 50px;
}
.er-case-media-tabs {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

.er-case-tab-btn {
    flex: 1;
    background: #FBF9F2 !important;
    border-top: 1px solid #DCD3B9 !important;
    border-bottom: 1px solid #DCD3B9 !important;
    border-right: 1px solid #DCD3B9 !important;
    border-left:none !important;
    padding: 15px !important;
    font-size: 12px;
    text-transform: uppercase;
    color:  #6E7168 !important;
}
.er-case-tab-btn:first-child{
    border-left: 1px solid #DCD3B9 !important;
}
.er-case-tab-btn.active, .er-case-tab-btn:hover {
    background: #17181A !important;
    color: #fff !important;
}
.er-case-tab-contents-wrap {
    background: #FBF9F2;
    padding: 20px;
    border: 1px solid #DCD3B9;
    border-top: none;
}
.er-case-tab-pane {
    display: none;
}
.er-case-tab-pane.active {
    display: block;
}

/* Sidebar Styling */
.er-case-sidebar-box {
    background: #FBF9F2;
    border: 1px solid #DCD3B9;
    padding: 25px;
    margin-bottom: 30px;
}
.er-case-sidebar-box:last-child {
    margin-bottom: 0;
}
.er-case-sidebar-box-title {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    font-family: 'IBM Plex Mono';
    text-transform: uppercase;
    letter-spacing: 0.1em !important;
    color: #A2762F !important;
    margin-bottom: 22px;
    margin-top: 0 !important;
}

.er-case-identity-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.er-case-identity-list li {
    display: flex;
    justify-content: flex-start;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 10px;
    line-height: 1.3;
    color: #6E7168;
    gap: 10px;
}
.er-case-identity-list li:last-child{
    margin-bottom:0;
}
.er-case-identity-list li strong {
    color:#A2762F;
    font-weight:500;
}

.er-case-related-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.er-case-related-item {
    display: flex;
    gap: 15px;
    text-decoration: none;
    font-size: 13px;
    padding-bottom: 15px;
    line-height:1.3;
    border-bottom: 1px solid #DCD3B9;
}

.er-case-related-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.er-case-rel-num {
    color:#6E7168;
    font-family: 'IBM Plex Mono';
    line-height:1.3;
}

.er-case-rel-title {
    color: #33362F !important;
    font-weight:400;
    line-height:1.3;
}

.er-case-rel-title:hover {
    color:#4a6b5e !important;
}


/*---case single page css end---*/


/*----service css start-----*/

.er-service-intro-img-col::before {
    content: "";
    position: absolute;
    top: 0;
    left: -200px;
    width: 400px;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
}

.er-service-intro-info-col {
    padding-left: calc(50% - 1450px / 2) !important;
}
.er-service-intro-img-col * {
    height: 100% !important;
    object-fit: cover !important;
}

.er-capabilities-col .elementor-image-box-wrapper{
	display:flex !important;
	text-align:left !important;
}
.er-capabilities-col .elementor-image-box-img {
    width: 60px !important;
    min-width: 60px !important;
}
.er-capabilities-col .elementor-image-box-img img {
    width: 100%;
}
.er-capabilities-col .elementor-image-box-content {
    width: calc(100% - 60px) !important;
    padding-left: 10px;
}
.er-our-process-text {
    width: 120px;
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/*----service css end-----*/

/*-----gallery css start----*/
.er-gallery-row .elementor-widget-image {
    position: relative;
    overflow: hidden;
}

.er-gallery-row .elementor-widget-image::before {
    content: "";
    display: block;
    padding-top: 60%;
}

.er-gallery-row .elementor-widget-image * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}
.er-gallery-row .elementor-widget-image img,
.er-gallery-row .elementor-element .elementor-heading-title{
	transition:all .4s ease-in-out;
}
.er-gallery-row .elementor-widget-image img:hover{
	transform:scale(1.12);
}
.er-gallery-row > .elementor-element:hover .elementor-heading-title {
    color:#A2762F;
}


/*-----gallery css end----*/

/*----responsive css start----*/

@media only screen and (max-width:1279px){
    .er-case-single-top-col {
        padding: 20px;
    }
}/*---end 1280px---*/

@media  only screen and (max-width:1024px){

    .hfe-nav-menu-icon {
        padding: 0 !important;
    }
    .er-case-archive-header {
        margin-bottom: 30px;
    }
    .er-case-archive-title {
        font-size: 40px !important;
        margin-bottom: 15px;
    }
    .er-case-archive-description {
        font-size: 16px;
    }
    .er-case-filters-row {
        gap: 12px;
        margin-bottom: 5px;
    }
    .er-case-count-row {
        margin-bottom: 15px;
    }
    .er-case-single-top-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .er-case-single-layout-grid {
        grid-template-columns: 1fr;
    }
    .er-case-single-top-grid {
        border-bottom: none;
    }
    .er-case-single-top-col {
        padding: 15px;
        border-bottom: 1px solid #DCD3B9;
    }
    .er-case-single-top-col:nth-child(2){
        border-right:none;
    }
    .er-case-single-back-wrap {
        margin-bottom: 20px;
    }
    .er-case-single-title {
        font-size: 40px !important;
        margin-bottom: 35px;
    }
    .er-case-single-header {
        margin-bottom: 45px;
    }
    .er-team-member-img::before {
        left: -15px;
        top: 15px;
    }
	.er-gallery-wrapper .gallery-item {
    max-width: 33.33% !important;
}


}/*---end 1024px---*/

@media  only screen and (max-width:767px){
    .er-logo-text .elementor-heading-title span {
        font-size: 11px !important;
        letter-spacing: 0.12em !important;
    }
    .er-case-archive-title {
        font-size: 35px !important;
    }
    .er-case-single-title {
        font-size: 35px !important;
        margin-bottom: 30px;
    }
    .er-case-single-top-col {
        padding: 15px 10px;
    }
    .er-case-single-val {
        font-size: 14px;
    }
    .er-case-single-section {
        margin-top: 40px;
    }
    .er-case-sidebar-box {
        padding: 20px;
    }
	.er-capabilities-col .elementor-image-box-img {
    width: 50px !important;
    min-width: 50px !important;
}
.er-capabilities-col .elementor-image-box-content {
    width: calc(100% - 50px) !important;
    padding-left: 7px;
}
	.er-service-intro-img-col::before {
    top: -150px;
    left: 0;
    width: 100%;
    height: 300px;
   background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%);
}
	.er-service-intro-info-col {
    padding-right: 20px !important;
}
.er-service-intro-img-col {
    margin-left: -20px !important;
}
			.er-gallery-wrapper .gallery {
  
			margin-right:-20px !important;
}
		.er-gallery-wrapper .gallery-item {
    max-width: 50% !important;
			padding-right:20px !important;
			padding-bottom:20px !important;
}

}/*---end 767px---*/



/*----responsive css end----*/