@font-face {
  font-family: 'icomoon';
  src: url('fonts/icomoon.eot?orkqwr');
  src: url('fonts/icomoon.eot?orkqwr#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?orkqwr') format('truetype'),
    url('fonts/icomoon.woff?orkqwr') format('woff'),
    url('fonts/icomoon.svg?orkqwr#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}







.icon-email:before {
  content: "\e900";
}

.icon-pin:before {
  content: "\e901";
}

.icon-phone-call:before {
  content: "\e902";
}

.icon-twitter:before {
  content: "\e903";
}

.icon-facebook-app-symbol:before {
  content: "\e904";
}

.icon-google-plus-logo:before {
  content: "\e905";
}

.icon-pinterest:before {
  content: "\e906";
}

.icon-rss:before {
  content: "\e907";
}

.icon-right-arrow:before {
  content: "\e908";
}

.icon-left-arrow:before {
  content: "\e909";
}

.icon-plus:before {
  content: "\e90a";
}

.icon-search:before {
  content: "\e90b";
}

.icon-shopping-cart:before {
  content: "\e90c";
}

.icon-menu:before {
  content: "\e90d";
}

.icon-office-cleaning:before {
  content: "\e90e";
}

.icon-sofa:before {
  content: "\e90f";
}

.icon-housekeeper:before {
  content: "\e910";
}

.icon-shower:before {
  content: "\e911";
}

.icon-clean-house:before {
  content: "\e912";
}

.icon-cleaning:before {
  content: "\e913";
}

.icon-pipeline:before {
  content: "\e914";
}

.icon-laundry:before {
  content: "\e915";
}

.icon-sanitary:before {
  content: "\e916";
}

.icon-share:before {
  content: "\e917";
}

.icon-linkedin:before {
  content: "\e918";
}

.icon-dribble:before {
  content: "\e919";
}

.icon-hand:before {
  content: "\e91a";
}

.icon-employee:before {
  content: "\e91b";
}

.icon-rating:before {
  content: "\e91c";
}

.icon-completed-task:before {
  content: "\e91d";
}

.icon-conversation:before {
  content: "\e91e";
}

.icon-envelope:before {
  content: "\e91f";
}

.icon-link:before {
  content: "\e920";
}

.icon-paper-plane:before {
  content: "\e921";
}

.icon-telephone:before {
  content: "\e922";
}

.icon-mail:before {
  content: "\e923";
}

.icon-location .path1:before {
  content: "\e924";
  color: rgb(255, 255, 255);
}

.icon-location .path2:before {
  content: "\e925";
  margin-left: -1em;
  color: rgb(0, 0, 0);
}

.icon-location .path3:before {
  content: "\e926";
  margin-left: -1em;
  color: rgb(255, 255, 255);
}

.icon-location .path4:before {
  content: "\e927";
  margin-left: -1em;
  color: rgb(255, 255, 255);
}

.icon-location .path5:before {
  content: "\e928";
  margin-left: -1em;
  color: rgb(0, 0, 0);
}

.icon-remove:before {
  content: "\e929";
}

.icon-love:before {
  content: "\e92a";
}

.icon-photo:before {
  content: "\e92b";
}

.icon-pin-1:before {
  content: "\e92c";
}

.icon-email-1:before {
  content: "\e92d";
}

.icon-phone-call-1:before {
  content: "\e92e";
}

.icon-arrow-right:before {
  content: "\e92f";
}

.icon-scientist:before {
  content: "\e930";
}

.icon-confirmation:before {
  content: "\e931";
}

.icon-basket:before {
  content: "\e932";
}

.icon-trust:before {
  content: "\e933";
}

.icon-button:before {
  content: "\e934";
}

.icon-down:before {
  content: "\e935";
}

.icon-arrow:before {
  content: "\e936";
}

.icon-up-right-arrow:before {
  content: "\e937";
}

.icon-down-right:before {
  content: "\e938";
}

.icon-quote:before {
  content: "\e939";
}

.icon-star:before {
  content: "\e93a";
}

.icon-star-1:before {
  content: "\e93b";
}

.icon-dribble-1:before {
  content: "\e93c";
}

.icon-facebook:before {
  content: "\e93d";
}

.icon-check:before {
  content: "\e93e";
}

.icon-analysis:before {
  content: "\e93f";
}

.icon-team:before {
  content: "\e940";
}

.icon-avatar:before {
  content: "\e941";
}

.icon-open-mail:before {
  content: "\e942";
}

.icon-cloud-download:before {
  content: "\e943";
}

.icon-pdf:before {
  content: "\e944";
}

.icon-tick:before {
  content: "\e945";
}

.icon-email-2:before {
  content: "\e946";
}

.icon-placeholder:before {
  content: "\e947";
}

.icon-phone-call-2:before {
  content: "\e948";
}

.icon-trophy:before {
  content: "\e949";
}




/* ============================================
   RESPONSIVE LOGO SIZE - START
   ============================================ */

/* Default logo size */
.main-menu__logo img,
.footer-widget__logo img,
.logo img,
.mobile-nav__content .logo-box img {
    max-width: 100px;
    height: auto;
    width: 100%;
}

/* Large screens (1200px and up) */
@media (min-width: 1200px) {
    .main-menu__logo img {
        max-width: 100px;
    }
}

/* Desktop (992px - 1199px) */
@media (max-width: 1199px) and (min-width: 992px) {
    .main-menu__logo img {
        max-width: 85px;
    }
}

/* Tablet (768px - 991px) */
@media (max-width: 991px) and (min-width: 768px) {
    .main-menu__logo img {
        max-width: 75px;
    }
    
    .footer-widget__logo img {
        max-width: 90px;
    }
    
    .logo img {
        max-width: 80px;
    }
}

/* Mobile Large (576px - 767px) */
@media (max-width: 767px) and (min-width: 576px) {
    .main-menu__logo img {
        max-width: 60px;
    }
    
    .footer-widget__logo img {
        max-width: 75px;
    }
    
    .logo img {
        max-width: 65px;
    }
    
    .mobile-nav__content .logo-box img {
        max-width: 75px;
    }
}

/* Mobile Small (up to 575px) */
@media (max-width: 575px) {
    .main-menu__logo img {
        max-width: 50px;
    }
    
    .footer-widget__logo img {
        max-width: 65px;
    }
    
    .logo img {
        max-width: 55px;
    }
    
    .mobile-nav__content .logo-box img {
        max-width: 65px;
    }
}

/* Extra Small Devices (up to 400px) */
@media (max-width: 400px) {
    .main-menu__logo img {
        max-width: 40px;
    }
    
    .footer-widget__logo img {
        max-width: 55px;
    }
    
    .logo img {
        max-width: 45px;
    }
    
    .mobile-nav__content .logo-box img {
        max-width: 55px;
    }
}

/* Fix for header logo container */
.main-menu__logo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-menu__logo a {
    display: inline-block;
    line-height: 1;
}

/* Fix for footer logo */
.footer-widget__logo a {
    display: inline-block;
}

.footer-widget__logo img {
    display: block;
}

/* Fix for sidebar logo */
.logo a {
    display: inline-block;
}

.logo img {
    display: block;
}

/* Fix for mobile nav logo */
.mobile-nav__content .logo-box {
    text-align: center;
    padding: 15px 0;
}

.mobile-nav__content .logo-box a {
    display: inline-block;
}

.mobile-nav__content .logo-box img {
    display: block;
    margin: 0 auto;
}

/* ============================================
   RESPONSIVE LOGO SIZE - END
   ============================================ */
   
   
   /* ============================================
   FIX FOR TOP HEADER SOCIAL ICONS - START
   ============================================ */

/* Social icons container */
.main-menu__top-right .main-menu__social {
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Individual social links */
.main-menu__social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 50%;
    color: #ffffff;
    font-size: 13px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.main-menu__social a:hover {
    background: #00a651;
    color: #ffffff;
    transform: translateY(-2px);
}

/* Font Awesome icon fixes */
.main-menu__social .icon-twitter::before {
    content: "\f099";
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}

.main-menu__social .icon-facebook-app-symbol::before {
    content: "\f39e";
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}

.main-menu__social .icon-google-plus-logo::before {
    content: "\f0d5";
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}

.main-menu__social .icon-pinterest::before {
    content: "\f0d2";
    font-family: "Font Awesome 6 Brands";
    font-weight: 400;
}

.main-menu__social .icon-rss::before {
    content: "\f09e";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

/* Make sure icons are visible */
.main-menu__social a i {
    font-size: 13px;
    line-height: 1;
}

/* ============================================
   FIX FOR TOP HEADER SOCIAL ICONS - END
   ============================================ */
   
   
   
   
   /*AAAAAAAAAAAAAAAAAAAAAAA!!! PRODUCT SPECIFICATIONS STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/

.product-specs-section {
    padding: 80px 0;
    background: #ffffff;
}

.product-specs-wrapper {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.product-specs-nav {
    width: 28%;
    flex-shrink: 0;
    position: sticky;
    top: 120px;
    background: #f8faf9;
    padding: 30px 20px;
    border-radius: 16px;
    border: 1px solid #e8f0ec;
    max-height: calc(100vh - 150px);
    overflow-y: auto;
}

.product-specs-nav .nav-title {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #00a651;
}

.nav-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.nav-btn {
    display: block;
    width: 100%;
    padding: 14px 18px;
    background: #ffffff;
    border: 1px solid #e0e8e4;
    border-radius: 10px;
    color: #1a1a1a;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: left;
    font-family: 'DM Sans', sans-serif;
}

.nav-btn:hover {
    background: #00a651;
    color: #ffffff;
    border-color: #00a651;
    transform: translateX(4px);
}

.nav-btn.active {
    background: #00a651;
    color: #ffffff;
    border-color: #00a651;
    box-shadow: 0 4px 15px rgba(0, 166, 81, 0.3);
}

.product-specs-content {
    width: 72%;
    flex-shrink: 0;
}

.product-display {
    animation: fadeInContent 0.4s ease;
}

@keyframes fadeInContent {
    0% { opacity: 0; transform: translateY(15px); }
    100% { opacity: 1; transform: translateY(0); }
}

.product-display .product-image {
    width: 100%;
    max-height: 450px;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.10);
    margin-bottom: 30px;
}

.product-display .product-title {
    font-size: 32px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 12px;
    font-family: 'Unbounded', sans-serif;
}

.product-display .product-desc {
    font-size: 16px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 25px;
}

.product-display .specs-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 30px;
    list-style: none;
    padding: 0;
    margin-bottom: 25px;
}

.product-display .specs-grid li {
    font-size: 15px;
    color: #1a1a1a;
    font-weight: 500;
    padding: 8px 0;
    border-bottom: 1px solid rgba(0,166,81,0.10);
}

.product-display .specs-grid li span {
    color: #00a651;
    font-weight: 700;
    margin-right: 6px;
}

.product-display .benefits-box {
    padding: 20px 25px;
    background: rgba(0,166,81,0.06);
    border-left: 4px solid #00a651;
    border-radius: 8px;
    margin-bottom: 25px;
}

.product-display .benefits-box p {
    margin: 0;
    font-size: 15px;
    color: #444;
    line-height: 1.7;
}

.product-display .cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 38px;
    background: #00a651;
    color: #fff;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    font-size: 16px;
    cursor: pointer;
    font-family: 'DM Sans', sans-serif;
}

.product-display .cta-btn:hover {
    background: #008c44;
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(0,166,81,0.3);
}

@media (max-width: 991px) {
    .product-specs-wrapper {
        flex-direction: column;
        gap: 25px;
    }
    
    .product-specs-nav {
        width: 100%;
        position: sticky;
        top: 70px;
        z-index: 999;
        background: #ffffff;
        padding: 12px 0;
        border-radius: 0;
        border: none;
        border-bottom: 2px solid #e8f0ec;
        max-height: none;
        overflow-y: visible;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    }
    
    .product-specs-nav .nav-title {
        display: none;
    }
    
    .nav-buttons {
        flex-direction: row;
        gap: 10px;
        overflow-x: auto;
        padding: 5px 15px 10px 15px;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }
    
    .nav-buttons::-webkit-scrollbar {
        display: none;
    }
    
    .nav-btn {
        flex: 0 0 auto;
        width: auto;
        padding: 10px 22px;
        white-space: nowrap;
        font-size: 14px;
        border-radius: 50px;
    }
    
    .nav-btn:hover {
        transform: none;
    }
    
    .product-specs-content {
        width: 100%;
    }
    
    .product-display .specs-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px 20px;
    }
    
    .product-display .product-title {
        font-size: 26px;
    }
}

@media (max-width: 576px) {
    .product-specs-section {
        padding: 50px 0;
    }
    
    .product-specs-nav {
        top: 60px;
        padding: 10px 0;
    }
    
    .nav-btn {
        padding: 8px 16px;
        font-size: 13px;
    }
    
    .product-display .specs-grid {
        grid-template-columns: 1fr;
        gap: 5px;
    }
    
    .product-display .product-title {
        font-size: 22px;
    }
    
    .product-display .cta-btn {
        width: 100%;
        justify-content: center;
        padding: 14px 20px;
    }
}

/*AAAAAAAAAAAAAAAAAAAAAAA!!! PRODUCT SPECIFICATIONS STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! PRODUCT STICKY FORCE FIX STARTS !!!AAAAAAAAAAAAAAAAAAA*/

html, body, .page-wrapper {
    overflow: visible !important;
    height: auto !important;
}

.product-specs-section {
    overflow: visible !important;
}

.container {
    overflow: visible !important;
}

.product-specs-wrapper {
    display: flex !important;
    align-items: flex-start !important;
    overflow: visible !important;
    min-height: 600px;
}

.product-specs-nav {
    position: sticky !important;
    top: 120px !important;
    align-self: flex-start !important;
    height: auto !important;
    max-height: calc(100vh - 150px) !important;
    overflow-y: auto !important;
}

.product-specs-content {
    min-height: 500px;
}

/*AAAAAAAAAAAAAAAAAAAAAAA!!! PRODUCT STICKY FORCE FIX ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/

/*AAAAAAAAAAAAAAAAAAAAAAA!!! MOBILE STICKY NAV FIX STARTS !!!AAAAAAAAAAAAAAAAAAA*/

@media (max-width: 991px) {
    .product-specs-nav {
        position: sticky !important;
        top: 0 !important;
        z-index: 999 !important;
        width: 100% !important;
        background: #ffffff !important;
        padding: 10px 0 !important;
        margin: 0 !important;
        border-bottom: 2px solid #e8f0ec !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08) !important;
        max-height: none !important;
        overflow: visible !important;
        border-radius: 0 !important;
    }
    
    .product-specs-nav .nav-title {
        display: none !important;
    }
    
    .nav-buttons {
        display: flex !important;
        flex-direction: row !important;
        gap: 8px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 5px 15px 10px 15px !important;
        margin: 0 !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x mandatory !important;
        -webkit-scroll-snap-type: x mandatory !important;
    }
    
    .nav-buttons::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    .nav-btn {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 100px !important;
        padding: 10px 18px !important;
        white-space: nowrap !important;
        font-size: 13px !important;
        border-radius: 50px !important;
        background: #f5f7f6 !important;
        border: 1px solid #e0e8e4 !important;
        color: #1a1a1a !important;
        font-weight: 500 !important;
        scroll-snap-align: start !important;
        -webkit-scroll-snap-align: start !important;
    }
    
    .nav-btn.active {
        background: #00a651 !important;
        color: #ffffff !important;
        border-color: #00a651 !important;
    }
    
    .nav-btn:hover {
        transform: none !important;
    }
    
    .product-specs-content {
        padding-top: 10px !important;
    }
    
    .product-display .product-image {
        max-height: 300px !important;
    }
}

@media (max-width: 576px) {
    .product-specs-nav {
        padding: 8px 0 !important;
    }
    
    .nav-buttons {
        gap: 6px !important;
        padding: 4px 12px 8px 12px !important;
    }
    
    .nav-btn {
        min-width: 80px !important;
        padding: 8px 14px !important;
        font-size: 12px !important;
    }
}

@media (max-width: 400px) {
    .nav-buttons {
        gap: 5px !important;
        padding: 3px 10px 6px 10px !important;
    }
    
    .nav-btn {
        min-width: 70px !important;
        padding: 7px 12px !important;
        font-size: 11px !important;
    }
}

@media (max-width: 350px) {
    .nav-buttons {
        gap: 4px !important;
        padding: 3px 8px 6px 8px !important;
    }
    
    .nav-btn {
        min-width: 60px !important;
        padding: 6px 10px !important;
        font-size: 10px !important;
    }
}

/* Ensure wrapper has proper spacing */
.product-specs-wrapper {
    display: flex !important;
    gap: 40px !important;
    align-items: flex-start !important;
}

@media (max-width: 991px) {
    .product-specs-wrapper {
        gap: 15px !important;
        flex-direction: column !important;
    }
}

/* Ensure nothing goes behind sticky bar */
.product-specs-content {
    position: relative !important;
    z-index: 1 !important;
}

/*AAAAAAAAAAAAAAAAAAAAAAA!!! MOBILE STICKY NAV FIX ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/


/*AAAAAAAAAAAAAAAAAAAAAAA!!! GALLERY SECTION STYLES STARTS !!!AAAAAAAAAAAAAAAAAAA*/

.gallery-section {
    padding: 80px 0;
    background: #ffffff;
}

.gallery-grid .gallery-item {
    margin-bottom: 30px;
    overflow: hidden;
    border-radius: 16px;
    transition: all 0.4s ease;
}

.gallery-grid .gallery-item:hover {
    transform: scale(1.03);
    box-shadow: 0 20px 50px rgba(0,0,0,0.15);
}

.gallery-grid .gallery-item img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    border-radius: 16px;
    transition: all 0.4s ease;
}

.gallery-grid .gallery-item:hover img {
    transform: scale(1.05);
}

@media (max-width: 768px) {
    .gallery-grid .gallery-item img {
        height: 220px;
    }
}

@media (max-width: 576px) {
    .gallery-grid .gallery-item img {
        height: 180px;
    }
}

/*AAAAAAAAAAAAAAAAAAAAAAA!!! GALLERY SECTION STYLES ENDS !!!AAAAAAAAAAAAAAAAAAAAA*/