/* Shantanu Agroveda · shared section system (same as 00_Shared/00_Base.html). Loaded site-wide by the theme. */
:root{
  /* palette: Shantanu Agroveda brand (forest green, warm gold, cream). Neutrals are green-tinted blacks. */
  --sa-k0:#0a1205; --sa-k1:#0e1808; --sa-k2:#13200a; --sa-k3:#1c3209; --sa-k4:#2d5016;
  --sa-y:#c8962e; --sa-y2:#e3bb62; --sa-yd:#8e6a1f; --sa-yg:rgba(200,150,46,.16);
  --sa-tx:#f3ead7; --sa-t2:#cbc2a9; --sa-t3:#9a927b;
  --sa-cream:#f3ead7; --sa-ink:#1a1408;
  --sa-ln:rgba(227,187,98,.14); --sa-ln2:rgba(227,187,98,.28);

  --sa-serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sa-deva:'Noto Serif Devanagari','Nirmala UI','Mangal',serif;
  --sa-sans:'DM Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;

  --sa-f0:clamp(16px,.25vw + 15px,18px);
  --sa-f1:clamp(17px,.45vw + 15px,21px);
  --sa-f2:clamp(20px,.9vw + 15px,28px);
  --sa-f3:clamp(26px,1.8vw + 16px,44px);
  --sa-f4:clamp(38px,3.6vw + 20px,84px);
  --sa-f5:clamp(50px,6.4vw + 18px,144px);
  --sa-h1:clamp(46px,3.6vw + 24px,104px);

  --sa-mw:1400px;
  --sa-px:clamp(18px,6vw,140px);
  --sa-py:clamp(80px,9vw,168px);
  --sa-ez:cubic-bezier(.2,.8,.2,1);
  --sa-hdr:116px; /* height of the site header (theme v3); heroes start below it */
}
/* never transform the page root (keeps fixed header + floating buttons steady) */
html,body{transform:none!important;filter:none!important;perspective:none!important}

/* Elementor: let our sections run full-bleed, content stays boxed in .sa-wrap */
.elementor-widget-html:has(.sa-root),
.elementor-widget-html:has(.sa-root)>.elementor-widget-container{padding:0!important;margin:0!important;max-width:none!important;width:100%!important}
.e-con:has(>.e-con-inner>.elementor-widget-html .sa-root),.e-con:has(>.elementor-widget-html .sa-root){--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--content-width:100%;padding:0!important}
.e-con:has(>.elementor-widget-html .sa-root)>.e-con-inner{max-width:none!important;padding:0!important}
.elementor-section:has(.sa-root)>.elementor-container{max-width:none!important}
.elementor-section:has(.sa-root) .elementor-column>.elementor-widget-wrap{padding:0!important}

.sa-root{position:relative;background:var(--sa-k0);color:var(--sa-tx);font-family:var(--sa-sans);font-size:var(--sa-f1);line-height:1.6;font-weight:400;overflow:hidden;isolation:isolate;-webkit-font-smoothing:antialiased}
.sa-root *,.sa-root *::before,.sa-root *::after{box-sizing:border-box}
.sa-root :where(h1,h2,h3,h4,p,ul,ol,figure,blockquote){margin:0;padding:0}
.sa-root :where(ul,ol){list-style:none}
.sa-root :where(img){display:block;max-width:100%;height:auto}
.sa-root :where(a){color:inherit;text-decoration:none}
.sa-root :where(button){font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
.sa-root :focus-visible{outline:2px solid var(--sa-y2);outline-offset:3px;border-radius:6px}
.sa-root ::selection{background:var(--sa-y);color:var(--sa-ink)}

.sa-root :where([class*="grid"],.sao-row,.sao-bottles)>*{min-width:0}
.sa-wrap{position:relative;width:100%;max-width:var(--sa-mw);margin:0 auto;padding:0 var(--sa-px);z-index:2}
.sa-sec{padding:var(--sa-py) 0}
.sa-sec--lift{background:var(--sa-k1)}

/* headings */
.sa-h1,.sa-h2,.sa-h3{font-family:var(--sa-serif);font-weight:600;line-height:1.02;letter-spacing:-.012em;color:var(--sa-tx);text-wrap:balance}
.sa-h1,.sa-h2,.sa-h3,.sa-fact b,.sa-root .sa-num{font-variant-numeric:lining-nums;font-feature-settings:'lnum' 1}
.sa-h1{font-size:var(--sa-h1)}
.sa-h2{font-size:var(--sa-f4)}
.sa-h3{font-size:var(--sa-f3);line-height:1.08}
.sa-h1 em,.sa-h2 em,.sa-h3 em{font-style:italic;font-weight:500;color:var(--sa-y2);text-shadow:0 0 34px rgba(227,187,98,.38)}
.sa-nw{white-space:nowrap}
.sa-line{display:block}
.sa-lead{font-size:var(--sa-f1);color:var(--sa-t2);max-width:60ch;line-height:1.6}
.sa-body{font-size:var(--sa-f0);color:var(--sa-t2);line-height:1.65;max-width:60ch}
.sa-head{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(16px,1.6vw,24px);margin-bottom:clamp(40px,4.6vw,80px)}
.sa-head .sa-lead{margin-top:2px}

/* eyebrow pill */
.sa-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 13px;border-radius:100px;font-size:var(--sa-f0);font-weight:500;letter-spacing:0;color:var(--sa-y2);background:linear-gradient(180deg,rgba(227,187,98,.10),rgba(227,187,98,.04));border:1px solid var(--sa-ln);box-shadow:inset 0 1px 0 rgba(255,240,200,.08)}
.sa-eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sa-y2);box-shadow:0 0 0 3px rgba(227,187,98,.16),0 0 14px rgba(227,187,98,.8);flex:none}

/* buttons */
.sa-btns{display:flex;flex-wrap:wrap;gap:14px}
.sa-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:0 28px;border-radius:100px;font-family:var(--sa-sans);font-size:var(--sa-f1);font-weight:500;line-height:1;white-space:nowrap;overflow:hidden;transition:transform .35s var(--sa-ez),border-color .35s var(--sa-ez),background-color .35s var(--sa-ez),color .35s var(--sa-ez)}
.sa-btn .sa-arw{display:inline-block;transition:transform .35s var(--sa-ez)}
.sa-btn--p{color:var(--sa-ink);background:linear-gradient(180deg,#f0cf80 0%,var(--sa-y) 55%,var(--sa-yd) 100%);box-shadow:inset 0 1px 0 rgba(255,248,220,.65),0 10px 30px -8px rgba(200,150,46,.55)}
.sa-btn--p::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,250,230,.55) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--sa-ez)}
.sa-btn--g{color:var(--sa-tx);background:rgba(243,234,215,.05);border:1px solid var(--sa-ln2)}
@media (hover:hover){
  .sa-btn:hover{transform:translateY(-3px)}
  .sa-btn:hover .sa-arw{transform:translateX(5px)}
  .sa-btn--p:hover::after{transform:translateX(120%)}
  .sa-btn--g:hover{border-color:var(--sa-y2);color:var(--sa-y2)}
}
.sa-link{display:inline-flex;align-items:center;gap:8px;color:var(--sa-y2);font-weight:500;border-bottom:1px solid rgba(227,187,98,.4);padding-bottom:2px;transition:border-color .3s var(--sa-ez)}
.sa-link .sa-arw{transition:transform .3s var(--sa-ez)}
@media (hover:hover){.sa-link:hover{border-color:var(--sa-y2)}.sa-link:hover .sa-arw{transform:translateX(5px)}}

/* chips */
.sa-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:100px;font-size:var(--sa-f0);font-weight:500;color:var(--sa-t2);background:rgba(243,234,215,.04);border:1px solid var(--sa-ln);transition:color .3s var(--sa-ez),border-color .3s var(--sa-ez),background-color .3s var(--sa-ez)}
.sa-chip[aria-pressed="true"],.sa-chip.is-on{color:var(--sa-ink);background:var(--sa-y2);border-color:var(--sa-y2)}
@media (hover:hover){.sa-chip:not([aria-pressed="true"]):hover{color:var(--sa-tx);border-color:var(--sa-ln2)}}

/* card + frame */
.sa-card{position:relative;border-radius:22px;background:linear-gradient(180deg,var(--sa-k2),var(--sa-k1));border:1px solid var(--sa-ln);box-shadow:inset 0 1px 0 rgba(255,240,200,.06);transition:transform .45s var(--sa-ez),border-color .45s var(--sa-ez)}
.sa-frame{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--sa-ln);box-shadow:0 30px 60px -30px rgba(0,0,0,.8),0 20px 60px -40px rgba(200,150,46,.35)}
.sa-frame img{width:100%;height:100%;object-fit:cover}

/* atmosphere */
.sa-grain{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.sa-vig{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(5,9,2,.75) 100%)}

/* proof facts row */
.sa-facts{display:flex;flex-wrap:wrap;gap:12px 34px}
.sa-fact{display:flex;flex-direction:column;gap:2px;font-size:var(--sa-f0)}
.sa-fact b{font-family:var(--sa-serif);font-size:var(--sa-f2);font-weight:600;color:var(--sa-tx);line-height:1.1}
.sa-fact span{color:var(--sa-t3)}

/* breadcrumb */
.sa-crumb{display:flex;flex-wrap:wrap;gap:8px;font-size:var(--sa-f0);color:var(--sa-t3)}
.sa-crumb a{color:var(--sa-t2)}
.sa-crumb a:hover{color:var(--sa-y2)}
.sa-crumb li+li::before{content:"/";margin-right:8px;color:var(--sa-t3)}
.sa-crumb [aria-current]{color:var(--sa-y2)}

/* FAQ (shared look) */
.sa-faq{border-top:1px solid var(--sa-ln)}
.sa-faq details{border-bottom:1px solid var(--sa-ln)}
.sa-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-family:var(--sa-serif);font-size:var(--sa-f2);font-weight:600;line-height:1.2;color:var(--sa-tx)}
.sa-faq summary::-webkit-details-marker{display:none}
.sa-faq summary i{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--sa-ln2);position:relative;transition:transform .45s var(--sa-ez),background-color .3s}
.sa-faq summary i::before,.sa-faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:var(--sa-y2);transform:translate(-50%,-50%)}
.sa-faq summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .45s var(--sa-ez)}
.sa-faq details[open] summary i{background:rgba(227,187,98,.1)}
.sa-faq details[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.sa-faq .sa-faq-a{padding:0 64px 28px 0;color:var(--sa-t2);font-size:var(--sa-f0);line-height:1.7;max-width:70ch}
@media (hover:hover){.sa-faq summary:hover{color:var(--sa-y2)}}

/* scroll reveal: visible by default, hidden only after JS adds .sa-js */
.sa-js [data-sa-r]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--sa-ez),transform .9s var(--sa-ez);transition-delay:calc(var(--d,0) * 90ms)}
.sa-js [data-sa-r].is-in{opacity:1;transform:none}
.elementor-editor-active [data-sa-r]{opacity:1!important;transform:none!important}

@media (max-width:620px){
  .sa-btns{flex-direction:column;align-items:stretch;width:100%}
  .sa-btn{width:100%}
  .sa-card,.sa-frame{border-radius:18px}
  .sa-faq .sa-faq-a{padding-right:0}
}
@media (prefers-reduced-motion:reduce){
  .sa-root *,.sa-root *::before,.sa-root *::after{transition:none!important;animation:none!important}
  .sa-js [data-sa-r]{opacity:1;transform:none}
}
