*{box-sizing:border-box}
body{margin:0}
img{max-width:100%}
.site [hidden]{display:none !important}
.site button,.site input,.site textarea,.site select{font-family:inherit}
.site{--white:#FFFFFF;--mist:#EEF2EC;--ink:#17201A;--grey:#4E5A52;--green:#2E5928;--green-2:#244820;--leaf:#CFE3B8;--sand:#D9BB8B;--soil:#261B13;--rule:rgba(23,32,26,.14);
  --f:'Archivo','Helvetica Neue',Arial,sans-serif;--serif:'Fraunces',Georgia,'Times New Roman',serif;--deep:#1E3A1B;--sun:#E8B21E;--pad:clamp(20px,4.4vw,72px);
  font-family:var(--f);color:var(--ink);background:var(--white);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
.site h1,.site h2,.site h3,.site h4,.site p,.site figure,.site ul,.site ol,.site dl,.site dd{margin:0}
.site ul,.site ol{padding:0;list-style:none}
.site img{display:block;max-width:100%}
.site a{color:inherit}
.site :focus-visible{outline:3px solid var(--green);outline-offset:3px}
.site .wrap{max-width:1280px;margin:0 auto;padding:0 var(--pad)}
.site .h2{font-weight:800;font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.03em}
.site .h3{font-weight:700;font-size:clamp(20px,1.6vw,24px);line-height:1.2;letter-spacing:-.01em}
.site .lead{font-size:clamp(18px,1.4vw,20px);line-height:1.5;color:var(--grey);max-width:46ch}
.site .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border-radius:8px;border:1.5px solid var(--green);background:var(--green);color:#fff;font-weight:600;font-size:16px;text-decoration:none}
.site .btn:hover{background:var(--green-2);border-color:var(--green-2);color:#fff}
.site .btn.line{background:transparent;color:var(--ink);border-color:var(--ink)}
.site .btn.line:hover{background:var(--ink);color:#fff}
.site .btn.light{background:#fff;border-color:#fff;color:var(--ink)}
.site .btn.light:hover{background:var(--leaf);border-color:var(--leaf)}
.site .btn.line-light{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.site .btn.line-light:hover{background:#fff;color:var(--ink)}
.site .btn svg{width:18px;height:18px;flex:none}
.site .sec{padding:clamp(64px,8vw,120px) 0}
.site .sec-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:20px clamp(24px,4vw,64px);align-items:end;margin-bottom:clamp(32px,4vw,56px)}

/* header */
.site .hdr{border-bottom:1px solid var(--rule)}
.site .hdr .wrap{display:flex;align-items:center;gap:28px;min-height:76px}
.site .hdr .logo{line-height:0;flex:none}
.site .hdr .logo img{height:42px;width:auto}
.site .hdr nav{display:flex;gap:28px;margin-left:auto;font-weight:500;font-size:15px}
.site .hdr nav a{text-decoration:none}
.site .hdr nav a:hover,.site .hdr nav a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.site .hdr .btn{min-height:42px;padding:0 16px;font-size:15px}

/* hero */
.site .hero{padding:clamp(40px,5vw,72px) 0 0}
.site .hero .top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px clamp(24px,4vw,64px);align-items:end}
.site .hero h1{font-weight:800;font-size:clamp(52px,7vw,108px);line-height:.92;letter-spacing:-.045em}
.site .hero .sub{font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--grey)}
.site .hero .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.site .hero .vision{position:relative;margin-top:clamp(36px,4vw,56px)}
.site .hero .vision img{width:100%;height:clamp(300px,42vw,620px);object-fit:cover}
.site .hero .vision figcaption{position:absolute;right:var(--pad);bottom:18px;padding:6px 12px;border-radius:6px;background:rgba(255,255,255,.9);font-size:13px;font-weight:500}

/* credentials */
.site .creds{border-bottom:1px solid var(--rule)}
.site .creds ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.site .creds li{padding:24px 20px 26px 0;font-size:15px;line-height:1.45;color:var(--grey)}
.site .creds li+li{padding-left:20px;border-left:1px solid var(--rule)}
.site .creds b{display:block;margin-bottom:4px;font-size:17px;color:var(--ink)}

/* profile: the signature */
.site .build{background:var(--mist)}
.site .build .grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(32px,5vw,80px);align-items:start}
.site .profile{--u:11px;--c:110px;display:grid;grid-template-columns:52px minmax(0,1fr) minmax(0,210px);grid-template-rows:var(--c) calc(var(--u)*30) calc(var(--u)*10);gap:0 16px}
.site .ruler{position:relative;grid-column:1;grid-row:1/4;border-right:2px solid var(--ink)}
.site .ruler span{position:absolute;right:10px;transform:translateY(-50%);font-size:13px;font-weight:600;color:var(--grey);white-space:nowrap}
.site .ruler span::after{content:"";position:absolute;right:-12px;top:50%;width:9px;border-top:2px solid var(--ink)}
.site .crop{border-radius:14px 14px 0 0;overflow:hidden}
.site .crop img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.site .mix{background-color:var(--soil);background-image:radial-gradient(circle,#6B4B32 1.4px,transparent 1.6px),radial-gradient(circle,#7E8E35 1.2px,transparent 1.4px),radial-gradient(circle,#D2B060 1px,transparent 1.2px),radial-gradient(circle,#8B5E3C 1.5px,transparent 1.7px);background-size:13px 13px,17px 17px,11px 11px,19px 19px;background-position:0 0,5px 7px,3px 2px,9px 4px}
.site .base{border-radius:0 0 14px 14px;background-color:var(--sand);background-image:radial-gradient(circle,rgba(38,27,19,.22) 1px,transparent 1.3px);background-size:7px 7px}
.site .profile .l{display:flex;flex-direction:column;justify-content:center;gap:2px;padding-left:14px;border-left:2px solid var(--ink);font-size:14px;line-height:1.35}
.site .profile .l b{font-size:15px}
.site .profile .l span{color:var(--grey)}
.site .profile .l ul{margin-top:8px;display:grid;gap:4px}
.site .profile .l li{display:flex;justify-content:space-between;gap:10px}
.site .profile .l li em{font-style:normal;font-weight:600}
.site .steps{counter-reset:s}
.site .steps li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px 18px;padding:22px 0;border-top:1px solid var(--rule)}
.site .steps li:last-child{border-bottom:1px solid var(--rule)}
.site .steps li .n{grid-row:span 2;font-weight:800;font-size:34px;line-height:1;letter-spacing:-.03em;color:var(--green)}
.site .steps li p{color:var(--grey)}
.site .build .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* areas */
.site .areas .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(24px,4vw,64px)}
.site .areas .item{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;align-items:center;padding:24px 0;border-top:1px solid var(--rule)}
.site .areas .item img{width:150px;height:110px;object-fit:cover;border-radius:10px}
.site .areas .item p{margin-top:6px;color:var(--grey);font-size:16px}

/* results */
.site .results{background:var(--ink);color:#fff}
.site .results .lead{color:rgba(255,255,255,.75)}
.site .results .three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16);border-radius:16px;overflow:hidden}
.site .results .r{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.6vw,36px);background:var(--ink)}
.site .results .r b{font-weight:800;font-size:clamp(40px,4.4vw,64px);line-height:1;letter-spacing:-.04em;color:var(--leaf)}
.site .results .r p{font-size:17px;line-height:1.45}
.site .results .r small{margin-top:auto;padding-top:12px;font-size:13px;color:rgba(255,255,255,.6)}
.site .results .pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.site .results .pair figure{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:16/10}
.site .results .pair img{width:100%;height:100%;object-fit:cover}
.site .results .pair figcaption{position:absolute;left:12px;top:12px;padding:5px 12px;border-radius:6px;background:#fff;color:var(--ink);font-weight:600;font-size:14px}
.site .results .pair figure+figure figcaption{background:var(--leaf)}
.site .results .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* products teaser */
.site .prods{background:var(--mist)}
.site .prods .two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.site .pcard{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);gap:24px;align-items:center;padding:20px;border-radius:16px;background:#fff;text-decoration:none}
.site .pcard img{width:100%;aspect-ratio:1;object-fit:contain}
.site .pcard .k{font-size:14px;font-weight:600;color:var(--green)}
.site .pcard p{margin-top:8px;color:var(--grey);font-size:16px}
.site .pcard .go{display:inline-block;margin-top:14px;font-weight:600;color:var(--green);text-decoration:underline;text-underline-offset:5px}
.site .pcard:hover .h3{color:var(--green)}

/* investors */
.site .invest{background:var(--green);color:#fff}
.site .invest .grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:center}
.site .invest .lead{color:rgba(255,255,255,.85);margin-top:18px}
.site .invest .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.site .invest figure{border-radius:16px;overflow:hidden}
.site .invest figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
.site .invest figcaption{margin-top:10px;font-size:14px;color:rgba(255,255,255,.75)}
.site .invest .who{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin-top:28px;font-size:16px}
.site .invest .who li{padding-top:10px;border-top:1px solid rgba(255,255,255,.25)}

/* contact */
.site .contact .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px)}
.site .contact dl{display:grid;gap:0;margin-top:28px}
.site .contact dl div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:14px 0;border-top:1px solid var(--rule)}
.site .contact dt{color:var(--grey);font-size:15px}
.site .contact dd a{text-underline-offset:4px}
.site form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.site form .full{grid-column:1/-1}
.site form label{display:grid;gap:6px;font-size:14px;font-weight:600}
.site form input,.site form select,.site form textarea{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid rgba(23,32,26,.28);border-radius:8px;background:#fff;font:inherit;font-size:16px;font-weight:400;color:var(--ink);box-sizing:border-box}
.site form textarea{min-height:130px;resize:vertical}
.site form .btn{justify-self:start}

/* footer */
.site .ftr{background:var(--ink);color:rgba(255,255,255,.75);padding:48px 0 36px;font-size:15px}
.site .ftr .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end}
.site .ftr img{height:64px;width:auto}
.site .ftr nav{display:flex;flex-wrap:wrap;gap:22px}
.site .ftr nav a{color:#fff;text-decoration:none}
.site .ftr nav a:hover{text-decoration:underline;text-underline-offset:5px}
.site .ftr small{grid-column:1/-1;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);font-size:13px;color:rgba(255,255,255,.55)}

/* products page */
.site .phero{padding:clamp(40px,5vw,72px) 0 clamp(32px,4vw,56px);border-bottom:1px solid var(--rule)}
.site .phero .grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px clamp(24px,4vw,64px);align-items:end}
.site .phero h1{font-weight:800;font-size:clamp(48px,6vw,92px);line-height:.94;letter-spacing:-.045em}
.site .jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.site .jump a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:var(--mist);font-weight:600;text-decoration:none}
.site .jump a:hover{background:var(--leaf)}
.site .product{padding:clamp(56px,7vw,104px) 0;border-bottom:1px solid var(--rule)}
.site .product .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.site .packs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.site .packs figure{border-radius:14px;background:#fff;border:1px solid var(--rule);padding:14px}
.site .packs img{width:100%;aspect-ratio:1;object-fit:contain}
.site .packs figcaption{margin-top:8px;text-align:center;font-weight:600;font-size:15px}
.site .product .k{font-weight:600;color:var(--green)}
.site .product .h2{margin-top:8px}
.site .product .desc{margin-top:18px;max-width:58ch;color:var(--grey);font-size:18px}
.site .props{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;margin-top:26px}
.site .props li{position:relative;padding-left:22px;font-size:16px;line-height:1.45}
.site .props li::before{content:"";position:absolute;left:0;top:.45em;width:10px;height:10px;border-radius:2px;background:var(--green)}
.site .tables{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,56px);margin-top:clamp(36px,4vw,56px)}
.site table{width:100%;border-collapse:collapse;font-size:15px}
.site caption{text-align:left;font-weight:700;font-size:18px;padding-bottom:10px}
.site th,.site td{padding:11px 10px 11px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}
.site thead th{font-size:13px;font-weight:600;color:var(--grey);border-bottom:1.5px solid var(--ink)}
.site tbody th{font-weight:600}
.site td.v{white-space:nowrap;font-weight:600}
.site .together{background:var(--mist)}
.site .together .grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(32px,5vw,80px);align-items:center}
.site .together figure img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}
.site .together .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}

@media (max-width:1080px){
  .site .creds ul{grid-template-columns:1fr 1fr}
  .site .creds li:nth-child(3){padding-left:0;border-left:0}
  .site .creds li:nth-child(n+3){border-top:1px solid var(--rule)}
  .site .prods .two{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:820px){
  .site{font-size:16px}
  .site .hdr nav{display:none}
  .site .hdr .btn{margin-left:auto}
  .site .hdr .logo img{height:38px}
  .site .hero .top,.site .sec-head,.site .build .grid,.site .invest .grid,.site .contact .grid,.site .phero .grid,.site .product .grid,.site .tables,.site .together .grid{grid-template-columns:minmax(0,1fr)}
  .site .hero h1{font-size:clamp(48px,13.5vw,68px)}
  .site .hero .acts .btn{flex:1 1 100%}
  .site .hero .vision img{height:300px;object-position:62% center}
  .site .hero .vision figcaption{right:12px;bottom:12px}
  .site .creds ul{grid-template-columns:1fr}
  .site .creds li,.site .creds li+li{padding:16px 0;border-left:0;border-top:1px solid var(--rule)}
  .site .creds li:first-child{border-top:0}
  .site .profile{--u:8px;--c:72px;grid-template-columns:40px minmax(0,1fr) minmax(0,150px);gap:0 10px}
  .site .ruler span{font-size:11px;right:8px}
  .site .profile .l{padding-left:10px;font-size:12.5px}
  .site .profile .l b{font-size:13px}
  .site .areas .grid{grid-template-columns:minmax(0,1fr)}
  .site .areas .item{grid-template-columns:110px minmax(0,1fr);gap:16px}
  .site .areas .item img{width:110px;height:90px}
  .site .results .three{grid-template-columns:minmax(0,1fr)}
  .site .pcard{grid-template-columns:110px minmax(0,1fr);gap:16px;padding:14px}
  .site .invest .who{grid-template-columns:1fr}
  .site form{grid-template-columns:minmax(0,1fr)}
  .site .contact dl div{grid-template-columns:90px minmax(0,1fr)}
  .site .ftr .wrap{grid-template-columns:minmax(0,1fr)}
  .site .props{grid-template-columns:minmax(0,1fr)}
  .site th,.site td{font-size:14px;padding-right:8px}
  .site td.v{white-space:normal}
}
.site .tables table:first-child tbody th{width:46%}

/* ---------- Round 2 ---------- */
.site [id]{scroll-margin-top:calc(var(--stick-top,0px) + 88px)}
.site .hdr{position:sticky;top:var(--stick-top,0px);z-index:50;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}

/* floating WhatsApp */
.site .wa{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 20px 0 16px;border-radius:999px;background:var(--green);color:#fff;font-weight:700;font-size:15px;text-decoration:none;box-shadow:0 12px 28px -10px rgba(0,0,0,.45);transition:opacity .3s ease,transform .3s ease,background .2s ease}
.site .wa:hover{background:var(--green-2)}
.site .wa svg{width:22px;height:22px;flex:none}

/* why soil, from Design 6 */
.site .why{background:var(--deep);color:#fff}
.site .why .grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:clamp(24px,4vw,64px)}
.site .why .wh{font-family:var(--serif);font-weight:400;font-size:clamp(30px,2.6vw,40px);line-height:1.05}
.site .why .tagline{margin-top:6px;font-family:var(--serif);font-style:italic;font-size:20px;color:var(--sun)}
.site .why .bq{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3.4vw,50px);line-height:1.14;letter-spacing:-.015em}
.site .why .more{margin-top:28px;max-width:60ch;font-size:18px;color:rgba(255,255,255,.8)}

/* the same layers, in glass */
.site .glass{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);align-items:center;margin-top:clamp(44px,5vw,72px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--rule)}
.site .glass figure{border-radius:16px;overflow:hidden;background:#fff}
.site .glass img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 58%}
.site .glass .gtext p{margin-top:10px;max-width:30ch;color:var(--grey);font-size:18px}

/* what grew in the desert, from Design 6 */
.site .guide .gh{font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.4vw,64px);line-height:1.02;letter-spacing:-.02em}
.site .guide .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(22px,2.4vw,36px) clamp(14px,1.6vw,24px)}
.site .spec .ph{overflow:hidden;border-radius:16px;background:var(--mist)}
.site .spec .ph img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.site .spec:hover .ph img{transform:scale(1.05)}
.site .spec h3{margin-top:14px;font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.1}
.site .spec .latin{display:block;margin-top:2px;font-family:var(--serif);font-style:italic;font-size:17px;color:var(--grey)}
.site .spec p{margin-top:8px;font-size:15px;line-height:1.5;color:var(--grey)}
.site .spec.text{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;padding:22px 26px;border-radius:16px;background:#FBF1D2}
.site .spec.text h3{margin:0}
.site .spec.text p{margin:0;font-size:17px;color:var(--ink)}
.site .spec.text .go{margin-left:auto;font-weight:600;color:var(--green);text-underline-offset:5px}

/* results band on home */
.site .results .pair figure.after figcaption{background:var(--leaf)}

/* results page */
.site .rtop{padding:clamp(36px,4.4vw,64px) 0 clamp(36px,4vw,56px)}
.site .rtop .grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px clamp(24px,4vw,64px);align-items:end}
.site .rtop h1{font-weight:800;font-size:clamp(44px,5.4vw,84px);line-height:.95;letter-spacing:-.045em}
.site .rtop .lead{margin-top:20px}
.site .rtop .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.site .rtop dl{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.site .rtop dl div{padding:14px 0;border-top:1px solid var(--rule)}
.site .rtop dt{font-size:14px;color:var(--grey)}
.site .rtop dd{font-weight:700;font-size:20px;letter-spacing:-.01em}
.site .band{position:relative;overflow:hidden}
.site .hero .vision{overflow:hidden}
.site .band img{width:100%;height:clamp(260px,36vw,540px);object-fit:cover;object-position:center 45%}
.site .stages .row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.site .stages img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:14px}
.site .stages figcaption{margin-top:10px;font-size:15px;color:var(--grey)}
.site .stages figcaption b{display:block;font-size:18px;color:var(--ink)}
.site .recipe{background:var(--mist)}
.site .recipe .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.site .mixbar{display:flex;height:60px;border-radius:10px;overflow:hidden}
.site .mixbar span{flex:var(--g) 1 0;min-width:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff}
.site i.key{display:inline-block;width:12px;height:12px;margin-right:10px;border-radius:3px;vertical-align:-1px}
.site .measure{background:var(--ink);color:#fff}
.site .measure .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.site .measure ul.obs{display:grid;gap:12px;margin-top:28px}
.site .measure ul.obs li{position:relative;padding-left:24px;font-size:17px;line-height:1.45}
.site .measure ul.obs li::before{content:"";position:absolute;left:0;top:.45em;width:10px;height:10px;border-radius:2px;background:var(--leaf)}
.site .measure table,.site .measure caption{color:#fff}
.site .measure th,.site .measure td{border-bottom-color:rgba(255,255,255,.16)}
.site .measure thead th{color:rgba(255,255,255,.65);border-bottom-color:rgba(255,255,255,.5)}
.site .measure td.hi{color:var(--leaf);font-weight:700}
.site .measure .src{margin-top:12px;font-size:13px;color:rgba(255,255,255,.6)}
.site .trials .three,.site .films .three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.site .tcard{display:flex;flex-direction:column;gap:10px;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--rule)}
.site .tcard img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;background:#fff}
.site .tcard img.contain{object-fit:contain;background:linear-gradient(#CED2DE,#C1C5CE)}
.site .tcard .big{margin-top:6px;font-weight:800;font-size:40px;line-height:1;letter-spacing:-.03em;color:var(--green)}
.site .tcard p{font-size:16px;color:var(--grey)}
.site .tcard a{margin-top:auto;padding-top:4px;font-weight:600;color:var(--green);text-underline-offset:5px}
.site .films{background:var(--mist)}
.site .film{display:block;text-decoration:none}
.site .film .thumb{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:16/10;background:var(--ink)}
.site .film .thumb img{width:100%;height:100%;object-fit:cover;filter:brightness(.82);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.site .film:hover .thumb img{transform:scale(1.05)}
.site .film .play{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border-radius:8px;background:#fff;color:var(--ink);font-weight:600;font-size:14px}
.site .film .play svg{width:18px;height:18px}
.site .film b{display:block;margin-top:12px;font-size:19px;line-height:1.25;letter-spacing:-.01em}
.site .reports{background:var(--mist)}
.site .reports ul{border-top:1.5px solid var(--ink)}
.site .reports li a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--rule);text-decoration:none}
.site .reports li b{font-weight:700;font-size:clamp(19px,1.8vw,24px);letter-spacing:-.01em}
.site .reports li span{display:block;font-size:15px;color:var(--grey)}
.site .reports li i{font-style:normal;font-weight:700;color:var(--green)}
.site .reports li a:hover b{color:var(--green)}
.site .cta{background:var(--green);color:#fff}
.site .cta .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 48px}
.site .cta .lead{color:rgba(255,255,255,.85);margin-top:14px}
.site .cta .acts{display:flex;flex-wrap:wrap;gap:12px}
.site .tpins{margin-top:clamp(36px,4vw,56px)}
.site .tpins+.tables{margin-top:0}

/* ---------- motion: only when the page adds .motion, never with reduced motion ---------- */
.site.motion [data-rv]{opacity:0;transform:translateY(24px);transition:opacity .7s ease var(--d,0s),transform .9s cubic-bezier(.2,.75,.2,1) var(--d,0s)}
.site.motion [data-rv].in{opacity:1;transform:none}
.site.motion .hero h1 .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.site.motion .hero h1 .w>span{display:inline-block;transform:translateY(112%);transition:transform 1s cubic-bezier(.2,.75,.2,1) calc(var(--i,0) * .09s)}
.site.motion .hero.in h1 .w>span{transform:none}
.site.motion .hero .sub,.site.motion .hero .acts{opacity:0;transform:translateY(16px);transition:opacity .8s ease .45s,transform .9s cubic-bezier(.2,.75,.2,1) .45s}
.site.motion .hero .acts{transition-delay:.6s}
.site.motion .hero.in .sub,.site.motion .hero.in .acts{opacity:1;transform:none}
.site.motion .hero .vision img,.site.motion .band img{transform:scale(1.08);transition:transform 2.6s cubic-bezier(.2,.7,.2,1)}
.site.motion .hero.in .vision img,.site.motion .band.in img{transform:none}
.site.motion .build .grid .base{transform:scaleY(0);transform-origin:bottom;transition:transform .8s cubic-bezier(.2,.75,.2,1) .15s}
.site.motion .build .grid .mix{clip-path:inset(100% 0 0 0);transition:clip-path 1.2s cubic-bezier(.2,.75,.2,1) .8s}
.site.motion .build .grid .crop{clip-path:inset(100% 0 0 0);transition:clip-path 1s cubic-bezier(.2,.75,.2,1) 1.9s}
.site.motion .build .grid .ruler span{opacity:0;transition:opacity .5s ease .2s}
.site.motion .build .grid .l{opacity:0;transform:translateX(-10px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.75,.2,1)}
.site.motion .build .grid .lb{transition-delay:.6s}
.site.motion .build .grid .lm{transition-delay:1.6s}
.site.motion .build .grid .lc{transition-delay:2.6s}
.site.motion .build .steps li{opacity:.28;transition:opacity .7s ease}
.site.motion .build .grid.in .base{transform:none}
.site.motion .build .grid.in .mix,.site.motion .build .grid.in .crop{clip-path:inset(0 0 0 0)}
.site.motion .build .grid.in .ruler span{opacity:1}
.site.motion .build .grid.in .l{opacity:1;transform:none}
.site.motion .build .grid.in .steps li{opacity:1}
.site.motion .build .grid.in .steps li:nth-child(1){transition-delay:.4s}
.site.motion .build .grid.in .steps li:nth-child(2){transition-delay:1.2s}
.site.motion .build .grid.in .steps li:nth-child(3){transition-delay:2s}
.site.motion .build .grid.in .steps li:nth-child(4){transition-delay:2.8s}
.site.motion .results .pair .after{clip-path:inset(0 100% 0 0);transition:clip-path 1.3s cubic-bezier(.65,0,.35,1) .35s}
.site.motion .results .pair.in .after{clip-path:inset(0 0 0 0)}
.site.motion .mixwrap .mixbar{clip-path:inset(0 100% 0 0);transition:clip-path 1.5s cubic-bezier(.65,0,.35,1) .1s}
.site.motion .mixwrap.in .mixbar{clip-path:inset(0 0 0 0)}
.site.motion .phero h1{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.75,.2,1)}
.site.motion .phero.in h1{opacity:1;transform:none}
.site.motion .rtop h1{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.75,.2,1)}
.site.motion .rtop.in h1{opacity:1;transform:none}

@media (max-width:1080px){
  .site .guide .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site .trials .three,.site .films .three{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:820px){
  .site .why .grid,.site .rtop .grid,.site .recipe .grid,.site .measure .grid{grid-template-columns:minmax(0,1fr)}
  .site .why .bq{font-size:clamp(26px,7.4vw,34px)}
  .site .glass{grid-template-columns:1fr 1fr;gap:12px}
  .site .glass .gtext{grid-column:1/-1}
  .site .guide .grid{gap:24px 12px}
  .site .spec .ph{border-radius:12px}
  .site .spec h3{font-size:20px}
  .site .spec .latin{font-size:15px}
  .site .spec p{font-size:14px}
  .site .spec.text{padding:18px}
  .site .spec.text .go{margin-left:0}
  .site .stages .row{grid-template-columns:1fr 1fr}
  .site .trials .three,.site .films .three{grid-template-columns:minmax(0,1fr)}
  .site .mixbar{height:52px}
  .site .mixbar span{font-size:12px}
  .site .rtop dd{font-size:18px}
  .site .wa{right:14px;bottom:14px;width:56px;min-height:56px;padding:0}
  .site .wa span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
}

/* ---------- Round 3 ---------- */
.site .prods{background:#fff}
.site .prods .pcard{background:#fff;border:1px solid var(--rule)}
.site .pfig figcaption{margin-top:14px;padding-left:68px;font-size:14px;color:var(--grey)}
.site .pnote{display:flex;gap:12px;align-items:flex-start;margin-top:22px;padding:14px 16px;border-radius:10px;background:#FBF1D2;border-left:4px solid var(--sun);font-size:16px;line-height:1.5}
.site .pnote .i{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:var(--sun);color:var(--ink);font-weight:800;font-size:13px;margin-top:1px}
.site .results .three .r3{grid-column:3;grid-row:1 / span 2}
.site .results .labnote{grid-column:1 / span 2;grid-row:2;display:flex;align-items:center;gap:10px;margin:0;padding:14px clamp(22px,2.6vw,36px);background:var(--ink);font-size:15px;color:rgba(255,255,255,.8)}
.site .results .labnote svg{width:20px;height:20px;flex:none;color:var(--leaf)}
.site .invest .lead2{margin-top:12px}
.site .btn.ink{background:var(--ink);border-color:var(--ink);color:#fff}
.site .btn.ink:hover{background:#000;border-color:#000;color:#fff}
.site .btn.li{background:#fff;border-color:#fff;color:var(--ink)}
.site .btn.li:hover{background:#EAF2FB;border-color:#EAF2FB;color:var(--ink)}
.site .btn .lilogo{width:22px;height:22px}
.site form .opt{font-weight:400;color:var(--grey)}
.site form textarea.short{min-height:92px}
.site .thanks{display:flex;align-items:center;gap:14px;padding:24px;border-radius:12px;background:var(--leaf);color:var(--ink);font-size:19px}
.site .thanks svg{flex:none;width:34px;height:34px;padding:6px;border-radius:999px;background:var(--green);color:#fff}
.site.logo-hold [data-page="home"] .hdr .logo img{opacity:0}
@media (max-width:820px){
  .site .results .three .r1{order:1}
  .site .results .three .r2{order:2}
  .site .results .labnote{order:3;grid-column:auto;grid-row:auto}
  .site .results .three .r3{order:4;grid-column:auto;grid-row:auto}
  .site .pfig figcaption{padding-left:50px;font-size:13px}
  .site .invest .acts .btn{flex:1 1 100%}
}
.site .build .sec-head,.site .results .sec-head{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
@media (max-width:820px){.site .build .sec-head,.site .results .sec-head{grid-template-columns:minmax(0,1fr)}}

/* ---------- Round 4 ---------- */
.site .layers{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--rule);background:#fff}
.site .layers .lay{display:grid;grid-template-columns:84px minmax(0,1fr);gap:2px 16px;align-items:start;padding:18px 20px}
.site .layers .lay b{grid-row:span 3;font-weight:800;font-size:26px;line-height:1.1;letter-spacing:-.02em;white-space:nowrap}
.site .layers .lay span{font-weight:700;font-size:17px}
.site .layers .top{min-height:200px;color:#fff;background-color:var(--soil);background-image:radial-gradient(circle,rgba(139,94,60,.55) 1.3px,transparent 1.6px),radial-gradient(circle,rgba(126,142,53,.35) 1.1px,transparent 1.4px),radial-gradient(circle,rgba(107,75,50,.6) 1.6px,transparent 1.9px);background-size:23px 19px,31px 29px,17px 21px;background-position:0 0,11px 7px,6px 13px}
.site .layers .base{min-height:70px;color:var(--ink);background-color:var(--sand);background-image:radial-gradient(circle,rgba(38,27,19,.22) 1px,transparent 1.3px);background-size:7px 7px}
.site .layers ul{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.site .layers li{padding:5px 11px;border-radius:999px;background:rgba(23,32,26,.82);font-size:14px;font-weight:600}
.site .layers figcaption{padding:10px 16px;font-size:14px;color:var(--grey);background:#fff}
.site .microcard{display:flex;gap:16px;align-items:flex-start;margin-top:16px;padding:18px 20px;border-radius:14px;background:#fff;border:1px solid var(--rule)}
.site .microcard svg{flex:none;width:32px;height:32px;padding:6px;border-radius:999px;background:var(--leaf);color:var(--green)}
.site .microcard b{display:block;font-size:19px}
.site .microcard .k{display:block;margin-top:2px;font-size:14px;font-weight:600;color:var(--green)}
.site .microcard p{margin-top:8px;font-size:16px;color:var(--grey)}
.site .measure .two-part{margin-top:clamp(28px,3vw,44px);gap:20px}
.site .measure .part{padding:clamp(20px,2.4vw,32px);border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12)}
.site .measure .part .obs{margin-top:18px}
.site .measure .part table{margin-top:14px}
.site .measure tr.key th,.site .measure tr.key td{background:rgba(207,227,184,.12)}
.site .measure tr.key th{padding-left:10px}
.site .measure .labnote2{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:15px;color:rgba(255,255,255,.82)}
.site .measure .labnote2 svg{width:20px;height:20px;flex:none;color:var(--leaf)}
.site .films .twofilms{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.site .cta .wrap{display:block}
.site .cta .ctarow{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 48px}
.site .phero .acts.deck{display:flex;margin-top:20px}
.site .ratenote{margin-top:12px;padding:12px 14px;border-radius:10px;background:var(--mist);font-size:14px;line-height:1.5;color:var(--grey)}
@media (max-width:820px){
  .site .films .twofilms{grid-template-columns:minmax(0,1fr)}
  .site .layers .lay{grid-template-columns:62px minmax(0,1fr);gap:2px 12px;padding:16px}
  .site .layers .lay b{font-size:19px}
}

/* Round 5: films and new imagery */
.site .hero .vision.film img.under{display:none}
.site.motion .hero .vision.film img.under{display:block}
.site.motion .hero .vision.film img.still{display:none}
.site .vision.film video,.site .band.film video{display:none}
.site.motion .vision.film video,.site.motion .band.film video{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:transparent}
.site.motion .hero .vision.film video{transform:scale(1.08);transition:opacity .9s ease,transform 2.6s cubic-bezier(.2,.7,.2,1)}
.site.motion .hero.in .vision.film video{transform:none}
.site.motion .hero .vision.film video.fade{opacity:0}
.site.motion .band.film video{object-position:center 45%;transform:scale(1.08);transition:transform 2.6s cubic-bezier(.2,.7,.2,1)}
.site.motion .band.film.in video{transform:none}
.site .recipe .specimen{margin:28px 0 0}
.site .recipe .specimen img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:1px solid var(--rule);background:#F3EFEA}
.site .recipe .specimen figcaption{margin-top:10px;font-size:14px;color:var(--grey)}
.site .packs .worms{grid-column:1 / -1;padding:0;overflow:hidden}
.site .packs .worms img{display:block;aspect-ratio:16/10;object-fit:cover}
.site .packs .worms figcaption{margin:0;padding:11px 14px;text-align:left;font-weight:500;font-size:14px;color:var(--grey)}
@media (max-width:820px){.site.motion .hero .vision.film video{object-position:62% center}}

/* Round 6: caption on the soil film band */
.site .band figcaption{position:absolute;right:var(--pad);bottom:18px;z-index:2;padding:6px 12px;border-radius:6px;background:rgba(255,255,255,.9);color:var(--ink);font-size:13px;font-weight:500}
@media (max-width:820px){.site .band figcaption{right:12px;bottom:12px}}

/* Images carry width and height so space is reserved while they load; this keeps every image sized exactly as the approved CSS sets it. */
:where(img[width][height]){height:auto}

/* Keyboard focus ring: the approved green ring disappears on the green and dark sections, so those areas use the design's leaf green instead. */
.site .results :focus-visible,.site .invest :focus-visible,.site .cta :focus-visible,.site .ftr :focus-visible{outline-color:var(--leaf)}

/* Phone menu (client review, after Round 7): below 820 px the header links open in a panel under the header.
   The button sits before the links in the page, so keyboard order runs button, links, Contact us; CSS shows it at the right edge. */
.site .hdr .menu{display:none}
@media (max-width:820px){
  .site .hdr .wrap{gap:10px}
  .site .hdr .menu{order:1;display:inline-flex;align-items:center;justify-content:center;flex:none;width:42px;height:42px;padding:0;border-radius:8px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer}
  .site .hdr .menu svg{width:22px;height:22px}
  .site .hdr .menu .x,.site .hdr.open .menu .o{display:none}
  .site .hdr.open .menu .x{display:inline}
  .site .hdr.open .menu{background:var(--ink);color:#fff}
  .site .hdr.open nav{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:100%;margin:0;padding:4px var(--pad) 12px;background:#fff;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);box-shadow:0 18px 30px -18px rgba(0,0,0,.3);font-size:18px;animation:menu-in .2s ease}
  .site .hdr.open nav a{padding:14px 0;border-top:1px solid var(--rule)}
  .site .hdr.open nav a:first-child{border-top:0}
}
@media (max-width:820px) and (hover:hover){.site .hdr .menu:hover{background:var(--ink);color:#fff}}
@media (prefers-reduced-motion:reduce){.site .hdr.open nav{animation:none}}
@keyframes menu-in{from{opacity:0;transform:translateY(-6px)}}

/* QA fixes (approved by Jason, 29 October 2026) */
/* The send-error box uses the design's yellow note colours, so it can't be mistaken for the thank-you message. */
.site .send-error{background:#FBF1D2;border-left:4px solid var(--sun)}
.site .send-error svg{background:var(--sun);color:var(--ink)}
/* A required field the browser jumps to stays clear of the sticky header. */
.site form input,.site form textarea{scroll-margin-top:calc(var(--stick-top,0px) + 88px)}
/* 404 page: the green block fills the window, so the footer sits at the bottom. */
.site [data-page="notfound"]{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
.site [data-page="notfound"] main{flex:1 0 auto;display:flex;flex-direction:column}
.site [data-page="notfound"] .cta{flex:1 0 auto;display:flex;align-items:center}
.site [data-page="notfound"] .cta .wrap{width:100%}
