body.drawer-open{overflow:hidden}.drawer-overlay{position:fixed;inset:0;background:rgba(10,31,33,.48);z-index:90;opacity:0;transition:opacity .25s}.drawer-overlay.is-open{opacity:1}.cart-drawer{position:fixed;z-index:91;right:0;top:0;width:min(460px,100%);height:100dvh;background:var(--paper);transform:translateX(102%);transition:transform .35s cubic-bezier(.22,.8,.3,1);display:grid;grid-template-rows:auto auto 1fr auto;box-shadow:-20px 0 60px rgba(0,0,0,.15)}.cart-drawer.is-open{transform:none}.cart-drawer>header{display:flex;align-items:flex-start;justify-content:space-between;padding:28px;border-bottom:1px solid var(--line)}.cart-drawer h2{font-size:31px;margin:4px 0 0}.drawer-close{border:0;background:none;font-size:32px;cursor:pointer}.drawer-progress{padding:11px 28px;background:var(--lime);font-size:12px;text-align:center}.drawer-body{overflow:auto;padding:0 28px}.drawer-empty{text-align:center;padding:80px 20px}.drawer-item{display:grid;grid-template-columns:105px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.drawer-item-image{background:#edf0e9;aspect-ratio:4/5}.drawer-item-image img{width:100%;height:100%;object-fit:cover}.drawer-item-copy{display:flex;flex-direction:column;justify-content:space-between;min-width:0}.drawer-item-copy small,.drawer-item-copy span{display:block;color:var(--muted);font-size:11px}.drawer-item-copy a{display:block;margin:5px 0;color:inherit}.drawer-item-bottom{display:flex;align-items:center;justify-content:space-between}.quantity-control{display:grid;grid-template-columns:30px 30px 30px;border:1px solid var(--line);align-items:center;text-align:center}.quantity-control button{border:0;background:transparent;height:30px;cursor:pointer}.remove-line{border:0;background:none;padding:0;text-decoration:underline;text-align:left;font-size:11px;color:var(--muted);cursor:pointer}.cart-drawer>footer{padding:22px 28px 28px;border-top:1px solid var(--line);background:#fff}.drawer-subtotal{display:flex;justify-content:space-between;font-size:18px}.cart-drawer>footer p{font-size:11px;color:var(--muted)}.checkout-button{display:block;text-align:center;width:100%}.view-cart{display:block;text-align:center;margin-top:12px;text-decoration:underline;font-size:12px}.form-message{color:#9b2c2c;font-size:12px}.product-promises{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.product-promises span{padding:10px 6px;background:#edf0e9;text-align:center;font-size:10px}.product-info details{border-top:1px solid var(--line);padding:16px 0}.product-info summary{cursor:pointer;font-weight:700}.product-info details p{color:var(--muted);font-size:13px}.editorial-page{max-width:1240px;margin:auto;padding:80px 28px}.editorial-hero{text-align:center;max-width:760px;margin:0 auto 50px}.editorial-hero h1{font-size:clamp(42px,7vw,88px);line-height:.9;margin:12px 0}.article-grid,.collection-list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.story-card{border-top:1px solid var(--navy);padding-top:14px}.story-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.story-card h2{font-size:28px}.article-page{max-width:780px;margin:auto;padding:80px 28px}.article-page>header{text-align:center;margin-bottom:42px}.article-page h1{font-size:clamp(42px,7vw,76px);line-height:1}.article-page>img{width:100%;margin-bottom:40px}.article-meta{color:var(--muted);font-size:12px}.contact-layout{max-width:1100px;margin:auto;padding:80px 28px;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.contact-form{display:grid;gap:15px}.contact-form input,.contact-form textarea{width:100%;padding:15px;border:1px solid var(--line);background:#fff}.error-page{text-align:center;padding:130px 28px}.error-page h1{font-size:clamp(90px,18vw,220px);line-height:.7;margin:0;color:var(--sage)}.pagination{grid-column:1/-1;text-align:center;padding:30px}.search-result{padding:22px;border-top:1px solid var(--line)}@media(max-width:750px){.article-grid,.collection-list-grid,.contact-layout{grid-template-columns:1fr}.contact-layout{gap:35px;padding-top:50px}.editorial-page{padding-top:50px}.product-promises{grid-template-columns:1fr}.cart-drawer>header,.drawer-body,.cart-drawer>footer{padding-left:20px;padding-right:20px}}
