*{box-sizing:border-box}body{margin:0;background:#f7f8f4;color:#253b2c;font:16px/1.5 system-ui,sans-serif}a{color:inherit}header,main,footer{max-width:1200px;margin:auto;padding:22px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce2d9;gap:16px}header a{text-decoration:none}.brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:750}h1{font-size:clamp(28px,4vw,46px);line-height:1.1;letter-spacing:-.035em;margin:20px 0}h2{font-size:19px}nav,small,figcaption,.note{font-size:13px;color:#526054}small{display:block}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:12px}.product{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:24px 0}.product figure{margin:0}.product figure img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:18px;background:white}figcaption{padding:10px}.variants{padding:0;list-style:none}.variants li{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;border-top:1px solid #dce2d9;padding:16px 0}.button{background:#244b31;color:white;padding:9px 15px;border-radius:22px;text-decoration:none;font-size:14px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0}.card,.category{background:white;border:1px solid #e2e6df;border-radius:16px;padding:16px;text-decoration:none;transition:transform .18s,box-shadow .18s;overflow:hidden}.card:hover,.category:hover{transform:translateY(-3px);box-shadow:0 8px 22px #244b3112}.card img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.card h2{font-size:16px;margin:10px 0 6px}.card p{margin:0}.card span{font-size:13px;color:#526054}footer{border-top:1px solid #dce2d9;font-size:13px;margin-top:40px}a:focus-visible{outline:3px solid #71964a;outline-offset:4px}@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product{grid-template-columns:1fr;gap:15px}.product figure{max-width:500px;margin:auto;width:100%}}@media(max-width:380px){header,main,footer{padding:14px}.variants li{gap:8px}.brand{font-size:18px}.card{padding:10px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}