/* mybeanie CI/CD · Terra / Outfit / Fold · 24.10.2026 */
@font-face {
  font-family: "Outfit";
  src: url("fonts/outfit-variable.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --brand-ink: #29221E;
  --brand-action: #A34E32;
  --brand-accent: #DBE3D4;
  --brand-paper: #FBF7F2;
  --brand-soft: #EEE5DB;
  --brand-muted: #6B6058;
  --brand-line: #D8CDC2;
  --brand-action-hover: #873F29;
  --brand-success: #43583D;
  --brand-area-tint: #DBE3D433;
  --brand-area-line: #43583D80;
  --brand-action-soft: #A34E3226;
  --brand-shadow-color: #29221E24;
  --brand-loading: #FBF7F2EB;
  --font-ui: "Outfit", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-body-size: 1.125rem;
  --font-control-size: 1rem;
  --control-height: 3rem;
  --purchase-height: 3.25rem;
  --icon-target: 2.75rem;
  --button-radius: 999px;
  --ink: var(--brand-ink);
  --muted: var(--brand-muted);
  --line: var(--brand-line);
  --snow: var(--brand-paper);
  --paper: var(--brand-paper);
  --ruby: var(--brand-action);
  --pine: var(--brand-action);
  --sky: var(--brand-accent);
  --walnut: var(--brand-ink);
  --gold: #87633A;
}
body { color: var(--brand-ink); background: var(--brand-paper); font-family: var(--font-ui); font-size: var(--font-body-size); font-weight: 400; line-height: 1.6; }
.brand, .site-footer .brand { font-weight: 700; letter-spacing: -.045em; }
.brand .brand__domain { font-weight: 400; }
.site-header .nav-menu a { font-weight: 600; }
.site-header .brand { gap: 10px; font-size: clamp(24px, 1.8vw, 30px); }
.site-header .brand img { width: 36px; height: 36px; flex-basis: 36px; }
.mbph-configurator-page .site-header__inner { min-height: 56px; }
.mbph-configurator-page .site-header .nav-menu a { min-height: 44px; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--brand-action); outline-offset: 3px; }
.store-primary-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.header-search__form button, .mbph-studio .mbph-primary, .mbph-studio .mbph-generate,
.bcl-checkout-back, .bcl-sidecart__checkout, .bcl-sidecart__quick-submit { font-weight: 600; }
.bcl-sidecart .bcl-sidecart__checkout, .bcl-sidecart .bcl-sidecart__quick-submit,
body.mybeanie-native-checkout .wc-block-components-checkout-place-order-button { font-weight: 600; }
/* Filter overlays share the palette without changing their selection or swatch values. */
.wj-filter-drawer, .wj-filter-quick, #wj-filter-panel .wj-woo-filters {
  --wj-filter-accent: var(--brand-action);
  --wj-filter-accent-dark: var(--brand-action-hover);
  --wj-filter-brown: var(--brand-ink);
  --wj-filter-text: var(--brand-ink);
  --wj-filter-muted: var(--brand-muted);
  --wj-filter-border: var(--brand-line);
  --wj-filter-soft: var(--brand-paper);
  --wj-filter-soft-green: var(--brand-soft);
  font-family: var(--font-ui);
}
.bcl-checkout-logo { width: auto; }
.bcl-checkout-logo .brand { font-size: clamp(20px, 2vw, 28px); }
.bcl-checkout-logo .brand img { width: 36px; height: 36px; max-width: none; max-height: none; flex-basis: 36px; object-fit: contain; }
.bcl-sidecart__panel, body.mybeanie-native-checkout { font-family: var(--font-ui); }
body.mybeanie-native-checkout { background: var(--brand-paper); font-size: var(--font-body-size); line-height: 1.6; }
/* Shared interaction roles; payment-provider widgets and editable artwork keep their own styling. */
.store-primary-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.header-search__form button, .mbph-studio .mbph-primary, .mbph-studio .mbph-generate,
.bcl-sidecart .bcl-sidecart__checkout, .bcl-sidecart .bcl-sidecart__quick-submit,
body.mybeanie-native-checkout .wc-block-components-checkout-place-order-button,
.woocommerce .product-detail .product-cart-panel button.single_add_to_cart_button {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: var(--control-height); padding: 12px 24px; border-radius: var(--button-radius);
  font-family: var(--font-ui); font-size: var(--font-control-size); font-weight: 600; line-height: 1.5;
  white-space: normal; text-align: center; overflow-wrap: anywhere;
}
.woocommerce .product-detail .product-cart-panel button.single_add_to_cart_button,
.woocommerce #place_order, .mbph-studio .mbph-primary,
.bcl-sidecart .bcl-sidecart__checkout, .bcl-sidecart .bcl-sidecart__quick-submit { min-height: var(--purchase-height); }
.store-primary-button:disabled, .woocommerce button.button:disabled,
.woocommerce .button.disabled, .mbph-studio .mbph-primary:disabled, .mbph-studio .mbph-generate:disabled { opacity: .55; cursor: not-allowed; }
.site-header .nav-menu a, .header-search__form input,
.product-cart-panel .variations select, .product-cart-panel .variations .label label,
.mbph-studio input:not([type="checkbox"]):not([type="range"]), .mbph-studio select,
.bcl-sidecart input, body.mybeanie-native-checkout input, body.mybeanie-native-checkout select { font-size: var(--font-control-size); line-height: 1.5; }
.header-search__form input, .product-cart-panel .variations select,
.mbph-studio input:not([type="checkbox"]):not([type="range"]), .mbph-studio select,
body.mybeanie-native-checkout input:not([type="checkbox"]):not([type="radio"]), body.mybeanie-native-checkout select { min-height: var(--control-height); }
.site-header .site-actions .icon-link, .wishlist-button,
.hero-slider__controls > button, .hero-slider__dots button,
.product-gallery__arrow, .product-lightbox__close, .product-lightbox__arrow {
  min-width: var(--icon-target); min-height: var(--icon-target);
}
.shop-product-card__more, .card-stock-note,
.product-detail .product-price .woocommerce-price-suffix,
.product-detail .product-price-row > span, .product-fulfilment span,
.mbph-studio .mbph-total > span, .mbph-studio .mbph-price-details { font-size: var(--font-control-size); line-height: 1.5; }
.product-accordions .product-info-panel > div { font-size: var(--font-body-size); line-height: 1.6; }
.store-announcement { font-size: var(--font-control-size); }
.wj-beanie-filterbar summary, .wj-beanie-filterbar button, .wj-beanie-filterbar select,
.wj-filter-drawer input, .wj-filter-drawer button, .wj-filter-drawer label,
.wj-filter-quick button, .wj-filter-quick label { font-size: var(--font-control-size); }
.mbph-studio .mbph-studio__intro p, .mbph-studio .mbph-help,
.mbph-studio .mbph-preview-caption { font-size: var(--font-control-size); line-height: 1.5; }
.mbph-studio .mbph-model-card { font-size: var(--font-control-size); }
.mbph-studio .mbph-model-card strong, .mbph-studio .mbph-model-card small,
.mbph-studio .mbph-beanie-colors__row > p, .mbph-studio .mbph-beanie-colors__row > p > strong,
.mbph-studio .mbph-helper { font-size: var(--font-control-size); line-height: 1.5; }
.shop-product-card .shop-product-card__colors > button { min-width: var(--icon-target); min-height: var(--icon-target); }
.bcl-sidecart__panel, body.mybeanie-native-checkout label,
body.mybeanie-native-checkout .wc-block-components-validation-error,
.bcl-sidecart__panel label { font-size: var(--font-control-size); line-height: 1.5; }
.store-primary-button[aria-busy="true"], .mbph-studio .mbph-primary[aria-busy="true"] { cursor: wait; }
.mbph-stage__photo, .mbph-stage__product.is-template,
.mbph-product-summary > img, .mbph-model-card__image > img { mix-blend-mode: normal; }
.site-footer a:focus-visible { outline-offset: 4px; }
/* Product photos and the editable motif retain their own colours and fonts. */
.mbph-stage__viewport { background: #fff; }
@media (max-width: 600px) {
  .site-header .brand { font-size: 22px; gap: 6px; }
  .site-header .brand img { width: 30px; height: 30px; flex-basis: 30px; }
  .bcl-checkout-logo .brand { font-size: 20px; gap: 6px; }
  .bcl-checkout-logo .brand img { width: 28px; height: 28px; flex-basis: 28px; }
}
@media (max-width: 380px) {
  .site-header .brand { font-size: 20px; }
}
