/*=========================================
            GOOGLE FONT
=========================================*/

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Poppins", sans-serif;
  overflow-x: hidden;
  background: #ffffff;
  color: #222;
}

img {
  width: 100%;
  display: block;
}

a {
  text-decoration: none;
}

ul {
  list-style: none;
}

button {
  border: none;
  outline: none;
  cursor: pointer;
  background: none;
}

.container {
  width: 100%;
  max-width: 1320px;
  margin: auto;
  padding: 0 5px;
}

/*=========================================
            TOP HEADER
=========================================*/

.top-header {
  width: 100%;
  background: #52a01c;
  color: #fff;
  position: relative;
  z-index: 9999;
}

.top-header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 48px;
}

/*=========================================
            TOP HEADER LEFT
=========================================*/

.top-left {
  display: flex;
  align-items: center;
  gap: 28px;
}

.top-left a {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  transition: 0.35s;
}

.top-left a i {
  margin-right: 8px;
  font-size: 14px;
}

.top-left a:hover {
  color: #065925;
}

/*=========================================
            TOP HEADER RIGHT
=========================================*/

.top-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.top-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.18);
  color: #fff;
  transition: 0.35s;
}

.top-icon:hover {
  background: #ffffff;
  color: #065925;
  transform: translateY(-3px);
}

/*=========================================
            MAIN HEADER
=========================================*/

.main-header {
  width: 100%;
  background: #fff;
  border-bottom: 1px solid #ececec;
  position: relative;
  z-index: 999;
}
.navbar {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 95px;
}

/*=========================================
                LOGO
=========================================*/

.logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin-left: 30px; /* 15-20px kar sakte ho */
}

.logo img {
  width: 185px;
}

/*=========================================
            DESKTOP MENU
=========================================*/

.desktop-menu {
  margin-left: 100px;
  flex: 1;
  justify-content: flex-end;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 35px;
}

/*=========================================
            NAV LINKS
=========================================*/

.nav-links > li {
  position: relative;
}

.nav-links > li > a {
  display: flex;
  align-items: center;
  gap: 7px;

  font-size: 19px;
  font-weight: 600;

  color: #222222;

  transition: 0.35s;

  padding: 32px 0;
}

.nav-links > li > a:hover {
  color: #065925;
}

.nav-links > li > a.active {
  color: #065925;
}

.nav-links > li > a i {
  font-size: 12px;
  transition: 0.35s;
}

.dropdown:hover > a i {
  transform: rotate(180deg);
}

/*=========================================
        MOBILE HEADER HIDE
=========================================*/

.mobile-header {
  display: none;
}

.mobile-menu-btn {
  display: none;
}

.mobile-sidebar {
  display: none;
}

.mobile-overlay {
  display: none;
}

/*=========================================
            DESKTOP DROPDOWN
=========================================*/

.dropdown {
  position: relative;
}

.dropdown-menu {
  position: absolute;
  top: 100%;

  right: -40%;

  min-width: 290px;
  white-space: nowrap;

  background: #ffffff;

  border-radius: 10px;

  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);

  border-top: 4px solid #52a01c;

  padding: 12px 0;

  opacity: 0;
  visibility: hidden;

  transform: translateY(18px);

  transition: 0.35s ease;

  z-index: 999;
}

.dropdown:hover > .dropdown-menu {
  opacity: 1;
  visibility: visible;

  transform: translateY(0);
}

/*=========================================
        DROPDOWN ITEM
=========================================*/

.dropdown-menu li {
  position: relative;
}

.plants-dropdown {
  width: 560px;

  display: grid;

  grid-template-columns: repeat(2, 1fr);

  padding: 12px 0;
}

.plants-dropdown li {
  border-bottom: 1px solid #efefef;
}

.plants-dropdown li:nth-last-child(-n + 2) {
  border-bottom: none;
}

.dropdown-menu li a {
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 12px 22px;

  color: #222;

  font-size: 14px;

  font-weight: 500;

  transition: 0.35s;
  gap: 12px;

  justify-content: flex-start;
}

.dropdown-menu li a i:first-child {
  width: 20px;

  margin-right: 0;

  flex-shrink: 0;
}

/*==============================
        HEADER BUTTON
===============================*/

.header-btn {
  margin-left: 35px;

  position: relative;

  overflow: hidden;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  padding: 14px 28px;

  border-radius: 50px;

  background: #52a01c;

  color: #fff;

  font-size: 16px;

  font-weight: 600;

  transition: 0.4s;

  z-index: 1;
}

.header-btn span {
  position: relative;

  z-index: 2;

  display: flex;

  align-items: center;

  gap: 10px;
}

.header-btn::before {
  content: "";

  position: absolute;

  left: -100%;

  top: 0;

  width: 100%;

  height: 100%;

  background: #065925;

  transition: 0.45s ease;

  border-radius: 50px;

  z-index: 1;
}

.header-btn:hover::before {
  left: 0;
}

.header-btn:hover {
  color: #fff;
}

.header-btn i {
  transition: 0.35s;
}

.header-btn:hover i {
  transform: translateX(5px);
}

/*=========================================
            LEFT SIDE
=========================================*/

.dropdown-menu li a i:first-child {
  width: 22px;

  margin-right: 12px;

  color: #52a01c;

  transition: 0.35s;
}

/*=========================================
            HOVER
=========================================*/

.dropdown-menu li:hover > a {
  color: #065925;

  padding-left: 36px;
}

.dropdown-menu li:hover > a i:first-child {
  color: #065925;
}

/*=========================================
            HOVER BG
=========================================*/

.dropdown-menu li:hover {
  background: #f6fff1;
}

/*=========================================
            DIVIDER
=========================================*/

.dropdown-menu li:not(:last-child) {
  border-bottom: 1px solid #efefef;
}

/*=========================================
        RIGHT ARROW
=========================================*/

.submenu-arrow {
  margin-left: auto;
}

.submenu-arrow i {
  font-size: 13px;

  color: #888;

  transition: 0.35s;
}

.dropdown-menu li:hover .submenu-arrow i {
  color: #065925;

  transform: translateX(5px);
}

/*=========================================
        PLANTS DROPDOWN
=========================================*/

.dropdown-menu::-webkit-scrollbar {
  width: 6px;
}

.dropdown-menu::-webkit-scrollbar-thumb {
  background: #52a01c;

  border-radius: 20px;
}

.dropdown-menu::-webkit-scrollbar-track {
  background: #f5f5f5;
}

/*=========================================
        SMOOTH ANIMATION
=========================================*/

.dropdown-menu li {
  overflow: visible;
}

.dropdown-menu li a {
  position: relative;
}

.dropdown-menu li a::after {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 0;

  height: 1px;

  background: #52a01c;

  transition: 0.35s;
}

.dropdown-menu li:hover > a::after {
  width: 100%;
}

/*=========================================
        SUB DROPDOWN START
=========================================*/

.dropdown-right {
  position: relative;
}

/*=========================================
        SUB MENU
=========================================*/

.sub-menu {
  position: absolute;

  top: -12px;

  left: 100%;

  min-width: 290px;

  background: #ffffff;

  border-radius: 10px;

  border-top: 4px solid #52a01c;

  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.12);

  padding: 12px 0;

  opacity: 0;

  visibility: hidden;

  transform: translateX(20px);

  transition: 0.35s ease;

  z-index: 999;
}

.landscaping-dropdown .sub-menu {
  top: -100px;
}

/*=========================================
        SHOW SUB MENU
=========================================*/

.dropdown-right:hover > .sub-menu {
  opacity: 1;

  visibility: visible;

  transform: translateX(0);
}

/*=========================================
        SUB MENU ITEMS
=========================================*/

.sub-menu li {
  position: relative;

  overflow: hidden;
}

.sub-menu li:not(:last-child) {
  border-bottom: 1px solid #efefef;
}

.sub-menu li a {
  display: flex;

  align-items: center;

  gap: 14px;

  padding: 10px 20px;

  color: #222;

  font-size: 14px;

  font-weight: 500;

  transition: 0.35s;
}

/*=========================================
        ICON
=========================================*/

.sub-menu li a i {
  width: 20px;

  color: #52a01c;

  transition: 0.35s;
}

/*=========================================
        HOVER EFFECT
=========================================*/

.sub-menu li:hover {
  background: #f7fff3;
}

.sub-menu li:hover > a {
  color: #065925;

  padding-left: 36px;
}

.sub-menu li:hover > a i {
  color: #065925;
}

/*=========================================
        BOTTOM LINE
=========================================*/

.sub-menu li a::after {
  content: "";

  position: absolute;

  left: 0;

  bottom: 0;

  width: 0;

  height: 1px;

  background: #52a01c;

  transition: 0.35s;
}

.sub-menu li:hover > a::after {
  width: 100%;
}

/*=========================================
        RIGHT ARROW ANIMATION
=========================================*/

.dropdown-right > a {
  display: flex;

  align-items: center;
}

.dropdown-right:hover > .submenu-arrow i {
  color: #065925;

  transform: translateX(6px);
}

/*=========================================
        SCROLLBAR
=========================================*/

.sub-menu::-webkit-scrollbar {
  width: 6px;
}

.sub-menu::-webkit-scrollbar-thumb {
  background: #52a01c;

  border-radius: 20px;
}

.sub-menu::-webkit-scrollbar-track {
  background: #f3f3f3;
}

/*=========================================
        DROPDOWN SMOOTH
=========================================*/

.dropdown-menu,
.sub-menu {
  will-change: transform, opacity;
}

/*=========================================
            STICKY HEADER
=========================================*/

.main-header.sticky {
  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  background: #ffffff;

  animation: stickyHeader 0.4s ease;

  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);

  z-index: 9999;
}

@keyframes stickyHeader {
  from {
    opacity: 0;
    transform: translateY(-100%);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*=========================================
        MOBILE HEADER
=========================================*/

.mobile-header {
  display: none;

  width: 100%;

  background: #ffffff;

  border-bottom: 1px solid #ececec;

  position: relative;

  z-index: 9999;
}

.mobile-header-wrapper {
  height: 75px;

  display: flex;

  align-items: center;

  justify-content: space-between;
}

.mobile-logo img {
  width: 165px;
}

.mobile-toggle {
  width: 46px;

  height: 46px;

  border-radius: 6px;

  background: #065925;

  color: #ffffff;

  display: flex;

  align-items: center;

  justify-content: center;

  font-size: 22px;

  cursor: pointer;

  transition: 0.35s;
}

.mobile-toggle:hover {
  background: #52a01c;
}
/*=========================================
        MOBILE CALL BUTTON
=========================================*/

.mobile-call-btn {
  padding: 0 20px 25px;
}

.mobile-call-btn a {
  position: relative;

  overflow: hidden;

  display: flex;

  align-items: center;

  justify-content: center;

  width: 80%;

  height: 52px;

  border-radius: 50px;

  background: #52a01c;

  color: #fff;

  font-size: 16px;

  font-weight: 600;

  z-index: 1;
}

.mobile-call-btn a span {
  position: relative;

  z-index: 2;

  display: flex;

  align-items: center;

  gap: 10px;
}

.mobile-call-btn a::before {
  content: "";

  position: absolute;

  left: -100%;

  top: 0;

  width: 100%;

  height: 100%;

  background: #065925;

  border-radius: 50px;

  transition: 0.45s ease;

  z-index: 1;
}

.mobile-call-btn a:hover::before {
  left: 0;
}

.mobile-call-btn a i {
  transition: 0.35s;
}

.mobile-call-btn a:hover i {
  transform: translateX(5px);
}

/*=========================================
        MOBILE OVERLAY
=========================================*/

.mobile-overlay {
  position: fixed;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background: rgba(0, 0, 0, 0.45);

  opacity: 0;

  visibility: hidden;

  transition: 0.35s;

  z-index: 9998;
}

.mobile-overlay.active {
  opacity: 1;

  visibility: visible;
}

/*=========================================
        MOBILE SIDEBAR
=========================================*/

.mobile-sidebar {
  display: block;

  position: fixed;

  top: 0;

  left: -340px;

  width: 320px;

  max-width: 90%;

  height: 100vh;

  background: #ffffff;

  overflow-y: auto;

  transition: 0.35s ease;

  z-index: 9999;

  box-shadow: 0 0 35px rgba(0, 0, 0, 0.15);
}

.mobile-sidebar.active {
  left: 0;
}

/*=========================================
        SIDEBAR TOP
=========================================*/

.sidebar-top {
  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 18px 20px;

  border-bottom: 1px solid #ececec;
}

.sidebar-logo img {
  width: 150px;
}

.close-sidebar {
  width: 42px;

  height: 42px;

  border-radius: 50%;

  background: #065925;

  color: #ffffff;

  display: flex;

  align-items: center;

  justify-content: center;

  cursor: pointer;

  transition: 0.35s;
}

.close-sidebar:hover {
  background: #52a01c;

  transform: rotate(90deg);
}

/*=========================================
        MOBILE NAVIGATION
=========================================*/

.mobile-nav {
  padding: 15px 0;
}

.mobile-nav > li {
  border-bottom: 1px solid #efefef;
}

.mobile-nav > li > a,
.mobile-dropdown-btn,
.mobile-sub-btn {
  display: flex;

  align-items: center;

  justify-content: space-between;

  padding: 15px 22px;

  color: #222222;

  font-size: 16px;

  font-weight: 600;

  cursor: pointer;

  transition: 0.35s;
}

.mobile-nav > li > a:hover,
.mobile-dropdown-btn:hover,
.mobile-sub-btn:hover {
  color: #065925;

  background: #f5fff0;
}

.mobile-dropdown-btn i,
.mobile-sub-btn i {
  font-size: 15px;

  transition: 0.35s;
}

/*=========================================
        MOBILE ACCORDION
=========================================*/

.mobile-submenu,
.mobile-child-menu {
  display: none;

  background: #fafafa;
}

.mobile-submenu.active,
.mobile-child-menu.active {
  display: block;

  animation: mobileDropdown 0.35s ease;
}

@keyframes mobileDropdown {
  from {
    opacity: 0;

    transform: translateY(-10px);
  }

  to {
    opacity: 1;

    transform: translateY(0);
  }
}

.mobile-submenu li,
.mobile-child-menu li {
  border-bottom: 1px solid #ececec;
}

.mobile-submenu li:last-child,
.mobile-child-menu li:last-child {
  border-bottom: none;
}

.mobile-submenu li a,
.mobile-child-menu li a {
  display: block;

  padding: 13px 40px;

  color: #555;

  font-size: 15px;

  font-weight: 500;

  transition: 0.35s;
}

.mobile-child-menu li a {
  padding-left: 60px;
}

.mobile-submenu li a:hover,
.mobile-child-menu li a:hover {
  color: #065925;

  background: #f2ffe8;

  padding-left: 50px;
}

.mobile-child-menu li a:hover {
  padding-left: 70px;
}

/*=========================================
        ACTIVE PLUS / MINUS
=========================================*/

.mobile-dropdown.active > .mobile-dropdown-btn i,
.mobile-sub-dropdown.active > .mobile-sub-btn i {
  transform: rotate(45deg);

  color: #065925;
}

/*=========================================
        MOBILE CONTACT
=========================================*/

.mobile-contact {
  padding: 25px 20px;

  border-top: 1px solid #ececec;
}

.mobile-contact a {
  display: flex;

  align-items: center;

  gap: 12px;

  color: #333;

  font-size: 15px;

  margin-bottom: 18px;

  transition: 0.35s;
}

.mobile-contact a:last-child {
  margin-bottom: 0;
}

.mobile-contact a i {
  width: 20px;

  color: #52a01c;
}

.mobile-contact a:hover {
  color: #065925;
}

/*=========================================
        MOBILE SOCIAL
=========================================*/

.mobile-social {
  display: flex;

  gap: 12px;

  padding: 0 20px 30px;
}

.mobile-social a {
  width: 42px;

  height: 42px;

  border-radius: 50%;

  display: flex;

  align-items: center;

  justify-content: center;

  background: #52a01c;

  color: #fff;

  transition: 0.35s;
}

.mobile-social a:hover {
  background: #065925;

  transform: translateY(-4px);
}

/*=========================================
            TABLET
=========================================*/

@media (max-width: 991px) {
  .top-header {
    display: none;
  }

  .main-header {
    display: none;
  }

  .mobile-header {
    display: block;
  }
}

/*=========================================
            MOBILE
=========================================*/

@media (max-width: 768px) {
  .mobile-header-wrapper {
    height: 70px;
  }

  .mobile-logo img {
    width: 145px;
  }

  .mobile-sidebar {
    width: 300px;
  }

  .mobile-nav > li > a,
  .mobile-dropdown-btn,
  .mobile-sub-btn {
    font-size: 15px;

    padding: 14px 18px;
  }

  .mobile-submenu li a {
    padding-left: 35px;
  }

  .mobile-child-menu li a {
    padding-left: 50px;
  }

  .mobile-contact {
    padding: 20px 18px;
  }

  .mobile-social {
    padding: 0 18px 25px;
  }
}

/*=========================================
        SMALL MOBILE
=========================================*/

@media (max-width: 480px) {
  .container {
    padding: 0 15px;
  }

  .mobile-sidebar {
    width: 280px;
  }

  .mobile-logo img {
    width: 130px;
  }

  .mobile-toggle {
    width: 42px;

    height: 42px;

    font-size: 20px;
  }

  .mobile-contact a {
    font-size: 14px;
  }

  .mobile-social a {
    width: 40px;

    height: 40px;
  }
}











@media (max-width: 991px) {
  .top-header,
  .main-header {
    display: none;
  }

  .mobile-header {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    background: #ffffff;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
  }

  /* Fixed header ke neeche content hide hone se bachayega */
  body {
    padding-top: 75px;
  }
}

@media (max-width: 768px) {
  body {
    padding-top: 70px;
  }
}








/* Desktop top header mobile/tablet par hide rahega */
@media screen and (max-width: 991px) {
  .top-header {
    display: none !important;
  }

  .main-header {
    display: none !important;
  }

  .mobile-header {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    background: #ffffff;
    border-bottom: 1px solid #ececec;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.1);
  }

  body {
    padding-top: 75px;
  }
}

@media screen and (max-width: 768px) {
  body {
    padding-top: 70px;
  }
}