/* ── HERO ── */
    .hero{
      background:linear-gradient(135deg,#f0fdf4 0%,#ecfdf5 50%,#f0fdfa 100%);
      overflow:hidden;
      padding:80px 0;
    }
    .hero-inner{
      max-width:1400px;margin:0 auto;padding:0 32px;
      display:grid;grid-template-columns:1fr 1fr;
      gap:48px;align-items:start;
    }
    .hero-left{
      display:flex;
      flex-direction:column;
      gap:20px;
      padding-top:18px;
    }
    .hero-badge{
      display:inline-block;
      background:#dcfce7;color:#166534;
      border-radius:100px;padding:8px 16px;
      font-size:14px;font-weight:500;
      align-self:flex-start;
    }
    .hero h1{
      font-size:clamp(36px,4.5vw,60px);
      font-weight:700;
      line-height:1.25;color:#111827;margin:0;
    }
    .hero h1 .brand{color:#16a34a}
    .hero-sub{font-size:20px;color:#4b5563;line-height:1.6;margin:0}
    .hero-btns{display:flex;gap:16px;flex-wrap:wrap}
    .btn-hero-primary{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      background:#16a34a;color:#fff;border:none;
      border-radius:8px;padding:16px 32px;
      font-size:15px;font-weight:600;transition:background .15s;
      cursor:pointer;text-decoration:none;
    }
    .btn-hero-primary:hover{background:#15803d}
    .btn-hero-primary svg{width:20px;height:20px;transition:transform .2s;flex-shrink:0}
    .btn-hero-primary:hover svg{transform:translateX(4px)}
    .btn-hero-outline{
      display:inline-flex;align-items:center;justify-content:center;
      border:2px solid #16a34a;color:#16a34a;
      border-radius:8px;padding:14px 32px;
      font-size:15px;font-weight:600;transition:background .15s;
      text-decoration:none;background:transparent;
    }
    .btn-hero-outline:hover{background:#f0fdf4}
    .hero-stats{display:flex;gap:32px;flex-wrap:wrap;padding-top:24px}
    .hero-stat strong{display:block;font-size:30px;font-weight:700;color:#16a34a}
    .hero-stat span{font-size:14px;color:#4b5563;margin-top:2px;display:block}
    .hero-right{position:relative}
    .hero-img-wrap{
      position:relative;z-index:1;width:fit-content;max-width:100%;
      display:flex;align-items:flex-start;justify-content:center;
      justify-self:center;margin:0 auto;background:transparent;
      border-radius:10px;overflow:hidden;
    }
    .hero-img-wrap img{
      display:block;
      width:auto;max-width:100%;
      height:auto;max-height:720px;
      object-fit:contain;object-position:center;
      border-radius:10px;
    }
    .hero-img-emoji{
      aspect-ratio:1/1;width:100%;
      display:flex;align-items:center;justify-content:center;
      font-size:120px;background:#dcfce7;border-radius:16px;
    }
    .hero-blob-1{
      position:absolute;top:-16px;right:-16px;
      width:288px;height:288px;border-radius:50%;
      background:#bbf7d0;filter:blur(80px);opacity:.3;
    }
    .hero-blob-2{
      position:absolute;bottom:-32px;left:-32px;
      width:256px;height:256px;border-radius:50%;
      background:#a7f3d0;filter:blur(80px);opacity:.3;
    }

    /* ── CATEGORIES ── */
    .cats-section{padding:64px 0;background:#fff}
    .cats-wrap{max-width:1280px;margin:0 auto;padding:0 32px}
    .sec-head{text-align:center;margin-bottom:48px}
    .sec-head h2{font-size:36px;font-weight:700;color:#111827;margin-bottom:16px}
    .sec-head p{font-size:20px;color:#4b5563}
    .cats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
    .cat-card{
      position:relative;
      background:linear-gradient(135deg,#f9fafb,#f3f4f6);
      border-radius:16px;padding:32px;
      display:flex;flex-direction:column;
      overflow:hidden;cursor:pointer;
      text-decoration:none;color:inherit;
      transition:box-shadow .25s;
      content-visibility:auto;
      contain-intrinsic-size:260px;
    }
    .cat-card:hover{box-shadow:0 20px 40px rgba(0,0,0,.12)}
    .cat-overlay{
      position:absolute;inset:0;opacity:0;
      transition:opacity .25s;
    }
    .cat-card:hover .cat-overlay{opacity:.1}
    .cat-overlay.orange{background:linear-gradient(135deg,#fb923c,#f87171)}
    .cat-overlay.purple{background:linear-gradient(135deg,#f472b6,#c084fc)}
    .cat-overlay.green{background:linear-gradient(135deg,#4ade80,#34d399)}
    .cat-overlay.blue{background:linear-gradient(135deg,#60a5fa,#22d3ee)}
    .cat-icon-wrap{
      width:64px;height:64px;border-radius:12px;
      display:flex;align-items:center;justify-content:center;
      margin-bottom:16px;
      transition:transform .25s;
      position:relative;z-index:1;
    }
    .cat-card:hover .cat-icon-wrap{transform:scale(1.1)}
    .cat-icon-wrap.orange{background:linear-gradient(135deg,#fb923c,#f87171)}
    .cat-icon-wrap.purple{background:linear-gradient(135deg,#f472b6,#c084fc)}
    .cat-icon-wrap.green{background:linear-gradient(135deg,#4ade80,#34d399)}
    .cat-icon-wrap.blue{background:linear-gradient(135deg,#60a5fa,#22d3ee)}
    .cat-icon-wrap svg{width:32px;height:32px;stroke:#fff;fill:none}
    .cat-card h3{font-size:20px;font-weight:600;color:#111827;margin-bottom:8px;position:relative;z-index:1}
    .cat-card p{font-size:15px;color:#4b5563;position:relative;z-index:1;margin:0}

    /* ── PRODUCTS ── */
    .prods-section{padding:72px 0;background:#f6f8f6}
    .prods-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
    .prod-card{
      position:relative;display:flex;flex-direction:column;
      border-radius:24px;overflow:hidden;
      background:#fff;border:1px solid #f3f4f6;
      box-shadow:0 2px 8px rgba(15,23,42,.05);
      transition:transform .25s, box-shadow .25s;
      content-visibility:auto;
      contain-intrinsic-size:430px;
    }
    .prod-card:hover{transform:translateY(-4px);box-shadow:0 20px 36px rgba(15,23,42,.12)}
    .prod-img-link{display:block}
    .prod-img{
      position:relative;aspect-ratio:1/1;
      background:#f9fafb;overflow:hidden;
    }
    .prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
    .prod-card:hover .prod-img img{transform:scale(1.05)}
    .prod-no-img{
      width:100%;height:100%;
      display:flex;align-items:center;justify-content:center;font-size:64px;background:#f3f4f6;
    }
    .prod-heart{
      position:absolute;top:16px;right:16px;
      width:40px;height:40px;border-radius:50%;
      background:rgba(255,255,255,.92);border:none;
      display:flex;align-items:center;justify-content:center;
      box-shadow:0 10px 22px rgba(15,23,42,.12);
      transition:background .15s;cursor:pointer;
    }
    .prod-heart:hover{background:#fff5f5}
    .prod-heart svg{width:20px;height:20px;stroke:#4b5563;transition:stroke .15s}
    .prod-heart:hover svg{stroke:#ef4444}
    .prod-badge{
      position:absolute;bottom:16px;left:16px;
      border-radius:999px;padding:6px 12px;background:rgba(255,255,255,.92);
      border:1px solid #e5e7eb;font-size:12px;font-weight:600;color:#374151;
      backdrop-filter:blur(8px);
    }
    .prod-info{padding:20px;display:flex;flex-direction:column;flex:1}
    .prod-name{
      display:-webkit-box;font-size:18px;font-weight:600;
      color:#111827;margin-bottom:6px;line-height:1.35;min-height:2.7em;
      -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    }
    .prod-subname{font-size:14px;font-weight:500;color:#16a34a;margin-bottom:14px;min-height:20px}
    .prod-availability{margin-bottom:16px}
    .prod-availability-pill{
      display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;
      background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;font-size:12px;font-weight:600;
    }
    .prod-bottom{
      display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;
      padding-top:16px;border-top:1px solid #f3f4f6;
    }
    .prod-price{font-size:28px;font-weight:800;color:#111827;line-height:1}
    .btn-add{
      display:inline-flex;align-items:center;justify-content:center;
      background:#16a34a;color:#fff;border:none;
      border-radius:999px;width:48px;height:48px;
      transition:background .15s, box-shadow .15s;cursor:pointer;
      box-shadow:0 8px 18px rgba(22,163,74,.22);flex-shrink:0;
    }
    .btn-add:hover{background:#15803d;box-shadow:0 10px 22px rgba(21,128,61,.28)}

    /* ── CARE ── */
    .care-section{background:#fff;padding:64px 0}
    .care-wrap{max-width:1280px;margin:0 auto;padding:0 32px}
    .care-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
    .care-card{
      text-align:center;
      transition:transform .25s;cursor:pointer;
    }
    .care-card:hover{transform:translateY(-8px)}
    .care-icon{
      width:80px;height:80px;border-radius:16px;
      display:flex;align-items:center;justify-content:center;
      margin:0 auto 16px;
      transition:box-shadow .25s;
    }
    .care-card:hover .care-icon{box-shadow:0 20px 40px rgba(0,0,0,.15)}
    .care-icon svg{width:40px;height:40px;stroke:#fff;fill:none}
    .care-icon.blue{background:linear-gradient(135deg,#60a5fa,#22d3ee)}
    .care-icon.yellow{background:linear-gradient(135deg,#facc15,#fb923c)}
    .care-icon.pink{background:linear-gradient(135deg,#f87171,#f472b6)}
    .care-icon.green2{background:linear-gradient(135deg,#4ade80,#34d399)}
    .care-card h3{font-size:20px;font-weight:600;color:#111827;margin-bottom:8px}
    .care-card p{font-size:15px;color:#4b5563;line-height:1.5;margin:0}
    .care-btn{text-align:center;margin-top:48px}

    /* ── INFO LINKS ── */
    .landing-info-section{
      padding:88px 24px;
      background:linear-gradient(135deg,#ecfeff 0%,#f0fdf4 100%);
    }
    .landing-info-wrap{max-width:1180px;margin:0 auto}
    .landing-info-head{text-align:center;max-width:720px;margin:0 auto 42px}
    .landing-info-head h2{
      font-size:clamp(32px,4vw,54px);line-height:.98;letter-spacing:-.05em;
      color:#07140f;margin:0 0 12px;
    }
    .landing-info-head p{color:#52665d;font-size:16px;line-height:1.7;margin:0}
    .landing-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
    .landing-info-card{
      position:relative;overflow:hidden;min-height:290px;border-radius:30px;padding:32px;
      background:#fff;border:1px solid rgba(15,23,42,.05);
      box-shadow:0 18px 42px rgba(15,23,42,.08);
      display:flex;flex-direction:column;
      transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
      content-visibility:auto;
      contain-intrinsic-size:290px;
    }
    .landing-info-card::before{
      content:"";position:absolute;top:-48px;right:-40px;width:138px;height:138px;
      border-radius:50%;border:28px solid rgba(16,185,129,.12);
    }
    .landing-info-card:hover{
      transform:translateY(-8px);border-color:rgba(34,197,94,.28);
      box-shadow:0 28px 68px rgba(15,23,42,.13);
    }
    .landing-info-card--dark{
      background:linear-gradient(145deg,#16a34a 0%,#047857 100%);
      color:#fff;box-shadow:0 26px 78px rgba(6,137,95,.22);
    }
    .landing-info-icon{
      position:relative;
      width:58px;height:58px;border-radius:20px;
      display:flex;align-items:center;justify-content:center;
      background:rgba(255,255,255,.18);
      color:#fff;font-size:25px;font-weight:900;
      margin-bottom:28px;
      transition:transform .24s ease;
    }
    .landing-info-card:hover .landing-info-icon{transform:scale(1.1) rotate(-3deg)}
    .landing-info-icon--blue{background:linear-gradient(135deg,#60a5fa,#2563eb)}
    .landing-info-icon--violet{background:linear-gradient(135deg,#c084fc,#7c3aed)}
    .landing-info-card h3{
      position:relative;color:#07140f;font-size:28px;line-height:1.05;
      letter-spacing:-.045em;margin:0 0 14px;
    }
    .landing-info-card--dark h3{color:#fff}
    .landing-info-card p{
      position:relative;color:#52665d;font-size:15px;line-height:1.62;margin:0 0 24px;
    }
    .landing-info-card--dark p{color:#d7fbe6}
    .landing-info-card strong{
      position:relative;
      margin-top:auto;
      color:#16a34a;
      font-size:14px;
      transition:transform .2s ease;
    }
    .landing-info-card strong::after{content:" →"}
    .landing-info-card--dark strong{color:#fff}
    .landing-info-card:hover strong{transform:translateX(5px)}

    /* ── NEWSLETTER ── */
    .newsletter-section{
      padding:64px 0 48px;
      margin-bottom:-16px;
      background:linear-gradient(135deg,#16a34a,#059669);
    }
    .newsletter-wrap{max-width:896px;margin:0 auto;padding:0 32px;text-align:center}
    .newsletter-card{
      background:rgba(255,255,255,.1);
      backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
      border-radius:24px;padding:48px;
    }
    .newsletter-icon{
      width:64px;height:64px;
      display:flex;align-items:center;justify-content:center;
      margin:0 auto 24px;
    }
    .newsletter-icon svg{width:64px;height:64px;stroke:#fff;fill:none}
    .newsletter-card h2{font-size:32px;font-weight:700;color:#fff;margin-bottom:16px;line-height:1.25}
    .newsletter-card p{font-size:18px;color:rgba(255,255,255,.9);margin-bottom:32px}
    .newsletter-form{display:flex;gap:12px;max-width:448px;margin:0 auto}
    .newsletter-input{
      flex:1;padding:16px 24px;border-radius:8px;
      border:none;font-size:15px;font-family:inherit;
      outline:none;
    }
    .newsletter-input:focus{box-shadow:0 0 0 2px #fff}
    .newsletter-btn{
      padding:16px 28px;background:#fff;color:#16a34a;
      border:none;border-radius:8px;font-size:15px;font-weight:600;
      cursor:pointer;transition:background .15s;white-space:nowrap;font-family:inherit;
    }
    .newsletter-btn:hover{background:#f3f4f6}
    .newsletter-note{font-size:13px;color:rgba(255,255,255,.7);margin-top:16px}

    .reels-section{padding:88px 0 56px;background:linear-gradient(180deg,#f8fafc 0%,#f3f4f6 100%)}
    .reels-wrap{max-width:1380px;margin:0 auto;padding:0 40px}
    .sec-head--left{text-align:center;margin-bottom:42px}
    .reels-kicker{
      display:inline-flex;align-items:center;gap:8px;
      padding:9px 18px;border-radius:999px;
      background:#ffffff;color:#16a34a;
      border:1px solid rgba(22,163,74,.14);
      font-size:13px;font-weight:700;margin-bottom:18px;
      box-shadow:0 12px 28px rgba(15,23,42,.06);
    }
    .reels-grid{
      display:flex;
      gap:28px;
      align-items:stretch;
      overflow-x:auto;
      padding:8px 6px 14px;
      scroll-snap-type:x mandatory;
      scrollbar-width:thin;
      scrollbar-color:#cbd5e1 #f8fafc;
    }
    .reels-grid::-webkit-scrollbar{height:12px}
    .reels-grid::-webkit-scrollbar-track{background:#e5e7eb;border-radius:999px}
    .reels-grid::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#cbd5e1,#94a3b8);border-radius:999px}
    .reel-card{
      display:block;text-decoration:none;color:inherit;
      flex:0 0 288px;
      width:288px;
      scroll-snap-align:start;
      border:none;
      padding:0;
      background:transparent;
      text-align:left;
      cursor:pointer;
      font-family:inherit;
      transition:transform .24s ease, filter .24s ease;
      content-visibility:auto;
      contain-intrinsic-size:512px;
    }

    @supports (content-visibility:auto) {
      .cats-section,
      .prods-section,
      .care-section,
      .landing-info-section,
      .newsletter-section,
      .reels-section {
        content-visibility:auto;
        contain-intrinsic-size:720px;
      }
    }
    .reel-card:hover{transform:translateY(-8px) scale(1.01);filter:saturate(1.06)}
    .reel-card:active{transform:translateY(-3px) scale(.992)}
    .reel-card__frame{
      position:relative;aspect-ratio:9/16;border-radius:24px;overflow:hidden;
      background:linear-gradient(135deg,#111827,#0f172a);
      box-shadow:0 20px 42px rgba(15,23,42,.14);
      border:1px solid rgba(255,255,255,.75);
      transition:box-shadow .24s ease, border-color .24s ease;
    }
    .reel-card:hover .reel-card__frame{box-shadow:0 30px 60px rgba(15,23,42,.22);border-color:rgba(255,255,255,.92)}
    .reel-card__frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
    .reel-card__poster-placeholder{width:100%;height:100%;background:linear-gradient(145deg,#1f2937,#0f172a)}
    .reel-card:hover .reel-card__frame img{transform:scale(1.12)}
    .reel-card__overlay{
      position:absolute;inset:0;
      background:linear-gradient(180deg,rgba(15,23,42,.06) 0%,rgba(15,23,42,.18) 42%,rgba(15,23,42,.78) 100%);
      transition:background .24s ease;
    }
    .reel-card:hover .reel-card__overlay{background:linear-gradient(180deg,rgba(15,23,42,.04) 0%,rgba(15,23,42,.12) 36%,rgba(15,23,42,.84) 100%)}
    .reel-card__badge{
      position:absolute;top:18px;left:18px;z-index:2;
      display:inline-flex;align-items:center;justify-content:center;
      min-height:32px;padding:0 12px;border-radius:999px;
      background:rgba(15,23,42,.42);color:#fff;
      border:1px solid rgba(255,255,255,.18);
      backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
      font-size:12px;font-weight:700;letter-spacing:.04em;
      text-transform:uppercase;
      transition:transform .24s ease, background .24s ease, border-color .24s ease;
    }
    .reel-card:hover .reel-card__badge{transform:translateY(-2px);background:rgba(22,163,74,.78);border-color:rgba(255,255,255,.34)}
    .reel-card__play{
      position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
      width:76px;height:76px;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      background:rgba(255,255,255,.28);color:#fff;
      backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
      box-shadow:0 20px 40px rgba(15,23,42,.22);z-index:2;
      transition:transform .25s ease, background .25s ease;
    }
    .reel-card:hover .reel-card__play{transform:translate(-50%,-50%) scale(1.12);background:rgba(255,255,255,.42)}
    .reel-card__play svg{width:30px;height:30px;margin-left:4px}
    .reel-card__meta{
      position:absolute;left:22px;right:22px;bottom:22px;
      display:flex;flex-direction:column;gap:10px;z-index:2;
    }
    .reel-card__meta strong{
      font-size:22px;font-weight:700;line-height:1.25;color:#fff;
      display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    }
    .reel-card__meta span{font-size:14px;font-weight:600;color:rgba(255,255,255,.88)}
    .reel-card__stats{
      display:flex;align-items:center;gap:18px;flex-wrap:wrap;
      color:rgba(255,255,255,.88);font-size:14px;font-weight:600;
    }
    .reel-card__fallback{
      width:100%;height:100%;display:flex;align-items:center;justify-content:center;
      padding:24px;
      font-size:32px;font-weight:800;color:#fff;background:linear-gradient(135deg,#111827,#16a34a);
      text-align:center;line-height:1.15;
    }
    .reel-card__fallback--emerald{background:linear-gradient(135deg,#065f46,#10b981)}
    .reel-card__fallback--blue{background:linear-gradient(135deg,#1d4ed8,#06b6d4)}
    .reel-card__fallback--violet{background:linear-gradient(135deg,#6d28d9,#ec4899)}
    .reel-card__fallback--sunset{background:linear-gradient(135deg,#ea580c,#ef4444)}
    .reel-modal{
      position:fixed;inset:0;z-index:1200;
      display:flex;align-items:center;justify-content:center;
      opacity:0;pointer-events:none;
      transition:opacity .2s ease;
    }
    .reel-modal.is-open{opacity:1;pointer-events:auto}
    .reel-modal__backdrop{
      position:absolute;inset:0;background:rgba(15,23,42,.72);
      backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
    }
    .reel-modal__dialog{
      position:relative;z-index:1;
      width:min(92vw,640px);
      max-height:min(92vh,980px);
      display:flex;flex-direction:column;gap:16px;
      padding:18px;
      border-radius:28px;
      background:#0f172a;
      box-shadow:0 24px 60px rgba(15,23,42,.4);
    }
    .reel-modal__close{
      position:absolute;top:14px;right:14px;z-index:2;
      width:42px;height:42px;border:none;border-radius:50%;
      background:rgba(255,255,255,.14);color:#fff;
      display:flex;align-items:center;justify-content:center;
      cursor:pointer;
    }
    .reel-modal__close svg{width:18px;height:18px}
    .reel-modal__video-wrap{
      width:100%;
      border-radius:22px;
      overflow:hidden;
      background:#000;
      aspect-ratio:9/16;
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
    }
    .reel-modal__video{
      width:100%;
      height:100%;
      display:block;
      object-fit:contain;
      background:#000;
    }
    .reel-modal__seek{
      display:flex;align-items:center;gap:12px;
      padding:0 4px;
    }
    .reel-modal__seek input[type=range]{
      flex:1;
      width:100%;
      accent-color:#16a34a;
      cursor:pointer;
    }
    .reel-modal__time{
      min-width:86px;
      color:rgba(255,255,255,.8);
      font-size:13px;
      font-weight:700;
      text-align:right;
      font-variant-numeric:tabular-nums;
    }
    .reel-modal__meta{
      display:flex;flex-direction:column;gap:8px;
      color:#fff;
      padding:2px 4px 4px;
    }
    .reel-modal__meta strong{font-size:20px;line-height:1.3}
    .reel-modal__stats{
      display:flex;gap:16px;flex-wrap:wrap;
      color:rgba(255,255,255,.8);
      font-size:14px;font-weight:600;
    }

@media (max-width: 768px) {
.hero{padding:32px 0 40px}
    .hero-inner{grid-template-columns:1fr;gap:0;padding:0 16px}
    .hero-left{padding-top:0;gap:18px}
    .hero-right{display:none}
    .hero h1{font-size:30px;line-height:1.2}
    .hero-sub{font-size:15px}
    .hero-btns{gap:10px}
    .btn-hero-primary,.btn-hero-outline{padding:12px 20px;font-size:14px}
    .hero-stats{gap:16px;padding-top:24px}
    .hero-stat strong{font-size:24px}
    .hero-stat span{font-size:12px}
    .hero-badge{font-size:12px;padding:6px 12px}

    .reels-section{padding:44px 0 20px}
    .reels-wrap{padding:0 16px}
    .sec-head--left{text-align:left;margin-bottom:24px}
    .reels-grid{gap:14px;padding:4px 2px 12px}
    .reel-card{flex:0 0 226px;width:226px}
    .reel-card__frame{border-radius:20px}
    .reel-card__play{width:58px;height:58px}
    .reel-card__play svg{width:22px;height:22px}
    .reel-card__meta{left:12px;right:12px;bottom:12px}
    .reel-card__meta strong{font-size:14px}
    .reel-card__meta span{font-size:11px}
    .reel-card__stats{gap:10px;font-size:11px}
    .reel-card__badge{top:12px;left:12px;min-height:28px;padding:0 10px;font-size:10px}
    .hero-blob-1,.hero-blob-2{display:none}
    .newsletter-card,
    .reel-card__badge,
    .reel-card__play,
    .reel-modal__backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}
    .reel-modal__dialog{width:min(96vw,420px);padding:12px;border-radius:22px}
    .reel-modal__close{top:10px;right:10px;width:38px;height:38px}
    .reel-modal__seek{gap:8px}
    .reel-modal__time{min-width:72px;font-size:11px}
    .reel-modal__meta strong{font-size:16px}
    .reel-modal__stats{font-size:12px;gap:10px}
    .landing-info-section{padding:58px 16px}
    .landing-info-grid{grid-template-columns:1fr}
    .landing-info-card{min-height:210px;border-radius:24px}

    .cats-section{padding:36px 0}
    .cats-wrap{padding:0 16px}
    .sec-head{margin-bottom:28px}
    .sec-head h2{font-size:24px;margin-bottom:8px}
    .sec-head p{font-size:15px}
    .cats-grid{grid-template-columns:repeat(2,1fr);gap:12px}
    .cat-card{padding:20px}
    .cat-icon-wrap{width:48px;height:48px;margin-bottom:10px}
    .cat-icon-wrap svg{width:24px;height:24px}
    .cat-card h3{font-size:16px}
    .cat-card p{font-size:13px}

    .prods-section{padding:40px 0}
    .prods-grid{grid-template-columns:repeat(2,1fr);gap:14px}
    .prod-card{border-radius:18px}
    .prod-img{aspect-ratio:1/1}
    .prod-heart{width:32px;height:32px;top:10px;right:10px}
    .prod-heart svg{width:16px;height:16px}
    .prod-badge{font-size:10px;padding:4px 8px;bottom:10px;left:10px}
    .prod-info{padding:14px 12px}
    .prod-name{font-size:15px;margin-bottom:4px}
    .prod-subname{font-size:12px;margin-bottom:10px;min-height:16px}
    .prod-availability{margin-bottom:12px}
    .prod-availability-pill{font-size:11px;padding:5px 10px}
    .prod-bottom{padding-top:12px}
    .prod-price{font-size:22px}
    .btn-add{width:42px;height:42px}
    .btn-add svg{width:16px;height:16px}

    .care-section{padding:40px 0}
    .care-grid{grid-template-columns:repeat(2,1fr);gap:16px}
    .care-card{padding:20px 16px}
    .care-icon{width:56px;height:56px}

    .newsletter-section{padding:40px 16px 24px;margin-bottom:-12px}
    .newsletter-card{padding:28px 20px}
    .newsletter-card h2{font-size:22px}
    .newsletter-card p{font-size:14px}
    .newsletter-form{flex-direction:column;gap:8px;border-radius:10px;padding:4px}
    .newsletter-input,.newsletter-btn{border-radius:8px;padding:12px 16px}

    .cats-section,.prods-section,.care-section{padding-left:0;padding-right:0}
    .sec-head-row{flex-direction:column;align-items:flex-start;margin-bottom:20px;gap:10px}
    .sec-head-row h2{font-size:22px}
    .sec-head-row p{font-size:13px}
}

/* Compact latest-products grid below the homepage categories. */
.new-arrivals {
  padding: 16px 24px 44px;
  background: #eef7ef;
}

.new-arrivals--recommended {
  background: #fff;
}

.new-arrivals--recently-viewed {
  background: #f6faf7;
}

.new-arrivals + .new-arrivals {
  padding-top: 34px;
}
.new-arrivals__inner {
  width: min(100%, 1500px);
  margin: 0 auto;
}

.new-arrivals__head {
  min-height: 56px;
  margin-bottom: 8px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.new-arrivals__head h2 {
  margin: 0;
  color: #14251d;
  font-size: 16px;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: 0;
}

.new-arrivals__head p {
  margin: 4px 0 0;
  color: #9aa5a0;
  font-size: 11px;
  line-height: 1.4;
}

.new-arrivals__head a {
  margin-top: 5px;
  flex: none;
  color: #07883e;
  font-size: 11px;
  line-height: 1.4;
  font-weight: 700;
  text-decoration: none;
}

.new-arrivals__head a:hover {
  text-decoration: underline;
}

.new-arrivals__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.arrival-card {
  min-width: 0;
  overflow: hidden;
  border: 0;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(24, 67, 46, .16);
  transition: transform .2s ease, box-shadow .2s ease;
}

.arrival-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(24, 67, 46, .14);
}

.arrival-card__media {
  position: relative;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #e4eee7;
}

.arrival-card__media-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: blur(18px) brightness(.92) saturate(1.1);
  transform: scale(1.15);
  z-index: 0;
}

.arrival-card__media > a,
.arrival-card__media img {
  width: 100%;
  height: 100%;
  display: block;
}

.arrival-card__media img {
  position: relative;
  z-index: 1;
  object-fit: contain;
  transition: transform .45s ease;
}

.arrival-card:hover .arrival-card__media img {
  transform: none;
}

.arrival-card__fallback {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  color: #40916c;
  font-size: 38px;
}

.arrival-card__tag {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  max-width: calc(100% - 24px);
  padding: 4px 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #079447;
  color: #fff;
  font-size: 9px;
  line-height: 1.3;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
}

.arrival-card__body {
  padding: 12px 12px 13px;
}

.arrival-card__name {
  min-height: 40px;
  color: #18271f;
  display: -webkit-box;
  overflow: hidden;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 750;
  text-decoration: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.arrival-card__name:hover {
  color: #07883e;
}

.arrival-card__latin {
  min-height: 15px;
  margin: 3px 0 0;
  overflow: hidden;
  color: #9aa5a0;
  font-size: 15px;
  line-height: 1.4;
  font-style: italic;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.arrival-card__bottom {
  margin-top: 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.arrival-card__bottom strong {
  min-width: 0;
  color: #07883e;
  font-size: 18px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.arrival-card__bottom button {
  min-height: 28px;
  flex: none;
  padding: 6px 12px;
  border: 0;
  border-radius: 999px;
  background: #ecf9f0;
  color: #07883e;
  font: inherit;
  font-size: 9px;
  font-weight: 700;
  cursor: pointer;
}

.arrival-card__bottom button:hover {
  background: #dcf3e4;
}

@media (max-width: 760px) {
  .new-arrivals {
    padding: 18px 12px 34px;
  }

  .new-arrivals__head {
    min-height: 52px;
    margin-bottom: 8px;
    gap: 10px;
  }

  .new-arrivals__head h2 {
    font-size: 15px;
  }

  .new-arrivals__head p {
    max-width: 210px;
    font-size: 10px;
  }

  .new-arrivals__head a {
    font-size: 10px;
  }

  .new-arrivals__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .arrival-card {
    border-radius: 12px;
  }

  .arrival-card__tag {
    top: 8px;
    left: 8px;
    max-width: calc(100% - 16px);
    padding: 4px 8px;
    font-size: 10px;
  }

  .arrival-card__body {
    padding: 10px;
  }

  .arrival-card__name {
    min-height: 38px;
    font-size: 14px;
  }

  .arrival-card__latin {
    font-size: 11px;
  }

  .arrival-card__bottom {
    margin-top: 7px;
    align-items: flex-end;
    gap: 5px;
  }

  .arrival-card__bottom strong {
    font-size: 16px;
  }

  .arrival-card__bottom button {
    min-height: 28px;
    padding: 6px 10px;
    font-size: 11px;
  }
}
/* Reference-aligned homepage hero and circular category navigation. */
.hero {
  padding: 56px 0;
  background: #eef7f1;
  overflow: hidden;
}

.hero-inner {
  width: min(100%, 1280px);
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 500px);
  align-items: center;
  gap: 40px;
}

.hero-left {
  min-width: 0;
  padding: 0 24px 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}

.hero-badge {
  margin: 0 0 24px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #2f7658;
  background: transparent;
  font-size: 12px;
  font-weight: 700;
}

.hero-badge span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #40916c;
}

.hero h1 {
  margin: 0 0 20px;
  color: #173c2d;
  font-size: clamp(40px, 4vw, 54px);
  font-weight: 750;
  line-height: 1.12;
  letter-spacing: 0;
}

.hero-sub {
  max-width: 540px;
  margin: 0 0 30px;
  color: #607068;
  font-size: 15px;
  line-height: 1.7;
}

.hero-search {
  width: min(100%, 580px);
  min-height: 54px;
  margin: -4px 0 24px;
  padding: 5px 6px 5px 16px;
  display: flex;
  align-items: center;
  gap: 11px;
  border: 1px solid #dce6df;
  border-radius: 11px;
  background: #fff;
  color: #8a9a92;
  box-shadow: 0 3px 8px rgba(35, 72, 54, .14);
  transition: border-color .18s ease, box-shadow .18s ease;
}

.hero-search:focus-within {
  border-color: #40916c;
  box-shadow: 0 0 0 3px rgba(64, 145, 108, .12), 0 3px 8px rgba(35, 72, 54, .12);
}

.hero-search svg {
  width: 19px;
  height: 19px;
  flex: none;
}

.hero-search input {
  min-width: 0;
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  color: #173c2d;
  font: inherit;
  font-size: 14px;
  letter-spacing: 0;
}

.hero-search input::placeholder {
  color: #97a39d;
  opacity: 1;
}

.hero-search input::-webkit-search-cancel-button { cursor: pointer; }

.hero-search button {
  min-width: 90px;
  min-height: 42px;
  padding: 0 19px;
  border: 0;
  border-radius: 9px;
  background: #4d8765;
  color: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0;
  cursor: pointer;
  transition: background-color .18s ease;
}

.hero-search button:hover { background: #376f51; }

.hero-btns { display: flex; }

.btn-hero-primary {
  min-height: 48px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border-radius: 8px;
  background: #40916c;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: background-color .18s ease;
}

.btn-hero-primary:hover { background: #2d6a4f; color: #fff; }
.btn-hero-primary svg { width: 19px; height: 19px; transition: transform .18s ease; }
.btn-hero-primary:hover svg { transform: translateX(3px); }

.hero-stats {
  width: 100%;
  margin-top: 34px;
  padding-top: 26px;
  border-top: 1px solid #c9e2d3;
  display: flex;
  flex-wrap: wrap;
  gap: 36px;
}

.hero-stat strong {
  display: block;
  color: #173c2d;
  font-size: 24px;
  line-height: 1.1;
  font-weight: 750;
}

.hero-stat span {
  display: block;
  margin-top: 5px;
  color: #7b8982;
  font-size: 12px;
}

.hero-right { min-width: 0; position: relative; display: block; }

.hero-img-wrap {
  position: relative;
  width: 100%;
  min-height: 360px;
  max-height: 460px;
  aspect-ratio: 1.08 / 1;
  margin: 0;
  border-radius: 24px;
  overflow: hidden;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-img-wrap img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
}

.hero-img-emoji {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 96px;
}

.hero-package {
  position: absolute;
  left: 18px;
  bottom: 18px;
  padding: 11px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 12px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 8px 24px rgba(20,58,42,.12);
}

.hero-package__icon {
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #d8f3dc;
  color: #40916c;
}

.hero-package__icon svg { width: 17px; height: 17px; }
.hero-package > span:last-child { display: grid; gap: 2px; }
.hero-package strong { color: #173c2d; font-size: 12px; line-height: 1.2; }
.hero-package small { color: #7b8982; font-size: 10px; }
.hero-blob-1, .hero-blob-2 { display: none; }

.home-merch {
  width: 100%;
  margin: 0;
  padding: 54px 24px 58px;
  border-top: 1px solid #edf1ee;
  border-bottom: 1px solid #edf1ee;
  background: #fff;
}

.home-merch__categories {
  width: min(100%, 1280px);
  min-height: 0;
  margin: 0 auto;
  padding: 0;
  color: #173c2d;
  display: block;
}

.home-merch__category-head {
  margin: 0 0 30px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.home-merch__category-head h2 {
  margin: 0;
  color: #173c2d;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 750;
  letter-spacing: 0;
}

.home-merch__category-head a {
  color: #40916c;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

.home-merch__category-head a:hover { color: #2d6a4f; }

.home-merch__category-grid {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  grid-template-rows: none;
  gap: 24px;
}

.home-merch__category,
.home-merch__category:nth-child(n) {
  min-width: 0;
  padding: 0;
  color: #173c2d;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  text-decoration: none;
  overflow: visible;
  background: transparent;
  box-shadow: none;
  filter: none;
}

.home-merch__category-image {
  width: 100%;
  aspect-ratio: 1;
  display: block;
  overflow: hidden;
  border: 0;
  border-radius: 50%;
  background: transparent;
  transition: border-color .18s ease, transform .22s ease;
}

.home-merch__category-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}

.home-merch__category strong {
  max-width: 100%;
  color: #173c2d;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
  text-align: center;
  overflow-wrap: anywhere;
}

.home-merch__category:hover { color: #40916c; filter: none; }
.home-merch__category:hover .home-merch__category-image { transform: translateY(-2px); }
.home-merch__category:hover .home-merch__category-image img { transform: scale(1.06); }
.home-merch__category:hover strong { color: #40916c; }

@media (max-width: 900px) {
  .hero { padding: 42px 0; }
  .hero-inner { padding: 0 24px; grid-template-columns: minmax(0, 1fr) minmax(300px, 42%); gap: 28px; }
  .hero-left { padding-right: 0; }
  .hero h1 { font-size: 38px; }
  .hero-stats { gap: 22px; }
  .hero-img-wrap { min-height: 330px; }
  .home-merch__category-grid { gap: 16px; }
}

@media (max-width: 768px) {
  .hero { padding: 34px 0 40px; }
  .hero-inner { padding: 0 16px; grid-template-columns: 1fr; gap: 30px; }
  .hero-left { gap: 0; }
  .hero-right { display: block; }
  .hero-badge { margin-bottom: 18px; font-size: 11px; }
  .hero h1 { margin-bottom: 16px; font-size: 34px; line-height: 1.13; }
  .hero-sub { max-width: 100%; margin-bottom: 24px; font-size: 14px; overflow-wrap: anywhere; }
  .hero-search { width: 100%; min-height: 50px; margin: 0 0 20px; padding: 4px 5px 4px 12px; gap: 8px; }
  .hero-search input { font-size: 13px; }
  .hero-search button { min-width: 78px; min-height: 40px; padding: 0 14px; font-size: 13px; }
  .hero-stats { margin-top: 28px; padding-top: 22px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 12px; }
  .hero-stat strong { font-size: 18px; }
  .hero-stat span { font-size: 10px; }
  .hero-img-wrap { min-height: 0; max-height: none; aspect-ratio: 1.08 / 1; border-radius: 18px; }
  .hero-package { left: 12px; bottom: 12px; padding: 9px 11px; }
  .hero-package__icon { width: 30px; height: 30px; }
  .home-merch { padding: 40px 16px 44px; }
  .home-merch__categories { min-height: 0; }
  .home-merch__category-head { margin-bottom: 24px; }
  .home-merch__category-head h2 { font-size: 20px; }
  .home-merch__category-head a { font-size: 12px; }
  .home-merch__category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: none; gap: 18px 12px; }
  .home-merch__category:nth-child(n) { padding: 0; gap: 8px; }
  .home-merch__category strong,
  .home-merch__category:nth-child(n) strong { font-size: 11px; }
}

@media (max-width: 380px) {
  .hero h1 { font-size: 30px; }
  .hero-stats { grid-template-columns: 1fr 1fr; }
  .home-merch__category-grid { gap: 16px 9px; }
  .home-merch__category-head a { max-width: 90px; text-align: right; }
}

.about-sadgosp { padding: 8px 24px 64px; }
.about-sadgosp__wrap {
  box-sizing: border-box; width: min(100%, 1500px); margin: 0 auto;
  background: #fff; border: 1px solid #e5e7eb; border-radius: 16px;
  padding: 36px 40px;
}
.about-sadgosp__lead {
  margin: 0 0 24px; color: #1f2937; font-size: 19px; font-weight: 500; line-height: 1.6;
  max-width: 1040px;
}
.about-sadgosp h2 {
  margin: 28px 0 12px; color: #111827; font-size: 20px; font-weight: 700; line-height: 1.3;
}
.about-sadgosp h2:first-of-type { margin-top: 0; }
.about-sadgosp a { color: #16a34a; text-decoration: none; font-weight: 600; }
.about-sadgosp a:hover { text-decoration: underline; }
.about-sadgosp p {
  margin: 0 0 16px; color: #4b5563; font-size: 16px; line-height: 1.7; max-width: 1040px;
}
.about-sadgosp ul {
  list-style: none; margin: 0 0 16px; padding: 0; max-width: 1040px;
}
.about-sadgosp li {
  position: relative; margin-bottom: 10px; padding-left: 22px;
  color: #4b5563; font-size: 16px; line-height: 1.7;
}
.about-sadgosp ul > li::before {
  content: ""; position: absolute; left: 0; top: 9px;
  width: 6px; height: 6px; border-radius: 50%; background: #22c55e;
}
.about-sadgosp ol {
  list-style: none; counter-reset: about-sadgosp-counter;
  margin: 0 0 16px; padding: 0; max-width: 1040px;
}
.about-sadgosp ol > li {
  counter-increment: about-sadgosp-counter;
  padding-left: 30px;
}
.about-sadgosp ol > li::before {
  content: counter(about-sadgosp-counter);
  position: absolute; left: 0; top: 0;
  width: 20px; height: 20px; border-radius: 50%;
  background: #22c55e; color: #fff;
  font-size: 12px; font-weight: 700; line-height: 20px; text-align: center;
}
@media (max-width: 640px) {
  .about-sadgosp { padding: 8px 14px 48px; }
  .about-sadgosp__wrap { padding: 22px 18px; border-radius: 12px; }
  .about-sadgosp__lead { font-size: 17px; }
  .about-sadgosp h2 { font-size: 18px; }
  .about-sadgosp p, .about-sadgosp li { font-size: 15px; }
}