/* Start custom CSS for html, class: .elementor-element-fb858ea *//* =========================
   PREMIUM COLOR IMPROVEMENTS
   REPLACE OLD CSS WITH THIS
========================= */

/* MAIN FOOTER TEXT */
.nimosh-footer{
  color:#ffffff;
}

/* BRAND TITLE */
.brand-title{
  color:#ffffff;
  text-shadow:0 2px 10px rgba(255,255,255,.08);
}

/* SMALL TAGLINE */
.brand-sub{
  color:#ffe082;
  font-weight:600;
  letter-spacing:4px;
}

/* DESCRIPTION TEXT */
.brand-desc{
  color:#f4fff8;
  font-weight:400;
}

/* SECTION HEADINGS */
.footer-col h3{
  color:#ffffff;
  font-size:26px;
  font-weight:700;
  text-shadow:0 2px 12px rgba(255,255,255,.08);
}

/* YELLOW LINE BELOW HEADINGS */
.line{
  background:linear-gradient(to right,#ffd54f,transparent);
  height:3px;
}

/* MENU LINKS */
.footer-col ul li a{
  color:#ffffff;
  font-weight:500;
}

.footer-col ul li a:hover{
  color:#ffe082;
}

/* ARROW */
.footer-col ul li a span{
  color:#ffd54f;
}

/* CONTACT BOX */
.contact-text strong{
  color:#ffe082;
  font-size:15px;
  font-weight:700;
}

.contact-text span{
  color:#ffffff;
  font-size:16px;
}

/* ICONS */
.contact-icon{
  background:rgba(255,255,255,.09);
  color:#ffd54f;
  border:1px solid rgba(255,255,255,.08);
}

/* NEWSLETTER */
.newsletter p{
  color:#ffe082;
  font-size:17px;
}

.news-row{
  border:1px solid rgba(255,255,255,.14);
}

.news-row input{
  color:#ffffff;
  background:rgba(255,255,255,.08);
}

.news-row input::placeholder{
  color:#f1f1f1;
}

.news-row button{
  background:#ffd54f;
  color:#0a3d1f;
  font-weight:700;
}

.news-row button:hover{
  background:#ffca28;
}

/* SOCIALS */
.socials a{
  color:#ffffff;
  border:1px solid rgba(255,255,255,.18);
}

.socials a:hover{
  background:#ffd54f;
  color:#0a3d1f;
}

/* BOTTOM TEXT */
.footer-bottom p{
  color:#ffffff;
}

.footer-links a{
  color:#ffffff;
}

.footer-links a:hover{
  color:#ffe082;
}

/* =========================
   MOBILE RESPONSIVE
========================= */

@media(max-width:991px){

  .footer-container{
    grid-template-columns:1fr 1fr;
    gap:40px;
    padding:60px 25px 40px;
  }

  .brand-title{
    font-size:30px;
  }

}

@media(max-width:768px){

  .wave-wrapper svg{
    height:90px;
  }

  .footer-container{
    grid-template-columns:1fr;
    gap:35px;
    padding:50px 20px 35px;
  }

  .brand-logo{
    flex-direction:column;
    align-items:flex-start;
    gap:15px;
  }

  .brand-logo img{
    width:85px;
    height:85px;
  }

  .brand-title{
    font-size:28px;
  }

  .brand-desc{
    max-width:100%;
    font-size:16px;
    line-height:1.8;
  }

  .footer-col h3{
    font-size:24px;
  }

  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:16px;
    padding:20px;
  }

  .footer-links{
    gap:14px;
  }

  .news-row{
    flex-direction:column;
  }

  .news-row input{
    width:100%;
  }

  .news-row button{
    width:100%;
    padding:14px;
  }

}

@media(max-width:480px){

  .footer-container{
    padding:45px 16px 30px;
  }

  .brand-title{
    font-size:24px;
    line-height:1.3;
  }

  .brand-sub{
    font-size:11px;
    letter-spacing:3px;
  }

  .footer-col h3{
    font-size:22px;
  }

  .footer-col ul li a{
    font-size:16px;
  }

  .contact-text span{
    font-size:15px;
  }

  .footer-bottom p{
    font-size:14px;
    line-height:1.7;
  }

  .footer-links a{
    font-size:13px;
  }

}
/* ===== MOBILE OVERFLOW FIX ===== */
html, body{
    overflow-x:hidden !important;
    width:100%;
    margin:0;
    padding:0;
}

/* ===== ELEMENTOR HTML WIDGET FIX ===== */
.elementor-widget-html{
    width:100%;
    overflow:hidden;
}

.elementor-widget-html *{
    max-width:100%;
    box-sizing:border-box;
}

/* ===== SECTION STRUCTURE FIX ===== */
.elementor-section{
    position:relative;
    z-index:2;
}

.elementor-container{
    width:100% !important;
    max-width:1280px;
    margin:auto;
}

/* ===== FOOTER FIX ===== */
footer,
.site-footer,
.elementor-location-footer{
    position:relative !important;
    z-index:5;
    width:100%;
    clear:both;
}

/* ===== REMOVE EXTRA MOBILE SPACING ===== */
@media(max-width:768px){

    .elementor-section{
        padding-left:15px !important;
        padding-right:15px !important;
    }

    .elementor-widget-html img{
        max-width:100% !important;
        height:auto !important;
        display:block;
    }

    footer,
    .site-footer,
    .elementor-location-footer{
        margin-top:30px !important;
    }
}/* End custom CSS */