/*
Theme Name: Veda Microgreens
Theme URI: https://vedamicrogreens.com/
Author: Veda Microgreens
Description: Premium editorial rebuild for Veda Microgreens — curated Weekly Greens Box positioning, WhatsApp ordering, no online checkout. Plain WordPress custom post types, no page builder or WooCommerce required.
Version: 3.10.1
Requires at least: 5.9
Requires PHP: 7.4
Text Domain: veda-microgreens
*/

:root{
  --ink:#1c1f1a;
  --ink-soft:#5c6355;
  --cream:#ffffff;
  --paper:#fbfbf8;
  --white:#ffffff;
  --line:#e6e6e0;
  --green-900:#0d2f22;
  --green-deep:#1b4332;
  --green-vivid:#1b4332;
  --green-fresh:#2d6a4f;
  --green-mist:#eef4ef;
  --earth:#c9a227;
  --earth-soft:#f3e9c7;
  --accent:#c9a227;
  --accent-soft:#f3e9c7;
  --dark-accent:#e8c468;
  --dark-text:#d8e8dc;
  --whatsapp:#25d366;
  --radius:6px;
  --radius-lg:10px;
  --maxw:1200px;
  --maxw-narrow:760px;
  --font-display:"Fraunces","Georgia",serif;
  --font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --shadow-sm:0 1px 3px rgba(13,47,34,.12);
  --shadow-md:0 8px 24px rgba(13,47,34,.16);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--cream); color:var(--ink);
  font-family:var(--font-body); line-height:1.65; padding-bottom:58px;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%; display:block;}
a{color:inherit;}
.veda-wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
.veda-wrap-narrow{max-width:var(--maxw-narrow); margin:0 auto; padding:0 24px;}

h1,h2,h3,h4{font-family:var(--font-display); color:var(--green-deep); margin:0 0 .45em; line-height:1.14; font-weight:500; letter-spacing:-.01em;}
h1{font-size:clamp(2.3rem,5vw,3.8rem); font-weight:500;}
h2{font-size:clamp(1.7rem,3.4vw,2.6rem);}
h3{font-size:1.3rem; font-weight:600;}
p{margin:0 0 1em; color:var(--ink-soft);}
.veda-lede{font-size:1.15rem; max-width:540px;}
.veda-eyebrow{text-transform:uppercase; letter-spacing:.14em; font-size:.72rem; font-weight:700; color:var(--earth);}
.veda-center{text-align:center;}
.veda-muted{color:var(--ink-soft); font-size:.9rem;}
.veda-divider-line{width:44px; height:2px; background:var(--earth); border:none; margin:18px 0;}
.veda-center .veda-divider-line{margin-left:auto; margin-right:auto;}

/* Buttons — flat, high-contrast, no gradients */
.veda-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:16px 30px; border-radius:100px; font-weight:700; font-size:.85rem;
  border:1.5px solid transparent; cursor:pointer; text-decoration:none;
  text-transform:uppercase; letter-spacing:.06em;
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.veda-btn-wa{background:var(--whatsapp); color:#fff;}
.veda-btn-wa:hover{background:#1fb355;}
.veda-btn-primary{background:var(--green-vivid); color:#fff;}
.veda-btn-primary:hover{background:var(--green-deep);}
.veda-btn-outline{background:transparent; border-color:var(--green-vivid); color:var(--green-vivid);}
.veda-btn-outline:hover{background:var(--green-vivid); color:#fff;}
.veda-btn-sm{padding:12px 20px; font-size:.75rem;}
.veda-btn-block{width:100%;}
.veda-text-link{font-weight:700; font-size:.85rem; text-transform:uppercase; letter-spacing:.05em; color:var(--green-deep); border-bottom:1.5px solid var(--earth); padding-bottom:2px; text-decoration:none; display:inline-block;}
.veda-text-link:hover{color:var(--earth);}

/* Header */
header.veda-header{position:sticky; top:0; z-index:500; background:var(--green-deep); border-bottom:1px solid rgba(255,255,255,.12);}
.veda-header-inner{display:flex; align-items:center; justify-content:space-between; padding:18px 0;}
.veda-logo{display:flex; align-items:center; gap:10px; text-decoration:none;}
.veda-logo-img{height:44px; width:auto; display:block;}

.veda-nav{display:none;}
.veda-nav ul{list-style:none; display:flex; gap:24px; margin:0; padding:0;}
.veda-nav li{position:relative;}
.veda-nav .menu-item-has-children > a::after{content:"\25BE"; margin-left:6px; font-size:.75em; opacity:.8;}
.veda-nav .sub-menu{display:none; position:absolute; top:100%; left:-18px; min-width:210px; flex-direction:column; gap:0; padding:12px 0 10px; margin:0; background:var(--green-deep); border:1px solid rgba(255,255,255,.14); border-radius:10px; box-shadow:0 14px 32px rgba(0,0,0,.28); z-index:600;}
.veda-nav li:hover > .sub-menu, .veda-nav li:focus-within > .sub-menu{display:flex;}
.veda-nav .sub-menu li{width:100%;}
.veda-nav .sub-menu a{display:block; padding:9px 18px; white-space:nowrap; font-weight:500;}
.veda-nav .sub-menu a:hover{background:rgba(255,255,255,.08);}
.veda-nav a{font-weight:600; font-size:.86rem; color:#fff; text-decoration:none; opacity:.88;}
.veda-nav a:hover{opacity:1;}
.veda-header-cta{display:none;}
.veda-menu-toggle{background:none; border:none; font-size:1.4rem; cursor:pointer; color:#fff;}
.veda-mobile-nav{display:none; flex-direction:column; padding:6px 24px 20px; border-top:1px solid rgba(255,255,255,.15); background:var(--green-deep);}
.veda-mobile-nav.is-open{display:flex;}
.veda-mobile-nav a{padding:13px 0; border-bottom:1px solid rgba(255,255,255,.15); font-weight:600; text-decoration:none; color:#fff;}
.veda-mobile-nav li{list-style:none; display:flex; flex-direction:column; margin:0; padding:0;}
.veda-mobile-nav .sub-menu{list-style:none; margin:0; padding:0 0 0 18px; display:flex; flex-direction:column;}
.veda-mobile-nav .sub-menu a{font-weight:500; opacity:.85; font-size:.95rem;}
@media(min-width:960px){
  .veda-nav{display:block;}
  .veda-header-cta{display:inline-flex;}
  .veda-menu-toggle{display:none;}
}

/* Hero — full-screen video/photo background with overlaid text */
.veda-hero-full{
  position:relative; min-height:78vh; display:flex; align-items:center; justify-content:center;
  overflow:hidden; padding:100px 24px 60px;
}
@media(min-width:768px){.veda-hero-full{min-height:92vh; padding:120px 24px 80px;}}
.veda-hero-bg{position:absolute; inset:0; z-index:0;}
.veda-hero-bg .veda-photo-placeholder{position:absolute; inset:0; min-height:0;}
.veda-hero-bg img{width:100%; height:100%; object-fit:cover; position:absolute; inset:0;}
.veda-hero-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.veda-hero-overlay{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(9,38,24,.35) 0%, rgba(9,38,24,.55) 55%, rgba(9,38,24,.8) 100%);
}
.veda-hero-content{position:relative; z-index:2; max-width:720px; text-align:center; color:#fff;}
.veda-eyebrow-onvideo{color:var(--dark-accent);}
.veda-eyebrow-onvideo:before{background:var(--dark-accent);}
.veda-hero-heading-onvideo{color:#fff;}
.veda-lede-onvideo{color:#f3f6ee; max-width:560px; margin-left:auto; margin-right:auto;}
.veda-hero-differentiator-onvideo{
  background:rgba(255,255,255,.14); backdrop-filter:blur(6px); border-left:3px solid var(--dark-accent);
  color:#fff; display:inline-block; text-align:left;
}
.veda-btn-outline-onvideo{background:rgba(255,255,255,.12); border-color:#fff; color:#fff; backdrop-filter:blur(4px);}
.veda-btn-outline-onvideo:hover{background:#fff; color:var(--green-deep);}
.veda-hero-trust-onvideo{color:#e4ece0;}
.veda-hero-scroll-cue{position:absolute; left:50%; bottom:26px; transform:translateX(-50%); z-index:2; animation:veda-bounce 2s ease-in-out infinite;}
@keyframes veda-bounce{0%,100%{transform:translate(-50%,0);} 50%{transform:translate(-50%,8px);}}

.veda-hero-actions{display:flex; flex-wrap:wrap; gap:16px; margin:26px 0 18px;}
.veda-hero-trust{font-size:.78rem; color:var(--ink-soft); letter-spacing:.02em;}
.veda-hero-differentiator{background:var(--green-mist); border-left:3px solid var(--green-fresh); padding:16px 20px; margin:24px 0; font-family:var(--font-display); font-size:1.05rem; color:var(--green-deep);}

/* Photography placeholder — flat, editorial, no cartoon/leaf clutter */
.veda-photo-placeholder{
  background:var(--green-mist); display:flex; align-items:center; justify-content:center;
  position:relative; width:100%; height:100%; min-height:220px; overflow:hidden;
}
.veda-photo-placeholder .veda-ph-mark{opacity:.16; width:34%;}
.veda-photo-placeholder .veda-ph-label{
  position:absolute; bottom:14px; left:14px; right:14px; font-size:.66rem; color:var(--ink-soft);
  background:rgba(255,255,255,.85); padding:6px 10px; border-radius:4px; letter-spacing:.02em;
}

/* Sections */
.veda-section{padding:80px 0;}
.veda-section-tight{padding:56px 0;}
.veda-section-alt{background:var(--paper);}
.veda-section-dark{background:var(--green-deep); color:#eef1e6;}
.veda-section-dark h2, .veda-section-dark h3{color:#fff;}
.veda-section-dark p{color:var(--dark-text);}
.veda-section-head{max-width:620px; margin:0 auto 48px;}
.veda-section-head.veda-center{margin-left:auto; margin-right:auto;}

/* Two column */
.veda-two-col{display:grid; gap:48px;}
@media(min-width:980px){.veda-two-col{grid-template-columns:1fr 1fr; align-items:center;}}
.veda-two-col.veda-reverse{direction:rtl;}
.veda-two-col.veda-reverse > *{direction:ltr;}

/* Weekly Box feature card */
.veda-box-feature{display:grid; gap:0; border:1px solid var(--line); background:var(--white);}
@media(min-width:900px){.veda-box-feature{grid-template-columns:1fr 1fr;}}
.veda-box-feature-media{aspect-ratio:1/1;}
.veda-box-feature-copy{padding:48px;}
.veda-box-price-row{display:flex; align-items:baseline; gap:14px; margin:22px 0;}
.veda-box-price-now{font-family:var(--font-display); font-size:2.6rem; color:var(--green-deep); font-weight:500;}
.veda-box-price-was{font-size:1.05rem; color:var(--ink-soft); text-decoration:line-through;}
.veda-box-specs{list-style:none; padding:0; margin:20px 0 28px; display:grid; gap:8px; border-top:1px solid var(--line); padding-top:20px;}
.veda-box-specs li{display:flex; justify-content:space-between; font-size:.9rem; color:var(--ink-soft); padding-bottom:8px; border-bottom:1px dashed var(--line);}
.veda-box-specs li strong{color:var(--ink); font-weight:600;}

/* Plan cards (Trial / Weekly / Family) */
.veda-plan-grid{display:grid; gap:1px; background:var(--line); border:1px solid var(--line);}
@media(min-width:900px){.veda-plan-grid{grid-template-columns:repeat(3,1fr);}}
.veda-plan-card{background:var(--white); padding:40px 32px; display:flex; flex-direction:column;}
.veda-plan-card.is-featured{background:var(--green-deep); color:#fff;}
.veda-plan-card.is-featured h3, .veda-plan-card.is-featured .veda-plan-price{color:#fff;}
.veda-plan-card.is-featured p{color:var(--dark-text);}
.veda-plan-tag{font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; font-weight:700; color:var(--earth); margin-bottom:14px;}
.veda-plan-card.is-featured .veda-plan-tag{color:var(--dark-accent);}
.veda-plan-price{font-family:var(--font-display); font-size:1.9rem; color:var(--green-deep); margin:6px 0 16px;}
.veda-plan-price small{font-size:1rem; font-weight:400;}
.veda-plan-list{list-style:none; padding:0; margin:0 0 24px; display:grid; gap:8px; flex:1;}
.veda-plan-list li{font-size:.88rem; padding-left:18px; position:relative;}
.veda-plan-list li:before{content:"—"; position:absolute; left:0; color:var(--earth);}
.veda-plan-card.is-featured .veda-plan-list li:before{color:var(--dark-accent);}

/* Flavor / variety grid (why rotating mix) */
.veda-flavor-grid{display:grid; gap:1px; background:var(--line); border:1px solid var(--line); grid-template-columns:1fr;}
@media(min-width:480px){.veda-flavor-grid{grid-template-columns:repeat(2, 1fr);}}
.veda-flavor-item{background:var(--white); padding:28px 22px;}
.veda-flavor-item h3{font-size:1.05rem; margin-bottom:8px;}
.veda-flavor-item .veda-flavor-tags{font-size:.78rem; color:var(--ink-soft); letter-spacing:.01em;}

/* Product grid (Our Greens) */
.veda-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:1px; background:var(--line); border:1px solid var(--line);}
.veda-grid-2col{grid-template-columns:1fr;}
@media(min-width:480px){.veda-grid-2col{grid-template-columns:repeat(2, 1fr);}}
.veda-card{background:var(--white); display:flex; flex-direction:column;}
.veda-card-media{aspect-ratio:1/1; overflow:hidden; display:block;}
.veda-card-media img{width:100%; height:100%; object-fit:cover; display:block;}
.veda-card-body{padding:22px;}
.veda-card h3{margin-bottom:4px; font-size:1.1rem;}
.veda-card .veda-tag{font-size:.7rem; text-transform:uppercase; letter-spacing:.06em; font-weight:700; color:var(--earth); margin-bottom:8px; display:block;}
.veda-tier-badge{display:inline-block; font-size:.66rem; text-transform:uppercase; letter-spacing:.05em; font-weight:700; color:var(--ink-soft); background:var(--line); padding:3px 9px; border-radius:100px; margin-left:8px; vertical-align:middle;}
.veda-price-on-request{font-size:.82rem; font-weight:700; color:var(--green-deep); font-family:var(--font-body); text-transform:uppercase; letter-spacing:.02em;}
.veda-card p{font-size:.87rem; margin-bottom:8px;}
.veda-card-pairing{font-size:.78rem; color:var(--ink-soft); font-style:italic; margin-bottom:14px;}
.veda-card-meta{display:flex; align-items:center; justify-content:space-between; margin:14px 0; padding-top:14px; border-top:1px solid var(--line);}
.veda-price{font-weight:700; color:var(--green-deep); font-size:1.1rem; font-family:var(--font-display);}
.veda-weight{font-size:.78rem; color:var(--ink-soft);}

/* How to eat — meal pairing chips */
.veda-meal-chips{display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:32px;}
.veda-meal-chip{border:1px solid var(--line); background:var(--white); padding:10px 20px; border-radius:100px; font-size:.85rem; font-weight:600; color:var(--green-deep);}

/* Process (Seed to Table) */
.veda-process{display:grid; gap:0; border-top:1px solid rgba(255,255,255,.2); margin-top:40px;}
@media(min-width:900px){.veda-process{grid-template-columns:repeat(5,1fr);}}
.veda-process-step{padding:28px 20px; border-bottom:1px solid rgba(255,255,255,.2);}
@media(min-width:900px){.veda-process-step{border-bottom:none; border-right:1px solid rgba(255,255,255,.2);} .veda-process-step:last-child{border-right:none;}}
.veda-process-num{font-family:var(--font-display); font-size:2rem; color:var(--dark-accent); margin-bottom:8px;}
.veda-process-step h4{color:#fff; font-size:1rem; margin-bottom:6px; text-transform:uppercase; letter-spacing:.05em;}
.veda-process-step p{color:var(--dark-text); font-size:.85rem; margin:0;}

/* Why Veda principles */
.veda-principle-grid{display:grid; gap:1px; background:var(--line); border:1px solid var(--line);}
@media(min-width:700px){.veda-principle-grid{grid-template-columns:repeat(4,1fr);}}
.veda-principle{background:var(--white); padding:32px 24px;}
.veda-principle .veda-eyebrow{display:block; margin-bottom:10px;}

/* Coming soon (Pantry) */
.veda-pantry{border:1px dashed var(--line); background:var(--paper); padding:48px; text-align:center;}
.veda-pantry-tag{display:inline-block; background:var(--accent-soft); color:var(--accent); font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; padding:6px 14px; border-radius:100px; margin-bottom:18px;}
.veda-pantry-list{display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:20px;}
.veda-pantry-list span{font-size:.8rem; color:var(--ink-soft); border:1px solid var(--line); padding:6px 14px; border-radius:100px;}

/* FAQ */
.veda-faq-item{border-bottom:1px solid var(--line);}
.veda-faq-q{width:100%; text-align:left; background:none; border:none; padding:22px 4px; font-weight:600; font-size:1.02rem; color:var(--ink); cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px; font-family:var(--font-body);}
.veda-faq-q:hover{color:var(--green-deep);}
.veda-faq-a{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.veda-faq-a p{padding:0 4px 20px; margin:0;}
.veda-faq-item.is-open .veda-faq-a{max-height:400px;}
.veda-faq-icon{flex-shrink:0; color:var(--earth); font-size:1.3rem; font-weight:300; transition:transform .2s ease;}
.veda-faq-item.is-open .veda-faq-icon{transform:rotate(45deg);}

/* Forms */
.veda-form{display:grid; gap:16px; max-width:600px;}
.veda-form-row{display:grid; gap:6px;}
.veda-form-row label{font-size:.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--ink-soft);}
.veda-form-row input,.veda-form-row select,.veda-form-row textarea{padding:13px 15px; border:1px solid var(--line); border-radius:var(--radius); font-family:inherit; font-size:.95rem; background:var(--white); color:var(--ink);}
.veda-form-two-col{display:grid; gap:16px;}
@media(min-width:640px){.veda-form-two-col{grid-template-columns:1fr 1fr;}}
.veda-form-success{background:var(--green-mist); border-left:3px solid var(--green-fresh); padding:20px; color:var(--green-deep); font-weight:600;}

/* Content pages */
.veda-content-page{padding:64px 0;}
.veda-content-page .veda-wrap-narrow h2{margin-top:1.6em;}
.veda-content-page .veda-wrap-narrow h2:first-child{margin-top:0;}

/* Footer */
footer.veda-footer{background:var(--green-deep); color:#ffffff; padding:64px 0 28px;}
footer.veda-footer a{color:#ffffff; opacity:.82; text-decoration:none;}
footer.veda-footer a:hover{opacity:1;}
.veda-footer-grid{display:grid; gap:36px; grid-template-columns:1fr;}
@media(min-width:800px){.veda-footer-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;}}
.veda-footer-grid h4{color:#fff; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; margin-bottom:16px;}
.veda-footer-grid ul{list-style:none; padding:0; margin:0; display:grid; gap:10px; font-size:.9rem;}
.veda-footer-logo{display:flex; align-items:center; gap:10px; margin-bottom:14px;}
.veda-footer-logo svg{width:24px; height:24px;}
.veda-footer-bottom{border-top:1px solid rgba(255,255,255,.15); margin-top:44px; padding-top:22px; font-size:.76rem; opacity:.65; display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between;}

/* Floating WhatsApp + sticky mobile CTA */
.veda-float-whatsapp{position:fixed; right:20px; bottom:78px; z-index:900; background:var(--whatsapp); color:#fff; width:54px; height:54px; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 16px rgba(0,0,0,.22);}
@media(min-width:960px){.veda-float-whatsapp{bottom:24px;}}
.veda-sticky-cta{position:fixed; left:0; right:0; bottom:0; z-index:899; background:var(--white); border-top:1px solid var(--line); padding:10px 16px;}
.veda-sticky-cta .veda-btn{width:100%;}
@media(min-width:960px){.veda-sticky-cta{display:none;}}

.veda-placeholder-note{font-size:.72rem; color:var(--ink-soft); opacity:.8;}

/* Single product page */
.veda-product-detail{display:grid; gap:48px; padding:56px 0;}
@media(min-width:960px){.veda-product-detail{grid-template-columns:1fr 1fr;}}
.veda-product-media img{width:100%; aspect-ratio:1/1; object-fit:cover;}
.veda-product-info .veda-price-lg{font-family:var(--font-display); font-size:1.9rem; color:var(--green-deep); margin:16px 0;}
.veda-qty-row{display:flex; align-items:center; gap:16px; margin:22px 0;}
.veda-qty-control{display:inline-flex; align-items:center; border:1px solid var(--line);}
.veda-qty-control button{background:none; border:none; width:38px; height:38px; font-size:1.1rem; cursor:pointer; color:var(--green-deep);}
.veda-qty-control input{width:40px; text-align:center; border:none; background:none; font-weight:700; color:var(--ink);}
.veda-footer-widget{margin-bottom:20px;}

/* Nutrition table (homepage) */
.veda-table-wrap{overflow-x:auto; border:1px solid var(--line); border-radius:var(--radius-lg);}
.veda-table{width:100%; border-collapse:collapse; background:var(--white); font-size:.92rem;}
.veda-table th{background:var(--green-deep); color:#fff; text-align:left; padding:14px 18px; font-weight:600; font-size:.82rem; text-transform:uppercase; letter-spacing:.04em;}
.veda-table td{padding:14px 18px; border-bottom:1px solid var(--line); color:var(--ink-soft); vertical-align:top;}
.veda-table tr:last-child td{border-bottom:none;}
.veda-table td strong{color:var(--ink); font-weight:700;}
.veda-table tr:nth-child(even) td{background:var(--paper);}

/* Disclaimer callout */
.veda-disclaimer-box{background:var(--earth-soft); border-left:3px solid var(--earth); border-radius:var(--radius-sm); padding:18px 22px; font-size:.85rem; color:var(--ink-soft); margin-top:28px;}
.veda-disclaimer-box strong{color:var(--ink);}
