/*
Theme Name: TRLC
Theme URI: https://therealcompany.ph
Description: TRLC child theme — design tokens + WooCommerce/Bricks integration. Visual templates live in Bricks; this child holds tokens, fonts, and small PHP overrides only. Do not add page templates here (Bricks-First per ARCHITECTURE.md Pattern 3).
Author: TRLC
Author URI: https://therealcompany.ph
Template: bricks
Version: 0.1.0
Text Domain: trlc
*/

/* === Phase 2 02-04: FacetWP design-token bindings (Plan 02-04 Task 1 Step 1.5) === */
.trlc-active-filters .facetwp-selection-active,
.facetwp-selections .facetwp-selection-value {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--color-fg);
  color: var(--color-bg);
  padding: 8px 16px;
  min-height: 44px;       /* WCAG 2.5.5 */
  border: 0;
  box-shadow: var(--shadow-inset-brand);
  font-family: var(--font-body);
  font-size: 14px;
  letter-spacing: 0.02em;
  text-transform: none;
  cursor: pointer;
  margin: 0 8px 8px 0;
}
.facetwp-checkbox {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 16px;
  box-shadow: var(--shadow-inset-brand);
  color: var(--color-fg);
  background: var(--color-bg);
  font-family: var(--font-body);
  font-size: 14px;
  margin: 0 8px 8px 0;
  cursor: pointer;
}
.facetwp-checkbox.checked,
.facetwp-checkbox:hover {
  background: var(--color-fg);
  color: var(--color-bg);
}
.facet-load-more,
.facetwp-sort select,
.facetwp-pager .facetwp-page {
  font-family: var(--font-body);
  font-size: 14px;
  box-shadow: var(--shadow-inset-brand);
  padding: 12px 16px;
  background: var(--color-bg);
  color: var(--color-fg);
  border: 0;
  min-height: 44px;
}
.facetwp-pager .facetwp-page.active {
  background: var(--color-fg);
  color: var(--color-bg);
}

/* Filter pill row layout (UI-SPEC §"horizontal active-filter pill row above the grid") */
.trlc-active-filters,
.trlc-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 24px;
}

/* Gemini suggestion 1 — empty-state Clear-all button (Plan 02-04 Task 1) */
.trlc-empty-state {
  display: none;
  padding: 64px 24px;
  text-align: center;
}
.facetwp-template:empty + .trlc-empty-state,
.trlc-empty-state.is-visible,
body.trlc-no-results .trlc-empty-state {
  display: block;
}
.trlc-empty-state h2 {
  font-family: var(--font-body);
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-fg);
  margin: 0 0 16px 0;
}
.trlc-empty-state p {
  font-family: var(--font-body);
  font-size: 16px;
  color: var(--color-fg);
  margin: 0 auto 24px auto;
  max-width: 480px;
  line-height: 1.5;
}
.trlc-empty-state-clear {
  display: inline-block;
  background: var(--color-fg);
  color: var(--color-bg);
  padding: 12px 24px;
  min-height: 44px;
  box-shadow: var(--shadow-inset-brand);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  margin-top: 8px;
  border: 0;
}
.trlc-empty-state-clear:hover {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg));
  color: var(--color-bg);
}

/* Product card (Phase 2 02-04 Task 1 Step 1.3) */
.trlc-product-card {
  display: block;
  background: var(--color-bg);
  box-shadow: var(--shadow-inset-brand);
  padding: 16px;
  text-decoration: none;
  color: var(--color-fg);
  transition: transform 200ms ease;
}
.trlc-product-card:hover {
  transform: translateY(-2px);
}
.trlc-product-card .trlc-product-card__image {
  aspect-ratio: 1 / 1;
  background: var(--color-bg);
  margin-bottom: 16px;
}
.trlc-product-card .trlc-product-card__title {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 400;
  color: var(--color-fg);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0 0 8px 0;
  line-height: 1.5;
}
.trlc-product-card .trlc-product-card__price {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  color: var(--color-fg);
}
.trlc-product-card .trlc-product-card__low-stock {
  display: block;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-brand-hover);
  margin-top: 4px;
}

/* Search form (Phase 2 02-04 Task 2 Step 2.3) */
.trlc-search-form {
  display: inline-flex;
  align-items: center;
  gap: 0;
  box-shadow: var(--shadow-inset-brand);
  background: var(--color-bg);
}
.trlc-search-form input[type="search"] {
  border: 0;
  outline: none;
  padding: 12px 16px;
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-fg);
  background: transparent;
  min-height: 44px;
  min-width: 200px;
}
.trlc-search-form button {
  border: 0;
  background: transparent;
  padding: 12px;
  cursor: pointer;
  color: var(--color-fg);
  min-height: 44px;
  min-width: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.trlc-search-form button:hover {
  color: var(--color-brand-hover);
}
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* === Phase 2 02-07: PDP hero aspect-ratio bound (UI-REVIEW #2 + Lighthouse PDP CLS fix) === */
/* Bind the OUTER gallery wrapper too — bricks-product-gallery + woocommerce-product-gallery
   both need height-reserve so the content column doesn't shift down post-flexslider-mount. */
body.single-product .bricks-product-gallery,
body.single-product .woocommerce-product-gallery {
  aspect-ratio: 1 / 1;
  max-height: 60vh;
  overflow: hidden;
}
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image {
  aspect-ratio: 1 / 1;
  max-height: 60vh;
  overflow: hidden;
}
body.single-product .woocommerce-product-gallery__image img,
body.single-product .woocommerce-product-gallery__wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
body.single-product .flex-control-nav {
  display: flex;
  gap: 8px;
  padding: 8px 0;
  list-style: none;
  margin: 8px 0 0 0;
}
body.single-product .flex-control-nav li {
  flex: 0 0 56px;
}
body.single-product .flex-control-nav li img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  aspect-ratio: 1 / 1;
  display: block;
}

/* === Phase 2 02-07: /shop product-card image inner reserve (UI-REVIEW #2 partial + Lighthouse /shop CLS fix) === */
/* Wrapper aspect-ratio already at line 139-143; inner img also needs reserve */
.trlc-product-card .trlc-product-card__image img,
.trlc-product-card .trlc-product-card__image > img,
.trlc-product-card.brxe-block .trlc-product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  aspect-ratio: 1 / 1;
}
/* Pre-reserve the FacetWP grid wrapper minimum height so AJAX hydration doesn't shift the
   page body excessively. Conservative reserve — the FacetWP-driven post-paint expansion
   is fundamentally architectural (server-side pre-render is the only complete fix per
   Plan 02-06 SUMMARY recommendation, requiring Rule 4 user input). This min-height reduces
   but does not eliminate /shop CLS. Documented residual: see 02-VALIDATION.md row 02-06-03. */
.trlc-product-grid.facetwp-template,
.trlc-grid-wrapper {
  min-height: 800px;
}
@media (min-width: 768px) {
  .trlc-product-grid.facetwp-template,
  .trlc-grid-wrapper { min-height: 1200px; }
}

/* === Phase 2 02-07: FacetWP pill chip styling — selector reinforcement (UI-REVIEW #3) === */
/* Specificity reinforcement against Bricks/WC parent overrides */
body.archive .facetwp-facet .facetwp-checkbox,
body.post-type-archive-product .facetwp-facet .facetwp-checkbox,
.trlc-filter-bar .facetwp-checkbox,
.facetwp-type-checkboxes .facetwp-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px;
  min-height: 44px;
  padding: 8px 16px;
  box-shadow: var(--shadow-inset-brand);
  color: var(--color-fg);
  background: var(--color-bg);
  font-family: var(--font-body);
  font-size: 14px;
  margin: 0 8px 8px 0;
  cursor: pointer;
  border-radius: 0;
  transition: background 200ms ease, color 200ms ease;
}
body.archive .facetwp-facet .facetwp-checkbox.checked,
body.archive .facetwp-facet .facetwp-checkbox.facetwp-checkbox-active,
body.archive .facetwp-facet .facetwp-checkbox[aria-checked="true"],
body.archive .facetwp-facet .facetwp-checkbox:hover,
.trlc-filter-bar .facetwp-checkbox.checked,
.trlc-filter-bar .facetwp-checkbox:hover,
.facetwp-type-checkboxes .facetwp-checkbox.checked,
.facetwp-type-checkboxes .facetwp-checkbox:hover {
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
}

/* Hide native checkbox input — pill IS the affordance */
body.archive .facetwp-facet .facetwp-checkbox input[type="checkbox"],
.trlc-filter-bar .facetwp-checkbox input[type="checkbox"],
.facetwp-type-checkboxes .facetwp-checkbox input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 1px;
  height: 1px;
}

/* Counter span (e.g., "(3)") inherits color */
body.archive .facetwp-facet .facetwp-checkbox .facetwp-counter,
.trlc-filter-bar .facetwp-checkbox .facetwp-counter,
.facetwp-type-checkboxes .facetwp-checkbox .facetwp-counter {
  color: inherit;
  opacity: 0.7;
}

/* ============================================================
   Phase 3 component scaffolding — Wave 1 substrate (Plan 03-01)
   Bodies filled by Plans 03-02 .. 03-06.
   ============================================================ */

/* Cart drawer (D-01 / CART-01) — Plan 03-02 */
.trlc-cart-drawer { /* Plan 03-02 implements */ }
.trlc-cart-drawer__panel { /* Plan 03-02 implements */ }
.trlc-cart-drawer__backdrop { /* Plan 03-02 implements */ }
body.trlc-no-scroll { overflow: hidden; }

/* Checkout accordion (D-04 / CHECK-01) — Plan 03-03 */
.trlc-checkout-accordion { /* Plan 03-03 implements */ }
.trlc-step { /* Plan 03-03 implements */ }
.trlc-step__indicator { /* Plan 03-03 implements */ }
.trlc-payment-card { /* Plan 03-03 implements */ }

/* Free-shipping progress bar (D-02 / CART-03) — used by drawer + /cart + checkout */
.trlc-freeship-progress { /* Plan 03-02 implements */ }
.trlc-freeship-progress__copy { /* Plan 03-02 implements */ }
.trlc-freeship-progress__bar { /* Plan 03-02 implements */ }

/* Thank-you page (D-15 / CHECK-08) — Plan 03-04 */
.trlc-thankyou-timeline { /* Plan 03-04 implements */ }
.trlc-thankyou-password-prompt { /* Plan 03-04 implements */ }

/* My Account dashboard (ACCT-03 D-13b) — Plan 03-04 */
.trlc-account-nav { /* Plan 03-04 implements */ }
.trlc-account-section { /* Plan 03-04 implements */ }
.trlc-order-status-badge { /* Plan 03-04 implements */ }
.trlc-order-status-badge--processing,
.trlc-order-status-badge--shipped { /* accent fill */ }
.trlc-order-status-badge--completed { /* taupe outline */ }
.trlc-order-status-badge--failed,
.trlc-order-status-badge--refunded {
  color: var(--color-destructive);
  box-shadow: inset 0 0 0 1px var(--color-destructive);
  background: var(--color-bg);
}

/* Legal pages (COMP-01..03) — Plan 03-05 implements (full block at end of file) */

/* Complianz banner overrides (COMP-04) — Plan 03-06 */
.cmplz-cookiebanner { /* Plan 03-06 implements */ }

/* Email theme overrides — Plan 03-04 */
/* (email CSS lives in woocommerce/emails/email-styles.php — not here) */

/* Destructive copy + inline errors — usable across all surfaces */
.trlc-destructive { color: var(--color-destructive); }
.trlc-destructive:hover { color: var(--color-destructive-hover); text-decoration: underline; }
.trlc-field-error {
  color: var(--color-destructive);
  font-size: 14px;
  font-weight: 400;
  margin-top: 4px;
}

/* Reduced-motion blanket override (UI-SPEC §Accessibility) */
@media (prefers-reduced-motion: reduce) {
  .trlc-cart-drawer__panel,
  .trlc-cart-drawer__backdrop,
  .trlc-step,
  .trlc-freeship-progress__bar,
  .cmplz-cookiebanner {
    transition: none !important;
    animation: none !important;
  }
}

/* === Phase 3 Plan 03-02: cart drawer + /cart === */
/* Bodies for the .trlc-cart-drawer + .trlc-cart-summary scaffolding declared
   in Wave 1 (Plan 03-01). Bound to design-system tokens — zero hex literals.
   Codex 03-02 #5 dedup is enforced by the woocommerce/cart/mini-cart.php
   override (Woo's native View-Cart/Checkout buttons removed). */

/* --- Header cart trigger (Codex 03-02 #1, Path D wp_body_open injection) --- */
.trlc-cart-trigger {
  position: fixed;
  top: 16px;
  right: 16px;
  z-index: 999;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 12px;
  background: var(--color-bg);
  color: var(--color-fg);
  box-shadow: var(--shadow-inset-brand);
  border: 0;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 14px;
  letter-spacing: 0.02em;
}
.trlc-cart-trigger:hover { background: var(--color-fg); color: var(--color-bg); }
.trlc-cart-trigger:focus-visible {
  outline: 2px solid var(--color-neutral-950);
  outline-offset: 2px;
}
.trlc-cart-trigger__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
}
.trlc-cart-trigger__icon svg {
  width: 24px;
  height: 24px;
  display: block;
}
.trlc-cart-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
}

/* --- Drawer (D-01 / CART-01) --- */
/*
 * QA-v4 fix (post-Wave-6): defense-in-depth — the panel + backdrop default
 * to fully hidden state regardless of aria-hidden attribute presence.
 * Visible state is OPT-IN via aria-hidden="false" (set by cart-drawer.js
 * openDrawer()). This way a stray DOM mutation, missing attribute, or
 * mid-request HTML breakage never lands the drawer "open by default".
 */
.trlc-cart-drawer {
  position: fixed;
  inset: 0;
  pointer-events: none;
  visibility: hidden;          /* QA-v4 hardening — was implicit only */
  /* visibility delays 250ms on close so slide-out anim is visible; flips instant on open */
  transition: visibility 0s linear 250ms;
  z-index: 1000;
}
.trlc-cart-drawer[aria-hidden="false"] {
  pointer-events: auto;
  visibility: visible;         /* QA-v4 hardening — opt-in visible */
  transition: visibility 0s linear 0s;
}
.trlc-cart-drawer[aria-hidden="true"]  { pointer-events: none; }

.trlc-cart-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(35, 35, 35, 0.6);
  opacity: 0;
  transition: opacity 200ms ease;
}
.trlc-cart-drawer[aria-hidden="false"] .trlc-cart-drawer__backdrop { opacity: 1; }

.trlc-cart-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(400px, 100vw);
  background: var(--color-bg);
  box-shadow: var(--shadow-inset-brand);
  transform: translateX(100%);
  transition: transform 250ms ease-out;
  display: flex;
  flex-direction: column;
  padding: 24px;
  overflow: hidden;
}
.trlc-cart-drawer[aria-hidden="false"] .trlc-cart-drawer__panel { transform: translateX(0); }

.trlc-cart-drawer__panel h2 {
  font-family: var(--font-heading);
  font-size: 32px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin: 0 0 16px 0;
  color: var(--color-fg);
}

.trlc-cart-drawer__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 44px;
  height: 44px;
  background: transparent;
  border: 0;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
  color: var(--color-fg);
}
.trlc-cart-drawer__close:hover  { color: var(--color-brand-hover); }
.trlc-cart-drawer__close:focus-visible {
  outline: 2px solid var(--color-neutral-950);
  outline-offset: 2px;
}

.trlc-cart-drawer .widget_shopping_cart_content {
  flex: 1 1 auto;
  overflow-y: auto;
  margin: 16px 0;
}

/* Native mini-cart line list — brand-quiet skin */
.trlc-cart-drawer .woocommerce-mini-cart {
  list-style: none;
  margin: 0;
  padding: 0;
}
.trlc-cart-drawer .woocommerce-mini-cart-item {
  display: grid;
  grid-template-columns: 64px 1fr auto;
  gap: 8px 16px;
  align-items: start;
  padding: 16px 0;
  box-shadow: inset 0 -1px 0 0 var(--color-brand-700);
  position: relative;
}
.trlc-cart-drawer .woocommerce-mini-cart-item img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  display: block;
  grid-row: 1 / span 2;
}
.trlc-cart-drawer .woocommerce-mini-cart-item a:not(.remove) {
  font-family: var(--font-body);
  font-size: 16px;
  color: var(--color-fg);
  text-decoration: none;
  line-height: 1.4;
}
.trlc-cart-drawer .woocommerce-mini-cart-item .quantity {
  display: block;
  font-size: 14px;
  color: var(--color-fg);
  margin-top: 4px;
}

.trlc-cart-drawer .remove,
.trlc-cart-drawer .remove_from_cart_button {
  position: absolute;
  top: 16px;
  right: 0;
  color: var(--color-destructive);
  font-size: 14px;
  text-decoration: none;
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.trlc-cart-drawer .remove:hover,
.trlc-cart-drawer .remove_from_cart_button:hover {
  color: var(--color-destructive-hover);
  text-decoration: underline;
}

.trlc-cart-drawer .woocommerce-mini-cart__total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0;
  margin: 0;
  font-family: var(--font-body);
  font-size: 16px;
  color: var(--color-fg);
}

/* Drawer footer / Checkout CTA (Codex 03-02 #5 — single source) */
.trlc-cart-drawer__cta {
  display: block;
  width: 100%;
  min-height: 44px;
  background: var(--color-fg);
  color: var(--color-bg);
  text-align: center;
  padding: 12px 16px;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.02em;
  text-decoration: none;
  margin-top: 16px;
  line-height: 20px;
}
.trlc-cart-drawer__cta:hover { background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)); color: var(--color-bg); }
.trlc-cart-drawer__cta:focus-visible {
  outline: 2px solid var(--color-neutral-950);
  outline-offset: 2px;
}

.trlc-cart-drawer__view-link {
  display: block;
  text-align: center;
  font-size: 14px;
  color: var(--color-brand-700);
  margin-top: 8px;
  min-height: 44px;
  line-height: 44px;
  text-decoration: none;
}
.trlc-cart-drawer__view-link:hover { color: var(--color-brand-hover); text-decoration: underline; }

/* Empty-state copy block */
.trlc-cart-drawer__empty {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.trlc-cart-drawer__empty-heading {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  color: var(--color-fg);
  margin: 0 0 8px 0;
}
.trlc-cart-drawer__empty-body {
  font-family: var(--font-body);
  font-size: 16px;
  color: var(--color-fg);
  margin: 0;
}
.trlc-cart-drawer__empty-body a {
  color: var(--color-brand-700);
  text-decoration: underline;
}
.trlc-cart-drawer__empty-body a:hover { color: var(--color-brand-hover); }

/* Free-ship progress bar — bind the Wave 1 helper markup */
.trlc-freeship-progress {
  margin: 0;
  padding: 16px 0;
}
.trlc-freeship-progress__copy {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-fg);
  margin: 0 0 8px 0;
}
.trlc-freeship-progress__bar {
  position: relative;
  height: 6px;
  background: rgba(103, 100, 94, 0.1);
  overflow: hidden;
}
.trlc-freeship-progress__bar::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--trlc-freeship-pct, 0%);
  background: var(--color-brand-700);
  transition: width 200ms ease;
}

/* /cart page — Plan 03-02 Task 2 */
.trlc-cart-page-h1 {
  font-family: var(--font-heading);
  font-size: clamp(32px, 5vw, 40px);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin: 0 0 24px 0;
  color: var(--color-fg);
}
.trlc-cart-summary {
  box-shadow: var(--shadow-inset-brand);
  padding: 24px;
  background: var(--color-bg);
  position: sticky;
  top: 24px;
}
.trlc-cart-summary .trlc-freeship-progress { margin-bottom: 24px; padding: 0; }
.trlc-cart-summary__totals {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 16px;
  font-family: var(--font-body);
  font-size: 16px;
  color: var(--color-fg);
  margin: 16px 0;
  padding: 16px 0 0 0;
  border-top: 1px solid var(--color-brand-700);
}
.trlc-cart-summary__total {
  font-weight: 700;
  font-size: 18px;
}
.trlc-cart-page-cta {
  display: block;
  width: 100%;
  min-height: 44px;
  background: var(--color-fg);
  color: var(--color-bg);
  text-align: center;
  padding: 12px 16px;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.02em;
  text-decoration: none;
  line-height: 20px;
}
.trlc-cart-page-cta:hover  { background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)); color: var(--color-bg); }
.trlc-cart-page-cta:focus-visible {
  outline: 2px solid var(--color-neutral-950);
  outline-offset: 2px;
}

.trlc-cart-shipping-calculator {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--color-brand-700);
}
.trlc-cart-shipping-est {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-brand-700);
  margin: 8px 0 0 0;
}

.woocommerce-cart .cart_item .product-remove a.remove {
  color: var(--color-destructive);
}
.woocommerce-cart .cart_item .product-remove a.remove:hover {
  color: var(--color-destructive-hover);
  text-decoration: underline;
}

@media (min-width: 1025px) {
  .trlc-cart-page-grid {
    display: grid;
    grid-template-columns: 60% 40%;
    gap: 48px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .trlc-cart-drawer__panel,
  .trlc-cart-drawer__backdrop {
    transition: none !important;
  }
  .trlc-cart-drawer[aria-hidden="false"] .trlc-cart-drawer__panel {
    transform: none;
    opacity: 1;
  }
  .trlc-freeship-progress__bar::after { transition: none !important; }
}
/* === end 03-02 === */

/* === Phase 3 Plan 03-03: checkout accordion + payment + summary === */

/* Outer accordion wrapper */
.trlc-checkout-accordion {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/* Step container */
.trlc-step {
  box-shadow: var(--shadow-inset-brand);
  padding: 24px;
  background: var(--color-bg);
  transition: padding 200ms ease, opacity 200ms ease;
}
.trlc-step.is-future,
.trlc-step.is-locked { opacity: 0.5; }
.trlc-step.is-future .trlc-step__body,
.trlc-step.is-locked .trlc-step__body { display: none; }
.trlc-step.is-active { box-shadow: var(--shadow-inset-brand), inset 3px 0 0 var(--color-brand-700); }

.trlc-step__header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.trlc-step__indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  box-shadow: var(--shadow-inset-brand);
  font-family: var(--font-body);
  font-weight: 700;
  color: var(--color-brand-700);
}
.trlc-step.is-active .trlc-step__indicator,
.trlc-step.is-complete .trlc-step__indicator {
  background: var(--color-fg);
  color: var(--color-bg);
  box-shadow: none;
}
.trlc-step__label {
  font-family: var(--font-body);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0;
}

/* Continue button + primary CTA */
.trlc-cta-primary,
.trlc-step__continue {
  display: inline-block;
  min-height: 44px;
  padding: 12px 24px;
  background: var(--color-fg);
  color: var(--color-bg);
  border: 0;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.02em;
  max-width: 320px;
  margin-top: 16px;
}
.trlc-cta-primary:hover,
.trlc-step__continue:hover { background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)); }
@media (max-width: 1024px) {
  .trlc-cta-primary,
  .trlc-step__continue { width: 100%; max-width: none; }
}

/* Payment method radio cards (UI-SPEC §Color) */
.woocommerce-checkout #payment ul.payment_methods li {
  box-shadow: var(--shadow-inset-brand);
  padding: 16px;
  margin-bottom: 12px;
  list-style: none;
}
.woocommerce-checkout #payment ul.payment_methods li.payment_method_active,
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) {
  box-shadow: inset 0 0 0 2px var(--color-brand-700);
}

/* Step 4 disclaimer (rendered by form-checkout.php override) */
.trlc-checkout-disclaimer {
  font-size: 14px;
  color: var(--color-fg);
  margin: 16px 0;
  line-height: 1.5;
}
.trlc-checkout-disclaimer a {
  color: var(--color-brand-700);
  text-decoration: underline;
}
.trlc-checkout-disclaimer a:hover { color: var(--color-brand-hover); }

/* PH zip helper-on-focus */
.trlc-field-helper {
  display: none;
  font-size: 14px;
  color: var(--color-brand-700);
  margin-top: 4px;
}
.form-row:focus-within .trlc-field-helper { display: block; }

/* Inline field error (destructive — wired to T-03-06 mitigation copy) */
.trlc-field-error {
  color: var(--color-destructive);
  font-size: 14px;
  margin-top: 4px;
}

/* VAT breakdown line */
.trlc-vat-breakdown {
  font-size: 14px;
  color: var(--color-brand-700);
}

/* Right-rail order summary card */
.trlc-checkout-summary {
  box-shadow: var(--shadow-inset-brand);
  padding: 24px;
  background: var(--color-bg);
  position: sticky;
  top: 24px;
}
.trlc-checkout-summary__heading {
  font-family: var(--font-heading);
  font-size: 24px;
  letter-spacing: 0.04em;
  margin: 0 0 16px;
  text-transform: uppercase;
}
.trlc-checkout-summary-freeship { margin-bottom: 16px; }
.trlc-checkout-summary__items {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  border-top: 1px solid var(--color-brand-700);
}
.trlc-checkout-summary__item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--color-brand-700);
  font-size: 14px;
}
.trlc-checkout-summary__totals {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.trlc-checkout-summary__totals th {
  text-align: left;
  font-weight: 400;
  padding: 8px 0;
  color: var(--color-fg);
}
.trlc-checkout-summary__totals td {
  text-align: right;
  padding: 8px 0;
}
.trlc-checkout-summary__total th,
.trlc-checkout-summary__total td {
  font-weight: 700;
  font-size: 16px;
  border-top: 1px solid var(--color-brand-700);
  padding-top: 12px;
}

/* Mobile collapse — summary below form */
@media (max-width: 1024px) {
  .trlc-checkout-summary {
    position: static;
    margin-top: 24px;
  }
}

/* === end 03-03 === */

/* === Phase 3 Plan 03-04: thank-you + my-account === */

/* Thank-you page (D-15 / CHECK-08) */
.woocommerce-order-received .entry-title,
.trlc-thankyou-h1 {
  font-family: var(--font-heading);
  font-size: clamp(32px, 5vw, 40px);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  text-align: center;
  margin: 32px 0 24px 0;
}

.trlc-thankyou-timeline {
  margin: 48px auto;
  max-width: 640px;
}
.trlc-thankyou-timeline h2 {
  font-family: var(--font-body);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 24px;
}
.trlc-thankyou-timeline ol {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.trlc-thankyou-timeline li {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.trlc-timeline__icon {
  display: inline-flex;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  color: var(--color-brand-700);
}
.trlc-timeline__icon svg { width: 24px; height: 24px; }
.trlc-timeline__copy {
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-fg);
}

.trlc-thankyou-password-prompt {
  box-shadow: var(--shadow-inset-brand);
  padding: 24px;
  max-width: 640px;
  margin: 48px auto;
  text-align: center;
  background: var(--color-bg);
}
.trlc-thankyou-password-prompt h2 {
  font-family: var(--font-body);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.trlc-thankyou-password-prompt .trlc-cta-primary {
  display: inline-block;
  width: 100%;
  max-width: 320px;
  margin-top: 16px;
}
.trlc-email-mono {
  font-family: var(--font-body);
  font-weight: 700;
}

.trlc-thankyou-continue {
  text-align: center;
  margin: 48px 0;
}
.trlc-thankyou-continue a {
  font-size: 14px;
  color: var(--color-brand-700);
  text-decoration: underline;
}
.trlc-thankyou-continue a:hover { color: var(--color-brand-hover); }

/* Neutralize WooCommerce's baked-in green "success" notice styling on the
   unpaid order-received view — a green banner reads as "you're done" which
   is wrong when payment hasn't gone through. */
body.trlc-order-unpaid .woocommerce-thankyou-order-received {
  color: var(--color-fg) !important;
  background: transparent !important;
  border-top-color: var(--color-fg) !important;
}
body.trlc-order-unpaid .woocommerce-thankyou-order-received::before {
  color: var(--color-fg) !important;
}

body.woocommerce-order-received .woocommerce-thankyou-order-received {
  color: #111 !important;
}

/* Unpaid/pending order-received notice. */
.trlc-thankyou-unpaid-notice {
  padding: 0 24px;
  max-width: 640px;
  margin: 32px auto;
}
.trlc-thankyou-unpaid-notice p {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 700;
  color: var(--color-fg);
  margin: 0;
  text-align: center;
}

/* Order-received page Pay/Cancel actions — native WooCommerce renders these
   as plain gray buttons stuck together with no gap. Give them breathing
   room and match the site's established .trlc-cta-primary button language
   (dark fill for the primary action, outline for the secondary one)
   instead of the default unstyled gray. */
body.woocommerce-order-received .order-actions--heading + td {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 8px !important;
}
body.woocommerce-order-received .order-actions-button {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 76px;
  min-height: 36px !important;
  width: auto !important;
  padding: 8px 16px !important;
  margin: 0 !important;
  border: 1px solid var(--color-fg) !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  text-decoration: none !important;
  transition: background-color 180ms ease, color 180ms ease;
}
body.woocommerce-order-received .order-actions-button.pay {
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
}
body.woocommerce-order-received .order-actions-button:hover,
body.woocommerce-order-received .order-actions-button:focus-visible {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)) !important;
  color: var(--color-bg) !important;
}

/* /my-account dashboard (ACCT-03 / D-13b minimal v1) */
.woocommerce-account .woocommerce-MyAccount-navigation {
  list-style: none;
  padding: 0;
  margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
  box-shadow: var(--shadow-inset-brand);
  margin: 0 0 8px 0;
  list-style: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block;
  min-height: 44px;
  line-height: 44px;
  padding: 0 16px;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 16px;
  text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  color: var(--color-brand-hover);
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a {
  background: var(--color-fg);
  color: var(--color-bg);
}

.woocommerce-account .woocommerce-MyAccount-content {
  box-shadow: var(--shadow-inset-brand);
  padding: 24px;
  background: var(--color-bg);
}

.trlc-account-page-h1,
.woocommerce-account .entry-title {
  font-family: var(--font-heading);
  font-size: clamp(32px, 5vw, 40px);
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin: 0 0 24px 0;
  color: var(--color-fg);
}

/* Status badges (UI-SPEC §Color "My Account order status badges") */
.trlc-order-status-badge {
  display: inline-block;
  min-height: 28px;
  padding: 4px 12px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border-radius: 999px;
  box-shadow: var(--shadow-inset-brand);
  background: var(--color-bg);
  color: var(--color-brand-700);
}
.trlc-order-status-badge--processing,
.trlc-order-status-badge--shipped {
  background: var(--color-fg);
  color: var(--color-bg);
  box-shadow: none;
}
.trlc-order-status-badge--completed {
  background: var(--color-bg);
  color: var(--color-brand-700);
  box-shadow: var(--shadow-inset-brand);
}
.trlc-order-status-badge--refunded,
.trlc-order-status-badge--failed,
.trlc-order-status-badge--cancelled {
  background: var(--color-bg);
  color: var(--color-destructive);
  box-shadow: inset 0 0 0 1px var(--color-destructive);
}
.trlc-order-status-badge--pending,
.trlc-order-status-badge--on-hold {
  background: var(--color-bg);
  color: var(--color-brand-hover);
  box-shadow: inset 0 0 0 1px var(--color-brand-hover);
}

/* Empty states (D-13b minimal v1 dashboard) */
.trlc-empty-state-heading {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  margin: 16px 0 8px 0;
}
.trlc-empty-state-body {
  font-family: var(--font-body);
  font-size: 16px;
  color: var(--color-fg);
}
.trlc-empty-state-body a {
  color: var(--color-brand-700);
  text-decoration: underline;
}
.trlc-empty-state-body a:hover { color: var(--color-brand-hover); }

/* Two-column layout for /my-account on desktop (240px nav + content) */
@media (min-width: 1025px) {
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    display: inline-block;
    vertical-align: top;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width: 240px;
    margin-right: 32px;
  }
  .woocommerce-account .woocommerce-MyAccount-content {
    width: calc(100% - 280px);
  }
}

/* === end 03-04 === */

/* === Phase 3 Plan 03-05: legal pages (COMP-01 / COMP-02 / COMP-03) ===
   Single shared Bricks Page template (`legal-page`) bound to 3 page IDs
   (privacy / terms / refund-policy) via templateConditions main='ids'.
   Layout per UI-SPEC §"Privacy / Terms / Refund pages":
     - max-width 720px reading column, centered
     - 24px / 48px responsive padding
     - H1 Bebas Neue 40px uppercase
     - H2 Inter 700 20px uppercase letter-spacing 0.08em
     - Body 16px Inter 1.5 line-height
     - 1px inset taupe content card (.trlc-legal-content) per UI-SPEC YES recommendation
   Zero hex literals — all colors via design-system tokens. */

.trlc-legal-page {
  max-width: 720px;
  margin: 0 auto;
  padding: 32px 24px;
}
@media (min-width: 1025px) {
  .trlc-legal-page { padding: 64px 48px; }
}

.trlc-legal-h1 {
  font-family: var(--font-heading);
  font-size: clamp(32px, 5vw, 40px);
  letter-spacing: 0.02em;
  text-transform: uppercase;
  margin: 0 0 32px 0;
  text-align: left;
  color: var(--color-fg);
}

.trlc-legal-content {
  box-shadow: var(--shadow-inset-brand);
  padding: 32px 24px;
  background: var(--color-bg);
}
@media (min-width: 1025px) {
  .trlc-legal-content { padding: 48px; }
}

.trlc-legal-content h2 {
  font-family: var(--font-body);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 32px 0 16px 0;
  color: var(--color-fg);
}
.trlc-legal-content h2:first-child { margin-top: 0; }

.trlc-legal-content h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 24px 0 8px 0;
  color: var(--color-fg);
}

.trlc-legal-content p {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-fg);
  margin: 0 0 16px 0;
}

.trlc-legal-content a {
  color: var(--color-brand-700);
  text-decoration: underline;
}
.trlc-legal-content a:hover {
  color: var(--color-brand-hover);
}

.trlc-legal-content ul,
.trlc-legal-content ol {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-fg);
  padding-left: 24px;
  margin: 0 0 16px 0;
}
.trlc-legal-content li {
  margin-bottom: 8px;
}

.trlc-legal-content .trlc-policy-alpha > li {
  margin-bottom: 28px;
}

.trlc-legal-content .trlc-policy-alpha > li > p {
  margin-top: 8px;
}

.trlc-legal-content strong {
  font-weight: 700;
}

.trlc-legal-content blockquote {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-fg);
  margin: 16px 0;
  padding: 16px 24px;
  box-shadow: inset 3px 0 0 var(--color-brand-700);
  background: var(--color-bg);
}
.trlc-legal-content blockquote p:last-child { margin-bottom: 0; }

.trlc-legal-content code {
  background: rgba(103, 100, 94, 0.08);
  padding: 2px 6px;
  font-size: 14px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.trlc-legal-content hr {
  border: 0;
  border-top: 1px solid var(--color-brand-700);
  margin: 32px 0;
}

/* === end 03-05 === */

/* === Phase 3 Plan 03-06: Complianz cookie banner brand overrides (COMP-04 / D-12) ===
   Banner copy + 3-button (Accept all / Reject all / Customize) configured via
   scripts/configure-complianz.sh. CSS below binds banner classes to design-system
   tokens — ZERO hex literals. Selectors target Complianz 7.4.6's React-rendered
   `.cmplz-cookiebanner` shadow DOM (Pattern 8). */

.cmplz-cookiebanner.cmplz-bottom,
.cmplz-cookiebanner.cmplz-bottom-right,
.cmplz-cookiebanner.cmplz-bottom-left {
  background: #fefefc;
  color: var(--color-fg);
  font-family: var(--font-body);
  box-shadow: var(--shadow-inset-brand);
  padding: 24px;
}

.cmplz-cookiebanner .cmplz-message,
.cmplz-cookiebanner .cmplz-title,
.cmplz-cookiebanner .cmplz-categories {
  color: var(--color-fg);
  font-size: 16px;
  line-height: 1.5;
}

.cmplz-cookiebanner .cmplz-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

/* Accept all — accent fill (UI-SPEC §Color reserved for primary CTA) */
.cmplz-cookiebanner button.cmplz-accept,
.cmplz-cookiebanner .cmplz-accept-all {
  background: var(--color-fg);
  color: #fefefc;
  border: 1px solid var(--color-fg);
  min-height: 44px;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  cursor: pointer;
}
.cmplz-cookiebanner button.cmplz-accept:hover,
.cmplz-cookiebanner .cmplz-accept-all:hover,
.cmplz-cookiebanner button.cmplz-accept:focus-visible,
.cmplz-cookiebanner .cmplz-accept-all:focus-visible {
  background: #fefefc;
  color: var(--color-fg);
}

/* Reject all — text-only (UI-SPEC §Color "Accent NOT reserved for") */
.cmplz-cookiebanner button.cmplz-deny,
.cmplz-cookiebanner button.cmplz-dismiss {
  background: #fefefc;
  color: var(--color-fg);
  border: 1px solid var(--color-fg);
  min-height: 44px;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  cursor: pointer;
  text-decoration: none;
}
.cmplz-cookiebanner button.cmplz-deny:hover,
.cmplz-cookiebanner button.cmplz-dismiss:hover,
.cmplz-cookiebanner button.cmplz-deny:focus-visible,
.cmplz-cookiebanner button.cmplz-dismiss:focus-visible {
  background: var(--color-fg);
  color: #fefefc;
  text-decoration: none;
}

/* Customize — taupe outline */
.cmplz-cookiebanner button.cmplz-view-preferences,
.cmplz-cookiebanner button.cmplz-categories-button,
.cmplz-cookiebanner .cmplz-manage-options {
  background: #fefefc;
  color: var(--color-fg);
  box-shadow: none;
  border: 1px solid var(--color-fg);
  min-height: 44px;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}
.cmplz-cookiebanner button.cmplz-view-preferences:hover,
.cmplz-cookiebanner .cmplz-manage-options:hover,
.cmplz-cookiebanner button.cmplz-view-preferences:focus-visible,
.cmplz-cookiebanner .cmplz-manage-options:focus-visible {
  background: var(--color-fg);
  color: #fefefc;
}

/* Save preferences (Customize panel) */
.cmplz-cookiebanner button.cmplz-save-preferences {
  width: 100%;
  background: var(--color-fg);
  color: #fefefc;
  border: 1px solid var(--color-fg);
  min-height: 44px;
  padding: 12px 24px;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.02em;
  cursor: pointer;
  margin-top: 24px;
}
.cmplz-cookiebanner button.cmplz-save-preferences:hover,
.cmplz-cookiebanner button.cmplz-save-preferences:focus-visible {
  background: #fefefc;
  color: var(--color-fg);
}

.cmplz-cookiebanner .cmplz-btn {
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Customize-panel category rows */
.cmplz-cookiebanner.cmplz-categories,
.cmplz-cookiebanner .cmplz-categories {
  background: #fefefc;
  box-shadow: var(--shadow-inset-brand);
  padding: 32px;
  max-width: 480px;
}
.cmplz-cookiebanner .cmplz-category {
  margin: 16px 0;
  padding: 16px 0;
  border-top: 1px solid var(--color-brand-700);
}
.cmplz-cookiebanner .cmplz-category:first-child { border-top: 0; }
.cmplz-cookiebanner .cmplz-category-title,
.cmplz-cookiebanner .cmplz-category-header {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--color-fg);
}
.cmplz-cookiebanner .cmplz-description {
  font-family: var(--font-body);
  font-size: 14px;
  color: var(--color-fg);
  margin-top: 4px;
  line-height: 1.5;
}

/* Reduced-motion override (UI-SPEC §Accessibility) */
@media (prefers-reduced-motion: reduce) {
  .cmplz-cookiebanner {
    transition: none !important;
    animation: none !important;
  }
}

/* === end 03-06 === */

/* === Plan 04-04 (post-QA-v3 fix) — H1 .trlc-display Bebas Neue binding === */
/*
 * QA v3 (2026-04-27) flagged: .trlc-display class was applied to public H1s
 * but had no CSS rule binding font-family to var(--font-heading) — H1s fell
 * back to system serif instead of Bebas Neue OFL display per UI-SPEC
 * §Typography (Display tier 40-56px, weight 400, line-height 1.05-1.1).
 *
 * This rule binds the Display tier per UI-SPEC. Home hero gets the larger
 * scale variant (clamp 40-56px) per UI-SPEC line 89.
 */
.trlc-display {
  font-family: var(--font-heading);
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  font-size: clamp(32px, 5vw, 40px);
  line-height: 1.1;
}

/* Home hero override per UI-SPEC §Typography (Display amplified to 56/40px on hero) */
.trlc-home-hero .trlc-display {
  font-size: clamp(40px, 5vw, 56px);
  line-height: 1.05;
}

/* === end Plan 04-04 post-QA-v3 fix === */

/* === Plan 04-04 (post-QA-v4 fix) — Home featured products grid === */
/*
 * QA v4 (orchestrator-direct Playwright) flagged the .trlc-home-featured-grid
 * rendering as a single column on desktop — every product card stacked
 * vertically with no card chrome. Root cause: the class had zero CSS rules
 * defined. UI-SPEC §Layout §Home featured products grid contract:
 *   - 4-column on desktop (≥1024px)
 *   - 2-column on tablet (768-1023px)
 *   - 1-column on mobile (<768px)
 *   - gap 24px (32px on tablet+)
 *   - Cards: 1px taupe inset border + paper-white bg + square image + title + price
 *   - Hover: subtle lift + border darken (brand-700 → brand-900)
 */
.trlc-home-featured-grid {
  display: grid;
  gap: 24px;
  padding: 0 24px;
  max-width: 1280px;
  margin: 32px auto 64px;
}
@media (min-width: 768px) {
  .trlc-home-featured-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
    padding: 0 48px;
  }
}
@media (min-width: 1024px) {
  .trlc-home-featured-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.trlc-featured-card {
  display: flex;
  flex-direction: column;
  background: var(--color-bg);
  border: 1px solid var(--color-brand-700);
  text-decoration: none;
  color: inherit;
  transition: transform 200ms ease, border-color 200ms ease;
  overflow: hidden;
}
.trlc-featured-card:hover {
  transform: translateY(-2px);
  border-color: var(--color-brand-900, #4a4742);
}
.trlc-featured-card-img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  background: var(--color-bg-soft, #f5f3f0);
}
.trlc-featured-card-title {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 500;
  margin: 16px 16px 8px;
  color: var(--color-fg);
}
.trlc-featured-card-price {
  font-family: var(--font-body);
  font-size: 14px;
  margin: 0 16px 16px;
  color: var(--color-brand-700);
}

/* === end Plan 04-04 post-QA-v4 fix === */

/* ===================================================================
 * Plan 04-04 — QA-v5 fix Issue A: Header nav visible on desktop
 *
 * QA v5 visual inspection at 1280px desktop showed nav <ul> not rendering.
 * Root cause: Bricks Code element signature-allowlist (verify_code_signature)
 * was silently rejecting hd0004 because `_bricks_page_header_2` postmeta held
 * a stale wp_hash signature that didn't match the current code body. The
 * inline `<style>` @media block inside the nav code increased signature drift
 * surface; this commit moves all breakpoint behavior to style.css and
 * eliminates the inline `display:none` so the nav code stays minimal.
 * =================================================================== */

/* Header nav: hidden on mobile, flex-row on desktop ≥768px */
.trlc-header-nav {
  display: none;
}
.trlc-header-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 32px;
  align-items: center;
}
.trlc-header-nav ul li a {
  color: var(--color-fg, #232323);
  text-decoration: none;
  font-family: var(--font-body);
  font-size: 14px;
  letter-spacing: 0.02em;
}
.trlc-header-nav ul li a:hover,
.trlc-header-nav ul li a:focus-visible {
  color: var(--color-brand-700, #3c4936);
}
.trlc-header-nav ul li a[aria-current="page"] {
  font-weight: 600;
}
@media (min-width: 768px) {
  .trlc-header-nav {
    display: flex;
    align-items: center;
  }
}

/* Mobile toggle button (visible <768px only).
 * Replaces former inline `display:inline-flex` + inline `<style>` @media block. */
.trlc-header-mobile-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  background: none;
  border: 0;
  color: var(--color-fg, #232323);
  cursor: pointer;
}
@media (min-width: 768px) {
  .trlc-header-mobile-toggle {
    display: none;
  }
}

/* === end Plan 04-04 QA-v5 fix Issue A === */

/* ===================================================================
 * Plan 04-06 — QA-v5 fix Issue B: Footer 4-column grid at desktop
 *
 * QA v5 visual inspection at 1280px showed footer columns (Shop / About /
 * Policies / Stay in touch) stacking vertically instead of laying out
 * as a 4-column grid. The footer template (Plan 04-06) emits the columns
 * as `<div id="brxe-ft0003">` containing 4 child `<div class="brxe-block">`
 * elements but ships no CSS to bind them to a grid.
 *
 * Per UI-SPEC §Layout §Footer: 4-column desktop grid with the brand block
 * on the left and the newsletter signup on the right; stacks vertically
 * under 768px. The newsletter form lives inside the 4th column block
 * (#brxe-ft0017) so the grid naturally accommodates it.
 * =================================================================== */

#brxe-ft0001 {
  background: var(--color-bg);
  border-top: 1px solid var(--color-brand-700);
  padding: 48px 24px;
  margin-top: 64px;
}
#brxe-ft0003 {
  display: flex;
  flex-direction: column;
  gap: 32px;
  max-width: 1280px;
  margin: 0 auto;
}
#brxe-ft0003 > .brxe-block {
  min-width: 0;
}
#brxe-ft0003 .brxe-heading {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-fg, #232323);
  margin: 0 0 16px 0;
}
#brxe-ft0003 ul li a:hover,
#brxe-ft0003 ul li a:focus-visible {
  color: var(--color-brand-700, #3c4936);
  text-decoration: underline;
}
@media (min-width: 768px) {
  #brxe-ft0003 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 48px;
    align-items: start;
  }
}
#brxe-ft0023 {
  max-width: 1280px;
  margin: 32px auto 0;
  padding-top: 24px;
  border-top: 1px solid var(--color-brand-700);
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}
@media (min-width: 768px) {
  #brxe-ft0023 {
    flex-direction: row;
    justify-content: space-between;
  }
}

/* === end Plan 04-06 QA-v5 fix Issue B === */

/* ===================================================================
 * Plan 04-04 — QA-v5 fix Issue C: About page intro max-width 720px
 *
 * QA v5 visual inspection at 1280px showed the About page H1 ("Our story")
 * and the body intro paragraphs spanning the full viewport edge-to-edge
 * with zero side padding. The about template emits the H1 + intro inside
 * `<div id="brxe-ab0002">` (the about-hero section's inner div) which had
 * no max-width constraint. The downstream sections (about-sections inside
 * brxe-ab0005) already inline-style themselves to max-width:720px, so the
 * hero was the visual outlier.
 *
 * Per UI-SPEC §Layout §About: the entire About reading column should be
 * 720px wide on a centered axis with horizontal padding to preserve
 * mobile gutters. This rule binds the hero block to that contract.
 * =================================================================== */

#brxe-ab0002 {
  max-width: 720px;
  margin: 64px auto 32px;
  padding: 0 24px;
}
#brxe-ab0002 .brxe-heading {
  margin: 0 0 32px 0;
}
.trlc-about-intro {
  font-family: var(--font-body);
}
.trlc-about-intro p {
  font-size: 18px;
  line-height: 1.45;
  color: var(--color-fg, #232323);
  margin: 0 0 20px 0;
}
.trlc-about-intro p:last-child {
  margin-bottom: 0;
}
.trlc-about-section-heading {
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.04em;
  margin: 0 0 16px 0;
}
.trlc-about-section-body {
  font-family: var(--font-body);
}
.trlc-about-section-body p {
  font-size: 18px;
  line-height: 1.45;
  margin: 0 0 20px 0;
}
.trlc-about-section-body p:last-child {
  margin-bottom: 0;
}

/* Plan 04-07 — About page containment repair
 *
 * The About Bricks JSON contains inner-container `_cssCustom` rules for the
 * manifesto, mission/vision, and intro blocks, but the live render can drop
 * those generated block rules. Keep the page source intact and bind the visual
 * contract from theme CSS so the reading column does not escape full-width.
 */
body.page-id-105 [data-section="about-hero"] > #brxe-ab0002,
body.page-id-105 [data-section="about-manifesto-lead"] > .brxe-block,
body.page-id-105 [data-section="about-intro"] > .brxe-block {
  width: 100%;
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 24px;
  padding-left: 24px;
}

body.page-id-105 [data-section="about-hero"] > #brxe-ab0002 {
  text-align: center;
}

body.page-id-105 [data-section="about-mission-vision"] > .brxe-block {
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 24px;
  padding-left: 24px;
  display: grid;
  gap: 32px;
}

@media (min-width: 1024px) {
  body.page-id-105 [data-section="about-mission-vision"] > .brxe-block {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 64px;
  }
}

/* === end Plan 04-04 QA-v5 fix Issue C === */

/* ============================================================
 * === Plan 04-04 — Visual Fidelity Pass v2 (Path B Codex deep-fix) ===
 *
 * Reference: design-references/UI Design/Home Page.png + design-system/tokens.css
 * Scope: STRICT desktop ≥1024px (per Codex H4 honest-scoping); mobile/tablet untouched.
 * Cross-AI review fixes applied: H1-H5 selectors + scoping + tokens + framing.
 *
 * Sections in this block:
 *   §1  Hero copy as overlay — section-level gradient scrim
 *   §2  Hero CTA outlined button — scoped to hero only
 *   §3  Featured cards refinement — paper-warm via canonical tokens (caveat: real
 *       product photography pending; placeholder cards cannot reach Stitch parity
 *       until Plan 04-09 carry-over backfill)
 *   §4  Section heading scale refinement
 *   §5  Body type refinement
 *   §6  Story + Journal arrow-link CTAs
 *   §7  Section vertical rhythm
 * ============================================================ */

/* ============================================================
 * §1. Hero copy as overlay — section-level gradient scrim
 *     Codex MEDIUM #2: editorial-calm gradient, NOT glassmorphism
 *     Codex MEDIUM #1: anchor on section, not figure
 *     Codex H4: strict desktop-only wrap
 * ============================================================ */
@media (min-width: 1024px) {
  section[data-section="home-hero"] {
    position: relative;
  }
  /* Gradient scrim — editorial calm, not glassmorphism panel */
  section[data-section="home-hero"]::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
      to bottom right,
      rgba(255, 255, 255, 0.55) 0%,
      rgba(255, 255, 255, 0.25) 35%,
      rgba(255, 255, 255, 0)    65%
    );
  }
  section[data-section="home-hero"] .trlc-home-hero-figure {
    position: relative;
    margin: 0;
  }
  section[data-section="home-hero"] > .trlc-home-hero-content,
  section[data-section="home-hero"] .trlc-home-hero-content {
    position: absolute;
    bottom: 64px;
    left: 64px;
    z-index: 2;
    max-width: 480px;
    /* No background panel — text directly over scrim per Rhode editorial */
  }
  section[data-section="home-hero"] .trlc-home-hero-content .trlc-display {
    font-size: clamp(40px, 4vw, 48px);
    line-height: 1.05;
    margin: 0 0 12px 0;
    color: var(--color-fg);
  }
  section[data-section="home-hero"] .trlc-home-hero-content .trlc-heading-secondary {
    font-size: 16px;
    line-height: 1.5;
    margin: 0 0 24px 0;
    color: var(--color-fg);
  }
}

/* ============================================================
 * §2. Hero CTA outlined button — SCOPED to hero only
 *     Codex H3 + Gemini HIGH #4: NOT global, no collision with footer subscribe
 *     Codex MEDIUM #4: reduced-motion override
 * ============================================================ */
@media (min-width: 1024px) {
  section[data-section="home-hero"] .trlc-home-hero-content .trlc-cta-button.trlc-cta-filled {
    display: inline-block;
    background: transparent;
    color: var(--color-fg);
    border: 1px solid var(--color-fg);
    padding: 12px 24px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background 200ms ease, color 200ms ease;
  }
  section[data-section="home-hero"] .trlc-home-hero-content .trlc-cta-button.trlc-cta-filled:hover {
    background: var(--color-fg);
    color: var(--color-bg);
  }
  /* Reduced-motion override per Codex MEDIUM #4 + UI-SPEC §Accessibility */
  @media (prefers-reduced-motion: reduce) {
    section[data-section="home-hero"] .trlc-home-hero-content .trlc-cta-button.trlc-cta-filled {
      transition: none;
    }
  }
}
/* === end VFP v2 §1+§2 === */

/* ============================================================
 * §3. Featured cards refinement — paper-warm via canonical tokens
 *     Codex H5: caveat — placeholder cards CANNOT reach Stitch parity until
 *     real product photography lands (Plan 04-09 carry-over backfill)
 *     Gemini MEDIUM + Codex MEDIUM #5: tokens NOT raw hexes
 * ============================================================ */
@media (min-width: 1024px) {
  .trlc-featured-card {
    background: var(--color-bg);
    border: 1px solid var(--color-border-warm);   /* NEW canonical token (paper-warm) */
  }
  .trlc-featured-card-img {
    background: var(--color-surface-warm);        /* NEW canonical token (warm off-white) */
  }
  .trlc-featured-card-title {
    text-transform: none;       /* sentence case, not caps — placeholder copy is data, swaps with real product titles */
    font-weight: 400;
    font-size: 14px;
    letter-spacing: 0;
  }
  .trlc-featured-card-price {
    font-weight: 400;
    font-size: 13px;
    color: var(--color-brand-700);
  }
}
/* === end VFP v2 §3 === */

/* ============================================================
 * §4. Section heading scale refinement
 *     Codex H2 + Gemini HIGH #1: data-section="home-journal"
 *     (NOT "home-journal-preview" — corrected against curl-confirmed live DOM)
 * ============================================================ */
@media (min-width: 1024px) {
  section[data-section="home-featured"] h2,
  section[data-section="home-story"] h2,
  section[data-section="home-journal"] h2 {
    font-size: clamp(24px, 2vw, 28px);
    letter-spacing: 0.02em;
    margin: 0 0 32px 0;
  }
}

/* ============================================================
 * §5. Body type refinement
 * ============================================================ */
@media (min-width: 1024px) {
  section[data-section="home-story"] .trlc-home-story-body p,
  section[data-section="home-journal"] p {
    font-size: 15px;
    line-height: 1.6;
    color: var(--color-fg);
    font-weight: 400;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ============================================================
 * §7. Section vertical rhythm — STRICT desktop-only per Codex H4
 *     Mobile/tablet rhythm UNTOUCHED in this pass
 *     !important required to win against Bricks frontend dynamic CSS,
 *     which emits per-section ID rules (specificity 0,1,0,0):
 *       #brxe-hm0004 {padding-top: 48px; padding-bottom: 48px; ...}
 *     Our attribute selector (specificity 0,0,1,1) loses without the bump.
 *     Same precedent as Phase 2 02-07 .facetwp-checkbox cascade reinforcement.
 * ============================================================ */
@media (min-width: 1024px) {
  section[data-section="home-featured"],
  section[data-section="home-story"],
  section[data-section="home-journal"] {
    padding: 96px 0 !important;
  }
}
/* === end VFP v2 §4+§5+§7 === */

/* ============================================================
 * §6. Arrow-link CTA consistency — Story + Journal
 *     Codex H1 + Gemini HIGH #2: target .trlc-text-link
 *     (NOT .trlc-cta-button — corrected against curl-confirmed live DOM)
 *     Codex MEDIUM #4: reduced-motion override
 * ============================================================ */
@media (min-width: 1024px) {
  section[data-section="home-story"] .trlc-text-link,
  section[data-section="home-journal"] .trlc-text-link {
    display: inline-block;
    background: transparent;
    border: 0;
    color: var(--color-fg);
    padding: 8px 0;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    position: relative;
  }
  section[data-section="home-story"] .trlc-text-link::after,
  section[data-section="home-journal"] .trlc-text-link::after {
    content: " →";
    margin-left: 6px;
    transition: margin-left 200ms ease;
  }
  section[data-section="home-story"] .trlc-text-link:hover::after,
  section[data-section="home-journal"] .trlc-text-link:hover::after {
    margin-left: 12px;
  }
  /* Reduced-motion override per Codex MEDIUM #4 + UI-SPEC §Accessibility */
  @media (prefers-reduced-motion: reduce) {
    section[data-section="home-story"] .trlc-text-link::after,
    section[data-section="home-journal"] .trlc-text-link::after {
      transition: none;
    }
  }
}
/* === end VFP v2 §6 === */
/* === end Visual Fidelity Pass v2 (Path B) === */

/* ============================================================
 * Desktop Home visual fidelity rebuild — Image 2 target
 * Scope: Home page desktop only. Global header/footer stay intact elsewhere.
 * ============================================================ */

.trlc-home-target-header,
.trlc-home-target-footer {
  display: none;
}

@media (min-width: 1024px) {
  body.home {
    background: #f7f7f6;
  }

  body.home header[data-section="site-header"],
  body.home .trlc-cart-trigger,
  body.home #brx-footer {
    display: none !important;
  }

  body.home .trlc-home-target-header {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    min-height: 58px;
    padding: 0 52px;
    background: #fff;
    border: 0;
    font-family: var(--font-body);
    color: #111;
  }

  body.home .trlc-home-target-header a,
  body.home .trlc-home-target-header button {
    color: inherit;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.16em;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.home .trlc-home-target-header__links {
    display: flex;
    align-items: center;
    gap: 36px;
  }

  body.home .trlc-home-target-header__links--right {
    justify-content: flex-end;
    gap: 32px;
  }

  body.home .trlc-home-target-header__brand {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.42em;
    transform: translateX(0.21em);
    white-space: nowrap;
  }

  body.home .trlc-home-target-header__cart {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 0;
    background: transparent;
    border: 0;
    cursor: pointer;
  }

  body.home .trlc-home-target-header__cart-count {
    letter-spacing: 0;
  }

  body.home section[data-section="home-hero"] {
    position: relative;
    display: block;
    width: 100%;
    height: 620px;
    padding: 0 !important;
    overflow: hidden;
    background: #f3efe9;
  }

  body.home section[data-section="home-hero"]::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.62) 0%,
      rgba(255, 255, 255, 0.36) 34%,
      rgba(255, 255, 255, 0) 66%
    );
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-figure,
  body.home section[data-section="home-hero"] .trlc-home-hero-figure img {
    width: 100%;
    height: 100% !important;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-figure img {
    object-fit: cover !important;
    object-position: center center;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content {
    position: absolute;
    left: 7.5vw;
    /* QA fix 2026-05-02: anchor from top with breathing room — bottom: 200px
       was pushing the (tall) content to the top of the section because content
       height + 200px ≈ section height, making H1 sit flush against the header. */
    top: 80px;
    bottom: auto;
    z-index: 2;
    max-width: 440px;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-display {
    margin: 0 0 22px;
    max-width: 380px;
    color: #111;
    font-family: var(--font-body);
    font-size: clamp(42px, 3.5vw, 56px);
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.08;
    text-transform: uppercase;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-heading-secondary {
    max-width: 420px;
    margin: 0 0 28px;
    color: #111;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.65;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-cta-button.trlc-cta-filled {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 24px;
    background: #000;
    border: 1px solid #000;
    color: #fff;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    text-transform: none;
  }

  body.home section[data-section="home-featured"] {
    display: block;
    padding: 0 0 116px !important;
    background: #f7f7f6;
  }

  body.home .trlc-home-featured-pills {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 52px 32px 0;
  }

  body.home .trlc-home-featured-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 84px;
    height: 25px;
    padding: 0 20px;
    border: 1px solid #b8b5ae;
    border-radius: 999px;
    color: #111;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.16em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.home .trlc-home-featured-pill.is-active {
    background: #5f5b54;
    border-color: #5f5b54;
    color: #fff;
  }

  body.home .trlc-home-featured-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 48px;
    max-width: 1320px;
    margin: 188px auto 0;
    padding: 0 44px;
  }

  body.home .trlc-featured-card {
    display: block;
    overflow: visible;
    min-width: 0;
    background: transparent;
    border: 0;
    color: #111;
    text-decoration: none;
    transition: none;
  }

  body.home .trlc-featured-card:hover {
    transform: none;
    border-color: transparent;
  }

  body.home .trlc-featured-card-media {
    display: block;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    background: #f2f2f0;
  }

  body.home .trlc-featured-card-img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    background: #f2f2f0;
  }

  body.home .trlc-featured-card-body {
    padding: 22px 0 0;
  }

  body.home .trlc-featured-card-title-link {
    color: inherit;
    text-decoration: none;
  }

  body.home .trlc-featured-card-title {
    margin: 0 0 20px;
    color: #111;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
  }

  body.home .trlc-featured-card-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }

  body.home .trlc-featured-card-price {
    margin: 0;
    color: #57524b;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0;
  }

  body.home .trlc-featured-card-add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    min-height: 24px;
    padding: 0 14px;
    border: 0;
    border-radius: 999px;
    background: #3d3b37;
    color: #fff;
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.home section[data-section="home-story"] {
    display: block;
    padding: 112px 24px 134px !important;
    background: #f7f7f6;
    text-align: center;
  }

  body.home .trlc-home-story-body {
    max-width: 720px;
    margin: 0 auto;
  }

  body.home .trlc-home-story-body h2 {
    margin: 0 0 26px;
    color: #111;
    font-family: var(--font-body);
    font-size: 23px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.3;
    text-transform: none;
  }

  body.home .trlc-home-story-body p {
    max-width: 680px;
    margin: 0 auto;
    color: #111;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.75;
  }

  /* QA fix 2026-05-02: was display: none !important on desktop home — operator
     wants the journal section visible on desktop too. Restore + apply minimal
     desktop grid layout for the 3 journal cards. */
  body.home section[data-section="home-journal"] {
    display: block;
    padding: 96px 0;
    text-align: center;
  }
  body.home section[data-section="home-journal"] .trlc-home-journal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
    max-width: 1080px;
    margin: 0 auto 32px;
    padding: 0 48px;
  }
  body.home section[data-section="home-journal"] .trlc-journal-card {
    display: block;
    text-align: left;
    padding: 24px;
    background: #fff;
    border: 1px solid #e5e2dd;
    text-decoration: none;
    color: inherit;
    transition: border-color 200ms ease, transform 200ms ease;
  }
  body.home section[data-section="home-journal"] .trlc-journal-card:hover {
    border-color: #111;
  }
  body.home section[data-section="home-journal"] .trlc-journal-card-title {
    font-family: var(--font-heading);
    font-size: 18px;
    line-height: 1.3;
    margin: 0 0 12px;
    color: #111;
  }
  body.home section[data-section="home-journal"] .trlc-journal-card-date {
    font-family: var(--font-body);
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b6b6b;
  }

  body.home .trlc-home-target-footer {
    display: block;
    padding: 84px 48px 58px;
    background: #f4f4f3;
    border-top: 1px solid #e5e2dd;
    color: #111;
    font-family: var(--font-body);
  }

  body.home .trlc-home-target-footer__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 80px;
    max-width: 920px;
    margin: 0 auto 86px;
  }

  body.home .trlc-home-target-footer__column {
    display: flex;
    flex-direction: column;
    gap: 17px;
  }

  body.home .trlc-home-target-footer__column h2 {
    margin: 0 0 5px;
    color: #111;
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.18em;
    line-height: 1;
    text-transform: uppercase;
  }

  body.home .trlc-home-target-footer__column a {
    color: #55504a;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 0.16em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.home .trlc-home-target-footer__brand {
    display: block;
    width: max-content;
    margin: 0 auto 58px;
    color: #111;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.home .trlc-home-target-footer__copyright {
    margin: 0;
    color: #77736d;
    font-family: var(--font-body);
    font-size: 9px;
    font-weight: 400;
    letter-spacing: 0.18em;
    line-height: 1.4;
    text-align: center;
    text-transform: uppercase;
  }
}

/* ===================================================================
 * Phase 04.5 brand application shell helpers
 * =================================================================== */
.trlc-logo {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  text-decoration: none;
}

.trlc-logo svg {
  display: block;
  width: auto;
  max-width: 100%;
  height: 32px;
}

.trlc-logo--dark {
  color: var(--color-fg, #232323);
}

.trlc-logo--light,
.trlc-footer-logo {
  color: var(--color-bg, #faf7f2);
}

.trlc-footer {
  background: var(--color-surface-deep, #442515);
  color: var(--color-bg, #faf7f2);
}

.trlc-footer a {
  color: var(--color-bg, #faf7f2);
}

.trlc-footer a:hover,
.trlc-footer a:focus-visible {
  color: var(--color-accent-warm, #7d3826);
}

.bir-disclosure {
  font-size: 11px;
  line-height: 1.4;
  letter-spacing: 0.02em;
  opacity: 0.72;
}

/* Phase 04.5 Wave 5 terracotta hover state per Q3 conversion warmth role. */
section[data-section="home-hero"] .trlc-cta-button.trlc-cta-filled:hover,
section[data-section="home-hero"] .trlc-cta-button.trlc-cta-filled:focus-visible {
  background-color: var(--color-accent-warm);
  color: var(--color-bg);
}

.trlc-pdp-add-to-cart:hover,
.trlc-pdp-add-to-cart:focus-visible,
.single_add_to_cart_button:hover,
.single_add_to_cart_button:focus-visible,
.brxe-woocommerce-product-add-to-cart-button:hover button {
  background-color: var(--color-accent-warm);
  color: var(--color-bg);
}

/* === 04.6-01 SHARED SHELL === */
.trlc-header-utilities {
  display: none;
}

@media (min-width: 1024px) {
  body {
    background: #f7f7f6;
  }

  header[data-section="site-header"].trlc-site-header {
    min-height: 58px;
    background: #fff !important;
    color: #111 !important;
    border-bottom: 0 !important;
  }

  header[data-section="site-header"] .trlc-header-shell {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    width: 100%;
    min-height: 58px;
  }

  header[data-section="site-header"] .trlc-header-wordmark {
    justify-self: center;
    color: #111;
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
  }

  header[data-section="site-header"] .trlc-logo svg {
    height: 20px;
    width: auto;
  }

  header[data-section="site-header"] .trlc-header-nav {
    display: flex;
    justify-self: start;
  }

  header[data-section="site-header"] .trlc-header-nav ul,
  header[data-section="site-header"] .trlc-header-utilities {
    align-items: center;
    gap: 34px;
  }

  header[data-section="site-header"] .trlc-header-nav a,
  header[data-section="site-header"] .trlc-header-utilities a,
  header[data-section="site-header"] .trlc-header-cart {
    color: #111;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.16em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  header[data-section="site-header"] .trlc-header-utilities {
    display: flex;
    justify-self: end;
  }

  header[data-section="site-header"] .trlc-header-cart {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 0;
    background: transparent;
    border: 0;
    cursor: pointer;
  }

  header[data-section="site-header"] .trlc-header-cart svg {
    width: 14px;
    height: 14px;
  }

  header[data-section="site-header"] .trlc-header-cart-count {
    min-width: auto;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: 0;
  }

  header[data-section="site-header"] a:hover,
  header[data-section="site-header"] a:focus-visible,
  header[data-section="site-header"] button:hover,
  header[data-section="site-header"] button:focus-visible {
    color: var(--color-accent-warm);
    outline: 1px solid currentColor;
    outline-offset: 6px;
  }

  body.home header[data-section="site-header"],
  body.home #brx-footer {
    display: block !important;
  }

  body.home .trlc-cart-trigger,
  body:not(.home) .trlc-cart-trigger {
    display: none !important;
  }

  body.home .trlc-home-target-header,
  body.home .trlc-home-target-footer {
    display: none !important;
  }

  footer[data-section="site-footer"] {
    background: #f7f7f6 !important;
    color: #111 !important;
    border-top: 1px solid #e4e0da !important;
  }

  footer[data-section="site-footer"] h2,
  footer[data-section="site-footer"] h3,
  footer[data-section="site-footer"] a,
  footer[data-section="site-footer"] p,
  footer[data-section="site-footer"] .bir-disclosure {
    color: #111 !important;
  }

  footer[data-section="site-footer"] .trlc-footer-logo,
  footer[data-section="site-footer"] .trlc-logo--light {
    color: #111 !important;
  }
}
/* === END 04.6-01 SHARED SHELL === */

/* === 04.6-02 SHOP ARCHIVE === */
.trlc-shop-card {
  display: flex;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  padding: 0;
  background: #fff;
  border: 1px solid #e4e0da;
  box-shadow: none;
  color: #111;
  text-decoration: none;
}

.trlc-shop-card:hover {
  transform: none;
}

.trlc-shop-card__media {
  display: flex;
  aspect-ratio: 0.78;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #f0eee9;
  text-decoration: none;
}

.trlc-shop-card__img,
.trlc-product-card .trlc-shop-card__img.trlc-product-card__image {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  display: block;
}

.trlc-shop-card__body,
.trlc-product-card .trlc-shop-card__body {
  display: flex;
  min-height: 156px;
  flex: 1;
  flex-direction: column;
  padding: 14px 14px 16px;
}

.trlc-shop-card__title-link {
  color: inherit;
  text-decoration: none;
}

.trlc-shop-card__title,
.trlc-product-card .trlc-shop-card__title {
  margin: 0 0 12px;
  color: #111;
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.35;
}

.trlc-shop-card__price,
.trlc-product-card .trlc-shop-card__price {
  color: #111;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
}

.trlc-shop-card__sku,
.trlc-product-card .trlc-shop-card__sku {
  display: block;
  margin-top: 8px;
  color: #77736d;
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.trlc-shop-card__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  margin-top: auto;
  padding: 0 14px;
  background: #111;
  color: #fff !important;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.trlc-shop-card__add:hover,
.trlc-shop-card__add:focus-visible {
  background: var(--color-accent-warm);
  color: var(--color-bg) !important;
}

@media (min-width: 1024px) {
  section[data-section="shop-archive"].trlc-shop-archive {
    background: #f7f7f6;
    padding: 72px 52px 120px !important;
  }

  .trlc-shop-shell {
    max-width: 1320px;
    margin: 0 auto;
  }

  .trlc-shop-kicker {
    margin-bottom: 10px;
    color: #77736d;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.18em;
    line-height: 1;
    text-transform: uppercase;
  }

  .trlc-shop-title {
    margin: 0;
    color: #111;
    font-family: var(--font-body);
    font-size: 54px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
  }

  .trlc-shop-intro {
    max-width: 430px;
    margin: 18px 0 0;
    color: #111;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
  }

  .trlc-filter-bar {
    align-items: center;
    gap: 10px !important;
    padding: 22px 0 26px;
    border-top: 1px solid #e4e0da;
    border-bottom: 1px solid #e4e0da;
  }

  .trlc-filter-bar .facetwp-facet {
    margin: 0;
  }

  .trlc-filter-bar .facetwp-checkbox,
  .trlc-filter-bar .facetwp-radio,
  .trlc-filter-clear,
  .facetwp-sort select {
    min-height: 34px;
    border: 1px solid #d9d5ce;
    background: #fff;
    color: #111;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
  }

  .trlc-product-grid.facetwp-template.trlc-shop-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 42px 24px !important;
    min-height: 0;
  }

  .trlc-shop-card {
    display: flex;
    min-width: 0;
    height: 100%;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e4e0da;
    color: #111;
    text-decoration: none;
  }

  .trlc-shop-card__media {
    display: flex;
    aspect-ratio: 0.78;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #f0eee9;
    text-decoration: none;
  }

  .trlc-shop-card__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .trlc-shop-card__body {
    display: flex;
    min-height: 164px;
    flex: 1;
    flex-direction: column;
    padding: 16px 16px 18px;
  }

  .trlc-shop-card__eyebrow,
  .trlc-shop-card__sku {
    margin: 0;
    color: #77736d;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.14em;
    line-height: 1.3;
    text-transform: uppercase;
  }

  .trlc-shop-card__title-link {
    color: inherit;
    text-decoration: none;
  }

  .trlc-shop-card__title {
    margin: 8px 0 12px;
    color: #111;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.35;
  }

  .trlc-shop-card__meta {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    margin-top: auto;
  }

  .trlc-shop-card__price {
    color: #111;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
  }

  .trlc-shop-card__add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    margin-top: auto;
    padding: 0 14px;
    background: #111;
    color: #fff !important;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  .trlc-shop-card__add:hover,
  .trlc-shop-card__add:focus-visible {
    background: var(--color-accent-warm);
    color: var(--color-bg) !important;
  }
}
/* === END 04.6-02 SHOP ARCHIVE === */

/* === 04.6-03 PDP === */
body.single-product,
body.single-product main#brx-content {
  background: #f7f7f6;
}

body.single-product .woocommerce-notices-wrapper {
  max-width: 1320px;
  margin: 0 auto;
}

body.single-product .brxe-product-add-to-cart p.stock {
  width: auto !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  background: transparent !important;
  color: #40513a !important;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

body.single-product #brxe-tr0006.brxe-product-add-to-cart {
  height: auto !important;
  padding: 0 !important;
  background: transparent !important;
  color: #111 !important;
}

body.single-product #brxe-tr0009 .brxe-product-stock {
  display: none !important;
}

body.single-product #brxe-tr0009 {
  color: #77736d !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

body.single-product .brxe-product-add-to-cart form.cart {
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  max-width: 520px;
  margin: 0 !important;
}

body.single-product .brxe-product-add-to-cart form.cart::before,
body.single-product .brxe-product-add-to-cart form.cart::after {
  display: none !important;
}

body.single-product .brxe-product-add-to-cart .quantity {
  width: 100% !important;
  margin: 0 !important;
}

body.single-product .brxe-product-add-to-cart .quantity input.qty {
  width: 100% !important;
  height: 48px !important;
  border: 1px solid #d9d5ce !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 48px;
  text-align: center;
}

body.single-product .single_add_to_cart_button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100% !important;
  min-height: 48px !important;
  padding: 0 20px !important;
  border: 0 !important;
  background: #111 !important;
  color: #fff !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em;
  line-height: 1;
  opacity: 1 !important;
  text-transform: uppercase;
}

body.single-product .single_add_to_cart_button:hover,
body.single-product .single_add_to_cart_button:focus-visible {
  background: var(--color-accent-warm) !important;
  color: var(--color-bg) !important;
}

body.single-product .trlc-claim-strips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 14px 0 4px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .trlc-claim-strips li {
  border: 1px solid #d9d5ce !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  line-height: 1.2 !important;
  padding: 8px 10px !important;
}

body.single-product .trlc-product-scent {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  padding: 11px 12px;
  border: 1px solid #e4e0da;
  background: #fff;
  color: #111;
  font-family: var(--font-body);
  line-height: 1.4;
}

body.single-product .trlc-product-scent[hidden] {
  display: none !important;
}

body.single-product .trlc-product-scent dt {
  margin: 0;
  color: #77736d;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.single-product .trlc-product-scent dd {
  margin: 0;
  color: #111;
  font-size: 13px;
  font-style: normal;
}

@media (min-width: 1024px) {
  body.single-product section[data-section="pdp-hero"] {
    padding: 48px 52px 64px !important;
  }

  body.single-product section[data-section="pdp-hero"] > .brxe-container {
    display: grid !important;
    grid-template-columns: minmax(0, 0.58fr) minmax(380px, 0.42fr) !important;
    gap: 52px !important;
    align-items: start;
    max-width: 1320px !important;
    margin: 0 auto;
  }

  body.single-product #brxe-tr0001 {
    position: sticky;
    top: 82px;
    min-width: 0;
  }

  body.single-product #brxe-tr0001 .woocommerce-product-gallery {
    width: 100% !important;
    max-height: none;
  }

  body.single-product #brxe-tr0001 .woocommerce-product-gallery__wrapper,
  body.single-product #brxe-tr0001 .woocommerce-product-gallery__image {
    max-height: none;
  }

  body.single-product #brxe-tr0001 .woocommerce-product-gallery__image {
    aspect-ratio: 0.82;
    background: #e9e7e1;
  }

  body.single-product #brxe-tr0001 .woocommerce-product-gallery__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  body.single-product #brxe-tr0001 .flex-control-nav {
    gap: 8px;
    margin-top: 12px;
  }

  body.single-product #brxe-tr0001 .flex-control-nav li,
  body.single-product #brxe-tr0001 .flex-control-nav li img {
    width: 58px;
    height: 58px;
    flex-basis: 58px;
  }

  body.single-product #brxe-tr0010 {
    display: flex !important;
    flex-direction: column;
    gap: 18px !important;
    max-width: 520px;
    min-width: 0;
    padding-top: 18px;
  }

  body.single-product .brxe-woocommerce-breadcrumbs nav,
  body.single-product .brxe-woocommerce-breadcrumbs a {
    color: #77736d !important;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 1.4;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.single-product .brxe-product-title {
    max-width: 500px;
    color: #111 !important;
    font-family: var(--font-body) !important;
    font-size: 48px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: uppercase;
  }

  body.single-product .brxe-product-price .price {
    margin: 6px 0 0;
    color: #111;
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
  }

  body.single-product .brxe-product-content {
    max-width: 470px !important;
    color: #111;
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.7;
  }

  body.single-product .brxe-product-add-to-cart {
    margin-top: 4px;
    padding-top: 20px;
    border-top: 1px solid #e4e0da;
  }

  body.single-product section[data-section="pdp-acf-stack"] {
    padding: 0 52px 88px !important;
  }

  body.single-product section[data-section="pdp-acf-stack"] > .brxe-container {
    display: block;
    max-width: 1320px !important;
    margin: 0 auto;
    border-top: 1px solid #d9d5ce;
  }

  body.single-product section[data-section="pdp-acf-stack"] > .brxe-container > .brxe-div {
    display: none;
  }

  body.single-product [data-section="acf-story"],
  body.single-product [data-section="acf-ritual"],
  body.single-product [data-section="acf-inci"],
  body.single-product [data-section="acf-key-actives"] {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 44px;
    padding: 34px 0;
    border-bottom: 1px solid #d9d5ce;
  }

  body.single-product [data-section="acf-story"] h2,
  body.single-product [data-section="acf-ritual"] h2,
  body.single-product [data-section="acf-inci"] h2,
  body.single-product [data-section="acf-key-actives"] h2,
  body.single-product section[data-section="pdp-related"] h2 {
    margin: 0 !important;
    color: #111 !important;
    font-family: var(--font-body) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.16em !important;
    line-height: 1.2 !important;
    text-transform: uppercase;
  }

  body.single-product [data-section="acf-story"] .brxe-text,
  body.single-product [data-section="acf-ritual"] .brxe-text,
  body.single-product [data-section="acf-inci"] .brxe-text-basic,
  body.single-product [data-section="acf-key-actives"] .brxe-text {
    max-width: 720px;
    color: #111;
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.7;
  }

  body.single-product section[data-section="pdp-related"] {
    padding: 8px 52px 108px !important;
  }

  body.single-product section[data-section="pdp-related"] > .brxe-container {
    max-width: 1320px !important;
    margin: 0 auto;
  }
}

@media (max-width: 1023px) {
  body.single-product section[data-section="pdp-hero"] {
    padding: 32px 24px 48px !important;
  }

  body.single-product .brxe-product-title {
    font-family: var(--font-body) !important;
    letter-spacing: 0 !important;
    line-height: 1.05 !important;
  }

  body.single-product .brxe-product-add-to-cart form.cart {
    grid-template-columns: 88px minmax(0, 1fr);
  }
}
/* === END 04.6-03 PDP === */

/* === 04.6-04 CART === */
.trlc-cart-drawer__panel {
  width: min(440px, 100vw) !important;
  padding: 28px 28px 24px !important;
  border-left: 1px solid #d9d5ce;
  background: #f7f7f6 !important;
  color: #111 !important;
  box-shadow: none !important;
}

.trlc-cart-drawer__panel h2 {
  margin: 0 44px 28px 0 !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 30px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

.trlc-cart-drawer__close {
  top: 22px !important;
  right: 22px !important;
  width: 34px !important;
  height: 34px !important;
  border: 1px solid #d9d5ce !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

.trlc-cart-drawer .widget_shopping_cart_content {
  min-height: 0;
}

.trlc-cart-drawer .woocommerce-mini-cart {
  display: flex !important;
  flex-direction: column;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item {
  display: grid !important;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 14px;
  padding: 18px 0 !important;
  border-bottom: 1px solid #d9d5ce !important;
  background: transparent !important;
  box-shadow: none !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item img {
  width: 88px !important;
  height: 112px !important;
  object-fit: cover;
  background: #e9e7e1;
}

.trlc-cart-drawer .woocommerce-mini-cart-item a:not(.remove):not(.remove_from_cart_button) {
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  text-decoration: none;
}

.trlc-cart-drawer .woocommerce-mini-cart-item .quantity {
  display: block !important;
  margin-top: 8px;
  color: #77736d !important;
  font-family: var(--font-body);
  font-size: 12px;
  line-height: 1.4;
}

.trlc-cart-drawer .remove,
.trlc-cart-drawer .remove_from_cart_button {
  grid-column: 2;
  width: max-content !important;
  height: auto !important;
  margin-top: 10px;
  border: 0 !important;
  background: transparent !important;
  color: #77736d !important;
  font-family: var(--font-body);
  font-size: 10px !important;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

.trlc-cart-drawer .woocommerce-mini-cart__total {
  display: flex !important;
  justify-content: space-between;
  gap: 20px;
  margin: 20px 0 0 !important;
  padding: 16px 0 0 !important;
  border-top: 1px solid #111 !important;
  color: #111;
  font-family: var(--font-body);
  font-size: 14px;
}

.trlc-cart-drawer .trlc-free-ship-progress,
.trlc-cart-summary .trlc-freeship-progress,
.trlc-free-ship-progress .trlc-freeship-progress {
  margin: 22px 0 !important;
}

.trlc-freeship-progress {
  color: #111;
  font-family: var(--font-body);
  font-size: 13px;
  line-height: 1.5;
}

.trlc-freeship-progress__bar {
  height: 4px !important;
  margin-top: 10px;
  background: #e4e0da !important;
}

.trlc-freeship-progress__fill {
  background: #40513a !important;
}

.trlc-cart-drawer__cta,
.trlc-cart-page-cta {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 46px !important;
  padding: 0 18px !important;
  border: 0 !important;
  background: #111 !important;
  color: #fff !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em;
  line-height: 1;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-cart-drawer__view-link {
  display: block;
  margin-top: 14px !important;
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
}

body.woocommerce-cart section[data-section="cart-page"] {
  background: #fefefc;
}

body.woocommerce-cart .trlc-cart-page-h1 {
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 48px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

body.woocommerce-cart .trlc-cart-page-left .cart-collaterals {
  display: none !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table {
  border: 0 !important;
  border-collapse: collapse;
  background: transparent;
}

body.woocommerce-cart .woocommerce-cart-form th {
  padding: 0 0 14px !important;
  border-bottom: 1px solid #d9d5ce !important;
  color: #77736d;
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.woocommerce-cart .woocommerce-cart-form td {
  padding: 18px 0 !important;
  border-bottom: 1px solid #d9d5ce !important;
  color: #111;
  font-family: var(--font-body);
  font-size: 14px;
  vertical-align: middle;
}

body.woocommerce-cart .woocommerce-cart-form .product-thumbnail img {
  width: 92px !important;
  height: 118px !important;
  object-fit: cover;
}

body.woocommerce-cart .woocommerce-cart-form .product-name a {
  color: #111 !important;
  font-weight: 600;
  text-decoration: none;
}

body.woocommerce-cart .woocommerce-cart-form .coupon input.input-text,
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty {
  min-height: 42px;
  border: 1px solid #d9d5ce !important;
  background: #fff !important;
  color: #111 !important;
}

body.woocommerce-cart .woocommerce-cart-form button[name="apply_coupon"],
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
  min-height: 42px !important;
  border: 1px solid #111 !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.woocommerce-cart .trlc-cart-summary {
  border: 1px solid #111 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-cart .trlc-cart-summary__totals {
  border-top: 1px solid #d9d5ce;
  color: #111;
}

body.woocommerce-cart .trlc-cart-summary__totals span {
  font-family: var(--font-body);
  font-size: 14px;
}

body.woocommerce-cart .woocommerce-message {
  border: 1px solid #40513a !important;
  background: #eef3eb !important;
  color: #40513a !important;
}

@media (min-width: 1024px) {
  body.woocommerce-cart section[data-section="cart-page"] {
    padding: 64px 52px 112px !important;
  }

  body.woocommerce-cart section[data-section="cart-page"] > .brxe-container {
    max-width: 1180px !important;
  }

  body.woocommerce-cart .trlc-cart-page-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 440px !important;
    gap: 48px !important;
    align-items: start;
  }
}

@media (max-width: 767px) {
  .trlc-cart-drawer__panel {
    width: 100vw !important;
    padding: 24px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form table.shop_table,
  body.woocommerce-cart .woocommerce-cart-form tbody,
  body.woocommerce-cart .woocommerce-cart-form tr,
  body.woocommerce-cart .woocommerce-cart-form td {
    display: block;
    width: 100%;
  }

  body.woocommerce-cart .woocommerce-cart-form thead {
    display: none;
  }
}

/* === END 04.6-04 CART === */

/* === 04.6-05 ACCOUNT === */
body.woocommerce-account,
body.woocommerce-account main#brx-content {
  background: #f7f7f6;
}

body.woocommerce-account section[data-section="account-dashboard"] {
  padding: 52px 24px 88px !important;
  background: #f7f7f6;
}

body.woocommerce-account .trlc-account-page-grid {
  max-width: 1120px !important;
  margin: 0 auto !important;
}

body.woocommerce-account .trlc-account-page-h1 {
  margin: 0 0 32px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 48px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

body.woocommerce-account:not(.logged-in) .woocommerce {
  width: 100%;
}

body.woocommerce-account:not(.logged-in) .u-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
}

body.woocommerce-account:not(.logged-in) .u-column1,
body.woocommerce-account:not(.logged-in) .u-column2 {
  width: auto !important;
  float: none !important;
  padding: 28px !important;
  border: 1px solid #d9d5ce !important;
  background: #fff !important;
}

body.woocommerce-account .woocommerce h2,
body.woocommerce-account .woocommerce h3 {
  margin: 0 0 20px;
  color: #111;
  font-family: var(--font-body);
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.1;
  text-transform: uppercase;
}

body.woocommerce-account .woocommerce-form-row,
body.woocommerce-account .form-row {
  margin-bottom: 16px !important;
}

body.woocommerce-account label {
  color: #111;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

body.woocommerce-account input.input-text,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account select {
  min-height: 46px;
  border: 1px solid #d9d5ce !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.4;
}

body.woocommerce-account .show-password-input {
  color: #111;
}

body.woocommerce-account .woocommerce-button,
body.woocommerce-account button.button,
body.woocommerce-account input.button {
  min-height: 44px !important;
  padding: 0 18px !important;
  border: 1px solid #111 !important;
  background: #111 !important;
  color: #fff !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
}

body.woocommerce-account .woocommerce-LostPassword a,
body.woocommerce-account .woocommerce-privacy-policy-text a,
body.woocommerce-account .woocommerce-MyAccount-content a {
  color: #111;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body.woocommerce-account.logged-in .woocommerce {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  border: 1px solid #d9d5ce;
  background: #fff;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: grid;
  gap: 0;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  border-bottom: 1px solid #e4e0da;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
  border-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: flex !important;
  align-items: center;
  min-height: 44px;
  padding: 0 16px !important;
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: uppercase;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a {
  background: #111 !important;
  color: #fff !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  min-height: 360px;
  padding: 28px !important;
  border: 1px solid #d9d5ce;
  background: #fff;
  color: #111;
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.7;
}

body.woocommerce-account .woocommerce-MyAccount-content table {
  border: 0 !important;
  border-collapse: collapse;
  width: 100%;
}

body.woocommerce-account .woocommerce-MyAccount-content th,
body.woocommerce-account .woocommerce-MyAccount-content td {
  padding: 14px 0 !important;
  border-bottom: 1px solid #e4e0da !important;
  color: #111;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info {
  border: 1px solid #d9d5ce !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body);
}

@media (min-width: 1024px) {
  body.woocommerce-account section[data-section="account-dashboard"] {
    padding: 64px 52px 112px !important;
  }

  body.woocommerce-account:not(.logged-in) .u-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px;
  }

  body.woocommerce-account.logged-in .woocommerce {
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 40px;
    align-items: start;
  }
}
/* === END 04.6-05 ACCOUNT === */

/* === 04.7 REFERENCE-CLOSE DESKTOP FIDELITY === */
@media (min-width: 1024px) {
  body.home section[data-section="home-featured"] {
    display: block !important;
    padding: 0 0 128px !important;
  }

  body.home .trlc-home-featured-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 42px !important;
    max-width: 1320px !important;
    margin-top: 132px !important;
  }

  body.home .trlc-featured-card-media,
  .trlc-shop-card__media,
  body.single-product section[data-section="pdp-related"] ul.products li.product a img {
    border-radius: 8px !important;
    background: #f1f1ef !important;
  }

  body.home .trlc-featured-card-img,
  .trlc-shop-card__img,
  .trlc-product-card .trlc-shop-card__img.trlc-product-card__image {
    object-fit: cover !important;
  }

  section[data-section="shop-archive"].trlc-shop-archive {
    padding-top: 48px !important;
  }

  .trlc-shop-shell {
    display: flex !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .trlc-shop-kicker,
  .trlc-shop-intro {
    display: none !important;
  }

  .trlc-shop-title {
    width: 100% !important;
    text-align: center !important;
    font-size: 42px !important;
    line-height: 1.08 !important;
    text-transform: none !important;
  }

  .trlc-filter-bar {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: 1fr auto 1fr;
    align-items: center !important;
    gap: 18px !important;
    padding: 30px 0 64px !important;
    border: 0 !important;
  }

  .trlc-filter-primary {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
  }

  .trlc-filter-primary .facetwp-facet {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 0;
  }

  .trlc-grid-wrapper,
  .trlc-shop-grid {
    width: 100% !important;
  }

  .trlc-filter-primary .facetwp-checkbox,
  .trlc-filter-primary .facetwp-radio,
  .trlc-filter-more summary,
  .trlc-filter-clear {
    display: inline-flex !important;
    min-width: 70px;
    min-height: 28px !important;
    align-items: center;
    justify-content: center;
    padding: 0 18px !important;
    border: 1px solid #d8d4cc !important;
    border-radius: 999px !important;
    background: #efeeeb !important;
    color: #111 !important;
    font-family: var(--font-body);
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none !important;
    background-image: none !important;
  }

  .trlc-filter-primary .facetwp-counter {
    margin-left: 8px !important;
    color: inherit !important;
  }

  .trlc-filter-primary .facetwp-checkbox.checked,
  .trlc-filter-primary .facetwp-radio.checked {
    background: #5f5b54 !important;
    border-color: #5f5b54 !important;
    color: #fff !important;
  }

  .trlc-filter-actions {
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 14px;
  }

  .trlc-filter-more {
    position: relative;
  }

  .trlc-filter-more summary {
    cursor: pointer;
    list-style: none;
  }

  .trlc-filter-more summary::-webkit-details-marker {
    display: none;
  }

  .trlc-filter-more__panel {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    z-index: 20;
    display: grid;
    width: min(520px, 80vw);
    transform: translateX(-50%);
    gap: 16px;
    padding: 20px;
    border: 1px solid #d9d5ce;
    background: #fff;
    box-shadow: 0 16px 42px rgba(0, 0, 0, 0.08);
  }

  .trlc-filter-more:not([open]) .trlc-filter-more__panel {
    display: none;
  }

  .trlc-filter-more__panel .facetwp-facet {
    margin: 0;
  }

  .trlc-filter-sort .facetwp-sort,
  .trlc-filter-sort select,
  .trlc-filter-sort .facetwp-sort-select {
    min-height: 28px !important;
    border: 0 !important;
    background: transparent !important;
    color: #111 !important;
    font-family: var(--font-body);
    font-size: 10px !important;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-align: center;
    text-transform: uppercase;
  }

  .trlc-product-grid.facetwp-template.trlc-shop-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 34px !important;
    max-width: 1320px;
    margin: 0 auto;
  }

  .trlc-shop-card {
    overflow: hidden;
    border: 0 !important;
    border-radius: 8px;
    background: #fff !important;
  }

  .trlc-shop-card__media {
    aspect-ratio: 1 / 1 !important;
    margin: 18px 18px 0;
  }

  .trlc-shop-card__body {
    min-height: 128px !important;
    padding: 18px !important;
  }

  .trlc-shop-card__title {
    min-height: 32px;
    margin-bottom: 10px !important;
    overflow-wrap: anywhere;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase;
  }

  .trlc-shop-card__sku {
    display: none !important;
  }

  .trlc-shop-card__add {
    width: auto !important;
    min-width: 54px !important;
    min-height: 24px !important;
    align-self: flex-end;
    border-radius: 999px;
    font-size: 9px !important;
    letter-spacing: 0 !important;
  }

  body.single-product section[data-section="pdp-hero"] {
    padding-top: 64px !important;
  }

  body.single-product .woocommerce-product-gallery,
  body.single-product .woocommerce-product-gallery__wrapper {
    background: #f1f1ef;
  }

  body.single-product .woocommerce-product-gallery__image img {
    object-fit: cover;
  }

  body.single-product section[data-section="pdp-related"] h2 {
    text-align: center !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  body.single-product section[data-section="pdp-related"] ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 40px !important;
  }

  body.single-product section[data-section="pdp-related"] ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.single-product section[data-section="pdp-related"] ul.products li.product a img {
    aspect-ratio: 1 / 1;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 20px !important;
    object-fit: cover;
  }

  body.single-product section[data-section="pdp-related"] .woocommerce-loop-product__title {
    color: #111;
    font-family: var(--font-body);
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.3;
    text-transform: uppercase;
  }

  body.single-product section[data-section="pdp-related"] .button {
    display: inline-flex !important;
    min-width: 54px;
    min-height: 24px !important;
    align-items: center;
    justify-content: center;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 999px;
    background: #3d3b37 !important;
    color: #fff !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: uppercase;
  }

  .trlc-cart-drawer__shipping-note {
    margin: -18px 44px 24px 0;
    color: #77736d;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.12em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  .trlc-cart-drawer__panel h2 {
    margin-bottom: 22px !important;
  }

  .trlc-cart-drawer .woocommerce-mini-cart-item {
    grid-template-columns: 76px minmax(0, 1fr) auto !important;
    align-items: start;
  }

  .trlc-cart-drawer .woocommerce-mini-cart-item img {
    width: 76px !important;
    height: 76px !important;
    border-radius: 0;
  }

  .trlc-cart-drawer .remove,
  .trlc-cart-drawer .remove_from_cart_button {
    grid-column: 3 !important;
    grid-row: 1;
    margin-top: 0 !important;
    color: transparent !important;
    font-size: 0 !important;
  }

  .trlc-cart-drawer .remove::after,
  .trlc-cart-drawer .remove_from_cart_button::after {
    content: "×";
    color: #77736d;
    font-size: 14px;
  }

  body.woocommerce-account:not(.logged-in) section[data-section="account-dashboard"] {
    padding-top: 46px !important;
  }

  body.woocommerce-account .trlc-account-heading {
    text-align: center;
  }

  body.woocommerce-account .trlc-account-heading p {
    margin: 12px 0 42px;
    color: #55504a;
    font-family: var(--font-body);
    font-size: 15px;
    letter-spacing: 0.08em;
  }

  body.woocommerce-account:not(.logged-in) .trlc-account-page-grid {
    max-width: 640px !important;
  }

  body.woocommerce-account:not(.logged-in) .trlc-account-page-h1 {
    margin-bottom: 0 !important;
    font-size: 58px !important;
    text-align: center;
    text-transform: none !important;
  }

  body.woocommerce-account:not(.logged-in) .u-columns {
    display: block !important;
  }

  body.woocommerce-account:not(.logged-in) .u-column1,
  body.woocommerce-account:not(.logged-in) .u-column2 {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
  }

  body.woocommerce-account:not(.logged-in) .u-column2 {
    margin-top: 52px;
    padding-top: 36px !important;
    border-top: 1px solid #e1ded7 !important;
    text-align: center;
  }

  body.woocommerce-account:not(.logged-in) .u-column2 h2 {
    font-size: 12px !important;
    letter-spacing: 0.16em !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-register {
    border: 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login .form-row {
    margin-bottom: 30px !important;
  }

  body.woocommerce-account:not(.logged-in) input.input-text {
    min-height: 64px !important;
    padding: 0 12px !important;
    border-color: #c9c5bc !important;
    background: transparent !important;
    font-size: 18px !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login__submit {
    width: 100%;
    min-height: 66px !important;
    border-radius: 999px;
    background: #5f5b54 !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword,
  body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
    text-align: center;
  }

  body.trlc-account-dashboard-view .woocommerce {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    gap: 74px !important;
  }

  body.trlc-account-dashboard-view .trlc-account-heading {
    max-width: 1120px;
    margin: 0 auto 56px;
    text-align: left;
  }

  body.trlc-account-dashboard-view .trlc-account-page-h1 {
    margin-bottom: 10px !important;
    font-size: 56px !important;
    text-transform: none !important;
  }

  body.trlc-account-dashboard-view .woocommerce-MyAccount-navigation {
    border: 0 !important;
    background: transparent !important;
  }

  body.trlc-account-dashboard-view .woocommerce-MyAccount-navigation li {
    border: 0 !important;
  }

  body.trlc-account-dashboard-view .woocommerce-MyAccount-navigation li a {
    min-height: 38px !important;
    padding: 0 !important;
    background: transparent !important;
    color: #111 !important;
    letter-spacing: 0.18em !important;
  }

  body.trlc-account-dashboard-view .woocommerce-MyAccount-navigation li.is-active a,
  body.trlc-account-dashboard-view .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a {
    background: transparent !important;
    color: #111 !important;
    text-decoration: underline !important;
    text-underline-offset: 6px;
  }

  body.trlc-account-dashboard-view .woocommerce-MyAccount-content {
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.trlc-account-dashboard-view .woocommerce-MyAccount-content > p:not(.trlc-empty-state-heading):not(.trlc-empty-state-body) {
    display: none !important;
  }

  .trlc-account-veneer {
    display: grid;
    gap: 72px;
  }

  .trlc-account-veneer__section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid #e1ded7;
  }

  .trlc-account-veneer h2 {
    margin: 0 !important;
    color: #111 !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  .trlc-account-veneer__section-head a {
    color: #111;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-decoration: none;
  }

  .trlc-account-veneer__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 48px;
    margin: 34px 0 0;
  }

  .trlc-account-veneer dt {
    margin-bottom: 12px;
    color: #77736d;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
  }

  .trlc-account-veneer dd {
    margin: 0;
    font-size: 18px;
  }

  .trlc-account-veneer__orders {
    display: grid;
    gap: 14px;
    margin-top: 32px;
  }

  .trlc-account-order-card {
    display: grid;
    grid-template-columns: 1.5fr 1.5fr 1fr 1fr auto;
    gap: 20px;
    align-items: center;
    padding: 22px 24px;
    border: 1px solid #e1ded7;
    background: #fff;
  }

  .trlc-account-order-card span,
  .trlc-account-order-card em,
  .trlc-account-order-card a {
    font-size: 11px;
    font-style: normal;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  .trlc-account-address-card {
    width: min(420px, 100%);
    margin-top: 32px;
    padding: 28px;
    border: 1px solid #e1ded7;
    background: #fff;
  }

  .trlc-account-address-card span {
    display: inline-flex;
    margin-bottom: 20px;
    padding: 5px 10px;
    background: #f4f2ef;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }

  .trlc-account-address-card strong,
  .trlc-account-address-card p {
    display: block;
    margin: 0 0 6px;
    color: #111;
    font-size: 16px;
    line-height: 1.5;
  }
}
/* === END 04.7 REFERENCE-CLOSE DESKTOP FIDELITY === */

/* === 04.7 ACCOUNT SURFACE REBUILD === */
body.woocommerce-account main#brx-content,
body.woocommerce-account section[data-section="account-dashboard"] {
  background: #f7f7f6 !important;
}

body.woocommerce-account section[data-section="account-dashboard"] {
  padding: 48px 24px 96px !important;
  width: 100% !important;
  max-width: none !important;
}

body.woocommerce-account .trlc-account-page-grid {
  width: 100% !important;
  max-width: 1260px !important;
  margin: 0 auto !important;
}

body.woocommerce-account .trlc-account-heading {
  margin: 0 auto 44px !important;
  text-align: center !important;
}

body.woocommerce-account.logged-in .trlc-account-heading {
  max-width: 1260px !important;
  text-align: left !important;
}

body.woocommerce-account .trlc-account-page-h1 {
  margin: 0 0 12px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: clamp(44px, 5vw, 68px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 0.98 !important;
  text-transform: none !important;
}

body.woocommerce-account .trlc-account-heading p {
  margin: 0 !important;
  color: #5f5b54 !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.5 !important;
}

body.woocommerce-account .trlc-account-page-grid > .woocommerce {
  color: #111 !important;
  font-family: var(--font-body) !important;
  width: 100% !important;
}

body.woocommerce-account main#brx-content.woocommerce {
  display: block !important;
  width: 100% !important;
}

body.woocommerce-account.logged-in .trlc-account-page-grid > .woocommerce {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 42px !important;
  align-items: start !important;
  width: 100% !important;
}

body.woocommerce-account .trlc-account-page-grid > .woocommerce::before,
body.woocommerce-account .trlc-account-page-grid > .woocommerce::after {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-account .trlc-account-nav__eyebrow,
.trlc-account-auth__eyebrow,
.trlc-account-dashboard__eyebrow,
.trlc-account-dashboard__facts span,
.trlc-account-address-summary span {
  margin: 0 0 14px !important;
  color: #77736d !important;
  font-family: var(--font-body) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: grid !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: inline-flex !important;
  width: auto !important;
  min-height: 34px !important;
  align-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a[aria-current="page"] {
  background: transparent !important;
  color: #111 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 6px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  min-height: 0 !important;
  color: #111 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

body.woocommerce-account .trlc-account-veneer {
  display: none !important;
}

.trlc-account-dashboard {
  display: grid;
  gap: 46px;
}

.trlc-account-dashboard__header,
.trlc-account-panel__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid #dedbd4;
}

.trlc-account-dashboard__header h2,
.trlc-account-panel__head h3 {
  margin: 0 !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 28px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}

.trlc-account-dashboard__text-link,
.trlc-account-panel__head a,
.trlc-account-order-row a {
  color: #111 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.trlc-account-dashboard__facts {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
}

.trlc-account-dashboard__facts strong,
.trlc-account-address-summary p {
  display: block;
  margin: 0 !important;
  color: #111 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}

.trlc-account-panel {
  display: grid;
  gap: 24px;
}

.trlc-account-orders-list {
  display: grid;
  border-top: 1px solid #ebe8e1;
}

.trlc-account-order-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  padding: 18px 0;
  border-bottom: 1px solid #ebe8e1;
}

.trlc-account-order-row span,
.trlc-account-order-row strong,
.trlc-account-order-row em,
.trlc-account-order-row b {
  color: #111 !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  line-height: 1.3 !important;
  text-transform: uppercase !important;
}

.trlc-account-address-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
}

.trlc-account-address-summary {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.trlc-account-empty {
  padding: 26px 0;
}

body.woocommerce-account .trlc-empty-state-heading {
  margin: 0 0 6px !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

body.woocommerce-account .trlc-empty-state-body {
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content table,
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-table {
  width: 100% !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: transparent !important;
}

body.woocommerce-account .woocommerce-MyAccount-content th,
body.woocommerce-account .woocommerce-MyAccount-content td {
  padding: 16px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #dedbd4 !important;
  color: #111 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content th {
  color: #77736d !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
  color: #111 !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 4px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content mark,
body.woocommerce-account .woocommerce-MyAccount-content .order-status {
  background: transparent !important;
  color: #111 !important;
  font-weight: 700 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content address {
  margin: 18px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: #111 !important;
  font-style: normal !important;
  line-height: 1.65 !important;
}

body.woocommerce-account fieldset {
  margin: 34px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.woocommerce-account fieldset legend {
  margin: 0 0 18px !important;
  color: #111 !important;
  font-size: 20px !important;
  font-weight: 400 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px 20px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form .form-row-first,
body.woocommerce-account .woocommerce-MyAccount-content form .form-row-last,
body.woocommerce-account .woocommerce-MyAccount-content form .form-row-wide {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form .form-row-wide,
body.woocommerce-account .woocommerce-MyAccount-content form > p:last-child {
  grid-column: 1 / -1;
}

body.woocommerce-account .woocommerce-MyAccount-content form fieldset {
  display: grid !important;
  gap: 22px !important;
}

.trlc-account-auth {
  width: min(100%, 620px);
  margin: 0 auto;
  text-align: left;
}

.trlc-account-auth__login {
  display: grid;
  gap: 20px;
}

.trlc-account-auth h2 {
  margin: 0 !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}

.trlc-account-auth form {
  display: grid;
  gap: 22px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-account .woocommerce-form-row,
body.woocommerce-account .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-account label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #111 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

body.woocommerce-account input.input-text,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account select {
  width: 100% !important;
  min-height: 52px !important;
  padding: 0 14px !important;
  border: 1px solid #c9c5bc !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
}

.trlc-account-auth__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.trlc-account-auth__meta label {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
}

.trlc-account-auth__meta a,
.trlc-account-auth__register summary {
  color: #111 !important;
  cursor: pointer;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

body.woocommerce-account .woocommerce-button,
body.woocommerce-account button.button,
body.woocommerce-account input.button,
body.woocommerce-account .woocommerce-MyAccount-content .button {
  display: inline-flex !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #111 !important;
  color: #fff !important;
  font-family: var(--font-body) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.trlc-account-auth__submit button {
  width: 100% !important;
}

.trlc-account-auth__register {
  margin-top: 42px;
  padding-top: 26px;
  border-top: 1px solid #dedbd4;
}

.trlc-account-auth__register summary {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
}

.trlc-account-auth__register summary::-webkit-details-marker {
  display: none;
}

.trlc-account-register-form {
  margin-top: 26px !important;
}

.trlc-account-register-form__note,
body.woocommerce-account .woocommerce-privacy-policy-text {
  color: #55504a !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info {
  margin: 0 0 28px !important;
  padding: 22px 0 !important;
  border: 0 !important;
  border-top: 1px solid #dedbd4 !important;
  border-bottom: 1px solid #dedbd4 !important;
  background: transparent !important;
  color: #111 !important;
  box-shadow: none !important;
}

@media (min-width: 1024px) {
  body.woocommerce-account section[data-section="account-dashboard"] {
    padding: 66px 52px 124px !important;
  }

  body.woocommerce-account.logged-in .woocommerce {
    display: block !important;
  }

  body.woocommerce-account.logged-in .trlc-account-page-grid > .woocommerce {
    grid-template-columns: 210px minmax(0, 1fr) !important;
    gap: 88px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    position: sticky;
    top: 96px;
  }

  body.woocommerce-account .woocommerce-MyAccount-content {
    max-width: 880px !important;
  }

  .trlc-account-dashboard__facts,
  .trlc-account-address-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .trlc-account-order-row {
    grid-template-columns: 0.9fr 1.3fr 1fr 1fr auto;
    gap: 22px;
    align-items: center;
  }

  body.woocommerce-account .woocommerce-MyAccount-content form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* === END 04.7 ACCOUNT SURFACE REBUILD === */

/* === 04.7 MOBILE REFERENCE-CLOSE COMPANION === */
@media (max-width: 1023px) {
  html,
  body {
    overflow-x: clip;
    background: var(--color-surface-warm, #f7f7f6);
  }

  header[data-section="site-header"].trlc-site-header {
    position: relative;
    z-index: 1001;
    min-height: 64px;
    background: var(--color-bg, #fff) !important;
    border-bottom: 1px solid var(--color-border-warm, #e4e0da) !important;
  }

  header[data-section="site-header"] .trlc-header-shell {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 0;
    align-items: center !important;
    width: 100%;
    min-height: 64px;
    padding: 0 !important;
  }

  header[data-section="site-header"] .trlc-header-mobile-toggle {
    grid-column: 1;
    grid-row: 1;
    display: inline-flex !important;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: var(--color-fg, #111);
  }

  header[data-section="site-header"] .trlc-header-wordmark {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    max-width: min(210px, 58vw);
    color: var(--color-fg, #111);
  }

  header[data-section="site-header"] .trlc-logo svg {
    width: auto;
    max-width: 100%;
    height: 18px;
  }

  .trlc-cart-trigger {
    top: 10px;
    right: 24px;
    z-index: 1002;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    justify-content: center;
    padding: 0;
    background: transparent;
    color: var(--color-fg, #111);
    border: 0;
    box-shadow: none;
  }

  .trlc-cart-trigger__icon,
  .trlc-cart-trigger__icon svg {
    width: 22px;
    height: 22px;
  }

  .trlc-cart-trigger .trlc-cart-count {
    position: absolute;
    top: 4px;
    right: 1px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 999px;
    background: var(--color-fg, #111);
    color: var(--color-bg, #fff);
    font-size: 9px;
    line-height: 16px;
  }

  header[data-section="site-header"] .trlc-header-nav,
  header[data-section="site-header"] .trlc-header-utilities {
    display: none !important;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-shell {
    padding-bottom: 18px !important;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav,
  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-utilities {
    grid-column: 1 / -1;
    display: flex !important;
    width: 100%;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav {
    grid-row: 2;
    margin-top: 14px;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-utilities {
    grid-row: 3;
    margin-top: 8px;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav ul,
  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-utilities {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 8px;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav a,
  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-utilities a,
  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-utilities button {
    display: flex !important;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
    border: 1px solid var(--color-border-warm, #dedbd4);
    background: var(--color-surface-warm, #f7f7f6);
    color: var(--color-fg, #111);
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-utilities button {
    width: 100%;
    cursor: pointer;
  }

  body.home section[data-section="home-hero"] {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 0 0 42px !important;
    overflow: hidden;
    background: var(--color-surface-warm, #f7f7f6);
  }

  body.home section[data-section="home-hero"]::after {
    content: none !important;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-figure {
    width: 100%;
    height: 292px;
    margin: 0;
    overflow: hidden;
    background: var(--color-surface-warm, #f7f7f6);
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-figure img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content {
    position: static !important;
    width: 100%;
    max-width: none;
    padding: 30px 24px 0;
    color: var(--color-fg, #111);
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-display {
    max-width: 330px;
    margin: 0 0 16px;
    color: var(--color-fg, #111);
    font-family: var(--font-body);
    font-size: 38px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.08;
    text-transform: uppercase;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-heading-secondary {
    max-width: 326px;
    margin: 0 0 24px;
    color: var(--color-fg, #111);
    font-size: 15px;
    letter-spacing: 0;
    line-height: 1.6;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-cta-button.trlc-cta-filled {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border: 1px solid var(--color-fg, #111);
    border-radius: 999px;
    background: var(--color-fg, #111);
    color: var(--color-bg, #fff);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    text-transform: none;
  }

  body.home section[data-section="home-featured"] {
    display: block !important;
    padding: 0 0 58px !important;
    background: var(--color-surface-warm, #f7f7f6);
  }

  body.home .trlc-home-featured-pills {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
    padding: 28px 24px 0 !important;
  }

  body.home .trlc-home-featured-pill {
    display: inline-flex !important;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border: 1px solid var(--color-border-warm, #d8d4cc);
    border-radius: 999px;
    background: var(--color-bg, #fff);
    color: var(--color-fg, #111);
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  body.home .trlc-home-featured-pill.is-active {
    background: var(--color-brand-700, #3c4936);
    border-color: var(--color-brand-700, #3c4936);
    color: var(--color-bg, #fff);
  }

  body.home .trlc-home-featured-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    width: 100%;
    max-width: 520px;
    margin: 32px auto 0 !important;
    padding: 0 24px !important;
  }

  body.home .trlc-featured-card,
  .trlc-shop-card,
  .trlc-product-card {
    display: block;
    overflow: visible;
    min-width: 0;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--color-fg, #111);
    text-decoration: none;
    transform: none !important;
  }

  body.home .trlc-featured-card-media,
  .trlc-shop-card__media,
  .trlc-product-card .trlc-shop-card__img.trlc-product-card__image,
  body.single-product section[data-section="pdp-related"] ul.products li.product a img {
    display: block;
    overflow: hidden;
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    border-radius: 8px;
    background: var(--color-surface-warm, #f1f1ef);
  }

  body.home .trlc-featured-card-img,
  .trlc-shop-card__img,
  .trlc-product-card .trlc-shop-card__img.trlc-product-card__image {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  body.home .trlc-featured-card-body,
  .trlc-shop-card__body {
    display: grid !important;
    gap: 10px;
    min-height: 0 !important;
    padding: 16px 0 0 !important;
  }

  body.home .trlc-featured-card-title-link,
  .trlc-shop-card__title {
    color: inherit;
    text-decoration: none;
  }

  body.home .trlc-featured-card-title,
  .trlc-shop-card__title {
    margin: 0 0 12px !important;
    color: var(--color-fg, #111);
    font-family: var(--font-body);
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.3 !important;
    text-transform: uppercase;
    overflow-wrap: anywhere;
  }

  body.home .trlc-featured-card-row,
  .trlc-shop-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
  }

  body.home .trlc-featured-card-price,
  .trlc-shop-card__price {
    margin: 0 !important;
    color: var(--color-brand-700, #3c4936);
    font-size: 13px !important;
    letter-spacing: 0;
  }

  body.home .trlc-featured-card-add,
  .trlc-shop-card__add,
  body.single-product section[data-section="pdp-related"] .button {
    display: inline-flex !important;
    width: auto !important;
    max-width: max-content !important;
    justify-self: start;
    align-self: start;
    min-width: 54px !important;
    min-height: 30px !important;
    align-items: center;
    justify-content: center;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--color-fg, #111) !important;
    color: var(--color-bg, #fff) !important;
    font-family: var(--font-body);
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    text-transform: uppercase;
  }

  section[data-section="shop-archive"].trlc-shop-archive {
    padding: 46px 24px 72px !important;
    background: var(--color-surface-warm, #f7f7f6);
  }

  .trlc-shop-shell,
  .trlc-grid-wrapper,
  .trlc-shop-grid {
    width: 100% !important;
    max-width: 100% !important;
  }

  .trlc-shop-title {
    width: 100% !important;
    margin: 0 0 14px !important;
    color: var(--color-fg, #111);
    font-size: 34px !important;
    line-height: 1.06 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-transform: none !important;
  }

  .trlc-shop-intro {
    max-width: 31rem;
    margin-bottom: 28px !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
  }

  .trlc-filter-bar {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .trlc-filter-primary .facetwp-facet {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 !important;
  }

  .trlc-filter-primary .facetwp-checkbox,
  .trlc-filter-primary .facetwp-radio,
  .trlc-filter-more summary,
  .trlc-filter-clear {
    display: inline-flex !important;
    min-height: 34px !important;
    align-items: center;
    justify-content: center;
    padding: 0 14px !important;
    border: 1px solid var(--color-border-warm, #d8d4cc) !important;
    border-radius: 999px !important;
    background: var(--color-bg, #fff) !important;
    color: var(--color-fg, #111) !important;
    box-shadow: none !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1;
    text-transform: uppercase;
  }

  .trlc-product-grid.facetwp-template.trlc-shop-grid,
  .trlc-shop-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 30px !important;
    min-height: 0 !important;
  }

  .trlc-shop-card__sku {
    display: none !important;
  }

  body.single-product section[data-section="pdp-related"] ul.products {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.single-product section[data-section="pdp-related"] ul.products li.product {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  footer[data-section="site-footer"],
  .trlc-footer {
    padding: 38px 24px 42px !important;
    background: var(--color-surface-warm, #f7f7f6) !important;
    color: var(--color-fg, #111) !important;
    border-top: 1px solid var(--color-border-warm, #e4e0da) !important;
  }

  footer[data-section="site-footer"] #brxe-ft0003 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
  }

  footer[data-section="site-footer"] h2,
  footer[data-section="site-footer"] h3 {
    margin: 0 0 10px !important;
    color: var(--color-fg, #111) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
  }

  footer[data-section="site-footer"] ul,
  footer[data-section="site-footer"] ol {
    display: grid;
    gap: 8px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  footer[data-section="site-footer"] a,
  footer[data-section="site-footer"] p,
  footer[data-section="site-footer"] .bir-disclosure {
    color: var(--color-fg, #111) !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
  }

  footer[data-section="site-footer"] .trlc-footer-logo,
  footer[data-section="site-footer"] .trlc-logo--light {
    color: var(--color-fg, #111) !important;
  }

  footer[data-section="site-footer"] .trlc-footer-signup {
    gap: 10px !important;
  }

  footer[data-section="site-footer"] .trlc-footer-signup input[type="email"],
  footer[data-section="site-footer"] .trlc-footer-signup button {
    width: 100% !important;
    min-height: 46px !important;
    border-radius: 0 !important;
    font-size: 13px !important;
    letter-spacing: 0 !important;
  }

  footer[data-section="site-footer"] .trlc-footer-signup button {
    background: var(--color-fg, #111) !important;
    color: var(--color-bg, #fff) !important;
  }

  footer[data-section="site-footer"] #brxe-ft0023 {
    display: grid !important;
    gap: 10px !important;
    max-width: 520px !important;
    margin: 28px auto 0 !important;
    padding-top: 18px !important;
    border-top: 1px solid var(--color-border-warm, #dedbd4) !important;
    text-align: left !important;
  }
}

@media (min-width: 700px) and (max-width: 1023px) {
  body.home section[data-section="home-hero"] .trlc-home-hero-figure {
    height: 360px;
  }

  body.home section[data-section="home-hero"] .trlc-home-hero-content .trlc-display {
    max-width: 440px;
    font-size: 44px;
  }

  body.home .trlc-home-featured-grid,
  .trlc-product-grid.facetwp-template.trlc-shop-grid,
  .trlc-shop-grid,
  body.single-product section[data-section="pdp-related"] ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* === END 04.7 MOBILE REFERENCE-CLOSE COMPANION === */

/* === 04.8 WEBSITE COPY PDF REFRESH === */
body.home .trlc-home-hero-support {
  margin: -10px 0 16px;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4;
}

body.home .trlc-home-hero-bullets,
body.home .trlc-home-hero-claims {
  display: grid;
  gap: 8px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

body.home .trlc-home-hero-bullets li {
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 12px;
  line-height: 1.45;
}

body.home .trlc-home-hero-bullets strong {
  margin-right: 6px;
  font-weight: 700;
}

body.home .trlc-home-hero-claims {
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 18px 0 0;
}

body.home .trlc-home-hero-claims li {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  min-height: 28px;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border: 1px solid var(--color-border-warm, #d8d4cc);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

body.home .trlc-home-hero-claim-mark {
  display: inline-flex;
  width: 14px;
  height: 14px;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: 10px;
  line-height: 1;
}

body.home .trlc-home-featured-head {
  max-width: 960px;
  margin: 0 auto;
  padding: 72px 24px 0;
  text-align: center;
}

body.home .trlc-home-featured-head h2,
body.home .trlc-home-closing-statement h2 {
  margin: 0;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 23px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
  text-transform: uppercase;
}

body.home .trlc-home-story-wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 34px;
  max-width: 1180px;
  margin: 0 auto;
  align-items: center;
}

body.home .trlc-home-story-media {
  margin: 0;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: var(--color-surface-warm, #f1f1ef);
}

body.home .trlc-home-story-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.home .trlc-home-story-kicker {
  margin: 0 0 18px !important;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
}

body.home .trlc-home-story-copy {
  display: grid;
  gap: 14px;
  margin-bottom: 24px;
}

body.home .trlc-home-story-copy p,
body.home .trlc-home-closing-statement p {
  margin: 0;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.75;
}

body.home .trlc-home-closing-statement {
  max-width: 720px;
  margin: 84px auto 0;
  text-align: center;
}

body.home .trlc-home-closing-statement h2 {
  margin-bottom: 18px;
  text-transform: none;
}

section[data-section="about-hero"] .trlc-about-hero-media {
  width: min(100% - 48px, 1040px);
  margin: 36px auto 0;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: var(--color-surface-warm, #f1f1ef);
}

section[data-section="about-hero"] .trlc-about-hero-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.single-product .trlc-product-size {
  margin: -4px 0 0;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.single-product .trlc-pdp-detail-sections {
  border-top: 1px solid var(--color-border-warm, #d9d5ce);
}

body.single-product .trlc-pdp-detail-section {
  display: block;
  border-bottom: 1px solid var(--color-border-warm, #d9d5ce);
}

body.single-product .trlc-pdp-detail-section summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 64px;
  padding: 22px 0;
  color: var(--color-fg, #111);
  cursor: pointer;
  list-style: none;
}

body.single-product .trlc-pdp-detail-section summary::-webkit-details-marker {
  display: none;
}

body.single-product .trlc-pdp-detail-section__heading,
body.single-product .trlc-pdp-detail-section h2 {
  margin: 0;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1.25;
  text-transform: uppercase;
}

body.single-product .trlc-pdp-detail-section__icon {
  display: inline-grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border: 1px solid var(--color-border-warm, #d9d5ce);
  border-radius: 50%;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

body.single-product .trlc-pdp-detail-section[open] .trlc-pdp-detail-section__icon {
  transform: rotate(45deg);
  border-color: var(--color-fg, #111);
  background: var(--color-fg, #111);
  color: var(--color-bg, #fff);
}

body.single-product .trlc-pdp-detail-section__body {
  display: grid;
  gap: 14px;
  max-width: 760px;
  padding: 0 0 26px;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.75;
}

body.single-product .trlc-pdp-detail-section__body p,
body.single-product .trlc-pdp-detail-section__body ul {
  margin: 0;
}

body.single-product .trlc-pdp-detail-section__body ul {
  padding-left: 18px;
}

body.single-product .trlc-pdp-active {
  display: grid;
  gap: 4px;
}

body.single-product .trlc-pdp-active h3 {
  margin: 0;
  color: var(--color-fg, #111);
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.35;
}

@media (min-width: 1024px) {
  body.home .trlc-home-hero-claims {
    grid-template-columns: repeat(3, max-content);
  }

  body.home .trlc-home-story-wrap {
    grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.75fr);
    gap: 72px;
    text-align: left;
  }

  body.home .trlc-home-story-body {
    max-width: 520px;
    margin: 0;
  }

  body.home .trlc-home-story-body p {
    margin-left: 0;
    margin-right: 0;
  }

  body.single-product .trlc-pdp-detail-section {
    max-width: 900px;
  }

  body.single-product .trlc-pdp-detail-section summary {
    min-height: 74px;
    padding: 28px 0;
  }

  body.single-product .trlc-pdp-detail-section__body {
    padding-bottom: 34px;
  }
}

@media (max-width: 1023px) {
  body.home .trlc-home-hero-support {
    margin: -8px 0 14px;
    font-size: 13px;
  }

  body.home .trlc-home-hero-bullets {
    margin-bottom: 20px;
  }

  body.home .trlc-home-hero-claims li {
    background: var(--color-bg, #fff);
  }

  body.home .trlc-home-featured-head {
    padding: 42px 24px 0;
    text-align: left;
  }

  body.home .trlc-home-featured-head h2,
  body.home .trlc-home-closing-statement h2 {
    font-size: 22px;
  }

  body.home section[data-section="home-story"] {
    padding: 58px 24px 72px !important;
    text-align: left;
  }

  body.home .trlc-home-story-wrap {
    gap: 26px;
  }

  body.home .trlc-home-story-body {
    max-width: none;
    margin: 0;
  }

  body.home .trlc-home-story-body h2 {
    text-align: left;
  }

  body.home .trlc-home-story-copy p,
  body.home .trlc-home-closing-statement p {
    font-size: 15px;
    line-height: 1.65;
  }

  body.home .trlc-home-closing-statement {
    margin: 54px 0 0;
    text-align: left;
  }

  section[data-section="about-hero"] .trlc-about-hero-media {
    width: calc(100% - 48px);
    margin-top: 28px;
    aspect-ratio: 4 / 3;
  }

  body.single-product section[data-section="pdp-acf-stack"] {
    padding: 0 24px 72px !important;
  }
}
/* === END 04.8 WEBSITE COPY PDF REFRESH === */

/* === FOOTER LINK SHARED STYLE (2026-05-25 polish) === */
.trlc-footer-link {
  color: var(--color-bg, #faf7f2);
  text-decoration: none;
  font-size: 14px;
  transition: text-decoration-color 0.15s ease, color 0.15s ease;
}
.trlc-footer-link:hover,
.trlc-footer-link:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.trlc-footer-link:focus-visible {
  outline: 2px solid var(--color-bg, #faf7f2);
  outline-offset: 2px;
  border-radius: 2px;
}

.trlc-faq-wrap {
  font-family: var(--font-body);
}
.trlc-faq-section {
  margin: 0 0 48px 0;
}
.trlc-faq-section-heading {
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0 0 24px 0;
}
.trlc-faq-entry {
  border-top: 1px solid var(--color-border-warm);
  padding: 18px 0;
}
.trlc-faq-entry:last-child {
  border-bottom: 1px solid var(--color-border-warm);
}
.trlc-faq-entry > summary {
  cursor: pointer;
  list-style: none;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 17px;
  line-height: 1.45;
  color: var(--color-fg);
  padding-right: 32px;
  position: relative;
}
.trlc-faq-entry > summary::-webkit-details-marker {
  display: none;
}

.trlc-faq-entry > summary:focus-visible {
  outline: 2px solid var(--color-fg);
  outline-offset: 5px;
}
.trlc-faq-entry > summary::after {
  content: '+';
  position: absolute;
  right: 0;
  top: 0;
  font-weight: 400;
  font-size: 22px;
  line-height: 1;
}
.trlc-faq-entry[open] > summary::after {
  content: '-';
}
.trlc-faq-answer {
  margin-top: 12px;
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.55;
  color: var(--color-fg);
}
.trlc-faq-answer p {
  margin: 0 0 16px 0;
}
.trlc-faq-answer p:last-child {
  margin-bottom: 0;
}

/* === 05.0 STITCH PEG VISUAL PASS === */
html,
body {
  background: var(--color-surface-warm);
  color: var(--color-fg);
  font-family: var(--font-body);
}

body,
button,
input,
select,
textarea {
  font-family: var(--font-body);
}

#brx-content,
main#brx-content {
  background: var(--color-surface-warm);
}

a {
  text-underline-offset: 3px;
}

/* Shared shell */
.trlc-cart-trigger {
  display: none !important;
}

header[data-section="site-header"].trlc-site-header,
body.home header[data-section="site-header"].trlc-site-header {
  position: sticky !important;
  top: 0;
  z-index: 1000;
  background: var(--color-bg) !important;
  color: var(--color-fg) !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
  box-shadow: none !important;
}

header[data-section="site-header"] .trlc-header-shell {
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) auto minmax(180px, 1fr);
  align-items: center;
  min-height: 64px !important;
  gap: 24px;
}

header[data-section="site-header"] .trlc-header-wordmark {
  display: inline-flex;
  justify-content: center;
  min-width: 0;
}

header[data-section="site-header"] .trlc-logo svg {
  display: block;
  width: min(196px, 24vw) !important;
  height: auto !important;
}

header[data-section="site-header"] .trlc-header-nav ul,
header[data-section="site-header"] .trlc-header-utilities {
  display: flex !important;
  align-items: center;
  gap: 28px;
  margin: 0;
  padding: 0;
}

header[data-section="site-header"] .trlc-header-nav ul {
  justify-content: flex-start;
  list-style: none;
}

header[data-section="site-header"] .trlc-header-utilities {
  justify-content: flex-end;
}

header[data-section="site-header"] .trlc-header-nav a,
header[data-section="site-header"] .trlc-header-utilities a,
header[data-section="site-header"] .trlc-header-cart {
  min-height: 40px;
  color: var(--color-fg) !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: 0.16em !important;
  line-height: 1;
  text-decoration: none !important;
  text-transform: uppercase;
  opacity: 0.72;
}

header[data-section="site-header"] .trlc-header-nav a:hover,
header[data-section="site-header"] .trlc-header-nav a:focus-visible,
header[data-section="site-header"] .trlc-header-nav a[aria-current="page"],
header[data-section="site-header"] .trlc-header-utilities a:hover,
header[data-section="site-header"] .trlc-header-utilities a:focus-visible,
header[data-section="site-header"] .trlc-header-cart:hover,
header[data-section="site-header"] .trlc-header-cart:focus-visible {
  opacity: 1;
}

header[data-section="site-header"] .trlc-header-nav a[aria-current="page"] {
  box-shadow: inset 0 -1px 0 0 currentColor;
}

header[data-section="site-header"] .trlc-header-utilities a,
header[data-section="site-header"] .trlc-header-cart {
  position: relative;
  display: inline-flex !important;
  width: 36px;
  min-width: 36px;
  height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 0 !important;
}

header[data-section="site-header"] .trlc-header-cart svg {
  width: 20px !important;
  height: 20px !important;
}

header[data-section="site-header"] .trlc-header-cart span:not(.trlc-cart-count),
header[data-section="site-header"] .trlc-header-cart-count {
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

header[data-section="site-header"] .trlc-header-utilities a::before {
  display: block;
  width: 20px;
  height: 20px;
  background: currentColor;
  content: "";
}

/* Icon-only utility links follow the current header href contract. */
header[data-section="site-header"] .trlc-header-utilities a[href*="?s="]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.2-3.2'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.2-3.2'/%3E%3C/svg%3E") center / contain no-repeat;
}

header[data-section="site-header"] .trlc-header-utilities a[href*="my-account"]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.6'/%3E%3Cpath d='M5 20c1.2-4 3.5-6 7-6s5.8 2 7 6'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.6'/%3E%3Cpath d='M5 20c1.2-4 3.5-6 7-6s5.8 2 7 6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.trlc-header-mobile-toggle {
  color: var(--color-fg) !important;
}

/* Peg-like product/card system without changing product media. */
.trlc-featured-card,
.trlc-shop-card,
.trlc-product-card,
body.single-product section[data-section="pdp-related"] ul.products li.product {
  overflow: hidden;
  border: 0 !important;
  border-radius: 8px !important;
  background: var(--color-bg) !important;
  box-shadow: 0 0 0 1px var(--color-border-warm) !important;
  transform: none !important;
}

.trlc-featured-card-media,
.trlc-shop-card__media,
.trlc-product-card__media,
.trlc-product-card .trlc-product-card__image,
body.single-product section[data-section="pdp-related"] ul.products li.product a img {
  overflow: hidden;
  border-radius: 8px !important;
  background: var(--color-surface-warm) !important;
}

.trlc-featured-card-img,
.trlc-shop-card__img,
.trlc-product-card__image,
.trlc-product-card .trlc-shop-card__img.trlc-product-card__image,
body.single-product section[data-section="pdp-related"] ul.products li.product a img {
  object-fit: cover !important;
}

.trlc-featured-card-body,
.trlc-shop-card__body,
.trlc-product-card__meta {
  position: relative;
  padding: 16px 18px 18px !important;
}

.trlc-featured-card-title,
.trlc-shop-card__title,
.trlc-product-card__title,
body.single-product section[data-section="pdp-related"] .woocommerce-loop-product__title {
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
}

.trlc-featured-card-price,
.trlc-shop-card__price,
.trlc-product-card__price,
body.single-product section[data-section="pdp-related"] .price {
  color: var(--color-fg) !important;
  font-family: var(--font-body);
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

.trlc-featured-card-add,
.trlc-shop-card__add,
body.single-product section[data-section="pdp-related"] .button,
.single_add_to_cart_button,
.trlc-cart-drawer__cta,
.trlc-cart-page-cta,
.woocommerce-checkout button.button,
body.woocommerce-account .woocommerce-button,
body.woocommerce-account button.button,
body.woocommerce-account input.button {
  min-height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.trlc-featured-card-add:hover,
.trlc-shop-card__add:hover,
body.single-product section[data-section="pdp-related"] .button:hover,
.single_add_to_cart_button:hover,
.trlc-cart-drawer__cta:hover,
.trlc-cart-page-cta:hover,
.woocommerce-checkout button.button:hover,
body.woocommerce-account .woocommerce-button:hover,
body.woocommerce-account button.button:hover,
body.woocommerce-account input.button:hover {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)) !important;
  color: var(--color-bg) !important;
}

.trlc-home-featured-pill,
.trlc-filter-primary .facetwp-checkbox,
.trlc-filter-primary .facetwp-radio,
.trlc-filter-more summary,
.trlc-filter-clear,
.facetwp-sort select {
  min-height: 34px !important;
  border: 1px solid var(--color-border-warm) !important;
  border-radius: 999px !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body);
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase;
}

.trlc-home-featured-pill.is-active,
.trlc-filter-primary .facetwp-checkbox.checked,
.trlc-filter-primary .facetwp-checkbox:hover,
.trlc-filter-more[open] summary {
  border-color: var(--color-fg) !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
}

/* Home */
body.home section[data-section="home-hero"] {
  background: var(--color-surface-warm) !important;
}

body.home section[data-section="home-hero"] .trlc-display {
  font-family: var(--font-body) !important;
  font-size: clamp(38px, 5vw, 58px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.04 !important;
  text-transform: none !important;
}

body.home section[data-section="home-hero"] .trlc-heading-secondary,
body.home .trlc-home-hero-bullets li {
  max-width: 420px;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

body.home .trlc-home-featured-head {
  max-width: 1180px;
  padding-top: 76px !important;
  text-align: center !important;
}

body.home .trlc-home-featured-head h2,
.trlc-shop-title,
body.single-product .product_title,
.trlc-account-page-h1,
.trlc-legal-h1,
.trlc-faq-wrap h1 {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.home .trlc-home-featured-pills {
  justify-content: center !important;
}

body.home .trlc-home-featured-grid {
  max-width: 1320px !important;
  gap: 36px !important;
  margin-top: 42px !important;
}

body.home section[data-section="home-story"] {
  background: var(--color-surface-warm) !important;
}

body.home .trlc-home-story-media {
  border-radius: 8px;
}

body.home .trlc-home-story-body h2,
body.home .trlc-home-closing-statement h2 {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

/* Shop */
section[data-section="shop-archive"].trlc-shop-archive {
  background: var(--color-surface-warm) !important;
}

.trlc-shop-shell {
  max-width: 1320px !important;
}

.trlc-shop-kicker,
.trlc-shop-intro {
  display: none !important;
}

.trlc-shop-title {
  margin-bottom: 18px !important;
  font-size: clamp(40px, 4vw, 56px) !important;
  line-height: 1.08 !important;
  text-align: center !important;
}

.trlc-filter-bar {
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  margin: 0 0 42px !important;
}

.trlc-filter-actions {
  margin-left: auto;
}

.trlc-product-grid.facetwp-template.trlc-shop-grid,
.trlc-shop-grid {
  gap: 36px !important;
}

/* PDP */
body.single-product section[data-section="pdp-hero"] {
  background: var(--color-surface-warm) !important;
}

body.single-product section[data-section="pdp-hero"] > .brxe-container {
  align-items: flex-start !important;
  gap: 72px !important;
}

body.single-product .product_title {
  font-size: clamp(38px, 4vw, 56px) !important;
  line-height: 1.05 !important;
}

body.single-product .summary,
body.single-product .entry-summary {
  color: var(--color-fg);
}

body.single-product .woocommerce-product-gallery,
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image {
  border-radius: 0 !important;
  background: var(--color-bg) !important;
}

body.single-product .flex-control-nav {
  gap: 12px !important;
}

body.single-product .flex-control-nav li img {
  border-radius: 4px;
  background: var(--color-bg);
}

body.single-product form.cart {
  display: grid !important;
  grid-template-columns: auto minmax(220px, 1fr);
  gap: 12px !important;
  align-items: center;
}

body.single-product form.cart .quantity input.qty {
  min-height: 48px;
  border: 1px solid var(--color-border-warm);
  border-radius: 999px;
  background: var(--color-bg);
}

body.single-product .single_add_to_cart_button {
  min-height: 48px !important;
}

body.single-product .trlc-pdp-detail-section,
body.single-product .trlc-pdp-detail-sections {
  border-color: var(--color-border-warm) !important;
}

body.single-product section[data-section="pdp-related"] {
  background: var(--color-surface-warm) !important;
}

body.single-product section[data-section="pdp-related"] h2 {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Cart and checkout */
.trlc-cart-drawer__backdrop {
  background: color-mix(in srgb, var(--color-fg) 14%, transparent) !important;
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
}

.trlc-cart-drawer__panel {
  width: min(390px, 100vw) !important;
  padding: 42px 34px 34px !important;
  border-left: 1px solid var(--color-border-warm);
  background: var(--color-bg) !important;
  box-shadow: -20px 0 60px color-mix(in srgb, var(--color-fg) 14%, transparent) !important;
}

.trlc-cart-drawer__panel h2 {
  font-family: var(--font-body) !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

.trlc-cart-drawer__shipping-note {
  color: var(--color-fg) !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  opacity: 0.62;
  text-transform: uppercase;
}

.trlc-cart-drawer .woocommerce-mini-cart-item {
  grid-template-columns: 76px 1fr auto !important;
  gap: 12px 16px !important;
  border-bottom: 1px solid var(--color-border-warm);
  box-shadow: none !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item img {
  width: 76px !important;
  height: 76px !important;
  border-radius: 4px;
}

.trlc-cart-drawer .woocommerce-mini-cart-item:last-child {
  border-bottom: 0;
}

body.woocommerce-cart section[data-section="cart-page"] {
  background: #fefefc !important;
}

section[data-section="checkout-accordion"] {
  background: var(--color-surface-warm) !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table,
.trlc-cart-summary,
.trlc-checkout-accordion,
.trlc-checkout-summary,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods li,
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout-review-order,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-content table,
.trlc-account-panel,
.trlc-account-order-row,
.trlc-account-address-summary {
  border: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
body.woocommerce-account input.input-text,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account select {
  min-height: 48px;
  border: 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--color-fg);
}

.woocommerce input.input-text:focus-visible,
.woocommerce textarea:focus-visible,
.woocommerce select:focus-visible,
body.woocommerce-account input.input-text:focus-visible,
body.woocommerce-account input[type="text"]:focus-visible,
body.woocommerce-account input[type="email"]:focus-visible,
body.woocommerce-account input[type="password"]:focus-visible,
body.woocommerce-account input[type="tel"]:focus-visible,
body.woocommerce-account select:focus-visible,
body.woocommerce-checkout .select2-container--focus .select2-selection--single {
  border-bottom-color: var(--color-brand-700) !important;
  outline: 2px solid color-mix(in srgb, var(--color-brand-700) 34%, transparent);
  outline-offset: 2px;
}

.woocommerce label,
body.woocommerce-account label,
.trlc-checkout-summary__heading,
.trlc-account-nav__eyebrow,
.trlc-account-auth__eyebrow,
.trlc-account-dashboard__eyebrow,
.trlc-account-dashboard__facts span,
.trlc-account-address-summary span {
  color: var(--color-fg) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout section[data-section="checkout-accordion"] {
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.75fr);
  gap: 56px !important;
  align-items: start;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 56px 24px 72px !important;
}

body.woocommerce-checkout section[data-section="checkout-accordion"] > .trlc-checkout-page-grid {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

body.woocommerce-checkout .trlc-checkout-page-left,
body.woocommerce-checkout section[data-section="checkout-accordion"] > .trlc-checkout-page-right {
  width: 100% !important;
  max-width: none !important;
}

body.woocommerce-checkout .trlc-checkout-page-h1,
body.woocommerce-checkout .trlc-checkout-page-h2 {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.woocommerce-checkout .trlc-checkout-page-h1 {
  margin: 0 0 28px !important;
  font-size: clamp(40px, 4vw, 56px) !important;
  line-height: 1.08 !important;
}

body.woocommerce-checkout .trlc-checkout-page-h2 {
  margin: 0 0 18px !important;
  font-size: 22px !important;
}

body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-message {
  display: flex !important;
  justify-content: space-between;
  gap: 18px;
  margin: 0 !important;
  padding: 17px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  font-size: 13px !important;
}

body.woocommerce-checkout .trlc-checkout-accordion {
  margin-top: 30px !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout .trlc-step {
  border: 0 !important;
  border-top: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

body.woocommerce-checkout .trlc-step.is-active {
  padding: 24px !important;
  border: 1px solid var(--color-border-warm) !important;
  background: var(--color-bg) !important;
}

body.woocommerce-checkout .trlc-step.is-complete {
  color: var(--color-fg) !important;
}

body.woocommerce-checkout .trlc-step__header {
  display: flex !important;
  align-items: center;
  gap: 13px !important;
  padding: 0 !important;
  border: 0 !important;
}

body.woocommerce-checkout .trlc-step__indicator {
  width: 28px !important;
  height: 28px !important;
  border: 1px solid var(--color-border-warm) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  font-size: 12px !important;
}

body.woocommerce-checkout .trlc-step.is-active .trlc-step__indicator,
body.woocommerce-checkout .trlc-step.is-complete .trlc-step__indicator {
  border-color: var(--color-fg) !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
}

body.woocommerce-checkout .trlc-step__label,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields h3 {
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout .trlc-step__body {
  padding: 28px 0 0 !important;
}

body.woocommerce-checkout .trlc-step.is-future .trlc-step__body,
body.woocommerce-checkout .trlc-step.is-locked .trlc-step__body {
  display: none !important;
}

body.woocommerce-checkout .trlc-step.is-active .trlc-step__body,
body.woocommerce-checkout .trlc-step.is-complete .trlc-step__body {
  display: block !important;
}

body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .col2-set,
body.woocommerce-checkout .col-1,
body.woocommerce-checkout .col-2,
body.woocommerce-checkout .trlc-step .woocommerce-billing-fields,
body.woocommerce-checkout .trlc-step .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment ul.payment_methods li {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .form-row,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
  margin-bottom: 18px !important;
}

body.woocommerce-checkout .form-row-first,
body.woocommerce-checkout .form-row-last {
  width: calc(50% - 10px) !important;
}

body.woocommerce-checkout .form-row-first {
  margin-right: 20px !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single {
  min-height: 48px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout .trlc-step__continue,
body.woocommerce-checkout #place_order {
  width: auto !important;
  min-width: 220px;
  min-height: 46px !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout .trlc-checkout-summary {
  position: sticky;
  top: 96px;
  padding: 26px !important;
  border: 1px solid var(--color-border-warm) !important;
  background: var(--color-bg) !important;
}

/* Account, FAQ, legal, contact */
body.woocommerce-account,
body.woocommerce-account main#brx-content,
body.woocommerce-account section[data-section="account-dashboard"],
.trlc-legal-page,
section[data-section="contact-root"],
section[data-section="faq-root"],
section[data-section="faq-content"] {
  background: var(--color-surface-warm) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  border: 0 !important;
  border-bottom: 1px solid transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 13px !important;
  letter-spacing: 0.12em !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a {
  border-bottom-color: currentColor !important;
}

.trlc-legal-content,
.trlc-faq-wrap,
.trlc-contact-intro,
section[data-section="contact-channels"] > .brxe-container {
  color: var(--color-fg);
  font-family: var(--font-body);
}

.trlc-legal-content {
  border: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

.trlc-faq-entry {
  border-color: var(--color-border-warm) !important;
}

.trlc-faq-entry > summary,
.trlc-faq-answer {
  font-family: var(--font-body) !important;
}

footer[data-section="site-footer"],
.trlc-footer {
  border-top: 1px solid var(--color-border-warm) !important;
  background: var(--color-surface-warm) !important;
  color: var(--color-fg) !important;
}

footer[data-section="site-footer"] h2,
footer[data-section="site-footer"] h3,
footer[data-section="site-footer"] a,
footer[data-section="site-footer"] p,
footer[data-section="site-footer"] .bir-disclosure,
.trlc-footer-link {
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
}

footer[data-section="site-footer"] h2,
footer[data-section="site-footer"] h3 {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
}

footer[data-section="site-footer"] .trlc-footer-logo,
footer[data-section="site-footer"] .trlc-logo--light {
  color: var(--color-fg) !important;
}

@media (max-width: 1023px) {
  header[data-section="site-header"].trlc-site-header {
    padding: 0 14px !important;
  }

  header[data-section="site-header"] .trlc-header-shell {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 8px !important;
    min-height: 58px !important;
  }

  header[data-section="site-header"] .trlc-header-mobile-toggle {
    display: inline-flex !important;
    grid-column: 1;
    grid-row: 1;
    width: 40px;
    min-width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  header[data-section="site-header"] .trlc-header-wordmark {
    grid-column: 2;
    grid-row: 1;
  }

  header[data-section="site-header"] .trlc-logo svg {
    width: min(150px, 42vw) !important;
  }

  header[data-section="site-header"] .trlc-header-utilities {
    display: flex !important;
    grid-column: 3;
    grid-row: 1;
    gap: 4px !important;
  }

  header[data-section="site-header"] .trlc-header-utilities a,
  header[data-section="site-header"] .trlc-header-cart {
    width: 32px;
    min-width: 32px;
  }

  header[data-section="site-header"] .trlc-header-nav {
    display: none !important;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav {
    display: block !important;
    grid-column: 1 / -1;
    grid-row: 2;
    padding: 18px 0 20px;
    border-top: 1px solid var(--color-border-warm);
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav ul {
    display: grid !important;
    gap: 16px !important;
  }

  body.trlc-mobile-menu-open header[data-section="site-header"] .trlc-header-nav a {
    width: 100%;
    justify-content: flex-start;
    min-height: 34px;
  }

  body.home .trlc-home-featured-grid,
  .trlc-product-grid.facetwp-template.trlc-shop-grid,
  .trlc-shop-grid,
  body.single-product section[data-section="pdp-related"] ul.products {
    gap: 22px !important;
  }

  body.home section[data-section="home-hero"] .trlc-display {
    font-size: 34px !important;
  }

  .trlc-shop-title {
    font-size: 38px !important;
  }

  .trlc-filter-actions {
    margin-left: 0;
  }

  body.single-product form.cart {
    grid-template-columns: 1fr;
  }

  body.woocommerce-checkout section[data-section="checkout-accordion"],
  body.woocommerce-checkout .trlc-checkout-page-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-error,
  body.woocommerce-checkout .woocommerce-message {
    display: block !important;
  }

  body.woocommerce-checkout .trlc-step.is-active {
    padding: 20px !important;
  }

  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last {
    width: 100% !important;
    margin-right: 0 !important;
  }

  body.woocommerce-checkout .trlc-checkout-summary {
    position: static;
  }

  .trlc-cart-drawer__panel {
    padding: 36px 24px 28px !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  header[data-section="site-header"] .trlc-header-shell {
    grid-template-columns: minmax(180px, 1fr) auto minmax(180px, 1fr);
    min-height: 64px !important;
    gap: 20px !important;
  }

  header[data-section="site-header"] .trlc-header-mobile-toggle {
    display: none !important;
  }

  header[data-section="site-header"] .trlc-header-nav {
    display: block !important;
    grid-column: 1;
    grid-row: 1;
  }

  header[data-section="site-header"] .trlc-header-nav ul {
    display: flex !important;
    gap: 18px !important;
  }

  header[data-section="site-header"] .trlc-header-wordmark {
    grid-column: 2;
    grid-row: 1;
  }

  header[data-section="site-header"] .trlc-logo svg {
    width: min(180px, 24vw) !important;
  }

  header[data-section="site-header"] .trlc-header-utilities {
    grid-column: 3;
    grid-row: 1;
    gap: 8px !important;
  }
}
/* === END 05.0 STITCH PEG VISUAL PASS === */

/* === 05.1 ABOUT REFINED IMAGERY PASS === */
body.page-id-105 main#brx-content,
section[data-section="about-refined"].trlc-about-refined-template {
  background: var(--color-surface-warm) !important;
}

.trlc-about-refined {
  overflow: hidden;
  background: var(--color-surface-warm);
  color: var(--color-fg);
  font-family: var(--font-body);
}

.trlc-about-refined-hero {
  position: relative;
  display: grid;
  min-height: 500px;
  place-items: center;
  overflow: hidden;
  text-align: center;
}

.trlc-about-refined-hero__img,
.trlc-about-refined-story__media img,
.trlc-about-refined-philosophy__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trlc-about-refined-hero__img,
.trlc-about-refined-hero__overlay {
  position: absolute;
  inset: 0;
}

.trlc-about-refined-hero__overlay {
  background: color-mix(in srgb, var(--color-fg) 32%, transparent);
}

.trlc-about-refined-hero__content {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(780px, calc(100% - 48px));
  gap: 24px;
  justify-items: center;
  color: var(--color-bg);
}

.trlc-about-refined-hero h1 {
  max-width: 760px;
  margin: 0;
  color: var(--color-bg);
  font-family: var(--font-body);
  font-size: clamp(40px, 5vw, 58px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.08;
  text-wrap: balance;
}

.trlc-about-refined-hero p,
.trlc-about-refined-kicker,
.trlc-about-refined-difference__item h3,
.trlc-about-refined-philosophy a {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1.25;
  text-transform: uppercase;
}

.trlc-about-refined-hero p {
  color: color-mix(in srgb, var(--color-bg) 92%, transparent);
}

.trlc-about-refined-story,
.trlc-about-refined-philosophy {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(48px, 7vw, 96px);
  width: min(100% - 80px, 1360px);
  margin: 0 auto;
  align-items: center;
}

.trlc-about-refined-story {
  padding: 120px 0 64px;
}

.trlc-about-refined-story__media,
.trlc-about-refined-philosophy__media {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-border-warm);
  border-radius: 28px;
  background: var(--color-bg);
}

.trlc-about-refined-story__media {
  aspect-ratio: 1 / 1;
}

.trlc-about-refined-story__copy,
.trlc-about-refined-philosophy__copy {
  display: grid;
  gap: 28px;
  max-width: 560px;
}

.trlc-about-refined-kicker {
  color: var(--color-fg);
}

.trlc-about-refined-story h2,
.trlc-about-refined-philosophy h2 {
  margin: 0;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-weight: 500;
  letter-spacing: 0;
  text-wrap: balance;
}

.trlc-about-refined-story h2 {
  font-size: clamp(38px, 4.4vw, 54px);
  line-height: 1.08;
  text-transform: uppercase;
}

.trlc-about-refined-story p,
.trlc-about-refined-philosophy p {
  margin: 0;
  color: color-mix(in srgb, var(--color-fg) 74%, transparent);
  font-size: 18px;
  line-height: 1.62;
}

.trlc-about-refined-difference {
  width: min(100% - 80px, 1360px);
  margin: 0 auto;
  padding: 56px 0 120px;
}

.trlc-about-refined-section-head {
  display: grid;
  gap: 18px;
  justify-items: center;
  margin-bottom: 56px;
  text-align: center;
}

.trlc-about-refined-section-head h2 {
  margin: 0;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0;
}

.trlc-about-refined-section-head span {
  display: block;
  width: 48px;
  height: 1px;
  background: var(--color-border-warm);
}

.trlc-about-refined-difference__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 64px);
}

.trlc-about-refined-difference__item {
  display: grid;
  gap: 16px;
  justify-items: center;
  text-align: center;
}

.trlc-about-refined-difference__icon {
  display: inline-grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border: 1px solid var(--color-border-warm);
  border-radius: 8px;
  background: var(--color-bg);
  color: var(--color-brand-700);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.trlc-about-refined-difference__item h3 {
  color: var(--color-fg);
}

.trlc-about-refined-difference__item p {
  max-width: 330px;
  margin: 0;
  color: color-mix(in srgb, var(--color-fg) 68%, transparent);
  font-size: 14px;
  line-height: 1.68;
}

.trlc-about-refined-philosophy {
  padding: 0 0 120px;
}

.trlc-about-refined-philosophy__copy {
  order: 1;
}

.trlc-about-refined-philosophy__media {
  order: 2;
  aspect-ratio: 16 / 10;
}

.trlc-about-refined-philosophy h2 {
  font-size: clamp(30px, 3vw, 40px);
  line-height: 1.15;
}

.trlc-about-refined-philosophy a {
  display: inline-flex;
  width: fit-content;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 999px;
  background: var(--color-fg);
  color: var(--color-bg) !important;
  text-decoration: none !important;
}

.trlc-about-refined-philosophy a:hover,
.trlc-about-refined-philosophy a:focus-visible {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg));
}

@media (max-width: 767px) {
  .trlc-about-refined-hero {
    min-height: 500px;
  }

  .trlc-about-refined-hero__content {
    width: min(100% - 40px, 340px);
    gap: 22px;
  }

  .trlc-about-refined-hero h1 {
    font-size: 38px;
  }

  .trlc-about-refined-story,
  .trlc-about-refined-philosophy,
  .trlc-about-refined-difference {
    width: min(100% - 80px, 680px);
  }

  .trlc-about-refined-story,
  .trlc-about-refined-philosophy {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .trlc-about-refined-story {
    padding: 88px 0 56px;
  }

  .trlc-about-refined-story h2 {
    font-size: 34px;
  }

  .trlc-about-refined-story p,
  .trlc-about-refined-philosophy p {
    font-size: 16px;
  }

  .trlc-about-refined-difference {
    padding: 44px 0 88px;
  }

  .trlc-about-refined-difference__grid {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .trlc-about-refined-philosophy {
    padding-bottom: 88px;
  }
}
/* === END 05.1 ABOUT REFINED IMAGERY PASS === */

/* === 05.2 HOME REAL DIFFERENCE GLOW SEGMENT === */
body.home section[data-section="home-story"] {
  padding: 96px 40px !important;
  background: var(--color-surface-warm) !important;
}

body.home .trlc-home-real-difference-segment {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: clamp(48px, 6vw, 72px);
  width: 100%;
  max-width: 1360px;
  margin: 0 auto;
  align-items: center;
}

body.home .trlc-home-real-difference-media {
  min-height: 400px;
  margin: 0;
  aspect-ratio: 1.45 / 1;
  border: 1px solid var(--color-border-warm);
  border-radius: 8px;
  background: var(--color-bg);
}

body.home .trlc-home-real-difference-copy {
  display: grid;
  gap: 24px;
  max-width: 460px;
  margin: 0;
  text-align: left;
}

body.home .trlc-home-real-difference-eyebrow {
  margin: 0;
  color: color-mix(in srgb, var(--color-fg) 62%, transparent);
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 1.25;
  text-transform: uppercase;
}

body.home .trlc-home-real-difference-copy h2 {
  max-width: 430px;
  margin: 0;
  color: var(--color-fg);
  font-family: var(--font-body) !important;
  font-size: clamp(34px, 3.2vw, 40px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-transform: none !important;
}

body.home .trlc-home-real-difference-copy .trlc-home-story-copy {
  display: grid;
  gap: 14px;
  margin: 0;
}

body.home .trlc-home-real-difference-copy .trlc-home-story-copy p {
  max-width: 430px;
  margin: 0;
  color: color-mix(in srgb, var(--color-fg) 66%, transparent);
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.7;
}

body.home .trlc-home-real-difference-cta {
  display: inline-flex;
  width: fit-content;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  padding: 0 32px;
  border: 0;
  border-radius: 0;
  background: var(--color-fg);
  color: var(--color-bg) !important;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1;
  text-decoration: none !important;
  text-transform: none;
  transition: background-color 180ms ease, color 180ms ease;
}

body.home .trlc-home-real-difference-cta:hover,
body.home .trlc-home-real-difference-cta:focus-visible {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg));
  color: var(--color-bg) !important;
}

@media (max-width: 767px) {
  body.home section[data-section="home-story"] {
    padding: 72px 24px !important;
  }

  body.home .trlc-home-real-difference-segment {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  body.home .trlc-home-real-difference-media {
    min-height: 320px;
    aspect-ratio: 1 / 1;
  }

  body.home .trlc-home-real-difference-copy {
    gap: 20px;
  }

  body.home .trlc-home-real-difference-copy h2 {
    font-size: 34px !important;
  }
}
/* === END 05.2 HOME REAL DIFFERENCE GLOW SEGMENT === */

/* === 05.3 CONTACT PREMIUM REFINEMENT === */
section[data-section="contact-root"] {
  display: grid !important;
  grid-template-columns: minmax(0, 7fr) minmax(300px, 3.5fr);
  gap: clamp(48px, 8vw, 120px);
  box-sizing: border-box;
  width: 100vw !important;
  max-width: none !important;
  padding: 0 40px 96px !important;
  background: var(--color-surface-warm) !important;
  color: var(--color-fg);
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

section[data-section="contact-hero"] {
  position: relative;
  display: grid !important;
  grid-column: 1 / -1;
  align-content: center;
  justify-items: center;
  grid-auto-rows: max-content;
  row-gap: 22px;
  width: calc(100% + 80px) !important;
  max-width: none !important;
  min-height: 500px;
  margin: 0 -40px;
  overflow: hidden;
  background-image:
    linear-gradient(color-mix(in srgb, var(--color-fg) 34%, transparent), color-mix(in srgb, var(--color-fg) 34%, transparent)),
    url("assets/images/contact/contact-premium-hero.webp");
  background-position: center;
  background-size: cover;
  text-align: center;
}

section[data-section="contact-hero"] h1 {
  position: relative;
  z-index: 1;
  margin: 0 !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body) !important;
  font-size: clamp(40px, 4vw, 48px) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}

section[data-section="contact-hero"] .trlc-contact-intro {
  position: relative;
  z-index: 1;
  max-width: 640px;
  margin: 0 auto;
  color: var(--color-bg);
}

section[data-section="contact-hero"] .trlc-contact-intro p {
  margin: 0;
  color: var(--color-bg);
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.6;
}

form[data-section="contact-form"] {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 32px;
  row-gap: 34px;
  grid-column: 1;
  width: 100%;
  max-width: 720px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.trlc-contact-premium-form-head {
  grid-column: 1;
  max-width: 640px;
  margin: 0 0 -78px;
}

.trlc-contact-premium-form-head p {
  margin: 0 0 10px;
  color: color-mix(in srgb, var(--color-fg) 62%, transparent);
  font-family: var(--font-body);
  font-size: 16px;
  font-style: italic;
  font-weight: 500;
  line-height: 1.4;
}

.trlc-contact-premium-form-head h2 {
  max-width: 610px;
  margin: 0;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.15;
}

form[data-section="contact-form"] .form-group,
form[data-section="contact-form"] .bricks-form__field,
form[data-section="contact-form"] .options-wrapper {
  margin-bottom: 0 !important;
}

form[data-section="contact-form"] .form-group:nth-of-type(3),
form[data-section="contact-form"] .form-group:nth-of-type(4),
form[data-section="contact-form"] .submit-button-wrapper {
  grid-column: 1 / -1;
}

form[data-section="contact-form"] .form-group:nth-of-type(5) {
  display: none !important;
}

form[data-section="contact-form"] .form-group:nth-of-type(-n+4)::before {
  display: block;
  margin: 0 0 14px;
  color: color-mix(in srgb, var(--color-fg) 62%, transparent);
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1.25;
  text-transform: uppercase;
}

form[data-section="contact-form"] .form-group:nth-of-type(1)::before {
  content: "Full Name";
}

form[data-section="contact-form"] .form-group:nth-of-type(2)::before {
  content: "Email Address";
}

form[data-section="contact-form"] .form-group:nth-of-type(3)::before {
  content: "Reason for contact";
}

form[data-section="contact-form"] .form-group:nth-of-type(4)::before {
  content: "Message";
}

form[data-section="contact-form"] label {
  color: color-mix(in srgb, var(--color-fg) 62%, transparent) !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

form[data-section="contact-form"] input:not([type="submit"]),
form[data-section="contact-form"] textarea,
form[data-section="contact-form"] select {
  width: 100% !important;
  min-height: 48px !important;
  padding: 10px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  box-shadow: none !important;
  font-family: var(--font-body) !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
}

form[data-section="contact-form"] textarea {
  min-height: 152px !important;
  resize: vertical;
}

form[data-section="contact-form"] ::placeholder {
  color: color-mix(in srgb, var(--color-fg) 86%, transparent) !important;
  opacity: 1 !important;
}

form[data-section="contact-form"] button[type="submit"],
form[data-section="contact-form"] input[type="submit"] {
  display: inline-flex !important;
  width: auto !important;
  min-width: 220px;
  min-height: 56px !important;
  align-items: center;
  justify-content: center;
  padding: 0 42px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

form[data-section="contact-form"] button[type="submit"]::after {
  margin-left: 14px;
  content: "->";
}

form[data-section="contact-form"] button[type="submit"] .text {
  font-size: 0;
}

form[data-section="contact-form"] button[type="submit"] .text::before {
  content: "Send Message";
  font-size: 12px;
}

form[data-section="contact-form"] button[type="submit"]:hover,
form[data-section="contact-form"] button[type="submit"]:focus-visible,
form[data-section="contact-form"] input[type="submit"]:hover,
form[data-section="contact-form"] input[type="submit"]:focus-visible {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)) !important;
}

section[data-section="contact-channels-wrapper"] {
  grid-column: 2;
  grid-row: 2 / span 2;
  align-self: start;
  padding: 0 !important;
  border-top: 0 !important;
}

.trlc-contact-premium-sidebar {
  display: grid;
  width: 100%;
  gap: 44px;
}

.trlc-contact-premium-card {
  box-sizing: border-box;
  width: 100%;
  padding: 32px;
  border: 1px solid var(--color-border-warm);
  border-radius: 0;
  background: color-mix(in srgb, var(--color-bg) 54%, transparent);
}

.trlc-contact-premium-card h2 {
  margin: 0 0 26px;
  color: color-mix(in srgb, var(--color-fg) 62%, transparent);
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.25;
  text-transform: uppercase;
}

.trlc-contact-premium-card p,
.trlc-contact-premium-hours dt {
  margin: 0 0 8px;
  color: color-mix(in srgb, var(--color-fg) 52%, transparent);
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.5;
}

.trlc-contact-premium-card a,
.trlc-contact-premium-hours dd {
  margin: 0;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.45;
  text-decoration: none;
}

.trlc-contact-premium-hours {
  display: grid;
  gap: 16px;
  margin: 0;
}

.trlc-contact-premium-hours div {
  display: flex;
  justify-content: space-between;
  gap: 18px;
}

.trlc-contact-premium-hours dt {
  margin: 0;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.trlc-contact-premium-hours dd:last-child {
  font-style: italic;
}

.trlc-contact-premium-social {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
}

.trlc-contact-premium-social a {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media (max-width: 1023px) {
  section[data-section="contact-root"] {
    grid-template-columns: 1fr;
    gap: 48px;
    padding: 0 24px 72px !important;
  }

  section[data-section="contact-hero"],
  .trlc-contact-premium-form-head,
  form[data-section="contact-form"],
  section[data-section="contact-channels-wrapper"] {
    grid-column: 1;
  }

  section[data-section="contact-hero"] {
    width: calc(100% + 48px) !important;
    min-height: 500px;
    margin: 0 -24px;
    row-gap: 18px;
  }

  section[data-section="contact-hero"] .trlc-contact-intro {
    max-width: min(640px, calc(100% - 48px));
  }

  .trlc-contact-premium-form-head {
    margin-bottom: -24px;
  }

  section[data-section="contact-channels-wrapper"] {
    grid-row: auto;
  }

  form[data-section="contact-form"] {
    grid-template-columns: 1fr;
    row-gap: 32px;
  }

  form[data-section="contact-form"] .form-group:nth-of-type(1),
  form[data-section="contact-form"] .form-group:nth-of-type(2) {
    grid-column: 1;
  }

  .trlc-contact-premium-sidebar {
    gap: 24px;
  }
}
/* === END 05.3 CONTACT PREMIUM REFINEMENT === */

/* === 05.4 FAQ IMAGE BACKGROUND SECTION === */
section[data-section="faq-hero"] {
  box-sizing: border-box;
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 112px 40px 72px !important;
  background: var(--color-surface-warm) !important;
  color: var(--color-fg);
}

section[data-section="faq-hero"] > div {
  display: grid;
  gap: 22px;
  width: min(100%, 760px) !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center;
}

section[data-section="faq-hero"] h1 {
  margin: 0 !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: clamp(38px, 4.2vw, 48px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.12 !important;
  text-transform: none !important;
}

section[data-section="faq-hero"] p {
  max-width: 680px;
  margin: 0 auto !important;
  color: color-mix(in srgb, var(--color-fg) 62%, transparent) !important;
  font-family: var(--font-body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.65 !important;
}

section[data-section="faq-content"] {
  box-sizing: border-box;
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 28px 40px 112px !important;
  background: var(--color-surface-warm) !important;
}

section[data-section="faq-content"] > .brxe-code {
  width: 100%;
}

.trlc-faq-wrap {
  display: grid;
  width: min(100%, 1040px);
  max-width: 1040px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  gap: 84px;
}

.trlc-faq-section {
  display: grid;
  grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
  align-items: start;
  column-gap: clamp(48px, 7vw, 96px);
  row-gap: 0;
  margin: 0 !important;
}

.trlc-faq-section-heading {
  position: sticky;
  top: 112px;
  grid-column: 1;
  grid-row: 1 / span 20;
  margin: 0 !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: 23px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  text-transform: none !important;
}

.trlc-faq-section-heading::after {
  display: block;
  max-width: 240px;
  margin-top: 18px;
  color: color-mix(in srgb, var(--color-fg) 54%, transparent);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.65;
  content: "Focused answers from our skincare team.";
}

#ingredients .trlc-faq-section-heading::after {
  content: "Ingredient standards, testing, and formula safety.";
}

#tallow .trlc-faq-section-heading::after {
  content: "Barrier support, skin feel, sourcing, and daily use.";
}

#products .trlc-faq-section-heading::after {
  content: "Ordering, shipping, returns, and product availability.";
}

.trlc-faq-entry {
  grid-column: 2;
  margin: 0 !important;
  padding: 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
  background: transparent !important;
}

.trlc-faq-entry > summary {
  display: flex;
  min-height: 72px;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 21px 0 !important;
  color: var(--color-fg) !important;
  cursor: pointer;
  font-family: var(--font-body) !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.45 !important;
  list-style: none;
}

.trlc-faq-entry > summary::-webkit-details-marker {
  display: none;
}

.trlc-faq-entry > summary::after {
  position: static !important;
  flex: 0 0 auto;
  width: 24px;
  color: var(--color-fg);
  content: "+" !important;
  font-size: 24px !important;
  font-weight: 300 !important;
  line-height: 1 !important;
  text-align: right;
}

.trlc-faq-entry[open] > summary::after {
  content: "-" !important;
}

.trlc-faq-answer {
  max-width: 680px;
  margin: -2px 0 26px !important;
  color: color-mix(in srgb, var(--color-fg) 62%, transparent) !important;
  font-family: var(--font-body) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.trlc-faq-answer p,
.trlc-faq-answer ul,
.trlc-faq-answer ol {
  margin: 0 0 16px;
}

.trlc-faq-answer li {
  margin-bottom: 8px;
}

.trlc-faq-answer a {
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.trlc-faq-contact-panel {
  position: relative;
  isolation: isolate;
  display: flex;
  width: min(100%, 1120px);
  min-height: 230px;
  margin: 112px auto 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 48px 24px;
  border: 1px solid color-mix(in srgb, var(--color-border-warm) 52%, transparent);
  background-image:
    linear-gradient(color-mix(in srgb, var(--color-bg) 78%, transparent), color-mix(in srgb, var(--color-bg) 78%, transparent)),
    url("assets/images/contact/contact-premium-hero.webp");
  background-position: center 58%;
  background-size: cover;
  text-align: center;
}

.trlc-faq-contact-panel::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: color-mix(in srgb, var(--color-bg) 40%, transparent);
  backdrop-filter: blur(2px);
  content: "";
}

.trlc-faq-contact-panel h2 {
  margin: 0 0 18px;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
}

.trlc-faq-contact-panel p {
  margin: 0 0 30px;
  color: color-mix(in srgb, var(--color-fg) 58%, transparent);
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.55;
}

.trlc-faq-contact-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0 32px;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-faq-contact-button:hover,
.trlc-faq-contact-button:focus-visible {
  background: color-mix(in srgb, var(--color-fg) 88%, var(--color-bg)) !important;
}

@media (max-width: 1023px) {
  section[data-section="faq-hero"] {
    padding: 82px 24px 48px !important;
  }

  section[data-section="faq-content"] {
    padding: 18px 24px 84px !important;
  }

  .trlc-faq-wrap {
    gap: 60px;
  }

  .trlc-faq-section {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 24px;
  }

  .trlc-faq-section-heading {
    position: static;
    grid-column: 1;
    grid-row: auto;
    font-size: 22px !important;
  }

  .trlc-faq-section-heading::after {
    max-width: 310px;
    margin-top: 14px;
  }

  .trlc-faq-entry {
    grid-column: 1;
  }

  .trlc-faq-entry > summary {
    min-height: 66px;
    padding: 19px 0 !important;
    font-size: 16px !important;
  }

  .trlc-faq-contact-panel {
    min-height: 240px;
    margin-top: 72px;
    padding: 44px 22px;
  }
}

@media (max-width: 520px) {
  section[data-section="faq-hero"] {
    padding: 64px 18px 38px !important;
  }

  section[data-section="faq-content"] {
    padding: 10px 18px 64px !important;
  }

  section[data-section="faq-hero"] h1 {
    font-size: 36px !important;
  }

  section[data-section="faq-hero"] p {
    font-size: 15px !important;
  }

  .trlc-faq-wrap { gap: 48px; }
  .trlc-faq-section { row-gap: 18px; }
  .trlc-faq-section-heading::after { margin-top: 10px; }

  .trlc-faq-entry > summary {
    min-height: 62px;
    gap: 18px;
    padding: 17px 0 !important;
    font-size: 15px !important;
  }

  .trlc-faq-answer {
    margin-bottom: 22px !important;
    font-size: 14px !important;
  }

  .trlc-faq-contact-panel {
    min-height: 220px;
    margin-top: 56px;
    padding: 38px 18px;
  }

  .trlc-faq-contact-button {
    width: min(100%, 220px);
  }
}
/* === END 05.4 FAQ IMAGE BACKGROUND SECTION === */

/* === 05.5 ACCOUNT, SHIPPING, COMING SOON PASS === */
body.woocommerce-account main#brx-content,
body.woocommerce-account section[data-section="account-dashboard"],
section[data-section="legal-page"] {
  background: var(--color-surface-warm) !important;
}

body.woocommerce-account section[data-section="account-dashboard"] {
  box-sizing: border-box;
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 68px 40px 112px !important;
}

body.woocommerce-account .trlc-account-page-grid {
  width: min(100%, 1160px);
  max-width: 1160px !important;
}

body.woocommerce-account .trlc-account-heading {
  margin: 0 0 48px;
}

body.woocommerce-account .trlc-account-heading--login,
body.woocommerce-account .trlc-account-heading--register {
  max-width: 560px;
  margin: 0 auto 54px;
  text-align: center;
}

body.woocommerce-account .trlc-account-page-h1 {
  margin: 0 0 16px !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: clamp(44px, 5vw, 58px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  text-transform: none !important;
}

body.woocommerce-account .trlc-account-heading p {
  max-width: 560px;
  margin: 0;
  color: color-mix(in srgb, var(--color-fg) 60%, transparent);
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.7;
}

body.woocommerce-account .trlc-account-heading--login p,
body.woocommerce-account .trlc-account-heading--register p {
  margin: 0 auto;
}

body.woocommerce-account:not(.logged-in) .woocommerce {
  width: 100%;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth {
  width: min(100%, 540px);
  margin: 0 auto;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__panel {
  width: 100%;
}

body.woocommerce-account:not(.logged-in):not(.trlc-account-register-view) .trlc-account-auth__register,
body.woocommerce-account.trlc-account-register-view .trlc-account-auth__login {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__register {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__title {
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form-login,
body.woocommerce-account:not(.logged-in) .woocommerce-form-register {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form-row,
body.woocommerce-account:not(.logged-in) .form-row {
  margin: 0 0 30px !important;
  padding: 0 !important;
}

body.woocommerce-account:not(.logged-in) label {
  display: block;
  margin: 0 0 10px;
  color: color-mix(in srgb, var(--color-fg) 68%, transparent);
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.35;
  text-transform: none;
}

body.woocommerce-account:not(.logged-in) .required,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) input.input-text,
body.woocommerce-account:not(.logged-in) input[type="text"],
body.woocommerce-account:not(.logged-in) input[type="email"],
body.woocommerce-account:not(.logged-in) input[type="password"] {
  width: 100%;
  min-height: 56px !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-fg) 25%, transparent) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body);
  font-size: 17px !important;
  line-height: 1.4;
}

body.woocommerce-account:not(.logged-in) input.input-text:focus,
body.woocommerce-account:not(.logged-in) input[type="text"]:focus,
body.woocommerce-account:not(.logged-in) input[type="email"]:focus,
body.woocommerce-account:not(.logged-in) input[type="password"]:focus {
  border-bottom-color: var(--color-fg) !important;
  outline: 0;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__submit {
  margin-top: 42px !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-button,
body.woocommerce-account:not(.logged-in) button.button,
body.woocommerce-account:not(.logged-in) input.button {
  width: 100%;
  min-height: 58px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body);
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__meta,
body.woocommerce-account:not(.logged-in) .trlc-account-auth__switch {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 26px 0 0;
  color: color-mix(in srgb, var(--color-fg) 58%, transparent);
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__meta a,
body.woocommerce-account:not(.logged-in) .trlc-account-auth__switch a {
  color: var(--color-fg) !important;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  text-transform: uppercase;
}

body.woocommerce-account:not(.logged-in) .trlc-account-register-form__note {
  margin: -8px 0 28px !important;
  color: color-mix(in srgb, var(--color-fg) 60%, transparent);
  font-size: 14px;
  line-height: 1.6;
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-height: none !important;
  overflow: visible !important;
  gap: 5px;
  width: 100%;
  margin-top: 2px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  color: color-mix(in srgb, var(--color-fg) 65%, transparent);
  font-family: var(--font-body);
  font-size: 14px;
  line-height: 1.4;
  list-style: none;
  text-align: left;
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements li {
  position: relative;
  margin: 0 !important;
  padding-left: 22px;
  color: #706c6c;
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements li::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  color: currentColor;
  content: '\2715';
  font-size: 16px;
  font-weight: 700;
  text-align: center;
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements li.is-valid {
  color: #28765f;
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements li.is-valid::before {
  content: '\2713';
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements li.is-invalid {
  color: #9b2c25;
}

body.woocommerce-account:not(.logged-in) .trlc-account-password-requirements li.is-invalid::before {
  content: '\00d7';
}

body.woocommerce-account.logged-in .woocommerce {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: clamp(56px, 7vw, 96px);
  align-items: start;
}

body.woocommerce-account.logged-in .trlc-account-heading {
  max-width: 1160px;
  margin: 0 auto 56px;
}

body.woocommerce-account.logged-in .trlc-account-page-h1 {
  font-size: clamp(42px, 5vw, 56px) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  position: sticky;
  top: 96px;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-account .trlc-account-nav__eyebrow {
  margin: 0 0 12px;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

body.woocommerce-account .trlc-account-nav__eyebrow::after {
  display: block;
  max-width: 160px;
  margin-top: 10px;
  color: color-mix(in srgb, var(--color-fg) 58%, transparent);
  content: "Manage your wellness rituals";
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  text-transform: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: grid;
  gap: 6px;
  margin: 36px 0 0 !important;
  padding: 0 !important;
  list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  border: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  position: relative;
  display: flex !important;
  min-height: 34px;
  align-items: center;
  gap: 12px;
  padding: 0 0 0 20px !important;
  border: 0 !important;
  background: transparent !important;
  color: color-mix(in srgb, var(--color-fg) 54%, transparent) !important;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-decoration: none !important;
  text-transform: uppercase;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
  position: absolute;
  left: 0;
  width: 7px;
  height: 7px;
  border: 1px solid currentColor;
  border-radius: 50%;
  content: "";
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a {
  border-bottom-color: transparent !important;
  color: var(--color-fg) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::after,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--is-active a::after {
  content: none;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  width: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--color-fg);
  font-family: var(--font-body);
}

body.woocommerce-account .woocommerce-MyAccount-content > p:not(.trlc-empty-state-heading):not(.trlc-empty-state-body) {
  color: color-mix(in srgb, var(--color-fg) 62%, transparent);
  font-size: 15px;
  line-height: 1.7;
}

.trlc-account-dashboard {
  display: grid;
  gap: 72px;
}

.trlc-account-panel {
  padding: 28px !important;
}

.trlc-account-dashboard__header,
.trlc-account-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--color-border-warm);
}

.trlc-account-dashboard__eyebrow,
.trlc-account-dashboard__facts span,
.trlc-account-address-summary span,
.trlc-account-order-row span,
.trlc-order-status-badge,
body.woocommerce-account .woocommerce-orders-table td::before {
  color: color-mix(in srgb, var(--color-fg) 54%, transparent);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}

.trlc-account-dashboard h2,
.trlc-account-panel h3,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
  margin: 0 !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-transform: none !important;
}

.trlc-account-dashboard__text-link,
.trlc-account-panel__head a,
body.woocommerce-account .woocommerce-MyAccount-content a {
  color: var(--color-fg) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-account-dashboard__facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(32px, 6vw, 76px);
  margin-top: -36px;
}

.trlc-account-dashboard__facts--single {
  grid-template-columns: minmax(0, 1fr);
}

.trlc-account-dashboard__facts strong,
.trlc-account-address-summary p,
.trlc-account-order-row strong,
.trlc-account-order-row b {
  display: block;
  margin: 8px 0 0;
  color: var(--color-fg);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5;
}

.trlc-account-orders-list,
.trlc-account-address-grid {
  display: grid;
  gap: 16px;
  margin-top: 32px;
}

.trlc-account-order-row,
.woocommerce-orders-table tbody tr {
  display: grid;
  grid-template-columns: 1.4fr 1.3fr 1fr 1fr auto;
  gap: 20px;
  align-items: center;
  min-height: 82px;
  padding: 20px 24px !important;
  border: 1px solid var(--color-border-warm) !important;
  background: color-mix(in srgb, var(--color-bg) 72%, transparent);
}

.trlc-account-order-row em {
  font-style: normal;
}

.trlc-account-address-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.trlc-account-address-summary,
body.woocommerce-account .woocommerce-Address {
  padding: 28px;
  border: 1px solid var(--color-border-warm);
  background: color-mix(in srgb, var(--color-bg) 72%, transparent);
}

body.woocommerce-account .woocommerce-orders-table {
  width: 100%;
  border: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 16px !important;
}

body.woocommerce-account .woocommerce-orders-table thead {
  display: none;
}

body.woocommerce-account .woocommerce-orders-table tbody,
body.woocommerce-account .woocommerce-orders-table td {
  display: block;
}

body.woocommerce-account .woocommerce-orders-table td {
  padding: 0 !important;
  border: 0 !important;
  color: var(--color-fg);
  font-size: 15px;
}

body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
  justify-self: end;
}

body.woocommerce-account .woocommerce-orders-table .button,
body.woocommerce-account .woocommerce-Button,
body.woocommerce-account button.button,
body.woocommerce-account input.button {
  display: inline-flex !important;
  min-height: 42px !important;
  align-items: center;
  justify-content: center;
  padding: 0 22px !important;
  border: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body);
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.trlc-order-status-badge {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 0 10px;
  border: 1px solid var(--color-border-warm);
  background: var(--color-bg);
  color: var(--color-fg);
}

.trlc-order-status-badge--processing {
  border-color: var(--color-fg);
  background: var(--color-fg);
  color: var(--color-bg);
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info {
  border: 1px solid var(--color-border-warm) !important;
  background: color-mix(in srgb, var(--color-bg) 72%, transparent) !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body);
}

/* Login form error (invalid email/password) — floating text instead of a
   boxed panel, tight but not cramped against the fields below. The message
   is now plain text with no embedded link (trlc_account_clean_login_error_message
   strips WooCommerce's own duplicate "Lost your password?" link — the form
   already has its own "Forgot password?" link under the password field). */
body.trlc-account-login-view .woocommerce-notices-wrapper {
  width: min(100%, 540px);
  margin: 0 auto 22px !important;
}

body.trlc-account-register-view .woocommerce-notices-wrapper,
body.trlc-account-password-view .woocommerce-notices-wrapper {
  width: min(100%, 540px);
  margin: 0 auto 22px !important;
}

body.trlc-account-login-view .woocommerce-error,
body.trlc-account-register-view .woocommerce-error,
body.trlc-account-password-view .woocommerce-error {
  display: block !important;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid #a3322a !important;
  outline: 0 !important;
  background: #fff4f2 !important;
  color: #7d1f1a !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  list-style: none !important;
}

body.trlc-account-login-view .woocommerce-error::before,
body.trlc-account-register-view .woocommerce-error::before,
body.trlc-account-password-view .woocommerce-error::before {
  display: none !important;
}

body.trlc-account-login-view .woocommerce-error li,
body.trlc-account-register-view .woocommerce-error li,
body.trlc-account-password-view .woocommerce-error li {
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
}

body.trlc-account-password-view .woocommerce-notices-wrapper,
body.trlc-account-password-view .woocommerce-message,
body.trlc-account-password-view .woocommerce-info {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.trlc-account-password-view .trlc-password-reset-confirmation {
  max-width: 760px;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  text-align: center;
}

body.woocommerce-account.trlc-account-orders-view .woocommerce-info {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  padding: 22px 24px !important;
}

body.woocommerce-account.trlc-account-orders-view .woocommerce-info .button {
  min-width: 166px;
  min-height: 44px !important;
  padding: 0 22px !important;
  white-space: normal;
  text-align: center;
}

body.woocommerce-account.logged-in input.input-text,
body.woocommerce-account.logged-in input[type="text"],
body.woocommerce-account.logged-in input[type="email"],
body.woocommerce-account.logged-in input[type="password"],
body.woocommerce-account.logged-in select {
  min-height: 50px;
  border: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body);
}

section[data-section="legal-page"] {
  box-sizing: border-box;
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 74px 40px 112px !important;
}

.trlc-legal-page {
  width: min(100%, 760px);
  max-width: 760px !important;
}

.trlc-legal-h1 {
  margin: 0 0 22px !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: clamp(38px, 4vw, 44px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.16 !important;
  text-align: center;
  text-transform: none !important;
}

.trlc-legal-content {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.trlc-legal-content > *,
.trlc-shipping-policy {
  color: var(--color-fg);
  font-family: var(--font-body);
}

.trlc-legal-content h2,
.trlc-shipping-policy__section h2 {
  margin: 0 0 32px !important;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: none !important;
}

body.privacy-policy .trlc-legal-content h2 {
  margin-bottom: 10px !important;
}

.trlc-legal-content p,
.trlc-legal-content li,
.trlc-shipping-policy p {
  color: color-mix(in srgb, var(--color-fg) 64%, transparent);
  font-size: 15px;
  line-height: 1.75;
}

.trlc-shipping-policy__lead {
  max-width: 580px;
  margin: 0 auto 70px;
  text-align: center;
}

.trlc-shipping-policy__section {
  padding: 44px 0 56px;
  border-top: 1px solid var(--color-border-warm);
}

.trlc-shipping-policy__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 34px;
}

.trlc-shipping-policy__cards article {
  padding: 28px;
  border: 1px solid var(--color-border-warm);
  background: color-mix(in srgb, var(--color-bg) 58%, transparent);
}

.trlc-shipping-policy__cards h3 {
  margin: 0 0 16px;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1.35;
  text-transform: uppercase;
}

.trlc-shipping-policy__button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  margin-top: 22px;
  padding: 0 28px;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-coming-soon-page {
  min-height: 100vh;
  background: var(--color-surface-warm);
  color: var(--color-fg);
}

.trlc-coming-soon {
  display: grid;
  min-height: 100vh;
  grid-template-rows: auto 1fr auto;
  padding: clamp(34px, 5vw, 76px) 24px 42px;
}

.trlc-coming-soon__brand {
  display: flex;
  justify-content: center;
}

.trlc-coming-soon__brand a {
  color: var(--color-fg);
  text-decoration: none;
}

.trlc-coming-soon__brand svg {
  width: min(420px, 70vw);
  height: auto;
}

.trlc-coming-soon__content {
  display: flex;
  width: min(100%, 900px);
  margin: 0 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.trlc-coming-soon__content h1 {
  max-width: 900px;
  margin: 0 0 30px;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: clamp(48px, 7vw, 76px);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.06;
}

.trlc-coming-soon__content > p {
  max-width: 760px;
  margin: 0 0 64px;
  color: color-mix(in srgb, var(--color-fg) 72%, transparent);
  font-family: var(--font-body);
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.45;
}

.trlc-coming-soon__form {
  display: grid;
  width: min(100%, 760px);
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 24px;
  align-items: end;
}

.trlc-coming-soon__form input {
  min-height: 70px;
  padding: 0 18px;
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--color-fg) 44%, transparent);
  border-radius: 0;
  background: transparent;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 20px;
}

.trlc-coming-soon__form button {
  min-height: 70px;
  border: 0;
  border-radius: 0;
  background: var(--color-fg);
  color: var(--color-bg);
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.trlc-coming-soon__small,
.trlc-coming-soon__notice {
  grid-column: 1 / -1;
  margin: 30px 0 0;
  color: color-mix(in srgb, var(--color-fg) 66%, transparent);
  font-size: 20px;
  line-height: 1.4;
}

.trlc-coming-soon__notice--success {
  color: var(--color-brand);
}

.trlc-coming-soon__notice--error {
  color: #8f1f1f;
}

.trlc-coming-soon__footer {
  text-align: center;
}

.trlc-coming-soon__footer p {
  margin: 0;
  color: color-mix(in srgb, var(--color-fg) 60%, transparent);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

@media (max-width: 1023px) {
  body.woocommerce-account section[data-section="account-dashboard"],
  section[data-section="legal-page"] {
    padding: 56px 24px 86px !important;
  }

  body.woocommerce-account.logged-in .woocommerce {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    position: static;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex;
    overflow-x: auto;
    gap: 18px;
    margin-top: 24px !important;
    padding-bottom: 6px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    min-width: max-content;
  }

  .trlc-account-dashboard__facts,
  .trlc-account-address-grid,
  .trlc-shipping-policy__cards {
    grid-template-columns: 1fr;
  }

  .trlc-account-order-row,
  .woocommerce-orders-table tbody tr {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  body.woocommerce-account.trlc-account-orders-view .woocommerce-info {
    grid-template-columns: 1fr;
    padding: 22px !important;
  }

  body.woocommerce-account.trlc-account-orders-view .woocommerce-info .button {
    width: 100% !important;
    justify-self: stretch;
  }

  body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
    justify-self: start;
  }

  .trlc-coming-soon__form {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

@media (max-width: 520px) {
  body.woocommerce-account .trlc-account-page-h1 {
    font-size: 40px !important;
  }

  body.woocommerce-account .trlc-account-heading {
    margin-bottom: 36px;
  }

  body.woocommerce-account:not(.logged-in) label {
    font-size: 16px;
  }

  .trlc-coming-soon {
    padding-top: 32px;
  }

  .trlc-coming-soon__content h1 {
    font-size: 42px;
  }

  .trlc-coming-soon__content > p,
  .trlc-coming-soon__small,
  .trlc-coming-soon__notice {
    margin-top: 16px;
    font-size: 17px;
  }

  .trlc-coming-soon__form input,
  .trlc-coming-soon__form button {
    min-height: 58px;
    font-size: 15px;
  }
}
/* === END 05.5 ACCOUNT, SHIPPING, COMING SOON PASS === */

/* === TRC Website Revision pass (2026-07-16) === */
header[data-section="site-header"] {
  position: sticky !important;
  top: 0;
  z-index: 1000;
  background: var(--color-bg) !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-fg) 10%, transparent);
}

header[data-section="site-header"] .trlc-header-wordmark {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: min(210px, 36vw);
  color: var(--color-fg);
}

header[data-section="site-header"] .trlc-header-wordmark img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 22px;
  object-fit: contain;
}

.trlc-revision-outline-button,
.trlc-home-featured-pill,
.trlc-shop-card__add,
.trlc-cart-drawer__cta,
.trlc-newsletter-popup__form button,
.trlc-about-revision-tabs a {
  border-radius: 999px !important;
}

.trlc-revision-outline-button {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 7px 20px;
  border: 1px solid currentColor;
  background: transparent;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: background 180ms ease, color 180ms ease;
}

.trlc-revision-outline-button:hover,
.trlc-revision-outline-button:focus-visible {
  background: var(--color-fg);
  color: var(--color-bg);
}

.trlc-revision-outline-button--light {
  color: var(--color-bg);
}

.trlc-revision-outline-button--light:hover,
.trlc-revision-outline-button--light:focus-visible {
  background: var(--color-bg);
  color: var(--color-fg);
}

body.home section[data-section="home-hero"] {
  position: relative;
  min-height: min(64vw, 700px);
  padding: 0 !important;
  overflow: hidden;
}

.trlc-revision-hero,
.trlc-revision-hero__video {
  position: absolute;
  inset: 0;
}

.trlc-revision-hero__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trlc-revision-hero__content {
  position: absolute;
  left: clamp(24px, 5.8vw, 78px);
  bottom: clamp(44px, 7vw, 118px);
  z-index: 2;
  max-width: min(720px, 82vw);
  color: var(--color-bg);
}

.trlc-revision-hero__content h1 {
  margin: 0 0 20px;
  color: inherit;
  font-family: var(--font-body) !important;
  font-size: clamp(24px, 2.3vw, 38px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  text-transform: none;
}

body.home section[data-section="home-featured"] {
  padding: clamp(54px, 7vw, 78px) 0 72px !important;
}

body.home .trlc-home-featured-head {
  width: min(100% - 96px, 1280px);
  margin: 0 auto 48px;
}

body.home .trlc-home-featured-head h2 {
  margin: 0;
  font-size: clamp(26px, 2.4vw, 36px);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

.trlc-home-featured-carousel {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  gap: 0;
  align-items: center;
}

.trlc-home-featured-carousel > button {
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: var(--color-fg);
  font-size: 44px;
  font-weight: 200;
  line-height: 1;
  cursor: pointer;
}

body.home .trlc-home-featured-grid {
  display: grid !important;
  min-height: 0 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

body.home .trlc-featured-card,
.trlc-shop-card {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

body.home .trlc-featured-card-media,
.trlc-shop-card__media {
  display: flex;
  aspect-ratio: 1 / 1;
  align-items: center;
  justify-content: center;
  background: #fafafa;
  overflow: hidden;
}

body.home .trlc-featured-card-img,
.trlc-shop-card__img,
.trlc-product-card .trlc-shop-card__img.trlc-product-card__image {
  width: 78%;
  height: 78%;
  object-fit: contain;
}

body.home .trlc-featured-card-body,
.trlc-shop-card__body {
  padding: 26px 18px 0 !important;
}

body.home .trlc-featured-card-title,
.trlc-shop-card__title {
  margin: 0 0 8px !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.35 !important;
  text-transform: uppercase;
}

body.home .trlc-featured-card-price,
.trlc-shop-card__price {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

section[data-section="home-story"] {
  padding: 0 !important;
}

.trlc-revision-promo-carousel {
  position: relative;
  background: var(--color-fg);
}

.trlc-revision-promo-slide {
  position: relative;
  display: none;
  min-height: min(55vw, 720px);
  overflow: hidden;
}

.trlc-revision-promo-slide.is-active {
  display: block;
}

.trlc-revision-promo-slide img {
  display: block;
  width: 100%;
  height: min(55vw, 720px);
  object-fit: cover;
}

.trlc-revision-promo-slide__content {
  position: absolute;
  left: clamp(24px, 5.8vw, 78px);
  top: clamp(54px, 8vw, 92px);
  max-width: 560px;
  color: var(--color-bg);
}

.trlc-revision-promo-slide__content h2 {
  margin: 0 0 18px;
  color: inherit;
  font-family: var(--font-body) !important;
  font-size: clamp(24px, 2.4vw, 38px);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

.trlc-revision-carousel-dots {
  position: absolute;
  left: 50%;
  bottom: 34px;
  display: flex;
  gap: 8px;
  transform: translateX(-50%);
}

.trlc-revision-carousel-dots span {
  width: 10px;
  height: 10px;
  border: 1px solid var(--color-bg);
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}

.trlc-revision-carousel-dots span.is-active {
  background: var(--color-bg);
}

.trlc-revision-social {
  padding: clamp(120px, 14vw, 210px) 0 90px;
  text-align: center;
}

.trlc-revision-social__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 72px;
}

.trlc-revision-social__grid img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1.14;
  object-fit: cover;
}

.trlc-revision-social__grid > a {
  display: block;
  color: inherit;
}

section[data-section="about-refined"].trlc-about-refined-template {
  padding: 0 !important;
}

.trlc-about-revision {
  color: var(--color-fg);
  font-family: var(--font-body);
}

.trlc-about-revision-hero {
  position: relative;
  min-height: min(57vw, 690px);
  overflow: hidden;
}

.trlc-about-revision-hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trlc-about-revision-hero__content {
  position: absolute;
  left: clamp(24px, 5.8vw, 78px);
  top: 46%;
  color: var(--color-bg);
}

.trlc-about-revision-hero h1,
.trlc-about-revision-explore h2 {
  margin: 0;
  color: inherit;
  font-family: var(--font-body) !important;
  font-size: clamp(25px, 2.6vw, 38px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
  text-transform: none;
}

.trlc-about-revision-reliable,
.trlc-about-revision-mvv {
  display: grid;
  width: min(100% - 84px, 1180px);
  margin: 0 auto;
  grid-template-columns: 1.35fr 1fr;
  gap: clamp(36px, 6vw, 88px);
  align-items: center;
  padding: clamp(96px, 11vw, 150px) 0;
}

.trlc-about-revision-reliable figure,
.trlc-about-revision-mvv figure {
  margin: 0;
}

.trlc-about-revision-reliable img,
.trlc-about-revision-mvv img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.trlc-about-revision-reliable h2,
.trlc-about-revision-mvv h2 {
  margin: 0 0 28px;
  font-family: var(--font-body) !important;
  font-size: clamp(24px, 2.1vw, 34px);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
}

.trlc-about-revision-reliable p,
.trlc-about-revision-mvv p {
  margin: 0;
  font-family: var(--font-body);
  font-size: clamp(16px, 1.2vw, 19px);
  line-height: 1.65;
}

.trlc-about-revision-explore {
  position: relative;
  min-height: min(57vw, 690px);
  overflow: hidden;
  color: var(--color-bg);
}

.trlc-about-revision-explore img {
  display: block;
  width: 100%;
  height: min(57vw, 690px);
  object-fit: cover;
}

.trlc-about-revision-explore > div {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 22px;
  padding: 24px;
  text-align: center;
}

.trlc-about-revision-mvv {
  grid-template-columns: 1fr 1.1fr;
}

.trlc-about-revision-mvv__copy article + article {
  margin-top: 58px;
  padding-top: 58px;
  border-top: 1px solid var(--color-fg);
}

.trlc-about-revision-tabs {
  display: grid;
  justify-items: start;
  gap: 16px;
  margin-top: 86px;
}

.trlc-about-revision-tabs a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 7px 18px;
  border: 1px solid var(--color-fg);
  color: var(--color-fg);
  font-size: 12px;
  letter-spacing: 0.04em;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-about-revision-tabs a.is-active,
.trlc-about-revision-tabs a:hover {
  background: var(--color-fg);
  color: var(--color-bg);
}

.trlc-newsletter-popup {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0, 0, 0, 0.38);
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease;
}

.trlc-newsletter-popup[hidden] {
  display: none !important;
}

.trlc-newsletter-popup[aria-hidden="false"] {
  opacity: 1;
  pointer-events: auto;
}

.trlc-newsletter-popup__dialog {
  position: relative;
  display: grid;
  width: min(100%, 820px);
  grid-template-columns: 1fr 1fr;
  background: var(--color-bg);
  color: var(--color-fg);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.24);
}

.trlc-newsletter-popup__close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  color: var(--color-fg);
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.trlc-newsletter-popup__media {
  margin: 0;
  min-height: 420px;
}

.trlc-newsletter-popup__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.trlc-newsletter-popup__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(32px, 5vw, 56px);
}

.trlc-newsletter-popup__eyebrow,
.trlc-newsletter-popup__form button {
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.trlc-newsletter-popup__content h2 {
  margin: 0 0 18px;
  font-family: var(--font-body) !important;
  font-size: clamp(26px, 3vw, 40px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.15;
  text-transform: none;
}

.trlc-newsletter-popup__content p {
  margin: 0 0 26px;
  line-height: 1.55;
}

.trlc-newsletter-popup__form {
  display: grid;
  gap: 12px;
}

.trlc-newsletter-popup__form input {
  min-height: 48px;
  border: 0;
  border-bottom: 1px solid var(--color-fg);
  background: transparent;
  color: var(--color-fg);
  font-family: var(--font-body);
}

.trlc-newsletter-popup__form button {
  min-height: 46px;
  border: 1px solid var(--color-fg);
  background: var(--color-fg);
  color: var(--color-bg);
  font-family: var(--font-body);
}

@media (max-width: 900px) {
  body.home .trlc-home-featured-grid,
  .trlc-revision-social__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .trlc-about-revision-reliable,
  .trlc-about-revision-mvv,
  .trlc-newsletter-popup__dialog {
    grid-template-columns: 1fr;
  }

  .trlc-newsletter-popup__media {
    min-height: 260px;
  }
}

@media (max-width: 640px) {
  body.home section[data-section="home-hero"],
  .trlc-about-revision-hero {
    min-height: 72vh;
  }

  .trlc-home-featured-carousel {
    grid-template-columns: 1fr;
  }

  .trlc-home-featured-carousel > button {
    display: none;
  }

  body.home .trlc-home-featured-grid,
  .trlc-revision-social__grid {
    grid-template-columns: 1fr;
  }

  .trlc-revision-promo-slide,
  .trlc-revision-promo-slide img,
  .trlc-about-revision-explore,
  .trlc-about-revision-explore img {
    min-height: 520px;
    height: 520px;
  }

  .trlc-about-revision-reliable,
  .trlc-about-revision-mvv {
    width: min(100% - 40px, 1180px);
    padding: 70px 0;
  }
}

/* === TRC Website Revision mockup alignment pass === */
:root {
  --trlc-mockup-page-x: clamp(24px, 5vw, 64px);
  --trlc-mockup-wide: min(100% - (var(--trlc-mockup-page-x) * 2), 1280px);
}

body {
  background: #fff;
}

header[data-section="site-header"] {
  min-height: 48px !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12) !important;
}

header[data-section="site-header"] .trlc-header-shell {
  min-height: 48px !important;
}

header[data-section="site-header"] .trlc-header-nav a,
header[data-section="site-header"] .trlc-header-utilities a,
header[data-section="site-header"] .trlc-header-cart {
  color: #111 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

header[data-section="site-header"] .trlc-header-nav ul,
header[data-section="site-header"] .trlc-header-utilities {
  gap: 31px !important;
}

header[data-section="site-header"] .trlc-header-wordmark img {
  max-height: 18px;
}

header[data-section="site-header"] .trlc-header-cart span:not(.trlc-cart-count),
header[data-section="site-header"] .trlc-header-utilities a {
  font-size: 0 !important;
}

header[data-section="site-header"] .trlc-header-cart svg,
header[data-section="site-header"] .trlc-header-utilities a::before {
  opacity: 0.9;
}

body.home section[data-section="home-hero"] {
  min-height: min(52vw, 720px) !important;
}

.trlc-revision-hero__content {
  left: clamp(42px, 5.7vw, 78px) !important;
  bottom: clamp(60px, 7vw, 120px) !important;
}

.trlc-revision-hero__content h1 {
  margin-bottom: 15px !important;
  font-size: clamp(24px, 2vw, 31px) !important;
  line-height: 1.2 !important;
}

.trlc-revision-outline-button {
  min-height: 32px !important;
  padding: 7px 18px !important;
  border: 1px solid currentColor !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.home section[data-section="home-featured"] {
  padding: 56px 0 74px !important;
}

body.home .trlc-home-featured-head {
  width: var(--trlc-mockup-wide) !important;
  margin-bottom: 44px !important;
}

body.home .trlc-home-featured-head h2 {
  font-size: clamp(25px, 2.1vw, 32px) !important;
}

.trlc-revision-product-carousel {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  align-items: center;
}

.trlc-revision-product-carousel > button {
  width: 44px;
  height: 88px;
  border: 0;
  background: transparent;
  color: #111;
  font-size: 48px;
  font-weight: 200;
  cursor: pointer;
}

.trlc-revision-product-carousel__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.trlc-revision-product-card {
  min-width: 0;
  color: #111;
}

.trlc-revision-product-card__media {
  display: flex;
  aspect-ratio: 1 / 1;
  align-items: center;
  justify-content: center;
  background: #fafafa;
  overflow: hidden;
  text-decoration: none;
}

.trlc-revision-product-card__img {
  width: 72%;
  height: 72%;
  object-fit: contain;
}

.trlc-revision-product-card__body {
  padding: 23px 18px 0;
}

.trlc-revision-product-card__body a {
  color: inherit;
  text-decoration: none !important;
}

.trlc-revision-product-card__body h3 {
  margin: 0 0 10px;
  color: #111;
  font-family: var(--font-body) !important;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-transform: uppercase;
}

.trlc-revision-product-card__body p {
  margin: 0;
  color: #111;
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.2;
}

.trlc-revision-promo-slide,
.trlc-revision-promo-slide img {
  height: min(55vw, 720px) !important;
  min-height: 0 !important;
}

.trlc-revision-promo-slide__content {
  top: 9.2% !important;
  left: clamp(42px, 5.7vw, 78px) !important;
}

.trlc-revision-promo-slide__content h2 {
  font-size: clamp(25px, 2.1vw, 34px) !important;
}

.trlc-revision-social {
  padding: clamp(132px, 16vw, 220px) 0 100px !important;
}

.trlc-revision-social__grid {
  gap: 12px !important;
  margin-top: 50px !important;
}

section[data-section="shop-archive"].trlc-shop-archive {
  padding: 0 !important;
}

.trlc-shop-shell {
  max-width: none !important;
}

.trlc-shop-shell > :not(.trlc-grid-wrapper) {
  display: none !important;
}

.trlc-grid-wrapper {
  min-height: 0 !important;
}

.trlc-revision-shop {
  width: var(--trlc-mockup-wide);
  margin: 0 auto;
  padding: clamp(116px, 13vw, 170px) 0 clamp(120px, 13vw, 180px);
}

.trlc-revision-shop h1 {
  margin: 0 0 40px;
  color: #111;
  font-family: var(--font-body) !important;
  font-size: clamp(32px, 3vw, 48px);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.15;
  text-align: center;
  text-transform: none;
}

.trlc-revision-shop__pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  margin-bottom: clamp(70px, 7vw, 104px);
}

.trlc-revision-shop__pills a {
  display: inline-flex;
  min-width: 140px;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 34px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #fff;
  color: #111;
  font-size: 17px;
  letter-spacing: 0.04em;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-revision-shop__pills a.is-active,
.trlc-revision-shop__pills a:hover {
  background: #111;
  color: #fff;
}

.trlc-revision-shop__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(64px, 7vw, 98px) clamp(54px, 6vw, 84px);
}

.trlc-revision-product-card--shop .trlc-revision-product-card__body {
  padding-left: 30px;
}

section[data-section="contact-root"] {
  padding: 0 var(--trlc-mockup-page-x) !important;
}

section[data-section="contact-hero"] {
  max-width: 920px !important;
  margin: 0 auto !important;
  padding: 115px 0 100px !important;
  text-align: center;
}

section[data-section="contact-hero"] h1 {
  margin: 0 0 18px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: clamp(34px, 3vw, 46px) !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.18 !important;
  text-transform: none !important;
}

.trlc-contact-intro p {
  max-width: 760px;
  margin: 0 auto !important;
  color: #111;
  font-size: clamp(19px, 1.8vw, 26px) !important;
  line-height: 1.35 !important;
}

.trlc-contact-premium-form-head {
  display: none !important;
}

section[data-section="contact-root"] form {
  display: grid !important;
  max-width: none !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.9fr);
  column-gap: clamp(64px, 9vw, 132px);
  row-gap: 0;
  padding: 0 0 190px !important;
}

section[data-section="contact-root"] form .form-group,
section[data-section="contact-root"] form .bricks-form-field,
section[data-section="contact-root"] form .input {
  margin-bottom: 48px !important;
}

section[data-section="contact-root"] label {
  margin-bottom: 26px !important;
  color: #111 !important;
  font-size: 19px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

section[data-section="contact-root"] input,
section[data-section="contact-root"] textarea {
  border: 0 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.18) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-size: 18px !important;
  box-shadow: none !important;
}

section[data-section="contact-root"] textarea {
  min-height: 214px !important;
  border: 1px solid rgba(0, 0, 0, 0.16) !important;
  padding: 14px !important;
}

section[data-section="contact-root"] button[type="submit"],
section[data-section="contact-root"] input[type="submit"] {
  width: 205px !important;
  min-height: 42px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
}

section[data-section="contact-channels-wrapper"] {
  position: absolute;
  right: var(--trlc-mockup-page-x);
  width: min(36vw, 480px);
  margin-top: -690px;
  padding: 0 !important;
  border: 0 !important;
}

.trlc-contact-premium-sidebar {
  display: grid !important;
  gap: 16px !important;
}

.trlc-contact-premium-card {
  padding: 30px !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  background: #fff !important;
  box-shadow: none !important;
}

.trlc-contact-premium-card h2 {
  margin: 0 0 28px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.32em !important;
  text-transform: uppercase !important;
}

.trlc-contact-premium-card p,
.trlc-contact-premium-card a,
.trlc-contact-premium-hours dt,
.trlc-contact-premium-hours dd {
  color: #111 !important;
  font-size: 14px !important;
  letter-spacing: 0.06em !important;
}

.trlc-search-drawer,
.trlc-cart-drawer {
  background: rgba(255, 255, 255, 0.68) !important;
  backdrop-filter: blur(1px);
}

.trlc-search-drawer {
  position: fixed;
  inset: 0;
  z-index: 1500;
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease;
}

.trlc-search-drawer[aria-hidden="false"] {
  opacity: 1;
  pointer-events: auto;
}

.trlc-search-drawer__panel,
.trlc-cart-drawer__panel {
  position: absolute !important;
  inset: 0 0 0 auto !important;
  width: min(545px, 100vw) !important;
  padding: 46px 38px !important;
  background: #fff !important;
  color: #111 !important;
  box-shadow: none !important;
  transform: translateX(100%);
}

.trlc-search-drawer[aria-hidden="false"] .trlc-search-drawer__panel,
.trlc-cart-drawer[aria-hidden="false"] .trlc-cart-drawer__panel {
  transform: translateX(0);
}

.trlc-search-drawer__close,
.trlc-cart-drawer__close {
  position: absolute !important;
  top: 14px !important;
  right: 18px !important;
  width: 36px !important;
  height: 36px !important;
  color: #111 !important;
  font-size: 34px !important;
  font-weight: 300 !important;
}

.trlc-search-drawer__panel h2,
.trlc-cart-drawer__panel h2 {
  margin: 0 0 12px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: clamp(34px, 3vw, 44px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}

.trlc-search-drawer__form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  min-height: 48px;
  margin-bottom: 68px;
  border: 1px solid #111;
  border-radius: 999px;
}

.trlc-search-drawer__form input,
.trlc-search-drawer__form button {
  border: 0;
  background: transparent;
  color: #111;
  font-family: var(--font-body);
  font-size: 18px;
}

.trlc-search-drawer__form input {
  padding: 0 24px;
}

.trlc-search-drawer__form input:focus,
.trlc-search-drawer__form input:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}

.trlc-search-drawer__form button {
  font-size: 36px;
  cursor: pointer;
}

.trlc-search-drawer__label {
  margin: 0 0 12px;
  font-size: 18px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.trlc-search-drawer__suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 38px;
}

.trlc-search-drawer__suggestions a {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid #111;
  border-radius: 999px;
  color: #111;
  font-size: 14px;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-search-drawer__products,
.trlc-cart-drawer__whats-new-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.trlc-cart-drawer__panel {
  display: flex !important;
  flex-direction: column !important;
}

.trlc-cart-drawer .widget_shopping_cart_content {
  flex: 1 1 auto !important;
  margin: 24px 0 !important;
}

.trlc-cart-drawer__empty {
  display: block !important;
  text-align: left !important;
}

.trlc-cart-drawer__empty-body {
  margin: 0 !important;
  font-size: 16px !important;
}

.trlc-cart-drawer__footer {
  margin-top: auto;
}

.trlc-cart-drawer__subtotal {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  font-size: 16px;
  text-transform: uppercase;
}

.trlc-cart-drawer__subtotal strong {
  font-weight: 400;
}

.trlc-cart-drawer__cta {
  min-height: 38px !important;
  margin: 0 0 8px !important;
  border: 1px solid #111 !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
}

.trlc-cart-drawer__shipping-note {
  max-width: 290px;
  margin: 0 auto 32px !important;
  color: #111 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  text-align: center;
}

.trlc-cart-drawer__whats-new h3 {
  margin: 0 0 14px;
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.trlc-revision-product-card--drawer .trlc-revision-product-card__body,
.trlc-revision-product-card--search .trlc-revision-product-card__body {
  padding: 10px 0 0;
}

.trlc-revision-product-card--drawer .trlc-revision-product-card__body h3,
.trlc-revision-product-card--search .trlc-revision-product-card__body h3 {
  font-size: 12px;
}

.trlc-newsletter-popup {
  background: rgba(255, 255, 255, 0.66) !important;
  backdrop-filter: blur(1px);
}

.trlc-newsletter-popup__dialog {
  width: min(100%, 600px) !important;
  grid-template-columns: 1.08fr 0.92fr !important;
  border-radius: 24px !important;
  overflow: hidden;
  box-shadow: none !important;
}

.trlc-newsletter-popup__media {
  min-height: 416px !important;
}

.trlc-newsletter-popup__content {
  padding: 44px 18px !important;
}

.trlc-newsletter-popup__content h2 {
  margin-bottom: 10px !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
}

.trlc-newsletter-popup__content p {
  max-width: 260px;
  margin-bottom: 24px !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.trlc-newsletter-popup__eyebrow {
  display: none;
}

.trlc-newsletter-popup__form {
  width: min(100%, 250px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  gap: 0 !important;
  min-height: 30px;
  border: 1px solid #111;
  border-radius: 999px;
}

.trlc-newsletter-popup__form input {
  min-height: 30px !important;
  padding: 0 14px;
  border: 0 !important;
  font-size: 12px;
}

.trlc-newsletter-popup__form button {
  min-height: 30px !important;
  padding: 0;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-size: 0 !important;
}

.trlc-newsletter-popup__form button::before {
  content: "›";
  font-size: 24px;
  line-height: 1;
}

footer[data-section="site-footer"].trlc-footer {
  padding: 100px var(--trlc-mockup-page-x) 34px !important;
  border-top: 0 !important;
  background: #fff !important;
  color: #111 !important;
}

footer[data-section="site-footer"] * {
  color: #111 !important;
}

footer[data-section="site-footer"] h3 {
  font-size: 10px !important;
  letter-spacing: 0.22em !important;
}

footer[data-section="site-footer"] .trlc-footer-link {
  font-size: 13px !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase;
}

footer[data-section="site-footer"] .trlc-footer-logo svg {
  width: min(280px, 42vw);
}

@media (max-width: 900px) {
  .trlc-revision-product-carousel__grid,
  .trlc-revision-shop__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  section[data-section="contact-root"] form {
    grid-template-columns: 1fr;
  }

  section[data-section="contact-channels-wrapper"] {
    position: static;
    width: auto;
    margin-top: 0;
    padding-bottom: 90px !important;
  }
}

@media (max-width: 640px) {
  header[data-section="site-header"] .trlc-header-wordmark {
    width: 180px;
  }

  body.home section[data-section="home-hero"] {
    min-height: 70vh !important;
  }

  .trlc-revision-product-carousel {
    grid-template-columns: 1fr;
  }

  .trlc-revision-product-carousel > button {
    display: none;
  }

  .trlc-revision-product-carousel__grid,
  .trlc-revision-shop__grid,
  .trlc-search-drawer__products,
  .trlc-cart-drawer__whats-new-grid {
    grid-template-columns: 1fr;
  }

  .trlc-newsletter-popup__dialog {
    grid-template-columns: 1fr !important;
  }
}

/* === TRC revision responsive/nav correction pass === */
#brx-header > header[data-section="site-header"] {
  display: none !important;
}

.trlc-revision-site-header[data-section="site-header"] {
  position: sticky !important;
  top: 0 !important;
  z-index: 1400 !important;
  min-height: 54px !important;
  padding: 0 var(--trlc-mockup-page-x) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.12) !important;
  background: #fff !important;
  color: #111 !important;
}

.trlc-revision-site-header .trlc-header-shell {
  position: relative;
  display: grid !important;
  min-height: 54px !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 20px;
}

.trlc-revision-site-header .trlc-header-nav {
  display: block !important;
  justify-self: start;
}

.trlc-revision-site-header .trlc-header-nav ul,
.trlc-revision-site-header .trlc-header-utilities {
  display: flex !important;
  align-items: center;
  gap: clamp(18px, 2.3vw, 31px) !important;
  margin: 0;
  padding: 0;
  list-style: none;
}

.trlc-revision-site-header .trlc-header-wordmark {
  position: static !important;
  transform: none !important;
  justify-self: center;
  width: clamp(190px, 20vw, 282px) !important;
  max-width: 42vw;
}

.trlc-revision-site-header .trlc-header-wordmark img {
  display: block;
  width: 100%;
  max-height: 24px !important;
  object-fit: contain;
}

.trlc-revision-site-header .trlc-header-utilities {
  justify-self: end;
}

.trlc-revision-site-header .trlc-header-nav a,
.trlc-revision-site-header .trlc-header-utilities a,
.trlc-revision-site-header .trlc-header-utilities button {
  display: inline-flex !important;
  min-width: 32px;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 0;
  background: transparent;
  color: #111 !important;
  font-family: var(--font-body);
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  cursor: pointer;
}

.trlc-revision-site-header .trlc-header-utilities svg {
  display: block;
  width: 16px;
  height: 16px;
}

.trlc-revision-site-header .trlc-header-utilities span:not(.trlc-cart-count) {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.trlc-revision-site-header .trlc-cart-count {
  display: inline-flex;
  min-width: 16px;
  height: 16px;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: 9px !important;
  letter-spacing: 0 !important;
}

.trlc-revision-site-header .trlc-header-mobile-toggle {
  display: none !important;
  width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: #111;
  cursor: pointer;
}

body.trlc-overlay-open,
body.trlc-no-scroll,
body.trlc-newsletter-open,
body.trlc-mobile-menu-open {
  overflow: hidden;
}

@media (max-width: 1023px) {
  .trlc-revision-site-header[data-section="site-header"] {
    padding: 0 18px !important;
  }

  .trlc-revision-site-header .trlc-header-shell {
    grid-template-columns: 40px minmax(0, 1fr) auto;
    gap: 10px;
  }

  .trlc-revision-site-header .trlc-header-mobile-toggle {
    display: inline-flex !important;
    grid-column: 1;
    justify-self: start;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    grid-column: 2;
    width: clamp(168px, 48vw, 230px) !important;
    max-width: none;
  }

  .trlc-revision-site-header .trlc-header-utilities {
    grid-column: 3;
    gap: 8px !important;
  }

  .trlc-revision-site-header .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-utilities button {
    min-width: 30px;
    padding: 0;
  }

  .trlc-revision-site-header .trlc-header-nav {
    position: fixed;
    inset: 54px 0 auto 0;
    display: none !important;
    padding: 28px 24px 34px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    background: #fff;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header .trlc-header-nav {
    display: block !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header .trlc-header-nav ul {
    display: grid !important;
    gap: 22px !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header .trlc-header-nav a {
    justify-content: flex-start;
    font-size: 14px !important;
  }
}

@media (max-width: 767px) {
  :root {
    --trlc-mockup-page-x: 18px;
  }

  .trlc-revision-site-header .trlc-header-account {
    display: none !important;
  }

  body.home section[data-section="home-hero"] {
    min-height: 72svh !important;
  }

  .trlc-revision-hero__content {
    left: 22px !important;
    right: 22px !important;
    bottom: 48px !important;
    max-width: none;
  }

  .trlc-revision-product-carousel__grid,
  .trlc-revision-shop__grid,
  .trlc-search-drawer__products,
  .trlc-cart-drawer__whats-new-grid {
    grid-template-columns: 1fr !important;
  }

  .trlc-revision-product-card__body {
    padding: 16px 6px 0 !important;
  }

  .trlc-revision-promo-slide,
  .trlc-revision-promo-slide img,
  .trlc-about-revision-explore,
  .trlc-about-revision-explore img {
    height: auto !important;
    min-height: 520px !important;
  }

  .trlc-revision-promo-slide__content {
    left: 22px !important;
    right: 22px !important;
    top: 54px !important;
    max-width: none;
  }

  .trlc-search-drawer__panel,
  .trlc-cart-drawer__panel {
    width: 100vw !important;
    padding: 46px 22px 28px !important;
  }

  .trlc-newsletter-popup {
    padding: 14px !important;
  }

  .trlc-newsletter-popup__dialog {
    width: min(100%, 420px) !important;
    grid-template-columns: 1fr !important;
    border-radius: 18px !important;
  }

  .trlc-newsletter-popup__media {
    min-height: 230px !important;
  }

  .trlc-newsletter-popup__content {
    padding: 28px 20px 32px !important;
  }
}

/* === TRC revision font, hover, and retained-page polish === */
html,
body,
button,
input,
select,
textarea {
  font-family: var(--font-body) !important;
}

a,
button,
input,
textarea,
select {
  -webkit-tap-highlight-color: transparent;
}

a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
  outline: none;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(17, 17, 17, 0.14) !important;
}

.trlc-revision-site-header a:focus-visible,
.trlc-revision-site-header button:focus-visible,
.trlc-revision-site-header a:hover,
.trlc-revision-site-header button:hover {
  box-shadow: none !important;
  color: #111 !important;
}

.trlc-revision-site-header .trlc-header-nav a:hover,
.trlc-revision-site-header .trlc-header-nav a:focus-visible,
.trlc-revision-site-header .trlc-header-nav a[aria-current="page"] {
  text-decoration: none !important;
}

.trlc-revision-site-header .trlc-header-utilities a:hover,
.trlc-revision-site-header .trlc-header-utilities button:hover,
.trlc-revision-site-header .trlc-header-utilities a:focus-visible,
.trlc-revision-site-header .trlc-header-utilities button:focus-visible {
  opacity: 0.62;
}

.trlc-revision-outline-button:hover,
.trlc-revision-outline-button:focus-visible,
.trlc-revision-shop__pills a:hover,
.trlc-revision-shop__pills a:focus-visible,
.trlc-revision-shop__pills a.is-active,
.trlc-about-revision-tabs a:hover,
.trlc-about-revision-tabs a:focus-visible,
.trlc-about-revision-tabs a.is-active,
.trlc-cart-drawer__cta:hover,
.trlc-cart-drawer__cta:focus-visible,
.trlc-search-drawer__suggestions a:hover,
.trlc-search-drawer__suggestions a:focus-visible {
  border-color: #111 !important;
  background: #111 !important;
  color: #fff !important;
  box-shadow: none !important;
}

.trlc-revision-outline-button--light:hover,
.trlc-revision-outline-button--light:focus-visible {
  border-color: #fff !important;
  background: #fff !important;
  color: #111 !important;
}

.trlc-revision-product-card a:hover,
.trlc-revision-product-card a:focus-visible,
footer[data-section="site-footer"] a:hover,
footer[data-section="site-footer"] a:focus-visible {
  color: inherit !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
  box-shadow: none !important;
}

.trlc-retained-page {
  width: min(100% - 48px, 920px);
  margin: 0 auto;
  padding: clamp(96px, 12vw, 150px) 0;
  color: #111;
}

.trlc-retained-page h1 {
  margin: 0 0 24px;
  font-family: var(--font-body) !important;
  font-size: clamp(36px, 5vw, 64px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.05;
  text-transform: none;
}

.trlc-retained-page p {
  max-width: 680px;
  margin: 0;
  font-size: clamp(16px, 1.5vw, 20px);
  line-height: 1.65;
}

@media (max-width: 1023px) {
  .trlc-revision-shop {
    width: min(100% - 36px, 900px);
    padding: 80px 0 110px;
  }

  .trlc-revision-shop h1 {
    font-size: clamp(30px, 8vw, 44px);
  }

  .trlc-revision-shop__pills {
    gap: 12px;
    margin-bottom: 56px;
  }

  .trlc-about-revision-reliable,
  .trlc-about-revision-mvv {
    width: min(100% - 36px, 900px) !important;
    gap: 32px;
  }

  section[data-section="contact-hero"] {
    padding: 82px 0 64px !important;
  }
}

@media (max-width: 767px) {
  .trlc-revision-site-header .trlc-header-account {
    display: inline-flex !important;
  }

  .trlc-revision-site-header .trlc-header-utilities {
    gap: 4px !important;
  }

  .trlc-revision-site-header .trlc-header-utilities svg {
    width: 15px;
    height: 15px;
  }

  .trlc-revision-site-header .trlc-cart-count {
    min-width: 14px;
    height: 14px;
    font-size: 8px !important;
  }

  .trlc-revision-social {
    padding: 88px 18px 64px !important;
  }

  .trlc-revision-social__grid {
    gap: 10px !important;
  }

  .trlc-about-revision-reliable,
  .trlc-about-revision-mvv {
    display: grid;
    grid-template-columns: 1fr !important;
    padding: 64px 0 !important;
  }

  .trlc-about-revision-mvv figure {
    order: -1;
  }

  section[data-section="contact-root"] {
    padding: 0 18px !important;
  }

  section[data-section="contact-root"] form {
    padding-bottom: 72px !important;
  }

  .trlc-retained-page {
    width: min(100% - 36px, 920px);
    padding: 76px 0;
  }
}

/* === TRC revision page renderer takeover === */
body.trlc-has-revision-page-surface #brx-content {
  display: none !important;
}

.trlc-revision-page-surface {
  background: #fff;
  color: #111;
}

.trlc-revision-product-card__description {
  margin-top: 12px !important;
  max-width: 30rem;
  color: #111 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.45 !important;
  text-transform: none !important;
}

.trlc-contact-revision {
  width: min(100% - (var(--trlc-mockup-page-x) * 2), 1180px);
  margin: 0 auto;
  padding: 0 0 clamp(88px, 10vw, 150px);
}

.trlc-contact-revision__hero {
  max-width: 860px;
  margin: 0 auto;
  padding: clamp(88px, 10vw, 132px) 0 clamp(58px, 7vw, 92px);
  text-align: center;
}

.trlc-contact-revision__hero h1 {
  margin: 0 0 18px;
  font-family: var(--font-body) !important;
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.08;
  text-transform: none;
}

.trlc-contact-revision__hero p {
  margin: 0 auto;
  max-width: 720px;
  font-size: clamp(17px, 1.5vw, 22px);
  line-height: 1.5;
}

.trlc-contact-revision__body {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: clamp(42px, 7vw, 96px);
  align-items: start;
}

.trlc-contact-revision__form {
  display: grid;
  gap: 30px;
}

.trlc-contact-revision__form p {
  margin: 0;
}

.trlc-contact-revision__form label {
  display: block;
  margin-bottom: 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.trlc-contact-revision__form input,
.trlc-contact-revision__form textarea {
  width: 100%;
  border: 0 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.22) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-size: 17px !important;
  box-shadow: none !important;
}

.trlc-contact-revision__form textarea {
  min-height: 190px;
  border: 1px solid rgba(0, 0, 0, 0.2) !important;
  padding: 14px;
}

.trlc-contact-revision__form button {
  width: max-content;
  min-width: 170px;
  min-height: 42px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #fff;
  color: #111;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}

.trlc-contact-revision__form button:hover,
.trlc-contact-revision__form button:focus-visible {
  background: #111;
  color: #fff;
  box-shadow: none !important;
}

.trlc-contact-revision__form button[aria-busy="true"] {
  cursor: wait !important;
  opacity: 0.65;
}

.trlc-contact-revision__sidebar {
  display: grid;
  gap: 18px;
}

.trlc-contact-revision__sidebar section {
  padding: 28px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.trlc-contact-revision__sidebar h2 {
  margin: 0 0 16px;
  font-family: var(--font-body) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.trlc-contact-revision__sidebar p,
.trlc-contact-revision__sidebar a {
  margin: 0;
  color: #111;
  font-size: 15px;
  line-height: 1.45;
}

.trlc-cart-drawer__panel {
  overflow-y: auto !important;
}

.trlc-cart-drawer__panel h2 {
  flex: 0 0 auto;
  padding-right: 44px;
}

.trlc-cart-drawer__empty {
  min-height: 120px;
}

@media (max-width: 900px) {
  .trlc-contact-revision__body {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .trlc-contact-revision {
    width: min(100% - 36px, 1180px);
  }

  .trlc-contact-revision__hero {
    padding: 72px 0 48px;
    text-align: left;
  }

  .trlc-cart-drawer__panel {
    display: block !important;
    padding-top: 54px !important;
  }

  .trlc-cart-drawer__panel h2 {
    display: block !important;
    margin-bottom: 22px !important;
    font-size: 32px !important;
  }

  .trlc-cart-drawer .widget_shopping_cart_content {
    margin: 0 0 28px !important;
  }
}

/* === TRC revision exact-page corrections === */
.trlc-revision-site-header .trlc-header-account::before,
.trlc-revision-site-header .trlc-header-account::after {
  content: none !important;
  display: none !important;
}

.trlc-revision-site-header .trlc-header-account svg {
  overflow: visible;
}

.trlc-revision-site-header .trlc-header-search:hover,
.trlc-revision-site-header .trlc-header-account:hover,
.trlc-revision-site-header .trlc-header-cart:hover {
  outline: 0 !important;
  box-shadow: none !important;
}

.trlc-contact-revision__form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 46px clamp(38px, 5vw, 88px);
}

.trlc-contact-revision__form .trlc-contact-revision__full,
.trlc-contact-revision__form button {
  grid-column: 1 / -1;
}

.trlc-contact-revision__form label {
  margin-bottom: 24px;
  color: #111;
  font-size: 17px;
  font-weight: 400;
  letter-spacing: 0.05em;
}

.trlc-contact-revision__form input,
.trlc-contact-revision__form select,
.trlc-contact-revision__form textarea {
  width: 100%;
  min-height: 44px;
  padding: 0;
  border: 0 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.16) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 17px !important;
  letter-spacing: 0.02em;
  box-shadow: none !important;
}

.trlc-contact-revision__form input::placeholder,
.trlc-contact-revision__form textarea::placeholder {
  color: rgba(17, 17, 17, 0.58);
  opacity: 1;
}

.trlc-contact-revision__form textarea {
  min-height: 214px;
  padding: 12px 14px;
  border: 1px solid rgba(0, 0, 0, 0.16) !important;
}

.trlc-contact-revision__form button {
  min-width: 205px;
  min-height: 42px;
  margin-top: -22px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #fff;
  color: #111;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.02em;
}

.trlc-contact-revision__sidebar {
  padding-top: 4px;
}

.trlc-contact-revision__sidebar section {
  padding: 30px;
  border-color: rgba(0, 0, 0, 0.08);
}

.trlc-contact-revision__sidebar h2 {
  margin-bottom: 26px;
  font-size: 11px;
  letter-spacing: 0.32em;
}

.trlc-contact-revision__sidebar dl,
.trlc-contact-revision__sidebar dd {
  margin: 0;
}

.trlc-contact-revision__sidebar dl {
  display: grid;
  gap: 18px;
}

.trlc-contact-revision__sidebar dl div {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.trlc-contact-revision__sidebar dt {
  color: rgba(17, 17, 17, 0.54);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.trlc-contact-revision__sidebar dd {
  color: #111;
  font-size: 16px;
  font-style: italic;
}

.trlc-revision-shop__grid .trlc-revision-product-card__description {
  display: none !important;
}

.trlc-cart-drawer__panel {
  height: 100svh !important;
  max-height: 100svh !important;
  overflow-y: auto !important;
}

.trlc-cart-drawer .widget_shopping_cart_content {
  min-height: 96px;
}

.trlc-cart-drawer__empty-body a {
  color: #111 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

.trlc-cart-drawer__whats-new {
  overflow: hidden;
}

.trlc-cart-drawer__whats-new-grid {
  grid-template-columns: repeat(3, minmax(116px, 1fr)) !important;
  overflow-x: auto;
  padding-bottom: 6px;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__media {
  aspect-ratio: 1 / 1;
}

@media (max-width: 900px) {
  .trlc-contact-revision__form {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .trlc-revision-site-header .trlc-header-shell {
    grid-template-columns: 34px minmax(110px, 1fr) auto;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    width: clamp(132px, 42vw, 178px) !important;
  }

  .trlc-revision-site-header .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-utilities button {
    min-width: 26px;
    height: 32px;
  }

  .trlc-cart-drawer__panel {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100svh !important;
    padding: 74px 22px 26px !important;
  }

  .trlc-cart-drawer__close {
    top: 20px !important;
    right: 18px !important;
  }

  .trlc-cart-drawer__panel h2 {
    margin-bottom: 10px !important;
    padding-right: 42px;
    font-size: 30px !important;
    line-height: 1.12 !important;
  }

  .trlc-cart-drawer .widget_shopping_cart_content {
    flex: 0 0 auto !important;
    min-height: 74px;
    margin: 0 0 18px !important;
  }

  .trlc-cart-drawer__footer {
    margin-top: auto;
  }

  .trlc-cart-drawer__whats-new-grid {
    grid-template-columns: repeat(3, minmax(104px, 1fr)) !important;
  }

  .trlc-contact-revision__hero h1 {
    font-size: 31px;
  }

  .trlc-contact-revision__hero p {
    font-size: 17px;
  }

  .trlc-contact-revision__form {
    gap: 34px;
  }

  .trlc-contact-revision__sidebar section {
    padding: 24px;
  }
}

/* === TRC mockup alignment pass: contact, utility icons, cart drawer === */
.trlc-revision-site-header .trlc-header-utilities {
  gap: 24px !important;
}

.trlc-revision-site-header .trlc-header-utilities a,
.trlc-revision-site-header .trlc-header-utilities button {
  position: relative;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
}

.trlc-revision-site-header .trlc-header-utilities svg {
  width: 16px !important;
  height: 16px !important;
  stroke-width: 1.55 !important;
}

.trlc-revision-site-header .trlc-cart-count {
  position: absolute;
  top: -4px;
  right: -7px;
  min-width: 13px;
  height: 13px;
  border: 1px solid currentColor;
  background: #fff;
  font-size: 7px !important;
  line-height: 1;
}

.trlc-revision-site-header .trlc-cart-count[data-count="0"] {
  display: none !important;
}

.trlc-contact-revision {
  width: min(calc(100% - 124px), 1234px) !important;
  padding-bottom: 270px !important;
}

.trlc-contact-revision__hero {
  max-width: 760px !important;
  padding: 115px 0 108px !important;
  text-align: center !important;
}

.trlc-contact-revision__hero h1 {
  margin-bottom: 12px !important;
  font-size: 33px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
}

.trlc-contact-revision__hero p {
  max-width: 740px !important;
  font-size: 21px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.42 !important;
}

.trlc-contact-revision__body {
  display: grid !important;
  grid-template-columns: minmax(0, 620px) minmax(360px, 480px) !important;
  gap: 128px !important;
  align-items: start !important;
}

.trlc-contact-revision__form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: 60px !important;
  row-gap: 54px !important;
}

.trlc-contact-revision__form p {
  margin: 0 !important;
}

.trlc-contact-revision__form .trlc-contact-revision__full {
  grid-column: 1 / -1 !important;
}

.trlc-contact-revision__form .trlc-contact-revision__full:nth-of-type(4) {
  margin-top: 156px !important;
}

.trlc-contact-revision__form label {
  margin-bottom: 25px !important;
  color: #111 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.1 !important;
}

.trlc-contact-revision__form input,
.trlc-contact-revision__form select,
.trlc-contact-revision__form textarea {
  min-height: 37px !important;
  border-bottom-color: rgba(17, 17, 17, 0.15) !important;
  color: #111 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}

.trlc-contact-revision__form select {
  appearance: none;
}

.trlc-contact-revision__form textarea {
  min-height: 214px !important;
  padding: 10px 8px !important;
  border: 1px solid rgba(17, 17, 17, 0.14) !important;
  resize: vertical;
}

.trlc-contact-revision__form button {
  grid-column: 1 / -1 !important;
  width: 205px !important;
  min-width: 205px !important;
  min-height: 42px !important;
  margin-top: -30px !important;
  border-color: #111 !important;
  color: #111 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}

.trlc-contact-revision__sidebar {
  gap: 15px !important;
  padding-top: 0 !important;
}

.trlc-contact-revision__sidebar section {
  min-height: 144px !important;
  padding: 31px 30px !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
}

.trlc-contact-revision__sidebar section:nth-child(2) {
  min-height: 155px !important;
}

.trlc-contact-revision__sidebar h2 {
  margin: 0 0 28px !important;
  color: rgba(17, 17, 17, 0.68) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.34em !important;
}

.trlc-contact-revision__sidebar p,
.trlc-contact-revision__sidebar a {
  color: #111 !important;
  font-size: 14px !important;
  letter-spacing: 0.04em !important;
}

.trlc-contact-revision__sidebar p:first-of-type {
  margin-bottom: 10px !important;
  color: rgba(17, 17, 17, 0.48) !important;
}

.trlc-contact-revision__sidebar dl {
  gap: 18px !important;
}

.trlc-contact-revision__sidebar dt {
  font-size: 12px !important;
  letter-spacing: 0.18em !important;
}

.trlc-contact-revision__sidebar dd {
  font-size: 16px !important;
  letter-spacing: 0.02em !important;
}

.trlc-search-drawer__panel,
.trlc-cart-drawer__panel {
  width: min(390px, 100vw) !important;
}

.trlc-cart-drawer__panel {
  display: flex !important;
  flex-direction: column !important;
  padding: 76px 36px 30px !important;
  color: #111 !important;
}

.trlc-cart-drawer__close {
  top: 12px !important;
  right: 14px !important;
  width: 30px !important;
  height: 30px !important;
  font-size: 32px !important;
  line-height: 1 !important;
}

.trlc-cart-drawer__panel h2 {
  margin: 0 0 16px !important;
  padding-right: 0 !important;
  color: #111 !important;
  font-size: 34px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.16 !important;
}

.trlc-cart-drawer .widget_shopping_cart_content {
  flex: 0 0 245px !important;
  min-height: 245px !important;
  margin: 0 !important;
}

.trlc-cart-drawer__empty {
  min-height: 0 !important;
}

.trlc-cart-drawer__empty-body {
  margin: 0 !important;
  color: #111 !important;
  font-size: 14px !important;
  letter-spacing: 0.02em !important;
  line-height: 1.35 !important;
}

.trlc-cart-drawer .woocommerce-mini-cart {
  display: grid !important;
  gap: 0 !important;
  margin: 0 !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item {
  display: grid !important;
  grid-template-columns: 132px minmax(0, 1fr) !important;
  gap: 14px !important;
  min-height: 132px !important;
  padding: 0 !important;
  border: 0 !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item img {
  width: 132px !important;
  height: 132px !important;
  object-fit: contain !important;
  background: #fafafa !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item a:not(.remove):not(.remove_from_cart_button) {
  color: #111 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.25 !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item .quantity {
  margin-top: 32px !important;
  color: #111 !important;
  font-size: 16px !important;
  letter-spacing: 0.02em !important;
}

.trlc-cart-drawer .remove,
.trlc-cart-drawer .remove_from_cart_button {
  width: 20px !important;
  height: 20px !important;
  font-size: 16px !important;
}

.trlc-cart-drawer__footer {
  flex: 0 0 auto !important;
  margin-top: 0 !important;
}

.trlc-cart-drawer__subtotal {
  margin: 0 0 19px !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
}

.trlc-cart-drawer__subtotal strong {
  font-size: 14px !important;
  font-weight: 400 !important;
}

.trlc-cart-drawer__cta {
  min-height: 38px !important;
  margin: 0 8px 8px !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}

.trlc-cart-drawer__shipping-note {
  max-width: 270px !important;
  margin: 0 auto 31px !important;
  color: #111 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}

.trlc-cart-drawer__whats-new h3 {
  margin: 0 0 14px !important;
  color: #111 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}

.trlc-cart-drawer__whats-new-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 132px) !important;
  gap: 10px !important;
  width: calc(100% + 36px);
  overflow-x: auto !important;
  padding: 0 0 8px !important;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card {
  width: 132px;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__media {
  width: 132px;
  height: 132px;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__img {
  width: 72% !important;
  height: 72% !important;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__body {
  padding: 9px 0 0 !important;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__body h3 {
  margin: 0 !important;
  font-size: 9px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
  white-space: nowrap;
}

.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__body p,
.trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__description {
  display: none !important;
}

@media (max-width: 900px) {
  .trlc-contact-revision {
    width: min(100% - 40px, 680px) !important;
    padding-bottom: 130px !important;
  }

  .trlc-contact-revision__hero {
    padding: 78px 0 64px !important;
  }

  .trlc-contact-revision__body {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }

  .trlc-contact-revision__form {
    grid-template-columns: 1fr !important;
  }

  .trlc-contact-revision__form .trlc-contact-revision__full:nth-of-type(4) {
    margin-top: 36px !important;
  }
}

@media (max-width: 640px) {
  .trlc-revision-site-header .trlc-header-utilities {
    gap: 8px !important;
  }

  .trlc-revision-site-header .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-utilities button {
    width: 22px !important;
    min-width: 22px !important;
  }

  .trlc-contact-revision__hero {
    text-align: left !important;
  }

  .trlc-contact-revision__hero h1 {
    font-size: 30px !important;
  }

  .trlc-contact-revision__hero p {
    font-size: 17px !important;
  }

  .trlc-cart-drawer__panel {
    width: 100vw !important;
    padding: 66px 22px 24px !important;
  }

  .trlc-cart-drawer__panel h2 {
    font-size: 28px !important;
  }

  .trlc-cart-drawer .widget_shopping_cart_content {
    flex-basis: 180px !important;
    min-height: 180px !important;
  }

  .trlc-cart-drawer__whats-new-grid {
    width: calc(100% + 22px);
    grid-template-columns: repeat(3, 118px) !important;
  }

  .trlc-cart-drawer__whats-new-grid .trlc-revision-product-card,
  .trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__media {
    width: 118px;
  }

  .trlc-cart-drawer__whats-new-grid .trlc-revision-product-card__media {
    height: 118px;
  }
}

/* === Contact mockup parity pass === */
body.page-id-27 .trlc-revision-page-surface {
  min-height: 0 !important;
}

body.trlc-has-revision-content-surface #brx-content {
  display: block !important;
  background: #fff !important;
  color: #111 !important;
}

body.trlc-has-revision-content-surface #brx-content > h1,
body.trlc-has-revision-content-surface #brx-content > .wp-block-post-title {
  display: none !important;
}

body.page-id-27 .trlc-contact-revision {
  width: min(calc(100vw - 124px), 1236px) !important;
  max-width: 1236px !important;
  padding: 0 0 410px !important;
}

body.page-id-27 .trlc-contact-revision__hero {
  max-width: 780px !important;
  padding: 116px 0 111px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

body.page-id-27 .trlc-contact-revision__hero h1 {
  margin: 0 0 12px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 33px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.23 !important;
  text-transform: none !important;
}

body.page-id-27 .trlc-contact-revision__hero p {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #111 !important;
  font-size: 21px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.42 !important;
}

body.page-id-27 .trlc-contact-revision__body {
  display: grid !important;
  grid-template-columns: 620px 480px !important;
  justify-content: space-between !important;
  gap: 0 !important;
  align-items: start !important;
}

body.page-id-27 .trlc-contact-revision__form {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  column-gap: 60px !important;
  row-gap: 54px !important;
}

body.page-id-27 .trlc-contact-revision__form p {
  margin: 0 !important;
}

body.page-id-27 .trlc-contact-revision__form .trlc-contact-revision__full {
  grid-column: 1 / -1 !important;
}

body.page-id-27 .trlc-contact-revision__form .trlc-contact-revision__full:nth-of-type(4) {
  margin-top: 157px !important;
}

body.page-id-27 .trlc-contact-revision__form label {
  display: block !important;
  margin: 0 0 25px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
}

body.page-id-27 .trlc-contact-revision__form input,
body.page-id-27 .trlc-contact-revision__form select {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(17, 17, 17, 0.15) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 38px !important;
  box-shadow: none !important;
}

body.page-id-27 .trlc-contact-revision__form select {
  width: 100% !important;
  appearance: none !important;
}

body.page-id-27 .trlc-contact-revision__form textarea {
  width: 100% !important;
  min-height: 214px !important;
  padding: 10px 8px !important;
  border: 1px solid rgba(17, 17, 17, 0.14) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 18px !important;
  letter-spacing: 0.02em !important;
  box-shadow: none !important;
}

body.page-id-27 .trlc-contact-revision__form input::placeholder,
body.page-id-27 .trlc-contact-revision__form textarea::placeholder {
  color: rgba(17, 17, 17, 0.58) !important;
  opacity: 1 !important;
}

body.page-id-27 .trlc-contact-revision__form button {
  grid-column: 1 / -1 !important;
  width: 205px !important;
  min-width: 205px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: -30px 0 0 !important;
  padding: 0 24px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 40px !important;
  text-transform: uppercase !important;
}

body.page-id-27 .trlc-contact-revision__sidebar {
  display: grid !important;
  gap: 15px !important;
  padding: 0 !important;
}

body.page-id-27 .trlc-contact-revision__sidebar section {
  box-sizing: border-box !important;
  min-height: 144px !important;
  padding: 31px 30px !important;
  border: 1px solid rgba(17, 17, 17, 0.08) !important;
  background: #fff !important;
}

body.page-id-27 .trlc-contact-revision__sidebar section:nth-child(2) {
  min-height: 155px !important;
}

body.page-id-27 .trlc-contact-revision__sidebar h2 {
  margin: 0 0 28px !important;
  color: rgba(17, 17, 17, 0.68) !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.34em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body.page-id-27 .trlc-contact-revision__sidebar p,
body.page-id-27 .trlc-contact-revision__sidebar a {
  margin: 0 !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
}

body.page-id-27 .trlc-contact-revision__sidebar p:first-of-type {
  margin-bottom: 10px !important;
  color: rgba(17, 17, 17, 0.5) !important;
}

body.page-id-27 .trlc-contact-revision__sidebar dl {
  display: grid !important;
  gap: 18px !important;
  margin: 0 !important;
}

body.page-id-27 .trlc-contact-revision__sidebar dl div {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 20px !important;
  align-items: baseline !important;
}

body.page-id-27 .trlc-contact-revision__sidebar dt {
  color: rgba(17, 17, 17, 0.5) !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.18em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body.page-id-27 .trlc-contact-revision__sidebar dd {
  margin: 0 !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 16px !important;
  font-style: italic !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.2 !important;
}

@media (max-width: 1100px) {
  body.page-id-27 .trlc-contact-revision {
    width: min(calc(100vw - 40px), 760px) !important;
    padding-bottom: 150px !important;
  }

  body.page-id-27 .trlc-contact-revision__hero {
    padding: 78px 0 64px !important;
  }

  body.page-id-27 .trlc-contact-revision__body {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }

  body.page-id-27 .trlc-contact-revision__form {
    grid-template-columns: 1fr !important;
    row-gap: 36px !important;
  }

  body.page-id-27 .trlc-contact-revision__form .trlc-contact-revision__full:nth-of-type(4) {
    margin-top: 40px !important;
  }
}

@media (max-width: 640px) {
  body.page-id-27 .trlc-contact-revision__hero {
    text-align: left !important;
  }

  body.page-id-27 .trlc-contact-revision__hero h1 {
    font-size: 30px !important;
  }

  body.page-id-27 .trlc-contact-revision__hero p {
    font-size: 17px !important;
  }
}

/* === TRC final responsive parity: header, contact, newsletter === */
.trlc-revision-site-header .trlc-header-shell {
  width: 100%;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
}

.trlc-revision-site-header .trlc-header-wordmark img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 24px !important;
  object-fit: contain;
}

.trlc-revision-site-header .trlc-header-utilities {
  gap: 24px !important;
}

.trlc-revision-site-header .trlc-header-utilities a,
.trlc-revision-site-header .trlc-header-utilities button {
  position: relative;
  display: inline-flex !important;
  width: 28px !important;
  min-width: 28px !important;
  height: 32px !important;
  min-height: 32px !important;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.trlc-revision-site-header .trlc-header-account::before,
.trlc-revision-site-header .trlc-header-account::after {
  display: none !important;
  content: none !important;
}

.trlc-revision-site-header .trlc-header-utilities svg {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px;
  stroke-width: 1.55 !important;
}

.trlc-revision-site-header .trlc-header-cart-count.trlc-cart-count {
  position: absolute !important;
  top: -2px !important;
  right: -5px !important;
  z-index: 2;
  display: inline-flex !important;
  overflow: visible !important;
  clip: auto !important;
  width: auto !important;
  min-width: 16px !important;
  height: 16px !important;
  align-items: center;
  justify-content: center;
  padding: 0 4px !important;
  border: 1px solid #111 !important;
  border-radius: 999px;
  background: #fff !important;
  color: #111 !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 14px !important;
  white-space: nowrap;
}

.trlc-revision-site-header .trlc-header-cart-count.trlc-cart-count[data-count="0"] {
  display: none !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision {
  width: min(calc(100vw - 124px), 1236px) !important;
  max-width: 1236px !important;
  margin: 0 auto !important;
  padding: 0 0 280px !important;
}

body.trlc-has-revision-content-surface section.trlc-contact-revision__hero[data-section="contact-hero"] {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 780px !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 116px 0 111px !important;
  overflow: visible !important;
  background: transparent !important;
  background-image: none !important;
  color: #111 !important;
  text-align: center !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__hero h1,
body.trlc-has-revision-content-surface .trlc-contact-revision__hero p {
  position: static !important;
  z-index: auto !important;
  color: #111 !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__body {
  display: grid !important;
  grid-template-columns: minmax(0, 620px) minmax(320px, 480px) !important;
  justify-content: space-between !important;
  gap: clamp(64px, 9vw, 136px) !important;
  align-items: start !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.trlc-newsletter-popup {
  padding: 24px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}

.trlc-newsletter-popup__dialog {
  width: min(100%, 600px) !important;
  max-height: calc(100svh - 48px);
  grid-template-columns: 1.08fr 0.92fr !important;
  overflow: hidden;
  border: 1px solid rgba(17, 17, 17, 0.22) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 22px 64px rgba(17, 17, 17, 0.12) !important;
}

.trlc-newsletter-popup__media {
  min-height: 416px !important;
}

.trlc-newsletter-popup__content {
  align-content: center;
  padding: 44px 18px !important;
}

.trlc-newsletter-popup__content h2 {
  max-width: 230px;
  margin: 0 0 8px !important;
  font-size: 26px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
}

.trlc-newsletter-popup__content > p:not(.trlc-newsletter-popup__eyebrow) {
  max-width: 250px;
  margin: 0 0 24px !important;
  color: #111 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.trlc-newsletter-popup__form {
  display: grid !important;
  width: min(100%, 250px) !important;
  min-height: 32px !important;
  grid-template-columns: minmax(0, 1fr) 36px !important;
  gap: 0 !important;
  overflow: hidden;
  border: 1.5px solid #111 !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: none !important;
}

.trlc-newsletter-popup__form:focus-within {
  box-shadow: 0 0 0 2px rgba(17, 17, 17, 0.16) !important;
}

.trlc-newsletter-popup__form input {
  width: 100% !important;
  min-width: 0;
  min-height: 30px !important;
  padding: 0 14px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  color: #111 !important;
  font-size: 12px !important;
}

.trlc-newsletter-popup__form button {
  min-height: 30px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  color: #111 !important;
  font-size: 0 !important;
}

.trlc-newsletter-popup__form button::before {
  content: ">" !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

@media (max-width: 1180px) {
  body.trlc-has-revision-content-surface .trlc-contact-revision {
    width: min(calc(100vw - 64px), 760px) !important;
    padding-bottom: 160px !important;
  }

  body.trlc-has-revision-content-surface .trlc-contact-revision__body {
    grid-template-columns: 1fr !important;
    gap: 56px !important;
  }

  body.trlc-has-revision-content-surface .trlc-contact-revision__form {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1023px) {
  .trlc-revision-site-header[data-section="site-header"] {
    padding: 0 16px !important;
  }

  .trlc-revision-site-header .trlc-header-shell {
    grid-template-columns: minmax(96px, 1fr) auto minmax(96px, 1fr) !important;
    gap: 8px !important;
  }

  .trlc-revision-site-header .trlc-header-mobile-toggle {
    display: inline-flex !important;
    grid-column: 1;
    justify-self: start;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    grid-column: 2;
    width: clamp(140px, 24vw, 190px) !important;
    max-width: none !important;
  }

  .trlc-revision-site-header .trlc-header-utilities {
    grid-column: 3;
    justify-self: end;
    gap: 6px !important;
  }

  .trlc-revision-site-header .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-utilities button {
    width: 28px !important;
    min-width: 28px !important;
  }

  .trlc-revision-site-header .trlc-header-nav {
    position: fixed !important;
    inset: 54px 0 auto !important;
    z-index: 1399;
    box-sizing: border-box;
    max-height: calc(100svh - 54px);
    overflow-y: auto;
  }
}

@media (max-width: 640px) {
  .trlc-revision-site-header[data-section="site-header"] {
    padding: 0 10px !important;
  }

  .trlc-revision-site-header .trlc-header-shell {
    grid-template-columns: minmax(82px, 1fr) auto minmax(82px, 1fr) !important;
    gap: 4px !important;
  }

  .trlc-revision-site-header .trlc-header-mobile-toggle {
    width: 30px !important;
    min-width: 30px !important;
    height: 36px !important;
    padding: 0 !important;
  }

  .trlc-revision-site-header .trlc-header-mobile-toggle svg {
    width: 20px;
    height: 20px;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    width: clamp(104px, 31vw, 132px) !important;
  }

  .trlc-revision-site-header .trlc-header-utilities {
    gap: 2px !important;
  }

  .trlc-revision-site-header .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-utilities button {
    width: 26px !important;
    min-width: 26px !important;
    height: 32px !important;
  }

  .trlc-revision-site-header .trlc-header-utilities svg {
    width: 16px !important;
    height: 16px !important;
    flex-basis: 16px;
  }

  .trlc-revision-site-header .trlc-header-cart-count.trlc-cart-count {
    top: -1px !important;
    right: -4px !important;
    min-width: 14px !important;
    height: 14px !important;
    padding: 0 3px !important;
    font-size: 8px !important;
    line-height: 12px !important;
  }

  body.trlc-has-revision-content-surface .trlc-contact-revision {
    width: min(calc(100vw - 36px), 760px) !important;
    padding-bottom: 112px !important;
  }

  body.trlc-has-revision-content-surface section.trlc-contact-revision__hero[data-section="contact-hero"] {
    padding: 72px 0 56px !important;
    text-align: left !important;
  }

  body.trlc-has-revision-content-surface .trlc-contact-revision__form {
    grid-template-columns: 1fr !important;
    row-gap: 34px !important;
  }

  body.trlc-has-revision-content-surface .trlc-contact-revision__form .trlc-contact-revision__full:nth-of-type(4) {
    margin-top: 20px !important;
  }

  body.trlc-has-revision-content-surface .trlc-contact-revision__form button {
    margin-top: 0 !important;
  }
}

@media (max-width: 700px) {
  .trlc-newsletter-popup {
    padding: 14px !important;
  }

  .trlc-newsletter-popup__dialog {
    width: min(100%, 420px) !important;
    max-height: calc(100svh - 28px);
    grid-template-columns: 1fr !important;
    overflow-y: auto;
    border-radius: 18px !important;
  }

  .trlc-newsletter-popup__media {
    min-height: 0 !important;
    height: clamp(180px, 34svh, 240px) !important;
  }

  .trlc-newsletter-popup__content {
    padding: 28px 20px 32px !important;
  }

  .trlc-newsletter-popup__content h2,
  .trlc-newsletter-popup__content > p:not(.trlc-newsletter-popup__eyebrow),
  .trlc-newsletter-popup__form {
    max-width: none;
    width: 100% !important;
  }
}
/* === END TRC final responsive parity === */

/* === TRC functional storefront controls === */
.trlc-cart-drawer {
  z-index: 1800 !important;
}

body.admin-bar .trlc-cart-drawer {
  top: 32px !important;
}

.trlc-cart-drawer__panel {
  box-sizing: border-box;
  padding-top: 48px !important;
}

.trlc-cart-drawer__panel h2 {
  display: block !important;
  overflow: visible !important;
  min-height: 1.2em;
  margin-top: 0 !important;
  line-height: 1.15 !important;
}

.trlc-cart-drawer [hidden] {
  display: none !important;
}

.trlc-form-honeypot {
  position: absolute !important;
  left: -10000px !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
}

.trlc-form-notice {
  box-sizing: border-box;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid rgba(17, 17, 17, 0.28);
  color: #111;
  font-size: 14px;
  line-height: 1.45;
}

.trlc-form-notice--success {
  border-color: rgba(60, 73, 54, 0.45);
  background: rgba(60, 73, 54, 0.06);
}

.trlc-form-notice--error {
  border-color: rgba(184, 92, 77, 0.55);
  background: rgba(184, 92, 77, 0.06);
}

.trlc-contact-revision__form > .trlc-form-notice {
  grid-column: 1 / -1;
}

.trlc-newsletter-popup__content > .trlc-form-notice {
  max-width: 250px;
  margin: 0 0 14px;
  padding: 8px 10px;
  font-size: 11px;
}

.trlc-revision-product-carousel__grid {
  display: grid !important;
  overflow-x: auto;
  grid-template-columns: none !important;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 36px) / 4);
  gap: 12px !important;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.trlc-revision-product-carousel__grid::-webkit-scrollbar {
  display: none;
}

.trlc-revision-product-carousel__grid > * {
  scroll-snap-align: start;
}

.trlc-revision-product-carousel > button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

.trlc-revision-product-carousel > button:disabled {
  cursor: default;
  opacity: 0.24;
}

@media (max-width: 900px) {
  .trlc-revision-product-carousel__grid {
    grid-auto-columns: calc((100% - 12px) / 2);
  }
}

@media (max-width: 782px) {
  body.admin-bar .trlc-cart-drawer {
    top: 46px !important;
  }
}

@media (max-width: 640px) {
  .trlc-cart-drawer__panel {
    padding-top: 44px !important;
  }

  .trlc-revision-product-carousel {
    grid-template-columns: 34px minmax(0, 1fr) 34px !important;
  }

  .trlc-revision-product-carousel > button {
    width: 34px !important;
    height: 64px !important;
    font-size: 36px !important;
  }

  .trlc-revision-product-carousel__grid {
    grid-auto-columns: 100%;
  }

  .trlc-contact-revision__form > .trlc-form-notice {
    grid-column: 1;
  }
}
/* === END TRC functional storefront controls === */

/* === TRC content and field spacing audit === */
body.woocommerce-account .woocommerce-form input.input-text,
body.woocommerce-account .woocommerce-MyAccount-content input.input-text,
body.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
body.woocommerce-account .woocommerce-MyAccount-content select,
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row input[type="text"],
body.woocommerce-checkout .form-row input[type="email"],
body.woocommerce-checkout .form-row input[type="tel"],
body.woocommerce-checkout .form-row select {
  box-sizing: border-box !important;
  min-height: 50px !important;
  padding: 10px 12px !important;
  line-height: 1.4 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content textarea,
body.woocommerce-checkout .form-row textarea {
  box-sizing: border-box !important;
  min-height: 120px !important;
  padding: 12px !important;
  line-height: 1.5 !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single {
  box-sizing: border-box !important;
  min-height: 50px !important;
  padding: 0 12px !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 22px 0 0 !important;
  line-height: 49px !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  top: 12px !important;
  right: 8px !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon input.input-text,
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty,
body.single-product form.cart .quantity input.qty {
  box-sizing: border-box !important;
  padding: 0 12px !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form input:not([type="hidden"]),
body.trlc-has-revision-content-surface .trlc-contact-revision__form select {
  box-sizing: border-box !important;
  padding: 4px 2px 8px !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form textarea {
  box-sizing: border-box !important;
  padding: 12px 14px !important;
}

.trlc-search-drawer__form input,
.trlc-newsletter-popup__form input {
  box-sizing: border-box !important;
}

@media (max-width: 640px) {
  body.woocommerce-account .woocommerce-form input.input-text,
  body.woocommerce-account .woocommerce-MyAccount-content input.input-text,
  body.woocommerce-checkout .form-row input.input-text,
  body.woocommerce-checkout .form-row select {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  .trlc-search-drawer__form input {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
/* === END TRC content and field spacing audit === */

/* === Approved mockup footer === */
#brx-footer {
  display: none !important;
}

.trlc-mockup-footer,
.trlc-mockup-footer * {
  box-sizing: border-box;
}

footer.trlc-mockup-footer[data-section="site-footer"] {
  width: 100%;
  padding: 104px clamp(20px, 2.8vw, 48px) 36px !important;
  border: 0 !important;
  background: #fff !important;
  color: #111 !important;
  font-family: var(--font-body, "Avenir Next Arabic", Arial, sans-serif);
}

.trlc-mockup-footer__inner {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.trlc-mockup-footer__nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(36px, 7vw, 120px);
  padding: 0 0 34px;
}

.trlc-mockup-footer__group {
  min-width: 0;
  margin: 0;
  padding: 0;
}

footer.trlc-mockup-footer .trlc-mockup-footer__group h2 {
  margin: 0 0 17px !important;
  color: #111 !important;
  font: inherit !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.trlc-mockup-footer__group ul {
  display: grid;
  gap: 12px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.trlc-mockup-footer__group li {
  margin: 0 !important;
  padding: 0 !important;
}

.trlc-mockup-footer__group a,
.trlc-mockup-footer__copyright,
.trlc-mockup-footer__copyright a,
.trlc-mockup-footer__disclosure {
  color: #111 !important;
  font: inherit !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}

footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__group a {
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  opacity: 0.72 !important;
}

footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__group a:hover,
footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__group a:focus-visible,
footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__copyright a:hover,
footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__copyright a:focus-visible {
  opacity: 1 !important;
  text-decoration: none !important;
  outline: 0 !important;
}

footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__copyright a {
  opacity: 0.72 !important;
  text-decoration: none !important;
}

.trlc-mockup-footer__bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: clamp(24px, 3vw, 48px);
  align-items: center;
  min-height: 72px;
  padding: 20px 0 0;
  border-top: 1px solid rgba(17, 17, 17, 0.58);
}

.trlc-mockup-footer__wordmark {
  display: block;
  width: min(100%, 292px);
  justify-self: start;
}

.trlc-mockup-footer__wordmark img {
  display: block;
  width: 100%;
  height: auto;
}

.trlc-mockup-footer__copyright,
.trlc-mockup-footer__disclosure {
  margin: 0 !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  white-space: nowrap;
}

.trlc-mockup-footer__copyright {
  justify-self: center;
  text-align: center;
}

footer.trlc-mockup-footer[data-section="site-footer"] .trlc-mockup-footer__disclosure {
  color: #a8a8a8 !important;
  justify-self: end;
  text-align: right;
}

@media (max-width: 1023px) {
  footer.trlc-mockup-footer[data-section="site-footer"] {
    padding-top: 72px !important;
  }

  .trlc-mockup-footer__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 38px 48px;
  }

  .trlc-mockup-footer__bottom {
    grid-template-columns: minmax(200px, 0.9fr) minmax(320px, 1.4fr);
  }

  .trlc-mockup-footer__disclosure {
    grid-column: 1 / -1;
    justify-self: start;
    text-align: left;
  }
}

@media (max-width: 640px) {
  footer.trlc-mockup-footer[data-section="site-footer"] {
    padding: 60px 20px 28px !important;
  }

  .trlc-mockup-footer__nav {
    gap: 34px 24px;
    padding-bottom: 30px;
  }

  .trlc-mockup-footer__bottom {
    grid-template-columns: 1fr;
    gap: 15px;
    padding-top: 22px;
  }

  .trlc-mockup-footer__wordmark {
    width: min(78vw, 260px);
  }

  .trlc-mockup-footer__wordmark,
  .trlc-mockup-footer__copyright,
  .trlc-mockup-footer__disclosure {
    justify-self: start;
  }

  .trlc-mockup-footer__copyright,
  .trlc-mockup-footer__disclosure {
    white-space: normal;
    text-align: left;
  }

  .trlc-mockup-footer__disclosure {
    grid-column: auto;
  }
}
/* === END approved mockup footer === */

/* === Approved About detail states: Mission, Values, Manifesto === */
section.trlc-about-revision-mvv {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  grid-template-columns: minmax(0, 52.7%) minmax(0, 47.3%) !important;
  gap: 0 !important;
  align-items: stretch !important;
  padding: 123px 0 210px !important;
}

section.trlc-about-revision-mvv .trlc-about-revision-mvv__copy {
  display: flex;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  padding: 28px 44px 0 56px;
}

section.trlc-about-revision-mvv .trlc-about-revision-panel[hidden] {
  display: none !important;
}

section.trlc-about-revision-mvv figure {
  width: 100%;
  margin: 0 !important;
  align-self: start;
}

section.trlc-about-revision-mvv figure img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1638 / 2048;
  object-fit: cover;
}

section.trlc-about-revision-mvv .trlc-about-revision-mvv__copy article,
section.trlc-about-revision-mvv .trlc-about-revision-mvv__copy article + article {
  margin: 0;
  padding: 0;
  border: 0;
}

section.trlc-about-revision-mvv h2,
section.trlc-about-revision-mvv p {
  color: #111 !important;
  font-family: var(--font-body, "Avenir Next Arabic", Arial, sans-serif) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

section.trlc-about-revision-mvv--mission h2 {
  margin: 0 0 7px !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

section.trlc-about-revision-mvv--mission p {
  margin: 0 !important;
  font-size: 22px !important;
  line-height: 1.48 !important;
}

section.trlc-about-revision-mvv--mission .trlc-about-revision-mvv__copy article + article {
  margin-top: 68px !important;
  padding-top: 68px !important;
  border-top: 2px solid #111 !important;
}

section.trlc-about-revision-mvv--values h2 {
  margin: 0 0 4px !important;
  font-size: 22px !important;
  line-height: 1.16 !important;
  text-transform: uppercase !important;
}

section.trlc-about-revision-mvv--values p {
  margin: 0 !important;
  font-size: 19px !important;
  line-height: 1.48 !important;
}

section.trlc-about-revision-mvv--values .trlc-about-revision-mvv__copy article + article {
  margin-top: 14px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

section.trlc-about-revision-mvv--manifesto p {
  margin: 0 !important;
  font-size: 28px !important;
  line-height: 1.48 !important;
}

section.trlc-about-revision-mvv--manifesto .trlc-about-revision-mvv__copy article + article {
  margin-top: 43px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

section.trlc-about-revision-mvv .trlc-about-revision-tabs {
  display: grid;
  justify-items: start;
  gap: 28px;
  margin: auto 0 0 !important;
}

section.trlc-about-revision-mvv .trlc-about-revision-tabs a {
  display: inline-flex !important;
  min-height: 42px !important;
  align-items: center;
  justify-content: center;
  padding: 8px 20px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--font-body, "Avenir Next Arabic", Arial, sans-serif) !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

section.trlc-about-revision-mvv .trlc-about-revision-tabs a.is-active,
section.trlc-about-revision-mvv .trlc-about-revision-tabs a:hover,
section.trlc-about-revision-mvv .trlc-about-revision-tabs a:focus-visible {
  border-color: #111 !important;
  background: #111 !important;
  color: #fefefc !important;
  outline: 0 !important;
}

@media (max-width: 900px) {
  section.trlc-about-revision-mvv {
    width: min(calc(100% - 36px), 720px) !important;
    margin: 0 auto !important;
    grid-template-columns: 1fr !important;
    padding: 72px 0 128px !important;
  }

  section.trlc-about-revision-mvv figure {
    order: -1;
  }

  section.trlc-about-revision-mvv .trlc-about-revision-mvv__copy {
    height: auto;
    padding: 44px 0 0;
  }

  section.trlc-about-revision-mvv .trlc-about-revision-tabs {
    margin-top: 64px !important;
  }
}

@media (max-width: 640px) {
  section.trlc-about-revision-mvv {
    width: min(calc(100% - 36px), 520px) !important;
    padding: 56px 0 96px !important;
  }

  section.trlc-about-revision-mvv .trlc-about-revision-mvv__copy {
    padding-top: 32px;
  }

  section.trlc-about-revision-mvv--mission h2,
  section.trlc-about-revision-mvv--values h2 {
    font-size: 20px !important;
  }

  section.trlc-about-revision-mvv--mission p,
  section.trlc-about-revision-mvv--values p {
    font-size: 17px !important;
  }

  section.trlc-about-revision-mvv--manifesto p {
    font-size: 22px !important;
  }

  section.trlc-about-revision-mvv--mission .trlc-about-revision-mvv__copy article + article {
    margin-top: 42px !important;
    padding-top: 42px !important;
  }

  section.trlc-about-revision-mvv--manifesto .trlc-about-revision-mvv__copy article + article {
    margin-top: 30px !important;
  }

  section.trlc-about-revision-mvv .trlc-about-revision-tabs {
    gap: 16px;
    margin-top: 52px !important;
  }

  section.trlc-about-revision-mvv .trlc-about-revision-tabs a {
    min-height: 38px !important;
    padding: 7px 16px !important;
    font-size: 14px !important;
  }
}
/* === END approved About detail states === */

/* === Active navigation and informational placeholders === */
.trlc-revision-site-header .trlc-header-nav a[aria-current="page"] {
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

body.trlc-coming-soon-view #brx-content {
  display: none !important;
}

.trlc-information-placeholder {
  display: flex;
  width: 100%;
  min-height: clamp(520px, 68vh, 760px);
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 96px 24px;
  background: #fff;
  color: #111;
  font-family: var(--font-body, "Avenir Next Arabic", Arial, sans-serif);
  text-align: center;
}

.trlc-information-placeholder__label {
  margin: 0 0 20px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  line-height: 1.3 !important;
  text-transform: uppercase;
}

.trlc-information-placeholder h1 {
  margin: 0 0 18px !important;
  color: #111 !important;
  font-family: inherit !important;
  font-size: clamp(38px, 5vw, 64px) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}

.trlc-information-placeholder > p:not(.trlc-information-placeholder__label) {
  max-width: 480px;
  margin: 0 0 30px !important;
  color: #111 !important;
  font-size: 17px !important;
  letter-spacing: 0 !important;
  line-height: 1.55 !important;
}

.trlc-information-placeholder > a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 8px 22px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #fff;
  color: #111 !important;
  font-size: 13px;
  letter-spacing: 0 !important;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: uppercase;
}

.trlc-information-placeholder > a:hover,
.trlc-information-placeholder > a:focus-visible {
  background: #111;
  color: #fff !important;
  outline: 0 !important;
}

@media (max-width: 640px) {
  .trlc-information-placeholder {
    min-height: 60vh;
    padding: 72px 20px;
  }

  .trlc-information-placeholder h1 {
    font-size: 40px !important;
  }
}
/* === END active navigation and informational placeholders === */

/* === Scoped spacing and product quantity corrections === */
#wpadminbar #wp-admin-bar-search,
#wpadminbar .admin-bar-search {
  display: none !important;
}

body.trlc-account-dashboard-view .trlc-account-dashboard {
  padding-bottom: clamp(64px, 6vw, 88px);
}

body.trlc-account-orders-view section[data-section="account-dashboard"],
body.trlc-account-addresses-view section[data-section="account-dashboard"],
body.trlc-account-details-view section[data-section="account-dashboard"] {
  padding-bottom: clamp(112px, 10vw, 160px) !important;
}

body.trlc-account-surface #brx-content {
  display: none !important;
}

.trlc-account-runtime-surface {
  width: 100%;
  background: var(--color-surface-warm);
}

.trlc-revision-shop__empty {
  grid-column: 1 / -1;
  margin: 0 !important;
  padding: 48px 0;
  color: #111;
  font-size: 16px;
  text-align: center;
}

body.single-product .brxe-product-add-to-cart form.cart {
  grid-template-columns: 96px minmax(0, 1fr) !important;
  align-items: center !important;
}

body.single-product .brxe-product-add-to-cart form.cart .quantity {
  display: flex !important;
  width: 96px !important;
  min-width: 96px !important;
  height: 48px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

body.single-product .brxe-product-add-to-cart form.cart .quantity input.qty {
  position: relative;
  z-index: 1;
  display: block !important;
  visibility: visible !important;
  flex: 0 0 32px !important;
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 48px !important;
  padding: 0 !important;
  opacity: 1 !important;
  color: #111 !important;
  -webkit-text-fill-color: #111;
  font-variant-numeric: tabular-nums;
  line-height: 48px !important;
  text-align: center !important;
}

body.single-product .brxe-product-add-to-cart form.cart .quantity .minus,
body.single-product .brxe-product-add-to-cart form.cart .quantity .plus {
  flex: 0 0 32px !important;
  width: 32px !important;
  min-width: 32px !important;
  height: 48px !important;
  margin: 0 !important;
}

body.single-product .brxe-product-add-to-cart form.cart .single_add_to_cart_button {
  box-sizing: border-box !important;
  height: 48px !important;
  min-height: 48px !important;
  align-self: center !important;
  margin: 0 !important;
}

@media (max-width: 640px) {
  body.trlc-account-dashboard-view .trlc-account-dashboard {
    padding-bottom: 56px;
  }

  body.trlc-account-orders-view section[data-section="account-dashboard"],
  body.trlc-account-addresses-view section[data-section="account-dashboard"],
  body.trlc-account-details-view section[data-section="account-dashboard"] {
    padding-bottom: 88px !important;
  }
}
/* === END scoped spacing and product quantity corrections === */

/* === Responsive header panel and surface gutters === */
.trlc-revision-site-header .trlc-header-navigation-panel {
  display: contents;
}

body.admin-bar .trlc-revision-site-header[data-section="site-header"] {
  top: var(--wp-admin--admin-bar--height, 32px) !important;
}

@media (min-width: 1024px) {
  .trlc-revision-site-header .trlc-header-nav--primary {
    grid-column: 1;
    grid-row: 1;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    grid-column: 2;
    grid-row: 1;
  }

  .trlc-revision-site-header .trlc-header-utilities {
    grid-column: 3;
    grid-row: 1;
  }
}

@media (max-width: 1023px) {
  .trlc-revision-site-header[data-section="site-header"],
  .trlc-revision-site-header .trlc-header-shell {
    min-height: 60px !important;
  }

  .trlc-revision-site-header .trlc-header-shell {
    grid-template-columns: 40px minmax(0, 1fr) 40px !important;
    gap: 8px !important;
  }

  .trlc-revision-site-header .trlc-header-mobile-toggle {
    grid-column: 1;
    grid-row: 1;
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    grid-column: 2;
    grid-row: 1;
    width: min(52vw, 190px) !important;
    max-width: none !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel {
    position: fixed;
    top: 60px;
    right: 0;
    left: 0;
    z-index: 1399;
    display: none;
    max-height: calc(100svh - 60px);
    overflow-y: auto;
    padding: 28px 24px 30px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.14);
    background: #fff;
  }

  body.admin-bar .trlc-revision-site-header .trlc-header-navigation-panel {
    top: calc(60px + var(--wp-admin--admin-bar--height, 32px));
    max-height: calc(100svh - 60px - var(--wp-admin--admin-bar--height, 32px));
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header .trlc-header-navigation-panel {
    display: block;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-nav {
    position: static !important;
    inset: auto !important;
    display: block !important;
    max-height: none;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-nav ul {
    display: grid !important;
    gap: 4px !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-nav a {
    width: 100% !important;
    min-height: 44px !important;
    justify-content: flex-start !important;
    padding: 0 4px !important;
    font-size: 14px !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities {
    position: static;
    display: grid !important;
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px !important;
    margin: 22px 0 0 !important;
    padding: 22px 0 0 !important;
    border-top: 1px solid rgba(17, 17, 17, 0.14);
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities button {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    gap: 7px;
    padding: 0 8px !important;
    border: 1px solid rgba(17, 17, 17, 0.18) !important;
    background: #fff !important;
    font-size: 11px !important;
    letter-spacing: 0 !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities span:not(.trlc-cart-count) {
    position: static;
    overflow: visible;
    width: auto;
    height: auto;
    clip: auto;
    white-space: nowrap;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-cart-count.trlc-cart-count {
    position: static !important;
    flex: 0 0 auto;
    margin-left: 1px;
  }
}

@media (max-width: 782px) {
  body.admin-bar .trlc-revision-site-header[data-section="site-header"] {
    top: var(--wp-admin--admin-bar--height, 46px) !important;
  }

  body.admin-bar .trlc-revision-site-header .trlc-header-navigation-panel {
    top: calc(60px + var(--wp-admin--admin-bar--height, 46px));
    max-height: calc(100svh - 60px - var(--wp-admin--admin-bar--height, 46px));
  }
}

@media (max-width: 767px) {
  body.single-product section[data-section="pdp-hero"],
  body.single-product section[data-section="pdp-acf-stack"],
  body.single-product section[data-section="pdp-reviews"],
  body.single-product section[data-section="pdp-related"],
  body.woocommerce-cart section[data-section="cart-page"],
  body.woocommerce-checkout section[data-section="checkout-accordion"],
  body.woocommerce-account section[data-section="account-dashboard"] {
    padding-right: max(18px, env(safe-area-inset-right)) !important;
    padding-left: max(18px, env(safe-area-inset-left)) !important;
  }
}

@media (max-width: 420px) {
  .trlc-revision-site-header[data-section="site-header"] {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel {
    padding-right: 18px;
    padding-left: 18px;
  }

  .trlc-revision-site-header .trlc-header-wordmark {
    width: min(54vw, 172px) !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities {
    gap: 7px !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities a,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities button {
    padding: 0 6px !important;
    font-size: 10px !important;
  }
}
/* === END responsive header panel and surface gutters === */

/* === Component content spacing corrections === */
.trlc-product-accordion-mount {
  box-sizing: border-box;
  width: 100%;
  padding: 0 52px 104px;
  background: #f7f7f6;
  color: #111;
  font-family: var(--font-body, "Avenir Next Arabic", Arial, sans-serif);
}

.trlc-product-accordion-mount__inner {
  width: min(100%, 1320px);
  margin: 0 auto;
  border-top: 1px solid var(--color-border-warm, #d9d5ce);
}

.trlc-product-accordion-mount .trlc-pdp-detail-sections {
  width: min(100%, 900px);
}

body.woocommerce-cart .trlc-cart-summary {
  box-sizing: border-box;
  padding: 24px !important;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info {
  box-sizing: border-box;
  padding: 16px 18px !important;
}

.trlc-revision-product-card--shop .trlc-revision-product-card__body {
  padding-right: 30px;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form input:not([type="hidden"]),
body.trlc-has-revision-content-surface .trlc-contact-revision__form select {
  padding: 8px 10px 10px !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form textarea {
  padding: 14px !important;
}

/* Contact form control alignment */
body.trlc-has-revision-content-surface .trlc-contact-revision__form select {
  height: 48px !important;
  min-height: 48px !important;
  padding: 8px 36px 8px 10px !important;
  line-height: 1.4 !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form button[type="submit"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1.2 !important;
  transition: background-color 180ms ease, color 180ms ease !important;
}

body.trlc-has-revision-content-surface .trlc-contact-revision__form button[type="submit"]:hover,
body.trlc-has-revision-content-surface .trlc-contact-revision__form button[type="submit"]:focus-visible {
  background: #111 !important;
  color: #fff !important;
  box-shadow: none !important;
}

/* Mobile header: one text-only navigation list */
@media (max-width: 1023px) {
  .trlc-revision-site-header .trlc-header-navigation-panel {
    box-shadow: none !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-nav ul,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-account {
    display: none !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-nav a,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-search,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-cart {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 0 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111 !important;
    font-size: 14px !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-align: left !important;
    text-transform: uppercase !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-utilities svg,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-cart-count {
    display: none !important;
  }

  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-search > span,
  .trlc-revision-site-header .trlc-header-navigation-panel .trlc-header-cart > span:not(.trlc-header-cart-count) {
    position: static !important;
    display: inline !important;
    overflow: visible !important;
    width: auto !important;
    height: auto !important;
    clip: auto !important;
    white-space: nowrap !important;
  }
}

/* Header utility icon and account login consistency */
@media (min-width: 1024px) {
  .trlc-revision-site-header .trlc-header-search,
  .trlc-revision-site-header .trlc-header-account,
  .trlc-revision-site-header .trlc-header-cart {
    color: #333 !important;
    opacity: 1 !important;
  }

  .trlc-revision-site-header .trlc-header-search svg,
  .trlc-revision-site-header .trlc-header-account svg,
  .trlc-revision-site-header .trlc-header-cart svg {
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
    stroke: #333 !important;
    stroke-width: 1.6 !important;
  }
}

body.woocommerce-account:not(.logged-in) .trlc-account-login-form {
  gap: 0 !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-register-form {
  gap: 0 !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-login-form .form-row {
  margin: 0 0 18px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-register-form .form-row {
  margin: 0 0 18px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-register-form .trlc-account-password-field {
  margin-bottom: 2px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-register-form .trlc-account-password-confirmation-field {
  margin-top: 30px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form {
  display: grid;
  width: min(100%, 540px);
  margin: 0 auto;
  gap: 0;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form .form-row {
  float: none !important;
  width: 100% !important;
  margin: 0 0 18px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form .trlc-account-password-field {
  margin-bottom: 2px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form .trlc-account-password-confirmation-field {
  margin-top: 30px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form .trlc-account-auth__submit {
  margin-top: 20px !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form input.input-text {
  text-align: left !important;
  direction: ltr;
}

body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form .woocommerce-password-strength,
body.woocommerce-account:not(.logged-in) .trlc-account-reset-password-form .woocommerce-password-hint {
  display: none !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-login-form input.input-text,
body.woocommerce-account:not(.logged-in) .trlc-account-register-form input.input-text {
  text-align: left !important;
  direction: ltr;
}

body.woocommerce-account:not(.logged-in) .trlc-account-login-form .trlc-account-auth__submit {
  margin: 18px 0 0 !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-register-form .trlc-account-auth__submit {
  margin: 20px 0 0 !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__meta {
  margin: 24px 0 0 !important;
}

body.woocommerce-account:not(.logged-in) .trlc-account-auth__switch {
  margin: 20px 0 0 !important;
}

body.woocommerce-account.logged-in .woocommerce-message,
body.woocommerce-account.logged-in .woocommerce-error,
body.woocommerce-account.logged-in .woocommerce-info {
  box-sizing: border-box !important;
  padding: 20px 22px !important;
  line-height: 1.5 !important;
}

body.woocommerce-account.logged-in .trlc-account-panel--addresses .trlc-account-address-summary {
  box-sizing: border-box !important;
  padding: 24px 26px !important;
}

@media (max-width: 640px) {
  body.woocommerce-account.logged-in .woocommerce-message,
  body.woocommerce-account.logged-in .woocommerce-error,
  body.woocommerce-account.logged-in .woocommerce-info {
    padding: 18px !important;
  }

  body.woocommerce-account.logged-in .trlc-account-panel--addresses .trlc-account-address-summary {
    padding: 20px !important;
  }
}

@media (max-width: 640px) {
  .trlc-product-accordion-mount {
    padding: 0 18px 72px;
  }

  .trlc-product-accordion-mount .trlc-pdp-detail-section summary {
    min-height: 62px;
    padding: 20px 0;
  }

  .trlc-product-accordion-mount .trlc-pdp-detail-section__body {
    padding-bottom: 28px;
    font-size: 14px;
    line-height: 1.7;
  }

  body.woocommerce-cart .trlc-cart-summary {
    padding: 20px !important;
  }

  .trlc-revision-product-card__body,
  .trlc-revision-product-card--shop .trlc-revision-product-card__body {
    padding: 16px 14px 0 !important;
  }
}
/* === END component content spacing corrections === */

/* Final mobile navigation normalization */
@media (max-width: 1023px) {
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-navigation-panel {
    padding: 12px 24px 18px !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-nav {
    margin: 0 !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-nav ul,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-utilities {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-nav a,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-utilities a,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-utilities button {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 0 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    opacity: 0.72 !important;
    text-align: left !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-account {
    display: flex !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-utilities svg,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-cart-count {
    display: none !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-utilities a > span,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-utilities button > span:not(.trlc-header-cart-count) {
    position: static !important;
    display: inline !important;
    overflow: visible !important;
    width: auto !important;
    height: auto !important;
    clip: auto !important;
    white-space: nowrap !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-account:hover,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-cart:hover {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #111 !important;
    opacity: 1 !important;
    outline: 0 !important;
    text-decoration: none !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-search:hover,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-search:focus,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-search:focus-visible,
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-search:active {
    opacity: 0.72 !important;
  }

  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-nav a[aria-current="page"],
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-account[aria-current="page"] {
    color: #111 !important;
    font-weight: 800 !important;
    opacity: 1 !important;
    text-decoration: none !important;
  }
}

@media (min-width: 1024px) {
  .trlc-revision-site-header[data-section="site-header"] .trlc-header-nav a[aria-current="page"] {
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  .trlc-search-drawer__panel {
    width: 40vw !important;
  }
}

/* Checkout fallback page spacing */
body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content {
  box-sizing: border-box !important;
  padding: 48px 32px 88px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content > h1 {
  margin-top: 0 !important;
}

body.woocommerce-checkout .trlc-step__validation-message {
  margin: 0 0 20px !important;
  padding: 12px 14px !important;
  border: 1px solid color-mix(in srgb, var(--color-destructive) 45%, transparent);
  background: color-mix(in srgb, var(--color-destructive) 7%, #fff);
  color: var(--color-destructive) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout .trlc-step__validation-message[hidden] {
  display: none !important;
}

/* Make checkout failures, including an invalid payment method, immediately visible. */
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error li {
  color: var(--color-destructive) !important;
}

/* Keep checkout action labels centered across WooCommerce button variants. */
body.woocommerce-checkout .woocommerce-form-login__submit,
body.woocommerce-checkout .checkout_coupon button,
body.woocommerce-checkout .trlc-step__continue,
body.woocommerce-checkout button[name="woocommerce_checkout_update_totals"],
body.woocommerce-checkout #place_order {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.2 !important;
}

/* Checkout payment step: compact spacing, unified actions, and clear hierarchy. */
body.woocommerce-checkout .trlc-step__header {
  margin: 0 !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] .trlc-step__body {
  padding-top: 16px !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] #payment,
body.woocommerce-checkout .trlc-step[data-step="3"] ul.payment_methods {
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] ul.payment_methods > li {
  margin: 0 !important;
  padding: 14px 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] ul.payment_methods > li:first-child {
  padding-top: 0 !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] .payment_methods .woocommerce-info {
  display: block !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid color-mix(in srgb, var(--color-destructive) 45%, transparent) !important;
  background: color-mix(in srgb, var(--color-destructive) 7%, #fff) !important;
  color: var(--color-destructive) !important;
  line-height: 1.5 !important;
}

body.woocommerce-checkout .trlc-step__actions,
body.woocommerce-checkout .trlc-step[data-step="3"] .form-row.place-order {
  box-sizing: border-box !important;
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  flex-wrap: wrap;
  gap: 12px !important;
  margin: 20px 0 0 !important;
  padding: 20px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--color-border-warm) !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] .form-row.place-order::before,
body.woocommerce-checkout .trlc-step[data-step="3"] .form-row.place-order::after {
  display: none !important;
}

body.woocommerce-checkout .trlc-step[data-step="3"] .woocommerce-terms-and-conditions-wrapper {
  flex: 0 0 100%;
}

body.woocommerce-checkout .trlc-step__continue,
body.woocommerce-checkout #place_order {
  box-sizing: border-box !important;
  min-width: 220px;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  white-space: nowrap;
}

body.woocommerce-checkout .trlc-step__continue {
  border: 1px solid var(--color-fg) !important;
  background: var(--color-bg) !important;
  color: var(--color-fg) !important;
}

body.woocommerce-checkout .trlc-step__continue:hover,
body.woocommerce-checkout .trlc-step__continue:focus-visible {
  border-color: var(--color-fg) !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
}

body.woocommerce-checkout #place_order {
  float: none !important;
  border: 1px solid var(--color-fg) !important;
  background: var(--color-fg) !important;
  color: var(--color-bg) !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout #place_order:focus-visible {
  background: var(--color-bg) !important;
  color: var(--color-fg) !important;
}

body.woocommerce-checkout .trlc-step__continue:focus-visible,
body.woocommerce-checkout #place_order:focus-visible {
  outline: 2px solid var(--color-fg) !important;
  outline-offset: 3px;
}

body.woocommerce-checkout .trlc-step__continue:disabled,
body.woocommerce-checkout #place_order:disabled {
  border-color: #767676 !important;
  background: #e7e7e7 !important;
  color: #4f4f4f !important;
  cursor: not-allowed;
}

body.woocommerce-checkout .trlc-step[data-step="3"].has-no-payment-methods #place_order,
body.woocommerce-checkout .trlc-step[data-step="3"].has-no-payment-methods .trlc-step__continue--review,
body.woocommerce-checkout .trlc-step[data-step="3"].has-no-payment-methods .form-row.place-order,
body.woocommerce-checkout .trlc-step__continue[hidden],
body.woocommerce-checkout #place_order[hidden] {
  display: none !important;
}

@media (min-width: 768px) and (max-width: 1023px) {
  body.woocommerce-checkout .trlc-step__actions .trlc-step__continue,
  body.woocommerce-checkout .trlc-step[data-step="3"] .form-row.place-order > button {
    width: auto !important;
    flex: 1 1 220px;
  }
}

@media (max-width: 767px) {
  body.woocommerce-checkout .trlc-step.is-active {
    padding: 20px !important;
  }

  body.woocommerce-checkout .trlc-step__body,
  body.woocommerce-checkout .trlc-step[data-step="3"] .trlc-step__body {
    padding-top: 16px !important;
  }

  body.woocommerce-checkout .trlc-step__actions,
  body.woocommerce-checkout .trlc-step[data-step="3"] .form-row.place-order {
    align-items: stretch !important;
    flex-direction: column;
    padding-top: 16px !important;
  }

  body.woocommerce-checkout .trlc-step__actions .trlc-step__continue,
  body.woocommerce-checkout .trlc-step[data-step="3"] .form-row.place-order > button {
    width: 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 480px) {
  body.woocommerce-checkout .trlc-step.is-active {
    padding: 16px !important;
  }

  body.woocommerce-checkout .trlc-step__label {
    font-size: 12px !important;
    letter-spacing: 0.1em !important;
  }

  body.woocommerce-checkout .trlc-step__continue,
  body.woocommerce-checkout #place_order {
    min-height: 48px !important;
    padding: 0 14px !important;
    font-size: 10px !important;
    letter-spacing: 0.08em !important;
  }
}

/* Use one continuous warm surface throughout checkout. */
body.woocommerce-checkout:not(.woocommerce-order-received),
body.woocommerce-checkout:not(.woocommerce-order-received) main#brx-content,
body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content,
body.woocommerce-checkout section[data-section="checkout-accordion"],
body.woocommerce-checkout .trlc-checkout-page-grid,
body.woocommerce-checkout .trlc-checkout-page-left,
body.woocommerce-checkout .trlc-checkout-page-right,
body.woocommerce-checkout .trlc-checkout-accordion,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout .trlc-step,
body.woocommerce-checkout .trlc-step.is-active,
body.woocommerce-checkout .trlc-step.is-complete,
body.woocommerce-checkout .trlc-step__body,
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .col2-set,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .woocommerce-checkout-review-order,
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment ul.payment_methods li,
body.woocommerce-checkout #payment .payment_box,
body.woocommerce-checkout .trlc-checkout-summary,
body.woocommerce-checkout .trlc-checkout-summary table,
body.woocommerce-checkout .woocommerce-terms-and-conditions {
  background-color: #faf7f2 !important;
}

body.woocommerce-checkout form.checkout input.input-text,
body.woocommerce-checkout form.checkout input[type="text"],
body.woocommerce-checkout form.checkout input[type="email"],
body.woocommerce-checkout form.checkout input[type="tel"],
body.woocommerce-checkout form.checkout input[type="password"],
body.woocommerce-checkout form.checkout textarea,
body.woocommerce-checkout form.checkout select,
body.woocommerce-checkout .select2-container .select2-selection--single,
body.woocommerce-checkout .select2-dropdown,
body.woocommerce-checkout .select2-results {
  background-color: #faf7f2 !important;
}

body.woocommerce-checkout #payment .payment_box::before {
  border-bottom-color: #faf7f2 !important;
}

body.woocommerce-checkout #order_comments {
  display: block;
  width: 100% !important;
  min-height: 140px !important;
  padding: 16px !important;
  border: 1px solid rgba(17, 17, 17, 0.26) !important;
  border-radius: 0 !important;
  background-color: #faf7f2 !important;
  color: #111 !important;
  box-shadow: none !important;
  line-height: 1.5 !important;
  resize: vertical;
}

body.woocommerce-checkout #order_comments::placeholder {
  color: #6b6762 !important;
  opacity: 1 !important;
}

body.woocommerce-checkout #order_comments:hover {
  border-color: rgba(17, 17, 17, 0.48) !important;
}

body.woocommerce-checkout #order_comments:focus,
body.woocommerce-checkout #order_comments:focus-visible {
  border-color: #111 !important;
  outline: 0 !important;
  box-shadow: 0 0 0 1px #111 !important;
}

body.woocommerce-checkout .trlc-step__continue,
body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout #place_order:focus-visible {
  background-color: #faf7f2 !important;
}

body.woocommerce-checkout .trlc-shipping-address-choice {
  display: block !important;
  width: auto !important;
  margin: 6px 0 24px !important;
}

body.woocommerce-checkout .trlc-shipping-address-choice label {
  display: inline-flex !important;
  width: auto !important;
  max-width: 100%;
  min-height: 44px;
  align-items: center;
  justify-content: flex-start !important;
  gap: 8px !important;
  color: var(--color-fg);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  cursor: pointer;
}

body.woocommerce-checkout #ship-to-different-address-checkbox {
  position: static !important;
  width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  flex: 0 0 18px;
  margin: 0 !important;
  accent-color: var(--color-fg);
  transform: translateY(1px);
}

body.woocommerce-checkout .trlc-shipping-address-choice label > span {
  flex: 0 1 auto;
  line-height: 18px;
}

body.woocommerce-checkout .trlc-shipping-address-title {
  margin: 0 0 24px !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout div.shipping_address[hidden] {
  display: none !important;
}

/* Product recommendation card sizing and inner spacing */
.trlc-revision-product-card--home .trlc-revision-product-card__body h3,
.trlc-revision-product-card--shop .trlc-revision-product-card__body h3,
body.single-product section[data-section="pdp-related"] .woocommerce-loop-product__title {
  color: #706c6c !important;
}

body.single-product section[data-section="pdp-related"] > .brxe-container > .brxe-heading {
  width: min(100%, 320px);
  margin: 0 auto 18px !important;
}

body.single-product section[data-section="pdp-related"] ul.products {
  display: grid !important;
  width: 100% !important;
  max-width: 1040px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 320px)) !important;
  justify-content: center;
  gap: 32px !important;
  margin: 0 auto !important;
}

body.single-product section[data-section="pdp-related"] ul.products li.product {
  overflow: hidden;
  width: 100% !important;
  max-width: 320px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.single-product section[data-section="pdp-related"] .woocommerce-loop-product__link {
  display: block;
  color: inherit !important;
  text-decoration: none !important;
}

body.single-product section[data-section="pdp-related"] ul.products li.product a img {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  margin: 0 !important;
  padding: 14% !important;
  border-radius: 0 !important;
  background: #fafafa !important;
  object-fit: contain !important;
}

body.single-product section[data-section="pdp-related"] .woocommerce-loop-product__title {
  margin: 0 0 10px !important;
  padding: 23px 18px 0 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

body.single-product section[data-section="pdp-related"] .price {
  display: block !important;
  margin: 0 !important;
  padding: 0 18px !important;
  text-align: left !important;
}

body.single-product section[data-section="pdp-related"] .button {
  display: none !important;
}

/* Preserve WooCommerce FlexSlider's calculated track and slide widths. */
body.single-product .woocommerce-product-gallery {
  opacity: 1 !important;
}

body.single-product .flex-viewport .woocommerce-product-gallery__wrapper {
  aspect-ratio: auto !important;
  max-height: none !important;
}

/* Product gallery artwork may include edge-aligned copy; keep each square fully visible. */
body.single-product .bricks-product-gallery,
body.single-product .woocommerce-product-gallery {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
}

body.single-product .woocommerce-product-gallery .flex-viewport {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-product-gallery__image {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-product-gallery__image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* Functional mini-cart quantity controls and relaxed product spacing. */
.trlc-cart-drawer .widget_shopping_cart_content {
  overflow-y: auto !important;
  padding-right: 8px !important;
  scrollbar-gutter: stable;
}

.trlc-cart-drawer .woocommerce-mini-cart {
  display: grid !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item {
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 18px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 0 20px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(17, 17, 17, 0.14) !important;
  background: transparent !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item:last-child {
  padding-bottom: 4px !important;
  border-bottom: 0 !important;
}

.trlc-cart-drawer:has(.woocommerce-mini-cart-item) .widget_shopping_cart_content {
  margin-bottom: 24px !important;
}

.trlc-mini-cart-item__media,
.trlc-mini-cart-item__media a {
  display: block !important;
  width: 112px !important;
  height: 112px !important;
  margin: 0 !important;
}

.trlc-cart-drawer .trlc-mini-cart-item__media img {
  display: block !important;
  width: 112px !important;
  height: 112px !important;
  margin: 0 !important;
  background: #fafafa !important;
  object-fit: contain !important;
}

.trlc-mini-cart-item__content {
  display: flex;
  min-width: 0;
  min-height: 112px;
  flex-direction: column;
  align-items: flex-start;
  padding: 2px 0 0;
}

.trlc-cart-drawer .trlc-mini-cart-item__name {
  display: block !important;
  margin: 0 !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  overflow-wrap: anywhere;
}

.trlc-cart-drawer .trlc-mini-cart-item__price {
  display: block;
  margin-top: 12px;
  color: #111;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3;
}

.trlc-cart-drawer .trlc-mini-cart-quantity {
  box-sizing: border-box;
  display: grid;
  width: 110px;
  height: 28px;
  grid-template-columns: 26px minmax(30px, 1fr) 26px;
  align-items: center;
  margin-top: auto;
  border: 1px solid #111;
  border-radius: 999px;
  background: transparent;
}

.trlc-cart-drawer .trlc-mini-cart-quantity__button {
  display: inline-flex;
  width: 20px;
  height: 20px;
  min-width: 0;
  min-height: 0;
  align-items: center;
  justify-content: center;
  justify-self: center;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #111 !important;
  color: #fff !important;
  font-family: Arial, sans-serif;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  cursor: pointer;
}

.trlc-cart-drawer .trlc-mini-cart-quantity__button:hover,
.trlc-cart-drawer .trlc-mini-cart-quantity__button:focus-visible {
  background: #fff !important;
  color: #111 !important;
}

.trlc-cart-drawer .trlc-mini-cart-quantity__button:focus-visible {
  outline: 2px solid #111 !important;
  outline-offset: 2px;
}

.trlc-cart-drawer .trlc-mini-cart-quantity__button:disabled {
  background: #111 !important;
  color: #fff !important;
  cursor: not-allowed;
  opacity: 0.38;
}

.trlc-cart-drawer .trlc-mini-cart-quantity__value {
  display: block;
  color: #111;
  font-family: var(--font-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

.trlc-cart-drawer .trlc-mini-cart-quantity[aria-busy="true"] {
  opacity: 1;
}

.trlc-cart-drawer .trlc-mini-cart-quantity__status {
  margin: 8px 0 0;
  color: var(--color-destructive);
  font-size: 11px;
  line-height: 1.35;
}

@media (max-width: 767px) {
  body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content {
    padding: 32px 18px 64px !important;
  }
}

@media (max-width: 480px) {
  .trlc-cart-drawer__panel {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }

  .trlc-cart-drawer .woocommerce-mini-cart {
    gap: 18px !important;
  }

  .trlc-cart-drawer:has(.woocommerce-mini-cart-item) .widget_shopping_cart_content {
    margin-bottom: 20px !important;
  }

  .trlc-cart-drawer .woocommerce-mini-cart-item {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding-bottom: 18px !important;
  }

  .trlc-mini-cart-item__media,
  .trlc-mini-cart-item__media a,
  .trlc-cart-drawer .trlc-mini-cart-item__media img {
    width: 92px !important;
    height: 92px !important;
  }

  .trlc-mini-cart-item__content {
    min-height: 92px;
  }

  .trlc-cart-drawer .trlc-mini-cart-item__name {
    font-size: 12px !important;
  }

  .trlc-cart-drawer .trlc-mini-cart-quantity {
    width: 102px;
    height: 30px;
    grid-template-columns: 28px minmax(34px, 1fr) 28px;
  }

  .trlc-cart-drawer .trlc-mini-cart-quantity__button {
    width: 22px;
    height: 22px;
  }
}

/* Ensure Bricks' quoted CSS variables cannot override the PDP brand font. */
body.single-product,
body.single-product #brx-content,
body.single-product #brx-content .woocommerce-breadcrumb,
body.single-product #brx-content .brxe-product-title,
body.single-product #brx-content .brxe-product-price,
body.single-product #brx-content .brxe-product-price *,
body.single-product #brx-content .brxe-product-content,
body.single-product #brx-content .brxe-product-content *,
body.single-product #brx-content .brxe-product-add-to-cart,
body.single-product #brx-content .brxe-product-add-to-cart input,
body.single-product #brx-content .brxe-product-add-to-cart button,
body.single-product #brx-content .brxe-product-add-to-cart label,
body.single-product #brx-content .brxe-product-stock,
body.single-product #brx-content .trlc-pdp-sku,
body.single-product #brx-content .trlc-claim-strips,
body.single-product #brx-content .trlc-product-scent,
body.single-product #brx-content .product_meta,
body.single-product #brx-content .woocommerce-notices-wrapper,
body.single-product #brx-content section[data-section="pdp-related"] h2,
body.single-product #brx-content section[data-section="pdp-related"] .woocommerce-loop-product__title,
body.single-product #brx-content section[data-section="pdp-related"] .price,
body.single-product .trlc-product-accordion-mount,
body.single-product .trlc-product-accordion-mount summary,
body.single-product .trlc-product-accordion-mount .trlc-pdp-detail-section__heading,
body.single-product .trlc-product-accordion-mount .trlc-pdp-detail-section__body {
  font-family: var(--font-body) !important;
}

/* Native WooCommerce cart page: continuous surface and responsive layout. */
body.woocommerce-cart,
body.woocommerce-cart article#brx-content,
body.woocommerce-cart article#brx-content > .woocommerce,
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .woocommerce-cart-form table.shop_table,
body.woocommerce-cart .woocommerce-cart-form thead,
body.woocommerce-cart .woocommerce-cart-form tbody,
body.woocommerce-cart .woocommerce-cart-form tr,
body.woocommerce-cart .woocommerce-cart-form th,
body.woocommerce-cart .woocommerce-cart-form td,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart_totals,
body.woocommerce-cart .cart_totals table,
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td {
  background-color: #fefefc !important;
}

body.woocommerce-cart article#brx-content {
  box-sizing: border-box;
  width: min(100%, 1280px);
  min-height: 60vh;
  margin: 0 auto;
  padding: 56px 32px 96px !important;
  color: #111;
  font-family: var(--font-body) !important;
}

body.woocommerce-cart article#brx-content > h1 {
  margin: 0 0 32px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.15 !important;
}

body.woocommerce-cart .woocommerce-cart-form table.shop_table {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
  table-layout: fixed;
}

body.woocommerce-cart .woocommerce-cart-form th,
body.woocommerce-cart .woocommerce-cart-form td {
  box-sizing: border-box;
  padding: 18px 12px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
  color: #111;
  font-family: var(--font-body) !important;
  vertical-align: middle !important;
}

body.woocommerce-cart .woocommerce-cart-form thead th {
  padding-top: 12px !important;
  padding-bottom: 14px !important;
  color: #625f5b !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .woocommerce-cart-form .product-remove {
  width: 42px;
  padding-right: 4px !important;
  padding-left: 4px !important;
  text-align: center;
}

body.woocommerce-cart .woocommerce-cart-form .product-thumbnail {
  width: 112px;
}

body.woocommerce-cart .woocommerce-cart-form .product-price,
body.woocommerce-cart .woocommerce-cart-form .product-subtotal {
  width: 140px;
}

body.woocommerce-cart .woocommerce-cart-form .product-quantity {
  width: 160px;
}

body.woocommerce-cart .woocommerce-cart-form .product-thumbnail img {
  display: block;
  width: 88px !important;
  height: 88px !important;
  margin: 0 !important;
  background: #faf7f2 !important;
  object-fit: contain !important;
}

body.woocommerce-cart .woocommerce-cart-form .product-name a {
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
}

body.woocommerce-cart .woocommerce-cart-form .product-name a:hover,
body.woocommerce-cart .woocommerce-cart-form .product-name a:focus-visible {
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

body.woocommerce-cart .woocommerce-cart-form .product-price,
body.woocommerce-cart .woocommerce-cart-form .product-subtotal,
body.woocommerce-cart .woocommerce-cart-form .quantity input.qty {
  font-size: 13px !important;
}

body.woocommerce-cart .woocommerce-cart-form .quantity {
  display: inline-flex !important;
  min-height: 42px;
  align-items: stretch;
}

body.woocommerce-cart .woocommerce-cart-form .quantity input.qty,
body.woocommerce-cart .woocommerce-cart-form .quantity .minus,
body.woocommerce-cart .woocommerce-cart-form .quantity .plus,
body.woocommerce-cart .woocommerce-cart-form .coupon input.input-text,
body.woocommerce-cart .woocommerce-cart-form button[name="apply_coupon"],
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
  background: #faf7f2 !important;
}

body.woocommerce-cart .woocommerce-cart-form .quantity input.qty,
body.woocommerce-cart .woocommerce-cart-form .coupon input.input-text {
  border-color: rgba(17, 17, 17, 0.24) !important;
}

body.woocommerce-cart .woocommerce-cart-form td.actions {
  padding: 20px 0 !important;
}

body.woocommerce-cart .woocommerce-cart-form .coupon {
  display: inline-flex;
  gap: 10px;
}

body.woocommerce-cart .woocommerce-cart-form .coupon input.input-text {
  box-sizing: border-box;
  width: 180px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
}

body.woocommerce-cart .woocommerce-cart-form button[name="apply_coupon"],
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
  min-height: 44px !important;
  padding: 0 18px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .woocommerce-cart-form button[name="apply_coupon"]:hover,
body.woocommerce-cart .woocommerce-cart-form button[name="apply_coupon"]:focus-visible,
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:hover,
body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:focus-visible {
  background: #111 !important;
  color: #fff !important;
}

body.woocommerce-cart .cart-collaterals {
  display: flex !important;
  width: 100% !important;
  justify-content: flex-end;
  padding-top: 36px;
}

body.woocommerce-cart .cart-collaterals .cart_totals {
  box-sizing: border-box;
  width: min(100%, 440px) !important;
  float: none !important;
}

body.woocommerce-cart .cart_totals h2 {
  margin: 0 0 16px !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

body.woocommerce-cart .cart_totals table.shop_table {
  margin: 0 0 20px !important;
  border: 0 !important;
  border-collapse: collapse !important;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td {
  padding: 16px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
}

body.woocommerce-cart .cart_totals table.shop_table td {
  text-align: right !important;
}

body.woocommerce-cart .wc-proceed-to-checkout {
  padding: 0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  box-sizing: border-box;
  display: inline-flex !important;
  width: 100% !important;
  min-height: 48px !important;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #111 !important;
  color: #fff !important;
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:focus-visible {
  background: var(--color-accent-warm) !important;
  color: var(--color-bg) !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:focus-visible {
  outline: 2px solid #111 !important;
  outline-offset: 3px;
}

@media (max-width: 1023px) {
  body.woocommerce-cart article#brx-content {
    padding: 44px 24px 80px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form .product-thumbnail {
    width: 92px;
  }

  body.woocommerce-cart .woocommerce-cart-form .product-thumbnail img {
    width: 72px !important;
    height: 72px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form .product-price,
  body.woocommerce-cart .woocommerce-cart-form .product-subtotal {
    width: 118px;
  }

  body.woocommerce-cart .woocommerce-cart-form .product-quantity {
    width: 144px;
  }
}

@media (max-width: 900px) {
  body.woocommerce-cart article#brx-content > h1 {
    margin-bottom: 24px !important;
    font-size: 32px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form table.shop_table,
  body.woocommerce-cart .woocommerce-cart-form tbody {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart .woocommerce-cart-form thead {
    display: none !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item {
    position: relative;
    display: grid !important;
    width: 100% !important;
    grid-template-columns: 88px minmax(0, 1fr);
    grid-template-rows: repeat(4, auto);
    gap: 5px 18px;
    padding: 20px 0 !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.16) !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item > th,
  body.woocommerce-cart .woocommerce-cart-form tr.cart_item > td {
    display: flex !important;
    width: 100% !important;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    padding: 4px 0 !important;
    border: 0 !important;
    text-align: right !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-remove {
    position: absolute;
    top: 14px;
    right: 0;
    z-index: 2;
    display: block !important;
    width: 32px !important;
    padding: 0 !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-thumbnail {
    display: block !important;
    grid-column: 1;
    grid-row: 1 / span 4;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-thumbnail::before {
    display: none !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-thumbnail img {
    width: 88px !important;
    height: 88px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-name {
    display: block !important;
    grid-column: 2;
    grid-row: 1;
    padding: 2px 36px 7px 0 !important;
    text-align: left !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-price {
    grid-column: 2;
    grid-row: 2;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-quantity {
    grid-column: 2;
    grid-row: 3;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-subtotal {
    grid-column: 2;
    grid-row: 4;
  }

  body.woocommerce-cart .woocommerce-cart-form tr:not(.cart_item),
  body.woocommerce-cart .woocommerce-cart-form td.actions {
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart .woocommerce-cart-form td.actions {
    padding: 24px 0 !important;
  }

  body.woocommerce-cart .woocommerce-cart-form .coupon {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    margin-bottom: 12px;
  }

  body.woocommerce-cart .woocommerce-cart-form .coupon input.input-text {
    width: 100% !important;
  }

  body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] {
    width: 100% !important;
  }

  body.woocommerce-cart .cart-collaterals {
    display: block !important;
    padding-top: 28px;
  }

  body.woocommerce-cart .cart-collaterals .cart_totals {
    width: 100% !important;
  }
}

@media (max-width: 480px) {
  body.woocommerce-cart article#brx-content {
    padding: 32px 18px 64px !important;
  }

  body.woocommerce-cart article#brx-content > h1 {
    font-size: 28px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item {
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 14px;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-thumbnail img {
    width: 76px !important;
    height: 76px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item > th,
  body.woocommerce-cart .woocommerce-cart-form tr.cart_item > td {
    font-size: 12px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form .coupon {
    grid-template-columns: 1fr;
  }

  body.woocommerce-cart .woocommerce-cart-form button[name="apply_coupon"] {
    width: 100% !important;
  }

  body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    min-height: 48px !important;
    padding: 0 16px !important;
    font-size: 10px !important;
    letter-spacing: 0.08em !important;
  }
}

/* Match the full-cart quantity control to the mini-cart stepper. */
body.woocommerce-cart .woocommerce-cart-form thead th.product-name,
body.woocommerce-cart .woocommerce-cart-form thead th.product-price,
body.woocommerce-cart .woocommerce-cart-form thead th.product-quantity,
body.woocommerce-cart .woocommerce-cart-form thead th.product-subtotal {
  font-family: var(--font-body) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .woocommerce-cart-form thead th.product-price,
body.woocommerce-cart .woocommerce-cart-form thead th.product-quantity {
  text-align: center !important;
}

body.woocommerce-cart .woocommerce-cart-form thead th.product-subtotal,
body.woocommerce-cart .woocommerce-cart-form td.product-subtotal {
  padding-right: 24px !important;
  text-align: right !important;
}

body.woocommerce-cart .woocommerce-cart-form .product-price {
  width: 150px;
  text-align: center !important;
}

body.woocommerce-cart .woocommerce-cart-form .product-quantity {
  width: 160px;
  text-align: center !important;
}

body.woocommerce-cart .woocommerce-cart-form .product-subtotal {
  width: 180px;
}

body.woocommerce-cart .woocommerce-cart-form .quantity {
  box-sizing: border-box !important;
  display: inline-flex !important;
  width: 96px !important;
  height: 28px !important;
  min-height: 28px !important;
  align-items: center !important;
  justify-content: space-between;
  overflow: visible;
  margin: 0 auto !important;
  padding: 0 3px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: transparent !important;
}

body.woocommerce-cart .woocommerce-cart-form .quantity input.qty {
  order: 1;
  box-sizing: border-box !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 26px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 26px !important;
  text-align: center !important;
}

body.woocommerce-cart .woocommerce-cart-form .quantity .minus,
body.woocommerce-cart .woocommerce-cart-form .quantity .plus {
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 0 0 20px !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #111 !important;
  color: #fff !important;
  opacity: 1 !important;
}

body.woocommerce-cart .woocommerce-cart-form .quantity .minus {
  order: 0;
}

body.woocommerce-cart .woocommerce-cart-form .quantity .plus {
  order: 2;
}

body.woocommerce-cart .woocommerce-cart-form .quantity .minus svg,
body.woocommerce-cart .woocommerce-cart-form .quantity .plus svg {
  width: 12px !important;
  height: 12px !important;
  stroke: #fff !important;
  stroke-width: 2.4;
}

body.woocommerce-cart .woocommerce-cart-form .quantity .minus:hover,
body.woocommerce-cart .woocommerce-cart-form .quantity .plus:hover {
  background: #fff !important;
}

body.woocommerce-cart .woocommerce-cart-form .quantity .minus:hover svg,
body.woocommerce-cart .woocommerce-cart-form .quantity .plus:hover svg {
  stroke: #111 !important;
}

@media (max-width: 1023px) and (min-width: 901px) {
  body.woocommerce-cart .woocommerce-cart-form .product-price {
    width: 120px;
  }

  body.woocommerce-cart .woocommerce-cart-form .product-quantity {
    width: 132px;
  }

  body.woocommerce-cart .woocommerce-cart-form .product-subtotal {
    width: 150px;
  }
}

@media (max-width: 900px) {
  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-price,
  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-quantity,
  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-subtotal {
    width: 100% !important;
    text-align: right !important;
  }

  body.woocommerce-cart .woocommerce-cart-form tr.cart_item .product-subtotal {
    padding-right: 0 !important;
  }

  body.woocommerce-cart .woocommerce-cart-form .quantity {
    margin: 0 0 0 auto !important;
  }
}

@media (max-width: 480px) {
  body.woocommerce-cart .woocommerce-cart-form .quantity {
    width: 102px !important;
    height: 30px !important;
    min-height: 30px !important;
  }

  body.woocommerce-cart .woocommerce-cart-form .quantity .minus,
  body.woocommerce-cart .woocommerce-cart-form .quantity .plus {
    flex-basis: 22px !important;
    width: 22px !important;
    min-width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
  }
}

/* Order received: full-width global canvas with a readable content column. */
body.woocommerce-order-received,
body.woocommerce-order-received main#brx-content {
  background-color: #fefefc !important;
}

body.woocommerce-order-received article#brx-content {
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
  min-height: 60vh;
  margin: 0 !important;
  padding: 48px 32px 96px !important;
  background-color: #fefefc !important;
}

body.woocommerce-order-received article#brx-content > h1,
body.woocommerce-order-received article#brx-content > .woocommerce {
  box-sizing: border-box;
  width: min(100%, 720px) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body.woocommerce-order-received article#brx-content > h1 {
  margin-top: 0 !important;
}

body.woocommerce-order-received .woocommerce-customer-details,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns,
body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column {
  background: transparent !important;
  background-color: transparent !important;
}

@media (max-width: 767px) {
  body.woocommerce-order-received article#brx-content {
    padding: 32px 20px 64px !important;
  }
}

/* Account order actions and order-detail spacing. */
body.woocommerce-account .trlc-account-action {
  box-sizing: border-box;
  display: inline-flex !important;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border: 1px solid var(--color-fg) !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  -webkit-text-fill-color: var(--color-fg) !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  transition: background-color 180ms ease, color 180ms ease;
  white-space: nowrap;
}

body.woocommerce-account .trlc-account-action:hover,
body.woocommerce-account .trlc-account-action:focus-visible {
  background: #232323 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.woocommerce-account .trlc-account-action:focus-visible,
body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:focus-visible {
  outline: 2px solid var(--color-fg);
  outline-offset: 3px;
}

body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
  display: flex !important;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
  min-width: 84px;
  min-height: 44px !important;
  margin: 0 !important;
  border: 1px solid var(--color-fg) !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  -webkit-text-fill-color: var(--color-fg) !important;
  text-decoration: none !important;
  transition: background-color 180ms ease, color 180ms ease;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button.pay {
  background: #232323 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:hover,
body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:focus-visible {
  background: #232323 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button.pay:hover,
body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button.pay:focus-visible {
  background: #fff !important;
  color: #232323 !important;
  -webkit-text-fill-color: #232323 !important;
}

body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details tr:has(> .order-actions--heading) {
  display: grid !important;
  grid-template-columns: minmax(120px, 1fr) auto;
  align-items: center;
  gap: 16px;
}

body.woocommerce-account.trlc-account-order-detail-view .order-actions--heading,
body.woocommerce-account.trlc-account-order-detail-view .order-actions--heading + td {
  box-sizing: border-box;
  width: 100% !important;
}

body.woocommerce-account.trlc-account-order-detail-view .order-actions--heading + td {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
}

body.woocommerce-account.trlc-account-order-detail-view .order-actions-button {
  min-width: 96px;
  min-height: 44px !important;
  margin: 0 !important;
  border: 1px solid var(--color-fg) !important;
  background: transparent !important;
  color: var(--color-fg) !important;
  -webkit-text-fill-color: var(--color-fg) !important;
  transition: background-color 180ms ease, color 180ms ease;
}

body.woocommerce-account.trlc-account-order-detail-view .order-actions-button.pay {
  background: #232323 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.woocommerce-account.trlc-account-order-detail-view .order-actions-button:hover,
body.woocommerce-account.trlc-account-order-detail-view .order-actions-button:focus-visible {
  background: #232323 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.woocommerce-account.trlc-account-order-detail-view .order-actions-button.pay:hover,
body.woocommerce-account.trlc-account-order-detail-view .order-actions-button.pay:focus-visible {
  background: #fff !important;
  color: #232323 !important;
  -webkit-text-fill-color: #232323 !important;
}

body.woocommerce-account.trlc-account-order-detail-view .woocommerce-MyAccount-content > p:first-child,
body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details,
body.woocommerce-account.trlc-account-order-detail-view .woocommerce-customer-details {
  box-sizing: border-box;
  margin: 0 0 24px !important;
  padding: 28px !important;
  border: 1px solid var(--color-border-warm) !important;
  background: color-mix(in srgb, var(--color-bg) 72%, transparent) !important;
}

body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details__title,
body.woocommerce-account.trlc-account-order-detail-view .woocommerce-column__title {
  margin-bottom: 20px !important;
}

body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details table {
  margin: 0 !important;
}

body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details table.shop_table th,
body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details table.shop_table td {
  padding: 16px clamp(16px, 2vw, 22px) !important;
  vertical-align: middle;
}

/* Keep the final checkout note inside Payment with the native submit action. */
body.woocommerce-checkout .trlc-checkout-final-notice {
  box-sizing: border-box;
  flex: 0 0 100%;
  width: 100%;
  margin: 0;
  padding: 16px 18px;
  border: 1px solid var(--color-border-warm);
  background: color-mix(in srgb, var(--color-bg) 72%, transparent);
}

body.woocommerce-checkout .trlc-checkout-final-notice p {
  margin: 0 !important;
  color: color-mix(in srgb, var(--color-fg) 72%, transparent);
  font-size: 13px;
  line-height: 1.55;
}

body.woocommerce-checkout .trlc-checkout-final-notice p + p {
  margin-top: 8px !important;
  color: var(--color-fg);
  font-weight: 600;
}

@media (max-width: 1023px) {
  body.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
    width: 100%;
    justify-self: stretch;
    justify-content: flex-start;
  }

  body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
    flex: 1 1 120px;
  }
}

@media (max-width: 600px) {
  body.woocommerce-account section[data-section="account-dashboard"] {
    padding: 44px 16px 72px !important;
  }

  body.woocommerce-account .trlc-account-panel,
  body.woocommerce-account .trlc-account-order-row,
  body.woocommerce-account .woocommerce-orders-table tbody tr,
  body.woocommerce-account.trlc-account-order-detail-view .woocommerce-MyAccount-content > p:first-child,
  body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details,
  body.woocommerce-account.trlc-account-order-detail-view .woocommerce-customer-details {
    padding: 20px !important;
  }

  body.woocommerce-account .trlc-account-dashboard__header,
  body.woocommerce-account .trlc-account-panel__head {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 16px;
  }

  body.woocommerce-account .trlc-account-order-row .trlc-account-action {
    width: 100%;
  }

  body.woocommerce-account.trlc-account-order-detail-view .woocommerce-order-details tr:has(> .order-actions--heading) {
    grid-template-columns: 1fr;
    gap: 12px;
    width: 200% !important;
    max-width: none !important;
  }

  body.woocommerce-account.trlc-account-order-detail-view .order-actions--heading + td {
    justify-content: stretch;
  }

  body.woocommerce-account.trlc-account-order-detail-view .order-actions-button {
    flex: 1 1 120px;
  }
}

@media (max-width: 480px) {
  body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
    flex-basis: 100%;
    width: 100%;
  }

  body.woocommerce-checkout .trlc-checkout-final-notice {
    padding: 14px;
  }

  body.woocommerce-account.trlc-account-order-detail-view .order-actions-button {
    flex-basis: 100%;
    width: 100%;
  }
}

/* Mobile PDP gallery: reserve the full slide and never crop product imagery. */
@media (max-width: 767px) {
  body.single-product #brxe-tr0001,
  body.single-product .bricks-product-gallery,
  body.single-product .woocommerce-product-gallery {
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: visible !important;
  }

  body.single-product .woocommerce-product-gallery .flex-viewport {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 1 / 1;
    overflow: hidden !important;
    background: var(--color-bg) !important;
  }

  body.single-product .woocommerce-product-gallery__image {
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
  }

  body.single-product .woocommerce-product-gallery__image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}

/* Per-item mini-cart removal. */
.trlc-cart-drawer .woocommerce-mini-cart-item {
  position: relative !important;
}

.trlc-cart-drawer .trlc-mini-cart-item__content {
  padding-right: 44px;
}

.trlc-cart-drawer .woocommerce-mini-cart-item > .remove.remove_from_cart_button {
  position: absolute !important;
  z-index: 2;
  top: 0 !important;
  right: 0 !important;
  display: inline-flex !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #55504a !important;
  font-family: Arial, sans-serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item > .remove.remove_from_cart_button::after {
  content: none !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item > .remove.remove_from_cart_button:hover,
.trlc-cart-drawer .woocommerce-mini-cart-item > .remove.remove_from_cart_button:focus-visible {
  background: transparent !important;
  color: #111 !important;
  text-decoration: none !important;
}

.trlc-cart-drawer .woocommerce-mini-cart-item > .remove.remove_from_cart_button:focus-visible {
  outline: 2px solid #111 !important;
  outline-offset: -6px;
}

/* Keep the text-only mobile utility rows readable after desktop icon rules. */
@media (max-width: 1023px) {
  body.trlc-mobile-menu-open .trlc-revision-site-header[data-section="site-header"] .trlc-header-cart > span:not(.trlc-header-cart-count) {
    display: inline !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    clip: auto !important;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1 !important;
    visibility: visible !important;
  }
}

/* Square campaign images already include their final card background. */
body.home .trlc-featured-card-media,
.trlc-shop-card__media,
.trlc-product-card__media,
.trlc-revision-product-card__media,
body.single-product section[data-section="pdp-related"] ul.products li.product a img {
  background: transparent !important;
}

body.home .trlc-featured-card-img,
.trlc-shop-card__img,
.trlc-product-card__image.trlc-shop-card__img,
.trlc-revision-product-card__img,
body.single-product section[data-section="pdp-related"] ul.products li.product a img {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
}

/* Global storefront canvas; components retain their own explicit surfaces. */
body.brx-body,
body.brx-body main#brx-content,
body.brx-body main.trlc-revision-page-surface,
body.brx-body main.trlc-account-runtime-surface,
body.brx-body main.trlc-account-runtime-surface > section,
body.brx-body main#brx-content > .brxe-section,
body.brx-body .trlc-revision-shop,
body.brx-body .trlc-about-revision,
body.brx-body .trlc-contact-revision,
body.brx-body section[data-section="legal-page"],
body.brx-body .trlc-legal-page,
body.brx-body section[data-section="faq-hero"],
body.brx-body section[data-section="faq-content"],
body.brx-body .trlc-revision-social,
body.single-product .trlc-product-accordion-mount {
  background-color: #fefefc !important;
}

/* Keep the homepage social grid visually connected to the footer. */
body.home .trlc-revision-social {
  padding-bottom: 0 !important;
}

body.home footer.trlc-mockup-footer[data-section="site-footer"] {
  padding-top: 24px !important;
}

/* Staging issue verification: header, overlay controls, and checkout flow. */
.trlc-revision-site-header .trlc-header-nav a:hover,
.trlc-revision-site-header .trlc-header-nav a:focus-visible,
.trlc-revision-site-header .trlc-header-utilities a:hover,
.trlc-revision-site-header .trlc-header-utilities a:focus-visible,
.trlc-revision-site-header .trlc-header-utilities button:hover,
.trlc-revision-site-header .trlc-header-utilities button:focus-visible {
  color: #111 !important;
  opacity: 1 !important;
  outline: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

.trlc-newsletter-popup__close,
.trlc-newsletter-popup__close:hover,
.trlc-newsletter-popup__close:focus,
.trlc-newsletter-popup__close:focus-visible,
.trlc-cart-drawer__close {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.trlc-cart-drawer__close:focus-visible {
  border-radius: 999px !important;
  outline: 2px solid currentColor !important;
  outline-offset: 2px;
  box-shadow: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received),
body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-checkout-accordion,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-step,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-step.is-active,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-step.is-complete,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-step__body,
body.woocommerce-checkout:not(.woocommerce-order-received) #customer_details,
body.woocommerce-checkout:not(.woocommerce-order-received) .col2-set,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-billing-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-shipping-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-additional-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_review,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods li,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .payment_box,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions {
  background: #fefefc !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 1040px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-login-toggle,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-coupon-toggle {
  background: #fefefc !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-coupon-toggle .woocommerce-info {
  box-sizing: border-box !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout_coupon {
  margin-top: 8px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input.input-text,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input[type="text"],
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input[type="email"],
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input[type="tel"],
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout input[type="password"],
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout textarea,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout select,
body.woocommerce-checkout:not(.woocommerce-order-received) .select2-container .select2-selection--single,
body.woocommerce-checkout:not(.woocommerce-order-received) #order_comments,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-step__continue,
body.woocommerce-checkout:not(.woocommerce-order-received) #place_order:hover,
body.woocommerce-checkout:not(.woocommerce-order-received) #place_order:focus-visible {
  background-color: #fefefc !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #payment .payment_box::before {
  border-bottom-color: #fefefc !important;
}

@media (max-width: 767px) {
  body.woocommerce-checkout:not(.woocommerce-order-received) article#brx-content {
    padding: 32px 16px 64px !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-login-toggle .woocommerce-info,
  body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-form-coupon-toggle .woocommerce-info {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}

body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-checkout-page-right {
  display: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) section[data-section="checkout-accordion"] {
  grid-template-columns: minmax(0, 1fr) !important;
}

body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table {
  margin: 0 !important;
}

body.woocommerce-checkout #order_review_heading[hidden],
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table thead,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tbody,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr:not(.shipping) {
  display: none !important;
}

body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping th,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping td,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping ul,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping li,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping label,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping .woocommerce-Price-amount,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping bdi {
  font-family: inherit !important;
  font-size: inherit !important;
  letter-spacing: inherit !important;
  line-height: inherit !important;
  text-transform: none !important;
}

body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping th {
  font-weight: 700 !important;
}

body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping td,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping label,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping .woocommerce-Price-amount,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.shipping bdi {
  font-weight: 400 !important;
}

body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.order-total th,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.order-total td,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.order-total strong,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.order-total .woocommerce-Price-amount,
body.woocommerce-checkout .trlc-order-review--shipping .woocommerce-checkout-review-order-table tfoot tr.order-total bdi {
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
}

body.woocommerce-checkout .trlc-order-review--payment + #payment {
  margin-top: 28px !important;
}

body.woocommerce-checkout [data-continue-to-payment][hidden] {
  display: none !important;
}

/* The centered wordmark remains a home link without interactive decoration. */
.trlc-revision-site-header .trlc-header-wordmark,
.trlc-revision-site-header .trlc-header-wordmark:hover,
.trlc-revision-site-header .trlc-header-wordmark:focus,
.trlc-revision-site-header .trlc-header-wordmark:focus-visible {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: inherit !important;
  opacity: 1 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Keep the Complianz actions compact and clear of the newsletter dialog. */
#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent {
  box-sizing: border-box !important;
  gap: 6px 16px !important;
  padding: 10px 20px !important;
  overflow: hidden !important;
  overflow-x: hidden !important;
  overflow-y: hidden !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-divider {
  display: none !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons {
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons .cmplz-btn {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 8px 16px !important;
  line-height: 1.2 !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-title,
#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-message {
  font-size: 14px !important;
  line-height: 1.4 !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-message {
  margin-bottom: 0 !important;
  align-self: center !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-body {
  display: grid !important;
  height: 96px !important;
  min-height: 96px !important;
  overflow: hidden !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-message,
#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-categories {
  width: 100% !important;
  grid-area: 1 / 1 !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-categories {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-self: stretch !important;
  gap: 6px !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  box-shadow: none !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-categories.cmplz-fade-in {
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent.cmplz-categories-visible .cmplz-message {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-category,
#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-category:not(:last-child) {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-category-header {
  min-height: 44px !important;
  padding: 6px 8px !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-category.cmplz-functional {
  display: none !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-category-toggle,
#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-functional .cmplz-description {
  display: none !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-statistics .cmplz-description,
#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-marketing .cmplz-description {
  display: block !important;
  margin: 0 !important;
  padding: 4px 8px 8px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent.cmplz-categories-visible .cmplz-body {
  overflow: hidden !important;
}

@media (min-width: 1024px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent {
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 124px !important;
    min-height: 124px !important;
    max-height: 124px !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 380px) !important;
    grid-template-rows: auto auto !important;
    align-content: center !important;
    margin: 0 !important;
    padding: 9px clamp(80px, 8.4vw, 160px) !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-header {
    grid-column: 1 !important;
    grid-row: 1 !important;
    grid-template-columns: 1fr !important;
    align-self: end !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-title {
    grid-column: 1 !important;
    justify-self: start !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-body {
    grid-column: 1 !important;
    grid-row: 2 !important;
    align-self: start !important;
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-self: center !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons .cmplz-btn {
    min-height: 36px !important;
    padding: 6px 14px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-category-header {
    min-height: 30px !important;
    padding: 4px 6px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-statistics .cmplz-description,
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-marketing .cmplz-description {
    padding: 1px 6px 2px !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-view-preferences,
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-save-preferences,
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-manage-options {
    grid-column: 1 / -1 !important;
  }

  body.cmplz-banner-active.trlc-newsletter-open .trlc-newsletter-popup {
    align-items: center !important;
    padding-bottom: 142px !important;
  }

  body.cmplz-banner-active.trlc-newsletter-open .trlc-newsletter-popup__dialog {
    max-height: calc(100svh - 166px) !important;
    overflow-y: auto !important;
  }
}

@media (max-width: 1023px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent {
    width: 100% !important;
    max-width: 100% !important;
    max-height: calc(100svh - 12px) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    margin: 0 !important;
    padding: 12px 24px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-header {
    grid-column: 1 !important;
    grid-row: auto !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-title {
    display: block !important;
    grid-column: 1 !important;
    justify-self: start !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-body {
    grid-column: 1 !important;
    grid-row: auto !important;
    height: 120px !important;
    min-height: 120px !important;
    max-height: 120px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-categories {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons .cmplz-btn {
    min-height: 44px !important;
  }
}

@media (max-width: 1023px), (max-height: 650px) {
  body.cmplz-banner-active.trlc-newsletter-open .trlc-newsletter-popup {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* === Storefront interaction and typography consistency === */

/* Missing-page content follows the storefront's restrained editorial styling. */
body.error404,
body.error404 #brx-content {
  background: #fefefc !important;
}

.trlc-not-found {
  box-sizing: border-box;
  display: flex;
  width: 100% !important;
  min-height: clamp(480px, 65vh, 720px);
  align-items: center;
  padding: 64px clamp(24px, 7vw, 112px);
  color: #111111;
}

.trlc-not-found__inner {
  width: min(100%, 760px);
}

.trlc-not-found__eyebrow {
  margin: 0 0 10px !important;
  color: #3c4936;
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.3;
  text-align: left !important;
  text-transform: uppercase;
}

.trlc-not-found h1 {
  margin: 0;
  color: #111111;
  font-family: var(--font-heading);
  font-size: 44px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.12;
}

.trlc-not-found__message {
  max-width: 620px;
  margin: 14px 0 28px !important;
  color: #555555;
  font-family: var(--font-body);
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.6;
  text-align: left !important;
}

.trlc-not-found__button {
  width: fit-content;
}

@media (max-width: 700px) {
  .trlc-not-found {
    min-height: 520px;
    padding: 52px 24px;
  }

  .trlc-not-found h1 {
    font-size: 34px;
  }
}

/* After the modal is minimized, it becomes a bottom-left accordion. */
.trlc-newsletter-popup.is-docked[aria-hidden="false"] {
  inset: auto auto 0 0 !important;
  display: block !important;
  width: min(310px, calc(100vw - 16px)) !important;
  height: auto !important;
  padding: 0 !important;
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
          backdrop-filter: none !important;
  transform: none !important;
  visibility: visible;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__dialog {
  display: flex !important;
  width: 100% !important;
  max-height: none !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 8px 0 0 !important;
  background: #f8f8f8 !important;
  box-shadow: 0 0 0 1px rgba(17, 17, 17, 0.08), 0 10px 30px rgba(17, 17, 17, 0.14) !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__media {
  display: none !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content {
  order: 1;
  max-height: 0;
  overflow: hidden;
  padding: 0 18px !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: max-height 280ms ease, padding 280ms ease, opacity 200ms ease, transform 280ms ease, visibility 0s linear 280ms;
}

.trlc-newsletter-popup.is-docked.is-expanded .trlc-newsletter-popup__content {
  max-height: 420px;
  padding: 18px 18px 16px !important;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition-delay: 0s;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content h2,
.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content > p:not(.trlc-newsletter-popup__eyebrow),
.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__form {
  width: 100% !important;
  max-width: none !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content h2 {
  display: none !important;
}

.trlc-newsletter-popup.is-docked.is-subscription-success .trlc-newsletter-popup__content > p,
.trlc-newsletter-popup.is-docked.is-subscription-success .trlc-newsletter-popup__form {
  display: none !important;
}

.trlc-newsletter-popup.is-docked.is-subscription-success .trlc-form-notice--success {
  max-width: none;
  margin: 0;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content > p:not(.trlc-newsletter-popup__eyebrow) {
  margin: 0 0 12px !important;
  font-size: 10.5px !important;
  line-height: 1.45 !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__form {
  height: 31px !important;
  min-height: 31px !important;
  max-height: 31px !important;
  grid-template-columns: minmax(0, 1fr) 28px !important;
  align-items: center !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__form input,
.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__form button {
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__form input {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 10.5px !important;
  vertical-align: middle !important;
}

body #trlc-newsletter-popup #trlc-newsletter-email {
  width: 100% !important;
  min-width: 0 !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #111111 !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 30px !important;
  text-align: left !important;
  text-transform: none !important;
  vertical-align: middle !important;
  appearance: none !important;
}

body #trlc-newsletter-popup #trlc-newsletter-email::placeholder {
  color: #8a8a8a !important;
  font: inherit !important;
  letter-spacing: 0 !important;
  line-height: 30px !important;
  opacity: 1 !important;
  text-transform: none !important;
}

body #trlc-newsletter-popup.is-docked #trlc-newsletter-email {
  width: 100% !important;
  min-width: 0 !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #111111 !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 28px !important;
  text-align: left !important;
  text-transform: none !important;
  vertical-align: middle !important;
  appearance: none !important;
}

body #trlc-newsletter-popup.is-docked #trlc-newsletter-email::placeholder {
  color: #8a8a8a !important;
  font-family: var(--font-body) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 28px !important;
  opacity: 1 !important;
  text-transform: none !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__form button {
  width: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__close {
  position: static !important;
  order: 2;
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: #f8f8f8 !important;
  color: #111111 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  font-family: var(--font-body) !important;
  line-height: 1 !important;
  text-transform: none !important;
  appearance: none;
  cursor: pointer;
}

.trlc-newsletter-popup:not(.is-docked) .trlc-newsletter-popup__toggle-label {
  display: none;
}

.trlc-newsletter-popup.is-docked .trlc-newsletter-popup__toggle-label {
  display: block;
  min-width: 0;
  overflow: hidden;
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-transform: uppercase;
}

.trlc-newsletter-popup__toggle-icon {
  display: block;
  flex: 0 0 auto;
  font-size: 17px;
  font-weight: 400;
  line-height: 1;
}

.trlc-newsletter-popup:not(.is-docked) .trlc-newsletter-popup__toggle-icon {
  font-size: 24px;
}

body.cmplz-banner-active .trlc-newsletter-popup.is-docked {
  bottom: 148px !important;
}

/* Justify prose and descriptions while leaving headings and compact data alone. */
body.brx-body main p:not(.price):not(.stock):not(.woocommerce-mini-cart__total):not(.trlc-cart-drawer__empty),
body.brx-body footer p,
.trlc-newsletter-popup__content > p:not(.trlc-newsletter-popup__eyebrow),
body.brx-body main .woocommerce-product-details__short-description,
body.brx-body main .trlc-revision-product-card__description {
  text-align: justify !important;
  text-justify: inter-word;
}

body.brx-body .trlc-revision-product-card__body > p:not(.trlc-revision-product-card__description),
body.brx-body .trlc-shop-card__price,
body.brx-body .woocommerce-Price-amount,
body.brx-body .order-total,
body.brx-body .cart-subtotal,
body.brx-body .trlc-shipping-total {
  text-align: left !important;
}

/* Product cards stay fixed while the complete image tile enlarges without cropping. */
.trlc-revision-product-card,
.trlc-featured-card,
.trlc-shop-card,
.trlc-product-card,
body.single-product section[data-section="pdp-related"] li.product {
  position: relative;
  z-index: 0;
  overflow: visible !important;
}

.trlc-revision-product-card:hover,
.trlc-revision-product-card:focus-within,
.trlc-featured-card:hover,
.trlc-featured-card:focus-within,
.trlc-shop-card:hover,
.trlc-shop-card:focus-within,
.trlc-product-card:hover,
.trlc-product-card:focus-within,
body.single-product section[data-section="pdp-related"] li.product:hover,
body.single-product section[data-section="pdp-related"] li.product:focus-within {
  z-index: 2;
}

.trlc-revision-product-card__media,
.trlc-featured-card-media,
.trlc-shop-card__media,
.trlc-product-card__media,
body.single-product section[data-section="pdp-related"] li.product > a:first-child {
  position: relative;
  z-index: 1;
  overflow: visible !important;
}

.trlc-revision-product-card__media img,
.trlc-featured-card-media img,
.trlc-shop-card__media img,
.trlc-product-card__media img,
body.single-product section[data-section="pdp-related"] li.product > a:first-child img {
  transform: scale(1);
  transform-origin: center;
  transition: transform 280ms ease-out !important;
  will-change: transform;
}

.trlc-revision-product-card:hover .trlc-revision-product-card__media img,
.trlc-revision-product-card:focus-within .trlc-revision-product-card__media img,
.trlc-featured-card:hover .trlc-featured-card-media img,
.trlc-featured-card:focus-within .trlc-featured-card-media img,
.trlc-shop-card:hover .trlc-shop-card__media img,
.trlc-shop-card:focus-within .trlc-shop-card__media img,
.trlc-product-card:hover .trlc-product-card__media img,
.trlc-product-card:focus-within .trlc-product-card__media img,
body.single-product section[data-section="pdp-related"] li.product:hover > a:first-child img,
body.single-product section[data-section="pdp-related"] li.product:focus-within > a:first-child img,
.trlc-revision-product-card__media:hover img,
.trlc-revision-product-card__media:focus-visible img,
.trlc-featured-card-media:hover img,
.trlc-featured-card-media:focus-visible img,
.trlc-shop-card__media:hover img,
.trlc-shop-card__media:focus-visible img,
.trlc-product-card__media:hover img,
.trlc-product-card__media:focus-visible img,
body.single-product section[data-section="pdp-related"] li.product > a:first-child:hover img,
body.single-product section[data-section="pdp-related"] li.product > a:first-child:focus-visible img {
  transform: scale(1.04);
}

/* Product-card links never gain the site's generic text underline on interaction. */
:is(
  .trlc-revision-product-card,
  .trlc-featured-card,
  .trlc-shop-card,
  .trlc-product-card,
  body.single-product section[data-section="pdp-related"] li.product
) a,
:is(
  .trlc-revision-product-card,
  .trlc-featured-card,
  .trlc-shop-card,
  .trlc-product-card,
  body.single-product section[data-section="pdp-related"] li.product
) a:hover,
:is(
  .trlc-revision-product-card,
  .trlc-featured-card,
  .trlc-shop-card,
  .trlc-product-card,
  body.single-product section[data-section="pdp-related"] li.product
) a:focus-visible {
  text-decoration: none !important;
  text-decoration-line: none !important;
}

/* Text command buttons on light surfaces follow the Home social CTA. */
body.brx-body :is(
  .trlc-revision-outline-button:not(.trlc-revision-outline-button--light),
  .trlc-featured-card-add,
  .trlc-home-featured-pill,
  .trlc-shop-card__add,
  .trlc-contact-revision__form button[type="submit"],
  .trlc-step__continue,
  #place_order,
  #brx-content a.button,
  #brx-content button.button,
  #brx-content input.button,
  #brx-content button[type="submit"],
  #brx-content input[type="submit"],
  .woocommerce-button,
  .order-actions-button,
  .trlc-cart-drawer__cta,
  .trlc-cart-page-cta,
  .trlc-cta-primary,
  .trlc-channel-button,
  .trlc-chat-popover__channel
) {
  display: inline-flex !important;
  min-height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 7px 20px !important;
  border: 1px solid #111111 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #111111 !important;
  box-shadow: none !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease !important;
}

body.brx-body :is(
  .trlc-revision-outline-button:not(.trlc-revision-outline-button--light),
  .trlc-featured-card-add,
  .trlc-home-featured-pill,
  .trlc-shop-card__add,
  .trlc-contact-revision__form button[type="submit"],
  .trlc-step__continue,
  #place_order,
  #brx-content a.button,
  #brx-content button.button,
  #brx-content input.button,
  #brx-content button[type="submit"],
  #brx-content input[type="submit"],
  .woocommerce-button,
  .order-actions-button,
  .trlc-cart-drawer__cta,
  .trlc-cart-page-cta,
  .trlc-cta-primary,
  .trlc-channel-button,
  .trlc-chat-popover__channel
):hover,
body.brx-body :is(
  .trlc-revision-outline-button:not(.trlc-revision-outline-button--light),
  .trlc-featured-card-add,
  .trlc-home-featured-pill,
  .trlc-shop-card__add,
  .trlc-contact-revision__form button[type="submit"],
  .trlc-step__continue,
  #place_order,
  #brx-content a.button,
  #brx-content button.button,
  #brx-content input.button,
  #brx-content button[type="submit"],
  #brx-content input[type="submit"],
  .woocommerce-button,
  .order-actions-button,
  .trlc-cart-drawer__cta,
  .trlc-cart-page-cta,
  .trlc-cta-primary,
  .trlc-channel-button,
  .trlc-chat-popover__channel
):focus-visible {
  border-color: #111111 !important;
  background: #111111 !important;
  color: #fefefc !important;
}

/* Image-overlay CTAs follow the Home hero treatment. */
body.brx-body .trlc-revision-outline-button--light {
  border-color: #fefefc !important;
  background: transparent !important;
  color: #fefefc !important;
}

body.brx-body .trlc-revision-outline-button--light:hover,
body.brx-body .trlc-revision-outline-button--light:focus-visible {
  border-color: #fefefc !important;
  background: #fefefc !important;
  color: #111111 !important;
}

/* The mobile PDP action sits on a dark surface and follows the Home hero CTA. */
body.brx-body .trlc-sticky-mobile-cta .trlc-cta-button {
  border: 1px solid #fefefc !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #fefefc !important;
  box-shadow: none !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease !important;
}

body.brx-body .trlc-sticky-mobile-cta .trlc-cta-button:hover,
body.brx-body .trlc-sticky-mobile-cta .trlc-cta-button:focus-visible {
  border-color: #fefefc !important;
  background: #fefefc !important;
  color: #111111 !important;
}

/* Consent actions use the same light-surface treatment without changing banner layout. */
body.brx-body #cmplz-cookiebanner-container .cmplz-cookiebanner :is(
  .cmplz-accept,
  .cmplz-deny,
  .cmplz-view-preferences,
  .cmplz-save-preferences
) {
  border: 1px solid #111111 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #111111 !important;
  box-shadow: none !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease !important;
}

body.brx-body #cmplz-cookiebanner-container .cmplz-cookiebanner :is(
  .cmplz-accept,
  .cmplz-deny,
  .cmplz-view-preferences,
  .cmplz-save-preferences
):hover,
body.brx-body #cmplz-cookiebanner-container .cmplz-cookiebanner :is(
  .cmplz-accept,
  .cmplz-deny,
  .cmplz-view-preferences,
  .cmplz-save-preferences
):focus-visible {
  border-color: #111111 !important;
  background: #111111 !important;
  color: #fefefc !important;
}

@media (max-width: 700px) {
  .trlc-newsletter-popup.is-docked[aria-hidden="false"] {
    width: min(300px, calc(100vw - 12px)) !important;
  }

  .trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .trlc-newsletter-popup.is-docked.is-expanded .trlc-newsletter-popup__content {
    padding-top: 16px !important;
    padding-bottom: 14px !important;
  }
}

@media (max-width: 1023px), (max-height: 650px) {
  body.cmplz-banner-active .trlc-newsletter-popup.is-docked {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .trlc-newsletter-popup.is-docked .trlc-newsletter-popup__content,
  .trlc-revision-product-card__media img,
  .trlc-featured-card-media img,
  .trlc-shop-card__media img,
  .trlc-product-card__media img,
  body.single-product section[data-section="pdp-related"] li.product > a:first-child img {
    transition: none !important;
  }
}

/* === END storefront interaction and typography consistency === */

/* === Single-page checkout spacing and totals consistency === */
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-checkout-single-page .woocommerce-billing-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-checkout-single-page .woocommerce-shipping-fields {
  box-sizing: border-box !important;
  padding: 24px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.cart-subtotal > th,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.cart-subtotal > td,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.order-total > th,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.order-total > td {
  border-top: 1px solid var(--color-border-warm) !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .woocommerce-remove-coupon {
  display: inline-flex;
  margin-left: 8px;
  color: var(--color-fg) !important;
  font-size: 11px;
  font-weight: 600;
  text-decoration: none !important;
  transition: opacity 180ms ease;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .woocommerce-remove-coupon:hover,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table .woocommerce-remove-coupon:focus-visible {
  opacity: 0.62;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.shipping td,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.shipping td label,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.shipping td .woocommerce-Price-amount,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-review-order-table tr.shipping td bdi {
  font-family: var(--font-body) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods li.payment_method_xendit_gateway {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #payment .payment_method_xendit_gateway .payment_box {
  margin-bottom: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #payment .form-row.place-order,
body.woocommerce-checkout:not(.woocommerce-order-received) #payment .woocommerce-privacy-policy-text {
  margin-top: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .checkout-inline-error-message {
  width: 100% !important;
  margin: 6px 0 0 !important;
  color: var(--color-destructive) !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  text-align: left !important;
  text-transform: none !important;
}

@media (max-width: 767px) {
  body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-checkout-single-page .woocommerce-billing-fields,
  body.woocommerce-checkout:not(.woocommerce-order-received) .trlc-checkout-single-page .woocommerce-shipping-fields {
    padding: 16px !important;
  }
}

/* === END single-page checkout spacing and totals consistency === */

/* === Order-received surface and heading cleanup === */
body.woocommerce-order-received article#brx-content > h1 {
  text-align: center !important;
}

body.woocommerce-order-received .trlc-thankyou-timeline {
  width: 100%;
  max-width: 720px;
  margin: 40px auto 0;
}

body.woocommerce-order-received .woocommerce-thankyou-order-received {
  margin: 24px 0 0 !important;
}

body.woocommerce-order-received .woocommerce-order-overview {
  margin: 24px 0 0 !important;
}

body.woocommerce-order-received .woocommerce-order-overview__payment-method {
  display: none !important;
}

body.woocommerce-order-received .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-order-overview li,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-order-details table.shop_table,
body.woocommerce-order-received .woocommerce-order-details table.shop_table thead,
body.woocommerce-order-received .woocommerce-order-details table.shop_table tbody,
body.woocommerce-order-received .woocommerce-order-details table.shop_table tfoot,
body.woocommerce-order-received .woocommerce-order-details table.shop_table tr,
body.woocommerce-order-received .woocommerce-order-details table.shop_table th,
body.woocommerce-order-received .woocommerce-order-details table.shop_table td {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

body.woocommerce-order-received .woocommerce-order-details table.shop_table {
  border: 0 !important;
  border-top: 1px solid var(--color-border-warm) !important;
  border-radius: 0 !important;
  border-collapse: collapse !important;
  box-shadow: none !important;
}

body.woocommerce-order-received .woocommerce-order-details table.shop_table th,
body.woocommerce-order-received .woocommerce-order-details table.shop_table td {
  border: 0 !important;
  border-bottom: 1px solid var(--color-border-warm) !important;
}

body.woocommerce-order-received .woocommerce-order-details table.shop_table tfoot th {
  text-align: left !important;
}

body.woocommerce-order-received .woocommerce-order-details table.shop_table tfoot th[scope="row"] {
  padding-left: 20px !important;
  padding-right: 28px !important;
}

body.woocommerce-order-received .trlc-thankyou-password-prompt {
  max-width: 720px;
  margin: 40px auto 0;
  padding: 0;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left;
}

body.woocommerce-order-received :is(
  .trlc-thankyou-timeline h2,
  .trlc-thankyou-password-prompt h2,
  .woocommerce-order-details__title,
  .woocommerce-customer-details .woocommerce-column__title
) {
  margin: 0 0 16px !important;
  color: var(--color-fg) !important;
  font-family: var(--font-body) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-transform: none !important;
}

body.woocommerce-order-received .trlc-thankyou-password-prompt .trlc-cta-primary {
  width: auto;
  min-width: 220px;
}

body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details,
body.woocommerce-order-received .trlc-thankyou-continue {
  margin: 40px 0 0 !important;
}

@media (max-width: 767px) {
  body.woocommerce-order-received .trlc-thankyou-timeline,
  body.woocommerce-order-received .trlc-thankyou-password-prompt {
    margin-top: 32px;
  }

  body.woocommerce-order-received .woocommerce-order-details,
  body.woocommerce-order-received .woocommerce-customer-details,
  body.woocommerce-order-received .trlc-thankyou-continue {
    margin-top: 32px !important;
  }

  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-columns {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 32px !important;
  }

  body.woocommerce-order-received .woocommerce-customer-details .woocommerce-column {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
  }

  body.woocommerce-order-received .woocommerce-customer-details address {
    overflow-wrap: anywhere;
  }

  body.woocommerce-order-received :is(
    .trlc-thankyou-timeline h2,
    .trlc-thankyou-password-prompt h2,
    .woocommerce-order-details__title,
    .woocommerce-customer-details .woocommerce-column__title
  ) {
    font-size: 20px !important;
  }
}

/* === END order-received surface and heading cleanup === */

/* === Information-page typography and spacing === */
.trlc-legal-content h2 {
  margin: 18px 0 4px !important;
  padding: 0;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
}

.trlc-legal-content p {
  margin: 0 0 8px !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

.trlc-legal-content ul,
.trlc-legal-content ol {
  margin: 4px 0 10px !important;
  padding-left: 24px;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

.trlc-legal-content li {
  margin-bottom: 3px !important;
  text-align: justify !important;
  text-justify: inter-word;
}

.trlc-legal-content .trlc-policy-alpha > li {
  margin-bottom: 14px !important;
}

.trlc-legal-content .trlc-policy-alpha > li::marker,
.trlc-legal-content .trlc-policy-alpha > li > strong {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
}

.trlc-legal-content .trlc-policy-alpha > li > p {
  margin-top: 3px !important;
}

body.privacy-policy .trlc-legal-content h2 {
  display: block !important;
  box-sizing: border-box;
  width: 100% !important;
  margin: 14px 0 4px !important;
  padding-top: 8px;
  border-top: 1px solid #919191;
}

/* === END Information-page typography and spacing === */

/* === Cart responsiveness and checkout interaction cleanup === */
body.woocommerce-cart.trlc-cart-auto-update #brx-content .woocommerce-cart-form button[name="update_cart"] {
  display: none !important;
}

body.woocommerce-cart.trlc-cart-auto-update #brx-content .woocommerce-shipping-calculator .trlc-shipping-calculator-fallback {
  display: none !important;
}

body.woocommerce-cart .cart_totals tr.shipping > th {
  width: 34%;
  padding-top: 18px !important;
  vertical-align: top !important;
}

body.woocommerce-cart .cart_totals tr.shipping > td {
  text-align: right !important;
  vertical-align: top !important;
}

body.woocommerce-cart .cart_totals tr.shipping #shipping_method {
  margin: 0 0 4px !important;
  padding: 0 !important;
}

body.woocommerce-cart .cart_totals tr.shipping #shipping_method label,
body.woocommerce-cart .cart_totals tr.shipping #shipping_method .woocommerce-Price-amount {
  font-size: 13px !important;
  font-weight: 600 !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-destination {
  margin: 4px 0 !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

body.woocommerce-cart .cart_totals .shipping-calculator-button {
  display: inline-block;
  margin-top: 2px;
  color: #111 !important;
  font-size: 12px !important;
  text-underline-offset: 3px;
}

body.woocommerce-cart .cart_totals .shipping-calculator-form {
  width: 100%;
  margin: 12px 0 0 !important;
  padding: 12px 0 0;
  border-top: 1px solid rgba(17, 17, 17, 0.12);
  text-align: left;
}

body.woocommerce-cart .cart_totals .shipping-calculator-button[aria-expanded="true"] + .shipping-calculator-form {
  display: grid !important;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: 12px;
}

body.woocommerce-cart .cart_totals .shipping-calculator-form .form-row {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-cart .cart_totals .shipping-calculator-form label {
  display: block;
  margin: 0 0 5px;
  color: #625f5b;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

body.woocommerce-cart .cart_totals .shipping-calculator-form select {
  box-sizing: border-box;
  width: 100% !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 7px 28px 7px 10px !important;
  border: 1px solid rgba(17, 17, 17, 0.22) !important;
  border-radius: 0 !important;
  background-color: #fefefc !important;
  color: #111 !important;
  font-size: 12px !important;
}

@media (max-width: 480px) {
  body.woocommerce-cart .cart_totals .shipping-calculator-button[aria-expanded="true"] + .shipping-calculator-form {
    grid-template-columns: 1fr;
  }
}

.trlc-cart-drawer > .blockUI,
.trlc-cart-drawer > .blockOverlay,
.trlc-cart-drawer__panel > .blockUI,
.trlc-cart-drawer__panel > .blockOverlay,
.trlc-cart-drawer .widget_shopping_cart_content > .blockUI,
.trlc-cart-drawer .widget_shopping_cart_content > .blockOverlay {
  display: none !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-account-fields p.create-account {
  margin-top: 12px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-account-fields p.create-account > label.checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px;
  margin: 0 !important;
  line-height: 1.4 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) #createaccount {
  width: 15px !important;
  height: 15px !important;
  flex: 0 0 15px;
  margin: 0 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-payment > .blockUI,
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-checkout-payment > .blockOverlay {
  display: none !important;
}

@media (min-width: 1024px) {
  body.woocommerce-checkout:not(.woocommerce-order-received) .form-row.place-order {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) .form-row.place-order .woocommerce-terms-and-conditions-wrapper {
    width: 100% !important;
    flex: 0 0 100% !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) #place_order {
    width: auto !important;
    min-width: 360px !important;
    max-width: 440px !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }
}

/* === END cart responsiveness and checkout interaction cleanup === */

/* Remove only My Account surface fills; preserve every existing outline. */
body.woocommerce-account main#brx-content,
body.woocommerce-account main.trlc-account-runtime-surface,
body.woocommerce-account section[data-section="account-dashboard"],
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .trlc-account-runtime-surface :is(
  .trlc-account-auth__panel,
  .trlc-account-panel,
  .trlc-account-order-row,
  .trlc-account-address-summary,
  .woocommerce-orders-table,
  .woocommerce-table,
  table.shop_table,
  section,
  thead,
  tbody,
  tfoot,
  tr,
  th,
  td
) {
  background: transparent !important;
  background-color: transparent !important;
}

/* Account commands use the same light-surface button as the Home social CTA. */
body.brx-body.woocommerce-account .trlc-account-runtime-surface :is(
  .trlc-account-action,
  a.button,
  button.button,
  input.button,
  button[type="submit"],
  input[type="submit"],
  .woocommerce-button,
  .order-actions-button
) {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 7px 20px !important;
  border: 1px solid #111111 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  box-shadow: none !important;
  font-family: var(--font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease !important;
  white-space: nowrap;
}

body.brx-body.woocommerce-account .trlc-account-runtime-surface :is(
  .trlc-account-action,
  a.button,
  button.button,
  input.button,
  button[type="submit"],
  input[type="submit"],
  .woocommerce-button,
  .order-actions-button
):hover,
body.brx-body.woocommerce-account .trlc-account-runtime-surface :is(
  .trlc-account-action,
  a.button,
  button.button,
  input.button,
  button[type="submit"],
  input[type="submit"],
  .woocommerce-button,
  .order-actions-button
):focus-visible {
  border-color: #111111 !important;
  background: #111111 !important;
  color: #fefefc !important;
  -webkit-text-fill-color: #fefefc !important;
}

/* Login and registration keep their original full-width centered actions. */
body.woocommerce-account:not(.logged-in) .trlc-account-login-form .trlc-account-auth__submit,
body.woocommerce-account:not(.logged-in) .trlc-account-register-form .trlc-account-auth__submit {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
}

body.brx-body.woocommerce-account:not(.logged-in) .trlc-account-login-form .woocommerce-form-login__submit,
body.brx-body.woocommerce-account:not(.logged-in) .trlc-account-register-form .woocommerce-form-register__submit {
  width: 100% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

@media (min-width: 1024px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-documents {
    display: none !important;
  }
}

@media (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent {
    gap: 5px !important;
    padding: 8px 16px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent .cmplz-buttons .cmplz-btn {
    min-height: 38px !important;
    padding: 6px 10px !important;
  }

  #cmplz-cookiebanner-container .cmplz-cookiebanner.trlc-cookie-consent :is(
    .cmplz-view-preferences,
    .cmplz-save-preferences,
    .cmplz-manage-options
  ) {
    grid-column: 1 / -1 !important;
  }
}

/* Product gallery controls sit over the square image, independent of thumbnails. */
body.single-product .woocommerce-product-gallery .flex-viewport {
  position: relative !important;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav {
  position: absolute;
  z-index: 5;
  inset: 0;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  pointer-events: none;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav a {
  position: absolute;
  top: 50%;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(17, 17, 17, 0.18);
  border-radius: 50%;
  background: rgba(254, 254, 252, 0.58);
  color: #111;
  box-shadow: 0 4px 16px rgba(17, 17, 17, 0.1);
  font-size: 0;
  line-height: 1;
  text-decoration: none !important;
  transform: translateY(-50%);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
  pointer-events: auto;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav a::before {
  font-family: Arial, sans-serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 1;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-prev {
  left: 16px;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-prev::before {
  content: "\2039";
}

body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-next {
  right: 16px;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-next::before {
  content: "\203a";
}

body.single-product .woocommerce-product-gallery .flex-direction-nav a:hover,
body.single-product .woocommerce-product-gallery .flex-direction-nav a:focus-visible {
  border-color: rgba(17, 17, 17, 0.32);
  background: rgba(254, 254, 252, 0.82);
  color: #111;
  box-shadow: 0 6px 20px rgba(17, 17, 17, 0.16);
  outline: none;
}

body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-disabled {
  cursor: default;
  opacity: 0.3;
  pointer-events: none;
}

@media (max-width: 767px) {
  body.single-product .woocommerce-product-gallery .flex-direction-nav a {
    width: 38px;
    height: 38px;
  }

  body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-prev {
    left: 10px;
  }

  body.single-product .woocommerce-product-gallery .flex-direction-nav .flex-next {
    right: 10px;
  }
}
