/* ==========================
   RESET
========================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    overflow-x:hidden;
    padding-top:110px;
}

/* ==========================
   STICKY NAVBAR
========================== */

.navbar{
    position:fixed;
    top:0;
    left:0;
    width:100%;

    background:#f6ffe6;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:10px 40px;

    z-index:99999;

    box-shadow:0 2px 15px rgba(0,0,0,.1);
}

/* LOGO */

.logo img{
    width:90px;
    height:90px;
    object-fit:contain;
}

/* MENU */

.nav-links{
    list-style:none;
    display:flex;
    align-items:center;
    gap:30px;
}

.nav-links li{
    position:relative;
}

.nav-links a{
    text-decoration:none;
    color:#000;
    font-size:18px;
    font-weight:600;
}

.nav-links a:hover{
    color:#7CB232;
}

/* ==========================
   PRODUCTS LABEL
========================== */

.products-label{
    cursor:pointer;
    font-size:18px;
    font-weight:600;
    color:#000;
    display:block;
}

.products-label:hover{
    color:#7CB232;
}

/* HIDE CHECKBOX */

#products-toggle{
    display:none;
}

/* ==========================
   DESKTOP DROPDOWN
========================== */

.dropdown-menu{
    position:absolute;
    top:100%;
    left:0;

    width:280px;

    background:#fff;

    list-style:none;

    border-radius:10px;

    box-shadow:0 10px 30px rgba(0,0,0,.15);

    display:none;
}

.dropdown:hover .dropdown-menu{
    display:block;
}

.dropdown-menu li a{
    display:block;
    padding:12px 18px;
    color:#333;
    font-size:12px;
    border-bottom:1px solid #eee;
}

.dropdown-menu li:last-child a{
    border-bottom:none;
}

.dropdown-menu li a:hover{
    background:#f6ffe6;
}

/* ==========================
   HAMBURGER
========================== */

#menu-toggle{
    display:none;
}

.hamburger{
    display:none;
    font-size:34px;
    cursor:pointer;
}

/* ==========================
   MOBILE
========================== */

@media(max-width:900px){

    .navbar{
        padding:10px 20px;
    }

    .logo img{
        width:70px;
        height:70px;
    }

    .hamburger{
        display:block;
    }

    .nav-links{
        position:absolute;
        top:100%;
        left:0;

        width:100%;

        background:#f6ffe6;

        flex-direction:column;
        align-items:flex-start;

        max-height:0;
        overflow:hidden;

        transition:.4s;
        gap:0;
    }

    #menu-toggle:checked ~ .nav-links{
        max-height:1200px;
        padding:15px 0;
    }

    .nav-links li{
        width:100%;
    }

    .nav-links li a,
    .products-label{
        display:block;
        width:100%;
        padding:15px 20px;
    }

    /* MOBILE DROPDOWN */

    .dropdown-menu{
        position:static;
        width:100%;
        display:none;
        box-shadow:none;
        border-radius:0;
        background:#eef8db;
    }

    #products-toggle:checked ~ .dropdown-menu{
        display:block;
    }

    .dropdown:hover .dropdown-menu{
        display:none;
    }

    .dropdown-menu li a{
        padding-left:40px;
    }
}









/* =========================
   TERMS PAGE STYLES
========================= */

.container {
    max-width: 900px;
    margin: 20px auto;
    background: #ffffff;
    padding: 40px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}

h1 {
    color: #85b827;
    font-size: 28px;
    margin-bottom: 8px;
    border-bottom: 2px solid #85b827;
    padding-bottom: 12px;
}

h2 {
    color: #85b827;
    font-size: 20px;
    margin-top: 30px;
    margin-bottom: 15px;
    border-left: 4px solid #85b827;
    padding-left: 10px;
}

.date {
    font-size: 13px;
    color: #666666;
    margin-bottom: 20px;
}

p {
    margin-bottom: 15px;
    text-align: justify;
    font-size: 15px;
}

.strong-text {
    font-weight: 600;
}

/* ONLY CONTENT LISTS */
.container ul {
    list-style: none;
    margin-bottom: 25px;
}

.container ul li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 12px;
    font-size: 15px;
    text-align: justify;
}

.container ul li::before {
    content: "✓";
    position: absolute;
    left: 5px;
    top: 0;
    color: black;
    font-weight: bold;
    font-size: 16px;
}

.note {
    color: #dc3545;
    font-weight: bold;
    margin-top: 25px;
    font-size: 16px;
}

/* =========================
   TABLET RESPONSIVE
========================= */
@media (max-width: 768px) {

    body {
        padding: 20px 12px;
    }

    .container {
        width: 100%;
        padding: 20px;
        border-radius: 6px;
    }

    h1 {
        font-size: 22px;
        line-height: 1.4;
        padding-bottom: 10px;
    }

    h2 {
        font-size: 18px;
        margin-top: 24px;
        margin-bottom: 12px;
    }

    p {
        font-size: 14px;
        line-height: 1.7;
        text-align: left;
    }

    .container ul li {
        font-size: 14px;
        padding-left: 25px;
        line-height: 1.6;
        text-align: left;
    }

    .container ul li::before {
        font-size: 14px;
        left: 0;
    }

    .date {
        font-size: 12px;
    }

    .note {
        font-size: 14px;
    }
}

/* =========================
   MOBILE RESPONSIVE
========================= */
@media (max-width: 480px) {

    body {
        padding: 15px 10px;
    }

    .container {
        width: 100%;
        padding: 15px;
        border-radius: 5px;
    }

    h1 {
        font-size: 20px;
    }

    h2 {
        font-size: 16px;
    }

    p {
        font-size: 13px;
        line-height: 1.6;
    }

    .container ul li {
        font-size: 13px;
        padding-left: 22px;
    }

    .container ul li::before {
        font-size: 13px;
    }

    .note {
        font-size: 13px;
    }
}








/* =========================
   FOOTER STYLES (FIXED)
========================= */

/* FORCE FULL WIDTH & BACKGROUND */
.footer-section {
    width: 100%;
    background: #f6ffdc;
    padding: 60px 0 20px 0;
    margin-top: 50px;
}

/* CENTER CONTENT WITH GRID */
.footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

/* FOOTER BOXES */
.footer-box {
    display: flex;
    flex-direction: column;
}

.footer-box .footer-title {
    font-size: 22px;
    font-weight: 800;
    color: black; /* Matching your theme green */
    margin-bottom: 20px;
    border: none; /* Removing container h2 borders */
    padding: 0;
}

.footer-box p {
    font-size: 15px;
    line-height: 1.6;
    color: #333;
    margin-bottom: 12px;
    text-align: left; /* Resetting justify */
}

.footer-box i {
    margin-right: 10px;
    color: black;
}

/* QUICK LINKS */
.footer-links {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-links li {
    padding-left: 0 !important;
    margin-bottom: 10px !important;
}

.footer-links li::before {
    content: "" !important; /* Removing the checkmarks from footer links */
}

.footer-links a {
    font-size: 15px;
    color: #333;
    text-decoration: none;
    transition: 0.3s;
}

.footer-links a:hover {
    color: #85b827;
    padding-left: 5px;
}

/* SOCIAL ICONS */
.footer-social {
    display: flex;
    gap: 20px;
    margin-top: 5px;
}

.footer-social a {
    color: #333;
    font-size: 24px;
    transition: 0.3s;
}

.footer-social a:hover {
    color: #85b827;
}

/* BOTTOM SECTION */
.footer-line {
    max-width: 1200px;
    margin: 40px auto 20px auto;
    border: 0;
    border-top: 1px solid #ccc;
    opacity: 1;
}

.footer-bottom {
    text-align: center;
    padding: 0 20px;
}

.footer-copy {
    font-size: 14px;
    color: #555;
    text-align: center !important;
}

.designer {
    color: #85b827;
    text-decoration: none;
    font-weight: bold;
}

/* ================= FOOTER RESPONSIVENESS ================= */
@media (max-width: 900px) {
    .footer-inner {
        grid-template-columns: 1fr; /* Stacks columns vertically on tablet/mobile */
        gap: 30px;
        padding: 0 30px;
    }

    .footer-section {
        padding: 40px 0 20px 0;
    }

    .footer-line {
        margin: 30px auto 20px auto;
    }
}

/* ================= FLOATING BUTTONS ================= */
.floating-whatsapp,
.floating-phone {
  position: fixed;
  bottom: 30px;
  width: 55px;
  height: 55px;
  background: #25d366;
  color: #fff;
  text-decoration: none;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  z-index: 999;
}

.floating-whatsapp {
  left: 25px;
}

.floating-phone {
  right: 25px;
  background: #25d366;
}

/* ================= RESPONSIVE ================= */
@media (max-width: 992px) {
  .contact-container {
    grid-template-columns: 1fr;
  }

  .visit-heading {
    font-size: 36px;
  }

  #contactForm::before {
    font-size: 32px;
  }
}

@media (max-width: 600px) {
  

  .contact-box {
    padding: 25px;
  }

  #contactForm {
    padding: 35px 25px;
  }
}
