
  :root{
    --nv-green-dark:#1f3d24;
    --nv-green:#3f6b34;
    --nv-green-mid:#4c7a3f;
    --nv-green-light:#eef4e6;
    --nv-cream:#faf8f2;
    --nv-gold:#c9a24b;
    --nv-text:#2c2c28;
    --nv-muted:#6b6f64;
    --radius:14px;
  }
  *{box-sizing:border-box;}
  body{
    font-family:'Poppins',sans-serif;
    color:var(--nv-text);
    background:var(--nv-cream);
    -webkit-font-smoothing:antialiased;
    width:100%;
    overflow-x:hidden;
  }
  h1,h2,h3,.display-font{
    font-family:'Playfair Display',serif;
  }
  main{
    width: 100%;
    overflow-x: hidden;
  }
  .section{padding:5.5rem 0;}
  .section-sm{padding:3.5rem 0;}
  .eyebrow{
    letter-spacing:.14em;
    text-transform:uppercase;
    font-size:.78rem;
    font-weight:600;
    color:var(--nv-green);
  }
  .btn-nv{
          display: inline-block;
    background:var(--nv-green-dark);
    color:#fff;
    border:none;
    padding:.85rem 1.9rem;
    border-radius:8px;
    font-weight:600;
    font-size:.95rem;
    letter-spacing:.02em;
    transition:all .25s ease;
    text-decoration: none;
  }
  .btn-nv:hover{background:var(--nv-green);color:#fff;transform:translateY(-2px);}
  .btn-nv-outline{
    background:#fff;
    color:var(--nv-green-dark);
    border:1.5px solid #d8ddd2;
    padding:.85rem 1.7rem;
    border-radius:8px;
    font-weight:600;
    font-size:.95rem;
    transition:all .25s ease;
    text-decoration: none;
  }
  .btn-nv-outline:hover{border-color:var(--nv-green);color:var(--nv-green-dark);transform:translateY(-2px);}

  /* NAVBAR */
  .navbar{
    padding:1rem 0;
    background:#5e753d;
    box-shadow:0 2px 18px rgba(0,0,0,.05);
  }
  .navbar-brand{
    font-family:'Playfair Display',serif;
    font-weight:700;
    font-size:1.6rem;
    color:var(--nv-green-dark)!important;
    line-height:1;
  }
  .navbar-brand img{
    width: 200px;
    filter: invert(1);
  }
  .navbar-brand small{
    display:block;
    font-family:'Poppins',sans-serif;
    font-size:.6rem;
    letter-spacing:.3em;
    color:var(--nv-muted);
    font-weight:500;
  }
  .nav-link{
    font-weight:500;
    color:#f1f1f1!important;
    margin:0 .1rem;
    font-size:.9rem;
  }
  .nav-link:hover{color:#b9c599 !important;}
  .nav-cta-phone{
    font-weight:600;
    color:var(--nv-text);
    font-size:.92rem;
  }
  .btn-whatsapp{
    width:38px;height:38px;
    border-radius:50%;
    background:#25D366;
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;font-size:1.1rem;
  }

  /* HERO */
  .hero{
    position:relative;
    background-image:url(../images/banner.webp);
    width: 100%;
    min-height: 100vh;
    background-size: cover;
    padding:4.5rem 0 13rem;
    overflow:hidden;
    display: flex;
    align-items: center;
  }
  .hero-leaf-decor{
    position:absolute;top:-40px;left:-60px;
    font-size:14rem;
    color:rgba(63,107,52,.08);
    transform:rotate(-15deg);
    pointer-events:none;
  }
  .hero-title{
    font-weight:800;
    font-size:2.9rem;
    line-height:1.12;
    color:var(--nv-green-dark);
    letter-spacing:-.01em;
  }
  .hero-sub-script{
    font-family:'Playfair Display',serif;
    font-style:italic;
    color:var(--nv-green);
    font-size:1.5rem;
    font-weight:600;
    margin:.5rem 0 1.1rem;
  }
  .hero-desc{
    color:var(--nv-muted);
    font-size:1.02rem;
    line-height:1.7;
    max-width:480px;
  }
  .hero-stats{
    background:#fff;
    border-radius:16px;
    padding:1.2rem 1.4rem;
    box-shadow:0 12px 30px rgba(31,61,36,.08);
    margin-top:2.2rem;
  }
  .hero-stats .stat-num{
    font-weight:800;
    font-size:1.35rem;
    color:var(--nv-green-dark);
    font-family:'Playfair Display',serif;
  }
  .hero-stats .stat-label{
    font-size:.72rem;
    color:var(--nv-muted);
    text-transform:uppercase;
    letter-spacing:.06em;
    font-weight:500;
  }
  .hero-img-wrap{
    position:relative;
    border-radius:24px;
    overflow:hidden;
  }
  .hero-img-wrap img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    min-height:460px;
  }
  .hero-pill-list{
    display:flex;
    flex-direction:column;
    gap:.65rem;
  }
  .hero-pill{
    background:#fff;
    border-radius:10px;
    padding:.65rem 1rem;
    display:flex;
    align-items:center;
    gap:.6rem;
    font-weight:600;
    font-size:.85rem;
    color:var(--nv-text);
    box-shadow:0 8px 20px rgba(0,0,0,.08);
    white-space:nowrap;
  }
  .hero-pill i{color:var(--nv-green);font-size:1.05rem;}

  /* PHILOSOPHY */
  .philosophy{
    background-image: url(../images/philosaphy-bg.webp);
    background-position: center;
    color:#fff;
  }
  .philo-circle{
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.18);
    text-align:center;
    color:#fff;
  }
  .philo-circle .pct{font-family:'Playfair Display',serif;font-weight:700;}
  .philo-circle.small{width:112px;height:112px;}
  .philo-circle.small .pct{font-size:1.5rem;}
  .philo-circle.big{width:168px;height:168px;background:#fff;color:var(--nv-green-dark);border:none;box-shadow:0 15px 40px rgba(0,0,0,.25);}
  .philo-circle.big .pct{font-size:2.3rem;}
  .philo-plus{font-size:1.8rem;font-weight:300;color:rgba(255,255,255,.5);}
  .btn-nv-light{
    background:#fff;
    color:var(--nv-green-dark);
    border:none;
    padding:.75rem 1.6rem;
    border-radius:8px;
    font-weight:600;
    font-size:.9rem;
    text-decoration: none;
        display: inline-block;
  }
  .btn-nv-light:hover{background:var(--nv-gold);color:#fff;}

 
  /* ================= JOURNEY (redesign) ================= */
  .journey-section{
    background:var(--nv-cream);
    position:relative;
    overflow:hidden;
  }
  .journey-section .bg-glyph{
    position:absolute;
    right:-4rem;top:-3rem;
    font-size:20rem;
    color:rgba(63,107,52,.05);
    transform:rotate(12deg);
    pointer-events:none;
  }
  .journey-track{
    position:relative;
    display:flex;
    align-items:flex-start;
    gap:0;
    padding-top:1.5rem;
  }
  .journey-track::before{
    content:"";
    position:absolute;
    left:4%;right:4%;
    top:44px;
    height:2px;
    background:repeating-linear-gradient(90deg,#cdd8c2 0 10px,transparent 10px 18px);
    z-index:0;
  }
  .journey-stop{
    flex:1;
    min-width:0;
    position:relative;
    text-align:center;
    z-index:1;
    padding:0 .5rem;
  }
  .journey-stop:nth-child(even) .stop-card{margin-top:2.1rem;}
  .journey-num{
    font-family:'Playfair Display',serif;
    font-weight:700;
    font-size:.72rem;
    letter-spacing:.08em;
    color:var(--nv-gold);
    display:block;
    margin-bottom:.35rem;
  }
  .stop-medal{
    width:88px;height:88px;
    border-radius:50%;
    background:#fff;
    border:1px solid #e3e9da;
    display:flex;align-items:center;justify-content:center;
    margin:0 auto .9rem;
    font-size:1.7rem;
    color:var(--nv-green);
    box-shadow:0 10px 26px rgba(31,61,36,.09);
    transition:all .3s ease;
    position:relative;
  }
  .journey-stop:hover .stop-medal{
    background:var(--nv-green-dark);
    color:#fff;
    transform:translateY(-6px);
  }
  .stop-card h6{font-weight:700;font-size:.95rem;margin-bottom:.3rem;color:var(--nv-green-dark);}
  .stop-card p{font-size:.8rem;color:var(--nv-muted);margin:0;line-height:1.5;}
  .journey-final{
    flex:1.15;
    background:var(--nv-green-dark);
    border-radius:20px;
    color:#fff;
    text-align:center;
    padding:1.7rem 1rem;
    position:relative;
    z-index:1;
    box-shadow:0 20px 40px rgba(31,61,36,.22);
  }
  .journey-final .flag{font-size:1.4rem;color:var(--nv-gold);margin-bottom:.4rem;display:block;}
  .journey-final h6{font-weight:700;margin-bottom:.2rem;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;opacity:.85;}
  .journey-final .big{font-family:'Playfair Display',serif;font-weight:700;font-size:1.6rem;color:#fff;}
  .journey-final small{opacity:.7;font-size:.72rem;}
  @media (max-width:991px){
    .journey-track{flex-wrap:wrap;row-gap:2rem;}
    .journey-track::before{display:none;}
    .journey-stop{flex:1 1 33%;}
    .journey-stop:nth-child(even) .stop-card{margin-top:0;}
    .journey-final{flex:1 1 100%;order:99;}
  }
  @media (max-width:1300px){
      .nav-link{
          font-size:.8rem!important;
        margin: 0 0rem !important;
      }
      .btn-nv-outline{
           font-size:.8rem!important;
           padding: .5rem 1.5rem!important;
      }
      .btn-nv{
           font-size:.8rem!important;
           padding: .5rem 1.5rem!important;
      }
  }
  @media (max-width:599px){
    .bloom-wrap{
        aspect-ratio:auto !important;
    }
      .hero-title{
          font-size:2.5rem;
      }
      .section{
          padding: 3.5rem 0;
      }
  }
  @media (max-width:370px){
      .hero-title{  
        font-size:2.1rem;
      }
  }

  /* PRODUCTS */
  .product-card{
    border-radius:20px;
    overflow:hidden;
    height:100%;
    display:flex;
    flex-direction:column;
    box-shadow:0 8px 24px rgba(0,0,0,.05);
    border:1px solid #eef1e9;
    background:#fff;
  }
  .product-card.tea{background:linear-gradient(160deg,#eef4e6,#b9c599);}
  .product-card.meal{background:linear-gradient(160deg,#faf1de,#b9c599);}
  .product-card.drink{background:linear-gradient(160deg,#eef4e6,#b9c599);}
  .product-img{
    height:230px;
    overflow:hidden;
  }
  .product-img img{width:100%;height:100%;object-fit:cover;}
  .product-body{padding:1.6rem 1.7rem 1.9rem;flex:1;display:flex;flex-direction:column;}
  .product-tag{
    font-family:'Playfair Display',serif;
    font-style:italic;
    color:var(--nv-green);
    font-weight:600;
    font-size:.95rem;
  }
  .product-body h4{font-weight:700;margin-bottom:.15rem;color:var(--nv-green-dark);}
  .product-body ul{list-style:none;padding:0;margin:1rem 0 1.4rem;flex:1;}
  .product-body ul li{
    font-size:.88rem;
    margin-bottom:.55rem;
    display:flex;
    align-items:flex-start;
    gap:.55rem;
    color:var(--nv-text);
  }
  .product-body ul li i{color:var(--nv-green);margin-top:.15rem;}
  .badge-row{
    display:flex;flex-wrap:wrap;
    justify-content:center;
    gap:2.2rem;
  }
  .badge-item{
    display:flex;flex-direction:column;align-items:center;
    gap:.55rem;
    font-size:.78rem;
    font-weight:600;
    color:var(--nv-muted);
    max-width:120px;
    text-align:center;
  }
  .badge-item i{font-size:1.6rem;color:var(--nv-green);}

  /* YOGA CLASSES */
  .yoga-section{
    background:#b9c599 ;
  }
  .yoga-img{
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 20px 45px rgba(31,61,36,.15);
  }
  .yoga-img img{width:100%;display:block;object-fit:cover;height:420px;}
  .yoga-feature{
    text-align:center;
  }
  .yoga-feature i{
    font-size:1.5rem;
    color:var(--nv-green);
    margin-bottom:.5rem;
    display:block;
  }
  .yoga-feature span{
    font-size:.8rem;
    font-weight:600;
    color:var(--nv-text);
    display:block;
  }

  /* PRICING */
  .pricing-card{
    background:#fff;
    border-radius:18px;
    padding:2.1rem 1.7rem;
    height:100%;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    position:relative;
  }
  .pricing-card.featured{
    background:var(--nv-green-dark);
    color:#fff;
    transform:scale(1.04);
    box-shadow:0 22px 45px rgba(31,61,36,.28);
    z-index:2;
  }
  .pricing-badge{
    position:absolute;top:-13px;left:50%;transform:translateX(-50%);
    background:var(--nv-gold);
    color:#fff;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    padding:.35rem 1rem;
    border-radius:20px;
    white-space:nowrap;
  }
  .pricing-card h5{font-weight:700;}
  .pricing-card .sub{font-size:.78rem;opacity:.75;margin-bottom:1.2rem;}
  .pricing-card ul{list-style:none;padding:0;margin:0 0 1.4rem;}
  .pricing-card ul li{
    font-size:.88rem;
    padding:.4rem 0;
    display:flex;
    align-items:center;
    gap:.55rem;
    border-bottom:1px dashed rgba(0,0,0,.08);
  }
  .pricing-card.featured ul li{border-bottom:1px dashed rgba(255,255,255,.15);}
  .pricing-card ul li i{color:var(--nv-green);}
  .pricing-card.featured ul li i{color:var(--nv-gold);}
  .price-amt{
    font-family:'Playfair Display',serif;
    font-weight:800;
    font-size:2rem;
    margin:.4rem 0 1.2rem;
  }
  .steps-card{
    background:#fff;
    border-radius:18px;
    padding:2.1rem 1.7rem;
    height:100%;
    border:1px solid #eef1e9;
  }
  .steps-card h6.step-title{font-weight:700;font-size:.95rem;margin-bottom:.2rem;}
  .step-row{display:flex;gap:.9rem;margin-bottom:1.2rem;align-items:flex-start;}
  .step-num{
    width:34px;height:34px;flex:none;
    border-radius:50%;
    background:var(--nv-green-light);
    color:var(--nv-green);
    display:flex;align-items:center;justify-content:center;
    font-weight:700;
    font-size:.95rem;
  }
  .step-row p{font-size:.8rem;color:var(--nv-muted);margin:0;}

  /* PAYMENT */
  .payment-box{
    background:#fff;
    border-radius:18px;
    border:1px solid #eef1e9;
    padding:2.2rem;
  }
  .qr-box{
    width:150px;height:150px;
    background:#fff;
    border:1px solid #e5e5e5;
    border-radius:10px;
    display:flex;align-items:center;justify-content:center;
    font-size:5.5rem;
    color:#222;
  }
  .payment-divider{border-left:1px solid #eef1e9;}
  @media (max-width:991px){
    
    .payment-divider{border-left:none;border-top:1px solid #eef1e9;padding-top:1.5rem;margin-top:1.5rem;}
}
@media (min-width:1599px){
    .hero{
    position:relative;
    background-image:url(../images/banner-hd.webp);
    width: 100%;
    padding:4.5rem 0 9.5rem;
    overflow:hidden;
    }
}
@media (max-width:599px){
    .hero{
    position:relative;
    background-image:url(../images/banner-mobile.webp);
    width: 100%;
    padding:0rem 0 9.5rem;
    overflow:hidden;
    min-height: 90vh;
  }
}
   
/* ================= TESTIMONIALS — FLIP CARDS ================= */
.stories-section{
  position:relative;
  background: #b9c599;
}

.flip-card{
  perspective:1600px;
  cursor:pointer;
  outline:none;
}

.flip-card-inner{
  position:relative;
  width:100%;
  min-height:380px;
  transition:transform .7s cubic-bezier(.4,.2,.2,1);
  transform-style:preserve-3d;
}

.flip-card.is-flipped .flip-card-inner{
  transform:rotateY(180deg);
}

.flip-card-front,
.flip-card-back{
  position:absolute;
  inset:0;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  border-radius:16px;
  overflow:hidden;
}

/* ---------- FRONT: single collage image ---------- */
.flip-card-front{
  background:#fff;
  border:1px solid #eef1e9;
  box-shadow:0 8px 24px rgba(31,61,36,.08);
  display:flex;
  flex-direction:column;
}

.card-image{
  flex:1;
  min-height:260px;
  overflow:hidden;
}

.card-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.flip-card-footer{
  padding:1rem 1.2rem 1.2rem;
  text-align:center;
}

.flip-card-footer h6{
  font-weight:700;
  margin-bottom:.3rem;
  font-size:1rem;
}

.click-hint{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  font-size:.72rem;
  color:var(--nv-muted);
  font-weight:600;
}

.click-hint i{ font-size:.85rem; }

.weight-loss{
  margin-top:.6rem;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:.25rem;
  color:var(--nv-green);
}

.weight-loss strong{
  font-family:'Playfair Display',serif;
  font-size:1.6rem;
  line-height:1;
}

.weight-loss small{
  font-size:.75rem;
  font-weight:600;
  text-transform:uppercase;
  color:var(--nv-muted);
}

/* ---------- BACK: quote reveal ---------- */
.flip-card-back{
  background:linear-gradient(160deg, var(--nv-green-dark) 0%, var(--nv-green) 100%);
  transform:rotateY(180deg);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:2.25rem 1.75rem;
  color:#fff;
}

.quote-icon{
  font-size:1.8rem;
  color:var(--nv-gold);
  margin-bottom:1rem;
}

.flip-card-back .quote{
  font-family:'Playfair Display',serif;
  font-style:italic;
  font-size:1.02rem;
  line-height:1.6;
  color:rgba(255,255,255,.92);
  margin-bottom:1.25rem;
}

.back-name{
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--nv-gold);
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 767.98px){
  .flip-card-inner{ min-height:340px; }
  .card-image{ min-height:200px; }
}

/* ================= TESTIMONIALS — NAV & PAGINATION ================= */
.stories-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1rem;
  margin-top:2.5rem;
}

.stories-nav button{
  border:none;
  /*background:none;*/
  padding:0;
  cursor:pointer;
}

/* ---------- Prev / Next arrow buttons ---------- */
.stories-nav button[data-bs-slide]{
  width:48px;
  height:48px;
  border-radius:50%;
  background:#fff;
  border:1px solid #dfe6d7;
  color:var(--nv-green-dark);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.1rem;
  transition:background-color .25s ease, color .25s ease, border-color .25s ease, transform .2s ease;
}

.stories-nav button[data-bs-slide]:hover{
  background:var(--nv-green-dark);
  color:#fff;
  border-color:var(--nv-green-dark);
  transform:translateY(-2px);
}

.stories-nav button[data-bs-slide]:active{
  transform:translateY(0);
}

.stories-nav button[data-bs-slide]:focus-visible{
  outline:2px solid var(--nv-gold);
  outline-offset:2px;
}

/* ================= TRUST BADGE GRID ================= */
.badge-grid{
  --badge-radius: 18px;
}

.badge-card{
  background:#fff;
  border-radius:var(--badge-radius);
  box-shadow:0 4px 18px rgba(0,0,0,.05);
  padding:2rem 1.25rem;
  height:100%;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  transition:transform .25s ease, box-shadow .25s ease;
}

.badge-card:hover{
  transform:translateY(-5px);
  box-shadow:0 10px 28px rgba(0,0,0,.08);
}

.badge-icon{
  width:64px;
  height:64px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.6rem;
  margin-bottom:1.1rem;
}

.badge-card p{
  font-size:.92rem;
  font-weight:700;
  color:#2c2c28;
  margin:0;
  line-height:1.4;
}

/* ---------- Icon color variants (pastel bg, solid icon) ---------- */
.badge-icon-green{ background:#e3ede1; color:#3f6b34; }
.badge-icon-amber{ background:#f7ecd9; color:#c9a24b; }
.badge-icon-blue{  background:#e2ecf3; color:#3b6b8f; }
.badge-icon-pink{  background:#f4e6ef; color:#a3567f; }
.badge-icon-olive{ background:#e9ece0; color:#6b7a4f; }
.badge-icon-orange{background:#f6e3d8; color:#c07a45; }
.badge-icon-red{   background:#f6e0e0; color:#b04a4a; }
.badge-icon-teal{  background:#dfece8; color:#3f8a78; }

/* ---------- Responsive ---------- */
@media (max-width: 575.98px){
  .badge-card{
    padding:1.5rem .9rem;
  }
  .badge-icon{
    width:56px;
    height:56px;
    font-size:1.35rem;
  }
  .badge-card p{
    font-size:.85rem;
  }
}


/* ---------- Dot pagination ---------- */
.carousel-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background: #1f3d248f !important;
  transition:background-color .25s ease, width .25s ease, transform .2s ease;
}

.carousel-dot:hover{
  background:var(--nv-green-mid);
}

.carousel-dot.active{
  background:var(--nv-gold);
  width:26px;
  border-radius:6px;
}

.carousel-dot:focus-visible{
  outline:2px solid var(--nv-gold);
  outline-offset:2px;
}

/* ---------- Responsive ---------- */
@media (max-width: 575.98px){
  .stories-nav{
    gap:.75rem;
  }
  .stories-nav button[data-bs-slide]{
    width:42px;
    height:42px;
    font-size:1rem;
  }
}
 
/* Bootstrap carousel default fade fix (optional smooth cross-fade) */
.carousel-item{
  transition:transform .6s ease-in-out;
}
  /* FOOTER */
  footer{
    background:#132316;
    color:#cdd6c6;
    padding-top:4rem;
  }
  footer h5,footer h6{color:#fff;font-weight:700;}
  footer a{color:#a9b39c;text-decoration:none;font-size:.9rem;}
  footer a:hover{color:#fff;}
  footer ul{list-style:none;padding:0;}
  footer ul li{margin-bottom:.6rem;}
  .footer-brand{
    font-family:'Playfair Display',serif;
    font-weight:700;
    color:#fff;
    font-size:1.4rem;
  }
  .social-circle{
    width:36px;height:36px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;
    margin-right:.5rem;
    font-size:.95rem;
  }
  .social-circle:hover{background:var(--nv-green);}
  .footer-bottom{
    border-top:1px solid rgba(255,255,255,.08);
    margin-top:3rem;
    padding:1.3rem 0;
    font-size:.95rem;
    color:#8b9481;
  }
  .newsletter-input{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.15);
    color:#fff;
    border-radius:8px 0 0 8px;
  }
  .newsletter-input::placeholder{color:#8b9481;}

  section h2.section-title{
    font-weight:700;
    color:var(--nv-green-dark);
    letter-spacing:-.01em;
  }
  .section-lead{color:var(--nv-muted);font-size:.95rem;}


  /* Page-specific hero (lighter than homepage hero, no background photo needed) */
  .page-hero{
    background:linear-gradient(160deg, var(--nv-green-dark) 0%, var(--nv-green) 100%);
    padding:6.5rem 0 5rem;
    position:relative;
    overflow:hidden;
  }
  .page-hero .bi{
    position:absolute;
    font-size:16rem;
    color:rgba(255,255,255,.06);
    right:-3rem;top:-4rem;
    transform:rotate(12deg);
  }
  .page-hero h1{
    font-family:'Playfair Display',serif;
    font-weight:800;
    color:#fff;
    font-size:2.6rem;
  }
  .page-hero .crumb{
    color:rgba(255,255,255,.75);
    font-size:.9rem;
  }
  .page-hero .crumb a{color:#fff;text-decoration:none;font-weight:600;}

  .story-num{
    font-family:'Playfair Display',serif;
    font-weight:800;
    font-size:2.4rem;
    color:var(--nv-gold);
    line-height:1;
  }
  .value-card{
    background:#fff;
    border-radius:16px;
    padding:2rem 1.5rem;
    height:100%;
    text-align:center;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .value-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(31,61,36,.1);}
  .value-card i{font-size:2rem;color:var(--nv-green);margin-bottom:1rem;display:block;}
  .value-card h6{font-weight:700;color:var(--nv-green-dark);margin-bottom:.5rem;}
  .value-card p{font-size:.85rem;color:var(--nv-muted);margin:0;}

  .team-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    height:100%;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .team-card:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(31,61,36,.1);}
  .team-photo{
    height:280px;
    overflow:hidden;
  }
  .team-photo img{width:100%;height:100%;object-fit:cover;display:block;}
  .team-body{padding:1.5rem 1.5rem 1.7rem;}
  .team-body h5{
    font-weight:700;
    color:var(--nv-green-dark);
    margin-bottom:.15rem;
    font-size:1.1rem;
  }
  .team-cred{
    font-size:.78rem;
    color:var(--nv-gold);
    font-weight:600;
    letter-spacing:.02em;
    margin-bottom:.25rem;
    display:block;
  }
  .team-role{
    font-family:'Playfair Display',serif;
    font-style:italic;
    color:var(--nv-green);
    font-size:.92rem;
    margin-bottom:.8rem;
    display:block;
  }
  .team-body p{
    font-size:.85rem;
    color:var(--nv-muted);
    line-height:1.7;
    margin:0;
  }

   .contact-info-card{
    background:#fff;
    border-radius:18px;
    padding:2rem 1.7rem;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    height:100%;
  }
  .contact-info-card .icon-circle{
    width:54px;height:54px;
    border-radius:50%;
    background:var(--nv-green-light);
    color:var(--nv-green);
    display:flex;align-items:center;justify-content:center;
    font-size:1.3rem;
    margin-bottom:1.1rem;
  }
  .contact-info-card h6{font-weight:700;color:var(--nv-green-dark);margin-bottom:.4rem;}
  .contact-info-card p{font-size:.88rem;color:var(--nv-muted);margin:0;line-height:1.6;}

  .contact-form-card{
    background:#fff;
    border-radius:20px;
    padding:2.4rem;
    border:1px solid #eef1e9;
    box-shadow:0 12px 30px rgba(0,0,0,.05);
  }
  .contact-form-card .form-control,
  .contact-form-card .form-select{
    border-radius:8px;
    border:1px solid #dfe6d7;
    padding:.7rem .9rem;
    font-size:.9rem;
  }
  .contact-form-card .form-control:focus,
  .contact-form-card .form-select:focus{
    border-color:var(--nv-green);
    box-shadow:0 0 0 .2rem rgba(63,107,52,.12);
  }
  .contact-form-card label{
    font-size:.85rem;
    font-weight:600;
    color:var(--nv-text);
    margin-bottom:.35rem;
  }
  .map-frame{
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
    line-height:0;
  }
  .map-frame iframe{width:100%;height:360px;border:0;display:block;}

  .pillar-row{
    display:flex;gap:1.4rem;
    padding:1.6rem 0;
    border-bottom:1px dashed #e3e9da;
  }
  .pillar-row:last-child{border-bottom:none;}
  .pillar-icon{
    width:56px;height:56px;flex:none;
    border-radius:50%;
    background:var(--nv-green-light);
    color:var(--nv-green);
    display:flex;align-items:center;justify-content:center;
    font-size:1.35rem;
  }
  .pillar-row h6{font-weight:700;color:var(--nv-green-dark);margin-bottom:.3rem;}
  .pillar-row p{font-size:.88rem;color:var(--nv-muted);margin:0;line-height:1.7;}

   .faq-item{
    background:#fff;
    border-radius:14px;
    border:1px solid #eef1e9;
    padding:1.3rem 1.5rem;
    margin-bottom:1rem;
  }
  .faq-item h6{font-weight:700;color:var(--nv-green-dark);margin-bottom:.4rem;font-size:.95rem;}
  .faq-item p{font-size:.85rem;color:var(--nv-muted);margin:0;line-height:1.6;}

   /*.legal-wrap{max-width:820px;}*/
  .legal-nav{
    background:#fff;
    border-radius:16px;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    padding:1.5rem;
  }
  .legal-nav a{
    display:block;
    font-size:.85rem;
    font-weight:600;
    color:var(--nv-text);
    text-decoration:none;
    padding:.5rem 0;
    border-bottom:1px dashed #eef1e9;
  }
  .legal-nav a:last-child{border-bottom:none;}
  .legal-nav a:hover{color:var(--nv-green);}
  .legal-body h2{
    font-family:'Playfair Display',serif;
    font-weight:700;
    font-size:1.3rem;
    color:var(--nv-green-dark);
    margin-top:2.2rem;
    margin-bottom:.8rem;
  }
  .legal-body h2:first-child{margin-top:0;}
  .legal-body p, .legal-body li{
    font-size:.92rem;
    color:var(--nv-muted);
    line-height:1.8;
  }
  .legal-body ul{padding-left:1.2rem;}

  .ingredient-row{
    display:flex;align-items:center;gap:1rem;
    padding:1rem 0;
    border-bottom:1px dashed #e3e9da;
  }
  .ingredient-row:last-child{border-bottom:none;}
  .ingredient-row .num{
    font-family:'Playfair Display',serif;font-weight:700;
    color:var(--nv-gold);font-size:1.1rem;flex:none;width:32px;
  }
  .ingredient-row h6{font-weight:700;margin-bottom:.15rem;color:var(--nv-green-dark);font-size:.92rem;}
  .ingredient-row p{margin:0;font-size:.9rem;color:var(--nv-muted);}


   .program-compare{
    background:#fff;
    border-radius:18px;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    padding:2rem;
    height:100%;
  }
  .program-compare.featured{
    background:var(--nv-green-dark);
    color:#fff;
  }
  .program-compare h5{font-weight:700;}
  .program-compare .sub{font-size:.82rem;opacity:.75;margin-bottom:1rem;}
  .program-compare ul{list-style:none;padding:0;margin:1rem 0 1.4rem;}
  .program-compare ul li{
    font-size:.88rem;padding:.4rem 0;display:flex;align-items:center;gap:.55rem;
    border-bottom:1px dashed rgba(0,0,0,.08);
  }
  .program-compare.featured ul li{border-bottom:1px dashed rgba(255,255,255,.15);}
  .program-compare ul li i{color:var(--nv-green);}
  .program-compare.featured ul li i{color:var(--nv-gold);}

  .quality-step{
    background:#fff;
    border-radius:16px;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    padding:1.8rem 1.5rem;
    height:100%;
    text-align:center;
  }
  .quality-step .step-badge{
    width:56px;height:56px;
    border-radius:50%;
    background:var(--nv-green-light);
    color:var(--nv-green);
    display:flex;align-items:center;justify-content:center;
    font-size:1.4rem;
    margin:0 auto 1rem;
  }
  .quality-step h6{font-weight:700;color:var(--nv-green-dark);margin-bottom:.5rem;}
  .quality-step p{font-size:.85rem;color:var(--nv-muted);margin:0;line-height:1.6;}

  .policy-list li{
    display:flex;gap:.7rem;
    font-size:.92rem;
    color:var(--nv-text);
    margin-bottom:.9rem;
    line-height:1.6;
  }
  .policy-list li i{color:var(--nv-green);margin-top:.2rem;flex:none;}

  .stat-strip{
    background:#fff;
    border-radius:18px;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    padding:2rem 1rem;
    text-align:center;
  }
  .stat-strip .num{
    font-family:'Playfair Display',serif;
    font-weight:800;
    font-size:2rem;
    color:var(--nv-green-dark);
  }
  .stat-strip .label{font-size:.78rem;color:var(--nv-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;}

  /*.legal-wrap{max-width:820px;}*/
  .legal-nav{
    background:#fff;
    border-radius:16px;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    padding:1.5rem;
  }
  .legal-nav a{
    display:block;
    font-size:.85rem;
    font-weight:600;
    color:var(--nv-text);
    text-decoration:none;
    padding:.5rem 0;
    border-bottom:1px dashed #eef1e9;
  }
  .legal-nav a:last-child{border-bottom:none;}
  .legal-nav a:hover{color:var(--nv-green);}
  .legal-body h2{
    font-family:'Playfair Display',serif;
    font-weight:700;
    font-size:1.3rem;
    color:var(--nv-green-dark);
    margin-top:2.2rem;
    margin-bottom:.8rem;
  }
  .legal-body h2:first-child{margin-top:0;}
  .legal-body p, .legal-body li{
    font-size:.92rem;
    color:var(--nv-muted);
    line-height:1.8;
  }
  .legal-body ul{padding-left:1.2rem;}

  .schedule-card{
    background:#fff;
    border-radius:16px;
    border:1px solid #eef1e9;
    box-shadow:0 8px 22px rgba(0,0,0,.04);
    padding:1.6rem 1.4rem;
    height:100%;
  }
  .schedule-card .time{
    font-family:'Playfair Display',serif;
    font-weight:700;
    color:var(--nv-green-dark);
    font-size:1.15rem;
    margin-bottom:.2rem;
  }
  .schedule-card .level{
    display:inline-block;
    font-size:.7rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.05em;
    color:var(--nv-green);
    background:var(--nv-green-light);
    padding:.25rem .6rem;
    border-radius:20px;
    margin-bottom:.6rem;
  }
  .schedule-card h6{font-weight:700;margin-bottom:.2rem;}
  .schedule-card p{font-size:.82rem;color:var(--nv-muted);margin:0;}


  /* ESSENCE / NAME MEANING — v4: dark green background, simple gold circle for logo */
.essence-section{
  background:linear-gradient(160deg, var(--nv-green-dark) 0%, #24451f 100%);
  position:relative;
  overflow:hidden;
}
.essence-section .petal-glyph{
  position:absolute;
  font-size:14rem;
  color:rgba(255,255,255,.04);
  pointer-events:none;
}
.essence-section .petal-glyph.left{left:-3rem;top:-2rem;transform:rotate(-18deg);}
.essence-section .petal-glyph.right{right:-3rem;bottom:-2rem;transform:rotate(15deg);}

.bloom-wrap{
  width:220px;
  height:220px;
  margin:0 auto;
  border-radius:50%;
  background:#b9c599;
  padding:2rem;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 0 0 1px rgba(201,162,75,.4), 0 0 0 8px rgba(201,162,75,.08), 0 20px 45px rgba(0,0,0,.25);
}
.bloom-wrap img{
  width:100%;
  height:auto;
  object-fit:contain;
}

.essence-tag-row{
  display:flex;
  justify-content:center;
  gap:.8rem;
  margin-top:1.6rem;
  flex-wrap:wrap;
}
.essence-tag{
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  padding:.5rem 1.1rem;
  text-align:center;
}
.essence-tag .tamil{
  font-family:'Playfair Display',serif;
  font-style:italic;
  font-weight:700;
  font-size:1.05rem;
  display:block;
  color:var(--nv-gold);
}
.essence-tag .meaning{
  font-size:.62rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#cfe0c4;
  font-weight:600;
}

.essence-content .eyebrow{color:var(--nv-gold);}
.essence-content h2{
  font-family:'Playfair Display',serif;
  color:#fff;
  font-size:1.7rem;
  font-weight:700;
}
.essence-quote{
  font-family:'Playfair Display',serif;
  font-style:italic;
  font-weight:600;
  font-size:1.5rem;
  color:#fff;
  line-height:1.5;
  margin:1.2rem 0 1.3rem;
  padding-left:1.4rem;
  border-left:3px solid var(--nv-gold);
}
.essence-desc{
  color:#cfe0c4;
  font-size:.96rem;
  line-height:1.85;
}
.essence-badges{
  display:flex;
  gap:1rem;
  margin-top:1.8rem;
  flex-wrap:wrap;
}
.essence-badge{
  display:flex;
  align-items:center;
  gap:.55rem;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.15);
  border-radius:30px;
  padding:.5rem 1rem;
  font-size:.8rem;
  font-weight:600;
  color:#e7ede2;
}
.essence-badge i{color:var(--nv-gold);}

@media (max-width:991.98px){
  .bloom-wrap{margin-bottom:.5rem;}
}

/* ===== Floating Daily Check-in button ===== */
.checkin-fab{
  position:fixed;
  right:1.4rem;
  bottom:1.4rem;
  z-index:1050;
  display:flex;
  align-items:center;
  gap:.6rem;
  background:#132316;
  color:#fff;
  border-radius:50px;
  padding:.85rem 1.1rem;
  box-shadow:0 10px 28px rgba(19,35,22,.35);
  text-decoration:none;
  font-weight:600;
  font-size:.85rem;
  border:1px solid rgba(255,255,255,.08);
  transition:all .25s ease;
}
.checkin-fab i{
  font-size:1.15rem;
  color:var(--nv-gold);
}
.checkin-fab:hover{
  background:#1c331e;
  color:#fff;
  transform:translateY(-3px);
  box-shadow:0 14px 34px rgba(19,35,22,.45);
}
.checkin-fab .fab-label{
  white-space:nowrap;
}

/* Collapse to icon-only on small screens so it doesn't crowd mobile UI */
@media (max-width:575.98px){
  .checkin-fab{
    padding:.8rem;
    border-radius:50%;
  }
  .checkin-fab .fab-label{ display:none; }
}

/* ===== Custom white navbar toggler icon ===== */
.navbar-toggler{
  border:none;
  padding:.25rem .5rem;
}
.navbar-toggler:focus{
  box-shadow:none;
  outline:none;
}
.navbar-toggler-icon{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
  width:1.6em;
  height:1.6em;
}


/* Pricing sub-text (pack size / timing) */
.pricing-card ul li,
.program-compare ul li{
  flex-direction:column;
  align-items:flex-start;
  gap:.15rem;
}
.pricing-card ul li .li-main,
.program-compare ul li .li-main{
  display:flex;
  align-items:center;
  gap:.55rem;
}
.pricing-card ul li .li-sub{
  font-size:.72rem;
  color:var(--nv-muted);
  padding-left:1.55rem;
  font-weight:500;
  line-height:1.3;
}
.pricing-card.featured ul li .li-sub{
  color:rgba(255,255,255,.65);
}

/* Slightly refined pricing card look */
.pricing-card{
  transition:transform .3s ease, box-shadow .3s ease;
}
.pricing-card:not(.featured):hover{
  transform:translateY(-4px);
  box-shadow:0 16px 34px rgba(31,61,36,.1);
}
.pricing-card ul li{
  padding:.55rem 0;
}

/* Individual products price alignment */
.pricing-card ul li .li-main{
  justify-content:start;
  width:100%;
}

/* Founder line */
.founder-name{
  font-family:'Playfair Display',serif;
  font-style:italic;
  font-weight:600;
}
.founder-title{
  font-style:italic;
  font-size:.78rem;
  opacity:.75;
  display:block;
  margin-top:.15rem;
}

/* 6th yoga feature — mobile only */
.yoga-feature-mobile-only{
  display:none;
}
@media (max-width:767.98px){
  .yoga-feature-mobile-only{
    display:block;
  }
}

/* ===== General Wellness Yoga ===== */
.wellness-track-card{
  background:#fff;
  border-radius:16px;
  border:1px solid #eef1e9;
  box-shadow:0 8px 22px rgba(0,0,0,.04);
  padding:1.8rem 1.5rem;
  height:100%;
  text-align:center;
  transition:transform .25s ease, box-shadow .25s ease;
}
.wellness-track-card:hover{
  transform:translateY(-6px);
  box-shadow:0 16px 32px rgba(31,61,36,.1);
}
.wellness-track-card .track-icon{
  width:64px;height:64px;
  border-radius:50%;
  background:var(--nv-green-light);
  color:var(--nv-green);
  display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;
  margin:0 auto 1.1rem;
}
.wellness-track-card h6{font-weight:700;color:var(--nv-green-dark);margin-bottom:.5rem;}
.wellness-track-card p{font-size:.85rem;color:var(--nv-muted);margin:0;line-height:1.65;}

/* ===== Hiring Section ===== */
.hiring-section{
  background:linear-gradient(160deg, var(--nv-green-dark) 0%, #24451f 100%);
  position:relative;
  overflow:hidden;
  padding:5.5rem 0;
}
.hiring-section .petal-glyph{
  position:absolute;
  font-size:16rem;
  color:rgba(255,255,255,.04);
  pointer-events:none;
}
.hiring-section .petal-glyph.left{left:-3rem;top:-3rem;transform:rotate(-18deg);}
.hiring-badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  background:rgba(201,162,75,.12);
  border:1px solid rgba(201,162,75,.35);
  color:var(--nv-gold);
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:.45rem 1rem;
  border-radius:30px;
  margin-bottom:1.2rem;
}
.hiring-title{
  font-family:'Playfair Display',serif;
  font-weight:800;
  color:#fff;
  font-size:2.1rem;
  margin-bottom:1rem;
}
.hiring-meta{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.6rem;
  margin-bottom:1.6rem;
}
.hiring-meta span{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);
  color:#e7ede2;
  font-size:.78rem;
  font-weight:600;
  padding:.4rem .85rem;
  border-radius:20px;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}
.hiring-meta span i{color:var(--nv-gold);}
.hiring-intro{
  color:#cfe0c4;
  font-size:.96rem;
  line-height:1.85;
  margin-bottom:2rem; 
}
.hiring-block{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:1.7rem 1.8rem;
  height:100%;
}
.hiring-block h6{
  color:var(--nv-gold);
  font-weight:700;
  font-size:.85rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:1.1rem;
  display:flex;
  align-items:center;
  gap:.55rem;
}
.hiring-block ul{
  list-style:none;
  padding:0;
  margin:0;
}
.hiring-block ul li{
  display:flex;
  gap:.65rem;
  font-size:.88rem;
  color:#e7ede2;
  line-height:1.6;
  margin-bottom:.85rem;
}
.hiring-block ul li:last-child{margin-bottom:0;}
.hiring-block ul li i{
  color:var(--nv-gold);
  margin-top:.2rem;
  flex:none;
  font-size:.85rem;
}
.hiring-cta{
  text-align:center;
  margin-top:2.5rem;
}

/* ===== Application Form ===== */
.apply-form-card{
  background:#fff;
  border-radius:20px;
  padding:2.4rem;
  box-shadow:0 20px 50px rgba(0,0,0,.15);
}
.apply-form-card .form-note{
  background:var(--nv-green-light);
  border:1px solid #dfe6d7;
  border-radius:10px;
  padding:.9rem 1.1rem;
  font-size:.83rem;
  color:var(--nv-green-dark);
  margin-bottom:1.8rem;
  line-height:1.6;
}
.apply-form-card .form-section-label{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--nv-gold);
  margin:1.8rem 0 1rem;
  padding-bottom:.5rem;
  border-bottom:1px dashed #e3e9da;
}
.apply-form-card .form-section-label:first-of-type{margin-top:0;}
.apply-form-card label{
  font-size:.85rem;
  font-weight:600;
  color:var(--nv-text);
  margin-bottom:.35rem;
}
.apply-form-card .form-control,
.apply-form-card .form-select{
  border-radius:8px;
  border:1px solid #dfe6d7;
  padding:.7rem .9rem;
  font-size:.9rem;
}
.apply-form-card .form-control:focus,
.apply-form-card .form-select:focus{
  border-color:var(--nv-green);
  box-shadow:0 0 0 .2rem rgba(63,107,52,.12);
}
.apply-form-card .form-text{font-size:.75rem;}
.apply-declaration{
  border:1px solid #dfe6d7;
  border-radius:10px;
  padding:1.1rem 1.2rem;
  margin-top:1.8rem;
  font-size:.85rem;
  color:var(--nv-muted);
  display:flex;
  gap:.7rem;
  align-items:flex-start;
}
.apply-declaration input{margin-top:.2rem;}
