/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


/* Top-level active menu only */
.w-nav-list.level_1 > .w-nav-item.current-menu-item > .w-nav-anchor > .w-nav-title,
.w-nav-list.level_1 > .w-nav-item.current_page_item > .w-nav-anchor > .w-nav-title {
    border-bottom: 3px solid #e91e63;
    padding-bottom: 6px;
}

.l-subheader-h, body.page-id-19416 .l-section-h{
	max-width:1400px !important;
}
body.page-id-19416 .e-con>.e-con-inner{
	max-width:1300px !important;
}
.w-html.ush_html_1 a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

.w-html.ush_html_1 i {
    color: #7AC943; /* Green */
    font-size: 24px;
}

.w-html.ush_html_1 span {
    color: #7AC943;
    font-size: 14px;
	width: 45px;
}

.elementor-element .swiper .swiper-pagination-bullets.swiper-pagination-horizontal{
	bottom:30px;
}

.green-notice a{
	color:#8dc63f;
}

.green-notice a:hover{
	color:#D4235D;
}

.quick-links .elementor-button{
	text-align:left;
}

/* Quick Links Cards */
.quick-links > .e-con {
    transition: all .35s ease;
    position: relative;
    overflow: visible;
}

/* Glow Effect */
.quick-links > .e-con:hover {
    transform: translateY(-6px);
    box-shadow:
        0 0 0 1px rgba(93, 185, 70, .15),
        0 0 18px rgba(93, 185, 70, .25),
        0 0 40px rgba(93, 185, 70, .18),
        0 20px 40px rgba(0,0,0,.12);
}

.elementor-repeater-item-8a13781 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-d369352 .swiper-slide-inner .swiper-slide-contents .elementor-button,.elementor-repeater-item-533ee48 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-7eeb8c0 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-7dd7385 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-1037c2a .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-16c27c1 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-590bf98 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-0e18647 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-7d9e015 .swiper-slide-inner .swiper-slide-contents .elementor-button{
	color: #fff !important;
}
.w-nav.type_desktop .w-nav-anchor.level_1 {
    padding: 0 20px 0 20px !important;
}

/**.elementor-repeater-item-d369352 .swiper-slide-inner .swiper-slide-contents .elementor-button,.elementor-repeater-item-533ee48 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-7eeb8c0 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-7dd7385 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-1037c2a .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-16c27c1 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-590bf98 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-0e18647 .swiper-slide-inner .swiper-slide-contents .elementor-button, .elementor-repeater-item-7d9e015 .swiper-slide-inner .swiper-slide-contents .elementor-button {
	background: transparent !important;
	border: 2px solid;
}**/
.hero-images .elementor-swiper-button{
    width:60px;
    height:60px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;
    background:#fff;

    box-shadow:0 10px 30px rgba(0,0,0,.15);
    transition:
        background .3s ease,
        box-shadow .3s ease;
}

.hero-images .elementor-swiper-button svg{
    width:18px;
    height:18px;
}

.hero-images .elementor-swiper-button svg,
.hero-images .elementor-swiper-button svg path{
    fill:#C8105E;
    transition:fill .3s ease;
}

/* Hover */
.hero-images .elementor-swiper-button:hover{
    background:#C8105E;
    box-shadow:
        0 0 0 4px rgba(200,16,94,.15),
        0 0 20px rgba(200,16,94,.45),
        0 0 40px rgba(200,16,94,.25);
}

.hero-images .elementor-swiper-button:hover svg,
.hero-images .elementor-swiper-button:hover svg path{
    fill:#fff !important;
}

.highlight-sec h6{
	margin-bottom:10px;
}

.woocommerce-product-gallery__image{
	display: flex !important;
    justify-content: center;
}

/*** FOOTER ***/

/* ==================================================
   Shared Styles
================================================== */

/* Lists */
#menu-header-menu-2,
.footer-links-services ul,
.footer--contact ul{
    list-style:none;
    margin:0;
    padding:0;
}

/* White links */
#menu-header-menu-2 li a,
.footer-links-services a,
.footer--credits a, .footer--contact--content span,
.footer--contact--content a, .footer--contact--icon i,
.footer--credits, span.wpcf7-not-valid-tip, .wpcf7 form .wpcf7-response-output{
    color:#fff;
    text-decoration:none;
    transition:all .3s ease;
}

/* Default body text */
.footer-newsletter-text p,
.footer-description,
.footer--contact--content span,
.footer--contact--content a,
#menu-header-menu-2 li a{
    font-size:15px !important;
    line-height:1.6;
}

/* Column layouts */
.badge-content,
.footer--contact--content{
    display:flex;
    flex-direction:column;
}

/* ==================================================
   Row 1
================================================== */

.footer-newsletter-info{
    display:flex;
    align-items:center;
    gap:18px;
}

.footer-newsletter-icon{
    width:58px;
    height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;

    border:2px solid rgba(255,255,255,.25);
    border-radius:50%;
    background:rgba(255,255,255,.08);
	
	animation: footerPulse 2s infinite ease-in-out;
}

@keyframes footerPulse{
    0%{
        transform:scale(1);
        box-shadow:0 0 0 0 rgba(255,255,255,.35);
    }

    50%{
        transform:scale(1.08);
        box-shadow:0 0 18px 4px rgba(255,255,255,.45);
    }

    100%{
        transform:scale(1);
        box-shadow:0 0 0 0 rgba(255,255,255,0);
    }
}

.footer-newsletter-icon i{
    color:#fff;
    font-size:22px;
}

.footer-newsletter-text h4{
    margin:0 0 6px;
    color:#fff;
    font-size:24px;
    font-weight:600;
    line-height:1.2;
}

.footer-newsletter-text p{
    margin:0;
    color:rgba(255,255,255,.9);
}

/* Newsletter */

.newsletter-form p{
    display:flex;
    margin:0;
	justify-content: center;
}

.newsletter--form .wpcf7-form-control-wrap{
    flex:1;
}

.newsletter-form .newsletter-input,
.newsletter-form .newsletter-btn{
    height:58px;
    box-sizing:border-box;
}

.newsletter-form .newsletter-input{
    width:100%;
    margin-top:0!important;
    border:none;
    border-radius:10px 0 0 10px;
}

.newsletter-form .newsletter-btn{
    flex:0 0 150px;
    margin:0!important;
    border:none;
    border-radius:0 10px 10px 0!important;
    line-height:58px;
    background:#6c9f30!important;
}

.newsletter-form .wpcf7-spinner{
    display:none;
}

/* Social */

.footer--social--links{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:16px;
    height:100%;
}

.footer--social--links a{
    width:46px;
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:2px solid rgba(255,255,255,.25);
    border-radius:50%;

    background:#fff;
    color:#C8105E;

    transition:all .3s ease;
}

.footer--social--links a:hover{
    transform:translateY(-3px);
}

.footer--social--links i{
    font-size:20px;
}

/* ==================================================
   Row 3 Column 1
================================================== */

.footer-company{
    max-width:420px;
}

.footer-logo{
    display:inline-block;
    margin-bottom:24px;
}

.footer-logo img{
    width:220px;
    display:block;
}

.footer-description{
    margin:0 0 30px;
    color:rgba(255,255,255,.85);
    line-height:1.8;
}

.footer-accreditations{
    display:flex;
    justify-content:space-between;
    gap:24px;
}

.footer-badge{
    display:flex;
    gap:12px;
    flex:1;
}

.footer-badge img{
    width: 58px;
    height: 40px;
    background: #FFF;
	border-radius:8px;
    object-fit:contain;
}

.badge-content h5{
    margin:0;
    color:#fff;
    font-size:14px;
}

.badge-content p{
    margin:4px 0 0;
    color:rgba(255,255,255,.75);
    font-size:12px;
    line-height:1.5;
}

/* ==================================================
   Row 3 Column 2
================================================== */

#menu-header-menu-2 li{
    margin-bottom:14px;
}

#menu-header-menu-2 li a{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

#menu-header-menu-2 li a::after{
    content:"";
    width:6px;
    height:6px;
    margin-left:15px;

    border-top:2px solid #78B943;
    border-right:2px solid #78B943;

    transform:rotate(45deg);
    transition:transform .3s ease;
}

#menu-header-menu-2 li a:hover{
    color:#78B943;
    transform:translateX(6px);
}

#menu-header-menu-2 li a:hover::after{
    transform:translateX(3px) rotate(45deg);
}

/* ==================================================
   Row 3 Column 3
================================================== */

.footer-links-services li{
    margin-bottom:12px;
}

.footer-links-services a{
    font-size:15px;
}

.footer-links-services a:hover{
    color:#78B943;
    padding-left:6px;
}

/* ==================================================
   Row 3 Column 4
================================================== */
.footer--contact ul{
    list-style:none;
    margin:0;
    padding:0;
}

.footer--contact li{
    display:flex;
    align-items:flex-start; /* Align icon with top of content */
    gap:16px;
    margin-bottom:22px;
}

.footer--contact--icon{
    flex:0 0 42px; /* Prevent shrinking */
    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#78B943;
}

.footer--contact--content{
    flex:1;
    min-width:0; /* Allows text to wrap correctly */
}

.footer--contact--content strong{
    display:block;
    color:#fff;
    font-size:15px;
    margin-bottom:4px;
}

.footer--contact--content a,
.footer--contact--content span{
    display:block;
    line-height:1.5;
    word-break:break-word; /* Long email won't overflow */
}

.footer--contact--content a:hover{
    color:#78B943;
}

/* ==================================================
   Row 4
================================================== */

.footer--credits{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;

    padding:20px 0;

    font-size:15px;
}

.footer-divider{
    color:rgba(255,255,255,.35);
    font-size:16px;
}

.footer--credits a:hover{
    color:#78B943;
}


@media (max-width: 1024px) {
	h1{
		font-size: 37px !important;
	}
	h2{
		font-size: 35px !important;
	}
	h3{
		font-size: 33px !important;
	}
	h4, .feedback-form-icon h4 a{
		font-size: 30px !important;
	}
	h5{
		font-size: 29px !important;
	}
	h6{
		font-size: 28px !important;
	}
    .red-banner h1{
        font-size: 36px !important;
		line-height: 41px !important;
    }
    
    .red-banner{
        margin-top:0 !important;
        margin-bottom:0 !important;
    }

    .remove-on-mobile{
		display:none !important;
	}

    .elementor-slides .swiper-slide-inner .elementor-slide-heading {
        font-size: 23px!important;
	}
	.elementor-slides .swiper-slide-inner .swiper-slide-contents .elementor-button{
		font-size: 18px!important;
	}
	.elementor-19416 .elementor-element.elementor-element-76bcc21 .elementor-heading-title {
	    font-size: 28px;
		line-height: 36px;
	}

	.elementor-19416 .elementor-element.elementor-element-76bcc21 .elementor-heading-title {
	    font-size: 33px;
	}
	.w-nav.type_desktop .w-nav-anchor.level_1 {
		padding: 0 6px 0 6px !important;
		font-size: 16px;
	}
	
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-8a13781 .swiper-slide-bg, .elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-533ee48 .swiper-slide-bg, .elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-1037c2a .swiper-slide-bg{
	    background-position: 60% !important;
	}
	
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-7d9e015 .swiper-slide-bg{
		background-position: 70%!important;
	}


    
    .footer--gen .g-cols.via_flex{
        flex-direction: column !important;
        gap: 20px !important;
    }
    .footer--gen .g-cols.via_flex .vc_col-sm-3, .footer--gen .g-cols.via_flex .vc_col-sm-6 {
        width: 100%;
    }
    .footer-newsletter-info{
        justify-content: center;
    }
	#third--row .wpb_wrapper .stacking_default{
	  display: grid; /* Enables grid layout */
	  grid-template-columns: repeat(2, 1fr); /* Creates 2 equal columns */
	  grid-template-rows: repeat(2, 1fr); /* Creates 2 equal rows */
	  gap: 10px; /* Optional: Adds spacing between the boxes */
	}
	
    /**#third--row .g-cols.via_flex .vc_col-sm-3 {
        max-width: 520px;
        display: flex;
        flex-direction: column;
        width: 520px;
        margin: 0 auto;
    }**/
    
}

@media (max-width: 767px) {
	.remove-on-mobile-only{
		display:none
	}
	.feedback-section{
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}


    .footer-company, #third--row .g-cols.via_flex .vc_col-sm-3 {
        max-width: 100%;
        width: 100%;
    }
}

@media (max-width: 500px) {
	h1{
		font-size: 28px !important;
        line-height: 37px !important;
	}
	h2{
		font-size: 27px !important;
        line-height: 34px !important;
	}
	h3{
		font-size: 24px !important;
        line-height: 30px !important;
	}
    h4{
        line-height: 26px !important;
    }
	h4, .feedback-form-icon h4 a{
		font-size: 23px !important;
	}
	h5{
		font-size: 21px !important;
        line-height: 24px !important; 
	}
	h6{
		font-size: 18px !important;
        line-height: 22px !important;
	}
    .red-banner h1 {
        font-size: 26px !important;
    }
	
    .hero-images .elementor-slides .swiper-slide-inner{
        align-content: flex-start;
        flex-wrap: wrap;
        margin-top: 40px;
    }

	.elementor-element{
		margin-top:5px !important;
	}
	
	.elementor-slides .swiper-slide-inner .elementor-slide-description:not(:last-child), .elementor-slides .swiper-slide-inner .elementor-slide-heading:not(:last-child) {
		margin-bottom: 15px;
	}
	.elementor-slides .swiper-slide-inner .swiper-slide-contents .elementor-button {
        font-size: 15px !important;
    }
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-7d9e015 .swiper-slide-bg{
		background-position: 75% !important;
	}
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-0e18647 .swiper-slide-bg, .elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-1037c2a .swiper-slide-bg {
		background-position: 70% !important;
	}
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-d369352 .swiper-slide-bg, .elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-16c27c1 .swiper-slide-bg, .elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-590bf98 .swiper-slide-bg {
        background-position: 65% !important;
    }
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-7eeb8c0 .swiper-slide-bg{
		background-position: 60% !important;
	}
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-0e18647 .swiper-slide-bg{
		background-position: 45% !important;
	}
	.elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-533ee48 .swiper-slide-bg, .elementor-19416 .elementor-element.elementor-element-491d6b3e .elementor-repeater-item-7dd7385 .swiper-slide-bg{
		background-position: 40% !important;
	}

	.footer-logo img {
		width: 170px;
	}
	.footer-company {
		text-align:center;
		margin: 0 auto;
        display:block;
	}
	.newsletter-form .newsletter-input, .newsletter-form .newsletter-btn {
		height: 48px;align-content
	}
	.footer-logo{
	    margin-bottom: 0;
	}
	#third--row .wpb_wrapper .stacking_default{
	  display: block;
	}
	
    .footer-company, #third--row .g-cols.via_flex .vc_col-sm-3 {
        
        display: flex;
        flex-direction: column;
        margin: 0 auto;
    }
}