/*
 * Shop, product, search and account pages (loaded on WooCommerce pages only).
 * Colours come from the theme.json palette; radii and gaps from settings.custom.
 */

/* Collection hero (Shopify collection-hero: eyebrow, title, description). */
.bih-collection-hero { text-align: center; }
.bih-collection-hero .wc-block-breadcrumbs,
.bih-collection-hero .woocommerce-breadcrumb { justify-content: center; text-align: center; }
.bih-collection-hero__eyebrow { margin: 0; letter-spacing: 0.08em; text-transform: uppercase; opacity: 0.8; }
.bih-collection-hero .wp-block-query-title { margin: 0; }
.bih-collection-hero .wp-block-term-description { max-width: 720px; margin-inline: auto; }
.bih-search-results__form { max-width: 560px; margin-inline: auto; }
.bih-search-results__form .wp-block-search__input { border-radius: var(--wp--custom--radius--input); min-height: 44px; }
.bih-search-results__form .wp-block-search__button { border-radius: var(--wp--custom--radius--button); }

/* Toolbar: horizontal filters (Shopify filter_type "horizontal"), result count and sorting. */
.bih-shop-toolbar { gap: 16px 32px; margin-bottom: var(--wp--custom--grid-gap); padding-bottom: 16px; border-bottom: 1px solid color-mix(in srgb, currentColor 15%, transparent); }
.bih-shop-meta { gap: 16px; margin-inline-start: auto; }
.bih-shop-meta .woocommerce-result-count { margin: 0; font-size: var(--wp--preset--font-size--small); }
.bih-shop-meta .woocommerce-ordering { margin: 0; }
.bih-shop-meta .woocommerce-ordering select,
.bih-shop .orderby { min-height: 44px; padding: 0.4rem 2rem 0.4rem 0.75rem; border: 1px solid currentColor; border-radius: var(--wp--custom--radius--input); background-color: var(--wp--preset--color--scheme-2-bg); color: var(--wp--preset--color--scheme-2-text); font: inherit; }
.bih-shop-filters { flex: 1 1 32rem; min-width: 0; }
.bih-shop-filters h3 { margin: 0 0 8px; }
.bih-shop-filters .wc-block-product-filters__open-overlay { min-height: 44px; border: 1px solid currentColor; border-radius: var(--wp--custom--radius--button); padding: 0.4rem 0.9rem; }
@media (min-width: 600px) {
	.bih-shop-filters .wc-block-product-filters__overlay-content { flex-direction: row; flex-wrap: wrap; align-items: flex-start; gap: 16px 40px; }
	.bih-shop-filters .wp-block-woocommerce-product-filter-price { flex: 0 1 18rem; min-width: 14rem; }
	.bih-shop-filters .wp-block-woocommerce-product-filter-attribute { flex: 0 1 14rem; }
	.bih-shop-filters .wp-block-woocommerce-product-filter-active { flex: 1 1 100%; }
}
.bih-shop-filters .wc-block-product-filter-price-slider__content input[type="text"] { border-radius: var(--wp--custom--radius--input); }

/* Product grid and cards (Shopify card: portrait image, left-aligned title and price). */
.bih-shop-grid .wc-block-product-template,
.bih-related .wc-block-product-template { gap: var(--wp--custom--grid-gap); }
.bih-shop-grid .wc-block-product,
.bih-related .wc-block-product { text-align: start; }
.bih-product-card-part { height: 100%; }
.bih-product-card { height: 100%; }
.bih-product-card .wc-block-components-product-image,
.bih-product-card .wc-block-components-product-image img { border-radius: var(--wp--custom--radius--media); overflow: hidden; }
/* Heading font (Poppins 700), as Shopify's card__heading uses the .h5 heading style. */
.bih-product-card__title { margin: 0; line-height: 1.4; overflow-wrap: anywhere; }
.bih-product-card__title a { color: inherit; text-decoration: none; }
.bih-product-card__title a:hover,
.bih-product-card__title a:focus-visible { text-decoration: underline; }
.bih-product-card__price { margin: 0; }
.bih-pagination { margin-top: 32px; gap: 8px; }
.bih-pagination a,
.bih-pagination .current { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border-radius: var(--wp--custom--radius--button); }
.bih-pagination .current { background: var(--wp--preset--color--scheme-1-button); color: var(--wp--preset--color--scheme-1-button-label); }

/* Product page: gallery left, sticky summary right (Shopify enable_sticky_info). */
.bih-product-main { margin-top: 16px; }
.bih-product-media,
.bih-product-summary { min-width: 0; }
.bih-product-gallery img { border-radius: var(--wp--custom--radius--media); }
.bih-product-summary > * + * { margin-block-start: 16px; }
.bih-product-summary .wp-block-post-title { margin: 0; }
@media (min-width: 782px) {
	.bih-product-summary { position: sticky; top: 96px; align-self: flex-start; }
}
.bih-main-cart form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; }
.bih-main-cart .quantity input.qty { width: 5rem; min-height: 44px; border: 1px solid currentColor; border-radius: var(--wp--custom--radius--input); font: inherit; text-align: center; }
.bih-main-cart .single_add_to_cart_button { flex: 1 1 12rem; min-height: 44px; border-radius: var(--wp--custom--radius--button); font-weight: 700; }
.bih-product-badges { padding: 16px; border: 1px solid color-mix(in srgb, currentColor 15%, transparent); border-radius: var(--wp--custom--radius--card); }
.bih-product-badge p { margin: 0; }
.bih-product-details { margin-top: 48px; }
.bih-product-details .wp-block-accordion-item { border-bottom: 1px solid color-mix(in srgb, currentColor 15%, transparent); }
.bih-product-details .wp-block-accordion-heading { margin: 0; font-size: var(--wp--preset--font-size--medium); }
.bih-product-details .wp-block-accordion-heading__toggle { min-height: 44px; padding: 12px 0; }
.bih-product-details .wp-block-accordion-heading__toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

/* Breadcrumbs and notices. */
.bih-shop .wc-block-breadcrumbs,
.bih-product-page .wc-block-breadcrumbs { overflow-wrap: anywhere; }
.wc-block-components-notice-banner { border-radius: var(--wp--custom--radius--card); }

/* Account pages: WooCommerce's own forms, in the theme's tokens. */
.woocommerce-account .woocommerce { max-width: 1400px; margin-inline: auto; }
.woocommerce-account .woocommerce form .input-text,
.woocommerce-account .woocommerce form select { min-height: 44px; padding: 0.5rem 0.75rem; border: 1px solid currentColor; border-radius: var(--wp--custom--radius--input); background: var(--wp--preset--color--scheme-2-bg); color: var(--wp--preset--color--scheme-2-text); font: inherit; }
.woocommerce-account .woocommerce .button,
.woocommerce-account .woocommerce button[type="submit"] { min-height: 44px; padding: 0.6rem 1.5rem; border: 0; border-radius: var(--wp--custom--radius--button); background: var(--wp--preset--color--scheme-1-button); color: var(--wp--preset--color--scheme-1-button-label); font-weight: 700; cursor: pointer; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: inline-flex; min-height: 44px; align-items: center; padding: 0 1rem; border: 1px solid color-mix(in srgb, currentColor 20%, transparent); border-radius: var(--wp--custom--radius--pill); color: inherit; text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: var(--wp--preset--color--scheme-1-button); color: var(--wp--preset--color--scheme-1-button-label); }

/* Cart, checkout and order confirmation (WooCommerce blocks), in the theme's tokens. */
.bih-cart-page__title { margin-top: 0; }
.bih-cart-empty .wp-block-heading { margin: 0; }
.bih-cart-page .wc-block-cart,
.bih-checkout-page .wc-block-checkout,
.bih-order-confirmation { font-family: var(--wp--preset--font-family--inter); }
.bih-cart-page .wc-block-components-title,
.bih-cart-page .wc-block-cart__totals-title,
.bih-checkout-page .wc-block-components-title,
.bih-checkout-page .wc-block-components-checkout-step__title,
.bih-order-confirmation .wp-block-heading,
.bih-order-confirmation .wc-block-order-confirmation-status h1 { font-family: var(--wp--preset--font-family--poppins); font-weight: 700; }
.bih-cart-page .wc-block-components-text-input input,
.bih-checkout-page .wc-block-components-text-input input,
.bih-checkout-page .wc-blocks-components-select .wc-blocks-components-select__select,
.bih-checkout-page .wc-block-components-textarea,
.bih-cart-page .wc-block-components-quantity-selector,
.bih-checkout-page .wc-block-components-combobox .wc-block-components-combobox-control input { border-radius: var(--wp--custom--radius--input); }
.bih-cart-page .wc-block-components-button:not(.is-link),
.bih-checkout-page .wc-block-components-button:not(.is-link),
.bih-order-confirmation .wp-element-button { border-radius: var(--wp--custom--radius--button); background-color: var(--wp--preset--color--scheme-2-button); color: var(--wp--preset--color--scheme-2-button-label); font-weight: 700; }
.bih-cart-page .wc-block-components-button:not(.is-link):focus-visible,
.bih-checkout-page .wc-block-components-button:not(.is-link):focus-visible { outline: 2px solid var(--wp--preset--color--scheme-2-text); outline-offset: 2px; }
.bih-checkout-page .wc-block-components-radio-control--highlight-checked,
.bih-checkout-page .wc-block-components-radio-control-accordion-option,
.bih-checkout-page .wc-block-checkout__payment-method .wc-block-components-radio-control__option { border-radius: var(--wp--custom--radius--card); }
.bih-cart-page .wp-block-woocommerce-cart-totals-block { padding: 24px; border-radius: var(--wp--custom--radius--card); background: var(--wp--preset--color--scheme-1-bg); color: var(--wp--preset--color--scheme-1-text); box-sizing: border-box; }
.bih-cart-page .wc-block-cart-item__image img,
.bih-checkout-page .wc-block-components-order-summary-item__image img { border-radius: var(--wp--custom--radius--media); }
.bih-checkout-page .wc-block-components-totals-fees .wc-block-components-totals-item__value,
.bih-cart-page .wc-block-components-totals-fees .wc-block-components-totals-item__value { font-weight: 700; }
@media (max-width: 781px) {
	.bih-cart-page .wp-block-woocommerce-cart-totals-block { padding: 16px; }
}
.bih-order-confirmation .wc-block-order-confirmation-summary { padding: 16px 24px; border-radius: var(--wp--custom--radius--card); background: var(--wp--preset--color--scheme-1-bg); color: var(--wp--preset--color--scheme-1-text); }
.bih-order-confirmation .wc-block-order-confirmation-address-wrapper address { padding: 16px; border-radius: var(--wp--custom--radius--card); }
.bih-checkout-page .wp-block-woocommerce-checkout-order-summary-block { border-radius: var(--wp--custom--radius--card); overflow: hidden; }
.bih-checkout-header .bih-header-inner { gap: 16px; }
/* Product page as on the Shopify storefront (measured at 1440px): 1300px content, image column 50%,
   info column with 40px gutter, 48px title, thumbnails under the main image, description in the column. */
.bih-product-page { --wp--style--global--wide-size: 1300px; }
.bih-product-main { margin-top: 0; }
.bih-product-gallery { display: flex; flex-direction: column; gap: 10px; }
.bih-product-gallery .wc-block-product-gallery-thumbnails { order: 2; width: 100% !important; max-width: none !important; height: auto !important; }
.bih-product-gallery .wc-block-product-gallery-thumbnails__scrollable { flex-direction: row !important; gap: 10px; width: auto !important; height: auto !important; overflow-x: auto; }
.bih-product-gallery .wc-block-product-gallery-thumbnails__thumbnail { flex: 0 0 100px; width: 100px; }
.bih-product-gallery .wc-block-product-gallery-thumbnails img { width: 100px; height: 100px; object-fit: cover; }
.bih-product-gallery img { border-radius: 0; }
.bih-product-summary > * + * { margin-block-start: 0; }
.bih-product-summary .bih-product-title { margin: 0 0 15px; font-size: 48px; line-height: 1.25; letter-spacing: 0.72px; }
.bih-product-summary:has(.wp-block-bih-variation-pills, .bih-variation-pills) .bih-main-price { display: none; }
.bih-product-summary .bih-feature__form { margin-top: 0; }
.bih-product-summary .bih-product-badges { margin-top: 30px; }
.bih-product-description { margin: 25px 0; }
.bih-product-description > :first-child { margin-top: 0; }
@media (max-width: 781px) {
	.bih-product-page { padding-left: 15px !important; padding-right: 15px !important; padding-top: 0 !important; }
	.bih-product-summary .bih-product-title { font-size: 28px; }
}

/* Shop grid cards with the Shopify card measurements (as on the home page, see storefront.css). */
.bih-product-card .wc-block-components-product-image { background: #fff; border-radius: 8px; }
.bih-product-card .wc-block-components-product-image img { border-radius: 0; }
.bih-product-card .wc-block-components-product-sale-badge {
	inset: auto auto 10px 10px !important; padding: 5px 13px 6px; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 4px;
	background: #000; color: #fff; font-size: 12px; font-weight: 400; line-height: 1; letter-spacing: 1px; text-transform: none;
}
.bih-product-card__title { margin-top: 9px !important; font-family: var(--wp--preset--font-family--poppins); font-size: 15.6px !important; font-weight: 700; line-height: 1.25; letter-spacing: 0.72px; color: #1a1a1a; }
.bih-product-card__price { font-size: 16px; font-weight: 700; line-height: 1.4; letter-spacing: 1px; color: #1a1a1a; }
.bih-product-card__price del { margin-right: 10px; font-size: 13px; opacity: 0.75; }
.bih-product-card__price ins { color: #c41e3a; font-weight: 800; text-decoration: none; }
@media (max-width: 749px) {
	.bih-product-card__title { font-size: 14.4px !important; }
	.bih-product-card__price { font-size: 15px; }
}
