      *{
        margin:0;
        padding:0;
        box-sizing:border-box;
      }
      body{
        font-family:'Open Sans', sans-serif;
        background:#fffdf5;
        color:#1f2a1f;
        line-height:1.9;
      }
      header{
        background:linear-gradient(90deg,#1b5e20,#2e7d32);
        position:sticky;
        top:0;
        z-index:999;
        box-shadow:0 2px 15px rgba(0,0,0,0.2);
      }
      .container{
        width:92%;
        max-width:1400px;
        margin:auto;
      }
      .navbar{
        display:flex;
        align-items:center;
        justify-content:space-between;
        padding:18px 0;
      }
      /* Logo text changed to generic block instead of forcing H1 globally */
      .logo .logo-title{
        font-family:'Cinzel', serif;
        color:white;
        font-size:20px;
        font-weight: 700;
      }
      .logo p{
        color:#dcedc8;
        font-size:12px;
        letter-spacing:1px;
      }
      nav ul{
        display:flex;
        list-style:none;
      }
      nav ul li{
        margin-left:25px;
      }
      nav ul li a{
        color:white;
        text-decoration:none;
        font-weight:600;
        font-size:16px;
        transition:0.3s;
      }
      nav ul li a:hover{
        color:#d4af37;
      }
      .menu-toggle{
        display:none;
        font-size:28px;
        color:white;
        cursor:pointer;
      }
      .hero{
        background:linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),url('https://images.unsplash.com/photo-1511285560929-80b456fea0bc?q=80&w=1600');
        background-size:cover;
        background-position:center;
        color:white;
        padding:140px 0;
        text-align:center;
      }
      .hero h1{
        font-family:'Cinzel', serif;
        font-size:58px;
        margin-bottom:25px;
        line-height:1.3;
      }
      .hero p{
        max-width:1000px;
        margin:auto;
        font-size:21px;
      }
      .hero-buttons{
        margin-top:40px;
      }
      .btn{
        display:inline-block;
        padding:15px 35px;
        margin:10px;
        background:#d4af37;
        color:#1b1b1b;
        text-decoration:none;
        font-weight:bold;
        border-radius:6px;
        transition:0.3s;
      }
      .btn:hover{
        background:white;
      }
      .section{
        padding:80px 0;
      }
      .section-title{
        text-align:center;
        margin-bottom:50px;
      }
      .section-title h2{
        font-family:'Cinzel', serif;
        font-size:42px;
        color:#1b5e20;
        margin-bottom:15px;
      }
      .section-title p{
        max-width:900px;
        margin:auto;
        font-size:18px;
      }
      .grid{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
        gap:30px;
      }
      .card{
        background:white;
        padding:35px;
        border-radius:15px;
        box-shadow:0 5px 20px rgba(0,0,0,0.08);
        transition:0.3s;
        border-top:5px solid #2e7d32;
      }
      .card:hover{
        transform:translateY(-6px);
      }
      .card i{
        font-size:42px;
        color:#2e7d32;
        margin-bottom:20px;
      }
      .card h3{
        margin-bottom:15px;
        color:#1b5e20;
        font-size:24px;
      }
      .content-box{
        background:#f4fbf4;
        padding:40px;
        border-left:5px solid #2e7d32;
        border-radius:10px;
        margin-bottom:30px;
      }
      .content-box h3{
        color:#1b5e20;
        margin-bottom:15px;
        font-size:28px;
      }
      .search-section{
        background:#1b5e20;
        color:white;
        padding:80px 0;
      }
      .search-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
        gap:20px;
        margin-top:40px;
      }
      .search-item{
        background:rgba(255,255,255,0.08);
        padding:25px;
        border-radius:10px;
        text-align:center;
      }
      .search-item i{
        font-size:36px;
        margin-bottom:15px;
        color:#d4af37;
      }
      .cta{
        background:linear-gradient(90deg,#2e7d32,#1b5e20);
        color:white;
        text-align:center;
        padding:90px 20px;
      }
      .cta h2{
        font-family:'Cinzel', serif;
        font-size:46px;
        margin-bottom:20px;
      }
      
/* Centralized & Responsive Mobile-Friendly Footer Styles */
footer {
  background: #0d5f2d;
  color: #ffffff;
  padding: 60px 0 30px;
}

/* Core responsive structure mapping columns */
.footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 40px 30px;
}

/* Dynamic broad columns for wide desktop screens */
@media (min-width: 1024px) {
  .footer-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  .brand-box {
    grid-column: span 1;
  }
  /* Expands the dense lists across 2 columns to prevent layout stretching */
  .astrology-box, .legal-box {
    grid-column: span 2;
  }
}

.footer-box h3 {
  font-family: 'Cinzel', serif;
  color: #ffffff;
  margin-bottom: 22px;
  font-size: 18px;
  font-weight: 700;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  padding-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.footer-box p {
  color: #e0f2f1;
  font-size: 14px;
  line-height: 1.8;
}

/* Standard vertical list configuration */
.footer-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px; /* Generous structural vertical gap */
}

/* Advanced responsive multi-column block map for dense lists */
.footer-box ul.two-column-list {
  display: grid;
  grid-template-columns: 1fr; /* Defaults to single column for compact mobile layouts */
  gap: 6px 20px;
}

@media (min-width: 540px) {
  .footer-box ul.two-column-list {
    grid-template-columns: repeat(2, 1fr); /* Splits seamlessly across 2 columns on tablets/desktops */
  }
}

/* Enhanced tap boundaries preventing mobile fat-finger misclicks */
.footer-box ul li {
  margin: 0;
  padding: 0;
}

.footer-box ul li a {
  color: #ffffff;
  text-decoration: none;
  font-size: 14.5px;
  display: inline-block;
  padding: 6px 0; /* Creates an expanded, accessible tap target area vertically */
  transition: color 0.2s ease, transform 0.2s ease;
  width: 100%; /* Expands the clickable element area horizontally */
}

.footer-box ul li a:hover {
  color: #d4af37;
  transform: translateX(2px); /* Subtle horizontal shift on desktop hover */
}

.footer-divider {
  margin: 40px 0 25px;
  border: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.footer-bottom {
  text-align: center;
  font-size: 14px;
  color: #e0f2f1;
  line-height: 1.7;
}

.footer-bottom p {
  margin-bottom: 5px;
}

.footer-bottom a {
  color: #ffffff;
  text-decoration: underline;
  transition: color 0.2s;
}

.footer-bottom a:hover {
  color: #d4af37;
}

      @media(max-width:900px){
        .menu-toggle{
          display:block;
        }
        nav{
          position:absolute;
          top:85px;
          left:0;
          width:100%;
          background:#1b5e20;
          display:none;
        }
        nav.active{
          display:block;
        }
        nav ul{
          flex-direction:column;
        }
        nav ul li{
          margin:0;
          border-bottom:1px solid rgba(255,255,255,0.1);
        }
        nav ul li a{
          display:block;
          padding:18px;
        }
        .hero h1{
          font-size:38px;
        }
        .hero p{
          font-size:18px;
        }
        .section-title h2{
          font-size:32px;
        }
        .cta h2{
          font-size:34px;
        }
      }