/* ===================================================================
 * Adriel Corp — WooCommerce skin (dark, archive palette)
 * =================================================================== */
.woocommerce, .woocommerce-page { color: var(--ac-text); }
.ac-woo .row { max-width: 1200px; }
.woocommerce .woocommerce-result-count { color: var(--ac-text-dim); font-size: 1.4rem; margin-bottom: 3rem; }
.woocommerce .woocommerce-ordering select { height: 5rem; padding: 0 2rem; background: rgba(255,255,255,.05); color: #fff; }
.woocommerce .woocommerce-ordering select option { color: #000; }

/* product grid */
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; margin: 0 0 4rem; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
  width: auto !important; margin: 0 !important; float: none !important; padding: 0 0 2.7rem; background: var(--ac-bg-card);
  border: 1px solid var(--ac-line); display: flex; flex-direction: column; transition: transform .4s ease, border-color .4s ease, box-shadow .4s ease;
}
.woocommerce ul.products li.product:hover { border-color: rgba(121,62,165,.6); transform: translateY(-6px); box-shadow: 0 25px 50px -20px rgba(0,0,0,.8); }
.woocommerce ul.products li.product a img { margin: 0 0 2.4rem; aspect-ratio: 16 / 10; object-fit: cover; transition: filter .5s ease; filter: grayscale(25%); }
.woocommerce ul.products li.product:hover a img { filter: none; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: "Montserrat", sans-serif; font-size: 2rem !important; line-height: 1.35; color: #fff; padding: 0 2.4rem !important; margin: 0 0 1.2rem; }
.woocommerce ul.products li.product .price { display: block; padding: 0 2.4rem; color: #fff !important; font-family: "Montserrat", sans-serif; font-weight: 700; font-size: 2rem !important; margin-bottom: 2rem !important; }
.woocommerce ul.products li.product .button { margin: auto 2.4rem 0 !important; align-self: flex-start; }
.woocommerce ul.products li.product .added_to_cart { padding: 1rem 2.4rem 0; color: var(--ac-accent-light); }
.woocommerce span.onsale { background: var(--ac-accent); border-radius: 0; min-height: auto; line-height: 1; padding: .8rem 1.2rem; top: 1.2rem; left: 1.2rem; }

/* buttons */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .wc-block-components-button:not(.is-link) {
  background: var(--ac-accent) !important; color: #fff !important; border: .2rem solid var(--ac-accent) !important; border-radius: 0 !important;
  font-family: "Nunito Sans", sans-serif; font-weight: 700; font-size: 1.2rem !important; text-transform: uppercase; letter-spacing: .3rem;
  height: auto !important; line-height: 1.4 !important; padding: 1.6rem 2.6rem !important; transition: all .3s ease;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .wc-block-components-button:not(.is-link):hover {
  background: var(--ac-accent-hover) !important; border-color: var(--ac-accent-hover) !important; color: #fff !important;
}
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { opacity: .5; }

/* single product */
.woocommerce div.product { color: var(--ac-text); }
.woocommerce div.product div.images img { border: 1px solid var(--ac-line); }
.woocommerce div.product .product_title { font-size: 3.6rem; margin-top: 0; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: #fff; font-family: "Montserrat", sans-serif; font-weight: 700; font-size: 3rem; }
.woocommerce div.product .woocommerce-product-details__short-description { font-size: 1.8rem; line-height: 1.8; color: rgba(255,255,255,.75); }
.woocommerce div.product form.cart { margin: 3rem 0; display: flex; gap: 1.2rem; align-items: stretch; }
.woocommerce div.product form.cart .button { margin: 0; }
.woocommerce .quantity .qty { width: 8rem; height: auto; padding: 1.2rem; text-align: center; background: rgba(255,255,255,.05); color: #fff; border: 1px solid var(--ac-line); }
.woocommerce div.product .product_meta { font-size: 1.4rem; color: var(--ac-text-dim); border-top: 1px solid var(--ac-line); padding-top: 2rem; margin-top: 2rem; }
.woocommerce div.product .product_meta a { color: var(--ac-accent-light); }
.woocommerce div.product .woocommerce-tabs { margin-top: 6rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; margin: 0 0 3rem; border-bottom: 1px solid var(--ac-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: transparent; border: 0; border-radius: 0; margin: 0 2rem 0 0; padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--ac-text-dim); font-family: "Montserrat", sans-serif; padding: 1.2rem 0; border-bottom: 3px solid transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #fff; border-bottom-color: var(--ac-accent); }
.woocommerce div.product .woocommerce-tabs .panel { font-size: 1.75rem; line-height: 1.85; }
.woocommerce div.product .woocommerce-tabs .panel h2:first-child { display: none; }
.woocommerce div.product .woocommerce-tabs .panel h2, .woocommerce div.product .woocommerce-tabs .panel h3 { color: #fff; }
.woocommerce div.product .woocommerce-tabs .panel ul { margin-left: 2rem; }
.related.products > h2, .upsells.products > h2 { font-size: 3rem; margin: 8rem 0 3.6rem; }
.ac-product-trust { margin-top: 2rem !important; }

/* tables: cart, checkout, account */
.woocommerce table.shop_table { border: 1px solid var(--ac-line); border-radius: 0; border-collapse: collapse; color: var(--ac-text); }
.woocommerce table.shop_table th { color: #fff; font-family: "Montserrat", sans-serif; background: rgba(121,62,165,.18); }
.woocommerce table.shop_table td, .woocommerce table.shop_table th { border-top: 1px solid var(--ac-line) !important; padding: 1.6rem 1.8rem; }
.woocommerce table.shop_table td a { color: #fff; }
.woocommerce a.remove { color: #ff8a8a !important; }
.woocommerce a.remove:hover { background: #e05c5c; color: #fff !important; }
.woocommerce .cart-collaterals .cart_totals h2, .woocommerce-checkout h3, .woocommerce-account h2 { font-size: 2.4rem; }
.woocommerce .coupon .input-text { width: 18rem !important; height: auto; padding: 1.4rem 1.6rem !important; background: rgba(255,255,255,.05); color: #fff; border: 1px solid var(--ac-line); }

/* forms */
.woocommerce form .form-row label { color: #fff; font-size: 1.4rem; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
  background: rgba(255,255,255,.05) !important; color: #fff !important; border: 1px solid var(--ac-line) !important; border-radius: 0 !important;
  height: auto; min-height: 5.4rem; padding: 1.2rem 1.6rem; font-size: 1.5rem; line-height: 1.6;
}
.select2-container--default .select2-selection--single .select2-selection__rendered { color: #fff; line-height: 3rem; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 5.2rem; }
.select2-dropdown { background: #1b1b1b; color: #fff; border-color: var(--ac-line); }
.select2-results__option--highlighted { background: var(--ac-accent) !important; }
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: #e05c5c !important; }
.woocommerce-checkout #payment { background: var(--ac-bg-card); border-radius: 0; border: 1px solid var(--ac-line); }
.woocommerce-checkout #payment ul.payment_methods { border-bottom-color: var(--ac-line); }
.woocommerce-checkout #payment div.payment_box { background: rgba(121,62,165,.18); color: var(--ac-text); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: rgba(121,62,165,.18); }
.woocommerce-checkout #payment label { color: #fff; }
.ac-checkout-note { font-size: 1.4rem; color: var(--ac-text-dim); }
.woocommerce-privacy-policy-text { font-size: 1.4rem; }

/* notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner {
  background: var(--ac-bg-card) !important; color: #fff !important; border-top: 3px solid var(--ac-accent) !important; border-radius: 0;
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--ac-accent-light); }
.woocommerce-error { border-top-color: #e05c5c !important; }
.woocommerce-message a.button, .woocommerce-info a.button { float: right; }
.woocommerce-store-notice, p.demo_store { background: var(--ac-accent-deep); }

/* account */
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border: 1px solid var(--ac-line); }
.woocommerce-MyAccount-navigation li { margin: 0; padding: 0; border-bottom: 1px solid var(--ac-line); }
.woocommerce-MyAccount-navigation li a { display: block; padding: 1.4rem 2rem; color: var(--ac-text); }
.woocommerce-MyAccount-navigation li.is-active a, .woocommerce-MyAccount-navigation li a:hover { background: var(--ac-accent); color: #fff; }

/* breadcrumbs from woo (hidden — hero has breadcrumbs) */
.woocommerce .woocommerce-breadcrumb { display: none; }
.ac-shop-note { margin-top: 6rem; }

@media only screen and (max-width: 1000px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
}
@media only screen and (max-width: 600px) {
  .woocommerce ul.products { grid-template-columns: 1fr; }
  .woocommerce div.product form.cart { flex-direction: column; }
  .woocommerce .coupon .input-text { width: 100% !important; }
}

/* tabs reset (beats WooCommerce defaults) */
.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: transparent !important; border: 0 !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #fff !important; }
/* product description uses the article typography */
.woocommerce-Tabs-panel { color: var(--ac-text); }
.woocommerce-Tabs-panel p.lead { color: rgba(255,255,255,.82); font-size: 2.1rem; line-height: 1.65; }
.woocommerce-Tabs-panel h2 { font-size: 2.8rem; margin: 4.8rem 0 2rem; }
.woocommerce-Tabs-panel h4 { margin: 0 0 1rem; }
.woocommerce-Tabs-panel a:not(.btn) { color: var(--ac-accent-light); text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-Tabs-panel a:not(.btn):hover { color: #fff; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 900px; }
