 
    :root{
      --green-900:#063e2e;
      --green-800:#0e3b2e;
      --green-700:#2e7d32;
      --green-600:#08c94a;
      --lime-500:#8bc34a;
      --blue-500:#2980b9;
      --orange-500:#f39c12;
      --cream:#f6f7f2;
      --text:#10322a;
      --muted:#5b6b68;
      --card:#ffffff;
      --border:rgba(14,59,46,.10);
      --shadow:0 14px 40px rgba(6,62,46,.10);
      --radius:24px;
    }

    html{scroll-behavior:smooth}
    body{
      font-family:'Inter',sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at top left, rgba(8,201,74,.08), transparent 28%),
        radial-gradient(circle at top right, rgba(41,128,185,.08), transparent 24%),
        linear-gradient(180deg, #ffffff 0%, #fbfcf9 48%, #f7faf8 100%);
    }

    .navbar{
      backdrop-filter: blur(16px);
      background: rgba(255,255,255,.92);
      border-bottom:1px solid rgba(6,62,46,.08);
      padding: .5rem 0;
    }

    .navbar .nav-link{color:#21433c;font-weight:600;padding:.35rem 0}
    .navbar .nav-link:hover,.navbar .nav-link.active{color:var(--green-700)}

    .navbar .navbar-brand{display:flex;align-items:center;gap:.85rem}
    .navbar .navbar-brand .site-logo{height:42px;width:auto;display:block;object-fit:contain}

    .brand-mark{
      width:44px;height:44px;border-radius:14px;display:grid;place-items:center;
      background:linear-gradient(135deg,var(--green-900),#164f3d 70%, #0b241c);
      box-shadow:0 8px 24px rgba(6,62,46,.22);
      flex:0 0 auto;
    }

    .hero{
      position:relative;
      overflow:hidden;
      padding:8rem 0 4rem;
    }
    .hero::before,
    .hero::after{
      content:"";position:absolute;border-radius:999px;filter:blur(14px);opacity:.55;pointer-events:none;
    }
    .hero::before{width:360px;height:360px;background:rgba(139,195,74,.20);left:-120px;top:80px}
    .hero::after{width:300px;height:300px;background:rgba(41,128,185,.16);right:-90px;top:120px}

    .eyebrow{
      display:inline-flex;align-items:center;gap:.5rem;
      background:rgba(8,201,74,.10);color:var(--green-800);
      border:1px solid rgba(8,201,74,.18);padding:.55rem .9rem;border-radius:999px;
      font-weight:700;font-size:.92rem;
    }

    .hero-title{font-size:clamp(2.4rem,5vw,4.9rem);line-height:1.02;letter-spacing:-.05em;font-weight:800}
    .hero-title span{color:var(--green-700)}
    .hero-copy{color:var(--muted);font-size:1.05rem;line-height:1.8;max-width:60ch}

    .btn-brand{
      background:linear-gradient(135deg,var(--green-800),var(--green-700));
      color:#fff;border:none;box-shadow:0 10px 26px rgba(14,59,46,.16)
    }
    .btn-brand:hover{color:#fff;transform:translateY(-1px)}
    .btn-soft{
      background:#fff;border:1px solid rgba(14,59,46,.12);color:var(--green-800)
    }
    .btn-soft:hover{background:#f7fbf8;color:var(--green-800)}

    .hero-card{
      background:rgba(255,255,255,.82);
      border:1px solid rgba(14,59,46,.10);
      box-shadow:var(--shadow);
      border-radius:32px;
      overflow:hidden;
    }

    .stat{
      background:#fff;border:1px solid var(--border);border-radius:20px;padding:1rem 1.1rem;box-shadow:0 8px 24px rgba(6,62,46,.06)
    }
    .stat b{display:block;font-size:1.1rem}
    .stat small{color:var(--muted)}

    .section{padding:5.5rem 0}
    .section-title{font-weight:800;letter-spacing:-.03em}
    .section-sub{color:var(--muted);max-width:60ch}

    .soft-card{
      background:rgba(255,255,255,.88);
      border:1px solid rgba(14,59,46,.10);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
    }

    .icon-badge{
      width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:1.35rem;color:#fff;
      background:linear-gradient(135deg,var(--green-800),var(--green-700));
    }
    .icon-badge.blue{background:linear-gradient(135deg,#1f6fb1,var(--blue-500))}
    .icon-badge.orange{background:linear-gradient(135deg,#f0a31a,var(--orange-500))}
    .icon-badge.lime{background:linear-gradient(135deg,#6fb83d,var(--lime-500))}

    .feature-list li{margin-bottom:.7rem;color:#294640}

    .product-card img,
    .gallery-img{object-fit:cover}
    .product-card{transition:.25s ease; border-radius:22px; overflow:hidden}
    .product-card:hover{transform:translateY(-4px)}

    .carousel .carousel-item img{height:430px;object-fit:cover;filter:saturate(1.04)}
    .carousel-caption{
      text-align:left;left:6%;right:6%;bottom:2rem;background:rgba(8,25,20,.45);
      border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);
      border-radius:22px;padding:1rem 1.1rem
    }

    .testimonial{
      height:100%;
      border-radius:22px;
      background:#fff;
      border:1px solid var(--border);
      box-shadow:0 8px 22px rgba(6,62,46,.05);
    }

    .badge-soft{
      display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .8rem;border-radius:999px;
      background:rgba(8,201,74,.10);color:var(--green-800);font-weight:700;font-size:.9rem
    }

    .floating-whatsapp{
      position:fixed;right:18px;bottom:18px;z-index:1030;
      width:58px;height:58px;border-radius:50%;display:grid;place-items:center;
      color:#fff;text-decoration:none;box-shadow:0 12px 24px rgba(37,211,102,.28);
      background:#25D366;
    }
    .floating-whatsapp:hover{color:#fff;transform:translateY(-2px)}

    .footer{
      background:linear-gradient(135deg,#06281e,#10412c 55%,#143d2d);
      color:rgba(255,255,255,.92);
    }
    .footer a{color:rgba(255,255,255,.85);text-decoration:none}
    .footer a:hover{color:#fff}
    .footer h6{letter-spacing:.08em;font-size:.95rem;text-transform:uppercase;color:#d9f6e7}
    .footer ul li{line-height:1.8}
    .footer-legal{border-top:1px solid rgba(255,255,255,.12);padding-top:1rem}
    .cookie-banner{
      position:fixed;top:0;left:0;right:0;z-index:1100;
      display:flex;align-items:center;justify-content:space-between;gap:1rem;
      padding:.9rem 1rem;background:rgba(6,39,28,.98);color:#fff;
      box-shadow:0 16px 40px rgba(0,0,0,.18);
    }
    .cookie-banner-copy{max-width:68%;font-size:.95rem;line-height:1.5}
    .cookie-banner-copy a{color:#8bc34a;text-decoration:underline}
    .cookie-banner-actions{display:flex;gap:.75rem;flex-wrap:wrap}
    .navbar.fixed-top{top:0;transition:top .25s ease}
    .cookie-banner-visible .navbar.fixed-top{top:68px}

    @media (max-width: 991.98px){
      .hero{padding-top:6.5rem}
      .carousel .carousel-item img{height:320px}
      .navbar .btn{width:100%}
      .footer .row{gap:1.5rem}
      .footer-legal{padding-top:1.5rem}
    }
    @media (max-width: 767.98px){
      .cookie-banner{flex-direction:column;align-items:flex-start}
      .cookie-banner-copy{max-width:100%}
      .hero{padding-top:7rem}
      .footer{padding-top:3rem}
      .footer .footer-legal{font-size:.9rem}
      .footer .row > div{flex:0 0 100%;max-width:100%}
      .navbar .navbar-brand .site-logo{height:40px}
    }
    @media (max-width: 575.98px){
      .navbar .navbar-brand .site-logo{height:36px}
      .hero-title{font-size:clamp(2.1rem,7vw,3rem)}
      .hero-copy{font-size:1rem;max-width:100%}
      .btn-brand, .btn-soft{width:100%}
      .cookie-banner{padding:.9rem .75rem}
      .cookie-banner-actions{width:100%;justify-content:flex-start}
    }

    .logo-text{line-height:1}
    .logo-text strong{letter-spacing:.18em;font-size:.9rem}
    .logo-text small{letter-spacing:.22em;font-size:.68rem;color:#6a8078}

    .section-divider{
      height:1px;background:linear-gradient(90deg,transparent,rgba(6,62,46,.15),transparent);margin:1.25rem 0 0
    }

    @media (max-width: 991.98px){
      .hero{padding-top:7rem}
      .carousel .carousel-item img{height:320px}
      .navbar .btn{width:100%}
    } 

    /* Navbar logo sizing: fit logo to the ribbon height without changing the navbar height */
    .navbar{
      align-items:center;
      padding-top:0.5rem;
      padding-bottom:0.5rem;
    }
    .navbar .navbar-brand{display:flex;align-items:center;gap:.75rem}
    .navbar .navbar-brand .site-logo{height:48px;width:auto;display:block;object-fit:contain}
    @media (max-width:575.98px){
      .navbar .navbar-brand .site-logo{height:40px}
    }