/* ═══════════════════════════════════════════════
   SOTERI BRAND CSS v8.1 — Flatsome UX Builder Compatible
   Upload to: /wp-content/themes/flatsome-child/soteri-brand.css
   ═══════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Georgian:wght@300;400;500;600;700&display=swap');

:root {
    --soteri-gold: #b09470;
    --soteri-dark: #1a1a1a;
    --soteri-cream: #f8f6f3;
    --soteri-text: #4a4a4a;
    --soteri-text-light: #8a8a8a;
    --soteri-border: rgba(176, 148, 112, 0.15);
    --soteri-ease: cubic-bezier(0.25, 0, 0.15, 1);
}

/* ═══════════════════════════════════════════════
   GLOBAL FONT
   ═══════════════════════════════════════════════ */

body, p, h1, h2, h3, h4, h5, h6,
a, li, span, div, label, input, button, select, textarea,
th, td, blockquote, figcaption,
.woocommerce *, .shop-page-title, .category-title,
.product-title, .product-short-description,
.page-title, .entry-title, .entry-content,
.widget, .widget *, .sidebar *,
.flatsome-accordion *, .tabbed-content *,
.nav > li > a, .breadcrumbs *,
.cart-item *, .checkout *, .my-account * {
    font-family: soteri, Inter, -apple-system, sans-serif !important;
}

/* Georgian */
html[lang="ka-GE"] body, html[lang="ka-GE"] p,
html[lang="ka-GE"] h1, html[lang="ka-GE"] h2, html[lang="ka-GE"] h3,
html[lang="ka-GE"] h4, html[lang="ka-GE"] a, html[lang="ka-GE"] li,
html[lang="ka-GE"] span, html[lang="ka-GE"] div,
html[lang="ka-GE"] label, html[lang="ka-GE"] input,
html[lang="ka-GE"] button, html[lang="ka-GE"] select,
html[lang="ka-GE"] .woocommerce *, html[lang="ka-GE"] .nav > li > a,
html[lang="ka-GE"] .product-title, html[lang="ka-GE"] .product_title {
    font-family: "Noto Sans Georgian", Inter, -apple-system, sans-serif !important;
}
html[lang="ka-GE"] .product-short-description p,
html[lang="ka-GE"] .entry-content p { font-weight: 400 !important; }
html[lang="ka-GE"] .product_title,
html[lang="ka-GE"] .page-title { font-weight: 400 !important; }

/* ═══════════════════════════════════════════════
   HOMEPAGE — Header Transparency + Full-width
   ═══════════════════════════════════════════════ */

/* Force transparent header on homepage */
.home .header-wrapper,
.page-id-2 .header-wrapper {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 100 !important;
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Header bg transparent on homepage — hide fill backgrounds */
.home .header-wrapper .header-bg-container,
.page-id-2 .header-wrapper .header-bg-container,
.home .header-main,
.page-id-2 .header-main,
.home .header-top,
.page-id-2 .header-top,
.home .header-bottom,
.page-id-2 .header-bottom {
    background: transparent !important;
    border-bottom: none !important;
    box-shadow: none !important;
}
/* Hide ONLY header .fill backgrounds on homepage (not banners!) */
.home .header-wrapper .fill,
.page-id-2 .header-wrapper .fill,
.home .header-bg-container .fill,
.page-id-2 .header-bg-container .fill {
    display: none !important;
}

/* Nav links white on homepage */
.home .header-wrapper .nav > li > a,
.page-id-2 .header-wrapper .nav > li > a,
.home .header-wrapper .header-button,
.page-id-2 .header-wrapper .header-button,
.home .header-wrapper .cart-icon,
.page-id-2 .header-wrapper .cart-icon {
    color: #fff !important;
}
.home .header-wrapper .nav > li > a:hover,
.page-id-2 .header-wrapper .nav > li > a:hover {
    color: var(--soteri-gold) !important;
}

/* Logo — if text, make white */
.home .header-wrapper .logo a,
.page-id-2 .header-wrapper .logo a {
    color: #fff !important;
}
/* Logo image — make it white via filter on homepage */
.home .header-wrapper .logo img,
.page-id-2 .header-wrapper .logo img {
    filter: brightness(0) invert(1) !important;
}

/* Currency & language switcher transparent on homepage */
.home .header-wrapper .yay-currency-switcher,
.home .header-wrapper .yay-currency-select,
.home .header-wrapper .yay-currency-custom-select__trigger,
.home .header-wrapper .trp-ls-shortcode-current-language,
.home .header-wrapper .trp-language-switcher,
.home .header-wrapper .trp-language-switcher a,
.page-id-2 .header-wrapper .yay-currency-switcher,
.page-id-2 .header-wrapper .yay-currency-select,
.page-id-2 .header-wrapper .yay-currency-custom-select__trigger,
.page-id-2 .header-wrapper .trp-ls-shortcode-current-language,
.page-id-2 .header-wrapper .trp-language-switcher,
.page-id-2 .header-wrapper .trp-language-switcher a {
    color: rgba(255,255,255,0.7) !important;
    background: transparent !important;
    border-color: rgba(255,255,255,0.2) !important;
}
.home .header-wrapper .yay-currency-custom-select__trigger svg,
.home .header-wrapper .yay-currency-custom-select__trigger path,
.page-id-2 .header-wrapper .yay-currency-custom-select__trigger svg,
.page-id-2 .header-wrapper .yay-currency-custom-select__trigger path {
    fill: rgba(255,255,255,0.7) !important;
    stroke: rgba(255,255,255,0.7) !important;
}
.home .header-wrapper .trp-language-switcher img,
.page-id-2 .header-wrapper .trp-language-switcher img {
    filter: brightness(2) !important;
}

/* Sticky header — dark bg when scrolled */
.home .header-wrapper.stuck,
.page-id-2 .header-wrapper.stuck {
    position: fixed !important;
    background: rgba(26, 26, 26, 0.97) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    box-shadow: 0 2px 20px rgba(0,0,0,0.1) !important;
}

/* When stuck, keep white nav */
.home .header-wrapper.stuck .nav > li > a,
.page-id-2 .header-wrapper.stuck .nav > li > a,
.home .header-wrapper.stuck .header-button,
.page-id-2 .header-wrapper.stuck .header-button,
.home .header-wrapper.stuck .cart-icon,
.page-id-2 .header-wrapper.stuck .cart-icon {
    color: #fff !important;
}

/* Offset page content to sit behind transparent header */
.home .page-wrapper .page,
.page-id-2 .page-wrapper .page,
.home #content,
.page-id-2 #content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Homepage — Full-width page layout
   Real DOM (verified via curl):
   #content > .row.row-main > .large-12.col > .col-inner > [sections/sliders/banners]
   NO .container. NO .entry-content. Content is directly inside .col-inner. */

/* 1. Row-main — remove Flatsome's max-width constraint */
.home #content > .row-main,
.page-id-2 #content > .row-main {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* 2. Column and col-inner — full width, no padding */
.home #content > .row-main > .col,
.page-id-2 #content > .row-main > .col {
    max-width: 100% !important;
    flex-basis: 100% !important;
    padding: 0 !important;
    width: 100% !important;
}
.home #content > .row-main > .col > .col-inner,
.page-id-2 #content > .row-main > .col > .col-inner {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
}

/* 3. Boxed sections — center .section-content (max-width + margin auto) */
.home #content .section:not(.soteri-full):not(.soteri-marquee) > .section-content,
.page-id-2 #content .section:not(.soteri-full):not(.soteri-marquee) > .section-content {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* Flatsome .row has max-width:1080px but NO margin:auto.
   Rows must be centered inside the section-content. */
.home #content .section > .section-content > .row,
.page-id-2 #content .section > .section-content > .row {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 4. Full-width sections (editorial, B2B with row-full-width) */
.home #content .section.soteri-full > .section-content,
.page-id-2 #content .section.soteri-full > .section-content {
    max-width: 100% !important;
}
/* Ensure full-width rows span edge to edge */
.home #content .row-full-width,
.page-id-2 #content .row-full-width {
    max-width: 100% !important;
    width: 100% !important;
}
/* Also center the product grid row (nested deeper) */
.home #content .section .row .row,
.page-id-2 #content .section .row .row {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 5. Prevent horizontal scrollbar (scrollbar gutter) */
.home,
.page-id-2 {
    overflow-x: hidden !important;
}

/* ── Section transitions — subtle breathing between sections ── */
.home #content .section {
    position: relative;
}
/* Soft fade gradient on dark-to-light transitions */
.home #content .section.soteri-fade-top::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 80px;
    background: linear-gradient(to bottom, rgba(255,255,255,0.06), transparent);
    pointer-events: none;
    z-index: 1;
}
/* Elegant gold hairline separator */
.home #content .section.soteri-sep::after {
    content: '';
    position: absolute;
    bottom: 0; left: 50%;
    transform: translateX(-50%);
    width: 60px; height: 1px;
    background: var(--soteri-gold);
    opacity: 0.3;
}

/* ── Hero Slider (Flatsome ux_slider) ── */
.soteri-hero {
    min-height: 650px;
}
/* Ken Burns zoom on slide backgrounds */
.soteri-hero .banner .bg {
    transform: scale(1.08) !important;
    transition: transform 10s linear !important;
}
.soteri-hero .is-selected .bg {
    transform: scale(1) !important;
}
/* Custom dot navigation */
.soteri-hero .flickity-page-dots {
    bottom: 40px !important;
}
.soteri-hero .flickity-page-dots .dot {
    width: 6px !important;
    height: 6px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.2) !important;
    opacity: 1 !important;
    transition: all .5s ease !important;
    margin: 0 5px !important;
    border: none !important;
    padding: 0 !important;
}
.soteri-hero .flickity-page-dots .dot.is-selected {
    background: rgba(255,255,255,.7) !important;
    width: 24px !important;
    border-radius: 3px !important;
}
/* Hero text elements */
.soteri-hero-label {
    font-family: soteri, Inter, sans-serif;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 6px;
    text-transform: uppercase;
    color: rgba(255,255,255,.5);
    margin-bottom: 24px;
    display: block;
}
.soteri-hero-h1,
.soteri-hero h1 {
    font-family: soteri, serif !important;
    font-weight: 300 !important;
    font-size: 56px !important;
    letter-spacing: 5px !important;
    text-transform: uppercase !important;
    color: #fff !important;
    line-height: 1.1 !important;
    margin-bottom: 24px !important;
}
.soteri-hero-sub {
    font-family: soteri, Inter, sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.9;
    color: rgba(255,255,255,.55);
    max-width: 400px;
    margin: 0 auto 40px;
    letter-spacing: .5px;
}

/* ── Soteri CTA Links ── */
.soteri-cta {
    display: inline-block !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    color: #1a1a1a !important;
    background: transparent !important;
    padding: 0 0 6px 0 !important;
    border: none !important;
    border-bottom: 1px solid var(--soteri-gold) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: all .4s ease !important;
    line-height: 1.4 !important;
}
.soteri-cta:hover {
    color: #b09470 !important;
    letter-spacing: 4px !important;
    background: transparent !important;
}
a.soteri-cta.white,
.soteri-cta.white {
    color: rgba(255,255,255,.9) !important;
    background: transparent !important;
    border-bottom-color: rgba(176,148,112,.5) !important;
}
a.soteri-cta.white:hover,
.soteri-cta.white:hover {
    color: #b09470 !important;
    background: transparent !important;
    border-bottom-color: #b09470 !important;
}

/* ── Soteri Labels & Titles ── */
.soteri-label {
    font-family: soteri, Inter, sans-serif;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 5px;
    text-transform: uppercase;
    color: #b09470;
    display: block;
    margin-bottom: 20px;
    opacity: .9;
}
.soteri-title {
    font-family: soteri, serif;
    font-weight: 300;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #1a1a1a;
    line-height: 1.1;
}
.soteri-title.lg { font-size: 42px; letter-spacing: 3px; }
.soteri-title.md { font-size: 30px; }
.soteri-body {
    font-family: soteri, Inter, sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.9;
    color: #4a4a4a;
    letter-spacing: .3px;
}
.soteri-divider {
    width: 50px;
    height: 1px;
    background: #b09470;
    margin: 30px auto;
    opacity: .4;
}

/* ── Intro & Products (layout handled by Flatsome [section]) ── */

/* ── Marquee ── */
.soteri-marquee {
    overflow: hidden;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100%;
}
/* Force vertical centering — override Flatsome section padding */
.section.soteri-marquee,
.section.soteri-marquee > .section-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.soteri-marquee-track { margin-top: 25px; display: inline-block; animation: smq 20s linear infinite; }
.soteri-marquee-track span {
    display: inline-block;
    font-family: soteri, serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: #b09470;
    padding: 0 30px;
}
.soteri-marquee-track span::after { content: '\2022'; margin-left: 30px; color: #b09470; opacity: .6; }
@keyframes smq { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

/* ── Process Steps (Flatsome row/col) ── */
.soteri-process-grid {
    max-width: 960px;
    margin: 0 auto;
}
.soteri-process-grid .col {
    border-right: 1px solid var(--soteri-border);
}
.soteri-process-grid .col:last-child {
    border-right: none;
}
.soteri-step { text-align: center; padding: 50px 35px; background: #fff; transition: background .4s ease; }
.soteri-step:hover { background: #f8f6f3; }
.soteri-step-num {
    font-family: soteri, serif;
    font-size: 40px;
    font-weight: 300;
    color: #b09470;
    margin-bottom: 24px;
    opacity: .7;
    line-height: 1;
}
.soteri-step h4 {
    font-family: soteri, Inter, sans-serif;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #1a1a1a;
    margin-bottom: 16px;
}
.soteri-step p { font-size: 13px; font-weight: 300; line-height: 1.85; color: #8a8a8a; }

/* ── Editorial / Our Craft Section (Flatsome row/col) ── */
/* Image hover zoom is handled by Flatsome banner hover="zoom" */

/* ── Banner Section (Flatsome ux_banner) ── */
.soteri-banner-h2 {
    font-family: soteri, serif !important;
    font-weight: 300 !important;
    font-size: 44px !important;
    letter-spacing: 6px !important;
    text-transform: uppercase !important;
    color: #fff !important;
    margin-bottom: 10px !important;
    line-height: 1.1 !important;
}
.soteri-banner-date {
    font-size: 10px !important;
    letter-spacing: 4px !important;
    color: var(--soteri-gold) !important;
    font-weight: 400 !important;
    margin-bottom: 24px !important;
}
.soteri-banner-desc {
    font-size: 13px !important;
    font-weight: 300 !important;
    line-height: 1.9 !important;
    color: rgba(255,255,255,.6) !important;
    margin-bottom: 35px !important;
}

/* ── Men Section ── */
.soteri-men {
    position: relative;
    overflow: hidden;
}
.soteri-men::before {
    content: 'M';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    font-family: soteri, serif;
    font-size: 300px;
    font-weight: 300;
    color: rgba(255,255,255,.02);
    pointer-events: none;
}
.soteri-men .soteri-title { color: #fff; margin-bottom: 18px; }
.soteri-men p { font-size: 13px; font-weight: 300; line-height: 1.9; color: rgba(255,255,255,.4); max-width: 420px; margin: 0 auto 40px; }

/* ── B2B Section (Flatsome row/col) ── */
/* Image hover zoom is handled by Flatsome banner hover="zoom" */

/* ── Values Section (Flatsome row/col with border) ── */
.soteri-val {
    text-align: left;
    padding: 40px 30px;
    border: 1px solid rgba(176,148,112,.15);
    transition: all .4s ease;
    position: relative;
    overflow: hidden;
}
.soteri-val::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 2px;
    background: #b09470;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .5s ease;
}
.soteri-val:hover::before { transform: scaleX(1); }
.soteri-val:hover { border-color: rgba(176,148,112,.3); }
.soteri-val .val-num {
    font-family: soteri, serif;
    font-size: 32px;
    font-weight: 300;
    color: #b09470;
    opacity: .5;
    margin-bottom: 20px;
    line-height: 1;
}
.soteri-val h4 {
    font-family: soteri, Inter, sans-serif;
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #1a1a1a;
    margin-bottom: 14px;
}
.soteri-val p { font-size: 13px; font-weight: 300; line-height: 1.85; color: #8a8a8a; }

/* ── Footer Strip (layout handled by Flatsome [section]) ── */

/* ── Homepage Mobile ── */
@media (max-width: 768px) {
    .soteri-hero-h1,
    .soteri-hero h1 { font-size: 36px !important; letter-spacing: 3px !important; }
    .soteri-men::before { font-size: 180px; }
    .soteri-title.lg { font-size: 30px; }
    .soteri-title.md { font-size: 24px; }
    .soteri-banner-h2 { font-size: 30px !important; letter-spacing: 4px !important; }
    .soteri-process-grid .col { border-right: none !important; border-bottom: 1px solid var(--soteri-border); }
    .soteri-process-grid .col:last-child { border-bottom: none !important; }
}

/* ═══════════════════════════════════════════════
   TOP BAR
   ═══════════════════════════════════════════════ */

.header-top { background: var(--soteri-dark) !important; border-bottom: none !important; }
.header-top, .header-top a, .header-top span, .header-top .nav > li > a {
    font-size: 11px !important; letter-spacing: 1.5px !important;
    font-weight: 400 !important; color: rgba(255,255,255,0.5) !important;
}
.header-top a:hover { color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   HEADER NAV (non-homepage)
   ═══════════════════════════════════════════════ */

.header-nav .nav > li > a, .header-main .nav > li > a {
    font-size: 11px !important; letter-spacing: 2.5px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
}
.header-nav .nav > li > a:hover, .header-main .nav > li > a:hover {
    color: var(--soteri-gold) !important;
}

/* ═══════════════════════════════════════════════
   BREADCRUMBS
   ═══════════════════════════════════════════════ */

.breadcrumbs, .woocommerce-breadcrumb { background: transparent !important; padding: 20px 0 !important; }
.breadcrumbs a, .breadcrumbs span, .woocommerce-breadcrumb a,
.woocommerce-breadcrumb span, .breadcrumbs .divider {
    font-size: 11px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
    color: var(--soteri-text-light) !important;
}
.breadcrumbs a:hover { color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   SHOP PAGES
   ═══════════════════════════════════════════════ */

.shop-page-title, .category-page-title, .term-title,
.archive .page-title, .woocommerce-products-header h1 {
    font-weight: 300 !important; letter-spacing: 4px !important;
    text-transform: uppercase !important; font-size: 36px !important;
    color: var(--soteri-dark) !important;
}
.woocommerce-result-count, .woocommerce-ordering select {
    font-size: 11px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
    color: var(--soteri-text-light) !important;
}
.product-small .box-image { background: var(--soteri-cream) !important; overflow: hidden !important; }
.product-small .box-image img { transition: transform 1s var(--soteri-ease) !important; }
.product-small:hover .box-image img { transform: scale(1.06) !important; }
.product-small .product-title, .product-small .product-title a {
    font-size: 12px !important; font-weight: 400 !important;
    letter-spacing: 1px !important; text-transform: uppercase !important;
    color: var(--soteri-dark) !important; line-height: 1.5 !important;
}
.product-small:hover .product-title a { color: var(--soteri-gold) !important; }
.product-small .price, .product-small .price .amount {
    font-size: 12px !important; font-weight: 300 !important;
    color: var(--soteri-text-light) !important;
}
.product-small .product-cat a {
    font-size: 10px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; color: var(--soteri-gold) !important;
}

/* Pagination */
.page-numbers, .nav-pagination a, .nav-pagination span {
    font-size: 12px !important; letter-spacing: 2px !important;
    font-weight: 400 !important; color: var(--soteri-text-light) !important;
    border: 1px solid var(--soteri-border) !important;
}
.page-numbers.current, .nav-pagination .current {
    background: var(--soteri-dark) !important; color: #fff !important;
    border-color: var(--soteri-dark) !important;
}
.page-numbers:hover { border-color: var(--soteri-gold) !important; color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   SINGLE PRODUCT — Soteri Luxury Layout
   ═══════════════════════════════════════════════ */

/* --- Layout: full-width shop container, widen product row --- */
.single-product .shop-container {
    max-width: 100% !important;
    padding: 0 !important;
}
.single-product .product-container {
    max-width: 100% !important;
}
.single-product .product-main {
    max-width: 100% !important;
}
/* THE KEY FIX: override Flatsome .row max-width:1080px on the product row */
.single-product .product-main > .row.content-row {
    max-width: 1340px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 50px 40px 70px !important;
}

/* --- Hide next/prev product navigation (clutters the layout) --- */
.single-product .next-prev-thumbs {
    display: none !important;
}

/* --- Gallery — generous space, cream bg --- */
.single-product .product-gallery {
    padding-right: 60px !important;
}
.single-product .product-gallery .slide img,
.single-product .woocommerce-product-gallery img {
    background: var(--soteri-cream) !important;
}
/* Zoom button */
.single-product .product-gallery .zoom-button {
    border-color: var(--soteri-border) !important;
    color: var(--soteri-text-light) !important;
}
.single-product .product-gallery .zoom-button:hover {
    border-color: var(--soteri-gold) !important;
    color: var(--soteri-gold) !important;
}
/* Gallery thumbnails */
.single-product .product-thumbnails .col img {
    border: 1px solid transparent !important;
    background: var(--soteri-cream) !important;
    transition: all 0.3s ease !important;
}
.single-product .product-thumbnails .col.is-nav-selected img,
.single-product .product-thumbnails .col:hover img {
    border-color: var(--soteri-gold) !important;
}

/* --- Product info area --- */
.single-product .product-info {
    padding-left: 40px !important;
}
/* Divider under title */
.single-product .product-info .is-divider {
    background-color: var(--soteri-gold) !important;
    opacity: 0.3 !important;
    max-width: 50px !important;
    margin: 20px 0 25px !important;
}

/* --- Breadcrumbs --- */
.single-product .breadcrumbs {
    padding: 0 0 15px !important;
    border-bottom: none !important;
    margin-bottom: 5px !important;
}
.single-product .breadcrumbs a,
.single-product .breadcrumbs span,
.single-product .breadcrumbs .divider {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 10px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: var(--soteri-text-light) !important;
    font-weight: 400 !important;
}
.single-product .breadcrumbs a:hover {
    color: var(--soteri-gold) !important;
}

/* --- Title --- */
.product-info .product_title, .product_title {
    font-family: soteri, serif !important;
    font-weight: 300 !important; letter-spacing: 4px !important;
    text-transform: uppercase !important; font-size: 30px !important;
    color: var(--soteri-dark) !important; line-height: 1.2 !important;
}

/* --- Price + Currency switcher inline (siblings in .summary) --- */
.single-product .summary .price-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    margin: 5px 15px 20px 0 !important;
    vertical-align: middle !important;
}
.single-product .summary .yay-currency-single-page-switcher {
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
    margin-top: -15px !important;
}
.product-info .price .amount, .summary .price .amount {
    font-family: soteri, serif !important;
    font-size: 22px !important; font-weight: 300 !important;
    color: var(--soteri-dark) !important; letter-spacing: 1px !important;
}

/* --- Currency switcher styling --- */
.single-product .yay-currency-switcher,
.single-product .yay-currency-select,
.single-product .yay-currency-custom-select-wrapper {
    border: 1px solid var(--soteri-border) !important;
    border-radius: 0 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 1px !important;
    color: var(--soteri-text-light) !important;
}

/* --- Description --- */
.product-short-description {
    margin: 25px 0 !important;
    padding-bottom: 25px !important;
    border-bottom: 1px solid var(--soteri-border) !important;
}
.product-short-description p {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 14px !important; font-weight: 300 !important;
    line-height: 1.9 !important; color: var(--soteri-text) !important;
}
.product-short-description ul li {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 13px !important; font-weight: 300 !important;
    line-height: 1.8 !important; color: var(--soteri-text) !important;
}

/* --- Size swatches (WooCommerce Variation Swatches) --- */
.single-product .variations {
    margin: 20px 0 !important;
}
.single-product .variable-items-wrapper {
    gap: 5px !important;
    display: flex !important;
    flex-wrap: wrap !important;
}
.single-product .variable-item,
.single-product .wvs-style-squared .variable-item,
.single-product .wvs-style-rounded .variable-item {
    border-radius: 0 !important;
    border: 1px solid var(--soteri-border) !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 10px !important;
    letter-spacing: 1.5px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    min-width: 52px !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    color: var(--soteri-dark) !important;
    background: #fff !important;
    transition: all 0.3s var(--soteri-ease) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
}
.single-product .variable-item:hover,
.single-product .wvs-style-squared .variable-item:hover {
    border-color: var(--soteri-dark) !important;
}
.single-product .variable-item.selected,
.single-product .variable-item[aria-checked="true"],
.single-product .wvs-style-squared .variable-item.selected {
    border-color: var(--soteri-dark) !important;
    background: var(--soteri-dark) !important;
    color: #fff !important;
}
/* Size label */
.single-product .variations .label label,
.single-product .woo-variation-swatches .variations .label label {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 10px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    color: var(--soteri-dark) !important;
    margin-bottom: 15px !important;
    display: block !important;
}

/* --- Quantity + Add to Cart + Buy Now + Size Guide — uniform row --- */
.single-product .cart {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin-top: 25px !important;
}
.single-product .quantity {
    border: 1px solid var(--soteri-border) !important;
    display: inline-flex !important;
    align-items: center !important;
    background: #fff !important;
    height: 48px !important;
}
.single-product .quantity input[type="number"],
.single-product .quantity .qty {
    border: none !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 14px !important;
    font-weight: 300 !important;
    color: var(--soteri-dark) !important;
    text-align: center !important;
    width: 50px !important;
    height: 100% !important;
    background: transparent !important;
    -moz-appearance: textfield !important;
}
.single-product .quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
}
.single-product .quantity .minus,
.single-product .quantity .plus {
    border: none !important;
    background: transparent !important;
    font-size: 18px !important;
    color: var(--soteri-text-light) !important;
    padding: 0 14px !important;
    height: 100% !important;
    transition: color 0.3s ease !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
}
.single-product .quantity .minus:hover,
.single-product .quantity .plus:hover {
    color: var(--soteri-dark) !important;
}

/* --- Product meta (SKU, categories) --- */
.single-product .product_meta {
    margin-top: 30px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--soteri-border) !important;
}
.single-product .product_meta > span {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    color: var(--soteri-text-light) !important;
}
.single-product .product_meta a {
    color: var(--soteri-text) !important;
}
.single-product .product_meta a:hover {
    color: var(--soteri-gold) !important;
}

/* --- Share buttons --- */
.single-product .social-icons a {
    border: 1px solid var(--soteri-border) !important;
    color: var(--soteri-text-light) !important;
    transition: all 0.3s ease !important;
}
.single-product .social-icons a:hover {
    border-color: var(--soteri-gold) !important;
    color: var(--soteri-gold) !important;
}

/* --- Footer separator --- */
.single-product .product-footer {
    margin-top: 0 !important;
    border-top: none !important;
}

/* Add to cart — 48px uniform height */
.single_add_to_cart_button, button.single_add_to_cart_button {
    background: var(--soteri-dark) !important; color: #fff !important;
    border: none !important; border-radius: 0 !important;
    font-size: 11px !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
    height: 48px !important; line-height: 48px !important;
    padding: 0 30px !important; transition: all 0.4s var(--soteri-ease) !important;
    display: inline-flex !important; align-items: center !important;
    justify-content: center !important; white-space: nowrap !important;
}
.single_add_to_cart_button:hover {
    background: var(--soteri-gold) !important; letter-spacing: 4px !important;
}

/* Buy now — 48px uniform height */
.ux-buy-now-button,
button.ux-buy-now-button,
.buy-now-btn,
button[name="buy-now"] {
    background: transparent !important; color: var(--soteri-dark) !important;
    border: 1px solid var(--soteri-dark) !important; border-radius: 0 !important;
    font-size: 11px !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
    font-family: soteri, Inter, sans-serif !important;
    height: 48px !important; line-height: 48px !important;
    padding: 0 30px !important;
    display: inline-flex !important; align-items: center !important;
    justify-content: center !important; white-space: nowrap !important;
}
.ux-buy-now-button:hover,
.buy-now-btn:hover,
button[name="buy-now"]:hover {
    background: var(--soteri-dark) !important; color: #fff !important;
}

/* Quantity */
.quantity input[type="number"], .quantity .qty {
    border: 1px solid var(--soteri-border) !important; border-radius: 0 !important;
}
.quantity .minus, .quantity .plus {
    border: 1px solid var(--soteri-border) !important; background: transparent !important;
}
.quantity .minus:hover, .quantity .plus:hover {
    background: var(--soteri-cream) !important; border-color: var(--soteri-gold) !important;
}

/* Tabs / Accordion — elegant separators */
.woocommerce-tabs .tabs li a, .flatsome-accordion .accordion-title, .toggle .toggle-title {
    font-size: 11px !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; font-weight: 500 !important;
    color: var(--soteri-dark) !important;
    padding: 18px 0 !important;
}
.flatsome-accordion .accordion-title:hover { color: var(--soteri-gold) !important; }
.flatsome-accordion .accordion-inner, .flatsome-accordion .accordion-inner p, .toggle .inner p {
    font-size: 13px !important; font-weight: 300 !important;
    line-height: 1.9 !important; color: var(--soteri-text) !important;
}
/* Accordion icon refinement */
.single-product .flatsome-accordion .accordion-title .toggle-icon {
    color: var(--soteri-gold) !important;
}
/* Accordion borders */
.single-product .flatsome-accordion .accordion-item,
.single-product .toggle {
    border-color: var(--soteri-border) !important;
}

/* ═══════════════════════════════════════════════
   RELATED PRODUCTS
   ═══════════════════════════════════════════════ */

/* Related products — full-width cream background section */
.single-product .product-footer {
    background: var(--soteri-cream) !important;
    padding: 80px 40px 70px !important;
}
.single-product .product-footer > .container {
    max-width: 1340px !important;
    margin: 0 auto !important;
}
.single-product .product-footer .row {
    max-width: 1340px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.related-products-wrapper, .related.products {
    padding-top: 0 !important;
    border-top: none !important;
    margin-top: 0 !important;
}
.related-products-wrapper h2, .related.products h2, h2.product-section-title,
h3.product-section-title {
    font-family: soteri, serif !important;
    font-weight: 300 !important; letter-spacing: 6px !important;
    text-transform: uppercase !important; font-size: 22px !important;
    color: var(--soteri-dark) !important; text-align: center !important;
    margin-bottom: 50px !important;
}
/* Related product cards — match brand */
.related .product-small .box-image {
    background: #fff !important;
}
.related .product-small .add_to_cart_button {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 10px !important; background: var(--soteri-dark) !important;
    color: #fff !important; border-radius: 0 !important;
    letter-spacing: 2px !important;
}
.related .product-small .add_to_cart_button:hover { background: var(--soteri-gold) !important; }
/* Related products slider — custom arrows (Flickity broken by LiteSpeed JS opt) */
.single-product .product-footer .row-slider {
    position: relative !important;
}
.single-product .product-footer .soteri-slider-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    height: 44px !important;
    background: #fff !important;
    border: 1px solid var(--soteri-border) !important;
    color: var(--soteri-dark) !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    transition: all 0.3s ease !important;
    padding: 0 !important;
    line-height: 1 !important;
}
.single-product .product-footer .soteri-slider-arrow:hover {
    border-color: var(--soteri-gold) !important;
    color: var(--soteri-gold) !important;
}
.single-product .product-footer .soteri-arrow-prev { left: -22px !important; }
.single-product .product-footer .soteri-arrow-next { right: -22px !important; }
/* Hide Flickity native arrows in related (we use custom soteri-slider-arrow) */
.single-product .product-footer .flickity-prev-next-button,
.single-product .soteri-slider-wrap .flickity-prev-next-button {
    display: none !important;
}

/* ═══════════════════════════════════════════════
   REVIEWS
   ═══════════════════════════════════════════════ */

.woocommerce-Reviews, #reviews {
    padding: 50px 0 !important; border-top: 1px solid var(--soteri-border) !important;
    margin-top: 30px !important;
}
.woocommerce-Reviews h2, #reviews h2, #reply-title {
    font-weight: 300 !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; font-size: 18px !important;
    color: var(--soteri-dark) !important;
}
#reviews .comment-form label, .comment-form label {
    font-size: 11px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
}
#reviews .comment-form input, #reviews .comment-form textarea,
.comment-form input[type="text"], .comment-form textarea {
    border: 1px solid var(--soteri-border) !important; border-radius: 0 !important;
    font-size: 13px !important; font-weight: 300 !important; padding: 14px 18px !important;
}
#reviews .comment-form input:focus, #reviews .comment-form textarea:focus {
    border-color: var(--soteri-gold) !important; outline: none !important; box-shadow: none !important;
}
#reviews .comment-form .submit, .comment-form .submit {
    background: var(--soteri-dark) !important; color: #fff !important;
    border: none !important; border-radius: 0 !important;
    font-size: 11px !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; padding: 16px 35px !important;
}
#reviews .comment-form .submit:hover { background: var(--soteri-gold) !important; }
.star-rating, .star-rating span, .comment-form-rating .stars a { color: var(--soteri-gold) !important; }
.woocommerce-Reviews .comment_container {
    border-bottom: 1px solid var(--soteri-border) !important; padding: 25px 0 !important;
}
.woocommerce-review__author {
    font-size: 12px !important; letter-spacing: 1px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
}
.woocommerce-noreviews {
    font-size: 13px !important; color: var(--soteri-text-light) !important; font-weight: 300 !important;
}

/* Gallery */
.product-gallery .slide img, .woocommerce-product-gallery img { background: var(--soteri-cream) !important; }
.product-thumbnails .col img { border: 1px solid transparent !important; }
.product-thumbnails .col.is-nav-selected img,
.product-thumbnails .col:hover img { border-color: var(--soteri-gold) !important; }

/* Size guide trigger — 48px uniform height */
.ssg-size-guide-trigger {
    font-size: 11px !important; font-weight: 400 !important;
    letter-spacing: 2px !important; text-transform: uppercase !important;
    border-radius: 0 !important; border: 1px solid rgba(176,148,112,0.3) !important;
    color: var(--soteri-dark) !important;
    height: 48px !important; line-height: 48px !important;
    padding: 0 20px !important;
    display: inline-flex !important; align-items: center !important;
    justify-content: center !important; white-space: nowrap !important;
}
.ssg-size-guide-trigger:hover { background: var(--soteri-dark) !important; color: #fff !important; }

/* ═══════════════════════════════════════════════
   CART
   ═══════════════════════════════════════════════ */

.woocommerce-cart .cart-item-name a, .cart_item .product-name a {
    font-size: 13px !important; font-weight: 400 !important;
    letter-spacing: 1px !important; text-transform: uppercase !important;
    color: var(--soteri-dark) !important;
}
.woocommerce-cart .cart-item-name a:hover { color: var(--soteri-gold) !important; }
.cart-totals th, .cart-totals td {
    font-size: 12px !important; letter-spacing: 1.5px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
}
.wc-proceed-to-checkout .checkout-button {
    background: var(--soteri-dark) !important; color: #fff !important;
    border-radius: 0 !important; font-size: 11px !important;
    letter-spacing: 3px !important; text-transform: uppercase !important;
    padding: 16px 35px !important;
}
.wc-proceed-to-checkout .checkout-button:hover { background: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   CHECKOUT
   ═══════════════════════════════════════════════ */

.woocommerce-checkout h3 {
    font-weight: 300 !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; font-size: 18px !important;
}
.woocommerce-checkout label {
    font-size: 11px !important; letter-spacing: 1.5px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
}
.woocommerce-checkout input, .woocommerce-checkout select, .woocommerce-checkout textarea {
    border: 1px solid var(--soteri-border) !important; border-radius: 0 !important;
    font-size: 13px !important; font-weight: 300 !important; padding: 12px 15px !important;
}
.woocommerce-checkout input:focus, .woocommerce-checkout select:focus {
    border-color: var(--soteri-gold) !important; outline: none !important; box-shadow: none !important;
}
#place_order {
    background: var(--soteri-dark) !important; color: #fff !important;
    border-radius: 0 !important; font-size: 12px !important;
    letter-spacing: 3px !important; text-transform: uppercase !important;
    padding: 18px 40px !important; width: 100% !important;
}
#place_order:hover { background: var(--soteri-gold) !important; }

/* Payment */
#payment { background: transparent !important; border: 1px solid var(--soteri-border) !important; border-radius: 0 !important; }
#payment .payment_methods li label { font-size: 13px !important; font-weight: 400 !important; color: var(--soteri-dark) !important; }
#payment .payment_box { background: var(--soteri-cream) !important; color: var(--soteri-text) !important; border-radius: 0 !important; }
#payment .payment_box::before { border-bottom-color: var(--soteri-cream) !important; }
#payment .payment_methods li { border-bottom: 1px solid var(--soteri-border) !important; }

/* ═══════════════════════════════════════════════
   MY ACCOUNT
   ═══════════════════════════════════════════════ */

.woocommerce-MyAccount-navigation ul li a {
    font-size: 12px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
    color: var(--soteri-text) !important; padding: 12px 0 !important;
    border-bottom: 1px solid var(--soteri-border) !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover { color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   GLOBAL BUTTONS
   ═══════════════════════════════════════════════ */

.button, button, input[type="submit"], .woocommerce .button {
    border-radius: 0 !important; font-size: 11px !important;
    letter-spacing: 2px !important; text-transform: uppercase !important;
    font-weight: 400 !important;
}
.button.is-outline { border-width: 1px !important; padding: 12px 28px !important; }
.button.primary, .button.alt, .woocommerce .button.alt {
    background: var(--soteri-dark) !important; color: #fff !important;
}
.button.primary:hover, .button.alt:hover, .woocommerce .button.alt:hover {
    background: var(--soteri-gold) !important;
}

/* ═══════════════════════════════════════════════
   FORM INPUTS
   ═══════════════════════════════════════════════ */

input[type="text"], input[type="email"], input[type="password"],
input[type="tel"], input[type="number"], select, textarea {
    border: 1px solid var(--soteri-border) !important; border-radius: 0 !important;
    font-size: 13px !important; font-weight: 300 !important;
}
input:focus, select:focus, textarea:focus {
    border-color: var(--soteri-gold) !important; outline: none !important; box-shadow: none !important;
}

/* ═══════════════════════════════════════════════
   FOOTER — ოქროსფერი სათაურები + წაკითხვადი ტექსტი
   ═══════════════════════════════════════════════ */

.footer-wrapper, footer#footer, #footer { background: var(--soteri-dark) !important; }

/* Footer headings — GOLD */
.footer-wrapper .col-inner h3,
.footer-wrapper .widget-title,
footer .widget-title,
#footer .widget-title,
.footer-wrapper h3,
.footer-wrapper h4,
.footer-wrapper h5,
#footer h3, #footer h4, #footer h5,
footer h3, footer h4, footer h5,
.footer-1 .col-inner h3,
.footer-2 .col-inner h3,
.footer-wrapper .ux-menu-title,
#footer .ux-menu-title,
footer .ux-menu-title {
    font-weight: 400 !important; font-size: 11px !important;
    letter-spacing: 4px !important; text-transform: uppercase !important;
    color: var(--soteri-gold) !important; margin-bottom: 20px !important;
}

/* Footer links */
.footer-wrapper a, #footer a, footer a,
.footer-wrapper .menu li a, #footer .menu li a,
.footer-1 a, .footer-2 a {
    font-size: 12px !important; font-weight: 300 !important;
    letter-spacing: 1px !important; color: rgba(255,255,255,0.65) !important;
    text-decoration: none !important;
}
.footer-wrapper a:hover, #footer a:hover { color: var(--soteri-gold) !important; }

/* Footer text */
.footer-wrapper p, .footer-wrapper span, .footer-wrapper li,
#footer p, #footer li, #footer span, footer p, footer li,
.footer-1 p, .footer-1 li, .footer-2 p, .footer-2 li {
    font-size: 12px !important; font-weight: 300 !important;
    color: rgba(255,255,255,0.55) !important; line-height: 1.9 !important;
}

/* Footer bottom */
.absolute-footer, .footer-secondary, .copyright-footer {
    background: rgba(0,0,0,0.2) !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
}
.absolute-footer p, .absolute-footer a {
    font-size: 11px !important; color: rgba(255,255,255,0.35) !important;
}
.footer-wrapper .widget li { border-bottom: none !important; padding: 4px 0 !important; }

/* Footer social */
.footer-wrapper .social-icons a, #footer .social-icons a { color: rgba(255,255,255,0.4) !important; }
.footer-wrapper .social-icons a:hover { color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   MOBILE MENU
   ═══════════════════════════════════════════════ */

.off-canvas .nav-sidebar > li > a {
    font-size: 12px !important; letter-spacing: 3px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
    color: var(--soteri-dark) !important;
}
.off-canvas .nav-sidebar > li > a:hover { color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   BANNERS & HEADINGS
   ═══════════════════════════════════════════════ */

.banner-layers h1, .banner-layers h2, .banner h1, .banner h2,
.section-title, .col h1, .col h2 { font-weight: 300 !important; letter-spacing: 3px !important; }

/* ═══════════════════════════════════════════════
   WOO NOTICES
   ═══════════════════════════════════════════════ */

.woocommerce-message, .woocommerce-info, .woocommerce-error {
    border-top-color: var(--soteri-gold) !important;
    font-size: 13px !important; font-weight: 300 !important;
}

/* ═══════════════════════════════════════════════
   SIZE GUIDE MODAL
   ═══════════════════════════════════════════════ */

.mfp-content h2, .mfp-content h3 { font-weight: 300 !important; letter-spacing: 3px !important; text-transform: uppercase !important; }
.mfp-content table th, .mfp-content table td { font-size: 12px !important; font-weight: 300 !important; border-color: var(--soteri-border) !important; }

/* ═══════════════════════════════════════════════
   VARIATION SWATCHES
   ═══════════════════════════════════════════════ */

.wvs-style-squared .variable-items-wrapper .variable-item,
.wvs-style-rounded .variable-items-wrapper .variable-item {
    border: 1px solid var(--soteri-border) !important; border-radius: 0 !important; box-shadow: none !important;
}
.variable-items-wrapper .variable-item:hover { border-color: var(--soteri-gold) !important; }
.variable-items-wrapper .variable-item.selected {
    border-color: var(--soteri-dark) !important; box-shadow: 0 0 0 1px var(--soteri-dark) !important;
}
.wvs-style-squared .variable-item span {
    font-size: 11px !important; font-weight: 400 !important;
    letter-spacing: 1.5px !important; text-transform: uppercase !important;
}
.variations .label label, table.variations label {
    font-size: 11px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; font-weight: 400 !important;
}
.reset_variations { font-size: 11px !important; color: var(--soteri-text-light) !important; text-transform: uppercase !important; }
.reset_variations:hover { color: var(--soteri-gold) !important; }

/* ═══════════════════════════════════════════════
   CURRENCY SWITCHER
   ═══════════════════════════════════════════════ */

.yay-currency-switcher, .yaycurrency-switcher, .yay-currency-select {
    font-size: 11px !important; letter-spacing: 1.5px !important;
    font-weight: 400 !important; border: 1px solid var(--soteri-border) !important; border-radius: 0 !important;
}
.header-top .yay-currency-switcher, .header-top .yay-currency-select {
    border: none !important; color: rgba(255,255,255,0.5) !important;
}

/* ═══════════════════════════════════════════════
   LANGUAGE SWITCHER
   ═══════════════════════════════════════════════ */

.trp-language-switcher, .trp-language-switcher > div {
    font-size: 11px !important; letter-spacing: 1.5px !important; font-weight: 400 !important;
}
.trp-language-switcher .trp-ls-shortcode-current-language { border: none !important; background: transparent !important; }

/* ═══════════════════════════════════════════════
   MEGA MENUS & ACCORDION FONT
   ═══════════════════════════════════════════════ */

.cmm-mega-menu *, .dcm-mega-menu * { font-family: soteri, Inter, -apple-system, sans-serif !important; }
html[lang="ka-GE"] .cmm-mega-menu *, html[lang="ka-GE"] .dcm-mega-menu * {
    font-family: "Noto Sans Georgian", Inter, -apple-system, sans-serif !important;
}
.soteri-accordion-btn { font-family: soteri, Inter, -apple-system, sans-serif !important; }
html[lang="ka-GE"] .soteri-accordion-btn { font-family: "Noto Sans Georgian", Inter, -apple-system, sans-serif !important; }

/* ═══════════════════════════════════════════════
   SALE BADGE
   ═══════════════════════════════════════════════ */

.onsale, .badge-inner, span.onsale {
    background: var(--soteri-dark) !important; color: #fff !important;
    font-size: 9px !important; letter-spacing: 2px !important;
    text-transform: uppercase !important; border-radius: 0 !important;
}

/* ═══════════════════════════════════════════════
   MINI CART
   ═══════════════════════════════════════════════ */

.widget_shopping_cart .cart_list li a { font-size: 12px !important; font-weight: 400 !important; color: var(--soteri-dark) !important; }
.widget_shopping_cart .cart_list li a:hover { color: var(--soteri-gold) !important; }
.widget_shopping_cart .buttons .button { border-radius: 0 !important; }

/* ═══════════════════════════════════════════════
   STOCK & MISC
   ═══════════════════════════════════════════════ */

.in-stock { font-size: 11px !important; letter-spacing: 2px !important; text-transform: uppercase !important; color: #5a7a5a !important; }
.out-of-stock { font-size: 11px !important; letter-spacing: 2px !important; text-transform: uppercase !important; color: #a05050 !important; }
.return-to-shop .button { background: var(--soteri-dark) !important; color: #fff !important; border-radius: 0 !important; }
.return-to-shop .button:hover { background: var(--soteri-gold) !important; }
.shop_table th, .shop_table td { font-size: 12px !important; font-weight: 400 !important; border-color: var(--soteri-border) !important; }
.social-icons a { border-color: var(--soteri-border) !important; color: var(--soteri-text-light) !important; }
.social-icons a:hover { border-color: var(--soteri-gold) !important; color: var(--soteri-gold) !important; }

/* Category description */
.term-description p {
    font-size: 14px !important; font-weight: 300 !important;
    line-height: 1.9 !important; color: var(--soteri-text) !important;
    max-width: 700px !important; margin: 0 auto 30px !important; text-align: center !important;
}

/* ═══════════════════════════════════════════════
   ABOUT PAGE — Hero & Consistent Fonts
   ═══════════════════════════════════════════════ */

/* About hero — full width, text visible over image */
.page-id-34 .banner-wrapper:first-child,
.page-id-34 .section:first-child,
.page-id-34 .entry-content > .row:first-child,
.page-id-34 .entry-content > .section:first-child {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
}
/* Dark overlay so text is readable on image */
.page-id-34 .banner-wrapper:first-child .bg,
.page-id-34 .section:first-child .bg,
.page-id-34 .entry-content > .row:first-child .bg,
.page-id-34 .entry-content > .section:first-child .bg {
    position: relative !important;
}
.page-id-34 .banner-wrapper:first-child .bg::after,
.page-id-34 .section:first-child .bg::after,
.page-id-34 .entry-content > .row:first-child .bg::after,
.page-id-34 .entry-content > .section:first-child .bg::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(20, 18, 15, 0.45) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}
/* Hero text above overlay */
.page-id-34 .banner-wrapper:first-child .banner-layers,
.page-id-34 .section:first-child .banner-layers,
.page-id-34 .entry-content > .row:first-child .banner-layers,
.page-id-34 .entry-content > .section:first-child .banner-layers,
.page-id-34 .banner-wrapper:first-child .text-box,
.page-id-34 .section:first-child .text-box {
    position: relative !important;
    z-index: 2 !important;
}
/* Hero text styling */
.page-id-34 .banner-wrapper:first-child h1,
.page-id-34 .banner-wrapper:first-child h2,
.page-id-34 .section:first-child h1,
.page-id-34 .section:first-child h2 {
    color: #fff !important;
    text-shadow: 0 2px 20px rgba(0,0,0,0.3) !important;
}
.page-id-34 .banner-wrapper:first-child p,
.page-id-34 .banner-wrapper:first-child span,
.page-id-34 .section:first-child p,
.page-id-34 .section:first-child span {
    color: rgba(255,255,255,0.9) !important;
    text-shadow: 0 1px 10px rgba(0,0,0,0.3) !important;
}

.page-id-34 .entry-content p,
.page-id-34 .entry-content li,
.page-id-34 .entry-content span,
.page-id-34 .col p,
.page-id-34 .col li,
.page-id-34 .col span,
.page-id-34 .text-box p,
.page-id-34 .text-box li,
.page-id-34 .text-box span {
    font-size: 14px !important;
    font-weight: 300 !important;
    line-height: 1.9 !important;
    color: var(--soteri-text) !important;
    letter-spacing: .3px !important;
}
.page-id-34 .entry-content h1,
.page-id-34 .col h1 {
    font-weight: 300 !important;
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    font-size: 36px !important;
    color: var(--soteri-dark) !important;
}
.page-id-34 .entry-content h2,
.page-id-34 .col h2 {
    font-weight: 300 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    font-size: 26px !important;
    color: var(--soteri-dark) !important;
}
.page-id-34 .entry-content h3,
.page-id-34 .col h3,
.page-id-34 .entry-content h4,
.page-id-34 .col h4 {
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    color: var(--soteri-dark) !important;
}

/* ═══════════════════════════════════════════════
   DARK SECTIONS — Text & Links Visibility
   ═══════════════════════════════════════════════ */

/* Flatsome dark bg sections: ensure text, links, headings are light */
.section.dark p,
.section.dark span,
.section.dark li,
.section.dark .text-box p,
.section.dark .text-box span {
    color: rgba(255,255,255,0.85) !important;
}
.section.dark h1,
.section.dark h2,
.section.dark h3,
.section.dark h4 {
    color: #fff !important;
}
.section.dark a,
.section.dark .text-box a {
    color: #fff !important;
    border-bottom-color: rgba(176,148,112,0.5) !important;
}
.section.dark a:hover {
    color: #b09470 !important;
}

/* ═══════════════════════════════════════════════
   PRODUCT HOVER — Second Image Fade
   ═══════════════════════════════════════════════ */

.product-small .box-image .back-image {
    opacity: 0 !important;
    transition: opacity 0.6s var(--soteri-ease) !important;
}
.product-small:hover .box-image .back-image {
    opacity: 1 !important;
}

/* ═══════════════════════════════════════════════
   GLOBAL POLISH
   ═══════════════════════════════════════════════ */

html { scroll-behavior: smooth; }
::selection { background: rgba(176, 148, 112, 0.2); color: var(--soteri-dark); }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--soteri-cream); }
::-webkit-scrollbar-thumb { background: rgba(176, 148, 112, 0.3); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--soteri-gold); }

/* ═══════════════════════════════════════════════
   PRODUCT PAGE — Buttons, Currency, Arrows
   ═══════════════════════════════════════════════ */

/* === 1) Currency switcher: square, inline with price === */
.single-product .summary .price-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    margin: 5px 15px 20px 0 !important;
    vertical-align: middle !important;
}
.single-product .summary .yay-currency-single-page-switcher {
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
    margin-top: -15px !important;
}
.single-product .yay-currency-single-page-switcher,
.single-product .yay-currency-single-page-switcher *,
.single-product .yay-currency-custom-select-wrapper,
.single-product .yay-currency-custom-select-wrapper *,
.single-product .yay-currency-custom-select,
.single-product .yay-currency-custom-select * {
    border-radius: 0 !important;
}
.single-product .yay-currency-custom-select-wrapper {
    border: 1px solid rgba(176,148,112,0.25) !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
}

/* === 2) Action buttons: 2 rows, uniform 48px === */
.single-product .woocommerce-variation-add-to-cart,
.single-product .variations_button {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
}
.single-product .woocommerce-variation-add-to-cart .woocommerce-variation,
.single-product .woocommerce-variation-add-to-cart .single_variation {
    flex: 0 0 100% !important;
    width: 100% !important;
    order: 0 !important;
}
/* ROW 1: Quantity + Size Guide */
.single-product .woocommerce-variation-add-to-cart .quantity,
.single-product .woocommerce-variation-add-to-cart .ux-quantity {
    order: 1 !important;
    flex: 1 1 0 !important;
    max-width: calc(50% - 5px) !important;
    height: 48px !important;
    border: 1px solid rgba(176,148,112,0.25) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}
.single-product .woocommerce-variation-add-to-cart .ssg-button-wrapper {
    order: 2 !important;
    flex: 1 1 0 !important;
    max-width: calc(50% - 5px) !important;
    height: 48px !important;
    display: flex !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
}
.single-product .ssg-size-guide-trigger {
    height: 48px !important;
    width: 100% !important;
    padding: 0 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0 !important;
    border: 1px solid rgba(176,148,112,0.3) !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}
/* Spacer — forces row break before Add to Cart */
.single-product .woocommerce-variation-add-to-cart .soteri-row-break {
    flex: 0 0 100% !important;
    height: 0 !important;
    order: 2 !important;
}
/* ROW 2: Add to Cart + Buy Now */
.single-product .single_add_to_cart_button,
.single-product button.single_add_to_cart_button {
    order: 3 !important;
    flex: 1 1 0 !important;
    max-width: calc(50% - 5px) !important;
    height: 48px !important;
    padding: 0 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #1a1a1a !important;
    color: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}
.single-product .single_add_to_cart_button:hover {
    background: #b09470 !important;
}
.single-product .ux-buy-now-button,
.single-product button.ux-buy-now-button {
    order: 4 !important;
    flex: 1 1 0 !important;
    max-width: calc(50% - 5px) !important;
    height: 48px !important;
    padding: 0 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #1a1a1a !important;
    border: 1px solid #1a1a1a !important;
    border-radius: 0 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}
.single-product .ux-buy-now-button:hover {
    background: #1a1a1a !important;
    color: #fff !important;
}

/* === Quantity: remove inner shadow === */
.single-product .quantity input,
.single-product .quantity .qty,
.single-product .quantity input[type="number"] {
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    border: none !important;
    background: transparent !important;
}
.single-product .quantity .minus,
.single-product .quantity .plus {
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
}

/* === 3) Hide Flickity native arrows (we use custom ones) === */
.single-product .product-footer .flickity-prev-next-button,
.single-product .soteri-slider-wrap .flickity-prev-next-button {
    display: none !important;
}
.soteri-slider-wrap {
    position: relative !important;
}
.soteri-slider-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 44px !important;
    height: 44px !important;
    background: #fff !important;
    border: 1px solid rgba(176,148,112,0.25) !important;
    color: #1a1a1a !important;
    border-radius: 0 !important;
    cursor: pointer !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 22px !important;
    line-height: 1 !important;
    padding: 0 !important;
}
.soteri-slider-arrow:hover { border-color: #b09470 !important; color: #b09470 !important; }
.soteri-arrow-prev { left: 10px !important; }
.soteri-arrow-next { right: 10px !important; }

/* === Product page mobile === */
@media (max-width: 849px) {
    .single-product .summary .price-wrapper {
        display: flex !important;
        margin: 5px 0 15px 0 !important;
    }
    .single-product .summary .yay-currency-single-page-switcher {
        margin-top: 0 !important;
        margin-left: 0 !important;
    }
    .single-product .woocommerce-variation-add-to-cart {
        gap: 8px !important;
    }
    .single-product .woocommerce-variation-add-to-cart .quantity,
    .single-product .woocommerce-variation-add-to-cart .ux-quantity,
    .single-product .woocommerce-variation-add-to-cart .ssg-button-wrapper,
    .single-product .single_add_to_cart_button,
    .single-product button.single_add_to_cart_button,
    .single-product .ux-buy-now-button,
    .single-product button.ux-buy-now-button {
        max-width: calc(50% - 4px) !important;
        height: 44px !important;
        font-size: 10px !important;
        letter-spacing: 2px !important;
        padding: 0 12px !important;
    }
    .single-product .product-gallery {
        padding-right: 0 !important;
    }
    .single-product .product-info {
        padding-left: 0 !important;
    }
    .soteri-slider-arrow {
        width: 36px !important;
        height: 36px !important;
        font-size: 18px !important;
    }
    .product-info .product_title, .product_title {
        font-size: 22px !important;
        letter-spacing: 2px !important;
    }
}
@media (max-width: 549px) {
    .single-product .woocommerce-variation-add-to-cart .quantity,
    .single-product .woocommerce-variation-add-to-cart .ux-quantity,
    .single-product .woocommerce-variation-add-to-cart .ssg-button-wrapper,
    .single-product .single_add_to_cart_button,
    .single-product button.single_add_to_cart_button,
    .single-product .ux-buy-now-button,
    .single-product button.ux-buy-now-button {
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
    .single-product .woocommerce-variation-add-to-cart .soteri-row-break {
        display: none !important;
    }
}

/* ═══════════════════════════════════════════════
   SIZE GUIDE MODAL — Soteri Luxury Copper Design
   ═══════════════════════════════════════════════ */

/* Overlay — deep blur */
.ssg-modal-overlay {
    background: rgba(20,18,15,0.6) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}

/* Modal card */
.ssg-modal-content {
    max-width: 820px !important;
    background: #f8f6f3 !important;
    box-shadow: 0 30px 80px rgba(0,0,0,0.25), 0 0 0 1px rgba(176,148,112,0.1) !important;
    border-radius: 0 !important;
}

/* ── HEADER ── copper gradient accent */
.ssg-modal-header {
    background: #1a1a1a !important;
    padding: 30px 36px 14px !important;
    border-bottom: 2px solid #b09470 !important;
    position: relative !important;
}
.ssg-modal-title {
    color: #b09470 !important;
    font-family: soteri, serif !important;
    font-size: 20px !important;
    font-weight: 300 !important;
    letter-spacing: 6px !important;
    text-transform: uppercase !important;
    padding-bottom: 0 !important;
}
.ssg-modal-close {
    color: rgba(176,148,112,0.6) !important;
    background: transparent !important;
    transition: all 0.3s ease !important;
}
.ssg-modal-close:hover {
    color: #b09470 !important;
    background: rgba(176,148,112,0.1) !important;
    transform: rotate(90deg) !important;
}

/* ── BODY ── */
.ssg-modal-body {
    background: #f8f6f3 !important;
    padding: 0 !important;
    color: #1a1a1a !important;
}

/* ── TABS ── copper underline on dark */
.ssg-tabs {
    background: #1a1a1a !important;
    border-bottom: none !important;
    margin: 0 !important;
    padding: 0 36px !important;
    display: flex !important;
    gap: 0 !important;
}
.ssg-tab-button {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    color: rgba(246,239,227,0.5) !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    padding: 16px 24px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}
.ssg-tab-button:hover {
    color: #b09470 !important;
}
.ssg-tab-button.active {
    color: #f6efe3 !important;
    background: transparent !important;
    border-bottom-color: #b09470 !important;
}

/* ── TAB CONTENT ── */
.ssg-tab-content {
    padding: 32px 36px 28px !important;
    background: transparent !important;
    color: #1a1a1a !important;
}

/* ── CHART NAME & META ── readable, prominent */
.ssg-chart-info {
    padding: 0 0 20px 0 !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(176,148,112,0.15) !important;
    margin-bottom: 24px !important;
}
.ssg-chart-info h3,
#ssg-chart-name {
    font-family: soteri, serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    margin: 0 0 8px 0 !important;
}
.ssg-chart-meta {
    color: #b09470 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 0 !important;
    background: transparent !important;
}
.ssg-chart-meta .ssg-separator {
    color: rgba(176,148,112,0.4) !important;
    margin: 0 8px !important;
}

/* ── TABLE ── the star of the modal */
.ssg-modal-body table, .ssg-size-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-family: soteri, Inter, sans-serif !important;
    background: #fff !important;
    border: 2px solid rgba(176,148,112,0.25) !important;
    box-shadow: 0 4px 24px rgba(176,148,112,0.1) !important;
}
/* Table header — dark with copper text (high contrast) */
.ssg-modal-body table th, .ssg-size-table th {
    background: #1a1a1a !important;
    color: #b09470 !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    padding: 14px 12px !important;
    border: none !important;
    border-right: 1px solid rgba(176,148,112,0.15) !important;
    border-bottom: 2px solid #b09470 !important;
    text-align: center !important;
}
.ssg-modal-body table th:first-child, .ssg-size-table th:first-child {
    text-align: left !important;
    letter-spacing: 1.5px !important;
}
.ssg-modal-body table th:last-child, .ssg-size-table th:last-child {
    border-right: none !important;
}
/* Table cells — readable dark text, no wrapping */
.ssg-modal-body table td, .ssg-size-table td {
    padding: 13px 12px !important;
    border: none !important;
    border-bottom: 1px solid rgba(176,148,112,0.18) !important;
    border-right: 1px solid rgba(176,148,112,0.12) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #1a1a1a !important;
    text-align: center !important;
    letter-spacing: 0.3px !important;
    white-space: nowrap !important;
    transition: background 0.15s, color 0.15s !important;
}
/* First column — measurement names, copper accent bg */
.ssg-modal-body table td:first-child, .ssg-size-table td:first-child {
    text-align: left !important;
    font-weight: 500 !important;
    color: #1a1a1a !important;
    font-size: 13px !important;
    letter-spacing: 0.5px !important;
    background: rgba(176,148,112,0.06) !important;
    border-right: 2px solid rgba(176,148,112,0.15) !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
}
/* Alternating rows */
.ssg-modal-body table tr:nth-child(even) td {
    background: rgba(176,148,112,0.035) !important;
}
.ssg-modal-body table tr:nth-child(even) td:first-child {
    background: rgba(176,148,112,0.08) !important;
}
/* Coordinate hover — column gets subtle copper tint */
.ssg-size-table th.ssg-hover-col,
.ssg-size-table td.ssg-hover-col {
    background-color: rgba(176,148,112,0.06) !important;
    box-shadow: none !important;
}
/* Row hover — dark bg, cream text */
.ssg-modal-body table tr:hover td,
.ssg-size-table tr:hover td,
.ssg-size-table tr:hover td.ssg-hover-col,
.ssg-size-table tr:hover td.ssg-hover-row,
.ssg-size-table tr:hover td.ssg-hover-col.ssg-hover-row {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    color: #f6efe3 !important;
    border-color: rgba(176,148,112,0.3) !important;
}
.ssg-modal-body table tr:hover td:first-child,
.ssg-size-table tr:hover td:first-child {
    background: #1a1a1a !important;
    background-color: #1a1a1a !important;
    color: #b09470 !important;
}
/* Intersection — exact hovered cell = copper with white text */
.ssg-modal-body table td:hover,
.ssg-size-table td:hover,
.ssg-size-table td.ssg-hover-col.ssg-hover-row {
    background: #b09470 !important;
    background-color: #b09470 !important;
    color: #fff !important;
}
/* Last row — no bottom border */
.ssg-modal-body table tr:last-child td {
    border-bottom: none !important;
}

/* ── SECTION TITLES ── Regular Fit / Big Sizes */
.ssg-section-title {
    font-family: soteri, serif !important;
    font-size: 14px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: #b09470 !important;
    font-weight: 300 !important;
    margin: 28px 0 14px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid rgba(176,148,112,0.15) !important;
}
.ssg-chart-section + .ssg-chart-section { margin-top: 32px !important; }

/* ── FOOTER ── */
.ssg-modal-footer {
    background: #1a1a1a !important;
    padding: 22px 36px !important;
    border-top: 2px solid #b09470 !important;
}
.ssg-footer-note {
    color: rgba(246,239,227,0.65) !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11.5px !important;
    line-height: 1.9 !important;
    font-weight: 300 !important;
    font-style: italic !important;
    text-align: center !important;
    margin: 0 !important;
}

/* ── SEPARATOR ── */
.ssg-separator { border-color: rgba(176,148,112,0.15) !important; }

/* ── HOW TO MEASURE TAB ── two-column: text left, image right */
.ssg-how-to-content {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 32px !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.8 !important;
    color: #1a1a1a !important;
}
/* Image → right column */
.ssg-how-to-content img {
    order: 2 !important;
    flex: 0 0 240px !important;
    max-width: 240px !important;
    height: auto !important;
    object-fit: contain !important;
    align-self: flex-start !important;
}
/* All text content → left column (takes remaining space) */
.ssg-how-to-content ul,
.ssg-how-to-content ol,
.ssg-how-to-content p,
.ssg-how-to-content div:not(:has(img)) {
    order: 1 !important;
    flex: 1 1 300px !important;
}
.ssg-how-to-content p,
.ssg-how-to-content li,
.ssg-how-to-content span {
    color: #1a1a1a !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.8 !important;
}
.ssg-how-to-content h3, .ssg-how-to-content h4 {
    font-family: soteri, serif !important;
    color: #1a1a1a !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 300 !important;
    font-size: 16px !important;
    margin: 0 0 10px !important;
    order: 1 !important;
    flex: 0 0 100% !important;
}
.ssg-how-to-content ul, .ssg-how-to-content ol {
    padding-left: 20px !important;
    color: #1a1a1a !important;
    margin: 0 !important;
}
.ssg-how-to-content li {
    margin-bottom: 12px !important;
}
.ssg-how-to-content strong, .ssg-how-to-content b {
    font-weight: 600 !important;
    color: #1a1a1a !important;
}
.ssg-how-to-content a {
    color: #b09470 !important;
    text-decoration: underline !important;
}

/* ── SIZE FINDER ── */
.ssg-size-finder {
    background: #fff !important;
    padding: 25px !important;
    border: 1px solid rgba(176,148,112,0.15) !important;
}
.ssg-size-finder label {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
}
.ssg-size-finder input, .ssg-size-finder select {
    border: 1px solid rgba(176,148,112,0.2) !important;
    border-radius: 0 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 14px !important;
    padding: 12px 14px !important;
    color: #1a1a1a !important;
    background: #fff !important;
}
.ssg-size-finder input:focus, .ssg-size-finder select:focus {
    border-color: #b09470 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(176,148,112,0.1) !important;
}
.ssg-size-finder button, .ssg-size-finder .btn {
    background: #b09470 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    padding: 14px 28px !important;
    transition: background 0.3s !important;
}
.ssg-size-finder button:hover { background: #1a1a1a !important; }

/* ── FIND MY SIZE TAB ── */
.ssg-enter-measurements-content h3 {
    font-family: soteri, serif !important;
    font-size: 18px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    font-weight: 300 !important;
}
.ssg-measurements-intro {
    font-size: 14px !important;
    color: #555 !important;
    line-height: 1.7 !important;
}
.ssg-measurements-form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
}
.ssg-measurement-input-group label {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    font-weight: 400 !important;
    margin-bottom: 6px !important;
    display: block !important;
}
.ssg-measurement-input {
    width: 100% !important;
    border: 1px solid rgba(176,148,112,0.25) !important;
    border-radius: 0 !important;
    padding: 12px 14px !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 14px !important;
    color: #1a1a1a !important;
    background: #fff !important;
    box-sizing: border-box !important;
    transition: border-color 0.3s !important;
}
.ssg-measurement-input::placeholder {
    color: #999 !important;
    opacity: 1 !important;
    font-weight: 300 !important;
}
.ssg-measurement-input:focus {
    border-color: #b09470 !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(176,148,112,0.1) !important;
}
/* All input placeholders in modal */
.ssg-modal input::placeholder,
.ssg-modal select::placeholder {
    color: #999 !important;
    opacity: 1 !important;
}
.ssg-measurements-actions { margin-top: 24px !important; }
#ssg-find-my-size {
    background: #b09470 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    padding: 15px 32px !important;
    cursor: pointer !important;
    transition: background 0.3s !important;
}
#ssg-find-my-size:hover { background: #1a1a1a !important; }

/* Recommendation result */
.ssg-size-recommendation {
    margin-top: 24px !important;
    padding: 24px !important;
}
.ssg-recommendation-success {
    text-align: center !important;
    background: rgba(176,148,112,0.06) !important;
    border: 1px solid rgba(176,148,112,0.15) !important;
    padding: 28px !important;
}
.ssg-recommendation-success h4 {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: #888 !important;
    margin: 0 0 12px !important;
}
.ssg-recommended-size-value {
    font-family: soteri, serif !important;
    font-size: 42px !important;
    color: #b09470 !important;
    letter-spacing: 4px !important;
    margin: 8px 0 !important;
}
.ssg-recommendation-success p {
    font-size: 14px !important;
    color: #555 !important;
}
.ssg-recommendation-custom, .ssg-recommendation-error {
    text-align: center !important;
    background: rgba(176,148,112,0.04) !important;
    border: 1px solid rgba(176,148,112,0.12) !important;
    padding: 24px !important;
}
/* Custom sizing / error — dark readable text */
.ssg-recommendation-custom h4,
.ssg-recommendation-error h4 {
    font-family: soteri, Inter, sans-serif !important;
    font-size: 11px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: #1a1a1a !important;
    margin: 0 0 12px !important;
}
.ssg-recommendation-custom p,
.ssg-recommendation-error p {
    font-size: 14px !important;
    color: #333 !important;
    line-height: 1.7 !important;
}

/* Contact form in modal */
.ssg-contact-form-container {
    margin-top: 28px !important;
    padding-top: 24px !important;
    border-top: 1px solid rgba(176,148,112,0.12) !important;
}

/* ── SCROLLBAR ── */
.ssg-modal-body::-webkit-scrollbar { width: 5px; }
.ssg-modal-body::-webkit-scrollbar-track { background: rgba(176,148,112,0.05); }
.ssg-modal-body::-webkit-scrollbar-thumb { background: rgba(176,148,112,0.25); border-radius: 3px; }
.ssg-modal-body::-webkit-scrollbar-thumb:hover { background: rgba(176,148,112,0.4); }

/* ── SIZE GUIDE MOBILE ── */
@media (max-width: 849px) {
    .ssg-modal-content { max-width: 95vw !important; }
    .ssg-modal-header { padding: 22px 20px 12px !important; }
    .ssg-modal-title { font-size: 16px !important; letter-spacing: 4px !important; }
    .ssg-tabs { padding: 0 16px !important; }
    .ssg-tab-button { padding: 14px 16px !important; font-size: 10px !important; letter-spacing: 1.5px !important; }
    .ssg-tab-content { padding: 24px 20px !important; }
    .ssg-chart-info h3, #ssg-chart-name { font-size: 17px !important; letter-spacing: 2px !important; }
    .ssg-modal-body table th { font-size: 9px !important; padding: 11px 10px !important; letter-spacing: 1px !important; }
    .ssg-modal-body table td { padding: 12px 10px !important; font-size: 13px !important; }
    .ssg-modal-body table td:first-child { font-size: 12px !important; }
    .ssg-modal-footer { padding: 16px 20px !important; }
    .ssg-footer-note { font-size: 10.5px !important; line-height: 1.7 !important; }
    .ssg-measurements-form { grid-template-columns: 1fr !important; }
    .ssg-section-title { font-size: 12px !important; }
}
@media (max-width: 649px) {
    .ssg-how-to-content { flex-direction: column !important; }
    .ssg-how-to-content img {
        order: 1 !important;
        flex: 0 0 auto !important;
        max-width: 200px !important;
        margin: 0 auto !important;
    }
    .ssg-how-to-content ul,
    .ssg-how-to-content ol,
    .ssg-how-to-content p { order: 2 !important; }
}
@media (max-width: 549px) {
    .ssg-tab-button { padding: 12px 10px !important; font-size: 9px !important; letter-spacing: 1px !important; }
    .ssg-modal-body table th { font-size: 8px !important; padding: 9px 6px !important; }
    .ssg-modal-body table td { padding: 10px 6px !important; font-size: 12px !important; }
}
