/* Retail reading scale: body 16, supporting text 14, labels no smaller than 12. */
:root{--action:#086B24;--green:#086B24;--action-hover:#05551C;--green-hover:#05551C;--offer-yellow:#F5CE32}
html{font-size:16px}body{font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}
.search input,.header-save,.header-inner>.btn,.side-link{font-size:16px}.side-link{min-height:48px}.side-label,.eyebrow,.sidebar-note{font-size:14px;line-height:1.45}
.market-heading h1,.page-heading h1,.catalog-heading h1{font-size:34px;line-height:1.2;letter-spacing:-.7px}.market-heading p,.page-heading p,.catalog-heading p{font-size:17px;line-height:1.55}
.campaign-copy h2{font-size:40px;line-height:1.12}.campaign-copy p{font-size:17px;line-height:1.55}.campaign-copy>span{font-size:13px}.campaign-copy .btn{font-size:16px}.campaign-image>span{font-size:15px}
.section-head h2{font-size:28px;line-height:1.25}.section-head p,.section-head .text-btn{font-size:16px}.section-head{gap:20px}.row-controls{flex-shrink:0}
.category{font-size:14px;min-width:112px;white-space:normal;line-height:1.35;text-align:center}.category-rail{gap:18px}.category>span{margin-bottom:10px}
.product-title,.related-grid .product-title{font-size:16px;line-height:1.45;min-height:46px}.price-line,.related-grid .price-line{font-size:24px}.price-line del,.related-grid .price-line del{font-size:14px}.product-meta,.related-grid .product-meta{font-size:14px;line-height:1.5}.product-meta{flex-wrap:wrap}.product-bottom>span{font-size:14px;min-height:21px}.product-bottom button,.related-grid .product-bottom button{font-size:15px;min-height:44px}.product-card .price-pending{font-size:16px;font-weight:700;letter-spacing:0;line-height:1.4}
.discount,.related-grid .discount,.price-saving,.pill.example{font-size:13px;line-height:1.4;background:var(--offer-yellow);color:#111;border:0;padding:5px 8px;font-weight:700}.product-meta .pill,.related-grid .product-meta .pill{font-size:12px}
.btn,.newsletter .btn,.newsletter .btn.yellow,.helper-fab{background:var(--action);color:#fff;font-size:16px;min-height:48px}.btn:hover,.newsletter .btn:hover,.helper-fab:hover{background:var(--action-hover)}.btn.light{background:#fff;color:var(--action)}.btn.light:hover{background:#EEF5EC}.product-photo .save.is-saved,.detail-save.is-saved{background:var(--action);color:#fff}.detail-save.is-saved .icon{fill:currentColor}.month-card.active,.assistant-top{background:var(--action)}
.retailer-card strong,.quick-tools strong,.household-tile strong{font-size:17px}.retailer-card small,.retailer-card em,.quick-tools small,.quick-tools em,.household-tile small{font-size:14px;line-height:1.5}.retailer-card{align-items:flex-start}.retailer-card>span{min-width:0}.retailer-mark{flex-shrink:0}.market-promo span{font-size:13px}.market-promo p,.market-promo b,.market-assistant p,.newsletter p,.briefing-teaser p{font-size:16px}.market-promo h2,.newsletter h2{font-size:28px;line-height:1.2}.market-promo{min-height:235px}
.catalog-toolbar label,.catalog-toolbar select,.category-filters .chip,.filter-bar .chip{font-size:16px}.catalog-toolbar{flex-wrap:wrap}.catalog-toolbar select{max-width:230px}.chip{min-height:44px}
.panel>p,.planner-aside p,.planner-aside li,.guide-card p,.briefing-card p,.prose p,.prose li,.prose summary,.prose td,.prose th{font-size:16px;line-height:1.6}.panel h2,.planner-aside h3{font-size:26px}.guide-card h3,.briefing-card h2{font-size:24px}.guide-card .text-btn,.briefing-card .text-btn,.count-row strong,.check-row label,.segmented button{font-size:16px}.count-row small,.toggle-row small,.segmented small,.check-row small,.check-row .text-btn,.notice,.crumb,.month-card small,.month-card span,.step,.field-label{font-size:14px;line-height:1.5}.month-card strong{font-size:18px}.steps{gap:10px}.step{white-space:normal}.segmented button{overflow-wrap:anywhere}.planner-actions .btn{font-size:16px}
.detail-copy h2{font-size:28px;line-height:1.25}.detail-copy p,.detail-copy .detail-description,.product-info summary,.detail-save,.purchase-panel .btn{font-size:16px;line-height:1.5}.detail-store,.detail-category,.detail-facts>div,.detail-facts strong,.detail-back,.product-info p,.sample-price,.purchase-disclosure,.purchase-panel>small,.image-caption,.detail-related .section-head>span{font-size:14px;line-height:1.5}.purchase-panel .price-line{font-size:28px;line-height:1.3;letter-spacing:-.3px}.purchase-panel .price-line del{font-size:16px}.detail-related h3{font-size:24px}.dialog-top>span{font-size:14px}.detail-store .pill{font-size:12px}.related-grid .product-title{min-height:0}
.assistant-top p,.chat-product strong,.chat-product small{font-size:14px}.chat-message,.email-box p,.email-box label{font-size:16px}.footer-top>div,.footer-bottom,.saved-summary small{font-size:14px;line-height:1.6}.footer-top>div{flex-wrap:wrap}.footer-bottom{gap:16px}.saved-summary{font-size:16px}
.real-product{position:relative;overflow:hidden;background:#fff}.real-product>img{width:100%;height:100%;object-fit:contain;display:block}.detail-photo.real-product>img{position:absolute;inset:0}.product-card .real-product>img{position:absolute;inset:0}
.brand .clay-brand{transform-origin:50% 15%;filter:drop-shadow(0 3px 2px #00000012)}
@media(prefers-reduced-motion:no-preference){header .brand .clay-brand{animation:bag-arrive 1100ms cubic-bezier(.2,.8,.25,1) both}.brand:hover .clay-brand,.brand:focus-visible .clay-brand{animation:bag-swing 750ms ease-in-out}.brand:active .clay-brand{transform:translateY(2px) scale(.94);transition:transform .15s}@keyframes bag-arrive{0%{opacity:0;transform:translateY(12px) rotate(-14deg) scale(.84)}40%{opacity:1;transform:translateY(-6px) rotate(8deg) scale(1.04)}65%{transform:translateY(2px) rotate(-4deg) scale(.98)}82%{transform:translateY(-2px) rotate(2deg)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes bag-swing{0%,100%{transform:rotate(0)}25%{transform:translateY(-4px) rotate(-12deg)}55%{transform:translateY(-2px) rotate(8deg)}78%{transform:rotate(-3deg)}}}
@media(max-width:1150px) and (min-width:761px){.header-inner>.btn{font-size:14px}.campaign-copy h2{font-size:34px}.retailer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.market-promos{grid-template-columns:1fr}.market-promo{min-height:220px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.deal-track{grid-template-columns:none;grid-auto-columns:calc((100% - 36px)/3)}}
@media(max-width:760px){.header-inner .brand,.header-inner .brand-bottom{font-size:16px}.header-save{font-size:14px}header nav a{font-size:14px}.market-heading h1,.page-heading h1,.catalog-heading h1{font-size:28px;line-height:1.2}.market-heading p,.page-heading p,.catalog-heading p{font-size:16px}.campaign-copy h2{font-size:34px}.campaign-copy p{font-size:16px}.campaign-copy{padding:24px}.campaign-image>span{font-size:14px}.section-head{align-items:flex-start;gap:12px}.section-head h2{font-size:24px}.section-head p{font-size:15px;max-width:none}.section-head .text-btn{font-size:14px;white-space:nowrap}.category{font-size:14px;min-width:100px}.category-rail{gap:16px}.product-title{font-size:16px}.deal-track{grid-auto-columns:72%;gap:16px}.product-bottom>span{font-size:14px}.discount{font-size:13px}.retailer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.retailer-card{padding:16px 12px;flex-wrap:wrap}.retailer-card strong{font-size:16px}.retailer-card small,.retailer-card em{font-size:14px}.retailer-card>.icon{display:none}.quick-tools strong{font-size:18px}.quick-tools small,.quick-tools em{font-size:14px}.catalog-toolbar select{font-size:16px;max-width:100%}.catalog-toolbar label{font-size:14px}.category-filters .chip{font-size:15px}.related-grid .product-title{font-size:16px}.related-grid .product-meta{font-size:14px}.related-grid .price-line{font-size:22px}.related-grid .price-pending{font-size:16px}.related-grid .discount{font-size:12px}.related-grid .product-bottom button{font-size:14px}.detail-copy h2{font-size:28px}.detail-copy .detail-description{font-size:16px}.detail-media{width:min(100%,240px)}.detail-back{font-size:14px}.step{font-size:13px;flex-direction:column;text-align:center;gap:7px}.steps{align-items:start}.newsletter .btn{font-size:16px}.footer-bottom{font-size:14px;flex-direction:column;align-items:start}.helper-fab{min-height:48px}.count-row{gap:12px}.month-card{padding:14px}.month-card span{font-size:12px}.month-card small{font-size:14px}.segmented{grid-template-columns:1fr}.household-grid{grid-template-columns:1fr}.calendar-detail{flex-wrap:wrap}.assistant-top h2{font-size:25px}}
@media(max-width:360px){.header-inner{padding:10px 12px;gap:7px}.header-inner .brand,.header-inner .brand-bottom{font-size:14px}.header-save>span:not([data-icon]){display:none}.campaign-copy{padding:20px}.campaign-copy h2{font-size:30px}.product-grid:not(.deal-track){grid-template-columns:1fr}.related-grid{grid-template-columns:1fr}.section-head{flex-wrap:wrap}.catalog-toolbar{grid-template-columns:1fr}.calendar-grid{grid-template-columns:1fr}}
/* Account / Sign in link (shopper accounts). Same weight as the Saved button; 44px touch target. */
.header-account{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid #c9cfc6;border-radius:24px;font-size:16px;font-weight:600;color:#242529;text-decoration:none;white-space:nowrap}.header-account:hover{background:#f3f6f1}@media(max-width:760px){.header-account{font-size:14px;min-height:40px;padding:0 10px}}
/* Affiliate compliance: "Ad" label next to every affiliate deal, the site-wide disclosure line, check time and voucher codes. */
.ad-badge{display:inline-flex;align-items:center;border:1px solid #9aa39a;border-radius:4px;padding:0 5px;margin-right:6px;font-size:11px;font-weight:700;line-height:1.5;letter-spacing:.3px;color:#242529;background:#fff;text-transform:uppercase;vertical-align:middle}
.deal-disclosure{font-size:13px;line-height:1.5;color:#5d635c;margin:0 0 12px}.deal-disclosure a,.purchase-panel>small a{color:inherit;text-decoration:underline}
.product-checked{display:flex;flex-direction:column;gap:2px;margin:0 0 6px}.product-checked small{font-size:12px;color:#5d635c}
.voucher-code{display:inline-block;font-size:13px;border:1px dashed #9aa39a;border-radius:6px;padding:2px 8px;margin:6px 0}.voucher-code strong{font-family:ui-monospace,Menlo,monospace;letter-spacing:.5px}
.offer-ends{font-size:12px;color:#5d635c;margin:8px 0 0}
