:root {
	--primary: #2e2d2c;
	--secondary: #000;
	--black: #000;
	--blac-3d: #3b3938;
	--white: #fff;
	--white-f1: #f1f1f1;
	--white-f5: #f5f5f5;
	--white-df: #dfdfdf;
	--white-op-015: #ffffff26;
	--green: #2f4f4f;
	--sand: #E4D5B7;
	--greenish: #2f4f4f;
	--radius-5: 5px;
	--radius-10: 10px;
	--radius-15: 15px;
	--radius-20: 20px;
	--radius-30: 30px;
	--radius-50: 50px;
}
.mb-0 { margin-bottom: 0!important;}
.h-100 { height: 100%; }
strong { font-weight: 600; }
p, .elementor-widget-text-editor { font-weight: 400; }
.heading .elementor-heading-title { font-weight: 400; }
.ast-container { max-width: 100%; padding: 0!important; }
.content-area.primary { margin: 0!important; }
.error404 .footer-top { display: none; }
/*  */
.ml-15 { margin-left: 15px; }
.btn-theme .elementor-button {
    background-color: var(--green);
    color: var(--white);
    border-radius: var(--radius-50);
    padding: 0 20px!important;
    min-height: 50px;
    line-height: 50px;
}
.btn-theme .elementor-button-content-wrapper { align-items: center; }
.btn-theme .elementor-button:hover, .btn-theme.white .elementor-button:hover {
    background-color: var(--primary);
    color: var(--white);
}
.btn-theme.white-hover .elementor-button:hover { background-color: var(--white); color: var(--green); }
.btn-theme .elementor-button .elementor-button-icon {
    background-color: var(--white);
    height: 20px;
    width: 20px;
    border-radius: var(--radius-50);
    color: var(--green);
    justify-content: center;
    font-size: 12px;
}
.btn-theme .elementor-button:hover .elementor-button-icon svg {
    transform: rotate(0deg);
    transition: transform 0.5s;
	filter: brightness(0) invert(0);
}
.btn-theme .elementor-button .elementor-button-icon svg {
    transform: rotate(-45deg);
    transition: transform 0.5s;
}
.btn-theme.white-hover .elementor-button:hover .elementor-button-icon { background-color: var(--green); }
.btn-theme.white-hover .elementor-button:hover .elementor-button-icon svg { filter: brightness(0) invert(1); }
.btn-theme.white .elementor-button {
    background-color: var(--white);
    color: var(--primary);
}
.btn-theme.white .elementor-button .elementor-button-icon { background-color: var(--primary); }
.btn-theme.white .elementor-button:hover .elementor-button-icon { background-color: var(--white); }
.btn-theme.white .elementor-button .elementor-button-icon svg { filter: brightness(0) invert(1); }
.btn-theme.white .elementor-button:hover .elementor-button-icon svg { filter: brightness(0) invert(0); }
.btn-theme.transparent .elementor-button {
    background-color: transparent;
    color: var(--primary);
    padding: 0;
}
.btn-theme.transparent .elementor-button .elementor-button-icon {
    background-color: var(--primary);
    height: 20px;
    width: 20px;
    border-radius: var(--radius-50);
    color: var(--white);
    justify-content: center;
    font-size: 12px;
}
.btn-theme.transparent .elementor-button .elementor-button-icon svg { filter: brightness(0) invert(1); }
/* Header */
/* Sticky Header */
.header_bar.sticky {
	position: fixed!important;
	width: 100%;
	background-color: var(--white)!important;
	animation: stickyMenuAnimation 0.7s;
	box-shadow: 0 0 5px 0 #778591;
	left:0;
	right:0;
	top:0;
	z-index: 999;
}
@keyframes stickyMenuAnimation {
    from {
        top: -200px;
    }
    to {
       top: 0px;
    }
}
/* Arrow Box */
.arrow-box .elementor-icon-box-icon {
    height: 50px;
    width: 50px;
    background-color: var(--white-df);
    border: 1px solid var(--white);
    border-radius: var(--radius-50);
    display: flex;
    justify-content: center;
    align-items: center;
}
.arrow-box:hover .elementor-icon-box-icon {
    background-color: var(--green);
    border-color: var(--green); 
}
.arrow-box .elementor-icon-box-icon svg {
    filter: brightness(0) invert(0);
    transform: rotate(-45deg);
    transition: transform 0.5s;
}
.arrow-box:hover .elementor-icon-box-icon svg {
    transform: rotate(0deg);
    transition: transform 0.5s;
    filter: brightness(0) invert(1);
}
.arrow-box.light .elementor-icon-box-icon { background-color: transparent; }
.arrow-box.light .elementor-icon-box-icon svg { filter: brightness(0) invert(1); }
.arrow-box.light:hover .elementor-icon-box-icon { background-color: var(--white); border-color: var(--white); }
.arrow-box.light:hover .elementor-icon-box-icon svg { filter: brightness(0) invert(0); }
.arrow-box.white .elementor-icon-box-icon { background-color: var(--white); }
.arrow-box.white .elementor-icon-box-icon svg { filter: brightness(1) invert(0); }
.arrow-box.white:hover .elementor-icon-box-icon { background-color: var(--green); border-color: var(--green); }
.arrow-box.white:hover .elementor-icon-box-icon svg { filter: brightness(0) invert(1); }
/* Home */
/* Hero Slider */
.hero-slider .elementor-slide-description { display: contents; }
.hero-slider .btn { display: inline-block; margin-right: 15px; }
.hero-slider .elementor-button, .hero-slider .btn {
    background-color: var(--green)!important;
    color: var(--white)!important;
    border-radius: var(--radius-50);
    padding: 0 20px;
    min-height: 50px;
    line-height: 50px;
    text-decoration: none!important;
}
.hero-slider .elementor-button:hover, .hero-slider .btn:hover { background-color: var(--primary)!important; }
.hero-slider .sub-head { font-size: 20px; font-weight: 400; }
.hero-slider .swiper .elementor-swiper-button {
    background-color: #ffffff57;
    height: 40px;
    width: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}
.hero-slider .swiper .elementor-swiper-button:hover { background-color: var(--greenish);  color: var(--white); }
.hero-slider .swiper .elementor-swiper-button svg { display: none; }
.hero-slider .swiper .elementor-swiper-button:after {
    content: '';
    position: absolute;
    background-image: url('/wp-content/uploads/2025/08/Arrow-greenish.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    height: 20px;
    width: 20px;
}
.hero-slider .swiper .elementor-swiper-button:hover:after { filter: brightness(0) invert(1); }
.hero-slider .swiper .elementor-swiper-button.elementor-swiper-button-prev:after {
    transform: rotate(-180deg);
    left: 10px;
    top: 12px;
}
.hero-slider .swiper-pagination-bullets {
    display: flex;
    justify-content: center;
    padding-bottom: 12px;
	width: fit-content;
	left: 50%;
   transform: translate(-50%,0);
   -webkit-transform: translate(-50%,0);
}
/*  */
.logo-slider .swiper-wrapper{ transition-timing-function:linear !important; }
.logo-slider img { width: 130px; opacity: 0.5;}
.logo-slider .swiper-slide-inner {
    border: 1px solid var(--white-eb);
	background-color: transparent;
	padding: 5px;
}
/*  */
.circle-no { margin-bottom: 15px!important; }
.circle-no .elementor-heading-title {
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-50);
}
/* Services */
.service-box {
    background-color: var(--white-f5);
    height: 100%;
    padding: 20px;
    border-radius: var(--radius-10)
}
.service-box .elementor-image-box-img {
    width: 70px;
    height: 70px;
    background-color: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-50);
}
.service-box .elementor-image-box-img img { width: 40px; }
/* Testimonials */
.testimonials-slide .swiper-slide { background-color: #ffffff29; border-radius: var(--radius-10); }
.testimonials-slide .elementor-testimonial__text {
    font-size: 16px;
    font-weight: 400;
    order: 2;
}
.testimonials-slide .elementor-testimonial__content { display: grid; }
.testimonials-slide .elementor-testimonial__cite { order: 1; margin-bottom: 20px; }
.testimonials-slide .elementor-testimonial__image {
    background-color: var(--white);
    padding: 5px;
    border-radius: var(--radius-50);
}
.testimonials-slide .swiper-wrapper { transition-timing-function:linear !important; }
.testimonials-slide .elementor-main-swiper { width: 100%; }
/* Contact Us */
.team-slide .premium-person-image-container img { height: 300px; object-position: top; }
.team-slide .premium-person-info {
    background-color: var(--e-global-color-770add5);
    width: 85%;
    margin: -20px auto 0;
    z-index: 2;
    position: relative;
    border-radius: var(--radius-10);
}
.team-slide .premium-person-title { margin-bottom: 0 }
.team-slide .premium-person-info-container { border-bottom: 3px solid var(--greenish); border-radius: 10px; }
/* About */
.mision-box {
    background-color: var(--white-df);
    height: 100%;
    padding: 20px;
    border-radius: var(--radius-10);
    background-blend-mode: overlay;
    background-image: url('/wp-content/uploads/2025/08/green-overlay.svg');
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain
}
.mision-box.greenish { background-color: var(--greenish); }
.mision-box.sand { background-color: var(--sand); }
.mision-box .elementor-image-box-img {
    width: 70px;
    height: 70px;
    background-color: var(--white);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-50);
}
.mision-box .elementor-image-box-img img { width: 40px; }
/* Portfolio */
.port-box .port-detail {
	opacity: 0;
	transition: 0.5s ease-in-out;
	display: flex;
    align-items: end;
}
.port-box .column:hover .port-detail { opacity: 1; }
.port-box .column { min-height: 380px; }
.port-box .column:hover .arrow-box .elementor-icon-box-icon { background-color: var(--white); border-color: var(--white);  }
.port-box .column:hover .arrow-box .elementor-icon-box-icon svg {
    transform: rotate(0deg);
    transition: transform 0.5s;
    filter: brightness(1) invert(0);
}
.port-box .column .arrow-box .elementor-icon-box-icon svg { filter: brightness(1) invert(0); }
/*  */
.counter .elementor-counter-title { text-align: center; }
