/* Product-led browsing: photographs and one decision per surface. */
#shop-main{max-width:1320px;padding-top:44px;padding-bottom:80px}
.collection-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:32px}
.collection-heading h1{font-size:clamp(44px,5.3vw,76px);line-height:1.15;letter-spacing:-.035em;margin:0}
.collection-heading p{font-size:14px;color:#62715b;margin:0}
.greens-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.greens-card{min-width:0}.greens-card-main{display:block;text-decoration:none}.greens-card .store-photo{aspect-ratio:1.08;border-color:#c3c8b5}
.greens-card:nth-child(2) .store-photo{border-radius:15px 15px 38% 38%}.greens-card:nth-child(3) .store-photo{border-radius:42% 42% 15px 15px}
.greens-card h2{font-size:30px;line-height:1.4;margin:21px 0 0}.greens-card-main:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.greens-description{font-size:15px;line-height:1.65;color:#647058;margin-top:3px;min-height:25px}
.greens-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.greens-price{font-size:21px;white-space:nowrap}.greens-price small{font-size:13px;color:#62715b}
.greens-choose{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1.5px solid #2c4230;border-radius:99px;min-height:46px;padding:7px 21px;font-size:15px;transition:background .15s}.greens-choose:hover{background:#dce67c}.greens-choose span{font-size:22px}
.greens-status{margin-top:15px;font-size:13px;color:#62715b}.collection-tax{font-size:13px;color:#62715b;margin-top:42px}
.product-back{margin-bottom:28px;font-size:14px}.product-back a{display:inline-flex;align-items:center;gap:12px;min-height:44px}.product-back a:hover{text-decoration:underline;text-underline-offset:5px}
.product-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:start}
.product-portrait{aspect-ratio:1;align-self:start;border-radius:43% 43% 16px 16px;border-color:#c3c8b5;margin-top:10px}
.product-information{padding-top:25px;max-width:480px;width:100%}.product-information h1{font-size:clamp(36px,4vw,56px);line-height:1.2;margin:0 0 12px;letter-spacing:-.025em}
.product-description{font-size:17px;line-height:1.8;color:#58664f;margin:0 0 30px;max-width:39ch}
.product-unit{font-size:14px;color:#647058;margin:0 0 9px}.product-unit strong{font-weight:500;color:#2c4230;margin-inline-start:8px}.product-price{font-size:30px;margin-bottom:23px}.product-price small{font-size:15px;color:#62715b}
.pack-options{border:0;margin:0 0 25px;padding:0;display:flex;gap:12px;flex-wrap:wrap}.pack-options legend{font-size:14px;margin-bottom:10px}
.pack-choice{position:relative;flex:1;min-width:145px;display:grid;grid-template-columns:1fr;gap:5px;cursor:pointer;border:1px solid #9ea98f;border-radius:10px;padding:14px 17px;font-size:17px;background:transparent}.pack-choice input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.pack-choice small{font-size:13px;color:#58664f}.pack-choice:has(:checked){background:#e4e9d5;border:2px solid #2c4230;padding:13px 16px}.pack-choice:has(:focus-visible){outline:2px solid #2c4230;outline-offset:4px}
.product-information .harvest-availability{border:0;border-radius:0;background:none;padding:0;margin-bottom:18px;font-size:14px}.product-information .harvest-availability strong{font-weight:400}.product-information .harvest-availability.is-available strong:before{content:'';display:inline-block;width:7px;height:7px;background:#668452;border-radius:50%;margin-inline-end:8px}.product-information .harvest-availability p{font-size:12px}
.product-information .store-purchase{display:grid;grid-template-columns:136px minmax(0,1fr);gap:0 14px}.product-information .harvest-availability,.product-information .product-quantity-label{grid-column:1/-1}.product-information .product-quantity-label{justify-content:flex-start;gap:7px;margin-bottom:7px}.product-information .product-quantity-label span:last-child{display:none}.product-information .product-quantity{margin:0;border-color:#8a997a;min-height:50px}.product-information .product-quantity button{flex-basis:38px;height:48px}.product-information .add-cart{min-height:50px;font-size:16px;border-color:#2c4230;box-shadow:2px 3px 0 #2c4230;padding:10px 23px}.product-information .product-in-cart{margin:0;gap:12px;justify-content:space-between;flex-wrap:wrap}.product-in-cart a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center}
.product-information .store-stock{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.product-tax{font-size:12px;color:#62715b;margin-top:14px}.product-information .product-details{margin-top:30px;padding-top:8px;border-top:1px solid #cbd2c0}.product-delivery{font-size:14px;display:inline-block;text-decoration:underline;text-underline-offset:4px;margin-top:25px;min-height:44px}
.basket-dialog{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(450px,100%);max-width:100%;border:0;padding:60px 0 0;background:#f6f4ea;color:#2c4230;overflow:auto;box-shadow:-5px 0 25px #223f2d13}.basket-dialog::backdrop{background:#17251b55}.basket-close{position:absolute;top:13px;inset-inline-end:17px;border:0;background:transparent;font:inherit;font-size:29px;color:inherit;width:44px;height:44px}.basket-dialog .cart-panel{background:transparent;position:static;border:0;border-radius:0;outline:0}.basket-dialog .cart-heading{padding-inline:28px}.basket-dialog .cart-body{padding:22px 28px}.basket-dialog .cart-note{margin-block:20px;font-size:12px}.basket-dialog .cart-summary{font-size:19px}.cart-unit{display:block;font-size:13px;color:#647058;margin-top:2px}.basket-continue{background:transparent;border:0;text-decoration:underline;text-underline-offset:5px;color:inherit;font:inherit;font-size:14px;width:100%;min-height:48px;margin-top:13px}.basket-dialog .cart-empty{text-align:start;padding:12px 0 28px;font-size:16px}.basket-dialog .primary-button{min-height:50px}
.product-missing{padding:60px 0 100px}.product-missing h1{font-size:38px}.product-missing a{text-decoration:underline;display:inline-block;margin-top:25px}
.greens-card-main:focus-visible,.greens-choose:focus-visible,.product-back a:focus-visible,.basket-close:focus-visible,.basket-continue:focus-visible{outline:2px solid #2c4230;outline-offset:5px}
[dir=rtl] .basket-dialog{inset:0 auto 0 0}
@media(max-width:1000px){.greens-collection{gap:23px}.greens-card h2{font-size:26px}.greens-price{font-size:18px}.greens-choose{padding-inline:16px;gap:15px}.product-layout{gap:38px}.product-information{padding-top:10px}.product-information h1{font-size:39px}}
@media(max-width:760px){#shop-main{padding-top:26px;padding-bottom:50px}.collection-heading{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:28px}.collection-heading h1{font-size:49px}.greens-collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.greens-card h2{font-size:25px}.greens-description{font-size:13px;min-height:44px}.greens-card-bottom{align-items:flex-start;flex-direction:column;gap:12px;margin-top:13px}.greens-choose{padding-inline:18px;min-height:44px;font-size:14px;gap:25px}.greens-price{white-space:normal}.greens-price small{font-size:12px}.greens-status{font-size:12px;line-height:1.6}.collection-tax{font-size:12px;margin-top:30px}.product-layout{grid-template-columns:1fr;gap:27px}.product-portrait{width:min(430px,100%);margin:0 auto;aspect-ratio:1.18;border-radius:39% 39% 14px 14px}.product-information{max-width:none;padding-top:0}.product-back{margin-bottom:13px}.product-information h1{font-size:39px}.product-description{font-size:16px;margin-bottom:22px;max-width:none}.product-price{font-size:27px}.product-information .store-purchase{grid-template-columns:128px minmax(0,1fr);gap:0 12px}.product-information .add-cart{padding-inline:18px}.product-information .product-details{margin-top:25px}.basket-dialog{width:min(430px,100%)}.basket-dialog .cart-body,.basket-dialog .cart-heading{padding-inline:22px}}
@media(prefers-reduced-motion:reduce){.greens-choose{transition:none}}

html:has(.basket-dialog[open]){overflow:hidden}.basket-dialog .quantity button{min-width:44px;min-height:44px}.basket-dialog .remove-item{min-width:44px;min-height:44px}

.basket-feedback:not([hidden]){font-size:13px;line-height:1.7;margin-top:18px;padding:12px;border-inline-start:2px solid #8b5b39;background:#efeadc}.basket-feedback[data-error=true]{color:#79412b}
