/* WooCommerce pages use the same Audio Lounge shell as the main site. */
.alsp-commerce-page .alsp { min-height: 100vh; }
.alsp .alc-detail-hero { padding-top: clamp(55px, 7vw, 100px); padding-bottom: clamp(55px, 7vw, 95px); }
.alsp .alc-detail-hero h1 { font-size: clamp(2.8rem, 5.8vw, 6.3rem); max-width: 1060px; overflow-wrap: break-word; }
.alsp .alc-detail-hero .alc-back { display: block; width: max-content; margin: 0 0 40px; padding: 0; }
.alsp .alc-term-description p { color: inherit; }
.alsp .alc-wc-wrap { background: #191a1b; padding: 75px 7% 95px; }
.alsp .alc-wc-product { color: #f5f2eb; }
.alsp .alc-wc-columns { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: clamp(35px, 6vw, 105px); align-items: start; }
.alsp .alc-wc-visual { min-width: 0; }
.alsp .alc-wc-visual .woocommerce-product-gallery,
.alsp .alc-wc-product div.images { width: 100%; float: none; margin: 0; }
.alsp .alc-wc-visual .woocommerce-product-gallery__wrapper { margin: 0; }
.alsp .alc-wc-visual .woocommerce-product-gallery__image { background: #e9e8e3; }
.alsp .alc-wc-visual .woocommerce-product-gallery__image img { display: block; width: 100%; height: auto; max-height: 630px; object-fit: contain; margin: 0 auto; }
.alsp .alc-wc-visual .woocommerce-product-gallery__image:first-child img { min-height: 310px; }
.alsp .alc-wc-visual .flex-control-thumbs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin: 10px 0 0; padding: 0; list-style: none; }
.alsp .alc-wc-visual .flex-control-thumbs li { float: none; width: auto; background: #e9e8e3; cursor: pointer; }
.alsp .alc-wc-visual .flex-control-thumbs img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; }
.alsp .alc-wc-visual .onsale { position: static; display: inline-block; min-height: 0; min-width: 0; margin: 0 0 10px; padding: 5px 12px; border-radius: 0; background: #d2a329; color: #111; font-size: 12px; }
.alsp .alc-wc-info { min-width: 0; font-size: 17px; line-height: 1.75; }
.alsp .alc-wc-product div.summary { float: none; width: auto; margin: 0; }
.alsp .alc-wc-info p { color: #c9c6be; }
.alsp .alc-wc-info .price { color: #e5c36f; font-size: clamp(1.35rem, 2.1vw, 2rem); margin: 22px 0; }
.alsp .alc-wc-info .price del { color: #a9a49b; opacity: .75; font-size: .75em; }
.alsp .alc-wc-info .price ins { color: #e5c36f; text-decoration: none; }
.alsp .alc-wc-info .woocommerce-product-details__short-description { border-top: 1px solid #48453e; border-bottom: 1px solid #48453e; padding: 25px 0; margin: 22px 0 28px; }
.alsp .alc-wc-info .woocommerce-product-details__short-description p:last-child { margin-bottom: 0; }
.alsp .alc-wc-info .stock { color: #ded5bc; }
.alsp .alc-wc-info .product_meta { border-top: 1px solid #48453e; margin-top: 35px; padding-top: 20px; color: #b5b2aa; font-size: 13px; }
.alsp .alc-wc-info .product_meta > span { display: block; margin-bottom: 7px; }
.alsp .alc-wc-info .product_meta a, .alsp .alc-wc-below a, .alsp .alc-wc-utility a:not(.button) { color: #e5c36f; }
.alsp .alc-wc-enquiry { margin-top: 20px; }
.alsp .alc-wc-info form.cart { margin-top: 25px; display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.alsp .alc-wc-info form.cart .variations { width: 100%; border: 0; margin: 0 0 12px; }
.alsp .alc-wc-info form.cart .variations th, .alsp .alc-wc-info form.cart .variations td { display: block; padding: 7px 0; text-align: left; }
.alsp .alc-wc-info form.cart .single_variation_wrap { width: 100%; }
.alsp .alc-wc-info form.cart .woocommerce-variation-add-to-cart { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.alsp .quantity .qty { width: 75px; min-height: 49px; padding: 10px; border: 1px solid #796b4e; color: #f5f2eb; background: #222325; }
.alsp select, .alsp input:not([type=checkbox]):not([type=radio]):not([type=submit]), .alsp textarea { max-width: 100%; min-height: 44px; border: 1px solid #665c47; border-radius: 0; padding: 9px 11px; background: #222325; color: #f5f2eb; }
.alsp select:focus, .alsp input:focus, .alsp textarea:focus { outline: 2px solid #d2a329; outline-offset: 2px; }
.alsp .button, .alsp button.button, .alsp input.button { display: inline-flex; align-items: center; justify-content: center; border: 1px solid #d2a329; border-radius: 0; background: #d2a329; color: #111 !important; min-height: 49px; padding: 12px 20px; font-size: 12px; letter-spacing: .09em; text-transform: uppercase; font-weight: 700; cursor: pointer; }
.alsp .button:hover, .alsp button.button:hover, .alsp input.button:hover { background: #f1c655; color: #111 !important; }
.alsp .alc-wc-below { margin-top: 75px; border-top: 1px solid #524d43; padding-top: 55px; }
.alsp .alc-wc-below h2, .alsp .alc-wc-utility h2 { font-size: clamp(1.7rem, 3vw, 3rem); letter-spacing: -.03em; }
.alsp .alc-wc-below h3 { font-size: 1.3rem; }
.alsp .alc-wc-below p, .alsp .alc-wc-below li, .alsp .alc-wc-utility p { color: #d0cbc1; }
.alsp .woocommerce-tabs ul.tabs { display: flex; gap: 8px; flex-wrap: wrap; padding: 0; margin: 0 0 28px; border-bottom: 1px solid #554d3e; list-style: none; }
.alsp .woocommerce-tabs ul.tabs::before, .alsp .woocommerce-tabs ul.tabs li::before, .alsp .woocommerce-tabs ul.tabs li::after { display: none; }
.alsp .woocommerce-tabs ul.tabs li { border: 0; border-radius: 0; margin: 0; padding: 0; background: none; }
.alsp .woocommerce-tabs ul.tabs li a { display: block; padding: 14px 20px; color: #d0cbc1; }
.alsp .woocommerce-tabs ul.tabs li.active a { color: #e5c36f; border-bottom: 2px solid #d2a329; }
.alsp .woocommerce-Tabs-panel { max-width: 1000px; padding: 0 0 35px; }
.alsp .woocommerce-product-attributes, .alsp .shop_attributes, .alsp .alc-wc-utility table { border-collapse: collapse; width: 100%; }
.alsp .woocommerce-product-attributes th, .alsp .woocommerce-product-attributes td, .alsp .shop_attributes th, .alsp .shop_attributes td, .alsp .alc-wc-utility table th, .alsp .alc-wc-utility table td { border: 1px solid #554d3e; background: #202123; color: #eee9df; text-align: left; padding: 14px; }
.alsp .related, .alsp .upsells { margin-top: 60px; }
.alsp .related ul.products, .alsp .upsells ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; padding: 0; margin: 25px 0 0; }
.alsp .related ul.products::before, .alsp .related ul.products::after, .alsp .upsells ul.products::before, .alsp .upsells ul.products::after { display: none; }
.alsp .related ul.products li.product, .alsp .upsells ul.products li.product { float: none; width: auto; margin: 0; padding: 0 0 20px; background: #242526; border: 1px solid #49453e; min-width: 0; }
.alsp .related ul.products li.product img, .alsp .upsells ul.products li.product img { width: 100%; aspect-ratio: 1.2; object-fit: contain; background: #e9e8e3; margin: 0 0 18px; }
.alsp .related ul.products li.product .woocommerce-loop-product__title, .alsp .upsells ul.products li.product .woocommerce-loop-product__title { color: #f5f2eb; padding: 0 16px; font-size: 18px; line-height: 1.25; }
.alsp .related ul.products li.product .price, .alsp .upsells ul.products li.product .price { padding: 0 16px; color: #e5c36f; }
.alsp .related ul.products li.product .button, .alsp .upsells ul.products li.product .button { margin-left: 16px; }
.alsp .woocommerce-message, .alsp .woocommerce-info, .alsp .woocommerce-error { border-top: 3px solid #d2a329; background: #2a2b2b; color: #f5f2eb; padding: 18px 22px; margin: 0 0 20px; }
.alsp .woocommerce-message::before, .alsp .woocommerce-info::before { color: #d2a329; }
.alsp .woocommerce-error { border-color: #c76863; }
.alsp .alc-wc-toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; margin-bottom: 28px; color: #b5b2aa; }
.alsp .alc-wc-toolbar .woocommerce-result-count, .alsp .alc-wc-toolbar .woocommerce-ordering { float: none; margin: 0; }
.alsp .alc-wc-pagination ul { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 40px 0 0; }
.alsp .alc-wc-pagination a, .alsp .alc-wc-pagination span { display: grid; place-items: center; min-width: 42px; height: 42px; padding: 0 10px; border: 1px solid #665a41; color: #f5f2eb; }
.alsp .alc-wc-pagination .current { background: #d2a329; color: #111; }
.alsp .alc-wc-utility { min-height: 430px; }
.alsp .alc-wc-utility .woocommerce { color: #f5f2eb; }
.alsp .alc-wc-utility .woocommerce-cart-form, .alsp .alc-wc-utility .cart-collaterals, .alsp .alc-wc-utility .woocommerce-checkout, .alsp .alc-wc-utility .woocommerce-MyAccount-content { background: #202123; padding: clamp(20px, 3vw, 38px); }
.alsp .alc-wc-utility .woocommerce-cart-form { overflow-x: auto; }
.alsp .alc-wc-utility .cart-collaterals { margin-top: 20px; }
.alsp .alc-wc-utility .woocommerce form .form-row input.input-text, .alsp .alc-wc-utility .woocommerce form .form-row textarea { width: 100%; }
.alsp .alc-wc-utility .woocommerce form .form-row label { color: #eee9df; }
.alsp .alc-wc-utility #payment, .alsp .alc-wc-utility #payment div.payment_box { background: #2b2c2d; color: #f5f2eb; }
.alsp .alc-wc-utility .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.alsp .alc-wc-utility .woocommerce-MyAccount-navigation li a { display: block; border: 1px solid #665a41; padding: 11px 15px; }
.alsp .alc-wc-utility .wp-block-woocommerce-cart, .alsp .alc-wc-utility .wp-block-woocommerce-checkout { color: #f5f2eb; }
.alsp .alc-wc-utility .wc-block-cart, .alsp .alc-wc-utility .wc-block-checkout { --wc-blocks-text-color: #f5f2eb; --wc-blocks-background-color: #202123; --wc-blocks-border-color: #665c47; color: #f5f2eb; }
.alsp .alc-wc-utility .wc-block-components-sidebar, .alsp .alc-wc-utility .wc-block-components-main, .alsp .alc-wc-utility .wc-block-components-totals-wrapper { background: #202123; color: #f5f2eb; }
.alsp .alc-wc-utility .wc-block-components-form .wc-block-components-text-input input, .alsp .alc-wc-utility .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input { background: #222325; color: #f5f2eb; }
.alsp .alc-wc-utility .wc-block-components-button:not(.is-link) { background: #d2a329; color: #111; border-radius: 0; }
.alsp .alc-wc-utility .wc-block-components-button:not(.is-link):hover { background: #f1c655; }
.alsp .alc-wc-utility .wc-block-components-product-name, .alsp .alc-wc-utility .wc-block-components-totals-item__label, .alsp .alc-wc-utility .wc-block-components-totals-item__value { color: #f5f2eb; }
@media (max-width: 1050px) { .alsp .related ul.products, .alsp .upsells ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 780px) {
  .alsp .alc-wc-columns { grid-template-columns: 1fr; gap: 35px; }
  .alsp .alc-wc-wrap { padding: 50px 6% 70px; }
  .alsp .alc-wc-below { margin-top: 45px; padding-top: 40px; }
  .alsp .alc-wc-visual .woocommerce-product-gallery__image:first-child img { min-height: 0; }
}
@media (max-width: 520px) {
  .alsp .related ul.products, .alsp .upsells ul.products { grid-template-columns: 1fr; }
  .alsp .alc-wc-visual .flex-control-thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .alsp .alc-wc-info form.cart { display: block; }
  .alsp .alc-wc-info form.cart .button { margin-top: 12px; }
  .alsp .alc-wc-toolbar { display: block; }
  .alsp .alc-wc-toolbar > * { margin-bottom: 15px !important; }
}
