/* ============================================================
   AKS VISIONARY — Shared Stylesheet
   Brand lime #7EFD01 · Espresso #2C2013 · Turmeric #E0A100
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700;800&family=Work+Sans:wght@400;500;600;700&display=swap');

:root{
  --lime:#7EFD01;
  --lime-dark:#5AC000;
  --espresso:#2C2013;
  --espresso-2:#3E2D1B;
  --plum:#4A1942;
  --turmeric:#E0A100;
  --turmeric-2:#D97A1E;
  --chili:#B23A2E;
  --cream:#F3E9D2;
  --cream-2:#FCF8EE;
  --gold:#B8863B;
  --line: rgba(44,32,19,0.13);
  --shadow: 0 12px 30px rgba(44,32,19,0.14);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Work Sans', sans-serif;
  background:var(--cream-2);
  color:var(--espresso);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{font-family:'Cinzel', serif; letter-spacing:0.02em;}
.eyebrow{
  font-family:'Work Sans',sans-serif; text-transform:uppercase;
  letter-spacing:0.22em; font-size:12px; font-weight:600;
}
a{text-decoration:none; color:inherit;}
img{max-width:100%; display:block;}
ul{list-style:none;}
.wrap{max-width:1240px; margin:0 auto; padding:0 32px;}
button{font-family:inherit; cursor:pointer; border:none;}
section{padding:88px 0;}

/* ---------- RIBBON (signature element from crest) ---------- */
.ribbon{
  position:relative; background:var(--cream-2);
  border-top:2px solid var(--espresso); border-bottom:2px solid var(--espresso);
  padding:6px 18px; display:inline-flex; align-items:center; gap:6px;
}
.ribbon::before,.ribbon::after{
  content:""; position:absolute; top:0; bottom:0; width:14px; background:inherit;
  border-top:2px solid var(--espresso); border-bottom:2px solid var(--espresso);
}
.ribbon::before{left:-13px; clip-path:polygon(100% 0, 0 50%, 100% 100%);}
.ribbon::after{right:-13px; clip-path:polygon(0 0, 100% 50%, 0 100%);}

/* ---------- HEADER ---------- */
header{position:sticky; top:0; z-index:100; background:var(--cream-2); border-bottom:1px solid var(--line);}
.header-inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 32px; max-width:1240px; margin:0 auto;
}
.brand{display:flex; align-items:center; gap:12px;}
.brand img{width:50px; height:50px; border-radius:50%; border:2px solid var(--espresso);}
.brand-name{font-size:21px; font-weight:700; color:var(--plum); letter-spacing:0.04em;}
.brand-sub{font-size:9.5px; letter-spacing:0.14em; color:var(--turmeric-2); text-transform:uppercase;}
nav{display:flex; gap:30px;}
nav a{
  font-size:13.5px; font-weight:600; text-transform:uppercase; letter-spacing:0.06em;
  color:var(--espresso-2); position:relative; padding:4px 0;
}
nav a::after{
  content:""; position:absolute; left:0; bottom:-2px; width:0; height:2px;
  background:var(--lime-dark); transition:width .25s ease;
}
nav a:hover::after, nav a.active::after{width:100%;}
nav a.active{color:var(--plum);}
.header-icons{display:flex; align-items:center; gap:16px;}
.icon-btn{
  width:36px; height:36px; border-radius:50%; background:var(--espresso); color:var(--lime);
  display:flex; align-items:center; justify-content:center; font-size:15px; transition:background .2s ease;
}
.icon-btn:hover{background:var(--lime-dark); color:var(--espresso);}
.cart-count{position:relative;}
.cart-count span{
  position:absolute; top:-6px; right:-6px; background:var(--turmeric);
  color:var(--espresso); font-size:9px; font-weight:700; width:16px; height:16px;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
}
.menu-toggle{display:none; width:36px; height:36px; border-radius:50%; background:var(--espresso); color:var(--lime); align-items:center; justify-content:center; font-size:16px;}

/* ---------- PAGE HERO (inner pages) ---------- */
.page-hero{
  background:var(--espresso); padding:64px 0; text-align:center; position:relative; overflow:hidden;
}
.page-hero .feather-bg{position:absolute; inset:0; opacity:0.1;}
.page-hero .eyebrow{color:var(--turmeric); display:block; margin-bottom:12px; position:relative; z-index:2;}
.page-hero h1{color:var(--cream-2); font-size:38px; font-weight:700; position:relative; z-index:2;}
.page-hero .crumb{color:rgba(243,233,210,0.55); font-size:13px; margin-top:12px; position:relative; z-index:2;}
.page-hero .crumb a{color:var(--lime);}

/* ---------- BUTTONS ---------- */
.btn-primary{
  background:var(--lime); color:var(--espresso); font-weight:700; font-size:13.5px;
  text-transform:uppercase; letter-spacing:0.07em; padding:16px 32px; border-radius:2px;
  transition:transform .2s ease, background .2s ease, color .2s ease; display:inline-block;
}
.btn-primary:hover{background:var(--espresso); color:var(--lime); transform:translateY(-2px);}
.btn-ghost{
  color:var(--espresso); font-weight:600; font-size:13.5px; text-transform:uppercase;
  letter-spacing:0.07em; border-bottom:1px solid var(--gold); padding-bottom:4px;
}
.btn-outline{
  border:2px solid var(--espresso); color:var(--espresso); font-weight:700; font-size:13px;
  text-transform:uppercase; letter-spacing:0.06em; padding:13px 26px; border-radius:2px;
  transition:all .2s ease; display:inline-block; background:transparent;
}
.btn-outline:hover{background:var(--espresso); color:var(--lime);}

/* ---------- SECTION HEAD ---------- */
.sec-head{text-align:center; margin-bottom:52px;}
.sec-head .eyebrow{color:var(--gold); display:block; margin-bottom:12px;}
.sec-head h2{font-size:34px; color:var(--plum); font-weight:700;}
.sec-head p{max-width:540px; margin:14px auto 0; color:rgba(44,32,19,0.65); font-size:15px; line-height:1.7;}

/* ---------- TRUST STRIP ---------- */
.trust{background:var(--cream); border-bottom:1px solid var(--line); padding:26px 0;}
.trust-inner{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.trust-item{display:flex; align-items:center; gap:12px;}
.trust-item .ic{
  width:40px; height:40px; border-radius:50%; background:var(--espresso); color:var(--lime);
  display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0;
}
.trust-item strong{display:block; font-size:13px; font-weight:700;}
.trust-item span{font-size:11.5px; color:rgba(44,32,19,0.6);}

/* ---------- PRODUCT CARD ---------- */
.prod-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:26px;}
.prod-card{
  background:var(--cream-2); border:1px solid var(--line); border-radius:6px;
  overflow:hidden; transition:box-shadow .25s ease, transform .25s ease; display:flex; flex-direction:column;
}
.prod-card:hover{box-shadow:var(--shadow); transform:translateY(-6px);}
.prod-media{
  aspect-ratio:1/1; background:repeating-linear-gradient(45deg, #efe6d0, #efe6d0 10px, #f6efdd 10px, #f6efdd 20px);
  display:flex; align-items:center; justify-content:center; position:relative;
}
.prod-media svg{width:62%; height:62%;}
.qty-badge{
  position:absolute; top:10px; left:10px; background:var(--lime-dark); color:var(--espresso);
  font-size:10px; font-weight:700; padding:4px 9px; border-radius:3px; letter-spacing:0.02em;
}
.off-badge{
  position:absolute; top:10px; right:10px; background:#1D8FD9; color:#fff;
  font-size:10px; font-weight:700; padding:4px 9px; border-radius:3px;
}
.prod-body{padding:18px 18px 20px; display:flex; flex-direction:column; gap:6px; flex:1;}
.prod-name{font-size:15px; font-weight:600; color:var(--espresso);}
.prod-code{font-size:11.5px; color:rgba(44,32,19,0.5);}
.prod-bv{font-size:12.5px; color:var(--turmeric-2); font-weight:600;}
.prod-bv b{color:var(--espresso);}
.prod-foot{margin-top:auto; display:flex; align-items:center; justify-content:space-between; padding-top:12px;}
.prod-mrp{font-size:15px; font-weight:700; color:var(--plum);}
.prod-mrp .label{font-size:10px; color:rgba(44,32,19,0.5); font-weight:600; display:block; text-transform:uppercase; letter-spacing:0.05em;}
.add-btn{
  width:36px; height:36px; border-radius:50%; background:var(--espresso); color:var(--lime);
  font-size:16px; display:flex; align-items:center; justify-content:center; transition:background .2s ease;
}
.add-btn:hover{background:var(--lime-dark); color:var(--espresso);}

/* ---------- FILTER BAR (shop page) ---------- */
.filter-bar{display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-bottom:46px;}
.filter-chip{
  padding:10px 22px; border-radius:30px; border:1.5px solid var(--espresso); font-size:12.5px;
  font-weight:600; text-transform:uppercase; letter-spacing:0.05em; transition:all .2s ease;
}
.filter-chip:hover, .filter-chip.active{background:var(--espresso); color:var(--lime);}

/* ---------- CARD GENERIC (about / legal / plan) ---------- */
.info-card{
  background:var(--cream-2); border:1px solid var(--line); border-radius:6px; padding:32px 28px;
  transition:box-shadow .25s ease, transform .25s ease;
}
.info-card:hover{box-shadow:var(--shadow); transform:translateY(-4px);}
.info-card .ic{
  width:54px; height:54px; border-radius:50%; background:var(--lime); color:var(--espresso);
  display:flex; align-items:center; justify-content:center; font-size:22px; margin-bottom:20px;
}
.info-card h3{font-size:17px; font-weight:700; margin-bottom:10px; color:var(--espresso);}
.info-card p{font-size:13.5px; line-height:1.7; color:rgba(44,32,19,0.65);}

/* ---------- CTA BANNER ---------- */
.cta-banner{background:var(--lime); position:relative; overflow:hidden; padding:80px 0; text-align:center;}
.cta-banner .feather-bg{position:absolute; inset:0; opacity:0.13;}
.cta-inner{position:relative; z-index:2;}
.cta-inner .ribbon{background:var(--espresso); color:var(--cream); border-color:var(--espresso); margin-bottom:22px;}
.cta-inner .ribbon::before,.cta-inner .ribbon::after{background:var(--espresso);}
.cta-inner h2{font-size:36px; color:var(--espresso); font-weight:800; margin-bottom:14px;}
.cta-inner p{color:rgba(44,32,19,0.75); font-size:15px; margin-bottom:30px;}

/* ---------- TESTIMONIALS ---------- */
.testimonials{background:var(--espresso); color:var(--cream);}
.testimonials .sec-head h2{color:var(--cream);}
.testimonials .sec-head p{color:rgba(243,233,210,0.6);}
.testi-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.testi-card{background:var(--espresso-2); padding:32px 26px; border-radius:6px; border:1px solid rgba(243,233,210,0.1);}
.testi-card .quote{font-size:30px; color:var(--turmeric); font-family:'Cinzel'; line-height:0.4; display:block; margin-bottom:14px;}
.testi-card p{font-size:13.5px; line-height:1.75; color:rgba(243,233,210,0.82); margin-bottom:20px;}
.testi-name{font-weight:700; font-size:14px;}
.testi-role{font-size:11.5px; color:var(--turmeric);}
.stars{color:var(--lime); font-size:13px; margin-bottom:10px;}

/* ---------- NEWSLETTER ---------- */
.newsletter{background:var(--cream); text-align:center;}
.newsletter h2{font-size:28px; color:var(--plum); margin-bottom:12px;}
.newsletter p{color:rgba(44,32,19,0.65); font-size:13.5px; margin-bottom:28px;}
.news-form{display:flex; max-width:420px; margin:0 auto; border:2px solid var(--espresso); border-radius:2px; overflow:hidden;}
.news-form input{flex:1; border:none; padding:15px 16px; font-family:inherit; font-size:13.5px; background:var(--cream-2); outline:none;}
.news-form button{background:var(--espresso); color:var(--lime); padding:0 24px; font-weight:700; text-transform:uppercase; font-size:12.5px; letter-spacing:0.05em; transition:background .2s ease;}
.news-form button:hover{background:var(--lime-dark); color:var(--espresso);}

/* ---------- FOOTER ---------- */
footer{background:var(--espresso); color:rgba(243,233,210,0.75); padding-top:70px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:38px; padding-bottom:50px; border-bottom:1px solid rgba(243,233,210,0.12);}
.footer-brand{display:flex; align-items:center; gap:12px; margin-bottom:16px;}
.footer-brand img{width:44px; height:44px; border-radius:50%;}
.footer-brand span{font-family:'Cinzel'; font-size:18px; color:var(--cream); font-weight:700;}
.footer-col h4{color:var(--cream); font-size:12.5px; text-transform:uppercase; letter-spacing:0.09em; margin-bottom:18px;}
.footer-col li{margin-bottom:11px; font-size:13.5px;}
.footer-col a:hover{color:var(--lime);}
.footer-bottom{padding:24px 0; display:flex; justify-content:space-between; align-items:center; font-size:11.5px; color:rgba(243,233,210,0.5); flex-wrap:wrap; gap:12px;}
.footer-bottom .ribbon{background:var(--espresso); border-color:rgba(243,233,210,0.3); color:rgba(243,233,210,0.7); font-size:10.5px;}
.footer-bottom .ribbon::before,.footer-bottom .ribbon::after{background:var(--espresso); border-color:rgba(243,233,210,0.3);}
.socials{display:flex; gap:10px;}
.socials a{width:32px; height:32px; border-radius:50%; border:1px solid rgba(243,233,210,0.25); display:flex; align-items:center; justify-content:center; font-size:12.5px;}
.socials a:hover{background:var(--lime); color:var(--espresso); border-color:var(--lime);}

/* ---------- CONTACT PAGE ---------- */
.contact-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:50px; align-items:start;}
.contact-info .info-line{display:flex; gap:16px; margin-bottom:26px; align-items:flex-start;}
.contact-info .ic{
  width:44px; height:44px; border-radius:50%; background:var(--espresso); color:var(--lime);
  display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0;
}
.contact-info strong{display:block; font-size:14px; margin-bottom:3px;}
.contact-info span{font-size:13.5px; color:rgba(44,32,19,0.65); line-height:1.6;}
.contact-form{background:var(--cream); border:1px solid var(--line); border-radius:8px; padding:36px;}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px;}
.form-field{display:flex; flex-direction:column; gap:6px;}
.form-field label{font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.04em; color:var(--espresso);}
.form-field input, .form-field select, .form-field textarea{
  border:1.5px solid var(--line); border-radius:4px; padding:12px 14px; font-family:inherit; font-size:13.5px;
  background:var(--cream-2); outline:none; transition:border-color .2s ease;
}
.form-field input:focus, .form-field select:focus, .form-field textarea:focus{border-color:var(--lime-dark);}
.map-box{
  margin-top:36px; height:260px; border-radius:8px; border:1px solid var(--line);
  background:linear-gradient(135deg, var(--cream) 0%, #ece0c4 100%);
  display:flex; align-items:center; justify-content:center; color:rgba(44,32,19,0.4); font-size:13px; text-align:center;
}

/* ---------- ABOUT PAGE EXTRAS ---------- */
.about-split{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;}
.about-media{
  aspect-ratio:4/3; border-radius:10px; background:linear-gradient(155deg, var(--lime) 0%, var(--lime-dark) 100%);
  display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
}
.about-media img{width:56%; border-radius:50%; border:5px solid var(--espresso);}
.about-copy .eyebrow{color:var(--gold); display:block; margin-bottom:14px;}
.about-copy h2{font-size:32px; color:var(--plum); margin-bottom:18px;}
.about-copy p{font-size:14.5px; line-height:1.85; color:rgba(44,32,19,0.7); margin-bottom:16px;}
.value-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.stat-row{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center;}
.stat-item .num{font-family:'Cinzel'; font-size:38px; color:var(--plum); font-weight:700;}
.stat-item .lbl{font-size:12px; text-transform:uppercase; letter-spacing:0.06em; color:rgba(44,32,19,0.6); margin-top:6px;}

/* ---------- BUSINESS PLAN PAGE ---------- */
.plan-steps{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.plan-step{text-align:center; position:relative;}
.plan-step .num-badge{
  width:64px; height:64px; border-radius:50%; background:var(--espresso); color:var(--lime);
  display:flex; align-items:center; justify-content:center; font-family:'Cinzel'; font-size:22px; font-weight:700;
  margin:0 auto 18px;
}
.plan-step h3{font-size:15.5px; margin-bottom:8px;}
.plan-step p{font-size:13px; color:rgba(44,32,19,0.62); line-height:1.6;}
.tier-table{width:100%; border-collapse:collapse; background:var(--cream-2); border-radius:8px; overflow:hidden; box-shadow:var(--shadow);}
.tier-table th{background:var(--espresso); color:var(--lime); font-size:12px; text-transform:uppercase; letter-spacing:0.05em; padding:16px 18px; text-align:left;}
.tier-table td{padding:15px 18px; font-size:13.5px; border-bottom:1px solid var(--line);}
.tier-table tr:last-child td{border-bottom:none;}
.tier-table tr:nth-child(even) td{background:var(--cream);}
.disclaimer-box{
  background:var(--cream); border-left:4px solid var(--turmeric-2); padding:22px 26px; border-radius:4px;
  font-size:13px; line-height:1.75; color:rgba(44,32,19,0.7); margin-top:40px;
}

/* ---------- LEGAL PAGE ---------- */
.legal-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.doc-card{
  background:var(--cream-2); border:1px solid var(--line); border-radius:6px; padding:26px;
  display:flex; align-items:center; gap:16px; transition:box-shadow .25s ease, transform .25s ease;
}
.doc-card:hover{box-shadow:var(--shadow); transform:translateY(-3px);}
.doc-card .ic{
  width:48px; height:48px; border-radius:8px; background:var(--espresso); color:var(--lime);
  display:flex; align-items:center; justify-content:center; font-size:20px; flex-shrink:0;
}
.doc-card h4{font-size:14.5px; margin-bottom:5px;}
.doc-card span{font-size:12px; color:rgba(44,32,19,0.55);}
.doc-card .dl{margin-left:auto; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; color:var(--plum); white-space:nowrap;}

@media (max-width:960px){
  nav{display:none; position:absolute; top:100%; left:0; right:0; background:var(--cream-2); flex-direction:column; gap:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  nav.mobile-open{display:flex;}
  nav a{padding:16px 32px; width:100%;}
  .menu-toggle{display:flex;}
  .trust-inner{grid-template-columns:repeat(2,1fr);}
  .prod-grid{grid-template-columns:repeat(2,1fr);}
  .testi-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr; row-gap:32px;}
  .about-split{grid-template-columns:1fr;}
  .value-grid{grid-template-columns:1fr;}
  .stat-row{grid-template-columns:repeat(2,1fr); row-gap:24px;}
  .plan-steps{grid-template-columns:repeat(2,1fr); row-gap:30px;}
  .legal-grid{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
}
