/* Readable product decisions, consistent measures, and short buying paths. */
.hero-actions {display:flex;flex-wrap:wrap;gap:12px;margin-block:24px;}
.market-hero {padding-block:32px 40px;gap:40px;}
.market-hero h1 {font-size:56px;line-height:72px;letter-spacing:0px;}
.market-hero-visual {min-height:390px;}
.category-section {padding-block:24px 32px;}
.category-grid {grid-template-columns:repeat(5,minmax(0,1fr));}
.category-tile {padding:16px;}
.home-catalog {padding-block:28px 44px;}
.discovery-home {padding-block:32px;gap:32px;margin-block:24px 40px;}
.discovery-home h2 {font-size:32px;line-height:48px;letter-spacing:0px;}
.discovery-home-options button {padding:16px;}
.card-basis-controls {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-block:8px 12px;font-size:var(--fs-xs);min-height:48px;}
.card-basis-controls>span {color:var(--muted);margin-inline-end:4px;}
.card-basis-controls button {min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);}
.card-basis-controls button[aria-pressed=true] {color:var(--green);border-color:var(--green);background:var(--soft);font-weight:650;}
.market-card {display:flex;flex-direction:column;min-width:0;}
.market-card .card-identity {min-height:0;padding-block:16px 8px;}
.market-card .product-unit {line-height:24px;min-height:38px;font-size:14px;}
.market-card .market-card-facts {margin-block:auto 8px;padding-block:8px;min-height:76px;}
.market-card .card-basis {margin:0 0 8px;line-height:20px;color:var(--ink);font-size:12px;}
.market-card .card-basis strong {font-size:var(--fs-xs);font-weight:600;}
.market-card .card-basis span {display:block;font-size:12px;color:var(--muted);line-height:20px;}
.market-card .card-macros {gap:8px;line-height:20px;font-size:12px;}
.market-card .card-macros span {font-size:var(--fs-xs);}
.market-card .card-bottom {margin-top:4px;}
.card-unit-price {font-size:12px;color:var(--muted);margin-block:8px 0;line-height:20px;}
.policy-review-tag {font-size:12px;color:var(--muted);margin-block:0 8px;padding-inline-start:8px;border-inline-start:2px solid var(--line);line-height:20px;}
.market-card .product-photo.market-pack {height:220px;background:#fff;}
.market-card .product-photo.market-pack>a {padding:32px 16px 24px;}
.market-card .product-photo.market-pack img,.market-card:hover .product-photo.market-pack img,.market-card .product-photo.market-pack.pack-jar img,.market-card:hover .product-photo.market-pack.pack-jar img {max-height:158px;object-fit:contain;transform:none;mix-blend-mode:normal;}
.search-interpretation {background:var(--soft);border-inline-start:3px solid var(--green);padding:12px 16px;margin-block:12px;font-size:var(--fs-sm);line-height:1.9;}
.match-reason {display:flex;align-items:flex-start;gap:8px;color:var(--green);font-size:var(--fs-xs);line-height:1.9;margin-block:8px;}
.match-reason svg {flex:0 0 16px;width:16px;height:16px;margin-top:4px;}
.discovery-preferences {display:grid;gap:12px;margin-block:20px;padding-block:20px;border-block:1px solid var(--line);}
.discovery-preferences h3 {font-size:var(--fs-base);margin-bottom:8px;line-height:24px;letter-spacing:0px;}
.discovery-preferences label {font-size:var(--fs-sm);}
.discovery-preferences input,.discovery-preferences select {width:100%;min-height:48px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:12px 12px;font:inherit;}
.category-scroll-hint {display:none;color:var(--muted);font-size:var(--fs-xs);}
.service-preview {display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:40px;border-top:1px solid var(--line);}
.service-preview h2 {font-size:var(--fs-xl);margin-bottom:12px;letter-spacing:0px;}
.service-preview p {max-width:670px;line-height:2;color:var(--muted);}
.service-preview .button {flex-shrink:0;}
.help-page {padding-block:40px 72px;max-width:1000px;}
.help-page h1 {margin-block:12px;font-size:48px;line-height:64px;letter-spacing:0px;}
.help-intro {max-width:740px;line-height:28px;color:var(--muted);font-size:16px;}
.help-nav {display:flex;flex-wrap:wrap;gap:12px;margin-block:24px;}
.help-nav a {padding:12px 16px;border:1px solid var(--line);border-radius:12px;min-height:44px;}
.help-page section {border-top:1px solid var(--line);padding-block:32px;scroll-margin-top:calc(var(--site-header-height) + 16px);}
.help-page section h2 {font-size:var(--fs-xl);margin-bottom:16px;letter-spacing:0px;}
.help-page section p {line-height:2;margin-block:12px;}
.help-page details {border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-block:12px;padding:0 20px;}
.help-page summary {cursor:pointer;padding-block:16px;line-height:1.9;}
.pending-status {display:inline-block;border:1px solid var(--line);border-radius:8px;font-size:var(--fs-xs);padding:4px 8px;margin-inline-end:8px;}
.header-search.icon-button {width:44px;height:44px;}
.mobile-navigation a {display:inline-flex;align-items:center;min-height:44px;}
#product-page .pdp-top {grid-template-areas:'gallery heading' 'gallery purchase';grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 40px;}
#product-page .pdp-heading {grid-area:heading;min-width:0;}
#product-page .pdp-heading h1 {font-size:32px;line-height:48px;margin-bottom:8px;letter-spacing:0px;}
#product-page .pdp-package {font-size:var(--fs-sm);color:var(--muted);}
#product-page .pdp-gallery {grid-area:gallery;}
#product-page .pdp-purchase {grid-area:purchase;min-width:0;}
#product-page .pdp-buy-panel {padding:20px;}
#product-page .pdp-price {margin-bottom:8px;}
.pdp-unit-price {color:var(--muted);font-size:var(--fs-xs);margin-bottom:16px;}
#product-page .pdp-essentials {margin-top:20px;}
#product-page .pdp-intro {margin-block:16px;font-size:16px;line-height:28px;}
#product-page .variant-disclosure {border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:16px;}
#product-page .variant-disclosure>summary {display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 16px;min-height:54px;cursor:pointer;font-size:var(--fs-xs);}
#product-page .variant-disclosure summary strong {font-size:var(--fs-sm);}
#product-page .variant-disclosure summary>span:last-child {display:inline-flex;align-items:center;gap:8px;margin-inline-start:auto;color:var(--green);}
#product-page .variant-picker {padding:16px;margin:0;border-top:1px solid var(--line);}
#product-page .pdp-delivery-link {display:flex;align-items:center;gap:8px;margin-top:12px;font-size:var(--fs-xs);min-height:36px;}
#product-page .pdp-delivery-link svg {width:16px;height:16px;}
#product-page .choice-notes {margin-block:16px;padding:12px 16px;}
#product-page .choice-notes summary,#product-page .family-notes summary {cursor:pointer;font-size:var(--fs-sm);font-weight:600;min-height:40px;padding-block:8px;}
#product-page .choice-notes ul {margin-top:8px;}
#product-page .family-notes {border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin-top:24px;}
#product-page .family-notes p {margin-top:12px;}
.assortment-review {padding:16px;border:1px solid var(--line);border-radius:14px;margin-top:20px;background:var(--soft);font-size:var(--fs-sm);line-height:2;}
.assortment-review h3 {display:flex;align-items:center;gap:8px;font-size:20px;line-height:28px;letter-spacing:0px;}
.assortment-review p {margin-block:8px;}
.assortment-review a {text-decoration:underline;text-underline-offset:4px;}
@media(max-width:800px){
 .market-hero {gap:24px;padding-block:24px 28px;}
 .market-hero-visual {min-height:330px;}
 .category-grid {display:flex;overflow-x:auto;gap:12px;padding-bottom:12px;scroll-snap-type:x proximity;}
 .category-tile {flex:0 0 150px;scroll-snap-align:start;}
 .category-scroll-hint {display:block;margin-top:16px;}
 .category-navigation {padding-bottom:8px;}
 .category-navigation a {min-height:44px;}
 .service-preview {display:block;}
 .service-preview .button {margin-top:20px;}
 .header-actions {gap:8px;}
 .header-actions .header-search.icon-button {width:44px;min-width:44px;height:44px;}
 .header-actions .cart-button {min-height:44px;min-width:44px;}
 .hero-actions .button {flex:1;min-width:125px;font-size:14px;line-height:20px;}
 #product-page .pdp-top {grid-template-areas:'heading' 'purchase' 'gallery';grid-template-columns:minmax(0,1fr);gap:16px;}
 #product-page .pdp-gallery {position:static;}
 #product-page .pdp-main-photo {block-size:280px;}
 #product-page .back-to-results {margin-bottom:12px;}
 #product-page .pdp-heading h1 {font-size:24px;line-height:36px;letter-spacing:0px;}
 #product-page .pdp-buy-panel {padding:16px;}
 #product-page .pdp-essentials {margin-top:16px;}
 #product-page .pdp-quantity button {min-width:44px;min-height:44px;inline-size:44px;block-size:44px;}
 #product-page .pdp-secondary-actions button {min-height:44px;}
 .market-card .product-photo.market-pack {height:190px;}
 .market-card .product-photo.market-pack>a {padding:36px 16px 28px;}
 .market-card .product-photo.market-pack img {max-height:130px;}
 .market-card .card-identity h3 {font-size:16px;line-height:24px;letter-spacing:0px;}
 .market-card .card-macros {display:grid;gap:8px;font-size:12px;line-height:20px;}
 .market-card .card-unit-price {font-size:12px;line-height:20px;}
 .market-card .product-unit {font-size:14px;line-height:24px;}
 .discovery-home {display:block;}
 .discovery-home-options {margin-top:20px;}
 .card-basis-controls {font-size:12px;margin-block:8px 12px;min-height:48px;}
 .card-basis-controls>span {width:auto;}
 .help-page {padding-block:24px 48px;}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto;}}
.market-hero h1 {font-size:56px;line-height:72px;letter-spacing:0px;}
.market-hero-copy .hero-description {line-height:28px;font-size:16px;}
.card-coverage-note {font-size:var(--fs-xs);line-height:1.8;color:var(--muted);margin-block:4px 8px;}
.pdp-heading-thumb {display:none;}
@media(max-width:800px){
 #product-page .pdp-heading {display:grid;grid-template-columns:minmax(0,1fr) 88px;grid-template-areas:'kicker thumb' 'title thumb' 'package thumb';column-gap:12px;align-items:start;}
 #product-page .pdp-heading .pdp-kicker {grid-area:kicker;margin-bottom:8px;}
 #product-page .pdp-heading h1 {grid-area:title;font-size:24px;line-height:36px;letter-spacing:0px;}
 #product-page .pdp-heading .pdp-package {grid-area:package;}
 #product-page .pdp-heading-thumb {grid-area:thumb;display:grid;place-items:center;width:88px;height:110px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:8px;}
 .pdp-heading-thumb img {width:100%;height:100%;object-fit:contain;}
}
@media(max-width:800px){
 .hero-actions .button {white-space:nowrap;font-size:14px;gap:8px;padding-inline:12px;min-height:48px;line-height:20px;}
 .market-hero-visual {min-height:0;}
 .market-hero-visual .hero-shelf {height:170px;}
 .market-hero-visual .hero-shelf-one {height:160px;top:-5px;}
 .market-hero-visual .hero-shelf-two {height:185px;top:-14px;}
 .market-hero-visual .hero-shelf-three {height:78px;}
 .market-hero-visual .hero-shelf:after {bottom:18px;}
}

/* Explicit roles replace browser defaults and inherited display sizing. */
small {font-size:12px;line-height:20px;}
.market-card h3,.market-card .card-identity h3 {font-size:16px;line-height:24px;}
.market-card .product-unit {font-size:14px;line-height:24px;}
.market-card .card-macros strong {font-size:16px;line-height:24px;}
.market-card .select-product {min-height:44px;}
.pdp-buy-actions .pdp-add {font-size:16px;line-height:24px;}
.empty-results p {font-size:16px;line-height:28px;}
.empty-results .button {min-height:48px;font-size:14px;line-height:20px;}
.help-page section p {font-size:16px;line-height:28px;}
@media(max-width:800px){
 .market-hero h1 {font-size:40px;line-height:56px;}
 .discovery-home h2,.brand-edit h2 {font-size:24px;line-height:36px;}
 .help-page h1,.setup h1 {font-size:32px;line-height:48px;}
}

/* Catalog tools share one mobile row; desktop keeps its heading and sidebar. */
.footer-links a[href="/setup.html"] {display:none;}
.shop-results:has(#empty-results:not([hidden])) [data-card-basis-controls] {display:none;}
.shop-control-row {display:none;}
#toggle-shop-filters {display:none;}
.shop-control-row>label {display:flex;align-items:center;gap:8px;font-size:14px;line-height:20px;color:var(--muted);}
.shop-control-row select {min-height:44px;max-width:240px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:14px;line-height:20px;}
.shop-control-row .button {min-height:44px;font-size:14px;line-height:20px;padding:8px 12px;}
.shop-control-row [aria-pressed=true] {background:var(--lime);color:#214d3c;}
@media(max-width:800px){
 html {--site-header-height:116px;}
 .mobile-navigation {padding-block:0;gap:24px;}
 .shop-heading {margin-block:0 16px;}
 .shop-heading h1 {margin-bottom:4px;}
 .shop-search-form {margin-bottom:12px;}
 .shop-heading .eyebrow {display:none;}
 .shop-heading p:not(.eyebrow) {max-width:none;font-size:12px;line-height:20px;}
 .shop-page .category-scroll-hint {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
 .category-navigation {padding-bottom:8px;margin-bottom:4px;}
 .category-navigation a {min-height:44px;}
 .shop-control-row {display:grid;grid-template-columns:44px minmax(0,1fr) auto;min-height:48px;margin-block:0 8px;}
 #toggle-shop-filters {display:grid;place-items:center;width:44px;height:44px;padding:0;}
 .shop-control-row>label {min-width:0;}
 .shop-control-row select {width:100%;max-width:none;min-width:0;height:44px;}
 .shop-sort-label,.shop-filter-label,.shop-action-label {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
 .shop-control-row .shop-heading-actions {display:flex;flex-wrap:nowrap;max-width:none;gap:8px;}
 .shop-control-row .shop-heading-actions .button {width:44px;height:44px;padding:0;}
 .shop-control-row .button svg {width:20px;height:20px;}
 .shop-layout {gap:0;}
 .filter-sidebar:has(details:not([open])) {display:none;}
 .filter-sidebar:has(details[open]) {margin-block:0 12px;}
 .shop-result-toolbar {min-height:20px;margin-block:0;}
 .active-filters-row:has(.active-filters:empty):has(#reset-filters[hidden]) {display:none;}
 #shop-page .card-basis-controls {flex-wrap:nowrap;gap:8px;min-height:48px;margin-block:8px 12px;}
 #shop-page .card-basis-controls>span {width:auto;flex-shrink:0;margin-inline-end:0;}
 #shop-page .card-basis-controls button {min-width:0;white-space:nowrap;padding:8px;}
}
@media(max-width:380px){
 #shop-page .card-basis-controls>span {position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
}
