/* Modern Storefront — approved composition A.
 * Compatibility rules remain in budsmaster.css. This layer styles theme-owned
 * surfaces without changing gallery, slider or extension layout mechanics.
 */
@font-face{
  font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;
  src:url('../fonts/archivo-latin-ext-variable.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;
  src:url('../fonts/archivo-latin-variable.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root{
  --bm-bg:#f6f6f6;--bm-bg-deep:#141414;--bm-surface:#fff;--bm-surface-2:#f1f1f1;
  --bm-ink:#141414;--bm-ink-soft:#595959;--bm-line:#dedede;--bm-plate:#fafafa;
  --bm-lime:#141414;--bm-lime-2:#343434;--bm-lime-deep:#000;--bm-signal:#d4ff27;
  --bm-radius:8px;--bm-store-width:1440px;
}
body.bm-body{background:#fff;color:#141414;font-family:Archivo,system-ui,sans-serif}
body.bm-body .bm-wrap{width:min(var(--bm-store-width),93vw)}
body.bm-body :is(h1,h2,h3,h4){font-stretch:100%;letter-spacing:-.025em}
body.bm-body ::selection{background:var(--bm-signal);color:#141414}
body.bm-body :is(input,textarea){caret-color:#141414}
body.bm-body input::placeholder,body.bm-body textarea::placeholder{color:#616161;opacity:1}
body.bm-body :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #141414;outline-offset:3px}
body.bm-body :is(.bm-btn,.bm-prod__cart .button){border-radius:8px}
body.bm-body :is(.bm-btn--dark,.bm-prod__cart .button){background:#141414;color:#fff}
body.bm-body :is(.bm-btn--dark,.bm-prod__cart .button):hover{background:#343434;color:#fff}

/* Slim facts strip; the first fact remains visible at phone sizes. */
.bm-topbar{--bm-ink:#141414;--bm-ink-soft:#141414;--bm-lime:#141414;background:#f6f6f6;color:#141414;border:0;font-size:.8rem}
.bm-topbar .bm-store-facts{min-height:30px;padding-block:3px;gap:1rem;justify-content:space-between}
.bm-store-facts>span{display:flex;align-items:center;gap:.6rem}
.bm-store-facts svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none;stroke-linejoin:round}

/* The white masthead puts search between the wordmark and account/cart. */
.bm-header{--bm-ink:#141414;--bm-ink-soft:#595959;--bm-line:#dedede;--bm-lime:#141414;border-bottom:1px solid #ededed;background:#fff}
.bm-header .bm-header__main{grid-template-columns:minmax(250px,1fr) minmax(300px,480px) minmax(150px,1fr);gap:2rem;padding-block:14px 4px;min-height:66px}
.bm-header .bm-logo{gap:.45rem;min-width:0}
.bm-header .bm-logo b{font-size:1.7rem;font-stretch:100%;letter-spacing:-.035em;white-space:nowrap}
.bm-header .bm-logo b span{color:#141414}
.bm-header .bm-logo small{font-size:.5rem;letter-spacing:.3em;font-weight:500;color:#343434;margin-top:5px}
.bm-header .bm-logo>svg{flex:none;width:37px}
.bm-header .bm-header__actions{justify-content:flex-end;gap:20px}
body.bm-body .bm-header .bm-searchform input.bm-searchform__input{height:44px;border:1px solid #c8c8c8;border-right:0;border-radius:24px 0 0 24px;background:#f6f6f6;padding:.65rem 1.1rem;font-size:.9rem;color:#141414}
.bm-header .bm-searchform__submit{height:44px;flex-basis:46px;min-width:46px;width:46px;border:1px solid #c8c8c8;border-left:0;border-radius:0 24px 24px 0;background:#f6f6f6;color:#141414}
.bm-header .bm-searchform__submit:hover{background:#e8e8e8;color:#141414}
.bm-header .bm-cart,.bm-header .bm-header__account{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;height:44px;color:#141414;background:transparent;border:0;border-radius:4px}
.bm-header .bm-header__account svg{height:25px;width:25px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.bm-header .bm-cart>svg{height:25px;width:25px}
.bm-header .bm-cart__n{background:#d4ff27;color:#141414}
.bm-header .bm-cart:hover,.bm-header .bm-header__account:hover{background:#f1f1f1;color:#141414}
.bm-store-navrow{background:#fff;border:0}
.bm-header .bm-store-navrow .bm-wrap{justify-content:center;padding-block:0;gap:0}
.bm-store-navrow .bm-nav__list{gap:2rem}
body.bm-body .bm-store-navrow .bm-nav__list a{color:#141414;font-size:.94rem;font-weight:600;min-height:36px}
body.bm-body .bm-store-navrow .bm-nav__list a:hover,
body.bm-body .bm-store-navrow .bm-nav__list .current-menu-item>a{color:#141414;text-decoration:underline;text-underline-offset:5px}
.bm-store-navrow .sub-menu{background:#fff;border-color:#dedede;border-radius:8px}
body.bm-body .bm-store-navrow a:focus-visible{outline-color:#141414}

/* Measured comp: campaign y129 h306, photographic right region x620 w916. */
.bm-campaign{display:grid;grid-template-columns:40.4% minmax(0,1fr);background:#f6f6f6;min-height:306px}
.bm-campaign__copy{align-self:center;padding:16px 24px 16px max(3.5vw,calc((100vw - var(--bm-store-width))/2));min-width:0}
body.bm-body .bm-campaign h1{font-size:clamp(2.2rem,3.4vw,3.25rem);line-height:1;letter-spacing:-.035em;font-weight:900;color:#080808;max-width:22ch;margin:0 0 12px;text-wrap:balance}
.bm-campaign__copy>p{color:#343434;font-size:.95rem;line-height:1.45;max-width:60ch;margin:0 0 12px}
.bm-campaign .bm-ctas{gap:16px;margin:0;align-items:center;flex-wrap:wrap}
.bm-campaign .bm-btn{min-height:48px;padding:11px 22px;font-size:1rem;gap:16px}
.bm-campaign .bm-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
body.bm-body .bm-campaign__text{color:#141414;font-size:.88rem;font-weight:650;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}
.bm-campaign__media{overflow:hidden;display:flex;align-items:flex-end;background:#cae934;min-width:0}
.bm-campaign__image{width:100%;height:100%;min-height:306px;object-fit:cover;object-position:center}

/* Six photo categories, captions below. The controls stay outside the photos. */
.bm-storefront-home .bm-category-market{padding:20px 0 12px}
.bm-storefront-home .bm-category-shelf{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.bm-storefront-home .bm-category-tile{min-width:0;text-align:center;text-decoration:none;color:#141414}
.bm-storefront-home .bm-category-tile__media{aspect-ratio:1.58;background:#f6f6f6;border:0;border-radius:4px;overflow:hidden}
.bm-storefront-home .bm-category-tile__media img{width:100%;height:100%;object-fit:cover;padding:0;transform:none;transition:none}
.bm-storefront-home .bm-category-tile strong{display:block;margin:7px 0 0;font-size:1.05rem;font-weight:700}
.bm-storefront-home .bm-category-tile:hover strong{text-decoration:underline;text-underline-offset:4px}
.bm-category-market__controls{justify-content:flex-end;margin-top:8px}

/* Shared product cards always retain WooCommerce's actual facts and actions. */
.bm-storefront-home .bm-merch{padding:18px 0 24px;border:0;background:#fff}
.bm-storefront-home .bm-market-heading{margin-bottom:14px;align-items:flex-end}
.bm-market-heading h2{font-size:clamp(1.65rem,2.6vw,2.35rem);line-height:1.12;font-weight:800}
.bm-market-heading a{font-weight:500;text-decoration:none}
.bm-market-heading a:hover{text-decoration:underline;text-underline-offset:4px}
ul.products.bm-product-rail{gap:18px}
body.bm-body .bm-prod{border:1px solid #e2e2e2;border-radius:8px;background:#fff;transition:border-color .18s ease}
body.bm-body .bm-prod:hover{border-color:#737373;transform:none}
body.bm-body .bm-prod__media{position:relative;background:#fafafa;aspect-ratio:1.5;border-radius:7px 7px 0 0}
body.bm-body .bm-prod__media img{padding:4%;object-fit:contain}
body.bm-body .bm-prod__media>img.wp-post-image{position:absolute;inset:0;width:100%;height:100%;min-height:0}
body.bm-body .bm-prod__body{padding:12px 14px 10px;gap:4px}
body.bm-body .bm-prod__type{display:none}
body.bm-body .bm-prod__title{font-size:1rem;line-height:1.3;font-weight:750;min-height:0;letter-spacing:-.015em}
body.bm-body .bm-prod__facts{font-size:.75rem;min-height:1.2em;color:#595959}
body.bm-body .bm-prod__price{margin-top:4px;min-height:1.5rem;font-variant-numeric:tabular-nums}
body.bm-body .bm-prod__price small{color:#595959}
body.bm-body .bm-prod__cart{padding:0 14px 14px}
body.bm-body .bm-prod__cart .button{min-height:44px;font-size:.83rem;font-weight:650}
body.bm-body .bm-rail-control{border-color:#8a8a8a;border-radius:50%;background:#fff;color:#141414}
body.bm-body .bm-rail-control:hover:not(:disabled){background:#141414;color:#fff;border-color:#141414}
.bm-rail-control:disabled{opacity:.45}
.bm-category-shelf,ul.products.bm-product-rail{scrollbar-color:#737373 #f1f1f1;scrollbar-width:thin}

/* Remaining storefront sections use the same white ground and light rules. */
.bm-market-banner .bm-wrap{background:#f6f6f6;color:#141414;border-block:1px solid #dedede;padding:24px 28px}
body.bm-body .bm-market-banner h2{color:#141414;font-size:clamp(1.5rem,2.3vw,2rem)}
.bm-market-banner p{color:#595959}
.bm-market-banner .bm-btn--signal{background:#141414;color:#fff}
.bm-delivery-market,.bm-help-market{background:#fff;border-color:#dedede}
.bm-help-market__grid{padding-block:10px}
.bm-learning-links{border-color:#dedede}
.bm-learning-link{display:flex;flex-direction:column;min-height:0;background:#fff;border:1px solid #e2e2e2;border-radius:8px}
.bm-learning-link>img{position:static;aspect-ratio:2;height:auto;object-fit:cover;padding:0;transition:none}
.bm-learning-link>span{position:static;background:#fff;border:0;padding:20px}
.bm-learning-link small{font-size:.85rem;font-weight:500;text-transform:none;letter-spacing:0;color:#595959}
.bm-learning-link strong{font-size:1.2rem;max-width:30ch}
.bm-learning-link:hover>img{transform:none}

/* Operate / Read page families: compact white introductions and clear controls. */
.bm-shophead{background:#fff;border-bottom:1px solid #dedede;padding:28px 0 24px}
body.bm-body .bm-shophead__title{font-size:clamp(2rem,3.4vw,3.1rem);font-weight:800;letter-spacing:-.03em}
.bm-shophead__title em{box-shadow:none}
.bm-shophead__art{border:0;border-radius:8px;overflow:hidden;height:180px;background:#f6f6f6}
.bm-shophead__art img{padding:0;object-fit:cover}
body.bm-body .bm-chip{border-radius:6px;border-color:#b0b0b0;color:#343434;background:#fff}
body.bm-body .bm-chip[aria-current=page]{background:#141414;color:#fff;border-color:#141414}
.bm-toolbar select{border-radius:6px}
body.bm-body .bm-reading-hero,.bm-content-hero,.bm-delivery-hero,.bm-guide-hero,.bm-cityhero{background:#fff;color:#141414}
body.bm-body .bm-guide-hero h1{color:#141414;max-width:24ch;letter-spacing:-.03em}
.bm-guide-hero .bm-crumbs,.bm-guide-hero .bm-crumbs a,.bm-guide-hero .bm-crumbs span,.bm-guide-hero__copy>p{color:#595959}
.bm-guide-hero .bm-inline-actions a{color:#141414}
.bm-library,.bm-contact-flow,.bm-guide-stories{background:#f6f6f6}
body.bm-body .bm-content-hero h1,body.bm-body .bm-reading-hero h1{font-weight:800;letter-spacing:-.03em}
.bm-guide-category{background:#fff;border-color:#e2e2e2;border-radius:8px}
.bm-guide-category__media{background:#f6f6f6}
.bm-guide-category__media img{padding:0;object-fit:cover;transition:none}
.bm-guide-category:hover img{transform:none}
/* A figure inside the reading sidebar also carries bm-wrap. Keep its width
 * within that column instead of inheriting the outer page's wide wrapper. */
body.bm-body .bm-reading-aside .bm-reading-image.bm-wrap{width:100%;margin-inline:0}
/* Preserve WooCommerce's lightbox behavior and accessible name; only replace
 * its default emoji with the same line-icon language as the masthead. */
body.bm-body .bm-product .woocommerce-product-gallery__trigger{font-size:0;background:#fff;color:#141414;border-radius:8px}
.bm-product .woocommerce-product-gallery__trigger::before{content:"";display:block;width:24px;height:24px;background:center/24px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23141414' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5M10.5 7.5v6m-3-3h6'/%3E%3C/svg%3E")}
.bm-guide-decision,.bm-product-learn{background:#f6f6f6;border-block:1px solid #dedede}
body.bm-body .bm-guide-decision .bm-btn--signal{background:#141414;color:#fff}
body.bm-body .bm-library-search input{border:1px solid #8a8a8a;border-radius:8px;background:#fff;color:#141414;font-weight:400}
.bm-account-page .woocommerce-MyAccount-navigation .is-active a{background:#141414;color:#fff}
body.bm-body .bm-woo-page__title{font-size:clamp(2rem,3.4vw,3.1rem);letter-spacing:-.03em}
.bm-woo-page :is(.woocommerce-info,.woocommerce-message){border-top-color:#141414;background:#f6f6f6;color:#141414}
.bm-woo-page .wc-block-grid__product-image img{max-height:240px;object-fit:contain}

/* Rewards remain editable page content; both rates keep their separate labels. */
.bm-rewards-page .bm-rewards-title,
.bm-rewards-page .bm-rewards-equation,
.bm-rewards-page .bm-rewards-basis{background:#fff;color:#141414}
body.bm-body .bm-rewards-page .bm-rewards-title h1,
body.bm-body .bm-rewards-equation__copy h2,
body.bm-body .bm-rewards-basis strong{color:#141414}
body.bm-body .bm-rewards-equation__copy p,
body.bm-body .bm-rewards-basis span{color:#595959}
.bm-rewards-page .bm-rewards-rate{background:#f6f6f6;border:1px solid #dedede;border-radius:8px}
.bm-rewards-page .bm-rewards-rate.is-signal{background:#d4ff27;border-color:#d4ff27}
.bm-rewards-page .bm-rewards-basis p{border-color:#dedede}
.bm-rewards-page .bm-rewards-steps,
.bm-rewards-page .bm-rewards-support{background:#f6f6f6}
.bm-rewards-page .bm-rewards-join{background:#f6f6f6;border-block:1px solid #dedede}

/* Quiet footer with the same navigation, payment, address and policy content. */
.bm-footer{--bm-ink:#141414;--bm-ink-soft:#595959;--bm-lime:#141414;--bm-line:#dedede;background:#f6f6f6;color:#595959;border-top:1px solid #dedede}
.bm-footer .bm-logo b,.bm-footer .bm-logo b span{color:#141414;font-stretch:100%;font-size:1.5rem}
body.bm-body .bm-footer h4{color:#141414;letter-spacing:0;font-size:1rem;text-transform:none;font-weight:750}
body.bm-body .bm-footer a{color:#595959}
body.bm-body .bm-footer .bm-footer__phone a{color:#141414;font-size:1.4rem}
body.bm-body .bm-footer a:hover{color:#141414;text-decoration:underline;text-underline-offset:4px}

/* One bounded reveal; the image and all copy are visible without animation. */
@media(prefers-reduced-motion:no-preference){
  .bm-campaign__image{animation:bm-campaign-reveal .7s cubic-bezier(.16,1,.3,1) both}
  @keyframes bm-campaign-reveal{from{clip-path:inset(0 3% 0 0);transform:translateX(8px)}to{clip-path:inset(0);transform:translateX(0)}}
}
@media(min-width:1081px){.bm-storefront-home .bm-category-market__controls{display:none}}
@media(max-width:1080px){
  .bm-header .bm-header__main{grid-template-columns:auto minmax(240px,1fr) auto;gap:20px}
  .bm-header .bm-logo b{font-size:1.3rem}
  .bm-header .bm-header__actions{gap:8px}
  .bm-campaign{grid-template-columns:46% minmax(0,1fr)}
  body.bm-body .bm-campaign h1{font-size:2.5rem}
  .bm-campaign__copy{padding-block:24px}
  .bm-storefront-home .bm-category-shelf{display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding-bottom:4px}
  .bm-storefront-home .bm-category-tile{flex:0 0 calc((100% - 42px)/4.25);scroll-snap-align:start}
}
@media(min-width:761px) and (max-width:1080px){
  .bm-campaign{grid-template-columns:minmax(0,1fr)}
  .bm-campaign__copy{padding-inline:3.5vw}
  .bm-campaign h1{max-width:28ch}
  .bm-campaign__media{aspect-ratio:2.99}
  .bm-campaign__image{min-height:0;height:100%;object-fit:contain}
}
@media(max-width:980px){
  .bm-store-facts>span:last-child{display:none}
  .bm-header .bm-header__main{padding-block:12px}
  .bm-header .bm-logo small{letter-spacing:.16em}
  .bm-header .bm-header__account{display:none}
  .bm-header .bm-burger{border:0;width:44px;height:44px}
}
@media(max-width:760px){
  body.bm-body .bm-wrap{width:calc(100% - max(1rem,env(safe-area-inset-left)) - max(1rem,env(safe-area-inset-right)));margin-inline:auto}
  .bm-topbar{display:block;font-size:.72rem}
  .bm-topbar .bm-store-facts{justify-content:center;min-height:28px}
  .bm-store-facts>span:not(:first-child){display:none}
  .bm-store-facts svg{width:17px;height:17px}
  .bm-header .bm-header__main{grid-template-columns:minmax(0,1fr) auto;gap:9px;padding-block:9px}
  .bm-header .bm-logo b{font-size:1.25rem;letter-spacing:-.025em}
  .bm-header .bm-logo>svg{width:27px;height:32px}
  .bm-header .bm-logo small{display:none}
  .bm-header .bm-header__actions{gap:2px}
  .bm-header .bm-store-search{grid-column:1/-1}
  body.bm-body .bm-header .bm-searchform input.bm-searchform__input{font-size:1rem}
  .bm-campaign{grid-template-columns:minmax(0,1fr);min-height:0;background:#f6f6f6}
  .bm-campaign__copy{padding:22px max(1rem,env(safe-area-inset-left)) 20px}
  body.bm-body .bm-campaign h1{font-size:clamp(1.9rem,8.8vw,2.6rem);line-height:1.06;max-width:23ch;margin-bottom:12px;text-wrap:balance}
  .bm-campaign__copy>p{font-size:.9rem;line-height:1.5;margin-bottom:16px;max-width:60ch}
  .bm-campaign .bm-ctas{gap:18px}
  .bm-campaign .bm-btn{font-size:.9rem;min-height:46px;padding:10px 16px;gap:10px}
  .bm-campaign__media{aspect-ratio:2.99}
  .bm-campaign__image{min-height:0;height:100%;object-fit:contain}
  .bm-storefront-home .bm-category-market{padding:16px 0 4px}
  .bm-storefront-home .bm-category-shelf{gap:12px}
  .bm-storefront-home .bm-category-tile{flex:0 0 38%;min-width:122px}
  .bm-storefront-home .bm-category-tile strong{font-size:.9rem;margin-top:6px}
  .bm-storefront-home .bm-merch{padding:16px 0 24px}
  .bm-storefront-home .bm-market-heading{margin-bottom:12px;gap:8px;align-items:center}
  .bm-market-heading h2{font-size:1.65rem}
  .bm-rail-actions{gap:12px}
  .bm-rail-actions>a{font-size:.8rem}
  ul.products.bm-product-rail{gap:12px;padding-bottom:6px}
  ul.products.bm-product-rail .bm-prod,ul.products.bm-product-rail .bm-prod:nth-child(5){flex:0 0 68%;min-width:0}
  .bm-storefront-home .bm-category-market__controls{margin-top:6px}
  body.bm-body .bm-prod__media{aspect-ratio:1.15}
  body.bm-body .bm-prod__body{padding:10px 12px}
  body.bm-body .bm-prod__cart{padding:0 12px 12px}
  .bm-results .bm-prod__media{aspect-ratio:1}
  body.bm-body .bm-results .bm-prod__title{font-size:.9rem}
  body.bm-body .bm-results .bm-prod__body{padding:10px}
  body.bm-body .bm-results .bm-prod__cart{padding:0 10px 10px}
  .bm-market-banner .bm-wrap{padding:20px 16px;gap:16px}
  .bm-learning-link,.bm-learning-link:last-child{min-height:0;flex-basis:82vw}
  .bm-learning-link>img{height:auto;aspect-ratio:1.8}
  body.bm-body .bm-shophead__title,body.bm-body .bm-woo-page__title{font-size:2rem}
  .bm-shophead{padding:20px 0}
  .bm-footer .bm-logo b{font-size:1.3rem}
}
@media(max-width:360px){
  .bm-header .bm-logo b{font-size:1.06rem}
  .bm-header .bm-logo>svg{width:24px}
  .bm-campaign .bm-ctas{gap:10px}
  .bm-campaign .bm-btn{padding-inline:12px}
  .bm-campaign__text{font-size:.8rem}
}
@media(forced-colors:active){
  body.bm-body :is(a,button,input,select,textarea,summary):focus-visible{outline-color:Highlight}
}
