/* Bright in the Middle — component styles. Tokens come from theme.json. */
:root{
  --bitm-ink:var(--wp--preset--color--ink);
  --bitm-line:var(--wp--preset--color--line);
  --bitm-radius-sm:10px; --bitm-radius-md:18px; --bitm-radius-lg:28px;
  --bitm-shadow-pop:0 24px 60px -20px rgba(43,17,71,.35);
  --bitm-header-offset:var(--wp-admin--admin-bar--height, 0px);
}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
:where(h1,h2,h3,h4){text-wrap:balance}
:focus-visible{outline:3px solid var(--wp--preset--color--blue);outline-offset:3px;border-radius:6px}
img{height:auto}
.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;z-index:100000}

/* helpers */
.bitm-script{font-family:var(--wp--preset--font-family--script);font-size:1.6em;line-height:1;color:var(--wp--preset--color--pink-ink)}
.bitm-label,.bitm-label-heading,.bitm-footer__h{font-family:var(--wp--preset--font-family--label)!important;text-transform:lowercase;letter-spacing:.03em}
.bitm-label-heading{font-size:1.25rem!important}
.wp-block-button.is-style-outline>.wp-block-button__link{box-shadow:none;border:2px solid currentColor;background:transparent;color:var(--wp--preset--color--ink)}
.wp-element-button,.wp-block-button__link{transition:transform .15s,box-shadow .15s}
.wp-element-button:hover,.wp-block-button__link:hover{transform:translateY(-1px)}
.wp-element-button:active,.wp-block-button__link:active{transform:translateY(3px);box-shadow:0 2px 0 var(--wp--preset--color--purple-ink)}

/* ---------- promo bar ---------- */
.bitm-promo{background:var(--wp--preset--color--earth);color:var(--bitm-ink);font-size:15px;font-weight:600}
.bitm-promo__in{max-width:1360px;margin-inline:auto;display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 16px;text-align:center}
.bitm-promo a{background:var(--bitm-ink);color:#fff;text-decoration:none;padding:4px 14px;border-radius:999px;font-family:var(--wp--preset--font-family--label);font-size:15px;text-transform:lowercase}
.bitm-promo a:hover,.bitm-promo a:focus{background:var(--wp--preset--color--purple-deep);color:#fff}

/* ---------- header ---------- */
.bitm-site-header{position:sticky;top:var(--bitm-header-offset);z-index:50}
@media (max-width:600px){.bitm-site-header{position:relative;top:auto}}
.bitm-header{background:rgba(255,255,255,.96)!important;backdrop-filter:saturate(1.4) blur(8px)}
.bitm-header__row{gap:18px;width:100%}
.bitm-header__logo{flex:none}
.bitm-header__logo img{width:168px;height:auto}
.bitm-mainnav{flex:1 1 auto}
.bitm-mainnav .wp-block-navigation-item__content{padding:8px 8px!important;border-radius:999px;text-decoration:none;white-space:nowrap}
.bitm-mainnav .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content:hover{background:var(--wp--preset--color--mist)}
.bitm-mainnav .wp-block-navigation__submenu-container{border:1px solid var(--bitm-line)!important;border-radius:var(--bitm-radius-md);box-shadow:var(--bitm-shadow-pop);padding:10px!important;min-width:230px!important;font-family:var(--wp--preset--font-family--body);text-transform:none;font-size:15px}
.bitm-mainnav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{border-radius:8px;padding:6px 10px!important}
.bitm-mainnav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:var(--wp--preset--color--mist)}
.bitm-mainnav .is-life>a{color:var(--wp--preset--color--life-ink)!important;font-weight:700}
.bitm-mainnav .is-earth>a{color:var(--wp--preset--color--earth-ink)!important;font-weight:700}
.bitm-mainnav .is-phys>a{color:var(--wp--preset--color--phys-ink)!important;font-weight:700}
.bitm-mainnav .wp-block-navigation__responsive-container-open{border:1.5px solid var(--bitm-line);border-radius:999px;padding:7px 12px;background:#fff}
.bitm-mainnav .wp-block-navigation__responsive-container.is-menu-open{padding:24px 20px}
.bitm-mainnav .is-menu-open .wp-block-navigation__container{gap:6px!important;font-size:20px}
.bitm-mainnav .is-menu-open .wp-block-navigation__submenu-container{box-shadow:none;border:0!important;padding:0 0 6px 14px!important}
.bitm-header__tools{flex:none}
.bitm-header__search{min-width:210px;max-width:260px}
@media (max-width:1500px){.bitm-header__search{display:none}}
@media (min-width:600px) and (max-width:1180px){.bitm-mainnav{font-size:15px!important}.bitm-mainnav .wp-block-navigation-item__content{padding:8px 5px!important}}
/* 600–1100px: smaller logo so logo + nav + cart fit without sideways scroll (was 22px over at 1024) */
@media (min-width:600px) and (max-width:1100px){.bitm-header__logo img{width:136px}.bitm-header__row{gap:12px}}
.bitm-mainnav .wp-block-navigation__submenu-icon{margin-left:2px}
@media (max-width:600px){
  .bitm-header__logo img{width:132px}
  .bitm-mainnav{order:3;flex:none}
  .bitm-header__tools{order:2;margin-left:auto!important}
  .bitm-mainnav{margin-left:8px!important}
  .bitm-promo{font-size:13px}
  .bitm-promo__in{gap:8px;padding:6px 12px}
  .bitm-promo a{font-size:13px;padding:2px 10px}
}
/* "Shop by subject" mega panel (chunk 4): the nested subject submenus show as columns.
   Desktop only; the mobile overlay keeps the plain nested list. The panel centers under the nav. */
@media (min-width:600px){
  /* opens from just left of "shop by subject"; width leaves room for the logo column so it never runs off the right edge */
  .bitm-mainnav .bitm-mega>.wp-block-navigation__submenu-container{left:-40px!important}
  .bitm-mainnav .bitm-mega:hover>.wp-block-navigation__submenu-container,
  .bitm-mainnav .bitm-mega:focus-within>.wp-block-navigation__submenu-container,
  .bitm-mainnav .bitm-mega>.wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.1fr);gap:4px 18px;width:min(900px,calc(100vw - 220px))!important;padding:18px!important}
  .bitm-mega .bitm-mega__col{display:block!important}
  .bitm-mega .bitm-mega__col>.wp-block-navigation-item__content{display:block}
  .bitm-mega .bitm-mega__col>.wp-block-navigation-item__content{font-family:var(--wp--preset--font-family--display);font-size:19px;padding:4px 10px 6px!important;white-space:normal}
  .bitm-mega .bitm-mega__col>.wp-block-navigation-item__content:hover{background:none!important;text-decoration:underline}
  .bitm-mega .bitm-mega__col>.wp-block-navigation__submenu-icon,.bitm-mega .bitm-mega__col>.wp-block-navigation-submenu__toggle{display:none!important}
  .bitm-mega .bitm-mega__col>.wp-block-navigation__submenu-container{position:static!important;visibility:inherit!important;opacity:1!important;width:auto!important;min-width:0!important;height:auto!important;overflow:visible!important;border:0!important;box-shadow:none!important;padding:0!important;transform:none!important;background:transparent!important}
  .bitm-mega .bitm-mega__col .wp-block-navigation-item__content{white-space:normal;padding:4px 10px!important;font-size:15px}
  .bitm-mega .is-all>.wp-block-navigation-item__content{font-weight:700;color:var(--wp--preset--color--purple-deep)!important}
  .bitm-mega .is-deal{background:var(--wp--preset--color--purple-soft);border-radius:var(--bitm-radius-sm,12px);padding:4px 0 8px}
  .bitm-mega .is-deal>.wp-block-navigation-item__content{color:var(--wp--preset--color--purple-deep)!important}
}
@media (min-width:600px) and (max-width:1000px){
  /* nav sits on its own row here, "shop by subject" starts ~45-80px from the left: a narrower, 2-column panel */
  .bitm-mainnav .bitm-mega>.wp-block-navigation__submenu-container{left:-30px!important}
  .bitm-mainnav .bitm-mega>.wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container,
  .bitm-mainnav .bitm-mega:hover>.wp-block-navigation__submenu-container,
  .bitm-mainnav .bitm-mega:focus-within>.wp-block-navigation__submenu-container{width:min(540px,calc(100vw - 40px))!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
/* Phones: no backdrop-filter on the header. It makes the header the containing block for the
   fixed-position menu overlay, which squeezed the open menu into the 73px header bar (found in chunk 4). */
@media (max-width:599px){.bitm-header{backdrop-filter:none!important;background:#fff!important}}
.bitm-mainnav .is-menu-open .wp-block-navigation__container{align-items:flex-start!important}
.bitm-mainnav .is-menu-open .wp-block-navigation-item{align-items:flex-start!important}
.bitm-mainnav .is-menu-open .bitm-mega__col>.wp-block-navigation-item__content{font-weight:700;padding-top:10px!important}
/* 600–1000px: the nav drops to its own row under the logo and may wrap, so nothing runs off the right edge */
@media (min-width:600px) and (max-width:1000px){
  .bitm-header__row{flex-wrap:wrap!important;row-gap:4px!important}
  .bitm-mainnav{order:3;flex:1 1 100%!important}
  .bitm-mainnav .wp-block-navigation__container{flex-wrap:wrap!important;justify-content:center}
  .bitm-header__tools{margin-left:auto}
}
/* last top-level submenu (Account) opens leftward so it never overflows the viewport */
.bitm-mainnav .wp-block-navigation__container>.wp-block-navigation-item:last-child>.wp-block-navigation__submenu-container{left:auto;right:0}
/* mini cart as a dark pill */
.bitm-cartbtn .wc-block-mini-cart__button{background:var(--bitm-ink);color:#fff;border-radius:999px;padding:9px 14px;font-weight:700}
.bitm-cartbtn .wc-block-mini-cart__button:hover{background:var(--wp--preset--color--purple-deep);opacity:1}
.bitm-cartbtn .wc-block-mini-cart__badge{background:var(--wp--preset--color--pink);color:#fff;border:0}
.bitm-cartbtn .wc-block-mini-cart__icon{color:#fff}

/* ---------- footer ---------- */
.bitm-site-footer{margin-top:0}
.bitm-footer h2.bitm-footer__h{color:#fff;font-size:1.25rem;margin:0 0 10px}
.bitm-footer__list{list-style:none;padding:0;margin:0}
.bitm-footer__list li{padding:3px 0}
.bitm-footer a{text-decoration:none}
.bitm-footer a:hover{text-decoration:underline}
.bitm-footer__logo{background:#fff;border-radius:var(--bitm-radius-md);padding:12px;display:inline-block}
.bitm-footer__fine p{margin:0}
@media (max-width:781px){.bitm-footer__cols{display:grid!important;grid-template-columns:1fr 1fr}.bitm-footer__cols>.wp-block-column:first-child{grid-column:1/-1}}

/* ---------- content & legacy compatibility ---------- */
.bitm-page-title{margin-bottom:var(--wp--preset--spacing--40);font-size:clamp(2.25rem,4.5vw,3.25rem)!important}
.bitm-content>*+*{margin-block-start:1.1em}
.bitm-content :where(ul,ol){padding-left:1.3em}
.bitm-content .wp-block-image img{border-radius:var(--bitm-radius-sm)}
/* old Customizer rules centered legacy <h4>/<h5> intros; keep the shape but in the new fonts */
.bitm-content center{display:block;text-align:center}
/* Genesis Blocks: its spacer used a 30px hr divider */
.bitm-content .gb-block-spacer hr{border:0;background:transparent}
.bitm-content .gb-block-layout-column-gap-2{column-gap:2rem}
/* Genesis Blocks buttons and core file blocks pick up the brand button */
.bitm-content .gb-button,.bitm-content .wp-block-file__button{border-radius:999px}
/* embeds */
.bitm-content .wp-block-embed iframe{max-width:100%}
.bitm-content iframe[src*="youtube"],.bitm-content iframe[src*="vimeo"]{aspect-ratio:16/9;width:100%;height:auto}
/* ActiveCampaign forms on freebie pages */
.bitm-content ._form_wrapper,.bitm-content form[id^="_form_"]{max-width:560px;margin-inline:auto!important}

/* ---------- blog ---------- */
.bitm-with-sidebar{align-items:flex-start}
.bitm-with-sidebar__side{position:sticky;top:calc(var(--bitm-header-offset) + 110px)}
@media (max-width:781px){.bitm-with-sidebar__side{position:static}}
.bitm-sidebar .wp-block-search__input{border-radius:999px 0 0 999px;border-color:var(--bitm-line)}
.bitm-sidebar .wp-block-categories-dropdown select,.bitm-catselect select{width:100%;max-width:340px;border:1.5px solid var(--bitm-line);border-radius:999px;padding:8px 14px;font:inherit;background:#fff}
.bitm-card{height:100%}
.bitm-card .wp-block-post-featured-image img{transition:transform .2s}
.bitm-card:hover .wp-block-post-featured-image img{transform:scale(1.02)}
.bitm-card__title{margin:0}
.wp-block-post-navigation-link{margin-block:.4em}
.wp-block-post-navigation-link a{text-decoration:none}

/* ---------- WooCommerce (classic templates inside the block theme) ---------- */
.bitm-shopbody__filters{position:sticky;top:calc(var(--bitm-header-offset) + 110px);align-self:flex-start;max-height:calc(100vh - var(--bitm-header-offset) - 130px);overflow-y:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin}
@media (max-width:781px){.bitm-shopbody__filters{position:static;flex-basis:100%!important;order:0;max-height:none;overflow:visible;padding-right:0}}
.bitm-shop-filters__toggle>summary{display:none}
@media (max-width:781px){
  .bitm-shop-filters__toggle>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;border:1.5px solid var(--bitm-line);border-radius:999px;padding:9px 18px;font-family:var(--wp--preset--font-family--label);text-transform:lowercase;font-size:1.05rem}
  .bitm-shop-filters__toggle>summary::-webkit-details-marker{display:none}
  .bitm-shop-filters__toggle>summary::after{content:"+";font-size:1.3rem}
  .bitm-shop-filters__toggle[open]>summary::after{content:"–"}
  .bitm-shop-filters__toggle[open]>summary{margin-bottom:14px}
}
.woocommerce .woocommerce-breadcrumb{font-size:14px;color:var(--wp--preset--color--ink-3)}
.woocommerce .woocommerce-breadcrumb a{color:inherit}
.woocommerce-products-header__title.page-title{font-family:var(--wp--preset--font-family--display);font-size:var(--wp--preset--font-size--xx-large);font-weight:400;margin:0 0 .3em}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;background:#fff;border:1px solid var(--bitm-line);border-radius:var(--bitm-radius-md);padding:12px 12px 16px;display:flex;flex-direction:column}
.woocommerce ul.products li.product a img{border-radius:var(--bitm-radius-sm);margin-bottom:10px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--wp--preset--font-family--body);font-weight:700;font-size:1rem!important;line-height:1.3;color:var(--bitm-ink)}
.woocommerce ul.products li.product .price{color:var(--bitm-ink)!important;font-weight:700;margin-top:auto}
.woocommerce ul.products li.product .button{margin-top:10px;align-self:flex-start}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--wp--preset--color--purple);color:#fff;border-radius:999px;font-family:var(--wp--preset--font-family--body);font-weight:700;padding:.7em 1.3em;box-shadow:0 4px 0 var(--wp--preset--color--purple-ink)}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#9500E0;color:#fff}
.woocommerce ul.products li.product .button.add_to_cart_button{background:var(--wp--preset--color--blue);color:var(--bitm-ink);box-shadow:0 4px 0 #0E80C6}
.woocommerce span.onsale{background:var(--wp--preset--color--pink-ink);border-radius:999px;min-height:0;min-width:0;padding:4px 10px;line-height:1.4}
.woocommerce div.product .product_title{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:clamp(2rem,4vw,3rem);line-height:1.1}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--bitm-ink);font-weight:700;font-size:1.6rem}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border-radius:12px 12px 0 0}
.woocommerce .woocommerce-ordering select{border:1.5px solid var(--bitm-line);border-radius:999px;padding:7px 14px;font:inherit;background:#fff}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:8px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:var(--bitm-radius-sm)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1.5px solid var(--bitm-line);border-radius:10px;padding:10px 12px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:8px 12px;border-radius:8px;text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--wp--preset--color--purple-soft);font-weight:700}
/* shop filter column (chunk 6: inc/shop-filters.php) */
.bitm-shop-search{margin-bottom:16px}
.bitm-shop-search .dgwt-wcas-search-wrapp{max-width:none}
.bitm-filters{font-size:15px}
.bitm-filters.is-loading{opacity:.55;pointer-events:none;transition:opacity .15s}
.bitm-filters__status{margin-bottom:14px}
.bitm-filters__status strong{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;font-weight:400;font-size:1.05rem}
.bitm-filters__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.bitm-filters__chip{display:inline-flex;gap:6px;align-items:center;background:var(--wp--preset--color--purple-soft);color:var(--bitm-ink);border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600;text-decoration:none}
.bitm-filters__chip:hover,.bitm-filters__chip:focus{background:var(--wp--preset--color--purple);color:#fff}
.bitm-filters__clear{font-size:13px;align-self:center;color:var(--wp--preset--color--ink-3)}
.bitm-filters__group{border:0;border-top:1.5px solid var(--bitm-line);margin:0;padding:12px 0 10px;min-width:0}
.bitm-filters__group legend{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;font-size:1.05rem;padding:12px 0 0;float:left;width:100%;margin-bottom:6px}
.bitm-filters__group legend+*{clear:both}
.bitm-filters ul{list-style:none;margin:0;padding:0}
.bitm-filters li{margin:0}
.bitm-filters label{display:flex;align-items:flex-start;gap:8px;padding:4px 0;cursor:pointer;line-height:1.3}
.bitm-filters input[type=checkbox],.bitm-filters input[type=radio]{accent-color:var(--wp--preset--color--purple);width:17px;height:17px;margin:1px 0 0;flex:none}
.bitm-filters__name{flex:1}
.bitm-filters__n{color:var(--wp--preset--color--ink-3);font-size:13px;font-variant-numeric:tabular-nums}
.bitm-filters__sub{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wp--preset--color--ink-3);margin:8px 0 2px!important}
.bitm-filters__sub:first-child{margin-top:0!important}
.bitm-filters__more>summary{cursor:pointer;color:var(--wp--preset--color--purple-ink);font-weight:600;font-size:14px;padding:4px 0;list-style:none}
.bitm-filters__more>summary::-webkit-details-marker{display:none}
.bitm-filters__more>summary::after{content:" +"}
.bitm-filters__more[open]>summary{display:none}
@media (max-width:781px){.bitm-filters label{padding:7px 0}}
/* unit bundle card, under the unit title */
.bitm-unitbundle{display:grid;gap:16px;margin:8px 0 28px}
.bitm-unitbundle__card{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:20px;align-items:center;background:var(--wp--preset--color--mist);border:1.5px solid var(--bitm-line);border-radius:var(--bitm-radius-md);padding:16px}
.bitm-unitbundle__img img{border-radius:var(--bitm-radius-sm);display:block;width:100%}
.bitm-unitbundle__kicker{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;margin:0 0 4px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.bitm-unitbundle__save{background:var(--wp--preset--color--pink-ink);color:#fff;border-radius:999px;padding:1px 10px;font-family:var(--wp--preset--font-family--body);font-weight:700;font-size:13px}
.bitm-unitbundle__title{font-family:var(--wp--preset--font-family--body);font-weight:700;font-size:1.25rem;line-height:1.25;margin:0 0 4px}
.bitm-unitbundle__title a{color:var(--bitm-ink);text-decoration:none}
.bitm-unitbundle__title a:hover{text-decoration:underline}
.bitm-unitbundle__meta{margin:0 0 10px;color:var(--wp--preset--color--ink-3);font-size:14px}
.bitm-unitbundle__buy{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.bitm-unitbundle__buy .price{font-weight:700;font-size:1.3rem}
.woocommerce .bitm-unitbundle__buy .button{margin:0}
.bitm-unitbundle__buy .added_to_cart{font-size:14px}
.bitm-unitbundle__more{font-size:14px;font-weight:600;color:var(--wp--preset--color--purple-ink)}
@media (max-width:599px){.bitm-unitbundle__card{grid-template-columns:96px 1fr;gap:12px;padding:12px}.bitm-unitbundle__title{font-size:1.05rem}.bitm-unitbundle__kicker{font-size:.95rem}}
/* Farmhouse's 'offset' image styles used on About */
.bitm-content .is-style-offset-border-style img{box-shadow:14px 14px 0 var(--wp--preset--color--mint);border-radius:var(--bitm-radius-md)}

/* footer credit */
.bitm-footer__by{display:flex;align-items:center;gap:8px}
.bitm-ual{display:inline-block;width:129px;height:28px;background:url(../images/up-at-last-white.png) left center/contain no-repeat;opacity:.85;transition:opacity .15s}
.bitm-ual:hover,.bitm-ual:focus{opacity:1}

/* ---------- buttons (extra styles used on the home page and later pages) ---------- */
.wp-block-button.bitm-btn-pink>.wp-block-button__link{background:var(--wp--preset--color--pink-ink);color:#fff;box-shadow:0 5px 0 #8E0D5C}
.wp-block-button.bitm-btn-cart>.wp-block-button__link{background:var(--wp--preset--color--blue);color:var(--bitm-ink);box-shadow:0 5px 0 #0E80C6}
.wp-block-button.bitm-btn-sm>.wp-block-button__link{padding:.5em 1.1em;font-size:.9rem}
.wp-block-button.is-style-outline>.wp-block-button__link{background:#fff}

/* ---------- latest posts ([bitm_latest_posts]) ---------- */
.bitm-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.bitm-posts__item{display:flex;flex-direction:column;gap:6px}
.bitm-posts__thumb img{display:block;width:100%;aspect-ratio:12/7;object-fit:cover;border-radius:var(--bitm-radius-md)}
.bitm-posts__cat{margin-top:8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wp--preset--color--ink-3)}
.bitm-posts__title{font-family:var(--wp--preset--font-family--body)!important;font-weight:700!important;font-size:1.1rem!important;line-height:1.35!important;margin:0!important}
.bitm-posts__title a{text-decoration:none;color:var(--bitm-ink)}
.bitm-posts__title a:hover{text-decoration:underline}
.bitm-posts__more{text-align:center;margin-top:28px}
.bitm-posts__more a{display:inline-block;border:2px solid var(--bitm-ink);border-radius:999px;padding:.6em 1.4em;font-weight:700;text-decoration:none;color:var(--bitm-ink)}
.bitm-posts__more a:hover{background:var(--bitm-ink);color:#fff}
@media (max-width:760px){.bitm-posts{grid-template-columns:1fr}}

/* ---------- home page (chunk 5; content = pattern bright-in-the-middle/home) ---------- */
.bitm-content>.bitm-h{margin-block:0!important}
.bitm-h{padding-block:72px;position:relative}
@media (max-width:700px){.bitm-h{padding-block:48px}}
.bitm-h-wrap{max-width:1180px;margin-inline:auto;padding-inline:24px;position:relative;z-index:1}
@media (max-width:600px){.bitm-h-wrap{padding-inline:16px}}
/* grid containers: no flow-layout top margins on their children */
.bitm-h :is(.bitm-h-hero__grid,.bitm-h-proof,.bitm-h-steps,.bitm-h-member__grid,.bitm-h-pillars,.bitm-h-voices__grid,.bitm-h-meet__grid,.bitm-h-free__grid,.bitm-h-schools__grid,.bitm-h-head)>*{margin-block:0}
.bitm-h .bitm-script{margin:0 0 .15em;font-size:1.6rem}
.bitm-h h2{font-size:clamp(1.9rem,4vw,2.75rem)}
/* section head */
.bitm-h-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 20px;flex-wrap:wrap;margin-bottom:28px}
.bitm-h-head__main>*{margin-block:0}
.bitm-h-head__main>*+*{margin-top:8px}
.bitm-h-head__text{color:var(--wp--preset--color--ink-2);max-width:52ch}
.bitm-h-head__more{margin:0}
/* hero */
.bitm-h-hero{background:var(--wp--preset--color--mist);overflow:hidden;padding-block:56px 64px}
.bitm-h-hero::before{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--wp--preset--color--life);left:max(8px,calc(50% - 640px));top:16%;box-shadow:28px 34px 0 -2px var(--wp--preset--color--pink),-6px 70px 0 -4px var(--wp--preset--color--mint),60px 110px 0 -3px var(--wp--preset--color--purple),10px 150px 0 -5px var(--wp--preset--color--blue);pointer-events:none}
.bitm-h-hero::after{content:"";position:absolute;width:520px;height:520px;right:-160px;bottom:-260px;border-radius:50%;background:radial-gradient(circle,rgba(147,241,218,.9),rgba(147,241,218,0) 70%);pointer-events:none}
.bitm-h-hero__grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr);gap:40px;align-items:center}
.bitm-h-hero__text>*{margin-block:0}
.bitm-h-hero__title{font-size:clamp(2.4rem,4.4vw,3.5rem)!important;line-height:1.05!important;margin:10px 0 18px!important}
.bitm-h-hero__title em{font-style:normal;color:var(--wp--preset--color--pink);position:relative;white-space:nowrap;z-index:0}
.bitm-h-hero__title em::after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.16em;background:var(--wp--preset--color--mint);z-index:-1;border-radius:4px}
.bitm-h-hero__lede{font-size:1.2rem;color:var(--wp--preset--color--ink-2);max-width:48ch}
.bitm-h-cta{margin-top:26px!important;gap:14px}
.bitm-h-proof{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:28px!important;padding-top:22px;border-top:1.5px solid rgba(30,22,51,.12)}
.bitm-h-proof__item{display:flex;flex-direction:column;line-height:1.25;font-size:13.5px;color:var(--wp--preset--color--ink-2)}
.bitm-h-proof__item strong{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:26px;color:var(--bitm-ink);font-variant-numeric:tabular-nums}
.bitm-stars{color:var(--wp--preset--color--life)}
.bitm-h-portrait{position:relative;justify-self:center;width:min(360px,100%)}
.bitm-h-portrait>*{margin:0}
.bitm-h-portrait__img{margin:0!important;border-radius:220px 220px 28px 28px;overflow:hidden;border:8px solid #fff;box-shadow:0 30px 60px -30px rgba(43,17,71,.5);aspect-ratio:4/5}
.bitm-h-portrait__img img{width:100%;height:100%!important;object-fit:cover;object-position:center 22%;border-radius:0!important}
.bitm-h-sticker{position:absolute;margin:0!important;background:#fff;border-radius:16px;padding:10px 14px;box-shadow:0 12px 30px -12px rgba(43,17,71,.4);font-size:14px;line-height:1.25;display:flex;gap:10px;align-items:center}
.bitm-h-sticker strong{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:19px;display:block}
.bitm-h-sticker__dot{width:36px;height:36px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font-weight:700;font-size:12px}
.bitm-h-sticker__dot.is-purple{background:var(--wp--preset--color--purple)}
.bitm-h-sticker__dot.is-pink{background:var(--wp--preset--color--pink)}
.bitm-h-sticker__dot.is-blue{background:var(--wp--preset--color--blue);color:var(--bitm-ink)}
.bitm-h-sticker.is-1{left:-44px;top:18%;transform:rotate(-4deg)}
.bitm-h-sticker.is-2{right:-30px;bottom:16%;transform:rotate(3deg)}
.bitm-h-sticker.is-3{left:-10px;bottom:-14px;transform:rotate(-2deg)}
@media (max-width:1320px){.bitm-h-hero::before{display:none}}
@media (min-width:901px) and (max-width:1100px){.bitm-h-hero__grid{grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr)}.bitm-h-sticker.is-1{left:-24px}.bitm-h-sticker.is-2{right:-10px}}
@media (max-width:900px){
  .bitm-h-hero{padding-block:32px 56px}
  .bitm-h-hero__grid{grid-template-columns:1fr;gap:40px}
  .bitm-h-hero__title em{white-space:normal}
  .bitm-h-hero::before{display:none}
  .bitm-h-portrait{width:min(320px,80%)}
  .bitm-h-sticker.is-1{left:-14px}.bitm-h-sticker.is-2{right:-14px}
}
@media (max-width:600px){
  .bitm-h-hero__title{font-size:2.3rem!important;margin:6px 0 12px!important}
  .bitm-h-hero__lede{font-size:1.05rem}
  .bitm-h-cta{margin-top:18px!important}
  .bitm-h-cta .wp-block-button{width:100%}
  .bitm-h-cta .wp-block-button__link{width:100%}
  .bitm-h-proof{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .bitm-h-sticker{font-size:12.5px;padding:8px 10px}
  .bitm-h-sticker strong{font-size:16px}
  .bitm-h-sticker__dot{width:30px;height:30px;font-size:11px}
}
/* unit picker */
.bitm-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.bitm-picker__card{--s-ink:var(--bitm-ink);--s-soft:var(--wp--preset--color--mist);border-radius:28px;overflow:hidden;background:var(--s-soft);display:flex;flex-direction:column}
.bitm-picker__card.is-life{--s-ink:var(--wp--preset--color--life-ink);--s-soft:var(--wp--preset--color--life-soft)}
.bitm-picker__card.is-earth{--s-ink:var(--wp--preset--color--earth-ink);--s-soft:var(--wp--preset--color--earth-soft)}
.bitm-picker__card.is-phys{--s-ink:var(--wp--preset--color--phys-ink);--s-soft:var(--wp--preset--color--phys-soft)}
.bitm-picker__img img{display:block;width:100%;aspect-ratio:5/3.4;object-fit:cover}
.bitm-picker__body{padding:18px 22px 22px;display:flex;flex-direction:column;gap:12px;flex:1}
.bitm-picker__body>*{margin:0}
.bitm-picker__title{font-size:1.9rem!important;color:var(--s-ink)!important}
.bitm-picker__text{font-size:15px;color:var(--wp--preset--color--ink-2)}
.bitm-chips{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:8px}
.bitm-chips li{margin:0}
.bitm-chip{display:inline-block;border:1.5px solid var(--s-ink,var(--bitm-ink));color:var(--s-ink,var(--bitm-ink));background:#fff;border-radius:999px;padding:5px 13px;font-size:14.5px;font-weight:600;text-decoration:none;line-height:1.3}
.bitm-chip:hover,.bitm-chip:focus{background:var(--s-ink,var(--bitm-ink));color:#fff}
.bitm-picker__all{margin-top:auto!important;font-weight:700;color:var(--s-ink);text-decoration:none}
.bitm-picker__all:hover{text-decoration:underline;color:var(--s-ink)}
@media (max-width:860px){.bitm-picker{grid-template-columns:1fr}.bitm-picker__card{display:grid;grid-template-columns:36% 1fr}.bitm-picker__img,.bitm-picker__img img{height:100%}.bitm-picker__img img{aspect-ratio:auto}}
@media (max-width:520px){.bitm-picker__card{display:flex}.bitm-picker__img img{aspect-ratio:5/2.6;height:auto}}
/* favorites (classic Woo loop) */
.bitm-h-favs{padding-top:0}
.bitm-favorites.woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}
@media (max-width:1000px){.bitm-favorites.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.bitm-favorites.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media (max-width:520px){.bitm-favorites.woocommerce ul.products li.product .button{align-self:stretch;text-align:center}}
/* phones: six favorites is plenty */
@media (max-width:720px){.bitm-favorites.woocommerce ul.products li.product:nth-child(n+7){display:none}}
/* value ladder */
.bitm-h-ladder{background:linear-gradient(180deg,#fff 0,var(--wp--preset--color--purple-soft) 100%)}
.bitm-h-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:end}
.bitm-h-step{background:#fff;border-radius:28px;padding:26px;border:2px solid var(--bitm-line);display:flex;flex-direction:column;gap:12px;position:relative}
.bitm-h-step>*{margin:0!important}
.bitm-h-step.is-single{min-height:330px}
.bitm-h-step.is-bundle{min-height:390px;border-color:var(--wp--preset--color--blue)}
.bitm-h-step.is-member{min-height:450px;background:var(--wp--preset--color--purple-deep);color:#fff;border-color:var(--wp--preset--color--purple-deep)}
.bitm-h-step.is-member h3{color:#fff}
.bitm-h-step__rung{font-family:var(--wp--preset--font-family--label);font-size:18px;text-transform:lowercase;color:var(--wp--preset--color--ink-3)}
.bitm-h-step.is-member .bitm-h-step__rung{color:var(--wp--preset--color--mint)}
.bitm-h-step h3{font-size:1.9rem!important}
.bitm-h-step__big{font-family:var(--wp--preset--font-family--display);font-size:46px;line-height:1;font-variant-numeric:tabular-nums}
.bitm-h-step__big small{display:block;margin-top:6px;font-family:var(--wp--preset--font-family--body);font-size:15px;font-weight:600;opacity:.8}
.bitm-h-step ul{list-style:none;padding:0!important;display:grid;gap:6px;font-size:15px}
.bitm-h-step li{padding-left:24px;position:relative;margin:0}
.bitm-h-step li::before,.bitm-h-checks li::before{content:"";position:absolute;left:2px;top:.5em;width:12px;height:7px;border-left:2.5px solid var(--wp--preset--color--pink);border-bottom:2.5px solid var(--wp--preset--color--pink);transform:rotate(-45deg)}
.bitm-h-step.is-member li::before{border-color:var(--wp--preset--color--mint)}
.bitm-h-step s{opacity:.6}
.bitm-h-step__cta{margin-top:auto!important}
.bitm-h-step__cta .wp-block-button,.bitm-h-step__cta .wp-block-button__link{width:100%}
.bitm-h-step__ribbon{position:absolute!important;top:-14px;right:20px;background:var(--wp--preset--color--pink-ink);color:#fff;font-weight:700;font-size:13px;padding:5px 12px;border-radius:999px}
.bitm-h-step.is-bundle .bitm-h-step__ribbon{background:var(--wp--preset--color--blue);color:var(--bitm-ink)}
@media (max-width:860px){.bitm-h-steps{grid-template-columns:1fr;gap:28px}.bitm-h-step[class]{min-height:0}}
/* membership band */
.bitm-h-member{background:var(--wp--preset--color--purple-deep);color:#fff;overflow:hidden}
.bitm-h-member__grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.bitm-h-member__text>*{margin-block:0}
.bitm-h-member__text>*+*{margin-top:14px}
.bitm-h-member h2{color:#fff;font-size:clamp(2.1rem,4.4vw,3.25rem)!important}
.bitm-h-member h2 span{color:var(--wp--preset--color--mint)}
.bitm-h-member .bitm-script{color:var(--wp--preset--color--pink)}
.bitm-h-member p{color:#DDD0EE}
.bitm-h-pillars{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-block:24px!important}
.bitm-h-pillar{background:rgba(255,255,255,.07);border-radius:18px;padding:16px;font-size:14.5px}
.bitm-h-pillar strong{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:24px;color:var(--wp--preset--color--mint);display:block}
.bitm-h-checks{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px}
.bitm-h-checks li{position:relative;padding-left:22px;margin:0}
.bitm-h-member .bitm-h-checks{margin-top:22px!important;color:#DDD0EE}
.bitm-h-member .bitm-h-checks li::before{border-color:var(--wp--preset--color--mint)}
@media (max-width:900px){.bitm-h-member__grid{grid-template-columns:1fr;gap:32px}}
@media (max-width:460px){.bitm-h-pillars{grid-template-columns:1fr}}
/* quotes */
.bitm-h-quote{background:#fff;color:var(--bitm-ink);border-radius:28px;padding:58px 30px 30px;position:relative;margin:0}
.bitm-h-quote::before{content:"\201C";font-family:var(--wp--preset--font-family--display);font-size:96px;line-height:.6;color:var(--wp--preset--color--pink);position:absolute;top:22px;left:24px;opacity:.3;pointer-events:none}
.bitm-h-quote>*{margin:0;position:relative}
.bitm-h-quote__text{font-size:1.1rem;line-height:1.55;color:var(--bitm-ink)!important}
.bitm-h-quote__text strong{color:var(--wp--preset--color--pink-ink)}
.bitm-h-quote__who{margin-top:16px!important;font-size:14px;color:var(--wp--preset--color--ink-3)!important}
.bitm-h-quote__who strong{display:block;font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:22px;color:var(--bitm-ink)}
.bitm-h-voices{padding-top:72px}
.bitm-h-voices__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.bitm-h-voices .bitm-h-quote{background:var(--wp--preset--color--mist)}
.bitm-h-voices .bitm-h-quote__text{font-size:1.05rem}
@media (max-width:760px){.bitm-h-voices__grid{grid-template-columns:1fr}.bitm-h-quote{padding:52px 22px 24px}}
/* meet Kayla */
.bitm-h-meet{padding-top:24px}
.bitm-h-meet__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.bitm-h-meet__photo>*{margin:0}
.bitm-h-meet__img{margin:0!important;border-radius:28px;overflow:hidden;aspect-ratio:4/5}
.bitm-h-meet__img img{width:100%;height:100%!important;object-fit:cover;object-position:center 25%;border-radius:0!important}
.bitm-h-meet__text>*{margin-block:0}
.bitm-h-meet__text>*+*{margin-top:12px}
.bitm-h-meet h2{color:var(--wp--preset--color--pink)!important;font-size:clamp(2.1rem,4vw,3rem)!important;margin-bottom:16px!important}
.bitm-h-meet__text p{color:var(--wp--preset--color--ink-2);max-width:60ch}
.bitm-h-creds{list-style:none;padding:0!important;display:flex;flex-wrap:wrap;gap:10px;margin-top:22px!important}
.bitm-h-creds li{background:var(--wp--preset--color--mist);border-radius:999px;padding:7px 14px;font-weight:700;font-size:14px;margin:0}
.bitm-h-meet .wp-block-buttons{margin-top:24px!important}
@media (max-width:860px){.bitm-h-meet__grid{grid-template-columns:1fr;gap:28px}.bitm-h-meet__photo{max-width:340px}}
/* free guide */
.bitm-h-free{background:var(--wp--preset--color--pink-soft);scroll-margin-top:90px}
.bitm-h-free__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.bitm-h-free__text>*{margin-block:0}
.bitm-h-free__text>*+*{margin-top:12px}
.bitm-h-free__lede{color:var(--wp--preset--color--ink-2);max-width:52ch}
.bitm-h-free .bitm-h-checks{display:grid;gap:6px;font-size:1rem;color:var(--wp--preset--color--ink-2);margin-top:16px!important}
.bitm-h-free__form{background:#fff;border-radius:28px;padding:26px;box-shadow:0 20px 50px -30px rgba(196,18,127,.6)}
.bitm-h-free__form>*{margin-block:0}
.bitm-h-free__tip{margin-top:12px!important;color:var(--wp--preset--color--ink-3);font-size:13px}
.bitm-acform ._form{width:auto!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.bitm-acform__placeholder{border:2px dashed var(--bitm-line);border-radius:14px;padding:32px 16px;text-align:center;color:var(--wp--preset--color--ink-3)}
@media (max-width:860px){.bitm-h-free__grid{grid-template-columns:1fr}}
/* school funds */
.bitm-h-schools{background:var(--wp--preset--color--blue-soft)}
.bitm-h-schools__grid{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
.bitm-h-schools__mark{margin:0!important}
.bitm-h-schools__mark img{width:84px;border-radius:0!important}
.bitm-h-schools__text>*{margin:0}
.bitm-h-schools h2{font-size:2rem!important}
.bitm-h-schools__text p{color:var(--wp--preset--color--ink-2);margin-top:6px;max-width:62ch}
@media (max-width:760px){.bitm-h-schools__grid{grid-template-columns:1fr;gap:16px}.bitm-h-schools__mark img{width:64px}}
/* anchors land below the sticky header */
.bitm-h[id]{scroll-margin-top:90px}

/* ---------- product page (chunk 7) ---------- */
.woocommerce div.product.type-product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:0 48px;align-items:start;position:relative}
.woocommerce div.product.type-product>*{grid-column:1/-1;min-width:0}
.woocommerce div.product.type-product>div.images,.woocommerce div.product.type-product>.woocommerce-product-gallery{grid-column:1;grid-row:1;float:none!important;width:auto!important;margin:0 0 24px!important}
.woocommerce div.product.type-product>div.summary{grid-column:2;grid-row:1;float:none!important;width:auto!important;margin:0!important;display:flex;flex-direction:column;gap:14px}
.woocommerce div.product.type-product>span.onsale{position:absolute;top:12px;left:12px;z-index:3;grid-column:1}
.woocommerce div.product div.images img{border-radius:var(--bitm-radius-lg)}
.woocommerce div.product div.images .flex-viewport,.woocommerce div.product div.images .woocommerce-product-gallery__image:only-child{border-radius:var(--bitm-radius-lg);border:1px solid var(--bitm-line);overflow:hidden}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.images .flex-control-thumbs img{border-radius:12px;border:2px solid transparent;opacity:.75}
.woocommerce div.product div.images .flex-control-thumbs img.flex-active,.woocommerce div.product div.images .flex-control-thumbs img:hover{border-color:var(--wp--preset--color--purple);opacity:1}
.woocommerce div.product .summary>*{margin:0!important}
.woocommerce div.product .summary .product_title{color:var(--bitm-ink)}
.woocommerce div.product .summary p.price{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:2rem;line-height:1}
.woocommerce div.product .summary p.price del{font-size:.6em;opacity:.6}
.woocommerce div.product .summary p.price ins{text-decoration:none}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--wp--preset--color--ink-2)}
.woocommerce div.product .woocommerce-product-details__short-description p{margin:0 0 .5em}
.woocommerce div.product .woocommerce-product-details__short-description span{font-size:inherit!important;font-family:inherit!important}
.bitm-pdp-label{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;letter-spacing:.03em;font-size:1.1rem;color:var(--wp--preset--color--purple-ink)}
.bitm-pdp-label a{color:inherit;text-decoration:none}.bitm-pdp-label a:hover{text-decoration:underline}
.bitm-pdp-label.is-life{color:var(--wp--preset--color--life-ink)}.bitm-pdp-label.is-earth{color:var(--wp--preset--color--earth-ink)}.bitm-pdp-label.is-physical{color:var(--wp--preset--color--phys-ink)}
.bitm-pdp-rating{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:14.5px;color:var(--wp--preset--color--ink-2)}
.bitm-pdp-rating .bitm-stars{letter-spacing:1px}
.bitm-pdp-rating .star-rating{margin:0!important;color:var(--wp--preset--color--life)}
.bitm-pdp-value{font-size:15px;color:var(--wp--preset--color--ink-2)}
.bitm-pdp-value strong{color:var(--wp--preset--color--pink-ink)}
.bitm-pdp-value a{color:var(--wp--preset--color--purple-ink);font-weight:600}
.bitm-pdp-badges{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0}
.bitm-pdp-badges li{background:var(--wp--preset--color--purple-soft);color:var(--wp--preset--color--purple-ink);font-weight:700;font-size:13.5px;border-radius:999px;padding:5px 12px;line-height:1.3}
.bitm-pdp-badges.is-life li{background:var(--wp--preset--color--life-soft);color:var(--wp--preset--color--life-ink)}
.bitm-pdp-badges.is-earth li{background:var(--wp--preset--color--earth-soft);color:var(--wp--preset--color--earth-ink)}
.bitm-pdp-badges.is-physical li{background:var(--wp--preset--color--phys-soft);color:var(--wp--preset--color--phys-ink)}
.bitm-choices{display:grid;gap:10px}
.bitm-choice{border:2px solid var(--bitm-line);border-radius:var(--bitm-radius-md);padding:12px 14px;display:grid;grid-template-columns:56px 1fr auto;gap:14px;align-items:center;background:#fff;color:var(--bitm-ink);text-decoration:none}
.bitm-choice img{width:56px;height:56px;object-fit:cover;border-radius:10px;display:block}
.bitm-choice b{display:block;line-height:1.3}
.bitm-choice span{font-size:14px;color:var(--wp--preset--color--ink-2)}
.bitm-choice.is-best{border-color:var(--wp--preset--color--purple);background:var(--wp--preset--color--purple-soft)}
a.bitm-choice.is-best:hover b{text-decoration:underline}
.bitm-choice__p{text-align:right;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.bitm-choice__p s{display:block;color:var(--wp--preset--color--ink-3);font-weight:500;font-size:13px}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.woocommerce div.product form.cart::before,.woocommerce div.product form.cart::after{display:none}
.woocommerce div.product form.cart .single_add_to_cart_button{float:none;flex:1 1 200px;min-height:52px;font-size:1.05rem;background:var(--wp--preset--color--blue);color:var(--bitm-ink);box-shadow:0 5px 0 #0E80C6}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:#3DB4F5;color:var(--bitm-ink)}
.woocommerce div.product form.cart .added_to_cart{font-weight:600;font-size:14px}
.bitm-pdp-alt{flex:1 1 100%;margin:0!important}
.bitm-pdp-alt .button{box-sizing:border-box;display:flex!important;justify-content:center;align-items:center;width:100%;min-height:52px;font-size:1.05rem!important;margin:0!important}
.bitm-pdp-alt .added_to_cart{display:inline-block;margin-top:6px;font-size:14px;font-weight:600}
.woocommerce div.product .button.loading{opacity:.7}
#wc-stripe-express-checkout-element{margin-top:0!important}
.bitm-pdp-member{font-size:14.5px;color:var(--wp--preset--color--ink-2);background:var(--wp--preset--color--mist);border-radius:var(--bitm-radius-sm);padding:10px 14px}
.bitm-pdp-member a{color:var(--wp--preset--color--pink-ink);font-weight:700}
.bitm-pdp-trust{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:14px;color:var(--wp--preset--color--ink-2)}
.bitm-pdp-trust li::before{content:"✓ ";color:var(--wp--preset--color--earth-ink);font-weight:700}
.bitm-pdp-trust a{color:inherit}
.woocommerce div.product .product_meta{font-size:13px;color:var(--wp--preset--color--ink-3);display:grid;gap:2px}
.woocommerce div.product .product_meta a{color:inherit}
.bitm-inside{border-top:1px solid var(--bitm-line);padding-top:32px;margin:12px 0 32px}
.bitm-inside h2,.woocommerce div.product .related>h2,.woocommerce div.product .woocommerce-tabs .panel>h2:first-child{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:1.9rem;margin:0 0 6px}
.bitm-inside__line{color:var(--wp--preset--color--ink-2);margin:0 0 16px}
.bitm-inside__list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.bitm-inside__list li{display:flex;align-items:center;gap:12px;border:1px solid var(--bitm-line);border-radius:var(--bitm-radius-sm);padding:8px 12px 8px 8px;background:#fff}
.bitm-inside__list a{display:flex;align-items:center;gap:12px;flex:1;color:var(--bitm-ink);text-decoration:none;font-weight:600;line-height:1.3;font-size:15px}
.bitm-inside__list a:hover .bitm-inside__name{text-decoration:underline}
.bitm-inside__list img{width:52px;height:52px;object-fit:cover;border-radius:8px;flex:none}
.bitm-inside__price{font-size:14px;color:var(--wp--preset--color--ink-3);font-variant-numeric:tabular-nums}
.bitm-inside details summary{cursor:pointer;font-weight:700;color:var(--wp--preset--color--purple-ink)}
.bitm-inside ol{columns:2 280px;column-gap:32px;margin:12px 0 0;padding-left:22px;color:var(--wp--preset--color--ink-2);font-size:15px}
.woocommerce div.product .woocommerce-tabs{border-top:1px solid var(--bitm-line);padding-top:24px}
.woocommerce div.product .woocommerce-tabs ul.tabs:has(li:only-child){display:none}
.woocommerce div.product .woocommerce-tabs .panel{max-width:760px}
.woocommerce div.product .woocommerce-tabs .panel :is(iframe,video,embed,img){max-width:100%}
.woocommerce div.product .woocommerce-tabs .panel iframe{height:auto;aspect-ratio:16/9}
.woocommerce div.product .woocommerce-tabs .panel span[style]{font-size:inherit!important;font-family:inherit!important}
.woocommerce div.product .related{border-top:1px solid var(--bitm-line);padding-top:32px;margin-top:16px}
.woocommerce div.product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
.bitm-stickybuy{display:none}
@media (max-width:900px){
  .woocommerce div.product.type-product{grid-template-columns:1fr}
  .woocommerce div.product.type-product>div.summary{grid-column:1;grid-row:auto;position:static}
  .woocommerce div.product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .bitm-stickybuy{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--bitm-line);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));gap:12px;align-items:center;justify-content:space-between;transform:translateY(110%);transition:transform .2s ease-out;box-shadow:0 -8px 24px -12px rgba(43,17,71,.25)}
  .bitm-stickybuy[hidden]{display:none}
  .bitm-stickybuy.is-on{transform:none}
  .bitm-stickybuy__txt{min-width:0;display:grid}
  .bitm-stickybuy__txt b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
  .bitm-stickybuy__txt span{font-weight:700}
  .woocommerce .bitm-stickybuy button.button.alt,.bitm-stickybuy .button{margin:0;flex:none;background:var(--wp--preset--color--blue);color:var(--bitm-ink);box-shadow:0 4px 0 #0E80C6;border-radius:999px;border:0;font-weight:700;padding:.65em 1.2em;font-family:var(--wp--preset--font-family--body)}
  body.single-product .bitm-site-footer{padding-bottom:72px}
}
@media (max-width:520px){
  .bitm-pdp-trust{grid-template-columns:1fr}
  .bitm-choice{grid-template-columns:44px 1fr auto;gap:10px;padding:10px 12px}
  .bitm-choice img{width:44px;height:44px}
  .bitm-inside__list{grid-template-columns:1fr}
}

/* ---------- cart drawer + nudges (chunk 7) ---------- */
.bitm-nudges{display:grid;gap:10px}
.bitm-nudges.is-drawer{padding:0 16px 12px}
.bitm-nudges.is-cart{margin:0 0 20px}
.bitm-nudge{background:var(--wp--preset--color--earth-soft);border-radius:var(--bitm-radius-md);padding:12px 14px;font-size:14.5px;line-height:1.45}
.bitm-nudge p{margin:0 0 8px}
.bitm-nudge b{color:var(--wp--preset--color--earth-ink)}
.bitm-nudge a{color:var(--bitm-ink);font-weight:600}
.bitm-nudge.is-covered{background:var(--wp--preset--color--mist)}
.bitm-nudge.is-covered b{color:var(--bitm-ink)}
.bitm-nudge__btn{border:0;border-radius:999px;background:var(--wp--preset--color--purple);color:#fff;font:inherit;font-weight:700;padding:7px 16px;cursor:pointer}
.bitm-nudge__btn:hover{background:#9500E0}
.bitm-nudge__btn.is-quiet{background:#fff;color:var(--bitm-ink);border:1.5px solid var(--bitm-line)}
.bitm-nudge__btn[disabled]{opacity:.6;cursor:progress}
.wc-block-mini-cart__drawer .wc-block-mini-cart__title{font-family:var(--wp--preset--font-family--display);font-weight:400}
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button:not(.outlined){background:var(--wp--preset--color--purple);color:#fff;border-radius:999px}
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button.outlined{border-radius:999px}
.woocommerce div.product form.cart div.quantity{float:none;margin:0}
.woocommerce div.product form.cart div.quantity .qty{width:4.2em;min-height:52px;border:1.5px solid var(--bitm-line);border-radius:999px;text-align:center;font:inherit;font-weight:700}

/* ---------- membership / for schools / about (chunk 8) ----------
   These pages reuse the home page's section frame (.bitm-h, .bitm-h-wrap, .bitm-h-head,
   .bitm-h-step, .bitm-h-quote, .bitm-h-checks, .bitm-h-creds, .bitm-h-schools) and add
   only what's new. Content = the theme patterns membership / for-schools / about. */
.bitm-h :is(.bitm-m-hero__text,.bitm-m-cards,.bitm-m-faq__grid,.bitm-s-hero__grid,.bitm-s-steps,.bitm-s-vendor__grid,.bitm-s-who__grid,.bitm-a-hero__grid,.bitm-a-marks,.bitm-m-final__text)>*{margin-block:0}
.bitm-h h1{font-size:clamp(2.2rem,4.4vw,3.25rem)}

/* membership: promise */
.bitm-m-hero{background:var(--wp--preset--color--purple-deep);color:#fff;overflow:hidden;padding-block:64px 72px}
.bitm-m-hero::after{content:"";position:absolute;width:560px;height:560px;right:-200px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(247,47,170,.35),rgba(247,47,170,0) 70%);pointer-events:none}
.bitm-m-hero__text{max-width:820px;margin-inline:auto!important;text-align:center}
.bitm-m-hero__text>*+*{margin-top:16px!important}
.bitm-m-hero .bitm-script{color:var(--wp--preset--color--mint)}
.bitm-m-hero__title{color:#fff;line-height:1.05!important}
.bitm-m-hero__title span{color:var(--wp--preset--color--mint)}
.bitm-m-hero__lede{color:#DDD0EE;font-size:1.15rem;max-width:62ch;margin-inline:auto!important}
.bitm-m-hero__lede strong{color:#fff}
.bitm-m-hero__cta{justify-content:center;gap:14px;margin-top:26px!important}
.bitm-m-hero .bitm-h-proof{justify-content:center;border-top-color:rgba(255,255,255,.2)}
.bitm-m-hero .bitm-h-proof__item{color:#DDD0EE;align-items:center;text-align:center}
.bitm-m-hero .bitm-h-proof__item strong{color:#fff}

/* membership: the two plans */
.bitm-m-plans__grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;max-width:840px;margin-inline:auto!important}
.bitm-m-plans .bitm-h-step[class]{min-height:0}
.bitm-m-plans .bitm-h-step.is-quarter{border-color:var(--wp--preset--color--blue)}
.bitm-m-plans__note{margin-top:28px!important;text-align:center}
.bitm-m-plans__note>*{margin:0}
.bitm-m-plans__note .bitm-h-checks{justify-content:center;font-size:14.5px;color:var(--wp--preset--color--ink-2)}
.bitm-m-plans__login{margin-top:14px!important;font-size:14.5px;color:var(--wp--preset--color--ink-3)}
@media (max-width:760px){.bitm-m-plans__grid{grid-template-columns:1fr}}

/* shared card grid (membership "inside", for-schools "included", about "next") */
.bitm-m-inside{background:var(--wp--preset--color--mist)}
.bitm-m-inside .bitm-m-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.bitm-m-inside .bitm-m-cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
.bitm-m-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.bitm-m-cards.is-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.bitm-m-card{background:#fff;border:2px solid var(--bitm-line);border-radius:28px;padding:24px;display:flex;flex-direction:column;gap:10px}
.bitm-m-card>*{margin:0!important}
.bitm-m-card p.bitm-m-card__label,.bitm-m-card__label{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;letter-spacing:.03em;font-size:15px;color:var(--wp--preset--color--pink-ink)}
.bitm-m-card h3{font-size:1.5rem!important}
.bitm-m-card p{font-size:15.5px;color:var(--wp--preset--color--ink-2)}
.bitm-m-card .bitm-h-checks{display:grid;gap:6px;font-size:14.5px;color:var(--wp--preset--color--ink-2)}
.bitm-m-card__cta{margin-top:auto!important;padding-top:6px}
@media (max-width:860px){.bitm-m-cards.is-three{grid-template-columns:1fr}}

/* membership: the long review */
.bitm-m-quote .bitm-h-quote{max-width:820px;margin-inline:auto!important;background:var(--wp--preset--color--mist)}
.bitm-m-quote .bitm-h-quote__text+.bitm-h-quote__text{margin-top:14px!important}

/* membership: FAQ */
.bitm-m-faq{background:var(--wp--preset--color--mist)}
.bitm-m-faq__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px}
.bitm-m-faq__item>*{margin:0}
.bitm-m-faq__item h3{font-size:1.25rem!important;margin-bottom:8px!important}
.bitm-m-faq__item p{color:var(--wp--preset--color--ink-2);font-size:15.5px}
@media (max-width:760px){.bitm-m-faq__grid{grid-template-columns:1fr}}

/* shared final CTA band */
.bitm-m-final{background:var(--wp--preset--color--pink-soft);text-align:center}
.bitm-m-final__text{max-width:720px;margin-inline:auto!important}
.bitm-m-final__text>*+*{margin-top:14px!important}
.bitm-m-final p{color:var(--wp--preset--color--ink-2)}
.bitm-m-final__cta{justify-content:center;gap:14px;margin-top:24px!important}
.bitm-m-final .bitm-h-checks{justify-content:center;color:var(--wp--preset--color--ink-2);margin-top:20px!important}
@media (max-width:600px){
  .bitm-m-hero__cta .wp-block-button,.bitm-m-hero__cta .wp-block-button__link,
  .bitm-m-final__cta .wp-block-button,.bitm-m-final__cta .wp-block-button__link{width:100%}
}

/* for schools: hero + price card */
.bitm-s-hero{background:var(--wp--preset--color--blue-soft)}
.bitm-s-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:44px;align-items:center}
.bitm-s-hero__text>*+*{margin-top:16px!important}
.bitm-s-hero__lede{color:var(--wp--preset--color--ink-2);font-size:1.1rem;max-width:56ch}
.bitm-s-price{background:#fff;border-radius:28px;padding:26px;box-shadow:var(--bitm-shadow-pop)}
.bitm-s-price>*{margin:0!important}
.bitm-s-price__label{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;letter-spacing:.03em;color:var(--wp--preset--color--ink-3);font-size:16px}
.bitm-s-price__big{font-family:var(--wp--preset--font-family--display);font-size:54px;line-height:1;font-variant-numeric:tabular-nums;margin-top:6px!important}
.bitm-s-price__big small{display:block;margin-top:8px;font-family:var(--wp--preset--font-family--body);font-size:15px;font-weight:600;color:var(--wp--preset--color--ink-2)}
.bitm-s-price .bitm-h-checks{display:grid;gap:8px;font-size:14.5px;color:var(--wp--preset--color--ink-2);margin-top:18px!important}
@media (max-width:900px){.bitm-s-hero__grid{grid-template-columns:1fr;gap:28px}}

/* for schools: how it works */
.bitm-s-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.bitm-s-step{background:var(--wp--preset--color--mist);border-radius:28px;padding:24px}
.bitm-s-step>*{margin:0!important}
.bitm-s-step__n{width:40px;height:40px;border-radius:50%;background:var(--wp--preset--color--purple);color:#fff;display:grid;place-items:center;font-family:var(--wp--preset--font-family--display);font-size:22px;margin-bottom:12px!important}
.bitm-s-step h3{font-size:1.35rem!important;margin-bottom:8px!important}
.bitm-s-step p{color:var(--wp--preset--color--ink-2);font-size:15.5px}
.bitm-s-step p.bitm-s-step__n{color:#fff;font-size:22px}
.bitm-s-how__cta{margin-top:28px!important}
@media (max-width:860px){.bitm-s-steps{grid-template-columns:1fr}}

/* for schools: purchasing details + who */
.bitm-s-vendor__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 44px}
.bitm-s-vendor__col>*{margin:0}
.bitm-s-vendor__col h3{font-size:1.3rem!important;margin-bottom:10px!important}
.bitm-s-vendor__col ul{color:var(--wp--preset--color--ink-2);font-size:15.5px;padding-left:1.15em!important}
.bitm-s-vendor__col li+li{margin-top:8px}
@media (max-width:760px){.bitm-s-vendor__grid{grid-template-columns:1fr}}
.bitm-s-who{background:var(--wp--preset--color--mist)}
.bitm-s-who__grid{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:40px;align-items:center}
.bitm-s-who__photo>*{margin:0}
.bitm-s-who__img{margin:0!important;border-radius:28px;overflow:hidden;aspect-ratio:4/5}
.bitm-s-who__img img{width:100%;height:100%!important;object-fit:cover;border-radius:0!important}
.bitm-s-who__text>*+*{margin-top:12px!important}
.bitm-s-who__text p{color:var(--wp--preset--color--ink-2);max-width:62ch}
.bitm-s-who__text p.bitm-script{color:var(--wp--preset--color--pink-ink);max-width:none}
@media (max-width:860px){.bitm-s-who__grid{grid-template-columns:1fr;gap:26px}.bitm-s-who__photo{max-width:300px}}

/* about */
.bitm-a-hero{background:var(--wp--preset--color--mist)}
.bitm-a-hero__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:center}
.bitm-a-hero__photo>*{margin:0}
.bitm-a-hero__img{margin:0!important;border-radius:28px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 60px -30px rgba(43,17,71,.45)}
.bitm-a-hero__img img{width:100%;height:100%!important;object-fit:cover;object-position:center 22%;border-radius:0!important}
.bitm-a-hero__text>*+*{margin-top:14px!important}
.bitm-a-hero__title{color:var(--wp--preset--color--pink)!important;line-height:1.05!important}
.bitm-a-hero__text p{color:var(--wp--preset--color--ink-2);max-width:62ch}
.bitm-a-hero__text p.bitm-script{color:var(--wp--preset--color--pink-ink);max-width:none}
.bitm-a-hero .bitm-h-creds li{background:#fff}
.bitm-a-hero .wp-block-buttons{margin-top:24px!important}
@media (max-width:900px){.bitm-a-hero__grid{grid-template-columns:1fr;gap:30px}.bitm-a-hero__photo{max-width:340px}}
.bitm-a-proof .bitm-h-proof{justify-content:center;border-top:0;margin-top:0!important;padding-top:0}
.bitm-a-proof .bitm-h-proof__item{align-items:center;text-align:center}
.bitm-a-marks{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 40px;margin-top:36px!important}
.bitm-a-marks .bitm-a-mark{margin:0!important}
.bitm-a-marks .bitm-a-mark img{max-height:104px;width:auto;border-radius:0!important}
.bitm-a-marks.is-seen .bitm-a-mark img{max-height:120px;border-radius:14px!important}
.bitm-a-seenlabel{text-align:center;margin-top:36px!important;margin-bottom:0!important;color:var(--wp--preset--color--ink-3);font-size:1.05rem}
.bitm-a-seenlabel+.bitm-a-marks{margin-top:14px!important}
.bitm-a-pubs{background:var(--wp--preset--color--mist)}
.bitm-a-pubs__list{color:var(--wp--preset--color--ink-2);font-size:15.5px;max-width:78ch;padding-left:1.15em!important}
.bitm-a-pubs__list li+li{margin-top:14px}

/* ---- Chunk 9: unit landing intros + TPT teacher reviews ---- */
.bitm-main.is-unit .term-description{max-width:74ch;margin:0 0 26px}
.bitm-main.is-unit .term-description p{color:var(--wp--preset--color--ink-2);font-size:16.5px;line-height:1.7;margin:0 0 .85em}
.bitm-main.is-unit .term-description p:last-child{margin-bottom:0}
.bitm-main.is-shop .term-description{max-width:74ch;margin:0 0 22px;color:var(--wp--preset--color--ink-2)}

.bitm-rev{margin:48px 0 0;padding:30px 30px 26px;background:var(--wp--preset--color--mist);border-radius:22px}
.bitm-rev-head{max-width:70ch}
.bitm-rev-head h2{font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:clamp(1.5rem,1.2rem + 1.1vw,2rem);line-height:1.15;margin:0}
.bitm-rev-note{margin:10px 0 0;color:var(--wp--preset--color--ink-3);font-size:14.5px;line-height:1.55}
.bitm-rev-list{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.bitm-rev-item{background:#fff;border-radius:18px;padding:22px 22px 18px;box-shadow:0 18px 36px -28px rgba(43,17,71,.4);display:flex;flex-direction:column}
.bitm-rev-item blockquote{margin:0;padding:0;border:0;flex:1 1 auto}
.bitm-rev-item blockquote p{margin:0;color:var(--wp--preset--color--ink-2);font-size:15.5px;line-height:1.65}
.bitm-rev-by{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:16px 0 0!important;font-family:var(--wp--preset--font-family--label);font-size:14px}
.bitm-rev-stars{color:var(--wp--preset--color--pink);letter-spacing:1px;font-size:14px;line-height:1}
.bitm-rev-name{color:var(--wp--preset--color--ink);font-weight:600}
.bitm-rev-src{color:var(--wp--preset--color--ink-3)}
.bitm-rev-prod{margin:10px 0 0!important;font-size:14px;line-height:1.45}
.bitm-rev-prod a{color:var(--wp--preset--color--purple);text-decoration:none;border-bottom:1px solid rgba(124,77,196,.35)}
.bitm-rev-prod a:hover{border-bottom-color:currentColor}
.bitm-rev-foot{margin:20px 0 0!important;font-size:14.5px}
.bitm-rev-foot a{color:var(--wp--preset--color--ink-3)}
.bitm-rev-foot a:hover{color:var(--wp--preset--color--purple)}
.bitm-rev-pdp{margin-top:40px}
.bitm-rev-unit{margin:44px 0 0}
.bitm-rev.is-preview{padding:18px 22px}
@media (max-width:600px){.bitm-rev{padding:24px 20px 20px;border-radius:18px}.bitm-rev-list{grid-template-columns:1fr}}

/* Chunk 10: the welcome-coupon bullet, and the TPT review strip inside the white
   testimonials band (no second mist panel there - the three white cards sit under the two
   mist quotes, so they need a hairline to hold their edge). */
.bitm-h-coupon strong{color:var(--wp--preset--color--purple-ink)}
.bitm-h-free .bitm-h-checks li:has(.bitm-h-coupon)::before{border-color:var(--wp--preset--color--purple-ink)}
.bitm-h-voices .bitm-rev{background:transparent;padding:0;margin:34px 0 0}
.bitm-h-voices .bitm-rev-head h2{font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem)}
.bitm-h-voices .bitm-rev-item{border:1px solid var(--bitm-line)}


/* ---------------------------------------------------------------------------
   Chunk 12 (QA pass, 18 Sep 2026)
   1. Links inside the free-guide band sit on pink-soft; brand purple only makes
      4.28:1 there, so they use the deeper purple-ink token (8.05:1). ink-3 also
      moved #7A7390 -> #67607A so muted text clears 4.5:1 on white, mist,
      purple-soft and pink-soft alike (it was 4.48 on plain white before).
   2. WooCommerce's Mini-Cart drawer keeps aria-hidden="true" while closed but
      leaves its four buttons in the tab order, so a keyboard user tabs into an
      invisible dialog. aria-hidden flips to "false" on open, so hiding the
      closed state with visibility takes those buttons out of the tab order
      without touching Woo's own JS.
   3. The filter column puts ~50 checkboxes ahead of the grid (68 tab stops to
      the first product), so the form opens with a skip link to the products.
--------------------------------------------------------------------------- */
.bitm-h-free a{color:var(--wp--preset--color--purple-ink)}

.wc-block-mini-cart__drawer[aria-hidden="true"]{visibility:hidden}
.wc-block-mini-cart__drawer[aria-hidden="false"]{visibility:visible}

.bitm-filters__skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.bitm-filters__skip:focus{position:static;width:auto;height:auto;overflow:visible;clip-path:none;display:inline-block;margin:0 0 10px;padding:8px 14px;border-radius:999px;background:var(--bitm-ink);color:#fff;font-family:var(--wp--preset--font-family--label);font-size:14px;text-transform:lowercase;text-decoration:none}
#bitm-products:focus{outline:none}

/* ---------------------------------------------------------------------------
   Chunk 12b: the shop head band, subject pills and unit chips.

   Putting back the approved prototype's shop: a full-bleed mist band with
   breadcrumbs, a title that changes to the subject or unit, and colored subject
   pills — and the unit list as chips rather than a third checkbox column. The
   remaining groups (single/bundle, resource type, language, math topic, seasons,
   price) stay as checkboxes, because they filter the real catalog and the
   prototype only ever mocked four resource types.
--------------------------------------------------------------------------- */

/* The band sits flush under the header, so the shop templates lose their top padding. */
.bitm-main.is-shop{padding-top:0!important}
.bitm-shophead-wrap.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw;max-width:100vw}
.bitm-shophead{background:var(--wp--preset--color--mist);border-bottom:1px solid var(--bitm-line)}
.bitm-shophead__in{max-width:1280px;margin-inline:auto;padding:22px 24px 26px}
.bitm-shophead .bitm-crumbs{font-size:14px;color:var(--wp--preset--color--ink-3);margin:0 0 6px}
.bitm-shophead .bitm-crumbs a{color:inherit}
.bitm-shophead .bitm-crumbs span{color:var(--wp--preset--color--ink-2)}
.bitm-shophead__title{font-family:var(--wp--preset--font-family--display);font-size:clamp(2.1rem,1.5rem + 2.6vw,3.4rem);line-height:1.02;margin:0 0 18px}

.bitm-subpills{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.bitm-subpill{display:inline-block;padding:11px 24px;border-radius:999px;border:2px solid var(--bitm-ink);background:#fff;color:var(--bitm-ink);text-decoration:none;font-weight:700;font-size:1.05rem;line-height:1.2;transition:transform .12s ease}
.bitm-subpill:hover,.bitm-subpill:focus-visible{transform:translateY(-1px)}
.bitm-subpill.is-life{border-color:var(--wp--preset--color--life-ink);color:var(--wp--preset--color--life-ink)}
.bitm-subpill.is-earth{border-color:var(--wp--preset--color--earth-ink);color:var(--wp--preset--color--earth-ink)}
.bitm-subpill.is-phys{border-color:var(--wp--preset--color--phys-ink);color:var(--wp--preset--color--phys-ink)}
.bitm-subpill.is-on{color:#fff;background:var(--bitm-ink);border-color:var(--bitm-ink)}
.bitm-subpill.is-life.is-on{background:var(--wp--preset--color--life-ink);border-color:var(--wp--preset--color--life-ink)}
.bitm-subpill.is-earth.is-on{background:var(--wp--preset--color--earth-ink);border-color:var(--wp--preset--color--earth-ink)}
.bitm-subpill.is-phys.is-on{background:var(--wp--preset--color--phys-ink);border-color:var(--wp--preset--color--phys-ink)}
.bitm-subpills__more{display:inline-flex;flex-wrap:wrap;gap:10px;margin-left:6px;padding-left:14px;border-left:1px solid var(--bitm-line)}
.bitm-subpill.is-more{padding:8px 16px;font-size:.95rem;border-width:1px;border-color:var(--bitm-line);color:var(--wp--preset--color--ink-2)}
.bitm-subpill.is-more.is-on{background:var(--wp--preset--color--ink-2);border-color:var(--wp--preset--color--ink-2);color:#fff}

/* Unit chips. Real checkboxes, styled as the prototype's pills. */
.bitm-filters__group.is-unit .bitm-chips{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0}
.bitm-filters__group.is-unit .bitm-filters__sub{flex:0 0 100%;margin:10px 0 0!important}
.bitm-filters__group.is-unit .bitm-filters__sub:first-child{margin-top:2px!important}
li.bitm-chip{margin:0}
li.bitm-chip label,li.bitm-chip.is-all a{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;border:1.5px solid var(--wp--preset--color--life-ink);color:var(--wp--preset--color--life-ink);background:#fff;font-size:.88rem;font-weight:700;cursor:pointer;text-decoration:none;line-height:1.25}
li.bitm-chip input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
li.bitm-chip label:has(input:checked){background:var(--wp--preset--color--life-ink);border-color:var(--wp--preset--color--life-ink);color:#fff}
li.bitm-chip label:has(input:focus-visible){outline:2px solid var(--wp--preset--color--purple-ink);outline-offset:2px}
li.bitm-chip > a{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;border:1.5px solid currentColor;background:#fff;font-size:.88rem;font-weight:700;text-decoration:none;line-height:1.25}
li.bitm-chip.is-life > a{color:var(--wp--preset--color--life-ink)}
li.bitm-chip.is-earth > a{color:var(--wp--preset--color--earth-ink)}
li.bitm-chip.is-phys > a{color:var(--wp--preset--color--phys-ink)}
li.bitm-chip.is-gen > a{color:var(--wp--preset--color--ink-2)}
li.bitm-chip.is-on > a{color:#fff}
li.bitm-chip.is-life.is-on > a{background:var(--wp--preset--color--life-ink);border-color:var(--wp--preset--color--life-ink)}
li.bitm-chip.is-earth.is-on > a{background:var(--wp--preset--color--earth-ink);border-color:var(--wp--preset--color--earth-ink)}
li.bitm-chip.is-phys.is-on > a{background:var(--wp--preset--color--phys-ink);border-color:var(--wp--preset--color--phys-ink)}
li.bitm-chip.is-gen.is-on > a{background:var(--wp--preset--color--ink-2);border-color:var(--wp--preset--color--ink-2)}
li.bitm-chip.is-all a{border-color:var(--bitm-ink);color:var(--bitm-ink)}
li.bitm-chip.is-all.is-on a{background:var(--bitm-ink);color:#fff}
.bitm-chip__n{font-weight:600;font-size:.88em;font-variant-numeric:tabular-nums}
/* No opacity on the count: it washed the subject ink out to ~3.3:1 on white. */
/* Each chip carries its own subject, so it takes that subject's color. */
li.bitm-chip.is-life label{border-color:var(--wp--preset--color--life-ink);color:var(--wp--preset--color--life-ink)}
li.bitm-chip.is-earth label{border-color:var(--wp--preset--color--earth-ink);color:var(--wp--preset--color--earth-ink)}
li.bitm-chip.is-phys label{border-color:var(--wp--preset--color--phys-ink);color:var(--wp--preset--color--phys-ink)}
li.bitm-chip.is-gen label{border-color:var(--wp--preset--color--ink-2);color:var(--wp--preset--color--ink-2)}
li.bitm-chip.is-life label:has(input:checked){background:var(--wp--preset--color--life-ink);border-color:var(--wp--preset--color--life-ink);color:#fff}
li.bitm-chip.is-earth label:has(input:checked){background:var(--wp--preset--color--earth-ink);border-color:var(--wp--preset--color--earth-ink);color:#fff}
li.bitm-chip.is-phys label:has(input:checked){background:var(--wp--preset--color--phys-ink);border-color:var(--wp--preset--color--phys-ink);color:#fff}
li.bitm-chip.is-gen label:has(input:checked){background:var(--wp--preset--color--ink-2);border-color:var(--wp--preset--color--ink-2);color:#fff}

/* "always included", straight from the prototype sidebar. */
.bitm-filters__always{margin-top:26px;padding-top:18px;border-top:1px solid var(--bitm-line)}
.bitm-filters__always h4{font-family:var(--wp--preset--font-family--label);text-transform:lowercase;letter-spacing:.02em;font-size:1.25rem;margin:0 0 6px}
.bitm-filters__always p{margin:0;font-size:14px;color:var(--wp--preset--color--ink-2);line-height:1.5}

@media (max-width:781px){
  .bitm-shophead__in{padding:16px 16px 20px}
  .bitm-subpill{padding:9px 18px;font-size:.98rem}
  .bitm-subpills__more{margin-left:0;padding-left:0;border-left:0;flex-basis:100%}
}

/* Chunk 13: shortening the filter column.
   It measured 2,963px on /shop/ — about three screens of sidebar beside the grid. The unit
   chips are now one collapsed block per subject, and every group below "Single or bundle"
   is a <details> that opens itself when something in it is applied. No JS: the change
   handler still sees ordinary checkboxes, and the no-script submit is unchanged. */
.bitm-filters__group.is-collapsible{padding:0}
.bitm-filters__group.is-collapsible>details>summary,.bitm-filters__sgroup>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;font-family:var(--wp--preset--font-family--label);text-transform:lowercase;font-size:1.05rem;padding:14px 0 12px}
.bitm-filters__group.is-collapsible>details>summary::-webkit-details-marker,.bitm-filters__sgroup>summary::-webkit-details-marker{display:none}
.bitm-filters__group.is-collapsible>details>summary::after,.bitm-filters__sgroup>summary::after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid var(--wp--preset--color--ink-3);border-bottom:2px solid var(--wp--preset--color--ink-3);transform:rotate(45deg) translate(-2px,-2px);transition:transform .15s}
.bitm-filters__group.is-collapsible>details[open]>summary::after,.bitm-filters__sgroup[open]>summary::after{transform:rotate(-135deg) translate(-3px,-3px)}
.bitm-filters__group.is-collapsible>details>summary:focus-visible,.bitm-filters__sgroup>summary:focus-visible{outline:2px solid var(--wp--preset--color--purple-ink);outline-offset:2px;border-radius:4px}
.bitm-filters__group.is-collapsible>details>ul{padding-bottom:10px}
.bitm-filters__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--wp--preset--color--purple-ink);color:#fff;font-family:var(--wp--preset--font-family--body);font-size:12px;font-weight:700;text-transform:none;line-height:1}
/* Per-subject unit blocks */
.bitm-filters__sgroup{border-top:1px solid var(--bitm-line);margin-top:2px}
.bitm-filters__sgroup:first-of-type{border-top:0}
.bitm-filters__sgroup>summary{text-transform:none;font-family:var(--wp--preset--font-family--body);font-weight:700;font-size:.95rem;padding:10px 0}
.bitm-filters__sgroup.is-life>summary{color:var(--wp--preset--color--life-ink)}
.bitm-filters__sgroup.is-earth>summary{color:var(--wp--preset--color--earth-ink)}
.bitm-filters__sgroup.is-phys>summary{color:var(--wp--preset--color--phys-ink)}
.bitm-filters__sgroup.is-gen>summary{color:var(--wp--preset--color--ink-2)}
.bitm-filters__sgroup>summary .bitm-filters__n{margin-left:-2px;font-weight:600}
.bitm-filters__sgroup>summary::after{border-color:currentColor}
.bitm-filters__sgroup>.bitm-chips{padding:2px 0 12px!important}
.bitm-filters__group.is-unit>.bitm-chips{margin-bottom:4px}

/* Chunk 13: kill the double border on the unit chips.
   The base .bitm-chip rule (written for a standalone chip) was painting the <li> as a pill in
   near-black --bitm-ink, and the <label>/<a> inside it painted a second pill in the subject
   color — so every chip showed a black outline around a colored one, which the prototype
   never had. The <li> is now just a wrapper; the label/anchor is the pill. */
li.bitm-chip{border:0;padding:0;background:none;display:inline-block;line-height:0;font-size:0}
li.bitm-chip>label,li.bitm-chip>a{font-size:.88rem;line-height:1.25}

/* ---------- chunk 13: Kayla's review notes (18 Sep) ---------- */
/* Phone menu (note 9): Membership / For Schools / Blog / About float above
   "Shop by subject" and its ~30 unit links. Core lays the OPEN overlay's
   top-level list out as a flex column, so `order` on its direct children is
   enough: no JS, and nothing moves on desktop, where the overlay never opens.
   The four items carry .bitm-nav-key in parts/header.html. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li{order:2}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content>.wp-block-navigation__container>li.bitm-nav-key{order:1}

/* --- Unit intro, split between the band and below the grid (post-launch, 18 Sep) ---
   The lead paragraph now lives in the shop-head band under the H1. It is held to a
   readable measure rather than the band's full 1280px, because a 1200px line of 17px
   text is far past comfortable reading width. The rest of the intro sits under the
   product grid as .bitm-unitoutro, set a little quieter than body copy since it is
   reference material, not the reason anyone is on the page. */
.bitm-shophead__intro{max-width:72ch;margin:16px 0 0;color:var(--wp--preset--color--ink-2);font-size:16.5px;line-height:1.65}
.bitm-unitoutro{max-width:74ch;margin:34px 0 0;padding-top:24px;border-top:1px solid var(--bitm-line)}
.bitm-unitoutro p{color:var(--wp--preset--color--ink-2);font-size:16px;line-height:1.7;margin:0 0 .85em}
.bitm-unitoutro p:last-child{margin-bottom:0}
@media (max-width:781px){
  .bitm-shophead__intro{font-size:16px;margin-top:14px}
}
