/* Critical CSS for "home" pages, from style.css fbb096b102 on https://staging.thebreastfeedingshop.com. Generated by scripts/perf/critical-css/build.mjs; do not edit. */
.tbfs-section { padding: var(--wp--custom--spacing--band-y) var(--wp--custom--spacing--band-x); }
.home .wp-site-blocks > *, .page-template-page-payer .wp-site-blocks > * { margin-block-start: 0px; }
.tbfs-section-title { text-wrap: balance; margin-bottom: 0.6rem; letter-spacing: -0.01em; }
body:not(.wc-modal--open):not(.wc-block-product-gallery-modal-open) { overflow: visible !important; }
html { overflow-x: clip; }
header.wp-block-template-part { position: sticky; top: 0px; z-index: 50; }
.tbfs-header { z-index: 50; border-bottom: 1px solid var(--wp--custom--color--border-warm); background: rgb(255, 255, 255); padding: 0.8rem var(--wp--custom--spacing--band-x); transition: box-shadow 0.25s, padding 0.2s; }
@media (min-width: 1024px) {
.tbfs-header { background: rgba(255, 255, 255, 0.94); backdrop-filter: blur(8px); }
}
@media (min-width: 600px) and (max-width: 1023px) {
.tbfs-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
.tbfs-nav .wp-block-navigation__responsive-container-open { display: flex !important; }
}
@media (min-width: 1024px) {
.tbfs-header .wp-block-group:has(> .tbfs-nav) { flex-wrap: nowrap; gap: clamp(0.6rem, 1.2vw, 1.5rem); }
.tbfs-nav .wp-block-navigation__container { flex-wrap: nowrap; gap: clamp(0.7rem, 1.4vw, 1.4rem); }
.tbfs-nav .wp-block-navigation-item { white-space: nowrap; }
}
.wp-site-blocks > :not(footer) { margin-block-start: 0px; }
.tbfs-cta-bar { display: none; }
@media (max-width: 1023px) {
.tbfs-cta-bar { display: flex; align-items: center; justify-content: center; gap: 0.35rem; box-sizing: border-box; min-height: 34px; padding: 0.35rem 1.1rem; background: var(--wp--preset--color--coral); color: var(--wp--preset--color--base); font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 0.9rem; line-height: 1.2; text-align: center; text-decoration: none; touch-action: manipulation; transition: background-color 0.15s; }
.tbfs-cta-bar:hover, .tbfs-cta-bar:active { background: var(--wp--preset--color--coral-dark); color: var(--wp--preset--color--base); }
.tbfs-cta-bar:focus-visible { outline: 2px solid var(--wp--preset--color--base); outline-offset: -5px; }
.tbfs-cta-bar svg { flex-shrink: 0; transition: transform 0.15s; }
.tbfs-cta-bar:hover svg { transform: translateX(2px); }
.tbfs-no-cta-bar .tbfs-cta-bar { display: none; }
}
.tbfs-header.is-scrolled { box-shadow: rgba(63, 40, 34, 0.08) 0px 6px 20px; padding-top: 0.35rem; padding-bottom: 0.35rem; }
.tbfs-header.is-scrolled .tbfs-logo a { font-size: 1.05rem; }
.tbfs-header.is-scrolled .tbfs-header-cta .wp-block-button__link { padding: 0.4rem 1rem; font-size: 0.88rem; }
.tbfs-header.is-scrolled > .alignwide { row-gap: 0.15rem; }
@media (min-width: 1260px) {
.tbfs-header.is-scrolled > .alignwide { flex-wrap: nowrap; }
.tbfs-header.is-scrolled .tbfs-logo a { font-size: 1rem; }
.tbfs-header.is-scrolled .tbfs-nav a { font-size: 0.85rem; white-space: nowrap; }
.tbfs-header.is-scrolled .wp-block-group:has(> .tbfs-nav) { gap: 0.75rem; flex-wrap: nowrap; }
.tbfs-header.is-scrolled .tbfs-nav .wp-block-navigation__container { flex-wrap: nowrap; gap: 0.9rem; }
.tbfs-header.is-scrolled .tbfs-header-cta .wp-block-button__link { padding: 0.4rem 0.85rem; font-size: 0.85rem; }
}
.tbfs-header > .alignwide { flex-wrap: wrap; row-gap: 0.4rem; min-width: 0px; }
.tbfs-logo a { font-family: var(--wp--preset--font-family--heading); font-weight: 700; font-size: clamp(1.1rem, 2.2vw, 1.3rem); color: var(--wp--preset--color--teal-dark); text-decoration: none; white-space: nowrap; transition: font-size 0.2s; }
.tbfs-nav a { font-weight: 500; font-size: 0.95rem; }
.tbfs-header-cta .wp-block-button__link { padding: 0.55rem 1.3rem; white-space: nowrap; }
@media (max-width: 400px) {
.tbfs-header > .alignwide { column-gap: 0.6rem; }
.tbfs-logo a, .tbfs-header.is-scrolled .tbfs-logo a { font-size: clamp(0.85rem, 4.3vw, 1.1rem); }
header .tbfs-header .wp-block-group:has(> .tbfs-nav) { gap: 0.2rem; }
}
@media (min-width: 1024px) {
.tbfs-nav a { font-size: clamp(0.83rem, 0.55rem + 0.45vw, 0.95rem); }
.tbfs-header-cta .wp-block-button__link { font-size: clamp(0.85rem, 0.57rem + 0.45vw, 1rem); padding: 0.5rem clamp(0.85rem, 1.2vw, 1.3rem); }
}
@media (min-width: 1024px) {
.tbfs-nav .wp-block-navigation__submenu-container { display: none !important; }
.tbfs-nav .wp-block-navigation__submenu-icon { margin-left: 0.3rem; }
.tbfs-nav .tbfs-mm.is-open > a { color: var(--wp--preset--color--coral); }
.tbfs-mega-panels { position: absolute; left: 0px; right: 0px; top: 100%; margin: 0px auto !important; }
.tbfs-mega-panel { display: none; max-width: 1180px; background: rgb(255, 255, 255); border-top: 1px solid var(--wp--custom--color--border-warm); border-radius: 0px 0px 22px 22px; box-shadow: rgba(63, 40, 34, 0.18) 0px 30px 60px; padding: 2rem var(--wp--custom--spacing--band-x) 2.2rem; margin: 0px auto !important; }
.tbfs-mega-panel.is-open { display: block; animation: 0.18s ease 0s 1 normal none running tbfs-mega-in; }
@keyframes tbfs-mega-in { 
  0% { opacity: 0; transform: translateY(-6px); }
  100% { opacity: 1; transform: translateY(0px); }
}
.tbfs-mega-cols { gap: clamp(1.5rem, 3vw, 3rem); }
.tbfs-mega-shop { display: grid; grid-template-columns: 230px minmax(0px, 1fr); gap: clamp(1.5rem, 2.5vw, 2.5rem); }
ul.tbfs-mega-rail { list-style: none; margin: 0px; padding: 0.2rem 1.4rem 0.2rem 0px; border-right: 1px solid var(--wp--custom--color--border-warm); display: flex; flex-direction: column; gap: 0.3rem; }
ul.tbfs-mega-rail li { margin: 0px; }
.tbfs-mega-rail-link { display: flex; align-items: center; justify-content: space-between; gap: 0.6rem; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.02rem; color: var(--wp--preset--color--contrast); text-decoration: none; padding: 0.72rem 0.95rem; border-radius: 12px; transition: background 0.16s, color 0.16s; }
.tbfs-mega-rail-link::after { content: "→"; color: var(--wp--preset--color--coral); opacity: 0; transform: translateX(-5px); transition: opacity 0.18s, transform 0.18s; }
.tbfs-mega-rail-link.is-active { background: var(--wp--preset--color--coral-soft); color: var(--wp--preset--color--teal-dark); }
.tbfs-mega-rail-link.is-active::after { opacity: 1; transform: translateX(0px); }
.tbfs-mega-pane { display: none; }
.tbfs-mega-pane.is-active { display: block; animation: 0.22s ease 0s 1 normal none running tbfs-pane-in; }
@keyframes tbfs-pane-in { 
  0% { opacity: 0; transform: translateX(10px); }
  100% { opacity: 1; transform: translateX(0px); }
}
@media (prefers-reduced-motion: reduce) {
.tbfs-mega-panel.is-open, .tbfs-mega-pane.is-active { animation: auto ease 0s 1 normal none running none; }
}
}
@media (min-width: 1024px) {
.tbfs-nav .tbfs-nav-cta { display: none; }
}
@media (max-width: 1023px) {
.tbfs-mega-panels { display: none; }
.tbfs-header { padding: 0.7rem 1.1rem; }
.tbfs-header > .alignwide { flex-wrap: nowrap; }
.tbfs-header .wp-block-group:has(> .tbfs-nav) { gap: 0.4rem; flex-wrap: nowrap; flex-shrink: 0; }
.tbfs-header .tbfs-header-cta { display: none; }
.tbfs-header .wp-block-woocommerce-mini-cart { order: 1; }
.tbfs-nav { order: 2; }
.tbfs-nav .wp-block-navigation__responsive-container.is-menu-open { padding: 4.2rem 1.4rem 2rem; }
.tbfs-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { display: none !important; }
.tbfs-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.tbfs-acc-open > .wp-block-navigation__submenu-container { display: flex !important; }
.tbfs-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle { display: flex !important; align-items: center; }
.tbfs-nav .is-menu-open .wp-block-navigation__container { width: 100%; gap: 0px !important; }
.tbfs-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { width: 100%; flex-flow: wrap; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--wp--custom--color--border-warm); }
.tbfs-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > a { font-size: 1.05rem; font-weight: 600; padding: 0.85rem 0px; flex: 1 1 0%; }
.tbfs-nav .is-menu-open .wp-block-navigation-submenu__toggle { width: auto; padding: 0.85rem 0.4rem 0.85rem 1.2rem; margin: 0px; }
.tbfs-nav .is-menu-open .wp-block-navigation-submenu__toggle svg { transition: transform 0.18s; width: 15px !important; height: 15px !important; transform: none !important; }
.tbfs-nav .is-menu-open .tbfs-acc-open .wp-block-navigation-submenu__toggle svg { transform: rotate(180deg) !important; }
.tbfs-nav .is-menu-open .wp-block-navigation__submenu-container { flex-basis: 100%; flex-direction: column; align-items: flex-start; gap: 0px; padding: 0px 0px 0.8rem 0.9rem !important; }
.tbfs-nav .is-menu-open .wp-block-navigation__submenu-container a { font-size: 0.95rem; font-weight: 400; color: var(--wp--preset--color--muted); padding: 0.5rem 0px !important; }
.tbfs-nav .is-menu-open .wp-block-navigation__container > .tbfs-nav-cta { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; margin-top: 1.1rem; }
.tbfs-nav .is-menu-open .tbfs-nav-cta > a { flex: 1 1 0%; text-align: center; background: var(--wp--preset--color--coral); color: rgb(255, 255, 255); border-radius: 999px; padding: 0.8rem 1.3rem; }
}
html.has-modal-open #seesawengage, html.has-modal-open #survey-frame, html.has-modal-open #sb-frame, html.has-modal-open #avatar-frame, html.has-modal-open .ss-flip-container, html:has(.wc-block-components-drawer__screen-overlay--with-slide-in) #seesawengage, html:has(.wc-block-components-drawer__screen-overlay--with-slide-in) #survey-frame, html:has(.wc-block-components-drawer__screen-overlay--with-slide-in) #sb-frame, html:has(.wc-block-components-drawer__screen-overlay--with-slide-in) #avatar-frame, html:has(.wc-block-components-drawer__screen-overlay--with-slide-in) .ss-flip-container { display: none !important; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__content { display: flex; flex-direction: column; background: var(--wp--preset--color--base); }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close-wrapper { position: absolute; top: 1rem; right: 1rem; z-index: 2; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; color: var(--wp--preset--color--contrast); transition: background-color 0.2s; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close:hover, .wc-block-mini-cart__drawer .wc-block-components-drawer__close:focus-visible { background: var(--wp--preset--color--cream); }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close:focus { outline: none; box-shadow: none; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close:focus-visible { outline: 2px solid var(--wp--preset--color--teal-dark); outline-offset: 2px; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { margin: 0px; padding: 1.5rem 4.5rem 1rem 1.5rem; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.6rem; line-height: 1.2; letter-spacing: -0.01em; mask-image: none; }
.wc-block-mini-cart__drawer .wp-block-woocommerce-mini-cart-title-items-counter-block { font-family: var(--wp--preset--font-family--body); font-weight: 400; font-size: 1rem; letter-spacing: 0px; color: var(--wp--preset--color--muted); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__items { padding: 0.25rem 1.5rem 1rem; }
.wc-block-mini-cart__drawer table.wc-block-cart-items .wc-block-cart-items__row { display: grid; grid-template-columns: 80px 1fr auto; gap: 0px 1rem; padding: 1rem 0px; border: 0px; }
.wc-block-mini-cart__drawer table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image { padding: 0px; width: auto; }
.wc-block-mini-cart__drawer .wc-block-cart-items__row .wc-block-cart-item__image img { box-sizing: border-box; width: 100%; min-width: 100%; max-width: none; height: auto; aspect-ratio: 1 / 1; object-fit: cover; padding: 0px; background: rgb(255, 255, 255); border: 1px solid var(--wp--custom--color--border-warm); border-radius: 14px; }
.wc-block-mini-cart__drawer .wc-block-cart-item__image img:not([hidden]) { display: block; }
.wc-block-mini-cart__drawer .wc-block-cart-item__image img[hidden] { display: none; }
.wc-block-mini-cart__drawer .wc-block-cart-item__product, .wc-block-mini-cart__drawer .wc-block-cart-item__total { padding: 0px; }
.wc-block-mini-cart__drawer .wc-block-cart-item__wrap > * { margin-top: 0px; margin-bottom: 0px; }
.wc-block-mini-cart__drawer a.wc-block-components-product-name { display: block; margin: 0px 0px 0.2rem; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.05rem; line-height: 1.3; color: var(--wp--preset--color--contrast); text-decoration: none; }
.wc-block-mini-cart__drawer a.wc-block-components-product-name:hover, .wc-block-mini-cart__drawer a.wc-block-components-product-name:focus-visible { color: var(--wp--preset--color--teal-dark); text-decoration: underline; text-underline-offset: 3px; }
.wc-block-mini-cart__drawer .wc-block-cart-item__wrap > .wc-block-cart-item__prices, .wc-block-mini-cart__drawer .wc-block-cart-item__wrap .wc-block-components-product-metadata__description { display: none !important; }
.wc-block-mini-cart__drawer .wc-block-components-product-details { margin: 0px; padding: 0px; font-size: 0.9375rem; color: var(--wp--preset--color--muted); }
.wc-block-mini-cart__drawer .wc-block-cart-item__total { font-weight: 700; font-size: 1rem; padding-top: 0.15rem; }
.wc-block-mini-cart__drawer .wc-block-cart-item__quantity { display: flex; align-items: center; gap: 0.75rem; margin-top: 0.6rem; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector { width: auto; margin: 0px; border: 1px solid var(--wp--custom--color--border-warm); border-radius: 999px; background: rgb(255, 255, 255); overflow: hidden; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector::after { border: 0px; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector__input { width: 2.25rem; min-width: 0px; font-weight: 600; background: transparent; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector__button { min-width: 36px; height: 36px; color: var(--wp--preset--color--teal-dark); opacity: 1; transition: background-color 0.2s; }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector__button:hover:not(:disabled) { background: var(--wp--preset--color--teal-light); }
.wc-block-mini-cart__drawer .wc-block-components-quantity-selector__button:disabled { color: var(--wp--custom--color--border-warm); }
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link { display: grid; place-items: center; width: 36px; height: 36px; margin: 0px; border-radius: 50%; color: var(--wp--preset--color--muted); transition: color 0.2s, background-color 0.2s; }
.wc-block-mini-cart__drawer .wc-block-cart-item__remove-link:hover, .wc-block-mini-cart__drawer .wc-block-cart-item__remove-link:focus-visible { color: var(--wp--preset--color--coral-dark); background: var(--wp--preset--color--coral-soft); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer { margin-top: auto; padding: 1.25rem 1.5rem 1.5rem; background: var(--wp--preset--color--cream); border: 0px; box-shadow: none; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer::before { display: none; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-subtotal { padding: 0px; margin: 0px 0px 1rem; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-subtotal .wc-block-components-totals-item__label, .wc-block-mini-cart__drawer .wc-block-mini-cart__footer-subtotal .wc-block-components-totals-item__value { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.2rem; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-subtotal .wc-block-components-totals-item__description { font-size: 0.9375rem; color: var(--wp--preset--color--muted); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions { display: flex; flex-direction: row-reverse; gap: 0.75rem; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions .wc-block-components-button { flex: 1 1 0px; min-height: 48px; margin: 0px; padding: 0.7rem 1.25rem; border-radius: 999px; font-weight: 600; font-size: 1rem; transition: background-color 0.2s, color 0.2s, transform 0.15s; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-checkout { background: var(--wp--preset--color--coral); color: rgb(255, 255, 255); border: 2px solid var(--wp--preset--color--coral); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-checkout:hover { background: var(--wp--preset--color--coral-dark); border-color: var(--wp--preset--color--coral-dark); color: rgb(255, 255, 255); }
.wc-block-mini-cart__drawer .wc-block-components-button.wc-block-mini-cart__footer-cart, .wc-block-mini-cart__drawer .wc-block-components-button.wc-block-mini-cart__shopping-button { background: transparent; color: var(--wp--preset--color--teal-dark); border: 2px solid var(--wp--preset--color--teal-dark); box-shadow: none; }
.wc-block-mini-cart__drawer .wc-block-components-button.wc-block-mini-cart__footer-cart:hover, .wc-block-mini-cart__drawer .wc-block-components-button.wc-block-mini-cart__shopping-button:hover { background: var(--wp--preset--color--teal-dark); color: rgb(255, 255, 255); }
.wc-block-mini-cart__drawer .wc-block-components-button:active { transform: translateY(1px); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper { padding: 4rem 1.5rem 2rem; text-align: center; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__empty-cart-wrapper p { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.35rem; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__shopping-button { min-height: 48px; padding: 0.7rem 1.75rem; border-radius: 999px; font-weight: 600; }
@media (max-width: 480px) {
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer-actions { flex-direction: column-reverse; }
.wc-block-mini-cart__drawer table.wc-block-cart-items .wc-block-cart-items__row { grid-template-columns: 64px 1fr auto; }
}
.tbfs-mega-head { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--muted); margin: 0px 0px 0.7rem; }
ul.tbfs-mega-links { list-style: none; padding: 0px; margin: 0px; }
ul.tbfs-mega-links li { margin: 0px; }
.tbfs-mega-links a { display: block; font-size: 0.95rem; font-weight: 500; color: var(--wp--preset--color--contrast); text-decoration: none; padding: 0.3rem 0px; }
.tbfs-mega-links a:hover { color: var(--wp--preset--color--teal-dark); text-decoration: underline; text-underline-offset: 3px; }
.tbfs-mega-links a.tbfs-mega-viewall { color: var(--wp--preset--color--teal-dark); font-weight: 600; }
.tbfs-mega-links a.tbfs-mega-viewall::after { content: " →"; }
.tbfs-mega-brandlist { columns: 2; column-gap: 1.5rem; }
.tbfs-mega-text { font-size: 0.92rem; color: var(--wp--preset--color--muted); line-height: 1.6; margin: 0px 0px 0.8rem; }
.tbfs-mega-promo { background: var(--wp--preset--color--coral-soft); border-radius: 16px; padding: 1.2rem 1.3rem 1.3rem; height: 100%; }
.tbfs-mega-promo-img { margin: 0px 0px 0.9rem; }
.tbfs-mega-promo-img img { display: block; width: 100%; height: 150px; object-fit: contain; border-radius: 10px; }
.tbfs-mega-promo-photo img { object-fit: cover; }
.tbfs-mega-promo-tag { display: inline-block; background: var(--wp--preset--color--coral); color: rgb(255, 255, 255); font-size: 0.75rem; font-weight: 700; border-radius: 999px; padding: 0.28rem 0.6rem; margin: 0px 0px 0.5rem; }
.tbfs-mega-promo-title { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.08rem; line-height: 1.3; margin: 0px 0px 0.35rem; }
.tbfs-mega-promo-text { font-size: 0.85rem; color: var(--wp--custom--color--text-warm); margin: 0px 0px 0.9rem; }
.tbfs-mega-promo-btn .wp-block-button__link { padding: 0.5rem 1.2rem; }
.tbfs-mega-contact { background: var(--wp--preset--color--teal-light); }
.tbfs-mega-phone { margin: 0px 0px 0.9rem; }
.tbfs-mega-phone a { font-family: var(--wp--preset--font-family--heading); font-weight: 700; font-size: 1.35rem; color: var(--wp--preset--color--teal-dark); text-decoration: none; }
.tbfs-mega-phone a:hover { text-decoration: underline; }
.tbfs-hero-split { display: grid; grid-template-columns: minmax(0px, 780px) minmax(0px, 640px); justify-content: center; background: var(--wp--preset--color--coral-soft); position: relative; overflow: hidden; }
.tbfs-hero-split__panel { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: clamp(3rem, 7vw, 6rem) clamp(1.5rem, 4vw, 4rem) clamp(3rem, 7vw, 6rem) clamp(1.5rem, 7vw, 7.5rem); position: relative; overflow: hidden; }
.tbfs-hero-split__media { display: flex; align-items: center; justify-content: center; padding: clamp(3rem, 6vw, 5rem) clamp(2rem, 5vw, 4rem); }
.tbfs-hero-figure { position: relative; width: min(100%, 380px); }
.tbfs-hero-figure .wp-block-image { margin: 0px; }
.tbfs-hero-figure::before { content: ""; position: absolute; inset: -8% -12% -5%; background: var(--wp--preset--color--teal-light); border-radius: 55% 45% 52% 48% / 48% 55% 45% 52%; z-index: 0; }
.tbfs-hero-figure img { position: relative; z-index: 1; display: block; width: 100%; height: auto; aspect-ratio: 838 / 1100; object-fit: cover; object-position: var(--tbfs-hero-focus, center); border-radius: 28px 28px 28px 96px; border: 6px solid rgb(255, 255, 255); box-shadow: rgba(63, 40, 34, 0.1) 0px 18px 40px; }
.tbfs-hero-figure.is-landscape { width: min(100%, 620px); }
@media (min-width: 782px) {
.tbfs-hero-split:has(.tbfs-hero-figure.is-landscape) { grid-template-columns: minmax(0px, 720px) minmax(0px, 740px); }
.tbfs-hero-split:has(.tbfs-hero-figure.is-landscape) .tbfs-hero-split__media { padding-left: clamp(1.5rem, 3vw, 2.5rem); padding-right: clamp(1.5rem, 3vw, 2.5rem); }
}
.tbfs-hero-figure.is-landscape img { aspect-ratio: 3 / 2; }
.tbfs-hero-figure.is-landscape::before { inset: -12% -7% -9%; }
.tbfs-hero-badge { position: absolute; z-index: 2; display: flex; align-items: center; gap: 0.65rem; background: rgb(255, 255, 255); border-radius: 16px; padding: 0.6rem 0.95rem; box-shadow: rgba(63, 40, 34, 0.16) 0px 10px 26px; }
.tbfs-hero-badge p { margin: 0px; }
@media (prefers-reduced-motion: no-preference) {
.tbfs-hero-badge { animation: 6s ease-in-out 0s infinite normal none running tbfs-float; }
.tbfs-hero-badge--new { animation-duration: 7s; animation-delay: 1.2s; }
}
@keyframes tbfs-float { 
  0%, 100% { translate: 0px; }
  50% { translate: 0px -7px; }
}
.tbfs-hero-badge--specs { left: -14%; bottom: 10%; }
.tbfs-hero-badge--new { top: -4%; right: -11%; }
.tbfs-hero-figure.is-landscape .tbfs-hero-badge--specs { left: -7%; bottom: -6%; }
.tbfs-hero-figure.is-landscape .tbfs-hero-badge--new { top: -7%; right: -5%; }
.tbfs-hero-badge__tag { flex: 0 0 auto; background: var(--wp--preset--color--coral); color: rgb(255, 255, 255); font-size: 0.75rem; font-weight: 700; border-radius: 999px; padding: 0.28rem 0.6rem; }
.tbfs-hero-badge__icon { flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%; background: var(--wp--preset--color--teal); color: rgb(255, 255, 255); font-weight: 700; display: grid; place-items: center; }
.tbfs-hero-badge__text { line-height: 1.3; font-size: 0.78rem; color: var(--wp--custom--color--text-warm); }
.tbfs-hero-badge__text strong { display: block; font-size: 0.92rem; color: var(--wp--preset--color--contrast); }
.tbfs-eyebrow, p.is-style-tbfs-eyebrow { text-wrap: balance; font-size: 0.95rem; font-weight: 600; color: var(--wp--preset--color--teal-dark); margin: 0px 0px 1.1rem; }
.tbfs-hero-title { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: clamp(2rem, 1rem + 3.3vw, 3.75rem); line-height: 1.08; letter-spacing: -0.02em; margin: 0px 0px 1.1rem; max-width: 13em; text-wrap: balance; }
@media (min-width: 782px) {
.tbfs-hero-split__panel { container-type: inline-size; }
.tbfs-hero-split .tbfs-hero-title { font-size: clamp(2rem, 10.4cqi, 3.75rem); margin-right: -3.5rem; max-width: none; }
}
.tbfs-hero-sub { font-size: clamp(1rem, 0.95rem + 0.4vw, 1.15rem); color: var(--wp--custom--color--text-warm); max-width: 32em; margin: 0px 0px 1.9rem; line-height: 1.7; }
.tbfs-hero-actions { display: flex; align-items: center; gap: 1.4rem; flex-wrap: wrap; }
.tbfs-hero-btn .wp-block-button__link { font-size: 1rem; padding: 0.85rem 2.1rem; transition: transform 0.15s, background 0.15s; }
.tbfs-hero-btn .wp-block-button__link:hover { transform: translateY(-1px); }
.tbfs-hero-link .wp-block-button__link, .is-style-tbfs-text-link .wp-block-button__link { background: transparent; color: var(--wp--preset--color--teal-dark); font-weight: 600; font-size: 1rem; padding: 0px; border-radius: 0px; text-decoration: underline; text-underline-offset: 4px; }
.tbfs-hero-link .wp-block-button__link:hover, .is-style-tbfs-text-link .wp-block-button__link:hover { background: transparent; color: var(--wp--preset--color--contrast); }
.tbfs-hero-note { font-size: 0.85rem; color: var(--wp--custom--color--text-warm-light); margin: 1.4rem 0px 0px; }
@media (max-width: 781px) {
.tbfs-hero-split { grid-template-columns: 1fr; }
.tbfs-hero-split__media { padding: 1rem 2rem 3rem; }
.tbfs-hero-split__panel { padding-bottom: 1.5rem; }
.tbfs-hero-figure { width: min(72vw, 300px); }
.tbfs-hero-figure.is-landscape { width: min(84vw, 400px); }
.tbfs-hero-figure::after { right: -24px; bottom: -18px; width: 96px; height: 96px; }
.tbfs-hero-badge { padding: 0.45rem 0.7rem; border-radius: 12px; gap: 0.45rem; }
.tbfs-hero-badge__text { font-size: 0.68rem; }
.tbfs-hero-badge__text strong { font-size: 0.8rem; }
.tbfs-hero-badge__icon { width: 26px; height: 26px; }
.tbfs-hero-badge__tag { font-size: 0.56rem; padding: 0.22rem 0.5rem; }
.tbfs-hero-badge--specs { left: -9%; bottom: 8%; }
.tbfs-hero-badge--new { top: -4%; right: -7%; }
.tbfs-hero-figure.is-landscape .tbfs-hero-badge--specs { left: -5%; bottom: -6%; }
.tbfs-hero-figure.is-landscape .tbfs-hero-badge--new { top: -6%; right: -4%; }
.tbfs-hero-split__panel { text-align: center; align-items: center; }
}
@media (prefers-reduced-motion: no-preference) {
.wp-block-button__link { transition: transform 0.1s; }
.wp-block-button .wp-block-button__link:active { transform: scale(0.97); }
}
.tbfs-cta .wp-block-button__link { font-size: 1.02rem; transition: transform 0.15s, background 0.15s; }
.tbfs-cta .wp-block-button__link:hover { transform: translateY(-1px); }
.tbfs-steps-section { background: var(--wp--preset--color--cream); }
.tbfs-steps { gap: clamp(2rem, 5vw, 4.5rem); margin-top: clamp(2.4rem, 4vw, 3.4rem); align-items: flex-start; }
.tbfs-step-card { max-width: 22rem; }
@media (min-width: 782px) {
.tbfs-step-card:nth-child(2) { margin-top: clamp(1.5rem, 3vw, 2.75rem); }
.tbfs-step-card:nth-child(3) { margin-top: clamp(3rem, 6vw, 5.5rem); }
}
.tbfs-step-head { display: flex; flex-direction: column; align-items: flex-start; gap: 0.55rem; margin: 0px 0px 0.6rem; }
.tbfs-step-head p, .tbfs-step-head h3 { margin: 0px; }
.tbfs-step-num { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: clamp(4rem, 7vw, 6rem); line-height: 0.85; letter-spacing: -0.04em; color: var(--wp--preset--color--coral-dark); }
.tbfs-step-title { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: clamp(1.25rem, 1.6vw, 1.45rem); line-height: 1.25; letter-spacing: -0.01em; text-wrap: balance; }
.tbfs-step-card .has-small-font-size { font-size: 1.0625rem; line-height: 1.6; color: var(--wp--preset--color--contrast); margin: 0px; }
@media (max-width: 781px) {
.tbfs-steps { gap: 2rem; }
.tbfs-step-card { display: grid; grid-template-columns: 3.4rem 1fr; column-gap: 0.9rem; max-width: none; }
.tbfs-step-card .tbfs-step-head.wp-block-group { display: contents; }
.tbfs-step-num { grid-row: 1 / span 2; font-size: 3.6rem; }
.tbfs-step-title { grid-column: 2; margin: 0.2rem 0px 0.4rem; }
.tbfs-step-card .has-small-font-size { grid-column: 2; }
}
.tbfs-why-grid.wp-block-columns { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: clamp(2rem, 3.5vw, 2.75rem) clamp(1.75rem, 3.5vw, 3rem); margin-top: clamp(2.4rem, 4vw, 3rem); }
@media (min-width: 1120px) {
.tbfs-why.is-layout-constrained { display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 30rem) minmax(0px, 42rem) minmax(0px, 1fr); column-gap: clamp(2.5rem, 5vw, 5rem); align-items: start; }
.tbfs-why.is-layout-constrained > * { max-width: none; margin: 0px; }
.tbfs-why > .tbfs-section-title { grid-column: 2; text-align: left; }
.tbfs-why > .tbfs-why-grid.wp-block-columns { grid-column: 3; margin-top: 0.4rem; }
}
.tbfs-why-card { display: grid; grid-template-columns: 3rem 1fr; column-gap: 1rem; align-content: start; }
.tbfs-why-title { grid-column: 2; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.3rem; line-height: 1.25; letter-spacing: -0.01em; margin: 0.45rem 0px 0.4rem; }
.tbfs-why-card .has-small-font-size { grid-column: 2; font-size: 1.0625rem; line-height: 1.6; color: var(--wp--preset--color--contrast); margin: 0px; }
@media (max-width: 781px) {
.tbfs-why-grid.wp-block-columns { grid-template-columns: 1fr; gap: 1.75rem; }
}
.tbfs-why-card::before { content: ""; display: block; grid-row: 1 / span 2; width: 3rem; height: 3rem; border-radius: 50%; background-color: var(--wp--preset--color--base); background-image: var(--tbfs-icon); background-repeat: no-repeat; background-position: center center; background-size: 1.35rem auto; }
.tbfs-why-card--shield { --tbfs-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a7670' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/></svg>"); }
.tbfs-why-card--check { --tbfs-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a7670' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='9 11 12 14 22 4'/><path d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/></svg>"); }
.tbfs-why-card--truck { --tbfs-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a7670' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='1' y='3' width='15' height='13' rx='1'/><polygon points='16 8 20 8 23 11 23 16 16 16 16 8'/><circle cx='5.5' cy='18.5' r='2.5'/><circle cx='18.5' cy='18.5' r='2.5'/></svg>"); }
.tbfs-why-card--heart { --tbfs-icon: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a7670' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/></svg>"); }
.tbfs-header .wp-block-woocommerce-customer-account { margin-right: -8px; }
.tbfs-header .wp-block-woocommerce-customer-account a { color: var(--wp--preset--color--contrast); }
.tbfs-pill, p.is-style-tbfs-pill { display: inline-block; margin: 0px; padding: 0.4rem 1.1rem; border-radius: 999px; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 0.98rem; color: var(--wp--preset--color--teal-dark); background: var(--wp--preset--color--cream); }
.tbfs-about-text { color: var(--wp--preset--color--contrast); line-height: 1.7; }
.tbfs-payers-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem; margin: 0px; }
.tbfs-pill--link { padding: 0px; }
.tbfs-pill--link a { display: inline-block; padding: 0.4rem 1.1rem; color: inherit; text-decoration: none; }
.tbfs-pill--link:hover { border-color: var(--wp--preset--color--coral); color: var(--wp--preset--color--coral); }
.tbfs-pill--more { background: var(--wp--preset--color--teal-dark); border-color: var(--wp--preset--color--teal-dark); color: rgb(255, 255, 255); }
.tbfs-pill--more:hover { background: var(--wp--preset--color--coral); color: rgb(255, 255, 255); }
.tbfs-payers-note { color: var(--wp--preset--color--muted); margin-top: 1.2rem; }
.tbfs-stars { text-align: center; color: var(--wp--preset--color--coral); font-size: 1.25rem; letter-spacing: 0.3em; margin: 0px 0px 1.1rem; }
.tbfs-rating { font-size: 0.8rem; color: var(--wp--preset--color--muted); margin-top: 0.35rem; }
.tbfs-quote { font-family: var(--wp--preset--font-family--heading); font-size: clamp(1.15rem, 1rem + 0.7vw, 1.45rem); line-height: 1.55; max-width: 34em; margin-left: auto; margin-right: auto; position: relative; }
.tbfs-quote::before, .tbfs-quote::after { color: var(--wp--preset--color--coral); font-size: 1.25em; line-height: 0; vertical-align: -0.08em; }
.tbfs-quote::before { content: "“"; margin-right: 0.06em; }
.tbfs-quote::after { content: "”"; margin-left: 0.06em; }
.tbfs-quote-attr { font-size: 0.88rem; font-weight: 600; color: var(--wp--preset--color--muted); margin-top: 1.2rem; }
.tbfs-rating-score { display: flex; align-items: center; justify-content: center; gap: 0.7rem; margin: 0px; }
.tbfs-rating-num { font-family: var(--wp--preset--font-family--heading); font-size: clamp(2.6rem, 1.6rem + 3vw, 3.4rem); font-weight: 600; line-height: 1; color: var(--wp--preset--color--contrast); }
.tbfs-rating-score .tbfs-stars { margin: 0px; }
.tbfs-testimonial .tbfs-rating { font-size: 0.95rem; margin-top: 0.5rem; }
.tbfs-quote--team { margin-top: 1.8rem; }
.tbfs-quote--team::before, .tbfs-quote--team::after { content: none; }
.tbfs-reviews-link { margin-top: 1.3rem; font-weight: 700; }
.tbfs-reviews-link a { color: var(--wp--preset--color--teal-dark); text-decoration: underline 2px; text-underline-offset: 4px; }
.tbfs-reviews-link a:hover, .tbfs-reviews-link a:focus-visible { color: var(--wp--preset--color--coral-dark); }
.tbfs-cta-card { background: var(--wp--preset--color--coral-soft); border-radius: 24px; padding: clamp(2.5rem, 5vw, 3.75rem) clamp(1.5rem, 4vw, 3rem); }
.tbfs-cta-sub { color: var(--wp--preset--color--muted); margin-bottom: 1.6rem; }
.tbfs-cats-head { display: grid; grid-template-columns: 1.7fr 1fr; gap: 1rem 3rem; align-items: end; }
.tbfs-cats-head .tbfs-section-title { margin: 0px; }
.tbfs-cats-aside > * { margin: 0px; }
.tbfs-cats-aside p { font-size: clamp(1rem, 0.95rem + 0.4vw, 1.15rem); line-height: 1.7; }
.tbfs-cats-btn .wp-block-button__link { font-size: 1rem; padding: 0.85rem 2.1rem; }
.tbfs-cats-aside .wp-block-buttons { margin-top: 1.1rem; }
.tbfs-cats { display: grid; grid-template-columns: repeat(12, minmax(0px, 1fr)); gap: 1.25rem; margin-top: 2rem; }
.tbfs-cats > * { margin: 0px; }
.tbfs-cat-card { position: relative; display: flex; flex-direction: column; overflow: hidden; background: var(--wp--preset--color--cream); border-radius: 24px; transition: background-color 0.25s; }
.tbfs-cat-card:hover { background: rgb(248, 239, 231); }
.tbfs-cat-card > * { margin: 0px; }
.tbfs-cat-img { position: relative; margin: 0px; overflow: hidden; }
.tbfs-cat-img img { position: absolute; inset: 0px; width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1); }
.tbfs-cat-card:hover .tbfs-cat-img img { transform: scale(1.04); }
.tbfs-cat-body { padding: 1.5rem 1.75rem 1.75rem; }
.tbfs-cat-body > * { margin: 0px; }
.tbfs-cat-body p:not(.tbfs-cat-title):not(.tbfs-cat-pill) { margin-top: 0.5rem; font-size: var(--wp--preset--font-size--small); line-height: 1.6; color: var(--wp--preset--color--contrast); }
.tbfs-cat-title { position: static; padding-right: 3rem; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.5rem; line-height: 1.1; letter-spacing: -0.02em; }
.tbfs-cat-title a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.tbfs-cat-title a::after { content: ""; position: absolute; inset: 0px; z-index: 1; border-radius: 24px; }
.tbfs-cat-title a:focus-visible::after { outline: 2px solid var(--wp--preset--color--teal-dark); outline-offset: -2px; }
.tbfs-cat-body { position: relative; }
.tbfs-cat-body::after { content: ""; position: absolute; top: 1.3rem; right: 1.5rem; width: 2.5rem; height: 2.5rem; border-radius: 50%; background-color: var(--wp--preset--color--base); background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0604f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14'/><path d='m13 6 6 6-6 6'/></svg>"); background-repeat: no-repeat; background-position: center center; background-size: 1.1rem auto; transition: background-color 0.2s, transform 0.2s; }
.tbfs-cat-card:hover .tbfs-cat-body::after { background-color: var(--wp--preset--color--coral); background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12h14'/><path d='m13 6 6 6-6 6'/></svg>"); transform: translateX(3px); }
.tbfs-cat-pill { position: relative; z-index: 2; margin-top: 1rem; background: var(--wp--preset--color--base); }
.tbfs-cat-card--pump { grid-area: 1 / 1 / span 2 / span 6; }
.tbfs-cat-card--pump .tbfs-cat-img { flex: 1 1 0%; min-height: 300px; }
.tbfs-cat-card--pump .tbfs-cat-img img { object-position: 50% 35%; }
.tbfs-cat-card--pump .tbfs-cat-title { font-size: 1.8rem; }
.tbfs-cat-card--socks { grid-column: 7 / span 3; }
.tbfs-cat-card--box { grid-column: 10 / span 3; }
.tbfs-cat-card--socks .tbfs-cat-img, .tbfs-cat-card--box .tbfs-cat-img { aspect-ratio: 4 / 3; }
.tbfs-cat-card--socks .tbfs-cat-img img { object-position: 50% 50%; }
.tbfs-cat-card--box .tbfs-cat-img img { object-position: 50% 45%; }
.tbfs-cat-card--socks .tbfs-cat-body, .tbfs-cat-card--box .tbfs-cat-body { padding: 1.1rem 1.4rem 1.25rem; }
.tbfs-cat-card--socks .tbfs-cat-body p:not(.tbfs-cat-title), .tbfs-cat-card--box .tbfs-cat-body p:not(.tbfs-cat-title) { margin-top: 0.35rem; line-height: 1.5; }
.tbfs-cat-card--socks .tbfs-cat-body::after, .tbfs-cat-card--box .tbfs-cat-body::after { top: 1.05rem; right: 1.2rem; }
.tbfs-cat-card--chat { grid-column: 7 / span 6; flex-direction: row; background: var(--wp--preset--color--teal-light); }
.tbfs-cat-card--chat:hover { background: rgb(221, 241, 239); }
.tbfs-cat-card--chat .tbfs-cat-img { flex: 0 0 auto; width: 38%; min-height: 180px; }
.tbfs-cat-card--chat .tbfs-cat-img img { object-position: 72% 50%; }
.tbfs-cat-card--chat .tbfs-cat-body { flex: 1 1 0%; }
@media (max-width: 960px) {
.tbfs-cats-head { grid-template-columns: 1fr; }
.tbfs-cats-section:not(.tbfs-cats-section--centered) { display: flex; flex-direction: column; }
.tbfs-cats-section:not(.tbfs-cats-section--centered) .tbfs-cats-head, .tbfs-cats-section:not(.tbfs-cats-section--centered) .tbfs-cats-aside { display: contents; }
.tbfs-cats-head .tbfs-section-title { margin-bottom: 1rem; }
.tbfs-cats-aside .wp-block-buttons { order: 1; margin-top: 1.75rem; }
.tbfs-cats { grid-template-columns: 1fr 1fr; }
.tbfs-cat-card--pump, .tbfs-cat-card--chat { grid-area: auto / 1 / auto / -1; }
.tbfs-cat-card--socks, .tbfs-cat-card--box { grid-column: auto; }
.tbfs-cat-card--pump .tbfs-cat-img { flex: 0 0 auto; aspect-ratio: 4 / 3; min-height: 0px; }
}
@media (max-width: 600px) {
.tbfs-cats { gap: 0.875rem; margin-top: 1.75rem; }
.tbfs-cat-card--pump .tbfs-cat-title { font-size: 1.75rem; }
.tbfs-cat-body { padding: 1.25rem 1.25rem 1.4rem; }
.tbfs-cat-body::after { top: 1rem; right: 1rem; }
.tbfs-cat-card--socks .tbfs-cat-body, .tbfs-cat-card--box .tbfs-cat-body { padding: 1rem; }
.tbfs-cat-card--socks .tbfs-cat-title, .tbfs-cat-card--box .tbfs-cat-title { padding-right: 0px; font-size: 1.25rem; }
.tbfs-cat-card--socks .tbfs-cat-body p:not(.tbfs-cat-title), .tbfs-cat-card--box .tbfs-cat-body p:not(.tbfs-cat-title), .tbfs-cat-card--socks .tbfs-cat-body::after, .tbfs-cat-card--box .tbfs-cat-body::after { display: none; }
.tbfs-cat-card--chat { flex-direction: column; }
.tbfs-cat-card--chat .tbfs-cat-img { width: 100%; aspect-ratio: 3 / 2; min-height: 0px; }
}
@media (max-width: 420px) {
.tbfs-cat-card--socks, .tbfs-cat-card--box { grid-column: 1 / -1; flex-direction: row; align-items: center; }
.tbfs-cat-card--socks .tbfs-cat-img, .tbfs-cat-card--box .tbfs-cat-img { flex: 0 0 auto; width: 42%; aspect-ratio: 4 / 3; }
.tbfs-cat-card--socks .tbfs-cat-body, .tbfs-cat-card--box .tbfs-cat-body { flex: 1 1 0%; padding: 1rem 1.1rem; }
.tbfs-cat-card--socks .tbfs-cat-title, .tbfs-cat-card--box .tbfs-cat-title { font-size: 1.2rem; }
}
@media (prefers-reduced-motion: reduce) {
.tbfs-cat-img img, .tbfs-cat-body::after { transition: none; }
}
.tbfs-products-sub { color: var(--wp--preset--color--muted); margin-top: 0.5rem; }
.tbfs-products { gap: clamp(1rem, 2vw, 1.5rem); margin-top: 2.4rem; }
.tbfs-product-card { background: var(--wp--preset--color--cream); border: 1px solid var(--wp--custom--color--border-warm); border-radius: 18px; overflow: hidden; padding: 1.4rem 1.4rem 1.6rem; display: flex; flex-direction: column; align-items: center; transition: transform 0.15s, box-shadow 0.15s; text-align: center; }
.tbfs-product-card:hover { transform: translateY(-2px); box-shadow: var(--wp--custom--shadow--card-hover); }
.tbfs-product-card > .tbfs-product-img { align-self: stretch; margin: -1.4rem -1.4rem 1.2rem; padding: 1.2rem; background: rgb(255, 255, 255); overflow: hidden; }
.tbfs-product-img img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: contain; }
@media (prefers-reduced-motion: no-preference) {
.tbfs-product-img img { transition: transform 0.3s; }
.tbfs-product-card:hover .tbfs-product-img img { transform: scale(1.04); }
}
.tbfs-product-name { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.12rem; line-height: 1.3; letter-spacing: -0.01em; margin: 0px 0px 0.5rem; }
.tbfs-product-name a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.tbfs-product-name a:hover { color: var(--wp--preset--color--teal-dark); text-decoration: underline; text-underline-offset: 3px; }
.tbfs-product-desc { color: var(--wp--preset--color--muted); margin: 0px 0px 0.9rem; }
.tbfs-product-badge { display: inline-block; margin: auto 0px 0px; padding: 0.3rem 0.85rem; border-radius: 999px; background: var(--wp--preset--color--teal-light); color: var(--wp--preset--color--teal-dark); font-size: 0.875rem; font-weight: 700; }
.tbfs-products-more { margin-top: 2rem; }
.tbfs-brand-row { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 0.5rem 1.5rem; margin-top: 1.1rem; }
.tbfs-brand-row-label { margin: 0px; font-family: var(--wp--preset--font-family--body); font-weight: 600; font-size: 1.0625rem; letter-spacing: 0px; }
.tbfs-brand-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.4rem 1.5rem; margin: 0px; padding: 0px; list-style: none; }
.tbfs-brand-list a { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.2rem; color: var(--wp--preset--color--teal-dark); text-decoration: underline transparent; text-underline-offset: 4px; transition: color 0.2s, text-decoration-color 0.2s; }
.tbfs-brand-list a:hover, .tbfs-brand-list a:focus-visible { color: var(--wp--preset--color--coral-dark); text-decoration-color: currentcolor; }
.tbfs-families { padding: 0 var(--wp--custom--spacing--band-x) var(--wp--custom--spacing--band-y); }
.tbfs-families-grid { display: grid; grid-template-columns: minmax(0px, 2fr) minmax(0px, 1fr); gap: 1.25rem; }
.tbfs-families-grid > *, .tbfs-families-payers > *, .tbfs-families-payers-plans > *, .tbfs-families-tricare > *, .tbfs-families-body > *, .tbfs-families-resupply > * { margin-block-start: 0px; }
.tbfs-families-payers { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0px, 19rem) minmax(0px, 1fr); gap: 1.25rem clamp(1.75rem, 4vw, 3.5rem); align-items: center; padding: clamp(1.6rem, 3vw, 2.4rem) clamp(1.5rem, 3vw, 2.5rem); background: var(--wp--preset--color--teal-light); border-radius: 24px; }
.tbfs-families-payers .tbfs-families-text { margin-bottom: 0px; }
.tbfs-families-payers .tbfs-payers-row.wp-block-group { justify-content: flex-start; gap: 0.5rem; }
.tbfs-families-payers .tbfs-pill { background: rgb(255, 255, 255); font-size: 0.95rem; }
.tbfs-families-payers .tbfs-pill--more { background: var(--wp--preset--color--teal-dark); }
.tbfs-families-payers .tbfs-payers-note { margin: 0.9rem 0px 0px; font-size: 0.95rem; }
.tbfs-families-tricare { display: grid; grid-template-columns: clamp(180px, 17vw, 240px) minmax(0px, 1fr); background: var(--wp--preset--color--cream); border-radius: 24px; overflow: hidden; }
.tbfs-families-img { margin: 0px; }
.tbfs-families-img img { display: block; width: 100%; height: 100%; min-height: 18rem; object-fit: cover; }
.tbfs-families-body { align-self: center; padding: clamp(1.5rem, 3vw, 2.5rem); }
.tbfs-families-resupply { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: clamp(1.75rem, 3vw, 2.75rem); background: var(--wp--preset--color--coral-soft); border-radius: 24px; }
.tbfs-families-kicker { margin: 0px 0px 0.35rem; font-weight: 600; color: var(--wp--preset--color--teal-dark); }
.tbfs-families-title { margin: 0px 0px 0.6rem; font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: clamp(1.45rem, 1.05rem + 1.1vw, 1.8rem); line-height: 1.2; letter-spacing: -0.01em; text-wrap: balance; }
.tbfs-families-text { margin: 0px 0px 1.4rem; max-width: 34em; font-size: 1.0625rem; line-height: 1.6; }
.tbfs-families-btn .wp-block-button__link { background: transparent; border: 2px solid var(--wp--preset--color--teal-dark); color: var(--wp--preset--color--teal-dark); font-weight: 600; padding: 0.6rem 1.5rem; transition: background-color 0.2s, color 0.2s; }
.tbfs-families-btn .wp-block-button__link:hover, .tbfs-families-btn .wp-block-button__link:focus-visible { background: var(--wp--preset--color--teal-dark); color: rgb(255, 255, 255); }
@media (max-width: 1023px) {
.tbfs-families-grid { grid-template-columns: 1fr; }
.tbfs-families-payers { grid-template-columns: 1fr; }
}
@media (max-width: 781px) {
.tbfs-brand-row { flex-direction: column; align-items: center; }
.tbfs-families-tricare { grid-template-columns: 1fr; }
.tbfs-families-img img { min-height: 0px; aspect-ratio: 16 / 10; object-position: 50% 15%; }
}
.tbfs-journal { gap: clamp(1rem, 2vw, 1.5rem); margin-top: 2.4rem; }
.tbfs-journal-query { margin-block-start: 2.4rem; }
.tbfs-journal-section .tbfs-journal.wp-block-post-template { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
@media (max-width: 1023px) {
.tbfs-journal-section .tbfs-journal.wp-block-post-template { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (max-width: 599px) {
.tbfs-journal-section .tbfs-journal.wp-block-post-template { grid-template-columns: minmax(0px, 1fr); }
}
ul.tbfs-journal { list-style: none; padding: 0px; margin: 0px; }
.tbfs-journal > .wp-block-post, .tbfs-journal-card { background: var(--wp--preset--color--cream); border-radius: 18px; overflow: hidden; transition: transform 0.15s, box-shadow 0.15s; padding-bottom: 1.4rem; }
.tbfs-journal > .wp-block-post:hover, .tbfs-journal-card:hover { transform: translateY(-2px); box-shadow: var(--wp--custom--shadow--card-hover); }
.tbfs-journal-img { margin: 0px 0px 1.1rem; }
.tbfs-journal-img img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.tbfs-journal-title { font-family: var(--wp--preset--font-family--heading); font-weight: 600; font-size: 1.12rem; line-height: 1.35; letter-spacing: -0.01em; margin: 0px 1.4rem 0.5rem; }
.tbfs-journal-title a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.tbfs-journal-title a:hover { color: var(--wp--preset--color--teal-dark); text-decoration: underline; text-underline-offset: 3px; }
.tbfs-journal-card .has-small-font-size, .tbfs-journal-excerpt { color: var(--wp--preset--color--muted); margin: 0px 1.4rem; }
.tbfs-journal-excerpt p { margin: 0px; }
.tbfs-journal-more { margin-top: 2rem; }
.tbfs-faq { margin-top: 2.2rem; }
.tbfs-faq-item { background: var(--wp--preset--color--base); border: 1px solid var(--wp--custom--color--border-cool); border-radius: 14px; padding: 1rem 1.3rem; }
.tbfs-faq-item summary { cursor: pointer; font-weight: 600; font-size: 1.02rem; color: var(--wp--preset--color--contrast); list-style: none; position: relative; padding-right: 2rem; }
.tbfs-faq-item summary::-webkit-details-marker { display: none; }
.tbfs-faq-item summary::after { content: "+"; position: absolute; right: 0.2rem; top: 50%; transform: translateY(-50%); font-size: 1.3rem; font-weight: 500; color: var(--wp--preset--color--teal-dark); transition: transform 0.2s; }
.tbfs-faq-item[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.tbfs-faq-item p { margin: 0.8rem 0px 0.2rem; color: var(--wp--preset--color--muted); font-size: 0.95rem; line-height: 1.65; }
@media (prefers-reduced-motion: no-preference) {
.tbfs-faq-item[open] p { animation: 0.22s ease 0s 1 normal none running tbfs-faq-open; }
}
@keyframes tbfs-faq-open { 
  0% { opacity: 0; translate: 0px -4px; }
  100% { opacity: 1; translate: 0px; }
}
.tbfs-reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.55s, transform 0.55s; }
.tbfs-reveal.is-revealed { opacity: 1; transform: none; }
.tbfs-footer { padding: 3rem var(--wp--custom--spacing--band-x) 2rem; }
@media (max-width: 1023px) {
html:has(#survey-frame) .tbfs-footer { padding-bottom: calc(130px + 2rem); }
}
.tbfs-footer a { color: var(--wp--custom--color--footer-link); text-decoration: none; }
.tbfs-footer a:hover { color: rgb(255, 255, 255); text-decoration: underline; }
.tbfs-footer-head { letter-spacing: 0.1em; font-weight: 700; color: var(--wp--preset--color--teal); }
.tbfs-footer-contact { color: var(--wp--custom--color--footer-muted); margin-top: 1.2rem; }
.tbfs-footer-contact a { color: var(--wp--custom--color--footer-link); }
.tbfs-footer-policies { margin-top: 2.4rem; padding-top: 1.2rem; border-top: 1px solid rgba(255, 255, 255, 0.15); color: var(--wp--custom--color--footer-muted); }
.tbfs-footer-legal { margin-top: 0.6rem; color: var(--wp--custom--color--footer-muted); }
@media (max-width: 781px) {
.wp-block-button.tbfs-header-cta { display: none; }
.tbfs-products, .tbfs-journal { gap: 0.9rem; }
.tbfs-product-img img { max-width: 260px; margin: 0px auto; }
}
