﻿/*
Theme Name:   Améline
Theme URI:    https://ameline.com
Description:  Améline child theme for exclusive jewelry auctions. Built on Solace.
Author:       Améline
Author URI:   https://ameline.com
Template:     solace
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  ameline
*/

/* ═══════════════════════════════════════════════════════════
   CSS VARIABLES
═══════════════════════════════════════════════════════════ */
:root {
    --ameline-gold:      #ecc882;
    --ameline-navy:      #081C40;
    --ameline-red:       #9B2226;
    --ameline-white:     #F8F6F4;
    --ameline-dark-navy: #061530;
    --ameline-bg:        #0a1225;
    --ameline-gold-dim:  rgba(236, 200, 130, 0.15);
}

/* ─── Améline container — sitewide centering for footer and page sections ─── */
.ameline-container {
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}

/* ═══════════════════════════════════════════════════════════
   STICKY HEADER — dark navy on all pages
═══════════════════════════════════════════════════════════ */

/* Hide top announcement row on all pages */
.header--row.top,
.header--row[data-row-id="top"],
.announcement-bar,
.top-bar,
.site-top-bar,
.header-top-bar,
.topbar,
[class*="announcement"],
[class*="top-bar"],
.ameline-homepage .header--row.top,
.ameline-homepage #header-top-bar,
.ameline-homepage .header-top {
    display: none !important;
}

/* Main header row — sticky dark navy on every page */
.header--row.main,
.header--row[data-row-id="main"],
.ameline-homepage .header--row.main,
.ameline-homepage .header--row[data-row-id="main"] {
    background: #061530 !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3) !important;
    transition: background 0.3s ease !important;
    backdrop-filter: blur(10px) !important;
    border-bottom: 1px solid rgba(236, 200, 130, 0.1) !important;
}

/* Outer site-header wrappers — dark navy base */
.site-header,
#masthead,
.header-area,
.header-wrapper,
.main-header,
.site-header-wrapper,
.header-inner {
    background-color: #061530 !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Remove gap between header and content on homepage */
.ameline-homepage .site-main,
.ameline-homepage #content,
.ameline-homepage #primary {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Nav links — gold, generous spacing */
.header--row.main a:not(.button),
.header--row[data-row-id="main"] a:not(.button),
.main-navigation a,
.primary-menu a,
.site-navigation a,
.nav-menu a,
.header-menu a,
.site-header a,
#masthead a,
.header-area a {
    color: #ecc882 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    transition: color 0.3s ease, opacity 0.3s ease !important;
    padding: 0 1.2rem !important;
}

.header--row.main a:not(.button):hover,
.header--row[data-row-id="main"] a:not(.button):hover,
.main-navigation a:hover,
.primary-menu a:hover,
.nav-menu a:hover,
.site-header a:hover,
#masthead a:hover {
    color: #F8F6F4 !important;
    opacity: 0.9 !important;
}

/* Active nav item — gold underline */
.main-navigation .current-menu-item > a,
.primary-menu .current-menu-item > a,
.nav-menu .current-menu-item > a {
    color: #ecc882 !important;
    border-bottom: 1px solid #ecc882 !important;
}

/* Logo / site title — Dancing Script gold */
.site-title,
.site-title a,
.custom-logo-link,
.site-branding .site-title,
.header--row.main .site-title a,
.header--row.main .brand a,
.header--row[data-row-id="main"] .nv-title-tagline-wrap a {
    font-family: 'Dancing Script', cursive !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #ecc882 !important;
    text-decoration: none !important;
    letter-spacing: 0.02em !important;
}

.site-title a:hover {
    color: #F8F6F4 !important;
}

/* Sub-menus */
.main-navigation .sub-menu,
.primary-menu .sub-menu {
    background-color: #061530 !important;
    border: 1px solid rgba(236, 200, 130, 0.2) !important;
}

.main-navigation .sub-menu a,
.primary-menu .sub-menu a {
    color: #F8F6F4 !important;
    border-bottom: 1px solid var(--ameline-gold-dim) !important;
}

.main-navigation .sub-menu a:hover,
.primary-menu .sub-menu a:hover {
    background-color: var(--ameline-gold-dim) !important;
    color: #ecc882 !important;
}

/* Mobile hamburger */
.menu-toggle,
.menu-toggle span,
.hamburger-icon,
.nav-toggle {
    color: #ecc882 !important;
    border-color: var(--ameline-gold-dim) !important;
}

/* Nav item spacing */
.main-navigation ul > li,
.primary-menu > li,
.nav-menu > li,
.header-menu > li {
    margin: 0 4px !important;
}

/* Hide Solace builder/upload buttons */
.header--row .btn-upload-design,
.header--row [class*="upload"],
.header--row .builder-item--button_base,
.ameline-homepage .header-search-wrap,
.ameline-homepage .header-account-wrap,
.ameline-homepage .header-cart-wrap,
.ameline-homepage .site-header-cart,
.ameline-homepage .nav-icon-wrap,
.ameline-homepage .header-button-wrap,
.ameline-homepage [class*="header-search"],
.ameline-homepage [class*="header-account"],
.ameline-homepage [class*="header-cart"],
.ameline-homepage .widget_shopping_cart_content,
.ameline-homepage .header-widget-area {
    display: none !important;
}

/* ═══════════════════════════════════════════════════════════
   GLOBAL TYPOGRAPHY & BACKGROUNDS
═══════════════════════════════════════════════════════════ */

body {
    background-color: #0a1225 !important;
    color: #F8F6F4 !important;
    font-family: 'Montserrat', sans-serif !important;
}

.site-main,
.nv-single-post-wrap,
.nv-page-title-wrap + .container,
.container .col,
.container .nv-content-wrap,
article.page,
article.post,
.entry-content {
    background: transparent !important;
}

/* Page title header on inner pages */
.nv-page-title-wrap,
.page-header,
.solace-page-title,
.woocommerce-products-header {
    background: #081C40 !important;
    padding: 60px 0 !important;
    border-bottom: 1px solid rgba(236, 200, 130, 0.1) !important;
}

.nv-page-title-wrap h1,
.page-header h1,
.solace-page-title h1,
.woocommerce-products-header h1 {
    color: #ecc882 !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    text-shadow: none !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title {
    color: #F8F6F4 !important;
    font-family: 'Cormorant Garamond', serif !important;
}

/* Links */
a {
    color: #ecc882 !important;
    transition: all 0.3s ease !important;
}
a:hover {
    color: #F8F6F4 !important;
}

/* Body text */
p, li, td, th, label, span:not([class]) {
    color: rgba(248, 246, 244, 0.8) !important;
}

/* Breadcrumbs */
.breadcrumb,
.woocommerce-breadcrumb {
    color: rgba(248, 246, 244, 0.5) !important;
}
.breadcrumb a,
.woocommerce-breadcrumb a {
    color: #ecc882 !important;
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #061530; }
::-webkit-scrollbar-thumb { background: rgba(236, 200, 130, 0.3); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #ecc882; }

/* ═══════════════════════════════════════════════════════════
   BUTTON SYSTEM
═══════════════════════════════════════════════════════════ */

/* Primary — gold outline */
.button,
.wp-element-button,
button[type="submit"],
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.woocommerce #respond input#submit,
.woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-form-register .woocommerce-form-register__submit,
.woocommerce #customer_login .button,
.wc-block-components-button,
.wp-block-button__link {
    background: transparent !important;
    color: #ecc882 !important;
    border: 1.5px solid #ecc882 !important;
    border-radius: 50px !important;
    padding: 14px 36px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.4s ease !important;
    text-decoration: none !important;
    display: inline-block !important;
    text-align: center !important;
}

/* Hover — fills gold */
.button:hover,
.wp-element-button:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover,
.woocommerce-form-login .woocommerce-form-login__submit:hover,
.woocommerce-form-register .woocommerce-form-register__submit:hover,
.woocommerce #customer_login .button:hover,
.wc-block-components-button:hover,
.wp-block-button__link:hover {
    background: #ecc882 !important;
    color: #081C40 !important;
    border-color: #ecc882 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 15px rgba(236, 200, 130, 0.3) !important;
}

/* Active — click press */
.button:active,
.woocommerce a.button:active,
.woocommerce button.button:active {
    background: rgba(236, 200, 130, 0.2) !important;
    color: #ecc882 !important;
    transform: translateY(0) !important;
    box-shadow: none !important;
    transition: all 0.1s ease !important;
}

/* Focus — no stuck hover state */
.button:focus,
.woocommerce a.button:focus,
.woocommerce button.button:focus {
    background: transparent !important;
    color: #ecc882 !important;
    border-color: #ecc882 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(236, 200, 130, 0.2) !important;
}

/* Visited — resets to original state */
.button:visited,
.woocommerce a.button:visited {
    background: transparent !important;
    color: #ecc882 !important;
    border-color: #ecc882 !important;
}

/* Alt / secondary — filled navy */
.button.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.checkout-button {
    background: #081C40 !important;
    color: #ecc882 !important;
    border: 1.5px solid #ecc882 !important;
}
.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.checkout-button:hover {
    background: #ecc882 !important;
    color: #081C40 !important;
}

/* Bid Now button */
.ameline-auction-card .ameline-bid-btn,
.ameline-bid-btn {
    background: transparent !important;
    color: #ecc882 !important;
    border: 1.5px solid #ecc882 !important;
    border-radius: 50px !important;
    width: 100% !important;
    text-align: center !important;
    display: inline-block !important;
}
.ameline-bid-btn:hover,
.ameline-auction-card .ameline-bid-btn:hover {
    background: #ecc882 !important;
    color: #081C40 !important;
}
.ameline-bid-btn:visited,
.ameline-auction-card .ameline-bid-btn:visited {
    background: transparent !important;
    color: #ecc882 !important;
    border-color: #ecc882 !important;
}

/* Return to shop */
.woocommerce .return-to-shop .button,
.wc-block-cart__submit-button,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__submit-button a {
    background: #081C40 !important;
    color: #F8F6F4 !important;
    border: 1.5px solid #ecc882 !important;
    border-radius: 50px !important;
    padding: 12px 30px !important;
    text-decoration: none !important;
    display: inline-block !important;
    font-size: 11px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
}

/* ═══════════════════════════════════════════════════════════
   WOOCOMMERCE OVERRIDES
═══════════════════════════════════════════════════════════ */

/* Hide WooCommerce Coming Soon notice */
.woocommerce-store-notice,
p.demo_store,
.solace-coming-soon,
[class*="coming-soon-notice"],
.woocommerce-store-notice__dismiss-link {
    display: none !important;
}

/* Shop product grid cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce .products .product,
.wc-block-grid__product {
    background: rgba(236, 200, 130, 0.03) !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
    padding: 20px !important;
    transition: border-color 0.4s ease, transform 0.4s ease !important;
    border-radius: 8px !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
.wc-block-grid__product:hover {
    border-color: #ecc882 !important;
    transform: translateY(-4px) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
    font-family: 'Cormorant Garamond', serif !important;
    color: #ecc882 !important;
    font-size: 24px !important;
    font-weight: 600 !important;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.wc-block-grid__product-price {
    color: #ecc882 !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 20px !important;
}

/* Single product */
.woocommerce div.product .product_title,
.single-product .product_title {
    font-family: 'Cormorant Garamond', serif !important;
    color: #F8F6F4 !important;
    font-size: clamp(2rem, 5vw, 3rem) !important;
    font-weight: 400 !important;
}

.woocommerce div.product .price {
    color: #ecc882 !important;
    font-size: 1.4rem !important;
}

.single-product .summary {
    background: #081C40 !important;
    padding: 30px !important;
    border-radius: 8px !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
}

/* WooCommerce notices — Améline branded */
.woocommerce-message,
.woocommerce-info {
    background-color: #081C40 !important;
    color: #F8F6F4 !important;
    border-top-color: #ecc882 !important;
}
.woocommerce-message::before,
.woocommerce-info::before {
    color: #ecc882 !important;
}

/* Hide cross-sells / related on cart */
.woocommerce-cart .cross-sells,
.woocommerce-cart .related.products,
.wc-block-cart .cross-sells {
    display: none !important;
}

/* Tables */
table,
.woocommerce table {
    border-color: rgba(236, 200, 130, 0.15) !important;
}
table th {
    background: #081C40 !important;
    color: #ecc882 !important;
}
table td {
    border-color: rgba(236, 200, 130, 0.1) !important;
}

/* ═══════════════════════════════════════════════════════════
   AUCTION COMPONENTS
═══════════════════════════════════════════════════════════ */

.ameline-auction-wrap {
    background: var(--ameline-dark-navy) !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
    padding: 32px !important;
    margin: 24px 0 !important;
    color: var(--ameline-white) !important;
}

.ameline-countdown {
    display: flex !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin-bottom: 28px !important;
}

.ameline-countdown .unit {
    text-align: center !important;
    background: rgba(236, 200, 130, 0.06) !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
    padding: 14px 18px !important;
    min-width: 72px !important;
    flex: 1 !important;
}

.ameline-countdown .value {
    display: block !important;
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 2.4rem !important;
    color: var(--ameline-gold) !important;
    line-height: 1 !important;
    font-weight: 400 !important;
}

.ameline-countdown .label {
    display: block !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: rgba(248, 246, 244, 0.55) !important;
    margin-top: 6px !important;
}

.ameline-countdown.ending-soon .value {
    color: var(--ameline-red) !important;
}

.ameline-bid-info {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)) !important;
    gap: 16px !important;
    margin-bottom: 24px !important;
    padding: 20px !important;
    background: rgba(236, 200, 130, 0.04) !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
}

.ameline-bid-info .info-label {
    display: block !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    color: rgba(248, 246, 244, 0.55) !important;
    margin-bottom: 4px !important;
}

.ameline-bid-info .info-value {
    display: block !important;
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 1.3rem !important;
    color: var(--ameline-gold) !important;
    font-weight: 400 !important;
}

.ameline-bid-form {
    display: flex !important;
    gap: 12px !important;
    align-items: stretch !important;
    margin-top: 20px !important;
}

.ameline-bid-input {
    flex: 1 !important;
    padding: 14px 20px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid var(--ameline-gold-dim) !important;
    color: var(--ameline-white) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.9rem !important;
    border-radius: 50px !important;
    outline: none !important;
    transition: border-color 0.4s ease !important;
}

.ameline-bid-input:focus {
    border-color: var(--ameline-gold) !important;
}

.ameline-bid-submit {
    padding: 14px 32px !important;
    background: transparent !important;
    border: 1.5px solid var(--ameline-gold) !important;
    color: var(--ameline-gold) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    border-radius: 50px !important;
    transition: background 0.4s ease, color 0.4s ease !important;
}

.ameline-bid-submit:hover {
    background: var(--ameline-gold) !important;
    color: var(--ameline-navy) !important;
}

.ameline-buy-now-btn {
    display: block !important;
    width: 100% !important;
    margin-top: 12px !important;
    padding: 14px 24px !important;
    background: var(--ameline-gold) !important;
    color: var(--ameline-navy) !important;
    border: none !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.2em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    border-radius: 50px !important;
    transition: opacity 0.4s ease !important;
}

.ameline-buy-now-btn:hover {
    opacity: 0.85 !important;
}

.ameline-reserve-not-met {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.75rem !important;
    color: rgba(248, 246, 244, 0.6) !important;
    margin: 12px 0 !important;
    padding: 8px 16px !important;
    border-left: 2px solid var(--ameline-gold) !important;
}

.ameline-auction-ended {
    text-align: center !important;
    padding: 24px !important;
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 1.3rem !important;
    color: var(--ameline-white) !important;
}

.ameline-message {
    padding: 12px 20px !important;
    margin-bottom: 12px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.8rem !important;
    border-radius: 50px !important;
}

.ameline-message.success {
    background: rgba(236, 200, 130, 0.15) !important;
    border: 1px solid var(--ameline-gold) !important;
    color: var(--ameline-gold) !important;
}

.ameline-message.error {
    background: rgba(155, 34, 38, 0.15) !important;
    border: 1px solid var(--ameline-red) !important;
    color: var(--ameline-red) !important;
}

/* ═══════════════════════════════════════════════════════════
   MY ACCOUNT PAGE
═══════════════════════════════════════════════════════════ */

.woocommerce-account .woocommerce-MyAccount-navigation {
    background: var(--ameline-dark-navy) !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
    padding: 24px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    border-bottom: 1px solid var(--ameline-gold-dim) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a,
.woocommerce-MyAccount-navigation ul li a {
    font-family: 'Montserrat', sans-serif !important;
    color: rgba(248, 246, 244, 0.7) !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    padding: 12px 0 !important;
    display: block !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
    border-bottom: 1px solid rgba(236, 200, 130, 0.1) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover {
    color: #ecc882 !important;
    border-bottom-color: #ecc882 !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
    background: #081C40 !important;
    color: #F8F6F4 !important;
    padding: 32px !important;
    border: 0.5px solid var(--ameline-gold-dim) !important;
    border-radius: 8px !important;
}

/* ═══════════════════════════════════════════════════════════
   FORMS
═══════════════════════════════════════════════════════════ */

input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
textarea,
select {
    background: rgba(248, 246, 244, 0.05) !important;
    border: 1px solid rgba(236, 200, 130, 0.2) !important;
    color: #F8F6F4 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    transition: border-color 0.3s ease !important;
    outline: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

input:focus,
textarea:focus,
select:focus {
    border-color: #ecc882 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(236, 200, 130, 0.1) !important;
}

label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: rgba(248, 246, 244, 0.7) !important;
    margin-bottom: 6px !important;
    display: block !important;
}

/* ═══════════════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════════════ */

/* Hide Solace footer sitewide — Améline uses its own .ameline-footer on all pages */
.site-footer,
#colophon,
footer.site-footer,
.footer-area,
.footer-widgets,
.footer-bottom,
.site-info,
.hfg_footer {
    display: none !important;
}

/* Solace footer — dark navy on all other pages */
.site-footer,
#colophon,
footer.site-footer,
.footer-area,
.footer-bottom,
.footer-widgets,
.hfg_footer,
.footer--row,
.hfg_footer .footer--row,
[class*="footer--row"] {
    background-color: #061530 !important;
    border-top: 1px solid rgba(236, 200, 130, 0.1) !important;
    color: rgba(248, 246, 244, 0.5) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.12em !important;
}

.site-footer a,
#colophon a,
.footer-area a,
.hfg_footer a {
    color: #ecc882 !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

.site-footer a:hover,
#colophon a:hover,
.hfg_footer a:hover {
    color: #F8F6F4 !important;
}

.site-footer p,
.hfg_footer p {
    color: rgba(248, 246, 244, 0.5) !important;
}

.hfg_footer .footer--row .widget-title {
    color: #F8F6F4 !important;
}

/* Hide generic Solace footer nav/text widgets */
.hfg_footer .footer--row.main .widget_nav_menu,
.hfg_footer .footer--row.main .widget_text:not(.ameline-footer-widget) {
    display: none !important;
}

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    .header--row.main a:not(.button),
    .header--row[data-row-id="main"] a:not(.button) {
        padding: 0 0.6rem !important;
        letter-spacing: 2px !important;
    }

    .nv-page-title-wrap,
    .page-header,
    .solace-page-title {
        padding: 40px 20px !important;
    }

    .single-product .summary {
        padding: 20px !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   BUG-2 — Sticky header: target outermost container
═══════════════════════════════════════════════════════════ */
.site-header,
#masthead,
header.header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
}

/* Inner row no longer needs sticky since parent handles it */
.header--row.main,
.header--row[data-row-id="main"],
.ameline-homepage .header--row.main,
.ameline-homepage .header--row[data-row-id="main"] {
    position: relative !important;
}

/* ═══════════════════════════════════════════════════════════
   BUG-4 — Page title areas: force dark navy, no pure black
═══════════════════════════════════════════════════════════ */
.nv-page-title-wrap,
.page-header,
.solace-page-title,
.woocommerce-products-header,
.nv-page-title,
div[class*="page-title"],
.entry-header,
.woocommerce-account .entry-header,
.woocommerce-cart .entry-header,
.woocommerce-checkout .entry-header {
    background: #081C40 !important;
    background-color: #081C40 !important;
}

/* Fix 1 — Page title overlay (Solace injects a span.overlay on some pages) */
.nv-page-title-wrap .overlay,
.page-header .overlay,
span.overlay {
    background-color: #081C40 !important;
    background: #081C40 !important;
}

/* Fix 4 — Product card link wrapper background */
.woocommerce .products .product .woocommerce-LoopProduct-link,
.woocommerce .products .product a.woocommerce-loop-product__link {
    background: #081C40 !important;
}

/* ═══════════════════════════════════════════════════════════
   BUG-7 — Product images: blend white backgrounds
═══════════════════════════════════════════════════════════ */
.woocommerce .products .product img,
.wc-block-grid__product-image img,
.woocommerce-product-gallery img {
    border-radius: 8px !important;
    background: #081C40 !important;
    mix-blend-mode: luminosity !important;
    opacity: 0.9 !important;
    transition: opacity 0.3s ease !important;
}

.woocommerce .products .product:hover img,
.wc-block-grid__product:hover img {
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}

.woocommerce-product-gallery {
    background: #081C40 !important;
    border-radius: 8px !important;
    padding: 10px !important;
}

/* ═══════════════════════════════════════════════════════════
   HEADER LOGO — force Dancing Script, override Solace Outfit font
═══════════════════════════════════════════════════════════ */
.site-title,
.site-title a,
p.site-title,
p.site-title a,
.nv-title-tagline-wrap .site-title,
.nv-title-tagline-wrap .site-title a,
.header--row .site-title,
.header--row .site-title a,
.header--row.main .site-title a,
.brand .site-title,
.brand .site-title a,
[class*="site-title"],
[class*="site-title"] a {
    font-family: 'Dancing Script', cursive !important;
    font-size: 32px !important;
    color: #ecc882 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* ═══════════════════════════════════════════════════════════
   BUG-9 — Contact page: transparent Elementor sections
═══════════════════════════════════════════════════════════ */
.contact .elementor-section,
.page-id-48 .elementor-section,
.elementor-section[data-id] {
    background-color: transparent !important;
}
.contact .elementor-widget-container,
.page-id-48 .elementor-widget-container {
    color: #F8F6F4 !important;
}

/*
/* Hide WooCommerce out-of-stock badge on auction products */
/* ═══════════════════════════════════════════════════════════
   AMÉLINE FOOTER — sitewide injected footer sizing fix
═══════════════════════════════════════════════════════════ */
.ameline-footer {
    padding: 48px 40px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
    background-color: #061530 !important;
}
.ameline-footer__social {
    display: flex !important;
    gap: 16px !important;
    align-items: center !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.ameline-footer__social a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
}
.ameline-footer__social a svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
}

ul.products li.product .woocommerce-loop-product__link .onsale,
ul.products li.product .out-of-stock-badge,
.woocommerce-loop-product .stock.out-of-stock,
ul.products li.outofstock::after,
.woocommerce ul.products li.product.outofstock span.outofstock-badge { display: none !important; }

/* ═══════════════════════════════════════════════════════════
   FIX 2 — Hide out-of-stock badges on auction product cards
═══════════════════════════════════════════════════════════ */
ul.products li.product.outofstock .woocommerce-badge,
ul.products li.product .out-of-stock-label,
.woocommerce-loop-product__title ~ .stock.out-of-stock,
li.product.outofstock::after { display: none !important; }

/* ═══════════════════════════════════════════════════════════
   FIX 4 — Footer wordmark: Dancing Script gold on all pages
═══════════════════════════════════════════════════════════ */
.ameline-footer .ameline-footer__wordmark {
    font-family: 'Dancing Script', cursive !important;
    font-size: 48px !important;
    color: #ecc882 !important;
    font-weight: 700 !important;
    display: block !important;
    text-decoration: none !important;
    line-height: 1 !important;
}

/* ── Lining figures: prevent old-style descenders (5, 3, 7) in Cormorant Garamond ── */
.ameline-current-bid-value,
.ameline-bid-info .info-value,
.ameline-countdown .value,
.ameline-card-bid,
.ameline-card-price,
.woocommerce-Price-amount,
.amount {
    font-feature-settings: "lnum" 1, "tnum" 1 !important;
    font-variant-numeric: lining-nums tabular-nums !important;
}

/* ── AMÉLINE MOBILE FIXES ─────────────────────────────────── */

/* FIX 1 — Hero wordmark scale on mobile */
@media (max-width: 480px) {
    .ameline-hero .ameline-hero__wordmark,
    .ameline-hero .ameline-hero-title,
    .ameline-hero h1 {
        font-size: 2.8rem !important;
        line-height: 1.05 !important;
    }
}

/* FIX 2 — Hero subtitle on mobile */
@media (max-width: 480px) {
    .ameline-hero__subtitle,
    .ameline-hero h2,
    .ameline-hero [class*="subtitle"] {
        font-size: 0.75rem !important;
        letter-spacing: 0.18em !important;
    }
}

/* FIX 3 — Hamburger button tap target */
@media (max-width: 767px) {
    .navbar-toggle,
    button.navbar-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 44px !important;
        min-height: 44px !important;
        width: 44px !important;
        height: 44px !important;
        padding: 10px !important;
        cursor: pointer !important;
    }
}

/* FIX 4 — Hero height on mobile */
@media (max-width: 480px) {
    .ameline-hero {
        min-height: 60vh !important;
        padding: 80px 20px 48px !important;
    }
}

/* FIX 5 — Product page: stack image + summary vertically */
@media (max-width: 767px) {
    .woocommerce div.product {
        display: flex !important;
        flex-direction: column !important;
    }
    .woocommerce div.product div.images,
    .woocommerce div.product .woocommerce-product-gallery {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 24px !important;
    }
    .woocommerce div.product div.summary,
    .woocommerce div.product .entry-summary {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 16px !important;
    }
    .nv-single-product-top {
        flex-direction: column !important;
        width: 100% !important;
    }
}

/* ── DEFINITIVE AUCTIONS GRID ─────────────────────────────── */
/* Mobile: single column */
.woocommerce ul.products {
    display: grid !important;
    gap: 24px !important;
    grid-template-columns: 1fr !important;
    flex-direction: unset !important;
}
/* Tablet: 2 columns */
@media (min-width: 601px) and (max-width: 767px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
/* Desktop: 4 columns */
@media (min-width: 768px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(4, 1fr) !important;
    }
}
/* All sizes: reset individual card widths */
.woocommerce ul.products li.product {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
}

/* FIX 11 — Prevent horizontal overflow from theme containers */
@media (max-width: 600px) {
    .wrapper,
    .container,
    .shop-container,
    .row,
    .nv-index-posts {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
}

/* FIX 12 — My Account: full-width inputs and tap targets */
@media (max-width: 600px) {
    .woocommerce .woocommerce-form input[type="text"],
    .woocommerce .woocommerce-form input[type="email"],
    .woocommerce .woocommerce-form input[type="password"],
    .woocommerce input[type="text"],
    .woocommerce input[type="email"],
    .woocommerce input[type="password"] {
        width: 100% !important;
        min-height: 48px !important;
        font-size: 16px !important;
        box-sizing: border-box !important;
    }
    .woocommerce .button,
    .woocommerce button[type="submit"],
    .woocommerce input[type="submit"] {
        min-height: 44px !important;
        min-width: 44px !important;
        padding: 12px 20px !important;
        font-size: 13px !important;
    }
    .woocommerce-MyAccount-navigation {
        float: none !important;
        width: 100% !important;
        margin-bottom: 24px !important;
    }
    .woocommerce-MyAccount-content {
        float: none !important;
        width: 100% !important;
    }
}

/* FIX 13 — Related products: single column on mobile */
@media (max-width: 600px) {
    .related ul.products,
    .upsells ul.products {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }
    .related ul.products li.product,
    .upsells ul.products li.product {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }
}

/* FIX 14 — Footer padding on mobile */
@media (max-width: 480px) {
    .ameline-footer {
        padding: 40px 20px !important;
    }
}

/* FIX 15 — About/Contact page H1 scale on mobile */
@media (max-width: 480px) {
    .the-content h1 {
        font-size: 2.2rem !important;
    }
}

/* ── MOBILE FIXES ROUND 2 ─────────────────────────────────── */

/* FIX 2 — Nav search overlay and sidebar overflow causing horizontal scroll */
@media (max-width: 767px) {
    .nv-nav-search,
    .header-menu-sidebar-overlay,
    .form-wrap,
    .close-container,
    .header-menu-sidebar {
        max-width: 100vw !important;
        overflow: hidden !important;
    }
}

/* FIX 3 — Auctions page BID NOW button tap target on desktop */
.ameline-bid-btn,
ul.products a.button {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* FIX — WooCommerce .first/.last classes interfere with CSS grid */
.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last {
    clear: none !important;
    float: none !important;
    margin: 0 !important;
}

/* FIX — Remove left offset on shop container pushing grid right */
.nv-index-posts.nv-shop,
.nv-index-posts.nv-shop .woocommerce {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    float: none !important;
}

.woocommerce ul.products {
    width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* FIX — Override Solace dynamic inline CSS that constrains .nv-shop.col to sidebar-width % */
.archive.woocommerce .solace-main > .shop-container .nv-shop.col,
.woocommerce .nv-shop.col {
    max-width: 100% !important;
    width: 100% !important;
}

/* FIX — Remove pseudo-elements from ul.products that consume grid slots */
.woocommerce ul.products::before,
.woocommerce ul.products::after {
    display: none !important;
    content: none !important;
}

/* ── STYLE.CSS UI FIXES ────────────────────────────────────── */

/* ISSUE #15 — Current bid label color */
.ameline-current-bid-label {
    color: rgba(248, 246, 244, 0.55) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-size: 10.4px !important;
}

/* ISSUE #16 — WooCommerce price bdi color inherits from parent */
.ameline-current-bid-value bdi,
.ameline-current-bid-value .woocommerce-Price-currencySymbol {
    color: inherit !important;
}

/* ISSUE #17 — Gallery and summary vertical alignment */
.woocommerce div.product div.images,
.woocommerce-product-gallery {
    padding-top: 30px;
    box-sizing: border-box;
}

/* ISSUE #18 — Active tab uses gold underline */
.wc-tabs li.active a,
.woocommerce-tabs .wc-tabs li.active a {
    border-bottom: 2px solid rgb(236, 200, 130) !important;
}
.wc-tabs,
.woocommerce-tabs .wc-tabs {
    border-bottom: 0.8px solid rgba(236, 200, 130, 0.2) !important;
}

/* ISSUE #20 — Related products heading centered */
.related h2,
.upsells h2 {
    text-align: center !important;
    font-size: 36px !important;
    font-family: 'Cormorant Garamond', serif !important;
    color: rgb(248, 246, 244) !important;
    margin-bottom: 24px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
}

/* ISSUE #23 — Search submit button on-brand */
button.search-submit,
.search-submit {
    background-color: transparent !important;
    color: rgb(236, 200, 130) !important;
    border: 0.8px solid rgb(236, 200, 130) !important;
}

/* ISSUE #24 — Search input on-brand */
.nv-nav-search input.search-field {
    background-color: rgba(248, 246, 244, 0.08) !important;
    color: rgb(248, 246, 244) !important;
    border: 0.8px solid rgba(236, 200, 130, 0.4) !important;
    border-radius: 8px !important;
}

/* ISSUE #26 — My Account page banner height */
.woocommerce-account .cover,
.my-account .cover {
    min-height: 200px !important;
}

/* ISSUE #27 — My Account H1 on-brand */
.woocommerce-account .boxes-header h1,
.my-account .boxes-header h1 {
    font-size: 48px !important;
    text-transform: uppercase !important;
    color: rgb(236, 200, 130) !important;
    text-align: center !important;
    letter-spacing: 4px !important;
}

/* ISSUE #28 — My Account layout: grid only on logged-in sub-pages (not login/register page) */
body.woocommerce-account.logged-in .woocommerce {
    display: grid !important;
    grid-template-columns: 280px 1fr !important;
    gap: 40px !important;
    align-items: start !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation {
    grid-column: 1 !important;
    grid-row: 1 !important;
    float: none !important;
    width: 100% !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    grid-column: 2 !important;
    grid-row: 1 !important;
    float: none !important;
    width: 100% !important;
}
/* Login/register page (.woocommerce-account but NOT .logged-in): full width, no grid */
.woocommerce-account:not(.logged-in) .woocommerce {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content {
    float: none !important;
    width: 100% !important;
}

/* ISSUE #32 — Product summary mobile padding */
@media (max-width: 767px) {
    .woocommerce div.product div.summary {
        padding: 20px 16px !important;
        border-radius: 8px !important;
        margin: 0 8px !important;
    }
}

/* ISSUE #31 — Countdown units mobile padding */
@media (max-width: 480px) {
    .ameline-countdown {
        gap: 6px !important;
    }
    .ameline-countdown .unit {
        padding: 10px 8px !important;
        max-width: 70px !important;
    }
}

/* ISSUE #13 — Placeholder image visibility */
img.woocommerce-placeholder {
    object-fit: contain !important;
    padding: 12px !important;
    background-color: rgba(236, 200, 130, 0.05) !important;
}

/* FIX 2 — Search submit button: on-brand gold (higher specificity) */
.nv-nav-search button.search-submit,
.nv-nav-search .search-submit,
form.search-form button[type="submit"],
.header-search-wrap button.search-submit {
    background-color: transparent !important;
    background: transparent !important;
    color: rgb(236, 200, 130) !important;
    border: 0.8px solid rgb(236, 200, 130) !important;
    box-shadow: none !important;
}

.nv-nav-search button.search-submit:hover,
.nv-nav-search .search-submit:hover {
    background-color: rgb(236, 200, 130) !important;
    color: rgb(8, 28, 64) !important;
}

/* FIX 3 — Related products: force 3-column grid, no ghost columns */
.related ul.products,
.upsells ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
}

/* FIX 4 — Tab li border overriding gold underline on active a */
.wc-tabs li,
.woocommerce-tabs .wc-tabs li {
    border-bottom: none !important;
}

.wc-tabs li.active,
.woocommerce-tabs .wc-tabs li.active {
    border-bottom: none !important;
}

.wc-tabs li.active a,
.woocommerce-tabs .wc-tabs li.active a {
    border-bottom: 2px solid rgb(236, 200, 130) !important;
    color: rgb(236, 200, 130) !important;
}

/* FIX — My Account login/register: two-column flex layout */
#customer_login {
    max-width: 900px !important;
    margin: 0 auto !important;
    width: 100% !important;
    display: flex !important;
    gap: 48px !important;
    align-items: flex-start !important;
}
#customer_login .u-column1,
#customer_login .u-column2 {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    float: none !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}
#customer_login .u-column1 input,
#customer_login .u-column2 input {
    width: 100% !important;
    box-sizing: border-box !important;
    min-height: 48px !important;
    font-size: 15px !important;
}
@media (max-width: 600px) {
    #customer_login {
        flex-direction: column !important;
    }
}

/* FIX 3 — Remove bullet dots between footer social icons */
.ameline-footer__social,
.ameline-footer__social ul {
    list-style: none !important;
}
.ameline-footer__social li,
.ameline-footer li {
    list-style: none !important;
    list-style-type: none !important;
}
.ameline-footer__social li::before,
.ameline-footer__social li::marker {
    display: none !important;
    content: none !important;
}

/* FIX 4 — Hide WooCommerce product meta (Category, SKU, Tags) on product pages */
.woocommerce div.product .product_meta,
.woocommerce div.product .posted_in,
.woocommerce div.product .tagged_as,
.woocommerce div.product .sku_wrapper {
    display: none !important;
}

/* FIX 5 — Hide crossed-out contaminated price in related products */
.related ul.products li.product .price del,
.related ul.products li.product .price ins,
.upsells ul.products li.product .price del {
    display: none !important;
}
.related ul.products li.product .price {
    display: block !important;
}

/* FIX — Remember Me checkbox oversized */
#customer_login .woocommerce-form__label-for-checkbox,
#customer_login .woocommerce-form-login__rememberme {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 12px !important;
    margin-top: 12px !important;
}

#customer_login input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    min-width: 16px !important;
    flex-shrink: 0 !important;
    cursor: pointer !important;
    accent-color: #ecc882 !important;
}

/* FIX — Bid Now button hover overrides visited state */
.ameline-bid-btn:visited:hover,
.related ul.products .ameline-bid-btn:visited:hover,
ul.products .ameline-bid-btn:visited:hover {
    background: rgb(236, 200, 130) !important;
    background-color: rgb(236, 200, 130) !important;
    color: rgb(8, 28, 64) !important;
}

/* FIX — Hide WooCommerce out-of-stock badge/label on auction product cards */
.products .product .stock.out-of-stock,
.products .product .out-of-stock.button,
.woocommerce span.onsale:not([class*="in-stock"]),
.related.products .out-of-stock .stock,
ul.products li.product .out-of-stock { display: none !important; }

/* FIX 2 — Double bullet on About/Contact page list items */
.the-content ul {
    padding-left: 0 !important;
}
.the-content ul li {
    list-style: none !important;
}
.the-content ul li::before {
    content: '•' !important;
    color: #ecc882 !important;
    margin-right: 8px !important;
}

/* FIX 3 — Footer height consistency across all pages */
.ameline-footer__wordmark {
    margin-bottom: 0 !important;
}
.ameline-footer__social {
    margin-bottom: 0 !important;
}
.ameline-footer__legal {
    margin-bottom: 16px !important;
}

/* FIX 5 — My Account login/register section labels in gold */
#customer_login h2,
#customer_login .woocommerce-form-login h2,
#customer_login .woocommerce-form-register h2,
.u-column1 h2,
.u-column2 h2 {
    color: #ecc882 !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 24px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    margin-bottom: 24px !important;
}

/* FIX — Admin bar hidden on frontend */
#wpadminbar { display: none !important; }
html { margin-top: 0 !important; }
* html body { margin-top: 0 !important; }

/* FIX — My Account nav: remove bullet dots from sidebar navigation */
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-navigation ul,
.woocommerce-MyAccount-navigation li {
    list-style: none !important;
    list-style-type: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}
.woocommerce-MyAccount-navigation li::before,
.woocommerce-MyAccount-navigation li::after,
.woocommerce-MyAccount-navigation li::marker {
    content: none !important;
    display: none !important;
}

/* FIX — Footer social icon color and border (restored after homepage.css cleanup) */
.ameline-footer__social a {
    color: rgba(248, 246, 244, 0.65) !important;
    border: 0.5px solid rgba(236, 200, 130, 0.35) !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transition: border-color 0.4s ease, color 0.4s ease !important;
}
.ameline-footer__social a:hover {
    border-color: #ecc882 !important;
    color: #ecc882 !important;
    transform: translateY(-2px) !important;
}
.ameline-footer__social a svg {
    fill: currentColor !important;
    stroke: currentColor !important;
}

/* FIX — Footer internal alignment: center all elements */
.ameline-footer {
    text-align: center !important;
}
.ameline-footer .ameline-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}
.ameline-footer__wordmark {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
}
.ameline-footer__social {
    justify-content: center !important;
    display: flex !important;
    list-style: none !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
}
.ameline-footer__legal {
    justify-content: center !important;
    display: flex !important;
}
.ameline-footer__copy,
.ameline-footer p {
    text-align: center !important;
    width: 100% !important;
}

/* FIX — Terms and Privacy pages: gold headings */
.page-id-607 .the-content h2,
.page-id-607 .the-content h3,
.page-id-608 .the-content h2,
.page-id-608 .the-content h3,
.page-template-default .the-content h2,
.page-template-default .the-content h3 {
    color: #ecc882 !important;
    font-family: 'Cormorant Garamond', serif !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}

/* FIX — Product gallery height matches summary panel */
.woocommerce div.product div.images,
.woocommerce-product-gallery {
    align-self: flex-start !important;
}

/* MY ACCOUNT FIX 2 — Content area text visibility */
body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
    color: rgba(248, 246, 244, 0.85) !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content p,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content td,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content th,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content label,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content span {
    color: rgba(248, 246, 244, 0.85) !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content a {
    color: #ecc882 !important;
    text-decoration: none !important;
}
body.woocommerce-account.logged-in .woocommerce-MyAccount-content a:hover {
    text-decoration: underline !important;
}

/* MY ACCOUNT FIX 3 — Bidding Identity heading word-break */
.ameline-username-preference h3,
.ameline-username-preference .ameline-pref-heading {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

/* MY ACCOUNT FIX 4 — Orders table mobile responsive */
@media (max-width: 767px) {
    body.woocommerce-account .woocommerce-orders-table,
    body.woocommerce-account table.woocommerce-orders-table {
        display: block !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        width: 100% !important;
    }
    body.woocommerce-account .woocommerce-orders-table thead,
    body.woocommerce-account .woocommerce-orders-table tbody,
    body.woocommerce-account .woocommerce-orders-table tr,
    body.woocommerce-account .woocommerce-orders-table th,
    body.woocommerce-account .woocommerce-orders-table td {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    body.woocommerce-account .woocommerce-orders-table thead {
        display: none !important;
    }
    body.woocommerce-account .woocommerce-orders-table td {
        padding: 8px 12px !important;
        border-bottom: none !important;
    }
    body.woocommerce-account .woocommerce-orders-table td::before {
        content: attr(data-title) ': ' !important;
        font-weight: 600 !important;
        color: #ecc882 !important;
        font-size: 11px !important;
        letter-spacing: 1px !important;
        text-transform: uppercase !important;
        display: inline-block !important;
        margin-right: 6px !important;
    }
    body.woocommerce-account .woocommerce-orders-table tr {
        border: 0.8px solid rgba(236, 200, 130, 0.2) !important;
        border-radius: 6px !important;
        margin-bottom: 12px !important;
        padding: 8px 0 !important;
    }
}

/* MY ACCOUNT FIX 5 — Account Details form inputs */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row input,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row select,
body.woocommerce-account .woocommerce-MyAccount-content fieldset input,
body.woocommerce-account .woocommerce-MyAccount-content fieldset select {
    width: 100% !important;
    box-sizing: border-box !important;
    min-height: 48px !important;
}
@media (min-width: 768px) {
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row.form-row-first,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row.form-row-last {
        display: inline-block !important;
        width: 48% !important;
        float: none !important;
        vertical-align: top !important;
    }
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row.form-row-last {
        margin-left: 4% !important;
    }
}
@media (max-width: 767px) {
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row.form-row-first,
    body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row.form-row-last {
        display: block !important;
        width: 100% !important;
        margin-left: 0 !important;
    }
}

/* MY ACCOUNT FIX 6 — Login/Register buttons full width on mobile */
@media (max-width: 600px) {
    #customer_login .woocommerce-form-login .woocommerce-form-login__submit,
    #customer_login .woocommerce-form-register .woocommerce-form-register__submit,
    #customer_login .button {
        width: 100% !important;
        box-sizing: border-box !important;
        text-align: center !important;
    }
}

/* MY ACCOUNT FIX 7 — Nav items minimum tap target height */
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex !important;
    align-items: center !important;
    min-height: 44px !important;
    padding: 10px 16px !important;
    box-sizing: border-box !important;
}

/* FIX 5 — Reduce excessive whitespace on inner content pages (Terms/Privacy/About/Contact) */
.page-template-default .boxes-header .cover,
.page .boxes-header .cover {
    min-height: 120px !important;
    padding: 24px 20px !important;
}

.page-template-default .boxes-header h1,
.page .boxes-header h1 {
    font-size: 36px !important;
    margin: 0 !important;
}

/* FIX 6 — Increase outline button border weight for visibility */
.ameline-hero__cta,
.ameline-card__bid-btn,
.ameline-bid-btn,
button.search-submit,
.woocommerce-MyAccount-content .woocommerce-Button,
#customer_login .woocommerce-form-login__submit,
#customer_login .woocommerce-form-register__submit {
    border-width: 1.5px !important;
}

/* FIX — First Name and Last Name fields truly full width */
.woocommerce-MyAccount-content .woocommerce-form-row--first,
.woocommerce-MyAccount-content .woocommerce-form-row--last,
.woocommerce-MyAccount-content p.woocommerce-form-row--first,
.woocommerce-MyAccount-content p.woocommerce-form-row--last {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    display: block !important;
    clear: both !important;
    padding: 0 !important;
    margin-right: 0 !important;
}

.woocommerce-MyAccount-content .woocommerce-form-row--first input,
.woocommerce-MyAccount-content .woocommerce-form-row--last input {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* FIX — Password change fieldset: remove default border */
.woocommerce-MyAccount-content fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
}

.woocommerce-MyAccount-content fieldset legend {
    color: rgba(248, 246, 244, 0.55) !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 0 !important;
    margin-bottom: 16px !important;
}

/* FIX — Save Changes button full width */
.woocommerce-MyAccount-content .woocommerce-Button[name="save_account_details"],
.woocommerce-MyAccount-content input[name="save_account_details"],
.woocommerce-MyAccount-content [type="submit"] {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
    padding: 14px 20px !important;
    font-size: 13px !important;
    letter-spacing: 3px !important;
}

/* ═══════════════════════════════════════════
   My Account — Orders Page Brand Styling
   ═══════════════════════════════════════════ */

/* Table header row — gold text, gold bottom border */
body.woocommerce-account .woocommerce-orders-table thead th,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table th {
    color: #ecc882 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 16px 12px !important;
    border-bottom: 1.5px solid rgba(236, 200, 130, 0.3) !important;
    background: transparent !important;
}

/* Table body cells — bright cream white */
body.woocommerce-account .woocommerce-orders-table tbody td,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table td,
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-date,
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-status,
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total {
    color: #f8f6f4 !important;
    opacity: 1 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 14px !important;
    padding: 20px 12px !important;
    border-bottom: 0.8px solid rgba(236, 200, 130, 0.1) !important;
    vertical-align: middle !important;
}

/* Order number — gold and clickable */
body.woocommerce-account .woocommerce-orders-table td .woocommerce-orders-table__cell-order-number a,
body.woocommerce-account .woocommerce-orders-table td a[href*="view-order"] {
    color: #ecc882 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

body.woocommerce-account .woocommerce-orders-table td a[href*="view-order"]:hover {
    color: #f8f6f4 !important;
}

/* Status badges */
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-status {
    font-size: 12px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

/* VIEW button — gold outline on-brand */
body.woocommerce-account .woocommerce-orders-table .woocommerce-button,
body.woocommerce-account .woocommerce-orders-table .button,
body.woocommerce-account .woocommerce-orders-table td a.woocommerce-button {
    color: #ecc882 !important;
    border: 1.5px solid #ecc882 !important;
    background: transparent !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    padding: 10px 24px !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: all 0.3s ease !important;
}

body.woocommerce-account .woocommerce-orders-table .woocommerce-button:hover,
body.woocommerce-account .woocommerce-orders-table .button:hover,
body.woocommerce-account .woocommerce-orders-table td a.woocommerce-button:hover {
    background: #ecc882 !important;
    color: #081C40 !important;
}

/* Table row hover */
body.woocommerce-account .woocommerce-orders-table tbody tr:hover td {
    background: rgba(236, 200, 130, 0.03) !important;
}

/* Remove default table borders */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-orders-table thead,
body.woocommerce-account .woocommerce-orders-table tbody {
    border: none !important;
    background: transparent !important;
}

/* ═══════════════════════════════════════════
   My Account — Order Detail Page Styling
   ═══════════════════════════════════════════ */

/* Order detail headings */
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: #ecc882 !important;
    font-family: 'Cormorant Garamond', serif !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}

/* Order detail table */
body.woocommerce-account .woocommerce-table--order-details th {
    color: #ecc882 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    border-bottom: 1.5px solid rgba(236, 200, 130, 0.3) !important;
    padding: 12px !important;
}

body.woocommerce-account .woocommerce-table--order-details td {
    color: rgba(248, 246, 244, 0.85) !important;
    padding: 14px 12px !important;
    border-bottom: 0.8px solid rgba(236, 200, 130, 0.1) !important;
}

/* Customer details section */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details address {
    color: rgba(248, 246, 244, 0.75) !important;
    font-style: normal !important;
    line-height: 1.8 !important;
    padding: 20px !important;
    border: 0.8px solid rgba(236, 200, 130, 0.15) !important;
    border-radius: 8px !important;
    background: rgba(236, 200, 130, 0.03) !important;
}

/* Order status mark */
body.woocommerce-account .woocommerce-MyAccount-content mark {
    background: rgba(236, 200, 130, 0.15) !important;
    color: #ecc882 !important;
    padding: 4px 12px !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}


/* FIX — Order detail: Billing/Shipping address headings visible */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details h2,
body.woocommerce-account .woocommerce-MyAccount-content .col-1 h2,
body.woocommerce-account .woocommerce-MyAccount-content .col-2 h2,
body.woocommerce-account .woocommerce-column--billing-address h2,
body.woocommerce-account .woocommerce-column--shipping-address h2 {
    color: #ecc882 !important;
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 18px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    margin-bottom: 16px !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
}

/* ═══════════════════════════════════════════
   My Account — ALL text visibility (CSS-first, no flash)
   ═══════════════════════════════════════════ */

/* ALL table cells across all My Account pages */
body.woocommerce-account .woocommerce-MyAccount-content td,
body.woocommerce-account .woocommerce-MyAccount-content td *,
body.woocommerce-account .woocommerce-MyAccount-content td span,
body.woocommerce-account .woocommerce-MyAccount-content td bdi,
body.woocommerce-account .woocommerce-MyAccount-content td time,
body.woocommerce-account .woocommerce-MyAccount-content td p {
    color: #f8f6f4 !important;
}

/* ALL table headers */
body.woocommerce-account .woocommerce-MyAccount-content th,
body.woocommerce-account .woocommerce-MyAccount-content thead th,
body.woocommerce-account .woocommerce-MyAccount-content tfoot th {
    color: #ecc882 !important;
}

/* ALL headings in content area */
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-MyAccount-content h4 {
    color: #ecc882 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ALL paragraphs */
body.woocommerce-account .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content p * {
    color: #f8f6f4 !important;
}

/* Marks / badges (order status) */
body.woocommerce-account .woocommerce-MyAccount-content mark,
body.woocommerce-account .woocommerce-MyAccount-content p mark {
    background: rgba(236, 200, 130, 0.15) !important;
    color: #ecc882 !important;
}

/* Address blocks */
body.woocommerce-account .woocommerce-MyAccount-content address,
body.woocommerce-account .woocommerce-MyAccount-content address * {
    color: #f8f6f4 !important;
}

/* Links stay gold */
body.woocommerce-account .woocommerce-MyAccount-content a:not(.woocommerce-button):not(.button) {
    color: #ecc882 !important;
}

/* Order detail footer totals */
body.woocommerce-account .woocommerce-MyAccount-content tfoot td,
body.woocommerce-account .woocommerce-MyAccount-content tfoot td *,
body.woocommerce-account .woocommerce-MyAccount-content tfoot td span.amount,
body.woocommerce-account .woocommerce-MyAccount-content tfoot td span.amount bdi {
    color: #f8f6f4 !important;
}

/* ═══════════════════════════════════════════
   My Account — Order Detail Text Visibility
   Instant CSS fix (no JS flash-of-gray)
   ═══════════════════════════════════════════ */

/* Order summary sentence */
body.woocommerce-account .woocommerce-MyAccount-content > p,
body.woocommerce-account .woocommerce-MyAccount-content > p mark,
body.woocommerce-account .woocommerce-MyAccount-content > p time {
    color: #f8f6f4 !important;
    opacity: 1 !important;
}

/* ORDER DETAILS heading */
body.woocommerce-account .woocommerce-order-details h2,
body.woocommerce-account .woocommerce-customer-details h2 {
    color: #ecc882 !important;
}

/* Table header cells — PRODUCT / TOTAL */
body.woocommerce-account .woocommerce-table--order-details thead th {
    color: #ecc882 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}

/* Table body cells — product name, quantity, amounts */
body.woocommerce-account .woocommerce-table--order-details td,
body.woocommerce-account .woocommerce-table--order-details td span,
body.woocommerce-account .woocommerce-table--order-details td bdi,
body.woocommerce-account .woocommerce-table--order-details td .woocommerce-Price-amount,
body.woocommerce-account .woocommerce-table--order-details td .woocommerce-Price-currencySymbol {
    color: #f8f6f4 !important;
    opacity: 1 !important;
}

/* Footer rows — SUBTOTAL, SHIPPING, TOTAL, PAYMENT METHOD labels */
body.woocommerce-account .woocommerce-table--order-details tfoot th {
    color: #f8f6f4 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    opacity: 1 !important;
}

/* Footer rows — values (amounts, payment method text) */
body.woocommerce-account .woocommerce-table--order-details tfoot td,
body.woocommerce-account .woocommerce-table--order-details tfoot td span,
body.woocommerce-account .woocommerce-table--order-details tfoot td bdi,
body.woocommerce-account .woocommerce-table--order-details tfoot td .woocommerce-Price-amount,
body.woocommerce-account .woocommerce-table--order-details tfoot td .woocommerce-Price-currencySymbol,
body.woocommerce-account .woocommerce-table--order-details tfoot td p {
    color: #f8f6f4 !important;
    opacity: 1 !important;
}

/* Address blocks */
body.woocommerce-account .woocommerce-customer-details address {
    color: #f8f6f4 !important;
}
body.woocommerce-account .woocommerce-customer-details address p {
    color: #f8f6f4 !important;
    opacity: 1 !important;
}

/* BILLING ADDRESS / SHIPPING ADDRESS headings */
body.woocommerce-account .woocommerce-column__title {
    color: #ecc882 !important;
}

/* ORDER DETAILS heading — catch all possible WooCommerce wrappers */
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details__title,
body.woocommerce-account .woocommerce-MyAccount-content .order-details h2,
body.woocommerce-account .woocommerce-MyAccount-content section h2 {
    color: #ecc882 !important;
    opacity: 1 !important;
}

/* ═══════════════════════════════════════════════════════════
   CHECKOUT — Dark Theme Override for Block Checkout
═══════════════════════════════════════════════════════════ */

.wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-totals-wrapper,
.wc-block-components-totals-item,
.wc-block-components-totals-footer-item,
.wc-block-components-order-summary-item,
.wc-block-checkout__sidebar {
    background: var(--ameline-navy) !important;
    color: var(--ameline-white) !important;
    border-color: var(--ameline-gold-dim) !important;
}

.wc-block-components-order-summary-item__description,
.wc-block-components-order-summary-item__total-price,
.wc-block-components-order-summary-item__individual-price,
.wc-block-components-order-summary-item__quantity,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: var(--ameline-white) !important;
}

.wc-block-components-checkout-place-order-button,
.wc-block-checkout__actions .wp-block-woocommerce-checkout-actions-block button,
.wc-block-components-button.wc-block-components-checkout-place-order-button {
    background: #ecc882 !important;
    color: #081C40 !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    padding: 16px 32px !important;
    min-height: 48px !important;
    transition: background 0.3s ease !important;
}
.wc-block-components-checkout-place-order-button:hover {
    background: #d4b06e !important;
    color: #081C40 !important;
}

.wc-block-components-totals-coupon__button,
.wc-block-components-panel__button {
    color: #ecc882 !important;
}

.page-template-default .entry-title,
.woocommerce-checkout .entry-title {
    font-family: Cormorant Garamond, Georgia, serif !important;
    color: #ecc882 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
}

/* ═══════════════════════════════════════════════════════════
   MOBILE-FIRST RESPONSIVE FIXES (QA Phase 2 + 3)
═══════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    .woocommerce-account .woocommerce-MyAccount-navigation,
    .woocommerce-MyAccount-navigation {
        float: none !important;
        width: 100% !important;
        margin-bottom: 24px !important;
        margin-right: 0 !important;
    }
    .woocommerce-account .woocommerce-MyAccount-content,
    .woocommerce-MyAccount-content {
        float: none !important;
        width: 100% !important;
        clear: both !important;
        margin-left: 0 !important;
    }
    .woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation + .woocommerce-MyAccount-content {
        width: 100% !important;
    }
    .woocommerce-account .woocommerce {
        display: block !important;
        grid-template-columns: none !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-account .u-columns {
        display: flex !important;
        flex-direction: column !important;
    }
    .woocommerce-account .u-columns .u-column1,
    .woocommerce-account .u-columns .u-column2,
    .woocommerce-account .u-columns .col-1,
    .woocommerce-account .u-columns .col-2 {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        padding: 0 !important;
    }
    .woocommerce-form-login .woocommerce-Button,
    .woocommerce-form-register .woocommerce-Button {
        min-width: 140px !important;
        white-space: nowrap !important;
        font-size: 11px !important;
        padding: 12px 24px !important;
    }
}

@media (max-width: 768px) {
    .ameline-bid-form {
        flex-direction: column !important;
        gap: 12px !important;
    }
    .ameline-bid-input-wrap,
    .ameline-bid-input {
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .ameline-bid-input {
        font-size: 16px !important;
        min-height: 48px !important;
        padding: 12px 14px 12px 32px !important;
    }
    .ameline-bid-submit {
        width: 100% !important;
        min-height: 48px !important;
        font-size: 13px !important;
        padding: 14px 20px !important;
    }
    .ameline-buy-now-btn {
        width: 100% !important;
        min-height: 48px !important;
        font-size: 13px !important;
        padding: 14px 20px !important;
        display: block !important;
        box-sizing: border-box !important;
        text-align: center !important;
    }
}

.ameline-footer__legal a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    padding: 10px 8px !important;
    font-size: 11px !important;
}

@media (max-width: 768px) {
    .woocommerce input[type="text"],
    .woocommerce input[type="email"],
    .woocommerce input[type="tel"],
    .woocommerce input[type="password"],
    .woocommerce input[type="number"],
    .woocommerce select,
    .woocommerce textarea,
    .ameline-bid-input {
        font-size: 16px !important;
        min-height: 48px !important;
    }
    .woocommerce button[type="submit"],
    .woocommerce .button,
    .woocommerce-Button {
        min-height: 48px !important;
        font-size: 13px !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-table--order-details,
    .woocommerce table.shop_table {
        display: block !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }
    .woocommerce-columns--addresses {
        display: flex !important;
        flex-direction: column !important;
    }
    .woocommerce-columns--addresses .woocommerce-column {
        width: 100% !important;
        float: none !important;
        margin-bottom: 16px !important;
    }
}

@media (max-width: 768px) {
    .wc-block-checkout__main,
    .wc-block-checkout__sidebar {
        width: 100% !important;
        max-width: 100% !important;
    }
    .wc-block-components-checkout-place-order-button {
        width: 100% !important;
        min-height: 52px !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-EditAccountForm .woocommerce-form-row,
    .woocommerce-EditAccountForm .form-row-first,
    .woocommerce-EditAccountForm .form-row-last {
        width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* ═══════════════════════════════════════════════════════════
   VISUAL / COSMETIC FIXES (QA Phase 1)
═══════════════════════════════════════════════════════════ */

.woocommerce button[name="save_account_details"],
.woocommerce-Button--save,
.woocommerce #place_order {
    background: #ecc882 !important;
    background-color: #ecc882 !important;
    color: #081C40 !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    padding: 14px 32px !important;
    cursor: pointer !important;
    transition: background 0.3s ease !important;
}
.woocommerce button[name="save_account_details"]:hover,
.woocommerce-Button--save:hover {
    background: #d4b06e !important;
    color: #081C40 !important;
}

.ameline-testimonials {
    margin-bottom: 0 !important;
    padding-bottom: 40px !important;
}
.ameline-cta-section {
    margin-bottom: 0 !important;
    padding-bottom: 40px !important;
}

.woocommerce-cart .cross-sells,
.cart-empty + .cross-sells,
.wc-empty-cart-message + .cross-sells {
    display: none !important;
}

.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title {
    font-family: Cormorant Garamond, Georgia, serif !important;
    color: #ecc882 !important;
}

/* Fix — Full-width auction form containers on mobile */
@media (max-width: 768px) {
    .ameline-auction-wrap,
    .ameline-bid-form,
    .ameline-bid-input-wrap,
    .ameline-buy-now-wrap {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    .ameline-auction-wrap {
        padding: 16px !important;
    }
}

/* Fix: Product page mobile centering — reset ALL Solace/Bootstrap grid asymmetry */
@media (max-width: 768px) {
    .single-product .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .single-product .nv-index-posts.nv-shop.col {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .single-product .shop-container.container {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .nv-single-product-top {
        flex-direction: column !important;
        padding: 0 !important;
    }
    .woocommerce div.product div.images,
    .woocommerce div.product .woocommerce-product-gallery {
        margin: 0 !important;
        padding: 16px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        float: none !important;
    }
    .woocommerce div.product div.summary,
    .woocommerce div.product .entry-summary {
        margin: 0 !important;
        padding: 0 16px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        float: none !important;
    }
    .woocommerce .woocommerce-breadcrumb {
        padding: 8px 16px !important;
    }
    .woocommerce-tabs,
    .woocommerce div.product .woocommerce-tabs {
        padding: 0 16px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
    .related.products,
    .woocommerce div.product .related {
        padding: 0 16px !important;
    }
}

/* Fix: Login prompt button text must be dark on gold background */
.ameline-login-prompt a {
    color: #081C40 !important;
    background: #ecc882 !important;
}
.ameline-login-prompt a:hover {
    color: #081C40 !important;
    background: #d4b06e !important;
}

/* ═══════════════════════════════════════════════════════════
   AUCTION WRAP — Consistent internal alignment
═══════════════════════════════════════════════════════════ */

.ameline-auction-wrap > * {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

.ameline-countdown {
    display: flex !important;
    justify-content: stretch !important;
    padding: 20px !important;
}
.ameline-countdown .ameline-countdown-item,
.ameline-countdown > div {
    flex: 1 !important;
}

.ameline-bid-info {
    grid-template-columns: 1fr 1fr 1fr !important;
}

.ameline-reserve-not-met {
    padding: 10px 20px !important;
}

.ameline-login-prompt {
    padding: 20px !important;
}
.ameline-login-prompt a {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.ameline-bid-form {
    padding: 0 20px 20px !important;
}

.ameline-buy-now-wrap {
    padding: 0 20px 20px !important;
}

/* Fix: Desktop product page — align image and summary columns */
.nv-single-product-top {
    display: flex !important;
    align-items: flex-start !important;
}
.nv-single-product-top .woocommerce-product-gallery {
    position: sticky !important;
    top: 80px !important;
}

/* Fix: Remove summary top margin to align with gallery */
.nv-single-product-top .entry-summary {
    margin-top: 0 !important;
}

/* ═══════════════════════════════════════════════════════════
   PRODUCT PAGE — Match image & summary container heights
   Gallery is 591px; tighten summary to match
═══════════════════════════════════════════════════════════ */

.woocommerce div.product .entry-summary {
    padding: 20px 24px !important;
}

.woocommerce div.product .product_title {
    font-size: 32px !important;
    margin-bottom: 6px !important;
    line-height: 1.2 !important;
}

.ameline-current-bid-label {
    font-size: 10px !important;
    margin-bottom: 2px !important;
}

.ameline-current-bid-amount {
    font-size: 28px !important;
    margin-bottom: 8px !important;
}

.ameline-auction-wrap {
    padding: 16px 20px !important;
    margin-top: 12px !important;
    margin-bottom: 12px !important;
}

.ameline-countdown {
    padding: 12px !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
}
.ameline-countdown .ameline-countdown-item,
.ameline-countdown > div {
    padding: 8px 12px !important;
}
.ameline-countdown .value,
.ameline-countdown-item .value,
.ameline-countdown-item > span:first-child,
.ameline-countdown-item > .number {
    font-size: 36px !important;
    line-height: 1.1 !important;
}
.ameline-countdown .label,
.ameline-countdown-item .label,
.ameline-countdown-item > span:last-child {
    font-size: 9px !important;
}

.ameline-bid-info {
    padding: 12px 14px !important;
    margin-bottom: 14px !important;
}
.ameline-bid-info .ameline-bid-label,
.ameline-bid-info dt {
    font-size: 9px !important;
}
.ameline-bid-info .ameline-bid-value,
.ameline-bid-info dd,
.ameline-bid-info .woocommerce-Price-amount {
    font-size: 18px !important;
}

.ameline-reserve-not-met {
    margin: 6px 0 !important;
    padding: 6px 14px !important;
    font-size: 11px !important;
}

.ameline-login-prompt {
    padding: 14px !important;
    margin: 8px 0 !important;
}
.ameline-login-prompt p {
    margin-bottom: 8px !important;
    font-size: 11px !important;
}

.ameline-bid-form {
    padding: 0 0 12px !important;
    margin-bottom: 8px !important;
}

.ameline-buy-now-wrap {
    padding: 0 0 8px !important;
}

/* Tighten countdown + bid form to match gallery height when logged in */
.ameline-countdown {
    padding: 8px !important;
    margin-bottom: 10px !important;
}
.ameline-countdown .ameline-countdown-item,
.ameline-countdown > div {
    padding: 6px 10px !important;
}
.ameline-countdown .value,
.ameline-countdown-item .value,
.ameline-countdown-item > span:first-child,
.ameline-countdown-item > .number {
    font-size: 28px !important;
    line-height: 1.1 !important;
}
.ameline-countdown .label,
.ameline-countdown-item .label,
.ameline-countdown-item > span:last-child {
    font-size: 8px !important;
    letter-spacing: 1.5px !important;
}

.ameline-auction-wrap {
    padding: 12px 16px !important;
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

.ameline-bid-form {
    padding: 0 !important;
    margin-bottom: 6px !important;
    gap: 8px !important;
}

.ameline-buy-now-wrap {
    padding: 0 !important;
    margin-top: 4px !important;
}

.ameline-bid-info {
    padding: 10px 14px !important;
    margin-bottom: 10px !important;
}

/* Fix: Reserve price warning — dark theme styling */
.ameline-reserve-not-met {
    background: rgba(155, 34, 38, 0.15) !important;
    color: #ecc882 !important;
    border-left: 3px solid #9B2226 !important;
    border-radius: 4px !important;
}

/* ═══════════════════════════════════════════════════════════
   CHECKOUT PAGE — Complete dark theme override
═══════════════════════════════════════════════════════════ */

:root,
body.woocommerce-checkout {
    --sol-checkout-button-color-bg: #ecc882 !important;
    --sol-checkout-button-color-text: #081C40 !important;
}

body.woocommerce-checkout button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
    background: #ecc882 !important;
    background-color: #ecc882 !important;
    color: #081C40 !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    padding: 16px 32px !important;
    min-height: 48px !important;
    transition: background 0.3s ease !important;
}
body.woocommerce-checkout button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button:hover {
    background: #d4b06e !important;
    color: #081C40 !important;
}

.woocommerce-checkout .entry-title,
.woocommerce-checkout .wp-block-post-title {
    font-family: Cormorant Garamond, Georgia, serif !important;
    color: #ecc882 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
}

.wc-block-checkout__sidebar,
.wp-block-woocommerce-checkout-order-summary-block {
    background: #081C40 !important;
    border: 0.5px solid rgba(236, 200, 130, 0.15) !important;
    border-radius: 8px !important;
}

.wc-block-components-order-summary .wc-block-components-panel__button,
.wc-block-checkout__sidebar .wc-block-components-title {
    color: #ecc882 !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
}

.wc-block-checkout__sidebar .wc-block-components-totals-item__label,
.wc-block-checkout__sidebar .wc-block-components-totals-item__value,
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__description,
.wc-block-checkout__sidebar .wc-block-components-product-name {
    color: #F8F6F4 !important;
}

.wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color: #ecc882 !important;
    font-family: Cormorant Garamond, Georgia, serif !important;
    font-size: 20px !important;
}

.wc-block-checkout__sidebar .wc-block-components-totals-coupon__button,
.wc-block-checkout__sidebar .wc-block-components-panel__button {
    color: #ecc882 !important;
}

.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-text-input textarea {
    background: rgba(6, 21, 48, 0.6) !important;
    border: 1px solid rgba(236, 200, 130, 0.2) !important;
    color: #F8F6F4 !important;
    border-radius: 4px !important;
}
.wc-block-checkout .wc-block-components-text-input input:focus {
    border-color: #ecc882 !important;
}

.wc-block-checkout .wc-block-components-radio-control__option,
.wc-block-checkout .wc-block-components-payment-method-label {
    border-color: rgba(236, 200, 130, 0.2) !important;
}

.wc-block-checkout .wc-block-components-radio-control__input {
    border-color: #ecc882 !important;
}
.wc-block-checkout .wc-block-components-radio-control__input:checked {
    border-color: #ecc882 !important;
    background: #ecc882 !important;
}

.wc-block-checkout .wc-block-components-checkbox__input[type="checkbox"] {
    border-color: rgba(236, 200, 130, 0.3) !important;
}
.wc-block-checkout .wc-block-components-checkbox__input[type="checkbox"]:checked {
    background: #ecc882 !important;
    border-color: #ecc882 !important;
}

.wc-block-checkout__terms,
.wc-block-checkout__terms a {
    color: rgba(248, 246, 244, 0.5) !important;
}
.wc-block-checkout__terms a:hover {
    color: #ecc882 !important;
}

.wc-block-checkout__actions .wc-block-components-checkout-return-to-cart-button {
    color: #ecc882 !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control {
    margin-bottom: 0 !important;
}

/* Checkout + Cart page titles — gold */
body.woocommerce-checkout .the-title h1,
body.woocommerce-cart .the-title h1 {
    color: #ecc882 !important;
    font-family: Cormorant Garamond, Georgia, serif !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
}

/* Fix: Checkout floating labels — prevent overlap with input text */
.wc-block-checkout .wc-block-components-text-input {
    position: relative !important;
}

.wc-block-checkout .wc-block-components-text-input.is-active label,
.wc-block-checkout .wc-block-components-text-input label {
    color: rgba(236, 200, 130, 0.7) !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-text-input textarea {
    padding: 24px 16px 8px !important;
    height: 56px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.wc-block-checkout .wc-block-components-address-card {
    background: rgba(6, 21, 48, 0.6) !important;
    border: 1px solid rgba(236, 200, 130, 0.2) !important;
    border-radius: 4px !important;
    color: #F8F6F4 !important;
}
.wc-block-checkout .wc-block-components-address-card__edit {
    color: #ecc882 !important;
}

/* Fix: Checkout checkboxes — proper alignment and spacing */
.wc-block-components-checkbox label {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding-left: 0 !important;
    cursor: pointer !important;
    position: relative !important;
}

.wc-block-components-checkbox__input[type="checkbox"] {
    position: relative !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background: rgba(6, 21, 48, 0.6) !important;
    border: 1.5px solid rgba(236, 200, 130, 0.3) !important;
    border-radius: 3px !important;
    cursor: pointer !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.wc-block-components-checkbox__input[type="checkbox"]:checked {
    background: #ecc882 !important;
    border-color: #ecc882 !important;
}

.wc-block-components-checkbox__mark {
    position: absolute !important;
    left: 3px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 14px !important;
    height: 14px !important;
    pointer-events: none !important;
    fill: #081C40 !important;
}

.wc-block-components-checkbox__label {
    display: inline !important;
    font-family: Montserrat, sans-serif !important;
    font-size: 12px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #F8F6F4 !important;
    line-height: 1.4 !important;
}

.wc-block-components-radio-control__option {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 16px !important;
}

.wc-block-components-radio-control__input {
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

/* Fix: Radio button options — prevent text clipping */
.wc-block-components-radio-control__option {
    position: relative !important;
    padding: 14px 16px 14px 44px !important;
}
.wc-block-components-radio-control__input[type="radio"] {
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}
.wc-block-components-radio-control__option-layout {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* Fix: Checkbox tick mark — center inside the checkbox */
.wc-block-components-checkbox label {
    position: relative !important;
}
.wc-block-components-checkbox__mark {
    position: absolute !important;
    left: 3px !important;
    top: 3px !important;
    transform: none !important;
    width: 14px !important;
    height: 14px !important;
    pointer-events: none !important;
    fill: #081C40 !important;
    margin: 0 !important;
}

/* Hide Solace theme's phone field on registration — row hidden via JS fallback in MU plugin */
#reg_phone { display: none !important; }
label[for="reg_phone"] { display: none !important; }

/* Fix: About/Contact page — remove extra spacing before first heading */
.page .entry-content > div > h2:first-child,
.page .entry-content > h2:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.page .entry-content > div:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Fix: About/Contact page — remove top spacing on first heading */
.the-content > div > h2:first-child {
    margin-top: 0 !important;
}

/* Fix: About/Contact page — reduce content area padding */
.page .boxes-content {
    padding-top: 32px !important;
    padding-bottom: 40px !important;
}

/* Fix: About/Contact page — remove inner wrapper padding */
body.page article .boxes-content > .the-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Auctions loop — status/countdown text size */
.ameline-loop-status {
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
}

/* Homepage cards — align prices by letting title flex-grow */
.ameline-card__body {
    display: flex !important;
    flex-direction: column !important;
}
.ameline-card__title {
    flex-grow: 1 !important;
}

/* Auctions page — align product cards consistently */
.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
}
.woocommerce ul.products li.product .nv-card-content-wrapper {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}
.woocommerce ul.products li.product h5.woocommerce-loop-product__title {
    flex-grow: 1 !important;
}

/* Auctions page — match product card background to homepage dark navy */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product .nv-card-content-wrapper {
    background: transparent !important;
    background-color: transparent !important;
}

/* Add subtle border like homepage cards instead */
.woocommerce ul.products li.product .nv-card-content-wrapper {
    border: 0.5px solid rgba(236, 200, 130, 0.15) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

/* Auctions page — remove card link background so it matches page colour */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    background: transparent !important;
    background-color: transparent !important;
}

/* Remove inner outlines from auction product cards */
.woocommerce ul.products li.product .sp-product-image,
.woocommerce ul.products li.product .img-wrap,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    outline: none !important;
    border: none !important;
}

/* Remove ALL inner borders/outlines from auction product cards */
.woocommerce ul.products li[class*="product"] * {
    outline: none !important;
}
.woocommerce ul.products li[class*="product"] .sp-product-image,
.woocommerce ul.products li[class*="product"] .img-wrap,
.woocommerce ul.products li[class*="product"] img {
    border: none !important;
    box-shadow: none !important;
}

/* Fix image background to match page — removes inner outline */
.woocommerce ul.products li[class*="product"] img {
    background: transparent !important;
    background-color: transparent !important;
}

/* Match auctions page cards to homepage — square corners, solid background */
.woocommerce ul.products li.product .nv-card-content-wrapper {
    border-radius: 0px !important;
    background: rgb(10, 31, 74) !important;
}

/* Remove rounded corners from product images on auctions page */
.woocommerce ul.products li[class*="product"] img {
    border-radius: 0 !important;
    margin-bottom: 0 !important;
}

/* Remove card border on auctions page — eliminates the inner outline */
.woocommerce ul.products li.product .nv-card-content-wrapper {
    border: none !important;
}

/* Force image to fill card edge-to-edge */
.woocommerce ul.products li.product .sp-product-image,
.woocommerce ul.products li.product .img-wrap,
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .sp-product-image img {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

/* Final fix — card background matches page, image fills edge-to-edge */
.woocommerce ul.products li.product .nv-card-content-wrapper {
    background: #061530 !important;
    overflow: hidden !important;
}
.woocommerce ul.products li.product .sp-product-image {
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Kill ALL padding on card wrapper chain */
.woocommerce ul.products li.product .nv-card-content-wrapper,
.woocommerce ul.products li.product .nv-card-content-wrapper > * {
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: 100% !important;
}

/* Remove padding and border from the product list item itself */
.woocommerce ul.products li.product {
    padding: 0 !important;
    border: none !important;
}

/* Match auctions cards to homepage: full-bleed image + padded text area */

/* Card: solid navy bg, no padding, square */
.woocommerce ul.products li.product {
    padding: 0 !important;
    border: none !important;
}
.woocommerce ul.products li.product .nv-card-content-wrapper {
    background: rgb(10, 31, 74) !important;
    border: none !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
}

/* Image: full-bleed, no gap */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link,
.woocommerce ul.products li.product .sp-product-image,
.woocommerce ul.products li.product .img-wrap {
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}
.woocommerce ul.products li.product img {
    border-radius: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    width: 100% !important;
    display: block !important;
}

/* Text content: padded like homepage body (20px 22px) */
.woocommerce ul.products li.product h5.woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .ameline-loop-status {
    padding-left: 22px !important;
    padding-right: 22px !important;
}
.woocommerce ul.products li.product h5.woocommerce-loop-product__title {
    padding-top: 20px !important;
}

/* Button: padded area, full-width feel like homepage */
.woocommerce ul.products li.product .ameline-bid-btn {
    margin-left: 22px !important;
    margin-right: 22px !important;
    margin-bottom: 24px !important;
}

/* Fix button overflow — constrain width within card */
.woocommerce ul.products li.product .ameline-bid-btn {
    width: auto !important;
    max-width: calc(100% - 44px) !important;
    box-sizing: border-box !important;
}

/* Restore flex chain so title flex-grow aligns prices */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}
.woocommerce ul.products li.product h5.woocommerce-loop-product__title {
    flex-grow: 1 !important;
}

/* Remove luminosity blend + hover color shift on product images */
.woocommerce ul.products li.product img,
.woocommerce .products .product img,
.woocommerce .products .product:hover img {
    mix-blend-mode: normal !important;
    opacity: 1 !important;
}

@media (max-width: 768px) {
    /* Let the framework's column padding work normally — just make the grid one centered column */
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: 1fr !important;
        justify-content: stretch !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .woocommerce ul.products li.product {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

@media (max-width: 768px) {
    .post-type-archive-product .row,
    .archive.post-type-archive-product .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .post-type-archive-product .nv-index-posts.nv-shop {
        padding-left: 16px !important;
        padding-right: 16px !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* ── Hide Solace's dead back-to-top button (topbutton.js missing, button non-functional) ── */
.box-scroll-to-top { display: none !important; }

/* ── Order summary: all numeric values in Cormorant Garamond, lining figures ── */
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item__total-price .wc-block-formatted-money-amount,
.wc-block-components-order-summary-item .wc-block-formatted-money-amount,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-family: 'Cormorant Garamond', serif !important;
}
/* Subtotal/Flat rate values: slightly larger so Cormorant numerals read cleanly */
.wc-block-components-totals-item__value {
    font-size: 16px !important;
}
/* Shipping option price + order summary header total */
.wc-block-components-radio-control__secondary-label .wc-block-formatted-money-amount,
.wc-block-components-checkout-order-summary__title .wc-block-formatted-money-amount {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 16px !important;
}
/* Lining figures: uniform baseline height for all order-summary prices */
.wc-block-components-totals-item__value,
.wc-block-components-order-summary-item .wc-block-formatted-money-amount,
.wc-block-components-radio-control__secondary-label .wc-block-formatted-money-amount,
.wc-block-components-checkout-order-summary__title .wc-block-formatted-money-amount,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-variant-numeric: lining-nums !important;
    font-feature-settings: "lnum" 1 !important;
}

/* ── Hide checkout coupon panel ─────────────────────────────────────────── */
.wc-block-components-totals-coupon,
[class*="order-summary-coupon"] {
    display: none !important;
}

/* ── FIX A: Checkout select dropdowns — dark bg + label-clear padding ────── */
.wc-blocks-components-select__select,
select.wc-blocks-components-select__select {
    background-color: #0A1F33 !important;
    color: #F8F6F4 !important;
    padding-top: 24px !important;
    padding-bottom: 8px !important;
    min-height: 58px !important;
    height: auto !important;
    border-color: rgba(236, 200, 130, 0.2) !important;
}
.wc-blocks-components-select__select option {
    background-color: #081C40;
    color: #F8F6F4;
}

/* ── FIX B: Place Order button — override Solace CSS var + match specificity ── */
.wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button__text,
.wc-block-components-checkout-place-order-button .wc-block-components-button__text,
.wc-block-components-checkout-place-order-button * {
    color: #081C40 !important;
}
body.woocommerce-checkout button.wc-block-components-button.wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button__text {
    --sol-checkout-button-color: #081C40 !important;
    color: #081C40 !important;
}

/* ── Bid History table: mobile stacked-card layout ─────────────────────── */

/* Safety net: never let the table force whole-page horizontal scroll */
.ameline-bid-history { overflow-x: auto; }

@media (max-width: 600px) {
    /* Hide the header row (labels move onto each card) */
    .ameline-bid-history thead {
        position: absolute;
        left: -9999px;
    }
    /* Each row becomes a stacked card */
    .ameline-bid-history table,
    .ameline-bid-history tbody,
    .ameline-bid-history tr,
    .ameline-bid-history td {
        display: block;
        width: 100% !important;
    }
    .ameline-bid-history tr {
        margin-bottom: 12px;
        padding: 12px 16px;
        border: 1px solid rgba(236, 200, 130, 0.2);
        border-radius: 8px;
    }
    .ameline-bid-history td {
        padding: 4px 0 !important;
        border: none !important;
        text-align: left !important;
        white-space: normal !important;
    }
    /* Bidder name = card title (gold), amount labeled, date de-emphasized */
    .ameline-bid-history td:nth-child(1) { font-weight: 600; color: #ecc882; }
    .ameline-bid-history td:nth-child(2)::before { content: "Bid: "; color: rgba(248,246,244,0.6); }
    .ameline-bid-history td:nth-child(3) { font-size: 13px; color: rgba(248,246,244,0.6); }
}
