/* Shared geometry for categories, product cards and controls. */
.hero{aspect-ratio:1448/968}.hero .hero-photo{background-size:100% auto;background-position:top center}.hero>.banner-search{top:2.13%;height:5.05%}
.home-popular{border-top:1px solid #e2eae0;border-bottom:1px solid #e2eae0;background:#fff;padding-top:38px;padding-bottom:32px}
.home-popular .section-title{display:flex;flex-direction:row;align-items:center;gap:20px;margin-bottom:24px}.home-popular h2{margin-bottom:0}.popular-all{font-size:13px;color:var(--green-dark);font-weight:700;white-space:nowrap}
.popular-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.popular-card{border:1px solid #e0e8dc;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;background:#fff;min-width:0}
.popular-photo{display:block;width:100%;border:0;border-radius:0;aspect-ratio:4/3;background:url(assets/hero-eggs.png) center/cover;cursor:pointer;flex:none}
.popular-body{padding:18px;display:flex;flex-direction:column;flex:1}.popular-body>small{font-size:11px;line-height:17px;color:#73816e}.popular-body h3{font-size:16px;line-height:23px;min-height:69px;margin:8px 0 14px;overflow-wrap:anywhere}.popular-price{font-size:21px;font-weight:800;margin:auto 0 4px;color:#174f25}
.popular-button{margin-top:18px;min-height:44px;width:100%;border:0;background:var(--green);color:#fff;font-weight:700;border-radius:9px;cursor:pointer}.popular-button:hover{background:var(--green-dark)}.popular-note{font-size:12px;color:#6b7667;margin:22px 0 0;line-height:1.6}
@media(max-width:1200px){.popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.hero{aspect-ratio:1448/968}.hero>.banner-search{top:2.13%;height:5.05%}.home-popular .section-title{align-items:flex-start;flex-direction:column;gap:14px}.home-popular h2{font-size:28px}.popular-grid{gap:12px}.popular-body{padding:13px}.popular-body h3{font-size:14px;line-height:20px;min-height:80px}.popular-price{font-size:18px}.popular-button{font-size:12px}.popular-all{min-height:36px;display:inline-flex;align-items:center}}
button,input,select,textarea{font-family:inherit;box-sizing:border-box}
button{line-height:1.3}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ff6b0b;outline-offset:3px}
.categories button:hover,.card:hover{transform:none}
.section,.final-cta{padding-left:clamp(20px,4vw,55px);padding-right:clamp(20px,4vw,55px)}
.section-title{align-items:center}.section-title>div,.section-title>p{min-width:0}.section-title p{max-width:440px;line-height:1.6}
.categories{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.categories button{display:flex;flex-direction:column;align-items:stretch;padding:12px 12px 20px;height:100%;min-width:0;text-align:left;border-width:1px}
.categories button .category-photo{flex:none;width:100%;aspect-ratio:1;margin:0 0 16px;border-radius:12px}
.categories button>span{font-size:18px;line-height:24px;margin:0 8px 6px;min-height:24px}
.categories button>small{font-size:12px;line-height:18px;margin:0 8px;min-height:36px}
.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.card{padding:16px;min-width:0;height:100%}
.card>.card-photo{width:100%;height:auto;aspect-ratio:4/3;flex:none;margin:0 0 16px;border-radius:12px;background-position:center}
.card>.card-photo .fallback{font-size:clamp(40px,5vw,72px)}
.card>small{display:block;min-height:18px;font-size:12px;line-height:18px}
.card h3{font-size:17px;line-height:24px;min-height:72px;margin:8px 0 16px;overflow-wrap:anywhere}
.prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;align-items:stretch;margin:0 0 18px;min-height:72px}
.prices span{padding:10px 6px;font-size:10px;line-height:15px;min-width:0;text-align:center;display:flex;flex-direction:column;justify-content:space-between;gap:6px}
.prices b{font-size:16px;line-height:20px;white-space:nowrap;margin:0}
.buyrow{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px;margin-top:auto;align-items:stretch}
.buyrow .card-more{grid-column:1/-1;background:white;color:var(--green-dark);border:1px solid #cfe0cc}
.buyrow select,.buyrow input,.buyrow button{width:100%;min-width:0;min-height:44px;height:44px;margin:0;padding:10px;font-size:13px;border-radius:10px}
.buyrow input{text-align:center}.buyrow .add{grid-column:1/-1}.buyrow button:disabled{grid-column:1/-1;height:96px;min-height:96px}
.subfilters{gap:8px;align-items:center}.subfilters button{min-height:40px;padding:9px 16px}
.gold{min-height:46px;display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:12px 24px}
.delivery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.delivery-grid article{height:100%;padding:24px}
.delivery-grid h3{min-height:48px;line-height:24px}.delivery-grid p{margin-bottom:0}
.commercial-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.commercial-strip>div{padding:22px 24px;align-content:start}.commercial-strip small{line-height:18px}
.trust{grid-template-columns:repeat(4,minmax(0,1fr))}.trust>div{padding:24px 18px;gap:12px;min-width:0}.trust span{line-height:18px}.trust b{font-size:28px;flex:none}
.contact form{min-width:0}.contact input,.contact textarea,.modal input:not([type=checkbox]),.modal textarea,.modal select{width:100%;min-width:0;font:inherit}.contact input,.modal input:not([type=checkbox]),.modal select{min-height:46px}.contact textarea,.modal textarea{resize:vertical}
.modal-card{max-height:90dvh;overflow:auto}.product-detail{width:min(900px,100%)}.product-detail .card-photo{height:auto;aspect-ratio:1;margin:0}.product-detail-grid{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.sidebar{overflow-y:auto}.sidebar nav a{height:58px;min-height:58px;padding:16px 18px;line-height:24px}
@media(max-width:1200px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.categories{grid-template-columns:repeat(2,minmax(0,1fr))}.trust{grid-template-columns:repeat(2,minmax(0,1fr))}.commercial-strip>div{padding:18px 16px}.section-title{align-items:start;flex-direction:column;gap:0}.section-title h2{margin-bottom:12px}.section-title p{margin-top:0}}
@media(max-width:760px){.categories{gap:12px}.categories button{padding:8px 8px 16px}.categories button .category-photo{border-radius:10px;margin-bottom:12px}.categories button>span{font-size:16px;margin-left:4px;margin-right:4px}.categories button>small{font-size:11px;line-height:17px;min-height:34px;margin-left:4px;margin-right:4px}.cards{grid-template-columns:minmax(0,1fr);gap:18px}.card h3{min-height:0}.card>.card-photo{aspect-ratio:4/3}.prices{min-height:70px}.prices span{font-size:11px}.prices b{font-size:18px}.buyrow{grid-template-columns:minmax(0,1fr) 90px}.buyrow select,.buyrow input,.buyrow button{height:46px;min-height:46px}.buyrow button:disabled{height:100px}.delivery-grid{grid-template-columns:minmax(0,1fr)}.delivery-grid h3{min-height:0}.commercial-strip{grid-template-columns:minmax(0,1fr)}.commercial-strip>div{min-height:80px;padding:20px}.trust>div{padding:20px 14px}.trust b{font-size:24px}.trust span{font-size:11px}.product-detail-grid{grid-template-columns:minmax(0,1fr)}.modal-card{padding:24px 18px}.product-detail .card-photo{aspect-ratio:4/3}.contact form{margin-top:24px}.sidebar nav a{height:58px;min-height:58px;font-size:17px}.final-cta .gold{width:100%}}

/* Compact home selection. */
.home-popular{padding-top:28px;padding-bottom:24px}.home-popular .section-title{margin-bottom:18px}.home-popular h2{font-size:28px;line-height:1.2}.popular-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.popular-card{border-radius:12px}.popular-photo{height:125px;aspect-ratio:auto}.popular-body{padding:13px}.popular-body h3{font-size:14px;line-height:20px;min-height:60px;margin:7px 0 10px}.popular-price{font-size:18px}.popular-body>small{font-size:10px;line-height:16px}.popular-button{min-height:38px;font-size:12px;margin-top:12px}.popular-note{margin-top:16px;font-size:11px}
@media(max-width:1000px) and (min-width:761px){.popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.popular-photo{height:125px}}
@media(max-width:760px){.popular-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.popular-photo{height:100px}.popular-body{padding:11px}.popular-body h3{font-size:13px;line-height:18px;min-height:54px}.popular-price{font-size:17px}.home-popular h2{font-size:25px}.popular-button{min-height:40px}.home-popular .section-title{gap:8px}.home-popular .section-title>div>small{font-size:9px;letter-spacing:1px}}
