/* WordPress and WooCommerce integration */
[hidden] { display:none !important; }
body.has-open-panel { overflow:hidden; }
.skip-link:focus { position:fixed; z-index:9999; top:12px; left:12px; width:auto; height:auto; clip:auto; margin:0; padding:10px 14px; background:var(--paper); color:var(--ink); }
.custom-logo-link { display:block; }
.custom-logo-link img { display:block; width:auto; max-width:140px; max-height:54px; }
.desktop-nav > li, .footer-links li { margin:0; padding:0; list-style:none; }
.desktop-nav > li { position:relative; }
.mobile-menu__bottom { display:flex; gap:20px; }
.mobile-menu__bottom button, .mobile-menu__bottom a { padding:0; border:0; background:transparent; color:inherit; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; }
.admin-bar .site-header { top:32px; }

.search-panel { position:fixed; inset:0; z-index:100; display:flex; align-items:flex-start; justify-content:flex-end; }
.search-panel__backdrop { position:absolute; inset:0; border:0; background:rgba(21,18,15,.54); }
.search-panel__content { position:relative; width:min(100%,720px); min-height:100%; padding:98px 28px 50px; background:var(--paper); transform:translateX(28px); opacity:0; transition:transform .22s cubic-bezier(.23,1,.32,1), opacity .22s ease; }
.search-panel.is-open .search-panel__content { transform:none; opacity:1; }
.search-panel__close { position:absolute; top:22px; right:22px; }
.search-panel h2 { max-width:560px; margin:0 0 34px; font-size:clamp(46px,9vw,82px); line-height:.88; }
.buttersoft-search-form { display:grid; grid-template-columns:1fr auto; border-bottom:1px solid var(--ink); }
.buttersoft-search-form input[type="search"] { min-width:0; min-height:58px; padding:0 8px; border:0; background:transparent; color:var(--ink); outline:0; }
.buttersoft-search-form button { min-height:58px; display:inline-flex; align-items:center; gap:8px; padding:0 8px; border:0; background:transparent; color:var(--ink); font-size:10px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }

.home-products { padding-bottom:100px; }
.home-products .section-heading { margin-bottom:32px; }
ul.products, .woocommerce ul.products { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 10px; margin:0; padding:0; list-style:none; }
ul.products::before, ul.products::after, .woocommerce ul.products::before, .woocommerce ul.products::after { display:none; content:none; }
.woocommerce ul.products li.product, ul.products li.product, .buttersoft-product-card { float:none; width:auto; margin:0; padding:0; }
.buttersoft-product-card__link { display:block; }
.buttersoft-product-card__image { position:relative; aspect-ratio:4/5; overflow:hidden; background:#ded8d0; }
.buttersoft-product-card__image img, .woocommerce ul.products li.product .buttersoft-product-card__image img { width:100%; height:100%; margin:0; object-fit:cover; transition:transform .45s cubic-bezier(.23,1,.32,1); }
.buttersoft-product-card:hover .buttersoft-product-card__image img { transform:scale(1.025); }
.buttersoft-product-card__badges { position:absolute; top:9px; left:9px; display:flex; gap:5px; }
.buttersoft-product-card__badges span { padding:5px 7px; background:#fffaf2; color:var(--ink); font-size:8px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.buttersoft-product-card__info { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:12px 0 7px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title, .buttersoft-product-card__info h2 { margin:0 0 3px; padding:0; color:var(--ink); font-family:var(--sans); font-size:11px; font-weight:700; line-height:1.35; letter-spacing:.05em; text-transform:uppercase; }
.buttersoft-product-card__price, .woocommerce ul.products li.product .price { margin:0; color:#625d57; font-size:11px; }
.buttersoft-product-card__price del { opacity:.55; }
.buttersoft-product-card__price ins { text-decoration:none; }
.product-card-arrow { flex:none; margin-top:5px; transition:transform .18s ease; }
.buttersoft-product-card:hover .product-card-arrow { transform:translateX(3px); }
.buttersoft-product-card__colors { display:flex; flex-wrap:wrap; gap:5px; align-items:center; padding-bottom:10px; }
.buttersoft-product-card__colors span { padding:4px 7px; border:1px solid var(--line); color:#68615b; font-size:8px; line-height:1; text-transform:uppercase; letter-spacing:.05em; }
.buttersoft-product-card__colors small { color:var(--muted); font-size:9px; }
.buttersoft-product-card__actions .button, .woocommerce ul.products li.product .buttersoft-product-card__actions .button { width:100%; min-height:40px; margin:0; padding:0 10px; border:1px solid var(--ink); border-radius:0; background:transparent; color:var(--ink) !important; box-shadow:none; font-size:9px; line-height:1; letter-spacing:.08em; text-transform:uppercase; }
.buttersoft-product-card__actions .button:hover { background:var(--espresso); color:white !important; }
.buttersoft-product-card__actions .added_to_cart { display:block; padding:9px 0 0; border-bottom:1px solid currentColor; font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }

.woocommerce-notices-wrapper:empty { display:none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { margin:20px 0; padding:15px 16px; border:0; border-left:3px solid var(--clay); background:#ebe5dc; color:var(--ink); list-style:none; font-size:12px; line-height:1.5; }
.woocommerce-error { border-color:#8f423a; }
.woocommerce-message .button, .woocommerce-info .button { float:right; margin-left:15px; }
.collection-description p { max-width:450px; margin:19px 0 0; font-size:14px; line-height:1.5; }
.collection-tabs a[aria-current="page"] { background:var(--espresso); color:white; }
.collection-count .woocommerce-result-count { margin:0; color:var(--muted); font-size:11px; }
.collection-ordering .woocommerce-ordering { margin:0; }
.collection-ordering select { min-height:42px; padding:0 38px 0 12px; border:1px solid var(--line); border-radius:0; background:transparent; color:var(--ink); font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.woocommerce-pagination { margin-top:50px; }
.woocommerce-pagination ul.page-numbers, .woocommerce nav.woocommerce-pagination ul { display:flex; justify-content:center; gap:7px; margin:0; padding:0; border:0; list-style:none; }
.woocommerce-pagination .page-numbers li, .woocommerce nav.woocommerce-pagination ul li { border:0; }
.woocommerce-pagination .page-numbers a, .woocommerce-pagination .page-numbers span { min-width:40px; height:40px; display:grid; place-items:center; border:1px solid var(--line); color:var(--ink); font-size:11px; }
.woocommerce-pagination .page-numbers .current { background:var(--espresso); color:white; }
.catalog-empty { margin:30px 0 70px; padding:60px 24px; background:#e9e3db; }
.catalog-empty h2, .catalog-empty h3 { max-width:760px; margin:0; font-size:clamp(34px,7vw,62px); line-height:.96; }
.catalog-empty p:last-child { max-width:460px; margin:20px 0 0; color:var(--muted); }
.catalog-empty--dark { background:#2b2421; color:#f7f0e6; }
.catalog-empty--dark p:last-child { color:#c8bdb0; }

.product-gallery .woocommerce-product-gallery { width:100% !important; float:none !important; margin:0 !important; }
/* 10Web may delay WooCommerce JavaScript until interaction. Keep the first image usable until the native gallery initializes. */
.product-gallery .woocommerce-product-gallery:not(.flexslider) { opacity:1 !important; height:auto !important; }
.product-gallery .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper { height:auto !important; transform:none !important; }
.product-gallery .woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__image:not(:first-child) { display:none !important; }
.product-gallery .woocommerce-product-gallery__wrapper { margin:0; }
.product-gallery .woocommerce-product-gallery__image { min-height:420px; background:#ded7cf; }
.product-gallery .woocommerce-product-gallery__image img { width:100%; height:auto; min-height:420px; object-fit:cover; }
.product-gallery .flex-control-thumbs { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin:6px 0 0; padding:0; list-style:none; }
.product-gallery .flex-control-thumbs li { width:auto !important; float:none !important; }
.product-gallery .flex-control-thumbs img { width:100%; aspect-ratio:1; object-fit:cover; opacity:.65; cursor:pointer; }
.product-gallery .flex-control-thumbs img.flex-active { opacity:1; }
.woocommerce div.product div.summary, .product-buybox.summary { width:auto; float:none; margin:0; }
.product-buybox .product_title { margin:0; max-width:18ch; font-family:var(--serif); font-size:clamp(26px,4vw,42px); font-weight:400; line-height:.98; letter-spacing:-.045em; text-wrap:balance; }
.product-buybox .price { margin:17px 0; color:var(--ink); font-size:17px; font-weight:700; }
.product-buybox .price del { color:var(--muted); font-size:13px; }
.product-buybox .price ins { text-decoration:none; }
.product-buybox .woocommerce-product-details__short-description { color:#59534d; font-size:14px; line-height:1.65; }
.product-buybox .stock { display:flex; align-items:center; gap:7px; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:#625a53; font-size:11px; }
.product-buybox .stock::before { width:7px; height:7px; display:block; border-radius:50%; background:#71916a; content:""; }
.product-buybox .out-of-stock::before { background:#91615a; }
.product-buybox form.cart { margin:0; }
.product-buybox form.cart::after { display:block; clear:both; content:""; }
.product-buybox .quantity { float:left; margin:0 8px 0 0; }
.product-buybox .quantity .qty { width:72px; min-height:53px; padding:0 8px; border:1px solid var(--line); border-radius:0; background:transparent; }
.product-buybox .single_add_to_cart_button, .woocommerce div.product form.cart .button { min-height:53px; padding:0 24px; border:0; border-radius:0; background:var(--espresso); color:white; font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }
button.single_add_to_cart_button.alt.disabled, button.single_add_to_cart_button.alt.wc-variation-selection-needed { background-color:#5a5049 !important; color:#fff !important; opacity:1 !important; }
.product-buybox table.variations { width:100%; margin:20px 0 12px; border-collapse:collapse; }
.product-buybox table.variations tr { display:grid; padding:13px 0; border-top:1px solid var(--line); }
.product-buybox table.variations th, .product-buybox table.variations td { display:block; padding:0; text-align:left; }
.product-buybox table.variations th { margin-bottom:8px; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.product-buybox table.variations select { width:100%; min-height:48px; padding:0 12px; border:1px solid var(--line); border-radius:0; background:transparent; }
.product-buybox .reset_variations { display:inline-block; margin-top:7px; border-bottom:1px solid currentColor; color:var(--muted); font-size:9px; text-transform:uppercase; }
.product-buybox .woocommerce-variation-price { margin-bottom:12px; }
.product-buybox .product_meta { display:grid; gap:4px; margin-top:22px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
.product-buybox .product_meta a { border-bottom:1px solid currentColor; }
.product-details { margin-bottom:80px; }
.woocommerce-tabs ul.tabs { display:flex; gap:8px; overflow:auto; margin:0 0 25px !important; padding:0 !important; border-bottom:1px solid var(--line); list-style:none; }
.woocommerce-tabs ul.tabs::before, .woocommerce-tabs ul.tabs li::before, .woocommerce-tabs ul.tabs li::after { display:none !important; }
.woocommerce-tabs ul.tabs li { margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; }
.woocommerce-tabs ul.tabs li a { display:block; padding:14px 12px !important; border-bottom:2px solid transparent; color:var(--muted) !important; font-size:10px; letter-spacing:.07em; text-transform:uppercase; }
.woocommerce-tabs ul.tabs li.active a { border-color:var(--ink); color:var(--ink) !important; }
.woocommerce-Tabs-panel { max-width:850px; color:#514c46; font-size:14px; line-height:1.7; }
.woocommerce-Tabs-panel h2 { font-size:clamp(34px,6vw,56px); }
.complete-set__products { display:grid; gap:12px; }
.complete-set__card a { display:block; height:100%; }
.complete-set__card strong { display:block; margin:7px 0 17px; }

.content-page, .search-results-page { padding-top:85px; padding-bottom:110px; }
.content-page__header, .search-results-page__header { max-width:960px; margin-bottom:55px; }
.content-page__header h1, .search-results-page__header h1 { margin:0; font-family:var(--serif); font-size:clamp(52px,10vw,110px); font-weight:400; line-height:.85; letter-spacing:-.06em; }
.entry-content { max-width:980px; }
.entry-content > * { max-width:760px; }
.entry-content > .alignwide { max-width:1100px; }
.entry-content > .alignfull { max-width:none; }
.entry-content h2, .entry-content h3 { margin-top:1.6em; }
.entry-content p, .entry-content li { color:#514c46; line-height:1.75; }
.content-list { display:grid; gap:45px; }
.content-card { display:grid; gap:22px; padding-top:24px; border-top:1px solid var(--line); }
.content-card__image img { width:100%; height:auto; }
.content-card h2 { margin:0; font-size:clamp(32px,6vw,54px); }
.search-results-page__header .buttersoft-search-form { max-width:700px; margin-top:35px; }
.not-found > p:not(.eyebrow) { max-width:500px; margin:0 auto 28px; color:var(--muted); }
.not-found__actions { display:flex; justify-content:center; align-items:center; gap:22px; }

/* Classic and block cart/checkout/account */
.woocommerce-cart .content-page, .woocommerce-checkout .content-page, .woocommerce-account .content-page { max-width:1260px; }
.woocommerce table.shop_table { width:100%; border:0; border-collapse:collapse; border-radius:0; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding:16px 10px; border:0; border-bottom:1px solid var(--line); text-align:left; }
.woocommerce table.shop_table th { font-size:9px; letter-spacing:.09em; text-transform:uppercase; }
.woocommerce a.remove { color:#6e4b43 !important; }
.woocommerce a.remove:hover { background:#6e4b43; color:white !important; }
.woocommerce-cart table.cart img { width:90px; }
.woocommerce-cart table.cart td.actions .coupon { display:flex; }
.woocommerce-cart table.cart td.actions .input-text { min-height:44px; padding:0 12px; border:1px solid var(--line); }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals { width:min(100%,560px); float:right; padding:30px; background:#ebe5dc; }
.woocommerce .button, .wc-block-components-button, .wp-element-button { min-height:46px; padding:0 18px; border:1px solid var(--ink); border-radius:0 !important; background:var(--ink); color:#fff !important; box-shadow:none !important; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.woocommerce .button.alt, .woocommerce a.button.alt, .wc-block-components-button:not(.is-link) { background:var(--espresso); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input { min-height:48px; padding:10px 12px; border:1px solid var(--line); border-radius:0; background:var(--paper); color:var(--ink); }
.woocommerce form .form-row textarea { min-height:120px; }
.woocommerce form .form-row label { font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.woocommerce-checkout #customer_details { display:grid; gap:40px; }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { width:auto; float:none; }
.woocommerce-checkout #order_review { padding:25px; background:#ebe5dc; }
.woocommerce-checkout #payment { border-radius:0; background:#e2dbd2; }
.woocommerce-checkout #payment ul.payment_methods { border-color:var(--line); }
.wc-block-cart, .wc-block-checkout { max-width:1200px; margin-inline:auto; }
.wc-block-components-sidebar-layout { gap:44px; }
.wc-block-components-order-summary, .wc-block-cart__sidebar, .wc-block-checkout__sidebar { padding:24px !important; background:#ebe5dc; }
.wc-block-components-product-name { font-family:var(--serif); font-size:21px; }
.wc-block-components-totals-wrapper { border-color:var(--line) !important; }
.woocommerce-account .woocommerce-MyAccount-navigation { width:26%; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin:0; padding:0; list-style:none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; padding:12px 0; border-bottom:1px solid var(--line); font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.woocommerce-account .woocommerce-MyAccount-content { width:68%; }
.woocommerce form.login, .woocommerce form.register, .woocommerce form.checkout_coupon { border:1px solid var(--line); border-radius:0; }
.newsletter-pending { max-width:474px; padding:14px; border:1px solid rgba(31,27,24,.42); font-size:11px; }

/* Contrast-safe text surfaces over editorial photography. */
.hero__content { padding-left:0; padding-right:0; background:transparent; }
.hero__copy-panel { width:min(100%,640px); padding:20px; background:#171513; }
.hero__copy-panel > p:not(.eyebrow) { max-width:270px; margin:27px 0 23px; font-size:15px; line-height:1.4; }
.hero__side-note { padding:8px 10px; background:#24211f; }
.category-card__copy { inset:auto 8px 8px; padding:11px; background:#292522; }
.collection-hero__copy { margin-bottom:28px; padding:22px; background:#292522; }

@media (max-width:782px) { .admin-bar .site-header { top:46px; } }
@media (min-width:760px) {
  .search-panel__content { padding:120px 62px 60px; }
  .hero__copy-panel { padding:28px 32px; }
  .hero__copy-panel > p:not(.eyebrow) { max-width:320px; font-size:17px; }
  ul.products, .woocommerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 16px; }
  .buttersoft-product-card__actions .button { width:auto; min-width:150px; }
  .product-gallery .woocommerce-product-gallery__image, .product-gallery .woocommerce-product-gallery__image img { min-height:610px; }
  .complete-set__products { grid-template-columns:repeat(2,1fr); }
  .content-card { grid-template-columns:.8fr 1.2fr; align-items:start; }
  .woocommerce-checkout #customer_details { grid-template-columns:1fr 1fr; }
}
@media (max-width:759px) {
  ul.products, .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { width:100%; float:none; }
  .woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom:35px; }
  .woocommerce-cart table.shop_table_responsive tr td::before { font-size:9px; letter-spacing:.06em; text-transform:uppercase; }
  .wc-block-components-sidebar-layout { display:block; }
}
@media (prefers-reduced-motion:reduce) {
  .search-panel__content, .buttersoft-product-card__image img { transition:none; }
}

/* Modern collection and product imagery release — 1.2.0. */
.collection-page,
.vault-page { overflow-x:clip; }

.collection-page .collection-hero {
  min-height:clamp(360px,48vw,620px);
  align-items:flex-end;
  background:#d8d0c7;
}
.collection-page .collection-hero > img {
  opacity:1 !important;
  filter:none !important;
  object-position:center 36%;
}
.collection-page .collection-hero__shade {
  background:linear-gradient(180deg,rgba(20,17,15,.03) 25%,rgba(20,17,15,.34) 100%);
}
.collection-page .collection-hero__copy {
  width:min(calc(100% - 32px),820px);
  margin:0 auto 20px 16px;
  padding:24px;
  background:rgba(249,244,237,.96);
  color:var(--ink);
  backdrop-filter:blur(8px);
}
.collection-page .collection-hero__copy .eyebrow { color:#6d5548; }
.collection-page .collection-hero__copy h1 {
  margin:0;
  font-size:clamp(56px,10vw,118px);
  line-height:.78;
  letter-spacing:-.065em;
}
.collection-page .collection-description { display:none; }
.collection-content { padding-top:0; padding-bottom:100px; }

.collection-directory {
  display:flex;
  gap:8px;
  margin:0 -16px;
  padding:22px 16px;
  overflow-x:auto;
  border-bottom:1px solid var(--line);
  scrollbar-width:none;
}
.collection-directory::-webkit-scrollbar { display:none; }
.collection-directory a {
  flex:none;
  min-height:36px;
  display:inline-flex;
  align-items:center;
  padding:0 13px;
  border:1px solid #cfc5ba;
  border-radius:999px;
  color:#4f4944;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.collection-directory a:hover,
.collection-directory a[aria-current="page"] {
  border-color:var(--ink);
  background:var(--ink);
  color:#fffaf2;
}

.collection-intro {
  display:grid;
  gap:24px;
  padding:62px 0 52px;
}
.collection-intro h2,
.vault-products-heading h2 {
  max-width:820px;
  margin:8px 0 0;
  font-size:clamp(46px,8vw,92px);
  line-height:.86;
  letter-spacing:-.055em;
}
.collection-intro h2 em,
.vault-products-heading h2 em,
.vault-page__intro h2 em,
.vault-page__texture h2 em {
  color:var(--clay);
  font-weight:400;
}
.collection-intro > p,
.vault-products-heading > p,
.vault-page__intro > p {
  max-width:430px;
  margin:0;
  color:#5f5851;
  font-size:14px;
  line-height:1.7;
}

.collection-toolbar {
  align-items:center;
  padding:16px 0;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--line);
}
.collection-count,
.collection-count .woocommerce-result-count {
  color:#5f5851;
  font-size:10px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.collection-ordering {
  display:flex;
  align-items:center;
  gap:10px;
}
.collection-ordering > label {
  display:none;
  color:#6a625b;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.collection-ordering .woocommerce-ordering { margin:0; }
.collection-ordering select {
  min-height:40px;
  max-width:175px;
  padding:0 34px 0 11px;
  border-color:#cfc5ba;
  background-color:transparent;
}

body.woocommerce .collection-content ul.products,
body.woocommerce-page .collection-content ul.products,
.vault-page ul.products.vault-product-grid {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:start;
  gap:42px 12px !important;
  width:100%;
  margin:30px 0 0 !important;
  padding:0 !important;
}
body.woocommerce .collection-content ul.products::before,
body.woocommerce .collection-content ul.products::after,
.vault-page ul.products.vault-product-grid::before,
.vault-page ul.products.vault-product-grid::after { display:none !important; content:none !important; }
body.woocommerce .collection-content ul.products > li.product,
body.woocommerce-page .collection-content ul.products > li.product,
.vault-page ul.products.vault-product-grid > li.product {
  clear:none !important;
  float:none !important;
  width:100% !important;
  min-width:0;
  margin:0 !important;
  padding:0 !important;
}

.buttersoft-product-card {
  position:relative;
  display:block !important;
  border:0;
  background:transparent;
}
.buttersoft-product-card__link { display:block; color:inherit; }
.buttersoft-product-card__image {
  position:relative;
  width:100%;
  height:auto;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#e3ddd5;
}
.buttersoft-product-card__image img,
.woocommerce ul.products li.product .buttersoft-product-card__image img {
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  opacity:1 !important;
  filter:none !important;
  object-fit:cover;
  object-position:center;
  transform:none;
}
.buttersoft-product-card__secondary-image { visibility:hidden; }
@media (hover:hover) and (pointer:fine) {
  .buttersoft-product-card:hover .buttersoft-product-card__primary-image { visibility:hidden; }
  .buttersoft-product-card:hover .buttersoft-product-card__secondary-image { visibility:visible; }
}
.buttersoft-product-card__badges {
  top:12px;
  left:12px;
  right:12px;
  z-index:2;
  flex-wrap:wrap;
}
.buttersoft-product-card__badges span {
  padding:7px 9px;
  border-radius:999px;
  background:#fffaf2;
  box-shadow:0 4px 18px rgba(28,23,20,.08);
}
.buttersoft-product-card__badges .is-vault { background:#2e2622; color:#fffaf2; }
.buttersoft-product-card__quick-link {
  position:absolute;
  z-index:2;
  right:10px;
  bottom:10px;
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,250,242,.96);
  color:var(--ink);
  box-shadow:0 8px 28px rgba(28,23,20,.13);
  font-size:8px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.buttersoft-product-card__content { padding:14px 0 0; }
.buttersoft-product-card__collection {
  margin:0 0 7px;
  color:#8a6a5b;
  font-size:8px;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.buttersoft-product-card__heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:start;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.buttersoft-product-card__heading h2 {
  max-width:25ch;
  margin:0 !important;
  padding:0 !important;
  font-family:var(--serif);
  font-size:clamp(20px,4.8vw,31px);
  font-weight:400;
  line-height:.96;
  letter-spacing:-.045em;
  text-transform:none;
}
.buttersoft-product-card__price,
.woocommerce ul.products li.product .buttersoft-product-card__price {
  margin:2px 0 0;
  color:var(--ink);
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}
.buttersoft-product-card__meta {
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:10px;
  color:#746c65;
  font-size:8px;
  font-weight:700;
  letter-spacing:.055em;
  text-transform:uppercase;
}

.woocommerce-pagination { margin-top:64px; }
.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
  border-radius:999px;
  border-color:#cfc5ba;
}
.woocommerce-pagination .page-numbers .current { background:var(--ink); }

.collection-endcap {
  display:grid;
  margin-top:96px;
  overflow:hidden;
  background:#e7dfd6;
  color:var(--ink);
}
.collection-endcap__image { min-height:320px; }
.collection-endcap__image img {
  width:100%;
  height:100%;
  min-height:320px;
  opacity:1 !important;
  filter:none !important;
  object-fit:cover;
}
.collection-endcap__copy { padding:42px 24px 48px; }
.collection-endcap__copy h2 {
  margin:10px 0 22px;
  font-size:clamp(43px,8vw,78px);
  line-height:.86;
  letter-spacing:-.055em;
}
.collection-endcap__copy h2 em { color:var(--clay); font-weight:400; }
.collection-endcap__copy > p:not(.eyebrow) {
  max-width:440px;
  margin:0 0 24px;
  color:#5f5851;
  font-size:13px;
  line-height:1.65;
}

/* Vault section: editorial hero with merchandise-forward cards. */
.vault-page__hero > img { opacity:1 !important; filter:none !important; }
.vault-page__intro {
  display:grid;
  gap:24px;
  padding-top:78px;
  padding-bottom:72px;
}
.vault-page__intro > div { display:block; }
.vault-page__intro h2 { margin:8px 0 0; }
.vault-page__status { padding-bottom:100px; }
.vault-products-heading {
  display:grid;
  gap:20px;
  padding-top:24px;
  border-top:1px solid var(--ink);
}
.vault-page ul.products.vault-product-grid { margin-top:38px !important; }
.vault-page__texture {
  padding:0;
  background:#e7dfd6;
  color:var(--ink);
}
.vault-page__texture > .page-shell { display:grid; gap:0; }
.vault-page__texture-image { min-height:340px; }
.vault-page__texture-image img {
  width:100%;
  height:100%;
  min-height:340px;
  opacity:1 !important;
  filter:none !important;
  object-fit:cover;
}
.vault-page__texture-copy { padding:48px 0 58px; }
.vault-page__texture h2 { margin:10px 0 20px; }
.vault-page__texture p:not(.eyebrow) { color:#5f5851; }
.vault-page__texture .text-link { margin-top:24px; }

/* Product imagery is always rendered at full strength. */
.single-product .product-gallery img,
.single-product .woocommerce-product-gallery img,
.single-product .flex-control-thumbs img,
.single-product .complete-set img {
  opacity:1 !important;
  filter:none !important;
}
.product-gallery .flex-control-thumbs img,
.product-gallery .flex-control-thumbs img.flex-active { opacity:1 !important; }
.product-gallery .flex-control-thumbs img { border:1px solid transparent; }
.product-gallery .flex-control-thumbs img.flex-active { border-color:var(--ink); }
.complete-set {
  display:grid;
  gap:32px;
  padding:44px 20px;
  background:#e3e6df;
}
.complete-set__heading h2 { margin-bottom:14px; }
.complete-set__products { gap:18px; }
.complete-set__card {
  min-height:0;
  overflow:hidden;
  background:#f7f1e8;
  color:var(--ink);
}
.complete-set__card::after { display:none; content:none; }
.complete-set__card > a { display:grid; height:auto; }
.complete-set__card img {
  position:static;
  width:100%;
  height:auto;
  aspect-ratio:4/5;
  object-fit:cover;
}
.complete-set__card > a > div {
  position:static;
  padding:22px;
  color:var(--ink);
}
.complete-set__card h3 { margin:7px 0 12px; font-size:clamp(30px,5vw,44px); }
.complete-set__card strong { color:#5f5851; }
.complete-set__card .button--light {
  display:inline-flex;
  width:auto;
  min-height:40px;
  align-items:center;
  margin-top:14px;
  padding:0 14px;
  border:1px solid var(--ink);
  background:transparent;
  color:var(--ink);
}

@media (min-width:760px) {
  .collection-page .collection-hero__copy {
    width:min(calc(100% - 80px),980px);
    margin:0 0 36px 40px;
    padding:30px 34px 34px;
  }
  .collection-directory { margin:0; padding:24px 0; }
  .collection-intro,
  .vault-page__intro,
  .vault-products-heading {
    grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);
    align-items:end;
  }
  .collection-intro { padding:88px 0 68px; }
  .collection-ordering > label { display:block; }
  body.woocommerce .collection-content ul.products,
  body.woocommerce-page .collection-content ul.products,
  .vault-page ul.products.vault-product-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:58px 18px !important;
    margin-top:38px !important;
  }
  .buttersoft-product-card__quick-link {
    right:14px;
    bottom:14px;
    min-height:42px;
    padding:0 16px;
    transform:translateY(8px);
    visibility:hidden;
    transition:transform .2s ease,visibility .2s ease;
  }
  .buttersoft-product-card:hover .buttersoft-product-card__quick-link,
  .buttersoft-product-card:focus-within .buttersoft-product-card__quick-link {
    transform:none;
    visibility:visible;
  }
  .collection-endcap {
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    min-height:480px;
  }
  .collection-endcap__copy { align-self:center; padding:60px; }
  .vault-page__texture > .page-shell {
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    align-items:stretch;
  }
  .vault-page__texture-image { min-height:520px; }
  .vault-page__texture-copy { align-self:center; padding:70px 0 70px 70px; }
  .complete-set { grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr); padding:58px; }
}

@media (min-width:1120px) {
  body.woocommerce .collection-content ul.products,
  body.woocommerce-page .collection-content ul.products {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:72px 20px !important;
  }
  .vault-page ul.products.vault-product-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:64px 20px !important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .buttersoft-product-card__heading h2 { font-size:29px; }
}

@media (max-width:520px) {
  .collection-page .collection-hero__copy { backdrop-filter:none; }
  .collection-intro { padding:52px 0 42px; }
  .collection-toolbar { align-items:flex-end; gap:12px; }
  .collection-ordering select { max-width:154px; font-size:8px; }
  .buttersoft-product-card__quick-link { min-height:34px; padding:0 10px; font-size:7px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .buttersoft-product-card__heading h2 { font-size:19px; }
  .buttersoft-product-card__heading { grid-template-columns:1fr; gap:7px; }
  .buttersoft-product-card__price { margin:0; }
  .buttersoft-product-card__meta { display:none; }
  .complete-set { margin-inline:0; }
}

/* WCAG refinements for modern section surfaces. */
.collection-page .collection-hero__copy {
  background:#f9f4ed;
  backdrop-filter:none;
}
.buttersoft-product-card__collection { color:#6c4c3f; }
.woocommerce-tabs ul.tabs li a { color:#514a44 !important; }
.woocommerce-tabs ul.tabs li.active a { color:#1f1b18 !important; }
.complete-set__card .button--light {
  border-color:var(--ink) !important;
  background:transparent !important;
  color:var(--ink) !important;
}
.vault-page__hero-copy {
  width:min(calc(100% - 32px),680px);
  margin:0 16px 24px;
  padding:24px;
  background:#211c19;
  color:#fffaf2;
}
.vault-page__hero-copy .eyebrow,
.vault-page__hero-copy h1,
.vault-page__hero-copy > p,
.vault-page__hero-copy .text-link { color:#fffaf2; }
.vault-page__hero-copy h1 i { color:#efb99f; }

@media (min-width:760px) {
  .vault-page__hero-copy {
    width:min(calc(100% - 80px),720px);
    margin:0 0 46px 40px;
    padding:30px 34px 34px;
  }
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.tabs li.active a {
  background:transparent !important;
  color:#1f1b18 !important;
  font-weight:700 !important;
  opacity:1 !important;
}

/* Keep the modern merchandise system consistent on search and homepage sections. */
.search-results-page ul.products,
.home-products ul.products {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:start;
  gap:42px 12px !important;
  width:100%;
  margin:30px 0 0 !important;
  padding:0 !important;
}
.search-results-page ul.products::before,
.search-results-page ul.products::after,
.home-products ul.products::before,
.home-products ul.products::after { display:none !important; content:none !important; }
.search-results-page ul.products > li.product,
.home-products ul.products > li.product {
  clear:none !important;
  float:none !important;
  width:100% !important;
  min-width:0;
  margin:0 !important;
  padding:0 !important;
}
@media (min-width:760px) {
  .search-results-page ul.products,
  .home-products ul.products {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:58px 18px !important;
  }
}
@media (min-width:1120px) {
  .search-results-page ul.products {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:72px 20px !important;
  }
}

/* Interactive cursor states — selectable options never show an unavailable cursor. */
.collection-ordering select,
.product-buybox table.variations select,
.product-buybox table.variations select:enabled,
.product-buybox table.variations select option:enabled,
.product-buybox .reset_variations,
.woocommerce form .form-row select:enabled,
button.single_add_to_cart_button:not(:disabled):not(.disabled):not(.wc-variation-selection-needed) {
  cursor:pointer !important;
}
.product-buybox table.variations select:disabled,
.product-buybox table.variations select option:disabled,
button.single_add_to_cart_button:disabled,
button.single_add_to_cart_button.disabled,
button.single_add_to_cart_button.wc-variation-selection-needed {
  cursor:not-allowed !important;
}


/* Butter 1.2.2 quantity cursor correction. */
.product-buybox form.cart .quantity,
.product-buybox form.cart .quantity input.qty:enabled,
.woocommerce div.product form.cart .quantity input.qty:enabled,
.woocommerce-cart-form .quantity input.qty:enabled {
  cursor:pointer !important;
}
.product-buybox form.cart .quantity input.qty:enabled::-webkit-inner-spin-button,
.product-buybox form.cart .quantity input.qty:enabled::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity input.qty:enabled::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity input.qty:enabled::-webkit-outer-spin-button {
  cursor:pointer !important;
}
.product-buybox form.cart .quantity input.qty:disabled,
.woocommerce div.product form.cart .quantity input.qty:disabled,
.woocommerce-cart-form .quantity input.qty:disabled {
  cursor:not-allowed !important;
}
