/*
Theme Name: EVE LI Fine Jewellery
Description: Custom EVE LI Fine Jewellery WooCommerce theme.
Version: 1.2.38
Text Domain: eveli
*/

/* --- Aggressive Reset for Cart --- */
.custom-cart-wrapper,
.custom-cart-wrapper *,
.cart_totals,
.cart_totals *,
.custom-checkout-grid,
.custom-checkout-grid * {
    box-sizing: border-box !important;
}

/* --- Fonts & Base --- */
:root {
    /* --- Primary Colors --- */
    --color-black: #111111;
    --color-dark-gold: #BD8210;
    --color-gold: #F1A603;
    --color-light-gold: #FCC73F;

    /* --- Secondary Colors --- */
    --color-white: #ffffff;
    --color-pale-grey: #f6f4f9;
    --color-light-beige: #e8e3dd;
    --color-brown: #664942;
    --color-grey: #6f6f6f;
    --color-dark-grey: #282828;
    --color-purple: #351554;
    --color-dark-purple: #250f3b;

    /* --- Typography --- */
    --font-heading: 'Minion Pro', 'Libre Baskerville', 'Playfair Display', serif; 
    --font-body: 'Josefin Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    font-weight: 400 !important;
    color: var(--color-black);
    margin-top: 0;
    margin-bottom: 0.5em;
}

/* H1 - Main Heading (Brandbook: 24pt) */
h1, .h1 {
    font-size: 2rem !important; /* ~32px */
    line-height: 1.2;
}

/* H2 - Secondary Heading (Brandbook: 14pt) */
h2, .h2 {
    font-size: 1.25rem !important; /* ~20px */
    line-height: 1.3;
}

/* H3 - Tertiary Heading (Brandbook: 12pt All Caps) */
h3, .h3 {
    font-size: 1rem !important; /* ~16px */
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

body {
    background-color: #fff;
    font-family: var(--font-body) !important;
    color: var(--color-black);
    margin: 0;
    padding: 0;
}

p, .eveli-text {
    font-family: var(--font-body);
    font-weight: 300; /* Light */
    font-size: 1rem !important; /* 16px */
}

/* Quote / Introduction (Brandbook: Josefin Sans Italic 10pt/14pt) */
blockquote, .eveli-quote {
    font-family: var(--font-body);
    font-style: italic;
    font-weight: 300 !important; /* Light Italic */
    font-size: 1.125rem !important; /* ~18px */
    color: var(--color-brown);
    border-left: 3px solid var(--color-gold);
    padding-left: 1rem;
    margin-left: 0;
}

.press-slider .swiper-wrapper {
    transition-timing-function: linear !important;
}

.custom-cart-header-container {
    max-width: 1440px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.cart-custom-heading {
    font-family: var(--font-heading) !important;
    font-size: 32px !important;
    margin: 80px 0 0px !important;
    font-weight: 400 !important;
}

/* --- Main Grid Layout --- */
.custom-cart-wrapper {
    display: grid !important;
    grid-template-columns: 1fr 400px !important;
    gap: 60px !important;
    max-width: 1440px !important;
    margin: 0 auto !important;
    padding: 20px !important;
    align-items: start !important;
}

/* --- Left Column: Cart Items --- */
.woocommerce-cart-form {
    width: 100% !important;
    margin: 0 !important;
}

.cart-items-list {
    width: 100% !important;
}

.cart-item-row {
    display: flex !important;
    align-items: center !important;
    padding: 30px 0 !important;
    border-bottom: 1px solid var(--color-gold)24 !important;
    position: relative !important;
}

.item-image {
    flex: 0 0 140px !important;
}

.item-image img {
    /*     width: 120px !important; */
    height: auto !important;
    border-radius: 4px !important;
}

.item-details {
    flex: 1 !important;
    padding-left: 20px !important;
}

.item_title_varation {
    margin-bottom: 12px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.item-title a {
    font-family: var(--font-heading) !important;
    font-size: 24px !important;
    color: var(--color-black) !important;
    font-weight: 500;
    text-decoration: none !important;
}

.item-meta {
    margin-bottom: 12px !important;
}

/* Cart: Custom manual variation attributes – label: value */
.item-meta-custom,
.summary-item-meta-custom {
    margin: 12px 0px 8px !important;
}

.custom-cart-var {
    margin: 0 !important;
    font-family: "Josefin Sans", sans-serif !important;
    font-size: 14px !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 6px !important;
}

.summary-item-meta-custom .custom-cart-var {
    font-size: 16px !important;
    margin-bottom: 5px !important;
}

.custom-cart-var .var-name {
    font-weight: 400 !important;
    color: var(--color-gold) !important;
    text-transform: capitalize;
}

.custom-cart-var .var-val {
    color: var(--color-black) !important;
}


.item-price-qty {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
}

.item-price {
    font-family: var(--font-heading) !important;
    font-size: 24px !important;
    font-weight: 500 !important;
}

/* Quantity Control */
.quantity {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.quantity button {

    border-radius: 500px !important;
    background: none !important;
    color: #fff !important;
    border: none !important;
    font-size: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
   padding: 0px 13px 1px !important;
    line-height: 1 !important;
}

.quantity button:hover {
    background: var(--color-gold) !important;
}

.quantity.buttons_added {
    gap: 0px !important;
}

.quantity .qty {
    width: 40px !important;
    border: none !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--color-black) !important;
    padding: 0 !important;
}

.item-remove a.remove {
    font-size: 24px !important;
    color: var(--color-black) !important;
    text-decoration: none !important;
}

.item-remove a.remove:hover {
    color: var(--color-black) !important;
    background: var(--color-gold) !important;
}

/* --- Right Column: Totals Box --- */
.cart-collaterals {
    width: 100% !important;
}

.cart_totals {
    border: 1px solid var(--color-gold)24 !important;
    padding: 24px !important;
    background: #fff !important;
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    font-family: "Josefin Sans", sans-serif;
}

.totals-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100%;
}

.cart_totals .coupon-section,
#coupon-placeholder {
    width: 100%;
    margin-bottom: 0px !important;
}

.totals-title {
    font-family: var(--font-heading) !important;
    font-size: 28px !important;
    color: var(--color-black) !important;
}

.totals-amount {
    color: var(--color-gold) !important;
    font-size: 28px !important;
    font-weight: 600 !important;
}

/* .woocommerce-Price-amount.amount {
    font-weight: 400;
    font-size: 34px;
    letter-spacing: -3%;
    font-family: "Minion Pro", serif !important;
    color: var(--color-black);
} */

.totals-amount .woocommerce-Price-amount {
    color: var(--color-gold) !important;
}

/* Coupon Box */
.coupon-section {
    border-bottom: 1px solid var(--color-gold)24 !important;

}

.coupon-section input {
    flex: 1 !important;
    border: none !important;
    padding: 12px 0 !important;
    font-size: 15px !important;
    outline: none !important;
}

.apply-coupon-btn {
    background: var(--color-gold) !important;
    color: #000000 !important;
    border: none !important;
    padding: 10px 30px !important;
    font-weight: 400 !important;
    border-radius: 0px !important;
    cursor: pointer !important;
    transition: all 0.2s ease;
    font-family: "Josefin Sans", sans-serif;

}

.apply-coupon-btn:disabled {
    cursor: not-allowed !important;
    opacity: 0.5 !important;
}

/* Free Shipping Info */
.shipping-info-row {
    display: flex !important;
    justify-content: space-between !important;
    background: var(--color-gold)0A !important;
    border: 1px solid var(--color-gold)26 !important;
    padding: 18px !important;
    width: 100%;
    font-size: 15px !important;
    font-family: "Josefin Sans", sans-serif;
}

.shipping-info-row .value {
    font-weight: 700 !important;
}

/* Estimated Summary Box */
.estimated-summary {
    border: 1px solid var(--color-gold)26 !important;
    padding: 12px 16px !important;
    width: 100%;
}

.summary-heading {
    font-size: 18px !important;
    font-weight: 600 !important;
    border-bottom: 1px solid #f9f4e8 !important;
    padding-bottom: 10px;
}

.summary-row {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    font-size: 15px;
    align-items: center;
}

.summary-row .value,
.estimated-summary .woocommerce-Price-amount.amount {
    font-weight: 600 !important;
    color: var(--color-gold) !important;
    font-size: 22px;
    font-family: "Josefin Sans", sans-serif !important;
}



.subtotal-row .value {
    color: var(--color-gold) !important;
    font-size: 22px !important;
}

/* PayPal Button area */
.paypal-btn-custom {
    background: #fef6e4 !important;
    border: 1px solid #fbdba2 !important;
    padding: 20px !important;
    text-align: center !important;
    border-radius: 4px !important;
    margin-bottom: 20px !important;
    cursor: pointer !important;
}

.paypal-text {
    font-size: 16px !important;
}

.paypal-text strong {
    color: #003087 !important;
}

.or-separator {
    text-align: center !important;
    margin: 20px 0 0px !important;
    color: #000000 !important;
    font-size: 14px !important;
    position: relative !important;
}

.or-separator::before,
.or-separator::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    width: 42% !important;
    height: 1px !important;
    background: var(--color-gold)26 !important;
}

.or-separator::before {
    left: 0 !important;
}

.or-separator::after {
    right: 0 !important;
}

.cart_totals .wc-proceed-to-checkout {
    width: 100% !important;
    padding: 0 !important;
}

/* Checkout Button */
.wc-proceed-to-checkout a.checkout-button {
    display: block !important;
    background: var(--color-gold) !important;
    color: var(--color-black) !important;
    text-align: center !important;
    padding: 17px 11px 14px 10px !important;
    border-radius: 0px !important;
    font-weight: 600 !important;
    text-transform: capitalize !important;
    font-size: 18px !important;
    text-decoration: none !important;
    letter-spacing: 1px !important;
}

.wc-proceed-to-checkout a {
    margin: 0px !important;
}

/* --- Checkout Multi-step Styles --- */
.checkout-progress-wrapper {
    max-width: 1300px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

.step-text {
    font-size: 34px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-bottom: 20px !important;
    color: var(--color-black) !important;
    font-family: var(--font-heading) !important;
}

.progress-bar-container {
    height: 2px !important;
    background: #f9f4e8 !important;
    width: 100% !important;
    position: relative !important;
}

.progress-bar-fill {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    height: 100% !important;
    background: var(--color-gold) !important;
    width: 25%;
    transition: width 0.4s ease !important;
}

.custom-checkout-grid {
    display: grid !important;
    grid-template-columns: 1fr 450px !important;
    gap: 30px !important;
    max-width: 1300px !important;
    margin: 0 auto !important;
    padding: 50px 0px 100px !important;
}

.checkout-step {
    background: #fff !important;
    border: 1px solid #A0A0A024 !important;
    padding: 45px 24px !important;
}

#step-3.checkout-step {
    background: #A0A0A00A !important;
    border: 1px solid #A0A0A024 !important;
    padding: 45px 24px !important;
}

#step-3 .step-title-text {
    font-size: 18px;
    font-weight: 700;
}

/* Step Summary Blocks */
.step-summary-block {
    background: #A0A0A00A !important;
    border: 1px solid #A0A0A024 !important;
    padding: 25px 40px !important;
    margin-bottom: 0px !important;
    position: relative !important;
}

.summary-content-inner {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}

.edit-step-link {
    color: var(--color-gold) !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.edit-step-link:hover {
    text-decoration: underline !important;
}

.step-heading {
    font-size: 32px !important;
    margin-bottom: 10px !important;
    font-weight: 400 !important;
    font-family: var(--font-heading) !important;
}

.step-subtext {
    color: var(--color-black) !important;
    margin-bottom: 40px !important;
    font-size: 15px !important;
}

.woocommerce-checkout #main-content {
    max-width: 1300px !important;
    margin: 0 auto !important;
    padding: 80px 20px 0px 20px;
}

.woocommerce-checkout .woocommerce-info.notice-routed {
    display: none !important;
}


.woocommerce-checkout .form-row label {
    display: block !important;
    color: var(--color-black) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    margin-bottom: 5px !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .login-fields input,
.woocommerce-checkout textarea {
    width: 100% !important;
    border: none !important;
    border-bottom: 1px solid var(--color-gold) !important;
    padding: 7px 0px 10px 0px !important;
    font-size: 16px !important;
    background: transparent !important;
    outline: none !important;
    font-family: "Josefin Sans", sans-serif !important;
}

/* 2-Column fields */
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
    width: 48% !important;
    float: none !important;
    display: inline-block !important;
}

.woocommerce-checkout .form-row-last {
    margin-left: 3% !important;
}

/* Tan Boxes */
.custom-tan-box {
    background: #fbfbfb !important;
    padding: 14px 16px !important;
    margin-bottom: 30px !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.box-heading {
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 15px !important;
    color: var(--color-black) !important;
}

.method-option {
    font-size: 15px !important;
    color: var(--color-gold) !important;
}

.method-option .checkmark {
    margin-right: 10px !important;
    font-weight: bold !important;
}

.additional-notes-container textarea {
    border-bottom: 1px solid #eee !important;
    /* Lighter underline for notes */
    height: 100px !important;
}

.optional-field-toggle {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    color: var(--color-black) !important;
    font-size: 16px !important;
    cursor: pointer !important;
    margin: 20px 0px !important;
    font-weight: 500 !important;
    font-family: "Josefin Sans", sans-serif !important;

}

.plus-icon {
    width: 24px !important;
    height: 24px !important;
    border: 1px solid var(--color-black) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    line-height: 1 !important;
}

.step-btn.proceed-btn,
.proceed-btn {
    background: var(--color-gold) !important;
    color: var(--color-black) !important;
    padding: 18px 45px !important;
    border: none !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    font-size: 16px !important;
    font-family: "Josefin Sans", sans-serif !important;

}

.custom-checkout-review-order {
    border: 1px solid #f9f4e8 !important;
    padding: 24px !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.summary-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 40px !important;
}

.summary-title {
    font-size: 32px !important;
    margin: 0 !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.edit-cart-link {
    color: var(--color-gold) !important;
    text-decoration: underline !important;
    font-size: 14px !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.summary-item-row {
    display: grid !important;
    grid-template-columns: 90px 1fr 70px !important;
    gap: 10px !important;
    align-items: top !important;
    padding-bottom: 25px !important;
    margin-bottom: 25px !important;
    border-bottom: 1px solid #f9f4e8 !important;
}

.summary-item-image img {
    border-radius: 4px !important;
}

.summary-item-name {
    font-size: 22px !important;
    font-weight: 500 !important;
    font-family: var(--font-heading) !important;
}

/* ── Checkout review: variation attributes ── */
.summary-item-details {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    align-items: flex-start !important;
}

.summary-item-meta {
    width: 100% !important;
}

/* Checkout review: variation attributes – label: value on ONE line */
.summary-item-meta dl.variation {
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    gap: 2px 5px !important;
    align-items: baseline !important;
}

.summary-item-meta dl.variation dt {
    font-weight: 700 !important;
    color: var(--color-gold) !important;
    font-size: 13px !important;
    white-space: nowrap !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.summary-item-meta dl.variation dd {
    font-size: 13px !important;
    color: var(--color-black) !important;
    margin: 0 !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.summary-item-meta dl.variation dd p {
    margin: 0 !important;
    display: inline !important;
}

/* Also ensure the wc-item-meta class (used in some WC versions) is styled */
.summary-item-meta .wc-item-meta {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    font-family: "Josefin Sans", sans-serif !important;
}

.summary-item-meta .wc-item-meta li {
    display: flex !important;
    gap: 5px !important;
    align-items: baseline !important;
}

.summary-item-meta .wc-item-meta li strong {
    color: var(--color-gold) !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    min-width: fit-content !important;
}

.summary-item-meta .wc-item-meta li p,
.summary-item-meta .wc-item-meta li span {
    color: var(--color-black) !important;
    margin: 0 !important;
}

.summary-item-total {
    text-align: right !important;
    font-weight: 600 !important;
}

.summary-item-total .woocommerce-Price-amount.amount {

    font-size: 22px;

}

/* --- Responsive Hacks --- */
@media (max-width: 1024px) {

    .custom-cart-wrapper,
    .custom-checkout-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
}

@media (max-width: 600px) {

    .cart-item-row,
    .summary-item-row {
        flex-direction: row !important;
        align-items: flex-start !important;
        padding: 20px 0 !important;
    }

    .checkout-step {
        padding: 30px !important;
    }


    .checkout-progress-wrapper {
        margin: 20px auto !important;
    }

    .step-text {
        font-size: 18px !important;
    }

    .apply-coupon-btn,
    .step-btn {
        width: 100% !important;
    }
}

/* Utilities */
#real-coupon-section {
    display: none !important;
}

#coupon-placeholder #real-coupon-section {
    display: flex !important;
    flex-wrap: wrap !important;
}

/* ── Cart-level notices – appear at the very top of the cart ── */
#cart-notices-top {
    grid-column: 1 / -1;
    /* span full grid width */
    width: 100%;
    margin-bottom: 8px;
}

#cart-notices-top .woocommerce-message,
#cart-notices-top .woocommerce-error,
#cart-notices-top .woocommerce-info {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 10px !important;
    padding: 14px 18px !important;
    border-radius: 0 !important;
    font-family: "Josefin Sans", sans-serif !important;
    font-size: 14px !important;
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    border-left: 4px solid transparent !important;
    background: #fefcf8 !important;
}

#cart-notices-top .woocommerce-message {
    border-color: var(--color-gold) !important;
    color: var(--color-black) !important;
}

#cart-notices-top .woocommerce-error {
    border-color: #c0392b !important;
    background: #fff5f5 !important;
    color: #c0392b !important;
}

#cart-notices-top .woocommerce-info {
    border-color: #3498db !important;
    background: #f0f8ff !important;
    color: var(--color-black) !important;
}

/* ── Coupon notices – compact, inline below coupon input ── */
#coupon-notices {
    width: 100%;
}

#coupon-notices .woocommerce-message,
#coupon-notices .woocommerce-error,
#coupon-notices .woocommerce-info {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 6px 0 0 !important;
    padding: 10px 14px !important;
    border-radius: 0 !important;
    font-family: "Josefin Sans", sans-serif !important;
    font-size: 13px !important;
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    border-left: 3px solid transparent !important;
}

#coupon-notices .woocommerce-message {
    border-color: var(--color-gold) !important;
    background: #fefcf8 !important;
    color: var(--color-black) !important;
}

#coupon-notices .woocommerce-error {
    border-color: #c0392b !important;
    background: #fff5f5 !important;
    color: #c0392b !important;
}

#coupon-notices .woocommerce-info {
    border-color: #3498db !important;
    background: #f0f8ff !important;
    color: var(--color-black) !important;
}

/* Remove default WooCommerce notice margin/padding that can conflict */
#cart-notices-top ul.woocommerce-message,
#cart-notices-top ul.woocommerce-error,
#coupon-notices ul.woocommerce-message,
#coupon-notices ul.woocommerce-error {
    padding-left: 18px !important;
}

.update-cart-btn,
.woocommerce-cart-form button[name="update_cart"] {
    display: none !important;
}

/* --- Custom Header & Footer Styles --- */
/* Geometric Background for Header & Footer */
.site-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background-color: #fff;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg');
    border-bottom: 1px solid #eaeaea;
    background-size: contain;
    background-repeat: repeat;
    background-position: center top;
}

.footer-contact-container{
    background-color: #fff;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg');
    border-top: 1px solid #eaeaea;
    margin-top: 60px;
    padding-top: 45px;
    background-size: contain;
    background-repeat: repeat;
    background-position: center top;
}
.footer-bottom {
    background-color: #fff;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg');
    border-top: 1px solid #eaeaea;
    margin-top: 60px;
    background-size: 700px auto;
    background-repeat: repeat;
    background-position: center top;
}
#newsletter-message {
    position: absolute;
    margin-top: 10px;
    font-size: 14px;
    transition: all 0.3s ease;
}
#newsletter-message.success-msg {
    color: var(--color-gold);
}
#newsletter-message.error-msg {
    color: #cc0000;
}

/* Header */
.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 40px;
    max-width: 1440px;
    margin: 0 auto;

}

.header-search-container {
    position: relative;
    display: inline-block;
}

.header-search-form {
    display: none;
    position: absolute;
    top: -23px;
    left: 37px;
    margin-top: 10px;
    background: #fff;
    padding: 10px;
    border: 1px solid #eaeaea;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    z-index: 100;
    min-width: 250px;
}

.header-search-form.active-search {
    display: block;
}

.header-search-form form {
    display: flex;
    margin: 0;
}

.header-search-form input[type="search"],
.header-search-form input[type="text"] {
    flex: 1;
    border: 1px solid #ddd;
    padding: 8px 12px;
    outline: none;
    font-family: "Josefin Sans", sans-serif;
    max-width: 100%;
}

.header-search-form button,
.header-search-form input[type="submit"] {
    background: var(--color-gold);
    color: #fff;
    border: none;
    padding: 8px 15px;
    cursor: pointer;
    font-family: "Josefin Sans", sans-serif;
}


.header-left,
.header-right {
    flex: 1;
    display: flex;
    gap: 15px;
}

.header-right {
    justify-content: flex-end;
}

.header-center {
    flex: 2;
    text-align: center;
}

.custom-logo-link {
    text-decoration: none;
    display: inline-block;
}

.site-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.logo-icon img {
    max-width: 150px;
    height: 86px;
	object-fit: contain;
}

.logo-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.logo-title {
    font-family: "Minion Pro", "Playfair Display", serif;
    font-size: 32px;
    color: var(--color-black);
    letter-spacing: 2px;
    line-height: 1;
}

.logo-subtitle {
    font-family: "Inter", sans-serif;
    font-size: 11px;
    color: #666;
    letter-spacing: 3px;
    margin-top: 4px;
}

.main-navigation > ul > li > .sub-menu .menu-item-dynamic_title_gemstones a {
    font-family: var(--font-heading);
    margin-bottom: 10px;
    font-weight: 600;
    font-size: 18px;
}

.main-navigation ul {
    list-style: none;
    padding: 0px 0px 5px;
    margin: 0;
    display: flex;
    justify-content: center;
    gap: 40px;
}

.main-navigation > ul > li > .sub-menu {
    display: none;
    padding-top: 15px;
    border-bottom: 1px solid var(--color-gold);
    border-top: 1px solid var(--color-gold);
}

.main-navigation > ul > li > .sub-menu li:not(.dynamic-gemstone-item, .menu-item-dynamic_title_gemstones) a::before {
    content: "";
    width: 10px;
    height: 1px;
    background: var(--color-gold);
    display: block;
}

.main-navigation > ul > li > .sub-menu a {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 15px;
}

.main-navigation > ul > li > .sub-menu .sub-menu li {
    padding-left: 10px;
}

.main-navigation ul.sub-menu {
    width: 100%;
    order: 1;
    align-items: flex-start;
    gap: 0;
    padding: 0;
}

.main-navigation a {
    /* text-decoration: none;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0; */

    font-family: var(--font-body);
    font-weight: 300; /* Light */
    font-size: 1rem; /* 16px */
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-black);
    text-decoration: none;
    transition: color 0.3s ease;
}

.main-navigation a:hover,
.main-navigation li.current-menu-item a {
    position: relative;
    display: inline-block;
    color: var(--color-gold);
}

.main-navigation a::after {
    content: "";
    display: block;
    width: 100%;
    height: 30px;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/Frame-2147224321-1.png');
    /* background-size: contain; */
    background-repeat: no-repeat;
    background-position: center top;
    margin-top: 6px;
    opacity: 0;
    transition: opacity 0.3s;
}

.main-navigation a:hover::after,
.main-navigation li.current-menu-item a::after {
    opacity: 1;
}

/* Footer */
.footer-main-container .logo-icon img {
	object-position: left;
}
.footer-contact-container {
    border-bottom: 1px solid #eaeaea;
    padding-bottom: 45px;
}

.footer-contact-bar {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px;
}

.footer-contact-left {
    max-width: 500px;
}

.footer-contact-title {
    font-family: var(--font-heading);
    font-size: 38px;
    color: var(--color-black);
    font-weight: 400;
    margin-top: 0;
    margin-bottom: 10px;
}

.footer-contact-left p {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 19px;
    color: var(--color-black);
    margin: 4px 0;
    line-height: 23px;
    margin: 4px 0;
}

.gold-link {
    color: var(--color-gold);
    text-decoration: none;
}

.footer-signup-form {
    display: flex;
}

.footer-signup-form input {
    border: none;
    border-bottom: 1px solid var(--color-gold);
    padding: 10px 15px;
    width: 250px;
    background: transparent;
    outline: none;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 1rem;
    font-weight: 300;
    color: var(--color-black);
}

.footer-signup-form button {
    background: var(--color-gold);
    color: #fff;
    border: none;
    padding: 10px 25px;
    font-weight: 500;
    cursor: pointer;
    font-size: 16px;
    min-width: 116px;
}

.footer-main-container {
    background: #fff;
    padding-top: 45px;
    /* Solid white layer for readability if wanted, but design seems fully transparent */
}

.footer-main {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 2fr 1.5fr 1.5fr 1.5fr 1.5fr;
    gap: 10px;
    padding: 0 20px 40px;
}

.footer-logo {
    justify-content: flex-start;
    margin-bottom: 20px;
}

.footer-logo .logo-title {
    font-size: 26px;
}

.footer-col-info address {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
    line-height: 21px;
    letter-spacing: 0;
    color: var(--color-black);
    margin-bottom: 20px;
}

.footer-social {
    display: flex;
    gap: 15px;
}

.footer-social a {
    color: #666;
    transition: color 0.3s;
}

.footer-social a:hover {
    color: var(--color-gold);
}

.footer-heading {
    font-family: var(--font-heading);
    font-weight: 300;
    font-style: normal;
    font-size: 24px;
    letter-spacing: 0;
    text-transform: uppercase;
    color: var(--color-gold);
    margin-top: 0;
    margin-bottom: 20px;
}

.footer-col-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-col-links li {
    margin-bottom: 15px;
}

.footer-col-links a {
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-black);
    text-decoration: none;
    transition: color 0.3s;
}

.footer-col-links a:hover {
    color: var(--color-gold);
}

.fb-cls {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 20px;
    border-top: 1px solid #eaeaea;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-black);
}

.footer-policy-links a {
    color: inherit;
    text-decoration: none;
    margin-left: 20px;
}

.footer-policy-links a:hover {
    text-decoration: underline;
}

@media (max-width: 992px) {
    .footer-main {
        grid-template-columns: 1fr 1fr;
    }
}

.menu-toggle {
    display: none;
}

@media (max-width: 900px) {
    .menu-toggle {
        display: inline-block;
        cursor: pointer;
    }

	.logo-icon img {
		object-position: left;
	}

    .header-top {
        flex-direction: row;
        justify-content: space-between;
        padding: 15px 20px;
    }



    .header-left,
    .header-center,
    .header-right {
        flex: auto;
    }

    .header-left {
        display: none;
        /* Hide search on mobile based on design */
    }

    .header-center {
        text-align: left;
    }

    .main-navigation {
        display: none;
        padding: 20px;
        background: #fafafa;
        border-top: 1px solid #eaeaea;
        overflow: auto;
        max-height: calc(100svh - 90px);
        box-sizing: border-box;
    }

    .main-navigation > ul > li {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        width: 100%;
        gap: 10px;
    }

    .main-navigation > ul > .menu-item-has-children:after {
        content: '+';
    }

    .main-navigation > ul > .menu-item-has-children.mobile-submenu-open:after {
        content: '-';
    }

    body:has(.active-mobile-menu) {
      overflow: hidden;
    }

    .main-navigation.active-mobile-menu {
        display: block !important;
    }

    .main-navigation ul {
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }

    .main-navigation a::after,
    .main-navigation a:hover::after,
    .main-navigation li.current-menu-item a::after {
        display: none !important;
        /* Hide diamond indicator on mobile */
    }

    .footer-contact-bar {
        flex-direction: column;
        gap: 20px;
    }

    .footer-main {
        grid-template-columns: 1fr;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 15px;
        align-items: center;
        text-align: center;
    }

    .footer-policy-links a {
        margin: 0 10px;
    }
}


/* Home Page Styles */
.home-hero {
    height: 80svh;
    min-height: 500px;
    background-color: #333;
    background-image: none;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    align-items: end;
    justify-content: center;
    text-align: center;
    color: #fff;
} 
.home-hero .hero-content {
    display: none;
}

.hero-content {
    max-width: 1440px;
    width: 100%;
    padding: 20px;
}

.custom-shop-layout .hero-content {
    max-width: 750px;
}

.hero-title {
    font-family: var(--font-heading);
    font-size: 124px;
    font-weight: 500;
    margin: 0;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: inherit;
}

.custom-shop-layout .hero-title {
    font-size: 64px;
}

.hero-divider {
    margin: 5px 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-divider::before,
.hero-divider::after {
    content: "";
    height: 1px;
    background: var(--color-gold);
    width: 300px;
    margin: 0 15px;
}

.hero-divider img {
    width: 24px;
    height: auto;
}

.hero-description {
    /* font-family: var(--font-heading); */
    /* font-size: 38px; */
    font-weight: 500;
    margin-top: 10px;
}

.custom-shop-layout .hero-description {
    font-size: 18px;
}

.home-press {
    background-color: #f9f9f9;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg');
    padding: 34px 0;
    background-size: contain;

}

.press-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 40px;
    overflow: hidden;
    /* Prevent slider overflow */
}

.press-slider {
    width: 100%;
}

.press-item {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-family: var(--font-heading);
    font-size: 22px;
    color: var(--color-black);
    opacity: 0.8;
}

.press-item img {
    max-width: 100%;
    height: auto;
    max-height: 50px;
    /* Standardize press logo height */
    object-fit: contain;
    transition: all 0.3s;
}

.press-item:hover img {
    filter: grayscale(0);
    opacity: 1;
}

@media (max-width: 768px) {
    .hero-title {
        font-size: 48px;
    }
	.home-hero {
		height: 100svh;
        min-height: 520px;
        background-size: cover;
        background-position: center center;
	}

    .custom-shop-layout .hero-title {
        font-size: 40px;
    }

    .hero-divider::before,
    .hero-divider::after {
        width: 80px;
    }

    .press-logos {
        justify-content: center;
    }
}

/* Section Headers */
.section-header {
    text-align: center;
    margin-bottom: 10px;
    padding: 0 20px;
}

.section-title {
    font-family: var(--font-heading);
    font-size: 38px;
    /* font-weight: 500; */
    color: var(--color-black);
    margin-bottom: 10px;
}

.section-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.section-divider::before,
.section-divider::after {
    content: "";
    height: 1px;
    background: var(--color-gold);
    width: 60px;
}

.section-divider img {
    width: 18px;
}

/* Gemstones Slider */
.home-gemstones {
    padding: 80px 0;
    background: #fff;
}

.gemstones-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 60px;
    position: relative;
    overflow: hidden;
}

.gemstone-item a {
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gemstone-image {
    width: 180px;
    height: 180px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s;
}

.gemstone-image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.gemstone-placeholder {
    width: 60px;
    height: 60px;
    background: #eee;
    border-radius: 50%;
}

.gemstone-item:hover .gemstone-image {
    transform: scale(1.05);
}

.gemstone-title {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: var(--color-black) !important;
    text-transform: uppercase;
    position: relative;
    padding-bottom: 5px;
    display: inline-block;
}

.gemstone-item:hover .gemstone-title,
.gemstone-item.swiper-slide-active .gemstone-title {
    color: var(--color-black);
}

.gemstone-item:hover .gemstone-title::after,
.gemstone-item.swiper-slide-active .gemstone-title::after {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-gold);
}

.gemstone-item:hover .gemstone-title::before,
.gemstone-item.swiper-slide-active .gemstone-title::before {
    content: "";
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 16px;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/Logo-1.png');
    background-size: contain;
    background-repeat: no-repeat;
}

/* Gemstone nav */
.gemstone-nav {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-top: 50px;
}

.gemstone-nav .swiper-button-next,
.gemstone-nav .swiper-button-prev {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    color: #aeaeae;
    transition: color 0.3s;
}

.gemstone-nav .swiper-button-next::after,
.gemstone-nav .swiper-button-prev::after {
    display: none;
}

.gemstone-nav div:hover {
    color: var(--color-gold);
}

@media (max-width: 768px) {
    .gemstones-container {
        padding: 0 40px;
    }

    .gemstone-image {
        width: 120px;
        height: 120px;
    }
}

/* Kinetic Split Feature: 45% rotating product / 55% video */
.home-featured-collection.kinetic-split-feature {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
    height: clamp(560px, 52vw, 760px);
    max-height: none;
    display: grid;
    grid-template-columns: 45% 55%;
    background: #fff;
    overflow: hidden;
    text-align: initial;
}

.kinetic-split-product,
.kinetic-split-video {
    position: relative;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.kinetic-split-product {
    background: #fff;
    display: flex;
    align-items: stretch;
    justify-content: center;
    border-right: 1px solid rgba(17, 17, 17, 0.08);
}

.kinetic-product-link {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: clamp(32px, 3.4vw, 62px) clamp(34px, 4vw, 72px) clamp(28px, 3vw, 52px);
    text-decoration: none;
    color: var(--color-black);
    cursor: pointer;
}

.kinetic-product-visual {
    width: 100%;
    height: 68%;
    min-height: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: clamp(4px, 0.8vw, 14px);
}

.kinetic-product-image {
    width: 82%;
    height: 82%;
    max-width: 82%;
    max-height: 82%;
    object-fit: contain;
    object-position: center top;
    display: block;
    opacity: 1;
    transform: scale(1);
    transition:
        opacity 0.28s ease,
        transform 0.65s cubic-bezier(0.2, 0.65, 0.3, 1);
}

/*
 * The image is deliberately around 18% smaller than the previous treatment.
 * The upper alignment creates the editorial breathing room requested beneath it.
 */
.kinetic-product-image.is-changing {
    opacity: 0;
}

.kinetic-product-link:hover .kinetic-product-image,
.kinetic-product-link:focus-visible .kinetic-product-image {
    transform: scale(1.018);
}

.kinetic-product-copy {
    width: min(88%, 480px);
    margin-top: clamp(2px, 0.5vw, 10px);
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.kinetic-product-title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: clamp(22px, 1.65vw, 30px);
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.015em;
    text-transform: none;
    color: var(--color-black);
}

.kinetic-product-description {
    margin: 10px 0 0;
    max-width: 420px;
    font-family: var(--font-body);
    font-size: clamp(13px, 0.92vw, 16px);
    line-height: 1.45;
    color: #777;
}

.kinetic-product-description[hidden] {
    display: none;
}

.kinetic-product-discover {
    margin-top: 14px;
    padding-bottom: 4px;
    font-family: var(--font-body);
    font-size: clamp(13px, 0.9vw, 15px);
    line-height: 1;
    color: #555;
    border-bottom: 1px solid var(--color-gold);
}

.kinetic-product-link:hover .kinetic-product-discover,
.kinetic-product-link:focus-visible .kinetic-product-discover {
    color: var(--color-gold);
}

.kinetic-product-link-fallback {
    font-family: var(--font-heading);
    font-size: clamp(34px, 4vw, 64px);
    letter-spacing: 0.12em;
    justify-content: center;
}

.kinetic-split-video {
    background: #eeeae5;
}

.kinetic-campaign-video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    background: #eeeae5;
}

@media (max-width: 900px) {
    .home-featured-collection.kinetic-split-feature {
        height: auto;
        display: flex;
        flex-direction: column;
    }

    .kinetic-split-product {
        min-height: 64vh;
        border-right: 0;
        border-bottom: 1px solid rgba(17, 17, 17, 0.08);
    }

    .kinetic-split-video {
        aspect-ratio: 16 / 10;
        min-height: 0;
    }

    .kinetic-product-link {
        padding: 34px 24px 38px;
    }

    .kinetic-product-visual {
        height: 72%;
    }

    .kinetic-product-image {
        width: 78%;
        height: 78%;
        max-width: 78%;
        max-height: 78%;
    }

    .kinetic-product-copy {
        margin-top: 4px;
    }
}

@media (max-width: 480px) {
    .kinetic-split-product {
        min-height: 58vh;
    }

    .kinetic-split-video {
        aspect-ratio: 4 / 5;
    }

    .kinetic-product-image {
        width: 82%;
        height: 82%;
        max-width: 82%;
        max-height: 82%;
    }

    .kinetic-product-description {
        max-width: 300px;
    }
}


/* Homepage Discover links — restore the original Eve Li treatment */
.banner-btn,
.product-btn,
.feature-btn {
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: var(--color-black);
    text-underline-offset: 4px;
    text-transform: capitalize;
    margin-top: 20px;
    display: block;
}

.product-btn,
.feature-btn,
.product-btn:visited,
.feature-btn:visited {
    color: var(--color-black);
    text-decoration: none;
}

.product-btn:hover,
.feature-btn:hover,
.product-btn:focus-visible,
.feature-btn:focus-visible {
    color: var(--color-gold);
    text-decoration: none;
}

.feature-btn {
    margin-bottom: 3px;
}

.divider_logo {
    margin-top: 5px;
}

.banner-btn,
.banner-btn:visited {
    color: #fff;
    text-decoration: none;
}

.banner-btn:hover,
.banner-btn:focus-visible {
    color: #fff;
    text-decoration: none;
}

/* Product Showcase Grid */
.home-products-showcase {
    padding: 100px 40px;
    max-width: 1440px;
    margin: 0 auto;
}

.products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

.product-showcase-item {
    text-align: center;
    position: relative;
}

.new-tag {
    font-family: "Josefin Sans", sans-serif;
    font-size: 12px;
    color: #000;
    display: block;
    margin-bottom: 15px;
    text-align: justify;
}

.product-thumb {
    margin-bottom: 25px;
    width: 100%;
    height: clamp(220px, 22vw, 320px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-thumb img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}
.product-thumb {
    position: relative;
}

.product-thumb .product-image-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 10;
    cursor: pointer;
}

.product-thumb .product-image-link img {
    pointer-events: auto;
}

.product-thumb::before,
.product-thumb::after {
    pointer-events: none;
}

.product-showcase-item .new-tag {
    pointer-events: none;
}

.product-name {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 700 !important;
    font-size: 16px;
    color: var(--color-black);
    margin-bottom: 5px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 400;
}

.product-info {
    font-family: "Josefin Sans", sans-serif;
    font-size: 20px;
    color: #999;
    margin-bottom: 8px;
    color: #212529CC;
}

.product-price .woocommerce-Price-amount.amount {
    font-size: 16px !important;
    font-weight: 300;
    color: var(--color-black);
    margin-bottom: 15px;
}

.item-divider {
    margin-top: 5px;
    justify-content: center;
    opacity: 0
}

.product-showcase-item:hover .item-divider {
    opacity: 1;
}

.item-divider img {
    width: 95px;
    margin-top: 5px;
}

/* Double Feature */
.home-double-feature {
    padding: 0 40px 100px;
    max-width: 1440px;
    margin: 0 auto;
}

.feature-flex {
    display: flex;
    gap: 40px;
}

.feature-block {
    flex: 1;
    text-align: center;
}

.feature-img-wrapper {
    margin-bottom: 30px;
}

.feature-placeholder {
    width: 100%;
    aspect-ratio: 1/1;
    background: #f4f4f4;
}

.feature-placeholder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.feature-title {
    font-size: 38px;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.feature-subtitle {
    font-family: "Josefin Sans", sans-serif;
    font-size: 28px;
    color: #999;
    margin-bottom: 15px;
    color: var(--color-black);
}

/* Category Grid */
.home-category-grid {
    padding: 0 40px 100px;
    background: #fff;
    max-width: 1440px;
    margin: 0 auto;
}

.cat-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.cat-grid-item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    /* Align content to the right */
    text-decoration: none;
    overflow: hidden;
    height: 250px;
    padding: 0 40px;
}

.cat-img-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition: transform 0.6s ease;
    background: linear-gradient(0deg, #EFEBE1, #EFEBE1), linear-gradient(0deg, rgb(0 0 0 / 42%), rgb(0 0 0 / 38%)), linear-gradient(90.63deg, rgba(0, 0, 0, 0) 0.53%, rgba(0, 0, 0, 0.4) 99.45%);
    background-blend-mode: multiply;
}

.cat-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    mix-blend-mode: overlay;
    transition: transform 0.6s ease, opacity 0.4s ease;
}

.cat-grid-item:hover .cat-img-wrapper {
    transform: scale(1.1);
    /* 10% size increase */
}

.cat-placeholder {
    width: 100%;
    height: 100%;
    background: #444;
    /* Darker placeholder to see white text */
}

/* Category Text and Line */
.cat-title {
    font-size: 38px;
    font-weight: 400;
    line-height: 1.25;
    color: #fff;
    text-transform: uppercase;
    margin: 0;
    max-width: 500px;
    /* Matching Figma width */
    text-align: right;
}

.cat-info {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    /* Align all children to the right */
    gap: 15px;
}

.cat-info .cat-divider {
    width: 280px;
    height: 1px;
    background: var(--color-gold);
    position: relative;
}

.cat-info .cat-divider::before {
    content: "";
    position: absolute;
    right: -10px;
    /* Position diamond at the right end */
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 10px;
    height: 10px;
    background: var(--color-gold);
}

.cat-info .cat-divider::after {
    display: none;
}

/* Mobile Responsive */
@media (max-width: 900px) {
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .feature-flex {
        flex-direction: column;
    }
	.feature-subtitle{
		font-size:21px;
	}

    .cat-grid {
        grid-template-columns: 1fr;
    }
		.banner-title {
   
    font-size: 64px;
}
	.home-featured-collection {
    height: 65vh;
	}
}

@media (max-width: 480px) {
    .products-grid {
        grid-template-columns: 1fr;
    }

    .home-products-showcase {
        padding: 60px 20px;
    }

}

/* Benefits Section */
.home-benefits {
    padding: 80px 40px;
    background: #fff;
}

.benefits-container {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    justify-content: space-around;
    gap: 40px;
}

.benefit-item {
    flex: 1;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.benefit-icon img {
    width: 86px;
    height: 86px;
    object-fit: contain;
}

.benefit-item:hover .benefit-icon svg {
    color: var(--color-gold);
}

.benefit-title {
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    font-weight: 300 !important;
    line-height: 125%;
    letter-spacing: 0%;
    vertical-align: middle;
    text-transform: uppercase;

}

@media (max-width: 768px) {
    .benefits-container {
        flex-direction: column;
        gap: 60px;
    }

    .home-benefits {
        display: none;
    }

}

/* --- Single Product Page Styles --- */
.custom-single-product-container {
    max-width: 1440px;
    margin: 40px auto;
    padding: 0 40px;
}

.product-main-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 100px;
    align-items: start;
}

/* Breadcrumbs (WooCommerce default override) */
.woocommerce-breadcrumb {
    max-width: 1440px;
    margin: 20px auto !important;
    padding: 0 40px !important;
    font-size: 13px;
    color: #999;
}

.woocommerce-breadcrumb a {
    text-decoration: none;
    color: #333;
}

/* Gallery Column */
.product-gallery-column {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.main-product-image {
    width: 100%;
    background: #fff;
    text-align: center;
}

.main-product-image img {
    max-width: 100%;
    height: auto;
}

.product-secondary-images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.gallery-item-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

/* Summary Column */
.product-summary-column {
    padding-top: 20px;
}

/* Responsive Visibility */
.gallery-nav {
    display: flex;
    /* Visible on all screens now */
}

.product-secondary-images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 40px;
}

@media (max-width: 768px) {

    .product-secondary-images.desktop-only,
    .product-secondary-images.secondary-layout-grid {
        display: none !important;
    }
}



.product-title {
    font-family: var(--font-heading);
    font-weight: 400;
    font-style: Regular;
    font-size: 32px;
    leading-trim: NONE;
    color: var(--color-black);
}

.product-short-description {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: 18px;
    margin-bottom: 20px;
}

.product-price-large,
.woocommerce-variation-price span {
    font-family: "Josefin Sans", sans-serif;
    font-size: 44px;
    color: var(--color-black) !important;
    margin-bottom: 15px;
}

.product-price-large .woocommerce-Price-amount {
    color: var(--color-black);
}

.product-status-message {
    display: inline-block;
    font-family: "Josefin Sans", sans-serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 1.35;
    color: var(--color-black);
}

.product-status-message--sold {
    position: relative;
    padding-bottom: 10px;
    letter-spacing: 0;
    text-transform: none;
}

.product-status-message--sold::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: var(--color-gold);
}

.product-inquiry-box {
    max-width: 460px;
}

.product-inquiry-toggle,
.product-inquiry-submit {
    border: 1px solid var(--color-gold);
    background: var(--color-gold);
    color: var(--color-black);
    cursor: pointer;
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.04em;
    padding: 14px 34px;
    text-transform: uppercase;
    transition: background 0.2s ease, color 0.2s ease;
}

.product-inquiry-toggle:hover,
.product-inquiry-submit:hover {
    background: var(--color-black);
    border-color: var(--color-black);
    color: #fff;
}

.product-inquiry-form {
    border: 1px solid rgba(251, 174, 23, 0.28);
    margin-top: 18px;
    padding: 22px;
    background: #fff;
}

.product-inquiry-form label {
    display: block;
    margin-bottom: 16px;
}

.product-inquiry-form label span {
    display: block;
    margin-bottom: 6px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--color-black);
}

.product-inquiry-form input,
.product-inquiry-form textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid var(--color-gold);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--color-black);
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    outline: none;
    padding: 9px 0;
}

.product-inquiry-form textarea {
    resize: vertical;
}

.product-inquiry-submit:disabled {
    cursor: wait;
    opacity: 0.65;
}

.product-inquiry-response {
    margin: 14px 0 0;
    font-family: "Josefin Sans", sans-serif;
    font-size: 14px;
    line-height: 1.4;
}

.product-inquiry-response.is-success {
    color: var(--color-black);
}

.product-inquiry-response.is-error {
    color: #c0392b;
}

.product-variations-wrapper {
    margin-bottom: 40px;
}

@media (max-width: 768px) {

    .product-title {
        font-size: 24px;
    }

    .product-price-large,
    .woocommerce-variation-price span {
        font-size: 30px;
    }

    .product-status-message {
        font-size: 20px;
    }

    .product-inquiry-toggle,
    .product-inquiry-submit {
        width: 100%;
    }

    .product-action-links,
    .product-action-links a {
        display: block !important;
        text-align: center !important;
    }

    .product-page-section {
        padding: 25px 25px !important;
    }

    .story-main-title {
        font-size: 24px !important;

    }

    .wishlist-btn-wrapper {
        margin-left: 3px !important;
    }
}

/* Custom Div-Based Variation Styles */
.custom-variations-container {
    width: 100%;
    margin-bottom: 40px;
}

.variation-row {
    border-bottom: 1px solid var(--color-gold);
    padding: 12px 0;
    position: relative;
    margin-bottom: 20px
}

.variation-label {
    margin-bottom: 12px;
}

.variation-label label {
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: var(--color-black);
    display: block;
    margin: 0;
    text-transform: capitalize;
}


.select-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.variation-value select {
    border: none !important;
    background: transparent !important;
    font-family: "Inter", sans-serif;
    font-size: 16px;
    color: #333;
    padding: 3px 33px 0px 0;
    outline: none !important;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    color: #999999;
    font-family: "Josefin Sans", sans-serif;

}

/* Custom Image Arrow on Select Wrapper */
.select-wrapper::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/chevron-down.png');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    opacity: 0.6;
}

.reset_variations {
    font-size: 16px !important;
    color: var(--color-gold) !important;
    text-decoration: underline !important;
    text-transform: capitalize;
    font-family: "Inter", sans-serif;
    margin-left: auto;
    white-space: nowrap;
    padding-left: 0;
    position: absolute;
    top: 100px;
    font-family: "Josefin Sans", sans-serif;
}

.reset_variations:hover {
    color: var(--color-gold) !important;
}

.woocommerce-variation-description {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 400;
    font-size: 18px;
    margin-top: 60px;
}

/* Breadcrumbs Polish */
.woocommerce-breadcrumb {
    padding: 30px 40px !important;
    max-width: 1440px;
    margin: 0 auto !important;
    font-family: "Inter", sans-serif;
    font-size: 11px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.woocommerce-breadcrumb span.delimiter {
    margin: 0 10px;
    color: #ccc;
}

/* Gallery Column - Refined for Slider */
.product-gallery-column {
    position: relative;
    width: 100%;
    margin-bottom: 40px;
}

.product-gallery-slider {
    width: 100%;
    height: auto;
    position: relative;
    overflow: visible;
    /* Show all on desktop */
}

/* DESKTOP: Grid Layout */
.product-gallery-slider .swiper-wrapper {
    display: grid;
    /* Removed !important to allow mobile flex override */
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

/* On desktop, disable Swiper's internal transform since we want a static grid */
@media (min-width: 769px) {
    .product-gallery-slider .swiper-wrapper {
        transform: none !important;
    }
}

.product-gallery-slider .swiper-slide {
    width: 100% !important;
    height: auto;
}

.product-gallery-slider .is-featured-gallery-slide {
    overflow: hidden;
}

.product-gallery-slider .is-featured-gallery-slide img {
    transition: transform 0.18s ease;
    will-change: transform;
    cursor: zoom-in;
}

.product-gallery-slider .is-featured-gallery-slide img.is-zoomed {
    cursor: grab;
}

.product-gallery-slider .is-featured-gallery-slide.is-zoom-dragging img.is-zoomed {
    cursor: grabbing;
}

.product-gallery-slider .swiper-slide[data-gallery-image-id],
.product-secondary-images .gallery-item-wrapper[data-gallery-image-id] {
    cursor: pointer;
}

.product-gallery-slider .is-featured-gallery-slide {
    cursor: zoom-in;
}

.product-secondary-images .gallery-item-wrapper.is-active img {
    border-color: var(--color-gold) !important;
}

/* First image takes full width on desktop */
.product-gallery-slider .swiper-slide:first-child {
    grid-column: 1 / -1;
}

/* Hide navigation arrows and thumbnails grid on desktop by default */
.gallery-nav.gemstone-nav,
.product-secondary-images.mobile-thumbnails {
    display: none !important;
}

/* MOBILE: Slider Layout */
@media (max-width: 768px) {
    .product-gallery-slider {
        overflow: hidden;
    }

    .product-gallery-slider .swiper-wrapper {
        display: flex !important;
        grid-template-columns: none;
        gap: 0;
        transform: translate3d(0, 0, 0);
        /* Let Swiper take over */
    }

    .product-gallery-slider .swiper-slide {
        flex-shrink: 0;
        grid-column: auto !important;
        width: 100% !important;
    }

    /* Show Navigation on Mobile */
    .gallery-nav.gemstone-nav {
        display: flex !important;
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        width: 100%;
        transform: translateY(-50%);
        z-index: 50;
        pointer-events: none;
        justify-content: space-between;
    }

    .gallery-nav .gallery-prev,
    .gallery-nav .gallery-next {
        pointer-events: auto;
        /* padding: 15px; */
        max-width: 25px;
    }

    /* Mobile Thumbnails Row */
    .product-secondary-images.mobile-thumbnails {
        display: flex !important;
        flex-direction: row;
        justify-content: center;
        gap: 15px;
        margin-top: 25px;
        overflow-x: auto;
        padding-bottom: 5px;
        max-width: 320px;
    }

    .product-secondary-images.mobile-thumbnails .gallery-item-wrapper {
        width: 70px;
        height: 70px;
        flex-shrink: 0;
    }

    .product-secondary-images.mobile-thumbnails img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 4px;
        border: 1px solid #eee;
    }

    /* Hide the default desktop grid thumbnails on mobile */
    .secondary-layout-grid {
        display: none !important;
    }
}

/* Action Links Polish */
.product-action-links {
    margin-top: 40px;
    padding-top: 20px;
}

.product-action-links a {
    color: var(--color-gold) !important;
    text-decoration: underline !important;
    font-weight: 700 !important;
    letter-spacing: 1px;
}

/* Refined Buttons Area */
.woocommerce-variation-add-to-cart {
    display: flex !important;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 40px;
}

.quantity {
    display: flex !important;
    align-items: center;
    padding: 0;
    width: auto !important;
}

.quantity button {
        /* background: var(--color-gold) !important; */
    background: none !important;
    border: none !important;
    font-size: 20px !important;
    color: #333 !important;
    cursor: pointer;
    transition: background 0.2s;
}

.quantity button:hover {
    background: #f9f9f9 !important;
}

.quantity .qty {
    border: none !important;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    background: transparent !important;
}

.single_add_to_cart_button {
    background: var(--color-gold) !important;
    color: #fff !important;
    padding: 0 45px !important;
    height: 52px !important;
    border-radius: 4px !important;
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.3s;
}

.single_add_to_cart_button:hover {
    background: #e59e2a !important;
}

.product-extra-buttons {
    display: flex;
    gap: 20px;
    align-items: center;
    margin-top: 25px;
}

.payment-buttons {
    width: 100% !important;
}

.paypal-btn {
    background: #FEF6E4 !important;
    border: 1px solid #FBDBA2 !important;
    padding: 0 40px !important;
    height: 52px !important;
    border-radius: 4px !important;
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: var(--color-black);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.paypal-btn strong {
    color: #003087;
    margin-left: 5px;
}

.custom-wishlist-icon {
    width: 52px;
    height: 52px;
    border: none;
    /* border: 1px solid #eaeaea;
    border-radius: 4px; */
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-gold);
    text-decoration: none;
    transition: all 0.3s;
}

.custom-wishlist-icon:hover {
    border-color: var(--color-gold);
    background: #fff;
}

/* Action Links */
.product-action-links {
    margin-top: 0px;
    padding-top: 0;
    display: flex;
    gap: 15px;
    align-items: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    letter-spacing: 1px;
    justify-content: center;
}

.product-action-links a {
    color: var(--color-gold) !important;
    text-decoration: underline !important;
    font-weight: 700 !important;
    letter-spacing: 1px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
}

.product-action-links .sep {
    color: var(--color-gold);
}

/* More Details */
.product-more-details {
    margin-top: 40px;
    margin-left: 10px;
}

.details-heading {
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: var(--color-black);
    letter-spacing: 2px;
    margin-bottom: 0px;

    padding-bottom: 10px;
}

.details-content {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 400;
    font-size: 18px;
    margin-bottom: 0;
}.details-content em {
    font-weight: 300;
}

/* Related Products Override */
.related.products {
    max-width: 1440px;
    margin: 80px auto;
    padding: 0 40px;
}

.related.products h2 {
    font-family: var(--font-heading);
    font-size: 32px;
    text-align: center;
    margin-bottom: 40px;
}

.woocommerce div.product form.cart div.quantity {

    border: none !important;
}

.woocommerce div.product form.cart {
    display: flex !important;
}

.woocommerce .product-variations-wrapper .variations_form.cart {
    display: block !important;
}

/* Chrome, Safari, Edge, Opera */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}


form.cart .single_add_to_cart_button {
    padding: 0px 30px 0px 30px !important;
}


.product-extra-buttons-inline {
    display: flex;

}

.paypal-express-placeholder {
    display: none;
}

.wishlist-btn-wrapper {
    margin-left: 20px;
}

.product-extra-buttons-inline img {
    margin-right: 10px;
    display: block;
    height: 53px;
    margin-left: 20px;

}

.single_add_to_cart_button {
    color: black !important;
    border-radius: 0 !important;
    padding: 28px 39px !important;
    font-family: "Josefin Sans", sans-serif;
}

/* Responsive */
@media (max-width: 1024px) {
    .product-main-layout {
        grid-template-columns: 1fr;
        gap: 50px;
    }
}

.custom-single-product-container {
    padding: 0 20px;
}

.product-title {
    font-size: 32px;
}

.single_add_to_cart_button {
    padding: 15px 20px !important;
}

/* --- Product Page Sections (Related & Top Products) --- */
.product-page-section {
    padding: 100px 40px;
    background: #fff;
    max-width: 1440px;
    margin: 0 auto;
}

.section-title-premium {
    font-family: var(--font-heading);
    font-size: 38px;
    color: var(--color-black);
    margin-bottom: 20px;
    text-transform: uppercase;
    font-weight: 400;
}

.single-product .hero-divider::before,
.single-product .hero-divider::after {
    content: "";
    height: 1px;
    background: var(--color-gold);
    width: 80px !important;
    margin: 0 15px;
}

.logo-divider {
    margin-bottom: 50px;
    display: flex;
    justify-content: center;
}

.logo-divider img {
    width: 24px;
}

.product-info-minimal {
    margin-top: 20px;
    text-align: center;
}

.product-name-small {
    font-family: "Josefin Sans", sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-black);
    margin-bottom: 5px;
}

.product-meta-extra {
    font-size: 12px;
    color: #888;
    margin-bottom: 8px;
}

.product-price-small {
    font-family: "Josefin Sans", sans-serif;
    font-size: 14px;
    color: var(--color-black);
}

.active-logo-indicator {
    margin-top: 15px;
    opacity: 0;
    transition: opacity 0.3s;
    display: flex;
    justify-content: center;
}

.product-showcase-item:hover .active-logo-indicator {
    opacity: 1;
}

.active-logo-indicator img {
    width: 14px;
}

/* Swiper Controls Polish */
.swiper-button-next,
.swiper-button-prev {
    color: var(--color-gold) !important;
}

.swiper-pagination-bullet-active {
    background: var(--color-gold) !important;
}

/* --- Collection Story Section --- */


.collection-story-grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 80px;
    align-items: flex-start;
}

.story-main-title {
    font-family: var(--font-heading);
    font-size: 32px;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
    color: var(--color-black);
}

.story-subtitle {
    font-family: "Josefin Sans", sans-serif;
    font-size: 12px;
    letter-spacing: 2px;
    font-weight: 700;
    color: var(--color-black);
    margin-bottom: 15px;
    text-transform: uppercase;
}

.story-block {
    margin-bottom: 40px;
}

.story-block p {
    font-size: 15px;
    line-height: 1.8;
    color: #555;
    margin-bottom: 15px;
    font-family: "Josefin Sans", sans-serif;
}

.shop-collection-link {
    font-family: var(--font-heading);
    font-size: 16px;
    color: var(--color-black);
    display: block;
    margin-bottom: 15px;
    font-family: "Josefin Sans", sans-serif;
    text-decoration: none;

}

.story-footer {
    position: relative;
    text-align: center;
}

.story-footer::after {
    content: "";
    background-image: url(https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/Frame-2147224321-1.png);
    width: 100px;
    height: 23px;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -28px;
}

.product-meta {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 400;
    font-style: Regular;
    font-size: 13.8px;
    line-height: 22px;
    letter-spacing: 0.5px;
    text-align: center;
    vertical-align: middle;
    color: #212529;
}

.product-meta a {
    text-decoration: none;
    color: #212529;
}


.story-gallery {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.story-main-image img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}

.story-secondary-images {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.story-secondary-images img {
    width: 100%;
    height: 150px;
    object-fit: cover;
}

.story-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    /* pushes .cont to bottom */
    height: 100%;
}

.story-content .cont {
    margin-top: auto;
    /* ensures bottom alignment */
}

/* Mobile Adjustments for Story */
@media (max-width: 900px) {
    .collection-story-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .story-main-image img {
        height: 350px;
    }
}


/* --- SHOP PAGE STYLES (Archive Product) --- */
.custom-shop-layout {
    padding: 0;
    background: #fff;
    font-family: 'Josefin Sans', sans-serif;
}

.custom-container-premium {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
}

.shop-grid-container {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 60px;
    margin-top: 40px;
}

/* Breadcrumbs Styling */
.woocommerce-products-header .woocommerce-breadcrumb {
    font-size: 16px;
    color: var(--color-black);
    margin-bottom: 30px;
    padding: 20px !important;
    text-transform: capitalize;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
}

.woocommerce-products-header .woocommerce-breadcrumb a {
    color: var(--color-black);
    text-decoration: none;
    transition: color 0.3s;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
}

.woocommerce-products-header .woocommerce-breadcrumb a:hover {
    color: var(--color-gold);
}

.breadcrumb-sep {
    color: var(--color-gold);
    margin: 0 5px;
}

/* Sidebar Filter Sections */
.shop-sidebar-filters {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.filter-title {
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 400;
    color: var(--color-gold);
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 15px;
    margin-bottom: 10px;
    cursor: pointer;
}

.toggle-arrow {
    font-size: 12px;
    color: var(--color-gold);
    transition: transform 0.3s;
}

.filter-section.active .toggle-arrow {
    transform: rotate(180deg);
}

/* Search Filter */
.search-input-wrapper {
    display: flex;
    align-items: center;
    gap: 0;
    margin-top: 10px;
    border-bottom: 1px solid var(--color-gold) !important;
    padding-bottom: 0px;
    position: relative;
    border-radius: 0px;
}

.search-field {
    flex: 1;
    border: none !important;
    padding: 12px 15px !important;
    font-size: 13px !important;
    font-family: 'Josefin Sans', sans-serif !important;
}

.woocommerce-product-search button {
    background: var(--color-gold) !important;
    color: #fff !important;
    border: none !important;
    padding: 0 25px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    cursor: pointer !important;
    font-family: 'Josefin Sans', sans-serif !important;
}

/* Price Filter */
.price-labels {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    color: var(--color-black);
    margin-bottom: 15px;
}

.price-slider {
    width: 100%;
    -webkit-appearance: none;
    height: 2px;
    background: #f0f0f0;
    border-radius: 5px;
    outline: none;
}

.price-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 14px;
    height: 14px;
    background: var(--color-gold);
    border-radius: 50%;
    cursor: pointer;
}

/* Checkbox Filter Styles */
.filter-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.filter-checkbox {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    color: var(--color-black);
    cursor: pointer;
    position: relative;
    font-family: 'Josefin Sans', sans-serif;
}

.filter-checkbox input {
    width: 20px;
    height: 20px;
    border: 1px solid #E1A30B3D;
    -webkit-appearance: none;
    border-radius: 2px;
    cursor: pointer;
    background: var(--color-gold)0A;
}

.filter-checkbox input:checked {
    background: var(--color-gold);
    box-shadow: inset 0 0 0 2px #fff;
}

.filter-checkbox .count {
    margin-left: auto;
    color: var(--color-black);
    font-size: 14px;
}

.expandable-list {
    max-height: 144px;
    /* Exactly 4 items */
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.see-more-toggle {
    display: block;
    margin-top: 20px;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    color: var(--color-gold);
}

a.see-more-toggle {
    font-size: 16px;
    color: var(--color-gold);
}

.expandable-list.expanded {
    max-height: 2000px;
    /* Enough for all terms */
}

/* Main Product Grid Area */
.shop-main-listing ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 30px !important;
    padding: 0 !important;
    list-style: none !important;
}

.shop-main-listing ul.products::before,
.shop-main-listing ul.products::after {
    display: none !important;
}

/* Product Card Styling */
.product-card-inner {
    text-align: center;
    transition: transform 0.3s;
}

.product-card-link {
    display: block;
}

.product-card-image {
    background: #fff;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: clamp(260px, 30vw, 360px);
    min-height: 0;
}

.product-card-image img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
}

.product-card-name {
    font-family: "Josefin Sans", sans-serif;
    font-size: 14px;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--color-black);
    margin-bottom: 8px;
    letter-spacing: 1px;
    line-height: 1.25;
    min-height: calc(1.25em * 2);
    max-height: calc(1.25em * 2);
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.product-card-meta {
    font-size: 13.5px;
    color: #8E8D8E;
    margin-bottom: 8px;
    text-transform: none;
    letter-spacing: 0.5px;
    line-height: 1.25;
    min-height: calc(1.25em * 2);
    max-height: calc(1.25em * 2);
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.product-card-meta a {

    color: #8E8D8E;

}


.product-card-price .woocommerce-Price-amount.amount {
    font-family: "Josefin Sans", sans-serif !important;
    font-size: 14px;
    font-weight: 400;
    color: var(--color-black);
}

.product-card-footer {
    opacity: 0;
    transition: opacity 0.3s;
    margin-top: 20px;
}

.product-card-item:hover .product-card-footer {
    opacity: 1;
}

.product-card-btn {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    color: var(--color-gold);
    text-decoration: none;
    border-bottom: 1.5px solid var(--color-gold);
    padding-bottom: 4px;
    margin-bottom: 15px;
}

.product-card-divider img {
    height: 12px;
    width: auto;
}

/* Responsive Grid */
@media (max-width: 1400px) {
    .shop-main-listing ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 991px) {
    .shop-grid-container {
        grid-template-columns: 1fr;
        padding: 0 20px;
        gap: 40px;
    }

    .shop-sidebar-filters {
        order: 1;
    }

    .shop-main-listing {
        order: 2;
    }

    .shop-main-listing ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px !important;
    }
}

@media (max-width: 576px) {
    .shop-main-listing ul.products {
        grid-template-columns: 1fr !important;
    }

    .product-card-image {
        height: clamp(240px, 70vw, 320px);
    }

    .product-card-meta {
        font-size: 12px;
        line-height: 1.3;
        min-height: calc(1.3em * 2);
        max-height: calc(1.3em * 2);
    }
}

/* Material & Gemstone filter items — indented for visual hierarchy */
.filter-section--material .filter-list li,
.filter-section--gemstone .filter-list li {
    margin-left: 10px;
}

.single-product #sidebar {
    display: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {

    width: 100% !important;
    margin: 0PX !important;

}

.apply-filters-btn {
    width: 100%;
    background: var(--color-gold) !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 0 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    border-radius: 4px !important;
}

.filter-actions {
    margin-top: 25px;
    display: none;
}

.clear-filters {
    font-size: 12px;
    color: var(--color-black);
    text-decoration: underline;
    font-weight: 600;
    margin-top: 10px;
    display: block;
}

.woocommerce-breadcrumb {
    display: none !important;
}

.woocommerce-products-header .woocommerce-breadcrumb {
    display: block !important;
}

/* --- Search Filter Styles --- */
.search-input-wrapper {
    display: flex;
    align-items: center;
    gap: 0;
    margin-top: 10px;
    border-bottom: 1px solid var(--color-gold);
    padding-bottom: 0px;
    position: relative;
}

.search-field {
    flex: 1;
    border: none !important;
    padding: 10px 0 !important;
    font-size: 14px !important;
    background: transparent !important;
    font-family: 'Josefin Sans', sans-serif !important;
}

.search-field:focus {
    outline: none !important;
}

.search-input-wrapper button[type="submit"] {
    background: #E1A30B !important;
    color: #000000 !important;
    border: none !important;
    padding: 13px 30px !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    font-family: 'Josefin Sans', sans-serif !important;
    font-weight: 500 !important;
}



/* --- Mobile Filter Styles --- */
.mobile-filter-bar {
    display: none;
    padding: 20px 0;
    border-top: 1px solid #E1A30B3D;
    border-bottom: 1px solid #E1A30B3D;
    margin-bottom: 30px;
    text-align: center;
}

.mobile-filter-toggle {
    background: none;
    border: none;
    color: var(--color-gold);
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}

.mobile-filter-icon {
    width: 14px;
    height: auto;
}

.filter-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.filter-backdrop.is-visible {
    opacity: 1;
    visibility: visible;
}

.sidebar-mobile-header {
    display: none;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #f0f0f0;
    font-family: 'Minion Pro', serif;
    font-size: 20px;
    color: var(--color-gold);
}

.sidebar-close {
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
}

body.filter-open {
    overflow: hidden;
}

@media (max-width: 991px) {
    .mobile-filter-bar {
        display: block;
    }

    .shop-sidebar-filters {
        position: fixed;
        top: 0;
        left: -100%;
        /* Hidden state */
        width: 100%;
        height: 100%;
        background: #fff;
        z-index: 1001;
        overflow-y: auto;
        padding: 0 !important;
        transition: left 0.3s ease;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
        order: unset !important;
    }

    .shop-sidebar-filters.is-open {
        left: 0;
    }

    .sidebar-mobile-header {
        display: flex;
    }

    #shop-filter-form {
        padding: 20px;
    }

    .shop-grid-container {
        display: block !important;
    }

    .shop-main-listing ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 576px) {
    .shop-main-listing ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
    }
}

/* --- Ring Size Guide Page --- */
.ring-size-guide-main {
    width: 100%;
    margin: 0;
    padding: 0;
}

.ring-size-guide-main .section-divider::before,
.ring-size-guide-main .section-divider::after {
    content: "";
    height: 1px;
    background: var(--color-gold);
    width: 30%;
}

.ring-size-hero {
    position: relative;
    width: 100%;
    height: 90vh;
    display: flex;
    align-items: end;
    justify-content: center;
    text-align: center;
    overflow: hidden;
}

.ring-size-hero-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.ring-size-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 2;
}

.ring-size-hero-content {
    position: relative;
    z-index: 3;
    color: #fff;
    max-width: 800px;
    padding: 0 20px 20px;
}

.ring-size-title {
    font-size: 40px !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    margin-bottom: 25px !important;
    text-transform: uppercase !important;
    color: #fff !important;
}

.ring-size-separator {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
}

.ring-size-separator::before,
.ring-size-separator::after {
    content: '';
    display: block;
    width: 80px;
    height: 1px;
    background-color: #D4BE74;
}

.diamond-icon {
    width: 8px;
    height: 8px;
    background-color: #D4BE74;
    transform: rotate(45deg);
    margin: 0 15px;
}

.ring-size-subtitle {
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #fff !important;
    font-family: "Josefin Sans", sans-serif;
}

.ring-size-breadcrumb {
    max-width: 1440px;
    margin: 40px auto 80px;
    padding: 0 20px;
    font-size: 14px;
    color: #666;
    font-family: "Josefin Sans", sans-serif;
}

.ring-size-breadcrumb a {
    color: var(--color-black);
    text-decoration: none;
}

.ring-size-breadcrumb span {
    color: #666;
}

.ring-size-container {
    max-width: 1440px;
    margin: 40px auto 80px;
    padding: 0 20px;
    font-family: "Josefin Sans", sans-serif;
}

.ring-size-table {
    width: 100%;
    border-collapse: collapse;
    text-align: center;
    font-size: 15px;
}

.ring-size-table th {
    background-color: #DCA93E;
    color: #fff;
    padding: 20px 10px;
    font-weight: 500;
    border: none;
}

.ring-size-table th .thead-title {
    display: block;
    font-size: 20px;
    margin-bottom: 5px;
}

.ring-size-table th .thead-subtitle {
    display: block;
    font-size: 16px;
    font-style: italic;
    opacity: 0.9;
}

.ring-size-table td {
    padding: 15px 10px;
    border: none;
    color: #333;
    font-size: 19px;
}

.ring-size-table tr.even-row {
    background-color: #FDF6EC;
}

.ring-size-table tr.odd-row {
    background-color: #fff;
}

@media (max-width: 768px) {

    .ring-size-title {
        font-size: 32px !important;
    }

    .ring-size-table {
        font-size: 13px;
    }

    .ring-size-table th .thead-title {
        font-size: 14px;
    }

    .ring-size-table th .thead-subtitle {
        font-size: 11px;
    }

    .ring-size-table td {

        font-size: 16px;
        padding: 8px 2px;
    }

    .woocommerce-Price-amount.amount,
    .cart-custom-heading {

        font-size: 24px !important;

    }

    .cart-custom-heading {
        margin: 40px 0 0px !important;

    }
}

@media (max-width: 411px) {

    .ring-size-table th .thead-title {
        font-size: 11px;
    }

    .item-image {
        flex: 0 0 80px !important;
    }

    .item-title a {

        font-size: 20px !important;

    }

    .footer-signup-form input {
        width: 200px;
    }

    .woocommerce-Price-amount.amount {
        font-size: 20px !important;
    }

    .summary-item-meta-custom .custom-cart-var {
        font-size: 14px !important;
    }
}

/* PRICE SLIDER */
.price-range-slider {
    padding: 10px 0;
}

.price-values {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
}

.price-values span {
    background: #fff;
    padding: 6px 10px;
    font-size: 13px;
    border-radius: 4px;
    border: 1px solid #eee;
}

/* Track */
.range-slider {
    position: relative;
    height: 4px;
    background: var(--color-gold);
    border-radius: 2px;
}

/* Gold active track */
.range-slider::before {
    content: "";
    position: absolute;
    height: 4px;
    background: var(--color-gold);
    left: 0;
    right: 0;
    border-radius: 2px;
}

/* Range inputs */
.range-slider input[type="range"] {
    position: absolute;
    width: 100%;
    top: -6px;
    background: none;
    pointer-events: none;
    -webkit-appearance: none;

}

/* Thumb */
.range-slider input[type="range"]::-webkit-slider-thumb {
    pointer-events: all;
    width: 14px;
    height: 14px;
    background: var(--color-gold);
    border-radius: 50%;
    border: none;
    cursor: pointer;
}

/* Chrome, Edge, Safari */
input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    background: #ff6600;
    /* change color */
    border-radius: 50%;
    /* make it round */
    cursor: pointer;
}

/* Firefox */
input[type="range"]::-moz-range-thumb {
    width: 18px;
    height: 18px;
    background: #ff6600;
    border-radius: 50%;
    cursor: pointer;
}

/* ── PREMIUM MULTI-STEP CHECKOUT (REFINED) ── */

.checkout-step .input-text,
.checkout-step select,
.checkout-step textarea,
.checkout-step .select2-container--default .select2-selection--single {
    border: none !important;
    border-bottom: 1.5px solid #FFC107 !important;
    padding: 10px 0 !important;
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 16px !important;
    color: var(--color-black) !important;
    width: 100% !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    height: auto !important;
}

.checkout-step select {
    width: 42% !important;
}


.checkout-step textarea {
    min-height: 40px;
    resize: none;
}

.checkout-step .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0 !important;
}

.checkout-step .input-text:focus,
.checkout-step select:focus {
    border-bottom-color: #fbb034 !important;
    outline: none !important;
}

.optional-field-toggle .plus-icon {
    width: 24px;
    height: 24px;
    border: 1.5px solid var(--color-black);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}


.summary-title {
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    color: var(--color-black) !important;
}

.edit-cart-link {
    color: var(--color-gold) !important;
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 13px !important;
    text-decoration: underline !important;
}


.summary-item-name {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 5px;
}

.summary-item-meta-custom {
    font-size: 12px;
    color: #999;
}

.summary-item-meta-custom .var-name {
    color: var(--color-gold);
}

.summary-item-total {
    margin-left: auto;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 15px;
    font-weight: 500;
}

.estimated-summary {
    margin-top: 25px;
}

.estimated-summary .label {
    font-size: 18px;
    color: var(--color-black) !important;
}

.woocommerce-remove-coupon {
    font-size: 18px !important;
    color: var(--color-black) !important;
}

.summary-heading {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 15px;
}

.summary-row {
    display: flex;
    justify-content: space-between;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 15px;
    margin-bottom: 8px;
}

.summary-row .label {
    color: #999;
}

.discount-value {
    color: var(--color-gold);
}

.final-total-value {
    font-weight: 700;
    color: var(--color-gold);
}


.progress-bar-container {
    height: 4px;
    background: #f0f0f0;
    margin-top: 10px;
    border-radius: 2px;
}

.progress-bar-fill {
    height: 100%;
    background: #fbb034;
    width: 25%;
    transition: width 0.4s ease;
}

.step-text {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #999;
}

.checkout-main-content {
    display: flex;
    flex-direction: column;
    gap: 30px;
    /* More spacing for visible steps */
}

/* Gray out inactive steps but show them */
.checkout-step.inactive {
    opacity: 0.5;
    filter: grayscale(0.8);
    pointer-events: none;
}

/* ONLY hide the buttons in inactive steps */
.checkout-step.inactive .step-actions,
.checkout-step.inactive .proceed-btn {
    display: none !important;
}

.step-actions {
    text-align: center;
    color: var(--color-black);
}

/* Standard visibility for active steps */
.checkout-step.active {
    opacity: 1;
    filter: none;
    pointer-events: all;
    border-color: #fbb034;
}

.step-header-compact {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}

.step-header-compact .step-info {
    display: flex;
    align-items: center;
    gap: 15px;
}

.step-number-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #fbb034;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
}

.step-title-text {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: var(--color-black);
    margin: 0;
}


.summary-content-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.summary-label {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    margin-bottom: 5px;
    font-weight: 700;
    color: var(--color-black);
    margin-bottom: 10px;
}

.summary-value {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    color: var(--color-black);
}

/* ── WooCommerce Field Errors ── */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
    font-family: 'Josefin Sans', sans-serif !important;
    border-top: none !important;
    background: #F9F7F2 !important;
    color: var(--color-black) !important;
    padding: 15px !important;
    border: 1px solid #EFEBE1 !important;
    margin-bottom: 20px !important;
}

.woocommerce-invalid .input-text {
    border-bottom-color: #e2401c !important;
}

.woocommerce-invalid-required-field label .required {
    color: #e2401c !important;
}

.woocommerce-error::before {
    content: "!";
    background: #e2401c;
    color: #fff;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    font-size: 12px;
}

.edit-step-link {
    color: #fbb034;
    text-decoration: underline;
    font-size: 14px;
    font-family: 'Josefin Sans', sans-serif;
    cursor: pointer;
}

.woocommerce-error-tip {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    color: red;
    margin-top: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.woocommerce-error-tip .error-icon {
    font-weight: 700;
}

.proceed-btn:hover {
    background: #e59e2a !important;
}

.variation {
    display: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
    .custom-checkout-grid {
        grid-template-columns: 1fr;
    }
}

/* Restored Default WooCommerce Layout */
.woocommerce-invalid .input-text,
.woocommerce-invalid select {
    border-bottom-color: #fbb034 !important;
}

#ship-to-different-address-checkbox {
    display: inline-block !important;
}

#ship-to-different-address {
    display: block !important;
}

.woocommerce-error-tip .error-icon {
    display: none;
}

.select2-search--dropdown .select2-search__field {
    padding: 13px !important;
    border-radius: 10px !important;
    border: 1px solid var(--color-gold) !important;

}

.select2-dropdown {
    background: #fbfbfb;
    border: 1px solid var(--color-gold) !important;
    border-radius: 10px !important;
}

.page-id-14 #main-content,
.single-product #main {
    max-width: 1330px;
    margin: 0 auto;
    padding: 20px;
}

.woocommerce-info::before,
.woocommerce-message::before {
    display: none;
}

.button.wc-backward {
    background: var(--color-gold) !important;
    font-family: 'Josefin Sans', sans-serif;
}


/* =========================================================
   CATEGORY HIERARCHY PAGES 
   ========================================================= */

.category-hierarchy-wrapper {
    width: 100%;
    font-family: 'Minion Pro', serif;
    overflow: hidden;
}

.category-hero {
    height: 80svh;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    text-align: center;
    color: #fff;
    /* min-height: 700px; */
    display: flex;
}


.category-hero-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
    padding: 50px 0px 20px;
}

.hero-cat-title {
    font-family: 'Minion Pro', serif;
    font-size: 52px;
    margin: 0;
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.hero-cat-divider {
    margin: 20px 0;
}

.hero-cat-desc {
    font-size: 18px;
    font-family: 'Josefin Sans', sans-serif;
    line-height: 1.3;
    letter-spacing: 1px;
    font-weight: 500;
    color: #54595f;
}

.main-cat-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 30px 20px 30px;
}

/* --- Layout: Category Grid --- */
.cat-grid-layout {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    margin-top: 40px;
}

.cat-grid-card {
    text-align: center;
}

.cat-grid-link {
    text-decoration: none;
    color: var(--color-black);
    display: block;
}

.cat-grid-image img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 4px;
    margin-bottom: 20px;
    transition: transform 0.3s ease;
}

.cat-grid-card:hover .cat-grid-image img {
    transform: scale(1.03);
}

.cat-grid-title {
    font-family: 'Minion Pro', serif;
    font-size: 28px;
    margin-bottom: 10px;
    letter-spacing: 1px;
    color: var(--color-black);
    font-weight: 400;
}

.cat-grid-desc {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    color: var(--color-black);
    font-weight: 400;
}

/* --- Layout: Grouped Products (Alternating) --- */
.collection-grouped-layout {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

.collection-group-section {
    width: 100%;
}

.group-section-header {
    text-align: center;
    margin-bottom: 50px;
}

.group-title {
    font-family: 'Minion Pro', serif;
    font-size: 32px;
    letter-spacing: 2px;
    color: var(--color-black);
    margin: 0 0 10px;
    font-weight: 500;
}

.group-products-list {
    display: flex;
    flex-direction: column;
    gap: 0px;
    /* Flush */
}

/* Row Alternating */
.coll-product-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
}

/* Even rows - Image Right */
.coll-product-row.layout-right {
    direction: rtl;
    /* simple way to swap visual order */
}

/* .coll-product-row.layout-right > * {
    direction: ltr; /* Reset text direction inside */
}

*/ .coll-product-image-col {
    text-align: center;
}

.coll-product-image-col img {
    max-width: 100%;
    height: 380px;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.coll-product-image-col a:hover img {
    transform: scale(1.05);
}

.product-type-title {
    font-family: 'Minion Pro', serif;
    font-size: 28px;
    margin-bottom: 15px;
    letter-spacing: 2px;
    font-weight: 400;
    color: #000000;
    text-transform: uppercase;
}

.product-type-desc {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    color: var(--color-black);
    line-height: 24px;
    margin: 25px 0px;
}

.btn-discover {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 13px;
    letter-spacing: 1px;
    color: var(--color-black);
    text-decoration: none;
    font-weight: 600;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    transition: color 0.3s ease;
}

.btn-discover:hover {
    color: #fbb034;
}

.btn-discover-diamond img {
    width: 80px;
    margin-top: 6px;
}
.tax-product_cat .btn-discover, .tax-product_cat .feature-btn{
	font-size:16px !important;
}

/* Responsive */
@media (max-width: 768px) {
    .coll-product-row {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 40px 0;
    }

    .coll-product-row.layout-right {
        direction: ltr;
        /* Reset on mobile */
    }

    .coll-product-text-col {
        text-align: center;
    }
	
.category-hero {
    min-height: 500px;
 
}
	.custom-container-premium .elementor-5138 .elementor-element-79710627  {
		min-height:450px !important;
	}


}

/* Ethically Beautiful Hover Animation */
@keyframes wobble-vertical {
    16.65% {
        transform: translateY(8px);
    }

    33.3% {
        transform: translateY(-6px);
    }

    49.95% {
        transform: translateY(4px);
    }

    66.6% {
        transform: translateY(-2px);
    }

    83.25% {
        transform: translateY(1px);
    }

    100% {
        transform: translateY(0);
    }
}

.about-image-portrait:hover,
.about-image-earrings:hover {
    animation: wobble-vertical 0.8s ease-in-out;
}

* --- About Page Styles --- */ .about-page-main {
    font-family: "Josefin Sans", sans-serif;
    color: var(--color-black);
}

.about-page-main h1,
.about-page-main h2,
.about-page-main h3 {
    font-family: var(--font-heading);
}

.about-hero-section {
    position: relative;
    width: 100%;
}

.about-hero-image-wrapper {
    position: relative;
    width: 100%;
    height: 680px;
    min-height: 400px;
    max-height: 680px;
    overflow: hidden;
}

.about-hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    object-position: center 20%;
}

.about-hero-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
}

.about-hero-title {
    color: #fff;
    font-size: 72px;
    font-weight: 500;
    margin: 0;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}



.about-intro-section {
    max-width: 930px;
    margin: 0 auto;
    text-align: center;
    padding: 30px 20px 60px;
    background: #ffffff99;
}

.about-section-title {
    font-size: 52px;
    font-weight: 400;
    letter-spacing: 2px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.about-section-title.text-left {
    font-size: 40px;
}

.about-section-title.text-left {
    text-align: left;
}

.about-intro-text p {
    font-size: 18px;
    line-height: 1.8;
    color: var(--color-black);
    margin: 0;
    font-family: "Josefin Sans", sans-serif;

}

.about-ethically-section {
    background: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/c87e91fb4ef94314e7f56a826a3d4942e6fdcf6a.png')
}

.about-ethically-container {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 60px;
    max-width: 1440px;
    margin: 0 auto;
    padding: 38px 20px 200px;
}

.about-ethically-text {
    flex: 1;
    min-width: 300px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about-ethically-text p {
    font-size: 18px;
    line-height: 1.4;
    color: var(--color-black);
    margin-bottom: 0px;
    font-family: "Josefin Sans", sans-serif;

}

.about-ethically-images {
    flex: 1;
    min-width: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    position: relative;
}

.about-image-portrait {
    width: 55%;
    margin-top: 180px;
}

.about-image-portrait img {
    width: 100%;
    height: auto;
    display: block;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}

.about-image-earrings {
    width: 45%;
    margin-bottom: 40px;
}

.about-image-earrings img {
    width: 100%;
    height: auto;
    display: block;
}

.about-quote-section {
    max-width: 890px;
    margin: 80px auto;
    text-align: center;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.about-quote-text p {
    font-size: 18px;
    line-height: 1.8;
    color: var(--color-black);
    margin-bottom: 30px;
    font-family: "Josefin Sans", sans-serif;

}

.about-diamond-separator {
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (max-width: 768px) {
    .about-hero-title {
        font-size: 52px;
    }

    .about-section-title.text-left {
        font-size: 30px;
    }

    .about-section-title {
        font-size: 40px;
    }

    .about-ethically-container {
        flex-direction: column;
        gap: 40px;
    }

    .about-ethically-images {
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }

    .about-image-portrait,
    .about-image-earrings {
        width: 80%;
        margin-top: 0;
        margin-bottom: 0;
    }
}


/* --- Mega Menu Styles --- */
.header-container {
    position: relative;
}

.mega-menu {
    display: none;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    background: #fff;
    z-index: 1000;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
    border-top: 1px solid #f0f0f0;
    padding: 50px 0;
    animation: fadeIn 0.3s ease;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Trigger mega menu on hover of the navigation or the menu itself */
/* Now handled by JS for specific menus */
/* .main-navigation:hover+.mega-menu, */
.mega-menu:hover {
    display: block;
}

.mega-menu-content,
.mega-menu-content-full {
    max-width: 1440px;
    margin: 0 auto;
    display: flex;
    gap: 40px;
    padding: 0 60px;
}

.mega-menu-content-full {
    flex-direction: column;
}

.mega-menu-slider-section {
    width: 100%;
    margin-bottom: 0px;
}

.mega-menu-slider-section .home-gemstones {
    padding: 0px 0;
}

.mega-menu-title-centered {
    font-family: var(--font-heading);
    font-size: 32px;
    text-align: center;
    color: var(--color-black);
    margin-bottom: 40px;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.gemstone-slider-wrapper {
    position: relative;
    padding: 0 50px;
}

.mega-menu-divider {
    text-align: center;
    margin: 30px 0;
    position: relative;
}

.mega-menu-divider::before,
.mega-menu-divider::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 40%;
    height: 1px;
    background: #f0f0f0;
}

.mega-menu-divider::before {
    left: 0;
}

.mega-menu-divider::after {
    right: 0;
}

.mega-menu-divider img {
    width: 20px;
    position: relative;
    z-index: 1;
    background: #fff;
    padding: 0 15px;
}

.mega-menu-flex {
    display: flex;
    gap: 40px;
}

.mega-menu-column {
    flex: 1;
}

.mega-menu-links {
    flex: 0 0 380px;
}

.mega-menu-title {
    font-family: var(--font-heading);
    font-size: 42px;
    font-weight: 400;
    color: var(--color-black);
    margin-bottom: 35px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.mega-menu-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: flex-start !important;
    /* Override center alignment */
}

.mega-menu-links a {
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    font-weight: 300;
    color: var(--color-black);
    text-decoration: none;
    transition: all 0.3s;
}

.mega-menu-links li {
    width: 100%;
}

.mega-menu-links li:hover > a,
.active-mega-link > a {
    color: var(--color-gold);
    padding-left: 15px;
}

.mega-menu-links li {
    position: relative;
}

.mega-menu-links li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 1px;
    background: var(--color-gold);
    transition: width 0.3s;
}

.mega-menu-links li:hover::before,
.active-mega-link::before {
    width: 10px;
}

.mega-menu-links .mega-subcollection-list {
    width: 100%;
    margin: 10px 0 0 18px;
    padding: 0 0 0 12px;
    gap: 10px;
    border-left: 1px solid rgba(251, 174, 23, 0.35);
}

.mega-menu-links .mega-subcollection-list .mega-subcollection-list {
    margin-top: 8px;
}

.mega-menu-links .mega-subcollection-list a {
    font-size: 16px;
    line-height: 1.2;
    color: var(--color-black);
}

.mega-menu-links .mega-subcollection-list li::before {
    left: -12px;
}

.mega-menu-links .mega-subcollection-list li:hover::before,
.mega-menu-links .mega-subcollection-list .active-mega-link::before {
    width: 8px;
}

.mega-menu-featured {
    flex: 1.5;
    display: flex;
    flex-direction: column;
}

.featured-image-container {
    position: relative;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    width: 100%;
}

.featured-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;
}

.featured-image-container:hover img {
    transform: scale(1.08);
}

.explore-btn {
    background: #fff;
    color: var(--color-gold);
    text-align: center;
    padding: 12px 30px;
    font-family: "Josefin Sans", sans-serif;
    font-weight: 500;
    text-decoration: none;
    font-size: 13px;
    letter-spacing: 2px;
    border: 1px solid var(--color-gold);
    transition: all 0.3s;
    width: 90%;
    white-space: nowrap;
    cursor: pointer;
}

.mega-menu-featured {
    text-align: center;
}

.mega-menu-featured .explore-btn {
    padding: 20px;
    width: 100%;
    margin-top: 25px;
    min-height: 58px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.25;
    white-space: normal;
}

.explore-btn:hover {
    background: var(--color-gold);
    color: #fff;
}

/* Mega Menu Swiper Navigation */
.gemstone-slider-mega .gemstone-prev,
.gemstone-slider-mega .gemstone-next {
    color: var(--color-black);
    width: 30px;
    height: 30px;
}

.gemstone-slider-mega .gemstone-prev::after,
.gemstone-slider-mega .gemstone-next::after {
    font-size: 18px;
    font-weight: bold;
}

@media (max-width: 1024px) {
    .mega-menu {
        display: none !important;
        /* Hide mega menu on mobile/tablets */
    }
}

/* ==========================================================================
   Alternating Category Layout (1 Full, 2 Half)
   ========================================================================== */

.cat-alternating-layout {
    width: 100%;
    padding-bottom: 60px;
}

.cat-fw-block {
    text-align: center;
    margin-bottom: 20px;
}

.cat-fw-image {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    height: clamp(470px, 38vw, 550px);
    overflow: hidden;
    margin-bottom: 20px;
}

.cat-fw-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

.cat-fw-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

.cat-fw-title {
    font-family: 'Minion Pro', serif;
    font-size: 52px;
    margin: 0;
    font-weight: 400;
    letter-spacing: 2px;
    text-transform: uppercase;
	color:#000 !important;
	margin-bottom:5px;
}

.cat-fw-desc {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 16px;
    color: #033333;
    margin-bottom: 20px;
    line-height: 1.6;
}

.cat-discover-btn {
    display: inline-block;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
    font-size: 17px;
    color: #033333;
    text-decoration: none;
    text-transform: uppercase;
    padding-bottom: 3px;
    letter-spacing: 1px;
    border-style: solid;
    border-width: 1px;
    border-color: var(--color-dark-gold);
    padding: 10px 100px;

}

.cat-discover-btn:hover {
    background: var(--color-dark-gold);
    color: #fff;
}
.cat-fw-content .section-divider img , .cat-hw-card .section-divider img{
	margin-top:2px;
}


.cat-hw-row {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin: 65px 0px 65px;
    flex-wrap: wrap;
    align-items: flex-start;
}


.cat-hw-card {
    flex: 0 0 calc(50% - 30px);
    max-width: 400px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.cat-hw-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

.cat-hw-image {
    width: 100%;
    height: 400px;
    overflow: hidden;
    background-color: transparent;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cat-hw-image img {
    width: 400px;
    height: 400px;
    display: block;
    transition: transform 0.5s ease, opacity 0.5s ease;
    object-fit: contain;
}

.cat-hw-image.has-hover-img img.hover-img {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    object-fit: contain;
}

.cat-hw-card:hover .cat-hw-image.has-hover-img img.base-img {
    opacity: 0;
}

.cat-hw-card:hover .cat-hw-image.has-hover-img img.hover-img {
    opacity: 1;
    transform: scale(1.05);
}

.cat-hw-card:hover .cat-hw-image:not(.has-hover-img) img {
    transform: scale(1.05);
}

.cat-hw-content {
    min-height: 132px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.cat-hw-title {
    font-family: 'Minion Pro', serif;
    font-size: 32px;
    color: var(--color-black);
    margin: 0px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 500;

}

.cat-hw-desc {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    color: #666;
    line-height: 1.5;
}

@media (max-width: 768px) {
    .cat-fw-image {
        height: 50vh;
        min-height: 360px;
    }

    .cat-hw-row {
        gap: 30px;
    }

    .cat-hw-card {
        flex: 0 0 100%;
    }

    .cat-hw-image {
        height: min(400px, 90vw);
    }

    .cat-hw-image img {
        width: min(400px, 90vw);
        height: min(400px, 90vw);
    }
}


/* Lightweight divider logo (replaces a 28 KB base64 PNG embedded in SVG
   that the live page used). Same visual size as the original. */
.eveli-logo-divider {
    width: 101px;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* ==========================.category-hero===========================================
   "Volatus-style" hero overrides — only on grouped_products pages
   (those with a sub-collection showcase list). Mirrors the live
   /volatus/ hero: 700px tall, content vertically centered, 40px
   black heading.
   ===================================================================== */
.has-vol-showcase .category-hero {
    min-height: 700px;
    justify-content: center;
    padding: 60px 20px;
}

.has-vol-showcase .category-hero-overlay {
    background: rgba(0, 0, 0, 0.18);
}

.has-vol-showcase .hero-cat-title {
    font-family: 'Minion Pro', 'Libre Baskerville', 'Playfair Display', serif;
    font-size: 40px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 1px;
    color: #fff;
}

.has-vol-showcase .hero-cat-desc {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.55;
    max-width: 720px;
    color: #fff;
}

@media (max-width: 768px) {
    .has-vol-showcase .category-hero {
        min-height: 480px;
        padding: 40px 20px;
    }

    .has-vol-showcase .hero-cat-title {
        font-size: 32px;
    }

    .has-vol-showcase .hero-cat-desc {
        font-size: 16px;
    }

    .hero-description {
        font-size: 20px;

    }
}

/* The grouped_products body removes the .main-cat-container's padding so
   showcase rows can sit flush edge-to-edge under the hero. */
.has-vol-showcase .main-cat-container {
    max-width: none;
    padding: 0;
}

/* =====================================================================
   "Volatus-style" showcase rows — used by taxonomy-product_cat.php's
   grouped_products strategy. Mirrors live eveli.co.uk/volatus/ exactly:
     - Full-bleed 50/50 image|text rows, min-height 70vh
     - Alternating direction
     - Minion 40px headings, Josefin Sans 18px copy
     - Bordered "DISCOVER" CTA (gold var(--color-dark-gold) border, white bg, hover fills)
   ===================================================================== */

/* List wrapper — breaks out of the .main-cat-container's max-width 1440px
   so each row goes edge-to-edge like on the live site. */
.vol-showcase-list {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
    background: #fff;
}

.category-hierarchy-wrapper h2{
	text-transform: uppercase;
	    font-size: 55px !important;

}

.vol-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin: 20px auto;
    padding: 10px 0;
    width: min(50vw, 720px);
}

.vol-divider span {
    flex: 1 1 auto;
    height: 1px;
    background: var(--color-dark-gold);
}

.vol-showcase-list .hero-divider img {
    width: 18px;
    height: 18px;
}

.vol-section {
       display: flex;
    flex-direction: row;
    align-items: stretch;
    background: #fff;
    max-width: 1140px;
    margin: 0 auto;
}

.category-hierarchy-wrapper .vol-section .vol-title{
	font-size:55px !important;
	    width: 100%;
}
/* .vol-section--reverse .vol-title, .vol-section--reverse .vol-desc{
	text-align:right;
} */
.category-hierarchy-wrapper .vol-section .vol-content{
	text-align:left;
}
.vol-section--reverse {
    flex-direction: row-reverse;
}

.vol-image {
    flex: 1 1 50%;
    overflow: hidden;
}

.vol-image a {
    display: block;
    width: 100%;
    height: 100%;
}

.vol-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.vol-image a:hover img {
    transform: scale(1.04);
}

.vol-content {
        flex: 1 1 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4px 5px;
    text-align: center;
}

.vol-title {
    font-family: 'Minion Pro', 'Libre Baskerville', 'Playfair Display', serif;
    font-size: 40px;
    font-weight: 500;
    color: #030611;
    margin: 0 0 20px;
    line-height: 1.2;
    letter-spacing: 0.5px;
}

.vol-desc, .category-hierarchy-wrapper p {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #030611;
    line-height: 1.55;
	margin: 0 0 30px;
}
.category-hierarchy-wrapper .elementor-widget-divider {
	height:20px;
	    margin-top: -13px;

}

.vol-desc p {
    margin: 0 0 12px;
}

.vol-desc p:last-child {
    margin-bottom: 0;
}

/* Bordered DISCOVER button — matches volatus exactly. */
.vol-btn {
    display: inline-block;
    background-color: #fff;
    color: #030611;
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-decoration: none;
    padding: 10px 100px;
    border: 1px solid var(--color-dark-gold);
    transition: background-color 0.25s ease, color 0.25s ease;
    cursor: pointer;
}

.vol-btn:hover,
.vol-btn:focus {
    background-color: var(--color-dark-gold);
    color: #fff;
    text-decoration: none;
}

.vol-unfurl {
    background: #fff;
    text-align: center;
}

.vol-unfurl-image {
    display: block;
    width: 100%;
    height: clamp(420px, 55vw, 620px);
    min-height: 0;
    background-position: center center;
    background-repeat: no-repeat;
    /* background-size: contain; */
    background-size: 60vh;
    background-attachment: fixed;
}

.vol-unfurl-content {
   display: flex;
    flex-direction: column;
    align-items: center;
    padding: 53px 20px 11px;
}

.vol-unfurl .vol-desc {
    max-width: min(80vw, 920px);
}

@media (max-width: 1024px) {
    .vol-content {
        padding: 50px 40px;
    }

    .vol-btn {
        padding: 10px 60px;
    }

    .vol-unfurl-image {
        height: clamp(340px, 60vw, 520px);
        min-height: 0;
        background-attachment: fixed;
    }
}

@media (min-width: 769px) and (max-height: 700px) {
    .vol-section {
        max-width: min(1140px, calc((100svh - 80px) * 1.8));
        align-items: center;
    }

    .vol-image {
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: visible;
    }

    .vol-image a {
        height: auto;
        aspect-ratio: 1 / 1;
    }

    .vol-image img {
        object-fit: contain;
    }

    .vol-content {
        padding: 24px 20px;
    }

    .category-hierarchy-wrapper .vol-section .vol-title {
        font-size: clamp(32px, 5.4vh, 48px) !important;
    }
}

@media (max-width: 768px) {

    .vol-section,
    .vol-section--reverse {
        flex-direction: column;
        min-height: 0;
        max-width: 100%;
        width: 100%;
    }

    .vol-image {
        flex: 0 0 auto;
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
        overflow: visible;
    }

    .vol-image a {
        width: min(100%, 560px);
        height: auto;
        aspect-ratio: 1 / 1;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .vol-image img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

 .category-hierarchy-wrapper .vol-section .vol-title, .category-hierarchy-wrapper h2 {
 
    font-size: 32px !important;
}

    .vol-content {
        padding: 40px 24px;
    }

    .vol-title {
        font-size: 28px;
    }

    .vol-desc {
        font-size: 16px;
    }

    .vol-btn {
        padding: 10px 40px;
        font-size: 16px;
    }

    .vol-divider {
        width: 80vw;
        gap: 12px;
    }

    .vol-unfurl-image {
        height: clamp(260px, 72vw, 360px);
        min-height: 0;
        background-attachment: scroll;
        background-size: contain;
    }

    .vol-unfurl-content {
        padding: 20px 24px 0;
    }
}

@media (max-width: 768px) and (max-height: 700px) {
    .vol-image a {
        width: min(100%, calc(100svh - 220px), 560px);
    }

    .vol-content {
        padding: 24px 20px;
    }
}
/* ============================================================
   FAQ PAGE
   ============================================================ */

/* --- Page wrapper --- */
.faq-page-main {
    background: #fff;
}

.faq-content-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 40px 100px;
}

/* --- Page Header --- */
.faq-page-header {
    text-align: center;
    margin-bottom: 64px;
}

.faq-page-title {
    font-family: "Minion Pro", "Libre Baskerville", "Playfair Display", serif;
    font-size: clamp(28px, 4vw, 48px);
    font-weight: 500;
    color: var(--color-black);
    text-transform: uppercase;
    margin: 0 0 28px;
	font-size:52px;
}


/* --- FAQ Grid: 2 columns --- */
.faq-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}


.faq-section-number {
    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #c8b98a;
    margin-bottom: 6px;
}

.faq-section-title {
    font-family: "Minion Pro", "Libre Baskerville", "Playfair Display", serif;
    font-size: 32px;
    font-weight: 400;
    color: 000;
    margin: 0 0 28px;
}

/* --- FAQ Entry --- */
.faq-entry {
    margin-bottom: 22px;
}

.faq-entry:last-child {
    margin-bottom: 0;
}

.faq-q {
       font-family: "Josefin Sans", sans-serif;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #656565;
    margin: 0 0 8px;
    line-height: 1.5;
}

.faq-a {
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: #555052;
    margin: 0;
}

.faq-a a {
    color: var(--color-gold);
    text-decoration: underline;
}

/* --- Responsive --- */
@media (max-width: 900px) {
    .faq-grid {
        grid-template-columns: 1fr;
    }

  

    .faq-section {
        padding: 36px 28px;
    }
}

@media (max-width: 480px) {
    .faq-page-title {
        font-size: 22px;
        letter-spacing: 0.1em;
    }

    .faq-divider-line {
        width: 60px;
    }

    .faq-section {
        padding: 28px 20px;
    }

    .faq-section-title {
        font-size: 32px;
    }
}


.faq-hero-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 60% 60% at 20% 50%, rgba(251,174,23,0.12) 0%, transparent 70%),
        radial-gradient(ellipse 40% 40% at 80% 30%, rgba(251,174,23,0.08) 0%, transparent 60%);
    pointer-events: none;
}

.faq-hero-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
    height: 1px;
    background: var(--color-gold);
    opacity: 0.6;
}

.faq-hero-overlay {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 0 20px;
}

.faq-hero-title {
    font-family: "Minion Pro", "Libre Baskerville", "Playfair Display", serif;
    font-size: clamp(36px, 6vw, 72px);
    font-weight: 400;
    color: #fff;
    letter-spacing: 0.04em;
    margin: 0 0 16px;
    line-height: 1.1;
}

.faq-hero-subtitle {
    font-family: "Josefin Sans", sans-serif;
    font-size: clamp(13px, 2vw, 17px);
    color: rgba(255,255,255,0.65);
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin: 0;
}

/* --- Content Wrapper --- */
.faq-content-wrapper {
      padding: 60px 40px 40px;
    max-width: 1400px;
    margin: 0 auto;
}


/* --- FAQ Item --- */
.faq-item {
    border-bottom: 1px solid rgba(44,42,43,0.1);
    overflow: hidden;
}

.faq-question {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 22px 0;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    font-family: "Minion Pro", "Libre Baskerville", "Playfair Display", serif;
    font-size: 19px;
    font-weight: 400;
    color: var(--color-black);
    line-height: 1.4;
    transition: color 0.2s ease;
}

.faq-question:hover {
    color: var(--color-gold);
}

.faq-item.open .faq-question {
    color: var(--color-gold);
}

.faq-icon {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border: 1px solid currentColor;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease, background 0.2s ease, color 0.2s ease;
    color: var(--color-black);
}

.faq-item.open .faq-icon {
    background: var(--color-gold);
    border-color: var(--color-gold);
    color: var(--color-black);
    transform: rotate(180deg);
}

/* --- FAQ Answer --- */
.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-answer p {
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: #555052;
    padding: 0 48px 28px 0;
    margin: 0;
}

/* --- Contact CTA --- */
.faq-contact-cta {
    text-align: center;
    padding: 60px 0 0;
    border-top: 1px solid rgba(44,42,43,0.1);
    margin-top: 20px;
}

.faq-contact-cta .hero-divider {
    margin-bottom: 28px;
}

.faq-contact-cta .hero-divider img {
    width: 48px;
    opacity: 0.7;
}

.faq-cta-title {
    font-family: "Minion Pro", "Libre Baskerville", "Playfair Display", serif;
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 400;
    color: var(--color-black);
    margin: 0 0 16px;
    letter-spacing: 0.02em;
}

.faq-cta-text {
    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    color: #666;
    margin: 0 auto 36px;
    max-width: 520px;
    line-height: 1.7;
}

.faq-cta-btn {
    display: inline-block;
    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--color-black);
    background: var(--color-gold);
    padding: 16px 48px;
    text-decoration: none;
    border: none;
    transition: background 0.25s ease, transform 0.2s ease;
}

.faq-cta-btn:hover {
    background: #e09c0f;
    transform: translateY(-1px);
}

/* --- Responsive --- */
@media (max-width: 768px) {
    .faq-hero-section {
        height: 300px;
    }

    .faq-content-wrapper {
        padding: 50px 20px 70px;
    }

    .faq-filter-tabs {
        gap: 8px;
        margin-bottom: 40px;
    }

    .faq-tab {
        font-size: 11px;
        padding: 8px 14px;
    }
	.faq-page-header {
    margin-bottom: 30px;
}
	.faq-content-wrapper {
      padding: 40px 20px 40px;
    max-width: 1400px;
    margin: 0 auto;
}

    .faq-question {
        font-size: 17px;
        padding: 18px 0;
    }

    .faq-answer p {
        font-size: 15px;
        padding-right: 0;
    }
}

@media (max-width: 480px) {
    .faq-hero-title {
        font-size: 30px;
    }

    .faq-group-title {
        font-size: 18px;
    }

    .faq-question {
        font-size: 15px;
    }

    .faq-icon {
        width: 26px;
        height: 26px;
    }
}


/* ============================================================
   CARE & REPAIR PAGE
   ============================================================ */

.care-page-main {
    background: #fff;
}

.care-content-wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 60px 40px 100px;
}

/* --- Hero image --- */
.care-hero-image {
    text-align: center;
    margin-bottom: 40px;
}

.care-hero-image img {
    max-width: 100%;
    width: 100%;
    height: auto;
}

/* --- Page Header --- */
.care-page-header {
    text-align: center;
    margin-bottom: 60px;
}

.care-page-title {
    font-family: "Minion Pro", "Libre Baskerville", "Playfair Display", serif;
    font-size: 52px;
    font-weight: 400;
    color: var(--color-black);
    letter-spacing: 0.18em;
    text-transform: uppercase;
    margin: 0 0 16px;
}

.care-page-subtitle {
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    color: #888;
    max-width: 700px;
    margin: 0 auto 28px;
    line-height: 1.7;
}

/* --- Shared Divider --- */
.care-title-divider,
.care-full-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin: 0 auto;
}

.care-full-divider {
    margin: 50px 0;
}

.care-full-divider--bottom {
    margin-top: 60px;
}

.care-divider-line {
    display: block;
    flex: 1;
    max-width: 200px;
    height: 1px;
    background: var(--color-gold);
}

.care-divider-icon {
    width: 22px;
    height: auto;
    opacity: 0.75;
}

/* --- Care Sections (single-column centred) --- */
.care-sections {
    max-width: 900px;
    margin: 0 auto;
}

.care-section {
    text-align: center;
    padding: 56px 0;
    border-bottom: 1px solid #ece8de;
}

.care-section:first-child {
    border-top: none;
}

.care-section-title {
    font-size: 40px;
    font-weight: 500;
    /* letter-spacing: 0.08em; */
    text-transform: uppercase;
    color: #4e4949;
    margin: 0 0 18px;
}

.care-section-text {
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    line-height: 1.8;
    color: #555052;
    margin: 0 auto;
    max-width: 100%;
}

/* CTA section */
.care-section--cta {
    border-bottom: none;
    padding-bottom: 0;
}

.care-cta-btn {
    display: inline-block;
    margin-top: 24px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--color-black);
    background: var(--color-gold);
    padding: 14px 44px;
    text-decoration: none;
    transition: background 0.25s ease, transform 0.2s ease;
}

.care-cta-btn:hover {
    background: #e09c0f;
    transform: translateY(-1px);
}

/* --- Gemstone Intro --- */
.care-gemstone-intro {
    text-align: center;
    margin-bottom: 44px;
}

.care-gemstone-heading {
    font-size: 40px;
    font-weight: 500;
    text-transform: uppercase;
    color: var(--color-gold);
    margin: 0 0 12px;
}

.care-gemstone-subtext {
    font-size: 18px;
    color: #888;
    margin: 0 auto 28px;
}

/* Colour swatches row */
.care-gem-swatches {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.gem-swatch {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-block;
    cursor: default;
    transition: transform 0.2s ease;
}

.gem-swatch:hover {
    transform: scale(1.2);
}

.gem-swatch--more {
    background: #f0ece4;
    border: 1px solid #d4c9a8;
    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: var(--color-gold);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* --- Gemstone Card Grid: 4 columns --- */
.care-gem-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
   
}



.gem-card-dot {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    margin-bottom: 14px;
}

.gem-card-name {
    font-family: "Josefin Sans", sans-serif;
    font-size: 38px;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--color-black);
    margin: 0 0 12px;
}

.gem-card-text {
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: #777;
    margin: 0;
}

/* --- Request Assistance CTA --- */
.care-assist-cta {
    text-align: center;
    padding: 0 20px;
}

.care-assist-title {
    font-size: clamp(24px, 3.5vw, 38px);
    font-weight: 400;
    color: var(--color-black);
    letter-spacing: 0.08em;
    margin: 0 0 14px;
    font-size: 53px;
    text-transform: uppercase;
}

.care-assist-text {
    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    color: #888;
    max-width: 560px;
    margin: 0 auto 28px;
    line-height: 1.75;
}

/* --- Responsive --- */
@media (max-width: 1024px) {
    .care-gem-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .care-content-wrapper {
        padding: 50px 24px 70px;
    }
	.care-assist-title {
		font-size:40px;
	}

    .care-gem-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .care-section {
        padding: 32px 0;
    }
}

@media (max-width: 480px) {
    .care-gem-grid {
        grid-template-columns: 1fr;
    }

    .care-gem-card {
        padding: 20px 16px;
    }

    .care-page-title {
        font-size: 22px;
        letter-spacing: 0.1em;
    }

    .care-section-title {
        font-size: 16px;
    }
}


/* --- Legal Pages (Privacy Policy, Terms & Conditions) --- */
.legal-page-main {
    max-width: 1000px;
    margin: 100px auto;
    padding: 0 20px;
    text-align: center;
}


.legal-page-header {
    margin-bottom: 60px;
}

.legal-page-title {
    font-family: var(--font-heading) !important;
    font-size: 52px !important;
    font-weight: 500 !important;
    margin-bottom: 25px !important;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: var(--color-black);
}

.legal-page-subtitle {
	font-family: "Josefin Sans", sans-serif !important;
    font-size: 18px;
    line-height: 1.6;
    color: #7a7a7a;
    margin-bottom: 40px;


}

.legal-title-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px 0 60px;
}

.legal-divider-line {
   height: 1px;
    background-color: var(--color-dark-gold);
    max-width: 260px;
    width: 100%;
}

.legal-divider-icon {
    width: 18px;
    height: 18px;
    margin: 0 20px;
    object-fit: contain;
}

.legal-sections {
    text-align: left;
  
}

.legal-section {
    margin-bottom: 45px;
}

.legal-section-title {
    font-family: var(--font-heading) !important;
    font-size: 32px !important;
    font-weight: 500 !important;
    margin-bottom: 15px !important;
    color: var(--color-black);
}

.legal-section-text {
       font-family: "Josefin Sans", sans-serif !important;
    font-size: 18px;
    line-height: 1.8;
    color: var(--color-black);
    margin-bottom: 20px;
}

.legal-section-text a {
    color: var(--color-dark-gold);
    text-decoration: underline;
}

.legal-footer-divider {
    margin: 80px 0 40px;
}



/* ============================================================
   JOURNEY OF JEWELLERY — EDITORIAL REDESIGN
   Scoped to the existing template-journey.php only.
   ============================================================ */

.page-template-template-journey .journey-main {
    --journey-paper: #fbfaf7;
    --journey-ivory: #f6f2eb;
    --journey-charcoal: #282521;
    --journey-text: #25221f;
    --journey-muted: #666059;
    --journey-gold: #bd8210;
    background: var(--journey-paper);
    color: var(--journey-text);
    overflow: hidden;
}

/* Hero */
.page-template-template-journey .journey-editorial-hero {
    position: relative;
    min-height: clamp(430px, 44vw, 660px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #272420;
}

.page-template-template-journey .journey-editorial-hero-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-template-template-journey .journey-editorial-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(24, 22, 19, 0.64) 0%,
            rgba(24, 22, 19, 0.35) 48%,
            rgba(24, 22, 19, 0.52) 100%
        );
}

.page-template-template-journey .journey-editorial-hero-copy {
    position: absolute;
    left: 50%;
    bottom: 24px;
    z-index: 2;
    width: auto;
    padding: 0;
    transform: translateX(-50%);
    text-align: center;
    color: #fff;
}

.page-template-template-journey .journey-editorial-kicker {
    display: inline-block;
    margin: 0;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.24em;
    color: rgba(255,255,255,0.92);
    text-shadow: 0 1px 10px rgba(0,0,0,0.35);
}

/* Intro */
.page-template-template-journey .journey-editorial-intro {
    padding: 92px 24px 102px;
    text-align: center;
    border-bottom: 1px solid rgba(37, 34, 31, 0.10);
}

.page-template-template-journey .journey-editorial-intro p {
    margin-left: auto !important;
    margin-right: auto !important;
}

.page-template-template-journey .journey-editorial-intro-primary {
    margin-top: 0 !important;
    margin-bottom: 7px !important;
    font-family: var(--font-heading) !important;
    font-size: clamp(23px, 2.1vw, 34px) !important;
    font-weight: 400;
    line-height: 1.38;
    color: #35312d;
}

.page-template-template-journey .journey-editorial-intro-secondary {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-family: var(--font-heading) !important;
    font-size: clamp(19px, 1.6vw, 25px) !important;
    font-weight: 400;
    line-height: 1.48;
    color: #5d5751;
}

/* Chapter container */
.page-template-template-journey .journey-editorial-chapters {
    width: min(1420px, calc(100% - 80px));
    margin: 0 auto;
    padding: 82px 0 150px;
}

.page-template-template-journey .journey-editorial-chapter {
    position: relative;
}

/* Deliberate breathing room between each design. */
.page-template-template-journey .journey-editorial-chapter + .journey-editorial-chapter {
    margin-top: 150px;
    padding-top: 125px;
    border-top: 1px solid rgba(37, 34, 31, 0.12);
}

/* Main finished-piece/story row */
.page-template-template-journey .journey-editorial-feature {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr);
    gap: clamp(66px, 7vw, 118px);
    align-items: center;
}

.page-template-template-journey .journey-editorial-chapter.is-reverse .journey-editorial-finished {
    order: 2;
}

.page-template-template-journey .journey-editorial-chapter.is-reverse .journey-editorial-copy {
    order: 1;
    justify-self: end;
}

.page-template-template-journey .journey-editorial-finished {
    display: block;
    width: 100%;
    aspect-ratio: 1.36 / 1;
    overflow: hidden;
    background: #fff;
    text-decoration: none;
}

.page-template-template-journey .journey-editorial-finished img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    background: #fff;
    transition: transform 0.55s ease;
}

.page-template-template-journey .journey-editorial-finished:hover img {
    transform: scale(1.018);
}

.page-template-template-journey .journey-editorial-copy {
    width: 100%;
    max-width: 540px;
}

.page-template-template-journey .journey-editorial-chapter-label {
    display: block;
    margin-bottom: 20px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.20em;
    color: var(--journey-gold);
}

.page-template-template-journey .journey-editorial-copy h2 {
    margin: 0 0 26px !important;
    font-family: var(--font-heading) !important;
    font-size: clamp(39px, 3.3vw, 58px) !important;
    font-weight: 400 !important;
    line-height: 1.08;
    text-transform: none;
    color: var(--journey-text);
}

.page-template-template-journey .journey-editorial-copy p {
    max-width: 500px;
    margin: 0 !important;
    font-family: var(--font-body) !important;
    font-size: 17px !important;
    font-weight: 300;
    line-height: 1.82;
    color: var(--journey-muted);
}

.page-template-template-journey .journey-editorial-small-rule {
    display: block;
    width: 44px;
    height: 1px;
    margin: 36px 0 28px;
    background: var(--journey-gold);
}

.page-template-template-journey .journey-editorial-product-link {
    display: inline-block;
    padding-bottom: 5px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.17em;
    color: var(--journey-text);
    text-decoration: none;
    border-bottom: 1px solid rgba(37, 34, 31, 0.72);
    transition: color 0.22s ease, border-color 0.22s ease;
}

.page-template-template-journey .journey-editorial-product-link:hover,
.page-template-template-journey .journey-editorial-product-link:focus-visible {
    color: var(--journey-gold);
    border-bottom-color: var(--journey-gold);
    outline: none;
}

/* The Making */
.page-template-template-journey .journey-editorial-making {
    margin-top: 68px;
}

.page-template-template-journey .journey-editorial-making-title {
    margin-bottom: 22px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.19em;
    color: #615b55;
}

.page-template-template-journey .journey-editorial-stage-grid {
    display: grid;
    grid-template-columns: repeat(var(--journey-stage-count, 6), minmax(0, 1fr));
    gap: 18px;
}

.page-template-template-journey .journey-editorial-stage {
    margin: 0;
    min-width: 0;
}

.page-template-template-journey .journey-editorial-stage-image {
    width: 100%;
    aspect-ratio: 1.20 / 1;
    overflow: hidden;
    background: #ece7df;
}

.page-template-template-journey .journey-editorial-stage-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s ease;
}

.page-template-template-journey .journey-editorial-stage:hover .journey-editorial-stage-image img {
    transform: scale(1.025);
}

.page-template-template-journey .journey-editorial-stage figcaption {
    padding-top: 12px;
    font-family: var(--font-body);
    line-height: 1.4;
}

.page-template-template-journey .journey-editorial-stage-number {
    display: block;
    margin-bottom: 4px;
    font-size: 11px;
    letter-spacing: 0.10em;
    color: var(--journey-gold);
}

.page-template-template-journey .journey-editorial-stage-name {
    display: block;
    font-size: 12px;
    font-weight: 300;
    color: #4d4843;
}

/* Closing commission block */
.page-template-template-journey .journey-editorial-commission {
    padding: 84px 24px 90px;
    text-align: center;
    background: var(--journey-charcoal);
    color: #fff;
}

.page-template-template-journey .journey-editorial-commission-inner {
    width: min(620px, 90vw);
    margin: 0 auto;
}

.page-template-template-journey .journey-editorial-commission h2 {
    margin: 0 !important;
    font-family: var(--font-heading) !important;
    font-size: clamp(32px, 3vw, 46px) !important;
    font-weight: 400 !important;
    color: #fff !important;
    text-transform: none;
}

.page-template-template-journey .journey-editorial-commission p {
    margin: 14px 0 30px !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300;
    color: rgba(255, 255, 255, 0.66);
}

.page-template-template-journey .journey-editorial-enquire {
    display: inline-flex;
    min-width: 152px;
    height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0 30px;
    border: 1px solid rgba(189, 130, 16, 0.78);
    color: #fff;
    text-decoration: none;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.18em;
    transition: background 0.25s ease, color 0.25s ease;
}

.page-template-template-journey .journey-editorial-enquire:hover,
.page-template-template-journey .journey-editorial-enquire:focus-visible {
    background: var(--journey-gold);
    color: #1e1b18;
    outline: none;
}

/* Tablet */
@media (max-width: 1050px) {
    .page-template-template-journey .journey-editorial-chapters {
        width: min(100% - 46px, 1100px);
    }

    .page-template-template-journey .journey-editorial-feature {
        grid-template-columns: minmax(0, 1fr) minmax(300px, 0.82fr);
        gap: 50px;
    }

    .page-template-template-journey .journey-editorial-stage-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        row-gap: 30px;
    }

    .page-template-template-journey .journey-editorial-chapter + .journey-editorial-chapter {
        margin-top: 122px;
        padding-top: 100px;
    }
}

/* Mobile */
@media (max-width: 760px) {
    .page-template-template-journey .journey-editorial-hero {
        min-height: 430px;
    }

    .page-template-template-journey .journey-editorial-intro {
        padding: 64px 22px 72px;
    }

    .page-template-template-journey .journey-editorial-chapters {
        width: calc(100% - 32px);
        padding: 64px 0 96px;
    }

    .page-template-template-journey .journey-editorial-feature {
        display: flex;
        flex-direction: column;
        gap: 38px;
    }

    .page-template-template-journey .journey-editorial-chapter.is-reverse .journey-editorial-finished,
    .page-template-template-journey .journey-editorial-chapter.is-reverse .journey-editorial-copy {
        order: initial;
    }

    .page-template-template-journey .journey-editorial-copy {
        max-width: none;
    }

    .page-template-template-journey .journey-editorial-copy p {
        font-size: 16px !important;
    }

    .page-template-template-journey .journey-editorial-making {
        margin-top: 48px;
    }

    .page-template-template-journey .journey-editorial-stage-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 26px 12px;
    }

    .page-template-template-journey .journey-editorial-chapter + .journey-editorial-chapter {
        margin-top: 96px;
        padding-top: 80px;
    }

    .page-template-template-journey .journey-editorial-commission {
        padding: 64px 20px 72px;
    }
}

/* =======================================================
   "SHOP"
======================================================= */

.custom-no-products-notice.woocommerce-info {
    background-color: #fcfcfc !important;
    border-left: 4px solid #d4af37 !important;
}

.no-products-text {
    margin-bottom: 20px;
    font-size: 16px;
}

.no-products-actions {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}

.no-products-actions .button {
    text-decoration: none;
}

.clear-filters-btn {
    background-color: transparent !important;
    color: #333 !important;
    border: 1px solid #ccc !important;
}

/* =========================================
   Sticky Mobile Add to Cart Bar
========================================= */

.eveli-sticky-cart-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #ffffff;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    z-index: 9998;
    transform: translateY(100%);
    visibility: hidden;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.4s;
    box-sizing: border-box;
}

.eveli-sticky-cart-bar.is-visible {
    transform: translateY(0);
    visibility: visible;
}

.sticky-cart-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sticky-cart-image img {
    width: 45px;
    height: 45px;
    object-fit: cover;
    border-radius: 2px;
}

.sticky-cart-details {
    display: flex;
    flex-direction: column;
}

.sticky-cart-title {
    font-size: 12px;
    font-weight: 600;
    color: #111;
    text-transform: uppercase;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sticky-cart-price * {
    font-size: 14px !important;
    color: #666;
}

.sticky-cart-price del {
    font-size: 11px;
    opacity: 0.7;
    margin-right: 4px;
}

.sticky-cart-action .button {
    background-color: #f7a800 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 12px 18px !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    margin: 0 !important;
    white-space: nowrap;
}

@media (min-width: 769px) {
    .eveli-sticky-cart-bar {
        display: none !important;
    }
}

/* =======================================================
   "MY ACCOUNT"
======================================================= */

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
}
.woocommerce-MyAccount-navigation li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 15px;
}
.woocommerce-MyAccount-navigation li a {
    font-family: var(--font-heading);
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: 0;
    color: var(--color-black);
    text-decoration: none;
    text-transform: uppercase;
    transition: color 0.3s;
}
.woocommerce-MyAccount-navigation li a:hover,
.woocommerce-MyAccount-navigation li a[aria-current=page],
.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--color-gold);
}
.woocommerce-MyAccount-navigation li:before {
    content: '';
    background: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/08/small-logo.png');
    width: 20px;
    height: 20px;
    background-size: contain;
}
.woocommerce-account .woocommerce {
    width: 100%;
    max-width: 1480px;
    margin: 0 auto;
    padding: 60px 20px 0;
    box-sizing: border-box;
}
.woocommerce-account .woocommerce-MyAccount-content {
    font-family: 'Josefin Sans', sans-serif;
    font-size: 18px;
}
.woocommerce-account .woocommerce-info,
.single-product .woocommerce-message {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
    outline: none;
}
.woocommerce-account .woocommerce-info::after,
.woocommerce .woocommerce-message::after {
    display: none;
}
.woocommerce-account .woocommerce-MyAccount-content .button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)).woocommerce-cart .woocommerce a.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)).woocommerce-lost-password .woocommerce button.button,
.woocommerce .woocommerce-message .button {
    background: var(--color-gold);
    color: #fff;
    border: none;
    padding: 10px 25px;
    font-weight: 500;
    cursor: pointer;
    font-size: 16px;
    border-radius: 0;
    text-transform: uppercase;
}
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-cart .woocommerce a.button:hover,
.woocommerce-checkout .woocommerce a.button:hover,
.woocommerce-lost-password .woocommerce button.button:hover,
.woocommerce .woocommerce-message .button:hover {
    background: #d99300 !important;
    color: #fff !important;
}
.woocommerce-account .addresses .title .edit {
    float: none;
}

.woocommerce-MyAccount-content #add_payment_method #payment,
.woocommerce-checkout #payment {
    background-color: transparent !important;
    border-radius: 0 !important;
}

.woocommerce-MyAccount-content #add_payment_method #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-MyAccount-content #add_payment_method #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0;
}

.woocommerce-MyAccount-content #add_payment_method #payment div.form-row {
    padding: 0;
}

.woocommerce-checkout #payment div.payment_box::before,
.woocommerce-MyAccount-content #add_payment_method #payment div.payment_box::before {
    display: none !important;
}

.woocommerce-MyAccount-content #add_payment_method #payment .button#place_order,
.woocommerce-checkout #payment .button#place_order,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit {
    background-color: var(--color-gold) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 12px 24px !important;
    font-weight: normal !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    transition: background-color 0.3s ease;
}

.woocommerce-MyAccount-content #add_payment_method #payment .button#place_order:hover,
.woocommerce-checkout #payment .button#place_order:hover,
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover {
    background-color: #d99300 !important;
}

.woocommerce-MyAccount-content #add_payment_method #payment ul.payment_methods li input {
    accent-color: var(--color-black);
}

.woocommerce .woocommerce-MyAccount-content form .form-row .input-text,
.woocommerce .woocommerce-MyAccount-content form .form-row .select2-selection__rendered {
    padding: 10px 15px;
}

.woocommerce .woocommerce-MyAccount-content form .form-row .input-text,
.woocommerce .woocommerce-MyAccount-content form .form-row .select2-selection,
.page-id-16.woocommerce-account .woocommerce form .form-row .input-text {
    border: none;
    border-bottom: 1px solid var(--color-gold);
    background: transparent;
    outline: none;
    font-family: 'Josefin Sans', sans-serif;
    font-weight: 500;
    font-size: 18px;
    color: var(--color-black);
    border-radius: 0;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: var(--color-gold) !important;
    color: #ffffff !important;
}

.woocommerce-account #account_display_name_description {
    color: var(--wc-subtext);
    font-size: 14px;
    padding-top: 10px;
    display: block;
}
.woocommerce-edit-account fieldset {
    border: none;
    padding: 0;
}
.woocommerce-edit-account fieldset legend {
    color: var(--color-gold);
    line-height: 2;
}
.woocommerce-Address-title h2,
.woocommerce-MyAccount-content h2 {
    font-family: var(--font-heading);
    font-weight: normal;
}

/* =======================================================
   "LOGIN PAGE"
======================================================= */

.woocommerce-account .woocommerce:has(.woocommerce-form-login) form {
    padding: 0;
    border: none;
}

.woocommerce-account .woocommerce:has(.woocommerce-form-login) .form-row:not(.form-row-wide) {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: flex-end;
    accent-color: #fff;
}

.page-id-16.woocommerce-account form a {
    color: var(--color-gold);
}

.woocommerce form.login, .woocommerce form.register {
    padding: 0;
    border: none;
}

.woocommerce-account .woocommerce:has(.woocommerce-form-login) {
    max-width: 400px;
}

.woocommerce-lost-password.woocommerce-account .woocommerce {
    max-width: 600px;
}

.woocommerce-lost-password.woocommerce-account .woocommerce form .form-row-first {
    width: 100%;
}

/* =======================================================
   "ORDER RECEIVED" (THANK YOU)
======================================================= */

.woocommerce-order h2 {
    font-weight: normal;
    font-size: 26px;
    margin-top: 40px;
    margin-bottom: 20px;
    color: #222;
}

.woocommerce-order ul.order_details {
    border-top: 1px solid var(--color-gold);
    border-bottom: 1px solid var(--color-gold);
    padding: 25px 0;
    margin-bottom: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    background: transparent;
}

.woocommerce-order ul.order_details li {
    border-right: none;
    padding-right: 0;
    margin-right: 0;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.5px;
    color: #666;
}

.woocommerce-order ul.order_details li strong {
    display: block;
    margin-top: 8px;
    font-size: 16px;
    color: #111;
    text-transform: none;
    font-weight: normal;
}

.woocommerce-table.woocommerce-table--order-details {
    border: none !important;
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 40px;
}

.woocommerce-table.woocommerce-table--order-details th,
.woocommerce-table.woocommerce-table--order-details td {
    border: none;
    border-bottom: 1px solid #eaeaea; 
    padding: 15px 10px;
    background: transparent !important;
}

.woocommerce-table.woocommerce-table--order-details thead th {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    color: #666;
    border-bottom: 2px solid #333;
}

.woocommerce-table.woocommerce-table--order-details a {
    color: #222;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
}

.woocommerce-table.woocommerce-table--order-details a:hover {
    color: var(--color-gold);
}

.woocommerce-table.woocommerce-table--order-details tfoot th {
    font-weight: normal;
    color: #666;
    text-align: left;
}

.woocommerce-order .woocommerce-customer-details address,
.woocommerce-view-order .woocommerce-customer-details address {
    border: none;
    background-color: #fcfcfc;
    padding: 25px;
    border-left: 4px solid var(--color-gold);
    font-style: normal;
    color: #333;
    line-height: 1.8;
}

.fancybox__container {
    z-index: 999999 !important;
}

.fancybox__toolbar .f-button {
    color: rgba(255, 255, 255, 0.8) !important;
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.8) !important;
    border-radius: 50%;
    margin: 20px;
}

.fancybox__toolbar .f-button:hover {
    color: #000 !important;
    background: #fff !important;
}

/* =========================================================
   EVE LI — ACCOUNT DRAWER
   ========================================================= */

/* Reset the person icon now that it is a button */
.eveli-account-trigger {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    cursor: pointer;
    font: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Prevent the page behind the drawer from scrolling */
body.eveli-account-drawer-open {
    overflow: hidden;
}


/* ---------------------------------------------------------
   DARK OVERLAY
   --------------------------------------------------------- */

.eveli-account-overlay {
    position: fixed;
    inset: 0;
    z-index: 1000000;
    background: rgba(17, 17, 17, 0.52);
    opacity: 0;
    transition: opacity 0.32s ease;
}

.eveli-account-overlay[hidden] {
    display: none;
}

.eveli-account-overlay.is-open {
    opacity: 1;
}


/* ---------------------------------------------------------
   DRAWER
   --------------------------------------------------------- */

.eveli-account-drawer {
    position: fixed;
    top: 0;
    right: 0;
    width: min(540px, 100vw);
    height: 100vh;
    height: 100dvh;
    z-index: 1000001;

    background: #ffffff;

    transform: translateX(100%);
    transition: transform 0.32s ease;

    overflow-y: auto;
    overscroll-behavior: contain;

    box-shadow: -10px 0 35px rgba(0, 0, 0, 0.08);
}

.eveli-account-drawer.is-open {
    transform: translateX(0);
}

.eveli-account-drawer-inner {
    padding: 38px 44px 60px;
}


/* ---------------------------------------------------------
   DRAWER HEADER
   --------------------------------------------------------- */

.eveli-account-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    margin-bottom: 38px;
}

.eveli-account-drawer-header h2 {
    margin: 0;

    font-family: "Josefin Sans", sans-serif;
    font-size: 18px;
    font-weight: 400;

    letter-spacing: 2px;
    text-transform: uppercase;

    color: #111111;
}

.eveli-account-drawer-close {
    appearance: none;
    -webkit-appearance: none;

    border: 0;
    background: transparent;

    padding: 0;
    margin: 0;

    color: #555555;

    font-family: Arial, sans-serif;
    font-size: 30px;
    font-weight: 300;
    line-height: 1;

    cursor: pointer;
}

.eveli-account-drawer-close:hover {
    color: #111111;
}


/* ---------------------------------------------------------
   LOGIN / CREATE ACCOUNT TABS
   --------------------------------------------------------- */

.eveli-account-tabs {
    display: flex;
    align-items: flex-end;
    gap: 28px;

    margin-bottom: 38px;

    border-bottom: 1px solid #dddddd;
}

.eveli-account-tab {
    appearance: none;
    -webkit-appearance: none;

    border: 0;
    border-bottom: 1px solid transparent;
    background: transparent;

    padding: 0 0 11px;
    margin: 0 0 -1px;

    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;

    letter-spacing: 1.4px;
    text-transform: uppercase;

    color: #777777;

    cursor: pointer;
}

.eveli-account-tab:hover {
    color: #111111;
}

.eveli-account-tab.is-active {
    color: #111111;
    border-bottom-color: #111111;
}


/* ---------------------------------------------------------
   WOOCOMMERCE LOGIN / REGISTRATION LAYOUT
   --------------------------------------------------------- */

.eveli-account-woocommerce .woocommerce {
    width: 100%;
    margin: 0;
}

.eveli-account-woocommerce .woocommerce h2 {
    display: none;
}

.eveli-account-woocommerce .u-columns,
.eveli-account-woocommerce .col2-set {
    display: block !important;

    width: 100% !important;
    margin: 0 !important;
}

.eveli-account-woocommerce .u-column1,
.eveli-account-woocommerce .u-column2,
.eveli-account-woocommerce .col-1,
.eveli-account-woocommerce .col-2 {
    float: none !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* Tabs determine which WooCommerce form is visible */
.eveli-account-woocommerce .u-column1,
.eveli-account-woocommerce .u-column2 {
    display: none !important;
}

.eveli-account-woocommerce .u-column1.eveli-active-panel,
.eveli-account-woocommerce .u-column2.eveli-active-panel {
    display: block !important;
}


/* Remove WooCommerce's default boxed-form appearance */
.eveli-account-woocommerce form.login,
.eveli-account-woocommerce form.register,
.eveli-account-woocommerce .woocommerce-form-login,
.eveli-account-woocommerce .woocommerce-form-register {
    border: 0 !important;
    border-radius: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
}


/* ---------------------------------------------------------
   FORM FIELDS
   --------------------------------------------------------- */

.eveli-account-woocommerce .form-row {
    display: block;

    width: 100% !important;

    margin: 0 0 29px !important;
    padding: 0 !important;
}

.eveli-account-woocommerce label {
    display: block;

    margin: 0 0 7px;

    font-family: "Josefin Sans", sans-serif;
    font-size: 14px;
    font-weight: 400;

    color: #222222;
}

.eveli-account-woocommerce input[type="text"],
.eveli-account-woocommerce input[type="email"],
.eveli-account-woocommerce input[type="password"],
.eveli-account-woocommerce input[type="tel"] {
    display: block;

    width: 100% !important;
    height: 44px;

    box-sizing: border-box;

    padding: 7px 0 !important;

    border: 0 !important;
    border-bottom: 1px solid #cccccc !important;
    border-radius: 0 !important;

    outline: none !important;

    background: transparent !important;
    box-shadow: none !important;

    font-family: "Josefin Sans", sans-serif;
    font-size: 15px;
    font-weight: 300;

    color: #111111;
}

.eveli-account-woocommerce input[type="text"]:focus,
.eveli-account-woocommerce input[type="email"]:focus,
.eveli-account-woocommerce input[type="password"]:focus,
.eveli-account-woocommerce input[type="tel"]:focus {
    border-bottom-color: var(--color-gold) !important;
}

.eveli-account-woocommerce .password-input {
    display: block;
    width: 100%;
}


/* ---------------------------------------------------------
   REMEMBER ME
   --------------------------------------------------------- */

.eveli-account-woocommerce .woocommerce-form-login__rememberme {
    display: flex !important;
    align-items: center;
    gap: 8px;

    margin: 0 0 20px !important;
}

.eveli-account-woocommerce
.woocommerce-form-login__rememberme
input[type="checkbox"] {
    width: auto !important;
    height: auto !important;

    margin: 0;
}


/* ---------------------------------------------------------
   BUTTONS
   --------------------------------------------------------- */

.eveli-account-woocommerce button.button,
.eveli-account-woocommerce .woocommerce-button {
    display: block;

    width: 100%;

    min-height: 48px;

    margin: 8px 0 18px !important;
    padding: 12px 20px !important;

    border: 1px solid #111111 !important;
    border-radius: 0 !important;

    background: #ffffff !important;
    color: #111111 !important;

    box-shadow: none !important;

    font-family: "Josefin Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;

    letter-spacing: 1.6px;
    text-transform: uppercase;

    cursor: pointer;
}

.eveli-account-woocommerce button.button:hover,
.eveli-account-woocommerce .woocommerce-button:hover {
    background: #111111 !important;
    color: #ffffff !important;
}


/* ---------------------------------------------------------
   LOST PASSWORD
   --------------------------------------------------------- */

.eveli-account-woocommerce .lost_password {
    margin: 0;
    text-align: center;
}

.eveli-account-woocommerce .lost_password a {
    color: #666666;

    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;

    text-decoration: underline;
    text-underline-offset: 3px;
}

.eveli-account-woocommerce .lost_password a:hover {
    color: var(--color-gold);
}


/* ---------------------------------------------------------
   WOOCOMMERCE MESSAGES
   --------------------------------------------------------- */

.eveli-account-woocommerce .woocommerce-error,
.eveli-account-woocommerce .woocommerce-message,
.eveli-account-woocommerce .woocommerce-info {
    margin: 0 0 24px !important;
    padding: 14px 16px !important;

    border: 1px solid #dddddd !important;
    border-top: 1px solid #dddddd !important;

    background: #fafafa !important;
    color: #222222 !important;

    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    line-height: 1.5;
}

.eveli-account-woocommerce .woocommerce-error::before,
.eveli-account-woocommerce .woocommerce-message::before,
.eveli-account-woocommerce .woocommerce-info::before {
    display: none !important;
}


/* ---------------------------------------------------------
   LOGGED-IN ACCOUNT MENU
   --------------------------------------------------------- */

.eveli-account-welcome {
    margin: 0 0 30px;

    font-family: "Josefin Sans", sans-serif;
    font-size: 16px;
    font-weight: 300;

    color: #333333;
}

.eveli-account-menu {
    display: flex;
    flex-direction: column;

    border-top: 1px solid #e2e2e2;
}

.eveli-account-menu a {
    display: block;

    padding: 17px 0;

    border-bottom: 1px solid #e2e2e2;

    font-family: "Josefin Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;

    letter-spacing: 1.2px;
    text-transform: uppercase;

    color: #111111;
    text-decoration: none;
}

.eveli-account-menu a:hover {
    color: var(--color-gold);
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 600px) {

    .eveli-account-drawer {
        width: 100%;
    }

    .eveli-account-drawer-inner {
        padding: 28px 24px 45px;
    }

    .eveli-account-drawer-header {
        margin-bottom: 30px;
    }

    .eveli-account-tabs {
        gap: 20px;
        margin-bottom: 32px;
    }

    .eveli-account-tab {
        font-size: 12px;
        letter-spacing: 1px;
    }
}

/* =========================================================
   EVE LI HEADER - DESKTOP UTILITY / SEARCH LAYOUT
   Heart + Bag + Account above
   Search beside main navigation
   ========================================================= */

@media (min-width: 901px) {

    /* Keep top-right utility icons neat */
    .header-right {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 15px;
    }

    /* Only the desktop utility icons are forced to flex.
       Do NOT force the mobile menu icon to display on desktop. */
    .header-right .wishlist-icon,
    .header-right .bag-icon,
    .header-right .profile-icon {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Hamburger remains mobile-only */
    .header-right .menu-toggle {
        display: none !important;
    }

    /* Main menu and search share the same lower row */
    .main-navigation {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        max-width: 1440px;
        margin: 0 auto;
        padding: 0 40px;
    }

    .main-navigation > ul {
        margin: 0;
        flex: 0 1 auto;
    }

    /* Search positioned immediately after ABOUT EVE */
    .main-navigation .nav-search-container {
        position: relative;
        display: flex;
        align-items: center;
        align-self: flex-start;
        margin-top: 0;
        margin-left: 26px;
        padding-left: 24px;
        border-left: 1px solid rgba(17, 17, 17, 0.55);
        height: 24px;
    }

    .main-navigation .nav-search-container .search-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 24px;
        line-height: 1;
        text-decoration: none;
    }

    /* Prevent the normal menu hover ornament appearing under search */
    .main-navigation .nav-search-container .search-icon::after {
        display: none !important;
        content: none !important;
    }

    /* Search box opens underneath the magnifying glass */
    .main-navigation .nav-search-container .header-search-form {
        top: 30px;
        right: 0;
        left: auto;
        margin-top: 8px;
    }
}

/* =========================================================
   HOMEPAGE PRODUCT SECOND IMAGE ON HOVER
   Featured image = normal state
   First WooCommerce gallery image = hover state
   ========================================================= */

.product-thumb .product-image-link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.product-thumb .product-image {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    transition: opacity 0.30s ease;
}

.product-thumb .product-image-primary {
    opacity: 1;
}

.product-thumb .product-image-hover {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
}

.product-thumb:hover .product-image-primary {
    opacity: 0;
}

.product-thumb:hover .product-image-hover {
    opacity: 1;
}

/* =========================================================
   OUR CREATIONS - ROTATING CATEGORY CAROUSEL
   ========================================================= */

.home-our-creations {
    background: #fff;
    padding: 30px 0 105px;
    overflow: hidden;
}

.our-creations-intro {
    max-width: 1440px;
    margin: 0 auto 52px;
    padding: 0 40px;
    text-align: center;
}

.our-creations-title {
    font-family: var(--font-heading);
    font-size: 40px !important;
    line-height: 1.15;
    font-weight: 400 !important;
    letter-spacing: 0;
    text-transform: none;
    margin: 0 0 14px;
}

.our-creations-subtitle {
    font-family: var(--font-body);
    font-size: 17px !important;
    font-weight: 300;
    line-height: 1.5;
    color: var(--color-black);
    margin: 0;
}

.our-creations-carousel {
    width: 100%;
    max-width: 1680px;
    margin: 0 auto;
}

.our-creations-viewport {
    overflow: hidden;
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
}

.our-creations-track {
    display: flex;
    align-items: stretch;
    will-change: transform;
}

.our-creations-card {
    flex: 0 0 33.333333%;
    min-width: 0;
    box-sizing: border-box;
    padding: 48px 34px 40px;
    border-right: 1px solid #ececec;
    background: #fff;
    color: var(--color-black);
    text-align: center;
    text-decoration: none;
    overflow: hidden;
}

.our-creations-image-wrap {
    height: clamp(300px, 27vw, 430px);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.our-creations-image-wrap img {
    display: block;
    max-width: 90%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: transform 700ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

.our-creations-card-title {
    display: block;
    margin-top: 30px;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    color: var(--color-black);
}

.our-creations-card:hover .our-creations-image-wrap img,
.our-creations-card:focus-visible .our-creations-image-wrap img {
    transform: scale(1.035);
}

.our-creations-card:focus-visible {
    outline: 1px solid var(--color-gold);
    outline-offset: -3px;
}

@media (max-width: 900px) {
    .home-our-creations {
        padding: 25px 0 80px;
    }

    .our-creations-intro {
        margin-bottom: 38px;
        padding: 0 24px;
    }

    .our-creations-title {
        font-size: 34px !important;
    }

    .our-creations-card {
        flex-basis: 50%;
        padding: 36px 24px 32px;
    }

    .our-creations-image-wrap {
        height: 310px;
    }
}

@media (max-width: 600px) {
    .our-creations-card {
        flex-basis: 100%;
        padding: 32px 22px 30px;
    }

    .our-creations-image-wrap {
        height: 330px;
    }

    .our-creations-card-title {
        margin-top: 22px;
        font-size: 13px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .our-creations-track,
    .our-creations-image-wrap img {
        transition: none !important;
    }
}

/* =========================================================
   EVE LI — REFINED CREATE ACCOUNT FORM
   ========================================================= */

/* The registration form is intentionally restrained: no card styling,
   no decorative boxes, and no unnecessary secondary information. */
.eveli-account-woocommerce .woocommerce-form-register {
    padding-bottom: 10px !important;
}

.eveli-account-woocommerce .eveli-register-title-field {
    margin-bottom: 26px !important;
}

.eveli-account-woocommerce .eveli-title-options {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 28px;
    padding-top: 4px;
}

.eveli-account-woocommerce .eveli-title-option {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    cursor: pointer;
    color: #333333;
    font-size: 15px;
    font-weight: 300;
}

.eveli-account-woocommerce .eveli-title-option input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    margin: 0;
    border: 1px solid #777777;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: none;
    cursor: pointer;
    position: relative;
}

.eveli-account-woocommerce .eveli-title-option input[type="radio"]:checked {
    border-color: #111111;
}

.eveli-account-woocommerce .eveli-title-option input[type="radio"]:checked::after {
    content: "";
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: #111111;
}

.eveli-account-woocommerce select#reg_billing_country {
    display: block;
    width: 100% !important;
    min-height: 44px;
    box-sizing: border-box;
    padding: 7px 28px 7px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #cccccc !important;
    border-radius: 0 !important;
    outline: none !important;
    background-color: transparent !important;
    box-shadow: none !important;
    font-family: "Josefin Sans", sans-serif;
    font-size: 15px;
    font-weight: 300;
    color: #111111;
}

.eveli-account-woocommerce select#reg_billing_country:focus {
    border-bottom-color: var(--color-gold) !important;
}

.eveli-account-woocommerce .required {
    color: #111111;
    text-decoration: none;
}

/* Keep the privacy copy present, but visually quiet. */
.eveli-account-woocommerce .woocommerce-privacy-policy-text {
    margin: -4px 0 22px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.55;
    color: #666666;
}

.eveli-account-woocommerce .woocommerce-privacy-policy-text p {
    margin: 0;
}

.eveli-account-woocommerce .woocommerce-privacy-policy-text a {
    color: #444444;
    text-underline-offset: 2px;
}

/* EVE LI uses a simple six-character minimum instead of WooCommerce's
   intrusive strength meter. Validation remains server-side. */
.eveli-account-woocommerce .woocommerce-password-strength,
.eveli-account-woocommerce .woocommerce-password-hint,
.eveli-myaccount-auth .woocommerce-password-strength,
.eveli-myaccount-auth .woocommerce-password-hint {
    display: none !important;
}

@media (max-width: 600px) {
    .eveli-account-woocommerce .eveli-title-options {
        gap: 22px;
    }
}

/* ==========================================================================
   EVE LI — REFINED MEGA MENUS + NEWSLETTER DRAWER
   September 2026
   ========================================================================== */

/* --- High / Fine Jewellery mega menus --- */
#mega-menu-high-jewellery .eveli-collection-mega,
#mega-menu-fine-jewellery .eveli-collection-mega {
    display: grid;
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    align-items: start;
    gap: 52px;
    max-width: 1440px;
    padding: 36px 60px 44px;
}

#mega-menu-high-jewellery .mega-menu-links,
#mega-menu-fine-jewellery .mega-menu-links {
    flex: none;
    width: auto;
}

.mega-menu-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
    align-items: stretch;
}

.mega-menu-featured-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    color: var(--color-black);
    text-decoration: none;
    background: #fff;
    cursor: pointer;
}

.mega-menu-featured-card .featured-image-container {
    width: 100%;
    aspect-ratio: 1.25 / 1;
    overflow: hidden;
    background: #faf9f6;
}

.mega-menu-featured-card .featured-image-container img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    transition: transform 0.45s ease, opacity 0.45s ease;
}

.mega-menu-featured-card:hover .featured-image-container img {
    transform: scale(1.025);
}

.mega-feature-card-caption {
    padding: 17px 8px 4px;
    text-align: center;
}

.mega-feature-card-name {
    display: block;
    font-family: var(--font-heading);
    font-size: 18px;
    line-height: 1.25;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.mega-feature-card-cta {
    display: inline-block;
    margin-top: 9px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--color-gold);
    border-bottom: 1px solid transparent;
    padding-bottom: 2px;
}

.mega-menu-featured-card:hover .mega-feature-card-cta {
    border-bottom-color: var(--color-gold);
}


/* --- Shop by Category: text-only 60 / 40 layout --- */
#mega-menu-shop-category .shop-category-text-menu {
    display: grid;
    grid-template-columns: 3fr 2fr;
    gap: 0;
    max-width: 1180px;
    padding: 34px 54px 40px;
    margin: 0 auto;
    background: #fbfaf7;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.045);
}

.shop-category-panel {
    min-width: 0;
    padding: 4px 58px 8px;
}

.shop-category-types {
    border-left: 1px solid rgba(17, 17, 17, 0.14);
}

.shop-category-heading {
    margin: 0;
    text-align: center;
    font-family: var(--font-heading);
    font-size: 27px;
    font-weight: 400;
    letter-spacing: 0.08em;
    color: var(--color-black);
}

.shop-category-heading-rule {
    position: relative;
    width: 72%;
    height: 1px;
    margin: 18px auto 25px;
    background: rgba(232, 157, 0, 0.72);
}

.shop-category-heading-rule::after {
    content: "◇";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: #fbfaf7;
    color: var(--color-gold);
    padding: 0 12px;
    font-size: 15px;
}

.shop-category-link-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.shop-category-link-list li {
    margin: 0;
    padding: 0;
}

.shop-category-link-list a {
    display: block;
    padding: 8px 4px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 15px;
    font-weight: 300;
    line-height: 1.3;
    letter-spacing: 0.02em;
    color: var(--color-black);
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
}

.shop-category-link-list a:hover {
    color: var(--color-gold);
    transform: translateX(4px);
}

.shop-category-scroll-window {
    height: 284px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-mask-image: linear-gradient(
        to bottom,
        transparent 0,
        #000 18px,
        #000 calc(100% - 18px),
        transparent 100%
    );
    mask-image: linear-gradient(
        to bottom,
        transparent 0,
        #000 18px,
        #000 calc(100% - 18px),
        transparent 100%
    );
    padding: 10px 0;
}

.shop-category-scroll-window::-webkit-scrollbar {
    display: none;
}

.shop-category-scroll {
    display: block;
    width: 36px;
    height: 24px;
    margin: 0 auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--color-gold);
    font-size: 22px;
    line-height: 20px;
    cursor: pointer;
    opacity: 0.92;
}

.shop-category-scroll:disabled {
    opacity: 0.2;
    cursor: default;
}

.shop-category-types .shop-category-link-list {
    padding-top: 6px;
}

.shop-category-types .shop-category-link-list a {
    padding-top: 12px;
    padding-bottom: 12px;
}



@media (max-width: 900px) {
    #mega-menu-high-jewellery .eveli-collection-mega,
    #mega-menu-fine-jewellery .eveli-collection-mega {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 28px 24px 36px;
    }

    .mega-menu-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #mega-menu-shop-category .shop-category-text-menu {
        grid-template-columns: 1fr;
        padding: 28px 20px 34px;
    }

    .shop-category-panel {
        padding: 8px 22px 26px;
    }

    .shop-category-types {
        border-left: 0;
        border-top: 1px solid rgba(17, 17, 17, 0.14);
        padding-top: 30px;
    }

}

@media (max-width: 560px) {
    .mega-menu-feature-grid {
        grid-template-columns: 1fr;
    }

}

/* ==========================================================================
   EVE LI — SHOP BY CATEGORY POLISH
   Alignment, clearer gemstone controls, refined hover states,
   and View All Creations.
   ========================================================================== */

/* Keep both menu headings and their gold rules on the exact same axis. */
#mega-menu-shop-category .shop-category-panel {
    padding-top: 4px;
}

#mega-menu-shop-category .shop-category-heading {
    min-height: 34px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    line-height: 1;
    margin: 0;
}

#mega-menu-shop-category .shop-category-heading-rule {
    height: 1px;
    margin-top: 18px;
    margin-bottom: 22px;
}

/* Gemstone up/down controls — clearer but still restrained. */
#mega-menu-shop-category .shop-category-scroll {
    width: 44px;
    height: 28px;
    font-size: 26px;
    line-height: 24px;
    font-weight: 500;
    color: var(--color-gold);
    opacity: 1;
    transition:
        opacity 0.2s ease,
        transform 0.2s ease,
        background-color 0.2s ease;
    border-radius: 999px;
}

#mega-menu-shop-category .shop-category-scroll:not(:disabled):hover {
    background: rgba(232, 157, 0, 0.07);
    transform: scale(1.06);
}

#mega-menu-shop-category .shop-category-scroll:disabled {
    opacity: 0.24;
}

/* Refined hover treatment for every gemstone/type selection. */
#mega-menu-shop-category .shop-category-link-list a {
    position: relative;
    transition:
        color 0.2s ease,
        transform 0.2s ease;
}

#mega-menu-shop-category .shop-category-link-list a:hover,
#mega-menu-shop-category .shop-category-link-list a:focus-visible {
    color: var(--color-gold);
    transform: translateX(3px);
    outline: none;
}

/* Maison-style endpoint beneath the shorter Shop by Type list. */
#mega-menu-shop-category .shop-category-view-all {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 34px;
    padding-bottom: 4px;
    font-family: "Josefin Sans", sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--color-black);
    text-decoration: none;
    border-bottom: 1px solid rgba(17, 17, 17, 0.36);
    transition:
        color 0.2s ease,
        border-color 0.2s ease,
        gap 0.2s ease;
}

#mega-menu-shop-category .shop-category-view-all:hover,
#mega-menu-shop-category .shop-category-view-all:focus-visible {
    color: var(--color-gold);
    border-bottom-color: var(--color-gold);
    gap: 11px;
    outline: none;
}

/* Journey refinement: keep the video label discreet and product imagery pure white. */
.page-template-template-journey .journey-editorial-hero-copy {
    pointer-events: none;
}

.page-template-template-journey .journey-editorial-finished,
.page-template-template-journey .journey-editorial-finished img {
    background-color: #fff !important;
}

/* ==========================================================================
   EVE LI — COMMISSION ENQUIRY DRAWER + INVISIBLE FORM GUARD
   ========================================================================== */

.eveli-guard-honeypot {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.eveli-turnstile-slot {
    margin: 8px 0 18px;
}

/* Make the Journey CTA behave like a refined button without changing its look. */
.page-template-template-journey .journey-editorial-enquire {
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    cursor: pointer;
}

.eveli-commission-overlay {
    position: fixed;
    inset: 0;
    z-index: 99990;
    background: rgba(16, 15, 13, 0.58);
    backdrop-filter: blur(1px);
}

.eveli-commission-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99991;
    width: min(560px, 40vw);
    min-width: 440px;
    height: 100dvh;
    background: #fff;
    transform: translateX(102%);
    transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
    overflow-y: auto;
    overscroll-behavior: contain;
    box-shadow: -18px 0 60px rgba(0, 0, 0, 0.12);
}

.eveli-commission-drawer.is-open {
    transform: translateX(0);
}

body.eveli-commission-open {
    overflow: hidden;
}

.eveli-commission-drawer-inner {
    padding: 44px 46px 58px;
}

.eveli-commission-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(25, 23, 20, 0.14);
}

.eveli-commission-drawer-header h2 {
    margin: 0 !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    letter-spacing: 0.16em;
    line-height: 1.2;
    color: #1f1d1a !important;
}

.eveli-commission-close {
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #4f4a44;
    font-family: Arial, sans-serif;
    font-size: 30px;
    font-weight: 200;
    line-height: 1;
    cursor: pointer;
}

.eveli-commission-intro {
    margin: 28px 0 34px !important;
    max-width: 430px;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 14px !important;
    font-weight: 300;
    line-height: 1.7;
    color: #645e57;
}

.eveli-commission-known-client {
    margin: 0 0 32px;
    padding: 19px 0 22px;
    border-top: 1px solid rgba(25, 23, 20, 0.10);
    border-bottom: 1px solid rgba(25, 23, 20, 0.10);
}

.eveli-commission-known-client > span,
.eveli-commission-known-client > strong {
    display: block;
}

.eveli-commission-known-label {
    margin-bottom: 8px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10px;
    letter-spacing: 0.17em;
    color: #b47d17;
}

.eveli-commission-known-client strong {
    margin-bottom: 4px;
    font-family: var(--font-heading, Georgia, serif);
    font-size: 21px;
    font-weight: 400;
    color: #24211e;
}

.eveli-commission-known-client > span:not(.eveli-commission-known-label) {
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 12px;
    line-height: 1.5;
    color: #777068;
}

.eveli-commission-edit-details {
    margin-top: 13px;
    padding: 0 0 3px;
    border: 0;
    border-bottom: 1px solid rgba(36, 33, 30, 0.55);
    background: transparent;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10px;
    letter-spacing: 0.15em;
    color: #24211e;
    cursor: pointer;
}

.eveli-commission-client-fields {
    display: block;
}

.eveli-commission-client-fields.is-collapsed {
    display: none;
}

.eveli-commission-field {
    display: block;
    margin: 0 0 25px;
}

.eveli-commission-field > span {
    display: block;
    margin-bottom: 9px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 12px;
    font-weight: 400;
    color: #292622;
}

.eveli-commission-field input,
.eveli-commission-field select,
.eveli-commission-field textarea {
    width: 100%;
    min-height: 45px;
    padding: 10px 0 9px;
    border: 0;
    border-bottom: 1px solid rgba(34, 31, 28, 0.25);
    border-radius: 0;
    outline: none;
    background: transparent;
    box-shadow: none;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 14px;
    font-weight: 300;
    color: #26231f;
    transition: border-color 0.2s ease;
}

.eveli-commission-field select {
    padding-right: 24px;
}

.eveli-commission-field textarea {
    min-height: 150px;
    resize: vertical;
    line-height: 1.65;
}

.eveli-commission-field input:focus,
.eveli-commission-field select:focus,
.eveli-commission-field textarea:focus {
    border-bottom-color: #b47d17;
}

.eveli-commission-field input[readonly] {
    color: #777068;
}

.eveli-commission-message-field {
    margin-top: 8px;
}

.eveli-commission-form-message {
    min-height: 20px;
    margin: 0 0 14px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 12px;
    line-height: 1.5;
}

.eveli-commission-form-message.is-error {
    color: #9c312b;
}

.eveli-commission-submit {
    width: 100%;
    min-height: 52px;
    margin-top: 6px;
    border: 1px solid #27231f;
    background: #fff;
    color: #27231f;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.20em;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}

.eveli-commission-submit:hover,
.eveli-commission-submit:focus-visible {
    border-color: #b47d17;
    background: #b47d17;
    color: #fff;
    outline: none;
}

.eveli-commission-submit:disabled {
    opacity: 0.55;
    cursor: wait;
}

.eveli-commission-privacy {
    margin: 16px 0 0 !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 300;
    line-height: 1.6;
    color: #8a837b;
}

.eveli-commission-privacy a {
    color: #b47d17;
    text-decoration: none;
    border-bottom: 1px solid rgba(180, 125, 23, 0.42);
}

.eveli-commission-success {
    padding: 80px 8px 30px;
    text-align: center;
}

.eveli-commission-success-mark {
    display: block;
    margin-bottom: 22px;
    font-size: 24px;
    color: #b47d17;
}

.eveli-commission-success h3 {
    margin: 0 0 12px !important;
    font-family: var(--font-heading, Georgia, serif) !important;
    font-size: 34px !important;
    font-weight: 400 !important;
    color: #24211e !important;
}

.eveli-commission-success p {
    margin: 0 auto !important;
    max-width: 360px;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 14px !important;
    font-weight: 300;
    line-height: 1.7;
    color: #6a645d;
}

@media (max-width: 900px) {
    .eveli-commission-drawer {
        width: min(620px, 72vw);
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .eveli-commission-drawer {
        width: 100%;
        min-width: 0;
    }

    .eveli-commission-drawer-inner {
        padding: 30px 24px 44px;
    }

    .eveli-commission-drawer-header h2 {
        font-size: 15px !important;
    }
}

/* ==========================================================================
   EVE LI — JOURNEY MOBILE REPAIR
   IMPORTANT:
   - Mobile only: 768px and below.
   - Does NOT change desktop/tablet layouts above 768px.
   - Scoped only to the Journey of Jewellery template.
   ========================================================================== */

@media (max-width: 768px) {

    /* Hard containment: stop any Journey element from creating horizontal overflow. */
    .page-template-template-journey .journey-main,
    .page-template-template-journey .journey-main * {
        box-sizing: border-box;
    }

    .page-template-template-journey .journey-main {
        width: 100%;
        max-width: 100%;
        overflow-x: clip;
    }

    /* ------------------------------------------------------------------
       Hero video
       Keep it cinematic on a phone instead of turning a landscape video
       into a giant portrait crop.
       ------------------------------------------------------------------ */
    .page-template-template-journey .journey-editorial-hero {
        width: 100%;
        height: clamp(235px, 64vw, 290px) !important;
        min-height: 0 !important;
        max-height: 290px;
        overflow: hidden;
    }

    .page-template-template-journey .journey-editorial-hero-image {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: 50% 50% !important;
    }

    .page-template-template-journey .journey-editorial-hero-overlay {
        background: rgba(20, 18, 16, 0.18);
    }

    .page-template-template-journey .journey-editorial-hero-copy {
        left: 50% !important;
        bottom: 12px !important;
        width: auto !important;
        padding: 0 !important;
        transform: translateX(-50%) !important;
    }

    .page-template-template-journey .journey-editorial-kicker {
        font-size: 9px !important;
        letter-spacing: 0.22em;
        white-space: nowrap;
    }

    /* ------------------------------------------------------------------
       Intro
       ------------------------------------------------------------------ */
    .page-template-template-journey .journey-editorial-intro {
        padding: 46px 20px 50px !important;
    }

    .page-template-template-journey .journey-editorial-intro-primary {
        max-width: 360px;
        font-size: 22px !important;
        line-height: 1.34 !important;
    }

    .page-template-template-journey .journey-editorial-intro-secondary {
        max-width: 340px;
        font-size: 16px !important;
        line-height: 1.45 !important;
    }

    /* ------------------------------------------------------------------
       Chapters
       Force a clean one-column editorial layout.
       ------------------------------------------------------------------ */
    .page-template-template-journey .journey-editorial-chapters {
        width: calc(100% - 28px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 50px 0 82px !important;
    }

    .page-template-template-journey .journey-editorial-chapter {
        width: 100%;
        max-width: 100%;
    }

    .page-template-template-journey .journey-editorial-feature {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 26px !important;
        align-items: stretch !important;
    }

    .page-template-template-journey .journey-editorial-chapter.is-reverse .journey-editorial-finished,
    .page-template-template-journey .journey-editorial-chapter.is-reverse .journey-editorial-copy {
        order: initial !important;
    }

    /* Finished product image:
       contained inside a square white stage — no giant crops. */
    .page-template-template-journey .journey-editorial-finished {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
        margin: 0 !important;
        padding: 10px !important;
        overflow: hidden !important;
        background: #fff !important;
    }

    .page-template-template-journey .journey-editorial-finished img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 auto !important;
        object-fit: contain !important;
        object-position: center !important;
        background: #fff !important;
        transform: none !important;
    }

    .page-template-template-journey .journey-editorial-copy {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 4px;
    }

    .page-template-template-journey .journey-editorial-chapter-label {
        margin-bottom: 12px;
        font-size: 10px !important;
        letter-spacing: 0.18em;
    }

    .page-template-template-journey .journey-editorial-copy h2 {
        margin-bottom: 18px !important;
        font-size: clamp(32px, 9.4vw, 40px) !important;
        line-height: 1.08 !important;
    }

    .page-template-template-journey .journey-editorial-copy p {
        max-width: none !important;
        font-size: 14px !important;
        line-height: 1.7 !important;
    }

    .page-template-template-journey .journey-editorial-small-rule {
        margin: 26px 0 20px !important;
    }

    .page-template-template-journey .journey-editorial-product-link {
        font-size: 10px !important;
        line-height: 1.4;
        letter-spacing: 0.14em;
    }

    /* ------------------------------------------------------------------
       Making stages
       Two compact columns. This explicitly overrides any older mobile
       image/figure rules in the theme.
       ------------------------------------------------------------------ */
    .page-template-template-journey .journey-editorial-making {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 38px !important;
    }

    .page-template-template-journey .journey-editorial-making-title {
        margin-bottom: 16px !important;
        font-size: 10px !important;
        letter-spacing: 0.16em;
    }

    .page-template-template-journey .journey-editorial-stage-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 24px 10px !important;
        align-items: start !important;
    }

    .page-template-template-journey .journey-editorial-stage {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    .page-template-template-journey .journey-editorial-stage-image {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 4 / 3 !important;
        margin: 0 !important;
        overflow: hidden !important;
        background: #f5f3ef !important;
    }

    .page-template-template-journey .journey-editorial-stage-image img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        object-fit: cover !important;
        object-position: center !important;
        transform: none !important;
    }

    .page-template-template-journey .journey-editorial-stage figcaption {
        width: 100%;
        padding-top: 8px !important;
        line-height: 1.3 !important;
    }

    .page-template-template-journey .journey-editorial-stage-number {
        margin-bottom: 2px !important;
        font-size: 9px !important;
    }

    .page-template-template-journey .journey-editorial-stage-name {
        display: block !important;
        font-size: 10px !important;
        line-height: 1.35 !important;
    }

    /* More separation between designs without the desktop-scale whitespace. */
    .page-template-template-journey .journey-editorial-chapter + .journey-editorial-chapter {
        margin-top: 82px !important;
        padding-top: 62px !important;
    }

    /* ------------------------------------------------------------------
       Commission panel
       ------------------------------------------------------------------ */
    .page-template-template-journey .journey-editorial-commission {
        padding: 52px 20px 58px !important;
    }

    .page-template-template-journey .journey-editorial-commission h2 {
        font-size: 32px !important;
        line-height: 1.12 !important;
    }

    .page-template-template-journey .journey-editorial-commission p {
        margin: 12px auto 24px !important;
        max-width: 300px;
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .page-template-template-journey .journey-editorial-enquire {
        min-width: 170px !important;
        height: 44px !important;
        padding: 0 22px !important;
        font-size: 10px !important;
    }
}

/* Very small phones */
@media (max-width: 390px) {
    .page-template-template-journey .journey-editorial-hero {
        height: 235px !important;
    }

    .page-template-template-journey .journey-editorial-chapters {
        width: calc(100% - 22px) !important;
    }

    .page-template-template-journey .journey-editorial-stage-grid {
        gap: 20px 8px !important;
    }

    .page-template-template-journey .journey-editorial-copy h2 {
        font-size: 31px !important;
    }
}
/* ==========================================================================
   EVE LI — VOLATUS COLLECTION SCALE REFINEMENT
   September 2026
   Desktop only. Reduces dominant product imagery by roughly 20–25%
   without changing mobile layouts or typography.
   ========================================================================== */

@media (min-width: 1025px) {

    /* Split rows: reduce the total editorial stage from 1140px to 920px. */
    .has-vol-showcase .vol-section {
        max-width: 920px !important;
        min-height: 0 !important;
        align-items: center !important;
    }

    .has-vol-showcase .vol-image {
        flex: 0 0 48% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: visible !important;
    }

    .has-vol-showcase .vol-image a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
    }

    .has-vol-showcase .vol-image img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center !important;
    }

    .has-vol-showcase .vol-content {
        flex: 1 1 52% !important;
        padding: 24px 28px !important;
    }

    /*
     * Full-width "unfurl" rows:
     * reduce both the stage height and the rendered jewellery scale.
     */
    .has-vol-showcase .vol-unfurl-image {
        height: clamp(320px, 42vw, 470px) !important;
        min-height: 0 !important;
        background-size: min(44vh, 470px) !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }

    .has-vol-showcase .vol-unfurl-content {
        padding-top: 38px !important;
    }

    /* Slightly tighter rhythm between pieces after reducing image scale. */
    .has-vol-showcase .vol-divider {
        margin-top: 14px !important;
        margin-bottom: 14px !important;
    }
}
/* ==========================================================================
   EVE LI — HIGH / FINE JEWELLERY MEGA MENU IMAGE SCALE
   September 2026

   Purpose:
   - Keep the existing two-image layout.
   - Keep the existing pale warm background exactly as it is.
   - Make only the jewellery/product images approximately 30% smaller.
   - Leave captions, collection names, links and spacing unchanged.
   ========================================================================== */

#mega-menu-high-jewellery .mega-menu-featured-card .featured-image-container,
#mega-menu-fine-jewellery .mega-menu-featured-card .featured-image-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#mega-menu-high-jewellery .mega-menu-featured-card .featured-image-container img,
#mega-menu-fine-jewellery .mega-menu-featured-card .featured-image-container img {
    width: 70% !important;
    height: 70% !important;
    max-width: 70% !important;
    max-height: 70% !important;
    object-fit: contain !important;
    object-position: center !important;
}
/* ==========================================================================
   EVE LI — GEMSTONE CAROUSEL IMAGE SCALE
   September 2026

   Purpose:
   - Keep each gemstone carousel slot at its existing size.
   - Keep spacing, labels, movement and hover behaviour unchanged.
   - Reduce only the visible gemstone artwork by approximately 20%.
   ========================================================================== */

.gemstone-image img {
    max-width: 80% !important;
    max-height: 80% !important;
    object-fit: contain !important;
}

/* ==========================================================================
   EVE LI — HOMEPAGE LUXURY REFINEMENT
   September 2026

   Purpose:
   - Reduce press / endorsement marks visually while preserving their slider slots.
   - Rename the homepage gemstone presentation through PHP to "A World of Colour".
   - Keep the existing gemstone slot dimensions and 20% artwork reduction.
   - Create a quiet centre-light effect: the active centre stone remains luminous
     while neighbouring stones recede.
   - Scope all new visual behaviour to the homepage only.
   ========================================================================== */

/* 1) Press / endorsement strip:
      keep the existing Swiper geometry; reduce only what the visitor sees. */
body.home .home-press .press-item img {
    transform: scale(0.72);
    transform-origin: center center;
    opacity: 0.72;
}

body.home .home-press .press-item span {
    display: inline-block;
    transform: scale(0.72);
    transform-origin: center center;
    opacity: 0.72;
}

/* Preserve the understated hover response without allowing hover to enlarge logos. */
body.home .home-press .press-item:hover img,
body.home .home-press .press-item:hover span {
    opacity: 0.92;
}


/* 2) "A World of Colour":
      the carousel slots remain unchanged; only light, saturation and emphasis move. */
body.home .home-gemstones--world-colour .gemstone-item {
    opacity: 0.48;
    transition:
        opacity 0.55s ease,
        transform 0.55s ease;
}

body.home .home-gemstones--world-colour .gemstone-item .gemstone-image {
    position: relative;
    isolation: isolate;
}

body.home .home-gemstones--world-colour .gemstone-item .gemstone-image img {
    /*
     * The existing global rule already keeps the visible artwork at 80%.
     * The new transparent PNGs therefore keep their clean silhouettes while
     * non-centre stones are gently subdued.
     */
    filter: brightness(0.78) saturate(0.68);
    transition:
        filter 0.55s ease,
        opacity 0.55s ease,
        transform 0.55s ease;
}

/*
 * Non-centre gemstone names remain in the layout so the carousel height does
 * not jump, but they are completely invisible. Only the centred, settled
 * stone receives a visible label.
 */
body.home .home-gemstones--world-colour .gemstone-item .gemstone-title {
    opacity: 0;
    visibility: hidden;
    transform: translateY(4px);
    pointer-events: none;
    transition:
        opacity 0.28s ease,
        transform 0.28s ease,
        visibility 0s linear 0.28s;
}

/*
 * Existing global hover/active rules add the gold underline and mark.
 * Suppress them unless this is the stone that has actually arrived at centre.
 */
body.home .home-gemstones--world-colour
.gemstone-item:not(.is-world-colour-lit) .gemstone-title::before,
body.home .home-gemstones--world-colour
.gemstone-item:not(.is-world-colour-lit) .gemstone-title::after {
    content: none !important;
}


/* 3) Only the stone that has finished arriving at centre is illuminated. */
body.home .home-gemstones--world-colour .gemstone-item.is-world-colour-lit {
    opacity: 1;
    transform: scale(1.025);
    z-index: 3;
}

body.home .home-gemstones--world-colour
.gemstone-item.is-world-colour-lit .gemstone-image::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    width: 128%;
    height: 128%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background:
        radial-gradient(
            circle,
            rgba(255, 250, 238, 0.96) 0%,
            rgba(255, 250, 238, 0.54) 38%,
            rgba(255, 255, 255, 0) 72%
        );
    pointer-events: none;
}

body.home .home-gemstones--world-colour
.gemstone-item.is-world-colour-lit .gemstone-image img {
    filter:
        brightness(1.06)
        saturate(1.06)
        drop-shadow(0 10px 18px rgba(189, 130, 16, 0.08));
}

body.home .home-gemstones--world-colour
.gemstone-item.is-world-colour-lit .gemstone-title {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
    transition:
        opacity 0.32s ease,
        transform 0.32s ease,
        visibility 0s linear 0s;
}


/* Keep hover secondary to the centre spotlight. */
body.home .home-gemstones--world-colour
.gemstone-item:not(.is-world-colour-lit):hover {
    opacity: 0.60;
}

body.home .home-gemstones--world-colour
.gemstone-item:not(.is-world-colour-lit):hover .gemstone-image {
    transform: none;
}


/* 4) Reduced-motion visitors should not receive long visual transitions. */
@media (prefers-reduced-motion: reduce) {
    body.home .home-gemstones--world-colour .gemstone-item,
    body.home .home-gemstones--world-colour .gemstone-item .gemstone-image img,
    body.home .home-gemstones--world-colour .gemstone-item .gemstone-title {
        transition-duration: 0.01ms !important;
    }
}

/* ==========================================================================
   EVE LI — HIGH / FINE JEWELLERY PARENT PAGE REBUILD — V2
   September 16, 2026

   IMPORTANT:
   - Landing hero IMAGE SOURCE is controlled by taxonomy-product-cat.php.
     This CSS does not replace the Fine or High Jewellery hero artwork.
   - High Jewellery: larger Aqua, substantially larger Art Deco / Flora,
     and a full-width shallow Volatus banner.
   - Fine Jewellery: collection cards approximately 10% larger,
     Golden Ratio becomes a full-width shallow feature banner.
   ========================================================================== */

/* HIGH JEWELLERY HERO
   Keep the shorter desktop treatment agreed earlier, but do NOT replace the image. */
body.term-high-jewellery .category-hero {
    height: clamp(500px, 72svh, 660px) !important;
    min-height: 0 !important;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/09/High-Jewellery-1-scaled.jpg') !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
}

/* Do not impose a new Fine Jewellery hero crop or image source. */
body.term-fine-jewellery .category-hero {
    background-repeat: no-repeat;
}

/* Parent page content widths. */
body.term-high-jewellery .main-cat-container {
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
    padding: 46px 34px 110px;
}

body.term-fine-jewellery .main-cat-container {
    max-width: 1365px;
    margin-left: auto;
    margin-right: auto;
    padding: 46px 32px 105px;
}

/* --------------------------------------------------------------------------
   SHARED CLICKABLE CATEGORY CARD
   -------------------------------------------------------------------------- */

.eveli-parent-layout {
    width: 100%;
}

.eveli-category-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    color: var(--color-black);
    text-decoration: none !important;
    background: #ffffff;
    cursor: pointer;
}

.eveli-category-card:hover,
.eveli-category-card:focus,
.eveli-category-card:visited {
    color: var(--color-black);
    text-decoration: none !important;
}

.eveli-category-card:focus-visible {
    outline: 1px solid var(--color-gold);
    outline-offset: 5px;
}

.eveli-category-card-media {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    background: #ffffff;
}

.eveli-category-card-media .eveli-card-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center center;
    transition: transform 0.45s ease, opacity 0.35s ease;
}

.eveli-category-card-media .eveli-card-image-hover {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.eveli-category-card:hover .eveli-card-image-base {
    transform: scale(1.018);
}

.eveli-category-card:hover .eveli-category-card-media.has-hover-image .eveli-card-image-base {
    opacity: 0;
}

.eveli-category-card:hover .eveli-category-card-media.has-hover-image .eveli-card-image-hover {
    opacity: 1;
    transform: scale(1.018);
}

.eveli-category-card-copy {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 18px 12px 10px;
}

.eveli-category-card-title {
    display: block;
    font-family: var(--font-heading);
    font-size: 22px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.055em;
    text-transform: uppercase;
    color: var(--color-black);
}

.eveli-category-card-desc {
    display: block;
    max-width: 560px;
    margin-top: 8px;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;
    color: #666666;
}

.eveli-category-card-cta {
    display: inline-block;
    margin-top: 12px;
    padding-bottom: 3px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.15em;
    color: var(--color-gold);
    text-transform: uppercase;
    border-bottom: 1px solid transparent;
    transition: border-color 0.25s ease, color 0.25s ease;
}

.eveli-category-card:hover .eveli-category-card-cta {
    color: var(--color-dark-gold);
    border-bottom-color: var(--color-dark-gold);
}

/* --------------------------------------------------------------------------
   HIGH JEWELLERY
   Aqua = 10–20% larger.
   Art Deco / Flora = materially larger and intentionally not perfectly aligned.
   Volatus = full layout width, but shallow like an editorial banner.
   -------------------------------------------------------------------------- */

.eveli-high-jewellery-layout {
    max-width: 1430px;
    margin: 0 auto;
}

.eveli-high-top-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.62fr) minmax(0, 1fr);
    gap: 42px;
    align-items: start;
}

.eveli-high-side-stack {
    display: grid;
    grid-template-rows: auto auto;
    gap: 38px;
    align-content: start;
}

/* Vertically center Aqua against the combined Art Deco + Flora column.
   This changes position only — no image sizing or other layout values. */
.eveli-high-card--flagship {
    align-self: center;
}

/* Aqua */
.eveli-high-card--flagship .eveli-category-card-media {
    height: clamp(620px, 46vw, 735px);
}

/* Art Deco + Flora */
.eveli-high-card--stack .eveli-category-card-media {
    height: clamp(290px, 23vw, 350px);
}

/* A little additional visual enlargement for the right-hand artwork,
   useful where the source file itself has generous white margins. */
.eveli-high-card--stack .eveli-card-image-base,
.eveli-high-card--stack .eveli-card-image-hover {
    transform: scale(1.12);
}

.eveli-high-card--stack:hover .eveli-card-image-base {
    transform: scale(1.15);
}

.eveli-high-card--stack:hover .eveli-category-card-media.has-hover-image .eveli-card-image-hover {
    transform: scale(1.15);
}

.eveli-high-card--stack .eveli-category-card-title {
    font-size: 20px;
}

.eveli-high-card--stack .eveli-category-card-desc {
    max-width: 420px;
    font-size: 13px;
    line-height: 1.45;
}

.eveli-high-card--stack .eveli-category-card-copy {
    padding-top: 14px;
}

/* Volatus */
.eveli-high-wide-row {
    width: 100%;
    margin-top: 72px;
}

.eveli-high-card--wide {
    width: 100%;
}

.eveli-high-card--wide .eveli-category-card-media {
    width: 100%;
    height: clamp(315px, 20vw, 360px);
}

.eveli-high-card--wide .eveli-card-image {
    object-fit: cover;
    object-position: center center;
}

/* Volatus hover artwork: show the dragonfly composition rather than cropping
   a narrow horizontal slice out of the alternate image. */
.eveli-high-card--wide .eveli-card-image-base {
    object-fit: cover;
    object-position: center center;
}

.eveli-high-card--wide .eveli-card-image-hover {
    object-fit: contain;
    object-position: center center;
    transform: scale(1.10);
}

.eveli-high-card--wide:hover .eveli-category-card-media.has-hover-image .eveli-card-image-hover {
    transform: scale(1.13);
}

.eveli-high-card--wide .eveli-category-card-title,
.eveli-high-card--flagship .eveli-category-card-title {
    font-size: 25px;
}

/* Safety if more than four High Jewellery categories are added later. */
.eveli-overflow-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 48px 38px;
    margin-top: 72px;
}

.eveli-overflow-grid .eveli-category-card-media {
    height: clamp(330px, 29vw, 430px);
}

/* --------------------------------------------------------------------------
   FINE JEWELLERY
   Cards ~10% larger than V1.
   Golden Ratio (5th item) = full grid width and deliberately shallower.
   -------------------------------------------------------------------------- */

.eveli-fine-jewellery-layout {
    max-width: 1310px;
    margin: 0 auto;
}

.eveli-fine-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 58px 44px;
}

.eveli-fine-card .eveli-category-card-media {
    height: clamp(350px, 32vw, 475px);
}

/* Golden Ratio feature */
.eveli-fine-feature-wrap {
    width: 100%;
    margin: 88px auto;
}

.eveli-fine-card--feature {
    width: 100%;
}

.eveli-fine-card--feature .eveli-category-card-media {
    width: 100%;
    height: clamp(300px, 22vw, 360px);
}

.eveli-fine-card--feature .eveli-card-image {
    object-fit: cover;
    object-position: center 36%;
}

.eveli-fine-card--feature .eveli-category-card-title {
    font-size: 26px;
}

.eveli-fine-grid--remaining {
    margin-top: 12px;
}

/* --------------------------------------------------------------------------
   Existing category template image links
   -------------------------------------------------------------------------- */

.eveli-generic-image-link {
    display: block;
    width: 100%;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.eveli-generic-image-link:focus-visible {
    outline: 1px solid var(--color-gold);
    outline-offset: -3px;
}

.cat-fw-image > .eveli-generic-image-link > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.cat-hw-image > .eveli-generic-image-link {
    position: relative;
}

.cat-hw-image > .eveli-generic-image-link > img {
    display: block;
}

/* --------------------------------------------------------------------------
   TABLET
   -------------------------------------------------------------------------- */

@media (max-width: 1100px) {

    body.term-high-jewellery .category-hero {
        height: clamp(420px, 62svh, 560px) !important;
        background-position: center center !important;
    }

    body.term-high-jewellery .main-cat-container,
    body.term-fine-jewellery .main-cat-container {
        padding-left: 26px;
        padding-right: 26px;
    }

    .eveli-high-jewellery-layout,
    .eveli-fine-jewellery-layout {
        max-width: 100%;
    }

    .eveli-high-top-grid {
        grid-template-columns: minmax(0, 1.45fr) minmax(280px, 1fr);
        gap: 26px;
    }

    .eveli-high-side-stack {
        gap: 28px;
    }

    .eveli-high-card--flagship .eveli-category-card-media {
        height: clamp(500px, 52vw, 600px);
    }

    .eveli-high-card--stack .eveli-category-card-media {
        height: clamp(235px, 25vw, 285px);
    }

    .eveli-high-card--stack .eveli-card-image-base,
    .eveli-high-card--stack .eveli-card-image-hover {
        transform: scale(1.08);
    }

    .eveli-high-card--stack:hover .eveli-card-image-base,
    .eveli-high-card--stack:hover .eveli-category-card-media.has-hover-image .eveli-card-image-hover {
        transform: scale(1.11);
    }

    .eveli-high-card--wide .eveli-category-card-media {
        height: clamp(260px, 23vw, 320px);
    }

    .eveli-fine-grid {
        gap: 48px 30px;
    }

    .eveli-fine-card .eveli-category-card-media {
        height: clamp(320px, 36vw, 410px);
    }

    .eveli-fine-feature-wrap {
        margin-top: 72px;
        margin-bottom: 72px;
    }

    .eveli-fine-card--feature .eveli-category-card-media {
        height: clamp(270px, 26vw, 330px);
    }
}

/* --------------------------------------------------------------------------
   MOBILE
   -------------------------------------------------------------------------- */

@media (max-width: 768px) {

    body.term-high-jewellery .category-hero {
        height: clamp(250px, 58vw, 360px) !important;
        min-height: 250px !important;
        background-position: center center !important;
    }

    body.term-high-jewellery .main-cat-container,
    body.term-fine-jewellery .main-cat-container {
        padding: 30px 18px 76px;
    }

    .eveli-high-top-grid {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .eveli-high-side-stack {
        grid-template-columns: 1fr;
        grid-template-rows: none;
        gap: 42px;
    }

    .eveli-high-card--flagship .eveli-category-card-media,
    .eveli-high-card--stack .eveli-category-card-media,
    .eveli-high-card--wide .eveli-category-card-media,
    .eveli-overflow-grid .eveli-category-card-media {
        height: auto;
        aspect-ratio: 1.15 / 1;
    }

    .eveli-high-card--stack .eveli-card-image-base,
    .eveli-high-card--stack .eveli-card-image-hover {
        transform: none;
    }

    .eveli-high-card--stack:hover .eveli-card-image-base,
    .eveli-high-card--stack:hover .eveli-category-card-media.has-hover-image .eveli-card-image-hover {
        transform: scale(1.018);
    }

    .eveli-high-card--wide .eveli-card-image {
        object-fit: contain;
    }

    .eveli-high-wide-row {
        margin-top: 42px;
    }

    .eveli-overflow-grid {
        grid-template-columns: 1fr;
        gap: 42px;
        margin-top: 42px;
    }

    .eveli-fine-grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .eveli-fine-card .eveli-category-card-media,
    .eveli-fine-card--feature .eveli-category-card-media {
        height: auto;
        aspect-ratio: 1.12 / 1;
    }

    .eveli-fine-card--feature .eveli-card-image {
        object-fit: contain;
        object-position: center center;
    }

    .eveli-fine-feature-wrap {
        width: 100%;
        margin: 58px auto;
    }

    .eveli-category-card-title,
    .eveli-high-card--wide .eveli-category-card-title,
    .eveli-high-card--flagship .eveli-category-card-title,
    .eveli-fine-card--feature .eveli-category-card-title {
        font-size: 21px;
    }

    .eveli-category-card-desc,
    .eveli-high-card--stack .eveli-category-card-desc {
        font-size: 14px;
        line-height: 1.5;
    }
}

/* ==========================================================================
   GOLDEN RATIO FEATURE — preserve source image aspect ratio on desktop
   ========================================================================== */
@media (min-width: 1101px) {
    body.term-fine-jewellery .eveli-fine-feature-wrap {
        width: 52%;
        max-width: 700px;
        margin-left: auto;
        margin-right: auto;
    }

    body.term-fine-jewellery .eveli-fine-card--feature .eveli-category-card-media {
        height: auto !important;
    }

    body.term-fine-jewellery .eveli-fine-card--feature .eveli-card-image-base {
        display: block;
        width: 100%;
        height: auto !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    body.term-fine-jewellery .eveli-fine-card--feature .eveli-card-image-hover {
        width: 100%;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
}

/* ========================================================================== 
   EVE LI — 15-PAGE COLLECTION IMAGE CALIBRATION
   September 2026

   Final review adjustments. Desktop only.
   Percentages are reductions from the CURRENT Volatus rendering, preserving
   the existing stage, typography, copy, dividers and mobile behaviour.
   ========================================================================== */

@media (min-width: 1025px) {

    /* --------------------------------------------------------------
       Shared scale engine
       -------------------------------------------------------------- */

    .has-vol-showcase .vol-showcase-list > section .vol-image img {
        width: var(--eveli-item-image-size, 100%) !important;
        height: var(--eveli-item-image-size, 100%) !important;
        max-width: var(--eveli-item-image-size, 100%) !important;
        max-height: var(--eveli-item-image-size, 100%) !important;
    }

    .has-vol-showcase .vol-showcase-list > section .vol-unfurl-image {
        background-size: var(--eveli-item-bg-size, min(44vh, 470px)) !important;
    }

    /* --------------------------------------------------------------
       PAGE 1 — HYDRA
       Base/model image unchanged. Hover earring approximately 35% smaller.
       -------------------------------------------------------------- */

    .eveli-category-card[href*="/hydra/"] .eveli-card-image-hover {
        transform: scale(0.65) !important;
        transform-origin: center center !important;
    }

    .eveli-category-card[href*="/hydra/"]:hover
    .eveli-category-card-media.has-hover-image .eveli-card-image-hover {
        transform: scale(0.65) !important;
    }

    .cat-hw-card:has(a[href*="/hydra/"]) .cat-hw-image.has-hover-img img.hover-img,
    .cat-hw-card:has(a[href*="/hydra/"]):hover .cat-hw-image.has-hover-img img.hover-img {
        transform: scale(0.65) !important;
        transform-origin: center center !important;
    }

    /* --------------------------------------------------------------
       PAGE 2 — OCEAN RIVIERA / OCEAN REVERIE
       All reviewed imagery: -6%.
       -------------------------------------------------------------- */

    .vol-collection--ocean-riviera,
    .vol-collection--ocean-reverie {
        --eveli-item-image-size: 94%;
        --eveli-item-bg-size: min(41.36vh, 442px);
    }

    /* --------------------------------------------------------------
       PAGE 3 — 1920s
       Bracelet unchanged. Items 2 and 3: -6%.
       -------------------------------------------------------------- */

    .vol-collection--1920s > section:nth-of-type(2),
    .vol-collection--1920s > section:nth-of-type(3) {
        --eveli-item-image-size: 94%;
        --eveli-item-bg-size: min(41.36vh, 442px);
    }

    /* --------------------------------------------------------------
       PAGE 4 — TCHAIKOVSKY'S TREASURE TROVE
       Ballerina unchanged. Swan (item 2): -6%.
       -------------------------------------------------------------- */

    .vol-collection--tchaikovsky > section:nth-of-type(2),
    .vol-collection--tchaikovskys-treasure-trove > section:nth-of-type(2) {
        --eveli-item-image-size: 94%;
        --eveli-item-bg-size: min(41.36vh, 442px);
    }

    /* --------------------------------------------------------------
       PAGE 5 — FLORA
       First pink ring/item: -6%. Remaining items unchanged.
       -------------------------------------------------------------- */

    .vol-collection--flora > section:nth-of-type(1) {
        --eveli-item-image-size: 94%;
        --eveli-item-bg-size: min(41.36vh, 442px);
    }

    /* --------------------------------------------------------------
       PAGE 6 — EVENING PRIMROSE
       First emerald ring/item: -8%. Remaining items unchanged.
       -------------------------------------------------------------- */

    .vol-collection--evening-primrose > section:nth-of-type(1) {
        --eveli-item-image-size: 92%;
        --eveli-item-bg-size: min(40.48vh, 432px);
    }

    /* --------------------------------------------------------------
       PAGE 7 — AVES
       Items 1 and 2 unchanged. Items 3 and 4: -7.5%.
       -------------------------------------------------------------- */

    .vol-collection--aves > section:nth-of-type(3),
    .vol-collection--aves > section:nth-of-type(4) {
        --eveli-item-image-size: 92.5%;
        --eveli-item-bg-size: min(40.70vh, 435px);
    }

    /* --------------------------------------------------------------
       PAGE 8 — INSECTA
       Item 1: -10%. Item 2 unchanged. Item 3: -5%.
       -------------------------------------------------------------- */

    .vol-collection--insecta > section:nth-of-type(1) {
        --eveli-item-image-size: 90%;
        --eveli-item-bg-size: min(39.60vh, 423px);
    }

    .vol-collection--insecta > section:nth-of-type(3) {
        --eveli-item-image-size: 95%;
        --eveli-item-bg-size: min(41.80vh, 447px);
    }

    /* --------------------------------------------------------------
       PAGE 9 — FLOS VITAE
       1 Citrus Bloom: -9%
       2 Lotus Riviera/Reverie: -7.5%
       3 Spring Bloom: -7%
       4 Violet Bloom: -4.5%
       5 Winter Bloom: -7%
       6 Heart of Spring: -7.5%
       7 Water Muse Rouge: unchanged
       -------------------------------------------------------------- */

    .vol-collection--flos-vitae > section:nth-of-type(1) {
        --eveli-item-image-size: 91%;
        --eveli-item-bg-size: min(40.04vh, 428px);
    }

    .vol-collection--flos-vitae > section:nth-of-type(2) {
        --eveli-item-image-size: 92.5%;
        --eveli-item-bg-size: min(40.70vh, 435px);
    }

    .vol-collection--flos-vitae > section:nth-of-type(3),
    .vol-collection--flos-vitae > section:nth-of-type(5) {
        --eveli-item-image-size: 93%;
        --eveli-item-bg-size: min(40.92vh, 437px);
    }

    .vol-collection--flos-vitae > section:nth-of-type(4) {
        --eveli-item-image-size: 95.5%;
        --eveli-item-bg-size: min(42.02vh, 449px);
    }

    .vol-collection--flos-vitae > section:nth-of-type(6) {
        --eveli-item-image-size: 92.5%;
        --eveli-item-bg-size: min(40.70vh, 435px);
    }

    /* --------------------------------------------------------------
       PAGE 10 — FLUTTER
       Both items: -5%.
       Monarch's Flight piece-type line is centred/refined beneath the title.
       -------------------------------------------------------------- */

    .vol-collection--flutter {
        --eveli-item-image-size: 95%;
        --eveli-item-bg-size: min(41.80vh, 447px);
    }

    .vol-collection--flutter > section:nth-of-type(2) .vol-piece-type,
    .vol-collection--flutter > .eveli-item--monarchs-flight-brooch-pendant .vol-piece-type,
    .vol-collection--flutter > .eveli-item--monarchs-flight-brooch-and-pendant .vol-piece-type {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    /* --------------------------------------------------------------
       PAGE 11 — KALEIDOSCOPE
       First reviewed image / Prismatic Mosaic: -7%.
       -------------------------------------------------------------- */

    .vol-collection--kaleidoscope > section:nth-of-type(1) {
        --eveli-item-image-size: 93%;
        --eveli-item-bg-size: min(40.92vh, 437px);
    }

    /* --------------------------------------------------------------
       PAGE 12 — CHROMATIC MOSAIC
       1 Ruby Meridian: -6.5%
       2 Azure Flare: -6.5%
       3 Blush Aurora: -5%
       4 Pineapple Drops: -6.5%
       5 Rosé Dusk: -5%
       6 Summer Oversaturated: unchanged
       7 Sunrise Serenade: -5%
       8 Love Notes: -7.5%
       Love Notes layout is forced to image-right in volatus-renderer.php.
       -------------------------------------------------------------- */

    .vol-collection--chromatic-mosaic > section:nth-of-type(1),
    .vol-collection--chromatic-mosaic > section:nth-of-type(2),
    .vol-collection--chromatic-mosaic > section:nth-of-type(4) {
        --eveli-item-image-size: 93.5%;
        --eveli-item-bg-size: min(41.14vh, 439px);
    }

    .vol-collection--chromatic-mosaic > section:nth-of-type(3),
    .vol-collection--chromatic-mosaic > section:nth-of-type(5),
    .vol-collection--chromatic-mosaic > section:nth-of-type(7) {
        --eveli-item-image-size: 95%;
        --eveli-item-bg-size: min(41.80vh, 447px);
    }

    .vol-collection--chromatic-mosaic > section:nth-of-type(8),
    .vol-collection--chromatic-mosaic > .eveli-item--love-note,
    .vol-collection--chromatic-mosaic > .eveli-item--love-notes {
        --eveli-item-image-size: 92.5%;
        --eveli-item-bg-size: min(40.70vh, 435px);
    }

    /* --------------------------------------------------------------
       PAGE 13 — THE REGAL LINE
       1 Emerald Cascade: -6.5%
       2 Emerald Cascade Pendant: -6.5%
       3 Emerald Cascade Ring: -5%
       4 Ocean Breeze: -5%
       5 Ocean Breeze Pendant: -5%
       6 Corundum Line Earring: -5%
       7 Scarlet Cascade Pendant: -5.5%
       -------------------------------------------------------------- */

    .vol-collection--regal-line > section:nth-of-type(1),
    .vol-collection--regal-line > section:nth-of-type(2),
    .vol-collection--the-regal-line > section:nth-of-type(1),
    .vol-collection--the-regal-line > section:nth-of-type(2) {
        --eveli-item-image-size: 93.5%;
        --eveli-item-bg-size: min(41.14vh, 439px);
    }

    .vol-collection--regal-line > section:nth-of-type(3),
    .vol-collection--regal-line > section:nth-of-type(4),
    .vol-collection--regal-line > section:nth-of-type(5),
    .vol-collection--regal-line > section:nth-of-type(6),
    .vol-collection--the-regal-line > section:nth-of-type(3),
    .vol-collection--the-regal-line > section:nth-of-type(4),
    .vol-collection--the-regal-line > section:nth-of-type(5),
    .vol-collection--the-regal-line > section:nth-of-type(6) {
        --eveli-item-image-size: 95%;
        --eveli-item-bg-size: min(41.80vh, 447px);
    }

    .vol-collection--regal-line > section:nth-of-type(7),
    .vol-collection--the-regal-line > section:nth-of-type(7) {
        --eveli-item-image-size: 94.5%;
        --eveli-item-bg-size: min(41.58vh, 444px);
    }

    /* --------------------------------------------------------------
       PAGE 14 — RHYTHM
       Both items: -5.5%.
       -------------------------------------------------------------- */

    .vol-collection--rhythm {
        --eveli-item-image-size: 94.5%;
        --eveli-item-bg-size: min(41.58vh, 444px);
    }

    /* --------------------------------------------------------------
       PAGE 15 — SIGNATURE RINGS
       Item 1 Emerald Cascade Ring unchanged.
       Items 2–4 Pretty in Pink rings: -10%.
       Living Colour Every Day duplicate is suppressed in renderer.
       -------------------------------------------------------------- */

    .vol-collection--signature-rings > section:nth-of-type(2),
    .vol-collection--signature-rings > section:nth-of-type(3),
    .vol-collection--signature-rings > section:nth-of-type(4),
    .vol-collection--signature-ring > section:nth-of-type(2),
    .vol-collection--signature-ring > section:nth-of-type(3),
    .vol-collection--signature-ring > section:nth-of-type(4) {
        --eveli-item-image-size: 90%;
        --eveli-item-bg-size: min(39.60vh, 423px);
    }
}

/* ==========================================================================
   EVE LI — CURATED COLLECTION SPOTLIGHT
   Product pages only. Restores the original Collection Story composition:
   restrained copy on the left, one dominant editorial image on the right,
   then a smaller supporting image story below it.
   ========================================================================== */

body.eveli-spotlight-modal-open {
    overflow: hidden !important;
}

.eveli-collection-spotlight {
    width: min(1320px, calc(100% - 64px));
    margin: 118px auto 0;
    padding: 0 0 122px;
    box-sizing: border-box;
}

.eveli-collection-spotlight__heading {
    max-width: 760px;
    margin: 0 auto 52px;
    text-align: center;
}

.eveli-collection-spotlight__eyebrow {
    display: block;
    margin-bottom: 10px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.19em;
    text-transform: uppercase;
    color: #8a7351;
}

.eveli-collection-spotlight__heading h2 {
    margin: 0;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: clamp(34px, 2.8vw, 46px) !important;
    font-weight: 400 !important;
    line-height: 1.05;
    letter-spacing: 0.035em;
    text-transform: uppercase;
    color: var(--color-black, #111);
}

.eveli-collection-spotlight__divider {
    margin-top: 16px;
}

.eveli-collection-spotlight__divider::before,
.eveli-collection-spotlight__divider::after {
    width: 84px;
}

.eveli-collection-spotlight__divider img {
    width: 16px;
}

/*
 * This intentionally mirrors the proportion and breathing room of the site's
 * original Kinetic Collection story instead of the newer boxed mosaic.
 */
.eveli-collection-spotlight__panel {
    display: grid;
    grid-template-columns: minmax(300px, 0.90fr) minmax(0, 1.28fr);
    gap: clamp(50px, 5vw, 82px);
    align-items: start;
    min-height: 0;
    padding: 0;
    background: #fff;
    border: 0;
    color: var(--color-black, #111);
    text-decoration: none !important;
    overflow: visible;
    box-sizing: border-box;
}

.eveli-collection-spotlight__panel:visited {
    color: var(--color-black, #111);
}

.eveli-collection-spotlight__panel--interactive {
    cursor: pointer;
}

.eveli-collection-spotlight__panel:focus-visible,
.eveli-collection-spotlight__panel--interactive:focus-visible {
    outline: 1px solid var(--color-gold, #bd8210);
    outline-offset: 7px;
}

.eveli-collection-spotlight__copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    min-height: 500px;
    padding: 24px 0 28px 6px;
    box-sizing: border-box;
    background: #fff;
}

.eveli-collection-spotlight__tier {
    margin-bottom: 18px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #777;
}

.eveli-collection-spotlight__copy h3 {
    margin: 0;
    max-width: 410px;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: clamp(38px, 3.1vw, 52px) !important;
    font-weight: 400 !important;
    line-height: 1.03;
    letter-spacing: 0;
    text-transform: none;
    color: var(--color-black, #111);
}

.eveli-collection-spotlight__copy p {
    max-width: 395px;
    margin: 24px 0 0;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 15px !important;
    font-weight: 300;
    line-height: 1.75;
    color: #5e5e5e;
}

.eveli-collection-spotlight__discover {
    display: inline-block;
    margin-top: 32px;
    padding: 11px 18px 9px;
    min-width: 184px;
    box-sizing: border-box;
    border: 1px solid rgba(189, 130, 16, 0.72);
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.15em;
    text-align: center;
    text-transform: uppercase;
    color: var(--color-black, #111);
    transition: color 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.eveli-collection-spotlight__panel:hover .eveli-collection-spotlight__discover,
.eveli-collection-spotlight__panel--interactive:hover .eveli-collection-spotlight__discover {
    color: #fff;
    border-color: var(--color-gold, #bd8210);
    background: var(--color-gold, #bd8210);
}

/* --- Original-story gallery rhythm: one large image, then staggered supports. --- */
.eveli-spotlight-story-gallery {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}

.eveli-spotlight-story-gallery__hero,
.eveli-spotlight-story-gallery__support-item {
    margin: 0;
    overflow: hidden;
    background: #f8f6f2;
}

.eveli-spotlight-story-gallery__hero {
    width: 100%;
    height: clamp(440px, 33vw, 540px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.eveli-spotlight-story-gallery__hero img,
.eveli-spotlight-story-gallery__support-item img {
    display: block;
    width: 100%;
    height: 100%;
    transition: transform 0.5s ease;
}

/* Model / lifestyle photography fills the editorial frame. */
.eveli-spotlight-story-gallery__hero.is-model img,
.eveli-spotlight-story-gallery__support-item.is-model img {
    object-fit: cover;
    object-position: center;
}

/* Product fronts keep their full silhouette and generous whitespace. */
.eveli-spotlight-story-gallery__hero.is-product img,
.eveli-spotlight-story-gallery__support-item.is-product img {
    object-fit: contain;
    object-position: center;
    padding: clamp(18px, 2vw, 30px);
    box-sizing: border-box;
    background: #fff;
}

.eveli-spotlight-story-gallery__hero.is-product img {
    padding: clamp(30px, 4vw, 62px);
}

.eveli-collection-spotlight__panel:hover .eveli-spotlight-story-gallery img,
.eveli-collection-spotlight__panel--interactive:hover .eveli-spotlight-story-gallery img {
    transform: scale(1.012);
}

/*
 * Supporting imagery is deliberately uneven — not a row of equal squares.
 * This is the visual rhythm the earlier Kinetic story achieved successfully.
 */
.eveli-spotlight-story-gallery__support {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    align-items: start;
    gap: 18px;
    min-height: 170px;
}

.eveli-spotlight-story-gallery__support-item {
    display: flex;
    align-items: center;
    justify-content: center;
}

.eveli-spotlight-story-gallery__support--1 .eveli-spotlight-story-gallery__support-item:nth-child(1) {
    grid-column: 2 / 10;
    height: 170px;
}

.eveli-spotlight-story-gallery__support--2 .eveli-spotlight-story-gallery__support-item:nth-child(1) {
    grid-column: 1 / 7;
    height: 172px;
}

.eveli-spotlight-story-gallery__support--2 .eveli-spotlight-story-gallery__support-item:nth-child(2) {
    grid-column: 8 / 13;
    height: 142px;
    margin-top: 18px;
}

.eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(1) {
    grid-column: 1 / 5;
    height: 148px;
    margin-top: 22px;
}

.eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(2) {
    grid-column: 5 / 9;
    height: 182px;
}

.eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(3) {
    grid-column: 9 / 13;
    height: 156px;
    margin-top: 12px;
}

/* --- Group chooser modal: page dims, then individual products are selectable. --- */
.eveli-spotlight-modal[hidden] {
    display: none !important;
}

.eveli-spotlight-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    box-sizing: border-box;
}

.eveli-spotlight-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(17, 17, 17, 0.72);
    backdrop-filter: blur(2.5px);
}

.eveli-spotlight-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(1020px, 94vw);
    max-height: 90vh;
    overflow-y: auto;
    padding: clamp(42px, 4.4vw, 66px);
    box-sizing: border-box;
    background: #fffdf9;
    border: 1px solid rgba(189, 130, 16, 0.28);
    box-shadow: 0 24px 78px rgba(0, 0, 0, 0.26);
}

.eveli-spotlight-modal__dialog::before {
    content: "";
    position: absolute;
    inset: 14px;
    border: 1px solid rgba(189, 130, 16, 0.10);
    pointer-events: none;
}

.eveli-spotlight-modal__close {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 22px;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--color-black, #111);
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 30px;
    font-weight: 300;
    line-height: 1;
    cursor: pointer;
}

.eveli-spotlight-modal__close:hover,
.eveli-spotlight-modal__close:focus-visible {
    color: var(--color-gold, #bd8210);
}

.eveli-spotlight-modal__header {
    position: relative;
    z-index: 1;
    max-width: 720px;
    margin: 0 auto 40px;
    text-align: center;
}

.eveli-spotlight-modal__eyebrow {
    display: block;
    margin-bottom: 12px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.19em;
    text-transform: uppercase;
    color: #8a7351;
}

.eveli-spotlight-modal__header h2 {
    margin: 0;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: clamp(34px, 3vw, 48px) !important;
    font-weight: 400 !important;
    line-height: 1.08;
    letter-spacing: 0.035em;
    text-transform: uppercase;
    color: var(--color-black, #111);
}

.eveli-spotlight-modal__header p {
    margin: 13px 0 0;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: 15px !important;
    font-style: italic;
    font-weight: 400;
    color: #6d6d6d;
}

.eveli-spotlight-modal__grid {
    position: relative;
    z-index: 1;
    display: grid;
    gap: clamp(22px, 2.8vw, 36px);
    justify-content: center;
}

.eveli-spotlight-modal__grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.eveli-spotlight-modal__grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.eveli-spotlight-modal__grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.eveli-spotlight-modal__piece {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    color: var(--color-black, #111);
    text-align: center;
    text-decoration: none !important;
}

.eveli-spotlight-modal__piece:visited {
    color: var(--color-black, #111);
}

.eveli-spotlight-modal__image {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    box-sizing: border-box;
    background: #f8f6f2;
    border: 1px solid rgba(17, 17, 17, 0.045);
}

.eveli-spotlight-modal__image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 84%;
    max-height: 84%;
    object-fit: contain;
    transition: transform 0.35s ease;
}

.eveli-spotlight-modal__piece:hover .eveli-spotlight-modal__image img {
    transform: scale(1.025);
}

.eveli-spotlight-modal__name {
    margin-top: 17px;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.3;
}

.eveli-spotlight-modal__discover {
    margin-top: 12px;
    min-width: 150px;
    padding: 9px 14px 8px;
    border: 1px solid rgba(189, 130, 16, 0.64);
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    transition: color 0.25s ease, background 0.25s ease;
}

.eveli-spotlight-modal__piece:hover .eveli-spotlight-modal__discover {
    color: #fff;
    background: var(--color-gold, #bd8210);
}

@media (max-width: 960px) {
    .eveli-collection-spotlight {
        width: min(100% - 40px, 920px);
        margin-top: 88px;
        padding-bottom: 92px;
    }

    .eveli-collection-spotlight__panel {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .eveli-collection-spotlight__copy {
        align-items: center;
        min-height: 0;
        padding: 16px 28px 8px;
        text-align: center;
    }

    .eveli-collection-spotlight__copy p {
        max-width: 620px;
    }

    .eveli-spotlight-story-gallery__hero {
        height: clamp(380px, 58vw, 500px);
    }
}

@media (max-width: 640px) {
    .eveli-collection-spotlight {
        width: calc(100% - 28px);
        margin-top: 72px;
        padding-bottom: 76px;
    }

    .eveli-collection-spotlight__heading {
        margin-bottom: 34px;
    }

    .eveli-collection-spotlight__heading h2 {
        font-size: 32px !important;
    }

    .eveli-collection-spotlight__copy {
        padding: 4px 18px 6px;
    }

    .eveli-collection-spotlight__copy h3 {
        font-size: 35px !important;
    }

    .eveli-collection-spotlight__copy p {
        font-size: 14px !important;
    }

    .eveli-spotlight-story-gallery {
        gap: 12px;
    }

    .eveli-spotlight-story-gallery__hero {
        height: 360px;
    }

    .eveli-spotlight-story-gallery__support {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        min-height: 0;
    }

    .eveli-spotlight-story-gallery__support--1 .eveli-spotlight-story-gallery__support-item:nth-child(1),
    .eveli-spotlight-story-gallery__support--2 .eveli-spotlight-story-gallery__support-item:nth-child(1),
    .eveli-spotlight-story-gallery__support--2 .eveli-spotlight-story-gallery__support-item:nth-child(2),
    .eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(1),
    .eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(2),
    .eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(3) {
        grid-column: auto;
        height: 138px;
        margin-top: 0;
    }

    .eveli-spotlight-story-gallery__support--3 .eveli-spotlight-story-gallery__support-item:nth-child(3) {
        grid-column: 1 / 3;
        width: 62%;
        justify-self: center;
    }

    .eveli-spotlight-modal {
        padding: 10px;
    }

    .eveli-spotlight-modal__dialog {
        width: 100%;
        max-height: 95vh;
        padding: 48px 18px 28px;
    }

    .eveli-spotlight-modal__dialog::before {
        inset: 8px;
    }

    .eveli-spotlight-modal__header {
        margin-bottom: 28px;
    }

    .eveli-spotlight-modal__header h2 {
        font-size: 31px !important;
    }

    .eveli-spotlight-modal__grid--2,
    .eveli-spotlight-modal__grid--3,
    .eveli-spotlight-modal__grid--4 {
        grid-template-columns: 1fr;
    }

    .eveli-spotlight-modal__piece {
        width: min(100%, 360px);
        margin: 0 auto;
    }
}

/* ==========================================================================
   EVE LI — SINGLE PRODUCT REFINEMENTS
   More breathing room before YML; recommendation cards reduced ~12%.
   ========================================================================== */

@media (min-width: 769px) {
    .single-product .yml-slider-section {
        max-width: 1260px;
        padding-top: 165px;
        padding-bottom: 105px;
    }

    .single-product .yml-slider-section .product-thumb {
        height: clamp(194px, 19.4vw, 282px);
    }

    .single-product .yml-slider-section .product-name {
        font-size: 14px;
        line-height: 1.35;
    }

    .single-product .yml-slider-section .product-info {
        font-size: 17px;
    }

    .single-product .yml-slider-section .product-price .woocommerce-Price-amount.amount {
        font-size: 15px !important;
    }
}

@media (max-width: 768px) {
    .single-product .yml-slider-section {
        padding-top: 70px !important;
        padding-bottom: 60px !important;
    }
}

/* ==========================================================================
   EVE LI — ADMIN-CURATED COLLECTION SPOTLIGHT V6
   Deterministic imagery + fixed editorial layouts for 1–5 total images.
   ========================================================================== */

body.eveli-curated-modal-open {
    overflow: hidden !important;
}

.eveli-curated-spotlight {
    width: min(1320px, calc(100% - 64px));
    margin: 112px auto 0;
    padding: 0 0 112px;
    box-sizing: border-box;
}

.eveli-curated-spotlight__heading {
    max-width: 800px;
    margin: 0 auto 54px;
    text-align: center;
}

.eveli-curated-spotlight__eyebrow {
    display: block;
    margin-bottom: 10px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.19em;
    text-transform: uppercase;
    color: #8a7351;
}

.eveli-curated-spotlight__heading h2 {
    margin: 0;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: clamp(34px, 2.8vw, 46px) !important;
    font-weight: 400 !important;
    line-height: 1.05;
    letter-spacing: 0.035em;
    text-transform: uppercase;
    color: var(--color-black, #111);
}

.eveli-curated-spotlight__divider {
    margin-top: 16px;
}

.eveli-curated-spotlight__divider::before,
.eveli-curated-spotlight__divider::after {
    width: 84px;
}

.eveli-curated-spotlight__divider img {
    width: 16px;
}

.eveli-curated-spotlight__story {
    display: grid;
    grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.45fr);
    gap: clamp(48px, 5vw, 84px);
    align-items: center;
}

.eveli-curated-spotlight__copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    min-height: 0;
    padding: 10px 0;
    box-sizing: border-box;
}

.eveli-curated-spotlight__tier {
    margin-bottom: 18px;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 11px;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #777;
}

.eveli-curated-spotlight__copy h3 {
    max-width: 440px;
    margin: 0;
    font-family: var(--font-heading, "Playfair Display", serif);
    font-size: clamp(38px, 3.1vw, 52px) !important;
    font-weight: 400 !important;
    line-height: 1.03;
    letter-spacing: 0;
    text-transform: none;
    color: var(--color-black, #111);
}

.eveli-curated-spotlight__copy p {
    max-width: 410px;
    margin: 24px 0 0;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 15px !important;
    font-weight: 300;
    line-height: 1.75;
    color: #5e5e5e;
}

.eveli-curated-spotlight__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 184px;
    margin-top: 32px;
    padding: 11px 18px 9px;
    box-sizing: border-box;
    border: 1px solid rgba(189, 130, 16, 0.72);
    border-radius: 0;
    background: #fff;
    appearance: none;
    cursor: pointer;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.15em;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none !important;
    color: var(--color-black, #111);
    transition: color 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.eveli-curated-spotlight__cta:hover,
.eveli-curated-spotlight__cta:focus-visible {
    color: #fff;
    border-color: var(--color-gold, #bd8210);
    background: var(--color-gold, #bd8210);
}

.eveli-curated-spotlight__gallery {
    min-width: 0;
    width: 100%;
    display: grid;
    gap: 18px;
    align-items: stretch;
}

.eveli-curated-spotlight__visual {
    min-width: 0;
    background: #f8f6f2;
    overflow: hidden;
}

.eveli-curated-spotlight__media {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    text-decoration: none !important;
    overflow: hidden;
    cursor: pointer;
}

.eveli-curated-spotlight__media img {
    display: block;
    width: 100%;
    height: 100%;
    transition: transform 0.35s ease;
}

.eveli-curated-spotlight__media.is-cover img {
    object-fit: cover;
    object-position: center;
}

.eveli-curated-spotlight__media.is-contain {
    background: #fff;
}

.eveli-curated-spotlight__media.is-contain img {
    object-fit: contain;
    object-position: center;
    padding: 8px;
    box-sizing: border-box;
}

.eveli-curated-spotlight__visual--hero .eveli-curated-spotlight__media.is-contain img {
    padding: 22px;
}

.eveli-curated-spotlight__media:hover img,
.eveli-curated-spotlight__media:focus-visible img {
    transform: scale(1.008);
}

/* 1 image: graceful fallback, though 2–5 is the intended editorial range. */
.eveli-curated-spotlight__gallery--1 {
    grid-template-columns: 1fr;
}
.eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--hero,
.eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--support {
    height: 500px;
}

/*
 * EVE LI — Golden Ratio / Fibonacci Spotlight layouts
 * ---------------------------------------------------
 * The hierarchy is deliberate but restrained: no oversized hero paired with
 * micro-thumbnails.  The primary split uses approximately 61.8% / 38.2%,
 * then alternates those proportions as the image count increases.
 */

/* 2 images: 61.8 / 38.2 — both remain substantial. */
.eveli-curated-spotlight__gallery--2 {
    grid-template-columns: minmax(0, 1.618fr) minmax(0, 1fr);
    grid-template-rows: 500px;
}
.eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--hero {
    grid-column: 1;
    grid-row: 1;
}
.eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--support-1 {
    grid-column: 2;
    grid-row: 1;
}

/*
 * 3 images: 61.8 / 38.2 horizontally; the secondary column is split evenly.
 * This preserves a lead image without making either supporting image tiny.
 */
.eveli-curated-spotlight__gallery--3 {
    grid-template-columns: minmax(0, 1.618fr) minmax(0, 1fr);
    grid-template-rows: repeat(2, 241px);
}
.eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--hero {
    grid-column: 1;
    grid-row: 1 / 3;
}
.eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support-1 {
    grid-column: 2;
    grid-row: 1;
}
.eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support-2 {
    grid-column: 2;
    grid-row: 2;
}

/*
 * 4 images: two equal-height rows, alternating the golden split.
 * Row 1 = 61.8 / 38.2; Row 2 = 38.2 / 61.8.
 * Visually this reads as an editorial mosaic rather than hero + thumbnails.
 */
.eveli-curated-spotlight__gallery--4 {
    grid-template-columns: minmax(0, 1.618fr) minmax(0, 1fr);
    grid-template-rows: repeat(2, 258px);
}
.eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero {
    grid-column: 1;
    grid-row: 1;
}
.eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-1 {
    grid-column: 2;
    grid-row: 1;
}
.eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-2 {
    grid-column: 1;
    grid-row: 2;
}
.eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-3 {
    grid-column: 2;
    grid-row: 2;
}

/*
 * 5 images: golden split on the first row; second row uses 3 / 2 / 3 eighths.
 * The smallest frame is still 25% of the gallery width — never a micro image.
 */
.eveli-curated-spotlight__gallery--5 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    grid-template-rows: 286px 230px;
}
.eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--hero {
    grid-column: 1 / 6;
    grid-row: 1;
}
.eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-1 {
    grid-column: 6 / 9;
    grid-row: 1;
}
.eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-2 {
    grid-column: 1 / 4;
    grid-row: 2;
}
.eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-3 {
    grid-column: 4 / 6;
    grid-row: 2;
}
.eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-4 {
    grid-column: 6 / 9;
    grid-row: 2;
}

/* Group chooser modal */
.eveli-curated-modal[hidden] { display: none !important; }
.eveli-curated-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    box-sizing: border-box;
}
.eveli-curated-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(17,17,17,0.72);
    backdrop-filter: blur(2.5px);
}
.eveli-curated-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(1120px, 94vw);
    max-height: 90vh;
    overflow-y: auto;
    padding: clamp(42px, 4.4vw, 66px);
    box-sizing: border-box;
    background: #fffdf9;
    border: 1px solid rgba(189,130,16,0.28);
    box-shadow: 0 24px 78px rgba(0,0,0,0.26);
}
.eveli-curated-modal__dialog::before {
    content: "";
    position: absolute;
    inset: 12px;
    border: 1px solid rgba(189,130,16,0.14);
    pointer-events: none;
}
.eveli-curated-modal__close {
    position: absolute;
    top: 18px;
    right: 22px;
    z-index: 2;
    width: 34px;
    height: 34px;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 28px;
    line-height: 1;
    color: #111;
}
.eveli-curated-modal__header { text-align: center; margin-bottom: 34px; }
.eveli-curated-modal__header > span {
    display: block;
    margin-bottom: 10px;
    font-family: var(--font-body,"Josefin Sans",sans-serif);
    font-size: 10px;
    letter-spacing: 0.19em;
    text-transform: uppercase;
    color: #8a7351;
}
.eveli-curated-modal__header h2 {
    margin: 0;
    font-family: var(--font-heading,"Playfair Display",serif);
    font-size: clamp(30px,3vw,48px) !important;
    font-weight: 400 !important;
    line-height: 1.05;
    text-transform: uppercase;
}
.eveli-curated-modal__header p {
    margin: 14px 0 0;
    font-family: var(--font-heading,"Playfair Display",serif);
    font-size: 16px !important;
    font-style: italic;
    color: #666;
}
.eveli-curated-modal__grid { display: grid; gap: 26px; align-items: start; }
.eveli-curated-modal__grid--1 { grid-template-columns: minmax(0,420px); justify-content: center; }
.eveli-curated-modal__grid--2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.eveli-curated-modal__grid--3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.eveli-curated-modal__grid--4,
.eveli-curated-modal__grid--5,
.eveli-curated-modal__grid--6 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.eveli-curated-modal__piece {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none !important;
    color: #111 !important;
    outline: 0;
}
.eveli-curated-modal__piece.is-focused .eveli-curated-modal__image {
    border-color: var(--color-gold,#bd8210);
    box-shadow: inset 0 0 0 1px var(--color-gold,#bd8210);
}
.eveli-curated-modal__image {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #f8f6f2;
    border: 1px solid transparent;
}
.eveli-curated-modal__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 26px;
    box-sizing: border-box;
    transition: transform 0.25s ease;
}
.eveli-curated-modal__name {
    margin-top: 14px;
    font-family: var(--font-heading,"Playfair Display",serif);
    font-size: 17px;
    line-height: 1.3;
    text-align: center;
}
.eveli-curated-modal__discover {
    min-width: 150px;
    margin-top: 10px;
    padding: 9px 16px 7px;
    border: 1px solid rgba(189,130,16,0.62);
    font-family: var(--font-body,"Josefin Sans",sans-serif);
    font-size: 9.5px;
    letter-spacing: 0.15em;
    text-align: center;
    text-transform: uppercase;
}

@media (max-width: 980px) {
    .eveli-curated-spotlight {
        width: min(100% - 34px, 760px);
        margin-top: 88px;
        padding-bottom: 92px;
    }
    .eveli-curated-spotlight__story {
        grid-template-columns: 1fr;
        gap: 34px;
    }
    .eveli-curated-spotlight__copy {
        max-width: 560px;
        margin: 0 auto;
        align-items: center;
        text-align: center;
    }
    .eveli-curated-spotlight__copy h3,
    .eveli-curated-spotlight__copy p { max-width: 560px; }
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4 {
        grid-template-columns: minmax(0, 1.618fr) minmax(0, 1fr);
    }

    .eveli-curated-spotlight__gallery--2 {
        grid-template-rows: 430px;
    }

    .eveli-curated-spotlight__gallery--3 {
        grid-template-rows: repeat(2, 206px);
    }

    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: repeat(2, 218px);
    }

    .eveli-curated-spotlight__gallery--5 {
        grid-template-rows: 244px 198px;
    }
}

@media (max-width: 640px) {
    .eveli-curated-spotlight {
        width: calc(100% - 28px);
        margin-top: 72px;
        padding-bottom: 76px;
    }
    .eveli-curated-spotlight__heading { margin-bottom: 34px; }
    .eveli-curated-spotlight__heading h2 { font-size: 32px !important; }
    .eveli-curated-spotlight__copy { padding: 4px 18px 0; }
    .eveli-curated-spotlight__copy h3 { font-size: 35px !important; }
    .eveli-curated-spotlight__copy p { font-size: 14px !important; }

    /* Mobile: preserve hierarchy without creating miniature product tiles. */
    .eveli-curated-spotlight__gallery,
    .eveli-curated-spotlight__gallery--1,
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4,
    .eveli-curated-spotlight__gallery--5 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto;
        gap: 10px;
    }

    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--support {
        grid-column: 1 / 3 !important;
        grid-row: auto !important;
        height: 330px;
    }

    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 3 !important;
        grid-row: auto !important;
        height: 310px;
    }
    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--support-1 {
        grid-column: 1 / 3 !important;
        grid-row: auto !important;
        width: 62%;
        height: 220px;
        justify-self: center;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 3 !important;
        grid-row: auto !important;
        height: 300px;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100%;
        height: 170px;
        margin: 0;
        justify-self: stretch;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support-2,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-3,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-4 {
        grid-column: 1 / 3 !important;
        width: 62%;
        justify-self: center;
    }

    .eveli-curated-modal { padding: 10px; }
    .eveli-curated-modal__dialog {
        width: 100%;
        max-height: 95vh;
        padding: 48px 18px 28px;
    }
    .eveli-curated-modal__grid--1,
    .eveli-curated-modal__grid--2,
    .eveli-curated-modal__grid--3,
    .eveli-curated-modal__grid--4,
    .eveli-curated-modal__grid--5,
    .eveli-curated-modal__grid--6 { grid-template-columns: 1fr; }
    .eveli-curated-modal__piece { width: min(100%,360px); margin: 0 auto; }
}


/* ==========================================================================\n   EVE LI — COLLECTION SPOTLIGHT V4\n   Targeted refinements after visual review\n   1) Bonbon: landscape hero over a balanced three-image support row.\n      The row-height relationship follows the golden ratio closely.\n   2) Four-product chooser modal: true 2 × 2 layout on tablet/desktop.\n   ========================================================================== */

/*
 * BONBON ONLY — the selected hero is a wide editorial/product landscape.
 * The generic four-image checkerboard makes that source feel cramped and
 * leaves the three isolated product shots visually adrift.  Give the wide
 * hero the full first row, then present the three product views evenly below.
 * 320 : 198 ~= 1.616, effectively the golden-ratio relationship we want.
 */
@media (min-width: 981px) {
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: 320px 198px;
        gap: 18px;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 4;
        grid-row: 1;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-1 {
        grid-column: 1;
        grid-row: 2;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-2 {
        grid-column: 2;
        grid-row: 2;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-3 {
        grid-column: 3;
        grid-row: 2;
    }
}

/* Tablet: preserve the same Bonbon composition at a slightly smaller scale. */
@media (min-width: 641px) and (max-width: 980px) {
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        grid-template-rows: 300px 186px;
        gap: 14px;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 4;
        grid-row: 1;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-1 {
        grid-column: 1;
        grid-row: 2;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-2 {
        grid-column: 2;
        grid-row: 2;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-3 {
        grid-column: 3;
        grid-row: 2;
    }
}

/*
 * FOUR-PIECE GROUP MODAL — two across, two below.
 * The previous generic 3-column rule caused a 3 + 1 arrangement.
 */
@media (min-width: 641px) {
    .eveli-curated-modal__grid--4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 780px;
        margin-left: auto;
        margin-right: auto;
    }

    .eveli-curated-modal__grid--4 .eveli-curated-modal__image {
        height: clamp(240px, 25vw, 330px);
        aspect-ratio: auto;
    }

    .eveli-curated-modal__grid--5,
    .eveli-curated-modal__grid--6 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* ==========================================================================
   EVE LI — SINGLE PRODUCT SCALE REFINEMENT V5
   Agreed visual hierarchy:
   - YOU MAY ALSO LIKE heading stays unchanged.
   - YML product row is reduced by 10%.
   - Collection Spotlight is reduced by 10% overall while preserving the
     existing Fibonacci / Golden Ratio image relationships and Bonbon layout.
   ========================================================================== */

/* --------------------------------------------------------------------------
   YOU MAY ALSO LIKE — product row only, 10% smaller.
   The section heading and divider are intentionally untouched.
   -------------------------------------------------------------------------- */
@media (min-width: 769px) {
    .single-product .yml-slider-section .yml-swiper {
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .single-product .yml-slider-section .product-thumb {
        height: clamp(175px, 17.46vw, 254px);
    }
}

/* --------------------------------------------------------------------------
   COLLECTION SPOTLIGHT — 10% smaller overall on desktop.
   All internal image ratios remain exactly the same as V4.
   -------------------------------------------------------------------------- */
@media (min-width: 981px) {
    .eveli-curated-spotlight {
        width: min(1188px, calc(100% - 64px));
        margin-top: 101px;
        padding-bottom: 101px;
    }

    .eveli-curated-spotlight__heading {
        max-width: 720px;
        margin-bottom: 49px;
    }

    .eveli-curated-spotlight__eyebrow {
        margin-bottom: 9px;
        font-size: 10px;
    }

    .eveli-curated-spotlight__heading h2 {
        font-size: clamp(31px, 2.52vw, 41.5px) !important;
    }

    .eveli-curated-spotlight__divider {
        margin-top: 14px;
    }

    .eveli-curated-spotlight__divider::before,
    .eveli-curated-spotlight__divider::after {
        width: 76px;
    }

    .eveli-curated-spotlight__divider img {
        width: 14px;
    }

    .eveli-curated-spotlight__story {
        grid-template-columns: minmax(252px, 0.72fr) minmax(0, 1.45fr);
        gap: clamp(43px, 4.5vw, 76px);
    }

    .eveli-curated-spotlight__copy {
        padding: 9px 0;
    }

    .eveli-curated-spotlight__tier {
        margin-bottom: 16px;
        font-size: 10px;
    }

    .eveli-curated-spotlight__copy h3 {
        max-width: 396px;
        font-size: clamp(34px, 2.79vw, 47px) !important;
    }

    .eveli-curated-spotlight__copy p {
        max-width: 369px;
        margin-top: 22px;
        font-size: 13.5px !important;
    }

    .eveli-curated-spotlight__cta {
        min-width: 166px;
        margin-top: 29px;
        padding: 10px 16px 8px;
        font-size: 9.5px;
    }

    .eveli-curated-spotlight__gallery {
        gap: 16px;
    }

    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--support {
        height: 450px;
    }

    .eveli-curated-spotlight__gallery--2 {
        grid-template-rows: 450px;
    }

    .eveli-curated-spotlight__gallery--3 {
        grid-template-rows: repeat(2, 217px);
    }

    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: repeat(2, 232px);
    }

    .eveli-curated-spotlight__gallery--5 {
        grid-template-rows: 257px 207px;
    }

    /* Bonbon keeps its dedicated landscape-hero composition, scaled by 10%. */
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: 288px 178px;
        gap: 16px;
    }
}

/* Tablet: same 10% footprint reduction without changing composition. */
@media (min-width: 641px) and (max-width: 980px) {
    .eveli-curated-spotlight {
        width: min(calc(100% - 34px), 684px);
        margin-top: 79px;
        padding-bottom: 83px;
    }

    .eveli-curated-spotlight__heading {
        margin-bottom: 49px;
    }

    .eveli-curated-spotlight__heading h2 {
        font-size: clamp(31px, 2.52vw, 41.5px) !important;
    }

    .eveli-curated-spotlight__story {
        gap: 31px;
    }

    .eveli-curated-spotlight__gallery {
        gap: 16px;
    }

    .eveli-curated-spotlight__gallery--2 {
        grid-template-rows: 387px;
    }

    .eveli-curated-spotlight__gallery--3 {
        grid-template-rows: repeat(2, 185px);
    }

    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: repeat(2, 196px);
    }

    .eveli-curated-spotlight__gallery--5 {
        grid-template-rows: 220px 178px;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: 270px 167px;
        gap: 13px;
    }
}

/* Mobile: modest 10% footprint reduction while keeping jewellery legible. */
@media (max-width: 640px) {
    .eveli-curated-spotlight {
        width: calc(100% - 34px);
        margin-top: 65px;
        padding-bottom: 68px;
    }

    .eveli-curated-spotlight__heading {
        margin-bottom: 31px;
    }

    .eveli-curated-spotlight__heading h2 {
        font-size: 29px !important;
    }

    .eveli-curated-spotlight__copy h3 {
        font-size: 32px !important;
    }

    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--support {
        height: 297px;
    }

    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--hero {
        height: 279px;
    }

    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--support-1 {
        height: 198px;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--hero {
        height: 270px;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support {
        height: 153px;
    }
}

/* ========================================================================== 
   EVE LI — CONSOLIDATED PRODUCT-PAGE REFINEMENTS V6
   - YML: +15% desktop spacing without shrinking cards.
   - YML image scale by product family: earrings -5%; pendants/brooches -4%.
   - Collection Spotlight: an additional 5% footprint reduction.
   - Golden-ratio 4- and 5-image mosaics corrected to true Fibonacci spans.
   - Bonbon keeps its dedicated wide-hero / three-support layout.
   - Four-piece chooser remains 2 x 2.
   - Remove the scrolling inner modal border that crossed product imagery.
   ========================================================================== */

/* Client-side Spotlight rotation candidates: only the chosen candidate shows. */
.eveli-curated-spotlight-candidate[hidden] {
    display: none !important;
}

/* --------------------------------------------------------------------------
   YOU MAY ALSO LIKE
   Keep the current card size and heading. Increase desktop gap from 30px to
   35px in functions.php (+16.7%, approximately the agreed 15%). The wrapper
   gains the same 15px required to keep the four slide widths unchanged.
   -------------------------------------------------------------------------- */
@media (min-width: 1024px) {
    .single-product .yml-slider-section .yml-swiper {
        width: calc(90% + 15px);
        max-width: 100%;
    }
}

/* Product-family visual scale only; card/text/price geometry is untouched. */
.single-product .yml-slider-section .yml-type-earring .product-image-primary {
    transform: scale(0.95);
    transform-origin: center center;
}
.single-product .yml-slider-section .yml-type-earring .product-image-hover {
    transform: translate(-50%, -50%) scale(0.95);
    transform-origin: center center;
}
.single-product .yml-slider-section .yml-type-pendant .product-image-primary,
.single-product .yml-slider-section .yml-type-brooch .product-image-primary {
    transform: scale(0.96);
    transform-origin: center center;
}
.single-product .yml-slider-section .yml-type-pendant .product-image-hover,
.single-product .yml-slider-section .yml-type-brooch .product-image-hover {
    transform: translate(-50%, -50%) scale(0.96);
    transform-origin: center center;
}

/* --------------------------------------------------------------------------
   GOLDEN-RATIO / FIBONACCI SPOTLIGHT GEOMETRY
   2- and 3-image layouts were already correct at 1.618 : 1.
   Correct 4 and 5 images to literal 8/5/3 Fibonacci spans on tablet/desktop.
   -------------------------------------------------------------------------- */
@media (min-width: 641px) {
    /* 4 images: 8/5 on row one; 5/8 on row two. */
    .eveli-curated-spotlight__gallery--4 {
        grid-template-columns: repeat(13, minmax(0, 1fr));
    }
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 9;
        grid-row: 1;
    }
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-1 {
        grid-column: 9 / 14;
        grid-row: 1;
    }
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-2 {
        grid-column: 1 / 6;
        grid-row: 2;
    }
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-3 {
        grid-column: 6 / 14;
        grid-row: 2;
    }

    /* 5 images: top 8/5; lower row 5/3/5. */
    .eveli-curated-spotlight__gallery--5 {
        grid-template-columns: repeat(13, minmax(0, 1fr));
    }
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 9;
        grid-row: 1;
    }
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-1 {
        grid-column: 9 / 14;
        grid-row: 1;
    }
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-2 {
        grid-column: 1 / 6;
        grid-row: 2;
    }
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-3 {
        grid-column: 6 / 9;
        grid-row: 2;
    }
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-4 {
        grid-column: 9 / 14;
        grid-row: 2;
    }

    /* Bonbon exception: wide lead image + three equal supports. */
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 4;
        grid-row: 1;
    }
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-1 {
        grid-column: 1;
        grid-row: 2;
    }
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-2 {
        grid-column: 2;
        grid-row: 2;
    }
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-3 {
        grid-column: 3;
        grid-row: 2;
    }
}

/* --------------------------------------------------------------------------
   COLLECTION SPOTLIGHT — additional 5% reduction from V5.
   Internal image proportions remain unchanged.
   -------------------------------------------------------------------------- */
@media (min-width: 981px) {
    .eveli-curated-spotlight {
        width: min(1129px, calc(100% - 64px));
        margin-top: 96px;
        padding-bottom: 96px;
    }

    .eveli-curated-spotlight__heading {
        max-width: 684px;
        margin-bottom: 47px;
    }

    .eveli-curated-spotlight__eyebrow {
        margin-bottom: 9px;
        font-size: 9.5px;
    }

    .eveli-curated-spotlight__heading h2 {
        font-size: clamp(29.5px, 2.39vw, 39.5px) !important;
    }

    .eveli-curated-spotlight__divider {
        margin-top: 13px;
    }

    .eveli-curated-spotlight__divider::before,
    .eveli-curated-spotlight__divider::after {
        width: 72px;
    }

    .eveli-curated-spotlight__divider img {
        width: 13px;
    }

    .eveli-curated-spotlight__story {
        grid-template-columns: minmax(239px, 0.72fr) minmax(0, 1.45fr);
        gap: clamp(41px, 4.28vw, 72px);
    }

    .eveli-curated-spotlight__copy {
        padding: 9px 0;
    }

    .eveli-curated-spotlight__tier {
        margin-bottom: 15px;
        font-size: 9.5px;
    }

    .eveli-curated-spotlight__copy h3 {
        max-width: 376px;
        font-size: clamp(32.3px, 2.65vw, 44.7px) !important;
    }

    .eveli-curated-spotlight__copy p {
        max-width: 351px;
        margin-top: 21px;
        font-size: 12.8px !important;
    }

    .eveli-curated-spotlight__cta {
        min-width: 158px;
        margin-top: 28px;
        padding: 9.5px 15px 7.5px;
        font-size: 9px;
    }

    .eveli-curated-spotlight__gallery {
        gap: 15px;
    }

    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--support {
        height: 428px;
    }

    .eveli-curated-spotlight__gallery--2 {
        grid-template-rows: 428px;
    }

    .eveli-curated-spotlight__gallery--3 {
        grid-template-rows: repeat(2, 206px);
    }

    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: repeat(2, 220px);
    }

    .eveli-curated-spotlight__gallery--5 {
        grid-template-rows: 244px 197px;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: 274px 169px;
        gap: 15px;
    }
}

@media (min-width: 641px) and (max-width: 980px) {
    .eveli-curated-spotlight {
        width: min(calc(100% - 34px), 650px);
        margin-top: 75px;
        padding-bottom: 79px;
    }

    .eveli-curated-spotlight__heading {
        margin-bottom: 47px;
    }

    .eveli-curated-spotlight__heading h2 {
        font-size: clamp(29.5px, 2.39vw, 39.5px) !important;
    }

    .eveli-curated-spotlight__story {
        gap: 29px;
    }

    .eveli-curated-spotlight__gallery {
        gap: 15px;
    }

    .eveli-curated-spotlight__gallery--2 {
        grid-template-rows: 368px;
    }

    .eveli-curated-spotlight__gallery--3 {
        grid-template-rows: repeat(2, 176px);
    }

    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: repeat(2, 186px);
    }

    .eveli-curated-spotlight__gallery--5 {
        grid-template-rows: 209px 169px;
    }

    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"]
    .eveli-curated-spotlight__gallery--4 {
        grid-template-rows: 257px 159px;
        gap: 12px;
    }
}

@media (max-width: 640px) {
    .eveli-curated-spotlight {
        width: calc(100% - 38px);
        margin-top: 62px;
        padding-bottom: 65px;
    }

    .eveli-curated-spotlight__heading {
        margin-bottom: 29px;
    }

    .eveli-curated-spotlight__heading h2 {
        font-size: 27.5px !important;
    }

    .eveli-curated-spotlight__copy h3 {
        font-size: 30.5px !important;
    }

    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--1 .eveli-curated-spotlight__visual--support {
        height: 282px;
    }

    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--hero {
        height: 265px;
    }

    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--support-1 {
        height: 188px;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--hero {
        height: 257px;
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support {
        height: 145px;
    }
}

/* --------------------------------------------------------------------------
   GROUP CHOOSER MODAL
   Keep 4 products at 2 x 2. Remove the inner pseudo-border whose bottom edge
   appeared as a gold horizontal line through scrolled product imagery.
   The real outer gold border remains on the dialog itself.
   -------------------------------------------------------------------------- */
.eveli-curated-modal__dialog::before {
    display: none !important;
}

.eveli-curated-modal__dialog {
    border-color: rgba(189, 130, 16, 0.32);
}

@media (min-width: 641px) {
    .eveli-curated-modal__grid--4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 780px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* ========================================================================== 
   EVE LI — DISCOVER MORE / TRUE FIBONACCI TILE LAYOUT — V7
   Public-facing title: Discover More.

   Desktop/tablet geometry follows the square sequence visually, rather than
   merely using a 61.8/38.2 split inside ordinary rows:
     2 images: 5, 3
     3 images: 5, 3, 2
     4 images: 5, 3, 2, 1
     5 images: 8, 5, 3, 2, 1

   The blank remainder is intentional: it is the negative space produced by
   stopping the Fibonacci tiling at the number of images actually configured.
   Hero = largest tile; Support 1 = second largest; and so on.
   ========================================================================== */

/* The former eyebrow is no longer rendered; keep this defensive rule for cache. */
.eveli-curated-spotlight__eyebrow {
    display: none !important;
}

/* The section title itself is now DISCOVER MORE. */
.eveli-curated-spotlight__heading h2 {
    margin-top: 0 !important;
}

@media (min-width: 641px) {
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4,
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"] .eveli-curated-spotlight__gallery--4 {
        display: grid !important;
        grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(5, minmax(0, 1fr)) !important;
        aspect-ratio: 8 / 5 !important;
        height: auto !important;
        align-items: stretch !important;
    }

    /* 5-square Fibonacci rectangle: 5 x 5 lead tile. */
    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero,
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"] .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 6 !important;
        grid-row: 1 / 6 !important;
        height: auto !important;
    }

    /* 3 x 3: second-largest tile at the upper right. */
    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual--support-1,
    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support-1,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-1,
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"] .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-1 {
        grid-column: 6 / 9 !important;
        grid-row: 1 / 4 !important;
        height: auto !important;
    }

    /* 2 x 2: third tile curls into the lower-right corner. */
    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support-2,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-2,
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"] .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-2 {
        grid-column: 7 / 9 !important;
        grid-row: 4 / 6 !important;
        height: auto !important;
    }

    /* 1 x 1: fourth tile continues the spiral. */
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-3,
    .eveli-curated-spotlight[data-eveli-curated-spotlight="bonbon"] .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support-3 {
        grid-column: 6 / 7 !important;
        grid-row: 4 / 5 !important;
        height: auto !important;
    }

    /* Five images step up to the 8,5,3,2,1 Fibonacci rectangle. */
    .eveli-curated-spotlight__gallery--5 {
        display: grid !important;
        grid-template-columns: repeat(13, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(8, minmax(0, 1fr)) !important;
        aspect-ratio: 13 / 8 !important;
        height: auto !important;
        align-items: stretch !important;
    }

    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--hero {
        grid-column: 1 / 9 !important;
        grid-row: 1 / 9 !important;
        height: auto !important;
    }

    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-1 {
        grid-column: 9 / 14 !important;
        grid-row: 1 / 6 !important;
        height: auto !important;
    }

    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-2 {
        grid-column: 11 / 14 !important;
        grid-row: 6 / 9 !important;
        height: auto !important;
    }

    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-3 {
        grid-column: 9 / 11 !important;
        grid-row: 7 / 9 !important;
        height: auto !important;
    }

    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support-4 {
        grid-column: 9 / 10 !important;
        grid-row: 6 / 7 !important;
        height: auto !important;
    }

    /* Every Fibonacci tile fills its assigned square cleanly. */
    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual,
    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual {
        min-height: 0 !important;
    }
}

/* On phones, preserve the legible stacked presentation rather than turning the
   smallest Fibonacci tiles into unusable thumbnails. */
@media (max-width: 640px) {
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4,
    .eveli-curated-spotlight__gallery--5 {
        aspect-ratio: auto !important;
    }
}

/* No contextual gold box around a modal product. The chooser should remain
   visually neutral regardless of which image opened it. */
.eveli-curated-modal__piece.is-focused .eveli-curated-modal__image {
    border-color: transparent !important;
    box-shadow: none !important;
}

/* ========================================================================== 
   EVE LI — DISCOVER MORE / FIBONACCI GOLD SEAMS — V8
   --------------------------------------------------------------------------
   Desktop/tablet treatment:
   - Fibonacci image tiles meet with no gaps.
   - 1px Eve Li gold appears ONLY where image tiles touch internally.
   - No outside left or right frame.
   - One top line follows the image composition and overshoots LEFT only.
   - One bottom line follows the image composition and overshoots RIGHT only.
   - Mobile keeps the existing stacked presentation.
   ========================================================================== */

@media (min-width: 641px) {
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4,
    .eveli-curated-spotlight__gallery--5 {
        --eveli-fibonacci-line: var(--color-gold, #bd8210);
        --eveli-fibonacci-overshoot: clamp(34px, 4.5vw, 72px);
        position: relative;
        gap: 0 !important;
        overflow: visible;
    }

    /* Keep the gallery sides completely open. */
    .eveli-curated-spotlight__gallery--2 .eveli-curated-spotlight__visual,
    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual {
        box-sizing: border-box;
        border: 0 !important;
    }

    /*
     * Asymmetric editorial rules:
     * top = full composition width + LEFT overshoot only
     * bottom = full composition width + RIGHT overshoot only
     */
    .eveli-curated-spotlight__gallery--2::before,
    .eveli-curated-spotlight__gallery--3::before,
    .eveli-curated-spotlight__gallery--4::before,
    .eveli-curated-spotlight__gallery--5::before,
    .eveli-curated-spotlight__gallery--2::after,
    .eveli-curated-spotlight__gallery--3::after,
    .eveli-curated-spotlight__gallery--4::after,
    .eveli-curated-spotlight__gallery--5::after {
        content: "";
        position: absolute;
        z-index: 6;
        height: 1px;
        background: var(--eveli-fibonacci-line);
        pointer-events: none;
    }

    .eveli-curated-spotlight__gallery--2::before,
    .eveli-curated-spotlight__gallery--3::before,
    .eveli-curated-spotlight__gallery--4::before,
    .eveli-curated-spotlight__gallery--5::before {
        top: 0;
        left: calc(-1 * var(--eveli-fibonacci-overshoot));
        right: 0;
    }

    .eveli-curated-spotlight__gallery--2::after,
    .eveli-curated-spotlight__gallery--3::after,
    .eveli-curated-spotlight__gallery--4::after,
    .eveli-curated-spotlight__gallery--5::after {
        bottom: 0;
        left: 0;
        right: calc(-1 * var(--eveli-fibonacci-overshoot));
    }

    /* ------------------------------------------------------------------
       2 images — 5 / 3
       One shared vertical seam.
       ------------------------------------------------------------------ */
    .eveli-curated-spotlight__gallery--2
    .eveli-curated-spotlight__visual--support-1 {
        border-left: 1px solid var(--eveli-fibonacci-line) !important;
    }

    /* ------------------------------------------------------------------
       3 images — 5 / 3 / 2
       Seams are drawn only where two configured image tiles physically meet.
       ------------------------------------------------------------------ */
    .eveli-curated-spotlight__gallery--3
    .eveli-curated-spotlight__visual--support-1 {
        border-left: 1px solid var(--eveli-fibonacci-line) !important;
    }

    .eveli-curated-spotlight__gallery--3
    .eveli-curated-spotlight__visual--support-2 {
        border-top: 1px solid var(--eveli-fibonacci-line) !important;
    }

    /* ------------------------------------------------------------------
       4 images — 5 / 3 / 2 / 1
       The 1-square tile carries three shared seams; no line is drawn against
       the intentional Fibonacci negative-space cell.
       ------------------------------------------------------------------ */
    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-1 {
        border-left: 1px solid var(--eveli-fibonacci-line) !important;
    }

    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-2 {
        border-top: 1px solid var(--eveli-fibonacci-line) !important;
    }

    .eveli-curated-spotlight__gallery--4
    .eveli-curated-spotlight__visual--support-3 {
        border-left: 1px solid var(--eveli-fibonacci-line) !important;
        border-top: 1px solid var(--eveli-fibonacci-line) !important;
        border-right: 1px solid var(--eveli-fibonacci-line) !important;
    }

    /* ------------------------------------------------------------------
       5 images — 8 / 5 / 3 / 2 / 1
       Again, only true tile-to-tile joins receive gold seams.
       ------------------------------------------------------------------ */
    .eveli-curated-spotlight__gallery--5
    .eveli-curated-spotlight__visual--hero {
        border-right: 1px solid var(--eveli-fibonacci-line) !important;
    }

    .eveli-curated-spotlight__gallery--5
    .eveli-curated-spotlight__visual--support-2 {
        border-top: 1px solid var(--eveli-fibonacci-line) !important;
    }

    .eveli-curated-spotlight__gallery--5
    .eveli-curated-spotlight__visual--support-3 {
        border-right: 1px solid var(--eveli-fibonacci-line) !important;
    }

    .eveli-curated-spotlight__gallery--5
    .eveli-curated-spotlight__visual--support-4 {
        border-top: 1px solid var(--eveli-fibonacci-line) !important;
        border-bottom: 1px solid var(--eveli-fibonacci-line) !important;
    }
}

/* =========================================================
   HOMEPAGE — HIGH / FINE JEWELLERY IMAGE SCALE
   ========================================================= */

@media (min-width: 901px) {

    .home-double-feature .feature-img-wrapper {
        width: 80%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 30px;
    }

}

/* ==========================================================================
   EVE LI — TYPOGRAPHY REFINEMENT + EDITORIAL PRODUCT CLEANUP
   2026-09-19

   Purpose:
   - Reduce competing type weights and oversized product/collection names.
   - Keep Minion-family display typography and Josefin Sans body typography.
   - Remove prices from the four-card homepage showcase and You May Also Like.
   - Preserve all approved YML image scaling/spacing and Discover More geometry.
   - Soften Discover More Fibonacci construction lines by 20%.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. INDIVIDUAL PRODUCT PAGE — quieter product name and supporting copy
   -------------------------------------------------------------------------- */
.single-product .product-entry-header .product-title {
    font-family: var(--font-heading) !important;
    font-size: clamp(26px, 1.75vw, 29px) !important;
    font-weight: 400 !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.single-product .product-short-description,
.single-product .product-short-description p {
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    line-height: 1.48 !important;
    letter-spacing: 0 !important;
}

/* --------------------------------------------------------------------------
   2. COLLECTION / VOLATUS PAGES — calmer hierarchy
   Existing layouts and product-image scale rules are untouched.
   -------------------------------------------------------------------------- */
.category-hierarchy-wrapper h2,
.category-hierarchy-wrapper .vol-section .vol-title,
.category-hierarchy-wrapper .vol-unfurl .vol-title,
.has-vol-showcase .vol-title-group .vol-title {
    font-family: var(--font-heading) !important;
    font-size: clamp(34px, 2.65vw, 44px) !important;
    font-weight: 400 !important;
    line-height: 1.08 !important;
    letter-spacing: 0.01em !important;
}

.category-hierarchy-wrapper .hero-cat-title {
    font-family: var(--font-heading) !important;
    font-size: clamp(36px, 2.9vw, 46px) !important;
    font-weight: 400 !important;
    line-height: 1.08 !important;
    letter-spacing: 0.035em !important;
}

.category-hierarchy-wrapper .vol-desc,
.category-hierarchy-wrapper .vol-desc p,
.category-hierarchy-wrapper .hero-cat-desc,
.category-hierarchy-wrapper > p,
.category-hierarchy-wrapper .main-cat-container p {
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
}

/* Keep the piece-type line deliberately subordinate to the creation name. */
.has-vol-showcase .vol-piece-type {
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
}

/* --------------------------------------------------------------------------
   3. HOMEPAGE FOUR-PRODUCT SHOWCASE — less assertive product typography
   -------------------------------------------------------------------------- */
.home-products-showcase .product-name {
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.32 !important;
    letter-spacing: 0.045em !important;
    text-transform: uppercase !important;
}

.home-products-showcase .product-info {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
}

/* Defence-in-depth: the PHP price output is also removed from front-page.php. */
.home-products-showcase .product-price {
    display: none !important;
}

/* --------------------------------------------------------------------------
   4. YOU MAY ALSO LIKE — preserve heading, spacing and approved image scales
   Only card typography is softened; prices are removed completely.
   -------------------------------------------------------------------------- */
.single-product .yml-slider-section .product-name {
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.32 !important;
    letter-spacing: 0.035em !important;
}

.single-product .yml-slider-section .product-info,
.single-product .yml-slider-section .product-meta {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
}

.single-product .yml-slider-section .product-price,
.single-product .yml-slider-section .product-price *,
.single-product .yml-slider-section .woocommerce-Price-amount,
.single-product .yml-slider-section .price {
    display: none !important;
}

/* --------------------------------------------------------------------------
   5. HOMEPAGE SECTION TITLES — one restrained display scale
   -------------------------------------------------------------------------- */
.home-double-feature .feature-title {
    font-family: var(--font-heading) !important;
    font-size: clamp(26px, 2vw, 31px) !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    letter-spacing: 0.015em !important;
}

.home-double-feature .feature-subtitle {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.5 !important;
}

.home-our-creations .our-creations-title {
    font-family: var(--font-heading) !important;
    font-size: clamp(30px, 2.25vw, 36px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: 0.015em !important;
}

/* --------------------------------------------------------------------------
   6. FOOTER — bring the hierarchy into the same system
   No footer HTML or links are changed.
   -------------------------------------------------------------------------- */
.site-footer .footer-contact-title {
    font-family: var(--font-heading) !important;
    font-size: clamp(25px, 1.9vw, 30px) !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    letter-spacing: 0.01em !important;
}

.site-footer .footer-contact-left p {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.5 !important;
}

.site-footer .footer-heading {
    font-family: var(--font-heading) !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.045em !important;
}

.site-footer .footer-col-info address,
.site-footer .footer-col-links a {
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.45 !important;
}

.site-footer .fb-cls {
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
}

/* --------------------------------------------------------------------------
   7. DISCOVER MORE — same Fibonacci geometry, 20% softer gold line
   No change to line thickness, seams, overshoots or image proportions.
   -------------------------------------------------------------------------- */
@media (min-width: 641px) {
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4,
    .eveli-curated-spotlight__gallery--5 {
        --eveli-fibonacci-line: rgba(241, 166, 3, 0.80);
    }
}

/* --------------------------------------------------------------------------
   8. RESPONSIVE TYPE ADJUSTMENTS
   -------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .single-product .product-entry-header .product-title {
        font-size: 24px !important;
    }

    .category-hierarchy-wrapper h2,
    .category-hierarchy-wrapper .vol-section .vol-title,
    .category-hierarchy-wrapper .vol-unfurl .vol-title,
    .has-vol-showcase .vol-title-group .vol-title {
        font-size: 30px !important;
    }

    .category-hierarchy-wrapper .hero-cat-title {
        font-size: 32px !important;
    }

    .site-footer .footer-contact-title {
        font-size: 24px !important;
    }
}

/* ==========================================================================
   EVE LI — HEADER / FOOTER PATTERN SOFTENING
   Keeps logo, navigation and footer text at full opacity.
   Only the geometric background pattern is softened.
   ========================================================================== */

/* Header: approximately 35% softer */
.site-header {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.35), rgba(255, 255, 255, 0.35)),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: auto, contain !important;
    background-repeat: no-repeat, repeat !important;
    background-position: center, center top !important;
}

/* Footer contact strip: approximately 45% softer */
.footer-contact-container {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.45), rgba(255, 255, 255, 0.45)),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: auto, contain !important;
    background-repeat: no-repeat, repeat !important;
    background-position: center, center top !important;
}

/* Footer bottom strip: approximately 45% softer */
.footer-bottom {
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.45), rgba(255, 255, 255, 0.45)),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: auto, 700px auto !important;
    background-repeat: no-repeat, repeat !important;
    background-position: center, center top !important;
}

/* ==========================================================================
   EVE LI — RESPONSIVE SYSTEM / FINAL CONSOLIDATION
   2026-09-20
   One responsive layer for banners, header, product cards, product pages,
   short-landscape devices, wishlist controls and utility UI.
   ========================================================================== */

/* 1. Baseline containment */
html,
body {
    max-width: 100%;
}

img,
svg,
video {
    max-width: 100%;
}

/* 2. Editorial banners — one approved 2.44:1 proportion everywhere */
.home-hero,
.custom-shop-layout > .home-hero,
.category-hierarchy-wrapper .category-hero,
.has-vol-showcase .category-hero {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 2.44 / 1 !important;
    box-sizing: border-box !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.home-hero .hero-content,
.custom-shop-layout .home-hero .hero-content {
    display: none !important;
}

/* 3. Sticky header — full logo at rest, gold mark after scroll */
.site-header {
    transition: box-shadow 180ms ease, background-color 180ms ease;
}

.header-top {
    transition: padding 180ms ease, min-height 180ms ease;
}

.logo-icon {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 150px;
    height: 86px;
    transition: min-width 180ms ease, height 180ms ease;
}

.logo-icon .eveli-logo-full,
.logo-icon .eveli-logo-mark {
    grid-area: 1 / 1;
    transition: opacity 150ms ease, transform 180ms ease, visibility 150ms ease;
}

.logo-icon .eveli-logo-full {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

.logo-icon .eveli-logo-mark {
    width: 34px !important;
    height: 34px !important;
    object-fit: contain !important;
    opacity: 0;
    visibility: hidden;
    transform: scale(0.88);
}

.site-header.is-compact {
    box-shadow: 0 5px 18px rgba(17, 17, 17, 0.07);
}

.site-header.is-compact .header-top {
    min-height: 54px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.site-header.is-compact .logo-icon {
    min-width: 44px;
    height: 44px;
}

.site-header.is-compact .logo-icon .eveli-logo-full {
    opacity: 0;
    visibility: hidden;
    transform: scale(0.92);
}

.site-header.is-compact .logo-icon .eveli-logo-mark {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

.header-icon,
.menu-toggle {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    touch-action: manipulation;
}

/* 4. Homepage press strip — smaller, more even logos on compact screens */
@media (max-width: 767px) {
    body.home .home-press {
        padding: 20px 0;
    }

    body.home .home-press .press-container {
        padding-left: 14px;
        padding-right: 14px;
    }

    body.home .home-press .press-item {
        min-height: 48px;
    }

    body.home .home-press .press-item img {
        width: auto !important;
        height: auto !important;
        max-width: 108px !important;
        max-height: 30px !important;
        transform: none !important;
        opacity: 0.74;
    }

    body.home .home-press .press-item span {
        font-size: 15px !important;
        line-height: 1.15;
        transform: none !important;
        opacity: 0.74;
    }
}

@media (max-width: 380px) {
    body.home .home-press .press-item img {
        max-width: 92px !important;
        max-height: 27px !important;
    }

    body.home .home-press .press-item span {
        font-size: 14px !important;
    }
}

/* 5. Shop archive — stable two-column mobile grid and restrained pricing */
@media (max-width: 991px) {
    .custom-shop-layout,
    .custom-shop-layout .custom-container-premium,
    .custom-shop-layout .shop-grid-container,
    .custom-shop-layout .shop-main-listing,
    .custom-shop-layout .shop-main-listing ul.products,
    .custom-shop-layout .shop-main-listing ul.products li.product,
    .custom-shop-layout .product-card-inner,
    .custom-shop-layout .product-card-link {
        box-sizing: border-box !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .custom-shop-layout .custom-container-premium {
        width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        overflow-x: clip;
    }

    .custom-shop-layout .shop-grid-container {
        width: 100% !important;
        padding: 0 !important;
        margin-top: 24px !important;
    }

    .custom-shop-layout .shop-main-listing {
        width: 100% !important;
    }

    .custom-shop-layout .shop-main-listing ul.products {
        width: 100% !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 22px 14px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .custom-shop-layout .shop-main-listing ul.products li.product {
        width: auto !important;
        margin: 0 !important;
        float: none !important;
    }

    .custom-shop-layout .product-card-image {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
        margin-bottom: 16px !important;
        overflow: hidden !important;
    }

    .custom-shop-layout .product-card-image img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    .custom-shop-layout .product-card-name,
    .custom-shop-layout .product-card-meta {
        min-height: 0 !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        display: block !important;
        white-space: normal !important;
        overflow-wrap: anywhere;
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: initial !important;
    }

    .custom-shop-layout .product-card-name {
        margin-bottom: 7px !important;
        line-height: 1.3 !important;
    }

    .custom-shop-layout .product-card-meta {
        margin-bottom: 8px !important;
        line-height: 1.35 !important;
    }
}

.custom-shop-layout .product-card-price,
.custom-shop-layout .product-card-price .woocommerce-Price-amount.amount,
.custom-shop-layout .product-card-price .woocommerce-Price-currencySymbol {
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
    color: #4f4f4f !important;
    letter-spacing: 0.01em !important;
}

.custom-shop-layout .product-card-price .price-upon-request {
    font-size: 12.5px !important;
    font-weight: 400 !important;
    color: var(--color-dark-gold) !important;
}

@media (max-width: 420px) {
    .custom-shop-layout .custom-container-premium {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .custom-shop-layout .shop-main-listing ul.products {
        gap: 22px 12px !important;
    }

    .custom-shop-layout .product-card-name {
        font-size: 12.5px !important;
        letter-spacing: 0.055em !important;
    }

    .custom-shop-layout .product-card-meta {
        font-size: 11.5px !important;
        letter-spacing: 0.025em !important;
    }

    .custom-shop-layout .product-card-price,
    .custom-shop-layout .product-card-price .woocommerce-Price-amount.amount {
        font-size: 12px !important;
    }
}

/* 6. Product page — controlled scale on portrait tablets and phones */
@media (min-width: 769px) and (max-width: 1024px) {
    .single-product .custom-single-product-container {
        padding-left: 28px !important;
        padding-right: 28px !important;
    }

    .single-product .product-gallery-column {
        width: min(100%, 660px);
        margin-left: auto;
        margin-right: auto;
    }

    .single-product .product-summary-column {
        width: min(100%, 720px);
        margin-left: auto;
        margin-right: auto;
    }

    .single-product .product-gallery-slider .swiper-wrapper {
        gap: 16px;
    }
}

@media (max-width: 768px) {
    .single-product .custom-single-product-container {
        margin-top: 24px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .single-product .product-main-layout {
        gap: 34px !important;
    }

    .single-product .product-gallery-column {
        gap: 22px !important;
    }

    .single-product .product-gallery-slider {
        max-width: 620px;
        margin-left: auto;
        margin-right: auto;
    }

    .single-product .product-entry-header .product-title {
        font-size: 24px !important;
        line-height: 1.15 !important;
    }

    .single-product .product-price-large,
    .single-product .woocommerce-variation-price span {
        font-size: 28px !important;
    }

    .single-product .product-action-links {
        gap: 9px !important;
    }

    .single-product .product-action-links a {
        font-size: 14px !important;
    }
}

.single-product .wishlist-btn-wrapper {
    display: flex;
    align-items: center;
    margin-left: 14px;
}

.single-product .wishlist-btn-wrapper .tinv-wishlist,
.single-product .wishlist-btn-wrapper .tinv-wraper {
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button,
.single-product .wishlist-btn-wrapper .custom-wishlist-icon {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--color-gold) !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    line-height: 1 !important;
    font-size: 0 !important;
}

.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::before {
    margin: 0 !important;
    font-size: 24px !important;
    line-height: 1 !important;
    color: var(--color-gold) !important;
}

/* 7. Homepage / YML card text — wrap safely on compact screens */
@media (max-width: 768px) {
    .home-products-showcase .product-name,
    .home-products-showcase .product-info,
    .single-product .yml-slider-section .product-name,
    .single-product .yml-slider-section .product-info,
    .single-product .yml-slider-section .product-meta {
        min-height: 0 !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        white-space: normal !important;
        overflow-wrap: anywhere;
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: initial !important;
    }

    .single-product .yml-slider-section .swiper-slide,
    .single-product .yml-slider-section .product-showcase-item {
        min-width: 0 !important;
    }
}

/* 8. Volatus / collection pages — tablet and compact-phone control */
@media (min-width: 769px) and (max-width: 1100px) {
    .has-vol-showcase .vol-section {
        width: min(100% - 40px, 860px) !important;
        max-width: 860px !important;
    }

    .has-vol-showcase .vol-content {
        padding: 24px 22px !important;
    }

    .category-hierarchy-wrapper .vol-section .vol-title,
    .category-hierarchy-wrapper .vol-unfurl .vol-title,
    .has-vol-showcase .vol-title-group .vol-title {
        font-size: clamp(28px, 4vw, 38px) !important;
    }

    .has-vol-showcase .vol-unfurl-image {
        height: clamp(300px, 48vw, 440px) !important;
        min-height: 0 !important;
    }
}

/* 9. Short landscape phones / foldables */
@media (max-width: 1200px) and (max-height: 520px) and (orientation: landscape) {
    .site-header .header-top {
        min-height: 50px;
        padding: 4px 14px !important;
    }

    .site-header .logo-icon {
        min-width: 42px;
        height: 42px;
        justify-items: start;
    }

    .site-header .logo-icon .eveli-logo-full {
        opacity: 0;
        visibility: hidden;
        transform: scale(0.92);
    }

    .site-header .logo-icon .eveli-logo-mark {
        opacity: 1;
        visibility: visible;
        transform: scale(1);
    }

    .site-header .header-left {
        display: none !important;
    }

    .site-header .header-center,
    .site-header .header-right {
        flex: auto;
    }

    .site-header .header-center {
        text-align: left;
    }

    .site-header .menu-toggle {
        display: inline-flex !important;
        cursor: pointer;
    }

    .site-header .main-navigation:not(.active-mobile-menu) {
        display: none !important;
    }

    .site-header .main-navigation.active-mobile-menu {
        display: block !important;
        padding: 14px 18px !important;
        background: #fafafa;
        border-top: 1px solid #eaeaea;
        max-height: calc(100svh - 50px) !important;
        overflow-y: auto !important;
        box-sizing: border-box;
    }

    .site-header .main-navigation ul {
        flex-direction: column;
        gap: 10px;
        align-items: stretch;
    }

    .site-header .main-navigation > ul > li {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        width: 100%;
        gap: 8px;
    }

    .site-header .main-navigation > ul > .menu-item-has-children::after {
        content: '+';
    }

    .site-header .main-navigation > ul > .menu-item-has-children.mobile-submenu-open::after {
        content: '-';
    }

    .site-header .main-navigation a::after,
    .site-header .main-navigation a:hover::after,
    .site-header .main-navigation li.current-menu-item a::after {
        display: none !important;
    }

    .single-product .custom-single-product-container {
        margin-top: 20px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .single-product .product-main-layout {
        gap: 32px !important;
    }

    .has-vol-showcase .vol-section {
        max-width: min(920px, calc(100vw - 40px)) !important;
    }

    .has-vol-showcase .vol-content {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .category-hierarchy-wrapper .vol-section .vol-title,
    .category-hierarchy-wrapper .vol-unfurl .vol-title,
    .has-vol-showcase .vol-title-group .vol-title {
        font-size: clamp(26px, 6vh, 36px) !important;
    }

    .site-footer .footer-contact-container {
        margin-top: 36px;
        padding-top: 28px;
        padding-bottom: 28px;
    }

    .site-footer .footer-contact-bar {
        gap: 14px;
    }
}

/* 10. Footer taxonomy lists */
.site-footer .eveli-footer-taxonomy-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.site-footer .eveli-footer-taxonomy-menu li {
    margin-bottom: 15px;
}

.site-footer .eveli-footer-taxonomy-menu a {
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 300;
    line-height: 1.45;
    color: var(--color-black);
    text-decoration: none;
}

.site-footer .eveli-footer-taxonomy-menu a:hover,
.site-footer .eveli-footer-taxonomy-menu a:focus-visible {
    color: var(--color-gold);
}

/* 11. Wishlist utility and Back to Top */
.tinv-wishlist .eveli-wishlist-back-to-shop {
    display: inline-block;
    margin: 0 0 26px;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.055em;
    text-transform: uppercase;
    color: var(--color-dark-gold);
    text-decoration: none;
    border-bottom: 1px solid currentColor;
    padding-bottom: 3px;
}

.tinv-wishlist .eveli-wishlist-back-to-shop:hover,
.tinv-wishlist .eveli-wishlist-back-to-shop:focus-visible {
    color: var(--color-gold);
}

.eveli-back-to-top {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 9500;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(189, 130, 16, 0.55);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.94);
    color: var(--color-dark-gold);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    box-shadow: 0 5px 18px rgba(17, 17, 17, 0.08);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 160ms ease, visibility 160ms ease, transform 160ms ease, border-color 160ms ease, color 160ms ease;
}

.eveli-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.eveli-back-to-top:hover,
.eveli-back-to-top:focus-visible {
    color: var(--color-gold);
    border-color: var(--color-gold);
}

.eveli-back-to-top svg {
    width: 18px;
    height: 18px;
}

@media (max-width: 640px) {
    .eveli-back-to-top {
        right: 14px;
        bottom: 14px;
        width: 42px;
        height: 42px;
    }
}

/* 12. Discover More — retain gold construction rules on phones */
@media (max-width: 640px) {
    .eveli-curated-spotlight__gallery--2,
    .eveli-curated-spotlight__gallery--3,
    .eveli-curated-spotlight__gallery--4,
    .eveli-curated-spotlight__gallery--5 {
        --eveli-fibonacci-line: rgba(241, 166, 3, 0.80);
        --eveli-fibonacci-overshoot: 14px;
        position: relative !important;
        overflow: visible !important;
    }

    .eveli-curated-spotlight__gallery--2::before,
    .eveli-curated-spotlight__gallery--3::before,
    .eveli-curated-spotlight__gallery--4::before,
    .eveli-curated-spotlight__gallery--5::before,
    .eveli-curated-spotlight__gallery--2::after,
    .eveli-curated-spotlight__gallery--3::after,
    .eveli-curated-spotlight__gallery--4::after,
    .eveli-curated-spotlight__gallery--5::after {
        content: "";
        position: absolute;
        z-index: 8;
        height: 1px;
        background: var(--eveli-fibonacci-line);
        pointer-events: none;
    }

    .eveli-curated-spotlight__gallery--2::before,
    .eveli-curated-spotlight__gallery--3::before,
    .eveli-curated-spotlight__gallery--4::before,
    .eveli-curated-spotlight__gallery--5::before {
        top: 0;
        left: calc(-1 * var(--eveli-fibonacci-overshoot));
        right: 0;
    }

    .eveli-curated-spotlight__gallery--2::after,
    .eveli-curated-spotlight__gallery--3::after,
    .eveli-curated-spotlight__gallery--4::after,
    .eveli-curated-spotlight__gallery--5::after {
        bottom: 0;
        left: 0;
        right: calc(-1 * var(--eveli-fibonacci-overshoot));
    }

    .eveli-curated-spotlight__gallery--3 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--4 .eveli-curated-spotlight__visual--support,
    .eveli-curated-spotlight__gallery--5 .eveli-curated-spotlight__visual--support {
        min-width: 0 !important;
    }
}

/* 13. Mobile logo alignment and footer spacing */
@media (max-width: 900px) {
    .header-center {
        min-width: 0;
    }

    .logo-icon {
        justify-items: start;
        min-width: 132px;
    }

    .site-header.is-compact .logo-icon {
        min-width: 44px;
    }

    .footer-contact-bar,
    .footer-main,
    .fb-cls {
        box-sizing: border-box;
        width: 100%;
    }
}

/* ==========================================================================
   EVE LI — MOBILE STICKY HEADER STABILISATION + PATTERN CONTRAST
   2026-09-20

   Purpose:
   1) Keep the mobile sticky header visually stable while scrolling.
      The existing JavaScript may still add/remove .is-compact, but on phones
      that class no longer changes the header geometry, logo, or icon row.
   2) Prevent the logo / wishlist / bag / account / menu controls from being
      squeezed or clipped on narrow screens.
   3) Restore the original geometric header/footer artwork without the later
      white "softening" overlay, so the pattern is visibly darker.
   ========================================================================== */

/* Restore the original pattern contrast on header and footer. */
.site-header {
    background-image:
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: contain !important;
    background-repeat: repeat !important;
    background-position: center top !important;
}

.footer-contact-container {
    background-image:
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: contain !important;
    background-repeat: repeat !important;
    background-position: center top !important;
}

.footer-bottom {
    background-image:
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: 700px auto !important;
    background-repeat: repeat !important;
    background-position: center top !important;
}

/*
 * Phone / portrait-tablet header:
 * keep ONE stable geometry before and after scroll.
 */
@media (max-width: 900px) {

    .site-header,
    .site-header.is-compact {
        overflow: visible !important;
        box-shadow: none !important;
    }

    .site-header .header-top,
    .site-header.is-compact .header-top {
        min-height: 96px !important;
        padding: 9px 12px !important;
        align-items: center !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        transition: none !important;
    }

    .site-header .header-left,
    .site-header.is-compact .header-left {
        display: none !important;
    }

    .site-header .header-center,
    .site-header.is-compact .header-center {
        flex: 0 0 122px !important;
        width: 122px !important;
        min-width: 122px !important;
        max-width: 122px !important;
        text-align: left !important;
        overflow: visible !important;
    }

    .site-header .logo-icon,
    .site-header.is-compact .logo-icon {
        width: 122px !important;
        min-width: 122px !important;
        height: 78px !important;
        place-items: center start !important;
        justify-items: start !important;
        overflow: visible !important;
        transition: none !important;
    }

    /* Always keep the complete EVE LI logo visible on phones while scrolling. */
    .site-header .logo-icon .eveli-logo-full,
    .site-header.is-compact .logo-icon .eveli-logo-full {
        display: block !important;
        width: 118px !important;
        max-width: 118px !important;
        height: 76px !important;
        max-height: 76px !important;
        object-fit: contain !important;
        object-position: left center !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        transition: none !important;
    }

    /* Do not swap to the small gold mark on mobile scroll. */
    .site-header .logo-icon .eveli-logo-mark,
    .site-header.is-compact .logo-icon .eveli-logo-mark {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: none !important;
        transition: none !important;
    }

    .site-header .header-right,
    .site-header.is-compact .header-right {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        gap: 2px !important;
        overflow: visible !important;
    }

    /*
     * Four controls must fit beside the logo without clipping.
     * 40px keeps them comfortably tappable while preventing the row from
     * overrunning narrow phone widths.
     */
    .site-header .header-icon,
    .site-header .menu-toggle,
    .site-header.is-compact .header-icon,
    .site-header.is-compact .menu-toggle {
        flex: 0 0 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        height: 40px !important;
        min-height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    .site-header .header-icon svg,
    .site-header .menu-toggle svg {
        width: 22px !important;
        height: 22px !important;
        max-width: 22px !important;
        max-height: 22px !important;
    }
}

/* Extra insurance for genuinely narrow phones. */
@media (max-width: 360px) {
    .site-header .header-top,
    .site-header.is-compact .header-top {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .site-header .header-center,
    .site-header.is-compact .header-center,
    .site-header .logo-icon,
    .site-header.is-compact .logo-icon {
        flex-basis: 108px !important;
        width: 108px !important;
        min-width: 108px !important;
        max-width: 108px !important;
    }

    .site-header .logo-icon .eveli-logo-full,
    .site-header.is-compact .logo-icon .eveli-logo-full {
        width: 106px !important;
        max-width: 106px !important;
    }

    .site-header .header-icon,
    .site-header .menu-toggle,
    .site-header.is-compact .header-icon,
    .site-header.is-compact .menu-toggle {
        flex-basis: 38px !important;
        width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        min-height: 38px !important;
    }
}

/* ==========================================================================
   EVE LI — FINAL HEADER / FOOTER PATTERN CONTRAST v5.5
   White background preserved.
   Geometric square/diamond artwork only is approximately 10–15% stronger.
   No dimensions, spacing, sticky behavior, navigation, search, or layout
   are changed here.
   ========================================================================== */

.site-header,
.footer-contact-container {
    background-color: #ffffff !important;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.40), rgba(255, 255, 255, 0.40)),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg'),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: auto, contain, contain !important;
    background-repeat: no-repeat, repeat, repeat !important;
    background-position: center, center top, center top !important;
    background-blend-mode: normal, multiply, normal !important;
}

.footer-bottom {
    background-color: #ffffff !important;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.40), rgba(255, 255, 255, 0.40)),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg'),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: auto, 700px auto, 700px auto !important;
    background-repeat: no-repeat, repeat, repeat !important;
    background-position: center, center top, center top !important;
    background-blend-mode: normal, multiply, normal !important;
}

/* ==========================================================================
   EVE LI — V1 FINAL MOBILE CATALOGUE REPAIR
   2026-09-21

   Scoped only to:
   - single-product mobile gallery controls/thumbnails
   - catalogue product-card image containment
   - non-home catalogue/category heroes
   - phone sticky Add to Cart / Select Options
   ========================================================================== */

/* Product gallery: the full-size presentation geometry remains the V1 layout.
   Only thumbnail access and arrow states are changed here. */
@media (max-width: 768px) {
    .single-product .product-gallery-column {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-x: clip;
    }

    .single-product .product-gallery-slider {
        width: 100% !important;
        max-width: 100% !important;
    }

    .single-product .product-gallery-slider .swiper-slide,
    .single-product .product-gallery-slider .swiper-slide img {
        max-width: 100% !important;
    }

    .single-product .product-secondary-images.mobile-thumbnails {
        width: 100% !important;
        max-width: 100% !important;
        margin: 25px auto 0 !important;
        padding: 0 16px 6px !important;
        box-sizing: border-box !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-padding-inline: 16px;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
    }

    .single-product .product-secondary-images.mobile-thumbnails .gallery-item-wrapper {
        flex: 0 0 70px !important;
        width: 70px !important;
        min-width: 70px !important;
        height: 70px !important;
    }

    .single-product .product-secondary-images.mobile-thumbnails img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        background: #fff !important;
    }

    .single-product .product-gallery-column.eveli-gallery-single-image .gallery-nav.gemstone-nav {
        display: none !important;
    }

    .single-product .gallery-prev.swiper-button-disabled,
    .single-product .gallery-next.swiper-button-disabled {
        opacity: 0.16 !important;
        pointer-events: none !important;
    }
}

/* Product cards: complete jewellery silhouette remains visible inside the card.
   The source image is also changed in content-product.php to an uncropped
   WordPress image size so CSS is not trying to "contain" an already-cropped
   WooCommerce thumbnail. */
@media (max-width: 991px) {
    .custom-shop-layout .product-card-image {
        padding: 7px !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .custom-shop-layout .product-card-image img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
}

/* Standard non-home catalogue/category heroes.
   Homepage is explicitly excluded. */
@media (max-width: 1024px) and (orientation: portrait) {
    body:not(.home) .custom-shop-layout > .home-hero,
    body:not(.home) .category-hierarchy-wrapper > .category-hero {
        width: 100% !important;
        height: 50vh !important;
        height: 50svh !important;
        min-height: 50vh !important;
        min-height: 50svh !important;
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}

@media (max-width: 1024px) and (orientation: landscape) {
    body:not(.home) .custom-shop-layout > .home-hero,
    body:not(.home) .category-hierarchy-wrapper > .category-hero {
        width: 100% !important;
        height: 100vh !important;
        height: 100svh !important;
        min-height: 100vh !important;
        min-height: 100svh !important;
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}

/* Larger touch-only tablets. A touchscreen laptop with a real hover pointer
   does not fall into this rule. */
@media (min-width: 1025px) and (max-width: 1400px) and (hover: none) and (pointer: coarse) and (orientation: portrait) {
    body:not(.home) .custom-shop-layout > .home-hero,
    body:not(.home) .category-hierarchy-wrapper > .category-hero {
        width: 100% !important;
        height: 50vh !important;
        height: 50svh !important;
        min-height: 50vh !important;
        min-height: 50svh !important;
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}

@media (min-width: 1025px) and (max-width: 1400px) and (hover: none) and (pointer: coarse) and (orientation: landscape) {
    body:not(.home) .custom-shop-layout > .home-hero,
    body:not(.home) .category-hierarchy-wrapper > .category-hero {
        width: 100% !important;
        height: 100vh !important;
        height: 100svh !important;
        min-height: 100vh !important;
        min-height: 100svh !important;
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}

/* Phone sticky cart: retain the existing JS trigger and WooCommerce actions,
   but stop the overlay consuming the entire bottom of the phone. */
@media (max-width: 768px) {
    .single-product .eveli-sticky-cart-bar {
        left: auto !important;
        right: 12px !important;
        bottom: max(12px, env(safe-area-inset-bottom)) !important;
        width: auto !important;
        max-width: calc(100vw - 24px) !important;
        min-width: 0 !important;
        padding: 0 !important;
        gap: 0 !important;
        justify-content: flex-end !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: translateY(calc(100% + 28px));
    }

    .single-product .eveli-sticky-cart-bar.is-visible {
        transform: translateY(0);
    }

    .single-product .eveli-sticky-cart-bar .sticky-cart-info {
        display: none !important;
    }

    .single-product .eveli-sticky-cart-bar .sticky-cart-action {
        width: auto !important;
        max-width: 100% !important;
    }

    .single-product .eveli-sticky-cart-bar .sticky-cart-action .button {
        width: auto !important;
        min-width: 0 !important;
        max-width: min(160px, calc(100vw - 24px)) !important;
        min-height: 42px !important;
        padding: 11px 14px !important;
        margin: 0 !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
        letter-spacing: 0.02em !important;
        white-space: nowrap !important;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.14) !important;
    }
}

/* ========================================================================== 
   EVE LI V1.2 — REFINED COMMERCE / SEARCH / FILTER / FOOTER UI
   Approved grouped redesign. 2026-09-24
   ========================================================================== */

/* 1. Header logo prominence — preserve the existing full logo asset. */
.site-header .header-center .custom-logo-link,
.site-header .header-center .site-logo,
.site-header .header-center .logo-icon {
    min-width: 140px;
}
.site-header .header-center .eveli-logo-full {
    width: 140px !important;
    max-width: 140px !important;
    height: auto !important;
}
@media (max-width: 900px) {
    .site-header .header-center .custom-logo-link,
    .site-header .header-center .site-logo,
    .site-header .header-center .logo-icon {
        min-width: 116px;
    }
    .site-header .header-center .eveli-logo-full {
        width: 116px !important;
        max-width: 116px !important;
    }
}

/* 2. Header item counts. */
.site-header .eveli-header-action {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}
.site-header .eveli-header-action .header-icon {
    position: relative;
    z-index: 2;
}
.site-header .eveli-cart-count,
.site-header .eveli-wishlist-counter-source .wishlist_products_counter_number {
    position: absolute !important;
    top: -6px !important;
    right: -7px !important;
    z-index: 4 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 16px !important;
    height: 16px !important;
    padding: 0 4px !important;
    border-radius: 999px !important;
    background: #2f2d2a !important;
    color: #fff !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 9px !important;
    font-weight: 500 !important;
    line-height: 16px !important;
    letter-spacing: 0 !important;
    box-sizing: border-box !important;
}
.site-header .eveli-cart-count[data-count="0"] {
    display: none !important;
}
.site-header .eveli-wishlist-counter-source {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
}
.site-header .eveli-wishlist-counter-source .wishlist_products_counter {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: transparent !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 0 !important;
}
.site-header .eveli-wishlist-counter-source .wishlist_products_counter_text,
.site-header .eveli-wishlist-counter-source .wishlist_products_counter:before {
    display: none !important;
}
.site-header .eveli-wishlist-counter-source .wishlist_products_counter_number:empty,
.site-header .eveli-wishlist-counter-source .wishlist_products_counter_number[data-count="0"] {
    display: none !important;
}


.site-header .eveli-wishlist-counter-source .wishlist_products_counter_number[data-count="0"] {
    display: none !important;
}

/* 3. Wishlist + Shopping Bag drawers. */
body.eveli-commerce-drawer-open {
    overflow: hidden !important;
}
.eveli-commerce-drawer-overlay {
    position: fixed;
    inset: 0;
    z-index: 100080;
    background: rgba(18, 17, 15, 0.32);
    opacity: 0;
    transition: opacity .25s ease;
}
.eveli-commerce-drawer-overlay.is-open {
    opacity: 1;
}
.eveli-commerce-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 100090;
    display: flex;
    flex-direction: column;
    width: min(430px, 94vw);
    height: 100dvh;
    background: #fff;
    box-shadow: -18px 0 42px rgba(0,0,0,.10);
    transform: translateX(102%);
    transition: transform .3s cubic-bezier(.2,.8,.2,1);
    visibility: hidden;
}
.eveli-commerce-drawer.is-open {
    transform: translateX(0);
    visibility: visible;
}
.eveli-commerce-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 82px;
    padding: 22px 26px;
    border-bottom: 1px solid #e9e7e2;
}
.eveli-commerce-drawer-header h2 {
    margin: 0 !important;
    color: #292826 !important;
    font-family: var(--font-heading, "Playfair Display", serif) !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    letter-spacing: .01em !important;
    text-transform: none !important;
}
.eveli-commerce-drawer-close {
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #333;
    font-size: 30px;
    font-weight: 200;
    line-height: 36px;
    cursor: pointer;
}
.eveli-commerce-drawer-body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 24px 26px;
    overflow-y: auto;
}
.eveli-commerce-drawer-footer {
    display: grid;
    gap: 10px;
    padding: 18px 26px max(22px, env(safe-area-inset-bottom));
    border-top: 1px solid #e9e7e2;
    background: #fff;
}
.eveli-drawer-primary-link,
.eveli-drawer-secondary-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 12px 18px;
    border: 1px solid #34322f;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .07em;
    text-transform: uppercase;
    text-decoration: none !important;
    cursor: pointer;
}
.eveli-drawer-primary-link {
    background: #34322f;
    color: #fff !important;
}
.eveli-drawer-secondary-link {
    background: #fff;
    color: #34322f !important;
}
.eveli-drawer-empty {
    padding: 46px 0;
    color: #6b6964;
    text-align: center;
}
.eveli-drawer-item {
    display: grid;
    grid-template-columns: 86px minmax(0,1fr);
    gap: 16px;
    padding: 0 0 20px;
    margin: 0 0 20px;
    border-bottom: 1px solid #ece9e3;
}
.eveli-drawer-item-image img {
    display: block;
    width: 86px !important;
    height: 86px !important;
    object-fit: contain !important;
    background: #faf9f7;
}
.eveli-drawer-item-copy h3 {
    margin: 2px 0 7px !important;
    color: #292826 !important;
    font-family: var(--font-heading, "Playfair Display", serif) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}
.eveli-drawer-item-meta,
.eveli-drawer-item-meta p {
    margin: 0 0 5px !important;
    color: #77736d !important;
    font-size: 11px !important;
}
.eveli-drawer-item-bottom,
.eveli-drawer-summary {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    color: #4a4844;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 12px;
}
.eveli-drawer-summary {
    padding-top: 2px;
    font-size: 13px;
}

/* Wishlist drawer: compress the TI Wishlist table into elegant previews. */
.eveli-wishlist-drawer-body .tinv-wishlist table thead,
.eveli-wishlist-drawer-body .tinv-wishlist table tfoot,
.eveli-wishlist-drawer-body .tinv-wishlist .product-cb,
.eveli-wishlist-drawer-body .tinv-wishlist .product-date,
.eveli-wishlist-drawer-body .tinv-wishlist .product-stock,
.eveli-wishlist-drawer-body .tinv-wishlist .product-action,
.eveli-wishlist-drawer-body .tinv-wishlist .social-buttons,
.eveli-wishlist-drawer-body .tinv-wishlist .tinvwl-to-left,
.eveli-wishlist-drawer-body .tinv-wishlist .tinvwl-to-right {
    display: none !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist table,
.eveli-wishlist-drawer-body .tinv-wishlist tbody {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item {
    display: grid !important;
    grid-template-columns: 76px minmax(0,1fr) 26px !important;
    gap: 14px !important;
    align-items: center !important;
    padding: 0 0 18px !important;
    margin: 0 0 18px !important;
    border: 0 !important;
    border-bottom: 1px solid #ece9e3 !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) {
    display: none !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist td {
    display: block !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail {
    grid-column: 1;
    grid-row: 1 / span 2;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img {
    width: 76px !important;
    height: 76px !important;
    object-fit: contain !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-name,
.eveli-wishlist-drawer-body .tinv-wishlist .product-price {
    grid-column: 2;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-name a {
    color: #292826 !important;
    font-family: var(--font-heading, "Playfair Display", serif) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-remove {
    grid-column: 3;
    grid-row: 1 / span 2;
}

/* 4 + 14. Full Wishlist page — quieter, editorial and consistent back link. */
body.eveli-wishlist-page #main-content .tinv-wishlist {
    max-width: 1220px;
    margin-left: auto;
    margin-right: auto;
}
body.eveli-wishlist-page #main-content .eveli-wishlist-back-to-shop,
.eveli-cart-page-tools .eveli-back-to-previous {
    display: inline-block !important;
    margin: 0 0 30px !important;
    padding: 0 0 4px !important;
    border: 0 !important;
    border-bottom: 1px solid #77736d !important;
    background: transparent !important;
    color: #55524e !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .075em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list {
    width: 100% !important;
    border: 0 !important;
    border-collapse: collapse !important;
    color: #34322f !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list thead th {
    padding: 13px 10px !important;
    border: 0 !important;
    border-bottom: 1px solid #dcd9d2 !important;
    background: transparent !important;
    color: #6d6963 !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item td {
    padding: 22px 10px !important;
    border: 0 !important;
    border-bottom: 1px solid #e8e5df !important;
    background: #fff !important;
    vertical-align: middle !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist .product-thumbnail img {
    width: 92px !important;
    height: 92px !important;
    object-fit: contain !important;
    background: #faf9f7 !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist .product-name a {
    color: #2f2d2a !important;
    font-family: var(--font-heading, "Playfair Display", serif) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist .product-price,
body.eveli-wishlist-page #main-content .tinv-wishlist .product-stock,
body.eveli-wishlist-page #main-content .tinv-wishlist .product-date {
    color: #65615c !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 12px !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist .product-stock .stock.in-stock {
    color: #50614c !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist .button,
body.eveli-wishlist-page #main-content .tinv-wishlist button {
    min-height: 40px !important;
    padding: 10px 16px !important;
    border: 1px solid #34322f !important;
    border-radius: 0 !important;
    background: #34322f !important;
    color: #fff !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}
body.eveli-wishlist-page #main-content .tinv-wishlist .product-remove button,
body.eveli-wishlist-page #main-content .tinv-wishlist .product-remove a {
    min-height: 0 !important;
    padding: 4px !important;
    border: 0 !important;
    background: transparent !important;
    color: #6f6b65 !important;
}
@media (max-width: 768px) {
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list thead {
        display: none !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list,
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tbody {
        display: block !important;
        width: 100% !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item {
        display: grid !important;
        grid-template-columns: 92px minmax(0,1fr) 28px !important;
        gap: 12px 16px !important;
        padding: 20px 0 !important;
        border-bottom: 1px solid #e8e5df !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item td {
        display: block !important;
        width: auto !important;
        padding: 0 !important;
        border: 0 !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-thumbnail { grid-column: 1; grid-row: 1 / span 4; }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-name,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-price,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-stock,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-action { grid-column: 2; }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-remove { grid-column: 3; grid-row: 1; }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-cb,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-date { display: none !important; }
}

/* 5. Shopping Bag page — clean editorial hierarchy. */
.woocommerce-cart .eveli-cart-page-tools {
    max-width: 1480px;
    margin: 30px auto 0;
    padding: 0 20px;
}
.woocommerce-cart .custom-cart-wrapper {
    gap: clamp(32px, 5vw, 76px) !important;
}
.woocommerce-cart .cart-item-row {
    border-color: #e7e4de !important;
}
.woocommerce-cart .item-title a,
.woocommerce-cart .totals-title,
.woocommerce-cart .summary-heading {
    color: #302e2b !important;
}
.woocommerce-cart .coupon-section {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    gap: 8px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}
.woocommerce-cart .coupon-section #coupon_code {
    min-height: 42px !important;
    padding: 10px 12px !important;
    border: 1px solid #d8d4cd !important;
    background: #fff !important;
    color: #34322f !important;
}
.woocommerce-cart .coupon-section .apply-coupon-btn,
.woocommerce-cart .update-cart-btn {
    min-height: 42px !important;
    padding: 10px 16px !important;
    border: 1px solid #34322f !important;
    background: #fff !important;
    color: #34322f !important;
    font-size: 10px !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}
.woocommerce-cart .cart_totals.eveli-order-summary {
    padding: clamp(24px, 3vw, 38px) !important;
    border: 1px solid #e3e0da !important;
    background: #fff !important;
    box-shadow: none !important;
}
.woocommerce-cart .cart_totals .totals-header,
.woocommerce-cart .cart_totals .shipping-info-row,
.woocommerce-cart .cart_totals .summary-row {
    border-color: #e8e5df !important;
}
.woocommerce-cart .cart_totals .totals-title {
    font-family: var(--font-heading, "Playfair Display", serif) !important;
    font-size: 25px !important;
    font-weight: 400 !important;
    text-transform: none !important;
}
.woocommerce-cart .cart_totals .discount-value {
    color: #5d5953 !important;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    margin-top: 24px !important;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions::before {
    content: "Express Checkout";
    order: 2;
    display: block;
    margin: 14px 0 2px;
    color: #77736d;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .08em;
    text-align: center;
    text-transform: uppercase;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button {
    order: 1 !important;
    min-height: 48px !important;
    margin: 0 !important;
    border: 1px solid #34322f !important;
    background: #34322f !important;
    color: #fff !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .075em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions > *:not(.checkout-button) {
    order: 3;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions iframe,
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions button,
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions [role="button"] {
    max-height: 46px;
}

/* 6 + 13. Product purchase area — one dominant action, quieter payments,
   single advisor action and expandable full details. */
.single-product .product-variations-wrapper .single_add_to_cart_button,
.single-product .product-variations-wrapper button.single_add_to_cart_button {
    min-height: 48px !important;
    border: 1px solid #34322f !important;
    background: #34322f !important;
    color: #fff !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}
.single-product .eveli-express-checkout-label {
    margin: 15px 0 6px !important;
    color: #77736d !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: .08em !important;
    text-align: left !important;
    text-transform: uppercase !important;
}
.single-product .eveli-express-payment-option {
    max-width: 100% !important;
    margin-top: 6px !important;
    opacity: .88;
}
.single-product .eveli-express-payment-option button,
.single-product .eveli-express-payment-option [role="button"],
.single-product .eveli-express-payment-option iframe {
    max-height: 44px !important;
}
.single-product .product-action-links--advisor {
    display: block !important;
    margin-top: 20px !important;
    padding-top: 17px !important;
    border-top: 1px solid #e7e4de !important;
    text-align: left !important;
}
.single-product .eveli-advisor-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    color: #4b4945 !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}
.single-product .eveli-glove-icon {
    width: 20px !important;
    height: 20px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}
.single-product .eveli-product-details-accordion {
    margin-top: 23px !important;
    border-top: 1px solid #e7e4de !important;
    border-bottom: 1px solid #e7e4de !important;
}
.single-product .eveli-product-details-accordion > summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 16px 0 !important;
    margin: 0 !important;
    list-style: none !important;
    color: #373532 !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}
.single-product .eveli-product-details-accordion > summary::-webkit-details-marker { display:none; }
.single-product .eveli-product-details-accordion[open] .eveli-accordion-symbol { transform: rotate(45deg); }
.single-product .eveli-accordion-symbol { transition: transform .2s ease; font-size: 18px; font-weight: 300; }
.single-product .eveli-product-details-accordion .details-content {
    padding: 0 0 20px !important;
    color: #5f5b56 !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}
.single-product .product-inquiry-toggle,
.single-product .product-inquiry-submit {
    border-color: #34322f !important;
    background: #34322f !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* 7. Compact unified Search — same drawer grows to contain results. */
body.eveli-search-open { overflow-x: hidden; }
.site-header .main-navigation .header-search-container { position: static !important; }
.site-header .main-navigation .eveli-search-trigger {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    cursor: pointer !important;
}
.site-header .main-navigation .header-search-form.active-search {
    position: absolute !important;
    top: calc(100% + 1px) !important;
    left: 50% !important;
    right: auto !important;
    z-index: 10050 !important;
    display: block !important;
    width: min(820px, calc(100vw - 48px)) !important;
    min-width: 0 !important;
    padding: 25px 28px 22px !important;
    transform: translateX(-50%) !important;
    overflow: visible !important;
    border: 1px solid #e6e3dd !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(30,28,24,.08) !important;
    box-sizing: border-box !important;
}
.site-header .main-navigation .header-search-form.active-search::before {
    content: "SEARCH EVE LI";
    display: block;
    margin: 0 42px 18px 0;
    color: #595651;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .1em;
}
.site-header .header-search-form .eveli-search-close {
    position: absolute !important;
    top: 14px !important;
    right: 18px !important;
    z-index: 2 !important;
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #4d4a45 !important;
    font-size: 27px !important;
    font-weight: 200 !important;
    line-height: 32px !important;
    cursor: pointer !important;
}
.site-header .main-navigation .header-search-form form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}
.site-header .main-navigation .header-search-form input[type="search"],
.site-header .main-navigation .header-search-form input[type="text"] {
    width: 100% !important;
    height: 42px !important;
    padding: 7px 36px 7px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #aaa69f !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #302e2b !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    letter-spacing: .015em !important;
    box-shadow: none !important;
}
.site-header .main-navigation .header-search-form form button:not(.eveli-search-close),
.site-header .main-navigation .header-search-form input[type="submit"] {
    display: none !important;
}
.site-header .main-navigation .header-search-form .eveli-search-suggestions {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    max-height: min(64vh, 520px) !important;
    margin: 17px 0 0 !important;
    padding: 18px 0 0 !important;
    overflow-y: auto !important;
    border: 0 !important;
    border-top: 1px solid #ece9e3 !important;
    background: #fff !important;
    box-shadow: none !important;
}
.site-header .eveli-search-suggestions .eveli-search-group-title,
.site-header .eveli-search-suggestions h3,
.site-header .eveli-search-suggestions h4 {
    color: #66625d !important;
}
.site-header .eveli-search-suggestions a,
.site-header .eveli-search-suggestions .eveli-search-suggestion {
    color: #302e2b !important;
}
@media (max-width: 768px) {
    .site-header .main-navigation .header-search-form.active-search {
        top: 100% !important;
        width: calc(100vw - 24px) !important;
        padding: 20px 18px 18px !important;
    }
}

/* 8. Filters — one neutral drawer control, closed by default. */
.custom-shop-layout .eveli-filter-toolbar.mobile-filter-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    width: 100% !important;
    margin: 22px 0 26px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}
.custom-shop-layout .eveli-filter-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 42px !important;
    padding: 10px 18px !important;
    border: 1px solid #77736d !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #34322f !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .075em !important;
    text-transform: uppercase !important;
}
.custom-shop-layout .eveli-filter-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    border-radius: 99px;
    background: #34322f;
    color: #fff;
    font-size: 9px;
}
.custom-shop-layout .shop-grid-container {
    grid-template-columns: minmax(0,1fr) !important;
}
.custom-shop-layout .shop-sidebar-filters {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 100070 !important;
    display: block !important;
    width: min(390px, 92vw) !important;
    height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 30px 28px max(30px, env(safe-area-inset-bottom)) !important;
    overflow-y: auto !important;
    transform: translateX(-102%) !important;
    transition: transform .3s cubic-bezier(.2,.8,.2,1) !important;
    border: 0 !important;
    background: #fff !important;
    box-shadow: 18px 0 42px rgba(0,0,0,.10) !important;
}
.custom-shop-layout .shop-sidebar-filters.is-open {
    transform: translateX(0) !important;
}

.custom-shop-layout .shop-sidebar-filters .sidebar-mobile-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 0 20px !important;
    padding: 0 0 17px !important;
    border-bottom: 1px solid #e5e2dc !important;
    color: #34322f !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 12px !important;
    letter-spacing: .08em !important;
}
.custom-shop-layout .shop-sidebar-filters .sidebar-close {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #4b4844 !important;
    font-size: 18px !important;
    cursor: pointer !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section:not(.active) > .filter-content {
    display: none;
}
.custom-shop-layout .shop-sidebar-filters .filter-section.active > .filter-content {
    display: block;
}
.custom-shop-layout .shop-sidebar-filters .eveli-filter-reset a {
    color: #77736d !important;
    font-size: 10px !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

.custom-shop-layout .shop-sidebar-filters .sidebar-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 20px !important;
    padding-bottom: 17px !important;
    border-bottom: 1px solid #e5e2dc !important;
}
.custom-shop-layout .shop-sidebar-filters .sidebar-header h3,
.custom-shop-layout .shop-sidebar-filters .filter-title {
    color: #34322f !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-weight: 400 !important;
    letter-spacing: .06em !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-title,
.custom-shop-layout .shop-sidebar-filters .filter-title * {
    color: #34322f !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section {
    border-bottom: 1px solid #e8e5df !important;
}
.custom-shop-layout .shop-sidebar-filters input[type="checkbox"],
.custom-shop-layout .shop-sidebar-filters input[type="radio"] {
    accent-color: #34322f !important;
}
.custom-shop-layout .shop-sidebar-filters a,
.custom-shop-layout .shop-sidebar-filters label,
.custom-shop-layout .shop-sidebar-filters .filter-option {
    color: #5a5752 !important;
}
.custom-shop-layout .shop-sidebar-filters .price-slider .ui-slider-range,
.custom-shop-layout .shop-sidebar-filters .ui-slider-range {
    background: #57534e !important;
}
.custom-shop-layout .shop-sidebar-filters .ui-slider-handle {
    border-color: #57534e !important;
    background: #fff !important;
}
.custom-shop-layout .filter-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100060 !important;
    display: block !important;
    visibility: hidden !important;
    opacity: 0 !important;
    background: rgba(18,17,15,.28) !important;
    transition: opacity .25s ease !important;
}
.custom-shop-layout .filter-backdrop.is-visible {
    visibility: visible !important;
    opacity: 1 !important;
}
body.filter-open {
    overflow: hidden !important;
}

/* 9 + 10. Footer — service/relationship navigation rather than repeat shopping navigation. */
.site-footer .footer-contact-container,
.site-footer .footer-bottom {
    color: #3e3b37;
}
.site-footer .footer-contact-title {
    color: #353330 !important;
}
.site-footer .footer-contact-left .gold-link,
.site-footer .footer-contact-right a {
    color: #4c4945 !important;
}
.site-footer .footer-signup-kicker {
    margin: 0 0 6px;
    color: #55514d;
    font-family: var(--font-body, "Josefin Sans", sans-serif);
    font-size: 10px;
    letter-spacing: .09em;
}
.site-footer .footer-signup-copy,
.site-footer .footer-follow-copy {
    color: #74706a;
    font-size: 13px;
    line-height: 1.55;
}
.site-footer .footer-main.footer-main--refined {
    grid-template-columns: 1.15fr 1fr 1fr .9fr !important;
    gap: clamp(28px, 5vw, 80px) !important;
}
.site-footer .footer-main--refined .footer-heading {
    color: #3c3935 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: .075em !important;
}
.site-footer .footer-main--refined a {
    color: #5d5954 !important;
}
.site-footer .footer-main--refined a:hover,
.site-footer .footer-main--refined a:focus-visible {
    color: #282725 !important;
}
.site-footer .footer-email-us {
    margin-top: 16px;
}
.site-footer .footer-email-us a {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #77736d;
}
.site-footer .footer-social--prominent {
    display: grid !important;
    gap: 10px !important;
}
.site-footer .footer-social--prominent a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    width: max-content;
    text-decoration: none !important;
}
.site-footer .footer-social--prominent img {
    width: 20px !important;
    height: 20px !important;
    object-fit: contain !important;
    filter: grayscale(1) contrast(.8) !important;
}
.site-footer .footer-social--prominent span {
    font-size: 12px;
    letter-spacing: .03em;
}
@media (max-width: 900px) {
    .site-footer .footer-main.footer-main--refined {
        grid-template-columns: 1fr 1fr !important;
    }
}
@media (max-width: 560px) {
    .site-footer .footer-main.footer-main--refined {
        grid-template-columns: 1fr !important;
    }
}

/* 11. Geometric pattern seam — one continuous cover layer, not multiple
   independently tiled/scaled layers. */
.site-header,
.footer-contact-container,
.footer-bottom {
    background-color: #fff !important;
    background-image:
        linear-gradient(rgba(255,255,255,.64), rgba(255,255,255,.64)),
        url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/WhatsApp-Image-2026-05-01-at-1.00.02-AM.jpeg') !important;
    background-size: auto, contain !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center, center center !important;
    background-blend-mode: normal, multiply !important;
}

/* 12. Sapphire mobile hero — explicit class supplied by archive-product.php. */
@media (max-width: 1024px) and (orientation: portrait) {
    body:not(.home) .custom-shop-layout > .home-hero.eveli-hero-term-sapphire {
        width: 100% !important;
        height: 50vh !important;
        height: 50svh !important;
        min-height: 50vh !important;
        min-height: 50svh !important;
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}
@media (max-width: 1024px) and (orientation: landscape) {
    body:not(.home) .custom-shop-layout > .home-hero.eveli-hero-term-sapphire {
        width: 100% !important;
        height: 100vh !important;
        height: 100svh !important;
        min-height: 100vh !important;
        min-height: 100svh !important;
        aspect-ratio: auto !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}

/* Keep visually hidden bot honeypots truly out of the layout. */
.eveli-guard-honeypot {
    position: absolute !important;
    left: -99999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}



/* ==========================================================================\n   EVE LI V1.2.1 — REVIEW CORRECTIONS\n   Approved review batch. 2026-09-24\n   ========================================================================== */
:root {
    --eveli-action-grey: #625f5a;
    --eveli-action-grey-hover: #514e4a;
}

/* Softer EVE LI-owned CTA system. Branded wallet/gateway buttons are untouched. */
.site-header .eveli-cart-count,
.site-header .eveli-wishlist-counter-source .wishlist_products_counter_number,
.eveli-drawer-primary-link,
body.eveli-wishlist-page #main-content .tinv-wishlist .button,
body.eveli-wishlist-page #main-content .tinv-wishlist button:not(.product-remove button),
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button,
.single-product .product-variations-wrapper .single_add_to_cart_button,
.single-product .product-variations-wrapper button.single_add_to_cart_button,
.single-product .product-inquiry-toggle,
.single-product .product-inquiry-submit {
    border-color: var(--eveli-action-grey) !important;
    background: var(--eveli-action-grey) !important;
    color: #fff !important;
}
.eveli-drawer-primary-link:hover,
.eveli-drawer-primary-link:focus-visible,
body.eveli-wishlist-page #main-content .tinv-wishlist .button:hover,
body.eveli-wishlist-page #main-content .tinv-wishlist button:not(.product-remove button):hover,
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button:hover,
.single-product .product-variations-wrapper .single_add_to_cart_button:hover,
.single-product .product-inquiry-toggle:hover,
.single-product .product-inquiry-submit:hover {
    border-color: var(--eveli-action-grey-hover) !important;
    background: var(--eveli-action-grey-hover) !important;
}

/* TI Wishlist confirmation is superseded by the EVE LI right-hand drawer. */
.tinv-modal.tinvwl_added_to_wishlist,
.tinv-modal.tinvwl_created_wishlist,
.tinv-modal:has(.tinvwl_added_to_wishlist),
.tinv-modal:has(.tinvwl_created_wishlist) {
    display: none !important;
}

/* Approved concierge/service-bell treatment. */
.single-product .eveli-advisor-icon {
    width: 20px !important;
    height: 20px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.25 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    flex: 0 0 20px;
}

/* Checkout typography: one heading family + one body family throughout. */
.woocommerce-checkout .checkout-progress-wrapper,
.woocommerce-checkout .custom-checkout-grid,
.woocommerce-checkout .checkout-step,
.woocommerce-checkout .order-summary-column {
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
}
.woocommerce-checkout .checkout-step p,
.woocommerce-checkout .checkout-step label,
.woocommerce-checkout .checkout-step input,
.woocommerce-checkout .checkout-step select,
.woocommerce-checkout .checkout-step textarea,
.woocommerce-checkout .checkout-step button,
.woocommerce-checkout .checkout-step a,
.woocommerce-checkout .step-summary-block,
.woocommerce-checkout .summary-label,
.woocommerce-checkout .summary-value,
.woocommerce-checkout .proceed-btn,
.woocommerce-checkout .checkout-guest-link,
.woocommerce-checkout .order-summary-column,
.woocommerce-checkout .order-summary-column *:not(h1):not(h2):not(h3):not(.product-name) {
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
}
.woocommerce-checkout .step-text,
.woocommerce-checkout .step-title-text,
.woocommerce-checkout .summary-heading,
.woocommerce-checkout .order-summary-column h1,
.woocommerce-checkout .order-summary-column h2,
.woocommerce-checkout .order-summary-column h3,
.woocommerce-checkout .order-summary-column .product-name {
    font-family: var(--font-heading, "Playfair Display", serif) !important;
    font-weight: 400 !important;
}

/* Approved shop-filter layout: reserved left rail + sticky long/slim control. */
@media (min-width: 901px) {
    .custom-shop-layout .eveli-shop-layout-shell {
        display: grid !important;
        grid-template-columns: 210px minmax(0, 1fr) !important;
        column-gap: clamp(28px, 3vw, 48px) !important;
        align-items: start !important;
        position: relative !important;
    }
    .custom-shop-layout .eveli-filter-toolbar.mobile-filter-bar {
        grid-column: 1 !important;
        position: sticky !important;
        top: 138px !important;
        z-index: 120 !important;
        width: 100% !important;
        margin: 22px 0 0 !important;
        align-self: start !important;
    }
    .custom-shop-layout .eveli-filter-toggle {
        width: 100% !important;
        min-height: 39px !important;
        justify-content: space-between !important;
        padding: 9px 16px !important;
        border-color: #8b8781 !important;
        background: #fff !important;
        color: #45423e !important;
        font-size: 11px !important;
        letter-spacing: .09em !important;
    }
    .custom-shop-layout .shop-grid-container {
        grid-column: 2 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        margin-top: 22px !important;
    }
    .custom-shop-layout .filter-backdrop {
        grid-column: 1 / -1 !important;
    }
}
@media (max-width: 900px) {
    .custom-shop-layout .eveli-shop-layout-shell {
        display: block !important;
    }
}

/* Filter accordions: one arrow system everywhere. Closed = up; open = down. */
.custom-shop-layout .shop-sidebar-filters .toggle-arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    transform: none !important;
    color: #5b5752 !important;
}
.custom-shop-layout .shop-sidebar-filters .toggle-arrow img {
    display: none !important;
}
.custom-shop-layout .shop-sidebar-filters .toggle-arrow::before {
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-right: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
    transform: rotate(225deg); /* closed: up */
    transition: transform .2s ease;
}
.custom-shop-layout .shop-sidebar-filters .filter-section.active .toggle-arrow {
    transform: none !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section.active .toggle-arrow::before {
    transform: rotate(45deg); /* open: down */
}

/* ==========================================================================
   EVE LI V1.2.2 — LATEST CTA / FILTER / LOGO SPACING CORRECTIONS
   Built on V1.2.1. 2026-09-24
   ========================================================================== */
:root {
    --eveli-primary-purple: #8f839d;
    --eveli-primary-purple-hover: #7d718b;
    --eveli-primary-purple-border: #8f839d;
    --eveli-sticky-filter-top-desktop: 118px;
    --eveli-sticky-filter-top-mobile: 88px;
}

/* Header + footer logo spacing: tighten the visible lockup without making it dominant again. */
.site-header .header-top {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}
.site-header .header-center .custom-logo-link,
.site-header .header-center .site-logo,
.site-footer .footer-logo,
.site-footer .footer-logo .logo-icon {
    line-height: 0 !important;
}
.site-header .header-center .site-logo {
    gap: 0 !important;
}
.site-header .logo-icon {
    overflow: hidden !important;
    min-width: 144px !important;
    height: 80px !important;
}
.site-header .logo-icon .eveli-logo-full {
    width: auto !important;
    max-width: 148px !important;
    height: 80px !important;
    object-fit: contain !important;
    object-position: center center !important;
}
.site-header.is-compact .logo-icon {
    min-width: 40px !important;
    height: 40px !important;
}
.site-header.is-compact .logo-icon .eveli-logo-mark {
    width: 30px !important;
    height: 30px !important;
}
.site-footer .footer-logo {
    margin-bottom: 14px !important;
}
.site-footer .footer-logo .logo-icon {
    overflow: hidden !important;
    min-width: 122px !important;
    height: 72px !important;
}
.site-footer .footer-main-container .logo-icon img {
    max-width: 136px !important;
    height: 72px !important;
    object-fit: contain !important;
    object-position: left center !important;
}

/* Shop/category page filter bar: keep the dedicated rail and keep the control visible under the banner/header. */
.custom-shop-layout .woocommerce-products-header {
    margin-bottom: 10px !important;
}
@media (min-width: 901px) {
    .custom-shop-layout .eveli-shop-layout-shell {
        display: grid !important;
        grid-template-columns: 220px minmax(0, 1fr) !important;
        column-gap: clamp(28px, 3vw, 48px) !important;
        align-items: start !important;
    }
    .custom-shop-layout .eveli-filter-toolbar.mobile-filter-bar {
        display: flex !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        align-self: start !important;
        position: sticky !important;
        top: var(--eveli-sticky-filter-top-desktop) !important;
        z-index: 150 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        text-align: left !important;
    }
    .custom-shop-layout .eveli-filter-toggle {
        width: 100% !important;
        min-height: 42px !important;
        padding: 10px 16px !important;
        justify-content: space-between !important;
    }
    .custom-shop-layout .shop-grid-container {
        grid-column: 2 !important;
        grid-row: 1 !important;
        margin-top: 0 !important;
        min-width: 0 !important;
    }
}
@media (max-width: 900px) {
    .custom-shop-layout .eveli-shop-layout-shell {
        display: block !important;
    }
    .custom-shop-layout .eveli-filter-toolbar.mobile-filter-bar {
        display: block !important;
        position: sticky !important;
        top: var(--eveli-sticky-filter-top-mobile) !important;
        z-index: 150 !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
        background: transparent !important;
        text-align: left !important;
    }
    .custom-shop-layout .eveli-filter-toggle {
        display: inline-flex !important;
        width: min(240px, 100%) !important;
        min-height: 42px !important;
        justify-content: space-between !important;
        padding: 10px 16px !important;
    }
    .custom-shop-layout .shop-grid-container {
        margin-top: 0 !important;
    }
}

/* Approved dusty-purple CTA system for selected primary actions only. */
.eveli-drawer-primary-link,
body.eveli-wishlist-page #main-content .tinv-wishlist .button,
body.eveli-wishlist-page #main-content .tinv-wishlist button:not(.product-remove button),
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button,
.single-product .product-variations-wrapper .single_add_to_cart_button,
.single-product .product-variations-wrapper button.single_add_to_cart_button,
.footer-signup-form button,
.eveli-newsletter-submit {
    border-color: var(--eveli-primary-purple-border) !important;
    background: var(--eveli-primary-purple) !important;
    color: #fff !important;
}
.eveli-drawer-primary-link:hover,
.eveli-drawer-primary-link:focus-visible,
body.eveli-wishlist-page #main-content .tinv-wishlist .button:hover,
body.eveli-wishlist-page #main-content .tinv-wishlist button:not(.product-remove button):hover,
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button:focus-visible,
.single-product .product-variations-wrapper .single_add_to_cart_button:hover,
.single-product .product-variations-wrapper button.single_add_to_cart_button:hover,
.single-product .product-variations-wrapper .single_add_to_cart_button:focus-visible,
.footer-signup-form button:hover,
.footer-signup-form button:focus-visible,
.eveli-newsletter-submit:hover,
.eveli-newsletter-submit:focus-visible {
    border-color: var(--eveli-primary-purple-hover) !important;
    background: var(--eveli-primary-purple-hover) !important;
    color: #fff !important;
}

/* Keep neutral controls neutral. */
.custom-shop-layout .eveli-filter-toggle,
.eveli-drawer-secondary-link,
.single-product .custom-wishlist-icon,
.single-product .product-action-links a,
.single-product .product-action-links .sep,
.footer-contact-left .gold-link,
.site-footer .footer-main--refined a {
    filter: none;
}

/* ==========================================================================
   EVE LI V1.2.3 — FILTER STICKINESS + SHOPPING BAG REDESIGN
   Approved correction batch. 2026-09-24
   ========================================================================== */
:root {
    --eveli-filter-sticky-top: 150px;
}

/* FILTERS: scroll normally until it meets the bottom edge of the live header,
   then remain pinned there. The value is measured by eveli-responsive-ui.js. */
@media (min-width: 901px) {
    .custom-shop-layout .eveli-shop-layout-shell {
        grid-template-columns: 220px minmax(0, 1fr) !important;
        align-items: start !important;
        overflow: visible !important;
    }
    .custom-shop-layout .eveli-filter-toolbar.mobile-filter-bar {
        position: sticky !important;
        top: var(--eveli-filter-sticky-top, 150px) !important;
        align-self: start !important;
        margin: 0 !important;
        z-index: 150 !important;
    }
    .custom-shop-layout .shop-grid-container {
        margin-top: 0 !important;
    }
}
@media (max-width: 900px) {
    .custom-shop-layout .eveli-filter-toolbar.mobile-filter-bar {
        position: sticky !important;
        top: var(--eveli-filter-sticky-top, 96px) !important;
        z-index: 150 !important;
        margin: 0 0 16px !important;
    }
}

/* Shopping Bag heading and overall composition. */
.woocommerce-cart .custom-cart-header-container,
.woocommerce-cart .eveli-cart-page-tools,
.woocommerce-cart .custom-cart-wrapper {
    max-width: 1480px !important;
}
.woocommerce-cart .custom-cart-header-container {
    padding: 0 28px !important;
}
.woocommerce-cart .cart-custom-heading {
    margin: 58px 0 8px !important;
    font-family: var(--font-heading) !important;
    font-size: clamp(36px, 3vw, 50px) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
    letter-spacing: 0 !important;
}
.woocommerce-cart .eveli-cart-heading-count {
    color: #9a9691 !important;
    font-family: var(--font-body) !important;
    font-size: .44em !important;
    font-weight: 300 !important;
    vertical-align: .28em !important;
}
.woocommerce-cart .eveli-cart-page-tools {
    margin: 0 auto 18px !important;
    padding: 0 28px !important;
}
.woocommerce-cart .eveli-back-to-previous {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #4d4944 !important;
    font-family: var(--font-body) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .065em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border-bottom: 1px solid #8f8a83 !important;
    padding-bottom: 3px !important;
}

.woocommerce-cart .custom-cart-wrapper.eveli-shopping-bag-layout {
    grid-template-columns: minmax(0, 1.65fr) minmax(360px, .78fr) !important;
    gap: clamp(50px, 6vw, 94px) !important;
    padding: 20px 28px 80px !important;
    align-items: start !important;
}
.woocommerce-cart .eveli-shopping-bag-items {
    min-width: 0 !important;
}

/* Product rows: jewellery first, transactional information second. */
.woocommerce-cart .eveli-bag-item {
    display: grid !important;
    grid-template-columns: 190px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 28px !important;
    padding: 34px 0 !important;
    border-bottom: 1px solid #e8e5df !important;
}
.woocommerce-cart .eveli-bag-item:first-of-type {
    padding-top: 16px !important;
}
.woocommerce-cart .eveli-bag-item__image {
    width: 190px !important;
    height: 190px !important;
    flex: none !important;
    background: #fbfaf8 !important;
    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
}
.woocommerce-cart .eveli-bag-item__image a {
    display: grid !important;
    width: 100% !important;
    height: 100% !important;
    place-items: center !important;
}
.woocommerce-cart .eveli-bag-item__image img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: 0 !important;
}
.woocommerce-cart .eveli-bag-item__details {
    min-width: 0 !important;
    padding: 0 !important;
}
.woocommerce-cart .eveli-bag-item__heading {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 24px !important;
    align-items: start !important;
}
.woocommerce-cart .eveli-bag-item__title {
    margin: 0 !important;
    line-height: 1.13 !important;
}
.woocommerce-cart .eveli-bag-item__title a {
    color: #2f2c29 !important;
    font-family: var(--font-heading) !important;
    font-size: clamp(23px, 1.65vw, 29px) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
}
.woocommerce-cart .eveli-bag-item__collection {
    margin: 7px 0 0 !important;
    color: #858079 !important;
    font-family: var(--font-body) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
}
.woocommerce-cart .eveli-bag-item__price,
.woocommerce-cart .eveli-bag-item__price .woocommerce-Price-amount,
.woocommerce-cart .eveli-bag-item__price .woocommerce-Price-currencySymbol {
    color: #47433f !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important;
}

.woocommerce-cart .eveli-bag-item__specs {
    display: grid !important;
    gap: 5px !important;
    margin: 24px 0 18px !important;
    padding: 0 !important;
}
.woocommerce-cart .eveli-bag-spec-row {
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 16px !important;
    margin: 0 !important;
}
.woocommerce-cart .eveli-bag-spec-row dt,
.woocommerce-cart .eveli-bag-spec-row dd {
    margin: 0 !important;
    padding: 0 !important;
    color: #4f4b46 !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    line-height: 1.5 !important;
}
.woocommerce-cart .eveli-bag-spec-row dt {
    color: #2f2c29 !important;
    font-weight: 400 !important;
}
.woocommerce-cart .eveli-bag-spec-row--variation dd .variation,
.woocommerce-cart .eveli-bag-spec-row--variation dd dl,
.woocommerce-cart .eveli-bag-spec-row--variation dd p {
    margin: 0 !important;
}
.woocommerce-cart .eveli-bag-spec-row--variation dd dt {
    display: none !important;
}
.woocommerce-cart .eveli-bag-spec-row--variation dd dd {
    display: inline !important;
}

.woocommerce-cart .eveli-bag-item__delivery {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin: 0 0 19px !important;
    color: #5b5752 !important;
    font-family: var(--font-body) !important;
    font-size: 12.5px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
}
.woocommerce-cart .eveli-bag-delivery-icon {
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 22px !important;
}
.woocommerce-cart .eveli-bag-delivery-icon svg {
    width: 22px !important;
    height: 22px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.woocommerce-cart .eveli-bag-item__actions {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
}
.woocommerce-cart .eveli-bag-item__actions > * {
    position: relative !important;
    margin: 0 16px 0 0 !important;
    padding: 0 16px 0 0 !important;
}
.woocommerce-cart .eveli-bag-item__actions > *:not(:last-child)::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    width: 1px !important;
    height: 13px !important;
    background: #d8d4ce !important;
    transform: translateY(-50%) !important;
}
.woocommerce-cart .eveli-bag-item__actions a,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button {
    color: #4b4742 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
    font-family: var(--font-body) !important;
    font-size: 10.5px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    letter-spacing: .07em !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    text-transform: uppercase !important;
}
.woocommerce-cart .eveli-cart-save-later .tinv-wraper,
.woocommerce-cart .eveli-cart-save-later .tinv-wishlist {
    margin: 0 !important;
    padding: 0 !important;
    display: inline !important;
}
.woocommerce-cart .eveli-cart-save-later .tinvwl-tooltip,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button::before {
    display: none !important;
}

/* Order Summary: calm hierarchy; prices are information, not decoration. */
.woocommerce-cart .eveli-shopping-bag-summary {
    position: sticky !important;
    top: calc(var(--eveli-filter-sticky-top, 150px) + 4px) !important;
    align-self: start !important;
}
.woocommerce-cart .cart_totals.eveli-order-summary {
    display: block !important;
    width: 100% !important;
    padding: 34px 34px 30px !important;
    border: 1px solid #e3e0da !important;
    background: #fbfaf8 !important;
    box-shadow: none !important;
    font-family: var(--font-body) !important;
}
.woocommerce-cart .cart_totals .totals-header {
    display: block !important;
    margin-bottom: 24px !important;
    padding-bottom: 22px !important;
    border-bottom: 1px solid #dfdcd6 !important;
}
.woocommerce-cart .cart_totals .totals-title {
    color: #302d29 !important;
    font-family: var(--font-heading) !important;
    font-size: 30px !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
    text-transform: none !important;
}
.woocommerce-cart .eveli-summary-lines {
    display: grid !important;
    gap: 8px !important;
}
.woocommerce-cart .cart_totals .summary-row,
.woocommerce-cart .cart_totals .shipping-info-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 18px !important;
    align-items: baseline !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #4c4843 !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 300 !important;
}
.woocommerce-cart .cart_totals .summary-row .value,
.woocommerce-cart .cart_totals .summary-row .woocommerce-Price-amount,
.woocommerce-cart .cart_totals .shipping-info-row .value,
.woocommerce-cart .cart_totals .shipping-info-row .woocommerce-Price-amount {
    color: #45413d !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    white-space: nowrap !important;
}
.woocommerce-cart .eveli-estimated-total-row {
    margin-top: 16px !important;
    padding: 18px 0 !important;
    border-top: 1px solid #dfdcd6 !important;
    border-bottom: 1px solid #dfdcd6 !important;
}
.woocommerce-cart .eveli-estimated-total-row .label {
    color: #302d29 !important;
    font-family: var(--font-heading) !important;
    font-size: 20px !important;
    font-weight: 400 !important;
}
.woocommerce-cart .eveli-estimated-total-row .value,
.woocommerce-cart .eveli-estimated-total-row .woocommerce-Price-amount {
    color: #36322e !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
}
.woocommerce-cart .eveli-summary-promo {
    margin-top: 22px !important;
}
.woocommerce-cart .eveli-summary-promo-title {
    margin-bottom: 8px !important;
    color: #4c4843 !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}
.woocommerce-cart .coupon-section {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
}
.woocommerce-cart .coupon-section #coupon_code {
    min-width: 0 !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    border: 1px solid #d8d4cd !important;
    background: #fff !important;
    color: #44403c !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
}
.woocommerce-cart .coupon-section .apply-coupon-btn {
    min-height: 44px !important;
    padding: 10px 18px !important;
    border: 1px solid #77716b !important;
    background: #fff !important;
    color: #3f3b37 !important;
    font-family: var(--font-body) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions {
    margin-top: 24px !important;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button {
    min-height: 52px !important;
    border-color: var(--eveli-primary-purple) !important;
    background: var(--eveli-primary-purple) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions .checkout-button:focus-visible {
    border-color: var(--eveli-primary-purple-hover) !important;
    background: var(--eveli-primary-purple-hover) !important;
}
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions::before {
    content: "OR" !important;
    margin: 12px 0 2px !important;
    color: #827d76 !important;
    font-size: 9px !important;
    letter-spacing: .08em !important;
}

.woocommerce-cart .eveli-bag-service-notes {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin-top: 26px !important;
    padding-top: 22px !important;
    border-top: 1px solid #dfdcd6 !important;
}
.woocommerce-cart .eveli-bag-service-note {
    display: grid !important;
    place-items: center !important;
    align-content: start !important;
    gap: 7px !important;
    min-height: 58px !important;
    padding: 0 10px !important;
    color: #68635d !important;
    font-family: var(--font-body) !important;
    font-size: 8.5px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    letter-spacing: .06em !important;
    text-align: center !important;
    text-transform: uppercase !important;
}
.woocommerce-cart .eveli-bag-service-note + .eveli-bag-service-note {
    border-left: 1px solid #dfdcd6 !important;
}
.woocommerce-cart .eveli-service-icon {
    color: #6e6963 !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

/* Keep hidden update mechanics out of sight; quantity is deliberately fixed at one. */
.woocommerce-cart .update-cart-btn,
.woocommerce-cart button[name="update_cart"] {
    display: none !important;
}

@media (max-width: 1100px) {
    .woocommerce-cart .custom-cart-wrapper.eveli-shopping-bag-layout {
        grid-template-columns: minmax(0, 1.45fr) minmax(330px, .85fr) !important;
        gap: 34px !important;
    }
    .woocommerce-cart .eveli-bag-item {
        grid-template-columns: 150px minmax(0, 1fr) !important;
        gap: 22px !important;
    }
    .woocommerce-cart .eveli-bag-item__image {
        width: 150px !important;
        height: 150px !important;
    }
}

@media (max-width: 900px) {
    .woocommerce-cart .custom-cart-wrapper.eveli-shopping-bag-layout {
        grid-template-columns: 1fr !important;
        gap: 34px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
    .woocommerce-cart .custom-cart-header-container,
    .woocommerce-cart .eveli-cart-page-tools {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
    .woocommerce-cart .eveli-shopping-bag-summary {
        position: static !important;
    }
}

@media (max-width: 600px) {
    .woocommerce-cart .cart-custom-heading {
        margin-top: 34px !important;
        font-size: 34px !important;
    }
    .woocommerce-cart .eveli-bag-item {
        grid-template-columns: 106px minmax(0, 1fr) !important;
        gap: 16px !important;
        padding: 24px 0 !important;
    }
    .woocommerce-cart .eveli-bag-item__image {
        width: 106px !important;
        height: 126px !important;
    }
    .woocommerce-cart .eveli-bag-item__heading {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
    }
    .woocommerce-cart .eveli-bag-item__title a {
        font-size: 20px !important;
    }
    .woocommerce-cart .eveli-bag-item__price,
    .woocommerce-cart .eveli-bag-item__price .woocommerce-Price-amount {
        font-size: 13px !important;
    }
    .woocommerce-cart .eveli-bag-item__specs {
        margin-top: 16px !important;
    }
    .woocommerce-cart .eveli-bag-spec-row {
        grid-template-columns: 76px minmax(0, 1fr) !important;
        gap: 10px !important;
    }
    .woocommerce-cart .eveli-bag-spec-row dt,
    .woocommerce-cart .eveli-bag-spec-row dd {
        font-size: 11.5px !important;
    }
    .woocommerce-cart .eveli-bag-item__delivery {
        font-size: 11px !important;
    }
    .woocommerce-cart .cart_totals.eveli-order-summary {
        padding: 26px 20px 24px !important;
    }
    .woocommerce-cart .eveli-bag-service-notes {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
    .woocommerce-cart .eveli-bag-service-note + .eveli-bag-service-note {
        border-left: 0 !important;
        border-top: 1px solid #e2ded8 !important;
        padding-top: 12px !important;
    }
}

/* ==========================================================================
   EVE LI V1.2.4 — SHOPPING BAG REPAIR + CLEAN COLLAPSED FILTER DRAWER
   Only the two approved corrections in this pass. 2026-09-24
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Shopping Bag repair
   - prevent the title margin from collapsing underneath the sticky header
   - keep the item action links on one clean line
   - preserve the approved editorial layout / restrained price hierarchy
   -------------------------------------------------------------------------- */
.woocommerce-cart .custom-cart-header-container {
    box-sizing: border-box !important;
    padding-top: clamp(34px, 3vw, 52px) !important;
}
.woocommerce-cart .cart-custom-heading {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}
.woocommerce-cart .eveli-cart-page-tools {
    margin-top: 0 !important;
    margin-bottom: 24px !important;
}

.woocommerce-cart .eveli-bag-item__actions {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}
.woocommerce-cart .eveli-bag-item__actions > * {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}
.woocommerce-cart .eveli-bag-item__actions a,
.woocommerce-cart .eveli-cart-save-later,
.woocommerce-cart .eveli-cart-save-later .tinv-wraper,
.woocommerce-cart .eveli-cart-save-later .tinv-wishlist,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist-text,
.woocommerce-cart .eveli-cart-save-later .tinvwl-txt {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button {
    line-height: 1.4 !important;
}
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button::before,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button::after,
.woocommerce-cart .eveli-cart-save-later .tinvwl-tooltip {
    display: none !important;
}

/* Make sure the approved product row has sufficient horizontal room before it
   ever considers wrapping the actions. */
.woocommerce-cart .eveli-bag-item__details {
    overflow: visible !important;
}

@media (max-width: 600px) {
    .woocommerce-cart .custom-cart-header-container {
        padding-top: 28px !important;
    }
    .woocommerce-cart .eveli-bag-item__actions {
        flex-wrap: wrap !important;
        row-gap: 8px !important;
    }
}

/* --------------------------------------------------------------------------
   2. Filter drawer cleanup
   - drawer always opens with PRICE / CATEGORIES / METAL / GEMSTONES /
     COLLECTIONS collapsed
   - one clean separator rhythm; no lines through headings
   - consistent title / chevron alignment
   -------------------------------------------------------------------------- */
.custom-shop-layout .shop-sidebar-filters {
    padding: 28px 28px max(30px, env(safe-area-inset-bottom)) !important;
}
.custom-shop-layout .shop-sidebar-filters .sidebar-mobile-header {
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 0 18px !important;
    border-bottom: 1px solid #dedbd5 !important;
}
.custom-shop-layout .shop-sidebar-filters .eveli-filter-reset {
    margin: 0 !important;
    padding: 18px 0 !important;
    border-bottom: 1px solid #e4e1db !important;
}
.custom-shop-layout .shop-sidebar-filters .eveli-filter-reset a {
    display: inline-block !important;
    line-height: 1.35 !important;
}
.custom-shop-layout .shop-sidebar-filters #shop-filter-form {
    margin: 0 !important;
    padding: 0 !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #e4e1db !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-title {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 18px 2px !important;
    border: 0 !important;
    background: transparent !important;
    line-height: 1.15 !important;
    cursor: pointer !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-title::before,
.custom-shop-layout .shop-sidebar-filters .filter-title::after {
    display: none !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-title .toggle-arrow {
    flex: 0 0 18px !important;
    margin-left: 18px !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-content {
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 2px 0 20px !important;
    border: 0 !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section:not(.active) > .filter-content {
    display: none !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section.active > .filter-content {
    display: block;
}

/* Maintain the previously approved chevron convention: closed = up, open = down. */
.custom-shop-layout .shop-sidebar-filters .filter-section:not(.active) .toggle-arrow::before {
    transform: rotate(225deg) !important;
}
.custom-shop-layout .shop-sidebar-filters .filter-section.active .toggle-arrow::before {
    transform: rotate(45deg) !important;
}

/* ==========================================================================
   EVE LI V1.2.5 — SHOPPING BAG ACTION-LINK SPACING ONLY
   2026-09-24
   ========================================================================== */
.woocommerce-cart .eveli-bag-item__actions {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    column-gap: 26px !important;
    row-gap: 0 !important;
    white-space: nowrap !important;
}

/* Let flex gap control the spacing. Remove older margin/padding separators that
   could collapse around the TI Wishlist wrapper. */
.woocommerce-cart .eveli-bag-item__actions > * {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}
.woocommerce-cart .eveli-bag-item__actions > *::after {
    display: none !important;
    content: none !important;
}

.woocommerce-cart .eveli-bag-item__actions .eveli-cart-edit,
.woocommerce-cart .eveli-bag-item__actions .eveli-cart-save-later,
.woocommerce-cart .eveli-bag-item__actions .product-remove,
.woocommerce-cart .eveli-bag-item__actions .remove {
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-cart .eveli-cart-save-later,
.woocommerce-cart .eveli-cart-save-later .tinv-wraper,
.woocommerce-cart .eveli-cart-save-later .tinv-wishlist,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist_button,
.woocommerce-cart .eveli-cart-save-later .tinvwl_add_to_wishlist-text,
.woocommerce-cart .eveli-cart-save-later .tinvwl-txt {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}

@media (max-width: 600px) {
    .woocommerce-cart .eveli-bag-item__actions {
        flex-wrap: wrap !important;
        column-gap: 20px !important;
        row-gap: 8px !important;
    }
}

/* ========================================================================== 
   EVE LI — PRE-LIVE MEMBER / NEWSLETTER FUNCTIONAL LAYER
   2026-09-27
   ========================================================================== */

/* Footer newsletter stays email-first; visible bot verification sits beneath it. */
.footer-signup-form {
    flex-wrap: wrap;
    align-items: flex-start;
}

.eveli-footer-newsletter-security {
    flex: 0 0 100%;
    width: 100%;
    margin-top: 10px;
}

.footer-signup-form .eveli-turnstile-slot {
    margin: 4px 0 0;
}

#newsletter-message {
    position: static !important;
    margin-top: 10px;
    line-height: 1.45;
}

/* Confirmation / activation result shown after following an email link. */
.eveli-site-notice {
    position: fixed;
    top: calc(var(--eveli-sticky-header-height, 110px) + 14px);
    left: 50%;
    transform: translateX(-50%);
    z-index: 100500;
    width: min(620px, calc(100vw - 32px));
    box-sizing: border-box;
    padding: 15px 46px 15px 18px;
    border: 1px solid #d9d5ce;
    background: #fff;
    color: #2b2926;
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.10);
    font-family: "Josefin Sans", sans-serif;
    font-size: 15px;
    line-height: 1.5;
}

.eveli-site-notice--error {
    border-color: #b66a62;
}

.eveli-site-notice-close {
    position: absolute;
    top: 6px;
    right: 10px;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #403d38;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}

.eveli-account-woocommerce .eveli-turnstile-slot {
    margin: 14px 0 20px;
}

.eveli-account-woocommerce .eveli-confirm-password-field {
    margin-top: 0;
}

@media (max-width: 640px) {
    .eveli-site-notice {
        top: calc(var(--eveli-sticky-header-height, 86px) + 10px);
        font-size: 14px;
    }
}

/* ==========================================================================
   EVE LI V1.2.8 — NON-PAYMENT UX REVISION
   Enquiries, account consistency, password visibility, quieter product price.
   ========================================================================== */

/* Product-page hierarchy: price supports the design rather than dominating it. */
.single-product .product-price-large,
.single-product .product-price-large .woocommerce-Price-amount,
.single-product .product-price-large .woocommerce-Price-currencySymbol,
.single-product .woocommerce-variation-price span {
    font-family: var(--font-body) !important;
    font-size: 24px !important;
    font-weight: 300 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.025em !important;
    color: #38342f !important;
}

.single-product .product-price-large {
    margin-top: 8px !important;
    margin-bottom: 18px !important;
}

@media (max-width: 768px) {
    .single-product .product-price-large,
    .single-product .product-price-large .woocommerce-Price-amount,
    .single-product .product-price-large .woocommerce-Price-currencySymbol,
    .single-product .woocommerce-variation-price span {
        font-size: 21px !important;
    }
}

/* Global customer enquiry drawer. */
.eveli-enquiry-overlay {
    position: fixed;
    inset: 0;
    z-index: 100090;
    background: rgba(16, 15, 13, 0.58);
    backdrop-filter: blur(1px);
}

.eveli-enquiry-overlay[hidden] {
    display: none !important;
}

.eveli-enquiry-drawer {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 100091;
    width: min(560px, 40vw);
    min-width: 440px;
    height: 100dvh;
    background: #ffffff;
    transform: translateX(102%);
    transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
    overflow-y: auto;
    overscroll-behavior: contain;
    box-shadow: -18px 0 60px rgba(0, 0, 0, 0.12);
}

.eveli-enquiry-drawer.is-open {
    transform: translateX(0);
}

body.eveli-enquiry-open {
    overflow: hidden;
}

.eveli-enquiry-drawer-inner {
    padding: 44px 46px 58px;
}

.eveli-enquiry-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(25, 23, 20, 0.14);
}

.eveli-enquiry-drawer-header h2 {
    margin: 0 !important;
    font-family: var(--font-body) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    letter-spacing: 0.16em !important;
    line-height: 1.2 !important;
    color: #1f1d1a !important;
}

.eveli-enquiry-close {
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #4f4a44;
    font-family: Arial, sans-serif;
    font-size: 30px;
    font-weight: 200;
    line-height: 1;
    cursor: pointer;
}

.eveli-enquiry-intro {
    margin: 28px 0 30px !important;
    max-width: 430px;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.7 !important;
    color: #645e57 !important;
}

.eveli-enquiry-product {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 17px;
    align-items: center;
    margin: 0 0 30px;
    padding: 14px 0 18px;
    border-top: 1px solid rgba(25, 23, 20, 0.10);
    border-bottom: 1px solid rgba(25, 23, 20, 0.10);
}

.eveli-enquiry-product[hidden] {
    display: none !important;
}

.eveli-enquiry-product img {
    width: 78px;
    height: 78px;
    object-fit: cover;
    background: #f7f4ef;
}

.eveli-enquiry-product-kicker,
.eveli-enquiry-product strong,
.eveli-enquiry-product span {
    display: block;
}

.eveli-enquiry-product-kicker {
    margin-bottom: 5px;
    font-family: var(--font-body);
    font-size: 9px;
    letter-spacing: 0.18em;
    color: #b47d17;
}

.eveli-enquiry-product strong {
    margin-bottom: 5px;
    font-family: var(--font-heading);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;
    color: #24211e;
}

#eveli-enquiry-product-meta {
    font-family: var(--font-body);
    font-size: 11px;
    color: #777068;
}

.eveli-enquiry-known-client {
    margin: 0 0 28px;
    padding: 17px 0 19px;
    border-top: 1px solid rgba(25, 23, 20, 0.10);
    border-bottom: 1px solid rgba(25, 23, 20, 0.10);
}

.eveli-enquiry-known-client > span,
.eveli-enquiry-known-client > strong {
    display: block;
}

.eveli-enquiry-known-label {
    margin-bottom: 7px;
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: 0.17em;
    color: #b47d17;
}

.eveli-enquiry-known-client strong {
    margin-bottom: 4px;
    font-family: var(--font-heading);
    font-size: 21px;
    font-weight: 400;
    color: #24211e;
}

.eveli-enquiry-known-client > span:not(.eveli-enquiry-known-label) {
    font-family: var(--font-body);
    font-size: 12px;
    color: #777068;
}

.eveli-enquiry-client-fields.is-collapsed {
    display: none;
}

.eveli-enquiry-field {
    display: block;
    margin: 0 0 24px;
}

.eveli-enquiry-field > span {
    display: block;
    margin-bottom: 9px;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    color: #292622;
}

.eveli-enquiry-field > span em {
    font-style: normal;
    font-weight: 300;
    color: #8a837b;
}

.eveli-enquiry-field input,
.eveli-enquiry-field select,
.eveli-enquiry-field textarea {
    width: 100%;
    min-height: 45px;
    box-sizing: border-box;
    padding: 10px 0 9px;
    border: 0;
    border-bottom: 1px solid rgba(34, 31, 28, 0.25);
    border-radius: 0;
    outline: none;
    background: transparent;
    box-shadow: none;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 300;
    color: #26231f;
}

.eveli-enquiry-field textarea {
    min-height: 150px;
    resize: vertical;
    line-height: 1.65;
}

.eveli-enquiry-field input:focus,
.eveli-enquiry-field select:focus,
.eveli-enquiry-field textarea:focus {
    border-bottom-color: #b47d17;
}

.eveli-enquiry-message-field {
    margin-top: 4px;
}

.eveli-enquiry-form-message {
    min-height: 20px;
    margin: 0 0 14px;
    font-family: var(--font-body);
    font-size: 12px;
    line-height: 1.5;
}

.eveli-enquiry-form-message.is-error {
    color: #9c312b;
}

.eveli-enquiry-submit {
    width: 100%;
    min-height: 52px;
    margin-top: 6px;
    border: 1px solid #27231f;
    background: #ffffff;
    color: #27231f;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.20em;
    cursor: pointer;
    transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.eveli-enquiry-submit:hover,
.eveli-enquiry-submit:focus-visible {
    border-color: #b47d17;
    background: #b47d17;
    color: #ffffff;
    outline: none;
}

.eveli-enquiry-submit:disabled {
    opacity: .55;
    cursor: wait;
}

.eveli-enquiry-privacy {
    margin: 16px 0 0 !important;
    font-family: var(--font-body) !important;
    font-size: 11px !important;
    font-weight: 300 !important;
    line-height: 1.6 !important;
    color: #8a837b !important;
}

.eveli-enquiry-privacy a {
    color: #b47d17;
    text-decoration: none;
    border-bottom: 1px solid rgba(180, 125, 23, .42);
}

.eveli-enquiry-success {
    padding: 80px 8px 30px;
    text-align: center;
}

.eveli-enquiry-success-mark {
    display: block;
    margin-bottom: 22px;
    font-size: 24px;
    color: #b47d17;
}

.eveli-enquiry-success h3 {
    margin: 0 0 12px !important;
    font-family: var(--font-heading) !important;
    font-size: 34px !important;
    font-weight: 400 !important;
    color: #24211e !important;
}

.eveli-enquiry-success p {
    margin: 0 auto !important;
    max-width: 360px;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.7 !important;
    color: #6a645d !important;
}

@media (max-width: 900px) {
    .eveli-enquiry-drawer {
        width: min(620px, 72vw);
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .eveli-enquiry-drawer {
        width: 100%;
        min-width: 0;
    }

    .eveli-enquiry-drawer-inner {
        padding: 30px 24px 44px;
    }

    .eveli-enquiry-drawer-header h2 {
        font-size: 15px !important;
    }
}

/* Customer password controls: both Password and Confirm Password use the same eye. */
.eveli-account-woocommerce .password-input,
.woocommerce-account .password-input,
.woocommerce-checkout .password-input {
    position: relative;
    display: block;
}

.eveli-account-woocommerce .show-password-input,
.woocommerce-account .show-password-input,
.woocommerce-checkout .show-password-input {
    display: none !important;
}

.eveli-password-toggle {
    position: absolute;
    right: 2px;
    top: 50%;
    width: 34px;
    height: 34px;
    padding: 7px;
    border: 0;
    background: transparent;
    color: #5d5750;
    transform: translateY(-50%);
    cursor: pointer;
}

.eveli-password-toggle svg {
    display: block;
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.45;
}

.eveli-account-woocommerce .password-input input,
.woocommerce-account .password-input input,
.woocommerce-checkout .password-input input {
    padding-right: 42px !important;
}

/* Normalize WooCommerce account/reset typography to the existing EVE LI system. */
.woocommerce-account .woocommerce,
.woocommerce-account .woocommerce p,
.woocommerce-account .woocommerce label,
.woocommerce-account .woocommerce input,
.woocommerce-account .woocommerce select,
.woocommerce-account .woocommerce textarea,
.woocommerce-account .woocommerce button,
.woocommerce-account .woocommerce a {
    font-family: var(--font-body);
}

.woocommerce-account .woocommerce h1,
.woocommerce-account .woocommerce h2,
.woocommerce-account .woocommerce h3,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
    font-family: var(--font-heading) !important;
    font-weight: 400 !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300;
    line-height: 1.7;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: .11em !important;
}

.woocommerce-lost-password.woocommerce-account .woocommerce,
.woocommerce-account.woocommerce-lost-password .woocommerce {
    max-width: 650px !important;
    padding-top: 70px !important;
    padding-bottom: 70px !important;
}

.woocommerce-lost-password .woocommerce p,
.woocommerce-account .woocommerce-ResetPassword p {
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: #514c46;
}

.woocommerce-lost-password .woocommerce form,
.woocommerce-account form.woocommerce-ResetPassword {
    border: 0 !important;
    padding: 0 !important;
}

.woocommerce-lost-password .woocommerce label,
.woocommerce-account .woocommerce-ResetPassword label {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #292622 !important;
}

.woocommerce-lost-password .woocommerce input.input-text,
.woocommerce-account .woocommerce-ResetPassword input.input-text {
    width: 100% !important;
    min-height: 45px !important;
    padding: 10px 42px 9px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(34,31,28,.28) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
}

.woocommerce-lost-password .woocommerce button.button,
.woocommerce-account .woocommerce-ResetPassword button.button {
    min-height: 50px !important;
    padding: 12px 28px !important;
    border: 1px solid #111111 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    color: #111111 !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

.woocommerce-lost-password .woocommerce button.button:hover,
.woocommerce-account .woocommerce-ResetPassword button.button:hover {
    background: #111111 !important;
    color: #ffffff !important;
}

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
}

#eveli-enquiry-product-link {
    display: inline-block;
    margin-top: 7px;
    font-family: var(--font-body);
    font-size: 10px;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: #8a5f0f;
    text-decoration: none;
    border-bottom: 1px solid rgba(138,95,15,.35);
}

#eveli-enquiry-product-link[hidden] {
    display: none !important;
}


/* ========================================================================== 
   EVE LI V1.2.9 — FINAL NON-PAYMENT / CHECKOUT PRESENTATION PASS
   Larger header lockup, faster World of Colour, quieter Turnstile, unified
   checkout presentation, required shipping phone and refined product price.
   ========================================================================== */

/* Header lockup: +25% desktop scale without enlarging navigation. */
@media (min-width: 769px) {
    .site-header:not(.is-compact) .logo-icon {
        min-width: 180px !important;
        height: 100px !important;
    }
    .site-header:not(.is-compact) .logo-icon .eveli-logo-full {
        width: auto !important;
        max-width: 185px !important;
        height: 100px !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
    .site-header:not(.is-compact) .header-top {
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }
}
@media (max-width: 768px) {
    .site-header:not(.is-compact) .logo-icon {
        min-width: 148px !important;
        height: 88px !important;
    }
    .site-header:not(.is-compact) .logo-icon .eveli-logo-full {
        width: auto !important;
        max-width: 160px !important;
        height: 88px !important;
    }
}

/* A World of Colour: side stones can be previewed on hover without changing selection. */
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover {
    opacity: 1 !important;
    transform: scale(1.015) !important;
    z-index: 2;
}
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover .gemstone-image {
    transform: none !important;
}
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover .gemstone-image::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    width: 118%;
    height: 118%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255,250,238,.78) 0%, rgba(255,250,238,.38) 40%, rgba(255,255,255,0) 72%);
    pointer-events: none;
}
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover .gemstone-image img {
    filter: brightness(1.03) saturate(1.02) drop-shadow(0 8px 14px rgba(189,130,16,.06)) !important;
}
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover .gemstone-title {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    transition-delay: 0s !important;
}
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover .gemstone-title::after {
    content: "" !important;
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-gold);
}
body.home .home-gemstones--world-colour .gemstone-item:not(.is-world-colour-lit):hover .gemstone-title::before {
    content: "" !important;
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%);
    width: 16px;
    height: 16px;
    background-image: url('https://mlzpiaml5i9s.i.optimole.com/mlzpiaml5i9s-evelico-style/w:auto/h:auto/q:auto/https://eveli.co.uk/wp-content/uploads/2026/04/Logo-1.png');
    background-size: contain;
    background-repeat: no-repeat;
}

/* Turnstile now uses interaction-only appearance; remove empty layout footprint. */
.eveli-turnstile-slot {
    margin: 0 !important;
    min-height: 0 !important;
}
.eveli-turnstile-slot iframe {
    max-width: 100%;
}

/* Product price remains information, not the visual headline. */
.single-product .product-price-large,
.single-product .product-price-large .woocommerce-Price-amount,
.single-product .product-price-large .woocommerce-Price-currencySymbol,
.single-product .woocommerce-variation-price span {
    font-size: 22px !important;
    font-weight: 300 !important;
    letter-spacing: .02em !important;
    color: #45413d !important;
}
@media (max-width: 768px) {
    .single-product .product-price-large,
    .single-product .product-price-large .woocommerce-Price-amount,
    .single-product .product-price-large .woocommerce-Price-currencySymbol,
    .single-product .woocommerce-variation-price span {
        font-size: 20px !important;
    }
}

/* Checkout: coherent EVE LI hierarchy and spacing. */
.woocommerce-checkout .custom-checkout-grid,
.woocommerce-checkout .checkout-main-content,
.woocommerce-checkout .checkout-sidebar,
.woocommerce-checkout .checkout-step,
.woocommerce-checkout .step-summary-block,
.woocommerce-checkout .payment-step-content,
.woocommerce-checkout .custom-checkout-review-order {
    font-family: var(--font-body) !important;
    color: var(--color-black) !important;
}
.woocommerce-checkout .step-title-text,
.woocommerce-checkout .checkout-subheading,
.woocommerce-checkout .checkout-field-group-title,
.woocommerce-checkout .summary-title,
.woocommerce-checkout .summary-heading,
.woocommerce-checkout .box-heading,
.woocommerce-checkout #payment .payment_method_title,
.woocommerce-checkout #payment label {
    font-family: var(--font-heading) !important;
    font-weight: 400 !important;
    color: var(--color-black) !important;
}
.woocommerce-checkout .step-title-text {
    font-size: clamp(27px, 2.2vw, 34px) !important;
    line-height: 1.15 !important;
    margin: 0 0 18px !important;
}
.woocommerce-checkout .checkout-subheading {
    margin: 0 0 8px !important;
    font-size: 25px !important;
    line-height: 1.2 !important;
}
.woocommerce-checkout .checkout-helper-text {
    margin: 0 0 24px !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: #65615d !important;
}
.woocommerce-checkout .checkout-field-group-title {
    margin: 0 0 8px !important;
    font-size: 20px !important;
}
.woocommerce-checkout .checkout-step label,
.woocommerce-checkout .checkout-step .form-row,
.woocommerce-checkout .checkout-step input,
.woocommerce-checkout .checkout-step select,
.woocommerce-checkout .checkout-step textarea,
.woocommerce-checkout .checkout-sidebar,
.woocommerce-checkout .checkout-sidebar *:not(h1):not(h2):not(h3) {
    font-family: var(--font-body) !important;
}
.woocommerce-checkout .checkout-step label {
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: .015em !important;
}
.woocommerce-checkout .checkout-step .input-text,
.woocommerce-checkout .checkout-step select,
.woocommerce-checkout .checkout-step textarea,
.woocommerce-checkout .select2-container--default .select2-selection--single {
    font-size: 15px !important;
    color: #2d2a28 !important;
}
.woocommerce-checkout .custom-tan-box {
    background: #faf8f4 !important;
    border: 1px solid #ece7dd !important;
}
.woocommerce-checkout .summary-label,
.woocommerce-checkout .summary-value,
.woocommerce-checkout .edit-step-link {
    font-family: var(--font-body) !important;
}
.woocommerce-checkout .edit-step-link,
.woocommerce-checkout .lost_password a {
    color: var(--eveli-primary-purple) !important;
}

/* Primary checkout actions use the established dusty-purple system. */
.woocommerce-checkout .proceed-btn,
.woocommerce-checkout .step-btn.proceed-btn,
.woocommerce-checkout #place_order,
.woocommerce-checkout button#place_order,
.woocommerce-checkout .woocommerce-checkout-payment .button.alt {
    background: var(--eveli-primary-purple) !important;
    border: 1px solid var(--eveli-primary-purple-border) !important;
    color: #fff !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    padding: 16px 34px !important;
    min-height: 48px !important;
    box-shadow: none !important;
}
.woocommerce-checkout .proceed-btn:hover,
.woocommerce-checkout .proceed-btn:focus-visible,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus-visible,
.woocommerce-checkout .woocommerce-checkout-payment .button.alt:hover {
    background: var(--eveli-primary-purple-hover) !important;
    border-color: var(--eveli-primary-purple-hover) !important;
    color: #fff !important;
}

/* Guest checkout is a clear secondary path rather than a faint text link. */
.woocommerce-checkout .eveli-guest-checkout-choice {
    margin-top: 24px;
    text-align: center;
}
.woocommerce-checkout .eveli-guest-checkout-separator {
    display: block;
    margin-bottom: 12px;
    font-family: var(--font-body);
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #8a8681;
}
.woocommerce-checkout .eveli-guest-checkout-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 13px 28px;
    border: 1px solid var(--eveli-primary-purple) !important;
    background: #fff !important;
    color: var(--eveli-primary-purple) !important;
    text-decoration: none !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.woocommerce-checkout .eveli-guest-checkout-button:hover,
.woocommerce-checkout .eveli-guest-checkout-button:focus-visible {
    background: #f7f4f9 !important;
    color: var(--eveli-primary-purple-hover) !important;
    border-color: var(--eveli-primary-purple-hover) !important;
}
.woocommerce-checkout .eveli-checkout-step-actions {
    margin-top: 30px;
    text-align: center;
}
.woocommerce-checkout .eveli-guest-verification-error {
    margin-top: 14px;
    padding: 12px 14px;
    border: 1px solid #d8b6b0;
    background: #fff8f6;
    color: #7a3127;
    font-size: 13px;
    line-height: 1.55;
}

/* Shipping phone selector. */
.woocommerce-checkout .eveli-shipping-phone-section {
    margin-top: 26px;
    padding-top: 24px;
    border-top: 1px solid #ece7dd;
}
.woocommerce-checkout .eveli-shipping-phone-choice {
    display: grid;
    gap: 10px;
    margin: 14px 0 18px;
}
.woocommerce-checkout .eveli-shipping-phone-choice label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    cursor: pointer;
}
.woocommerce-checkout .eveli-shipping-phone-choice input[type="radio"] {
    accent-color: var(--eveli-primary-purple);
}
.woocommerce-checkout #eveli-shipping-phone-field-wrap[hidden] {
    display: none !important;
}

/* Payment methods: neutral luxury surface; gateway-specific wallet buttons remain branded. */
.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-payment {
    background: transparent !important;
}
.woocommerce-checkout #payment ul.payment_methods {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}
.woocommerce-checkout #payment ul.payment_methods > li {
    list-style: none !important;
    margin: 0 0 12px !important;
    padding: 18px 20px !important;
    border: 1px solid #e7e2da !important;
    background: #fff !important;
}
.woocommerce-checkout #payment ul.payment_methods > li:has(input:checked) {
    border-color: var(--eveli-primary-purple) !important;
    background: #fbf9fc !important;
}
.woocommerce-checkout #payment ul.payment_methods input[type="radio"] {
    accent-color: var(--eveli-primary-purple);
    margin-right: 10px !important;
}
.woocommerce-checkout #payment .payment_box {
    background: #faf8f4 !important;
    color: #5b5752 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}
.woocommerce-checkout #payment .payment_box::before {
    border-bottom-color: #faf8f4 !important;
}
.woocommerce-checkout .eveli-express-checkout-region:empty {
    display: none;
}
.woocommerce-checkout .eveli-express-checkout-region {
    margin: 0 auto 28px;
    max-width: 1120px;
}

@media (max-width: 640px) {
    .woocommerce-checkout .step-title-text { font-size: 28px !important; }
    .woocommerce-checkout .checkout-subheading { font-size: 23px !important; }
    .woocommerce-checkout .proceed-btn,
    .woocommerce-checkout #place_order,
    .woocommerce-checkout .eveli-guest-checkout-button {
        width: 100% !important;
    }
}


/* ========================================================================
   EVE LI V1.2.10 — MEMBER / NEWSLETTER LIFECYCLE + ACCOUNT POLISH
   ======================================================================== */

/* Password visibility: guarantee room for the eye on all account contexts. */
.eveli-myaccount-auth .password-input,
.eveli-close-membership-form .password-input {
    position: relative;
    display: block;
    width: 100%;
}

.eveli-myaccount-auth .password-input input,
.eveli-close-membership-form .password-input input {
    padding-right: 44px !important;
}

.eveli-password-toggle:hover,
.eveli-password-toggle:focus-visible {
    color: var(--eveli-primary-purple, #8f839d);
    outline: none;
}

/* Standalone My Account authentication page: full-page version of the drawer. */
.woocommerce-account .woocommerce:has(.eveli-myaccount-auth) {
    width: min(760px, calc(100% - 48px));
    max-width: 760px !important;
    margin: 72px auto 96px !important;
}

.eveli-myaccount-auth {
    width: 100%;
    box-sizing: border-box;
    padding: 54px 64px 60px;
    border: 1px solid #e7e4e0;
    background: #ffffff;
}

.eveli-myaccount-page-heading {
    max-width: 540px;
    margin: 0 auto 34px;
    text-align: center;
}

.eveli-myaccount-kicker,
.eveli-account-section-kicker,
.eveli-preferences-kicker {
    display: block;
    margin-bottom: 12px;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 2.1px;
    text-transform: uppercase;
    color: #8b8580;
}

.eveli-myaccount-page-heading h1 {
    margin: 0 0 13px;
    font-family: var(--font-heading) !important;
    font-size: 36px !important;
    line-height: 1.15;
    font-weight: 400 !important;
}

.eveli-myaccount-page-heading p {
    margin: 0;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.65;
    color: #66615d;
}

.eveli-myaccount-page-tabs {
    display: flex;
    justify-content: center;
    gap: 38px;
    margin: 0 0 42px;
    border-bottom: 1px solid #dfdcd8;
}

.eveli-page-account-tab {
    appearance: none;
    border: 0;
    border-bottom: 1px solid transparent;
    margin: 0 0 -1px;
    padding: 0 0 13px;
    background: transparent;
    font-family: var(--font-body);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 1.35px;
    text-transform: uppercase;
    color: #7b7672;
    cursor: pointer;
}

.eveli-page-account-tab.is-active {
    border-bottom-color: #111111;
    color: #111111;
}

.eveli-myaccount-auth .u-columns,
.eveli-myaccount-auth .col2-set {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

.eveli-myaccount-auth .u-column1,
.eveli-myaccount-auth .u-column2,
.eveli-myaccount-auth .col-1,
.eveli-myaccount-auth .col-2 {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Full page uses tabs; only the selected form is shown. */
.woocommerce-account .woocommerce > .eveli-myaccount-auth .u-column1,
.woocommerce-account .woocommerce > .eveli-myaccount-auth .u-column2 {
    display: none !important;
}

.woocommerce-account .woocommerce > .eveli-myaccount-auth .u-column1.eveli-active-panel,
.woocommerce-account .woocommerce > .eveli-myaccount-auth .u-column2.eveli-active-panel {
    display: block !important;
}

.eveli-myaccount-auth form.login,
.eveli-myaccount-auth form.register {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.eveli-myaccount-auth form > h2,
.eveli-myaccount-auth .u-column1 > h2,
.eveli-myaccount-auth .u-column2 > h2 {
    margin: 0 0 30px !important;
    font-family: var(--font-heading) !important;
    font-size: 30px !important;
    font-weight: 400 !important;
}

.eveli-myaccount-auth .form-row {
    width: 100% !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
}

.eveli-myaccount-auth label {
    display: block;
    margin: 0 0 8px;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.45;
    color: #222222;
}

.eveli-myaccount-auth input[type="text"],
.eveli-myaccount-auth input[type="email"],
.eveli-myaccount-auth input[type="password"],
.eveli-myaccount-auth input[type="tel"],
.eveli-myaccount-auth select {
    width: 100% !important;
    min-height: 48px !important;
    box-sizing: border-box;
    padding: 8px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #cfcac5 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    color: #111111 !important;
}

.eveli-myaccount-auth input:focus,
.eveli-myaccount-auth select:focus {
    border-bottom-color: var(--color-gold) !important;
    outline: none !important;
}

.eveli-myaccount-auth .eveli-title-options {
    margin-bottom: 4px;
}

.eveli-myaccount-auth .woocommerce-form-login__rememberme {
    display: flex !important;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px !important;
}

.eveli-myaccount-auth .woocommerce-form-login__rememberme input {
    width: auto !important;
    min-height: 0 !important;
}

.eveli-myaccount-auth button.woocommerce-button,
.eveli-myaccount-auth button.woocommerce-Button {
    display: block;
    width: 100%;
    min-height: 52px;
    margin: 8px 0 18px !important;
    padding: 14px 22px !important;
    border: 1px solid var(--eveli-primary-purple, #8f839d) !important;
    border-radius: 0 !important;
    background: var(--eveli-primary-purple, #8f839d) !important;
    color: #ffffff !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.eveli-myaccount-auth button.woocommerce-button:hover,
.eveli-myaccount-auth button.woocommerce-Button:hover,
.eveli-myaccount-auth button.woocommerce-button:focus-visible,
.eveli-myaccount-auth button.woocommerce-Button:focus-visible {
    border-color: var(--eveli-primary-purple-hover, #7d718b) !important;
    background: var(--eveli-primary-purple-hover, #7d718b) !important;
}

.eveli-myaccount-auth .lost_password {
    margin: 10px 0 0 !important;
    text-align: center;
}

.eveli-myaccount-auth .lost_password a {
    color: #6b6662 !important;
    text-underline-offset: 4px;
}

/* Drawer reuses the template but keeps its existing compact drawer chrome. */
.eveli-account-woocommerce .eveli-myaccount-page-heading,
.eveli-account-woocommerce .eveli-myaccount-page-tabs {
    display: none !important;
}

.eveli-account-woocommerce .eveli-myaccount-auth {
    padding: 0;
    border: 0;
    background: transparent;
}

.eveli-account-woocommerce .eveli-myaccount-auth .u-column1,
.eveli-account-woocommerce .eveli-myaccount-auth .u-column2 {
    display: none !important;
}

.eveli-account-woocommerce .eveli-myaccount-auth .u-column1.eveli-active-panel,
.eveli-account-woocommerce .eveli-myaccount-auth .u-column2.eveli-active-panel {
    display: block !important;
}

/* Close membership endpoint. */
.eveli-close-membership-panel {
    max-width: 680px;
}

.eveli-close-membership-panel h2 {
    margin: 0 0 15px !important;
    font-family: var(--font-heading) !important;
    font-size: 30px !important;
}

.eveli-close-membership-panel > p {
    margin: 0 0 32px !important;
    max-width: 620px;
    color: #625d59;
}

.eveli-close-membership-form {
    max-width: 560px;
    padding-top: 8px;
}

.eveli-close-membership-form .form-row {
    margin-bottom: 24px !important;
}

.eveli-close-membership-form input[type="password"] {
    width: 100%;
    min-height: 48px;
    padding: 8px 44px 8px 0 !important;
    border: 0;
    border-bottom: 1px solid #cfcac5;
    border-radius: 0;
    background: transparent;
    font-family: var(--font-body);
    font-size: 16px;
}

.eveli-close-membership-confirm {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    margin: 0 0 28px !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    line-height: 1.55;
    color: #57524e;
}

.eveli-close-membership-confirm input {
    flex: 0 0 auto;
    margin-top: 4px;
}

.eveli-close-membership-button {
    min-width: 210px;
    min-height: 50px;
    border: 1px solid #3a3430 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    color: #3a3430 !important;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.eveli-close-membership-button:hover,
.eveli-close-membership-button:focus-visible {
    background: #3a3430 !important;
    color: #ffffff !important;
}

/* Newsletter preference / unsubscribe confirmation page. */
.eveli-preferences-page {
    min-height: 58vh;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 84px 24px 110px;
    background: #ffffff;
}

.eveli-preferences-card {
    width: min(620px, 100%);
    padding: 52px 56px 56px;
    box-sizing: border-box;
    border: 1px solid #e6e1dc;
    text-align: center;
}

.eveli-preferences-card h1 {
    margin: 0 0 18px;
    font-size: 36px !important;
    line-height: 1.18;
}

.eveli-preferences-card p {
    margin: 0 auto 30px;
    max-width: 500px;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 300;
    line-height: 1.7;
    color: #625d59;
}

.eveli-preferences-primary {
    min-width: 210px;
    min-height: 50px;
    padding: 13px 28px;
    border: 1px solid var(--eveli-primary-purple, #8f839d);
    border-radius: 0;
    background: var(--eveli-primary-purple, #8f839d);
    color: #ffffff;
    font-family: var(--font-body);
    font-size: 13px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    cursor: pointer;
}

.eveli-preferences-secondary {
    display: block;
    width: max-content;
    margin: 24px auto 0;
    font-family: var(--font-body);
    font-size: 13px;
    color: #6f6a66;
    text-decoration: underline;
    text-underline-offset: 4px;
}

/* Site notices can now contain one clear next action. */
.eveli-site-notice-action {
    flex: 0 0 auto;
    margin-left: 18px;
    padding-bottom: 2px;
    border-bottom: 1px solid currentColor;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .35px;
    color: var(--eveli-primary-purple, #8f839d);
    text-decoration: none;
}

@media (max-width: 760px) {
    .woocommerce-account .woocommerce:has(.eveli-myaccount-auth) {
        width: calc(100% - 28px);
        margin: 34px auto 68px !important;
    }

    .eveli-myaccount-auth {
        padding: 38px 24px 44px;
    }

    .eveli-myaccount-page-heading h1,
    .eveli-preferences-card h1 {
        font-size: 30px !important;
    }

    .eveli-myaccount-page-tabs {
        gap: 22px;
    }

    .eveli-page-account-tab {
        font-size: 12px;
        letter-spacing: 1px;
    }

    .eveli-preferences-page {
        padding: 42px 14px 72px;
    }

    .eveli-preferences-card {
        padding: 38px 24px 42px;
    }

    .eveli-site-notice-action {
        display: inline-block;
        margin: 8px 30px 0 0;
    }
}

/* ========================================================================
   EVE LI V1.2.12 — CHECKOUT REFINEMENT + CALMER PRICE HIERARCHY
   ======================================================================== */

/* Payment wallets belong inside Step 4, alongside the ordinary gateways. */
.woocommerce-checkout .eveli-payment-wallets {
    margin: 0 0 22px !important;
    padding: 0 0 22px !important;
    border-bottom: 1px solid #e7e2da !important;
}
.woocommerce-checkout .eveli-payment-group-label {
    margin: 0 0 12px !important;
    color: #4f4b46 !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}
.woocommerce-checkout .payment-step-content .eveli-express-checkout-region {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.woocommerce-checkout .payment-step-content .eveli-express-checkout-region > * {
    max-width: 100% !important;
}

/* Checkout typography: one deliberate serif/sans hierarchy, no plugin defaults. */
.woocommerce-checkout .custom-checkout-grid,
.woocommerce-checkout .custom-checkout-grid p,
.woocommerce-checkout .custom-checkout-grid span,
.woocommerce-checkout .custom-checkout-grid div,
.woocommerce-checkout .custom-checkout-grid input,
.woocommerce-checkout .custom-checkout-grid select,
.woocommerce-checkout .custom-checkout-grid textarea,
.woocommerce-checkout .custom-checkout-grid button,
.woocommerce-checkout .custom-checkout-grid a,
.woocommerce-checkout #payment,
.woocommerce-checkout #payment p,
.woocommerce-checkout #payment span,
.woocommerce-checkout #payment div,
.woocommerce-checkout #payment input,
.woocommerce-checkout #payment button,
.woocommerce-checkout #payment a {
    font-family: var(--font-body) !important;
}
.woocommerce-checkout .step-title-text,
.woocommerce-checkout .checkout-subheading,
.woocommerce-checkout .checkout-field-group-title,
.woocommerce-checkout .summary-title,
.woocommerce-checkout .summary-heading {
    font-family: var(--font-heading) !important;
    font-weight: 400 !important;
}
.woocommerce-checkout .summary-title {
    margin: 0 !important;
    color: #302d29 !important;
    font-size: 28px !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
.woocommerce-checkout .summary-heading {
    margin: 0 0 16px !important;
    color: #302d29 !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
}
.woocommerce-checkout .summary-label,
.woocommerce-checkout .box-heading {
    color: #393531 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    letter-spacing: .01em !important;
    text-transform: none !important;
}
.woocommerce-checkout .summary-value,
.woocommerce-checkout .checkout-sidebar .summary-row,
.woocommerce-checkout .checkout-sidebar .summary-row .label,
.woocommerce-checkout .checkout-sidebar .summary-row .value,
.woocommerce-checkout .custom-checkout-review-order .summary-row,
.woocommerce-checkout .custom-checkout-review-order .summary-row .label,
.woocommerce-checkout .custom-checkout-review-order .summary-row .value {
    color: #5a5651 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
}
.woocommerce-checkout .edit-step-link,
.woocommerce-checkout .edit-cart-link {
    color: var(--eveli-primary-purple) !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
    text-transform: none !important;
}

/* Product line: jewellery name leads; price recedes. */
.woocommerce-checkout .summary-item-name {
    color: #302d29 !important;
    font-family: var(--font-heading) !important;
    font-size: 19px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
}
.woocommerce-checkout .summary-item-total,
.woocommerce-checkout .summary-item-total .woocommerce-Price-amount,
.woocommerce-checkout .summary-item-total .woocommerce-Price-currencySymbol {
    color: #5b5752 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
}

/* Totals remain easy to scan without the old large bright-gold emphasis. */
.woocommerce-checkout .estimated-summary .woocommerce-Price-amount,
.woocommerce-checkout .estimated-summary .woocommerce-Price-currencySymbol,
.woocommerce-checkout .checkout-sidebar .woocommerce-Price-amount,
.woocommerce-checkout .checkout-sidebar .woocommerce-Price-currencySymbol,
.woocommerce-checkout .custom-checkout-review-order .woocommerce-Price-amount,
.woocommerce-checkout .custom-checkout-review-order .woocommerce-Price-currencySymbol {
    color: #4c4843 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
}
.woocommerce-checkout .final-total-value,
.woocommerce-checkout .final-total-value .woocommerce-Price-amount,
.woocommerce-checkout .final-total-value .woocommerce-Price-currencySymbol,
.woocommerce-checkout .order-total .woocommerce-Price-amount,
.woocommerce-checkout .order-total .woocommerce-Price-currencySymbol {
    color: #393531 !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}
.woocommerce-checkout .discount-value,
.woocommerce-checkout .discount-value .woocommerce-Price-amount {
    color: #6a6460 !important;
    font-weight: 300 !important;
}

/* Payment gateway labels should read like options, not editorial headings. */
.woocommerce-checkout #payment ul.payment_methods > li > label,
.woocommerce-checkout #payment .payment_method_title,
.woocommerce-checkout #payment label {
    color: #302d29 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: .01em !important;
}
.woocommerce-checkout #payment .payment_box,
.woocommerce-checkout #payment .payment_box p,
.woocommerce-checkout #payment .payment_box label,
.woocommerce-checkout #payment .payment_box input {
    font-family: var(--font-body) !important;
    font-size: 13.5px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
}
.woocommerce-checkout #payment ul.payment_methods > li {
    padding: 15px 16px !important;
}

@media (max-width: 768px) {
    .woocommerce-checkout .summary-title {
        font-size: 25px !important;
    }
    .woocommerce-checkout .summary-item-name {
        font-size: 18px !important;
    }
    .woocommerce-checkout .summary-item-total,
    .woocommerce-checkout .summary-item-total .woocommerce-Price-amount,
    .woocommerce-checkout .estimated-summary .woocommerce-Price-amount,
    .woocommerce-checkout .final-total-value .woocommerce-Price-amount {
        font-size: 13.5px !important;
    }
}


/* ==========================================================================
   EVE LI V1.2.13 — EMAIL SENDER-LANE SEPARATION
   --------------------------------------------------------------------------
   No visual CSS changes in this revision. Version marker retained here so
   WordPress clearly reports the installed staging revision.
   ========================================================================== */


/* ==========================================================================
   EVE LI V1.2.14 — STREAMLINED CHECKOUT, QUIET PRICE HIERARCHY & HERO LOAD
   ========================================================================== */

/* Website lockup: simplified gold symbol + EVE LI wordmark. */
.eveli-logo-full,
.site-footer img[src*="eveli-logo-web.svg"] {
    object-fit: contain;
    height: auto;
}

/* Single-page checkout: one continuous, low-friction flow. */
.woocommerce-checkout .eveli-checkout-heading {
    width: min(1300px, calc(100% - 40px));
    margin: 0 auto;
    padding: 54px 0 8px;
}
.woocommerce-checkout .eveli-checkout-heading h1 {
    margin: 0;
    color: #27231f;
    font-family: var(--font-heading) !important;
    font-size: clamp(34px, 3vw, 46px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: .01em !important;
}
.woocommerce-checkout .eveli-checkout-grid--single {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(330px, 390px) !important;
    gap: 42px !important;
    align-items: start !important;
    width: min(1300px, calc(100% - 40px)) !important;
    max-width: 1300px !important;
    margin: 0 auto !important;
    padding: 28px 0 96px !important;
}
.woocommerce-checkout .eveli-checkout-main--single {
    min-width: 0;
}
.woocommerce-checkout .eveli-checkout-section {
    margin: 0 0 22px !important;
    padding: 34px 38px 36px !important;
    border: 1px solid #e9e5df !important;
    background: #fff !important;
    box-shadow: none !important;
}
.woocommerce-checkout .eveli-checkout-section-heading {
    display: flex;
    gap: 18px;
    align-items: baseline;
    justify-content: space-between;
    margin: 0 0 26px;
}
.woocommerce-checkout .eveli-checkout-section-heading h2 {
    margin: 0 !important;
    color: #2d2925 !important;
    font-family: var(--font-heading) !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    letter-spacing: .01em !important;
    text-transform: none !important;
}
.woocommerce-checkout .eveli-checkout-member-prompt,
.woocommerce-checkout .eveli-checkout-signed-in {
    margin: 0 !important;
    color: #77716b !important;
    font-family: var(--font-body) !important;
    font-size: 12.5px !important;
    font-weight: 300 !important;
    line-height: 1.5 !important;
}
.woocommerce-checkout .eveli-checkout-signin-toggle {
    appearance: none;
    margin: 0 0 0 4px;
    padding: 0;
    border: 0;
    border-bottom: 1px solid rgba(138,95,15,.45);
    border-radius: 0;
    background: transparent;
    color: #8a5f0f;
    font: inherit;
    cursor: pointer;
}
.woocommerce-checkout .eveli-checkout-signin-toggle:hover,
.woocommerce-checkout .eveli-checkout-signin-toggle:focus-visible {
    color: #684809;
    border-bottom-color: #684809;
}
.woocommerce-checkout .eveli-checkout-login-panel {
    margin: 0 0 28px;
    padding: 24px;
    border: 1px solid #ece7df;
    background: #faf8f4;
}
.woocommerce-checkout .eveli-checkout-login-panel[hidden],
.woocommerce-checkout #billing-fields-container[hidden],
.woocommerce-checkout #eveli-shipping-phone-field-wrap[hidden] {
    display: none !important;
}
.woocommerce-checkout .eveli-checkout-inline-login-actions {
    display: flex;
    gap: 18px;
    align-items: center;
    margin-top: 15px;
}
.woocommerce-checkout .eveli-secondary-action {
    min-width: 116px;
    padding: 12px 19px;
    border: 1px solid var(--eveli-primary-purple, #8f839d);
    background: transparent;
    color: var(--eveli-primary-purple, #8f839d);
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
}
.woocommerce-checkout .eveli-checkout-forgot-password {
    color: #77716b !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}
.woocommerce-checkout .eveli-inline-login-message {
    margin: 8px 0 0;
    color: #8a3b32;
    font-family: var(--font-body);
    font-size: 12px;
}
.woocommerce-checkout .eveli-checkout-section .form-row,
.woocommerce-checkout .eveli-checkout-section p.form-row {
    margin-bottom: 17px !important;
}
.woocommerce-checkout .eveli-checkout-section label,
.woocommerce-checkout .eveli-checkout-section .form-row label {
    color: #3d3935 !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: .01em !important;
}
.woocommerce-checkout .eveli-checkout-section .required {
    color: #9b4b40 !important;
    font-size: .9em;
}
.woocommerce-checkout .eveli-checkout-section .input-text,
.woocommerce-checkout .eveli-checkout-section input[type="text"],
.woocommerce-checkout .eveli-checkout-section input[type="email"],
.woocommerce-checkout .eveli-checkout-section input[type="tel"],
.woocommerce-checkout .eveli-checkout-section input[type="password"],
.woocommerce-checkout .eveli-checkout-section select,
.woocommerce-checkout .eveli-checkout-section textarea,
.woocommerce-checkout .eveli-checkout-section .select2-container--default .select2-selection--single {
    min-height: 43px !important;
    border: 0 !important;
    border-bottom: 1px solid #d8d3cc !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #393531 !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    box-shadow: none !important;
}
.woocommerce-checkout .eveli-checkout-section textarea {
    min-height: 80px !important;
    padding-top: 10px !important;
}
.woocommerce-checkout .eveli-checkout-section .input-text:focus,
.woocommerce-checkout .eveli-checkout-section input:focus,
.woocommerce-checkout .eveli-checkout-section select:focus,
.woocommerce-checkout .eveli-checkout-section textarea:focus {
    outline: none !important;
    border-bottom-color: #c08a12 !important;
}
.woocommerce-checkout .checkout-helper-text {
    margin: -6px 0 18px !important;
    color: #918a83 !important;
    font-family: var(--font-body) !important;
    font-size: 11.5px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
}
.woocommerce-checkout .checkout-field-group-title,
.woocommerce-checkout .eveli-checkout-subpanel .box-heading {
    margin: 0 0 8px !important;
    color: #4b4641 !important;
    font-family: var(--font-body) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}
.woocommerce-checkout .eveli-checkout-subpanel {
    margin: 22px 0 0 !important;
    padding: 18px 20px !important;
    border: 1px solid #eee9e1 !important;
    background: #faf8f4 !important;
}
.woocommerce-checkout .eveli-shipping-phone-choice {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    margin: 12px 0 16px;
}
.woocommerce-checkout .eveli-shipping-phone-choice label,
.woocommerce-checkout #billing_same_as_shipping_row label {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    cursor: pointer;
}
.woocommerce-checkout .eveli-shipping-phone-choice input,
.woocommerce-checkout #billing_same_as_shipping_row input {
    accent-color: var(--eveli-primary-purple, #8f839d);
}
.woocommerce-checkout .eveli-checkout-guest-security {
    margin-top: 6px;
}

/* Payment choices live only inside the Payment section. */
.woocommerce-checkout .eveli-payment-wallets {
    margin: 0 0 24px;
}
.woocommerce-checkout .eveli-payment-group-label {
    margin: 0 0 11px;
    color: #8b847d;
    font-family: var(--font-body);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.woocommerce-checkout .eveli-express-checkout-region {
    margin-bottom: 18px;
}
.woocommerce-checkout #payment {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}
.woocommerce-checkout #payment ul.payment_methods {
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #e9e5df !important;
    background: #fff !important;
}
.woocommerce-checkout #payment ul.payment_methods > li {
    margin: 0 !important;
    padding: 17px 18px !important;
    border-bottom: 1px solid #eee9e1 !important;
}
.woocommerce-checkout #payment ul.payment_methods > li:last-child {
    border-bottom: 0 !important;
}
.woocommerce-checkout #payment .place-order {
    padding: 26px 0 0 !important;
    background: transparent !important;
}
.woocommerce-checkout #payment #place_order,
.woocommerce-checkout button#place_order {
    float: none !important;
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    border: 1px solid var(--eveli-primary-purple, #8f839d) !important;
    border-radius: 0 !important;
    background: var(--eveli-primary-purple, #8f839d) !important;
    color: #fff !important;
    font-family: var(--font-body) !important;
    font-size: 11.5px !important;
    font-weight: 500 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
}
.woocommerce-checkout #payment #place_order:hover,
.woocommerce-checkout button#place_order:hover {
    background: var(--eveli-primary-purple-hover, #7d718b) !important;
    border-color: var(--eveli-primary-purple-hover, #7d718b) !important;
}

/* Order summary stays visible on desktop without competing with the form. */
.woocommerce-checkout .eveli-checkout-sidebar--single {
    position: sticky !important;
    top: 150px !important;
    align-self: start !important;
}
.woocommerce-checkout .eveli-order-summary-heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
}
.woocommerce-checkout .eveli-checkout-sidebar--single .custom-checkout-review-order {
    padding: 30px 30px 32px !important;
    border: 1px solid #e9e5df !important;
    background: #fff !important;
}
.woocommerce-checkout .eveli-checkout-sidebar--single .summary-title {
    margin: 0 0 24px !important;
    color: #302c28 !important;
    font-family: var(--font-heading) !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
}
.woocommerce-checkout .eveli-checkout-sidebar--single .summary-item-total,
.woocommerce-checkout .eveli-checkout-sidebar--single .summary-item-total .woocommerce-Price-amount,
.woocommerce-checkout .eveli-checkout-sidebar--single .summary-item-total .woocommerce-Price-currencySymbol,
.woocommerce-checkout .eveli-checkout-sidebar--single .estimated-summary .woocommerce-Price-amount,
.woocommerce-checkout .eveli-checkout-sidebar--single .estimated-summary .woocommerce-Price-currencySymbol {
    color: #625d58 !important;
    font-size: 13.5px !important;
    font-weight: 300 !important;
}

/* Decline and validation notices: clean text, no icon covering the message. */
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error {
    padding-left: 18px !important;
}
.woocommerce-checkout .woocommerce-error::before,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error::before {
    display: none !important;
    content: none !important;
}

/* Prices should inform, never dominate. */
.woocommerce-cart .woocommerce-Price-amount,
.woocommerce-cart .woocommerce-Price-currencySymbol,
.woocommerce-order-received .woocommerce-Price-amount,
.woocommerce-order-received .woocommerce-Price-currencySymbol,
.woocommerce-order-pay .woocommerce-Price-amount,
.woocommerce-order-pay .woocommerce-Price-currencySymbol {
    color: #514c47 !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.45 !important;
}
.woocommerce-order-received .order-total .woocommerce-Price-amount,
.woocommerce-order-pay .order-total .woocommerce-Price-amount {
    color: #393531 !important;
    font-size: 15px !important;
    font-weight: 400 !important;
}

/* High Jewellery: render a responsive image instead of forcing the large CSS
   background file. WordPress can now supply an appropriate srcset candidate. */
body.term-high-jewellery .category-hero.eveli-responsive-category-hero {
    position: relative !important;
    overflow: hidden !important;
    background-image: none !important;
    background-color: #f7f2eb !important;
}
body.term-high-jewellery .category-hero.eveli-responsive-category-hero .eveli-category-hero-image {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    object-position: center center;
}
body.term-high-jewellery .category-hero.eveli-responsive-category-hero + .category-hero-content,
body.term-high-jewellery .category-hero-content {
    position: relative;
    z-index: 1;
}

@media (max-width: 900px) {
    .woocommerce-checkout .eveli-checkout-heading,
    .woocommerce-checkout .eveli-checkout-grid--single {
        width: min(100% - 28px, 760px) !important;
    }
    .woocommerce-checkout .eveli-checkout-grid--single {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        padding-top: 20px !important;
    }
    .woocommerce-checkout .eveli-checkout-sidebar--single {
        position: static !important;
        top: auto !important;
        order: -1;
    }
}

@media (max-width: 600px) {
    .woocommerce-checkout .eveli-checkout-heading {
        padding-top: 32px !important;
    }
    .woocommerce-checkout .eveli-checkout-heading h1 {
        font-size: 32px !important;
    }
    .woocommerce-checkout .eveli-checkout-section {
        padding: 26px 20px 28px !important;
    }
    .woocommerce-checkout .eveli-checkout-section-heading {
        display: block;
        margin-bottom: 22px;
    }
    .woocommerce-checkout .eveli-checkout-section-heading h2 {
        font-size: 25px !important;
    }
    .woocommerce-checkout .eveli-checkout-member-prompt,
    .woocommerce-checkout .eveli-checkout-signed-in {
        margin-top: 8px !important;
    }
    .woocommerce-checkout .eveli-checkout-inline-login-actions {
        align-items: flex-start;
        flex-direction: column;
    }
    .woocommerce-checkout .eveli-checkout-sidebar--single .custom-checkout-review-order {
        padding: 24px 20px 26px !important;
    }
    .woocommerce-checkout .eveli-checkout-sidebar--single .summary-title {
        font-size: 25px !important;
    }
}


/* ==========================================================================\n   EVE LI V1.2.15 — PRODUCT PURCHASE / CHECKOUT CORRECTIONS\n   2026-09-30\n   ========================================================================== */

/* Product pages: quantity is fixed at one, so remove the redundant +/- UI. */
.single-product form.cart .quantity,
.single-product .woocommerce-variation-add-to-cart .quantity {
    display: none !important;
}
.single-product form.cart,
.single-product .woocommerce-variation-add-to-cart {
    align-items: center !important;
    gap: 18px !important;
}
.single-product .product-variations-wrapper .single_add_to_cart_button,
.single-product .product-variations-wrapper button.single_add_to_cart_button {
    flex: 1 1 320px !important;
    width: auto !important;
    min-width: min(320px, 70vw) !important;
    min-height: 58px !important;
    padding-left: 44px !important;
    padding-right: 44px !important;
}

/* Product pages never show express-wallet CTAs; wallets belong in checkout Payment. */
.single-product #wc-stripe-express-checkout-element,
.single-product #wc-stripe-express-checkout-button-separator,
.single-product #wc-stripe-express-checkout__order-attribution-inputs,
.single-product .wcpay-express-checkout-wrapper,
.single-product #wcpay-express-checkout-button-separator,
.single-product #awx-express-checkout-wrapper,
.single-product #awx-express-checkout-button-separator,
.single-product [data-ppcp-wrapper],
.single-product .ppc-button-wrapper,
.single-product .eveli-express-payment-option,
.single-product .eveli-express-checkout-label {
    display: none !important;
}

/* Wishlist: stronger visual presence, still secondary to Add to Bag. */
.single-product .wishlist-btn-wrapper {
    margin-left: 2px !important;
}
.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button,
.single-product .wishlist-btn-wrapper .custom-wishlist-icon {
    width: 66px !important;
    height: 66px !important;
    min-width: 66px !important;
    min-height: 66px !important;
}
.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::before {
    font-size: 44px !important;
}
.single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
    width: 44px !important;
    height: 44px !important;
}


@media (max-width: 768px) {
    .single-product form.cart,
    .single-product .woocommerce-variation-add-to-cart {
        gap: 12px !important;
    }
    .single-product .product-variations-wrapper .single_add_to_cart_button,
    .single-product .product-variations-wrapper button.single_add_to_cart_button {
        flex-basis: auto !important;
        min-width: 0 !important;
        min-height: 54px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }
    .single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button,
    .single-product .wishlist-btn-wrapper .custom-wishlist-icon {
        width: 58px !important;
        height: 58px !important;
        min-width: 58px !important;
        min-height: 58px !important;
    }
    .single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::before {
        font-size: 38px !important;
    }
    .single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
        width: 38px !important;
        height: 38px !important;
    }
}

/* ==========================================================================
   EVE LI V1.2.16 — PRODUCT / CHECKOUT / FOOTER POLISH
   2026-10-01
   ========================================================================== */

/* Product wishlist: increase the visible heart itself by about 30% from
   V1.2.15 while keeping the control footprint unchanged and secondary to
   the Add to Bag CTA. */
.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::before {
    font-size: 57px !important;
}
.single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
    width: 57px !important;
    height: 57px !important;
}

/* Footer links use one consistent treatment. Email Us must not carry a
   persistent underline or border that the other footer navigation lacks. */
.site-footer .footer-email-us a,
.site-footer .footer-email-us a:hover,
.site-footer .footer-email-us a:focus,
.site-footer .footer-email-us a:focus-visible,
.site-footer .footer-email-us a:active {
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

@media (max-width: 768px) {
    .single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::before {
        font-size: 49px !important;
    }
    .single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
        width: 49px !important;
        height: 49px !important;
    }
}


/* ==========================================================================
   EVE LI V1.2.18 — PRODUCT WISHLIST HEART
   2026-10-01
   ========================================================================== */

/*
 * Own the visible product-page wishlist heart instead of relying on the TI
 * Wishlist icon font. The real TI button remains over the same area for click
 * behaviour; its own glyph/text are visually suppressed.
 *
 * V1.2.15 targeted a 44px desktop heart. V1.2.18 makes the visible SVG 57px
 * (about +30%) and 49px on mobile, while keeping Add to Bag visually dominant.
 */
.single-product .wishlist-btn-wrapper {
    position: relative !important;
    width: 66px !important;
    height: 66px !important;
    min-width: 66px !important;
    min-height: 66px !important;
    margin-left: 2px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
}

.single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--color-gold, #F1A603) !important;
    pointer-events: none !important;
}

.single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg,
.single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
    width: 57px !important;
    height: 57px !important;
    min-width: 57px !important;
    min-height: 57px !important;
    display: block !important;
}

.single-product .wishlist-btn-wrapper .tinv-wishlist,
.single-product .wishlist-btn-wrapper .tinv-wraper {
    position: absolute !important;
    inset: 0 !important;
    z-index: 3 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    opacity: 1 !important;
}

.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::before,
.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button::after,
.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist_button > * {
    opacity: 0 !important;
    color: transparent !important;
}

.single-product .wishlist-btn-wrapper .tinvwl_add_to_wishlist-text,
.single-product .wishlist-btn-wrapper .tinvwl-txt {
    display: none !important;
}

@media (max-width: 768px) {
    .single-product .wishlist-btn-wrapper {
        width: 58px !important;
        height: 58px !important;
        min-width: 58px !important;
        min-height: 58px !important;
    }

    .single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg,
    .single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
        width: 49px !important;
        height: 49px !important;
        min-width: 49px !important;
        min-height: 49px !important;
    }
}


/* ==========================================================================
   EVE LI V1.2.19 — PRODUCT HEART / VARIABLE CTA CONSISTENCY
   2026-10-01
   ========================================================================== */

/* Reduce the V1.2.18 product-page wishlist heart by 15%: 57px -> 48px.
   Keep the existing click target/spacing unchanged. */
.single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg,
.single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
}

/* WooCommerce fades an unavailable variable-product Add to Bag control.
   Keep it functionally disabled until a variation is selected, but retain the
   same EVE LI dusty-purple surface as an ordinary product CTA. */
.single-product .product-variations-wrapper .single_add_to_cart_button.disabled,
.single-product .product-variations-wrapper .single_add_to_cart_button:disabled,
.single-product .product-variations-wrapper button.single_add_to_cart_button.disabled,
.single-product .product-variations-wrapper button.single_add_to_cart_button:disabled,
.single-product .product-variations-wrapper .single_add_to_cart_button.wc-variation-selection-needed {
    opacity: 1 !important;
    border-color: var(--eveli-primary-purple-border) !important;
    background: var(--eveli-primary-purple) !important;
    color: #fff !important;
    cursor: not-allowed !important;
}

@media (max-width: 768px) {
    .single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg,
    .single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
    }
}


/* ==========================================================================
   EVE LI V1.2.20 — CONSOLIDATED STOREFRONT CORRECTION
   2026-10-01
   --------------------------------------------------------------------------
   This block intentionally uses component-specific selectors so the approved
   presentation does not depend on generic WooCommerce/plugin styles.
   ========================================================================== */

/* 1. WEBSITE LOCKUP — explicit thin gold rule beneath EVE LI.
   The SVG contains extremely fine artwork at the bottom; at header/footer
   display sizes it can visually disappear. This dedicated rule is rendered
   independently of the SVG, so it remains crisp at all supported sizes. */
.site-header .header-center .logo-icon,
.site-footer .footer-logo .logo-icon {
    position: relative !important;
}
.site-header .header-center .eveli-logo-rule,
.site-footer .footer-logo .eveli-logo-rule {
    position: absolute !important;
    z-index: 8 !important;
    display: block !important;
    height: 1px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: var(--color-gold, #F1A603) !important;
    pointer-events: none !important;
}
.site-header .header-center .eveli-logo-rule {
    left: 50% !important;
    bottom: 0 !important;
    width: 66px !important;
    transform: translateX(-50%) !important;
}
.site-footer .footer-logo .eveli-logo-rule {
    left: 0 !important;
    bottom: 0 !important;
    width: 58px !important;
}
.site-header.is-compact .header-center .eveli-logo-rule {
    display: none !important;
}
@media (max-width: 900px) {
    .site-header .header-center .eveli-logo-rule {
        width: 58px !important;
    }
    .site-footer .footer-logo .eveli-logo-rule {
        width: 52px !important;
    }
}

/* 2. PRODUCT WISHLIST — approved post-V1.2.18 scale.
   48px desktop / 42px mobile: ~15% smaller than V1.2.18. */
.single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg,
.single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
}
@media (max-width: 768px) {
    .single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg,
    .single-product .wishlist-btn-wrapper .custom-wishlist-icon svg {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
    }
}

/* 3. VARIABLE-PRODUCT CTA — disabled until selection, but never visually
   washed out. Keep the same EVE LI purple as the ordinary Add to Bag CTA. */
.single-product .product-variations-wrapper .single_add_to_cart_button.disabled,
.single-product .product-variations-wrapper .single_add_to_cart_button:disabled,
.single-product .product-variations-wrapper .single_add_to_cart_button.wc-variation-selection-needed,
.single-product .product-variations-wrapper button.single_add_to_cart_button.disabled,
.single-product .product-variations-wrapper button.single_add_to_cart_button:disabled {
    opacity: 1 !important;
    background-color: var(--eveli-primary-purple, #8f839d) !important;
    border-color: var(--eveli-primary-purple-border, #8f839d) !important;
    color: #fff !important;
    box-shadow: none !important;
    filter: none !important;
    cursor: not-allowed !important;
}

/* 4. SHOPPING BAG / CHECKOUT CHECKBOXES — restrained EVE LI treatment.
   This covers native WooCommerce checkboxes and any cart extension checkbox
   without replacing their underlying behaviour. */
.woocommerce-cart .woocommerce-cart-form input[type="checkbox"],
.woocommerce-cart .custom-cart-wrapper input[type="checkbox"],
.eveli-cart-drawer-body input[type="checkbox"],
.woocommerce-checkout .eveli-checkout-grid--single input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    margin: 0 8px 0 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    accent-color: var(--eveli-primary-purple, #8f839d) !important;
    vertical-align: middle !important;
}
.woocommerce-cart .woocommerce-cart-form input[type="checkbox"]:focus-visible,
.woocommerce-cart .custom-cart-wrapper input[type="checkbox"]:focus-visible,
.eveli-cart-drawer-body input[type="checkbox"]:focus-visible,
.woocommerce-checkout .eveli-checkout-grid--single input[type="checkbox"]:focus-visible {
    outline: 1px solid var(--color-gold, #F1A603) !important;
    outline-offset: 2px !important;
}

/* 5. COMMERCE DRAWERS — thin, quiet scrollbar rather than the browser's
   heavy default bar. Applies to both Shopping Bag and Wishlist drawers. */
.eveli-commerce-drawer-body {
    scrollbar-width: thin !important;
    scrollbar-color: rgba(143, 131, 157, .68) transparent !important;
    overscroll-behavior: contain;
}
.eveli-commerce-drawer-body::-webkit-scrollbar {
    width: 5px !important;
}
.eveli-commerce-drawer-body::-webkit-scrollbar-track {
    background: transparent !important;
}
.eveli-commerce-drawer-body::-webkit-scrollbar-thumb {
    min-height: 42px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(143, 131, 157, .62) !important;
}
.eveli-commerce-drawer-body::-webkit-scrollbar-thumb:hover {
    background: rgba(125, 113, 139, .78) !important;
}

/* 6. YOU MAY ALSO LIKE — dedicated type system.
   These selectors target V1.2.20's dedicated markup classes rather than the
   generic .product-name/.product-meta rules used elsewhere in the theme. */
.yml-slider-section .section-header h2.eveli-yml-heading {
    font-family: var(--font-heading, "Libre Baskerville", "Playfair Display", serif) !important;
    font-size: clamp(27px, 2vw, 32px) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.16 !important;
    letter-spacing: .015em !important;
    text-transform: uppercase !important;
    color: var(--color-black, #111111) !important;
}
.yml-slider-section .product-info h4.eveli-yml-product-name {
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    line-height: 1.32 !important;
    letter-spacing: .035em !important;
    text-transform: uppercase !important;
    color: var(--color-black, #111111) !important;
}
.yml-slider-section .product-info p.eveli-yml-product-meta {
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 15px !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #5f5b57 !important;
}
/* V1.2.20 removes YML price markup in PHP. Keep this as defence in depth in
   case a plugin injects legacy price markup into the recommendation cards. */
.yml-slider-section .product-price,
.yml-slider-section .product-price *,
.yml-slider-section .woocommerce-Price-amount,
.yml-slider-section .price {
    display: none !important;
}

/* 7. CENTRE STONE remains intentionally absent from storefront summaries.
   V1.2.20 adds no Centre Stone rendering; checkout Order Summary stays name-only. */

/* 8. Preserve the approved footer navigation treatment. */
.site-footer .footer-email-us a,
.site-footer .footer-email-us a:hover,
.site-footer .footer-email-us a:focus,
.site-footer .footer-email-us a:focus-visible,
.site-footer .footer-email-us a:active {
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

/* ==========================================================================
   EVE LI V1.2.23 — VERIFIED CART SELECTION / DRAWER / LOGO CORRECTION
   2026-10-02
   ========================================================================== */

/* LOGO — use the cache-busted SVG artwork itself. The underline is part of the
   asset and has been thickened inside the SVG so it remains visible at the
   actual header/footer display sizes. No synthetic HTML/CSS underline. */
.eveli-logo-rule { display: none !important; }
.site-header .logo-icon,
.site-footer .footer-logo .logo-icon {
    overflow: visible !important;
}
.site-header .logo-icon .eveli-logo-full,
.site-footer .footer-logo .logo-icon img[src*="eveli-logo-web-v1223.svg"] {
    display: block !important;
    object-fit: contain !important;
    overflow: visible !important;
}
.site-footer .footer-logo .logo-icon img[src*="eveli-logo-web-v1223.svg"] {
    max-width: 136px !important;
    height: 72px !important;
    object-position: left center !important;
}

/* SHOPPING BAG ITEM SELECTION — large, unmistakable, product-level control. */
.woocommerce-cart .eveli-bag-item {
    display: grid !important;
    grid-template-columns: 30px 190px minmax(0, 1fr) !important;
    column-gap: 18px !important;
    align-items: start !important;
}
.woocommerce-cart .eveli-bag-item__select {
    position: relative !important;
    z-index: 4 !important;
    align-self: start !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    height: 26px !important;
    margin: 10px 0 0 !important;
    cursor: pointer !important;
}
.woocommerce-cart .eveli-bag-item__select input {
    position: absolute !important;
    inset: 0 !important;
    width: 26px !important;
    height: 26px !important;
    margin: 0 !important;
    opacity: 0 !important;
    cursor: pointer !important;
}
.woocommerce-cart .eveli-bag-item__checkmark {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    box-sizing: border-box !important;
    border: 1.5px solid #8f839d !important;
    background: #fff !important;
}
.woocommerce-cart .eveli-bag-item__select input:checked + .eveli-bag-item__checkmark {
    background: #8f839d !important;
}
.woocommerce-cart .eveli-bag-item__select input:checked + .eveli-bag-item__checkmark::after {
    content: "" !important;
    position: absolute !important;
    left: 9px !important;
    top: 5px !important;
    width: 5px !important;
    height: 10px !important;
    border: solid #fff !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}
.woocommerce-cart .eveli-bag-item.is-eveli-unselected {
    opacity: .55 !important;
}
.woocommerce-cart .eveli-cart-selection-message {
    margin-top: 12px !important;
    color: #9b3e35 !important;
    font-family: var(--font-body, "Josefin Sans", sans-serif) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}
.woocommerce-cart [data-eveli-selected-checkout][disabled] {
    opacity: .45 !important;
    cursor: not-allowed !important;
}

/* COMMERCE DRAWERS — same generous row geometry in Bag and Wishlist.
   The cart drawer scrolls through every item first; subtotal/actions follow the
   final item inside the same scroll region. */
.eveli-commerce-drawer {
    width: min(680px, 96vw) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
}
.eveli-commerce-drawer-header {
    flex: 0 0 auto !important;
    min-height: 106px !important;
    padding: 28px 38px !important;
}
.eveli-commerce-drawer-header h2 {
    font-size: 34px !important;
    line-height: 1.08 !important;
}
.eveli-commerce-drawer-close {
    width: 44px !important;
    height: 44px !important;
    font-size: 38px !important;
    line-height: 42px !important;
}

#eveli-cart-drawer .eveli-commerce-drawer-body {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
#eveli-cart-drawer .eveli-cart-drawer-scroll {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
    padding: 34px 26px 38px 38px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    scrollbar-gutter: stable !important;
    scrollbar-width: auto !important;
    scrollbar-color: #8f839d #f2f0ed !important;
}
#eveli-cart-drawer .eveli-drawer-item {
    display: grid !important;
    grid-template-columns: 170px minmax(0, 1fr) !important;
    gap: 30px !important;
    align-items: center !important;
    min-height: 208px !important;
    margin: 0 0 28px !important;
    padding: 0 0 28px !important;
    border-bottom: 1px solid #e8e5df !important;
}
#eveli-cart-drawer .eveli-drawer-item-image img {
    width: 170px !important;
    height: 170px !important;
    object-fit: contain !important;
    background: #faf9f7 !important;
}
#eveli-cart-drawer .eveli-drawer-item-copy h3 {
    margin: 0 0 10px !important;
    font-size: 22px !important;
    line-height: 1.22 !important;
}
#eveli-cart-drawer .eveli-drawer-item-meta,
#eveli-cart-drawer .eveli-drawer-item-meta p {
    margin: 0 0 8px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
}
#eveli-cart-drawer .eveli-drawer-item-bottom {
    margin-top: 10px !important;
    font-size: 15px !important;
}
#eveli-cart-drawer .eveli-drawer-summary {
    display: flex !important;
    justify-content: space-between !important;
    margin: 0 !important;
    padding: 24px 0 8px !important;
    border-top: 1px solid #dcd8d1 !important;
    font-size: 18px !important;
}
#eveli-cart-drawer .eveli-drawer-actions {
    display: grid !important;
    gap: 14px !important;
    padding: 24px 0 8px !important;
}
#eveli-cart-drawer .eveli-drawer-actions .eveli-drawer-primary-link,
#eveli-cart-drawer .eveli-drawer-actions .eveli-drawer-secondary-link {
    display: flex !important;
    width: 100% !important;
    min-height: 66px !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    letter-spacing: .08em !important;
}
#eveli-cart-drawer .eveli-cart-drawer-scroll::-webkit-scrollbar {
    width: 8px !important;
}
#eveli-cart-drawer .eveli-cart-drawer-scroll::-webkit-scrollbar-button {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}
#eveli-cart-drawer .eveli-cart-drawer-scroll::-webkit-scrollbar-track {
    background: #f2f0ed !important;
}
#eveli-cart-drawer .eveli-cart-drawer-scroll::-webkit-scrollbar-thumb {
    min-height: 72px !important;
    border: 2px solid #f2f0ed !important;
    border-radius: 999px !important;
    background: #8f839d !important;
}

/* Wishlist uses the same visual scale as Shopping Bag and never truncates at
   three rows. Its fixed action footer remains available at the bottom. */
#eveli-wishlist-drawer .eveli-commerce-drawer-body {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    padding: 34px 38px !important;
    overflow-y: auto !important;
    scrollbar-width: auto !important;
    scrollbar-color: #8f839d #f2f0ed !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item,
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) {
    display: grid !important;
    grid-template-columns: 170px minmax(0,1fr) 42px !important;
    gap: 30px !important;
    align-items: center !important;
    min-height: 208px !important;
    padding: 0 0 28px !important;
    margin: 0 0 28px !important;
    border-bottom: 1px solid #e8e5df !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img {
    width: 170px !important;
    height: 170px !important;
    object-fit: contain !important;
    background: #faf9f7 !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-name a {
    font-size: 22px !important;
    line-height: 1.22 !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-price,
.eveli-wishlist-drawer-body .tinv-wishlist .product-price * {
    font-size: 17px !important;
    line-height: 1.3 !important;
}
#eveli-wishlist-drawer .eveli-commerce-drawer-footer {
    padding: 22px 38px max(28px, env(safe-area-inset-bottom)) !important;
}
#eveli-wishlist-drawer .eveli-commerce-drawer-footer .eveli-drawer-primary-link,
#eveli-wishlist-drawer .eveli-commerce-drawer-footer .eveli-drawer-secondary-link {
    min-height: 66px !important;
    font-size: 14px !important;
}
#eveli-wishlist-drawer .eveli-commerce-drawer-body::-webkit-scrollbar {
    width: 8px !important;
}
#eveli-wishlist-drawer .eveli-commerce-drawer-body::-webkit-scrollbar-button {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}
#eveli-wishlist-drawer .eveli-commerce-drawer-body::-webkit-scrollbar-track {
    background: #f2f0ed !important;
}
#eveli-wishlist-drawer .eveli-commerce-drawer-body::-webkit-scrollbar-thumb {
    min-height: 72px !important;
    border: 2px solid #f2f0ed !important;
    border-radius: 999px !important;
    background: #8f839d !important;
}

@media (max-width: 760px) {
    .eveli-commerce-drawer {
        width: 100vw !important;
        max-width: 100vw !important;
    }
    .eveli-commerce-drawer-header {
        min-height: 86px !important;
        padding: 20px 22px !important;
    }
    .eveli-commerce-drawer-header h2 {
        font-size: 28px !important;
    }
    #eveli-cart-drawer .eveli-cart-drawer-scroll,
    #eveli-wishlist-drawer .eveli-commerce-drawer-body {
        padding: 24px 18px 28px !important;
    }
    #eveli-cart-drawer .eveli-drawer-item,
    .eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item,
    .eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) {
        grid-template-columns: 112px minmax(0,1fr) 32px !important;
        gap: 16px !important;
        min-height: 136px !important;
        margin-bottom: 22px !important;
        padding-bottom: 22px !important;
    }
    #eveli-cart-drawer .eveli-drawer-item {
        grid-template-columns: 112px minmax(0,1fr) !important;
    }
    #eveli-cart-drawer .eveli-drawer-item-image img,
    .eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img {
        width: 112px !important;
        height: 112px !important;
    }
    #eveli-cart-drawer .eveli-drawer-item-copy h3,
    .eveli-wishlist-drawer-body .tinv-wishlist .product-name a {
        font-size: 18px !important;
    }
    .woocommerce-cart .eveli-bag-item {
        grid-template-columns: 28px 112px minmax(0, 1fr) !important;
        column-gap: 12px !important;
    }
}


/* ==========================================================================
   EVE LI V1.2.25 — CONSOLIDATED LOCKED UI
   ========================================================================== */

/* Approved logo asset: the gold rule is part of the SVG artwork itself. */
.site-header .eveli-logo-full,
.site-footer .footer-logo img {
    object-fit: contain !important;
    overflow: visible !important;
}
.site-header .eveli-logo-full { width:auto !important; max-width:185px !important; height:100px !important; }
.site-footer .footer-logo img { width:auto !important; max-width:136px !important; height:72px !important; object-position:left center !important; }


@media (max-width:768px) {
    .site-header .eveli-logo-full { width:auto !important; max-width:160px !important; height:88px !important; }
}
/* Both commerce drawers: header fixed, item viewport max 3 rows, actions fixed at bottom. */
.eveli-commerce-drawer {
    display: flex !important;
    flex-direction: column !important;
    width: min(650px, 96vw) !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
}
.eveli-commerce-drawer-header { flex: 0 0 auto !important; }
#eveli-cart-drawer .eveli-commerce-drawer-body,
#eveli-wishlist-drawer .eveli-commerce-drawer-body {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
}
#eveli-cart-drawer .eveli-cart-drawer-layout {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 0 !important;
}
#eveli-cart-drawer .eveli-cart-drawer-viewport,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport {
    flex: 0 1 auto !important;
    max-height: 480px !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    padding: 20px 28px 0 34px !important;
    box-sizing: border-box !important;
    scrollbar-width: thin !important;
    scrollbar-color: #8f839d #f5f3ef !important;
}
#eveli-cart-drawer .eveli-cart-drawer-viewport.is-scrollable,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport.is-scrollable {
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
}
#eveli-cart-drawer .eveli-cart-drawer-viewport::-webkit-scrollbar,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport::-webkit-scrollbar { width: 7px !important; }
#eveli-cart-drawer .eveli-cart-drawer-viewport:not(.is-scrollable)::-webkit-scrollbar,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport:not(.is-scrollable)::-webkit-scrollbar { display:none !important; }
#eveli-cart-drawer .eveli-cart-drawer-viewport::-webkit-scrollbar-track,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport::-webkit-scrollbar-track { background:#f5f3ef !important; }
#eveli-cart-drawer .eveli-cart-drawer-viewport::-webkit-scrollbar-thumb,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport::-webkit-scrollbar-thumb { background:#8f839d !important; border-radius:999px !important; }

#eveli-cart-drawer .eveli-drawer-item {
    grid-template-columns: 132px minmax(0,1fr) !important;
    gap: 24px !important;
    height: 160px !important; min-height: 160px !important; max-height: 160px !important; overflow: hidden !important; box-sizing:border-box !important;
    margin: 0 !important;
    padding: 10px 0 18px !important;
}
#eveli-cart-drawer .eveli-drawer-item + .eveli-drawer-item { border-top: 1px solid #e8e5df !important; }
#eveli-cart-drawer .eveli-drawer-item-image img { width:132px !important; height:132px !important; object-fit:contain !important; }
#eveli-cart-drawer .eveli-drawer-item-copy h3 { font-size:20px !important; line-height:1.22 !important; }
#eveli-cart-drawer .eveli-drawer-item-meta,
#eveli-cart-drawer .eveli-drawer-item-meta p { font-size:13px !important; }

#eveli-cart-drawer .eveli-cart-drawer-fixed-footer {
    flex: 0 0 auto !important;
    margin-top: auto !important;
    padding: 18px 34px max(26px, env(safe-area-inset-bottom)) !important;
    border-top: 1px solid #e3dfd8 !important;
    background: #fff !important;
    box-shadow: 0 -10px 30px rgba(17,17,17,.025) !important;
}
#eveli-cart-drawer .eveli-drawer-summary { padding:0 0 18px !important; margin:0 !important; border:0 !important; }
#eveli-cart-drawer .eveli-drawer-actions { padding:0 !important; gap:12px !important; }
#eveli-cart-drawer .eveli-drawer-actions a { min-height:58px !important; }

#eveli-wishlist-drawer .eveli-commerce-drawer-body {
    display:flex !important;
    flex-direction:column !important;
    min-height:0 !important;
}
#eveli-wishlist-drawer .eveli-wishlist-item-viewport { width:100% !important; }
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item,
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) {
    grid-template-columns: 132px minmax(0,1fr) 34px !important;
    gap:24px !important;
    height:160px !important; min-height:160px !important; max-height:160px !important; overflow:hidden !important; box-sizing:border-box !important;
    margin:0 !important;
    padding:10px 0 18px !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img { width:132px !important; height:132px !important; }
.eveli-wishlist-drawer-body .tinv-wishlist .product-name a { font-size:20px !important; line-height:1.22 !important; }
#eveli-wishlist-drawer .eveli-commerce-drawer-footer {
    flex:0 0 auto !important;
    margin-top:auto !important;
    padding:18px 34px max(26px, env(safe-area-inset-bottom)) !important;
    border-top:1px solid #e3dfd8 !important;
    background:#fff !important;
    box-shadow:0 -10px 30px rgba(17,17,17,.025) !important;
}

/* Logo-only processing veil: no wording, no generic spinner. */
.eveli-processing-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(17,17,17,.52) !important;
    backdrop-filter: saturate(.88) blur(.35px) !important;
    -webkit-backdrop-filter: saturate(.88) blur(.35px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity .16s ease, visibility .16s ease !important;
}
.eveli-processing-overlay[hidden] { display:none !important; }
.eveli-processing-overlay.is-visible { opacity:1 !important; visibility:visible !important; }
.eveli-processing-overlay__mark img {
    width:72px !important;
    height:72px !important;
    display:block !important;
    animation:eveliLogoPulse 1.45s ease-in-out infinite !important;
}
@keyframes eveliLogoPulse {
    0%,100% { opacity:.36; transform:scale(.975); }
    50% { opacity:1; transform:scale(1.035); }
}
html.eveli-is-processing, html.eveli-is-processing body { overflow:hidden !important; }

/* Dedicated post-payment page. */
.woocommerce-order-received .woocommerce { max-width:none !important; }
.eveli-order-received-page { background:#fff; color:#2b2926; padding:48px 0 86px; }
.eveli-order-received-hero { text-align:center; max-width:760px; margin:0 auto; padding:36px 24px 38px; }
.eveli-order-received-check { width:44px; height:44px; margin:0 auto 18px; border:1px solid #c08a12; border-radius:50%; color:#c08a12; display:flex; align-items:center; justify-content:center; font-size:24px; }
.eveli-order-received-hero h1 { margin:0; font-family:var(--font-heading); font-weight:400; font-size:44px; line-height:1.12; }
.eveli-order-received-kicker { margin:12px 0 0; font-family:var(--font-body); font-size:13px; letter-spacing:.22em; text-transform:uppercase; }
.eveli-order-received-rule { width:70px; height:1px; margin:22px auto 20px; background:#c08a12; }
.eveli-order-received-number { width:min(520px,100%); margin:0 auto; padding:20px 28px; background:#faf8f4; display:grid; gap:5px; }
.eveli-order-received-number span { color:#8a5f0f; font-size:11px; text-transform:uppercase; letter-spacing:.2em; }
.eveli-order-received-number strong { font-family:var(--font-heading); font-size:30px; font-weight:400; }
.eveli-order-received-number small { font-size:14px; color:#69645f; }
.eveli-order-received-inner { width:min(1080px,calc(100% - 48px)); margin:0 auto; }
.eveli-order-received-items h2 { margin:0 0 14px; font-size:13px; font-family:var(--font-body); text-transform:uppercase; letter-spacing:.22em; font-weight:500; }
.eveli-order-received-table-head { display:grid; grid-template-columns:1fr 120px 160px; border-bottom:1px solid #dcd8d1; padding:0 0 12px; font-size:11px; text-transform:uppercase; letter-spacing:.15em; }
.eveli-order-received-table-head span:nth-child(2), .eveli-order-received-table-head span:nth-child(3) { text-align:right; }
.eveli-order-received-item { display:grid; grid-template-columns:1fr 120px 160px; align-items:center; border-bottom:1px solid #ebe7df; padding:20px 0; }
.eveli-order-received-item__product { display:grid; grid-template-columns:92px minmax(0,1fr); gap:22px; align-items:center; }
.eveli-order-received-item__image img { width:92px !important; height:92px !important; object-fit:contain; background:#faf8f4; }
.eveli-order-received-item h3 { margin:0 0 6px; font-family:var(--font-heading); font-size:20px; font-weight:400; }
.eveli-order-received-item__meta { color:#77716b; font-size:13px; }
.eveli-order-received-item__qty, .eveli-order-received-item__price { text-align:right; }
.eveli-order-received-totals { width:min(460px,100%); margin:28px 0 0 auto; }
.eveli-order-received-totals > div { display:flex; justify-content:space-between; gap:30px; padding:8px 0; font-size:15px; }
.eveli-order-received-totals strong { font-weight:400; }
.eveli-order-received-totals .eveli-order-received-total { margin-top:10px; padding-top:16px; border-top:1px solid #dcd8d1; font-family:var(--font-heading); font-size:21px; }
.eveli-order-received-details { display:grid; grid-template-columns:1fr 1fr; gap:50px; margin-top:42px; padding-top:34px; border-top:1px solid #ebe7df; }
.eveli-order-received-details h2 { margin:0 0 10px; font-size:11px; font-family:var(--font-body); text-transform:uppercase; letter-spacing:.2em; font-weight:500; }
.eveli-order-received-details p, .eveli-order-received-details address, .eveli-order-received-details div { font-size:15px; line-height:1.6; font-style:normal; }
.eveli-order-received-shipping-heading { margin-top:28px !important; }
.eveli-order-received-actions { text-align:center; margin-top:48px; }
.eveli-order-received-cta { display:inline-flex; min-width:260px; min-height:52px; align-items:center; justify-content:center; padding:0 30px; background:#8f839d; color:#fff !important; text-decoration:none !important; text-transform:uppercase; letter-spacing:.15em; font-size:12px; }

@media (max-width:760px) {
    #eveli-cart-drawer .eveli-cart-drawer-viewport,
    #eveli-wishlist-drawer .eveli-wishlist-item-viewport { max-height:396px !important; padding:14px 18px 0 !important; }
    #eveli-cart-drawer .eveli-drawer-item { grid-template-columns:104px minmax(0,1fr) !important; gap:16px !important; height:132px !important; height:132px !important; min-height:132px !important; max-height:132px !important; overflow:hidden !important; max-height:132px !important; overflow:hidden !important; }
    #eveli-cart-drawer .eveli-drawer-item-image img,
    .eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img { width:104px !important; height:104px !important; }
    .eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item,
    .eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) { grid-template-columns:104px minmax(0,1fr) 28px !important; gap:14px !important; min-height:132px !important; }
    #eveli-cart-drawer .eveli-cart-drawer-fixed-footer,
    #eveli-wishlist-drawer .eveli-commerce-drawer-footer { padding:16px 18px max(20px,env(safe-area-inset-bottom)) !important; }
    .eveli-order-received-page { padding-top:24px; }
    .eveli-order-received-hero h1 { font-size:36px; }
    .eveli-order-received-inner { width:calc(100% - 32px); }
    .eveli-order-received-table-head { display:none; }
    .eveli-order-received-item { grid-template-columns:1fr auto; gap:12px; }
    .eveli-order-received-item__product { grid-column:1 / -1; grid-template-columns:76px minmax(0,1fr); gap:14px; }
    .eveli-order-received-item__image img { width:76px !important; height:76px !important; }
    .eveli-order-received-item__qty { text-align:left; padding-left:90px; }
    .eveli-order-received-details { grid-template-columns:1fr; gap:28px; }
}


/* ==========================================================================\n   EVE LI V1.2.26 — PAYMENT-ONLY LOADER + ORDER-RECEIVED TYPOGRAPHY/SPACING\n   ========================================================================== */

/* The payment-processing veil itself remains a translucent dark layer so the
   live checkout remains visibly present underneath the pulsing square mark. */
.eveli-processing-overlay {
    background: rgba(17,17,17,.52) !important;
}

/* The WooCommerce checkout shell adds 80px top padding to all checkout body
   classes, including order-received. Remove it only on the completed-order
   page, then let the branded receipt control its own breathing room. */
body.woocommerce-order-received #main-content {
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
body.woocommerce-order-received .eveli-order-received-page {
    padding: 16px 0 72px !important;
    font-family: 'Josefin Sans', sans-serif !important;
}
body.woocommerce-order-received .eveli-order-received-hero {
    padding: 16px 24px 34px !important;
}

/* Lock the receipt to the actual loaded EVE LI web fonts. The legacy
   --font-heading stack begins with Minion Pro, which is not loaded on the
   website, so this page explicitly uses Libre Baskerville for headings and
   Josefin Sans for supporting copy. These selectors also defeat the global
   h1/h2/h3/p !important sizes that otherwise alter the custom receipt. */
body.woocommerce-order-received .eveli-order-received-hero h1 {
    margin: 0 !important;
    font-family: 'Libre Baskerville', 'Playfair Display', Georgia, serif !important;
    font-size: 40px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
body.woocommerce-order-received .eveli-order-received-kicker {
    margin: 12px 0 0 !important;
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: .22em !important;
    text-transform: uppercase !important;
}
body.woocommerce-order-received .eveli-order-received-number span,
body.woocommerce-order-received .eveli-order-received-number small,
body.woocommerce-order-received .eveli-order-received-table-head,
body.woocommerce-order-received .eveli-order-received-item__meta,
body.woocommerce-order-received .eveli-order-received-item__qty,
body.woocommerce-order-received .eveli-order-received-item__price,
body.woocommerce-order-received .eveli-order-received-totals,
body.woocommerce-order-received .eveli-order-received-details,
body.woocommerce-order-received .eveli-order-received-cta {
    font-family: 'Josefin Sans', sans-serif !important;
}
body.woocommerce-order-received .eveli-order-received-number strong,
body.woocommerce-order-received .eveli-order-received-totals .eveli-order-received-total {
    font-family: 'Libre Baskerville', 'Playfair Display', Georgia, serif !important;
    font-weight: 400 !important;
}
body.woocommerce-order-received .eveli-order-received-items h2,
body.woocommerce-order-received .eveli-order-received-details h2 {
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    letter-spacing: .22em !important;
    text-transform: uppercase !important;
}
body.woocommerce-order-received .eveli-order-received-item h3 {
    margin: 0 0 6px !important;
    font-family: 'Libre Baskerville', 'Playfair Display', Georgia, serif !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}
body.woocommerce-order-received .eveli-order-received-details p,
body.woocommerce-order-received .eveli-order-received-details address,
body.woocommerce-order-received .eveli-order-received-details div {
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.6 !important;
}

@media (max-width:760px) {
    body.woocommerce-order-received .eveli-order-received-page { padding-top: 12px !important; }
    body.woocommerce-order-received .eveli-order-received-hero { padding-top: 12px !important; }
    body.woocommerce-order-received .eveli-order-received-hero h1 { font-size: 34px !important; }
}


/* ==========================================================================
   EVE LI V1.2.27 — POST-UPDATE CONSOLIDATED FIXES
   WooCommerce 11.1.2 / Airwallex 1.36.0 staging audit
   ========================================================================== */

/* Commerce drawers: preserve the approved 3-row viewport, but give jewellery
   imagery a little more presence and guarantee prices cannot be clipped. */
#eveli-cart-drawer .eveli-cart-drawer-viewport,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport {
    max-height: 524px !important; /* 20px top padding + 3 x 168px rows */
}
#eveli-cart-drawer .eveli-cart-drawer-viewport.is-scrollable,
#eveli-wishlist-drawer .eveli-wishlist-item-viewport.is-scrollable {
    overflow-y: scroll !important;
    scrollbar-gutter: stable !important;
}
#eveli-cart-drawer .eveli-drawer-item {
    grid-template-columns: 142px minmax(0, 1fr) !important;
    gap: 22px !important;
    height: 168px !important;
    min-height: 168px !important;
    max-height: 168px !important;
}
#eveli-cart-drawer .eveli-drawer-item-image img,
.eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img {
    width: 140px !important;
    height: 140px !important;
}
#eveli-cart-drawer .eveli-drawer-item-copy,
#eveli-cart-drawer .eveli-drawer-item-copy h3,
#eveli-cart-drawer .eveli-drawer-item-bottom {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
#eveli-cart-drawer .eveli-drawer-item-bottom {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) max-content !important;
    align-items: end !important;
    gap: 8px !important;
    padding-right: 6px !important;
}
#eveli-cart-drawer .eveli-drawer-item-bottom > :last-child {
    white-space: nowrap !important;
    justify-self: end !important;
}
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item,
.eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) {
    display: grid !important;
    grid-template-columns: 142px minmax(0, 1fr) 34px !important;
    height: 168px !important;
    min-height: 168px !important;
    max-height: 168px !important;
}

/* Wishlist page: Date Added becomes part of the information column on tablet
   and phone widths instead of being squeezed against the viewport edge. */
@media (max-width: 1100px) {
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list thead {
        display: none !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list,
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tbody {
        display: block !important;
        width: 100% !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item {
        display: grid !important;
        grid-template-columns: 104px minmax(0, 1fr) 30px !important;
        gap: 8px 18px !important;
        padding: 22px 16px !important;
        overflow: hidden !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist table.tinvwl-table-manage-list tr.wishlist_item td {
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-thumbnail {
        grid-column: 1 !important;
        grid-row: 1 / span 6 !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-name,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-price,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-stock,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-date,
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-action {
        grid-column: 2 !important;
        display: block !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-date::before {
        content: "Date added: " !important;
        color: #8a857f !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-remove {
        grid-column: 3 !important;
        grid-row: 1 !important;
    }
    body.eveli-wishlist-page #main-content .tinv-wishlist .product-cb {
        display: none !important;
    }
}

/* Checkout Order Summary uses the same calm tinted treatment as Shopping Bag. */
.woocommerce-checkout .eveli-checkout-sidebar--single .custom-checkout-review-order {
    background: #fbfaf8 !important;
}

/* There is no alternative checkout path under the primary action. */
.woocommerce-cart .wc-proceed-to-checkout.eveli-checkout-actions::before,
.woocommerce-cart .or-separator,
.woocommerce-checkout .or-separator {
    display: none !important;
    content: none !important;
}

/* Processing veil must never survive an error state. JS owns the lifecycle;
   this rule is a final visual fail-safe if an error notice is present. */
html:not(.eveli-is-processing) .eveli-processing-overlay {
    pointer-events: none !important;
}

/* Mobile drawer geometry: three rows remain visible, images are slightly
   larger, and the copy/price column is protected from right-edge clipping. */
@media (max-width: 760px) {
    #eveli-cart-drawer .eveli-cart-drawer-viewport,
    #eveli-wishlist-drawer .eveli-wishlist-item-viewport {
        max-height: 432px !important; /* 12px top padding + 3 x 140px rows */
        padding: 12px 16px 0 !important;
    }
    #eveli-cart-drawer .eveli-drawer-item {
        grid-template-columns: 112px minmax(0, 1fr) !important;
        gap: 14px !important;
        height: 140px !important;
        min-height: 140px !important;
        max-height: 140px !important;
        padding: 10px 0 18px !important;
    }
    .eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item,
    .eveli-wishlist-drawer-body .tinv-wishlist tr.wishlist_item:nth-of-type(n+4) {
        grid-template-columns: 112px minmax(0, 1fr) 28px !important;
        gap: 12px !important;
        height: 140px !important;
        min-height: 140px !important;
        max-height: 140px !important;
        padding: 10px 0 18px !important;
    }
    #eveli-cart-drawer .eveli-drawer-item-image img,
    .eveli-wishlist-drawer-body .tinv-wishlist .product-thumbnail img {
        width: 112px !important;
        height: 112px !important;
    }
    #eveli-cart-drawer .eveli-drawer-item-copy h3,
    .eveli-wishlist-drawer-body .tinv-wishlist .product-name a {
        font-size: 17px !important;
        line-height: 1.18 !important;
    }
    #eveli-cart-drawer .eveli-drawer-item-bottom {
        font-size: 12px !important;
        gap: 6px !important;
        padding-right: 4px !important;
    }
}

/* ==========================================================================
   EVE LI V1.2.29 — STABLE CHECKOUT / WISHLIST SYNCHRONISATION
   Built from V1.2.27. V1.2.28 checkout scroll/focus observer was rejected.
   ========================================================================== */

/* Product wishlist state: outline before save, fully gold only after TI
   Wishlist confirms the product is actually in the customer's wishlist. */
.single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart svg {
    fill: transparent !important;
    stroke: currentColor !important;
    transition: fill .16s ease, stroke .16s ease !important;
}
.single-product .wishlist-btn-wrapper .eveli-product-wishlist-heart.is-active svg {
    fill: currentColor !important;
    stroke: currentColor !important;
}

/* The drawer owns the empty state; never expose TI Wishlist's generic orange
   Return To Shop panel inside the luxury side drawer. */
#eveli-wishlist-drawer .eveli-drawer-empty {
    padding: 34px 18px !important;
    background: #fbfaf8 !important;
    color: #6b6964 !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.55 !important;
    text-align: left !important;
}
#eveli-wishlist-drawer .eveli-drawer-empty p {
    margin: 0 !important;
}

/* WooCommerce notices must follow the same EVE LI body typography as the
   checkout fields. Woo's default strong/bold styling was visually too heavy. */
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-info,
.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-checkout [role="alert"] {
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
    line-height: 1.5 !important;
    letter-spacing: .01em !important;
}
.woocommerce-checkout .woocommerce-error strong,
.woocommerce-checkout .woocommerce-message strong,
.woocommerce-checkout .woocommerce-info strong,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout strong,
.woocommerce-checkout .wc-block-components-notice-banner strong,
.woocommerce-checkout [role="alert"] strong {
    font-family: var(--font-body) !important;
    font-weight: 500 !important;
}

/* Keep the priority homepage image predictable for the browser/Optimole. */
.home .eveli-home-high-jewellery-priority {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* ==========================================================================
   EVE LI V1.2.30 — FAILED-PAYMENT RETURN + NOTICE TYPOGRAPHY
   ========================================================================== */

/* Lock all WooCommerce checkout notice descendants to the EVE LI body face.
   WooCommerce can wrap field names in <strong> and nested list elements; those
   descendants must not reintroduce the heavier default WooCommerce typography. */
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-error *,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-message *,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-info *,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error *,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-message *,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-info *,
.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-checkout .wc-block-components-notice-banner *,
.woocommerce-checkout [role="alert"],
.woocommerce-checkout [role="alert"] * {
    font-family: "Josefin Sans", sans-serif !important;
    font-style: normal !important;
    font-weight: 300 !important;
    letter-spacing: .01em !important;
}
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-info,
.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-checkout [role="alert"] {
    font-size: 14px !important;
    line-height: 1.55 !important;
}
.woocommerce-checkout .woocommerce-error strong,
.woocommerce-checkout .woocommerce-error b,
.woocommerce-checkout .woocommerce-message strong,
.woocommerce-checkout .woocommerce-message b,
.woocommerce-checkout .woocommerce-info strong,
.woocommerce-checkout .woocommerce-info b,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout strong,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout b,
.woocommerce-checkout .wc-block-components-notice-banner strong,
.woocommerce-checkout .wc-block-components-notice-banner b,
.woocommerce-checkout [role="alert"] strong,
.woocommerce-checkout [role="alert"] b {
    font-weight: 400 !important;
}



/* ==========================================================================
   EVE LI V1.2.31 — CART NOTICE / CHECKOUT POSITION / WISHLIST STATE
   No visual redesign. Version marker for the focused commerce UX correction.
   ========================================================================== */


/* ==========================================================================
   EVE LI V1.2.32 — FINAL ADD-TO-BAG NOTICE SUPPRESSION
   The Shopping Bag drawer is the success confirmation. This CSS prevents a
   server-rendered WooCommerce cart-success notice from flashing before JS can
   remove it. Error and validation notices do not contain the cart-forward link.
   ========================================================================== */
.single-product .woocommerce-message:has(a.wc-forward) {
    display: none !important;
}

/* ==========================================================================
   EVE LI V1.2.34 — HOMEPAGE HERO VIDEO / ALL-DEVICE CORRECTION
   The same approved MP4 now plays on every device. Laptop/desktop preserve
   the established wide 2.44:1 hero. Touch devices (phones/tablets) use a
   full-viewport hero with the video centered and cover-fitted; no alternate
   crop file and no static-image substitution.
   ========================================================================== */

.home-hero {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate;
}

.home-hero-video {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    object-position: center center;
    background: transparent;
    pointer-events: none;
}

.home-hero .hero-content {
    position: relative;
    z-index: 1;
}

/* Phones and tablets: keep the same video, centered, and let it fill the
   device viewport. Cropping, when geometrically unavoidable, is symmetrical
   from the centered source; no separate mobile edit is requested. */
@media (hover: none) and (pointer: coarse) {
    body.home .home-hero {
        width: 100% !important;
        height: 100svh !important;
        min-height: 100svh !important;
        aspect-ratio: auto !important;
        background-position: center center !important;
    }

    body.home .home-hero-video {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
    }
}



/* ==========================================================================
   EVE LI V1.2.35 — HOMEPAGE HERO VIDEO-ONLY CORRECTION
   Removes the legacy homepage image from both the rendered hero and its
   loading state. The homepage hero is video-only and uses Firefly-4K.mp4 on
   every device. Touch devices continue to center/cover the same source.
   ========================================================================== */
body.home .home-hero {
    background-image: none !important;
}


/* ==========================================================================
   EVE LI V1.2.36 — HOMEPAGE HERO 1080P PERFORMANCE SOURCE
   The homepage hero behavior is unchanged from V1.2.35. The only media change
   is the lighter Firefly-1080P.mp4 source, used on every device. No poster or
   legacy static hero background is restored.
   ========================================================================== */


/* ==========================================================================
   EVE LI V1.2.38 — HOMEPAGE HERO SOURCE / CLICK-THROUGH REMOVAL
   Uses Firefly-4K-smaller.mp4 as the sole homepage hero media source. The
   hero is presentation-only: no product-page anchor or other click-through.
   All V1.2.36 responsive video behavior remains unchanged.
   ========================================================================== */
