.elementor-357 .elementor-element.elementor-element-c5a119c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-357 .elementor-element.elementor-element-d03fbce > .elementor-widget-container{margin:0px 0px 50px 0px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-b2389f4 */.image-wrapper{

position:relative;

overflow:hidden;

border-radius:35px;

}

.image-wrapper img{

width:100%;

height:620px;

object-fit:cover;

display:block;

}

/* Premium Glass Card */

.floating-content{

position:absolute;

left:30px;

bottom:30px;

max-width:320px;

padding:30px;

background:rgba(255,255,255,.18);

backdrop-filter:blur(18px);

-webkit-backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.25);

border-radius:25px;

color:#fff;

box-shadow:0 25px 60px rgba(0,0,0,.20);

transition:.4s;

}

.image-wrapper:hover .floating-content{

transform:translateY(-10px);

}

.floating-content span{

display:inline-block;

padding:6px 14px;

background:#2E7D32;

border-radius:30px;

font-size:11px;

letter-spacing:2px;

font-weight:700;

margin-bottom:15px;

}

.floating-content h3{

font-size:28px;

line-height:1.3;

margin-bottom:15px;

font-weight:700;

}

.floating-content p{

font-size:15px;

line-height:1.8;

margin-bottom:22px;

color:rgba(255,255,255,.92);

}

.floating-content a{

display:inline-flex;

align-items:center;

gap:8px;

padding:14px 24px;

background:#fff;

color:#2E7D32;

text-decoration:none;

border-radius:40px;

font-weight:600;

transition:.35s;

}

.floating-content a:hover{

background:#2E7D32;

color:#fff;

}

/* Mobile */

@media(max-width:767px){

.image-wrapper img{

height:420px;

}

.floating-content{

left:15px;

right:15px;

bottom:15px;

max-width:100%;

padding:22px;

}

.floating-content h3{

font-size:22px;

}

.floating-content p{

font-size:14px;

}

}

/* ===========================
   Laptop
=========================== */

@media (max-width:1200px){

.image-wrapper img{

    height:560px;

}

.floating-content{

    left:25px;

    right:25px;

    bottom:25px;

    max-width:300px;

    padding:25px;

}

.floating-content h3{

    font-size:26px;

}

}


/* ===========================
   Tablet
=========================== */

@media (max-width:991px){

.image-wrapper{

    border-radius:28px;

}

.image-wrapper img{

    height:500px;

}

.floating-content{

    left:20px;

    right:20px;

    bottom:20px;

    max-width:320px;

    padding:22px;

}

.floating-content span{

    font-size:10px;

}

.floating-content h3{

    font-size:24px;

    line-height:1.3;

}

.floating-content p{

    font-size:14px;

    line-height:1.7;

}

.floating-content a{

    padding:12px 22px;

    font-size:14px;

}

}


/* ===========================
   Mobile
=========================== */

@media (max-width:767px){

.image-wrapper{

    border-radius:22px;

}

.image-wrapper img{

    height:420px;

}

.floating-content{

    left:15px;

    right:15px;

    bottom:15px;

    max-width:100%;

    padding:20px;

    border-radius:18px;

}

.floating-content span{

    font-size:9px;

    padding:6px 12px;

}

.floating-content h3{

    font-size:20px;

    line-height:1.3;

    margin-bottom:10px;

}

.floating-content p{

    font-size:13px;

    line-height:1.6;

    margin-bottom:18px;

}

.floating-content a{

    width:100%;

    justify-content:center;

    padding:14px;

    font-size:14px;

}

}


/* ===========================
   Small Mobile
=========================== */

@media (max-width:480px){

.image-wrapper{

    border-radius:18px;

}

.image-wrapper img{

    height:340px;

}

.floating-content{

    left:10px;

    right:10px;

    bottom:10px;

    padding:16px;

}

.floating-content h3{

    font-size:18px;

}

.floating-content p{

    font-size:12px;

}

.floating-content a{

    font-size:13px;

    padding:12px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ec79293 */.contact-section{

display:grid;

grid-template-columns:60% 40%;

gap:40px;

padding:120px 8%;

background:#F8FCF9;

}

.contact-form-box{

background:#fff;

padding:50px;

border-radius:30px;

box-shadow:0 20px 50px rgba(0,0,0,.06);

}

.contact-small-title{

display:inline-block;

padding:8px 20px;

background:#EAF8EC;

color:#2E7D32;

border-radius:40px;

font-size:13px;

font-weight:700;

letter-spacing:2px;

margin-bottom:20px;

}

.contact-form-box h2{

font-size:44px;

margin-bottom:15px;

}

.contact-form-box p{

color:#666;

line-height:1.8;

margin-bottom:35px;

}

.contact-form-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

}

.contact-form-grid input,

.contact-form-grid textarea{

width:100%;

padding:18px 20px;

border:1px solid #E3ECE5;

border-radius:15px;

font-size:15px;

outline:none;

transition:.3s;

}

.contact-form-grid input:focus,

.contact-form-grid textarea:focus{

border-color:#2E7D32;

box-shadow:0 0 0 4px rgba(46,125,50,.08);

}

.contact-form-grid textarea{

grid-column:1/3;

height:160px;

resize:none;

}

.contact-form-grid button{

grid-column:1/3;

padding:18px;

background:#2E7D32;

color:#fff;

border:none;

border-radius:15px;

font-size:16px;

font-weight:600;

cursor:pointer;

transition:.35s;

}

.contact-form-grid button:hover{

transform:translateY(-5px);

background:#1B5E20;

}

.contact-info-box{

display:flex;

flex-direction:column;

gap:20px;

}

.info-card{

display:flex;

gap:20px;

padding:28px;

background:#fff;

border-radius:22px;

box-shadow:0 12px 30px rgba(0,0,0,.05);

transition:.35s;

}

.info-card:hover{

transform:translateX(10px);

}

.icon{

width:65px;

height:65px;

background:#2E7D32;

color:#fff;

display:flex;

justify-content:center;

align-items:center;

border-radius:18px;

font-size:28px;

flex-shrink:0;

}

.info-card h4{

margin-bottom:8px;

font-size:20px;

}

.info-card p{

color:#666;

line-height:1.7;

}
/* ===========================
   Laptop
=========================== */

@media (max-width:1200px){

.contact-section{

    grid-template-columns:55% 45%;

    gap:30px;

    padding:90px 40px;

}

.contact-form-box{

    padding:40px;

}

.contact-form-box h2{

    font-size:38px;

}

.info-card{

    padding:24px;

}

}


/* ===========================
   Tablet
=========================== */

@media (max-width:991px){

.contact-section{

    grid-template-columns:1fr;

    gap:40px;

    padding:80px 30px;

}

.contact-form-box{

    padding:35px;

}

.contact-form-box h2{

    font-size:34px;

}

.contact-form-box p{

    font-size:15px;

}

.contact-form-grid{

    grid-template-columns:1fr;

    gap:16px;

}

.contact-form-grid textarea,

.contact-form-grid button{

    grid-column:1;

}

.contact-info-box{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}

.info-card{

    padding:24px;

}

}


/* ===========================
   Mobile
=========================== */

@media (max-width:767px){

.contact-section{

    display:block;

    padding:60px 20px;

}

.contact-form-box{

    padding:25px;

    border-radius:20px;

    margin-bottom:30px;

}

.contact-small-title{

    font-size:11px;

    padding:7px 16px;

}

.contact-form-box h2{

    font-size:28px;

    line-height:1.3;

}

.contact-form-box p{

    font-size:14px;

    margin-bottom:25px;

}

.contact-form-grid{

    display:grid;

    grid-template-columns:1fr;

    gap:15px;

}

.contact-form-grid input,

.contact-form-grid textarea{

    padding:16px;

    font-size:14px;

}

.contact-form-grid textarea{

    height:140px;

}

.contact-form-grid button{

    width:100%;

    padding:16px;

    font-size:15px;

}

.contact-info-box{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.info-card{

    gap:15px;

    padding:20px;

    border-radius:18px;

}

.info-card:hover{

    transform:none;

}

.icon{

    width:55px;

    height:55px;

    font-size:22px;

    border-radius:15px;

}

.info-card h4{

    font-size:18px;

}

.info-card p{

    font-size:14px;

}

}


/* ===========================
   Small Mobile
=========================== */

@media (max-width:480px){

.contact-section{

    padding:50px 15px;

}

.contact-form-box{

    padding:20px;

}

.contact-form-box h2{

    font-size:24px;

}

.icon{

    width:48px;

    height:48px;

    font-size:20px;

}

.info-card{

    padding:18px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d03fbce */.faq-section{

display:grid;

grid-template-columns:40% 60%;

gap:60px;

padding:120px 8%;

background:#fff;

align-items:start;

}

.faq-tag{

display:inline-block;

padding:10px 22px;

background:#EAF8EC;

color:#2E7D32;

border-radius:40px;

font-size:13px;

font-weight:700;

letter-spacing:2px;

margin-bottom:20px;

}

.faq-left h2{

font-size:48px;

margin-bottom:20px;

color:#222;

}

.faq-left p{

font-size:17px;

line-height:1.8;

color:#666;

}

.faq-right details{

background:#F9FCFA;

border:1px solid #E4EFE6;

border-radius:20px;

margin-bottom:18px;

padding:22px 25px;

transition:.3s;

}

.faq-right details:hover{

box-shadow:0 12px 30px rgba(46,125,50,.08);

}

.faq-right summary{

font-size:18px;

font-weight:600;

cursor:pointer;

list-style:none;

position:relative;

padding-right:30px;

}

.faq-right summary::-webkit-details-marker{

display:none;

}

.faq-right summary::after{

content:"+";

position:absolute;

right:0;

top:0;

font-size:24px;

color:#2E7D32;

transition:.3s;

}

details[open] summary::after{

content:"−";

}

.faq-right p{

margin-top:18px;

color:#666;

line-height:1.8;

}

/* ===========================
   Laptop
=========================== */

@media (max-width:1200px){

.faq-section{

    grid-template-columns:45% 55%;

    gap:40px;

    padding:90px 40px;

}

.faq-left h2{

    font-size:40px;

}

.faq-left p{

    font-size:16px;

}

}


/* ===========================
   Tablet
=========================== */

@media (max-width:991px){

.faq-section{

    grid-template-columns:1fr;

    gap:40px;

    padding:80px 30px;

}

.faq-left{

    text-align:center;

}

.faq-left h2{

    font-size:36px;

}

.faq-left p{

    font-size:16px;

    max-width:700px;

    margin:auto;

}

.faq-right details{

    padding:20px;

}

.faq-right summary{

    font-size:17px;

}

}


/* ===========================
   Mobile
=========================== */

@media (max-width:767px){

.faq-section{

    display:block;

    padding:60px 20px;

}

.faq-left{

    text-align:left;

    margin-bottom:35px;

}

.faq-tag{

    font-size:11px;

    padding:8px 18px;

}

.faq-left h2{

    font-size:30px;

    line-height:1.3;

}

.faq-left p{

    font-size:15px;

    line-height:1.8;

}

.faq-right details{

    padding:18px;

    border-radius:16px;

    margin-bottom:15px;

}

.faq-right summary{

    font-size:16px;

    line-height:1.5;

    padding-right:35px;

}

.faq-right summary::after{

    font-size:22px;

    right:5px;

}

.faq-right p{

    font-size:14px;

    line-height:1.8;

    margin-top:15px;

}

}


/* ===========================
   Small Mobile
=========================== */

@media (max-width:480px){

.faq-section{

    padding:50px 15px;

}

.faq-left h2{

    font-size:26px;

}

.faq-right details{

    padding:16px;

}

.faq-right summary{

    font-size:15px;

}

.faq-right p{

    font-size:13px;

}

}/* End custom CSS */