  :root{
    /* brand palette — pulled colors */
    --night:#132526; --pine:#365F3D; --sage:#7DA268; --amber:#EC9B33; --rust:#C75000;
    /* chrome — nav + footer */
    --green:#132526; --green-deep:#0E1B18; --gold:#EC9B33; --gold-soft:#7DA268;
    /* accent roles mapped to the brand palette */
    --sky:#EC9B33; --rasp:#C75000; --orange:#EC9B33; --lemon:#7DA268;
    --berry:#365F3D; --straw:#C75000;
    /* neutrals — lots of white */
    --ink:#1F1F1D; --gray:#6E6E68; --line:#ECECE6; --paper:#FFFFFF; --mist:#FBFBF9; --tint:#EFF3E8;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{font-family:'Montserrat',sans-serif;color:var(--ink);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased;}
  .wrap{max-width:1160px;margin:0 auto;padding:0 30px;}
  a{text-decoration:none;color:inherit;}
  img{display:block;max-width:100%;}
  section{padding:108px 0;}
  h2{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:clamp(32px,5vw,52px);letter-spacing:-1px;line-height:1.02;color:var(--ink);}
  .script{font-family:"calder-script",cursive;font-weight:400;}
  .eyebrow{font-family:"calder-script",cursive;color:var(--rust);font-size:clamp(32px,3.2vw,44px);line-height:1.1;display:inline-block;margin-bottom:8px;}

  /* NAV — MadTree green chrome */
  nav{position:sticky;top:0;z-index:50;background:var(--green);}
  nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px;}
  nav .brand{font-family:"calder-dark-grit",sans-serif;font-weight:400;letter-spacing:1px;color:#fff;font-size:24px;text-transform:uppercase;}
  nav .brand img{height:42px;width:auto;display:block;}
  nav .brand span{color:var(--sky);}
  nav .links{display:flex;gap:32px;}
  nav .links a{color:rgba(255,255,255,.85);font-weight:600;font-size:13.5px;letter-spacing:1px;text-transform:uppercase;transition:color .2s;}
  nav .links a:hover{color:var(--gold-soft);}
  nav .cta{background:var(--gold);color:var(--green);padding:9px 18px;border-radius:30px;font-weight:700;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;}
  @media(max-width:820px){nav .links{display:none;}}

  /* BUTTONS — Sway brights */
  .btn{display:inline-block;padding:15px 30px;border-radius:40px;font-weight:700;letter-spacing:1px;text-transform:uppercase;font-size:13.5px;transition:transform .15s,box-shadow .15s;}
  .btn:hover{transform:translateY(-2px);}
  .btn-sky{background:var(--sky);color:#fff;}
  .btn-ink{border:2px solid var(--ink);color:var(--ink);}
  .btn-white{background:#fff;color:var(--ink);}
  .btn-amber{background:var(--amber);color:var(--night);}
  .sec-cta{margin-top:42px;}
  /* wavy section dividers */
  .wavesep{position:relative;display:block;width:100%;height:58px;line-height:0;}
  .wavesep svg{display:block;width:100%;height:100%;}
  .hero-wave{position:absolute;left:0;bottom:-1px;width:100%;height:60px;z-index:3;line-height:0;}
  .hero-wave svg{display:block;width:100%;height:100%;}
  /* HERO — sticky split panel: top half sky+text, bottom half white; cans serve up over both */
  .hero-stage{position:relative;}
  .hero{position:relative;height:100vh;overflow:hidden;background:#fff;}
  .hero-sky{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;text-align:left;
            background-image:linear-gradient(100deg,rgba(16,34,28,.58) 0%,rgba(16,34,28,.30) 42%,rgba(16,34,28,.10) 100%),
                       url('sway-water.webp');
            background-repeat:no-repeat,no-repeat;
            background-position:0 0,50% 50%;
            background-size:cover,140% auto;
            background-attachment:scroll,fixed;
            animation:waterDrift 100s ease-in-out infinite alternate;}
  .hero-sky::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
            background:repeating-linear-gradient(115deg,rgba(255,255,255,0) 0 130px,rgba(255,255,255,.06) 130px 145px,rgba(255,255,255,0) 145px 260px);
            background-size:220% 220%;mix-blend-mode:overlay;opacity:.35;
            animation:shimmerMove 60s linear infinite;}
  @keyframes waterDrift{0%{background-position:0 0,48% 47%;}50%{background-position:0 0,52% 53%;}100%{background-position:0 0,49% 48%;}}
  @keyframes shimmerMove{0%{background-position:0% 0%;}100%{background-position:110% 110%;}}
  @media(prefers-reduced-motion:reduce){.hero-sky,.hero-sky::after{animation:none;}}
  .hero-white{display:none;}
  .hero-top{position:relative;z-index:8;max-width:680px;padding-left:clamp(28px,6vw,110px);padding-right:24px;padding-top:16vh;}
  .hero .eyebrow{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.45);}
  .hero h1{font-family:"calder-dark-grit",sans-serif;font-weight:400;color:#fff;font-size:clamp(40px,6vw,82px);line-height:.92;letter-spacing:-1.5px;text-transform:uppercase;margin:2px 0 14px;text-shadow:0 3px 26px rgba(0,0,0,.5);}
  .hero p{max-width:540px;margin:0;font-size:16.5px;color:rgba(255,255,255,.96);text-shadow:0 2px 12px rgba(0,0,0,.55);}
  .hero .btns{margin-top:22px;display:flex;gap:14px;justify-content:flex-start;flex-wrap:wrap;}
  .hero .age-note{margin-top:16px;font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.9);text-shadow:0 2px 10px rgba(0,0,0,.5);}
  .hero-split-wave{position:absolute;left:0;bottom:-1px;width:100%;height:72px;z-index:6;line-height:0;}
  .hero-split-wave svg{display:block;width:100%;height:100%;}
  /* "serving the cans" — flies up over both halves as you scroll */
  .serve-cans{position:absolute;right:0;bottom:0;width:min(1320px,80%);z-index:5;pointer-events:none;transform:translateY(0);animation:floatUp 2s cubic-bezier(.16,.7,.28,1) .2s both;}
  @keyframes floatUp{from{transform:translateY(100%);opacity:0;}to{transform:translateY(0);opacity:1;}}
  .hero-wave-btm{position:absolute;left:0;bottom:-1px;width:100%;height:112px;z-index:6;line-height:0;}
  .hero-wave-btm svg{display:block;width:100%;height:100%;}
  .serve-cans img{display:block;width:100%;height:auto;filter:drop-shadow(0 -8px 26px rgba(0,0,0,.22));}
  @media(max-width:820px){.hero{height:100vh;}.hero h1{font-size:clamp(32px,8vw,52px);}.hero-top{max-width:none;padding-right:38%;}.serve-cans{width:92%;}}

  /* STORY */
  .story .grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
  .story .eyebrow{color:var(--rust);}
  .story h2{margin-bottom:18px;}
  .story p{font-size:17px;color:var(--gray);margin-bottom:16px;}
  .story img{border-radius:24px;box-shadow:0 24px 54px rgba(31,31,29,.16);}
  .give-back{font-style:italic;color:var(--pine);font-weight:600;font-size:16px;margin-top:10px;}
  @media(max-width:820px){.story .grid{grid-template-columns:1fr;gap:34px;}}

  /* PRODUCTS */
  .products{background:var(--tint);text-align:center;position:relative;overflow:hidden;}
  .products .wrap{position:relative;z-index:1;}
  .products .pblob{position:absolute;z-index:0;pointer-events:none;opacity:.45;}
  .pblob-1{top:34px;left:-46px;width:180px;}
  .pblob-2{bottom:20px;right:-40px;width:210px;}
  .products .eyebrow{color:var(--rust);}
  .products .intro{max-width:600px;margin:14px auto 56px;color:var(--gray);font-size:17px;}
  .can-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
  .can-card{display:block;background:#fff;border-radius:24px;padding:34px 18px 30px;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 26px rgba(31,31,29,.06);}
  .can-card:hover{transform:translateY(-10px);box-shadow:0 26px 50px rgba(31,31,29,.14);}
  .can-card .imgwrap{height:250px;display:flex;align-items:flex-end;justify-content:center;margin-bottom:18px;}
  .can-card img{height:250px;width:auto;filter:drop-shadow(0 16px 22px rgba(0,0,0,.16));
    animation:gentleSway 3.4s ease-in-out infinite;transition:transform .35s cubic-bezier(.34,1.56,.64,1);transform-origin:bottom center;}
  .can-card:nth-child(2) img{animation-delay:-.6s}
  .can-card:nth-child(3) img{animation-delay:-1.3s}
  .can-card:nth-child(4) img{animation-delay:-2s}
  .can-card:hover img{animation-play-state:paused;transform:rotate(-7deg) scale(1.05);}
  .can-card:nth-child(2n):hover img{transform:rotate(7deg) scale(1.05);}
  @keyframes gentleSway{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}
  .can-card .fl{font-family:"calder-dark",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.3px;font-size:18px;color:var(--ink);line-height:1.1;}
  .can-card .tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--c);padding:5px 12px;border-radius:20px;margin-top:12px;}
  @media(max-width:820px){.can-grid{grid-template-columns:1fr 1fr;gap:20px;}}
  @media(max-width:460px){.can-grid{grid-template-columns:1fr;}}

  /* FEATURE — photo framed on white */
  .feature .grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
  .feature .eyebrow{color:var(--rust);}
  .feature h2 .b{color:var(--sky);}
  .feature p{font-size:17px;color:var(--gray);margin:16px 0 28px;max-width:440px;}
  .feature img{border-radius:24px;box-shadow:0 24px 54px rgba(31,31,29,.16);}
  @media(max-width:820px){.feature .grid{grid-template-columns:1fr;gap:34px;}.feature .photo{order:-1;}}


  /* IMPACT / GIVE-BACK */
  .impact{background:var(--pine);color:#fff;text-align:center;}
  .impact .eyebrow{color:var(--amber);}
  .impact h2{color:#fff;}
  .impact p{font-size:17px;color:rgba(255,255,255,.85);max-width:640px;margin:18px auto 0;}
  .impact-stats{display:flex;justify-content:center;gap:60px;margin-top:48px;flex-wrap:wrap;}
  .impact-stat .n{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:clamp(30px,4vw,44px);color:var(--amber);line-height:1;}
  .impact-stat .l{font-size:12.5px;letter-spacing:.5px;text-transform:uppercase;color:rgba(255,255,255,.7);margin-top:10px;max-width:160px;}
  @media(max-width:820px){.impact-stats{gap:32px;}}

  /* MADTREE TAPROOM CALLOUT */
  .taproom{background:var(--green);color:#fff;}
  .taproom .grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
  .taproom img{border-radius:24px;box-shadow:0 24px 54px rgba(0,0,0,.35);}
  .taproom .eyebrow{color:var(--amber);}
  .taproom h2{color:#fff;}
  .taproom p{font-size:17px;color:rgba(255,255,255,.8);margin-bottom:16px;max-width:460px;}
  .taproom .give-back{color:var(--amber);font-size:15px;max-width:460px;}
  .taproom .addr{font-size:13px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.55);margin-bottom:24px;}
  @media(max-width:820px){.taproom .grid{grid-template-columns:1fr;gap:34px;}}

  /* RECIPES */
  .recipes{background:var(--tint);text-align:center;}
  .recipes .eyebrow{color:var(--rust);}
  .rec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:48px;}
  .rec{background:#fff;border-radius:20px;padding:28px 24px;text-align:left;box-shadow:0 8px 24px rgba(31,31,29,.06);border-top:5px solid var(--c);}
  .rec h3{font-family:"calder-dark",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.3px;font-size:18px;color:var(--ink);margin-bottom:14px;}
  .rec ul{list-style:none;font-size:14px;color:var(--gray);}
  .rec li{padding:5px 0 5px 18px;position:relative;}
  .rec li:before{content:"";position:absolute;left:0;top:13px;width:7px;height:7px;border-radius:50%;background:var(--c);}
  @media(max-width:820px){.rec-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:460px){.rec-grid{grid-template-columns:1fr;}}

  /* Recipe hub cards — imagery + share (overrides base .rec look) */
  .rec-hub-grid .rec{padding:0 0 22px;overflow:hidden;border-top:none;transition:transform .2s,box-shadow .2s;}
  .rec-hub-grid .rec:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(31,31,29,.14);}
  .rec-hub-grid .rec-img{height:170px;overflow:hidden;position:relative;}
  .rec-hub-grid .rec-img::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--c);}
  .rec-hub-grid .rec-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s;}
  .rec-hub-grid .rec:hover .rec-img img{transform:scale(1.07);}
  .rec-hub-grid .rec-body{padding:20px 22px 0;}
  .rec-hub-grid .rec-body h3{margin-bottom:12px;}
  .rec-hub-grid .rec-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 22px 0;margin-top:4px;}
  .share-btn{background:none;border:1.5px solid var(--line);border-radius:30px;padding:7px 14px;font-size:11px;font-weight:700;
    letter-spacing:.4px;text-transform:uppercase;color:var(--ink);cursor:pointer;transition:.15s;font-family:var(--body);white-space:nowrap;}
  .share-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
  .share-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:#fff;
    padding:14px 26px;border-radius:40px;font-size:13.5px;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.3);
    opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:200;text-align:center;max-width:86vw;}
  .share-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

  /* VARIETY PACKS */
  .packs{position:relative;overflow:hidden;text-align:center;background:#15302a;}
  .packs::before{content:"";position:absolute;inset:-20px;background:url('download.webp') center/cover no-repeat;filter:blur(8px) brightness(.72);z-index:0;}
  .packs::after{content:"";position:absolute;inset:0;background:rgba(19,37,38,.42);z-index:0;}
  .packs .wrap{position:relative;z-index:2;}
  .packs h2{color:#fff;}
  .packs .eyebrow{color:var(--amber);}
  .packs .intro{max-width:600px;margin:14px auto 44px;color:rgba(255,255,255,.92);font-size:17px;}
  .packs .pwave{position:absolute;left:0;width:100%;height:56px;z-index:1;line-height:0;}
  .packs .pwave-top{top:-1px;} .packs .pwave-bot{bottom:-1px;}
  .packs .pwave svg{display:block;width:100%;height:100%;}
  .pack-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
  .pack{background:#fff;border-radius:22px;padding:34px 28px;text-align:left;box-shadow:0 14px 34px rgba(0,0,0,.18);border-top:6px solid var(--c);}
  .pack .avail{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--c);padding:5px 12px;border-radius:20px;margin-bottom:14px;}
  .pack h3{font-family:"calder-dark",sans-serif;font-weight:400;text-transform:uppercase;font-size:23px;color:var(--ink);margin-bottom:10px;letter-spacing:.3px;}
  .pack p{font-size:14.5px;color:var(--gray);}
  @media(max-width:820px){.pack-grid{grid-template-columns:1fr;}}

  /* SLIDESHOW */
  .gallery{background:var(--tint);text-align:center;}
  .slider{position:relative;max-width:920px;margin:42px auto 0;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px rgba(31,31,29,.18);}
  .slides{display:flex;transition:transform .6s cubic-bezier(.6,0,.2,1);}
  .slide{min-width:100%;position:relative;}
  .slide img{width:100%;display:block;}
  .slide-tag{position:absolute;left:20px;bottom:20px;background:var(--c,var(--amber));color:#fff;font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;padding:8px 16px;border-radius:20px;box-shadow:0 6px 16px rgba(0,0,0,.25);}
  .slider .arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.88);border:none;cursor:pointer;font-size:24px;line-height:1;color:var(--night);z-index:2;box-shadow:0 4px 14px rgba(0,0,0,.2);}
  .slider .prev{left:14px;} .slider .next{right:14px;}
  .dots{display:flex;gap:10px;justify-content:center;margin-top:22px;}
  .dots button{width:11px;height:11px;border-radius:50%;border:none;background:#cfd6cb;cursor:pointer;padding:0;}
  .dots button.active{background:var(--c,var(--amber));}

  /* FAQ */
  .faq{text-align:center;}
  .faq .eyebrow{color:var(--rust);}
  .faq .list{max-width:820px;margin:38px auto 0;text-align:left;}
  details{border-bottom:1px solid var(--line);padding:8px 4px;}
  summary{cursor:pointer;font-weight:700;color:var(--ink);padding:18px 0;list-style:none;font-size:16.5px;display:flex;justify-content:space-between;align-items:center;gap:18px;}
  summary::-webkit-details-marker{display:none;}
  summary:after{content:"+";color:var(--sky);font-size:26px;font-weight:400;line-height:1;}
  details[open] summary:after{content:"–";}
  details p{padding:0 0 20px;color:var(--gray);font-size:15.5px;}

  /* CTA — the one big color pop */
  section.cta{position:relative;overflow:hidden;text-align:center;color:#fff;min-height:84vh;display:flex;flex-direction:column;justify-content:center;padding:150px 0;
       background:linear-gradient(rgba(19,37,38,.74),rgba(19,37,38,.78)),url('748136083.swaypoolpack-studio-6.webp') center/cover no-repeat fixed;}
  .cta .wrap{position:relative;z-index:2;}
  .cta .cwave{position:absolute;left:0;width:100%;height:58px;z-index:1;line-height:0;}
  .cta .cwave-top{top:-1px;}
  .cta .cwave-bot{bottom:-1px;}
  .cta .cwave svg{display:block;width:100%;height:100%;}
  .cta .eyebrow{color:#fff;}
  .cta h2{color:#fff;margin:4px 0 12px;font-size:clamp(54px,9vw,116px);}
  .cta .sub{font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.9);margin-bottom:30px;}

  /* FOOTER — MadTree green chrome */
  footer{background:var(--green-deep);color:rgba(255,255,255,.7);padding:52px 0 32px;font-size:13.5px;}
  footer .top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:26px;margin-bottom:22px;}
  footer .brand img{height:50px;width:auto;display:block;}
  footer .brand span{color:var(--sky);}
  footer .fl{display:flex;gap:24px;flex-wrap:wrap;}
  footer .fl a:hover{color:var(--gold-soft);}
  .age{font-size:12px;color:rgba(255,255,255,.45);}

  /* ============================================================
     INTERIOR PAGES — shared components (about / recipes / locator / flavor)
     ============================================================ */

  /* Sub-page hero banner */
  .pagehero{position:relative;overflow:hidden;padding:96px 0 64px;color:#fff;text-align:left;
    background:linear-gradient(120deg,rgba(16,34,28,.82) 0%,rgba(16,34,28,.62) 100%),
               url('sway-water.webp') center/cover no-repeat fixed;}
  .pagehero.cincy{background-image:linear-gradient(120deg,rgba(14,27,24,.88) 0%,rgba(14,27,24,.66) 100%),
               url('https://images.unsplash.com/photo-1592159784618-f1f74127d773?fm=jpg&q=70&w=2400&auto=format&fit=crop');}
  .pagehero.recipes-hero{background-image:linear-gradient(120deg,rgba(14,27,24,.80) 0%,rgba(14,27,24,.55) 100%),
               url('slide2.webp');background-position:center 30%;}
  .pagehero::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22260%22%20height%3D%2290%22%20viewBox%3D%220%200%20260%2090%22%3E%3Cpath%20d%3D%22M0%2045%20C%2022%2030%2C%2043%2030%2C%2065%2045%20C%2087%2060%2C%20108%2060%2C%20130%2045%20C%20152%2030%2C%20173%2030%2C%20195%2045%20C%20217%2060%2C%20238%2060%2C%20260%2045%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%221%22%20opacity%3D%220.22%22/%3E%3Cpath%20d%3D%22M0%2075%20C%2022%2060%2C%2043%2060%2C%2065%2075%20C%2087%2090%2C%20108%2090%2C%20130%2075%20C%20152%2060%2C%20173%2060%2C%20195%2075%20C%20217%2090%2C%20238%2090%2C%20260%2075%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%220.8%22%20opacity%3D%220.14%22/%3E%3C/svg%3E");
    background-repeat:repeat;background-size:260px 90px;
    opacity:.35;}
  .pagehero .wrap{position:relative;z-index:2;}
  .pagehero .eyebrow{color:var(--amber);}
  .pagehero h1{font-family:"calder-dark-grit",sans-serif;font-weight:400;color:#fff;font-size:clamp(38px,5.4vw,64px);
    line-height:.98;letter-spacing:-1px;text-transform:uppercase;margin:6px 0 14px;}
  .pagehero p{max-width:600px;font-size:17px;color:rgba(255,255,255,.88);}
  .crumb{font-size:12.5px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.6);margin-bottom:10px;display:block;}
  .crumb a{color:rgba(255,255,255,.85);text-decoration:underline;text-underline-offset:2px;}

  /* Impact stats grid (About page) */
  .stats{background:var(--tint);text-align:center;}
  .stats .eyebrow{color:var(--rust);}
  .stats .intro{max-width:640px;margin:14px auto 8px;color:var(--gray);font-size:17px;}
  .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:48px;}
  .stat-grid.cols-3{grid-template-columns:repeat(3,1fr);max-width:820px;margin-left:auto;margin-right:auto;}
  @media(max-width:820px){.stat-grid.cols-3{grid-template-columns:1fr 1fr;max-width:none;}}
  .stat-card{background:#fff;border-radius:20px;padding:34px 22px;box-shadow:0 8px 24px rgba(31,31,29,.06);}
  .stat-card .num{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:clamp(30px,3.4vw,42px);color:var(--pine);line-height:1;}
  .stat-card .lbl{margin-top:10px;font-size:13.5px;color:var(--gray);letter-spacing:.2px;}
  @media(max-width:820px){.stat-grid{grid-template-columns:1fr 1fr;}}

  /* Good/Reduce/Reuse pillar cards */
  .pillars{background:#fff;}
  .pillars .eyebrow{color:var(--rust);}
  .pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:44px;}
  .pillar{background:var(--mist);border-radius:22px;padding:32px 28px;border-top:6px solid var(--c);}
  .pillar h3{font-family:"calder-dark",sans-serif;font-weight:400;text-transform:uppercase;font-size:20px;color:var(--ink);margin-bottom:14px;letter-spacing:.3px;}
  .pillar ul{list-style:none;font-size:14.5px;color:var(--gray);}
  .pillar li{padding:6px 0 6px 18px;position:relative;}
  .pillar li:before{content:"";position:absolute;left:0;top:14px;width:7px;height:7px;border-radius:50%;background:var(--c);}
  @media(max-width:820px){.pillar-grid{grid-template-columns:1fr;}}

  /* Founders */
  .founders{background:var(--tint);}
  .founders .eyebrow{color:var(--rust);}
  .founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:44px;}
  .founder-card{background:#fff;border-radius:22px;padding:30px 28px;box-shadow:0 8px 24px rgba(31,31,29,.06);}
  .founder-card h3{font-family:"calder-dark",sans-serif;font-weight:400;text-transform:uppercase;font-size:20px;color:var(--ink);margin-bottom:8px;}
  .founder-card p{font-size:14.5px;color:var(--gray);margin-bottom:10px;}
  .founder-card .role{font-size:12.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--pine);font-weight:700;margin-bottom:12px;}
  @media(max-width:820px){.founder-grid{grid-template-columns:1fr;}}

  /* Fun facts strip */
  .funfacts{background:var(--night);color:#fff;text-align:center;}
  .funfacts .eyebrow{color:var(--amber);}
  .funfacts h2{color:#fff;}
  .fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:40px;}
  .fact-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:26px 24px;text-align:left;font-size:15px;color:rgba(255,255,255,.88);}
  @media(max-width:820px){.fact-grid{grid-template-columns:1fr;}}

  /* Recipes hub grid (reuses .rec / .rec-grid, adds a filter bar) */
  .rec-filter{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:8px 0 6px;}
  .rec-filter button{background:#fff;border:1.5px solid var(--line);border-radius:30px;padding:9px 18px;font-size:12.5px;font-weight:700;
    letter-spacing:.5px;text-transform:uppercase;color:var(--ink);cursor:pointer;transition:.15s;}
  .rec-filter button.active,.rec-filter button:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
  .rec-hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;}
  @media(max-width:1020px){.rec-hub-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:640px){.rec-hub-grid{grid-template-columns:1fr;}}
  .rec-hub-grid .rec{text-align:left;}
  .rec .abv{display:inline-block;margin-top:10px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--c);padding:4px 11px;border-radius:20px;}

  /* Locator page */
  .locator-tools{background:#fff;}
  .locator-search{display:flex;gap:12px;flex-wrap:wrap;max-width:640px;margin:36px 0 0;}
  .locator-search input[type="text"]{flex:1;min-width:220px;padding:15px 20px;border-radius:40px;border:1.5px solid var(--line);
    font-family:var(--body);font-size:15px;color:var(--ink);}
  .locator-search input[type="text"]:focus{outline:none;border-color:var(--sky);}
  .locator-search button{border:none;cursor:pointer;font-family:var(--body);}
  .loc-note{margin-top:14px;font-size:13.5px;color:var(--gray);}
  .loc-tag-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}
  .loc-tag{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:var(--tint);color:var(--pine);padding:7px 14px;border-radius:30px;}

  .locations{background:var(--tint);}
  .locations .eyebrow{color:var(--rust);}
  .loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;}
  @media(max-width:1020px){.loc-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:640px){.loc-grid{grid-template-columns:1fr;}}
  .loc-card{background:#fff;border-radius:22px;padding:28px 26px;text-align:left;box-shadow:0 8px 24px rgba(31,31,29,.06);border-top:6px solid var(--pine);}
  .loc-card.retail{border-top-color:var(--amber);}
  .loc-card .kind{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--pine);padding:4px 12px;border-radius:20px;margin-bottom:14px;}
  .loc-card.retail .kind{background:var(--amber);}
  .loc-card h3{font-family:"calder-dark",sans-serif;font-weight:400;text-transform:uppercase;font-size:19px;color:var(--ink);margin-bottom:8px;letter-spacing:.3px;}
  .loc-card p{font-size:14px;color:var(--gray);margin-bottom:4px;}
  .loc-card a.dir{display:inline-block;margin-top:12px;font-size:13px;font-weight:700;color:var(--rust);text-decoration:underline;text-underline-offset:3px;}

  .retail-note{background:#fff;text-align:center;}
  .retail-note .eyebrow{color:var(--rust);}
  .retail-note p{max-width:640px;margin:14px auto 0;color:var(--gray);font-size:17px;}
  .retail-chip-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:28px;}
  .retail-chip{background:var(--tint);color:var(--ink);font-weight:700;font-size:14px;padding:12px 22px;border-radius:14px;}

  /* Individual flavor page */
  .flavor-hero{background:var(--tint);}
  .flavor-hero .grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center;}
  .flavor-hero .can-photo{text-align:center;}
  .flavor-hero .can-photo img{height:420px;width:auto;margin:0 auto;filter:drop-shadow(0 24px 30px rgba(0,0,0,.18));}
  .flavor-hero .tag,.feature .tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--c);padding:6px 14px;border-radius:20px;margin-bottom:14px;}
  .flavor-hero h1{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:clamp(34px,4.6vw,54px);letter-spacing:-1px;line-height:1;color:var(--ink);margin-bottom:16px;text-transform:uppercase;}
  .flavor-hero p.desc{font-size:17.5px;color:var(--gray);margin-bottom:26px;max-width:480px;}
  .nutri-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px;}
  .nutri-chip{background:#fff;border-radius:14px;padding:14px 20px;text-align:center;min-width:96px;box-shadow:0 6px 18px rgba(31,31,29,.06);}
  .nutri-chip .n{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:22px;color:var(--c);line-height:1;}
  .nutri-chip .l{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--gray);margin-top:4px;}
  @media(max-width:820px){.flavor-hero .grid{grid-template-columns:1fr;gap:34px;}.flavor-hero .can-photo img{height:300px;}}

  .flavor-notes{background:#fff;}
  .flavor-notes .grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;}
  .flavor-notes .eyebrow{color:var(--rust);}
  .flavor-notes p{font-size:16.5px;color:var(--gray);}
  .note-list{list-style:none;margin-top:4px;}
  .note-list li{padding:8px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--ink);}
  .note-list li b{color:var(--c,var(--rust));}
  @media(max-width:820px){.flavor-notes .grid{grid-template-columns:1fr;gap:30px;}}

  .flavor-switch{background:var(--tint);text-align:center;}
  .flavor-switch .eyebrow{color:var(--rust);}
  .switch-row{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-top:36px;}
  .switch-card{background:#fff;border-radius:20px;padding:22px 18px;width:170px;box-shadow:0 8px 20px rgba(31,31,29,.06);transition:transform .2s;}
  .switch-card:hover{transform:translateY(-6px);}
  .switch-card img{height:140px;width:auto;margin:0 auto 14px;}
  .switch-card .fl{font-family:"calder-dark",sans-serif;font-size:14px;text-transform:uppercase;color:var(--ink);}

  /* AGE GATE */
  .age-gate{position:fixed;inset:0;z-index:999;background:rgba(14,27,24,.97);
    display:flex;align-items:center;justify-content:center;padding:24px;
    backdrop-filter:blur(6px);}
  .age-gate-card{max-width:420px;width:100%;text-align:center;color:#fff;}
  .age-gate-card img{height:50px;width:auto;margin:0 auto 30px;display:block;}
  .age-gate-card h2{font-family:"calder-dark-grit",sans-serif;font-weight:400;
    font-size:clamp(26px,4vw,34px);text-transform:uppercase;letter-spacing:-.5px;margin-bottom:14px;}
  .age-gate-card p{font-size:15px;line-height:1.6;color:rgba(255,255,255,.72);margin-bottom:30px;}
  .age-gate-btns{display:flex;flex-direction:column;align-items:center;gap:16px;}
  .age-gate-btns .btn{min-width:200px;}
  .age-gate-no{background:none;border:none;font-family:var(--body);font-size:13.5px;
    font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:rgba(255,255,255,.55);
    cursor:pointer;text-decoration:underline;text-underline-offset:3px;}
  .age-gate-no:hover{color:#fff;}
  .age-gate-fine{font-size:12px;color:rgba(255,255,255,.4);margin-top:26px;margin-bottom:0;}
  @media(max-width:480px){.age-gate-btns .btn{min-width:0;width:100%;}}

  /* NAV — Flavors dropdown */
  nav .links .has-dropdown{position:relative;}
  nav .links .has-dropdown > a{display:block;padding-right:16px;}
  nav .links .has-dropdown .caret{position:absolute;right:0;top:50%;margin-top:-2px;width:0;height:0;
    border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.8;
    transition:transform .15s;}
  nav .links .has-dropdown:hover .caret,
  nav .links .has-dropdown:focus-within .caret{transform:rotate(180deg);}
  .dropdown-menu{position:absolute;top:100%;left:-18px;margin-top:10px;transform:translateY(6px);
    background:#fff;border-radius:18px;box-shadow:0 22px 44px rgba(0,0,0,.22);padding:16px;min-width:250px;
    opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease;z-index:60;}
  nav .links .has-dropdown::before{content:'';position:absolute;left:0;right:0;top:100%;height:22px;}
  nav .links .has-dropdown:hover .dropdown-menu,
  nav .links .has-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
  nav .links .dropdown-menu a{display:flex;align-items:center;gap:16px;padding:12px 14px;border-radius:13px;color:var(--ink);
    font-size:13.5px;font-weight:700;letter-spacing:.2px;text-transform:none;opacity:1;transition:background .12s;}
  nav .links .dropdown-menu a:hover{background:var(--tint);color:var(--ink);}
  nav .links .dropdown-menu a img{height:30px;width:auto;flex:none;}
  .dropdown-menu hr{border:none;border-top:1px solid var(--line);margin:6px 4px;}
  nav .links .dropdown-menu .view-all{font-weight:800;color:var(--rust);text-transform:uppercase;font-size:11px;letter-spacing:.6px;justify-content:center;}
  nav .links .dropdown-menu .view-all:hover{background:var(--tint);color:var(--rust);}

  /* FLAVORS LANDING HERO — colorful, product-forward (varies from photo pageheros) */
  .flavor-land-hero{position:relative;overflow:hidden;padding:90px 0 0;text-align:center;color:#fff;
    background:linear-gradient(115deg,var(--berry) 0%,var(--rasp) 33%,var(--orange) 66%,var(--pine) 100%);}
  .flavor-land-hero .wrap{position:relative;z-index:2;}
  .flavor-land-hero .crumb{color:rgba(255,255,255,.65);}
  .flavor-land-hero .crumb a{color:rgba(255,255,255,.9);}
  .flavor-land-hero .eyebrow{color:#fff;opacity:.92;}
  .flavor-land-hero h1{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:clamp(40px,6.2vw,74px);
    text-transform:uppercase;letter-spacing:-1px;margin:8px 0 14px;line-height:.94;}
  .flavor-land-hero p.lede{max-width:560px;margin:0 auto;font-size:17px;color:rgba(255,255,255,.92);}
  .cans-strip{display:flex;justify-content:center;align-items:flex-end;gap:8px;margin-top:44px;position:relative;z-index:2;}
  .cans-strip a{display:block;transition:transform .25s cubic-bezier(.34,1.56,.64,1);}
  .cans-strip img{height:260px;width:auto;filter:drop-shadow(0 20px 26px rgba(0,0,0,.28));display:block;}
  .cans-strip a:nth-child(1){transform:rotate(-9deg) translateY(18px);}
  .cans-strip a:nth-child(2){transform:rotate(-3deg);}
  .cans-strip a:nth-child(3){transform:rotate(3deg);}
  .cans-strip a:nth-child(4){transform:rotate(9deg) translateY(18px);}
  .cans-strip a:hover{transform:translateY(-14px) scale(1.05) rotate(0deg) !important;z-index:5;}
  @media(max-width:820px){.cans-strip{flex-wrap:wrap;gap:0;}.cans-strip img{height:170px;}
    .cans-strip a:nth-child(1),.cans-strip a:nth-child(4){transform:rotate(0);}
    .cans-strip a:nth-child(2),.cans-strip a:nth-child(3){transform:rotate(0);}}
  .flavor-land-wave{position:relative;line-height:0;font-size:0;margin-top:30px;margin-bottom:-3px;}
  .flavor-land-wave svg{display:block;width:100%;height:100%;}

  /* Nutrition banner strip (reused on flavors landing page) */
  .nutri-banner{background:linear-gradient(180deg,var(--night) 0%,var(--ink) 100%);text-align:center;padding:54px 0 50px;}
  .nutri-banner .eyebrow{color:var(--amber);}
  .nutri-banner h3{color:#fff;font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:clamp(20px,2.4vw,26px);
    text-transform:uppercase;letter-spacing:.3px;margin:6px 0 40px;}
  .nutri-banner .row{display:flex;justify-content:center;align-items:stretch;gap:0;flex-wrap:wrap;}
  .nutri-banner .item{color:#fff;padding:0 42px;position:relative;}
  .nutri-banner .item:not(:first-child){border-left:1px solid rgba(255,255,255,.14);}
  .nutri-banner .item .n{font-family:"calder-dark-grit",sans-serif;font-weight:400;font-size:34px;color:var(--amber);line-height:1;
    text-shadow:0 0 26px rgba(236,155,51,.35);}
  .nutri-banner .item .l{font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:rgba(255,255,255,.55);margin-top:10px;}
  @media(max-width:700px){.nutri-banner .item{padding:14px 22px;flex:1 1 40%;}
    .nutri-banner .item:not(:first-child){border-left:none;}
    .nutri-banner .item:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14);}}
  .can-card p{font-size:13.5px;color:var(--gray);margin-top:8px;line-height:1.45;}

  /* MOBILE NAV — hamburger + slide-down menu */
  .nav-actions{display:flex;align-items:center;gap:14px;}
  .burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;
    width:38px;height:38px;background:none;border:none;cursor:pointer;padding:0;flex:none;}
  .burger span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform .25s,opacity .2s;}
  .burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .burger.open span:nth-child(2){opacity:0;}
  .burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  .mobile-menu{display:none;}
  @media(max-width:820px){
    .burger{display:flex;}
    .mobile-menu{display:block;max-height:0;overflow:hidden;background:var(--night);
      transition:max-height .3s ease;border-top:0 solid rgba(255,255,255,0);}
    .mobile-menu.open{max-height:640px;border-top:1px solid rgba(255,255,255,.08);}
    .mobile-menu .wrap{padding:10px 24px 26px;display:flex;flex-direction:column;}
    .mobile-menu > .wrap > a{color:#fff;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;
      padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1);}
    .mobile-flavors-toggle{color:#fff;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;
      padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1);background:none;border-left:none;border-right:none;border-top:none;
      width:100%;display:flex;justify-content:space-between;align-items:center;font-family:var(--body);cursor:pointer;}
    .mobile-flavors-toggle .caret{position:static;border-left:4px solid transparent;border-right:4px solid transparent;
      border-top:5px solid currentColor;width:0;height:0;transition:transform .2s;}
    .mobile-flavors-toggle.open .caret{transform:rotate(180deg);}
    .mobile-flavors-list{max-height:0;overflow:hidden;transition:max-height .25s ease;}
    .mobile-flavors-list.open{max-height:280px;}
    .mobile-flavors-list a{display:block;color:rgba(255,255,255,.82);font-size:13.5px;font-weight:600;padding:11px 0 11px 16px;}
    .mobile-menu .mobile-cta{margin-top:20px;text-align:center;border-bottom:none;text-transform:uppercase;}
  }

  /* Top announcement ribbon (homepage) */
  .ribbon{background:var(--rust);color:#fff;text-align:center;font-size:13px;font-weight:700;
    letter-spacing:.3px;padding:11px 20px;}
  .ribbon a{color:#fff;text-decoration:underline;text-underline-offset:3px;}
  .ribbon .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#fff;
    margin-right:8px;vertical-align:middle;animation:ribbonPulse 2s infinite;}
  @keyframes ribbonPulse{0%,100%{opacity:1}50%{opacity:.35}}
