/* ═══════════════════════════════════════════════════
   LIFETIME AMINOS — WooCommerce Theme v1.0.2
   Full-width theme with forced container breakouts
   ═══════════════════════════════════════════════════ */

:root {
    --la-bg: #FAF8F5;
    --la-surface: #F2EDE4;
    --la-card: #FFFFFF;
    --la-border: #E0D6C4;
    --la-border-lt: #EDE7DC;
    /* v1.8.0: golds deepened to meet WCAG AA contrast (4.5:1) for text
       and for white text on gold buttons; --la-accent-lt is for dark backgrounds */
    --la-accent: #80623A;
    --la-accent-dk: #6F5431;
    --la-accent-lt: #D4B98A;
    --la-gold: #85663D;
    --la-text: #1C1812;
    --la-text-mid: #5C5346;
    --la-text-muted: #6B6155;
    --la-dark: #1A1714;
    --la-white: #FFFFFF;
}

/* ═══ BASE ═══ */
body.la-theme {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: var(--la-text);
    background: var(--la-bg);
    overflow-x: hidden;
    margin: 0;
    padding-top: 38px;
}
body.la-theme *, body.la-theme *::before, body.la-theme *::after { box-sizing: border-box; }
body.la-theme img { max-width: 100%; height: auto; }
body.la-theme a { color: var(--la-accent); text-decoration: none; }
body.la-theme a:hover { color: var(--la-accent-dk); }
body.la-theme ::selection { background: rgba(184,149,106,.3); }
body.la-theme h1, body.la-theme h2, body.la-theme h3, body.la-theme h4, body.la-theme p { margin: 0; }
body.admin-bar.la-theme { padding-top: 70px; }

/* ═══ FORCE FULL-WIDTH ON LA PAGES ═══ */
body.la-fullwidth #page,
body.la-fullwidth #main,
body.la-fullwidth #primary,
body.la-fullwidth #content,
body.la-fullwidth .site-content,
body.la-fullwidth .site-main,
body.la-fullwidth main,
body.la-fullwidth .entry-content,
body.la-fullwidth .content-area,
body.la-fullwidth article,
body.la-fullwidth .page,
body.la-fullwidth .post,
body.la-fullwidth .hentry,
body.la-fullwidth .wp-block-post-content,
body.la-fullwidth .wp-site-blocks,
body.la-fullwidth .is-layout-constrained,
body.la-fullwidth .container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    float: none !important;
}

body.la-fullwidth .entry-header,
body.la-fullwidth .page-header,
body.la-fullwidth article header.entry-header,
body.la-fullwidth article > header,
body.la-fullwidth .wp-block-post-title,
body.la-fullwidth .entry-title,
body.la-fullwidth .page-title {
    display: none !important;
}

/* Remove sidebar on LA pages */
body.la-fullwidth #secondary,
body.la-fullwidth .sidebar,
body.la-fullwidth aside.widget-area {
    display: none !important;
}

body.la-fullwidth #primary {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
}

/* ═══ CONTAINER ═══ */
.la-container {
    max-width: 1260px;
    margin: 0 auto !important;
    padding: 0 24px !important;
    width: 100%;
}

/* ═══ BUTTONS ═══ */
.la-btn {
    display: inline-block;
    border-radius: 6px;
    padding: 14px 40px;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none !important;
    cursor: pointer;
    transition: all .2s;
    border: none;
    font-family: inherit;
    line-height: 1;
}
.la-btn--primary {
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    color: var(--la-white) !important;
    box-shadow: 0 12px 40px rgba(184,149,106,.3);
}
.la-btn--primary:hover { transform: translateY(-2px); color: var(--la-white) !important; }
.la-btn--small {
    padding: 8px 18px;
    font-size: 12px;
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    color: var(--la-white) !important;
}

/* ═══ TYPOGRAPHY HELPERS ═══ */
.la-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--la-accent);
    padding: 5px 16px;
    border: 1px solid rgba(184,149,106,.3);
    border-radius: 4px;
    margin-bottom: 12px;
}
.la-section-title {
    font-size: clamp(24px, 3.5vw, 38px);
    font-weight: 800;
    color: var(--la-text);
    margin: 0 0 12px !important;
    letter-spacing: -.02em;
    text-transform: uppercase;
    text-align: center;
}
.la-section-sub {
    color: var(--la-text-mid);
    font-size: 15px;
    max-width: 560px;
    margin: 0 auto 48px !important;
    text-align: center;
    line-height: 1.6;
}
.la-accent-text { color: var(--la-accent); font-weight: 700; word-break: break-word; margin: 4px 0; }
.la-muted { color: var(--la-text-muted); font-size: 13px; margin: 0; }

/* ═══ ANNOUNCEMENT BAR ═══ */
.la-announcement {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 999;
    background: var(--la-dark);
    padding: 10px 24px;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    color: var(--la-accent-lt);
    letter-spacing: .08em;
    text-transform: uppercase;
}
body.admin-bar .la-announcement { top: 32px; }
@media (max-width: 782px) {
    body.admin-bar .la-announcement { top: 46px; }
}

/* ═══ HERO ═══ */
.la-hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    background: linear-gradient(175deg, #0F0D0A 0%, #1A1714 40%, #2A251E 100%);
    padding: 140px 24px 100px;
    width: 100%;
    margin: 0 !important;
}
#la-particles-canvas { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; }
.la-hero-orb { position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none; z-index: 1; }
.la-hero-orb--1 { width: 500px; height: 500px; background: radial-gradient(circle, rgba(184,149,106,.12), transparent 70%); top: 10%; left: 15%; animation: la-drift1 18s ease-in-out infinite; }
.la-hero-orb--2 { width: 400px; height: 400px; background: radial-gradient(circle, rgba(201,169,110,.09), transparent 70%); top: 50%; right: 10%; animation: la-drift2 22s ease-in-out infinite; }
.la-hero-orb--3 { width: 350px; height: 350px; background: radial-gradient(circle, rgba(154,123,85,.08), transparent 70%); bottom: 10%; left: 40%; animation: la-drift3 20s ease-in-out infinite; }
@keyframes la-drift1 { 0%, 100% { transform: translate(0,0); } 25% { transform: translate(40px,-30px); } 50% { transform: translate(-20px,40px); } 75% { transform: translate(30px,20px); } }
@keyframes la-drift2 { 0%, 100% { transform: translate(0,0); } 25% { transform: translate(-30px,40px); } 50% { transform: translate(40px,-20px); } 75% { transform: translate(-20px,-30px); } }
@keyframes la-drift3 { 0%, 100% { transform: translate(0,0); } 25% { transform: translate(30px,30px); } 50% { transform: translate(-40px,-10px); } 75% { transform: translate(10px,-40px); } }
.la-hero-grid { position: absolute; inset: 0; z-index: 2; opacity: .025; background-image: linear-gradient(rgba(255,255,255,.3) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.3) 1px, transparent 1px); background-size: 60px 60px; pointer-events: none; }
.la-hero-vignette { position: absolute; inset: 0; z-index: 2; background: radial-gradient(ellipse at center, transparent 40%, rgba(15,13,10,.7) 100%); pointer-events: none; }
.la-hero-content { position: relative; z-index: 3; max-width: 740px; padding: 0 20px; }
.la-hero-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--la-accent-lt);
    margin-bottom: 20px;
    padding: 6px 18px;
    border: 1px solid rgba(184,149,106,.4);
    border-radius: 4px;
}
.la-hero h1 {
    font-size: clamp(36px, 7vw, 72px) !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    color: #F5F0E8 !important;
    letter-spacing: -.03em;
    margin: 0 0 24px !important;
}
.la-hero p {
    font-size: clamp(15px, 2vw, 18px);
    color: rgba(255,255,255,.5);
    line-height: 1.7;
    margin: 0 auto 40px !important;
    max-width: 520px;
}

/* ═══ TRUST SECTION ═══ */
.la-trust {
    padding: 80px 24px !important;
    background: var(--la-bg);
    width: 100%;
    margin: 0 !important;
}
.la-trust-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 24px !important;
    max-width: 1100px;
    margin: 0 auto !important;
}
.la-trust-card {
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    padding: 36px 28px;
    text-align: center;
}
.la-trust-icon { font-size: 36px; margin-bottom: 16px; line-height: 1; }
.la-trust-card h3 {
    margin: 0 0 10px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--la-text) !important;
}
.la-trust-card p {
    margin: 0 !important;
    font-size: 14px !important;
    color: var(--la-text-mid) !important;
    line-height: 1.6 !important;
}

/* ═══ WOOCOMMERCE PRODUCTS GRID — FIXED ═══ */
body.la-theme .woocommerce {
    max-width: 1260px;
    margin: 0 auto !important;
    padding: 60px 24px !important;
    width: 100% !important;
}
body.la-theme .woocommerce.columns-4,
body.la-theme .columns-4 {
    max-width: 1260px !important;
    margin: 0 auto !important;
}

/* CRITICAL: Force grid layout on products */
body.la-theme .woocommerce ul.products,
body.la-theme ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    width: 100% !important;
}

@media (max-width: 1100px) {
    body.la-theme .woocommerce ul.products,
    body.la-theme ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}
@media (max-width: 800px) {
    body.la-theme .woocommerce ul.products,
    body.la-theme ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 480px) {
    body.la-theme .woocommerce ul.products,
    body.la-theme ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

body.la-theme .woocommerce ul.products li.product,
body.la-theme ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    overflow: hidden;
    transition: all .3s;
    position: relative;
    float: none !important;
    clear: none !important;
}
body.la-theme .woocommerce ul.products li.product:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 48px rgba(184,149,106,.12);
    border-color: rgba(184,149,106,.4);
}
body.la-theme .woocommerce ul.products li.product a { text-decoration: none !important; color: inherit !important; }
body.la-theme .woocommerce ul.products li.product a img,
body.la-theme .woocommerce ul.products li.product img {
    width: 100% !important;
    height: 220px !important;
    object-fit: contain !important;
    background: linear-gradient(170deg, #1A1714, #0F0D0A) !important;
    padding: 20px !important;
    margin: 0 !important;
    display: block !important;
    border-radius: 12px 12px 0 0 !important;
}
body.la-theme .woocommerce ul.products li.product .woocommerce-loop-product__title {
    padding: 12px 20px 4px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--la-text) !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}
body.la-theme .la-product-cat {
    display: block;
    padding: 12px 20px 0 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--la-accent) !important;
}
body.la-theme .woocommerce ul.products li.product .price,
body.la-theme .woocommerce ul.products li.product > a > .price,
body.la-theme .woocommerce ul.products li.product > .price {
    display: block !important;
    padding: 4px 20px 16px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--la-accent) !important;
    margin: 0 !important;
}
body.la-theme .woocommerce ul.products li.product .price del {
    font-size: 14px !important;
    color: var(--la-text-muted) !important;
    font-weight: 500 !important;
    opacity: 1;
    margin-right: 8px;
}
body.la-theme .woocommerce ul.products li.product .price ins {
    text-decoration: none !important;
    font-weight: 800;
    color: var(--la-accent) !important;
    background: none;
}
body.la-theme .woocommerce ul.products li.product .button,
body.la-theme .woocommerce ul.products li.product .add_to_cart_button,
body.la-theme .woocommerce ul.products li.product a.button {
    display: block !important;
    margin: 0 20px 20px !important;
    padding: 12px !important;
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold)) !important;
    color: var(--la-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    text-align: center;
    cursor: pointer;
    transition: transform .2s;
    line-height: 1.2;
    width: auto !important;
}
body.la-theme .woocommerce ul.products li.product .button:hover { transform: translateY(-2px); }

.la-sale-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: #C0392B;
    color: #fff !important;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: 5px 12px;
    border-radius: 6px;
    z-index: 5;
}

/* Hide default WC onsale badge */
body.la-theme .woocommerce span.onsale,
body.la-theme .woocommerce ul.products li.product .onsale {
    display: none !important;
}

/* Hide result count and sorting on shop */
body.la-theme .woocommerce-result-count,
body.la-theme .woocommerce-ordering {
    display: none !important;
}

/* Hide product placeholder image styling */
body.la-theme .woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
    background: linear-gradient(170deg, #1A1714, #0F0D0A) !important;
    padding: 40px !important;
}

/* ═══ SINGLE PRODUCT PAGE ═══ */
body.la-theme.la-product-page .woocommerce div.product {
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding: 40px 24px 60px !important;
}
body.la-theme .woocommerce div.product div.images {
    background: linear-gradient(170deg, #1A1714, #0F0D0A) !important;
    border-radius: 18px !important;
    padding: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 400px !important;
    width: 48% !important;
}
body.la-theme .woocommerce div.product div.images img {
    max-height: 380px !important;
    object-fit: contain !important;
    background: transparent !important;
    padding: 0 !important;
}
body.la-theme .woocommerce div.product div.summary {
    width: 48% !important;
}
body.la-theme .woocommerce div.product .product_title {
    font-size: clamp(28px, 4vw, 40px) !important;
    font-weight: 800 !important;
    letter-spacing: -.02em;
    margin: 0 0 12px !important;
    color: var(--la-text) !important;
}
body.la-theme .woocommerce div.product p.price,
body.la-theme .woocommerce div.product span.price {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: var(--la-accent) !important;
    margin: 0 0 20px !important;
}
body.la-theme .woocommerce div.product p.price del { font-size: 18px; color: var(--la-text-muted) !important; }
body.la-theme .woocommerce div.product p.price ins { text-decoration: none; background: none; }

.la-formula { font-size: 14px; color: var(--la-text-mid); margin: 8px 0 !important; }
.la-coa-badge {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(184,149,106,.06);
    border: 1px solid rgba(184,149,106,.15);
    border-radius: 10px;
    padding: 12px 18px;
    margin: 16px 0;
    font-size: 13px;
    color: var(--la-text-mid);
    font-weight: 600;
}
.la-coa-badge a { color: var(--la-accent); font-weight: 700; }
.la-promo-banner {
    background: rgba(184,149,106,.08);
    border: 1px solid rgba(184,149,106,.18);
    border-radius: 10px;
    padding: 14px 18px;
    margin-top: 16px;
    text-align: center;
    font-size: 14px;
    font-weight: 800;
    color: var(--la-accent);
    text-transform: uppercase;
    letter-spacing: .04em;
}
body.la-theme .woocommerce div.product form.cart .button,
body.la-theme .woocommerce div.product form.cart button.single_add_to_cart_button {
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold)) !important;
    color: var(--la-white) !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 16px 32px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-transform: uppercase;
    letter-spacing: .05em;
    cursor: pointer;
    box-shadow: 0 6px 24px rgba(184,149,106,.2);
}
body.la-theme .woocommerce div.product form.cart .quantity .qty {
    border: 1px solid var(--la-border);
    border-radius: 8px;
    padding: 12px;
    font-size: 16px;
    font-weight: 700;
    width: 70px;
    text-align: center;
    font-family: inherit;
}

/* ═══ SPECS TABLE ═══ */
.la-specs-table {
    width: 100%;
    border-collapse: collapse;
    background: var(--la-surface);
    border-radius: 10px;
    overflow: hidden;
}
.la-specs-table tr { border-bottom: 1px solid var(--la-border-lt); }
.la-specs-table tr:last-child { border: none; }
.la-specs-table td { padding: 11px 16px; font-size: 13px; }
.la-specs-label { color: var(--la-text-muted); font-weight: 600; }
.la-specs-value { color: var(--la-text); font-weight: 600; text-align: right; word-break: break-word; }
.la-tab-content { font-size: 14px; color: var(--la-text-mid); line-height: 1.75; }
.la-tab-content strong { color: var(--la-text); }
.la-tab-content p { margin: 0 0 12px; }

/* ═══ PRODUCT TABS ═══ */
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 2px solid var(--la-border-lt) !important;
    padding: 0 !important;
    margin: 30px 0 20px !important;
    list-style: none !important;
    display: flex;
    background: none !important;
}
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs::before,
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none !important; }
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs li a {
    display: block;
    padding: 12px 20px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--la-text-muted) !important;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    transition: all .2s;
    background: none !important;
}
body.la-theme .woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--la-accent) !important;
    border-bottom-color: var(--la-accent);
}

/* Related products */
body.la-theme .woocommerce div.product .related {
    background: var(--la-surface);
    margin: 40px -24px -60px;
    padding: 64px 24px;
}
body.la-theme .woocommerce div.product .related h2 {
    font-size: clamp(20px, 3vw, 28px);
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 32px;
    text-align: center;
}

/* ═══ ABOUT ═══ */
.la-about {
    padding: 100px 24px !important;
    background: var(--la-surface);
    width: 100%;
    margin: 0 !important;
}
.la-about-grid {
    max-width: 700px;
    margin: 0 auto !important;
}
.la-about-text h2 {
    font-size: clamp(24px, 3.5vw, 36px) !important;
    font-weight: 800 !important;
    margin: 0 0 24px !important;
    text-transform: uppercase;
    letter-spacing: -.02em;
    color: var(--la-text) !important;
}
.la-about-text p {
    font-size: 15px !important;
    color: var(--la-text-mid) !important;
    line-height: 1.7 !important;
    margin: 0 0 16px !important;
}
.la-about-text strong { color: var(--la-text); }

/* ═══ FAQ ═══ */
.la-faq {
    padding: 100px 24px !important;
    background: var(--la-bg);
    width: 100%;
    margin: 0 !important;
}
.la-faq-list { display: flex; flex-direction: column; gap: 10px; max-width: 740px; margin: 0 auto; }
.la-faq-item {
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 10px;
    overflow: hidden;
    transition: border-color .3s;
}
.la-faq-item.open { border-color: rgba(184,149,106,.4); }
.la-faq-q {
    width: 100%;
    padding: 18px 22px;
    background: none;
    border: none;
    color: var(--la-text);
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    font-family: inherit;
}
.la-faq-toggle { font-size: 20px; color: var(--la-accent); transition: transform .3s; min-width: 24px; text-align: center; }
.la-faq-item.open .la-faq-toggle { transform: rotate(45deg); }
.la-faq-a { display: none; padding: 0 22px 18px; color: var(--la-text-mid); font-size: 14px; line-height: 1.7; }
.la-faq-a p { margin: 0 !important; }
.la-faq-item.open .la-faq-a { display: block; }

/* ═══ CTA ═══ */
.la-cta {
    padding: 80px 24px !important;
    text-align: center;
    background: linear-gradient(170deg, #1A1714, #0F0D0A);
    width: 100%;
    margin: 0 !important;
}
.la-cta h2 { font-size: clamp(24px, 4vw, 38px) !important; font-weight: 800 !important; color: #F5F0E8 !important; margin: 0 0 16px !important; text-transform: uppercase; }
.la-cta p { color: rgba(255,255,255,.5) !important; font-size: 15px !important; margin: 0 0 32px !important; line-height: 1.6 !important; }

/* ═══ CONTACT ═══ */
.la-contact {
    padding: 100px 24px !important;
    background: var(--la-surface);
    width: 100%;
    margin: 0 !important;
}
.la-contact-cards {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 20px !important;
    max-width: 1000px;
    margin: 0 auto !important;
}
.la-contact-card {
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 14px;
    padding: 32px 28px;
    text-align: center;
    transition: all .3s;
    display: block;
    text-decoration: none !important;
    color: inherit !important;
}
.la-contact-card:hover { border-color: rgba(184,149,106,.4); transform: translateY(-4px); color: inherit !important; }
.la-contact-icon { font-size: 36px; margin-bottom: 14px; line-height: 1; }
.la-contact-card h3 {
    margin: 0 0 8px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--la-text) !important;
}

/* ═══ COAS PAGE ═══ */
.la-coas {
    padding: 80px 24px !important;
    background: var(--la-bg);
    min-height: 60vh;
    width: 100%;
    margin: 0 !important;
}
.la-coa-search {
    display: block;
    max-width: 420px;
    margin: 0 auto 32px !important;
    width: 100%;
    padding: 14px 18px;
    background: var(--la-card);
    border: 1px solid var(--la-border);
    border-radius: 10px;
    font-size: 15px;
    color: var(--la-text);
    outline: none;
    font-family: inherit;
}
.la-coa-search:focus { border-color: var(--la-accent); box-shadow: 0 0 0 3px rgba(184,149,106,.12); }
.la-coa-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 12px !important;
    max-width: 1000px;
    margin: 0 auto !important;
}
.la-coa-item {
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 10px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all .2s;
}
.la-coa-item:hover { border-color: rgba(184,149,106,.4); box-shadow: 0 4px 16px rgba(184,149,106,.08); }
.la-coa-sublabel {
    display: block;
    font-size: 10px;
    font-weight: 700;
    color: var(--la-text-muted);
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 3px;
}
.la-coa-name {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: var(--la-text);
    text-transform: uppercase;
    letter-spacing: .02em;
}
.la-coa-note {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    background: rgba(184,149,106,.06);
    border: 1px solid rgba(184,149,106,.15);
    border-radius: 10px;
    padding: 16px 20px;
    margin: 40px auto 0;
    max-width: 1000px;
}
.la-coa-note span { font-size: 20px; flex-shrink: 0; }
.la-coa-note p { font-size: 13px; color: var(--la-text-mid); line-height: 1.5; margin: 0; }

/* ═══ AGE GATE ═══ */
.la-age-gate {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: #0A0907;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    transition: opacity .4s;
}
.la-age-gate.fade-out { opacity: 0; }
.la-age-gate-card {
    background: var(--la-white);
    border-radius: 16px;
    padding: 52px 48px 44px;
    max-width: 440px;
    width: 100%;
    text-align: center;
    box-shadow: 0 24px 80px rgba(0,0,0,.4);
}
.la-age-gate-logo { margin-bottom: 32px; }
.la-logo-main {
    display: block;
    font-size: 28px;
    font-weight: 600;
    letter-spacing: 8px;
    color: var(--la-text);
    text-transform: uppercase;
}
.la-logo-accent {
    display: block;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 10px;
    color: var(--la-accent);
    text-transform: uppercase;
    margin-top: 4px;
}
.la-age-gate-divider { width: 48px; height: 1px; background: var(--la-border); margin: 0 auto 28px; }
.la-age-gate-question { font-size: 16px; font-weight: 500; color: var(--la-text-mid); margin: 0 0 28px; line-height: 1.5; }
.la-age-gate-buttons { display: flex; gap: 12px; justify-content: center; margin-bottom: 20px; }
.la-age-btn {
    padding: 12px 36px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    font-family: inherit;
    text-transform: uppercase;
    letter-spacing: .06em;
    transition: all .2s;
    background: var(--la-dark);
    border: 2px solid var(--la-dark);
    color: var(--la-white);
}
.la-age-btn:hover { background: transparent; color: var(--la-dark); }
.la-age-remember {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
    margin-bottom: 20px;
    user-select: none;
    font-size: 13px;
    color: var(--la-text-mid);
    font-weight: 500;
}
.la-age-remember input { accent-color: var(--la-accent); width: 16px; height: 16px; margin: 0; }
.la-age-gate-disclaimer {
    font-size: 11px;
    color: var(--la-text-muted);
    margin: 0 auto;
    line-height: 1.5;
    max-width: 320px;
}

/* ═══ SHIPPING NOTICE ═══ */
.la-shipping-notice {
    background: rgba(184,149,106,.08);
    border: 1px solid rgba(184,149,106,.18);
    border-radius: 10px;
    padding: 12px 20px;
    margin-bottom: 20px;
    text-align: center;
    font-size: 14px;
    color: var(--la-accent);
    font-weight: 600;
}
.la-shipping-notice--free {
    background: rgba(39,174,96,.08);
    border-color: rgba(39,174,96,.18);
    color: #27ae60;
}

/* ═══ RESPONSIVE ═══ */
@media (max-width: 860px) {
    body.la-theme .woocommerce div.product div.images,
    body.la-theme .woocommerce div.product div.summary {
        width: 100% !important;
        float: none !important;
    }
}
@media (max-width: 768px) {
    .la-hero { padding: 120px 20px 80px; }
    .la-hero h1 { font-size: clamp(32px, 8vw, 48px) !important; }
    .la-trust, .la-contact { padding: 60px 20px !important; }
    .la-about, .la-faq { padding: 60px 20px !important; }
    .la-age-gate-card { padding: 36px 28px 32px; }
    .la-coa-grid { grid-template-columns: 1fr !important; }
    body.la-theme .woocommerce div.product div.images { min-height: 280px; padding: 24px !important; }
}

/* ═══════════════════════════════════════════════════
   v1.0.3 — TAKEOVER TEMPLATE: NAVBAR + FOOTER
   ═══════════════════════════════════════════════════ */

/* Takeover reset — our template controls everything */
body.la-takeover {
    padding-top: 0 !important;
    margin: 0 !important;
    background: var(--la-bg);
}
body.la-takeover .la-main { width: 100%; min-height: 60vh; }
.la-page-pad { padding-top: 120px; }
body.la-takeover.la-home .la-page-pad,
body.la-takeover .la-hero { padding-top: 140px; }

/* ═══ NAVBAR ═══ */
.la-navbar {
    position: fixed;
    top: 38px; left: 0; right: 0;
    z-index: 998;
    background: transparent;
    border-bottom: 1px solid transparent;
    transition: all .35s;
}
body.admin-bar .la-navbar { top: 70px; }
@media (max-width: 782px) {
    body.admin-bar .la-navbar { top: 84px; }
}
.la-navbar.scrolled,
.la-navbar.la-nav-solid {
    background: rgba(250, 248, 245, 0.96);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border-bottom: 1px solid var(--la-border);
}
.la-navbar-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 64px;
}
.la-navbar-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none !important;
}
.la-brand-text { display: flex; flex-direction: column; line-height: 1; }
.la-brand-main {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 5px;
    color: #F5F0E8;
    text-transform: uppercase;
    transition: color .35s;
}
.la-navbar.scrolled .la-brand-main,
.la-navbar.la-nav-solid .la-brand-main { color: var(--la-text); }
.la-brand-main--light { color: #F5F0E8 !important; font-size: 20px; letter-spacing: 6px; }
.la-brand-accent {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 7px;
    color: var(--la-accent);
    text-transform: uppercase;
    margin-top: 2px;
}
.la-navbar-links {
    display: flex;
    align-items: center;
    gap: 22px;
}
.la-navbar-links > a {
    color: rgba(255,255,255,.7);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none !important;
    letter-spacing: .03em;
    text-transform: uppercase;
    transition: color .3s;
}
.la-navbar.scrolled .la-navbar-links > a,
.la-navbar.la-nav-solid .la-navbar-links > a { color: var(--la-text-muted); }
.la-navbar-links > a:hover { color: var(--la-accent) !important; }
.la-btn--nav {
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    border-radius: 6px;
    padding: 10px 20px !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.la-btn--nav:hover { color: #fff !important; transform: translateY(-1px); }
.la-nav-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px; height: 40px;
    border: 1.5px solid rgba(255,255,255,.25);
    border-radius: 8px;
    color: rgba(255,255,255,.7) !important;
    transition: all .3s;
}
.la-navbar.scrolled .la-nav-icon,
.la-navbar.la-nav-solid .la-nav-icon {
    border-color: var(--la-border);
    color: var(--la-text-mid) !important;
}
.la-nav-icon:hover { border-color: var(--la-accent); color: var(--la-accent) !important; }
.la-cart-count {
    position: absolute;
    top: -7px; right: -7px;
    min-width: 19px; height: 19px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
}
.la-nav-toggle {
    display: none;
    background: none;
    border: none;
    font-size: 26px;
    color: #F5F0E8;
    cursor: pointer;
    padding: 4px 8px;
}
.la-navbar.scrolled .la-nav-toggle,
.la-navbar.la-nav-solid .la-nav-toggle { color: var(--la-text); }

@media (max-width: 900px) {
    .la-nav-toggle { display: block; }
    .la-navbar-links {
        display: none;
        position: absolute;
        top: 64px; left: 0; right: 0;
        background: rgba(250,248,245,.98);
        backdrop-filter: blur(18px);
        flex-direction: column;
        align-items: stretch;
        padding: 12px 24px 24px;
        gap: 0;
        border-bottom: 1px solid var(--la-border);
    }
    .la-navbar-links.open { display: flex; }
    .la-navbar-links > a {
        color: var(--la-text-mid) !important;
        padding: 14px 0;
        border-bottom: 1px solid var(--la-border-lt);
        font-size: 15px;
    }
    .la-btn--nav { text-align: center; margin-top: 12px; border-bottom: none !important; }
    .la-nav-icon { width: 100%; border: none; justify-content: flex-start; padding: 14px 0; height: auto; }
    .la-cart-count { position: static; margin-left: 8px; }
}

/* ═══ FOOTER ═══ */
.la-footer {
    background: var(--la-dark);
    color: #8C8275;
    padding: 64px 24px 32px;
    width: 100%;
}
.la-footer-inner { max-width: 1260px; margin: 0 auto; }
.la-footer-top {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.la-footer-brand .la-brand-text { margin-bottom: 16px; }
.la-footer-tagline {
    font-size: 13px;
    line-height: 1.7;
    color: rgba(255,255,255,.35);
    margin: 0 0 12px !important;
    max-width: 280px;
}
.la-footer-contact a { color: var(--la-accent-lt) !important; font-size: 13px; font-weight: 600; }
.la-footer-col h4,
.la-footer-col h2.la-footer-heading {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #F5F0E8;
    margin: 0 0 16px !important;
}
.la-footer-col a {
    display: block;
    color: rgba(255,255,255,.4) !important;
    font-size: 13px;
    padding: 5px 0;
    text-decoration: none !important;
    transition: color .2s;
}
.la-footer-col a:hover { color: var(--la-accent-lt) !important; }
.la-footer-disclaimer {
    padding: 24px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.la-footer-disclaimer p {
    font-size: 11px;
    line-height: 1.7;
    color: rgba(255,255,255,.25);
    margin: 0 !important;
}
.la-footer-disclaimer strong { color: rgba(255,255,255,.4); }
.la-footer-bottom {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 24px;
    font-size: 12px;
    color: rgba(255,255,255,.25);
}
@media (max-width: 800px) {
    .la-footer-top { grid-template-columns: 1fr 1fr; }
    .la-footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
    .la-footer-top { grid-template-columns: 1fr; }
}

/* ═══ WC PAGES INSIDE TAKEOVER (cart/checkout/account) ═══ */
.la-wc-page { padding-bottom: 80px; background: var(--la-bg); }
.la-wc-page .la-container { max-width: 1100px; }
.la-wc-page h1, .la-wc-page h2, .la-wc-page h3 { color: var(--la-text); font-weight: 800; }
body.la-takeover .woocommerce table.shop_table {
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    border-collapse: separate;
    border-spacing: 0;
}
body.la-takeover .woocommerce table.shop_table th {
    background: var(--la-surface);
    color: var(--la-text);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: .04em;
}
body.la-takeover .woocommerce button.button,
body.la-takeover .woocommerce a.button,
body.la-takeover .woocommerce input.button,
body.la-takeover .woocommerce #respond input#submit,
body.la-takeover .woocommerce button.button.alt,
body.la-takeover .woocommerce a.button.alt {
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold)) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: 12px 24px !important;
}
body.la-takeover .woocommerce form .form-row input.input-text,
body.la-takeover .woocommerce form .form-row textarea,
body.la-takeover .woocommerce form .form-row select {
    border: 1px solid var(--la-border);
    border-radius: 8px;
    padding: 12px 14px;
    font-family: inherit;
    background: var(--la-card);
}

/* Shop section on takeover shop page */
.la-shop-section { background: var(--la-surface); padding-bottom: 80px; }
.la-shop-section .woocommerce { padding-top: 0 !important; }

/* ═══════════════════════════════════════════════════
   v1.0.5 — VIAL IMAGES + WC SCOPE FIXES
   ═══════════════════════════════════════════════════ */

/* Center + constrain the shop grid wrapper */
.la-shop-grid-wrap {
    max-width: 1260px;
    margin: 0 auto !important;
    padding: 0 24px !important;
    width: 100%;
}
.la-shop-section { background: var(--la-surface); padding-bottom: 80px !important; }

/* Kill WooCommerce float layout completely inside our scope */
.la-wc-scope ul.products::before,
.la-wc-scope ul.products::after { display: none !important; }
.la-wc-scope ul.products li.product.first,
.la-wc-scope ul.products li.product.last {
    margin: 0 !important;
    clear: none !important;
}

/* Grid — applies via .la-wc-scope so it works on shop AND homepage */
.la-wc-scope ul.products,
body.la-theme .woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    width: 100% !important;
}
@media (max-width: 1100px) {
    .la-wc-scope ul.products,
    body.la-theme .woocommerce ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 800px) {
    .la-wc-scope ul.products,
    body.la-theme .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 480px) {
    .la-wc-scope ul.products,
    body.la-theme .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}

.la-wc-scope ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    overflow: hidden;
    transition: all .3s;
    position: relative;
    float: none !important;
    display: flex;
    flex-direction: column;
}
.la-wc-scope ul.products li.product:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 48px rgba(184,149,106,.12);
    border-color: rgba(184,149,106,.4);
}
.la-wc-scope ul.products li.product a { text-decoration: none !important; color: inherit !important; }

/* Hide WC's default onsale badge everywhere in scope */
.la-wc-scope span.onsale,
body.la-theme span.onsale { display: none !important; }

/* Loop titles, category, price, button */
.la-wc-scope ul.products li.product .woocommerce-loop-product__title {
    padding: 10px 20px 4px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: var(--la-text) !important;
    margin: 0 !important;
    line-height: 1.3 !important;
    text-align: center;
}
.la-wc-scope .la-product-cat {
    display: block;
    padding: 14px 20px 0 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--la-accent) !important;
    text-align: center;
}
.la-wc-scope ul.products li.product .price {
    display: block !important;
    padding: 4px 20px 14px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--la-accent) !important;
    margin: 0 !important;
    text-align: center;
}
.la-wc-scope ul.products li.product .price del {
    font-size: 14px !important;
    color: var(--la-text-muted) !important;
    font-weight: 500 !important;
    opacity: 1;
    margin-right: 6px;
}
.la-wc-scope ul.products li.product .price ins {
    text-decoration: none !important;
    font-weight: 800;
    color: var(--la-accent) !important;
    background: none;
}
.la-wc-scope ul.products li.product .button,
.la-wc-scope ul.products li.product a.button,
.la-wc-scope ul.products li.product .add_to_cart_button,
.la-wc-scope .button,
.la-wc-scope a.button,
.la-wc-scope button.button {
    display: block !important;
    margin: auto 20px 20px !important;
    padding: 12px !important;
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold)) !important;
    color: var(--la-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: .04em;
    text-align: center;
    cursor: pointer;
    transition: transform .2s;
    line-height: 1.2 !important;
    font-family: inherit !important;
}
.la-wc-scope ul.products li.product .button:hover { transform: translateY(-2px); }
.la-wc-scope ul.products li.product .added_to_cart {
    display: block;
    text-align: center;
    padding: 0 20px 16px;
    font-size: 12px;
    font-weight: 700;
    color: var(--la-accent) !important;
}

/* ═══ VIAL IMAGE WRAPPERS ═══ */
.la-vial-wrap {
    background: linear-gradient(170deg, #1A1714, #0F0D0A);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.la-vial-wrap--loop {
    height: 230px;
    padding: 16px;
    border-radius: 12px 12px 0 0;
}
.la-vial-wrap--loop .la-vial { max-height: 200px; width: auto; }
.la-vial-wrap--single {
    min-height: 460px;
    padding: 48px 32px;
    border-radius: 18px;
    width: 46% !important;
    float: left;
}
.la-vial-purity {
    margin-top: 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    padding: 10px 18px;
    font-size: 12px;
    font-weight: 600;
    color: var(--la-accent-lt);
}

/* Real product photos in loop keep the dark treatment */
.la-wc-scope ul.products li.product > a > img,
.la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
    width: 100% !important;
    height: 230px !important;
    object-fit: contain !important;
    background: linear-gradient(170deg, #1A1714, #0F0D0A) !important;
    padding: 20px !important;
    margin: 0 !important;
    display: block !important;
    border-radius: 12px 12px 0 0;
}

/* ═══ SINGLE PRODUCT LAYOUT ═══ */
.la-single-wrap { background: var(--la-bg); padding-bottom: 60px; }
.la-crumbs {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--la-text-muted);
    padding: 0 0 20px;
}
.la-crumbs a { color: var(--la-accent) !important; font-weight: 600; }
.la-crumbs strong { color: var(--la-text); font-weight: 600; }

.la-wc-scope div.product {
    max-width: 1260px;
    margin: 0 auto !important;
    padding: 0 24px 40px !important;
    display: block;
}
.la-wc-scope div.product::after { content: ""; display: table; clear: both; }
.la-wc-scope div.product div.images {
    width: 46% !important;
    float: left !important;
    margin-bottom: 32px !important;
    background: linear-gradient(170deg, #1A1714, #0F0D0A);
    border-radius: 18px;
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 420px;
}
.la-wc-scope div.product div.images img {
    max-height: 400px;
    object-fit: contain;
}
.la-wc-scope div.product div.summary {
    width: 50% !important;
    float: right !important;
    margin-bottom: 32px !important;
}
.la-wc-scope div.product .product_title {
    font-size: clamp(28px, 4vw, 40px) !important;
    font-weight: 800 !important;
    letter-spacing: -.02em;
    margin: 0 0 12px !important;
    color: var(--la-text) !important;
}
.la-wc-scope div.product p.price,
.la-wc-scope div.product span.price {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: var(--la-accent) !important;
    margin: 0 0 20px !important;
    display: block;
}
.la-wc-scope div.product p.price del { font-size: 18px; color: var(--la-text-muted) !important; opacity: 1; }
.la-wc-scope div.product p.price ins { text-decoration: none; background: none; }
.la-wc-scope div.product .woocommerce-product-details__short-description {
    font-size: 14px;
    color: var(--la-text-mid);
    line-height: 1.7;
    margin-bottom: 16px;
}
.la-wc-scope div.product form.cart {
    display: flex;
    gap: 12px;
    align-items: stretch;
    flex-wrap: wrap;
    margin: 20px 0 !important;
}
.la-wc-scope div.product form.cart .quantity {
    display: flex;
    align-items: center;
}
.la-wc-scope div.product form.cart .quantity .qty {
    border: 1px solid var(--la-border);
    border-radius: 8px;
    padding: 13px;
    font-size: 16px;
    font-weight: 700;
    width: 76px;
    text-align: center;
    font-family: inherit;
    height: 100%;
    box-sizing: border-box;
}
.la-wc-scope div.product form.cart .single_add_to_cart_button {
    flex: 1;
    min-width: 200px;
    margin: 0 !important;
    padding: 15px 32px !important;
    font-size: 15px !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 24px rgba(184,149,106,.2);
}

/* Tabs inside scope */
.la-wc-scope .woocommerce-tabs { clear: both; padding-top: 12px; }
.la-wc-scope .woocommerce-tabs ul.tabs {
    border-bottom: 2px solid var(--la-border-lt) !important;
    padding: 0 !important;
    margin: 0 0 20px !important;
    list-style: none !important;
    display: flex !important;
    background: none !important;
    overflow-x: auto;
}
.la-wc-scope .woocommerce-tabs ul.tabs::before,
.la-wc-scope .woocommerce-tabs ul.tabs::after { display: none !important; }
.la-wc-scope .woocommerce-tabs ul.tabs li {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
}
.la-wc-scope .woocommerce-tabs ul.tabs li a {
    display: block;
    padding: 12px 20px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--la-text-muted) !important;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    background: none !important;
    box-shadow: none !important;
    white-space: nowrap;
}
.la-wc-scope .woocommerce-tabs ul.tabs li.active a {
    color: var(--la-accent) !important;
    border-bottom-color: var(--la-accent);
}
.la-wc-scope .woocommerce-tabs .panel {
    padding: 0 !important;
    margin: 0 0 32px !important;
    font-size: 14px;
    color: var(--la-text-mid);
    line-height: 1.75;
}
.la-wc-scope .woocommerce-tabs .panel h2:first-of-type { display: none; }

/* Related products */
.la-wc-scope .related.products,
.la-wc-scope section.related {
    clear: both;
    background: var(--la-surface);
    margin: 40px -24px 0 !important;
    padding: 56px 24px 64px !important;
}
.la-wc-scope .related.products > h2,
.la-wc-scope section.related > h2 {
    font-size: clamp(20px, 3vw, 28px) !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    margin: 0 0 32px !important;
    text-align: center;
    color: var(--la-text) !important;
}

/* Quantity buttons some themes add */
.la-wc-scope .quantity .plus, .la-wc-scope .quantity .minus { display: none; }

/* WC notices (added to cart etc.) */
.la-wc-scope .woocommerce-message,
body.la-theme .woocommerce-message {
    border-top-color: var(--la-accent) !important;
    background: var(--la-card);
    color: var(--la-text);
    border-radius: 8px;
}
.la-wc-scope .woocommerce-message::before { color: var(--la-accent) !important; }

@media (max-width: 860px) {
    .la-wc-scope div.product div.images,
    .la-vial-wrap--single,
    .la-wc-scope div.product div.summary {
        width: 100% !important;
        float: none !important;
    }
    .la-wc-scope .related.products { margin: 40px -16px 0 !important; }
}

/* ═══════════════════════════════════════════════════
   v1.0.6 — GRID EVENNESS + HEADER CLEARANCE
   ═══════════════════════════════════════════════════ */

/* Clear the fixed navbar properly (announcement 38 + navbar 64 + breathing room) */
.la-page-pad { padding-top: 150px !important; }
body.admin-bar .la-page-pad { padding-top: 170px !important; }
.la-shop-section .la-section-title { margin-top: 0 !important; }

/* Anchor targets shouldn't hide under the navbar */
section[id], div[id] { scroll-margin-top: 120px; }

/* ── KILL STRAY NODES INSIDE THE PRODUCT GRID ──
   Anything inside ul.products that is not a li.product
   (notice wrappers, category tiles, injected divs) gets
   removed from the grid so no cell is silently occupied. */
.la-wc-scope ul.products > *:not(li.product),
body.la-theme .woocommerce ul.products > *:not(li.product) {
    display: none !important;
}
.la-wc-scope ul.products > li:empty,
body.la-theme .woocommerce ul.products > li:empty {
    display: none !important;
}
.la-wc-scope ul.products > li.product {
    grid-column: auto !important;
    grid-row: auto !important;
}

/* Notices render above the grid, full width, styled */
.la-wc-scope .woocommerce-notices-wrapper {
    display: block !important;
    grid-column: 1 / -1;
    width: 100%;
    max-width: 1260px;
    margin: 0 auto 20px !important;
}
.la-shop-grid-wrap > .woocommerce-notices-wrapper:empty { display: none !important; }

/* Equal-height cards: image area fixed, content flexes, button pinned bottom */
.la-wc-scope ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
}
.la-wc-scope ul.products li.product > a.woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto;
}
.la-wc-scope ul.products li.product .button { margin-top: auto !important; }

/* Pagination (if it ever appears) */
.la-wc-scope nav.woocommerce-pagination {
    grid-column: 1 / -1;
    text-align: center;
    padding: 24px 0 0;
}
.la-wc-scope nav.woocommerce-pagination ul {
    display: inline-flex;
    gap: 6px;
    border: none !important;
    margin: 0;
}
.la-wc-scope nav.woocommerce-pagination ul li {
    border: none !important;
    overflow: hidden;
    border-radius: 8px;
}
.la-wc-scope nav.woocommerce-pagination ul li a,
.la-wc-scope nav.woocommerce-pagination ul li span {
    padding: 10px 16px;
    font-weight: 700;
    color: var(--la-text-mid);
    background: var(--la-card);
    border: 1px solid var(--la-border-lt) !important;
    border-radius: 8px;
}
.la-wc-scope nav.woocommerce-pagination ul li span.current {
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    color: #fff;
    border-color: transparent !important;
}

/* ═══════════════════════════════════════════════════
   v1.0.7 — THE PHANTOM GRID CELL FIX
   WooCommerce adds `ul.products::before {content:" ";display:table}`
   as a clearfix. Inside a CSS grid, that pseudo-element becomes an
   anonymous grid ITEM occupying the first cell — shifting row one.
   content:none removes it entirely, everywhere.
   ═══════════════════════════════════════════════════ */
body.la-theme ul.products::before,
body.la-theme ul.products::after,
body.la-theme .woocommerce ul.products::before,
body.la-theme .woocommerce ul.products::after,
.la-wc-scope ul.products::before,
.la-wc-scope ul.products::after,
body.la-theme .related ul.products::before,
body.la-theme .related ul.products::after {
    content: none !important;
    display: none !important;
}

/* Same phantom-item guard for any other WC clearfix that could
   land inside our grid contexts */
body.la-theme .woocommerce::before,
body.la-theme .woocommerce::after {
    content: none !important;
}

/* Give the homepage shortcode grid the same scope styling as shop */
.la-shop-section .la-wc-scope { display: block; }

/* ═══════════════════════════════════════════════════
   v1.0.8 — BIGGER PRODUCT CARDS (reference-matched)
   ═══════════════════════════════════════════════════ */

/* Slightly wider grid container, more breathing room */
.la-shop-grid-wrap,
body.la-theme .woocommerce {
    max-width: 1320px !important;
}
.la-wc-scope ul.products,
body.la-theme .woocommerce ul.products {
    gap: 24px !important;
}

/* Much taller image area with a bigger vial */
.la-vial-wrap--loop {
    height: 350px !important;
    padding: 24px !important;
}
.la-vial-wrap--loop .la-vial {
    max-height: 300px !important;
    width: auto !important;
    height: auto !important;
}

/* Real photos get the same larger stage */
.la-wc-scope ul.products li.product > a > img,
.la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
    height: 350px !important;
    padding: 28px !important;
}

/* Left-aligned card info like the reference */
.la-wc-scope .la-product-cat {
    text-align: left !important;
    padding: 16px 22px 0 !important;
    font-size: 11px !important;
}
.la-wc-scope ul.products li.product .woocommerce-loop-product__title {
    text-align: left !important;
    padding: 8px 22px 4px !important;
    font-size: 19px !important;
}
.la-wc-scope ul.products li.product .price {
    text-align: left !important;
    padding: 4px 22px 16px !important;
    font-size: 19px !important;
}
.la-wc-scope ul.products li.product .price del { font-size: 15px !important; }

/* Bigger button to match the larger card */
.la-wc-scope ul.products li.product .button {
    margin: auto 22px 22px !important;
    padding: 14px !important;
    font-size: 13px !important;
}

/* Bigger sale badge */
.la-sale-badge {
    top: 14px;
    left: 14px;
    font-size: 12px;
    padding: 6px 14px;
}

/* Responsive: keep cards generous on smaller screens */
@media (max-width: 1100px) {
    .la-vial-wrap--loop { height: 320px !important; }
    .la-wc-scope ul.products li.product > a > img { height: 320px !important; }
}
@media (max-width: 800px) {
    .la-vial-wrap--loop { height: 300px !important; }
    .la-wc-scope ul.products li.product > a > img { height: 300px !important; }
}

/* ═══════════════════════════════════════════════════
   v1.0.9 — WIDE ABOUT (two-column) + WIDE FAQ
   ═══════════════════════════════════════════════════ */

/* About: full 1260px two-column — text left, vial panel right */
.la-about { padding: 100px 24px !important; }
.la-about-grid {
    max-width: 1260px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 1.1fr 1fr !important;
    gap: 64px !important;
    align-items: center !important;
    width: 100%;
}
.la-about-text h2 {
    text-align: left !important;
    font-size: clamp(26px, 3.5vw, 40px) !important;
}
.la-about-text p { font-size: 15px !important; max-width: 560px; }

/* Vial showcase panel (dark, rounded, 2x2 vials) */
.la-about-visual {
    background: linear-gradient(170deg, #1A1714, #0F0D0A);
    border-radius: 18px;
    padding: 44px 28px;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 12px;
    justify-items: center;
    align-items: center;
    box-shadow: 0 24px 64px rgba(26, 23, 20, .18);
}
.la-about-vial { display: flex; justify-content: center; }
.la-about-vial .la-vial {
    max-height: 200px;
    width: auto;
    height: auto;
}

/* FAQ: widen to full 1260px, left-aligned heading like reference */
.la-faq .la-container.la-faq-wide { max-width: 1260px !important; }
.la-faq .la-faq-wide .la-section-title { text-align: left !important; }
.la-faq-list {
    max-width: 100% !important;
    margin: 0 !important;
}
.la-faq-q { font-size: 16px; padding: 20px 24px; }
.la-faq-a { padding: 0 24px 20px; font-size: 15px; }

/* Contact heading alignment stays centered; widen cards row */
.la-contact-cards { max-width: 1260px !important; }

/* Responsive: stack About, visual on top */
@media (max-width: 900px) {
    .la-about-grid { grid-template-columns: 1fr !important; gap: 40px !important; }
    .la-about-visual { order: -1; padding: 32px 20px; }
    .la-about-vial .la-vial { max-height: 160px; }
    .la-about-text p { max-width: 100%; }
}

/* ═══════════════════════════════════════════════════
   v1.1.0 — REBIRTH-STYLE PRODUCT PAGE SUMMARY
   ═══════════════════════════════════════════════════ */

/* Strength label + chip */
.la-strength { margin: 4px 0 18px; }
.la-strength-label {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: var(--la-text);
    margin-bottom: 10px;
}
.la-strength-chip {
    display: inline-block;
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 6px;
    letter-spacing: .02em;
}

/* Stock count ("100 in stock") */
.la-wc-scope div.product .stock.in-stock {
    color: var(--la-text) !important;
    font-size: 14px;
    font-weight: 600;
    margin: 14px 0 10px !important;
}
.la-wc-scope div.product .stock.out-of-stock {
    color: #C0392B !important;
    font-weight: 700;
}

/* Promo: plain bold text like the reference (no box) */
.la-promo-banner {
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 14px 0 0 !important;
    margin: 0 !important;
    text-align: left !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: var(--la-text) !important;
    letter-spacing: .03em;
    text-transform: uppercase;
    width: 100%;
}

/* Inline formula + description block */
.la-formula {
    font-size: 14px !important;
    color: var(--la-text-mid) !important;
    margin: 22px 0 8px !important;
    line-height: 1.7;
}
.la-formula strong { color: var(--la-text); }
.la-inline-desc p {
    font-size: 14px !important;
    color: var(--la-text-mid) !important;
    line-height: 1.8 !important;
    margin: 0 0 16px !important;
}
.la-inline-desc strong { color: var(--la-text); }

/* Social share row */
.la-share {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    align-items: center;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--la-border-lt);
}
.la-share a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 700;
    color: var(--la-text) !important;
    text-decoration: none !important;
    transition: color .2s;
}
.la-share a:hover { color: var(--la-accent) !important; }
.la-share a svg { display: block; }

/* Related Products heading: left-aligned, normal case (reference style) */
.la-wc-scope .related.products > h2,
.la-wc-scope section.related > h2 {
    text-align: left !important;
    text-transform: none !important;
    font-size: clamp(22px, 3vw, 30px) !important;
    max-width: 1320px;
    margin: 0 auto 32px !important;
    padding: 0;
}
.la-wc-scope .related.products ul.products,
.la-wc-scope section.related ul.products {
    max-width: 1320px;
    margin: 0 auto !important;
}

/* Tighter summary rhythm to match reference */
.la-wc-scope div.product .product_title { margin-bottom: 8px !important; }
.la-wc-scope div.product p.price { margin-bottom: 16px !important; }
.la-wc-scope div.product form.cart { margin: 14px 0 0 !important; }
.la-coa-badge { margin: 18px 0 0 !important; }

/* ═══ v1.1.1 — TAB BAR CLEANUP ═══ */
.la-wc-scope .woocommerce-tabs ul.tabs {
    overflow: visible !important;
    flex-wrap: wrap !important;
}
.la-wc-scope .woocommerce-tabs ul.tabs li a { cursor: pointer; }
.la-wc-scope .woocommerce-tabs .panel { padding: 6px 0 0 !important; }

/* ═══════════════════════════════════════════════════
   v1.1.2 — PHOTOREALISTIC VIALS ON LIGHT STUDIO BACKDROP
   ═══════════════════════════════════════════════════ */

/* Studio backdrop replaces the dark panels wherever vials render */
.la-vial-wrap,
.la-vial-wrap--loop,
.la-vial-wrap--single,
.la-wc-scope div.product div.images,
.la-about-visual {
    background: radial-gradient(130% 100% at 50% 10%, #FAF9F7 0%, #EFEDE9 55%, #E2DFD9 100%) !important;
}
.la-vial-wrap--loop { border-bottom: 1px solid var(--la-border-lt); }
.la-wc-scope div.product div.images { border: 1px solid var(--la-border-lt); }
.la-about-visual {
    border: 1px solid var(--la-border-lt);
    box-shadow: 0 18px 48px rgba(26, 23, 20, .10) !important;
}

/* Real product photos also sit on the studio backdrop */
.la-wc-scope ul.products li.product > a > img,
.la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
    background: radial-gradient(130% 100% at 50% 10%, #FAF9F7 0%, #EFEDE9 55%, #E2DFD9 100%) !important;
}

/* Purity chip restyled for light backdrop */
.la-vial-purity {
    background: rgba(184, 149, 106, .10) !important;
    border: 1px solid rgba(184, 149, 106, .30) !important;
    color: var(--la-accent-dk) !important;
}

/* Vial sizing inside its stages */
.la-vial-wrap--loop .la-vial { max-height: 305px !important; }
.la-vial-wrap--single .la-vial { max-height: 330px; }
.la-about-vial .la-vial { max-height: 205px !important; }

/* ═══════════════════════════════════════════════════
   v1.1.4 — DARK STAGE RESTORED + PHOTOREAL VIAL FIT
   ═══════════════════════════════════════════════════ */

/* Dark premium stage everywhere vials render (overrides v1.1.2 light) */
.la-vial-wrap,
.la-vial-wrap--loop,
.la-vial-wrap--single,
.la-wc-scope div.product div.images,
.la-about-visual {
    background: radial-gradient(120% 95% at 50% 30%, #241F19 0%, #16130F 55%, #0C0A08 100%) !important;
    border-color: rgba(255, 255, 255, .06) !important;
}
.la-vial-wrap--loop { border-bottom: 1px solid rgba(255,255,255,.06) !important; }
.la-about-visual { box-shadow: 0 24px 64px rgba(10, 8, 6, .45) !important; }

/* Real photos also sit on the dark stage */
.la-wc-scope ul.products li.product > a > img,
.la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
    background: radial-gradient(120% 95% at 50% 30%, #241F19 0%, #16130F 55%, #0C0A08 100%) !important;
}

/* Purity chip back to dark-stage styling */
.la-vial-purity {
    background: rgba(255, 255, 255, .06) !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    color: #D4B98A !important;
}

/* Vial fit inside stages (SVG now includes the floor reflection) */
.la-vial-wrap--loop { padding: 14px !important; }
.la-vial-wrap--loop .la-vial { max-height: 322px !important; }
.la-vial-wrap--single { padding: 32px !important; }
.la-vial-wrap--single .la-vial { max-height: 380px !important; }
.la-about-vial .la-vial { max-height: 215px !important; }

/* ═══════════════════════════════════════════════════
   v1.1.5 — ACCOUNT: SIGN IN / REGISTER + DASHBOARD
   ═══════════════════════════════════════════════════ */

/* Side-by-side Sign In / Register cards */
body.la-takeover .woocommerce #customer_login {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    max-width: 940px;
    margin: 0 auto 40px !important;
}
body.la-takeover .woocommerce #customer_login::before,
body.la-takeover .woocommerce #customer_login::after { content: none !important; display: none !important; }
body.la-takeover .woocommerce #customer_login .u-column1,
body.la-takeover .woocommerce #customer_login .u-column2 {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 16px;
    padding: 36px 32px !important;
    box-shadow: 0 8px 32px rgba(26, 23, 20, .05);
}
body.la-takeover .woocommerce #customer_login h2 {
    font-size: 19px !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--la-text) !important;
    text-align: center;
    margin: 0 0 22px !important;
}
body.la-takeover .woocommerce form.woocommerce-form-login,
body.la-takeover .woocommerce form.woocommerce-form-register {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Form fields */
body.la-takeover .woocommerce form .form-row { margin: 0 0 16px !important; padding: 0 !important; }
body.la-takeover .woocommerce form .form-row label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--la-text-muted);
    margin-bottom: 6px;
}
body.la-takeover .woocommerce form .form-row input.input-text {
    width: 100% !important;
    box-sizing: border-box;
    font-size: 14px;
}
body.la-takeover .woocommerce form .form-row input.input-text:focus {
    border-color: var(--la-accent);
    box-shadow: 0 0 0 3px rgba(184, 149, 106, .12);
    outline: none;
}

/* Login / Register submit buttons: full width */
body.la-takeover .woocommerce-form-login__submit,
body.la-takeover form.woocommerce-form-register button.button {
    width: 100% !important;
    margin: 6px 0 0 !important;
    padding: 14px !important;
    font-size: 14px !important;
}

/* Remember me + lost password */
body.la-takeover .woocommerce-form-login__rememberme {
    display: flex !important;
    align-items: center;
    gap: 8px;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: var(--la-text-mid) !important;
    margin-bottom: 14px !important;
    cursor: pointer;
}
body.la-takeover .woocommerce-form-login__rememberme input { accent-color: var(--la-accent); width: 15px; height: 15px; margin: 0; }
body.la-takeover .woocommerce-LostPassword,
body.la-takeover .lost_password {
    margin: 14px 0 0 !important;
    font-size: 13px;
    text-align: center;
}
body.la-takeover .lost_password a { color: var(--la-accent) !important; font-weight: 600; }

/* Privacy note under register */
body.la-takeover .woocommerce-privacy-policy-text p {
    font-size: 11px !important;
    color: var(--la-text-muted) !important;
    line-height: 1.6 !important;
    margin: 12px 0 0 !important;
}

/* ── Logged-in Account Dashboard ── */
body.la-takeover .woocommerce-MyAccount-navigation {
    float: none !important;
    width: 100% !important;
    margin: 0 0 24px !important;
}
body.la-takeover .woocommerce-MyAccount-navigation ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.la-takeover .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
body.la-takeover .woocommerce-MyAccount-navigation li a {
    display: block;
    padding: 10px 18px;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 8px;
    color: var(--la-text-mid) !important;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    text-decoration: none !important;
    transition: all .2s;
}
body.la-takeover .woocommerce-MyAccount-navigation li a:hover { border-color: rgba(184,149,106,.45); color: var(--la-accent) !important; }
body.la-takeover .woocommerce-MyAccount-navigation li.is-active a {
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    border-color: transparent;
    color: #fff !important;
}
body.la-takeover .woocommerce-MyAccount-content {
    float: none !important;
    width: 100% !important;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 16px;
    padding: 32px !important;
}
body.la-takeover .woocommerce-MyAccount-content p { color: var(--la-text-mid); line-height: 1.7; }
body.la-takeover .woocommerce-MyAccount-content a { color: var(--la-accent); font-weight: 600; }
body.la-takeover .woocommerce-MyAccount-content fieldset {
    border: 1px solid var(--la-border-lt);
    border-radius: 10px;
    padding: 20px;
    margin: 20px 0;
}
body.la-takeover .woocommerce-MyAccount-content legend {
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--la-text);
    padding: 0 8px;
}

@media (max-width: 800px) {
    body.la-takeover .woocommerce #customer_login { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════
   v1.1.6 — ACCOUNT DASHBOARD (reference-matched)
   ═══════════════════════════════════════════════════ */

/* Wider account container + two-column grid: sidebar | content */
body.la-takeover.woocommerce-account .la-wc-page .la-container { max-width: 1260px !important; }
body.la-takeover.woocommerce-account.logged-in .la-wc-page .la-container > .woocommerce {
    display: grid !important;
    grid-template-columns: 300px 1fr;
    gap: 26px;
    align-items: start;
}
body.la-takeover.woocommerce-account.logged-in .la-wc-page .woocommerce > .woocommerce-notices-wrapper,
body.la-takeover.woocommerce-account.logged-in .la-wc-page .la-acct-intro {
    grid-column: 1 / -1;
}

/* ── Intro header ── */
.la-acct-intro { margin-bottom: 8px; }
.la-acct-title {
    font-size: clamp(30px, 4vw, 44px) !important;
    font-weight: 800 !important;
    color: var(--la-text) !important;
    margin: 0 0 14px !important;
    letter-spacing: -.02em;
}
.la-acct-lead {
    font-size: 16px !important;
    color: var(--la-text-mid) !important;
    line-height: 1.7 !important;
    max-width: 720px;
    margin: 0 0 32px !important;
}
.la-acct-feats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 48px;
}
.la-acct-feat {
    display: flex;
    gap: 16px;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    padding: 24px 22px;
}
.la-acct-num {
    font-size: 13px;
    font-weight: 700;
    color: var(--la-text-muted);
    line-height: 1.9;
}
.la-acct-feat h3 {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--la-text) !important;
    margin: 0 0 8px !important;
}
.la-acct-feat p {
    font-size: 14px !important;
    color: var(--la-text-mid) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}
.la-acct-eyebrow {
    display: block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--la-accent-dk);
    margin-bottom: 10px;
}
.la-acct-ops { margin-bottom: 34px; }
.la-acct-ops h2 {
    font-size: clamp(26px, 3.2vw, 36px) !important;
    font-weight: 800 !important;
    color: var(--la-text) !important;
    margin: 0 0 12px !important;
    letter-spacing: -.02em;
    text-transform: none !important;
}
.la-acct-ops p {
    font-size: 15px !important;
    color: var(--la-text-mid) !important;
    line-height: 1.7 !important;
    margin: 0 !important;
    max-width: 720px;
}

/* ── Sidebar: Account Menu (overrides the pill tabs) ── */
body.la-takeover .woocommerce-MyAccount-navigation {
    margin: 0 !important;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 14px;
    overflow: hidden;
}
body.la-takeover .woocommerce-MyAccount-navigation::before {
    content: 'Account Menu';
    display: block;
    padding: 20px 24px 16px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--la-accent-dk);
    border-bottom: 1px solid var(--la-border-lt);
}
body.la-takeover .woocommerce-MyAccount-navigation ul {
    display: block !important;
    gap: 0 !important;
}
body.la-takeover .woocommerce-MyAccount-navigation li a {
    display: block !important;
    padding: 16px 24px !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--la-border-lt) !important;
    border-radius: 0 !important;
    color: var(--la-text-mid) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
body.la-takeover .woocommerce-MyAccount-navigation li:last-child a { border-bottom: none !important; }
body.la-takeover .woocommerce-MyAccount-navigation li a:hover {
    background: var(--la-bg) !important;
    color: var(--la-accent-dk) !important;
}
body.la-takeover .woocommerce-MyAccount-navigation li.is-active a {
    background: var(--la-surface) !important;
    color: var(--la-accent-dk) !important;
    box-shadow: inset 3px 0 0 var(--la-accent);
}

/* ── Content card ── */
body.la-takeover .woocommerce-MyAccount-content {
    margin: 0 !important;
    padding: 30px !important;
    border-radius: 14px;
}
/* Hide WooCommerce's default dashboard paragraphs (replaced by our panel) */
body.la-acct-dashboard .woocommerce-MyAccount-content > p { display: none !important; }

/* Welcome panel */
.la-acct-welcome {
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    padding: 28px 30px;
    margin-bottom: 30px;
}
.la-acct-hello {
    font-size: 16px !important;
    color: var(--la-text-mid) !important;
    margin: 6px 0 2px !important;
}
.la-acct-name {
    font-size: clamp(24px, 3vw, 32px) !important;
    font-weight: 800 !important;
    color: var(--la-text) !important;
    margin: 0 0 10px !important;
    letter-spacing: -.01em;
    word-break: break-word;
}
.la-acct-switch {
    font-size: 14px !important;
    color: var(--la-text-mid) !important;
    margin: 0 !important;
}
.la-acct-switch a { color: var(--la-accent-dk) !important; font-weight: 700; }

/* Shortcut cards — real links to endpoints */
.la-acct-shortcuts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
.la-acct-shortcuts a {
    display: flex;
    align-items: flex-start;
    background: var(--la-card);
    border: 1px solid var(--la-border);
    border-radius: 12px;
    padding: 24px 22px 40px;
    font-size: 15px;
    font-weight: 600;
    color: var(--la-text) !important;
    text-decoration: none !important;
    line-height: 1.45;
    transition: all .2s;
}
.la-acct-shortcuts a:hover {
    border-color: var(--la-accent);
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(184, 149, 106, .12);
    color: var(--la-accent-dk) !important;
}

/* ── Endpoint pages: make everything usable ── */
/* Addresses: two cards side by side */
body.la-takeover .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
body.la-takeover .woocommerce-Addresses .woocommerce-Address,
body.la-takeover .woocommerce-Addresses .u-column1,
body.la-takeover .woocommerce-Addresses .u-column2 {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    background: var(--la-surface);
    border: 1px solid var(--la-border-lt);
    border-radius: 12px;
    padding: 22px 24px;
}
body.la-takeover .woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
body.la-takeover .woocommerce-Address-title h2,
body.la-takeover .woocommerce-Address-title h3 {
    font-size: 16px !important;
    font-weight: 800 !important;
    margin: 0 !important;
    color: var(--la-text) !important;
}
body.la-takeover .woocommerce-Address-title .edit { font-size: 13px; font-weight: 700; color: var(--la-accent-dk) !important; }
body.la-takeover .woocommerce-Address address { font-style: normal; color: var(--la-text-mid); line-height: 1.7; font-size: 14px; }

/* Orders table + view buttons */
body.la-takeover .woocommerce-orders-table .button { padding: 8px 16px !important; font-size: 12px !important; margin: 0 !important; display: inline-block !important; }
body.la-takeover .woocommerce-orders-table td, 
body.la-takeover .woocommerce-orders-table th { padding: 14px 16px; font-size: 14px; }

/* Info notices ("No order has been made yet" etc.) */
body.la-takeover .woocommerce-info,
body.la-takeover .woocommerce-message {
    background: var(--la-card) !important;
    border-top-color: var(--la-accent) !important;
    color: var(--la-text) !important;
    border-radius: 8px;
}
body.la-takeover .woocommerce-info::before { color: var(--la-accent) !important; }
body.la-takeover .woocommerce-info .button { display: inline-block !important; margin: 0 0 0 auto !important; }

/* Mark required labels, selects */
body.la-takeover .woocommerce form .form-row select {
    width: 100%;
    box-sizing: border-box;
    font-size: 14px;
    background: var(--la-card);
}

@media (max-width: 960px) {
    body.la-takeover.woocommerce-account.logged-in .la-wc-page .la-container > .woocommerce { grid-template-columns: 1fr; }
    .la-acct-feats, .la-acct-shortcuts { grid-template-columns: 1fr; }
    body.la-takeover .woocommerce-Addresses { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════
   v1.1.7 — ACCOUNT LAYOUT FIX
   WooCommerce's [woocommerce_my_account] shortcode adds its
   own inner .woocommerce wrapper, so the v1.1.6 grid was
   applied to the OUTER wrapper — squeezing all content into
   the 300px sidebar track. Fix: reset both wrappers, then
   apply the grid only to whichever div DIRECTLY contains the
   account navigation, via :has().
   ═══════════════════════════════════════════════════ */

/* Reset: no grid on any account wrapper by default */
body.la-takeover.woocommerce-account.logged-in .la-wc-page .la-container .woocommerce {
    display: block !important;
    padding: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    width: 100% !important;
}

/* Grid ONLY on the div that directly holds nav + content + intro */
body.la-takeover.woocommerce-account.logged-in .la-wc-page .la-container .woocommerce:has(> .woocommerce-MyAccount-navigation) {
    display: grid !important;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 26px;
    align-items: start;
}
body.la-takeover.woocommerce-account.logged-in .la-wc-page .woocommerce > .woocommerce-MyAccount-navigation,
body.la-takeover.woocommerce-account.logged-in .la-wc-page .woocommerce > .woocommerce-MyAccount-content {
    min-width: 0;
    width: 100% !important;
}

/* Keep account-page padding on the outer page block, not the wrappers */
body.la-takeover.woocommerce-account .la-wc-page { padding-bottom: 80px; }

/* Not-logged-in (Login/Register) wrapper also stays block + unpadded */
body.la-takeover.woocommerce-account:not(.logged-in) .la-wc-page .la-container .woocommerce {
    display: block !important;
    padding: 0 !important;
    max-width: none !important;
}

@media (max-width: 960px) {
    body.la-takeover.woocommerce-account.logged-in .la-wc-page .la-container .woocommerce:has(> .woocommerce-MyAccount-navigation) {
        grid-template-columns: 1fr;
    }
}

/* ═══════════════════════════════════════════════════
   v1.1.8 — TABBED AUTH CARD (Sign In / Create Account)
   ═══════════════════════════════════════════════════ */

.la-auth { max-width: 620px; margin: 0 auto; }

.la-auth-brand {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 22px;
}
.la-auth-brand-text { display: flex; flex-direction: column; line-height: 1; }
.la-auth-brand-text span {
    font-size: 17px; font-weight: 600; letter-spacing: 6px;
    color: var(--la-text); text-transform: uppercase;
}
.la-auth-brand-text em {
    font-style: normal; font-size: 11px; font-weight: 700;
    letter-spacing: 7px; color: var(--la-accent);
    text-transform: uppercase; margin-top: 3px;
}

.la-auth-card {
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 18px 56px rgba(26, 23, 20, .08);
}

/* Hero banner */
.la-auth-hero {
    position: relative;
    background: radial-gradient(120% 130% at 18% 20%, #2C2419 0%, #171310 55%, #0C0A08 100%);
    padding: 36px 34px 40px;
    overflow: hidden;
}
.la-auth-hero-text { position: relative; z-index: 2; max-width: 72%; }
.la-auth-eyebrow {
    display: block;
    font-size: 11px; font-weight: 700;
    letter-spacing: .28em; text-transform: uppercase;
    color: var(--la-accent-lt);
    margin-bottom: 12px;
}
.la-auth-hero h2 {
    font-size: clamp(26px, 4vw, 34px) !important;
    font-weight: 800 !important;
    color: #F5F0E8 !important;
    letter-spacing: -.02em;
    margin: 0 0 10px !important;
    line-height: 1.12 !important;
}
.la-auth-hero p {
    font-size: 15px !important;
    color: rgba(255, 255, 255, .55) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}
.la-auth-hero-vial {
    position: absolute;
    right: -4px; bottom: -46px;
    z-index: 1;
    transform: rotate(8deg);
    opacity: .95;
    pointer-events: none;
}

/* Body */
.la-auth-body { padding: 32px 34px 26px; }
.la-auth-title {
    font-size: clamp(26px, 4vw, 34px) !important;
    font-weight: 800 !important;
    color: var(--la-text) !important;
    letter-spacing: -.02em;
    margin: 0 0 8px !important;
}
.la-auth-sub {
    font-size: 15px !important;
    color: var(--la-text-mid) !important;
    margin: 0 0 24px !important;
    line-height: 1.6 !important;
}

/* Tabs */
.la-auth-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 26px;
}
.la-auth-tab {
    background: none;
    border: none;
    border-bottom: 2px solid var(--la-border-lt);
    padding: 14px 8px;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    color: var(--la-text-muted);
    cursor: pointer;
    transition: all .2s;
}
.la-auth-tab.active {
    color: var(--la-accent-dk);
    border-bottom-color: var(--la-accent);
}

/* Panes */
.la-auth-pane { display: none; }
.la-auth-pane.active { display: block; }

/* Fields */
.la-auth .la-field { margin: 0 0 18px !important; padding: 0 !important; }
.la-auth .la-field label {
    display: block;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--la-text) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    margin-bottom: 8px !important;
}
.la-req { color: var(--la-accent-dk); }
.la-input-wrap { position: relative; display: block; }
.la-in-icon {
    position: absolute;
    left: 15px; top: 50%;
    transform: translateY(-50%);
    color: var(--la-text-muted);
    pointer-events: none;
}
.la-auth .la-input-wrap input.input-text {
    width: 100% !important;
    box-sizing: border-box;
    height: 54px;
    padding: 0 48px 0 46px !important;
    border: 1px solid var(--la-border) !important;
    border-radius: 12px !important;
    background: var(--la-card) !important;
    font-size: 15px !important;
    color: var(--la-text);
}
.la-auth .la-input-wrap input.input-text::placeholder { color: var(--la-text-muted); }
.la-auth .la-input-wrap input.input-text:focus {
    border-color: var(--la-accent) !important;
    box-shadow: 0 0 0 3px rgba(184, 149, 106, .13) !important;
    outline: none;
}
.la-eye {
    position: absolute;
    right: 6px; top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    padding: 10px;
    color: var(--la-text-muted);
    cursor: pointer;
    line-height: 0;
}
.la-eye:hover { color: var(--la-accent-dk); }
.la-eye.on { color: var(--la-accent-dk); }

/* Age checkbox */
.la-age-check {
    display: flex !important;
    gap: 12px;
    align-items: flex-start;
    margin: 4px 0 20px !important;
    cursor: pointer;
}
.la-age-check input {
    accent-color: var(--la-accent);
    width: 19px; height: 19px;
    margin: 2px 0 0 !important;
    flex-shrink: 0;
}
.la-age-check span {
    font-size: 13.5px;
    color: var(--la-text-mid);
    line-height: 1.55;
}

/* Submit pill */
.la-auth .la-auth-submit {
    display: block !important;
    width: 100% !important;
    margin: 4px 0 0 !important;
    padding: 17px !important;
    border-radius: 999px !important;
    font-size: 16px !important;
    letter-spacing: .01em;
    text-transform: none !important;
}

/* Note + links */
.la-auth-note {
    text-align: center;
    font-size: 13px !important;
    font-weight: 600;
    color: var(--la-text-mid) !important;
    margin: 18px 0 0 !important;
}
.la-auth-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--la-border-lt);
}
.la-auth-links a {
    font-size: 14px;
    font-weight: 600;
    color: var(--la-accent-dk) !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.la-auth-links span { color: var(--la-text-muted); }

/* Register privacy text (WC hook output) */
.la-auth .woocommerce-privacy-policy-text p { text-align: center; }

/* Lost password endpoint gets a matching card */
body.la-takeover .woocommerce-ResetPassword {
    max-width: 560px;
    margin: 0 auto !important;
    background: var(--la-card);
    border: 1px solid var(--la-border-lt);
    border-radius: 22px;
    padding: 36px 34px !important;
}
body.la-takeover .woocommerce-ResetPassword .woocommerce-Button {
    width: 100%;
    border-radius: 999px !important;
    padding: 16px !important;
}

@media (max-width: 640px) {
    .la-auth-body { padding: 26px 22px 22px; }
    .la-auth-hero { padding: 28px 24px 34px; }
    .la-auth-hero-text { max-width: 100%; }
    .la-auth-hero-vial { opacity: .35; }
}

/* ═══════════════════════════════════════════════════
   v1.4.0 — NAVBAR SEARCH + FULL-SCREEN LIVE SEARCH
   ═══════════════════════════════════════════════════ */

.la-nav-search { cursor: pointer; background: none; font-family: inherit; }

body.la-no-scroll { overflow: hidden !important; }

.la-search-overlay {
    position: fixed;
    inset: 0;
    z-index: 100000;
    background: var(--la-bg);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
.la-search-overlay[hidden] { display: none; }

.la-search-close {
    position: absolute;
    top: 28px;
    right: 36px;
    width: 52px;
    height: 52px;
    border: 1.5px solid var(--la-border);
    border-radius: 50%;
    background: var(--la-card);
    color: var(--la-text-mid);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s;
}
.la-search-close:hover {
    border-color: var(--la-accent);
    color: var(--la-accent-dk);
    transform: rotate(90deg);
}

.la-search-inner {
    max-width: 1180px;
    margin: 0 auto;
    padding: 110px 32px 80px;
}

.la-search-box { position: relative; }
#la-search-input {
    width: 100%;
    box-sizing: border-box;
    background: transparent;
    border: none;
    border-bottom: 1.5px solid var(--la-border);
    padding: 6px 52px 18px 0;
    font-family: inherit;
    font-size: clamp(26px, 4vw, 38px);
    font-weight: 500;
    color: var(--la-text);
    outline: none;
    letter-spacing: -.01em;
    border-radius: 0;
}
#la-search-input::placeholder { color: var(--la-text-muted); font-weight: 400; }
#la-search-input:focus { border-bottom-color: var(--la-accent); }
.la-search-ic {
    position: absolute;
    right: 4px;
    top: 12px;
    color: var(--la-text-muted);
    pointer-events: none;
}

.la-search-label {
    margin: 40px 0 22px;
    font-size: 14px;
    font-weight: 600;
    color: var(--la-text-mid);
}
.la-search-label[hidden] { display: none; }

.la-search-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    gap: 26px;
}
.la-search-item {
    display: block;
    text-decoration: none !important;
    color: inherit !important;
    transition: transform .2s;
}
.la-search-item:hover { transform: translateY(-4px); }
.la-search-stage {
    background: radial-gradient(120% 95% at 50% 30%, #241F19 0%, #16130F 55%, #0C0A08 100%);
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 12px;
    height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    overflow: hidden;
}
.la-search-stage .la-vial { max-height: 230px; width: auto; }
.la-search-stage img {
    max-height: 230px !important;
    width: auto !important;
    object-fit: contain !important;
    background: transparent !important;
    padding: 0 !important;
}
.la-search-name {
    margin-top: 14px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--la-text);
    text-align: center;
}
.la-search-price {
    margin-top: 4px;
    font-size: 15px;
    font-weight: 800;
    color: var(--la-accent-dk);
    text-align: center;
}
.la-search-price del { color: var(--la-text-muted); font-weight: 500; font-size: 13px; margin-right: 6px; }
.la-search-price ins { text-decoration: none; }

.la-search-empty,
.la-search-hint {
    grid-column: 1 / -1;
    font-size: 15px;
    color: var(--la-text-muted);
    padding: 8px 0 40px;
}

@media (max-width: 640px) {
    .la-search-close { top: 18px; right: 18px; width: 46px; height: 46px; }
    .la-search-inner { padding: 92px 20px 60px; }
    .la-search-results { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .la-search-stage { height: 190px; }
    .la-search-stage .la-vial { max-height: 172px; }
}

/* ═══════════════════════════════════════════════════
   v1.5.0 — REAL PRODUCT PHOTOS
   Bundled renders fill their stages edge to edge; the
   photos carry their own dark studio backdrop.
   ═══════════════════════════════════════════════════ */
.la-wc-scope ul.products li.product > a > img,
.la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
    object-fit: cover !important;
    padding: 0 !important;
    height: 350px !important;
    border-radius: 12px 12px 0 0 !important;
}
.la-wc-scope div.product div.images { padding: 0 !important; overflow: hidden; }
.la-wc-scope div.product div.images img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    min-height: 420px;
    object-fit: cover !important;
}
.la-search-stage:has(img) { padding: 0 !important; }
.la-search-stage img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: cover !important;
    border-radius: 12px;
}
.la-about-vial--photo { width: 100%; }
.la-about-photo {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}
.la-about-visual:has(.la-about-photo) { padding: 14px !important; gap: 14px !important; }
@media (max-width: 1100px) {
    .la-wc-scope ul.products li.product > a > img { height: 320px !important; }
}
@media (max-width: 800px) {
    .la-wc-scope ul.products li.product > a > img { height: 300px !important; }
}

/* ═══════════════════════════════════════════════════
   v1.6.0 — CONTINUE WITH GOOGLE (auth card)
   ═══════════════════════════════════════════════════ */
.la-gsi { margin: 0 0 26px; }
.la-gsi-btn-wrap { display: flex; justify-content: center; }
.la-gsi-btn-wrap > div { display: flex; justify-content: center; width: 100%; max-width: 400px; min-height: 44px; }
.la-gsi-error {
    margin: 12px 0 0 !important;
    font-size: 13px !important;
    font-weight: 600;
    color: #C0392B !important;
    text-align: center;
}
.la-gsi-error[hidden] { display: none !important; }
.la-gsi-divider { display: flex; align-items: center; gap: 14px; margin-top: 24px; }
.la-gsi-divider::before,
.la-gsi-divider::after { content: ""; flex: 1; height: 1px; background: var(--la-border-lt); }
.la-gsi-divider span {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--la-text-muted);
    white-space: nowrap;
}

/* ═══════════════════════════════════════════════════
   v1.6.1 — PRODUCT PAGE PHOTO FIX
   WC's gallery prints at opacity:0 and waits for a script
   the takeover doesn't load; photos now render directly.
   ═══════════════════════════════════════════════════ */
body.la-theme .woocommerce-product-gallery { opacity: 1 !important; }

.la-wc-scope div.product div.images.la-single-photo {
    padding: 0 !important;
    overflow: hidden;
    border-radius: 18px;
    min-height: 0 !important;
}
.la-single-photo .la-single-photo-img,
.la-single-photo img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    border-radius: 18px;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ═══════════════════════════════════════════════════
   v1.6.4 — MOBILE PRODUCT GRID: TWO PER ROW, FULL WIDTH
   Selectors are prefixed with body.la-theme .la-wc-scope so
   they outrank the older desktop rules (e.g. the 40px image
   padding) that otherwise leak into the phone layout.
   ═══════════════════════════════════════════════════ */
@media (max-width: 600px) {
    /* Stop the section, wrapper and WC container each adding side padding */
    body.la-theme .la-shop-section {
        padding: 48px 12px 56px !important;
    }
    body.la-theme .la-shop-section .la-container { margin-bottom: 24px !important; }
    body.la-theme .la-shop-grid-wrap,
    body.la-theme .la-shop-grid-wrap .woocommerce {
        padding: 0 !important;
    }
    body.la-theme .la-wc-page .la-container { padding-left: 12px !important; padding-right: 12px !important; }

    body.la-theme .la-wc-scope ul.products,
    body.la-theme .woocommerce ul.products,
    body.la-theme ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    /* Photo fills the square stage edge to edge */
    body.la-theme .la-wc-scope ul.products li.product > a > img,
    body.la-theme .la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1;
        padding: 0 !important;
        object-fit: cover !important;
    }
    body.la-theme .la-wc-scope .la-vial-wrap--loop {
        height: auto !important;
        aspect-ratio: 1 / 1;
        padding: 10px !important;
    }
    body.la-theme .la-wc-scope .la-vial-wrap--loop .la-vial { max-height: 100% !important; }

    body.la-theme .la-wc-scope .la-product-cat {
        padding: 10px 10px 0 !important;
        font-size: 10px !important;
        letter-spacing: .04em;
    }
    body.la-theme .la-wc-scope ul.products li.product .woocommerce-loop-product__title {
        padding: 4px 10px 2px !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
        overflow-wrap: break-word;
        hyphens: auto;
    }
    body.la-theme .la-wc-scope ul.products li.product .price,
    body.la-theme .la-wc-scope ul.products li.product > a > .price {
        padding: 2px 10px 10px !important;
        font-size: 15px !important;
    }
    body.la-theme .la-wc-scope ul.products li.product .price del {
        font-size: 12px !important;
        margin-right: 4px;
    }
    body.la-theme .la-wc-scope ul.products li.product .price ins { white-space: nowrap; }
    body.la-theme .la-wc-scope ul.products li.product .button {
        margin: auto 10px 10px !important;
        padding: 10px 4px !important;
        font-size: 11px !important;
        letter-spacing: .02em !important;
        white-space: nowrap;
    }
    body.la-theme .la-wc-scope .la-sale-badge {
        top: 8px;
        left: 8px;
        font-size: 10px;
        padding: 3px 8px;
    }
    body.la-theme .la-wc-scope ul.products li.product:hover { transform: none; }
}

/* ═══════════════════════════════════════════════════
   v1.7.0 — MULTI-VIAL BUNDLES ("Stock up & save")
   ═══════════════════════════════════════════════════ */
.la-bundles { margin: 22px 0 8px; clear: both; }
.la-bundles-head {
    margin: 0 0 12px !important;
    font-size: 14px !important;
    color: var(--la-text-mid) !important;
    letter-spacing: .02em;
}
.la-bundles-head strong {
    color: var(--la-text);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.la-bundles-grid {
    display: grid;
    grid-template-columns: repeat(var(--la-bundle-count, 3), minmax(0, 1fr));
    gap: 10px;
}
button.la-bundle {
    position: relative;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    margin: 0 !important;
    padding: 16px 8px 14px !important;
    background: var(--la-card) !important;
    border: 1px solid var(--la-border) !important;
    border-radius: 12px !important;
    color: var(--la-text) !important;
    font-family: inherit !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
    text-align: center;
    cursor: pointer;
    box-shadow: none;
    transition: border-color .2s, box-shadow .2s, transform .2s;
    -webkit-tap-highlight-color: transparent;
}
button.la-bundle:hover {
    border-color: var(--la-accent) !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(184,149,106,.14);
}
button.la-bundle:focus-visible { outline: 2px solid var(--la-accent); outline-offset: 2px; }
button.la-bundle--best,
button.la-bundle.is-active {
    border: 2px solid var(--la-accent) !important;
    padding: 15px 7px 13px !important;
}
button.la-bundle.is-active { background: #FBF7F1 !important; }
button.la-bundle.is-loading { opacity: .6; pointer-events: none; }

.la-bundle-flag {
    position: absolute;
    top: -11px;
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 10px;
    background: linear-gradient(135deg, var(--la-accent), var(--la-gold));
    color: var(--la-white);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Stacked vial thumbnails (portrait crop keeps the whole vial) */
.la-bundle-vials {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: 72px;
    margin-bottom: 8px;
}
.la-bundle-vials img,
.la-bundle-vial {
    width: 42px !important;
    height: 62px !important;
    object-fit: cover;
    object-position: center 45%;
    border-radius: 8px;
    border: 2px solid var(--la-card);
    background: #E9E9E7;
    box-shadow: 0 4px 10px rgba(0,0,0,.18);
    display: block;
    overflow: hidden;
    flex: 0 0 auto;
}
.la-bundle-vial svg { width: 100%; height: 100%; }
.la-bundle-vials > * + * { margin-left: -14px; }
.la-bundle-vials--3 > :nth-child(2) { position: relative; z-index: 1; width: 48px !important; height: 70px !important; }

.la-bundle-qty { font-size: 14px; font-weight: 600; }
.la-bundle-total { font-size: 18px; font-weight: 800; color: var(--la-text); }
.la-bundle-total .amount { color: inherit; }
.la-bundle-was { font-size: 12px; color: var(--la-text-muted); }
.la-bundle-each { font-size: 12px; color: var(--la-text-muted); margin-top: 2px; }
.la-bundle-save {
    margin-top: 8px;
    padding: 3px 10px;
    border-radius: 6px;
    background: rgba(46, 125, 80, .12);
    color: #256B43;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

/* Cart line: bundle price note */
.la-bundle-cart-note {
    display: block;
    font-size: 11px;
    font-weight: 700;
    color: #256B43;
    text-transform: uppercase;
    letter-spacing: .04em;
}

@media (max-width: 480px) {
    .la-bundles-grid { gap: 8px; }
    button.la-bundle { padding: 14px 4px 12px !important; }
    button.la-bundle--best, button.la-bundle.is-active { padding: 13px 3px 11px !important; }
    .la-bundle-vials { height: 62px; }
    .la-bundle-vials img, .la-bundle-vial { width: 36px !important; height: 54px !important; }
    .la-bundle-vials--3 > :nth-child(2) { width: 40px !important; height: 60px !important; }
    .la-bundle-vials > * + * { margin-left: -12px; }
    .la-bundle-total { font-size: 16px; }
    .la-bundle-flag { font-size: 9px; padding: 3px 8px; }
    .la-bundle-save { font-size: 11px; padding: 3px 7px; }
}

/* ═══════════════════════════════════════════════════
   v1.7.3 — PRODUCT PAGE PHOTO FILLS ITS FRAME
   The old dark-stage rules (40px padding, 400px min-height,
   380px max image height) outranked the v1.6.1 photo fix,
   leaving real photos shrunk inside a black box.
   ═══════════════════════════════════════════════════ */
body.la-theme .woocommerce div.product div.images.la-single-photo,
body.la-theme .la-wc-scope div.product div.images.la-single-photo {
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    background: #E9E9E7 !important;
    border: 1px solid var(--la-border-lt) !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    display: block !important;
    aspect-ratio: 1 / 1;
}
body.la-theme .woocommerce div.product div.images.la-single-photo img,
body.la-theme .la-wc-scope div.product div.images.la-single-photo img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
}

/* ═══════════════════════════════════════════════════
   v1.7.4 — LIGHT PHOTOS: SHOP CARDS + ABOUT GRID
   Product photos now carry their own light studio backdrop,
   so the old dark stage and 40px inset are dropped at every
   width (previously only fixed on phones).
   ═══════════════════════════════════════════════════ */
body.la-theme .la-wc-scope ul.products li.product > a > img,
body.la-theme .la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail,
body.la-theme .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    padding: 0 !important;
    margin: 0 !important;
    object-fit: cover !important;
    background: #E9E9E7 !important;
    border-radius: 12px 12px 0 0 !important;
    display: block !important;
}

/* About section: photo grid without the dark frame */
.la-about-visual:has(.la-about-photo) {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    gap: 18px !important;
}
.la-about-visual:has(.la-about-photo) .la-about-photo {
    border-radius: 14px;
    border: 1px solid var(--la-border-lt);
    background: #E9E9E7;
    box-shadow: 0 10px 30px rgba(28, 24, 18, .08);
    aspect-ratio: 1 / 1;
    object-fit: cover;
}


/* ═══════════════════════════════════════════════════
   v1.8.0 — ACCESSIBILITY
   ═══════════════════════════════════════════════════ */
.la-sr,
body.la-theme .screen-reader-text:not(:focus) {
    position: absolute !important;
    width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important;
    overflow: hidden !important; clip: rect(0 0 0 0) !important;
    white-space: nowrap !important; border: 0 !important;
}
.la-skip-link {
    position: fixed;
    top: -100px; left: 12px;
    z-index: 100000;
    padding: 12px 18px;
    background: var(--la-dark);
    color: #fff !important;
    font-weight: 700;
    border-radius: 8px;
    text-decoration: none;
}
.la-skip-link:focus { top: 12px; }
#la-main:focus { outline: none; }

/* Visible keyboard focus everywhere (mouse clicks stay clean) */
body.la-theme a:focus-visible,
body.la-theme button:focus-visible,
body.la-theme input:focus-visible,
body.la-theme select:focus-visible,
body.la-theme textarea:focus-visible,
body.la-theme summary:focus-visible,
body.la-theme [tabindex]:focus-visible {
    outline: 3px solid var(--la-accent) !important;
    outline-offset: 2px !important;
}
.la-footer a:focus-visible,
.la-hero a:focus-visible { outline-color: var(--la-accent-lt) !important; }

/* Headings that replaced plain text keep their previous look */
.la-faq-h { margin: 0 !important; font: inherit !important; }
h2.la-age-gate-question { font-size: 16px !important; font-weight: 500 !important; letter-spacing: 0 !important; text-transform: none !important; }
h1.la-section-title { margin-top: 0; }

/* Links inside text are underlined, not colour-only */
.la-coa-note a,
.la-legal a,
.la-auth-links a,
.la-age-check a { text-decoration: underline !important; text-underline-offset: 2px; }

/* Dark areas use the light gold for text */
.la-footer,
.la-announcement,
.la-hero,
.la-auth-hero { --la-accent: #D4B98A; }
.la-hero .la-btn--primary { --la-accent: #80623A; }

/* Footer text on the dark background: at least 4.5:1 */
.la-footer .la-footer-tagline { color: rgba(255,255,255,.72) !important; }
.la-footer .la-footer-col a { color: rgba(255,255,255,.78) !important; }
.la-footer .la-footer-col a:hover { color: var(--la-accent-lt) !important; }
.la-footer .la-footer-disclaimer p { color: rgba(255,255,255,.68) !important; }
.la-footer .la-footer-disclaimer strong { color: rgba(255,255,255,.85) !important; }
.la-footer .la-footer-bottom,
.la-footer .la-footer-bottom span,
.la-footer .la-footer-bottom a { color: rgba(255,255,255,.66) !important; }

/* ═══════════════════════════════════════════════════
   v1.8.0 — POLICY PAGES
   ═══════════════════════════════════════════════════ */
.la-legal {
    max-width: 760px !important;
    margin: 0 auto !important;
    padding: 0 20px 80px !important;
    color: var(--la-text);
    font-size: 16px;
    line-height: 1.7;
}
.la-legal h1 {
    font-size: clamp(30px, 5vw, 42px) !important;
    font-weight: 800 !important;
    letter-spacing: -.02em;
    margin: 0 0 6px !important;
    color: var(--la-text) !important;
}
.la-legal h2 {
    font-size: 20px !important;
    font-weight: 800 !important;
    margin: 36px 0 10px !important;
    color: var(--la-text) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
.la-legal p, .la-legal li { color: var(--la-text-mid); margin: 0 0 12px; }
.la-legal ul { padding-left: 22px; margin: 0 0 16px; }
.la-legal a { color: var(--la-accent-dk) !important; }
.la-legal-updated { color: var(--la-text-muted) !important; font-size: 14px; margin-bottom: 28px !important; }
.la-legal-contact { font-style: normal; color: var(--la-text-mid); line-height: 1.8; }
.la-legal-table-wrap { overflow-x: auto; margin: 0 0 20px; }
.la-legal-table { width: 100%; border-collapse: collapse; font-size: 14px; background: var(--la-card); }
.la-legal-table th, .la-legal-table td { text-align: left; padding: 10px 12px; border: 1px solid var(--la-border); vertical-align: top; color: var(--la-text); }
.la-legal-table th { background: var(--la-surface); font-weight: 700; }
.la-legal-admin {
    margin: 0 0 24px;
    padding: 14px 16px;
    border: 1px solid #B45309;
    background: #FFF7ED;
    color: #7C2D12;
    border-radius: 10px;
    font-size: 14px;
}
.la-legal-admin a { color: #7C2D12 !important; }


/* ═══════════════════════════════════════════════════
   v1.8.2 — PIN THE ANNOUNCEMENT BAR + NAVBAR
   On the live site another stylesheet took the announcement
   bar out of its fixed position, so it dropped into the page
   and overlapped the navbar. These rules can't be overridden.
   ═══════════════════════════════════════════════════ */
body.la-theme .la-announcement {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    z-index: 999 !important;
}
body.la-theme.admin-bar .la-announcement { top: 32px !important; }
body.la-theme .la-navbar { position: fixed !important; }
@media (max-width: 782px) {
    body.la-theme.admin-bar .la-announcement { top: 46px !important; }
}

/* ═══════════════════════════════════════════════════
   v1.8.5 — BACTERIOSTATIC WATER ADD-ON (cart + checkout)
   ═══════════════════════════════════════════════════ */
.la-addon {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    align-items: center;
    gap: 16px;
    margin: 20px 0;
    padding: 14px 18px;
    background: #FBF7F1;
    border: 2px solid var(--la-accent);
    border-radius: 14px;
    clear: both;
}
.la-addon-thumb { width: 56px; height: 56px; border-radius: 10px; overflow: hidden; background: #E9E9E7; flex: 0 0 auto; }
.la-addon-thumb img, .la-addon-img { width: 56px !important; height: 56px !important; object-fit: cover; display: block; margin: 0 !important; }
.la-addon-title { margin: 0 !important; font-size: 16px !important; font-weight: 800 !important; color: var(--la-text) !important; }
.la-addon-sub { margin: 2px 0 0 !important; font-size: 13px !important; color: var(--la-text-mid) !important; }
.la-addon-price { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; white-space: nowrap; }
.la-addon-price del { font-size: 13px; color: var(--la-text-muted); }
.la-addon-price strong { font-size: 18px; font-weight: 800; color: var(--la-text); }
.la-addon-save {
    padding: 2px 10px;
    border-radius: 999px;
    background: #256B43;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}
.la-addon-form { margin: 0 !important; }
body.la-theme button.la-addon-btn,
button.la-addon-btn {
    margin: 0 !important;
    padding: 10px 22px !important;
    border-radius: 999px !important;
    border: 2px solid var(--la-accent) !important;
    background: #fff !important;
    color: var(--la-accent-dk) !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    cursor: pointer;
    font-family: inherit !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}
button.la-addon-btn:hover { background: var(--la-accent) !important; color: #fff !important; }
@media (max-width: 600px) {
    .la-addon { grid-template-columns: 48px minmax(0, 1fr) auto; gap: 8px 12px; padding: 12px; }
    .la-addon-thumb, .la-addon-thumb img, .la-addon-img { width: 48px !important; height: 48px !important; }
    .la-addon-thumb { grid-row: 1 / span 2; align-self: start; }
    .la-addon-text { grid-column: 2; grid-row: 1; min-width: 0; }
    .la-addon-price { grid-column: 2; grid-row: 2; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
    .la-addon-form { grid-column: 3; grid-row: 1 / span 2; align-self: center; }
    body.la-theme button.la-addon-btn, button.la-addon-btn { padding: 9px 16px !important; }
}


/* ═══════════════════════════════════════════════════
   v1.9.0 — NAV LINKS OVER THE DARK HOMEPAGE HERO
   The global link colour (deep gold, tuned for light pages)
   was too dim on the transparent navbar over the dark hero.
   ═══════════════════════════════════════════════════ */
body.la-theme .la-navbar:not(.scrolled):not(.la-nav-solid) .la-navbar-links > a:not(.la-btn) { color: rgba(245, 240, 232, .82); }
body.la-theme .la-navbar:not(.scrolled):not(.la-nav-solid) .la-navbar-links > a:not(.la-btn):hover { color: #E6D0A6 !important; }

/* ═══════════════════════════════════════════════════
   v1.10.0 — SITE-WIDE TYPE SYSTEM (matches the hero)
   Inter for text, tight bold headlines in sentence case,
   monospace wide-tracked labels, sentence-case buttons.
   ═══════════════════════════════════════════════════ */
:root {
    --la-font: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
    --la-mono: ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace;
}
body.la-theme { font-family: var(--la-font); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Top bar */
body.la-theme .la-announcement {
    background: #16130F;
    border-bottom: 1px solid rgba(212, 185, 138, .12);
    color: rgba(245, 240, 232, .72);
    font-family: var(--la-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .22em;
    white-space: nowrap;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
}
body.la-theme .la-announcement i { font-style: normal; color: #B8956A; }
@media (max-width: 639px) {
    body.la-theme .la-announcement { font-size: 10px; letter-spacing: .16em; }
    body.la-theme .la-announcement i, body.la-theme .la-announcement .la-announcement-2 { display: none; }
}

/* Headlines: sentence case, bold, tight */
body.la-theme .la-section-title,
body.la-theme .la-about-text h2,
body.la-theme .la-cta h2,
body.la-theme .la-wc-scope .related.products > h2,
body.la-theme .la-wc-scope section.related > h2,
body.la-theme .woocommerce div.product .related h2,
body.la-takeover .woocommerce #customer_login h2 {
    font-family: var(--la-font) !important;
    text-transform: none !important;
    font-weight: 700 !important;
    letter-spacing: -.03em !important;
}
body.la-theme .la-trust-card h3,
body.la-theme .la-contact-card h3 {
    text-transform: none !important;
    font-weight: 600 !important;
    letter-spacing: -.01em !important;
    font-size: 18px !important;
}

/* Labels / eyebrows: monospace, wide tracking */
body.la-theme .la-eyebrow,
body.la-theme .la-badge,
body.la-theme .la-hero-badge,
body.la-theme .la-footer-col h2.la-footer-heading,
body.la-theme .la-acct-eyebrow,
body.la-theme .la-auth-eyebrow,
body.la-theme .la-bundle-flag,
body.la-theme .la-bundle-cart-note,
body.la-theme .la-coa-sublabel {
    font-family: var(--la-mono) !important;
    font-weight: 500 !important;
    letter-spacing: .22em !important;
    text-transform: uppercase !important;
}
body.la-theme .la-eyebrow { margin: 0 0 14px !important; font-size: 12px; color: var(--la-text-mid); }
body.la-theme .la-badge { border-radius: 2px; }

/* Buttons: sentence case, square corners */
body.la-theme .la-btn,
body.la-theme .la-age-btn,
body.la-theme .woocommerce div.product form.cart .button,
body.la-theme .woocommerce div.product form.cart button.single_add_to_cart_button,
body.la-theme .la-wc-scope .button,
body.la-theme .la-wc-scope a.button,
body.la-theme .la-wc-scope button.button,
body.la-takeover .woocommerce .button {
    font-family: var(--la-font) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
    border-radius: 2px !important;
}
body.la-theme .la-btn--primary { box-shadow: none; }

/* Navbar: sentence case like the hero */
body.la-theme .la-navbar-links > a:not(.la-btn) {
    text-transform: none;
    letter-spacing: 0;
    font-size: 15px;
    font-weight: 500;
}
body.la-theme .la-btn--nav { font-size: 14px !important; padding: 11px 20px !important; }

/* ═══════════════════════════════════════════════════
   v1.10.0 — CATALOG SECTION + PRODUCT CARDS (Onyx-style layout, our palette)
   ═══════════════════════════════════════════════════ */
body.la-theme .la-cat-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    max-width: 1320px;
    margin: 0 auto 32px;
    padding: 0 24px;
    box-sizing: border-box;
}
body.la-theme .la-cat-title {
    margin: 0 !important;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.02;
    color: var(--la-text);
    text-transform: none;
}
body.la-theme .la-cat-sub { margin: 12px 0 0 !important; color: var(--la-text-mid); font-size: 15px; }
body.la-theme a.la-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 26px;
    border: 1px solid rgba(28, 24, 18, .28);
    border-radius: 2px;
    background: var(--la-card);
    color: var(--la-text) !important;
    font-weight: 600;
    font-size: 16px;
    white-space: nowrap;
    text-decoration: none !important;
    transition: border-color .2s, background-color .2s;
}
body.la-theme a.la-btn-outline:hover { border-color: var(--la-accent); background: #FBF7F1; }
@media (max-width: 640px) {
    body.la-theme .la-cat-head { flex-direction: column; align-items: flex-start; gap: 18px; padding: 0 12px; margin-bottom: 22px; }
    body.la-theme a.la-btn-outline { padding: 12px 18px; font-size: 15px; }
}

/* Cards */
body.la-theme .la-wc-scope ul.products { gap: 22px !important; }
body.la-theme .la-wc-scope ul.products li.product {
    position: relative !important;
    background: #16130F !important;
    border: 1px solid rgba(28, 24, 18, .35) !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 14px 34px rgba(12, 10, 8, .10) !important;
    transition: transform .25s ease, box-shadow .25s ease !important;
}
body.la-theme .la-wc-scope ul.products li.product:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 22px 48px rgba(12, 10, 8, .18) !important;
    border-color: rgba(28, 24, 18, .5) !important;
}
body.la-theme .la-wc-scope ul.products li.product > a > img,
body.la-theme .la-wc-scope ul.products li.product img.attachment-woocommerce_thumbnail {
    border-radius: 0 !important;
    background: #ECEAE6 !important;
    aspect-ratio: 1 / 1;
    height: auto !important;
    object-fit: cover !important;
    padding: 0 !important;
}
/* category tag on the photo */
body.la-theme .la-wc-scope .la-product-cat {
    position: absolute !important;
    top: 14px;
    left: 14px;
    z-index: 2;
    display: inline-block !important;
    padding: 6px 10px !important;
    background: rgba(22, 19, 15, .78);
    color: #E6D0A6 !important;
    font-family: var(--la-mono) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    line-height: 1.2;
    text-align: left !important;
}
body.la-theme .la-wc-scope .la-sale-badge {
    position: absolute;
    top: 14px !important;
    right: 14px;
    left: auto !important;
    z-index: 2;
    background: #0C0A08 !important;
    color: #F5F0E8 !important;
    font-family: var(--la-mono) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: .2em !important;
    padding: 6px 10px !important;
    border-radius: 0 !important;
}
/* dark info panel */
body.la-theme .la-wc-scope ul.products li.product .woocommerce-loop-product__title {
    margin: 0 20px !important;
    padding: 20px 0 14px !important;
    border-bottom: 1px solid rgba(245, 240, 232, .12);
    color: #F5F0E8 !important;
    font-family: var(--la-font) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: -.01em !important;
    line-height: 1.3 !important;
    text-align: left !important;
    text-transform: none !important;
}
body.la-theme .la-wc-scope ul.products li.product .price,
body.la-theme .la-wc-scope ul.products li.product > a > .price {
    padding: 14px 20px 18px !important;
    color: #F5F0E8 !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    letter-spacing: -.01em;
    text-align: left !important;
}
body.la-theme .la-wc-scope ul.products li.product .price ins { color: #F5F0E8 !important; }
body.la-theme .la-wc-scope ul.products li.product .price del { color: rgba(245, 240, 232, .5) !important; font-size: 14px !important; }
body.la-theme .la-wc-scope ul.products li.product .button,
body.la-theme .la-wc-scope ul.products li.product a.button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: auto 20px 20px !important;
    height: 50px;
    padding: 0 16px !important;
    background: #F5F0E8 !important;
    color: #0C0A08 !important;
    border: 1px solid #F5F0E8 !important;
    border-radius: 2px !important;
    font-size: 16px !important;
    box-shadow: none !important;
}
body.la-theme .la-wc-scope ul.products li.product .button:hover { background: #E6D0A6 !important; border-color: #E6D0A6 !important; transform: none !important; }
body.la-theme .la-wc-scope ul.products li.product a.add_to_cart_button::before { content: "+"; font-size: 20px; font-weight: 400; line-height: 1; }
body.la-theme .la-wc-scope ul.products li.product .added_to_cart { color: #E6D0A6 !important; padding: 0 20px 16px; text-align: left; }
@media (max-width: 600px) {
    body.la-theme .la-wc-scope ul.products { gap: 10px !important; }
    body.la-theme .la-wc-scope .la-product-cat,
    body.la-theme .la-wc-scope .la-sale-badge { top: 8px !important; font-size: 8.5px !important; letter-spacing: .14em !important; padding: 4px 6px !important; }
    body.la-theme .la-wc-scope .la-product-cat { left: 8px; }
    body.la-theme .la-wc-scope .la-sale-badge { right: 8px; }
    body.la-theme .la-wc-scope ul.products li.product .woocommerce-loop-product__title { margin: 0 12px !important; padding: 12px 0 10px !important; font-size: 14px !important; }
    body.la-theme .la-wc-scope ul.products li.product .price,
    body.la-theme .la-wc-scope ul.products li.product > a > .price { padding: 10px 12px 12px !important; font-size: 16px !important; }
    body.la-theme .la-wc-scope ul.products li.product .button,
    body.la-theme .la-wc-scope ul.products li.product a.button { margin: auto 12px 12px !important; height: 42px; font-size: 14px !important; }
}
/* align the catalog header with the grid; no extra gap above the cards */
body.la-theme .la-cat-head { max-width: 1260px; }
body.la-theme .la-shop-grid-wrap .woocommerce,
body.la-theme .la-shop-grid-wrap.woocommerce { padding-top: 0 !important; }
body.la-theme .la-wc-scope ul.products li.product .button,
body.la-theme .la-wc-scope ul.products li.product a.button {
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 600 !important;
    font-family: var(--la-font) !important;
}
@media (max-width: 600px) { body.la-theme .la-cat-head { padding: 0; } }
/* top bar keeps its exact 38px height so the fixed navbar below it lines up */
body.la-theme .la-announcement { height: 38px; padding: 0 16px !important; box-sizing: border-box; line-height: 1; }
body.la-theme .la-wc-scope .la-product-cat { max-width: calc(50% - 20px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 600px) { body.la-theme .la-wc-scope .la-product-cat { max-width: calc(100% - 16px); letter-spacing: .1em !important; } }

/* ═══════════════════════════════════════════════════
   v1.11.0 — HOMEPAGE SECTIONS (standards, about, FAQ, CTA, support)
   Same system as the hero + catalog: mono eyebrows, sentence-case
   tight headlines, square corners, hairline dividers, line icons.
   ═══════════════════════════════════════════════════ */
body.la-theme .la-s { padding: clamp(72px, 9vw, 120px) 24px !important; margin: 0 !important; width: 100%; box-sizing: border-box; }
body.la-theme .la-s--light { background: var(--la-bg); }
body.la-theme .la-s--sand { background: var(--la-surface); }
body.la-theme .la-s--dark { background: radial-gradient(ellipse 70% 120% at 80% 50%, #241F19 0%, #16130F 45%, #0C0A08 100%); color: #F5F0E8; }
body.la-theme .la-s-wrap { max-width: 1260px; margin: 0 auto; }
body.la-theme .la-s-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 48px; }
body.la-theme .la-s-title {
    margin: 0 !important;
    font-family: var(--la-font);
    font-size: clamp(32px, 3.6vw, 50px);
    font-weight: 700;
    letter-spacing: -.035em;
    line-height: 1.04;
    color: var(--la-text);
    text-transform: none;
    text-align: left;
}
body.la-theme .la-s-lede { margin: 0 !important; max-width: 400px; font-size: 16px; line-height: 1.6; color: var(--la-text-mid); }
body.la-theme .la-s-lede a { color: var(--la-text) !important; text-decoration: underline !important; text-underline-offset: 3px; }
body.la-theme .la-s--dark .la-s-title { color: #F5F0E8; }
body.la-theme .la-s--dark .la-s-lede { color: rgba(245, 240, 232, .72); }
body.la-theme .la-s--dark .la-eyebrow { color: rgba(245, 240, 232, .55); }
body.la-theme .la-s-ic { color: var(--la-accent-dk); flex: none; }
body.la-theme .la-s-num { font-family: var(--la-mono); font-size: 12px; letter-spacing: .2em; color: var(--la-text-muted); }

/* Standards: three columns split by hairlines */
body.la-theme .la-trust2-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid rgba(28, 24, 18, .16); }
body.la-theme .la-trust2-item { padding: 32px 32px 8px 0; margin: 0; }
body.la-theme .la-trust2-item + .la-trust2-item { padding-left: 32px; border-left: 1px solid rgba(28, 24, 18, .16); }
body.la-theme .la-trust2-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 40px; }
body.la-theme .la-trust2-item h3 { margin: 0 0 10px !important; font-size: 21px; font-weight: 600; letter-spacing: -.02em; color: var(--la-text); text-transform: none; }
body.la-theme .la-trust2-item p { margin: 0 !important; font-size: 15px; line-height: 1.65; color: var(--la-text-mid); }

/* About: copy + definition list on the left, 2x2 photo grid on the right */
body.la-theme .la-about2-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 6vw, 96px); align-items: center; }
body.la-theme .la-about2-list { margin: 40px 0 0; border-top: 1px solid rgba(28, 24, 18, .16); }
body.la-theme .la-about2-list > div { display: grid; grid-template-columns: 150px 1fr; gap: 24px; padding: 22px 0; border-bottom: 1px solid rgba(28, 24, 18, .16); }
body.la-theme .la-about2-list dt { font-family: var(--la-mono); font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--la-text); padding-top: 3px; }
body.la-theme .la-about2-list dd { margin: 0; font-size: 16px; line-height: 1.65; color: var(--la-text-mid); }
body.la-theme .la-about2-photos { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
body.la-theme .la-about2-tile { background: #ECEAE6; border: 1px solid rgba(28, 24, 18, .14); aspect-ratio: 1 / 1; overflow: hidden; }
body.la-theme .la-about2-tile img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; border-radius: 0 !important; box-shadow: none !important; border: 0 !important; aspect-ratio: auto !important; }

/* FAQ: title on the left, hairline accordion on the right */
body.la-theme .la-faq2-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 96px); align-items: start; }
body.la-theme .la-faq2-side .la-s-lede { margin-top: 20px !important; }
body.la-theme .la-faq2-list { border-top: 1px solid rgba(28, 24, 18, .16); }
body.la-theme .la-faq2 .la-faq-item { background: none !important; border: 0 !important; border-bottom: 1px solid rgba(28, 24, 18, .16) !important; border-radius: 0 !important; margin: 0 !important; box-shadow: none !important; }
body.la-theme .la-faq2 .la-faq-q {
    width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px;
    padding: 26px 0 !important; background: none !important; border: 0 !important;
    font-family: var(--la-font); font-size: 18px !important; font-weight: 600 !important; letter-spacing: -.01em;
    color: var(--la-text) !important; text-align: left; cursor: pointer; text-transform: none !important;
}
body.la-theme .la-faq2 .la-faq-toggle { position: relative; width: 16px; height: 16px; min-width: 16px; transform: none !important; }
body.la-theme .la-faq2 .la-faq-toggle::before,
body.la-theme .la-faq2 .la-faq-toggle::after { content: ""; position: absolute; left: 0; top: 7.25px; width: 16px; height: 1.5px; background: var(--la-text); transition: transform .25s ease; }
body.la-theme .la-faq2 .la-faq-toggle::after { transform: rotate(90deg); }
body.la-theme .la-faq2 .la-faq-item.open .la-faq-toggle::after { transform: rotate(0deg); }
body.la-theme .la-faq2 .la-faq-a { padding: 0 48px 26px 0 !important; font-size: 16px !important; line-height: 1.7; color: var(--la-text-mid); }

/* CTA band */
body.la-theme .la-cta2-inner { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; }
body.la-theme .la-cta2 .la-s-lede { margin-top: 18px !important; }
body.la-theme .la-cta2-btns { display: flex; flex-wrap: wrap; gap: 14px; }
body.la-theme .la-cta2 .la-hx-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 56px; padding: 0 30px; box-sizing: border-box; font-size: 16px; font-weight: 600; text-decoration: none !important; border-radius: 2px; transition: background-color .2s, color .2s, border-color .2s; }
body.la-theme .la-cta2 .la-hx-btn--primary { background: #F5F0E8; color: #0C0A08 !important; border: 1px solid #F5F0E8; }
body.la-theme .la-cta2 .la-hx-btn--primary:hover { background: #E6D0A6; border-color: #E6D0A6; }
body.la-theme .la-cta2 .la-hx-btn--ghost { color: #F5F0E8 !important; border: 1px solid rgba(245, 240, 232, .32); background: transparent; }
body.la-theme .la-cta2 .la-hx-btn--ghost:hover { border-color: #D4B98A; color: #E6D0A6 !important; }

/* Support: three joined cells */
body.la-theme .la-contact2-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid rgba(28, 24, 18, .16); background: var(--la-card); }
body.la-theme .la-contact2-cell { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 32px; text-decoration: none !important; color: inherit !important; transition: background-color .2s; }
body.la-theme .la-contact2-cell + .la-contact2-cell { border-left: 1px solid rgba(28, 24, 18, .16); }
body.la-theme a.la-contact2-cell:hover { background: #FBF7F1; }
body.la-theme .la-contact2-cell .la-s-ic { margin-bottom: 28px; }
body.la-theme .la-contact2-label { font-family: var(--la-mono); font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--la-text-muted); }
body.la-theme .la-contact2-value { font-size: 19px; font-weight: 600; letter-spacing: -.01em; color: var(--la-text); overflow-wrap: anywhere; }
body.la-theme .la-contact2-meta { font-size: 14px; color: var(--la-text-mid); }
body.la-theme .la-contact2-go { position: absolute; top: 30px; right: 30px; font-size: 18px; color: var(--la-text-muted); transition: transform .2s, color .2s; }
body.la-theme a.la-contact2-cell:hover .la-contact2-go { transform: translateX(4px); color: var(--la-text); }

@media (max-width: 900px) {
    body.la-theme .la-s-head, body.la-theme .la-cta2-inner { flex-direction: column; align-items: flex-start; gap: 18px; }
    body.la-theme .la-s-head { margin-bottom: 32px; }
    body.la-theme .la-about2-grid, body.la-theme .la-faq2-grid { grid-template-columns: 1fr; }
    body.la-theme .la-trust2-grid, body.la-theme .la-contact2-grid { grid-template-columns: 1fr; }
    body.la-theme .la-trust2-item, body.la-theme .la-trust2-item + .la-trust2-item { padding: 24px 0; border-left: 0; border-bottom: 1px solid rgba(28, 24, 18, .16); }
    body.la-theme .la-trust2-top { margin-bottom: 20px; }
    body.la-theme .la-contact2-cell + .la-contact2-cell { border-left: 0; border-top: 1px solid rgba(28, 24, 18, .16); }
    body.la-theme .la-contact2-cell { padding: 24px; }
    body.la-theme .la-contact2-cell .la-s-ic { margin-bottom: 16px; }
}
@media (max-width: 560px) {
    body.la-theme .la-s { padding: 64px 16px !important; }
    body.la-theme .la-about2-list > div { grid-template-columns: 1fr; gap: 8px; }
    body.la-theme .la-faq2 .la-faq-q { font-size: 16px !important; padding: 20px 0 !important; }
    body.la-theme .la-faq2 .la-faq-a { padding-right: 0 !important; }
    body.la-theme .la-cta2-btns, body.la-theme .la-cta2 .la-hx-btn { width: 100%; }
}

/* ═══════════════════════════════════════════════════
   v1.11.1 — SEARCH OVERLAY + ACCOUNT PAGE in the site type system
   ═══════════════════════════════════════════════════ */
/* Search */
body.la-theme #la-search-input { font-family: var(--la-font) !important; font-weight: 600 !important; letter-spacing: -.03em !important; }
body.la-theme .la-search-label { font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--la-text-mid) !important; }
body.la-theme .la-search-item { background: #16130F; border: 1px solid rgba(28, 24, 18, .35); border-radius: 0 !important; overflow: hidden; text-align: left !important; }
body.la-theme .la-search-item:hover { transform: translateY(-4px); box-shadow: 0 18px 40px rgba(12, 10, 8, .16); }
body.la-theme .la-search-stage { border-radius: 0 !important; border: 0 !important; background: #ECEAE6 !important; }
body.la-theme .la-search-stage img { border-radius: 0 !important; }
body.la-theme .la-search-name { margin: 0 16px !important; padding: 16px 0 12px !important; border-bottom: 1px solid rgba(245, 240, 232, .12); font-family: var(--la-font) !important; font-size: 16px !important; font-weight: 600 !important; letter-spacing: -.01em !important; text-transform: none !important; text-align: left !important; color: #F5F0E8 !important; }
body.la-theme .la-search-price { padding: 12px 16px 16px !important; font-size: 18px !important; font-weight: 600 !important; text-align: left !important; color: #F5F0E8 !important; }
body.la-theme .la-search-price * { color: inherit !important; }
body.la-theme .la-search-close { border-radius: 2px !important; }

/* Account: headline + eyebrows */
body.la-takeover .la-acct-intro .la-eyebrow { margin-bottom: 12px !important; }
body.la-takeover .la-acct-title { font-family: var(--la-font) !important; font-size: clamp(36px, 4.4vw, 58px) !important; font-weight: 700 !important; letter-spacing: -.035em !important; text-transform: none !important; line-height: 1.02 !important; }
body.la-takeover .la-acct-lead { max-width: 560px; font-size: 17px !important; color: var(--la-text-mid) !important; }
body.la-takeover .la-acct-eyebrow,
body.la-takeover .woocommerce-MyAccount-navigation::before {
    font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important;
    letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--la-text-mid) !important;
}
body.la-takeover .woocommerce-MyAccount-navigation::before { content: 'Account menu' !important; }
body.la-takeover .la-acct-ops h2 { font-family: var(--la-font) !important; font-size: clamp(28px, 3vw, 40px) !important; font-weight: 700 !important; letter-spacing: -.03em !important; text-transform: none !important; }

/* Account: feature row as hairline columns, like "Built for the lab" */
body.la-takeover .la-acct-feats { gap: 0 !important; border-top: 1px solid rgba(28, 24, 18, .16); }
body.la-takeover .la-acct-feat { background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; padding: 26px 28px 8px 0 !important; }
body.la-takeover .la-acct-feat + .la-acct-feat { padding-left: 28px !important; border-left: 1px solid rgba(28, 24, 18, .16) !important; }
body.la-takeover .la-acct-num { font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .2em; color: var(--la-text-muted) !important; }
body.la-takeover .la-acct-feat h3 { font-size: 18px !important; font-weight: 600 !important; letter-spacing: -.01em !important; text-transform: none !important; }

/* Account: square panels */
body.la-takeover .woocommerce-MyAccount-navigation,
body.la-takeover .woocommerce-MyAccount-content,
body.la-takeover .la-acct-welcome,
body.la-takeover .la-acct-shortcuts a { border-radius: 0 !important; box-shadow: none !important; }
body.la-takeover .woocommerce-MyAccount-navigation { border-color: rgba(28, 24, 18, .16) !important; }
body.la-takeover .woocommerce-MyAccount-navigation li a { font-family: var(--la-font) !important; font-size: 16px !important; font-weight: 500 !important; text-transform: none !important; letter-spacing: 0 !important; }
body.la-takeover .woocommerce-MyAccount-navigation li.is-active a { font-weight: 600 !important; }
/* profile avatar (added by WordPress.com / other plugins): small and tidy */
body.la-takeover .woocommerce-MyAccount-navigation img { width: 48px !important; height: 48px !important; border-radius: 50% !important; margin: 20px 24px 8px !important; display: block; }
body.la-takeover .la-acct-hello { font-size: 16px !important; color: var(--la-text-mid) !important; margin: 10px 0 2px !important; }
body.la-takeover .la-acct-name { font-family: var(--la-font) !important; font-size: clamp(28px, 3vw, 40px) !important; font-weight: 700 !important; letter-spacing: -.03em !important; text-transform: none !important; }
body.la-takeover .la-acct-shortcuts { gap: 0 !important; border: 1px solid rgba(28, 24, 18, .16); }
body.la-takeover .la-acct-shortcuts a { display: flex !important; justify-content: space-between; align-items: flex-start; gap: 16px; border: 0 !important; padding: 24px !important; font-size: 17px !important; font-weight: 600 !important; letter-spacing: -.01em; color: var(--la-text) !important; text-transform: none !important; }
body.la-takeover .la-acct-shortcuts a + a { border-left: 1px solid rgba(28, 24, 18, .16) !important; }
body.la-takeover .la-acct-shortcuts a:hover { background: #FBF7F1 !important; }
body.la-takeover .la-acct-shortcuts a span[aria-hidden] { color: var(--la-text-muted); transition: transform .2s; }
body.la-takeover .la-acct-shortcuts a:hover span[aria-hidden] { transform: translateX(4px); color: var(--la-text); }
@media (max-width: 960px) {
    body.la-takeover .la-acct-feat, body.la-takeover .la-acct-feat + .la-acct-feat { padding: 20px 0 !important; border-left: 0 !important; border-bottom: 1px solid rgba(28, 24, 18, .16) !important; }
    body.la-takeover .la-acct-shortcuts a + a { border-left: 0 !important; border-top: 1px solid rgba(28, 24, 18, .16) !important; }
}
/* search placeholder uses the same headline style as the typed text */
body.la-theme #la-search-input::placeholder {
    font-family: var(--la-font);
    font-weight: 600;
    letter-spacing: -.03em;
    color: var(--la-text-muted);
    opacity: 1;
}

/* ═══════════════════════════════════════════════════
   v1.11.3 — BLOCK CART: EMPTY STATE + "NEW IN STORE" GRID
   ═══════════════════════════════════════════════════ */
body.la-theme .wp-block-woocommerce-empty-cart-block { max-width: 1260px; margin: 0 auto; padding: 24px 0 40px; }
body.la-theme .wc-block-cart__empty-cart__title.with-empty-cart-icon::before { display: none !important; }
body.la-theme .wc-block-cart__empty-cart__title {
    margin: 0 auto 14px !important;
    font-family: var(--la-font) !important;
    font-size: clamp(32px, 4vw, 52px) !important;
    font-weight: 700 !important;
    letter-spacing: -.035em !important;
    line-height: 1.05 !important;
    color: var(--la-text) !important;
    text-align: center;
}
body.la-theme .wc-block-cart__empty-cart__title::after { content: none; }
body.la-theme .wp-block-woocommerce-empty-cart-block::before {
    content: "Your cart";
    display: block;
    margin-bottom: 14px;
    text-align: center;
    font-family: var(--la-mono);
    font-size: 12px;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--la-text-mid);
}
body.la-theme .la-empty-cart-sub { margin: 0 auto 28px !important; text-align: center; font-size: 17px; color: var(--la-text-mid); }
body.la-theme .la-empty-cart-ctas { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; margin-bottom: 64px; }
body.la-theme .la-empty-btn { display: inline-flex; align-items: center; gap: 10px; height: 54px; padding: 0 28px; border-radius: 2px; font-size: 16px; font-weight: 600; text-decoration: none !important; transition: background-color .2s, border-color .2s; }
body.la-theme .la-empty-btn--primary { background: #16130F; color: #F5F0E8 !important; border: 1px solid #16130F; }
body.la-theme .la-empty-btn--primary:hover { background: #2A2420; }
body.la-theme .la-empty-btn--ghost { background: var(--la-card); color: var(--la-text) !important; border: 1px solid rgba(28, 24, 18, .28); }
body.la-theme .la-empty-btn--ghost:hover { border-color: var(--la-accent); }
/* dotted separator -> hairline, "New in store" -> section heading */
body.la-theme .wp-block-woocommerce-empty-cart-block hr.wp-block-separator { border: 0 !important; border-top: 1px solid rgba(28, 24, 18, .16) !important; width: 100% !important; max-width: none !important; margin: 0 0 40px !important; background: none !important; height: 0 !important; }
body.la-theme .wp-block-woocommerce-empty-cart-block hr.wp-block-separator::before { display: none !important; }
body.la-theme .wp-block-woocommerce-empty-cart-block h2:not(.wc-block-cart__empty-cart__title) {
    margin: 0 0 24px !important; text-align: left !important;
    font-family: var(--la-font) !important; font-size: clamp(26px, 2.6vw, 36px) !important; font-weight: 700 !important; letter-spacing: -.03em !important; color: var(--la-text) !important;
}

/* product grid block -> catalog cards */
body.la-theme .wc-block-grid__products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
body.la-theme .wc-block-grid__product {
    position: relative; display: flex !important; flex-direction: column; width: auto !important; max-width: none !important; flex: none !important;
    margin: 0 !important; padding: 0 !important; border: 1px solid rgba(28, 24, 18, .35) !important; background: #16130F; text-align: left !important;
    box-shadow: 0 14px 34px rgba(12, 10, 8, .10); transition: transform .25s ease, box-shadow .25s ease;
}
body.la-theme .wc-block-grid__product:hover { transform: translateY(-4px); box-shadow: 0 22px 48px rgba(12, 10, 8, .18); }
body.la-theme .wc-block-grid__product-link { display: flex; flex-direction: column; flex: 1 1 auto; text-decoration: none !important; color: inherit !important; }
body.la-theme .wc-block-grid__product-image { margin: 0 !important; background: #ECEAE6; aspect-ratio: 1 / 1; overflow: hidden; position: relative; }
body.la-theme .wc-block-grid__product-image img { width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 0 !important; display: block; }
body.la-theme .wc-block-grid__product-title {
    margin: 0 20px !important; padding: 20px 0 14px !important; border-bottom: 1px solid rgba(245, 240, 232, .12);
    font-family: var(--la-font) !important; font-size: 18px !important; font-weight: 600 !important; letter-spacing: -.01em; color: #F5F0E8 !important; line-height: 1.3;
}
body.la-theme .wc-block-grid__product-price { margin: 0 !important; padding: 14px 20px 18px !important; font-size: 22px !important; font-weight: 600 !important; color: #F5F0E8 !important; }
body.la-theme .wc-block-grid__product-price * { color: inherit !important; }
body.la-theme .wc-block-grid__product-price del { opacity: .5; font-size: 14px; }
body.la-theme .wc-block-grid__product-add-to-cart { margin: auto 20px 20px !important; padding: 0 !important; }
body.la-theme .wc-block-grid__product-add-to-cart .wp-block-button__link,
body.la-theme .wc-block-grid__product-add-to-cart a,
body.la-theme .wc-block-grid__product-add-to-cart button {
    display: flex !important; align-items: center; justify-content: center; gap: 8px; width: 100% !important; height: 50px; box-sizing: border-box;
    margin: 0 !important; padding: 0 16px !important; background: #F5F0E8 !important; color: #0C0A08 !important; border: 1px solid #F5F0E8 !important; border-radius: 2px !important;
    font-family: var(--la-font) !important; font-size: 16px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; text-decoration: none !important; box-shadow: none !important;
}
body.la-theme .wc-block-grid__product-add-to-cart a:hover,
body.la-theme .wc-block-grid__product-add-to-cart button:hover { background: #E6D0A6 !important; border-color: #E6D0A6 !important; }
body.la-theme .wc-block-grid__product-add-to-cart a.add_to_cart_button::before { content: "+"; font-size: 20px; font-weight: 400; line-height: 1; }
body.la-theme .wc-block-grid__product-onsale {
    position: absolute !important; top: 14px !important; right: 14px !important; left: auto !important; z-index: 2; margin: 0 !important;
    background: #0C0A08 !important; color: #F5F0E8 !important; border: 0 !important; border-radius: 0 !important;
    font-family: var(--la-mono) !important; font-size: 10px !important; font-weight: 500 !important; letter-spacing: .2em !important; padding: 6px 10px !important;
}
body.la-theme.la-no-compare .wc-block-grid__product-onsale,
body.la-theme.la-no-compare .wc-block-components-product-sale-badge { display: none !important; }
@media (max-width: 900px) { body.la-theme .wc-block-grid__products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
    body.la-theme .wc-block-grid__products { gap: 10px !important; }
    body.la-theme .wc-block-grid__product-title { margin: 0 12px !important; padding: 12px 0 10px !important; font-size: 14px !important; }
    body.la-theme .wc-block-grid__product-price { padding: 10px 12px 12px !important; font-size: 16px !important; }
    body.la-theme .wc-block-grid__product-add-to-cart { margin: auto 12px 12px !important; }
    body.la-theme .wc-block-grid__product-add-to-cart a, body.la-theme .wc-block-grid__product-add-to-cart button { height: 42px; font-size: 14px !important; }
    body.la-theme .la-empty-cart-ctas { flex-direction: column; align-items: stretch; margin-bottom: 44px; }
    body.la-theme .la-empty-btn { justify-content: center; }
}

/* add-on offer: match the square, hairline style */
body.la-theme .la-addon { border-radius: 0 !important; border: 1px solid rgba(28, 24, 18, .28) !important; background: var(--la-card) !important; }
body.la-theme .la-addon-thumb { border-radius: 0 !important; }
body.la-theme button.la-addon-btn, body.la-theme .la-addon-btn { border-radius: 2px !important; background: #16130F !important; color: #F5F0E8 !important; border: 1px solid #16130F !important; }
body.la-theme button.la-addon-btn:hover { background: #2A2420 !important; }
body.la-theme .la-addon-save { border-radius: 0 !important; font-family: var(--la-mono); font-weight: 500 !important; letter-spacing: .12em; text-transform: uppercase; font-size: 10px !important; }
body.la-theme .wc-block-grid__product-add-to-cart a, body.la-theme .wc-block-grid__product-add-to-cart button { white-space: nowrap; }
@media (max-width: 600px) { body.la-theme .wc-block-grid__product-add-to-cart a, body.la-theme .wc-block-grid__product-add-to-cart button { padding: 0 6px !important; gap: 5px; } }

/* ═══════════════════════════════════════════════════
   v1.11.5 — PRODUCT PAGE in the site system
   ═══════════════════════════════════════════════════ */
body.la-theme .la-wc-scope div.product div.images.la-single-photo,
body.la-theme .woocommerce div.product div.images.la-single-photo { border-radius: 0 !important; border: 1px solid rgba(28, 24, 18, .16) !important; background: #ECEAE6 !important; }
body.la-theme .la-pdp-eyebrow { margin: 0 0 12px !important; }
body.la-theme .la-wc-scope div.product .product_title {
    font-family: var(--la-font) !important; font-size: clamp(36px, 4vw, 56px) !important; font-weight: 700 !important;
    letter-spacing: -.035em !important; line-height: 1.02 !important; text-transform: none !important; color: var(--la-text) !important; margin: 0 0 14px !important; white-space: normal !important;
}
body.la-theme .la-wc-scope div.product p.price,
body.la-theme .la-wc-scope div.product span.price {
    font-family: var(--la-font) !important; font-size: 30px !important; font-weight: 600 !important; letter-spacing: -.02em;
    color: var(--la-text) !important; padding-bottom: 22px !important; margin: 0 0 22px !important; border-bottom: 1px solid rgba(28, 24, 18, .16);
}
body.la-theme .la-wc-scope div.product p.price * { color: inherit !important; }

/* Strength */
body.la-theme .la-strength { display: flex; align-items: center; gap: 14px; margin: 0 0 22px !important; }
body.la-theme .la-strength-label { font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .22em; text-transform: uppercase; color: var(--la-text-mid) !important; }
body.la-theme .la-strength-chip { border-radius: 2px !important; background: #16130F !important; color: #F5F0E8 !important; font-family: var(--la-mono) !important; font-size: 13px !important; font-weight: 500 !important; letter-spacing: .08em; padding: 8px 14px !important; }

/* Formula + description as label/value rows */
body.la-theme .la-wc-scope .la-formula,
body.la-theme .la-wc-scope .la-inline-desc p { margin: 0 !important; padding: 14px 0 !important; border-top: 1px solid rgba(28, 24, 18, .12); font-size: 15px !important; line-height: 1.65 !important; color: var(--la-text-mid) !important; }
body.la-theme .la-wc-scope .la-formula strong,
body.la-theme .la-wc-scope .la-inline-desc strong { display: block; margin-bottom: 4px; font-family: var(--la-mono); font-size: 11px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--la-text); }
body.la-theme .la-wc-scope .la-inline-desc { margin: 0 0 8px !important; border-bottom: 1px solid rgba(28, 24, 18, .12); }
body.la-theme .la-wc-scope div.product .stock { font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .18em; text-transform: uppercase; color: #256B43 !important; margin: 14px 0 !important; }

/* COA strip */
body.la-theme .la-coa-badge { display: flex !important; align-items: center; gap: 10px; border-radius: 0 !important; border: 1px solid rgba(28, 24, 18, .16) !important; background: var(--la-card) !important; padding: 14px 16px !important; font-size: 15px !important; font-weight: 500 !important; color: var(--la-text) !important; }
body.la-theme .la-coa-ic { color: var(--la-accent-dk); flex: none; }
body.la-theme .la-coa-badge a { color: var(--la-text) !important; font-weight: 600 !important; text-decoration: underline !important; text-underline-offset: 3px; }

/* Quantity + Add to cart */
body.la-theme .la-wc-scope div.product form.cart .quantity .qty { border-radius: 2px !important; border: 1px solid rgba(28, 24, 18, .28) !important; height: 56px !important; font-family: var(--la-font) !important; }
body.la-theme .la-wc-scope div.product form.cart .single_add_to_cart_button,
body.la-theme .woocommerce div.product form.cart button.single_add_to_cart_button {
    height: 56px; background: #16130F !important; color: #F5F0E8 !important; border: 1px solid #16130F !important; border-radius: 2px !important;
    box-shadow: none !important; font-size: 16px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important;
}
body.la-theme .la-wc-scope div.product form.cart .single_add_to_cart_button:hover { background: #2A2420 !important; transform: none !important; }

/* Bundle tiles: square, hairline */
body.la-theme .la-bundles-head { font-size: 15px !important; }
body.la-theme .la-bundles-head strong { font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .22em !important; }
body.la-theme button.la-bundle { border-radius: 0 !important; border: 1px solid rgba(28, 24, 18, .2) !important; }
body.la-theme button.la-bundle--best, body.la-theme button.la-bundle.is-active { border: 2px solid #16130F !important; }
body.la-theme button.la-bundle.is-active { background: #FBF7F1 !important; }
body.la-theme .la-bundle-flag { border-radius: 0 !important; background: #16130F !important; color: #F5F0E8 !important; }
body.la-theme .la-bundle-save { border-radius: 0 !important; font-family: var(--la-mono); font-weight: 500 !important; font-size: 10px !important; letter-spacing: .12em; text-transform: uppercase; }
body.la-theme .la-bundle-vials img, body.la-theme .la-bundle-vial { border-radius: 2px !important; }
body.la-theme .la-bundle-total { font-weight: 700 !important; letter-spacing: -.02em; }

/* Share row + tabs */
body.la-theme .la-share { border-top: 1px solid rgba(28, 24, 18, .12); padding-top: 18px; margin-top: 22px; }
body.la-theme .la-share a { border-radius: 2px !important; }
body.la-theme .la-wc-scope .woocommerce-tabs ul.tabs { border-bottom: 1px solid rgba(28, 24, 18, .16) !important; gap: 28px !important; background: none !important; padding: 0 !important; border-radius: 0 !important; }
body.la-theme .la-wc-scope .woocommerce-tabs ul.tabs li a {
    font-family: var(--la-mono) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .2em !important; text-transform: uppercase !important;
    background: none !important; border: 0 !important; border-bottom: 2px solid transparent !important; border-radius: 0 !important; padding: 14px 0 !important; color: var(--la-text-mid) !important; box-shadow: none !important;
}
body.la-theme .la-wc-scope .woocommerce-tabs ul.tabs li.active a { color: var(--la-text) !important; border-bottom-color: #16130F !important; }
body.la-theme .la-specs-table { border-radius: 0 !important; border: 1px solid rgba(28, 24, 18, .16) !important; box-shadow: none !important; }
body.la-theme .la-specs-label { font-family: var(--la-mono); font-size: 11px; font-weight: 500 !important; letter-spacing: .16em; text-transform: uppercase; }
body.la-theme .la-specs-table td { font-size: 14px !important; }
body.la-theme .la-crumbs { font-family: var(--la-mono); font-size: 11px !important; letter-spacing: .18em; text-transform: uppercase; }
body.la-theme .la-coa-badge { flex-wrap: wrap; column-gap: 8px; row-gap: 4px; }
body.la-theme .la-coa-badge > span, body.la-theme .la-coa-badge a { white-space: nowrap; }

/* ═══════════════════════════════════════════════════
   v1.11.9 — STORE NOTICES ("added to cart", info, errors)
   Classic (.woocommerce-message/-info/-error) and block
   (.wc-block-components-notice-banner) notices share one look.
   ═══════════════════════════════════════════════════ */
body.la-theme .woocommerce-message,
body.la-theme .woocommerce-info,
body.la-theme .woocommerce-error,
body.la-theme .wc-block-components-notice-banner {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap;
    gap: 12px 16px !important;
    margin: 0 0 28px !important;
    padding: 16px 18px 16px 20px !important;
    background: var(--la-card) !important;
    border: 1px solid rgba(28, 24, 18, .16) !important;
    border-left: 3px solid #16130F !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--la-text) !important;
    font-family: var(--la-font) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    list-style: none !important;
}
body.la-theme .woocommerce-message { border-left-color: #256B43 !important; }
body.la-theme .woocommerce-error,
body.la-theme .wc-block-components-notice-banner.is-error { border-left-color: #B42318 !important; }
body.la-theme .wc-block-components-notice-banner.is-success { border-left-color: #256B43 !important; }

/* icons: WooCommerce's font icon / block SVG -> small mono status tag */
body.la-theme .woocommerce-message::before,
body.la-theme .woocommerce-info::before,
body.la-theme .woocommerce-error::before { position: static !important; content: none !important; }
body.la-theme .wc-block-components-notice-banner > svg { display: none !important; }
body.la-theme .woocommerce-message::after,
body.la-theme .wc-block-components-notice-banner.is-success::before {
    content: "Done" !important;
    order: -1;
    display: inline-block !important;
    padding: 5px 9px;
    background: rgba(37, 107, 67, .1);
    color: #256B43;
    font-family: var(--la-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .2em;
    text-transform: uppercase;
    line-height: 1.2;
    clear: none !important;
}
body.la-theme .wc-block-components-notice-banner__content { flex: 1 1 auto; font-size: 15px !important; color: var(--la-text) !important; }

/* action button (View cart) */
body.la-theme .woocommerce-message .button,
body.la-theme .woocommerce-message a.button,
body.la-theme .woocommerce-info .button,
body.la-theme .wc-block-components-notice-banner .wc-forward,
body.la-theme .wc-block-components-notice-banner__content .button {
    order: 3;
    margin: 0 0 0 auto !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    height: 44px;
    padding: 0 20px !important;
    background: #16130F !important;
    color: #F5F0E8 !important;
    border: 1px solid #16130F !important;
    border-radius: 2px !important;
    font-family: var(--la-font) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
body.la-theme .woocommerce-message .button:hover,
body.la-theme .wc-block-components-notice-banner .wc-forward:hover { background: #2A2420 !important; transform: none !important; }
body.la-theme .woocommerce-message .button::after { content: " \2192"; margin-left: 8px; }

/* WooCommerce focuses the notice for screen readers; don't draw the keyboard ring around it */
body.la-theme .woocommerce-message:focus,
body.la-theme .woocommerce-info:focus,
body.la-theme .woocommerce-error:focus,
body.la-theme .wc-block-components-notice-banner:focus,
body.la-theme .woocommerce-notices-wrapper:focus,
body.la-theme [role="alert"]:focus { outline: none !important; box-shadow: none !important; }

@media (max-width: 560px) {
    body.la-theme .woocommerce-message .button,
    body.la-theme .wc-block-components-notice-banner .wc-forward { margin: 4px 0 0 !important; width: 100%; justify-content: center; }
}
body.la-theme .wc-block-components-notice-banner__content { display: flex !important; align-items: center; flex-wrap: wrap; gap: 12px 16px; }
body.la-theme .la-wc-scope .wc-block-components-notice-banner .wc-forward,
body.la-theme .la-wc-scope .woocommerce-message a.button,
body.la-theme .wc-block-components-notice-banner__content a.button.wc-forward {
    margin: 0 0 0 auto !important; height: 44px !important; padding: 0 20px !important;
    background: #16130F !important; color: #F5F0E8 !important; border: 1px solid #16130F !important; border-radius: 2px !important;
    font-size: 15px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important;
}
body.la-theme .wc-block-components-notice-banner .wc-forward::after { content: " \2192"; margin-left: 8px; }
body.la-theme .woocommerce-error::after,
body.la-theme .wc-block-components-notice-banner.is-error::before {
    content: "Error"; order: -1; display: inline-block; padding: 5px 9px; background: rgba(180, 35, 24, .08); color: #B42318;
    font-family: var(--la-mono); font-size: 10px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; line-height: 1.2;
}
body.la-theme .woocommerce-error li { margin: 0 !important; }
@media (max-width: 560px) {
    body.la-theme .la-wc-scope .wc-block-components-notice-banner .wc-forward,
    body.la-theme .wc-block-components-notice-banner__content a.button.wc-forward,
    body.la-theme .la-wc-scope .woocommerce-message a.button { margin: 4px 0 0 !important; width: 100%; justify-content: center; }
}

/* ═══════════════════════════════════════════════════
   v1.11.18 — FILLED CART in the site system + "Add more" strip
   ═══════════════════════════════════════════════════ */
body.la-theme .la-cart-head { max-width: 1260px; margin: 0 auto 36px; }
body.la-theme .la-cart-title {
    margin: 0 !important;
    font-family: var(--la-font) !important; font-size: clamp(32px, 4vw, 52px) !important; font-weight: 700 !important;
    letter-spacing: -.035em !important; line-height: 1.05 !important; text-transform: none !important; color: var(--la-text) !important;
}
body.la-theme .la-wc-scope:has(.wp-block-woocommerce-empty-cart-block) .la-cart-head,
body.la-theme .la-wc-scope:has(.cart-empty) .la-cart-head { display: none; }

body.la-theme .wc-block-cart,
body.la-theme .wc-block-cart * { font-family: var(--la-font); }
/* column headings + "Cart totals" -> mono eyebrows */
body.la-theme .wc-block-cart-items__header th,
body.la-theme .wc-block-cart-items__header span,
body.la-theme .wc-block-cart .wc-block-cart__totals-title {
    font-family: var(--la-mono) !important; font-size: 11px !important; font-weight: 500 !important;
    letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--la-text-mid) !important;
}
body.la-theme .wc-block-cart-items__header { border-bottom: 1px solid rgba(28, 24, 18, .16) !important; }
body.la-theme .wc-block-cart-items__row { border-bottom: 1px solid rgba(28, 24, 18, .12) !important; }
body.la-theme .wc-block-cart-items, body.la-theme .wc-block-cart-items td, body.la-theme .wc-block-cart-items th { border-color: rgba(28, 24, 18, .12) !important; }
body.la-theme .wc-block-cart-item__image img { border-radius: 0 !important; background: #ECEAE6; border: 1px solid rgba(28, 24, 18, .10); }
body.la-theme .wc-block-cart .wc-block-components-product-name {
    font-size: 18px !important; font-weight: 600 !important; letter-spacing: -.01em; line-height: 1.3;
    color: var(--la-text) !important; text-decoration: none !important;
}
body.la-theme .wc-block-cart .wc-block-components-product-name:hover { color: var(--la-accent) !important; }
body.la-theme .wc-block-cart-item__prices { margin-top: 4px; font-size: 14px !important; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-cart .wc-block-components-product-price__regular { color: var(--la-text-muted) !important; font-weight: 400 !important; }
body.la-theme .wc-block-cart .wc-block-components-product-price__value { font-weight: 500; color: var(--la-text) !important; background: none !important; }
body.la-theme .wc-block-cart .wc-block-components-product-metadata { margin-top: 8px !important; font-size: 13px !important; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-cart .wc-block-components-product-details__name { font-weight: 500 !important; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-cart .wc-block-components-product-details__value { color: var(--la-text) !important; }
body.la-theme .wc-block-cart-item__total { font-size: 17px !important; font-weight: 600 !important; color: var(--la-text) !important; font-variant-numeric: tabular-nums; }
body.la-theme .wc-block-cart .wc-block-components-sale-badge,
body.la-theme .wc-block-cart .wc-block-components-product-badge {
    border: 1px solid rgba(128, 98, 58, .45) !important; border-radius: 0 !important; background: transparent !important; color: var(--la-accent) !important;
    font-family: var(--la-mono) !important; font-size: 10px !important; font-weight: 500 !important; letter-spacing: .14em !important; text-transform: uppercase !important;
    padding: 3px 7px !important; box-shadow: none !important;
}
/* quantity + remove */
body.la-theme .wc-block-cart .wc-block-components-quantity-selector { border-radius: 2px !important; border-color: rgba(28, 24, 18, .28) !important; }
body.la-theme .wc-block-cart .wc-block-components-quantity-selector::after { border-radius: 2px !important; border-color: rgba(28, 24, 18, .28) !important; }
body.la-theme .wc-block-cart .wc-block-components-quantity-selector__input { font-weight: 600 !important; color: var(--la-text) !important; }
body.la-theme .wc-block-cart .wc-block-components-quantity-selector__button { color: var(--la-text-mid) !important; }
body.la-theme .wc-block-cart-item__remove-link { color: var(--la-text-mid) !important; }
body.la-theme .wc-block-cart-item__remove-link:hover { color: var(--la-text) !important; }
/* totals panel */
body.la-theme .wp-block-woocommerce-cart-totals-block {
    border: 1px solid rgba(28, 24, 18, .16); background: var(--la-card); padding: 26px 24px 24px !important;
}
body.la-theme .wc-block-cart .wc-block-cart__totals-title { display: block !important; margin: 0 0 14px !important; padding: 0 !important; text-align: left !important; }
body.la-theme .wc-block-cart .wc-block-components-panel__button { font-size: 15px !important; font-weight: 500 !important; color: var(--la-text) !important; }
body.la-theme .wc-block-cart .wc-block-components-totals-item__label { font-size: 15px; color: var(--la-text-mid); }
body.la-theme .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-size: 17px !important; font-weight: 600 !important; color: var(--la-text) !important; }
body.la-theme .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 26px !important; font-weight: 700 !important; letter-spacing: -.02em; color: var(--la-text) !important; font-variant-numeric: tabular-nums;
}
body.la-theme .wc-block-cart .wc-block-components-totals-item__description { font-size: 13px; color: var(--la-text-mid); }
/* "Proceed to Checkout" -> the site's dark button */
body.la-theme .wc-block-cart .wc-block-cart__submit-container { padding-top: 6px; }
body.la-theme .wc-block-cart a.wc-block-cart__submit-button,
body.la-theme .wc-block-cart .wc-block-cart__submit-button {
    display: flex !important; align-items: center; justify-content: center; width: 100% !important; min-height: 56px; box-sizing: border-box;
    margin: 0 !important; padding: 0 24px !important; background: #16130F !important; color: #F5F0E8 !important;
    border: 1px solid #16130F !important; border-radius: 2px !important; box-shadow: none !important;
    font-size: 16px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important; text-decoration: none !important;
    transition: background-color .2s ease;
}
body.la-theme .wc-block-cart .wc-block-cart__submit-button * { color: inherit !important; }
body.la-theme .wc-block-cart .wc-block-cart__submit-button .wc-block-components-button__text::after { content: " \2192"; }
body.la-theme .wc-block-cart .wc-block-cart__submit-button:hover { background: #2A2420 !important; border-color: #2A2420 !important; }
body.la-theme .wc-block-cart .wc-block-cart__submit-button:focus-visible { outline: 2px solid var(--la-accent) !important; outline-offset: 3px; }
@media (max-width: 700px) {
    body.la-theme .la-cart-head { margin-bottom: 24px; }
    body.la-theme .wp-block-woocommerce-cart-totals-block { padding: 20px 16px 16px !important; }
}

/* Bacteriostatic Water offer: type + badge in the house style */
body.la-theme .la-addon-title { font-weight: 600 !important; letter-spacing: -.01em; }
body.la-theme .la-addon-price strong { font-weight: 700; letter-spacing: -.01em; }
body.la-theme .la-addon-save { background: transparent !important; color: var(--la-accent) !important; border: 1px solid rgba(128, 98, 58, .45) !important; padding: 3px 7px !important; }

/* "Add more" strip: the catalog's dark cards, compact */
body.la-theme .la-more { max-width: 1260px; margin: 56px auto 0; }
body.la-theme .la-more-head { display: flex; flex-direction: column; margin-bottom: 22px; }
body.la-theme .la-more-title {
    margin: 0 !important; font-family: var(--la-font) !important; font-size: clamp(26px, 2.6vw, 36px) !important; font-weight: 700 !important;
    letter-spacing: -.03em !important; line-height: 1.1; text-transform: none !important; color: var(--la-text) !important;
}
body.la-theme .la-more-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
body.la-theme .la-more-card {
    display: flex; flex-direction: column; margin: 0 !important; padding: 0 !important; background: #16130F;
    border: 1px solid rgba(28, 24, 18, .35); box-shadow: 0 14px 34px rgba(12, 10, 8, .10); transition: transform .25s ease, box-shadow .25s ease;
}
body.la-theme .la-more-card:hover { transform: translateY(-3px); box-shadow: 0 20px 44px rgba(12, 10, 8, .18); }
body.la-theme .la-more-img { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: #ECEAE6; }
body.la-theme .la-more-img img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; margin: 0 !important; border-radius: 0 !important; }
body.la-theme .la-more-body { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 14px; flex: 1 1 auto; }
body.la-theme .la-more-cat { font-family: var(--la-mono); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: #D4B98A; }
body.la-theme .la-more-name { font-size: 17px; font-weight: 600; letter-spacing: -.01em; line-height: 1.25; color: #F5F0E8 !important; text-decoration: none !important; }
body.la-theme .la-more-name:hover { color: #E6D0A6 !important; }
body.la-theme .la-more-name:focus-visible { outline: 2px solid #D4B98A; outline-offset: 3px; }
body.la-theme .la-more-price, body.la-theme .la-more-price * { font-size: 18px; font-weight: 600; color: #F5F0E8 !important; font-variant-numeric: tabular-nums; }
body.la-theme .la-more-form { margin: 0 !important; padding: 0 18px 18px; }
body.la-theme button.la-more-btn, body.la-theme .la-more-btn {
    display: flex !important; align-items: center; justify-content: center; gap: 8px; width: 100%; height: 46px; box-sizing: border-box;
    margin: 0 !important; padding: 0 12px !important; background: #F5F0E8 !important; color: #0C0A08 !important; border: 1px solid #F5F0E8 !important;
    border-radius: 2px !important; box-shadow: none !important; cursor: pointer; white-space: nowrap;
    font-family: var(--la-font) !important; font-size: 15px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important;
    transition: background-color .2s, border-color .2s;
}
body.la-theme .la-more-btn span { font-size: 19px; font-weight: 400; line-height: 1; }
body.la-theme .la-more-btn:hover { background: #E6D0A6 !important; border-color: #E6D0A6 !important; }
body.la-theme .la-more-btn:focus-visible { outline: 2px solid #D4B98A !important; outline-offset: 3px; }
/* phones/tablets: one swipeable row */
@media (max-width: 900px) {
    body.la-theme .la-more { margin-top: 40px; }
    body.la-theme .la-more-list {
        display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
        margin: 0 !important; padding: 2px 0 14px !important; scrollbar-width: none;
    }
    body.la-theme .la-more-list::-webkit-scrollbar { display: none; }
    body.la-theme .la-more-card { flex: 0 0 min(44%, 230px); scroll-snap-align: start; box-shadow: none; }
    body.la-theme .la-more-card:hover { transform: none; }
    body.la-theme .la-more-body { padding: 12px 12px 10px; gap: 4px; }
    body.la-theme .la-more-name { font-size: 15px; }
    body.la-theme .la-more-price, body.la-theme .la-more-price * { font-size: 16px; }
    body.la-theme .la-more-form { padding: 0 12px 12px; }
    body.la-theme button.la-more-btn, body.la-theme .la-more-btn { height: 42px; font-size: 14px !important; gap: 6px; }
}
@media (prefers-reduced-motion: reduce) { body.la-theme .la-more-card { transition: none; } body.la-theme .la-more-card:hover { transform: none; } }
body.la-theme .wc-block-cart .wc-block-components-product-price ins,
body.la-theme .wc-block-cart .wc-block-components-product-price__value { text-decoration: none !important; }

/* ═══════════════════════════════════════════════════
   v1.11.19 — BLOCK CHECKOUT in the site system
   ═══════════════════════════════════════════════════ */
body.la-theme .la-wc-scope:has(.wc-block-checkout-empty) .la-checkout-head { display: none; }
body.la-theme .wc-block-checkout,
body.la-theme .wc-block-checkout * { font-family: var(--la-font); }
/* step headings: "Contact information", "Billing address", "Payment options" ... */
body.la-theme .wc-block-checkout .wc-block-components-checkout-step__title {
    font-family: var(--la-font) !important; font-size: 24px !important; font-weight: 700 !important;
    letter-spacing: -.025em !important; line-height: 1.2 !important; text-transform: none !important; color: var(--la-text) !important;
}
body.la-theme .wc-block-checkout .wc-block-components-checkout-step__description { font-size: 14px; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-step { margin-bottom: 36px; }
/* text fields + selects: square, hairline, bronze focus */
body.la-theme .wc-block-checkout .wc-block-components-text-input input,
body.la-theme .wc-block-checkout .wc-block-components-text-input textarea,
body.la-theme .wc-block-checkout .wc-blocks-components-select__select,
body.la-theme .wc-block-checkout .wc-block-components-combobox .components-combobox-control input,
body.la-theme .wc-block-checkout .wc-block-components-textarea {
    border: 1px solid rgba(28, 24, 18, .28) !important; border-radius: 2px !important; background: var(--la-card) !important;
    color: var(--la-text) !important; box-shadow: none !important; font-size: 16px !important;
}
body.la-theme .wc-block-checkout .wc-blocks-components-select__container { border-radius: 2px !important; background: var(--la-card) !important; }
body.la-theme .wc-block-checkout .wc-block-components-text-input input:focus,
body.la-theme .wc-block-checkout .wc-block-components-text-input textarea:focus,
body.la-theme .wc-block-checkout .wc-blocks-components-select__select:focus,
body.la-theme .wc-block-checkout .wc-block-components-textarea:focus {
    border-color: var(--la-accent) !important; outline: 2px solid rgba(128, 98, 58, .35) !important; outline-offset: 0 !important; box-shadow: none !important;
}
body.la-theme .wc-block-checkout .wc-block-components-text-input label,
body.la-theme .wc-block-checkout .wc-blocks-components-select__label { color: var(--la-text-mid) !important; }
body.la-theme .wc-block-checkout .wc-block-components-text-input.has-error input,
body.la-theme .wc-block-checkout .has-error .wc-blocks-components-select__select { border-color: #B3261E !important; }
body.la-theme .wc-block-checkout .wc-block-components-address-form__address_2-toggle,
body.la-theme .wc-block-checkout .wc-block-components-address-card__edit { color: var(--la-accent) !important; font-weight: 500; }
/* checkboxes */
body.la-theme .wc-block-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
    border: 1px solid rgba(28, 24, 18, .4) !important; border-radius: 2px !important; background: var(--la-card) !important; box-shadow: none !important;
}
body.la-theme .wc-block-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: #16130F !important; border-color: #16130F !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: #F5F0E8 !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:focus-visible { outline: 2px solid var(--la-accent) !important; outline-offset: 2px; }
body.la-theme .wc-block-checkout .wc-block-components-checkbox__label { font-size: 15px; color: var(--la-text) !important; }
/* payment + shipping option cards */
body.la-theme .wc-block-checkout .wc-block-components-radio-control__option,
body.la-theme .wc-block-checkout .wc-block-components-radio-control-accordion-option { border-radius: 0 !important; }
body.la-theme .wc-block-checkout .wc-block-components-radio-control__input:checked { border-color: #16130F !important; }
body.la-theme .wc-block-checkout .wc-block-components-radio-control__input:checked::before { background: #16130F !important; }
body.la-theme .wc-block-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control,
body.la-theme .wc-block-checkout .wc-block-checkout__shipping-option .wc-block-components-radio-control { border-radius: 0 !important; }
/* terms line + actions */
body.la-theme .wc-block-checkout .wc-block-checkout__terms { font-size: 14px; line-height: 1.6; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-checkout .wc-block-checkout__terms a { color: var(--la-text) !important; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(128, 98, 58, .6); }
body.la-theme .wc-block-checkout .wc-block-checkout__terms a:hover { color: var(--la-accent) !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-place-order-button {
    min-height: 56px; padding: 0 32px !important; background: #16130F !important; color: #F5F0E8 !important;
    border: 1px solid #16130F !important; border-radius: 2px !important; box-shadow: none !important;
    font-size: 16px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important;
}
body.la-theme .wc-block-checkout .wc-block-components-checkout-place-order-button * { color: inherit !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-place-order-button:hover { background: #2A2420 !important; border-color: #2A2420 !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-place-order-button:focus-visible { outline: 2px solid var(--la-accent) !important; outline-offset: 3px; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-place-order-button:disabled { opacity: .5; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-return-to-cart-button { color: var(--la-text-mid) !important; font-weight: 500; text-decoration: none !important; }
body.la-theme .wc-block-checkout .wc-block-components-checkout-return-to-cart-button:hover { color: var(--la-text) !important; }
/* order summary panel */
body.la-theme .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block {
    border: 1px solid rgba(28, 24, 18, .16) !important; border-radius: 0 !important; background: var(--la-card) !important;
}
body.la-theme .wc-block-checkout .wc-block-components-checkout-order-summary__title,
body.la-theme .wc-block-checkout .wc-block-components-checkout-order-summary__title-text {
    font-family: var(--la-mono) !important; font-size: 11px !important; font-weight: 500 !important;
    letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--la-text-mid) !important;
}
body.la-theme .wc-block-checkout .wc-block-components-checkout-order-summary__title-price { font-family: var(--la-font) !important; font-size: 16px !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--la-text) !important; font-weight: 600 !important; }
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item__image img { border-radius: 0 !important; background: #ECEAE6; border: 1px solid rgba(28, 24, 18, .10); }
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item__quantity {
    background: #16130F !important; color: #F5F0E8 !important; border: 2px solid var(--la-card) !important; box-shadow: none !important;
    font-size: 11px !important; font-weight: 600 !important;
}
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item .wc-block-components-product-name { font-size: 15px !important; font-weight: 600 !important; color: var(--la-text) !important; }
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item__individual-prices { font-size: 13px; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item__individual-price { color: var(--la-text-mid) !important; text-decoration: none !important; background: none !important; }
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item__regular-individual-price { color: var(--la-text-muted) !important; }
body.la-theme .wc-block-checkout .wc-block-components-order-summary-item__total-price { font-weight: 600; color: var(--la-text) !important; font-variant-numeric: tabular-nums; }
body.la-theme .wc-block-checkout .wc-block-components-product-metadata { font-size: 12px !important; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-checkout .wc-block-components-product-details__name { font-weight: 500 !important; color: var(--la-text-mid) !important; }
body.la-theme .wc-block-checkout .wc-block-components-panel__button { font-size: 15px !important; font-weight: 500 !important; color: var(--la-text) !important; }
body.la-theme .wc-block-checkout .wc-block-components-totals-item__label { font-size: 15px; color: var(--la-text-mid); }
body.la-theme .wc-block-checkout .wc-block-components-totals-item__value { color: var(--la-text); font-variant-numeric: tabular-nums; }
body.la-theme .wc-block-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-size: 17px !important; font-weight: 600 !important; color: var(--la-text) !important; }
body.la-theme .wc-block-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 26px !important; font-weight: 700 !important; letter-spacing: -.02em; color: var(--la-text) !important;
}
body.la-theme .wc-block-checkout .wc-block-components-totals-coupon__input input { border-radius: 2px !important; }
body.la-theme .wc-block-checkout .wc-block-components-totals-coupon__button {
    border-radius: 2px !important; background: #16130F !important; color: #F5F0E8 !important; border: 1px solid #16130F !important; box-shadow: none !important;
}
/* the add-on offer sits above the form */
body.la-theme .la-checkout-head ~ .la-addon, body.la-theme .la-wc-scope > .la-addon { margin-bottom: 28px; }
@media (max-width: 700px) {
    body.la-theme .wc-block-checkout .wc-block-components-checkout-step__title { font-size: 21px !important; }
    body.la-theme .wc-block-checkout .wc-block-components-checkout-place-order-button { width: 100%; }
}

/* ═══════════════════════════════════════════════════
   v1.11.20 — MOBILE CART ICON + "ADDED TO CART" POP-UP
   ═══════════════════════════════════════════════════ */
/* cart icon beside the menu button on phones/tablets (desktop keeps the one in the link row) */
.la-nav-cart-m { display: none; }
@media (max-width: 900px) {
    .la-nav-cart-m {
        position: relative; display: flex; align-items: center; justify-content: center;
        width: 44px; height: 44px; margin-left: auto; margin-right: 4px;
        color: #F5F0E8 !important; text-decoration: none !important;
    }
    .la-navbar.scrolled .la-nav-cart-m,
    .la-navbar.la-nav-solid .la-nav-cart-m { color: var(--la-text) !important; }
    .la-nav-cart-m .la-cart-count {
        position: absolute !important; top: 3px; right: 1px; margin: 0 !important;
        min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px;
        background: #80623A; color: #fff; font-size: 10px; font-weight: 700; line-height: 18px; box-sizing: border-box;
    }
    .la-nav-cart-m:focus-visible { outline: 2px solid var(--la-accent); outline-offset: 2px; }
}

/* WooCommerce's inline "View cart" link under a card's button is replaced by the pop-up */
body.la-theme ul.products li.product a.added_to_cart,
body.la-theme .wc-block-grid__product a.added_to_cart { display: none !important; }
/* touch screens: no sticky gold "hover" left on the button after tapping it */
@media (hover: none) {
    body.la-theme .la-wc-scope ul.products li.product .button:hover { background: #F5F0E8 !important; border-color: #F5F0E8 !important; }
}

.la-toast {
    position: fixed; left: 50%; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 10050;
    display: flex; align-items: center; gap: 12px;
    width: min(460px, calc(100vw - 24px)); box-sizing: border-box; padding: 10px 10px 10px 12px;
    background: #16130F; color: #F5F0E8; border: 1px solid rgba(212, 185, 138, .28);
    box-shadow: 0 18px 44px rgba(12, 10, 8, .35);
    font-family: var(--la-font, Inter, -apple-system, 'Segoe UI', sans-serif);
    transform: translate(-50%, calc(100% + 40px)); opacity: 0; visibility: hidden;
    transition: transform .35s cubic-bezier(.2, .8, .2, 1), opacity .25s ease, visibility 0s linear .35s;
}
.la-toast.is-open { transform: translate(-50%, 0); opacity: 1; visibility: visible; transition-delay: 0s; }
.la-toast-img { flex: 0 0 44px; width: 44px; height: 44px; overflow: hidden; background: #ECEAE6; }
.la-toast-img img { width: 100%; height: 100%; object-fit: cover; display: block; margin: 0; }
.la-toast-msg { flex: 1 1 auto; min-width: 0; margin: 0 !important; font-size: 14px; font-weight: 500; line-height: 1.35; color: #F5F0E8 !important; }
.la-toast-btn {
    flex: none; display: inline-flex; align-items: center; height: 40px; padding: 0 16px;
    background: #F5F0E8; color: #0C0A08 !important; border-radius: 2px; text-decoration: none !important;
    font-size: 14px; font-weight: 600; white-space: nowrap;
}
.la-toast-btn:hover { background: #E6D0A6; }
.la-toast-x {
    flex: none; width: 32px; height: 40px; padding: 0; background: none !important; border: 0 !important; box-shadow: none !important;
    color: rgba(245, 240, 232, .7) !important; font-size: 22px; line-height: 1; cursor: pointer;
}
.la-toast-x:hover { color: #F5F0E8 !important; }
.la-toast-btn:focus-visible, .la-toast-x:focus-visible { outline: 2px solid #D4B98A; outline-offset: 2px; }
@media (max-width: 360px) { .la-toast-img { display: none !important; } .la-toast-btn { padding: 0 12px; } }
@media (prefers-reduced-motion: reduce) { .la-toast { transition: opacity .2s ease, visibility 0s linear .2s; transform: translate(-50%, 0); } }

/* ═══════════════════════════════════════════════════
   v1.11.21 — FREE BACTERIOSTATIC WATER WITH 2+ VIALS
   ═══════════════════════════════════════════════════ */
/* top bar: the offer in gold; mid-width screens drop the COA line; phones alternate shipping / BAC */
body.la-theme .la-announcement .la-announcement-bac { color: #E6D0A6; }
@media (max-width: 1023px) {
    body.la-theme .la-announcement .la-announcement-i2, body.la-theme .la-announcement .la-announcement-2 { display: none; }
}
@media (max-width: 639px) {
    body.la-theme .la-announcement .la-announcement-1,
    body.la-theme .la-announcement .la-announcement-bac {
        position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-50%);
        text-align: center; animation: la-ann-swap 9s ease-in-out infinite;
    }
    body.la-theme .la-announcement .la-announcement-bac { animation-delay: -4.5s; }
}
@keyframes la-ann-swap { 0%, 42% { opacity: 1; } 50%, 92% { opacity: 0; } 100% { opacity: 1; } }
@media (max-width: 639px) and (prefers-reduced-motion: reduce) {
    body.la-theme .la-announcement .la-announcement-1 { animation: none; opacity: 0; }
    body.la-theme .la-announcement .la-announcement-bac { animation: none; opacity: 1; }
}

/* progress / unlocked line above the cart and checkout */
body.la-theme .la-freebac {
    display: flex; align-items: center; gap: 12px; max-width: 1260px; box-sizing: border-box; margin: 0 auto 28px; padding: 14px 18px;
    background: #16130F; color: #F5F0E8; border: 1px solid rgba(212, 185, 138, .28);
}
body.la-theme .la-freebac p { margin: 0 !important; font-size: 15px; line-height: 1.45; color: #F5F0E8 !important; }
body.la-theme .la-freebac strong { color: #E6D0A6; font-weight: 600; }
body.la-theme .la-freebac-ic { flex: none; display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid rgba(212, 185, 138, .45); color: #D4B98A; }
body.la-theme .la-freebac.is-done .la-freebac-ic { background: #80623A; border-color: #80623A; color: #fff; }

/* add-on card when the vial is free */
body.la-theme .la-addon--free { border-color: #80623A !important; box-shadow: inset 3px 0 0 #80623A; }
body.la-theme .la-addon--free .la-addon-price strong { color: #80623A; text-transform: uppercase; letter-spacing: .04em; }

/* product page note */
body.la-theme .la-freebac-note {
    display: flex; align-items: center; gap: 10px; margin: 16px 0 0 !important; padding: 12px 14px;
    border: 1px solid rgba(128, 98, 58, .35); background: rgba(212, 185, 138, .10);
    font-size: 14px; font-weight: 500; line-height: 1.4; color: var(--la-text) !important;
}
body.la-theme .la-freebac-dot { flex: none; width: 7px; height: 7px; border-radius: 50%; background: #80623A; }
@media (max-width: 600px) { body.la-theme .la-freebac { padding: 12px 14px; margin-bottom: 20px; } body.la-theme .la-freebac p { font-size: 14px; } }
