/* WooCommerce-only BERTA surfaces. Homepage and editorial pages are unaffected. */
.berta-store { --store-line:rgba(239,227,202,.23); --store-muted:#b9ad99; --store-champagne:#c7aa83; background:#090908; color:#efe3ca; }
.berta-collection { min-height:100vh; }
.berta-store :where(a,button,input,select):focus-visible,
.woocommerce-cart .berta-page :where(a,button,input,select):focus-visible,
.woocommerce-checkout .berta-page :where(a,button,input,select):focus-visible { outline:2px solid #fff7e7; outline-offset:3px; }
.berta-store-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,48%); min-height:clamp(22rem,38vw,36rem); overflow:hidden; border-bottom:1px solid var(--store-line); background:#11100e; }
.berta-store-hero__copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(4rem,7vw,8rem) clamp(1.25rem,5vw,6rem); }
.berta-store-eyebrow { color:var(--store-champagne); font-size:.67rem; letter-spacing:.22em; text-transform:uppercase; }
.berta-store-hero h1 { margin:.7rem 0 1.5rem; font-family:var(--berta-font-display,Georgia,serif); font-size:clamp(3rem,7vw,7rem); font-weight:400; line-height:1; }
.berta-store-hero__copy>p:last-child { max-width:30ch; color:#d8cbb4; font-size:clamp(.95rem,1.2vw,1.18rem); }
.berta-store-hero>img { width:100%; height:100%; max-height:38rem; object-fit:cover; object-position:50% 32%; filter:saturate(.68); }
.berta-store-filters { padding:1.5rem max(1.25rem,calc((100vw - 90rem)/2)); border-bottom:1px solid var(--store-line); }
.berta-store-filters form { display:grid; grid-template-columns:minmax(10rem,1.4fr) repeat(2,minmax(8rem,.8fr)) minmax(10rem,1.1fr) auto auto auto; gap:.8rem; align-items:end; }
.berta-store-filters label { display:grid; gap:.45rem; min-width:0; color:var(--store-muted); font-size:.65rem; letter-spacing:.1em; text-transform:uppercase; }
.berta-store-filters :where(select,input[type="number"]) { width:100%; min-height:2.9rem; padding:.6rem .8rem; border:1px solid var(--store-line); border-radius:0; background:#141311; color:#efe3ca; font:inherit; font-size:.85rem; }
.berta-store-filters__check { display:flex!important; align-items:center; min-height:2.9rem; gap:.45rem!important; white-space:nowrap; }
.berta-store-filters__check input { accent-color:#c7aa83; width:1rem; height:1rem; }
.berta-store-filters button { min-height:2.9rem; padding:.5rem 1rem; border:1px solid #efe3ca; background:#efe3ca; color:#11100e; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.berta-store-filters__reset { display:grid; min-height:2.9rem; place-items:center; color:#efe3ca; font-size:.7rem; text-decoration:underline; text-underline-offset:.3em; }
.berta-store-listing { width:min(calc(100% - 2.5rem),90rem); margin-inline:auto; padding-block:2rem 6rem; }
.berta-store-listing__meta { margin-bottom:1.5rem; color:var(--store-muted); font-size:.75rem; letter-spacing:.06em; }
.berta-store-listing__meta .woocommerce-result-count { float:none; margin:0; }
.berta-store-listing ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2rem 1.1rem; margin:0; padding:0; list-style:none; }
.berta-store-listing ul.products::before,.berta-store-listing ul.products::after { display:none; }
.berta-store-listing ul.products li.product { float:none!important; width:auto!important; margin:0!important; padding:0; min-width:0; }
.berta-store-card__image { overflow:hidden; background:#e8e1d7; }
.berta-store-card__image a { display:block; aspect-ratio:3/4; }
.berta-store-card__image img { display:block; width:100%!important; height:100%!important; margin:0!important; object-fit:cover; transition:transform .45s ease; }
.berta-store-card__image a:hover img { transform:scale(1.035); }
.berta-store-card__details { display:grid; align-content:start; gap:.35rem; padding:.8rem 0 0; }
.berta-store-card__details>a:first-child { color:#efe3ca; text-decoration:none; }
.berta-store-card__details h2 { margin:0!important; padding:0!important; color:#efe3ca; font-family:var(--berta-font-display,Georgia,serif); font-size:clamp(1.05rem,1.5vw,1.35rem)!important; font-weight:400; line-height:1.25; }
.berta-store-card__details .price { margin:0!important; color:#c7aa83!important; font-size:.85rem!important; direction:ltr; unicode-bidi:plaintext; }
.berta-store-card__details .button { justify-self:start; margin-top:.5rem!important; padding:.5rem 0!important; border:0; border-bottom:1px solid #c7aa83; border-radius:0!important; background:transparent!important; color:#efe3ca!important; font-size:.68rem!important; font-weight:500!important; letter-spacing:.1em; text-transform:uppercase; }
.berta-store-card__details .added_to_cart { color:#c7aa83; font-size:.75rem; }
.berta-store .woocommerce-pagination { margin-top:3rem; }
.berta-store .woocommerce-pagination ul.page-numbers { display:flex; gap:.5rem; justify-content:center; border:0; }
.berta-store .woocommerce-pagination ul.page-numbers li { border:0; }
.berta-store .woocommerce-pagination .page-numbers :where(a,span) { min-width:2.6rem; min-height:2.6rem; display:grid; place-items:center; border:1px solid var(--store-line); background:transparent; color:#efe3ca; }
.berta-store .woocommerce-pagination .page-numbers .current { border-color:#c7aa83; background:#c7aa83; color:#090908; }
.berta-store .woocommerce-info,.berta-store .woocommerce-message,.berta-store .woocommerce-error { border-color:#c7aa83; background:#171513; color:#efe3ca; }
.berta-product-detail { padding-bottom:6rem; }
.berta-product-detail__top { display:flex; justify-content:space-between; gap:1rem; align-items:center; width:min(calc(100% - 2.5rem),90rem); margin:0 auto; padding:2rem 0 1.5rem; color:var(--store-muted); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; }
.berta-product-detail__top .woocommerce-breadcrumb { margin:0; color:var(--store-muted); }
.berta-product-detail__top a { color:#efe3ca; text-decoration:none; }
.berta-product-detail>.product { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr); column-gap:clamp(2rem,6vw,7rem); row-gap:4rem; width:min(calc(100% - 2.5rem),90rem); margin-inline:auto; }
.berta-product-detail .woocommerce-product-gallery { float:none!important; width:100%!important; margin:0!important; }
.berta-product-detail .woocommerce-product-gallery__image { background:#e9e1d5; }
.berta-product-detail .woocommerce-product-gallery img { display:block; width:100%; height:auto; }
.berta-product-detail .flex-control-thumbs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; margin-top:.75rem!important; }
.berta-product-detail .flex-control-thumbs li { float:none!important; width:auto!important; }
.berta-product-detail .summary { float:none!important; width:auto!important; margin:0!important; padding:clamp(1rem,3vw,3rem) 0; }
.berta-product-detail .product_title { margin:0 0 1rem; color:#efe3ca; font-family:var(--berta-font-display,Georgia,serif); font-size:clamp(2.25rem,4.5vw,5rem); font-weight:400; line-height:1.06; }
.berta-product-detail .summary .price { color:#c7aa83!important; font-size:1.25rem!important; direction:ltr; unicode-bidi:plaintext; }
.berta-product-detail .summary .woocommerce-product-details__short-description { margin:1.5rem 0; color:#d8cbb4; }
.berta-product-detail .summary :where(.stock,.product_meta) { color:var(--store-muted); font-size:.8rem; }
.berta-product-detail .summary form.cart { display:flex; flex-wrap:wrap; gap:.8rem; align-items:end; margin-top:2rem; }
.berta-product-detail .summary form.variations_form { display:block; }
.berta-product-detail .variations { width:100%; margin-bottom:1rem!important; }
.berta-product-detail .variations td { display:block; width:100%; padding:0 0 .6rem!important; background:transparent; }
.berta-product-detail .variations label { color:#efe3ca; font-size:.8rem; font-weight:500; }
.berta-product-detail :where(select,input.qty) { min-height:3rem; padding:.5rem .8rem; border:1px solid var(--store-line); border-radius:0; background:#141311; color:#efe3ca; }
.berta-product-detail .quantity .qty { width:5rem; }
.berta-product-detail .single_add_to_cart_button { min-height:3rem; padding:.8rem 2rem!important; border:1px solid #efe3ca!important; border-radius:0!important; background:#efe3ca!important; color:#090908!important; font-size:.75rem!important; letter-spacing:.1em; text-transform:uppercase; }
.berta-product-detail .single_add_to_cart_button.disabled { opacity:.45; }
.berta-product-detail :where(.woocommerce-tabs,.related,.upsells) { grid-column:1/-1; }
.berta-product-detail .woocommerce-tabs { border-top:1px solid var(--store-line); padding-top:2rem; }
.berta-product-detail .woocommerce-tabs ul.tabs { padding:0; border:0; background:transparent; }
.berta-product-detail .woocommerce-tabs ul.tabs::before,.berta-product-detail .woocommerce-tabs ul.tabs li::before,.berta-product-detail .woocommerce-tabs ul.tabs li::after { display:none; }
.berta-product-detail .woocommerce-tabs ul.tabs li { margin:0 1.25rem 0 0; padding:.2rem 0; border:0; border-bottom:1px solid transparent; border-radius:0; background:transparent; }
.berta-product-detail .woocommerce-tabs ul.tabs li.active { border-color:#c7aa83; background:transparent; }
.berta-product-detail .woocommerce-tabs ul.tabs li a { color:#efe3ca; font-weight:500; }
.berta-product-detail :where(.related,.upsells)>h2 { font-family:var(--berta-font-display,Georgia,serif); font-size:2rem; font-weight:400; }
.berta-product-detail :where(.related,.upsells) ul.products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; padding:0; }
.berta-product-detail :where(.related,.upsells) li.product { float:none!important; width:auto!important; margin:0!important; }
.berta-product-detail :where(.related,.upsells) li.product>a { color:#efe3ca; }
/* Native WooCommerce Cart and Checkout Blocks keep their saved page content and behavior. */
.woocommerce-cart .berta-page,.woocommerce-checkout .berta-page { background:#090908; color:#efe3ca; }
.woocommerce-cart .berta-page__article,.woocommerce-checkout .berta-page__article { width:min(calc(100% - 2.5rem),90rem); max-width:none; }
.woocommerce-cart .berta-page__content,.woocommerce-checkout .berta-page__content { max-width:none; }
.woocommerce-cart .wc-block-cart,.woocommerce-checkout .wc-block-checkout { color:#efe3ca; font-family:var(--berta-font-body,"Segoe UI",sans-serif); }
.woocommerce-cart .wc-block-components-main,.woocommerce-checkout .wc-block-components-main { padding-right:clamp(1rem,4vw,4rem); }
.woocommerce-cart :where(.wc-block-cart__sidebar,.wc-block-components-sidebar),.woocommerce-checkout .wc-block-components-sidebar { padding:1.5rem!important; border:1px solid rgba(239,227,202,.23); background:#141311; color:#efe3ca; }
.woocommerce-cart :where(.wc-block-components-title,.wc-block-components-product-name,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value,.wc-block-cart__empty-cart__title),
.woocommerce-checkout :where(.wc-block-components-title,.wc-block-components-product-name,.wc-block-components-totals-item__label,.wc-block-components-totals-item__value) { color:#efe3ca!important; }
.woocommerce-cart .wc-block-cart__empty-cart__title,.woocommerce-cart .wc-block-components-title,.woocommerce-checkout .wc-block-components-title { font-family:var(--berta-font-display,Georgia,serif); font-weight:400; }
.woocommerce-cart :where(.wc-block-components-product-metadata,.wc-block-components-product-price,.wc-block-components-totals-item__description),.woocommerce-checkout :where(.wc-block-components-product-metadata,.wc-block-components-product-price,.wc-block-components-totals-item__description) { color:#b9ad99; }
.woocommerce-cart :where(.wc-block-components-button,.wc-block-cart__submit-button),.woocommerce-checkout :where(.wc-block-components-button,.wc-block-components-checkout-place-order-button) { min-height:3.25rem; border:1px solid #efe3ca; border-radius:0; background:#efe3ca; color:#090908!important; font-weight:500; letter-spacing:.06em; text-transform:uppercase; }
.woocommerce-cart :where(.wc-block-components-button,.wc-block-cart__submit-button):hover,.woocommerce-checkout :where(.wc-block-components-button,.wc-block-components-checkout-place-order-button):hover { background:#c7aa83; border-color:#c7aa83; }
.woocommerce-cart :where(.wc-block-components-text-input input,.wc-block-components-quantity-selector),.woocommerce-checkout :where(.wc-block-components-text-input input,.wc-block-components-text-input select,.wc-block-components-combobox-control input,.wc-block-components-form .wc-block-components-text-input input) { border:1px solid rgba(239,227,202,.3)!important; border-radius:0!important; background:#141311!important; color:#efe3ca!important; }
.woocommerce-cart :where(.wc-block-components-text-input label,.wc-block-components-quantity-selector input),.woocommerce-checkout :where(.wc-block-components-text-input label,.wc-block-components-checkbox label,.wc-block-components-radio-control__label) { color:#efe3ca!important; }
.woocommerce-cart :where(.wc-block-components-order-summary-item,.wc-block-cart-items),.woocommerce-checkout :where(.wc-block-components-order-summary-item,.wc-block-components-checkout-step) { border-color:rgba(239,227,202,.2)!important; }
.woocommerce-cart .wc-block-components-product-name,.woocommerce-checkout .wc-block-components-product-name { font-family:var(--berta-font-display,Georgia,serif); font-size:1.15rem; text-decoration:none; }
.woocommerce-cart .wc-block-cart__empty-cart__title::before { display:none; }
/* Woo Blocks positions this hidden autofill field far to the right, causing page-wide horizontal scrolling. */
.woocommerce-checkout .wc-block-components-address-form__address_2-hidden-input { left:0!important; right:auto!important; width:1px!important; height:1px!important; padding:0!important; border:0!important; }
.woocommerce-checkout .wc-block-components-address-card__edit { flex:0 0 auto; min-width:2.5rem; margin-inline-start:auto!important; margin-inline-end:0!important; white-space:nowrap; }
html[dir="rtl"] .berta-store-filters label { letter-spacing:0; text-transform:none; text-align:right; }
html[dir="rtl"] .berta-store-hero__copy { align-items:flex-start; text-align:right; }
html[dir="rtl"] .berta-store :where(.price,.woocommerce-Price-amount) { direction:ltr; unicode-bidi:embed; }
html[dir="rtl"] .woocommerce-cart .wc-block-cart,html[dir="rtl"] .woocommerce-checkout .wc-block-checkout { text-align:right; }
@media (max-width:1100px) { .berta-store-filters form { grid-template-columns:repeat(4,minmax(0,1fr)); } .berta-store-listing ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:760px) { .berta-store-hero { grid-template-columns:1fr; } .berta-store-hero__copy { min-height:15rem; padding:4rem 1.25rem 2rem; } .berta-store-hero>img { height:16rem; object-position:50% 28%; } .berta-store-filters form { grid-template-columns:repeat(2,minmax(0,1fr)); } .berta-store-listing ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); } .berta-product-detail>.product { grid-template-columns:1fr; gap:1.5rem; } .berta-product-detail .summary { padding:0; } .berta-product-detail :where(.related,.upsells) ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); } .woocommerce-cart .wc-block-components-main,.woocommerce-checkout .wc-block-components-main { padding-right:0; } }
@media (max-width:520px) { .berta-store-filters form { grid-template-columns:1fr 1fr; gap:.7rem; } .berta-store-filters label:first-child,.berta-store-filters label:nth-child(4) { grid-column:1/-1; } .berta-store-filters__check { grid-column:1/-1; } .berta-store-filters button { grid-column:1/2; } .berta-store-listing ul.products { grid-template-columns:1fr 1fr; gap:1.5rem .65rem; } .berta-store-card__details h2 { font-size:.94rem!important; } .berta-store-card__details .button { font-size:.6rem!important; } .berta-product-detail__top { align-items:flex-start; flex-direction:column; } .berta-product-detail :where(.related,.upsells) ul.products { grid-template-columns:1fr 1fr; } .woocommerce-cart .berta-page__article,.woocommerce-checkout .berta-page__article { width:min(calc(100% - 2rem),90rem); } }
@media (prefers-reduced-motion:reduce) { .berta-store-card__image img { transition:none; } }
