/* =====================================================
   FONTS — TI (TopImpressionists)
   DM Mono loaded via Google Fonts import;
   Manrope, Italiana, Cormorant Garamond via @font-face below.
   ===================================================== */
@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&display=swap");
/* latin-ext */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_M-bnBeA.woff2)
        format("woff2");
    unicode-range:
        U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304,
        U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
        U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_C-bk.woff2)
        format("woff2");
    unicode-range:
        U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
        U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
        U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 600 700;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggmxSuXd.woff2)
        format("woff2");
    unicode-range:
        U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304,
        U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
        U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 600 700;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRggexSg.woff2)
        format("woff2");
    unicode-range:
        U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
        U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
        U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
    font-family: "Italiana";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/italiana/v21/QldNNTtLsx4E__B0XQmWaXw.woff2)
        format("woff2");
    unicode-range:
        U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
        U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
        U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
    font-family: "Cormorant Garamond";
    font-style: italic;
    font-weight: 300 600;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrEtGmSq17w.woff2)
        format("woff2");
    unicode-range:
        U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304,
        U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
        U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: "Cormorant Garamond";
    font-style: italic;
    font-weight: 300 600;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3ZmX5slCNuHLi8bLeY9MK7whWMhyjYrEtImSo.woff2)
        format("woff2");
    unicode-range:
        U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
        U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
        U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
    font-family: "Cormorant Garamond";
    font-style: normal;
    font-weight: 300 600;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYp3tKgS4.woff2)
        format("woff2");
    unicode-range:
        U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304,
        U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
        U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: "Cormorant Garamond";
    font-style: normal;
    font-weight: 300 600;
    font-display: swap;
    src: url(https://fonts.gstatic.com/s/cormorantgaramond/v21/co3bmX5slCNuHLi8bLeY9MK7whWMhyjYqXtK.woff2)
        format("woff2");
    unicode-range:
        U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
        U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
        U+2212, U+2215, U+FEFF, U+FFFD;
}

/* =====================================================
   TI — Link hover: dual overline + underline sweep
   ===================================================== */
a,
a.mouseover_effect_texts {
    position: relative;
    padding: 3px 0;
}
a::before,
a::after {
    content: "";
    position: absolute;
    left: 50%;
    width: 0;
    height: 1px;
    background: var(--lc);
    transform: translateX(-50%);
    transition: width 0.38s cubic-bezier(0.22, 1, 0.36, 1);
}
a::before {
    top: 0;
} /* overline */
a::after {
    bottom: 0;
} /* underline */
a:hover::before,
a:hover::after {
    width: 100%;
}
a:hover {
    color: var(--lc);
}
a:visited {
    color: var(--lv);
}
a.mouseover_effect_texts {
    transition:
        color 0.25s ease,
        opacity 0.25s ease;
}
a.mouseover_effect_texts:hover {
    opacity: 0.8;
}

/* =====================================================
   TI — Image hover: zoom retreat (dark background reveal)
   ===================================================== */

/* Dark background shows through as the image shrinks */
.search_card .search_img,
.showMainResulsImage {
    background: #111;
}

/* Base transition */
.search_card .search_img a img,
.search_card .search_img > img,
.showMainResulsImage a img,
.swiper-slide .artist_slid_box a img,
img.mouseover_effect_images,
img.mouseover_image_effect {
    transition:
        transform 0.6s ease,
        opacity 0.6s ease;
}

/* Hover state — zoom retreat */
.search_card .search_img a:hover img,
.search_card .search_img:hover > img,
.showMainResulsImage a:hover img,
.swiper-slide .artist_slid_box a:hover img,
a:hover img.mouseover_effect_images,
img.mouseover_effect_images:hover,
a:hover img.mouseover_image_effect,
img.mouseover_image_effect:hover {
    transform: scale(0.95);
    opacity: 0.9;
}

/* =====================================================
   TI — Slider card title: multi-line hover-frame fix
   inline-block gives the <a> a single rectangular bounding box
   so the dual overline/underline ::before/::after pseudo-elements
   correctly frame the full text block even when the title wraps.
   ===================================================== */
.view_all_art a {
    display: inline-block;
}

/* Suppress any text-link hover decoration on anchors that wrap an image */
a:has(> img)::before,
a:has(> img)::after,
a:has(> picture)::before,
a:has(> picture)::after,
a:has(> figure)::before,
a:has(> figure)::after {
    content: none;
}

a:has(> img),
a:has(> picture),
a:has(> figure) {
    padding: 0;
}

/* TopImpressionists.com — site-specific CSS overrides */
/* Loaded by base.html for dns_domain_base == 'topimpressionists' */

/* =====================================================
   TI — Header & footer logo (TI-LOGO.png)
   ===================================================== */
.main-header .logo {
    flex-shrink: 0;
    display: block;
    padding: 0;
    line-height: 0;
}
.main-header .logo a {
    display: block;
    padding: 0;
    line-height: 0;
}
.main-header .logo::before,
.main-header .logo::after,
.main-header .logo a::before,
.main-header .logo a::after {
    content: none !important;
}
.main-header .logo img {
    height: 54px;
    width: auto;
    max-width: min(220px, 42vw);
    display: block;
    transition: height 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.ti-foot-brand .logo a {
    display: inline-block;
    padding: 0;
    line-height: 0;
}
.ti-foot-brand .logo a::before,
.ti-foot-brand .logo a::after {
    content: none !important;
}
.ti-foot-brand .logo img {
    height: 72px;
    width: auto;
    max-width: 100%;
    display: block;
    filter: brightness(0) invert(1);
    opacity: 0.92;
}

.ti-foot {
    padding-inline: 0;
}

/* =====================================================
   TI — Override container width for all content
   ===================================================== */
.ti-ann-inner,
.ti-foot-inner,
.ti-subnav-inner,
.container {
    --bs-gutter-x: 2rem;
    max-width: 1380px;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-inline: auto;
}

main {
    overflow: clip;
}

/* =====================================================
   TI — Extended design tokens (Impressionist palette)
   ===================================================== */
:root {
    --lc: #a0742a; /* link / hover accent — impressionist gold */
    --lv: #6b4c1a; /* visited link colour */

    /* ── Canonical --ti-* tokens ── */
    --ti-canvas: #f4eee2;
    --ti-paper: #fbf7ee;
    --ti-linen: #ede5d2;
    --ti-gesso: #f9f4e8;
    --ti-shadow-c: #e6dec8;

    --ti-ink: #2a2438;
    --ti-ink-soft: #4a4358;
    --ti-ink-mute: #6c647a;
    --ti-ink-faint: #9a93a4;
    --ti-ink-vapor: #bdb6c3;

    --ti-plein: #d89a78;
    --ti-ochre: #b78b4a;
    --ti-monet: #6b8eb3;
    --ti-wisteria: #9a8bb8;
    --ti-lichen: #8fa280;
    --ti-rose: #c8a2a2;
    --ti-rule: #c7bea8;
    --ti-rule-soft: #ddd4be;

    --font-title-accent: "Manrope", -apple-system, sans-serif;
    --font-title: "Italiana", "Cormorant Garamond", serif;
    --font-body: "Cormorant Garamond", Garamond, serif;
    --ti-f-display: var(--font-title);
    --ti-f-edit: var(--font-body);

    /* ── Unprefixed short-name aliases (match design spec) ── */
    --canvas: var(--ti-canvas);
    --paper: var(--ti-paper);
    --linen: var(--ti-linen);
    --gesso: var(--ti-gesso);
    --shadow: var(--ti-shadow-c);
    --ink: var(--ti-ink);
    --ink-soft: var(--ti-ink-soft);
    --ink-mute: var(--ti-ink-mute);
    --ink-faint: var(--ti-ink-faint);
    --ink-vapor: var(--ti-ink-vapor);
    --monet: var(--ti-monet);
    --wisteria: var(--ti-wisteria);
    --plein: var(--ti-plein);
    --lichen: var(--ti-lichen);
    --rose: var(--ti-rose);
    --ochre: var(--ti-ochre);
    --rule: var(--ti-rule);
    --rule-soft: var(--ti-rule-soft);

    /* ── Font stack shorthand (design spec names) ── */
    --f-display: var(--font-title);
    --f-edit: var(--font-body);
    --f-ui: var(--font-title-accent);
    --f-mono: "DM Mono", ui-monospace, monospace;

    --max-w: 1380px;
    --gutter: clamp(20px, 4vw, 64px);

    /* ── Shadow tokens ── */
    --ti-shadow-sm: 0 4px 20px -8px rgba(42, 36, 56, 0.1);
    --ti-shadow-md: 0 8px 32px -12px rgba(42, 36, 56, 0.12);
    --ti-shadow-lg: 0 10px 30px -8px rgba(42, 36, 56, 0.18);
    --ti-shadow-xl: 0 16px 40px -14px rgba(42, 36, 56, 0.2);
    --ti-shadow-frame: 0 30px 60px -20px rgba(42, 36, 56, 0.18);
    --ti-shadow-deep: 0 30px 70px -25px rgba(42, 36, 56, 0.25);
    --ti-shadow-hover-sm: 0 6px 18px -4px rgba(42, 36, 56, 0.16);
    --ti-shadow-hover-md: 0 6px 20px -6px rgba(42, 36, 56, 0.18);

    /* unprefixed aliases */
    --shadow-sm: var(--ti-shadow-sm);
    --shadow-md: var(--ti-shadow-md);
    --shadow-lg: var(--ti-shadow-lg);
    --shadow-xl: var(--ti-shadow-xl);
    --shadow-frame: var(--ti-shadow-frame);
    --shadow-deep: var(--ti-shadow-deep);
    --shadow-hover-sm: var(--ti-shadow-hover-sm);
    --shadow-hover-md: var(--ti-shadow-hover-md);

    /* Layout tokens — consumed by global-style-V1.9.css via var(--site-*, fallback) */
    --site-bg:         var(--ti-canvas);
    --site-header-bg:  var(--ti-canvas);
    --site-nav-bg:     var(--ti-canvas);
    --site-nav-border: var(--ti-rule);
    --site-footer-bg:  var(--ti-ink);
}

/* =====================================================
   TI — Shared eyebrow / kicker (.ek)
   ===================================================== */
.ek {
    font-family: var(--f-ui);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--ochre);
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
}

.ek::before {
    content: "";
    width: 32px;
    height: 1px;
    background: var(--ochre);
    flex-shrink: 0;
    d: var(--bs-gutter-x);
}

.ek .num {
    font-family: var(--f-mono);
    color: var(--ink-faint);
    font-weight: 500;
}

/* =====================================================
   TI — UI Kit production components
   Global button/chip variants; hero-scoped rules override with higher specificity.
   ===================================================== */

/* Suppress dual-line underline sweep on button/chip anchors */
a.btn-primary::before, a.btn-primary::after,
a.btn-ghost::before, a.btn-ghost::after,
a.btn-accent::before, a.btn-accent::after,
a.chip::before, a.chip::after { content: none; }

.btn-primary {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 15px 28px; font-size: 11px; letter-spacing: .18em;
    text-transform: uppercase; font-weight: 600; border-radius: 2px;
    transition: all .25s; text-decoration: none;
    background: var(--ink); color: var(--gesso);
}
.btn-primary:hover { background: var(--ink-soft); color: var(--gesso); transform: translateY(-1px); }
.btn-primary svg { transition: transform .25s; }
.btn-primary:hover svg { transform: translateX(3px); }

.btn-ghost {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 15px 28px; font-size: 11px; letter-spacing: .18em;
    text-transform: uppercase; font-weight: 600; border-radius: 2px;
    transition: all .25s; text-decoration: none;
    border: .5px solid var(--ink-soft); color: var(--ink-soft); background: none;
}
.btn-ghost:hover { background: var(--ink); color: var(--gesso); border-color: var(--ink); }

.btn-accent {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 15px 28px; font-size: 11px; letter-spacing: .18em;
    text-transform: uppercase; font-weight: 600; border-radius: 2px;
    transition: all .25s; text-decoration: none;
    background: var(--plein); color: var(--ink);
}
.btn-accent:hover { filter: brightness(1.06); }

.link-cta {
    font-size: 11px; letter-spacing: .18em; text-transform: uppercase;
    font-weight: 600; color: var(--ink); display: inline-flex;
    align-items: center; gap: 8px; border-bottom: .5px solid var(--ink);
    padding-bottom: 3px; transition: gap .25s, color .25s, border-color .25s;
    text-decoration: none;
}
.link-cta:hover { gap: 14px; color: var(--plein); border-color: var(--plein); }

.chip {
    font-size: 10px; letter-spacing: .18em; text-transform: uppercase;
    font-weight: 600; color: var(--ink-mute); padding: 7px 14px;
    border: .5px solid var(--rule); background: var(--gesso);
    border-radius: 30px; transition: all .25s; cursor: pointer;
    display: inline-flex; align-items: center; text-decoration: none;
}
.chip:hover { color: var(--ink); border-color: var(--ink-soft); background: var(--canvas); }
.chip.on { background: var(--ink); color: var(--gesso); border-color: var(--ink); }
.chip .yr { font-family: var(--f-mono); font-size: 9px; color: var(--ink-faint); margin-left: 8px; letter-spacing: .04em; }
.chip.on .yr { color: var(--ink-vapor); }

/* =====================================================
   TI — Body: warm canvas background with painterly gradients
   ===================================================== */
body,
main {
    background-color: var(--ti-canvas) !important;
    background-image:
        radial-gradient(
            circle at 12% 18%,
            rgba(216, 154, 120, 0.06) 0,
            transparent 38%
        ),
        radial-gradient(
            circle at 88% 72%,
            rgba(107, 142, 179, 0.05) 0,
            transparent 44%
        ),
        radial-gradient(
            circle at 30% 90%,
            rgba(154, 139, 184, 0.04) 0,
            transparent 48%
        );
    background-attachment: fixed;
}

/* =====================================================
   TI — Page container tweaks
   ===================================================== */
.homepage-site-widgets {
    background: transparent;
}
/* homepage-impressionist-widgets is the test-page variant class */
.homepage-impressionist-widgets {
    background: transparent !important;
}

/* Bootstrap overrides → impressionist squared look */
.homepage-site-widgets .rounded-3,
.homepage-impressionist-widgets .rounded-3 {
    border-radius: 2px !important;
}
.homepage-site-widgets .border,
.homepage-impressionist-widgets .border {
    border: 0.5px solid var(--rule) !important;
}
.homepage-impressionist-widgets hr {
    border-color: var(--rule) !important;
    opacity: 1 !important;
    border-width: 0.5px !important;
}

/* =====================================================
   TI — Widget base class overrides (wa-* classes)
   ===================================================== */

.wa-eyebrow {
    font-family: var(--f-ui);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--plein);
    margin-bottom: 10px;
}
.wa-heading-card {
    font-family: var(--f-display);
    font-size: clamp(18px, 2vw, 26px);
    margin-bottom: 6px;
    font-weight: 400;
}

.w-overlay-bottom {
    color: var(--gesso);
    pointer-events: none;
    font-family: var(--f-ui);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.1em;
    padding: 0.5rem 0.6rem;
}

/* Editorial/large heading */
.wa-heading-editorial {
    font-family: var(--f-display) !important;
    font-size: clamp(28px, 3.5vw, 46px) !important;
    font-weight: 400 !important;
    color: var(--ink) !important;
    letter-spacing: -0.005em !important;
    line-height: 1.05 !important;
}

/* Body copy — Cormorant Garamond */
.wa-body {
    font-family: var(--f-edit);
    font-size: 13px;
    color: var(--ink-mute);
    line-height: 1.55;
    margin-top: 10px;
}

/* Primary button — ink dark / gesso text */
.wa-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px 24px !important;
    font-family: var(--f-ui) !important;
    font-size: 11px !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 2px !important;
    background: var(--ink) !important;
    color: var(--gesso) !important;
    transition:
        background 0.25s,
        transform 0.25s !important;
    text-decoration: none !important;
    border: none !important;
}
.homepage-impressionist-widgets .wa-btn:hover {
    background: var(--ink-soft) !important;
    color: var(--gesso) !important;
    transform: translateY(-1px) !important;
}

/* =====================================================
   TI — Movement masterclass slider widget
   ===================================================== */
.widget-mov-4-slider,
.widget-mpl-slider {
    background: var(--ti-paper) !important;
    border-color: var(--ti-rule) !important;
    border-radius: 2px !important;
    box-shadow: var(--shadow-sm) !important;
}

/* Portrait: framed with paper surround + ruled border */
.widget-mov-4-slider__portrait {
    background: var(--ti-paper) !important;
    border-radius: 0 !important;
    border: 0.5px solid var(--ti-rule) !important;
    box-shadow: var(--shadow-xl) !important;
    overflow: hidden !important;
    position: relative !important;
}

/* Inner-frame overlay using ::before — creates the mat effect on top of the image */
.widget-mov-4-slider__portrait::before {
    content: "";
    position: absolute;
    inset: 0;
    border: 10px solid var(--ti-paper);
    z-index: 2;
    pointer-events: none;
}

/* Keep artist name overlay above the frame */
.widget-mov-4-slider__portrait .w-overlay-bottom {
    z-index: 3 !important;
    background: linear-gradient(
        to top,
        rgba(42, 36, 56, 0.72) 0%,
        transparent 100%
    ) !important;
}

.widget-mov-4-slider__name {
    font-family: var(--ti-f-edit) !important;
    font-style: italic !important;
    font-size: 12.5px !important;
    color: #fff !important;
    letter-spacing: 0.02em !important;
    font-weight: 400 !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
}

/* Heading: large display serif */
.widget-mov-4-slider__head {
    font-family: var(--ti-f-display) !important;
    font-size: clamp(1.25rem, 2.4vw, 1.85rem) !important;
    font-weight: 400 !important;
    color: var(--ti-ink) !important;
    letter-spacing: -0.005em !important;
    line-height: 1.15 !important;
}

.widget-mov-4-slider__head strong {
    display: block !important;
    font-family: var(--font-title-accent) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.24em !important;
    text-transform: uppercase !important;
    color: var(--ti-ochre) !important;
    margin-bottom: 0.5rem !important;
}

/* CTA link: understated uppercase with underline sweep */
.widget-mov-4-slider__cta,
.widget-mpl-slider__cta {
    font-size: 11px !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    color: var(--ti-ink) !important;
    border-bottom: 0.5px solid var(--ti-ink) !important;
    padding-bottom: 3px !important;
    text-decoration: none !important;
    transition:
        color 0.25s,
        border-color 0.25s !important;
}
.widget-mov-4-slider__cta {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.widget-mov-4-slider__cta:hover,
.widget-mpl-slider__cta:hover {
    color: var(--ti-plein) !important;
    border-color: var(--ti-plein) !important;
    text-decoration: none !important;
}

/* Artwork slide image: inner-frame effect */
.widget-mov-4-slide-img-wrap,
.mpl-slide-img-wrap {
    outline: 4px solid var(--ti-paper);
    outline-offset: -5px;
    background: var(--ti-shadow-c);
    border: 0.5px solid var(--ti-rule);
    overflow: hidden;
}
.widget-mov-4-slide-img-wrap {
    position: relative;
}

/* =====================================================
   TI — Most popular large slider widget
   ===================================================== */
.widget-mpl-slider__title {
    font-family: var(--ti-f-display) !important;
    font-size: clamp(1.4rem, 2.8vw, 2rem) !important;
    font-weight: 400 !important;
    color: var(--ti-ink) !important;
    letter-spacing: -0.005em !important;
    line-height: 1.1 !important;
}

.widget-mpl-slider .small.text-muted {
    font-family: var(--ti-f-edit) !important;
    font-style: italic !important;
    font-size: 15px !important;
    color: var(--ti-ink-mute) !important;
}

/* MPL slide image: inner-frame */
/* =====================================================
   TI — Artwork of the day widget
   ===================================================== */
.widget-famous-artwork-day {
    background: var(--ti-linen) !important;
    border-color: var(--ti-rule) !important;
    border-radius: 2px !important;
    box-shadow: 0 4px 20px -8px rgba(42, 36, 56, 0.12) !important;
}

.widget-famous-artwork-day__heading {
    font-family: var(--ti-f-display) !important;
    font-size: clamp(1.4rem, 2.8vw, 2rem) !important;
    font-weight: 400 !important;
    color: var(--ti-ink) !important;
    letter-spacing: -0.005em !important;
}

.widget-famous-artwork-day__figure {
    border-radius: 0 !important;
    border: 0.5px solid var(--ti-rule) !important;
    background: var(--ti-shadow-c) !important;
}

.widget-famous-artwork-day__meta {
    font-family: var(--ti-f-edit) !important;
    font-size: 15px !important;
    line-height: 1.65 !important;
    color: var(--ti-ink-mute) !important;
    font-style: italic !important;
}

/* =====================================================
   TI — Swiper artwork slides: card styling
   ===================================================== */
.artist_slid_box {
    background: transparent !important;
}

/* Title area below each artwork */
.view_all_art {
    padding-top: 8px !important;
    background: transparent !important;
}

.view_all_art a {
    font-family: var(--ti-f-edit) !important;
    font-style: italic !important;
    font-size: 13px !important;
    color: var(--ti-ink-soft) !important;
    line-height: 1.35 !important;
}

.view_all_art a:hover {
    color: var(--ti-plein) !important;
}

/* Artist name below artwork */
.vincent_color {
    font-family: var(--font-title-accent) !important;
    font-size: 10px !important;
    letter-spacing: 0.06em !important;
    color: var(--ti-ink-faint) !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    margin-bottom: 3px !important;
}

/* =====================================================
   TI — Small translated field widget (tag/category links)
   ===================================================== */
.widget-stf {
    background: var(--ti-paper) !important;
    border-color: var(--ti-rule) !important;
    border-radius: 2px !important;
}

/* =====================================================
   TI — Identify masterpiece / quiz widgets
   ===================================================== */
.widget-identify-masterpiece,
.widget-quiz-artist {
    background: var(--ti-gesso) !important;
    border-color: var(--ti-rule) !important;
    border-radius: 2px !important;
}

/* =====================================================
   TI — Curated choice widget
   ===================================================== */
.widget-curated-choice,
[class^="curated-"] {
    background: var(--ti-paper) !important;
    border-color: var(--ti-rule) !important;
    border-radius: 2px !important;
}

/* =====================================================
   TI — Museum widget
   ===================================================== */
.widget-museum-4,
[class^="widget-museum"] {
    background: var(--ti-linen) !important;
    border-color: var(--ti-rule) !important;
    border-radius: 2px !important;
}

/* =====================================================
   TI — Overlay labels on artwork slides (movement name badge)
   ===================================================== */
.mpl-slide-group-label,
.widget-mov-4-slide-label {
    background: rgba(42, 36, 56, 0.6) !important;
    font-family: var(--font-title-accent) !important;
    font-size: 9px !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    border-radius: 0 !important;
    padding: 0.28em 0.7em !important;
}

/* =====================================================
   TI — Swiper navigation: warm accent color
   ===================================================== */
.swiper-button-next::after,
.swiper-button-prev::after {
    color: var(--ti-ochre) !important;
}

/* =====================================================
   TI — Paragraph text: editorial feel
   ===================================================== */
.widget-mov-4-slider p.small,
.widget-mpl-slider p.small {
    font-family: var(--ti-f-edit) !important;
    font-size: 15px !important;
    font-style: italic !important;
    color: var(--ti-ink-mute) !important;
    line-height: 1.6 !important;
}

/* ── Shared card atoms: kicker / body ── */
.w-card__kicker {
    font-family: var(--f-ui);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--ochre);
    margin-bottom: 12px;
}
.w-card__body {
    font-family: var(--f-edit);
    font-size: 15px;
    line-height: 1.6;
    color: var(--ink-soft);
}
.stf-label {
    font-family: var(--f-ui);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    padding: 0.35rem 0.45rem;
    text-align: center;
}

/* ── Museum Masterpieces card ── */
.museum-card {
    background: var(--gesso);
    border: 0.5px solid var(--rule);
    padding: 22px;
}
.museum-title {
    font-family: var(--f-display);
    font-size: clamp(18px, 2vw, 26px);
    color: var(--ink);
    margin-bottom: 6px;
    font-weight: 400;
}
.museum-subtitle {
    font-family: var(--f-edit);
    font-size: 14px;
    color: var(--plein);
    font-style: italic;
    margin-bottom: 14px;
}
.museum-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 14px;
}
.museum-cell {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    background: var(--shadow);
}
.museum-cta {
    font-family: var(--f-ui);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--plein);
    border-bottom: 0.5px solid var(--plein);
    padding-bottom: 1px;
    text-decoration: none;
    display: inline-block;
}
.museum-cta:hover {
    color: var(--ochre);
    border-color: var(--ochre);
}

/* =====================================================
   TI — Search card artwork title/artist (list pages bleed-in)
   ===================================================== */
.search_card .search_img {
    border: 0.5px solid var(--ti-rule) !important;
}

/* =====================================================
   TI — Footer: dark ink (matching reference)
   ===================================================== */
.footer-widget,
footer {
    border-top: 0.5px solid var(--ti-rule) !important;
}

/* ═══════════════════════════════════════════════════════
   TI — ANNOUNCEMENT BAR  (.ti-ann)
   ═══════════════════════════════════════════════════════ */
.ti-ann {
    background: var(--ink);
    color: var(--gesso);
    text-align: center;
    padding: 11px 0;
    font-family: var(--f-ui);
    font-size: 11px;
    letter-spacing: 0.06em;
    font-weight: 400;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.1);
    position: relative;
}
.ti-ann em {
    font-family: var(--f-edit);
    font-style: italic;
    color: var(--plein);
    font-size: 13px;
    margin-right: 6px;
}
.ti-ann a {
    margin-left: 14px;
    border-bottom: 0.5px solid var(--ink-faint);
    padding-bottom: 1px;
    color: #fff;
    font-size: 11px;
}
.ti-ann a:hover {
    border-color: var(--plein);
    color: var(--plein);
}
/* Suppress global dual overline/underline sweep inside the ann bar */
.ti-ann a::before,
.ti-ann a::after {
    content: none !important;
}
/* utility links on left / selectors on right */
.ti-ann-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    max-width: 1380px;
    margin-inline: auto;
}
.ti-ann-left {
    display: flex;
    gap: 20px;
    flex-shrink: 0;
}
.ti-ann-left a {
    font-size: 10px;
    letter-spacing: 0.1em;
    color: var(--ink-vapor);
    border-bottom: none;
    margin-left: 0;
    padding-bottom: 0;
}
.ti-ann-left a:hover {
    color: var(--plein);
    border-color: transparent;
}
.ti-ann-center {
    flex: 1;
    text-align: center;
}
.ti-ann-right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}
/* ═══════════════════════════════════════════════════════
   TI — DROPDOWN MENUS  (.top_dropdown_*)
   ═══════════════════════════════════════════════════════ */

/* ── Dropdown menu list (global) ── */
.top_dropdown_menu_list_block {
    background: var(--paper) !important;
    border: 0.5px solid var(--rule) !important;
    border-radius: 0 0 2px 2px !important;
    box-shadow: var(--shadow-lg) !important;
    padding: 6px 0 !important;
    margin: 0 !important;
    min-width: 180px !important;
    max-height: 280px !important;
    overflow-y: auto !important;
    list-style: none !important;
}

.top_dropdown_toggle_button_main_style {
    color: var(--ink-vapor);
    background: transparent;
    border-color: rgba(255, 255, 255, 0.18) !important;
    font-size: 10px !important;
    font-family: var(--f-ui);
    font-weight: 400;
}
/* ── List items ── */
.top_dropdown_item_list_element {
    margin: 0 !important;
    padding: 0 !important;
}

/* ── Item buttons ── */
.top_dropdown_item_button_clickable {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 10px 16px !important;
    text-align: left !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    font-family: var(--f-ui) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.02em !important;
    color: var(--ink-soft) !important;
    transition: all 0.18s ease !important;
}
.top_dropdown_item_button_clickable:hover {
    background: var(--linen) !important;
    color: var(--ink) !important;
}

/* ── Active / selected item ── */
.top_dropdown_item_active_selected_style {
    color: var(--ochre) !important;
    background: var(--gesso) !important;
    font-weight: 600 !important;
}

/* ── Flag icons inside dropdown items ── */
.top_dropdown_item_button_clickable img.top_dropdown_flag_icon_image_style {
    width: 22px !important;
    height: 15px !important;
    border-radius: 2px !important;
    flex-shrink: 0 !important;
    object-fit: cover !important;
}

/* ── Scrollbar ── */
.top_dropdown_menu_list_block::-webkit-scrollbar {
    width: 4px;
}
.top_dropdown_menu_list_block::-webkit-scrollbar-track {
    background: transparent;
}
.top_dropdown_menu_list_block::-webkit-scrollbar-thumb {
    background: var(--rule-soft);
    border-radius: 2px;
}

/* ── Announcement bar: menu list right-aligned ── */
.ti-ann-right .top_dropdown_menu_list_block {
    right: 0;
    left: auto;
    border-radius: 0 0 2px 2px;
    min-width: 150px;
    font-size: 11px;
    box-shadow: var(--shadow-lg) !important;
}

/* ═══════════════════════════════════════════════════════
   TI — STICKY HEADER  (.header_container override)
   ═══════════════════════════════════════════════════════ */
.header_container {
    position: sticky !important;
    top: 0 !important;
    z-index: 60 !important;
    background: rgba(244, 238, 226, 0.94) !important;
    backdrop-filter: saturate(140%) blur(8px) !important;
    -webkit-backdrop-filter: saturate(140%) blur(8px) !important;
    border-bottom: 0.5px solid var(--rule) !important;
}

/* Remove the old .main-header inner border — it now sits inside the sticky
   container so the only visible border should be at the container's edge */
.main-header {
    border-bottom: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 32px !important;
    padding-block: 16px !important;
    min-height: 72px !important;
}
/* The old broad `footer` selector adds an unwanted border-top to .ti-foot;
   neutralise it here so only the chip-subnav hairline is visible */
footer.ti-foot {
    border-top: none !important;
}

/* ═══════════════════════════════════════════════════════
   TI — LOGO  (.ti-logo)
   ═══════════════════════════════════════════════════════ */
.ti-logo {
    font-family: var(--f-display);
    font-size: 28px;
    line-height: 1;
    color: var(--ink);
    letter-spacing: 0.005em;
    display: flex;
    align-items: baseline;
    gap: 2px;
    flex-shrink: 0;
    text-decoration: none;
}
.ti-logo:hover {
    color: var(--ink);
}
/* suppress global hover lines on logo */
.ti-logo::before,
.ti-logo::after {
    content: none !important;
}
.ti-logo-block {
    display: flex;
    flex-direction: column;
}
.ti-dot {
    width: 6px;
    height: 6px;
    background: var(--plein);
    border-radius: 50%;
    display: inline-block;
    transform: translateY(-4px);
    margin: 0 1px;
}
.ti-sub {
    display: block;
    font-family: var(--f-ui);
    font-size: 9px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--ink-mute);
    margin-top: 3px;
    font-weight: 500;
    line-height: 1;
}

/* ═══════════════════════════════════════════════════════
   TI — SEARCH BAR  (.ti-search)
   ═══════════════════════════════════════════════════════ */
.ti-search {
    flex: 1 1 auto;
    max-width: none;
    display: flex;
    align-items: center;
    background: var(--paper);
    border: 0.5px solid var(--rule);
    border-radius: 2px;
    padding: 0 6px 0 16px;
    transition: border-color 0.2s;
    margin-left: 0;
    margin-right: 0;
}
.ti-search:focus-within {
    border-color: var(--monet);
}
.ti-search input {
    flex: 1;
    border: 0;
    outline: 0;
    background: transparent;
    height: 42px;
    font: 400 14px var(--f-edit);
    font-style: italic;
    color: var(--ink);
    letter-spacing: 0.01em;
}
.ti-search input::placeholder {
    color: var(--ink-faint);
    font-style: italic;
    font-family: var(--f-edit);
    font-size: 14px;
}
.ti-search button {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink-soft);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}
.ti-search button svg {
    width: 16px;
    height: 16px;
}

/* ═══════════════════════════════════════════════════════
   TI — CART BUTTON  (.ti-cart-btn)
   ═══════════════════════════════════════════════════════ */
.ti-cart-btn {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    border: 0.5px solid var(--rule) !important;
    padding: 8px 14px !important;
    border-radius: 2px !important;
    font-family: var(--f-ui) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: var(--ink-soft) !important;
    text-decoration: none !important;
    transition:
        border-color 0.2s,
        color 0.2s !important;
    white-space: nowrap;
}
.ti-cart-btn:hover {
    border-color: var(--ink-soft) !important;
    color: var(--ink) !important;
}
.ti-cart-cnt {
    font-family: var(--f-mono) !important;
    font-size: 10px !important;
    background: var(--ink) !important;
    color: var(--paper) !important;
    padding: 1px 6px !important;
    border-radius: 8px !important;
    letter-spacing: 0.04em !important;
    display: inline-block !important;
}

/* ═══════════════════════════════════════════════════════
   TI — HEADER ACTION ICONS  (.header-actions / .icon-btn)
   Vertical icon-buttons (icon + label) with count badges:
   Wishlist · Account (dropdown) · Cart · mobile toggle.
   ═══════════════════════════════════════════════════════ */
.main-header {
    gap: 36px !important;
}
.header-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    flex-shrink: 0;
}
.header-actions .icon-btn {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 8px 12px;
    color: var(--ink-soft);
    text-decoration: none;
    background: none;
    border: 0;
    cursor: pointer;
    transition: color 0.2s;
}
.header-actions .icon-btn:hover {
    color: var(--ink);
}
.header-actions .icon-btn::before,
.header-actions .icon-btn::after {
    content: none !important;
}
.header-actions .icon-btn svg {
    width: 21px;
    height: 21px;
    stroke-width: 1.4;
}
.header-actions .icon-btn .ib-lbl {
    font-family: var(--f-ui);
    font-size: 8.5px;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--ink-mute);
    transition: color 0.2s;
}
.header-actions .icon-btn:hover .ib-lbl {
    color: var(--ink-soft);
}
.header-actions .icon-btn .count {
    position: absolute;
    top: 2px;
    right: 6px;
    background: var(--plein);
    color: var(--paper);
    font-family: var(--f-mono);
    font-size: 9px;
    line-height: 1;
    min-width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    padding: 0 4px;
    letter-spacing: 0;
}
.header-actions .icon-btn--cart .count {
    background: var(--ink);
}
.header-actions .aps-cart-icon-wrap {
    display: flex;
    align-items: center;
}

/* Account auth visual (guest icon ⇄ logged-in initial overlay) */
.aps-user-auth-visual {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 21px;
    height: 21px;
}
.aps-user-auth-visual .aps-user-initial {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--f-display);
    font-size: 14px;
    color: var(--ink);
    line-height: 1;
}
.aps-user-initial--compact {
    font-size: 10px !important;
}
.aps-header-auth--hidden {
    display: none !important;
}

/* ── Account dropdown panel (.dd-light / .dd-menu) ── */
.ti-acct {
    position: relative;
}
.ti-acct .dd-menu {
    position: absolute;
    top: calc(100% + 2px);
    right: 0;
    min-width: 262px;
    background: var(--paper);
    border: 0.5px solid var(--rule);
    box-shadow: var(--shadow-xl);
    padding: 8px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: all 0.22s ease;
    z-index: 90;
}
.ti-acct:hover .dd-menu,
.ti-acct:focus-within .dd-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.ti-acct .acct-head {
    padding: 14px 12px;
    display: flex;
    gap: 12px;
    align-items: center;
    border-bottom: 0.5px solid var(--rule-soft);
    margin-bottom: 6px;
}
.ti-acct .acct-head .av {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--ink);
    color: var(--gesso);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--f-display);
    font-size: 18px;
    flex-shrink: 0;
}
.ti-acct .acct-head .who b {
    display: block;
    font-family: var(--f-display);
    font-size: 16px;
    color: var(--ink);
    font-weight: 400;
    letter-spacing: 0.005em;
}
.ti-acct .acct-head .who span {
    font-family: var(--f-ui);
    font-size: 11px;
    color: var(--ink-mute);
    letter-spacing: 0.02em;
}
.ti-acct .acct-cta {
    display: flex;
    gap: 8px;
    padding: 8px 4px 4px;
}
.ti-acct .acct-cta .btn {
    flex: 1;
    justify-content: center;
    padding: 11px 10px;
    font-size: 10px;
}
.ti-acct .dd-menu .it {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 9px 12px;
    font-family: var(--f-ui);
    font-size: 12px;
    letter-spacing: 0.03em;
    color: var(--ink-soft);
    border-radius: 2px;
    transition: background 0.18s, color 0.18s;
    text-decoration: none;
    font-weight: 500;
}
.ti-acct .dd-menu .it::before,
.ti-acct .dd-menu .it::after {
    content: none !important;
}
.ti-acct .dd-menu .it:hover {
    background: var(--linen);
    color: var(--ink);
}
.ti-acct .dd-menu .it svg {
    width: 15px;
    height: 15px;
    stroke-width: 1.5;
    color: var(--ink-mute);
    flex-shrink: 0;
}
.ti-acct .dd-menu .sep {
    height: 0.5px;
    background: var(--rule-soft);
    margin: 6px 4px;
}
/* Guest ⇄ authenticated menu blocks (toggled by header.js via the initials cookie) */
.ti-acct .ti-acct-auth {
    display: none;
}
.ti-acct.is-authenticated .ti-acct-guest {
    display: none;
}
.ti-acct.is-authenticated .ti-acct-auth {
    display: block;
}

/* ═══════════════════════════════════════════════════════
   TI — UTILITY-BAR NOTE  (.ti-util-note)
   ═══════════════════════════════════════════════════════ */
.ti-util-note {
    font-family: var(--f-ui);
    font-size: 11px;
    letter-spacing: 0.04em;
    color: var(--ink-vapor);
    align-items: center;
    gap: 8px;
}
.ti-util-note em {
    font-family: var(--f-edit);
    font-style: italic;
    color: var(--plein);
    font-size: 13px;
}
.ti-util-note .ti-ann-country {
    color: #fff;
    font-weight: 500;
}

/* ═══════════════════════════════════════════════════════
   TI — SCROLL-CONDENSE  (body.scrolled)
   Utility bar + nav fold away, logo shrinks, header gains a drop shadow.
   ═══════════════════════════════════════════════════════ */
.header_container,
.main-header,
.ti-ann,
.header_container .navbar {
    transition:
        max-height 0.55s cubic-bezier(0.16, 1, 0.3, 1),
        opacity 0.35s ease,
        transform 0.55s cubic-bezier(0.16, 1, 0.3, 1),
        padding-block 0.5s cubic-bezier(0.16, 1, 0.3, 1),
        box-shadow 0.5s ease;
}
.ti-ann {
    max-height: 60px;
    overflow: visible;
}
body.scrolled .ti-ann {
    max-height: 0;
    padding-block: 0;
    opacity: 0;
    transform: translateY(-12px);
    overflow: hidden;
    pointer-events: none;
}
body.scrolled .header_container {
    box-shadow: 0 16px 38px -24px rgba(42, 36, 56, 0.55) !important;
}
body.scrolled .main-header {
    padding-block: 10px !important;
}
body.scrolled .main-header .logo img {
    height: 40px;
}
.header_container .navbar.d-lg-block {
    max-height: 60px;
    overflow: visible;
}
body.scrolled .header_container .navbar.d-lg-block {
    max-height: 0;
    opacity: 0;
    transform: translateY(-14px);
    overflow: hidden;
    pointer-events: none;
    border-top-color: transparent !important;
}

/* ═══════════════════════════════════════════════════════
   TI — MAIN NAV  (.navbar override)
   ═══════════════════════════════════════════════════════ */
.header_container .navbar {
    background: transparent !important;
    border-bottom: none !important;
    border-top: 0.5px solid var(--rule-soft) !important;
    padding: 0 !important;
}
.header_container .navbar .container {
    display: flex;
    align-items: center;
    justify-content: center;
}
.header_container .navbar .nav-menu {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 100%;
}
/* Neutralise global hit-area negative margins — they inflate flex width and wrap titles */
.header_container .navbar .nav-menu > li,
.header_container .navbar .nav-menu > li:first-child,
.header_container .navbar .nav-menu > li:last-child,
.header_container .navbar .nav-menu > li:not(:first-child):not(:last-child) {
    padding: 10px 0 0;
    margin: 0;
    flex: 0 1 auto;
    min-width: 0;
}
.header_container .navbar .nav-menu > li > a {
    font-family: var(--f-ui) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--ink-soft) !important;
    padding: 14px 10px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    position: relative !important;
    transition: color 0.25s !important;
    white-space: nowrap;
}
.header_container .navbar .nav-menu > li > a:hover,
.header_container .navbar .nav-menu > li:hover > a,
.header_container .navbar .nav-menu > li > a.active {
    color: var(--ink) !important;
}
/* Animated underline — sweeps in on hover / active (replaces the active-only hairline) */
.header_container .navbar .nav-menu > li > a::after {
    content: "" !important;
    position: absolute !important;
    left: 10px !important;
    right: 10px !important;
    bottom: 6px !important;
    height: 2px !important;
    background: var(--plein) !important;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.3s ease;
}
.header_container .navbar .nav-menu > li > a:hover::after,
.header_container .navbar .nav-menu > li:hover > a::after,
.header_container .navbar .nav-menu > li > a.active::after {
    transform: scaleX(1) !important;
}
/* suppress global before sweep on nav items */
.header_container .navbar .nav-menu > li > a::before {
    content: none !important;
}
/* Caret on dropdown parents (rotates open on hover) */
.header_container .navbar .nav-menu > li.dropdown > a.nav-dropdown-toggle::before {
    content: "" !important;
    width: 7px;
    height: 7px;
    border-right: 1.6px solid currentColor;
    border-bottom: 1.6px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    opacity: 0.55;
    transition: transform 0.25s, opacity 0.25s;
    order: 2;
}
.header_container .navbar .nav-menu > li.dropdown:hover > a.nav-dropdown-toggle::before {
    transform: rotate(225deg) translateY(2px);
    opacity: 0.9;
}
.header_container .navbar .nav-menu > li.dropdown {
    align-self: stretch;
    display: flex;
    align-items: center;
}
.header_container .navbar .nav-menu .dropdown-content.full-width {
    top: calc(100% + 4px);
    box-shadow: 0 4px 18px -10px rgba(42, 36, 56, 0.1);
}
/* Soft page blur while a nav mega-menu is open */
main.blurred {
    filter: blur(3px);
    opacity: 0.88;
    transition: filter 0.25s ease-in-out, opacity 0.25s ease-in-out;
}
/* Editorial serif links inside the mega-menu dropdown */
.header_container .navbar .dropdown-content .column a,
.header_container .navbar .dropdown-inner .column a {
    font-family: var(--f-edit) !important;
    font-size: 16px !important;
    letter-spacing: 0.01em !important;
    text-transform: none !important;
    color: var(--ink-soft) !important;
    transition: color 0.16s, padding-left 0.2s !important;
}
.header_container .navbar .dropdown-content .column a:hover,
.header_container .navbar .dropdown-inner .column a:hover {
    color: var(--ink) !important;
    padding-left: 6px !important;
}

/* ═══════════════════════════════════════════════════════
   TI — CHIP SUB-NAV  (.ti-subnav)
   ═══════════════════════════════════════════════════════ */
.ti-subnav {
    display: block;
    border-top: 0.5px solid var(--rule-soft);
    border-bottom: 0.5px solid var(--rule-soft);
    background: var(--paper);
    width: 100vw;
    margin-left: calc(-50vw + 50%);
}
.ti-subnav--page {
    border-top: 0;
    border-radius: 2px;
    border: 0.5px solid var(--rule-soft);
}
.ti-subnav--page .ti-subnav-inner {
    justify-content: flex-start;
}
.ti-subnav-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding-block: 14px;
    flex-wrap: wrap;
}
.ti-chip {
    font-family: var(--f-ui);
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--ink-mute);
    padding: 7px 14px;
    border: 0.5px solid var(--rule);
    background: var(--gesso);
    border-radius: 30px;
    transition: all 0.25s;
    text-decoration: none;
    white-space: nowrap;
}
.ti-chip::before,
.ti-chip::after {
    content: none !important;
}
.ti-chip:hover {
    color: var(--ink);
    border-color: var(--ink-soft);
    background: var(--canvas);
}
.ti-chip.on {
    background: var(--ink);
    color: var(--gesso);
    border-color: var(--ink);
}
.ti-chip.on:hover {
    color: var(--gesso);
}
.ti-yr {
    font-family: var(--f-mono);
    font-size: 9px;
    color: var(--ink-faint);
    margin-left: 8px;
    letter-spacing: 0.04em;
}
.ti-chip.on .ti-yr {
    color: var(--ink-vapor);
}

/* ═══════════════════════════════════════════════════════
   TI — FOOTER  (.ti-foot)
   ═══════════════════════════════════════════════════════ */
.ti-foot {
    background: var(--ink);
    color: var(--ink-vapor);
    padding: 80px 0 0;
    border-top: none !important;
}
.ti-foot-inner {
    max-width: 1380px;
    margin-inline: auto;
}
.ti-foot-top {
    display: grid;
    grid-template-columns: 1.4fr repeat(4, 1fr);
    gap: 60px;
    padding-bottom: 60px;
    border-bottom: 0.5px solid rgba(255, 255, 255, 0.14);
}
/* Brand column */
.ti-foot-brand .ti-logo {
    color: var(--gesso);
}
.ti-foot-brand .ti-sub {
    color: var(--ink-vapor);
}
.ti-foot-brand p {
    font-family: var(--f-edit);
    font-size: 15px;
    line-height: 1.6;
    color: var(--ink-vapor);
    margin-top: 20px;
    max-width: 340px;
}
.ti-foot-badges {
    margin-top: 28px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.ti-foot-badges span {
    font-family: var(--f-mono);
    font-size: 9px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--plein);
    padding: 5px 10px;
    border: 0.5px solid rgba(216, 154, 120, 0.3);
}
/* Social icons */
.ti-foot-brand .social_icons {
    margin-top: 24px;
}
.ti-foot-brand .social_icons a {
    margin-right: 12px;
    opacity: 0.65;
    transition: opacity 0.2s;
}
.ti-foot-brand .social_icons a:hover {
    opacity: 1;
}
/* Messaging links */
.ti-foot-brand .messaging_links {
    margin-top: 18px !important;
}
.ti-foot-brand .messaging_links a {
    color: var(--ink-vapor) !important;
    font-family: var(--f-ui);
    font-size: 12px;
    transition: color 0.2s;
}
.ti-foot-brand .messaging_links a:hover {
    color: var(--plein) !important;
}
/* Footer link columns */
.ti-foot-col h4 {
    font-family: var(--f-display);
    font-size: 18px;
    color: var(--gesso);
    font-weight: 400;
    letter-spacing: 0.005em;
    margin-bottom: 22px;
    line-height: 1.1;
}
.ti-foot-col ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
    margin: 0;
}
.ti-foot-col a {
    font-family: var(--f-ui);
    font-size: 13px;
    color: var(--ink-vapor);
    letter-spacing: 0.02em;
    transition: color 0.2s;
    text-decoration: none;
}
.ti-foot-col a:hover {
    color: var(--plein) !important;
}
/* suppress global hover lines in footer cols */
.ti-foot-col a::before,
.ti-foot-col a::after {
    content: none !important;
}

/* ═══════════════════════════════════════════════════════
   TI — BOTTOM BAR  (.ti-foot-bot)
   ═══════════════════════════════════════════════════════ */
.ti-foot-bot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 28px 0 32px;
    gap: 24px;
    flex-wrap: wrap;
    border-top: none;
}
.ti-foot-bot .legal {
    font-family: var(--f-ui);
    font-size: 11px;
    color: var(--ink-faint);
    letter-spacing: 0.06em;
    line-height: 1.5;
}
.ti-foot-bot .pay {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}
.ti-foot-bot .pay span {
    font-family: var(--f-mono);
    font-size: 10px;
    letter-spacing: 0.14em;
    color: var(--ink-vapor);
    padding: 5px 10px;
    border: 0.5px solid rgba(255, 255, 255, 0.14);
    text-transform: uppercase;
}

/* Bottom bar outer wrapper */
.ti-bot-bar-wrap {
    background: var(--ink);
    padding-inline: clamp(20px, 4vw, 64px);
}
.ti-bot-bar-inner {
    max-width: 1380px;
    margin-inline: auto;
}

/* ═══════════════════════════════════════════════════════
   TI — MOBILE MENU
   ═══════════════════════════════════════════════════════ */
.menu_icon {
    display: none;
    color: var(--ink-soft);
    background: var(--paper);
    width: 42px;
    height: 42px;
    text-align: center;
    line-height: 42px;
    border-radius: 2px;
    border: 0.5px solid var(--rule);
    cursor: pointer;
    font-size: 16px;
    flex-shrink: 0;
    transition:
        background 0.2s,
        color 0.2s;
}
.menu_icon:hover {
    background: var(--linen);
    color: var(--ochre);
}

.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(42, 36, 56, 0.45);
    z-index: 99;
    opacity: 0;
    transition: opacity 0.3s ease;
    display: none;
    pointer-events: none;
}

.side_nav {
    position: fixed;
    top: 0;
    left: -285px;
    width: 285px;
    height: 100%;
    height: 100dvh;
    background: var(--canvas) !important;
    padding: 28px 24px;
    transition: left 0.32s ease;
    z-index: 1000;
    overflow-y: auto;
    box-shadow: var(--shadow-lg);
    overflow-x: hidden;
}
.side_nav.open {
    left: 0;
}
.side_nav .close_btn {
    position: absolute;
    top: 16px;
    right: 18px;
    font-size: 22px;
    cursor: pointer;
    color: var(--ink-soft) !important;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
}
.side_nav .close_btn:hover {
    color: var(--plein) !important;
}

.side_nav .side_inner-nav {
    display: block;
    margin-top: 52px;
}
.side_nav .side_inner-nav .top-bar {
    background: var(--linen) !important;
    border-radius: 2px;
    margin-top: 8px;
}
.side_nav .side_inner-nav .top-bar a {
    color: var(--ink-soft) !important;
    font-size: 12px !important;
}
.side_nav .side_inner-nav .top-bar .topbar_menu {
    display: flex;
    gap: 16px;
}
.side_nav .side_inner-nav .top-bar .topright_side {
    display: flex;
    align-items: center;
    gap: 10px;
}
.side_nav .side_inner-nav .top-bar .topright_side a {
    color: var(--ink-mute) !important;
}

.side_nav .ti-search {
    max-width: 100%;
    margin: 0 0 18px 0;
}
.side_nav .nav-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}
.side_nav .nav-menu > li {
    padding: 0;
    border-bottom: 0.5px solid var(--rule-soft);
}
.side_nav .nav-menu > li > a {
    font-family: var(--f-ui);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ink-soft);
    padding: 15px 0;
    display: block;
    transition: color 0.2s;
    text-decoration: none;
}
.side_nav .nav-menu > li > a:hover {
    color: var(--plein);
}
.side_nav .nav-menu > li > a::before,
.side_nav .nav-menu > li > a::after {
    content: none !important;
}

/* dropdown inside side nav */
.side_nav .dropdown-content {
    display: none;
    padding: 0 0 8px 12px;
}
.side_nav .dropdown-content .column {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.side_nav .dropdown-content .column a {
    font-family: var(--f-edit);
    font-size: 14px;
    font-style: italic;
    color: var(--ink-mute);
    padding: 6px 0;
    display: block;
    transition: color 0.2s;
}
.side_nav .dropdown-content .column a:hover {
    color: var(--plein);
}
.side_nav .dropdown-content .column a::before,
.side_nav .dropdown-content .column a::after {
    content: none !important;
}

/* suppress global link hover lines inside side nav */
.side_nav a::before,
.side_nav a::after {
    content: none !important;
}

/* =====================================================
   TI — Hero, Atelier, Process (test homepage editorial)
   ===================================================== */
.hero {
    position: relative;
    padding: 80px 0 100px;
    overflow: hidden;
}
.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(
            ellipse 60% 50% at 80% 30%,
            rgba(216, 154, 120, 0.18),
            transparent 60%
        ),
        radial-gradient(
            ellipse 50% 40% at 15% 80%,
            rgba(107, 142, 179, 0.16),
            transparent 65%
        ),
        radial-gradient(
            ellipse 40% 30% at 50% 50%,
            rgba(154, 139, 184, 0.1),
            transparent 70%
        );
    z-index: 0;
}
.hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 0.95fr 1.15fr;
    gap: 80px;
    align-items: center;
    max-width: var(--max-w);
    margin-inline: auto;
}

.hero .ek {
    margin-bottom: 32px;
}

.hero-title {
    font-family: var(--f-display);
    font-size: clamp(64px, 8.5vw, 128px);
    line-height: 0.92;
    letter-spacing: -0.005em;
    color: var(--ink);
    font-weight: 400;
}
.hero-title em {
    font-family: var(--f-edit);
    font-style: italic;
    font-weight: 400;
    color: var(--ink-soft);
    font-size: 0.94em;
}
.hero-text {
    font-family: var(--f-edit);
    font-size: 19px;
    line-height: 1.7;
    color: var(--ink-soft);
    margin: 32px 0 40px;
    max-width: 480px;
    font-weight: 400;
}
.hero-text em {
    color: var(--ink);
    font-style: italic;
}
.hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    align-items: center;
}
.hero .btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 28px;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
    border-radius: 2px;
    transition: all 0.25s;
    text-decoration: none;
}
.hero .btn::before,
.hero .btn::after {
    content: none;
}
.hero .btn-primary {
    background: var(--ink);
    color: var(--gesso);
}
.hero .btn-primary:hover {
    background: var(--ink-soft);
    color: var(--gesso);
    transform: translateY(-1px);
}
.hero .btn-primary svg {
    transition: transform 0.25s;
}
.hero .btn-primary:hover svg {
    transform: translateX(3px);
}
.hero .btn-ghost {
    border: 0.5px solid var(--ink-soft);
    color: var(--ink-soft);
    background: none;
}
.hero .btn-ghost:hover {
    background: var(--ink);
    color: var(--gesso);
    border-color: var(--ink);
}
.hero-meta {
    display: flex;
    gap: 36px;
    margin-top: 48px;
    padding-top: 28px;
    border-top: 0.5px solid var(--rule);
    max-width: 480px;
}
.hero-meta .m {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.hero-meta .v {
    font-family: var(--f-display);
    font-size: 28px;
    color: var(--ink);
    line-height: 1;
}
.hero-meta .k {
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--ink-mute);
    font-weight: 600;
}
.hero-art {
    position: relative;
}
.hero-art .frame {
    padding: 18px 18px 0;
    background: var(--paper);
    border: 0.5px solid var(--rule);
    box-shadow:
        0 30px 60px -20px rgba(42, 36, 56, 0.18),
        0 0 0 1px rgba(199, 190, 168, 0.4) inset;
    position: relative;
}
.hero-art .frame::before {
    content: "";
    position: absolute;
    inset: 18px 18px 96px;
    outline: 0.5px solid var(--rule-soft);
    outline-offset: -1px;
    pointer-events: none;
}
.hero-art .img {
    position: relative;
    background: var(--shadow);
    overflow: hidden;
    line-height: 0;
}
.hero-art .img img {
    width: 100%;
    height: auto;
    display: block;
}
.hero-art .caption {
    padding: 22px 4px 28px;
    text-align: center;
    font-family: var(--f-edit);
}
.hero-art .caption .t {
    font-style: italic;
    font-size: 18px;
    color: var(--ink);
    letter-spacing: 0.01em;
}
.hero-art .caption .a {
    font-size: 13px;
    color: var(--ink-mute);
    letter-spacing: 0.04em;
    margin-top: 6px;
}
.hero-art .caption .a b {
    font-weight: 500;
    color: var(--ink-soft);
}
.hero-art .plate-no {
    position: absolute;
    top: -14px;
    left: -14px;
    background: var(--ink);
    color: var(--gesso);
    font-family: var(--f-mono);
    font-size: 10px;
    letter-spacing: 0.18em;
    padding: 8px 14px;
    text-transform: uppercase;
    z-index: 2;
}
.hero-art .seal {
    position: absolute;
    bottom: 18px;
    right: -14px;
    background: var(--plein);
    color: var(--paper);
    font-family: var(--f-display);
    font-size: 14px;
    width: 78px;
    height: 78px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1;
    transform: rotate(-8deg);
    z-index: 3;
    box-shadow: 0 6px 18px rgba(216, 154, 120, 0.4);
}
.hero-art .seal small {
    display: block;
    font-family: var(--f-ui);
    font-size: 8px;
    letter-spacing: 0.18em;
    margin-top: 3px;
    font-weight: 600;
}

.atelier {
    background: var(--linen);
    margin-bottom: 1.5rem;
}
.atelier-inner {
    max-width: var(--max-w);
    margin-inline: auto;
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 80px;
    align-items: center;
}
.atelier-img {
    position: relative;
    background: var(--paper);
    padding: 24px;
    border: 0.5px solid var(--rule);
    box-shadow: var(--shadow-deep);
}
.atelier-img::before {
    content: "";
    position: absolute;
    inset: 24px;
    outline: 0.5px solid var(--rule-soft);
    outline-offset: -1px;
    pointer-events: none;
}
.atelier-img .img {
    line-height: 0;
    background: var(--shadow);
}
.atelier-img .img img {
    width: 100%;
    height: auto;
    display: block;
}
.atelier-img .tag {
    position: absolute;
    top: -12px;
    left: 24px;
    font-family: var(--f-mono);
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--paper);
    background: var(--ink);
    padding: 6px 12px;
}
.atelier-img .caption {
    margin-top: 18px;
    font-family: var(--f-edit);
    font-style: italic;
    font-size: 13px;
    color: var(--ink-mute);
    text-align: center;
    letter-spacing: 0.02em;
}

.atelier-copy .section-header em {
    color: var(--monet);
}
.atelier-copy .text {
    font-family: var(--f-edit);
    font-size: 18px;
    line-height: 1.7;
    color: var(--ink-soft);
    margin-top: 28px;
}
.atelier-copy .text p + p {
    margin-top: 18px;
}
.atelier-copy .sig {
    margin-top: 36px;
    display: flex;
    align-items: center;
    gap: 16px;
    padding-top: 24px;
    border-top: 0.5px solid var(--rule);
}
.atelier-copy .sig-name {
    font-family: var(--f-display);
    font-size: 20px;
    color: var(--ink);
    line-height: 1.1;
}
.atelier-copy .sig-role {
    font-family: var(--f-edit);
    font-style: italic;
    font-size: 13px;
    color: var(--ink-mute);
    margin-top: 3px;
}
.atelier-copy .sig-mark {
    font-family: var(--f-display);
    font-size: 46px;
    line-height: 1;
    color: var(--plein);
    transform: rotate(-6deg);
}

.process {
    background: var(--paper);
    border-top: 0.5px solid var(--rule);
    border-bottom: 0.5px solid var(--rule);
}
.process-inner {
    max-width: var(--max-w);
    margin-inline: auto;
}
.process .section-hd {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 0;
}
.process .section-hd-left {
    max-width: 640px;
}

.process .section-header em {
    color: var(--ink-soft);
}
.process .section-hd-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
}
.process .more {
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--ink);
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 0.5px solid var(--ink);
    padding-bottom: 4px;
    transition: gap 0.25s;
    text-decoration: none;
}
.process .more::before,
.process .more::after {
    content: none;
}
.process .more:hover {
    gap: 14px;
    color: var(--ink);
}
.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-top: 56px;
    border-top: 0.5px solid var(--rule);
}
.process .step {
    padding: 36px 28px 36px 0;
    border-right: 0.5px solid var(--rule-soft);
    position: relative;
}
.process .step:last-child {
    border-right: 0;
}
.process .step .n {
    font-family: var(--f-mono);
    font-size: 10px;
    letter-spacing: 0.2em;
    color: var(--plein);
    font-weight: 500;
    margin-bottom: 18px;
}
.process .step .icn {
    width: 54px;
    height: 54px;
    border: 0.5px solid var(--rule);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--canvas);
    margin-bottom: 24px;
    color: var(--ink-soft);
}
.process .step .icn svg {
    width: 26px;
    height: 26px;
    stroke-width: 1.2;
}
.process .step h3 {
    font-family: var(--f-display);
    font-size: 24px;
    color: var(--ink);
    line-height: 1.15;
    letter-spacing: -0.005em;
    font-weight: 400;
    margin-bottom: 12px;
}
.process .step h3 em {
    font-family: var(--f-edit);
    font-style: italic;
    color: var(--ink-soft);
    font-size: 0.9em;
}
.process .step p {
    font-family: var(--f-edit);
    font-size: 14.5px;
    line-height: 1.6;
    color: var(--ink-mute);
}

.section {
    padding-block: 100px;
}

.section-header {
    font-family: var(--f-display);
    font-size: clamp(40px, 5vw, 68px);
    line-height: 1;
    color: var(--ink);
    font-weight: 400;
    letter-spacing: -0.005em;
}

.section-header em {
    font-family: var(--f-edit);
    font-style: italic;
}

/* =====================================================
   TI — RESPONSIVE
   All responsive overrides
   ===================================================== */

/* ── ≤1100px: two-column collapses ── */
@media (max-width: 1100px) {
    .ti-foot-top {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
    .ti-foot-brand {
        grid-column: 1 / -1;
    }
    .hero-inner,
    .atelier-inner {
        grid-template-columns: 1fr;
        gap: 60px;
    }
    .process-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .process .step {
        border-right: 0;
        border-bottom: 0.5px solid var(--rule-soft);
        padding-right: 0;
    }
}

/* ── ≤991px: tablet / mobile header ── */
@media (max-width: 991px) {
    .main-header {
        gap: 14px !important;
        padding-block: 12px !important;
        min-height: 60px !important;
    }
    .main-header .logo img {
        height: 40px;
        max-width: min(160px, 36vw);
    }
    .main-header .ti-search {
        display: none;
    }
    .main-header .header-actions {
        gap: 2px;
    }
    .main-header .header-actions .icon-btn {
        padding: 8px 8px;
    }
    .main-header .header-actions .icon-btn .ib-lbl {
        display: none;
    }
    .menu_icon {
        display: block;
    }
    .mobile-menu-overlay.is-visible {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }
    .header_container .navbar.d-lg-block {
        display: none !important;
    }
}

/* ── ≤700px: phone ── */
@media (max-width: 700px) {
    .section {
        padding-block: 56px;
    }
    .ti-foot-top {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .ti-subnav-inner {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-block: 10px;
    }
    .ti-chip {
        white-space: nowrap;
        flex-shrink: 0;
    }
    .ti-ann-inner {
        flex-direction: column;
        gap: 8px;
        text-align: center;
    }
    .ti-ann-left,
    .ti-ann-right {
        display: none;
    }
    .ti-foot-bot {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
    .ti-search {
        max-width: 100%;
    }
    .hero-inner,
    .atelier-inner {
        grid-template-columns: 1fr;
        gap: 48px;
    }
    .process-grid {
        grid-template-columns: 1fr;
    }

    /* header compact */
    .main-header {
        gap: 10px !important;
        padding-block: 10px !important;
        min-height: 52px !important;
    }
    .main-header .logo img {
        height: 32px;
        max-width: min(130px, 30vw);
    }
    .main-header .header-actions .icon-btn--wishlist {
        display: none;
    }
    .menu_icon {
        width: 36px;
        height: 36px;
        line-height: 36px;
        font-size: 14px;
        color: #3e342a;
        background: #e3dec7;
        text-align: center;
        border-radius: 50%;
    }

    /* side nav */
    .side_nav {
        width: 100%;
        left: -100%;
    }
    .side_nav.open {
        left: 0;
    }

    /* ti-search inside side nav */
    .side_nav .ti-search {
        display: flex;
        margin: 0 0 18px 0 !important;
    }
}

/* === HOMEPAGETEST migrated inline CSS === */

/* ── widget-imp10: 10 Impressionist artists ── */
                    .widget-imp10 {
                        background: var(--gesso);
                        border: 0.5px solid var(--rule) !important;
                        border-radius: 2px !important;
                        box-shadow: var(--shadow-md);
                    }
                    .widget-imp10__portrait-wrap {
                        position: relative;
                        display: block;
                        width: 100%;
                        aspect-ratio: 1;
                        overflow: hidden;
                        background: var(--ink);
                        border-radius: 0 !important;
                        text-decoration: none;
                        border: 0.5px solid var(--rule);
                    }
                    .widget-imp10__portrait-wrap img {
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        display: block;
                        transition: transform 0.6s ease;
                    }
                    .widget-imp10__portrait-wrap:hover img {
                        transform: scale(1.04);
                    }
                    .widget-imp10__portrait-name {
                        padding: 0.5rem 0.65rem;
                        font-family: var(--f-edit);
                        font-size: 14px;
                        font-style: italic;
                        font-weight: 500;
                        line-height: 1.25;
                        color: var(--gesso);
                    }
                    .widget-imp10__movement-title {
                        font-family: var(--f-display);
                        font-size: clamp(20px, 2.2vw, 30px);
                        font-weight: 400;
                        letter-spacing: -0.005em;
                        color: var(--ink);
                        margin-bottom: 0.4rem;
                        line-height: 1.05;
                    }
                    .widget-imp10__movement-title a {
                        color: var(--ink);
                        text-decoration: none;
                        transition: color 0.2s;
                    }
                    .widget-imp10__movement-title a:hover,
                    .widget-imp10__movement-title a:focus {
                        color: var(--plein);
                    }
                    .widget-imp10__cta-text {
                        font-family: var(--f-edit);
                        font-size: 15px;
                        color: var(--ink-soft);
                        margin-bottom: 0.75rem;
                        line-height: 1.6;
                    }
                    .widget-imp10__art-tile,
                    .widget-museum-6p__cell {
                        position: relative;
                        width: 100%;
                        aspect-ratio: 1;
                        overflow: hidden;
                        border-radius: 0 !important;
                        background: var(--shadow);
                        border: 0.5px solid var(--rule-soft);
                        transition: box-shadow 0.3s;
                    }
                    .widget-imp10__art-tile {
                        display: block;
                        text-decoration: none;
                    }
                    .widget-imp10__art-tile:hover {
                        box-shadow: var(--shadow-hover-md);
                    }
                    .widget-imp10__art-tile img {
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        display: block;
                        transition: transform 0.5s ease;
                    }
                    .widget-imp10__art-tile:hover img {
                        transform: scale(1.015);
                    }
                    .widget-imp10__art-meta {
                        padding: 0.35rem 0.1rem 0;
                    }
                    .widget-imp10__art-title {
                        font-family: var(--f-edit);
                        font-size: 12.5px;
                        font-style: italic;
                        color: var(--ink);
                        line-height: 1.3;
                        display: -webkit-box;
                        -webkit-line-clamp: 2;
                        -webkit-box-orient: vertical;
                        overflow: hidden;
                    }
                    .widget-imp10__art-artist {
                        font-family: var(--f-mono);
                        font-size: 9.5px;
                        letter-spacing: 0.08em;
                        color: var(--ink-mute);
                        line-height: 1.3;
                        text-transform: uppercase;
                        white-space: nowrap;
                        overflow: hidden;
                        text-overflow: ellipsis;
                        margin-top: 2px;
                    }
                    .widget-imp10__art-artist a {
                        color: inherit;
                        text-decoration: none;
                        transition: color 0.2s;
                    }
                    .widget-imp10__art-artist a:hover {
                        color: var(--plein);
                    }

/* --- block --- */

/* ── widget-artist-otd5: Artist of the Day ── */
                    .widget-artist-otd5 {
                        background: var(--paper) !important;
                        border: 0.5px solid var(--rule) !important;
                        border-radius: 2px !important;
                        box-shadow: var(--shadow-md);
                    }
                    .widget-artist-otd5__left {
                        min-width: 0;
                    }
                    .widget-artist-otd5__title {
                        font-family: var(--ti-f-display) !important;
                        font-size: clamp(1.2rem, 2.4vw, 1.7rem) !important;
                        font-weight: 400 !important;
                        color: var(--ti-ink) !important;
                        letter-spacing: -0.005em !important;
                    }
                    .widget-artist-otd5__media,
                    .widget-artist-spotlight-slider-movement__portrait {
                        position: relative;
                        display: block;
                        width: 100%;
                        aspect-ratio: 1;
                        overflow: hidden;
                        border-radius: 0 !important;
                        background: var(--shadow);
                        border: 0.5px solid var(--rule);
                        transition: box-shadow 0.3s;
                    }
                    .widget-artist-otd5__media:hover {
                        box-shadow: 0 12px 36px -10px rgba(42, 36, 56, 0.2);
                    }
                    .widget-artist-otd5__media::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        outline: 0.5px solid rgba(199, 190, 168, 0.35);
                        outline-offset: -4px;
                        pointer-events: none;
                        z-index: 2;
                    }

                    .widget-artist-otd5__art {
                        position: relative;
                        width: 100%;
                        aspect-ratio: 1;
                        overflow: hidden;
                        margin: 0;
                        border: 0.5px solid var(--rule-soft) !important;
                        border-radius: 0 !important;
                        background: var(--shadow);
                    }
                    .widget-artist-otd5__art > a {
                        display: block;
                        position: relative;
                        width: 100%;
                        height: 100%;
                        min-height: 0;
                    }
                    .widget-artist-otd5__art-title {
                        font-family: var(--f-ui);
                        font-size: 9px;
                        font-weight: 600;
                        letter-spacing: 0.1em;
                        text-transform: uppercase;
                    }

/* --- block --- */

/* ── widget-article-kw: Impressionism articles ── */
                    .widget-article-kw,
                    .widget-museum-6p {
                        background: var(--paper) !important;
                        border: 0.5px solid var(--rule) !important;
                        border-radius: 2px !important;
                        box-shadow: var(--shadow-md);
                    }
                    .widget-article-kw__cell {
                        position: relative;
                        width: 100%;
                        aspect-ratio: 1;
                        overflow: hidden;
                        border-radius: 0 !important;
                        background: var(--shadow);
                        border: 0.5px solid var(--rule) !important;
                        transition:
                            box-shadow 0.3s,
                            transform 0.3s;
                    }
                    .widget-article-kw__cell:hover {
                        box-shadow: var(--shadow-lg);
                        transform: translateY(-2px);
                    }
                    .widget-article-kw__cell a {
                        display: block;
                        width: 100%;
                        height: 100%;
                        position: relative;
                    }

                    .widget-article-kw__cell--wide {
                        aspect-ratio: 16 / 9;
                    }

/* --- block --- */

/* ── widget-rts-slider: Ready to Ship ── */
                    .widget-rts-slider__badge {
                        display: inline-block;
                        font-family: var(--f-mono);
                        font-size: 9px;
                        font-weight: 500;
                        letter-spacing: 0.18em;
                        text-transform: uppercase;
                        padding: 6px 12px;
                        border-radius: 0;
                        background: var(--ink);
                        color: var(--gesso);
                        margin-bottom: 4px;
                    }
                    .widget-rts-slider .artist_slid_box {
                        border: 0.5px solid var(--rule) !important;
                        border-radius: 0 !important;
                        background: var(--paper);
                        overflow: hidden;
                    }
                    .widget-rts-slider .artist_slid_box .view_all_art {
                        font-family: var(--f-edit);
                        font-size: 12.5px;
                        font-style: italic;
                        color: var(--ink-soft);
                        padding: 8px 10px;
                        line-height: 1.35;
                        margin-top: 0;
                    }
                    .widget-rts-slider .artist_slid_box .view_all_art a {
                        color: var(--ink);
                        text-decoration: none;
                        transition: color 0.2s;
                    }
                    .widget-rts-slider .artist_slid_box .view_all_art a:hover {
                        color: var(--plein);
                    }

                    .artist_slid_box .vincent_color {
                        margin-top: 0;
                    }

                    .artist_slid_box .view_all_art {
                        margin-top: 0;
                    }

                    .widget-rts-slider .swp_btn {
                        background: var(--paper);
                        border: 0.5px solid var(--rule);
                    }

/* --- block --- */

/* ── widget-museum-6p: Museum Masterpieces ── */
                    .widget-museum-6p {
                        --widget-museum-6p-accent: var(--ochre);
                    }
                    .widget-museum-6p__title {
                        font-family: var(--f-display) !important;
                        font-weight: 400 !important;
                        color: var(--ink) !important;
                        letter-spacing: -0.005em !important;
                        line-height: 1.1 !important;
                    }
                    .widget-museum-6p__title-line2 {
                        color: var(--ochre) !important;
                    }
                    .widget-museum-6p__cta {
                        background: var(--plein) !important;
                        border: 0 !important;
                        color: var(--ink) !important;
                        font-family: var(--f-ui) !important;
                        font-weight: 600 !important;
                        letter-spacing: 0.14em !important;
                        font-size: 11px !important;
                        border-radius: 2px !important;
                        text-transform: uppercase !important;
                        transition: background 0.25s !important;
                    }
                    .widget-museum-6p__cta:hover,
                    .widget-museum-6p__cta:focus {
                        background: var(--ochre) !important;
                        color: var(--gesso) !important;
                    }
                    .widget-museum-6p__museum-img {
                        position: relative;
                        display: block;
                        width: 100%;
                        border-radius: 0 !important;
                        overflow: hidden;
                        aspect-ratio: 280 / 319;
                        min-height: 10rem;
                        background: var(--shadow);
                        border: 0.5px solid var(--rule);
                    }
                    .widget-museum-6p__museum-img::after {
                        content: "";
                        position: absolute;
                        inset: 0;
                        outline: 0.5px solid rgba(199, 190, 168, 0.3);
                        outline-offset: -5px;
                        pointer-events: none;
                        z-index: 2;
                    }
                    .widget-museum-6p__cell {
                        margin: 0;
                    }
                    .widget-museum-6p__cell:hover {
                        box-shadow: var(--shadow-hover-sm);
                    }
                    .widget-museum-6p__cell > a {
                        display: block;
                        width: 100%;
                        height: 100%;
                        position: relative;
                    }
                    .widget-museum-6p__label {
                        font-family: var(--f-edit);
                        font-size: 11px;
                        font-style: italic;
                        line-height: 1.2;
                        padding: 0.2rem 0.35rem;
                        text-align: center;
                        color: var(--ink);
                    }
                    .widget-museum-6p__meta {
                        font-family: var(--f-edit);
                        font-size: 15px;
                        line-height: 1.6;
                        color: var(--ink-soft);
                    }

/* --- block --- */

/* ── Standalone section-hd headers (movements nav + spotlight) ── */
    .ti-sh {
        display: flex;
        align-items: flex-end;
        justify-content: space-between;
        gap: 40px;
        margin-bottom: 32px;
    }
    .ti-sh .section-hd-left {
        max-width: 640px;
    }

    .ti-sh .section-header em {
        color: var(--ink-soft);
    }
    /* ── Artist spotlight slider — impressionist restyle ── */
    .widget-artist-spotlight-slider-movement,
    .widget-rts-slider {
        background: var(--gesso) !important;
        border: 0.5px solid var(--rule) !important;
        border-radius: 2px !important;
        box-shadow: var(--shadow-md);
    }
    .widget-artist-spotlight-slider-movement__portrait:hover {
        box-shadow: var(--shadow-lg);
    }
    /* mat inner line on portrait */
    .widget-artist-spotlight-slider-movement__portrait::after {
        content: "";
        position: absolute;
        inset: 0;
        outline: 0.5px solid rgba(199, 190, 168, 0.3);
        outline-offset: -5px;
        pointer-events: none;
        z-index: 2;
    }
    .widget-artist-spotlight-slider-movement__title {
        font-family: var(--f-display) !important;
        font-size: clamp(18px, 2vw, 26px) !important;
        font-weight: 400 !important;
        color: var(--ink) !important;
        letter-spacing: -0.005em !important;
        margin-top: 0.75rem !important;
        line-height: 1.1 !important;
    }
    .widget-artist-spotlight-slider-movement .text-muted {
        font-family: var(--f-mono) !important;
        font-size: 9.5px !important;
        letter-spacing: 0.16em !important;
        color: var(--ink-mute) !important;
    }
    .widget-artist-spotlight-slider-movement__bio {
        font-family: var(--f-edit) !important;
        font-size: 15px !important;
        line-height: 1.65 !important;
        color: var(--ink-soft) !important;
    }
    .widget-artist-spotlight-slider-movement .artist_slid_box {
        border: 0.5px solid var(--rule) !important;
        border-radius: 0 !important;
        background: var(--paper) !important;
        overflow: hidden;
    }
    .widget-artist-spotlight-slider-movement .view_all_art {
        font-family: var(--f-edit) !important;
        font-size: 12.5px !important;
        font-style: italic !important;
        color: var(--ink-soft) !important;
        padding: 8px 10px !important;
        line-height: 1.35 !important;
    }
    .widget-artist-spotlight-slider-movement .view_all_art a {
        color: var(--ink) !important;
        text-decoration: none !important;
        transition: color 0.2s !important;
    }
    .widget-artist-spotlight-slider-movement .view_all_art a:hover {
        color: var(--plein) !important;
    }
    .widget-artist-spotlight-slider-movement .vincent_color {
        font-family: var(--f-mono) !important;
        font-size: 9px !important;
        letter-spacing: 0.12em !important;
        text-transform: uppercase !important;
        color: var(--ink-faint) !important;
        margin-bottom: 3px !important;
    }

    /* ── widget_artist_spotlight_slider_impressionism_12_ti ── */
    .widget-artist-spotlight-slider-impressionism-12-ti__left {
        display: flex;
        align-items: flex-start;
        gap: 1rem;
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__copy {
        flex: 1;
        min-width: 0;
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__portrait-col {
        width: 168px;
        max-width: 100%;
        flex-shrink: 0;
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__portrait {
        position: relative;
        display: block;
        width: 100%;
        height: 220px;
        min-height: 220px;
        max-height: 220px;
        overflow: hidden;
        aspect-ratio: auto !important;
        background: var(--shadow);
        border: 0.5px solid var(--rule);
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__portrait img {
        position: static;
        inset: auto;
        width: 100%;
        height: 220px;
        object-fit: cover;
        object-position: center center;
        display: block;
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__title {
        position: static;
        margin: 0 0 0.5rem !important;
        padding: 0;
        font-family: var(--f-display) !important;
        font-size: clamp(14px, 1.6vw, 20px) !important;
        font-weight: 400 !important;
        line-height: 1.15 !important;
        color: var(--ink) !important;
        letter-spacing: -0.005em !important;
        background: none;
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__artist-name {
        margin-top: 0.5rem !important;
        margin-bottom: 0 !important;
        width: 100%;
        line-height: 1.3;
        text-align: center;
    }
    .widget-artist-spotlight-slider-impressionism-12-ti__artist-name a:hover {
        color: var(--plein) !important;
    }

    /* movement chip scroll targets */
    .widget-imp10 {
        scroll-margin-top: 120px;
    }

    .widget-museum-6p__cta.wa-btn {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        margin-top: auto !important;
        white-space: normal !important;
        line-height: 1.35 !important;
        padding-top: 14px !important;
        padding-bottom: 14px !important;
    }

/* === HOMEPAGETEST shared layout utilities === */
.widget-mpl__part { border-color: var(--mpl-border, var(--g400, #e0d8cc)) !important; }
.widget-mpl__panel,
.widget-mpl__min-h-panel { min-height: 14rem; }
.widget-mpl__min-h-half { min-height: 7rem; }
.widget-mpl__min-h-sm { min-height: 3.5rem; }
.widget-mpl__col-quarter { width: 25%; min-width: 0; }
.widget-mpl__col-half { width: 50%; min-width: 0; }
.widget-stf__header-band { letter-spacing: 0.04em; }
.widget-museum-6p__placeholder { min-height: 10rem; }
.widget-museum-4p__title { font-weight: 700; color: #111; }
.widget-museum-4p__title-line { color: #111; }
.widget-museum-4p__meta { line-height: 1.5; color: #111; }
.widget-dqf__question { color: #111; line-height: 1.4; }
.widget-dqf__meta { color: #111; line-height: 1.45; }
.mfp-section-head--raised { position: relative; z-index: 1; }
.bpa-spotlight__art-link { overflow: hidden; display: block; }
.bpa-spotlight__art-img { width: 100%; height: auto; display: block; transition: transform 0.5s ease; }
.bpa-text-muted { color: var(--pewter); }
.bpa-cc__grid { min-height: 16rem; }
.bpa-cc__grid-hero { width: 50%; min-width: 0; border-right: 2px solid var(--ink); }
.bpa-cc__grid-tile { min-height: 8rem; border-bottom: 1px solid var(--smoke); }
.bpa-cc__grid-tile--border-r { border-right: 1px solid var(--smoke); }

@media (max-width: 991.98px) {
  .widget-mpl__col-quarter,
  .widget-mpl__col-half { width: 100%; }
  .widget-mpl__panel,
  .widget-mpl__min-h-panel { min-height: 10rem; }
  .widget-mpl__min-h-half { min-height: 6rem; }
  .bpa-cc__grid-hero { width: 100%; border-right: none; border-bottom: 2px solid var(--ink); }
  .bpa-cc__grid { flex-direction: column; min-height: 0; }
}
@media (max-width: 767.98px) {
  .homepage-site-widgets,
  .homepage-impressionist-widgets,
  .homepage-artsdot-widgets,
  .homepage-buypopart-widgets,
  .mfp-hp { padding-left: clamp(12px, 3vw, 24px); padding-right: clamp(12px, 3vw, 24px); }
  .widget-imp10__movement-title { font-size: clamp(18px, 5vw, 24px); }
  .ti-sh { flex-direction: column; align-items: flex-start; gap: 16px; margin-bottom: 24px; }
}


/* === HOMEPAGETEST — missing rules restored from backup (topimpressionists) === */
.widget-artist-otd5__overlay {
          padding: 0.55rem 0.7rem;
          font-family: var(--f-edit);
          font-style: italic;
          font-size: 14px;
          line-height: 1.3;
          color: var(--gesso);
        }
.widget-artist-otd5__overlay .wa-heading-card {
          font-family: var(--f-display) !important;
          font-size: 20px !important;
          color: var(--gesso) !important;
          font-style: normal !important;
          letter-spacing: -0.005em !important;
        }
.widget-article-kw__meta {
          z-index: 2;
          padding: 0.5rem 0.6rem 0.6rem;
          max-height: 55%;
          overflow: hidden;
          font-family: var(--f-edit);
          font-size: 13.5px;
          font-style: italic;
          line-height: 1.45;
          font-weight: 400;
          text-align: left;
          display: -webkit-box;
          -webkit-line-clamp: 5;
          -webkit-box-orient: vertical;
          color: var(--gesso);
        }


/* ===================================================== */
/* MERGED FROM articles_style-V1.9.css */
/* ===================================================== */
a {
    color: inherit;
}
H1, H2, H3 {  
    clear: both; 
    font-size: 29px;
    text-align: left;
    line-height: 38px;
    margin-bottom: 32px;
    font-weight: 400;
    font-family: var(--font-title);
    margin-top: 55px;
}

H2:first-of-type {
    margin-top: 0;
}
    
.HTMLSectionBlock {
    float: right;
    max-width: 20vw;
    padding: 0 1vh 1vh 1vh;
    text-align: justify;         
    clear: both;
    font-size: 14px;
    font-style: italic;
    font-weight: 400;
    color: #776E62;
    line-height: 21px;    
}

.HTMLSectionBlock p {
    margin: 0;
    padding: 0; 
    font-size: 14px;
    font-style: italic;
    font-weight: 400;
    color: #776E62;
    line-height: 21px;    
}

.HTMLSectionBlock a {
    display: inline-block;
    color: #000000;
    text-align: justify;  
    margin-bottom: 8px;
}

.HTMLSectionBlock img {
    display: block;
    margin: 0 auto 0.5em auto;   /* Centers the image & adds space below */
    max-width: 100%;
    max-height: 350px;
    margin-bottom: 8px;
}




/* ===================================================== */
/* MERGED FROM widget-artwork-labels.css */
/* ===================================================== */
/*
 * widget-artwork-labels.css — unified typography for artwork/category captions
 * in widgets. Loaded after site *-V1.9.css in base.html.
 * Typography only — does not override color, background, padding, or overlay layout.
 */

.widget-stf__label,
.widget-stf__label a,
.bpa-stf__label,
.widget-mpl__category,
.widget-mpl__category a,
.widget-mpl__caption,
.widget-mpl__caption a,
.widget-tf-static__category,
.widget-tf-static__category a,
.widget-recent-own-static__category,
.widget-recent-own-static__category a,
.widget-stock-ready-static__category,
.widget-stock-ready-static__category a,
.widget-museum-4p__label,
.widget-museum-4__label,
.widget-museum-6p__label,
.widget-museum-6h__label,
.widget-museum-single__caption,
.widget-artist-otd5__label,
.widget-artist-otd5__art-title,
.widget-curated-choice__label,
.widget-curated-choice__label--hero,
.widget-curated-choice__label--small,
.widget-artist-spotlight__art-title,
.widget-imp10__art-title,
.widget-pop10__art-title,
.widget-famous10__art-title,
.widget-quiz-artwork__caption {
  font-family: var(--font-title, inherit) !important;
  font-size: clamp(0.95rem, 1.2vw, 1.0625rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.3 !important;
  text-transform: none !important;
  font-style: normal !important;
  font-synthesis: none !important;
}


/* ===================================================== */
/* MERGED FROM userprofile-V1.9.css */
/* Re-themed to brand UI Kit (was WA palette): TI — canvas page, violet-ink sidebar, impressionist ochre accent */
/* ===================================================== */
/* Profile: sidebar shell only — do not use * reset (zeros .sidebar_profile_section / link padding) */
.userprofile-page .sidebar-col,
.userprofile-page .mobile-sidebar {
    box-sizing: border-box;
}
body.userprofile-page {
    font-family: var(--font-body);
    background: var(--ti-canvas, #f4eee2);
    --up-profile-photo-input-bg: var(--ti-paper, #fbf7ee);
    --up-profile-photo-input-border: var(--ti-rule, #c7bea8);
    --up-profile-photo-input-ink: var(--ti-ink, #2a2438);
    --up-profile-photo-input-radius: 4px;
    --up-profile-photo-input-padding: 10px;
    --up-profile-photo-input-font-size: 14px;
}
.userprofile-page .sidebar-col a,
.userprofile-page .mobile-sidebar a {
    text-decoration: none;
}
.userprofile-page .sidebar_menu_link ul,
.userprofile-page .mobile-sidebar .sidebar_menu_link ul {
    padding-left: 0px;
    margin-bottom: 0px;
}
.userprofile-page .sidebar_menu_link li,
.userprofile-page .mobile-sidebar .sidebar_menu_link li {
    list-style-type: none;
}
.header_box {
    background: var(--ti-paper, #fbf7ee);
    padding: 15px 20px;
    box-shadow: 0px 0px 10px 0px rgb(42 36 56 / 10%);
    -webkit-box-shadow: 0px 0px 10px 0px rgb(42 36 56 / 10%);
    -moz-box-shadow: 0px 0px 10px 0px rgb(42 36 56 / 10%);
    margin-left: 320px;
}
h3.user_heading_text {
    color: var(--ti-ink, #2a2438);
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    font-family: var(--font-title);
    margin-bottom: 0px;
}
p.user_title_text {
    color: var(--ti-ink, #2a2438);
    font-size: 14px;
    font-weight: 400;
    opacity: 0.6;
    line-height: 22px;
    margin-bottom: 0px;
}
.sidebar_box {
    background: var(--ti-ink, #2a2438);
margin-bottom:0 !important;
border:0 !important;
height:100%;
}
.sidebar_menu_link {
/*     height: 100vh; */
}
.sidebar_profile_section {
    padding: 15px 30px;
    border-bottom: 1px solid #F9F4E833;
    display: flex;
    gap: 10px;
    align-items: center;
}


aside::-webkit-scrollbar {
    width: 8px;
}

aside::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

aside::-webkit-scrollbar-thumb {
    background: #b78b4a;
    border-radius: 10px;
}

aside::-webkit-scrollbar-thumb:hover {
    background: #a0742a;
}

aside {
    scrollbar-width: thin;
    scrollbar-color: var(--ti-rule-soft, #ddd4be) var(--ti-ink, #2a2438);
}


.image_letter {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background: #F9F4E840;
    border-radius: 50%;
    color: var(--ti-gesso, #f9f4e8);
    font-weight: 500;
    font-size: 19.43px;
}
.profile_name {
    color: var(--ti-gesso, #f9f4e8);
    font-weight: 500;
    font-size: 18px;
    line-height: 26px;
}
.profile_email {
    color: var(--ti-gesso, #f9f4e8);
    opacity: 0.6;
    font-size: 16px;
    font-weight: 400;
    line-height: 16px;
}
.sidebar_menu_link ul li {
    cursor: pointer;
}
.sidebar_menu_link li.active {
    background: rgba(183, 139, 74, 0.12);
    border-left: 4px solid var(--ti-ochre, #b78b4a);
}

.sidebar_menu_link li.active a span {
    color: var(--ti-ochre, #b78b4a);
}
/* .sidebar_menu_link li.active a svg {
    color: var(--ti-ochre, #b78b4a) !important;
} */
.sidebar_menu_link li a {
    padding: 22px 30px;

}
.sidebar_menu_link li {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.sidebar_menu_link li:hover ,
.logout_section ul li:hover{
    background: rgba(183, 139, 74, 0.12);
}

/* .sidebar_menu_link li:hover a svg, */

.sidebar_menu_link li:hover a span,

.logout_section ul li:hover  a span,
.logout_section ul li:hover  a svg
{
    color: var(--ti-ochre, #b78b4a);
}
.sidebar_menu_link ul li a
{
    display: flex;
    align-items: center;
    gap: 15px;
}
.sidebar_menu_link li span,
.logout_section ul li span{
    color: var(--ti-gesso, #f9f4e8);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 16px;
}
.sidebar_menu_link li a svg ,
.logout_section ul li a svg
{
    color: var(--ti-gesso, #f9f4e8) ;
}

.main_section {
}
.favorite_img_card {
    border-right: 1px solid var(--ti-rule-soft, #ddd4be);
    border-bottom: 1px solid var(--ti-rule-soft, #ddd4be);
    padding: 42px 33px;
    width: 20%;
}
.fav_img {
    max-width: 250px;
    height: 233px;
    margin: auto;
}
.fav_img img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.fav-artist h2 {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 12px;
    line-height: 20px;
    text-transform: uppercase;
    color: var(--ti-ochre, #b78b4a);
}
.fav-artist h2 a{
    color: var(--ti-ochre, #b78b4a);
}
.favCard_body {
    margin-top: 30px;
    max-width: 250px;
    margin: auto;
    margin-top: 30px;
}
.fav-title {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 13px;
    line-height: 20px;
    color: var(--ti-ink, #2a2438);
    margin: 6px 0px 11px;
    min-height: 38px;
}
.fav-title a{
    color: var(--ti-ink, #2a2438);
}
.button-dash {
    width: 100%;
    border: 1px solid var(--ti-ochre);
    border-radius: 0;
    padding: 11px 15px;
    color: var(--ti-ochre);
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    background: transparent;
}
.favorite_img_section {
    display: flex;
    flex-wrap: wrap;
}
.favorite_img_section:nth-child(-n+5) {
    border-top: 1px solid var(--ti-rule-soft, #ddd4be);
}
.logout_section {
    width: 100%;
    z-index: 99;
    background: var(--ti-ink, #2a2438);
}
.logout_section ul li {
    cursor: pointer;
}
.logout_section ul li a {
    display: flex;
    align-items: center;
    padding: 22px 30px;

    gap: 15px;
}
.logout_section ul li span{
    color: var(--ti-gesso, #f9f4e8);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 14px;
}
.main_gap {
    padding: 16px;
}
.top_order_section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 13px;
}
.order_count {
    color: var(--ti-ink, #2a2438);
    font-size: 14px;
    font-weight: 400;
    opacity: 0.8;
}
.purchase_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 18px 12px 18px;
    border-bottom: 1px solid var(--ti-rule-soft, #ddd4be);
}
.date_amount h6 {
    color: var(--ti-ink, #2a2438);
    font-size: 14px;
    opacity: 0.6;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 0px;
}
.date_amount p {
    color: var(--ti-ink, #2a2438);
    font-weight: 500;
    font-size: 15px;
    margin-bottom: 0px;
}
.pur_top_box {
    display: flex;
    gap: 17px;
}
.purchase_section {
    margin-top: 11px;
    box-shadow: 0px 0px 10px 0px rgb(42 36 56 / 10%);
    -webkit-box-shadow: 0px 0px 10px 0px rgb(42 36 56 / 10%);
    -moz-box-shadow: 0px 0px 10px 0px rgb(42 36 56 / 10%);
    background: var(--ti-paper, #fbf7ee);
}
.purchase-bottom {
    padding: 15px 18px 15px 18px;
}
.purchase-bottom ul {
    display: flex;
    gap: 15px;
}
.purchase-bottom ul li {
    width: 90px;
    height: 90px;
}
.purchase-bottom ul li img{
    width: 100%;
    height: 100%;
}
table {
    border-color: var(--ti-rule-soft, #ddd4be) !important;
}
table thead th {
    background: var(--ti-linen, #ede5d2) !important;
    color: var(--ti-ink, #2a2438) !important;
    opacity: 0.6;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 14px;
    padding: 9px 12px !important;
}
/* Cart table keeps the global rhythm: the generic table theme below carries
   !important (needed against Bootstrap elsewhere), so the cart scope must re-assert
   the global-custom cart paddings that used to win via !important. */
.cart_table_box .table > :not(caption) > * > * {
    padding: 20px 0 !important;
}
table tbody td {
    background: var(--ti-paper, #fbf7ee) !important;
    color: var(--ti-ink, #2a2438) !important;
    padding: 12px 14px !important;
font-family: var(--font-body);
font-weight: 400;
font-style: Regular;
font-size: 16px;
leading-trim: NONE;
line-height: 24px;
letter-spacing: 0%;

}
.red_box {
    color: #B0312E;
    display: inline;
    font-weight: 500;
    background: #F0DFCF;
    padding: 4px 10px;
    border-radius: 4px;
}
.green_box {
    color: #389544;
    display: inline;
    font-weight: 500;
    background: #E4E9D1;
    padding: 4px 10px;
    border-radius: 4px;
}
.yellow_box {
    color: #D08608;
    display: inline;
    font-weight: 500;
    background: #F3E7CB;
    padding: 4px 10px;
    border-radius: 4px;
}
.table_type_datail {
    display: flex;
    align-items: center;
    gap: 9px;
}
.table_img {
    width: 18px;
    height: 18px;
    position: relative;
    top: -3px;
}
.table_img img {
    width: 100%;
    height: 100%;
}
.img_date_box {
    position: relative;
    top: -2px;
    left: -3px;
}


/*message_us form css*/

.message-bg {
background-color:var(--ti-linen, #ede5d2);
}
.message_section {
 
}

.message_form {
    max-width: 630px;
    /* background: var(--ti-linen, #ede5d2); */
    margin: auto;
}

textarea.form-control:focus {
    background-color:var(--ti-paper, #fbf7ee);
}
    
.message_image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Image ko crop karke fill karega */
    display: block;
    max-height: 800px;
}

.text-center.sendmsg_textt {
/*     padding-top: 120px; */
}



.text-center.sendmsg_textt h1 {
    font-size: 48px;
    font-weight: 400;
    font-family: var(--font-title);
    line-height: 56px;
    color: var(--ti-ink, #2a2438);
}
.text-center.sendmsg_textt p {
    font-size: 16px;
    line-height: 24px;
opacity:0.8;
    font-weight: 400;
    font-family: var(--font-body);
    color: var(--ti-ink, #2a2438);
}
.mesg_textarea textarea {
    width: 100%;
    height: 280px;
margin-top:36px;
margin-bottom:30px;
    padding: 10px;
    font-size: 16px;
        font-family: var(--font-body);
    border: 1px solid var(--ti-paper, #fbf7ee);
    resize: vertical;
    background: var(--ti-paper, #fbf7ee);
border-radius:0;
}
.mesg_textarea textarea:focus {
    border: 1px solid #ccc;  
    box-shadow: none;       
}
.mesg_textarea {
    
}
.sendmsg_textt button
 {
    padding: 14px;
    border: none;
    background: var(--ti-ochre, #b78b4a);
   font-family: var(--font-body);
font-weight: 500;
font-style: Medium;
font-size: 16px;
leading-trim: CAP_HEIGHT;
line-height: 20px;
 width:100%;
letter-spacing: 6%;
text-align: center;
text-transform: uppercase;
color:var(--ti-gesso, #f9f4e8);
}
.sendmsg_textt button:hover {
    border: none !important;
color:var(--ti-gesso, #f9f4e8) !important;
    background: var(--ti-ochre, #b78b4a) !important;

}
/* When textarea is focused, change button color */
.mesg_textarea textarea:focus ~ button {
    background: var(--ti-ochre);
}
.mesg_textarea textarea:focus {
    outline: none;  /* Remove the blue glow */
    border: none;   /* Remove the border */
    box-shadow: none; /* Ensure no shadow */
}

/*succesfull msg */


.text-center.suceesfulmsg_textt{
    padding-top: 230px;
}
.text-center.suceesfulmsg_textt img {
    padding-bottom: 30px;
}
.text-center.suceesfulmsg_textt h1 {
    font-size: 45px;
    font-weight: 400;
    font-family: var(--font-title);
    line-height: 66px;
    color: var(--ti-ink, #2a2438);
}
.text-center.suceesfulmsg_textt p {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    font-family: var(--font-body);
    color: var(--ti-ink, #2a2438);
}

.suceesfulmsg_textt button
 {
    padding: 10px 120px;
    border: none;
    background: var(--ti-ochre);
    font-size: 16px;
    line-height: 24px;
    font-family: var(--font-body);
    font-weight: 500;
    color: var(--ti-gesso, #f9f4e8);
    text-transform: uppercase;
}
 

/* Sidebar Default */
aside {
    width: 100%;
    background: var(--ti-linen, #ede5d2);
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    transition: transform 0.3s ease-in-out;
    z-index: 999;
}


/* Toggle Button */
.sidebar-toggle {
    background: var(--ti-ochre, #b78b4a);
    color: white;
    border: none;
    padding: 8px 12px;
    font-size: 18px;
    cursor: pointer;
    z-index: 1000;
}

.mobile-sidebar {
    position: fixed;
    top: 0;
    left: -270px;
    height: 100vh;
    width: 260px;
    background-color:  var(--ti-ink, #2a2438);
    z-index: 1050;
    transition: left 0.3s ease-in-out;
    box-shadow: 2px 0 5px rgba(0,0,0,0.5);
}
.mobile-sidebar.active {
    left: 0;
}
.sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1040;
    display: none;
}
.sidebar-overlay.active {
    display: block;
}
.sidebar-toggle-btn {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 1060;
        width: 40px !important;
}

.sidebar_box .sidebar_menu_link li img {
    height: clamp(20px , 1.25vw , 24px);
    width: clamp(20px , 1.25vw , 24px);
    
    filter: brightness(0) invert(1); 
    
    transition: filter 0.3s ease; 
}

@media (min-width: 768px) {
    .sidebar-toggle-btn {
        display: none;
    }

.profile_picture_top_header_initiales {
    font-size: 15.43px;
}
.message_form {
   
    padding: 0px 60px;
}
.message_image {
padding:0;
}

.upload_img_form {
    display: flex;
    flex-direction: row-reverse;
    text-align: left;
    gap: 12px;
}
/*     .main-grid-row {
        display: flex;
    } */
/*     .sidebar-col {
        flex-basis: 25%;
        max-width: 25%;
    }
    .main-content-col {
        flex-basis: 75%;
        max-width: 75%;
        padding-left: 2rem;
    } */
    .mobile-sidebar {
        display: none;
    }
/* .logout_section {
    position: absolute;
    bottom: 0;
} */
.sidebar_box {
    position: relative;
}
}

/* Responsive */
@media (max-width: 768px) {
.profile-photo-section .profile-photo-upload .form-control {
    background-color: var(--up-profile-photo-input-bg, #fbf7ee) !important;
    border-radius: 0 !important;
    padding: 12px !important;
    border: 1px solid var(--up-profile-photo-input-border, #c7bea8) !important;
    color: var(--up-profile-photo-input-ink, inherit) !important;
}
.e_card_form {
    padding: 24px;
    margin: 24px auto;
}
.profile-photo-section {
    padding: 15px;
}
.profile-photo-circle {
    width: 120px;
    height: 120px;
    border-width: 3px;
}
.btn-delete-photo {
    padding: 8px 16px;
    font-size: 12px;
}
.form-container input , .main-grid-row input {
  
    font-size: 14px;
    width: 100%;
    padding: 9px;

    margin-bottom: 8px;
}
.purchase-card .btn-prev {

    font-size: 14px !important;

    padding: 10px !important;
    width: auto;
}
.puchase-card-content {
    padding: 14px;
    gap: 14px;
}
.purchase-card-head {
    padding: 14px;
}

.sidebar_profile_section { padding: 15px 15px;}.profile_name{ font-size: 15px;}
.profile_email {font-size: 12px;}.sidebar_menu_link li span {font-size: 12px;}.sidebar_menu_link ul li img {width: 20px;height:20px; object-fit:contain;}
 .text-center.sendmsg_textt h1 {font-size: 35px;line-height: 42px;}.text-center.suceesfulmsg_textt h1 { font-size: 30px;line-height: 38px;}
 .text-center.suceesfulmsg_textt p {font-size: 13px;line-height: 20px;} .suceesfulmsg_textt button {padding: 10px 80px;font-size: 14px;}
 .text-center.sendmsg_textt p {
    font-size: 14px;
    line-height: 14px;
 }
aside {
    height: 100%;

}
.message_image img {
  
    height: 339px !important;
}
 
    .sidebar_box .text-center.mb-20 img{

}
.sidebar_box {
width:auto !important;
}

aside {transform: translateX(0%);}aside.active { transform: translateX(0); }.sidebar-toggle {display: block;}#sidebar { display: block; }
.main_section { margin-left: 0px;margin-top: 20px;}.sidebar-toggle { display: block;}.header_box {margin-left:0px;padding: 10px 20px;position: fixed; top: 0; left: 0;width: 100%;z-index: 999;}
.date_amount h6 {font-size: 12px;}p.user_title_text {font-size: 12px;}.date_amount p {font-size: 12px;}.button-dash {padding: 5px 8px; font-size: 12px;}.purchase-bottom ul li img { object-fit: cover;}
.fav_img {height: auto;}.favorite_img_card {padding: 40px 0px; width: 100%;}table thead th {font-size: 12px; white-space: nowrap;}
table tbody td { font-size: 12px;white-space: nowrap;}.table_img img {width: 80%; height: 80%;object-fit: contain;}.img_date_box {position: relative;top: 0px;left: 0px;}
.message_form {width: 100%;}.sendmsg_textt button {padding: 10px 60px}.message_image {width: 100%;order: -1;padding-top:50px;}
.text-center.sendmsg_textt {padding-top: 60px;padding-bottom: 60px;}.text-center.suceesfulmsg_textt {padding-top: 50px; padding-bottom: 50px;}
 
}


/* Tablet Portrait to Tablet Landscape */
@media (min-width: 768px) and (max-width: 1023px) {
    /* Tablet styles */
}

/* Small Desktop / Laptop */
@media (min-width: 1024px) and (max-width: 1199px) {
  
}

/* Large Desktop */
@media (min-width: 1200px) and (max-width: 1365px) {
 
   

}

/* Extra Large Desktop */
@media (min-width: 1366px) and (max-width: 1919px) {
}

/* Full HD (1920px) to Ultra-wide */
@media (min-width: 1920px) and (max-width: 2499px) {
  
}


/* Ultra-wide 2K/4K */
@media (min-width: 2500px) {

}

.profile_picture img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
}

/* Profile Photo Edit Section */
.profile-photo-section {
    margin-bottom: 25px;
    padding: 20px;
    background: var(--ti-paper, #fbf7ee);
    border-radius: 0px;
}

.profile-photo-section > label {
    display: block;
    color: var(--ti-ink, #2a2438);
    position: relative;
    font-weight: 500;
    padding: 0;
    font-size: 16px;
    margin-bottom: 15px;
    text-transform: uppercase;
}.profile-photo-section > label {
    display: block;
    color: var(--ti-ink, #2a2438);
    font-weight: 500;
    font-size: 16px;
    margin-bottom: 15px;
    text-transform: uppercase;
}

.profile-photo-display {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
    padding: 20px;
    background: var(--ti-linen, #ede5d2);
    border-radius: 0;
}

.profile-photo-circle {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid var(--ti-ochre);
    box-shadow: 0 4px 10px rgba(42, 36, 56, 0.2);
    margin-bottom: 15px;
}

.profile-photo-path {
    margin-bottom: 10px;
    text-align: center;
}

.profile-photo-path small {
    color: var(--ti-ink, #2a2438);
    opacity: 0.7;
    font-size: 13px;
    word-break: break-all;
}

.profile-photo-actions {
    margin-top: 10px;
}

.btn-delete-photo {
    background: var(--ti-ochre, #b78b4a);
    color: var(--ti-gesso, #f9f4e8);
    border: none;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.btn-delete-photo:hover {
    background: #8B2222;
}

.profile-photo-upload {
    margin-top: 15px;
}

.profile-photo-upload input[type="file"] {
    display: block;
    width: 100%;
    padding: 10px;
    background: #FFFFFF;
    border: 1px solid var(--ti-rule-soft, #ddd4be);
    border-radius: 4px;
    font-size: 14px;
    color: var(--ti-ink, #2a2438);
}

.profile-photo-upload .form-text {
    display: block;
    margin-top: 8px;
    color: var(--ti-ink, #2a2438) !important;
    opacity: 0.6;
}


/* user interaction-card  */

.interaction-card {
/* background-color:var(--ti-rule-soft, #ddd4be); */
border-radius: 0;
    /* background-color: var(--ti-rule-soft, #ddd4be); */
    padding: 0;
    border: 0;
}

.header-section {
    background-color: var(--ti-paper, #fbf7ee);
    padding: 12px 20px;
    margin-bottom: 20px;
    width: -webkit-fill-available;
box-shadow: 0px 0px 10px 0px #2A24381A;
}
.header-section h3 {
font-family: var(--font-title);
font-weight: 400;
font-style: Regular;
font-size: 26px;
leading-trim: NONE;
line-height: 36px;
letter-spacing: 0%;
color:var(--ti-ink, #2a2438);
}

.header-section p {
color:var(--ti-ink, #2a2438);
font-family: var(--font-body);
font-weight: 400;
font-style: Regular;
font-size: 16px;
leading-trim: NONE;
line-height: 24px;
letter-spacing: 0%;

}
.profile_picture {
    width: 50px;
height:50px;
border-radius:50%;
}
.purchase-card {
background-color:var(--ti-paper, #fbf7ee);
border:1px solid var(--ti-rule-soft, #ddd4be);
padding:0;
}
.purchase-card-head {
padding:20px;
border-bottom:1px solid var(--ti-rule-soft, #ddd4be);
}

.puchase-card-content {
padding:20px;
    flex-wrap: wrap;
gap:20px;
}
.puchase-card-content img {
height:120px;
width:120px;
}
.purchase-card .btn-prev {
color:var(--ti-ochre);
font-family: var(--font-body);
font-weight: 500;
font-style: Medium;
font-size: 16px;
leading-trim: CAP_HEIGHT;
line-height: 20px;
letter-spacing: 6%;
text-align: center;
text-transform: uppercase;
padding:20px;
    width: auto;
}

/* Form-floating: always use "focused" style (label above, reduced padding) on account forms */
.e_card_form .form-floating > .form-control,
.e_card_form .form-floating > .form-select {
    padding-top: 1.2rem !important;
    padding-bottom: 8px;
}
.e_card_form .form-floating > .form-control ~ label,
.e_card_form .form-floating > .form-control-plaintext ~ label,
.e_card_form .form-floating > .form-select ~ label {
    color: #7b7b7b !important;
    opacity: 0.8;
    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
    font-size: 12px !important;
}
/* ═══════════════════════════════════════
   TopImpressionists — Infinite Scroll (/art/infinite_scroll/)
   Scoped via .ais-hero-banner; brand tokens only.
   ═══════════════════════════════════════ */
body:has(.ais-hero-banner) {
  --ais-page: var(--ti-canvas);
  --ais-surface: var(--ti-gesso);
  --ais-surface-2: var(--ti-paper);
  --ais-border: var(--ti-rule);
  --ais-divider: var(--ti-rule-soft);
  --ais-frame-bg: var(--ti-shadow-c);
  --ais-ink: var(--ti-ink);
  --ais-ink-2: var(--ti-ink-soft);
  --ais-ink-3: var(--ti-ink-mute);
  --ais-faint: var(--ti-ink-faint);
  --ais-accent: var(--ti-plein);
  --ais-accent-dark: var(--ti-ochre);
  --ais-label-accent: var(--ti-ochre);
  --ais-on-accent: var(--ti-ink);
  --ais-shadow-rgb: 42 36 56;
  --ais-accent-rgb: 216 154 120;
  --ais-f-heading: var(--ti-f-display);
  --ais-f-title: var(--ti-f-edit);
  --ais-f-body: var(--ti-f-edit);
  --ais-f-label: var(--f-ui);
  --ais-f-mono: var(--f-mono);
  --ais-heading-weight: 400;
  --ais-radius: 2px;
  --ais-max-w: 1380px;
  --ais-gutter: clamp(20px, 4vw, 64px);

  background: var(--ais-page);
  color: var(--ais-ink);
  font-family: var(--ais-f-body);
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

body:has(.ais-hero-banner) .rake {
  position: fixed;
  inset: -20vh -30vw;
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(
    105deg,
    transparent 38%,
    rgb(255 255 255 / 45%) 48%,
    rgb(var(--ais-accent-rgb) / 7%) 52%,
    transparent 64%
  );
  mix-blend-mode: soft-light;
  transform: translateX(calc((var(--rake, .2) - .5) * 60vw));
  transition: transform .4s ease-out;
  opacity: .75;
}

body:has(.ais-hero-banner) .scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  width: 0%;
  z-index: 1001;
  pointer-events: none;
  background: linear-gradient(90deg, var(--ais-accent-dark), var(--ais-accent));
  box-shadow: 0 0 8px -1px rgb(var(--ais-accent-rgb) / 45%);
  transition: width .12s linear;
}

body:has(.ais-hero-banner) .reveal-up {
  opacity: 0;
  transform: translateY(24px);
  animation: ti-ais-reveal-up .9s cubic-bezier(.16, 1, .3, 1) forwards;
}

@keyframes ti-ais-reveal-up {
  to { opacity: 1; transform: none; }
}

body:has(.ais-hero-banner) .feed-head {
  position: relative;
}

body:has(.ais-hero-banner) .feed-head::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  height: 2px;
  width: 0;
  background: var(--ais-accent);
  animation: ti-ais-draw-line 1.1s 1s cubic-bezier(.16, 1, .3, 1) forwards;
}

@keyframes ti-ais-draw-line {
  to { width: 64px; }
}

body:has(.ais-hero-banner) .ais-intro {
  background: var(--ais-surface);
  border-bottom: 1px solid var(--ais-border);
}

body:has(.ais-hero-banner) .ais-intro-inner {
  max-width: var(--ais-max-w);
  margin: 0 auto;
  padding: 36px var(--ais-gutter) 32px;
  text-align: center;
}

body:has(.ais-hero-banner) .ais-intro-title {
  font-family: var(--ais-f-heading);
  font-size: clamp(22px, 2.4vw, 34px);
  font-weight: var(--ais-heading-weight);
  color: var(--ais-ink);
  margin-bottom: 14px;
  letter-spacing: .01em;
}

body:has(.ais-hero-banner) .ais-intro-desc {
  font-family: var(--ais-f-body);
  font-size: clamp(15px, 1.4vw, 18px);
  font-style: italic;
  line-height: 1.75;
  color: var(--ais-ink-3);
  max-width: 760px;
  margin: 0 auto;
}

body:has(.ais-hero-banner) .stage {
  position: relative;
  z-index: 2;
  max-width: var(--ais-max-w);
  margin: 0 auto;
  padding: 24px var(--ais-gutter) 120px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 56px;
  transition: grid-template-columns .65s cubic-bezier(.45, .05, .2, 1);
}

body:has(.ais-hero-banner) .stage.pinned {
  grid-template-columns: 0.92fr 1.08fr;
}

body:has(.ais-hero-banner) .pinned-col {
  display: none;
  position: sticky;
  top: 80px;
  align-self: start;
  height: fit-content;
}

body:has(.ais-hero-banner) .stage.pinned .pinned-col {
  display: block;
  animation: ti-ais-pin-in .8s cubic-bezier(.16, 1, .3, 1) both;
}

@keyframes ti-ais-pin-in {
  from { opacity: 0; transform: translateY(34px) scale(.94); filter: blur(6px); }
  to   { opacity: 1; transform: none; filter: blur(0); }
}

body:has(.ais-hero-banner) .plate.grand .frame img {
  animation: ti-ais-breathe 14s ease-in-out infinite alternate;
}

@keyframes ti-ais-breathe {
  from { transform: scale(1); }
  to   { transform: scale(1.035); }
}

body:has(.ais-hero-banner) .plate {
  background: var(--ais-surface);
  border: 1px solid var(--ais-border);
  border-radius: var(--ais-radius);
  position: relative;
  overflow: hidden;
}

body:has(.ais-hero-banner) .plate.grand {
  box-shadow: 0 30px 60px -20px rgb(var(--ais-shadow-rgb) / 14%);
}

body:has(.ais-hero-banner) .plate .top {
  display: flex;
  align-items: flex-start;
}

body:has(.ais-hero-banner) .plate .mat {
  padding: 22px;
  position: relative;
  flex: 0 0 auto;
  width: 46%;
  max-width: 340px;
}

body:has(.ais-hero-banner) .plate .frame {
  position: relative;
  background: var(--ais-frame-bg);
  outline: 1px solid var(--ais-divider);
  outline-offset: -1px;
  overflow: hidden;
  width: 100%;
}

body:has(.ais-hero-banner) .plate .frame img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 1.4s cubic-bezier(.2, .8, .2, 1), opacity .9s ease, filter .9s ease;
  opacity: 0;
  filter: blur(10px);
}

body:has(.ais-hero-banner) .plate .frame img.loaded {
  opacity: 1;
  filter: blur(0);
}

body:has(.ais-hero-banner) .plate-no {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 3;
  background: var(--ais-ink);
  color: var(--ais-on-accent);
  font-family: var(--ais-f-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: 5px 9px;
  border-radius: var(--ais-radius);
}

body:has(.ais-hero-banner) .plate .caption {
  flex: 1 1 auto;
  min-width: 0;
  padding: 26px 26px 22px 8px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body:has(.ais-hero-banner) .plate .caption .artist {
  font-family: var(--ais-f-label);
  font-weight: 600;
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--ais-ink);
  margin-bottom: 8px;
}

body:has(.ais-hero-banner) .plate .caption .title {
  font-family: var(--ais-f-title);
  font-style: italic;
  font-size: 26px;
  line-height: 1.2;
  color: var(--ais-ink-2);
}

body:has(.ais-hero-banner) .plate .caption .facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--ais-divider);
}

body:has(.ais-hero-banner) .fact {
  display: inline-block;
  padding: 8px 13px;
  background: var(--ais-surface-2);
  border: 1px solid var(--ais-border);
  border-radius: var(--ais-radius);
  font-family: var(--ais-f-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ais-ink-2);
  opacity: 0;
  transform: translateY(8px) scale(.96);
  animation: ti-ais-fact-in .5s cubic-bezier(.16, 1, .3, 1) forwards;
}

@keyframes ti-ais-fact-in {
  to { opacity: 1; transform: none; }
}

body:has(.ais-hero-banner) a.fact {
  text-decoration: none;
  color: var(--ais-ink-2);
  cursor: pointer;
  transition: border-color .3s ease, color .3s ease, background .3s ease, transform .3s ease;
}

body:has(.ais-hero-banner) a.fact:hover {
  border-color: var(--ais-accent);
  color: var(--ais-ink);
  background: var(--ais-surface);
  transform: translateY(-1px);
}

body:has(.ais-hero-banner) .plate .mat a.frame {
  display: block;
  cursor: pointer;
}

body:has(.ais-hero-banner) .plate .below {
  padding: 0 26px 26px;
  border-top: 1px solid var(--ais-divider);
  margin-top: 0;
}

body:has(.ais-hero-banner) .plate .below .desc {
  font-family: var(--ais-f-body);
  font-size: 17px;
  line-height: 1.7;
  color: var(--ais-ink-3);
  padding-top: 20px;
}

body:has(.ais-hero-banner) .actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
}

body:has(.ais-hero-banner) .fav-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--ais-f-label);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--ais-ink-2);
  background: var(--ais-surface);
  border: 1px solid var(--ais-border);
  border-radius: var(--ais-radius);
  padding: 11px 18px;
  cursor: pointer;
  transition: transform .3s ease, border-color .3s ease, color .3s ease, background .3s ease, box-shadow .3s ease;
}

body:has(.ais-hero-banner) .fav-btn .heart {
  position: relative;
  width: 14px;
  height: 14px;
  display: inline-block;
}

body:has(.ais-hero-banner) .fav-btn .heart svg {
  width: 14px;
  height: 14px;
  display: block;
  transition: transform .35s cubic-bezier(.34, 1.56, .64, 1);
}

body:has(.ais-hero-banner) .fav-btn .heart svg path {
  fill: none;
  stroke: var(--ais-ink-2);
  stroke-width: 1.4;
  transition: fill .35s ease, stroke .35s ease;
}

body:has(.ais-hero-banner) .fav-btn:hover {
  border-color: var(--ais-accent);
  color: var(--ais-ink);
  transform: translateY(-1px);
  box-shadow: 0 8px 20px -10px rgb(var(--ais-shadow-rgb) / 22%);
}

body:has(.ais-hero-banner) .fav-btn:hover .heart svg path {
  stroke: var(--ais-accent);
}

body:has(.ais-hero-banner) .fav-btn.saved {
  background: var(--ais-accent);
  border-color: var(--ais-accent);
  color: var(--ais-on-accent);
}

body:has(.ais-hero-banner) .fav-btn.saved .heart svg path {
  fill: var(--ais-on-accent);
  stroke: var(--ais-on-accent);
}

body:has(.ais-hero-banner) .fav-btn.saved .heart svg {
  animation: ti-ais-heart-pop .45s cubic-bezier(.34, 1.56, .64, 1);
}

@keyframes ti-ais-heart-pop {
  0%   { transform: scale(.6); }
  55%  { transform: scale(1.35); }
  100% { transform: scale(1); }
}

body:has(.ais-hero-banner) .buy-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--ais-f-label);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  border-radius: var(--ais-radius);
  padding: 11px 18px;
  cursor: pointer;
  border: 1px solid var(--ais-ink);
  text-decoration: none;
  transition: transform .3s ease, background .3s ease, color .3s ease, box-shadow .3s ease, border-color .3s ease;
}

body:has(.ais-hero-banner) .buy-btn .arrow {
  display: inline-block;
  transition: transform .35s cubic-bezier(.2, .8, .2, 1);
}

body:has(.ais-hero-banner) .buy-btn:hover .arrow {
  transform: translateX(3px);
}

body:has(.ais-hero-banner) .buy-btn.print {
  background: var(--ais-surface);
  color: var(--ais-ink-2);
  border-color: var(--ais-border);
}

body:has(.ais-hero-banner) .buy-btn.print:hover {
  border-color: var(--ais-accent);
  color: var(--ais-ink);
  transform: translateY(-1px);
  box-shadow: 0 8px 20px -10px rgb(var(--ais-shadow-rgb) / 22%);
}

body:has(.ais-hero-banner) .buy-btn.painting {
  background: var(--ais-accent);
  color: var(--ais-on-accent);
  border-color: var(--ais-accent);
}

body:has(.ais-hero-banner) .buy-btn.painting:hover {
  background: var(--ais-accent-dark);
  border-color: var(--ais-accent-dark);
  transform: translateY(-1px);
  box-shadow: 0 10px 26px -10px rgb(var(--ais-accent-rgb) / 45%);
}

body:has(.ais-hero-banner) .feed-col {
  min-width: 0;
}

body:has(.ais-hero-banner) .feed-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 28px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--ais-border);
}

body:has(.ais-hero-banner) .feed-head .label {
  font-family: var(--ais-f-label);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--ais-label-accent);
}

body:has(.ais-hero-banner) .feed-head .count {
  font-family: var(--ais-f-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--ais-faint);
}

body:has(.ais-hero-banner) .work-col {
  display: flex;
}

body:has(.ais-hero-banner) .work {
  position: relative;
  display: flex;
  align-items: stretch;
  width: 100%;
  height: 100%;
  background: var(--ais-surface);
  border: 1px solid var(--ais-border);
  border-radius: var(--ais-radius);
  cursor: pointer;
  overflow: hidden;
  box-shadow: 0 2px 10px -6px rgb(var(--ais-shadow-rgb) / 10%);
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(40px) scale(.82);
  transition: opacity .7s cubic-bezier(.2, .8, .2, 1), transform .7s cubic-bezier(.2, .8, .2, 1), box-shadow .5s ease;
}

body:has(.ais-hero-banner) .work.in-view {
  opacity: 1;
  transform: translateY(0) scale(1);
}

body:has(.ais-hero-banner) .work:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 14px 36px -16px rgb(var(--ais-shadow-rgb) / 16%);
  transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .9s ease;
}

body:has(.ais-hero-banner) .work.clicked {
  transition: transform .22s cubic-bezier(.34, 1.56, .64, 1), box-shadow .22s ease, opacity .22s ease;
  transform: scale(1.05) translateY(-4px);
  box-shadow: 0 30px 70px -18px rgb(var(--ais-shadow-rgb) / 24%);
  z-index: 5;
}

body:has(.ais-hero-banner) .work.clicked .frame img {
  transform: scale(1.06);
}

body:has(.ais-hero-banner) .work.clicked .frame::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(120deg, transparent 30%, rgb(var(--ais-accent-rgb) / 35%) 50%, transparent 70%);
  background-size: 280% 100%;
  animation: ti-ais-shine .55s ease-out forwards;
}

@keyframes ti-ais-shine {
  from { background-position: 140% 0; }
  to   { background-position: -140% 0; }
}

body:has(.ais-hero-banner) .work .badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  background: var(--ais-surface);
  border: 1px solid var(--ais-border);
  font-family: var(--ais-f-mono);
  font-size: 8.5px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ais-label-accent);
  padding: 3px 7px;
  border-radius: var(--ais-radius);
  opacity: 0;
  transform: translateY(-4px);
  transition: opacity .45s ease, transform .45s ease;
}

body:has(.ais-hero-banner) .work:hover .badge {
  opacity: 1;
  transform: none;
}

body:has(.ais-hero-banner) .work .mat {
  padding: 14px;
  position: relative;
  flex: 0 0 auto;
  width: 40%;
  max-width: 170px;
  display: flex;
  align-items: center;
}

body:has(.ais-hero-banner) .work .frame {
  position: relative;
  background: var(--ais-frame-bg);
  outline: 1px solid var(--ais-divider);
  outline-offset: -1px;
  overflow: hidden;
  width: 100%;
  transition: transform .35s cubic-bezier(.2, .8, .2, 1);
  transform-style: preserve-3d;
}

body:has(.ais-hero-banner) .work .frame img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 1.3s cubic-bezier(.2, .8, .2, 1), filter .6s ease, opacity .9s ease;
  opacity: 0;
  filter: blur(8px);
}

body:has(.ais-hero-banner) .work .frame img.loaded {
  opacity: 1;
  filter: blur(0);
}

body:has(.ais-hero-banner) .work:hover .frame img {
  transform: scale(1.04);
}

body:has(.ais-hero-banner) .work .frame::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 50% 120%, rgb(var(--ais-accent-rgb) / 8%), transparent 60%);
  opacity: 0;
  transition: opacity .6s ease;
}

body:has(.ais-hero-banner) .work:hover .frame::after {
  opacity: 1;
}

body:has(.ais-hero-banner) .work .body {
  flex: 1 1 auto;
  min-width: 0;
  padding: 16px 18px 16px 6px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-left: 1px solid var(--ais-divider);
}

body:has(.ais-hero-banner) .work .body .artist {
  font-family: var(--ais-f-label);
  font-weight: 600;
  font-size: 11px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--ais-ink);
  margin-bottom: 6px;
}

body:has(.ais-hero-banner) .work .body .title {
  font-family: var(--ais-f-title);
  font-style: italic;
  font-size: 17px;
  line-height: 1.25;
  color: var(--ais-ink-2);
}

body:has(.ais-hero-banner) .work .body .meta {
  font-family: var(--ais-f-mono);
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ais-faint);
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid var(--ais-divider);
}

body:has(.ais-hero-banner) .sentinel {
  width: 100%;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

body:has(.ais-hero-banner) .feed.swapping {
  animation: ti-ais-feed-out .35s ease forwards;
}

@keyframes ti-ais-feed-out {
  to { opacity: 0; transform: translateY(10px); }
}

body:has(.ais-hero-banner) .feed.swap-in {
  animation: ti-ais-feed-in .5s cubic-bezier(.2, .8, .2, 1);
}

@keyframes ti-ais-feed-in {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: none; }
}

@media (min-width: 992px) {
  body:has(.ais-hero-banner) .stage.pinned .feed > .work-col {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (max-width: 1100px) {
  body:has(.ais-hero-banner) .stage.pinned {
    grid-template-columns: 1fr;
  }

  body:has(.ais-hero-banner) .pinned-col {
    position: relative;
    top: 0;
  }
}

@media (max-width: 991px) {
  body:has(.ais-hero-banner) .stage.pinned .feed > .work-col {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (max-width: 640px) {
  body:has(.ais-hero-banner) .work {
    flex-direction: column;
  }

  body:has(.ais-hero-banner) .work .mat {
    width: 100%;
    max-width: none;
  }

  body:has(.ais-hero-banner) .work .body {
    border-left: none;
    border-top: 1px solid var(--ais-divider);
    padding: 16px 18px;
  }

  body:has(.ais-hero-banner) .plate .top {
    flex-direction: column;
  }

  body:has(.ais-hero-banner) .plate .mat {
    width: 100%;
    max-width: none;
  }

  body:has(.ais-hero-banner) .plate .caption {
    padding: 0 26px 22px;
  }
}

/* ===== artwork_info.html — TI (impressionist/ochre) ===== */
.art_info_section .historicle_box,
.art_info_section .historicle_box a { color: var(--ti-ink-soft, #4a4358); }
.art_info_section .historicle_box h1,
.art_info_section .historicle_box h2,
.art_info_section .historicle_box h3 { color: var(--ti-ink, #2a2438); }
.artinfo_top h4,
.historicle_box.artwork-info-infobox .art-info-page-title { color: var(--ti-ink, #2a2438); font-family: var(--font-title); }
.art_info_details,
.historicle_box.artwork-info-infobox { background: var(--ti-linen, #ede5d2); border-color: var(--ti-rule, #c7bea8); box-shadow: var(--ti-shadow-md, 0 8px 32px -12px rgba(42,36,56,0.12)); }
.art_info_inner { background: var(--ti-gesso, #f9f4e8); }
.art_info_inner h4 { color: var(--ti-ochre, #b78b4a); text-transform: none; }
.art_info_inner p { color: var(--ti-ink-soft, #4a4358); }
.artwork-info-meta-link { color: var(--ti-ink-soft, #4a4358); }
.artwork-info-meta-link:hover { color: var(--ti-ochre, #b78b4a); }
.art_info_box .artwork-info-infobox a:hover,
.art_info_box .historicle_box a:hover,
.art_info_box .artinfo_top h4 a:hover,
.art_info_box .art_info_inner h4 a:hover,
.art_info_box .details_reproducton a:hover,
.art_info_box .fav-icon-artwork a:hover { color: var(--ti-ochre, #b78b4a); }


/* ═══════════════════════════════════════════════════════════════════
   TI — TopImpressionists — Similar artworks browse (/art/similar/<slug>/)
   Scoped to .artwork-similar-page — gallery-minimal tokens
   ═══════════════════════════════════════════════════════════════════ */
.search_sec.artwork-similar-page {
  --ti-bg:      #ffffff;
  --ti-ink:     #1f1c17;
  --ti-ink-2:   #6e6c68;
  --ti-ink-3:   #a3a09b;
  --ti-line:    #e6e6e6;
  --ti-line-2:  #d6d6d6;
  --ti-band:    #f5f5f5;
  --ti-slot:    #eeeeee;
  --ti-accent:  #a0742a;
  --ti-accent-dark: #7a5820;
  --ti-body:    var(--font-body);
}

/* Page chrome — breadcrumb, title row, sort */
.search_sec.artwork-similar-page .nav-list li,
.search_sec.artwork-similar-page .nav-list a,
.search_sec.artwork-similar-page .main-heading,
.search_sec.artwork-similar-page .Showing_text,
.search_sec.artwork-similar-page .sorting_content,
.search_sec.artwork-similar-page .sort_by {
  color: var(--ti-ink);
  font-family: var(--ti-body);
}
.search_sec.artwork-similar-page .Showing_text .form-control,
.search_sec.artwork-similar-page .sorting_content select.custom-select {
  background-color: var(--ti-bg) !important;
  border: 1px solid var(--ti-line-2) !important;
  color: var(--ti-ink) !important;
  border-radius: 2px;
}

/* Criteria sidebar */
.search_sec.artwork-similar-page .filter-panel {
  background-color: var(--ti-band);
  border: 1px solid var(--ti-line);
  border-radius: 2px;
  font-family: var(--ti-body);
}
.search_sec.artwork-similar-page .filter-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
  padding: 12px 16px;
  min-height: 44px;
  box-sizing: border-box;
}
.search_sec.artwork-similar-page .filter-title span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-family: var(--ti-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ti-ink);
}
.search_sec.artwork-similar-page .filter-title span img {
  display: block;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.search_sec.artwork-similar-page .colors_list {
  padding: 16px !important;
}
.search_sec.artwork-similar-page .colors_list li {
  background: transparent !important;
  border: none !important;
  color: var(--ti-ink);
}
.search_sec.artwork-similar-page .colors_list li a {
  display: block;
  padding: 10px 12px !important;
  font-family: var(--ti-body);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--ti-ink-2) !important;
  text-decoration: none;
  border-radius: 2px;
  transition: color 0.15s ease, background-color 0.15s ease;
}
.search_sec.artwork-similar-page .colors_list li a:hover {
  color: var(--ti-accent) !important;
  background-color: var(--ti-slot);
}
.search_sec.artwork-similar-page .colors_list li a.active {
  color: var(--ti-accent) !important;
  font-weight: 600;
  background-color: var(--ti-slot);
}

/* Grid — catalog cards */
.search_sec.artwork-similar-page .custom_search .row > [class*="col-"] {
  border-color: var(--ti-line) !important;
}
.search_sec.artwork-similar-page .custom_search .search_card {
  background-color: var(--ti-bg);
  border-color: var(--ti-line) !important;
  transition: background-color 0.2s ease;
}
.search_sec.artwork-similar-page .search_card:hover {
  background-color: var(--ti-band) !important;
}
.search_sec.artwork-similar-page .hover_visible {
  background: var(--ti-band) !important;
  border-bottom-color: var(--ti-line) !important;
}
.search_sec.artwork-similar-page .search_card .art-artist {
  align-items: center;
  gap: 0.5rem;
}
.search_sec.artwork-similar-page .search_card .art-artist h2 {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
}
.search_sec.artwork-similar-page .search_card .art-artist h2,
.search_sec.artwork-similar-page .search_card .art-artist h2 a {
  font-family: var(--ti-body);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: left;
  color: var(--ti-accent) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
.search_sec.artwork-similar-page .search_card .art-artist h2 a:hover {
  color: var(--ti-accent-dark) !important;
}
.search_sec.artwork-similar-page .search_card .art-artist span,
.search_sec.artwork-similar-page .search_card .art-artist span a {
  font-family: var(--ti-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;
  text-align: right;
  flex-shrink: 0;
  opacity: 1;
  color: var(--ti-ink-3) !important;
}
.search_sec.artwork-similar-page .search_card .art-title,
.search_sec.artwork-similar-page .search_card .art-title a {
  font-family: var(--ti-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  color: var(--ti-ink) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
.search_sec.artwork-similar-page .search_card .art-title a:hover {
  color: var(--ti-accent) !important;
}
.search_sec.artwork-similar-page .search_card .hover_visible p {
  font-family: var(--ti-body);
  font-size: 13px;
  font-weight: 300;
  font-style: normal;
  line-height: 1.55;
  text-align: left;
  color: var(--ti-ink-2) !important;
  opacity: 1;
  margin-bottom: 24px;
}
.search_sec.artwork-similar-page .search_card .hover_visible p a {
  color: var(--ti-accent) !important;
}
.search_sec.artwork-similar-page .search_card .addToCart,
.search_sec.artwork-similar-page .search_card .addToCart.added {
  background: var(--ti-ink) !important;
  color: #ffffff !important;
  font-family: var(--ti-body);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.04em;
  text-transform: none;
  border-radius: 999px;
  padding: 10px 20px;
  width: auto;
  min-width: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.search_sec.artwork-similar-page .search_card .addToCart:hover {
  background: var(--ti-accent) !important;
  color: #ffffff !important;
}
.search_sec.artwork-similar-page .custom_search .cartbtn_group a.addToCart {
  color: #ffffff !important;
}
.search_sec.artwork-similar-page .search_card .fav_group {
  background: var(--ti-bg);
  border: 1px solid var(--ti-line-2) !important;
  border-radius: 999px;
  padding: 7px 10px;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.search_sec.artwork-similar-page .search_card .fav_group:hover,
.search_sec.artwork-similar-page .search_card .fav_group.active {
  background: var(--ti-slot) !important;
  border-color: var(--ti-accent) !important;
}

/* ===================================================================
   Ecard (artworks/artwork_ecard.html) — TI TopImpressionists
   Impressionist pastels, lavender ink, ochre CTA, Italiana serif.
   =================================================================== */
.ecard-page .e_card_section .e_card_form,
.ecard-page .e_card_form {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 1px solid var(--ti-rule-soft, #ddd4be) !important;
    border-radius: 4px;
}
.ecard-page .e_card_form .form_heading {
    font-family: var(--font-title, 'Italiana', serif);
    color: var(--ti-ink, #2a2438);
}
.ecard-page .e_card_form .form_content {
    color: var(--ti-ink-soft, #4a4358);
}
.ecard-page .e_card_form .form-control {
    background: var(--ti-gesso, #f9f4e8);
    border: 1px solid var(--ti-rule, #c7bea8);
    color: var(--ti-ink, #2a2438);
    border-radius: 3px;
}
.ecard-page .e_card_form .form-control:focus {
    border-color: var(--ti-ochre, #b78b4a);
    box-shadow: none;
}
.ecard-page .form-top_heading {
    background: var(--ti-linen, #ede5d2) !important;
    border: 1px solid var(--ti-rule-soft, #ddd4be);
}
.ecard-page .floating_right_heading h5,
.ecard-page .floating_right_heading p {
    color: var(--ti-ink-mute, #6c647a);
}
.ecard-page .add_tocart_btn button {
    background: var(--ti-ochre, #b78b4a);
    color: var(--ti-paper, #fbf7ee);
    border: 1px solid var(--ti-ochre, #b78b4a);
    border-radius: 4px;
    font-family: var(--font-body, 'Cormorant Garamond', serif);
    letter-spacing: .03em;
}
.ecard-page .add_tocart_btn button:hover {
    background: var(--ti-ink, #2a2438);
    border-color: var(--ti-ink, #2a2438);
    color: var(--ti-paper, #fbf7ee);
}
.ecard-page .e-card_img_upload_section {
    background: var(--ti-canvas, #f4eee2) !important;
    border: 1px solid var(--ti-rule-soft, #ddd4be) !important;
}
.ecard-page .e-card_img_upload_section h5 {
    font-family: var(--font-title, 'Italiana', serif);
    color: var(--ti-ink, #2a2438);
}

/* =====================================================
   PrintReproduction & DigitalImage buy pages — article (historicle_box) typography
   Structure lives in global-custom-V1.9.css; brand ink/links here.
   ===================================================== */
.reproduction_main_page .historicle_box,
.reproduction_main_page .historicle_box p,
.reproduction_main_page .historicle_box h1,
.reproduction_main_page .historicle_box h2,
.reproduction_main_page .historicle_box h3,
.adc-buy-page-section .historicle_box,
.adc-buy-page-section .historicle_box p,
.adc-buy-page-section .historicle_box h1,
.adc-buy-page-section .historicle_box h2,
.adc-buy-page-section .historicle_box h3 {
    color: var(--ti-ink, #1f1c17);
}
.reproduction_main_page .historicle_box a,
.adc-buy-page-section .historicle_box a {
    color: var(--ti-accent, #a0742a);
}

/* ===== Artwork catalog list card — TopImpressionists (UI Kit aligned) ===== */
/*
   Scope: .search_sec.catalog-list-page and .search_sec.artwork-list-page only.
   Every selector is prefixed with both page wrappers so these rules never
   bleed onto the ~95 other pages that reuse .search_card.
   No HTML or class names changed. No new fonts loaded.
   Tokens used:
     surfaces — --ti-paper, --ti-gesso, --ti-linen, --ti-shadow-c, --ti-canvas
     ink      — --ti-ink, --ti-ink-soft, --ti-ink-mute, --ti-ink-faint
     accent   — --ti-plein, --ti-ochre
     rules    — --ti-rule, --ti-rule-soft
     shadows  — --ti-shadow-sm, --ti-shadow-hover-md
     fonts    — --font-title (Italiana), --font-body (Cormorant Garamond),
                --f-ui (Manrope), --f-mono (DM Mono)
*/

/* ── 1. Card surface ─────────────────────────────────────────────────────── */

.search_sec.catalog-list-page  .custom_search .search_card,
.search_sec.artwork-list-page  .custom_search .search_card {
    background: var(--ti-paper, #fbf7ee);
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-bottom: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px;
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42,36,56,.1));
    transition:
        box-shadow 0.35s ease,
        transform  0.35s ease,
        background 0.25s ease;
    overflow: visible;   /* hover panel floats below the card (see __hover) */
    position: relative;
}

.search_sec.catalog-list-page  .custom_search .search_card:hover,
.search_sec.artwork-list-page  .custom_search .search_card:hover {
    background: var(--ti-gesso, #f9f4e8) !important;
    box-shadow: var(--ti-shadow-hover-md, 0 6px 20px -6px rgba(42,36,56,.18));
    transform: translateY(-3px);
}

/* Remove double-border from Bootstrap column gutter */
.search_sec.catalog-list-page  .custom_search .row > [class*="col-"],
.search_sec.artwork-list-page  .custom_search .row > [class*="col-"] {
    border: 0 !important;
}

/* ── 2. Image wrapper — mat motif (gallery-print inset) ─────────────────── */

.search_sec.catalog-list-page  .custom_search .search_card .search_img,
.search_sec.artwork-list-page  .custom_search .search_card .search_img {
    background: var(--ti-shadow-c, #e6dec8);
    border-bottom: 0.5px solid var(--ti-rule-soft, #ddd4be);
    padding: 10px 10px 0;
    line-height: 0;
    position: relative;
    overflow: hidden;
}

/* Inset outline — the UI Kit .work .imgbox mat motif */
.search_sec.catalog-list-page  .custom_search .search_card .search_img a.artwork-grid-img-link,
.search_sec.artwork-list-page  .custom_search .search_card .search_img a.artwork-grid-img-link {
    display: block;
    outline: 5px solid var(--ti-paper, #fbf7ee);
    outline-offset: -6px;
    overflow: hidden;
    position: relative;
}

/* ── 3. Card body ────────────────────────────────────────────────────────── */

.search_sec.catalog-list-page  .custom_search .search_card .searchCard_body,
.search_sec.artwork-list-page  .custom_search .search_card .searchCard_body {
    padding: 16px 18px 14px;
    background: var(--ti-paper, #fbf7ee);
    border-top: 0.5px solid var(--ti-rule-soft, #ddd4be);
}

/* ── 4. Artist name — Manrope uppercase label ────────────────────────────── */

.search_sec.catalog-list-page  .custom_search .search_card .art-artist,
.search_sec.artwork-list-page  .custom_search .search_card .art-artist {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 5px;
}

.search_sec.catalog-list-page  .custom_search .search_card .art-artist h2,
.search_sec.catalog-list-page  .custom_search .search_card .art-artist h2 a,
.search_sec.artwork-list-page  .custom_search .search_card .art-artist h2,
.search_sec.artwork-list-page  .custom_search .search_card .art-artist h2 a {
    font-family: var(--f-ui, 'Manrope', sans-serif) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--ti-ink-mute, #6c647a) !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
    transition: color 0.2s ease;
}

.search_sec.catalog-list-page  .custom_search .search_card .art-artist h2 a:hover,
.search_sec.artwork-list-page  .custom_search .search_card .art-artist h2 a:hover {
    color: var(--ti-ink, #2a2438) !important;
}

/* Year — DM Mono plate number, subdued */
.search_sec.catalog-list-page  .custom_search .search_card .art-artist span,
.search_sec.catalog-list-page  .custom_search .search_card .art-artist span a,
.search_sec.artwork-list-page  .custom_search .search_card .art-artist span,
.search_sec.artwork-list-page  .custom_search .search_card .art-artist span a {
    font-family: var(--f-mono, 'DM Mono', monospace) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.06em !important;
    text-transform: none !important;
    color: var(--ti-ink-faint, #9a93a4) !important;
    white-space: nowrap;
    flex-shrink: 0;
    transition: color 0.2s ease;
}

/* ── 5. Artwork title — Italiana display serif ───────────────────────────── */

.search_sec.catalog-list-page  .custom_search .search_card .art-title,
.search_sec.catalog-list-page  .custom_search .search_card .art-title a,
.search_sec.artwork-list-page  .custom_search .search_card .art-title,
.search_sec.artwork-list-page  .custom_search .search_card .art-title a {
    font-family: var(--font-title, 'Italiana', 'Cormorant Garamond', serif) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.01em !important;
    color: var(--ti-ink, #2a2438) !important;
    display: block;
    margin-top: 2px;
    transition: color 0.2s ease;
}

.search_sec.catalog-list-page  .custom_search .search_card .art-title a:hover,
.search_sec.artwork-list-page  .custom_search .search_card .art-title a:hover {
    color: var(--ti-plein, #d89a78) !important;
}

/* ── 6. Hover-visible overlay panel ─────────────────────────────────────── */
/*   Global rules keep display:none by default and flip to display:block    */
/*   on .search_card:hover — we only style the surface here.                */

.search_sec.catalog-list-page  .custom_search .search_card .hover_visible,
.search_sec.artwork-list-page  .custom_search .search_card .hover_visible {
    background: var(--ti-paper, #fbf7ee) !important;   /* match __body / card surface */
    border-top: 0.5px solid var(--ti-rule, #c7bea8) !important;
    padding: 16px 18px;
}

/* Italic serif snippet */
.search_sec.catalog-list-page  .custom_search .search_card .hover_visible p,
.search_sec.artwork-list-page  .custom_search .search_card .hover_visible p {
    font-family: var(--font-body, 'Cormorant Garamond', serif) !important;
    font-size: 13.5px !important;
    font-style: italic !important;
    line-height: 1.6 !important;
    color: var(--ti-ink-soft, #4a4358) !important;
    margin-bottom: 16px;
}

.search_sec.catalog-list-page  .custom_search .search_card .hover_visible p a,
.search_sec.artwork-list-page  .custom_search .search_card .hover_visible p a {
    color: var(--ti-plein, #d89a78) !important;
}

/* Bottom row — CTA + fav */
.search_sec.catalog-list-page  .custom_search .search_card .card_bottom,
.search_sec.artwork-list-page  .custom_search .search_card .card_bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

/* ── 7. Add-to-cart — primary button (UI Kit .btn-primary) ──────────────── */

.search_sec.catalog-list-page  .custom_search .search_card .addToCart,
.search_sec.catalog-list-page  .custom_search .search_card .addToCart.added,
.search_sec.artwork-list-page  .custom_search .search_card .addToCart,
.search_sec.artwork-list-page  .custom_search .search_card .addToCart.added {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    font-family: var(--f-ui, 'Manrope', sans-serif) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    border-radius: 2px !important;
    padding: 11px 20px !important;
    border: none !important;
    width: auto !important;
    min-width: 0 !important;
    transition: background 0.25s ease, transform 0.25s ease !important;
    text-decoration: none;
}

/* Price display inside the CTA — Italiana numeral */
.search_sec.catalog-list-page  .custom_search .search_card .addToCart .product-price-display,
.search_sec.artwork-list-page  .custom_search .search_card .addToCart .product-price-display {
    font-family: var(--font-title, 'Italiana', serif) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    color: inherit !important;
}

.search_sec.catalog-list-page  .custom_search .search_card .addToCart:hover,
.search_sec.catalog-list-page  .custom_search .cartbtn_group a.addToCart:hover,
.search_sec.artwork-list-page  .custom_search .search_card .addToCart:hover,
.search_sec.artwork-list-page  .custom_search .cartbtn_group a.addToCart:hover {
    background: var(--ti-ink-soft, #4a4358) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    transform: translateY(-1px) !important;
}

/* ── 8. Favourite toggle ─────────────────────────────────────────────────── */

.search_sec.catalog-list-page  .custom_search .search_card .fav_group,
.search_sec.artwork-list-page  .custom_search .search_card .fav_group {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px !important;
    padding: 7px 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: border-color 0.2s ease, background 0.2s ease !important;
    flex-shrink: 0;
}

.search_sec.catalog-list-page  .custom_search .search_card .fav_group:hover,
.search_sec.catalog-list-page  .custom_search .search_card .fav_group.active,
.search_sec.artwork-list-page  .custom_search .search_card .fav_group:hover,
.search_sec.artwork-list-page  .custom_search .search_card .fav_group.active {
    background: var(--ti-gesso, #f9f4e8) !important;
    border-color: var(--ti-plein, #d89a78) !important;
}

.search_sec.catalog-list-page  .custom_search .search_card .fav_toggle,
.search_sec.artwork-list-page  .custom_search .search_card .fav_toggle {
    display: flex !important;
    align-items: center !important;
    line-height: 0 !important;
    padding: 0 !important;
}

.search_sec.catalog-list-page  .custom_search .search_card .fav_toggle img,
.search_sec.artwork-list-page  .custom_search .search_card .fav_toggle img {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
}

/* ── 9. Responsive — tighten mat padding at narrow viewport ─────────────── */

@media (max-width: 575.98px) {
    .search_sec.catalog-list-page  .custom_search .search_card .search_img,
    .search_sec.artwork-list-page  .custom_search .search_card .search_img {
        padding: 6px 6px 0;
    }
    .search_sec.catalog-list-page  .custom_search .search_card .search_img a.artwork-grid-img-link,
    .search_sec.artwork-list-page  .custom_search .search_card .search_img a.artwork-grid-img-link {
        outline-width: 3px;
    }
    .search_sec.catalog-list-page  .custom_search .search_card .searchCard_body,
    .search_sec.artwork-list-page  .custom_search .search_card .searchCard_body {
        padding: 12px 14px 10px;
    }
    .search_sec.catalog-list-page  .custom_search .search_card .hover_visible,
    .search_sec.artwork-list-page  .custom_search .search_card .hover_visible {
        padding: 12px 14px;
    }
}

/* ===== END Artwork catalog list card — TopImpressionists ===== */

/* ============================================================
   Article detail page (article_detail.html) — TopImpressionists
   Overrides the brand-neutral beige structure in global-custom
   with TI tokens: soft canvas, ochre/gold accent, Italiana titles
   over Cormorant Garamond body. Scoped under .article_main_page.
   ============================================================ */

/* Keyword tag pills */
.article_main_page .art_his_text {
  background: var(--ti-linen, #ede5d2);
  color: var(--ti-ink, #2a2438);
  font-family: var(--font-title-accent, "Manrope", sans-serif);
  letter-spacing: 0.06em;
}
.article_main_page .art_his_text a { color: inherit; }

/* Hero title + subtitle */
.article_main_page .art_history_wrapper .heading_text,
.article_main_page .heading_text {
  color: var(--ti-ink, #2a2438);
  font-family: var(--font-title, "Italiana", serif);
}
.article_main_page .taggart {
  color: var(--ti-ink-mute, #6c647a);
}

/* Body copy + headings + links */
.article_main_page .historicle_box,
.article_main_page .historicle_box p {
  color: var(--ti-ink-soft, #4a4358);
  font-family: var(--font-body, "Cormorant Garamond", serif);
}
.article_main_page .historicle_box h1,
.article_main_page .historicle_box h2,
.article_main_page .historicle_box h3,
.article_main_page .historicle_box .heading_text {
  color: var(--ti-ink, #2a2438);
  font-family: var(--font-title, "Italiana", serif);
}
.article_main_page .historicle_box a {
  color: var(--ti-ochre, #b78b4a);
}
.article_main_page .historicle_box a:hover {
  color: var(--lv, #6b4c1a);
}

/* Sidebar section headings */
.article_main_page .side_headings {
  color: var(--ti-ink-soft, #4a4358);
}

/* Table of contents links */
.article_main_page .tableContent .nav-link {
  color: var(--ti-ink-soft, #4a4358);
}
.article_main_page .tableContent li.nav-item {
  border-left-color: var(--ti-rule, #c7bea8);
}
.article_main_page .tableContent .nav-pills .nav-link.active,
.article_main_page .tableContent .nav-pills .show > .nav-link {
  color: var(--ti-ink, #2a2438);
  border-left: 2px solid var(--ti-ochre, #b78b4a) !important;
}

/* Related-artworks sidebar */
.article_main_page .related_artwork_box .vincent_color,
.article_main_page .related_artwork_box .vincent_color a {
  color: var(--ti-ochre, #b78b4a);
}
.article_main_page .related_artwork_box p a {
  color: var(--ti-ink-soft, #4a4358);
}
.article_main_page .related_artwork_box p a:hover {
  color: var(--ti-ink, #2a2438);
}

/* Related-articles list */
.article_main_page .related_aricle_box {
  border-bottom-color: var(--ti-rule, #c7bea8);
}
.article_main_page .related_aricle_box h4,
.article_main_page .related_aricle_box h4 a {
  color: var(--ti-ink, #2a2438);
  font-family: var(--font-title, "Italiana", serif);
}
.article_main_page .related_aricle_box p {
  color: var(--ti-ink-soft, #4a4358);
  font-family: var(--font-body, "Cormorant Garamond", serif);
}
.article_main_page .explore_techniques,
.article_main_page .explore_techniques a {
  color: var(--ti-ochre, #b78b4a);
}
/* ===== END Article detail page — TopImpressionists ===== */


/* ===== TOP 100 PAGES (artists / artworks / museums / articles) ===== */
/* Brand-faithful overrides for TopImpressionists. Structural layout lives in
   global-custom-V1.9.css; here we only set the --top100-* tokens to the
   impressionist palette and add visual overrides that win because this file
   loads after global-custom. No literal hex except when seeding a token. */

/* --- Shared brand tokens for the three component groups --- */
.top100-artist-grid,
.top100-artwork-list,
.top100-listing {
  --top100-card-bg: var(--ti-gesso);
  --top100-card-border: var(--ti-rule);
  --top100-ink: var(--ti-ink);
  --top100-muted: var(--ti-ink-mute);
  --top100-accent: var(--ti-plein);
  --top100-rank-color: rgba(42, 36, 56, 0.06); /* faint impressionist ink wash */
  --top100-card-radius: 2px;
}

/* ============================================================
   A) ARTISTS PORTRAIT GRID  (/en/ti/artists/top100/)
   Gesso plate cards, hairline rule, circular portrait, Italiana
   display name, Cormorant clamped description. Lift on hover.
   ============================================================ */
.top100-artist-grid .top100-artist-card {
  background: var(--top100-card-bg);
  border: .5px solid var(--top100-card-border);
  border-radius: var(--top100-card-radius);
  transition: box-shadow .35s ease, transform .35s ease, border-color .35s ease;
}
.top100-artist-grid .top100-artist-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--ti-shadow-lg);
  border-color: var(--ti-ink-soft);
}
.top100-artist-grid .top100-artist-card__photo {
  border: .5px solid var(--top100-card-border);
  outline: 5px solid var(--ti-paper);
  outline-offset: -5px;
  background: var(--ti-shadow-c);
  filter: saturate(.96);
  transition: filter .35s ease;
}
.top100-artist-grid .top100-artist-card:hover .top100-artist-card__photo {
  filter: saturate(1.04);
}
.top100-artist-grid .top100-artist-card__name,
.top100-artist-grid .top100-artist-card__name a {
  font-family: var(--f-display);
  font-weight: 400;
  letter-spacing: -.005em;
  color: var(--top100-ink);
  transition: color .25s ease;
}
.top100-artist-grid .top100-artist-card__name a:hover {
  color: var(--top100-accent);
}
.top100-artist-grid .top100-artist-card__desc {
  font-family: var(--f-edit);
  font-style: italic;
  color: var(--top100-muted);
  line-height: 1.55;
}

/* ============================================================
   B) ARTWORKS ZIGZAG GALLERY  (/en/ti/art/top100/)
   Giant ink-wash rank numeral in Italiana, gesso hover box with
   framed mat photo, plein-air accent on revealed meta.
   ============================================================ */
.top100-artwork-list .top100-artwork-card__rank {
  font-family: var(--f-display);
  font-weight: 400;
  color: var(--top100-rank-color);
  letter-spacing: -.02em;
}
.top100-artwork-list .top100-artwork-card__inner {
  background: var(--top100-card-bg);
  border: .5px solid var(--top100-card-border);
  border-radius: var(--top100-card-radius);
  transition: box-shadow .35s ease, transform .35s ease, border-color .35s ease;
}
.top100-artwork-list .top100-artwork-card:hover .top100-artwork-card__inner {
  box-shadow: var(--ti-shadow-frame);
  border-color: var(--ti-ink-soft);
}
.top100-artwork-list .top100-artwork-card__photo {
  background: var(--ti-shadow-c);
  border: .5px solid var(--top100-card-border);
}
/* the framed "mat" variant — gesso mat with inset outline, brand motif */
.top100-artwork-list .top100-artwork-card__photo--framed {
  outline: 6px solid var(--ti-gesso);
  outline-offset: -7px;
  box-shadow: var(--ti-shadow-md);
}
.top100-artwork-list .top100-artwork-card__details {
  color: var(--top100-ink);
}
.top100-artwork-list .top100-artwork-card__artist {
  font-family: var(--f-ui);
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--top100-accent);
}
.top100-artwork-list .top100-artwork-card__year {
  font-family: var(--f-mono);
  letter-spacing: .08em;
  color: var(--ti-ochre);
}
.top100-artwork-list .top100-artwork-card__title {
  font-family: var(--f-edit);
  font-style: italic;
  color: var(--top100-ink);
}
.top100-artwork-list .top100-artwork-card__meta {
  border-top: .5px solid var(--ti-rule-soft);
}

/* ============================================================
   C) MUSEUMS + ARTICLES LISTING  (/en/ti/museums|articles/top100/)
   Reuses .search_card — scope every override under .top100-listing so
   the bare .search_card shared by 24 other pages is never touched.
   These cards sit on the white listing surface (--ti-bg scope).
   ============================================================ */
.top100-listing .search_card {
  background-color: var(--ti-bg);
  border-color: var(--ti-line) !important;
  border-radius: var(--top100-card-radius);
  transition: background-color .2s ease, box-shadow .35s ease, transform .35s ease;
}
.top100-listing .search_card:hover {
  background-color: var(--ti-band) !important;
  box-shadow: var(--ti-shadow-hover-md);
  transform: translateY(-3px);
}
.top100-listing .search_img img {
  transition: transform .4s ease;
}
.top100-listing .search_card:hover .search_img img {
  transform: scale(1.03);
}
.top100-listing__card .art-artist h2,
.top100-listing__card .art-artist h2 a {
  font-family: var(--ti-body);
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ti-accent) !important;
  transition: color .15s ease;
}
.top100-listing__card .art-artist h2 a:hover {
  color: var(--ti-accent-dark) !important;
}
.top100-listing__card .art-title,
.top100-listing__card .art-title a {
  font-family: var(--ti-body);
  font-weight: 400;
  color: var(--ti-ink) !important;
  transition: color .15s ease;
}
.top100-listing__card .art-title a:hover {
  color: var(--ti-accent) !important;
}
/* Add-to-cart — brand pill button: ink fill, accent on hover */
.top100-listing .addToCart,
.top100-listing .addToCart.added {
  background: var(--ti-ink) !important;
  color: #ffffff !important;
  font-family: var(--ti-body);
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: none;
  border-radius: 999px;
  padding: 10px 20px;
  transition: background-color .15s ease, color .15s ease;
}
.top100-listing .addToCart:hover {
  background: var(--ti-accent) !important;
  color: #ffffff !important;
}
/* hover panel: fill full card so VIEW is always reachable, even with no text */
.top100-listing .search_card .hover_visible {
  top: 0;
  height: 100%;
  background: var(--ti-bg);
}
.top100-listing .search_card:hover .hover_visible {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 0 14px 20px;
}
.top100-listing .search_card .card_content {
  width: 100%;
}
/* ===== END TOP 100 PAGES — TopImpressionists ===== */

/* ===== fts_search — model type badge (TI) ===== */
/* Overlay label on the result thumbnail. Reuses the kit's .chip.on idiom:
   ink fill + gesso text, Manrope UI caps, wide tracking, 2px radius.
   Ink is dropped to ~72% alpha so the artwork stays readable beneath. */
.search_sec.fts-search-page .search_card_model_badge {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    padding: 7px 12px !important;
    border-radius: 2px !important;
    background: rgba(42, 36, 56, 0.72) !important; /* --ti-ink #2a2438 @ ~72% */
    color: var(--ti-gesso, #f9f4e8) !important;
}
.search_sec.fts-search-page .search_card_model_badge a {
    color: var(--ti-gesso, #f9f4e8) !important;
}

/* ===== artwork-catalog-card (catalog list grid card) ===== */
/*
   TopImpressionists — dedicated, self-contained styling for the catalog
   list grid card via the long companion classes (BEM). Scoped under
   .custom_search and appended at end so it wins the cascade over the
   shared .search_card rules. Brand tokens only — Impressionist palette:
     surfaces — --ti-paper / --ti-gesso / --ti-linen / --ti-shadow-c
     ink      — --ti-ink / --ti-ink-soft / --ti-ink-mute / --ti-ink-faint
     accent   — --ti-plein (peach) · --ti-ochre (gold) · --ti-rule(-soft)
     fonts    — --font-title (Italiana display) · --font-body (Cormorant
                Garamond edit) · --f-ui (Manrope) · --f-mono (DM Mono)
*/

/* ── 1. Card surface ─────────────────────────────────────────────────────── */
.custom_search .artwork-catalog-card {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px !important;
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, 0.1));
    overflow: visible;   /* hover panel floats below the card (see __hover); the
                            image scales DOWN on hover so nothing escapes */
    position: relative;
    transition:
        box-shadow 0.35s ease,
        transform 0.35s ease,
        background 0.25s ease;
}

.custom_search .artwork-catalog-card:hover {
    background: var(--ti-gesso, #f9f4e8) !important;
    box-shadow: var(--ti-shadow-hover-md, 0 6px 20px -6px rgba(42, 36, 56, 0.18));
    transform: translateY(-3px);
    z-index: 20;   /* keep the hovered card (and its below-card hover panel) above
                      later cards — the transform makes it a stacking context */
}
.custom_search .artwork-catalog-card:hover .artwork-catalog-card__body,
.custom_search .artwork-catalog-card:hover .artwork-catalog-card__hover {
    background: var(--ti-gesso, #f9f4e8) !important;
}

/* ── 2. Image wrapper — gallery mat motif (UI Kit .work .imgbox) ─────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__media {
    background: var(--ti-shadow-c, #e6dec8);
    border-bottom: 0.5px solid var(--ti-rule-soft, #ddd4be);
    padding: 10px 10px 0;
    line-height: 0;
    position: relative;
    overflow: hidden;
}

.custom_search .artwork-catalog-card .artwork-catalog-card__media-link {
    display: block;
    outline: 5px solid var(--ti-paper, #fbf7ee);
    outline-offset: -6px;
    overflow: hidden;
    position: relative;
    padding: 0;
}
/* neutralise the global text-link over/underline pseudo rules on the image anchor */
.custom_search .artwork-catalog-card .artwork-catalog-card__media-link::before,
.custom_search .artwork-catalog-card .artwork-catalog-card__media-link::after {
    content: none !important;
}

/* Image — zoom-retreat on hover (brand signature: image shrinks on dark mat) */
.custom_search .artwork-catalog-card .artwork-catalog-card__image {
    display: block;
    width: 100%;
    height: auto;
    transition:
        transform 0.6s ease,
        opacity 0.6s ease;
}
.custom_search .artwork-catalog-card:hover .artwork-catalog-card__image,
.custom_search .artwork-catalog-card .artwork-catalog-card__media-link:hover .artwork-catalog-card__image {
    transform: scale(0.95);
    opacity: 0.9;
}

/* ── 3. Body — artist + title block ──────────────────────────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__body {
    padding: 16px 18px 14px;
    background: var(--ti-paper, #fbf7ee);
    border-top: 0.5px solid var(--ti-rule-soft, #ddd4be);
}

/* ── 4. Artist — Manrope uppercase label + DM Mono year ──────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__artist {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 5px;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__artist h2,
.custom_search .artwork-catalog-card .artwork-catalog-card__artist h2 a {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--ti-ink-mute, #6c647a) !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
    transition: color 0.2s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__artist h2 a:hover {
    color: var(--ti-ink, #2a2438) !important;
}
/* Year — DM Mono plate number, subdued */
.custom_search .artwork-catalog-card .artwork-catalog-card__artist span,
.custom_search .artwork-catalog-card .artwork-catalog-card__artist span a {
    font-family: var(--f-mono, "DM Mono", monospace) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.06em !important;
    text-transform: none !important;
    color: var(--ti-ink-faint, #9a93a4) !important;
    white-space: nowrap;
    flex-shrink: 0;
    transition: color 0.2s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__artist span a:hover {
    color: var(--ti-ochre, #b78b4a) !important;
}

/* ── 5. Title — Italiana display serif ───────────────────────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__title,
.custom_search .artwork-catalog-card .artwork-catalog-card__title a {
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.01em !important;
    color: var(--ti-ink, #2a2438) !important;
    display: block;
    margin-top: 2px;
    transition: color 0.2s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__title a:hover {
    color: var(--ti-plein, #d89a78) !important;
}

/* ── 6. Hover overlay — revealed on card hover ───────────────────────────── */
/*   The shared .hover_visible toggling (display none↔block) is handled by    */
/*   global rules; here we give the overlay the same paper surface as __body. */
.custom_search .artwork-catalog-card .artwork-catalog-card__hover {
    position: absolute;
    top: 100%;
    left: -1px;
    width: calc(100% + 2px);
    box-sizing: border-box;
    background: var(--ti-paper, #fbf7ee) !important;   /* match card surface */
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-top: 0.5px solid var(--ti-rule, #c7bea8) !important;
    padding: 16px 18px;
    margin-top: 0;
    z-index: 1;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__content p {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    font-size: 13.5px !important;
    font-style: italic !important;
    line-height: 1.6 !important;
    color: var(--ti-ink-soft, #4a4358) !important;
    margin-bottom: 16px;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__content p a {
    color: var(--ti-plein, #d89a78) !important;
}

/* ── 7. Footer — cart + fav row ──────────────────────────────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__cart-group {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
}

/* ── 8. Buy button — primary (UI Kit .btn-primary, ink on gesso) ─────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    background: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    white-space: normal !important;   /* allow the label to wrap onto a second line */
    border: none !important;
    border-radius: 2px !important;
    padding: 11px 20px !important;
    text-decoration: none !important;
    transition:
        background 0.25s ease,
        transform 0.25s ease !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn:hover {
    background: var(--ti-ink-soft, #4a4358) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    transform: translateY(-1px) !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn::before,
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn::after {
    content: none !important;
}

/* Price — Italiana numeral inside the buy button */
.custom_search .artwork-catalog-card .artwork-catalog-card__price {
    font-family: var(--font-title, "Italiana", serif) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
    text-transform: none !important;
    color: inherit !important;
}

/* ── 9. Favourite toggle — hairline chip ─────────────────────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-group {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px !important;
    padding: 7px 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
    transition:
        border-color 0.2s ease,
        background 0.2s ease !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-group:hover,
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-group.active {
    background: var(--ti-gesso, #f9f4e8) !important;
    border-color: var(--ti-plein, #d89a78) !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle {
    display: flex !important;
    align-items: center !important;
    line-height: 0 !important;
    padding: 0 !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle::before,
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle::after {
    content: none !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle img {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
}

/* ── 10. Responsive — tighten mat padding at narrow viewport ─────────────── */
@media (max-width: 575.98px) {
    .custom_search .artwork-catalog-card .artwork-catalog-card__media {
        padding: 6px 6px 0;
    }
    .custom_search .artwork-catalog-card .artwork-catalog-card__media-link {
        outline-width: 3px;
    }
    .custom_search .artwork-catalog-card .artwork-catalog-card__body {
        padding: 12px 14px 10px;
    }
    .custom_search .artwork-catalog-card .artwork-catalog-card__hover {
        padding: 12px 14px;
    }
}
/* ===== END artwork-catalog-card — TopImpressionists ===== */

/* ===== article_list.html — article list cards (article-list-card) ===== */
/*
   Scope: .article-list-page  .article-list-grid  .article-list-card*
   The section element also carries .catalog-list-page / .artwork-list-page,
   so the shared-class artwork rules above already paint a base. This layer
   adds the ARTICLE identity (editorial eyebrow, "Read" CTA as PRIMARY button)
   and wins over the over-specified globals by chaining page + grid + long
   hooks. Only .article-list-card* / .article-list-grid are targeted here.

   Tokens reused (no hardcoded hex where a token exists):
     surfaces — --ti-paper, --ti-gesso, --ti-linen, --ti-shadow-c
     ink      — --ti-ink, --ti-ink-soft, --ti-ink-mute, --ti-ink-faint
     accent   — --ti-plein (plein-air apricot), --ti-ochre (editorial accent)
     rules    — --ti-rule, --ti-rule-soft
     shadow   — --ti-shadow-sm, --ti-shadow-hover-md
     fonts    — --font-title (Italiana), --font-body (Cormorant Garamond),
                --f-ui (Manrope), --f-mono (DM Mono)

   !important notes:
     - __meta eyebrow h2 a / span: global
       `.search_sec.catalog-list-page .custom_search .search_card .art-artist h2 a`
       is ~(0,5,2); our (0,4,2) page+grid chain can't out-rank it on weight,
       so the accent eyebrow + year colours use !important.
     - __read-btn reuses the .addToCart base; we repaint it as the brand
       primary button and need !important to beat that base layer + globals.
*/

/* ── Grid surface (inherits global layout; refine gutter) ─────────────── */
.article-list-page  .article-list-grid {
    --r8-card-radius: 2px;
}

/* ── 1. Card surface — paper plate, hover lift ───────────────────────── */
.article-list-page  .article-list-grid  .article-list-card {
    background: var(--ti-paper, #fbf7ee);
    border: 0.5px solid var(--ti-rule, #c7bea8);
    border-radius: var(--r8-card-radius, 2px);
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, 0.1));
    overflow: visible;
    transition:
        box-shadow 0.35s ease,
        transform 0.35s ease,
        background 0.25s ease;
}

.article-list-page  .article-list-grid  .article-list-card:hover {
    background: var(--ti-gesso, #f9f4e8);
    box-shadow: var(--ti-shadow-hover-md, 0 6px 20px -6px rgba(42, 36, 56, 0.18));
    transform: translateY(-3px);
}

.article-list-page  .article-list-grid  .article-list-card__inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* ── 2. Media — mat-inset image, slow zoom on hover ──────────────────── */
.article-list-page  .article-list-grid  .article-list-card__media {
    background: var(--ti-shadow-c, #e6dec8);
    border-bottom: 0.5px solid var(--ti-rule-soft, #ddd4be);
    padding: 10px 10px 0;
    line-height: 0;
    overflow: hidden;
    position: relative;
}

.article-list-page  .article-list-grid  .article-list-card__media-link {
    display: block;
    outline: 5px solid var(--ti-paper, #fbf7ee);
    outline-offset: -6px;
    overflow: hidden;
    position: relative;
}

.article-list-page  .article-list-grid  .article-list-card__img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.article-list-page  .article-list-grid  .article-list-card:hover .article-list-card__img {
    transform: scale(1.045);
}

/* ── 3. Body ─────────────────────────────────────────────────────────── */
.article-list-page  .article-list-grid  .article-list-card__body {
    padding: 16px 18px 14px;
    background: var(--ti-paper, #fbf7ee);
    border-top: 0.5px solid var(--ti-rule-soft, #ddd4be);
}

/* ── 4. Meta — editorial eyebrow (category) + year ───────────────────── */
.article-list-page  .article-list-grid  .article-list-card__meta {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 6px;
}

.article-list-page  .article-list-grid  .article-list-card__meta h2,
.article-list-page  .article-list-grid  .article-list-card__meta h2 a {
    font-family: var(--f-ui, 'Manrope', sans-serif) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    color: var(--ti-ochre, #b78b4a) !important; /* accent eyebrow */
    line-height: 1.3 !important;
    margin: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
    transition: color 0.2s ease;
}

.article-list-page  .article-list-grid  .article-list-card__meta h2 a:hover {
    color: var(--ti-plein, #d89a78) !important;
}

/* Year — DM Mono plate number */
.article-list-page  .article-list-grid  .article-list-card__meta span,
.article-list-page  .article-list-grid  .article-list-card__meta span a {
    font-family: var(--f-mono, 'DM Mono', monospace) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.06em !important;
    text-transform: none !important;
    color: var(--ti-ink-faint, #9a93a4) !important;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── 5. Title — Italiana display serif ───────────────────────────────── */
.article-list-page  .article-list-grid  .article-list-card__title,
.article-list-page  .article-list-grid  .article-list-card__title a {
    font-family: var(--font-title, 'Italiana', 'Cormorant Garamond', serif) !important;
    font-size: 17.5px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.01em !important;
    color: var(--ti-ink, #2a2438) !important;
    display: block;
    margin-top: 2px;
    transition: color 0.2s ease;
}

.article-list-page  .article-list-grid  .article-list-card__title a:hover {
    color: var(--ti-plein, #d89a78) !important;
}

/* ── 6. Hover panel — italic serif excerpt ───────────────────────────── */
.article-list-page  .article-list-grid  .article-list-card__hover {
    background: var(--ti-linen, #ede5d2) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-top: 0.5px solid var(--ti-rule, #c7bea8) !important;
}
.article-list-page  .article-list-grid  .article-list-card__content {
    padding: 14px 18px 16px;
}

.article-list-page  .article-list-grid  .article-list-card__content p {
    font-family: var(--font-body, 'Cormorant Garamond', serif) !important;
    font-size: 14px !important;
    font-style: italic !important;
    line-height: 1.6 !important;
    color: var(--ti-ink-soft, #4a4358) !important;
    margin-bottom: 16px;
}

.article-list-page  .article-list-grid  .article-list-card__content p a {
    color: var(--ti-plein, #d89a78) !important;
}

/* ── 7. Footer + actions ─────────────────────────────────────────────── */
.article-list-page  .article-list-grid  .article-list-card__footer {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
}

.article-list-page  .article-list-grid  .article-list-card__actions {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

/* ── 8. "Read" CTA — brand PRIMARY button ────────────────────────────── */
.article-list-page  .article-list-grid  .article-list-card__read-btn,
.article-list-page  .article-list-grid  .article-list-card .article-list-card__read-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    font-family: var(--f-ui, 'Manrope', sans-serif) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    border: none !important;
    border-radius: 2px !important;
    padding: 11px 22px !important;
    width: auto !important;
    min-width: 0 !important;
    text-decoration: none !important;
    transition: background 0.25s ease, transform 0.25s ease !important;
}

.article-list-page  .article-list-grid  .article-list-card__read-btn:hover,
.article-list-page  .article-list-grid  .article-list-card .article-list-card__read-btn:hover {
    background: var(--ti-plein, #d89a78) !important;
    color: var(--ti-ink, #2a2438) !important;
    transform: translateY(-1px) !important;
}

/* ── 9. Responsive — tighten mat at narrow viewport ──────────────────── */
@media (max-width: 575.98px) {
    .article-list-page  .article-list-grid  .article-list-card__media {
        padding: 6px 6px 0;
    }
    .article-list-page  .article-list-grid  .article-list-card__media-link {
        outline-width: 3px;
    }
    .article-list-page  .article-list-grid  .article-list-card__body {
        padding: 12px 14px 10px;
    }
    .article-list-page  .article-list-grid  .article-list-card__content {
        padding: 12px 14px 14px;
    }
}

/* ===== END article_list.html — article list cards ===== */

/* ===== article_list.html — specificity lift over artwork-list base rules (eyebrow accent) ===== */
.search_sec.catalog-list-page.article-list-page .custom_search .search_card .article-list-card__meta h2 a {
  font-family: var(--f-ui, 'Manrope', sans-serif) !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ti-ochre, #b78b4a) !important;
}
.search_sec.catalog-list-page.article-list-page .custom_search .search_card .article-list-card__meta h2 a:hover {
  color: var(--ti-plein, #d89a78) !important;
}

/* ===== list-page filter sidebar + sort (artwork-list-page scope, shared by art/article/artist/museum lists) — TI ===== */
.search_sec.artwork-list-page {
  /* local accent aliases (same values as :root --lc / --ti-* tokens) */
  --ti-accent: var(--lc, #a0742a);
  --ti-accent-dark: var(--lv, #6b4c1a);
}

/* Sort chrome */
.search_sec.artwork-list-page .sorting_content,
.search_sec.artwork-list-page .sort_by {
  color: var(--ti-ink, #2a2438) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
}
.search_sec.artwork-list-page .sorting_content select.custom-select {
  background-color: var(--ti-gesso, #f9f4e8) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  color: var(--ti-ink, #2a2438) !important;
  border-radius: 2px !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 13px !important;
}

/* Filter panel shell */
.search_sec.artwork-list-page .filter-panel {
  background-color: var(--ti-gesso, #f9f4e8) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  border-radius: 2px !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
}

/* Filter title + CLEAR ALL */
.search_sec.artwork-list-page .filter-title span {
  color: var(--ti-ink, #2a2438) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
}
.search_sec.artwork-list-page .filter-title a {
  color: var(--ti-accent, #a0742a) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}
.search_sec.artwork-list-page .filter-title a:hover {
  color: var(--ti-accent-dark, #6b4c1a) !important;
}

/* Active-filter badges */
.search_sec.artwork-list-page .badge_list {
  border-bottom: 1px solid var(--ti-rule, #c7bea8) !important;
}
.search_sec.artwork-list-page .badge-filter {
  background-color: var(--ti-paper, #fbf7ee) !important;
  color: var(--ti-ink, #2a2438) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  border-radius: 999px !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 13px !important;
}

/* Accordion groups */
.search_sec.artwork-list-page .accordion-item {
  background-color: var(--ti-gesso, #f9f4e8) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
}
.search_sec.artwork-list-page button.accordion-button,
.search_sec.artwork-list-page .accordion-button:not(.collapsed) {
  background-color: var(--ti-gesso, #f9f4e8) !important;
  color: var(--ti-ink, #2a2438) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  box-shadow: none !important;
}
.search_sec.artwork-list-page .accordion-body {
  color: var(--ti-ink, #2a2438) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
}

/* Color / option lists */
/* Category value links (filter sidebar) — chip styling consistent with group-by Sidebar_tags + list_category. */
.search_sec.artwork-list-page .filter-panel .colors_list li:has(> a.filter-value-link) {
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  cursor: default !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li a.filter-value-link {
  display: inline-block !important;
  width: auto !important;
  padding: 4px 9px !important;
  background: var(--ti-gesso, #f9f4e8) !important;
  color: var(--ti-ink-mute, #6c647a) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  border-radius: 2px !important;
  font-family: var(--font-title-accent, "Manrope", sans-serif) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  letter-spacing: .08em !important;
  text-transform: none !important;
  text-decoration: none !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li a.filter-value-link:hover {
  color: var(--ti-plein, #d89a78) !important;
  border-color: var(--ti-plein, #d89a78) !important;
  text-decoration: none !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li.active:has(> a.filter-value-link) {
  background: transparent !important;
  border: none !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li.active:has(> a.filter-value-link) a.filter-value-link {
  background: var(--ti-ink, #2a2438) !important;
  color: var(--ti-gesso, #f9f4e8) !important;
  border-color: var(--ti-ink, #2a2438) !important;
}

.search_sec.artwork-list-page .filter-panel .colors_list li {
  color: var(--ti-ink, #2a2438) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li span {
  color: var(--ti-ink, #2a2438) !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li:hover,
.search_sec.artwork-list-page .filter-panel .colors_list li:hover span {
  color: var(--ti-accent, #a0742a) !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li.active {
  background: var(--ti-ink, #2a2438) !important;   /* inverted chip — UI Kit .chip.on */
  border-color: var(--ti-ink, #2a2438) !important;
  border-radius: 2px !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li.active,
.search_sec.artwork-list-page .filter-panel .colors_list li.active span {
  color: var(--ti-gesso, #f9f4e8) !important;
  font-weight: 600 !important;
}

/* Checkboxes + search-within-filter input + tag buttons */
.search_sec.artwork-list-page .form-check input {
  accent-color: var(--ti-accent, #a0742a) !important;
}
.search_sec.artwork-list-page .form-check input:checked {
  background-color: var(--ti-accent, #a0742a) !important;
  border-color: var(--ti-accent, #a0742a) !important;
}
.search_sec.artwork-list-page .artist_input {
  background-color: var(--ti-paper, #fbf7ee) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  color: var(--ti-ink, #2a2438) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  border-radius: 2px !important;
}
.search_sec.artwork-list-page .artist_input::placeholder {
  color: var(--ti-ink-faint, #9a93a4) !important;
}
.search_sec.artwork-list-page .tag-btn {
  background-color: var(--ti-gesso, #f9f4e8) !important;
  color: var(--ti-ink, #2a2438) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
}

/* Price range slider (noUiSlider) */
.search_sec.artwork-list-page .noUi-target {
  background: var(--ti-rule, #c7bea8) !important;
  border: none !important;
  box-shadow: none !important;
}
.search_sec.artwork-list-page .noUi-connect {
  background: var(--ti-accent, #a0742a) !important;
}
.search_sec.artwork-list-page .noUi-horizontal .noUi-handle {
  background: var(--ti-ink, #2a2438) !important;
  border: 1px solid var(--ti-accent, #a0742a) !important;
  box-shadow: none !important;
}
/* ===== END list-page filter sidebar + sort — TI ===== */

/* ===== TI — Artists alphabet (group_by_alphabet / start_by_letter) ===== */

/* ── 1. Alphabet index bar ── */
.art_info_section .alphabet_box .alpha_letter {
    border-color: var(--ti-rule, #c7bea8);
    color: var(--ti-ink, #2a2438);
    font-family: var(--ti-f-display, "Italiana", "Cormorant Garamond", serif);
}
.art_info_section .alphabet_box .alpha_letter:last-child {
    border-right-color: var(--ti-rule, #c7bea8);
}
.art_info_section .alphabet_box .alpha_letter a {
    color: var(--ti-ink, #2a2438);
}
.art_info_section .alphabet_box .alpha_letter:hover {
    background: var(--ti-linen, #ede5d2);
    color: var(--ti-ink, #2a2438);
}
.art_info_section .alphabet_box .alpha_letter:hover a {
    color: var(--ti-ink, #2a2438);
}

/* ── 2. Alphabet group heading ── */
.art_info_section .alphabet_indv h4 {
    color: var(--ti-ink, #2a2438);
    font-family: var(--ti-f-display, "Italiana", "Cormorant Garamond", serif);
}

/* ── 3. Artist profile card ── */
.art_info_section .profile_img img {
    border-radius: 60px;
    border: 0.5px solid var(--ti-rule, #c7bea8);
    object-fit: cover;
}
.art_info_section .profile_name a {
    color: var(--ti-ink-soft, #4a4358);
    font-family: var(--ti-f-ui, "Manrope", sans-serif);
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.01em;
    transition: color 0.22s;
}
.art_info_section .profile_name a:hover {
    color: var(--ti-plein, #d89a78);
}
.art_info_section .profile_year {
    color: var(--ti-ink-mute, #6c647a);
    font-family: var(--f-mono, "DM Mono", ui-monospace, monospace);
    font-size: 11px;
    letter-spacing: 0.06em;
}

/* ── 4. "View more" link ── */
.art_info_section .view_more_alpha a {
    color: var(--ti-ink-soft, #4a4358);
    font-family: var(--ti-f-ui, "Manrope", sans-serif);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    transition: color 0.22s;
}
.art_info_section .view_more_alpha a:hover,
.art_info_section .view_more_alpha a:focus {
    color: var(--ti-plein, #d89a78);
}
.art_info_section .view_more_alpha a .fa-angle-right {
    font-size: 14px;
}

/* ===== END TI — Artists alphabet ===== */


/* ===== photo_to_restyled_masterpiece =====================================
   TopImpressionists brand styling for the artistic-style transformation page.
   All selectors scoped under body.custom-repro-page. Tokens reused from the
   canonical TI palette declared at the top of this file (--ti-* / short aliases).
   Hairline grammar, cream surfaces (paper/gesso), aubergine ink, plein-air
   peach accent, Italiana display + Cormorant edit + Manrope UI + DM Mono.
   ======================================================================= */

/* --- Brand tokens consumed by shared structural CSS (global-custom) ----- */
body.custom-repro-page {
    --pr-spinner-overlay: rgba(249, 244, 232, 0.92);   /* --ti-gesso, translucent */
    --pr-remove-bg:        var(--ti-ink, #2a2438);
    --pr-remove-bg-hover:  var(--ti-ink-soft, #4a4358);
    --pr-muted-text:       var(--ti-ink-mute, #6c647a);
}

/* --- Page canvas -------------------------------------------------------- */
body.custom-repro-page {
    background: var(--ti-canvas, #f4eee2);
    color: var(--ti-ink, #2a2438);
}

/* --- Hero caption ------------------------------------------------------- */
body.custom-repro-page .consultation_content h6 {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.28em !important;
    text-transform: uppercase !important;
    color: var(--ti-ochre, #b78b4a) !important;
    margin-bottom: 14px !important;
}
body.custom-repro-page .consultation_content h1 {
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    font-weight: 400 !important;
    letter-spacing: -0.005em !important;
    line-height: 0.95 !important;
    color: var(--ti-gesso, #f9f4e8) !important;
}

/* --- Intro paragraphs --------------------------------------------------- */
body.custom-repro-page .consultation_bottom p {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    font-size: 18px !important;
    line-height: 1.6 !important;
    color: var(--ti-canvas, #f4eee2) !important;
}

/* --- Step blocks (form_produc) — UI Kit .ostep grammar ----------------- */
body.custom-repro-page .production_form .form_produc {
    background: var(--ti-paper, #fbf7ee);
    border: 0.5px solid var(--ti-rule, #c7bea8);
    border-radius: 2px;
    padding: 30px;
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, 0.1));
}

/* Step badge — DM Mono on aubergine, UI Kit .step-badge */
body.custom-repro-page .steps_count span {
    display: inline-block;
    font-family: var(--f-mono, "DM Mono", ui-monospace, monospace) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    background: var(--ti-ink, #2a2438) !important;
    padding: 8px 12px !important;
    border-radius: 0 !important;
    line-height: 1 !important;
}

/* Step heading — Italiana display serif */
body.custom-repro-page .form_heading {
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    font-size: 26px !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.005em !important;
    color: var(--ti-ink, #2a2438) !important;
    margin-top: 16px !important;
}

/* Step help text — italic Cormorant */
body.custom-repro-page .form_content {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    font-size: 15px !important;
    font-style: italic !important;
    line-height: 1.5 !important;
    color: var(--ti-ink-mute, #6c647a) !important;
}

/* File-type hint — DM Mono caption */
body.custom-repro-page .img_extention {
    font-family: var(--f-mono, "DM Mono", ui-monospace, monospace) !important;
    font-size: 10px !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--ti-ink-faint, #9a93a4) !important;
}

/* --- Step 01 · upload box — UI Kit .upload dashed mat ------------------ */
body.custom-repro-page .image-upload-box#add-image {
    border: 1px dashed var(--ti-rule, #c7bea8);
    border-radius: 2px;
    background: var(--ti-gesso, #f9f4e8);
    transition: border-color 0.2s ease, background 0.2s ease;
}
body.custom-repro-page .image-upload-box#add-image:hover {
    border-color: var(--ti-monet, #6b8eb3);
    background: var(--ti-canvas, #f4eee2);
}

/* Spinner ring — monet on cream overlay (overlay bg set via --pr token) */
body.custom-repro-page #upload-spinner {
    border: 3px solid var(--ti-rule-soft, #ddd4be);
    border-top-color: var(--ti-monet, #6b8eb3);
    border-radius: 50%;
}

/* Remove button — ink disc (bg from --pr-remove-bg) */
body.custom-repro-page #remove-image-btn {
    border-radius: 50%;
    font-family: var(--f-ui, "Manrope", sans-serif);
    border: 0.5px solid var(--ti-paper, #fbf7ee);
}

/* --- Step 02 · edit-request textarea — UI Kit .txt-input -------------- */
body.custom-repro-page .form-control#image_edit_requests {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px !important;
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 14px !important;
    color: var(--ti-ink, #2a2438) !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease !important;
}
body.custom-repro-page .form-control#image_edit_requests:focus {
    border-color: var(--ti-monet, #6b8eb3) !important;
    box-shadow: none !important;
    outline: 0 !important;
}
body.custom-repro-page .form-control#image_edit_requests::placeholder {
    color: var(--ti-ink-faint, #9a93a4) !important;
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    font-style: italic !important;
    font-size: 15px !important;
}
body.custom-repro-page .form-floating > label[for="image_edit_requests"] {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 10px !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    color: var(--ti-ink-mute, #6c647a) !important;
}

/* --- Chips — Sidebar_tags / category-filter / edit-request examples ---- */
/*   UI Kit .chip pill grammar (gesso pill → ink "on" state).             */
body.custom-repro-page .Sidebar_tags a,
body.custom-repro-page a.category-filter-link,
body.custom-repro-page a.edit-request-example {
    display: inline-flex;
    align-items: center;
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: var(--ti-ink-mute, #6c647a) !important;
    background: var(--ti-gesso, #f9f4e8) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 30px !important;
    padding: 7px 14px !important;
    transition: color 0.25s ease, background 0.25s ease, border-color 0.25s ease !important;
}
body.custom-repro-page .Sidebar_tags a:hover,
body.custom-repro-page a.category-filter-link:hover,
body.custom-repro-page a.edit-request-example:hover {
    color: var(--ti-ink, #2a2438) !important;
    border-color: var(--ti-ink-soft, #4a4358) !important;
    background: var(--ti-canvas, #f4eee2) !important;
}

/* Active category — ink pill (UI Kit .chip.on) */
body.custom-repro-page a.category-filter-link.active {
    color: var(--ti-gesso, #f9f4e8) !important;
    background: var(--ti-ink, #2a2438) !important;
    border-color: var(--ti-ink, #2a2438) !important;
}

/* "Examples:" intro lead-in */
body.custom-repro-page .edit-request-examples-intro strong {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 10px !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
    color: var(--ti-ink-mute, #6c647a) !important;
}

/* --- Step 04 · style cards — UI Kit .work mat-frame plate -------------- */
body.custom-repro-page .search_card {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px !important;
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, 0.1)) !important;
    overflow: hidden;
    transition: box-shadow 0.35s ease, transform 0.35s ease, background 0.25s ease;
}
body.custom-repro-page .search_card:hover {
    background: var(--ti-gesso, #f9f4e8) !important;
    box-shadow: var(--ti-shadow-hover-md, 0 6px 20px -6px rgba(42, 36, 56, 0.18)) !important;
    transform: translateY(-3px);
}

/* Image — mat motif inset */
body.custom-repro-page .search_card .search_img {
    background: var(--ti-shadow-c, #e6dec8);
    padding: 10px 10px 0;
    line-height: 0;
}
body.custom-repro-page .search_card .search_img img {
    outline: 5px solid var(--ti-paper, #fbf7ee);
    outline-offset: -6px;
}

/* Card body */
body.custom-repro-page .search_card .searchCard_body {
    padding: 16px 18px 14px;
    background: var(--ti-paper, #fbf7ee);
    border-top: 0.5px solid var(--ti-rule-soft, #ddd4be);
}

/* Category label — Manrope uppercase */
body.custom-repro-page .search_card .art-artist h2 {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--ti-ink-mute, #6c647a) !important;
    line-height: 1.3 !important;
    margin: 0 0 5px !important;
}

/* Style title — Italiana display serif */
body.custom-repro-page .search_card .art-title span {
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.01em !important;
    color: var(--ti-ink, #2a2438) !important;
    display: block;
}

/* Hover description — italic Cormorant */
body.custom-repro-page .search_card .card_content p {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    font-size: 13.5px !important;
    font-style: italic !important;
    line-height: 1.6 !important;
    color: var(--ti-ink-soft, #4a4358) !important;
    margin: 10px 0 0;
}

/* --- LEFT column steps 02–08 — override global beige panels ------------- */
body.custom-repro-page .production_form .repro-faces__option,
body.custom-repro-page .production_form .repro-styles__option {
    background: var(--ti-gesso, #f9f4e8) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
}
body.custom-repro-page .production_form .repro-faces__option.checked_box,
body.custom-repro-page .production_form .repro-styles__option.checked_box {
    border-color: var(--ti-monet, #6b8eb3) !important;
}
body.custom-repro-page .production_form .repro-customization__section {
    background: var(--ti-gesso, #f9f4e8) !important;
}
body.custom-repro-page .production_form .custom_detail {
    background: var(--ti-paper, #fbf7ee);
    border-color: var(--ti-rule, #c7bea8);
}
body.custom-repro-page .production_form .switches-container {
    background: var(--ti-rule-soft, #ddd4be) !important;
}
body.custom-repro-page .production_form .switch {
    background: var(--ti-ink, #2a2438) !important;
}
body.custom-repro-page .production_form .form-floating .form-control,
body.custom-repro-page .production_form .select_size select {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    color: var(--ti-ink, #2a2438) !important;
}

/* ===== photo_to_restyled_masterpiece · RIGHT column (summery_checkout) ====
   Order summary + checkout panel. Same body.custom-repro-page scope and --ti-*
   tokens as the LEFT column above. Overrides global-custom defaults (#3E342A
   ink / #875D2A brown CTA) with the TI cream/aubergine/plein-air palette.
   ======================================================================= */

/* --- Summary card shell --------------------------------------------------- */
body.custom-repro-page .summery_checkout {
    background: var(--ti-paper, #fbf7ee) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 2px;
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, 0.1));
}

/* Section titles — "Transform your photos…" / "Summary & Checkout" */
body.custom-repro-page .summery_checkout .sum_chek_text {
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    font-weight: 400 !important;
    letter-spacing: -0.005em !important;
    color: var(--ti-ink, #2a2438) !important;
    border-bottom: 0.5px solid var(--ti-rule, #c7bea8) !important;
}

/* --- Accordions ("How our service works" / "Order Details") -------------- */
body.custom-repro-page .summery_checkout .collapse_inner_box {
    background: transparent !important;
    border-color: var(--ti-rule, #c7bea8) !important;
}
body.custom-repro-page .summery_checkout .accordion-button,
body.custom-repro-page .summery_checkout .accordion-button:not(.collapsed) {
    background: transparent !important;
    color: var(--ti-ink, #2a2438) !important;
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    box-shadow: none !important;
}
body.custom-repro-page .summery_checkout .accordion-button:focus {
    border-color: var(--ti-rule, #c7bea8) !important;
    box-shadow: none !important;
    outline: 0 !important;
}
body.custom-repro-page .summery_checkout .accordion-body,
body.custom-repro-page .summery_checkout .accordion-body p {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    color: var(--ti-ink-soft, #4a4358) !important;
}

/* --- Summary line items (.repro-summary__row) ---------------------------- */
body.custom-repro-page .summery_checkout .repro-summary__row {
    border-bottom: 0.5px solid var(--ti-rule, #c7bea8) !important;
}
body.custom-repro-page .summery_checkout .repro-summary__row .dtl_con h4 {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    color: var(--ti-ink, #2a2438) !important;
}
body.custom-repro-page .summery_checkout .repro-summary__row .dtl_con p {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    color: var(--ti-ink-mute, #6c647a) !important;
}
body.custom-repro-page .summery_checkout .repro-summary__row .detail_cont_right h4 {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    color: var(--ti-ochre, #b78b4a) !important;
}

/* --- Total --------------------------------------------------------------- */
body.custom-repro-page .summery_checkout .total_price_box .total_price,
body.custom-repro-page .summery_checkout h4.total_price,
body.custom-repro-page .summery_checkout #total_price_display {
    font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
    color: var(--ti-ink, #2a2438) !important;
}

/* --- Checkout CTAs ------------------------------------------------------- */
/* Primary — Add to Cart: aubergine ink plate (UI Kit primary), not #875D2A */
body.custom-repro-page .summery_checkout .add_tocart_btn button,
body.custom-repro-page .summery_checkout .add_tocart_btn #addToCartButton {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    letter-spacing: 0.04em !important;
    background: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
    border: 0.5px solid var(--ti-ink, #2a2438) !important;
    border-radius: 0 !important;
    transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease !important;
}
body.custom-repro-page .summery_checkout .add_tocart_btn button:hover,
body.custom-repro-page .summery_checkout .add_tocart_btn #addToCartButton:hover {
    background: var(--ti-ink-soft, #4a4358) !important;
    border-color: var(--ti-ink-soft, #4a4358) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
}
/* Secondary — SEND: ghost/outline */
body.custom-repro-page .summery_checkout .add_tocart_btn #emailConfigButton {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    letter-spacing: 0.04em !important;
    background: var(--ti-gesso, #f9f4e8) !important;
    color: var(--ti-ink, #2a2438) !important;
    border: 0.5px solid var(--ti-rule, #c7bea8) !important;
    border-radius: 0 !important;
    transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease !important;
}
body.custom-repro-page .summery_checkout .add_tocart_btn #emailConfigButton:hover {
    border-color: var(--ti-ink-soft, #4a4358) !important;
    color: var(--ti-ink, #2a2438) !important;
    background: var(--ti-canvas, #f4eee2) !important;
}

/* --- Confirmation notice ------------------------------------------------- */
body.custom-repro-page .summery_checkout .confirmation_notice p,
body.custom-repro-page .summery_checkout .---confirmation_notice p {
    font-family: var(--font-body, "Cormorant Garamond", serif) !important;
    color: var(--ti-ink-soft, #4a4358) !important;
}

/* --- Read-more CTA (yellow_cont) — TI accent ----------------------------- */
body.custom-repro-page .summery_checkout .yellow_cont a {
    font-family: var(--f-ui, "Manrope", sans-serif) !important;
    color: var(--ti-ochre, #b78b4a) !important;
}
body.custom-repro-page .summery_checkout .yellow_cont a:hover {
    color: var(--ti-plein, #d89a78) !important;
}

/* ===== END photo_to_restyled_masterpiece · summery_checkout ===== */

/* ===== END photo_to_restyled_masterpiece ===== */

/* ===== artist_group_by_attribute / group-by browse — TI ===== */

/* ── Local brand tokens scoped to group-by pages ── */
.search_sec.catalog-groupby-page,
.search_sec.artwork-groupby-page,
.search_sec.artist-groupby-page,
.search_sec.museum-groupby-page,
.search_sec.article-groupby-page {
  --ti-gb-bg:      var(--ti-paper);
  --ti-gb-ink:     var(--ti-ink);
  --ti-gb-ink-2:   var(--ti-ink-soft);
  --ti-gb-ink-3:   var(--ti-ink-mute);
  --ti-gb-ink-4:   var(--ti-ink-faint);
  --ti-gb-line:    var(--ti-rule);
  --ti-gb-line-2:  var(--ti-rule-soft);
  --ti-gb-band:    var(--ti-linen);
  --ti-gb-slot:    var(--ti-gesso);
  --ti-gb-accent:  var(--ti-plein);
  --ti-gb-display: var(--font-title);
  --ti-gb-body:    var(--font-body);
  --ti-gb-ui:      var(--font-title-accent);
}

/* ── Nav + heading + showing text ── */
.search_sec.artwork-groupby-page .nav-list li,
.search_sec.artwork-groupby-page .nav-list a,
.search_sec.artwork-groupby-page .main-heading,
.search_sec.artwork-groupby-page .Showing_text,
.search_sec.artwork-groupby-page .sortABC,
.search_sec.artwork-groupby-page .sortABC a,
.search_sec.artwork-groupby-page .sortABC span,
.search_sec.artist-groupby-page .nav-list li,
.search_sec.artist-groupby-page .nav-list a,
.search_sec.artist-groupby-page .main-heading,
.search_sec.artist-groupby-page .Showing_text,
.search_sec.artist-groupby-page .sortABC,
.search_sec.artist-groupby-page .sortABC a,
.search_sec.artist-groupby-page .sortABC span {
  color: var(--ti-gb-ink);
  font-family: var(--ti-gb-ui);
}

.search_sec.artwork-groupby-page .Showing_text,
.search_sec.artist-groupby-page .Showing_text {
  font-size: 14px;
  line-height: 1.5;
}

/* ── Selects + search inputs ── */
.search_sec.catalog-groupby-page #groupby-selector,
.search_sec.catalog-groupby-page #fieldSelector,
.search_sec.catalog-groupby-page .Showing_text .form-control,
.search_sec.artwork-groupby-page #groupby-selector,
.search_sec.artwork-groupby-page .Showing_text .form-control,
.search_sec.artist-groupby-page #groupby-selector,
.search_sec.artist-groupby-page .Showing_text .form-control,
.search_sec.museum-groupby-page #groupby-selector,
.search_sec.museum-groupby-page #fieldSelector,
.search_sec.museum-groupby-page .Showing_text .form-control,
.search_sec.article-groupby-page #groupby-selector,
.search_sec.article-groupby-page .Showing_text .form-control,
.search_sec.catalog-groupby-page form.countrySearchForm input[type="text"],
.search_sec.artwork-groupby-page form.countrySearchForm input[type="text"],
.search_sec.artist-groupby-page form.countrySearchForm input[type="text"],
.search_sec.museum-groupby-page form.countrySearchForm input[type="text"],
.search_sec.article-groupby-page form.countrySearchForm input[type="text"] {
  background-color: var(--ti-gb-bg) !important;
  border: 1px solid var(--ti-gb-line) !important;
  color: var(--ti-gb-ink) !important;
  border-radius: 2px;
  font-family: var(--ti-gb-ui);
  font-size: 13px;
}

/* ── Badge list / filter chips ── */
.search_sec.artwork-groupby-page .badge_list,
.search_sec.artist-groupby-page .badge_list {
  border-bottom: 1px solid var(--ti-gb-line);
}
.search_sec.artwork-groupby-page .badge-filter,
.search_sec.artist-groupby-page .badge-filter {
  background: var(--ti-gb-slot) !important;
  color: var(--ti-gb-ink) !important;
  border: 1px solid var(--ti-gb-line);
  border-radius: 2px;
  font-family: var(--ti-gb-ui);
  font-size: 13px;
}

/* ── Sidebar boxes ── */
.search_sec.catalog-groupby-page .sidebar .sidebar_box,
.search_sec.artwork-groupby-page .sidebar .sidebar_box,
.search_sec.artist-groupby-page .sidebar .sidebar_box,
.search_sec.museum-groupby-page .sidebar .sidebar_box,
.search_sec.article-groupby-page .sidebar .sidebar_box {
  background: var(--ti-gb-band) !important;
  border: 1px solid var(--ti-gb-line) !important;
  color: var(--ti-gb-ink) !important;
  border-radius: 2px;
  font-family: var(--ti-gb-ui);
  border-left: 3px solid transparent !important;
  transition: background 0.2s, border-color 0.2s;
}
.search_sec.catalog-groupby-page .sidebar .sidebar_box:hover,
.search_sec.artwork-groupby-page .sidebar .sidebar_box:hover,
.search_sec.artist-groupby-page .sidebar .sidebar_box:hover,
.search_sec.museum-groupby-page .sidebar .sidebar_box:hover,
.search_sec.article-groupby-page .sidebar .sidebar_box:hover {
  background: var(--ti-gb-slot) !important;
  border-color: var(--ti-gb-line-2) !important;
  border-left-color: var(--ti-plein, #d89a78) !important;
}
.search_sec.catalog-groupby-page .sidebar .sidebar_box.active,
.search_sec.artwork-groupby-page .sidebar .sidebar_box.active,
.search_sec.artist-groupby-page .sidebar .sidebar_box.active,
.search_sec.museum-groupby-page .sidebar .sidebar_box.active,
.search_sec.article-groupby-page .sidebar .sidebar_box.active {
  background: var(--ti-gesso, #f9f4e8) !important;
  border-color: var(--ti-rule-soft, #ddd4be) !important;
  border-left-color: var(--ti-plein, #d89a78) !important;
}

/* ── Sidebar title + description ── */
.search_sec.catalog-groupby-page h3.sidebar_box_title,
.search_sec.catalog-groupby-page h3.sidebar_box_title a,
.search_sec.catalog-groupby-page p.sidebar_box_description,
.search_sec.catalog-groupby-page p.sidebar_box_description a,
.search_sec.artwork-groupby-page h3.sidebar_box_title,
.search_sec.artwork-groupby-page h3.sidebar_box_title a,
.search_sec.artwork-groupby-page p.sidebar_box_description,
.search_sec.artwork-groupby-page p.sidebar_box_description a,
.search_sec.artist-groupby-page h3.sidebar_box_title,
.search_sec.artist-groupby-page h3.sidebar_box_title a,
.search_sec.artist-groupby-page p.sidebar_box_description,
.search_sec.artist-groupby-page p.sidebar_box_description a,
.search_sec.museum-groupby-page h3.sidebar_box_title,
.search_sec.museum-groupby-page h3.sidebar_box_title a,
.search_sec.museum-groupby-page p.sidebar_box_description,
.search_sec.museum-groupby-page p.sidebar_box_description a,
.search_sec.article-groupby-page h3.sidebar_box_title,
.search_sec.article-groupby-page h3.sidebar_box_title a,
.search_sec.article-groupby-page p.sidebar_box_description,
.search_sec.article-groupby-page p.sidebar_box_description a {
  font-family: var(--ti-gb-body);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
  text-transform: none;
  letter-spacing: normal;
}
/* description uses muted ink — visually subordinate to title */
.search_sec.catalog-groupby-page p.sidebar_box_description,
.search_sec.catalog-groupby-page p.sidebar_box_description a,
.search_sec.artwork-groupby-page p.sidebar_box_description,
.search_sec.artwork-groupby-page p.sidebar_box_description a,
.search_sec.artist-groupby-page p.sidebar_box_description,
.search_sec.artist-groupby-page p.sidebar_box_description a,
.search_sec.museum-groupby-page p.sidebar_box_description,
.search_sec.museum-groupby-page p.sidebar_box_description a,
.search_sec.article-groupby-page p.sidebar_box_description,
.search_sec.article-groupby-page p.sidebar_box_description a {
  color: var(--ti-ink-mute, #6c647a) !important;
  font-style: italic;
}
/* title uses display serif + full ink */
.search_sec.catalog-groupby-page h3.sidebar_box_title,
.search_sec.catalog-groupby-page h3.sidebar_box_title a,
.search_sec.artwork-groupby-page h3.sidebar_box_title,
.search_sec.artwork-groupby-page h3.sidebar_box_title a,
.search_sec.artist-groupby-page h3.sidebar_box_title,
.search_sec.artist-groupby-page h3.sidebar_box_title a,
.search_sec.museum-groupby-page h3.sidebar_box_title,
.search_sec.museum-groupby-page h3.sidebar_box_title a,
.search_sec.article-groupby-page h3.sidebar_box_title,
.search_sec.article-groupby-page h3.sidebar_box_title a {
  color: var(--ti-gb-ink) !important;
  font-family: var(--ti-gb-display);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.01em;
  margin-bottom: 6px;
}
.search_sec.catalog-groupby-page h3.sidebar_box_title a:hover,
.search_sec.artwork-groupby-page h3.sidebar_box_title a:hover,
.search_sec.artist-groupby-page h3.sidebar_box_title a:hover,
.search_sec.museum-groupby-page h3.sidebar_box_title a:hover,
.search_sec.article-groupby-page h3.sidebar_box_title a:hover {
  color: var(--ti-gb-accent) !important;
}

/* ── Sidebar tags ── */
.search_sec.artwork-groupby-page ul.Sidebar_tags,
.search_sec.artist-groupby-page ul.Sidebar_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
  padding: 0;
  list-style: none;
}
.search_sec.artwork-groupby-page ul.Sidebar_tags a,
.search_sec.artwork-groupby-page ul.Sidebar_tags li button.catalog-nav-btn,
.search_sec.artist-groupby-page ul.Sidebar_tags a,
.search_sec.artist-groupby-page ul.Sidebar_tags li button.catalog-nav-btn {
  display: inline-block;
  padding: 4px 9px;
  background: var(--ti-gb-slot) !important;
  color: var(--ti-gb-ink-3) !important;
  border: .5px solid var(--ti-gb-line);
  border-radius: 2px;
  font-family: var(--ti-gb-ui);
  font-size: 11px;
  letter-spacing: .08em;
  line-height: 1.4;
  font-weight: 500;
  text-decoration: none;
  text-transform: none;
}
.search_sec.artwork-groupby-page ul.Sidebar_tags a:hover,
.search_sec.artist-groupby-page ul.Sidebar_tags a:hover {
  color: var(--ti-gb-accent) !important;
  border-color: var(--ti-gb-accent) !important;
}

/* ── Search input placeholder + icon ── */
.search_sec.artwork-groupby-page form.countrySearchForm input[type="text"]::placeholder,
.search_sec.artist-groupby-page form.countrySearchForm input[type="text"]::placeholder,
.search_sec.museum-groupby-page form.countrySearchForm input[type="text"]::placeholder,
.search_sec.article-groupby-page form.countrySearchForm input[type="text"]::placeholder,
.search_sec.catalog-groupby-page form.countrySearchForm input[type="text"]::placeholder {
  color: var(--ti-gb-ink-4);
  font-family: var(--ti-gb-body);
  font-style: italic;
}
.search_sec.artwork-groupby-page form.countrySearchForm i.fa.fa-search,
.search_sec.artist-groupby-page form.countrySearchForm i.fa.fa-search {
  color: var(--ti-gb-ink-3);
}

/* ── showMainResuls wrapper ── */
.search_sec.artwork-groupby-page .showMainResuls,
.search_sec.artist-groupby-page .showMainResuls {
  font-family: var(--ti-gb-ui);
}

/* ── Group heading (showMainResulsTitle h3) ── */
.search_sec.artwork-groupby-page .showMainResulsTitle h3,
.search_sec.artwork-groupby-page .showMainResulsTitle h3 a,
.search_sec.artist-groupby-page .showMainResulsTitle h3,
.search_sec.artist-groupby-page .showMainResulsTitle h3 a {
  color: var(--ti-gb-ink) !important;
  font-family: var(--ti-gb-display);
  font-size: 20px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-transform: none;
}
.search_sec.artwork-groupby-page .showMainResulsTitle h3 a:hover,
.search_sec.artist-groupby-page .showMainResulsTitle h3 a:hover {
  color: var(--ti-gb-accent) !important;
}

/* ── Count badge inside h3 ── */
.search_sec.artwork-groupby-page .showMainResulsTitle h3 span,
.search_sec.artist-groupby-page .showMainResulsTitle h3 span {
  background: var(--ti-gb-slot) !important;
  color: var(--ti-gb-ink-3) !important;
  font-family: var(--ti-gb-ui);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: .06em;
}

/* ── "See All" secondary action ── */
.search_sec.artwork-groupby-page .showMainResulsTitle > a,
.search_sec.artwork-groupby-page .showMainResulsTitle > button.catalog-nav-btn,
.search_sec.artist-groupby-page .showMainResulsTitle > a,
.search_sec.artist-groupby-page .showMainResulsTitle > button.catalog-nav-btn {
  color: var(--ti-gb-ink-2) !important;
  font-family: var(--ti-gb-ui);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  line-height: 1.4;
}
.search_sec.artwork-groupby-page .showMainResulsTitle > a:hover,
.search_sec.artwork-groupby-page .showMainResulsTitle > button.catalog-nav-btn:hover,
.search_sec.artist-groupby-page .showMainResulsTitle > a:hover,
.search_sec.artist-groupby-page .showMainResulsTitle > button.catalog-nav-btn:hover {
  color: var(--ti-gb-accent) !important;
}

/* ── Main result box ── */
.search_sec.artwork-groupby-page .showMainResulsBox,
.search_sec.artist-groupby-page .showMainResulsBox {
  background: var(--ti-gb-band) !important;
  color: var(--ti-gb-ink) !important;
  border: .5px solid var(--ti-gb-line);
  border-radius: 2px;
  font-family: var(--ti-gb-ui);
}

/* ── Image overlay (showMainResulsImage h3/p) ── */
.search_sec.artwork-groupby-page .showMainResulsImage h3,
.search_sec.artwork-groupby-page .showMainResulsImage h3 a,
.search_sec.artist-groupby-page .showMainResulsImage h3,
.search_sec.artist-groupby-page .showMainResulsImage h3 a {
  background: rgba(42, 36, 56, 0.72) !important;
  color: var(--ti-gb-bg) !important;
  font-family: var(--ti-gb-display);
  font-size: 14px;
  font-weight: 400;
  font-style: italic;
  line-height: 1.3;
}
.search_sec.artwork-groupby-page .showMainResulsImage p,
.search_sec.artwork-groupby-page .showMainResulsImage p a,
.search_sec.artist-groupby-page .showMainResulsImage p,
.search_sec.artist-groupby-page .showMainResulsImage p a {
  color: var(--ti-gb-bg) !important;
  font-family: var(--ti-gb-body);
  font-size: 13px;
  font-style: italic;
  font-weight: 400;
  line-height: 1.4;
}

/* ── Result list items (showResultsItems) ── */
.search_sec.artwork-groupby-page .showResultsItems h3 a,
.search_sec.artwork-groupby-page .showResultsItems h3,
.search_sec.artwork-groupby-page .showResultsItems h4,
.search_sec.artwork-groupby-page .showResultsItems h4 a,
.search_sec.artwork-groupby-page .showResultsItems p,
.search_sec.artwork-groupby-page .showResultsItems p a,
.search_sec.artwork-groupby-page .artwork_list_additional_values h3,
.search_sec.artwork-groupby-page .artwork_list_additional_values h3 a,
.search_sec.artist-groupby-page .showResultsItems h3 a,
.search_sec.artist-groupby-page .showResultsItems h3,
.search_sec.artist-groupby-page .showResultsItems h4,
.search_sec.artist-groupby-page .showResultsItems h4 a,
.search_sec.artist-groupby-page .showResultsItems p,
.search_sec.artist-groupby-page .showResultsItems p a {
  color: var(--ti-gb-ink) !important;
  font-family: var(--ti-gb-body);
  font-size: 14px;
  line-height: 1.45;
  font-weight: 400;
  text-transform: none;
  white-space: normal;
}
.search_sec.artwork-groupby-page .showResultsItems h3 a,
.search_sec.artwork-groupby-page .showResultsItems h4 a,
.search_sec.artist-groupby-page .showResultsItems h3 a,
.search_sec.artist-groupby-page .showResultsItems h4 a {
  font-family: var(--ti-gb-display);
  font-size: 15px;
  font-weight: 400;
  font-style: italic;
}
.search_sec.artwork-groupby-page .showResultsItems h4 a:hover,
.search_sec.artwork-groupby-page .showResultsItems h3 a:hover,
.search_sec.artwork-groupby-page .showResultsItems p a:hover,
.search_sec.artist-groupby-page .showResultsItems h4 a:hover,
.search_sec.artist-groupby-page .showResultsItems h3 a:hover,
.search_sec.artist-groupby-page .showResultsItems p a:hover {
  color: var(--ti-gb-accent) !important;
}

/* ── Mobile (≤ 640px) ── */
@media (max-width: 640px) {
  .search_sec.catalog-groupby-page,
  .search_sec.artwork-groupby-page,
  .search_sec.artist-groupby-page,
  .search_sec.museum-groupby-page,
  .search_sec.article-groupby-page {
    --ti-gb-band: var(--ti-canvas);
  }
  .search_sec.artist-groupby-page h3.sidebar_box_title,
  .search_sec.artist-groupby-page h3.sidebar_box_title a {
    font-size: 15px;
  }
  .search_sec.artist-groupby-page .showMainResulsTitle h3,
  .search_sec.artist-groupby-page .showMainResulsTitle h3 a {
    font-size: 17px;
  }
}

/* ===== END TI — artist_group_by_attribute / group-by browse ===== */


/* ═══════════════════════════════════════════════════════════════════
   TI — Catalog categories browse (list_category)
   Scoped to .search_sec.catalog-categories-page and
   .search_sec.artwork-categories-page only — gallery brand tokens
   (paper / gesso / linen / rule / ink* / plein / ochre + Italiana/Cormorant/Manrope/DM Mono).
   Structural reference: ADC "Catalog categories browse" in site-artsdot-V1.9.css,
   WA in site-wahooart-V1.9.css. All values translated to TI tokens.
   ═══════════════════════════════════════════════════════════════════ */

/* ── 1. Page chrome — breadcrumb, title row, sort ─────────────────── */
.search_sec.catalog-categories-page .nav-list li,
.search_sec.catalog-categories-page .nav-list a,
.search_sec.catalog-categories-page .main-heading,
.search_sec.catalog-categories-page .Showing_text,
.search_sec.catalog-categories-page .sorting_content,
.search_sec.catalog-categories-page .sort_by,
.search_sec.artwork-categories-page .nav-list li,
.search_sec.artwork-categories-page .nav-list a,
.search_sec.artwork-categories-page .main-heading,
.search_sec.artwork-categories-page .Showing_text,
.search_sec.artwork-categories-page .sorting_content,
.search_sec.artwork-categories-page .sort_by {
  color: var(--ti-ink, #2a2438);
  font-family: var(--font-body, "Cormorant Garamond", serif);
}
.search_sec.catalog-categories-page .Showing_text .form-control,
.search_sec.catalog-categories-page .sorting_content select.custom-select,
.search_sec.artwork-categories-page .Showing_text .form-control,
.search_sec.artwork-categories-page .sorting_content select.custom-select {
  background-color: var(--ti-paper, #fbf7ee) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  color: var(--ti-ink, #2a2438) !important;
  border-radius: 2px;
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
}

/* ── 2. Filter panel shell ───────────────────────────────────────── */
.search_sec.catalog-categories-page .filter-panel,
.search_sec.artwork-categories-page .filter-panel {
  background-color: var(--ti-gesso, #f9f4e8);
  border: 1px solid var(--ti-rule, #c7bea8);
  border-radius: 2px;
  font-family: var(--f-ui, "Manrope", sans-serif);
}

/* ── 3. Filter title row ─────────────────────────────────────────── */
.search_sec.catalog-categories-page .filter-title,
.search_sec.artwork-categories-page .filter-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  min-height: 44px;
  box-sizing: border-box;
}
.search_sec.catalog-categories-page .filter-title span,
.search_sec.artwork-categories-page .filter-title span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif);
  font-size: 15px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ti-ink, #2a2438);
}
.search_sec.catalog-categories-page .filter-title span img,
.search_sec.artwork-categories-page .filter-title span img {
  display: block;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

/* ── 4. Active-filter badges ─────────────────────────────────────── */
.search_sec.catalog-categories-page .badge_list,
.search_sec.artwork-categories-page .badge_list {
  border-bottom: 1px solid var(--ti-rule, #c7bea8);
}
.search_sec.catalog-categories-page .badge-filter,
.search_sec.artwork-categories-page .badge-filter {
  background: var(--ti-linen, #ede5d2) !important;
  color: var(--ti-ink, #2a2438) !important;
  border: 1px solid var(--ti-rule, #c7bea8);
  border-radius: 2px;
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
}

/* ── 5. CORE category links — the chip list inside the panel ──────── */
.search_sec.catalog-categories-page .colors_list,
.search_sec.artwork-categories-page .colors_list {
  padding: 16px !important;
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px;
  text-align: left !important;
  list-style: none;
}
.search_sec.catalog-categories-page .colors_list li,
.search_sec.artwork-categories-page .colors_list li {
  width: auto !important;
  display: inline-block !important;
  margin: 0;
  padding: 0;
  background: transparent !important;
  border: none !important;
}
.search_sec.catalog-categories-page .colors_list li a,
.search_sec.artwork-categories-page .colors_list li a {
  display: inline-block !important;
  padding: 4px 9px !important;
  width: auto !important;
  font-family: var(--font-title-accent, "Manrope", sans-serif);
  font-size: 11px;
  font-weight: 500 !important;
  line-height: 1.4;
  letter-spacing: .08em;
  color: var(--ti-ink-mute, #6c647a) !important;
  text-decoration: none !important;
  background: var(--ti-gesso, #f9f4e8) !important;
  border: 1px solid var(--ti-rule, #c7bea8) !important;
  border-radius: 2px;
  transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}
.search_sec.catalog-categories-page .colors_list li a:hover,
.search_sec.artwork-categories-page .colors_list li a:hover {
  color: var(--ti-plein, #d89a78) !important;
  border-color: var(--ti-plein, #d89a78) !important;
}
.search_sec.catalog-categories-page .colors_list li a.active,
.search_sec.artwork-categories-page .colors_list li a.active {
  color: var(--ti-gesso, #f9f4e8) !important;
  font-weight: 600 !important;
  background: var(--ti-ink, #2a2438) !important;
  border-color: var(--ti-ink, #2a2438) !important;
}

/* ── 6. Card grid — identical to the TI artwork-list card ─────────── */
/* Card surface */
.search_sec.catalog-categories-page .custom_search .search_card,
.search_sec.artwork-categories-page .custom_search .search_card {
  background: var(--ti-paper, #fbf7ee);
  border: 0.5px solid var(--ti-rule, #c7bea8) !important;
  border-bottom: 0.5px solid var(--ti-rule, #c7bea8) !important;
  border-radius: 2px;
  box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, .1));
  transition: box-shadow 0.35s ease, transform 0.35s ease, background 0.25s ease;
  overflow: visible; /* the global hover panel extends BELOW the card — never clip it
                        (image zoom is clipped by .search_img's own overflow:hidden) */
  position: relative;
}
.search_sec.catalog-categories-page .custom_search .search_card:hover,
.search_sec.artwork-categories-page .custom_search .search_card:hover {
  background: var(--ti-gesso, #f9f4e8) !important;
  box-shadow: var(--ti-shadow-hover-md, 0 6px 20px -6px rgba(42, 36, 56, .18));
  transform: translateY(-3px);
}
.search_sec.catalog-categories-page .custom_search .row > [class*="col-"],
.search_sec.artwork-categories-page .custom_search .row > [class*="col-"] {
  border: 0 !important;
}

/* Image wrapper — mat motif */
.search_sec.catalog-categories-page .custom_search .search_card .search_img,
.search_sec.artwork-categories-page .custom_search .search_card .search_img {
  background: var(--ti-shadow-c, #e6dec8);
  border-bottom: 0.5px solid var(--ti-rule-soft, #ddd4be);
  padding: 10px 10px 0;
  line-height: 0;
  position: relative;
  overflow: hidden;
}
.search_sec.catalog-categories-page .custom_search .search_card .search_img a.artwork-grid-img-link,
.search_sec.artwork-categories-page .custom_search .search_card .search_img a.artwork-grid-img-link {
  display: block;
  outline: 5px solid var(--ti-paper, #fbf7ee);
  outline-offset: -6px;
  overflow: hidden;
  position: relative;
}

/* Card body */
.search_sec.catalog-categories-page .custom_search .search_card .searchCard_body,
.search_sec.artwork-categories-page .custom_search .search_card .searchCard_body {
  padding: 16px 18px 14px;
  background: transparent;
  border-top: 0.5px solid var(--ti-rule-soft, #ddd4be);
}

/* Artist name — Manrope uppercase label */
.search_sec.catalog-categories-page .custom_search .search_card .art-artist,
.search_sec.artwork-categories-page .custom_search .search_card .art-artist {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 5px;
}
.search_sec.catalog-categories-page .custom_search .search_card .art-artist h2,
.search_sec.catalog-categories-page .custom_search .search_card .art-artist h2 a,
.search_sec.artwork-categories-page .custom_search .search_card .art-artist h2,
.search_sec.artwork-categories-page .custom_search .search_card .art-artist h2 a {
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ti-ink-mute, #6c647a) !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  flex: 1 1 auto;
  min-width: 0;
  transition: color 0.2s ease;
}
.search_sec.catalog-categories-page .custom_search .search_card .art-artist h2 a:hover,
.search_sec.artwork-categories-page .custom_search .search_card .art-artist h2 a:hover {
  color: var(--ti-ink, #2a2438) !important;
}

/* Year — DM Mono plate number */
.search_sec.catalog-categories-page .custom_search .search_card .art-artist span,
.search_sec.catalog-categories-page .custom_search .search_card .art-artist span a,
.search_sec.artwork-categories-page .custom_search .search_card .art-artist span,
.search_sec.artwork-categories-page .custom_search .search_card .art-artist span a {
  font-family: var(--f-mono, "DM Mono", monospace) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: none !important;
  color: var(--ti-ink-faint, #9a93a4) !important;
  white-space: nowrap;
  flex-shrink: 0;
  transition: color 0.2s ease;
}

/* Artwork title — Italiana display serif */
.search_sec.catalog-categories-page .custom_search .search_card .art-title,
.search_sec.catalog-categories-page .custom_search .search_card .art-title a,
.search_sec.artwork-categories-page .custom_search .search_card .art-title,
.search_sec.artwork-categories-page .custom_search .search_card .art-title a {
  font-family: var(--font-title, "Italiana", "Cormorant Garamond", serif) !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.01em !important;
  color: var(--ti-ink, #2a2438) !important;
  display: block;
  margin-top: 2px;
  transition: color 0.2s ease;
}
.search_sec.catalog-categories-page .custom_search .search_card .art-title a:hover,
.search_sec.artwork-categories-page .custom_search .search_card .art-title a:hover {
  color: var(--ti-plein, #d89a78) !important;
}

/* Hover-visible overlay panel */
.search_sec.catalog-categories-page .custom_search .search_card .hover_visible,
.search_sec.artwork-categories-page .custom_search .search_card .hover_visible {
  background: var(--ti-gesso, #f9f4e8) !important;   /* match card :hover surface (panel only shows on hover) */
  border-top: 0.5px solid var(--ti-rule, #c7bea8) !important;
  padding: 16px 18px;
}
.search_sec.catalog-categories-page .custom_search .search_card .hover_visible p,
.search_sec.artwork-categories-page .custom_search .search_card .hover_visible p {
  font-family: var(--font-body, "Cormorant Garamond", serif) !important;
  font-size: 13.5px !important;
  font-style: italic !important;
  line-height: 1.6 !important;
  color: var(--ti-ink-soft, #4a4358) !important;
  margin-bottom: 16px;
}
.search_sec.catalog-categories-page .custom_search .search_card .hover_visible p a,
.search_sec.artwork-categories-page .custom_search .search_card .hover_visible p a {
  color: var(--ti-plein, #d89a78) !important;
}
.search_sec.catalog-categories-page .custom_search .search_card .card_bottom,
.search_sec.artwork-categories-page .custom_search .search_card .card_bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

/* Add-to-cart — primary button */
.search_sec.catalog-categories-page .custom_search .search_card .addToCart,
.search_sec.catalog-categories-page .custom_search .search_card .addToCart.added,
.search_sec.artwork-categories-page .custom_search .search_card .addToCart,
.search_sec.artwork-categories-page .custom_search .search_card .addToCart.added {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--ti-ink, #2a2438) !important;
  color: var(--ti-gesso, #f9f4e8) !important;
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
  padding: 11px 20px !important;
  border: none !important;
  width: auto !important;
  min-width: 0 !important;
  transition: background 0.25s ease, transform 0.25s ease !important;
  text-decoration: none;
}
.search_sec.catalog-categories-page .custom_search .search_card .addToCart .product-price-display,
.search_sec.artwork-categories-page .custom_search .search_card .addToCart .product-price-display {
  font-family: var(--font-title, "Italiana", serif) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  color: inherit !important;
}
.search_sec.catalog-categories-page .custom_search .search_card .addToCart:hover,
.search_sec.catalog-categories-page .custom_search .cartbtn_group a.addToCart:hover,
.search_sec.artwork-categories-page .custom_search .search_card .addToCart:hover,
.search_sec.artwork-categories-page .custom_search .cartbtn_group a.addToCart:hover {
  background: var(--ti-ink-soft, #4a4358) !important;
  color: var(--ti-gesso, #f9f4e8) !important;
  transform: translateY(-1px) !important;
}

/* ── 7. Responsive — tighten mat padding at narrow viewport ──────── */
@media (max-width: 575.98px) {
  .search_sec.catalog-categories-page .custom_search .search_card .search_img,
  .search_sec.artwork-categories-page .custom_search .search_card .search_img {
    padding: 6px 6px 0;
  }
  .search_sec.catalog-categories-page .custom_search .search_card .search_img a.artwork-grid-img-link,
  .search_sec.artwork-categories-page .custom_search .search_card .search_img a.artwork-grid-img-link {
    outline-width: 3px;
  }
  .search_sec.catalog-categories-page .custom_search .search_card .searchCard_body,
  .search_sec.artwork-categories-page .custom_search .search_card .searchCard_body {
    padding: 12px 14px 10px;
  }
  .search_sec.catalog-categories-page .custom_search .search_card .hover_visible,
  .search_sec.artwork-categories-page .custom_search .search_card .hover_visible {
    padding: 12px 14px;
  }
}

/* ── 8. Pagination — SITE-WIDE, overrides global brown #875D2A (every paginated
   template: list, categories, search, color search). Gesso cell, linen hover;
   active = inverted aubergine-ink pill. ── */
.pagination .page-link,
.pagination a.page-link,
.pagination .page-item:first-child .page-link {
  color: var(--ti-ink, #2a2438) !important;
  background: var(--ti-gesso, #f9f4e8) !important;
  border: 1px solid var(--ti-rule, #d4c9b8) !important;
  border-radius: 0 !important;
  font-family: var(--font-body) !important;
  box-shadow: none !important;
}
.pagination .page-link:hover,
.pagination .page-link:focus,
.pagination .page-item:first-child .page-link:hover {
  background: var(--ti-linen, #f3ebe0) !important;
  border-color: var(--ti-ink-soft, #4a4358) !important;
  color: var(--ti-ink, #2a2438) !important;
}
.pagination .page-item.active .page-link,
.pagination .page-item.active .page-link:hover,
.pagination .page-item.active .page-link:focus,
.pagination .page-item:first-child.active .page-link {
  background-color: var(--ti-ink, #2a2438) !important;
  border-color: var(--ti-ink, #2a2438) !important;
  color: var(--ti-gesso, #f9f4e8) !important;
}
.pagination .page-item.disabled .page-link {
  background: var(--ti-gesso, #f9f4e8) !important;
  border-color: var(--ti-rule, #d4c9b8) !important;
  color: var(--ti-muted, #8a8278) !important;
}

/* ===== END TI — Pagination (site-wide) ===== */

/* ===== museum_list (restyle8) — pagination active pill = brand accent =====
   Overrides the generic global default (brown #875D2A) and the :first-child
   grey (#858585). Scoped to .museum-list-page only; matches the card CTA. */
.search_sec.museum-list-page .pagination .page-item.active .page-link,
.search_sec.museum-list-page .pagination .page-item.active .page-link:hover,
.search_sec.museum-list-page .pagination .page-item.active .page-link:focus {
  background-color: var(--ti-ink, #2a2438) !important;
  border-color: var(--ti-ink, #2a2438) !important;
  color: var(--ti-gesso, #f9f4e8) !important;
}

/* =====================================================
   DigitalImage buy page — "Included in Every Digital Image Order"
   premium benefits band — TopImpressionists tokens (overrides the ADC-gold
   default in global-custom-V1.9.css). Layout mirrors ADC/OUA/WK.
   ===================================================== */
.premium_service {
  margin-bottom: 44px;
}
.premium_service .why_choose_right,
.premium_service .why_choose_right.black_back {
  height: auto !important;
  min-height: 0;
  padding: 32px 44px 48px !important;
  background: var(--ti-ink, #2a2438);
  overflow: visible;
}
.premium_service .why_choose_right h3 {
  margin: 0 0 10px;
  padding: 0;
  font-family: var(--font-title-accent);
  font-size: clamp(22px, 2.5vw, 28px);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.02em;
  text-align: center;
  color: var(--ti-ochre, #b78b4a);
}
.premium_service .why_choose_right .heading_text {
  margin: 0 0 12px;
  font-family: var(--font-title-accent);
  font-size: clamp(20px, 2.2vw, 26px);
  font-weight: 400;
  line-height: 1.3;
  text-align: center;
  color: var(--ti-paper, #fbf7ee);
}
.premium_service .why_choose_right .heading_paragrap {
  margin: 0 auto;
  max-width: 52rem;
  text-align: center;
  color: var(--ti-ink-3, #a3a09b);
}
.premium_service .why_choose_box {
  margin-top: 28px;
  padding-bottom: 4px;
}
.premium_service .why_choose_box .row {
  row-gap: 28px;
  margin-bottom: 8px;
}
.premium_service .why_choose_box .row > [class*="col-"] {
  display: flex;
  flex-direction: column;
}
.premium_service .why_choose_box_inner {
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 0;
  height: auto;
  min-height: 0;
  flex: 1 1 auto;
}
.premium_service .why_choose_icon {
  margin-top: 2px;
  flex-shrink: 0;
}
.premium_service .why_choose_info {
  min-width: 0;
  flex: 1;
}
.premium_service .why_choose_info h5 {
  margin: 0 0 8px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--ti-paper, #fbf7ee);
}
.premium_service .why_choose_info p {
  width: 100%;
  margin: 0;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.55;
  color: var(--ti-ink-3, #a3a09b);
  overflow: visible;
}
.premium_service .why_choose_icon img {
  background: transparent !important;
  outline: none !important;
  outline-offset: 0;
  filter: brightness(0) invert(1);
  opacity: 0.92;
}
.premium_service .why_choose_box_inner:hover .why_choose_icon img {
  opacity: 1;
}

/* ===== search_by_color ===== */
.color-search-page .search-form { margin-top: 24px; }
.color-search-page .color-search-intro { font-size: 1.05em; color: var(--ti-ink-mute, #6c647a); line-height: 1.65; max-width: 52em; }
.color-search-page .filter-row { display: flex; gap: 18px; align-items: flex-start; border-bottom: 1px solid var(--ti-rule-soft, #ddd4be); padding: 14px 0; }
.color-search-page .filter-row-label { min-width: 280px; font-weight: 600; color: var(--ti-ink, #2a2438); }
.color-search-page .filter-row-description { margin-top: 6px; font-size: 0.95em; line-height: 1.5; color: var(--ti-ink-mute, #6c647a); font-weight: 400; max-width: 360px; }
.color-search-page .filter-row-options { display: flex; flex-wrap: wrap; gap: 10px 18px; flex: 1; }
.color-search-page .filter-row-options-stacked { display: block; }
.color-search-page .filter-option { display: inline-flex; align-items: flex-start; gap: 6px; margin: 0; color: var(--ti-ink-soft, #4a4358); max-width: 100%; }
.color-search-page .filter-option span { white-space: normal; word-break: break-word; line-height: 1.35; }
.color-search-page .main-color-list { list-style: none; padding: 0; margin: 0; display: block; }
.color-search-page .main-color-list li { margin-bottom: 8px; padding: 6px 10px; background: var(--ti-gesso, #f9f4e8); border: 1px solid var(--ti-rule, #c7bea8); border-radius: 4px; }
.color-search-page .main-color-list label { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; width: 100%; }
.color-search-page .main-color-list input[type="checkbox"] { position: static; opacity: 1; width: 1.1em; height: 1.1em; flex-shrink: 0; margin: 0; cursor: pointer; accent-color: var(--ti-ochre, #b78b4a); }
.color-search-page .hue-gradient-list { list-style: none; padding: 0; margin: 0; }
.color-search-page .hue-gradient-list li { margin-bottom: 8px; }
.color-search-page .hue-gradient-list label { display: inline-flex; align-items: flex-start; gap: 8px; cursor: pointer; }
.color-search-page .hue-gradient-swatch { display: inline-block; flex-shrink: 0; width: 56px; height: 18px; border-radius: 4px; border: 1px solid var(--ti-rule-soft, #ddd4be); vertical-align: middle; margin-right: 4px; }
.color-search-page .color-dot { display: inline-block; width: 18px; height: 18px; border-radius: 50%; border: 1px solid var(--ti-rule-soft, #ddd4be); vertical-align: middle; flex-shrink: 0; }
.color-search-page .filter-actions { margin-top: 24px; }
.color-search-page #artworks-results { margin-top: 40px; }
@media (max-width: 768px) { .color-search-page .filter-row { flex-direction: column; gap: 8px; } .color-search-page .filter-row-label { min-width: auto; } }
/* TI brand identity */
.color-search-page input[type="checkbox"] { accent-color: var(--ti-ochre, #b78b4a); }
.color-search-page .main-color-list li:hover { border-color: var(--ti-ochre, #b78b4a); }

/* ===== orders/art_consultation.html — step image offset shadow ===== */
/* TopImpressionists: warm plein-air wash of the brand accent. */
.step .step-image { --step-image-shadow: rgb(var(--ais-accent-rgb, 216 154 120) / 0.32); }

/* ===== orders/art_consultation.html — TopImpressionists brand colours ===== */
/* Violet ink · ochre accent · linen/canvas surfaces */
body.art-consultation-page .consultation_bottom { background: var(--ti-ink, #2a2438); }
body.art-consultation-page .consultation_bottom p,
body.art-consultation-page .consultation_bottom p.consultation_text {
  font-family: var(--font-body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 25px !important;
  letter-spacing: normal !important;
  color: var(--ti-canvas, #f4eee2) !important;
  opacity: 1 !important;
}
body.art-consultation-page span.line { background: var(--ti-rule, #c7bea8); }
body.art-consultation-page .step-title { background: var(--ti-ink, #2a2438); color: var(--ti-canvas, #f4eee2); }
body.art-consultation-page .step-heading { color: var(--ti-ink, #2a2438); }
body.art-consultation-page .step-header small { color: var(--ti-ochre, #b78b4a); }
body.art-consultation-page .step-header h4 { color: var(--ti-ink, #2a2438); }
body.art-consultation-page .step-content p,
body.art-consultation-page .step li,
body.art-consultation-page ul.step_list li { color: var(--ti-ink-soft, #4a4358); }
body.art-consultation-page .step-number-box { background: var(--ti-linen, #ede5d2); border-color: var(--ti-rule, #c7bea8); color: var(--ti-ochre, #b78b4a); }
body.art-consultation-page .contactfull_width_hero_banner_with_background_image { background: var(--ti-canvas, #f4eee2); }
body.art-consultation-page .consultant_right { color: var(--ti-canvas, #f4eee2); }
body.art-consultation-page .consultant_right .overlay_img {
  background: rgba(42, 36, 56, 0.55) !important;
  opacity: 1 !important;
}
body.art-consultation-page .consultant_right h1 {
  font-family: var(--font-title) !important;
  font-weight: 400 !important;
  font-size: 55px !important;
  line-height: 60px !important;
  color: var(--ti-canvas, #f4eee2) !important;
}
body.art-consultation-page .consultant_right p {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 26px !important;
  color: var(--ti-canvas, #f4eee2) !important;
}
body.art-consultation-page .consultant_content h6 {
  font-family: var(--font-title) !important;
  font-weight: 400 !important;
  font-size: 25px !important;
  line-height: 20px !important;
  color: var(--ti-canvas, #f4eee2) !important;
}
body.art-consultation-page .consultant_content span {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 19px !important;
  letter-spacing: 1px !important;
  color: var(--ti-canvas, #f4eee2) !important;
}
body.art-consultation-page .form-container input { background: var(--ti-gesso, #f9f4e8) !important; color: var(--ti-ink, #2a2438) !important; }
body.art-consultation-page .form-floating > label { color: var(--ti-ink-soft, #4a4358) !important; }
body.art-consultation-page .form-floating > .form-control:focus ~ label::after,
body.art-consultation-page .form-floating > .form-control:not(:placeholder-shown) ~ label::after { background-color: var(--ti-gesso, #f9f4e8); }
body.art-consultation-page .consultation-dropdown,
body.art-consultation-page .consultation-dropdown-header { background: var(--ti-gesso, #f9f4e8) !important; color: var(--ti-ink, #2a2438) !important; }
body.art-consultation-page .consultation-dropdown-list { background: var(--ti-gesso, #f9f4e8); }
body.art-consultation-page .consultation-dropdown-list li { color: var(--ti-ink, #2a2438); }
body.art-consultation-page .consultation-dropdown-list li:hover { background: var(--ti-linen, #ede5d2); }
body.art-consultation-page .image-upload-box { background: var(--ti-gesso, #f9f4e8); border-color: var(--ti-rule, #c7bea8); }
body.art-consultation-page .btn-prev { color: var(--ti-ochre, #b78b4a) !important; border-color: var(--ti-ochre, #b78b4a) !important; }
body.art-consultation-page .btn-next { background: var(--ti-ink, #2a2438) !important; border-color: var(--ti-ink, #2a2438) !important; color: var(--ti-canvas, #f4eee2) !important; }
/* ===== /orders/art_consultation.html — TopImpressionists ===== */

/* ===== start_selling_* step-image shadow tint — TI · impressionist gold wash ===== */
.start-selling-steps .step .step-image { --step-image-shadow: #E4D3AD; }

/* ===== viewcart — cart state tokens (TI) ===== */
:root {
  --cart-placeholder-bg: var(--ti-gesso, #f9f4e8);
  --cart-placeholder-border: var(--ti-rule, #c7bea8);
  --cart-placeholder-icon: var(--ti-ink-mute, #6c647a);
  --cart-alert-warning-text: #876a28;
  --cart-alert-warning-bg: #f6edc8;
  --cart-alert-warning-border: #d9c884;
  --cart-alert-warning-accent: #d9c884;
  --cart-surface: var(--ti-gesso, #f9f4e8);
  --cart-surface-border: var(--ti-rule, #c7bea8);
  --cart-inset: var(--ti-paper, #fbf7ee);
  --cart-icon-bg: #E2DAC4;
  --cart-summary-ink: var(--ti-ink, #2a2438);
  --cart-summary-ink-2: var(--ti-ink-mute, #6c647a);
  --cart-summary-accent: var(--ti-accent, #a8524a);
  --cart-th-bg: #dbd4c0;
  --cart-th-color: var(--ti-ink, #2a2438);
}

/* ===== Art Appraisal (body.art-appraisal-page) — TI ===== */
/* Re-colours the shared ADC-palette appraisal page to the TopImpressionists
   UI Kit. Layout/spacing untouched; colours only. Scoped under
   body.art-appraisal-page so it beats the hardcoded globals. */
body.art-appraisal-page{
    --appraisal-step-shadow: rgba(42, 36, 56, 0.18);
    --appraisal-required:    #a8524a;
    --appraisal-surface:     var(--ti-paper, #fbf7ee);
    --appraisal-input-border:var(--ti-rule, #c7bea8);
    --appraisal-input-divider:var(--ti-rule-soft, #ddd4be);
    --appraisal-hover:       var(--ti-gesso, #f9f4e8);
    --appraisal-selected:    var(--ti-linen, #ede5d2);
    --appraisal-help-text:   var(--ti-ink-soft, #4a4358); /* was global warm-brown #3E342A */
    --appraisal-panel-bg:    var(--ti-linen, #ede5d2); /* TI linen card (was generic beige #E8E2CD) */
    --appraisal-panel-border:var(--ti-rule, #c7bea8);
}

/* 1 · Hero caption (light over dark video) */
body.art-appraisal-page .consultation_content h6,
body.art-appraisal-page .consultation_content h1,
body.art-appraisal-page .consultation_content p{
    color: var(--ti-gesso, #f9f4e8) !important;
}

/* 2 · Intro band */
body.art-appraisal-page .consultation_bottom{
    background-color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .consultation_bottom p{
    color: var(--ti-gesso, #f9f4e8) !important;
}

/* 3 · vertical connector */
body.art-appraisal-page span.line{
    background-color: var(--ti-ink, #2a2438) !important;
}

/* 4 · step pill */
body.art-appraisal-page .step-title{
    background-color: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
}

/* 5 · step headings / copy */
body.art-appraisal-page .step-heading{
    color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .step-content p,
body.art-appraisal-page .step li,
body.art-appraisal-page ul.step_list li{
    color: var(--ti-ink, #2a2438) !important;
}

/* 6 · step image shadow */
body.art-appraisal-page .step-image{
    box-shadow: 0 10px 30px -8px var(--appraisal-step-shadow) !important;
}

/* 7 · comparative table */
body.art-appraisal-page .appraisel_main_section{
    background-color: var(--ti-linen, #ede5d2) !important;
}
body.art-appraisal-page .table > :not(caption) > * > *{
    background-color: var(--ti-paper, #fbf7ee) !important;
}
body.art-appraisal-page table tbody,
body.art-appraisal-page table td,
body.art-appraisal-page table th,
body.art-appraisal-page table tr{
    border-color: var(--ti-rule, #c7bea8) !important;
}
body.art-appraisal-page table th{
    color: var(--ti-ochre, #b78b4a) !important;
}
body.art-appraisal-page table td h4,
body.art-appraisal-page table td p,
body.art-appraisal-page .usd_heading,
body.art-appraisal-page table td b{
    color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .table_price_color{
    color: #a8524a !important;
}

/* 8 · valuation form */
body.art-appraisal-page .valuation_request h4,
body.art-appraisal-page .valuation_form_box label{
    color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .input_box input,
body.art-appraisal-page .input_box textarea,
body.art-appraisal-page .input_label_text,
body.art-appraisal-page .input_label_text input{
    background-color: var(--ti-paper, #fbf7ee) !important;
    color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .form_heading{
    color: var(--ti-ink, #2a2438) !important;
}
/* step chip: ink chip + gesso (was warm-brown #3E342A bg leak) */
body.art-appraisal-page .steps_count span{
    background: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
}
body.art-appraisal-page .required-asterisk{
    color: var(--appraisal-required) !important;
}
body.art-appraisal-page .valuation_request .add_tocart_btn button{
    background-color: var(--ti-ink, #2a2438) !important;
    color: var(--ti-gesso, #f9f4e8) !important;
}

/* 9 · plan dropdown — align with form surfaces */
body.art-appraisal-page .custom-dropdown .dropdown-header,
body.art-appraisal-page .custom-dropdown .dropdown-list{
    background-color: var(--appraisal-surface) !important;
    border-color: var(--appraisal-input-border) !important;
    color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .custom-dropdown .dropdown-list li{
    border-color: var(--appraisal-input-divider) !important;
    color: var(--ti-ink, #2a2438) !important;
}
body.art-appraisal-page .custom-dropdown .dropdown-list li:hover{
    background-color: var(--appraisal-hover) !important;
}
body.art-appraisal-page .custom-dropdown .dropdown-list li.selected{
    background-color: var(--appraisal-selected) !important;
}

/* ===== orders/checkout ===== */
/* Scoped under .checkout-page. Impressionist palette: warm gesso surfaces,
   ink-dark card headers, ochre accent rail on the shipping panel.
   All values reuse TI tokens (hex fallbacks inside var() only). */
.checkout-page .checkout_subtitle {
    color: var(--ti-ink-mute, #6c647a);
    font-size: 1.1rem;
    font-family: var(--f-edit);
    font-style: italic;
}
.checkout-page .card {
    border: none;
    border-radius: 2px;
    box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, 0.1));
}
.checkout-page .card-header {
    border-bottom: none;
    padding: 1rem 1.5rem;
}
.checkout-page .card-header.bg-dark {
    background-color: var(--ti-ink, #2a2438) !important;
}
.checkout-page .card-header h5 {
    font-family: var(--f-display);
    font-weight: 400;
    letter-spacing: 0.005em;
}
.checkout-page .checkout-thumb-col {
    width: 100px;
}
.checkout-page .checkout-thumb-cell {
    width: 100px;
    text-align: center;
}
.checkout-page .checkout-thumb-img {
    max-width: 80px;
}
.checkout-page .checkout-amount-cell {
    white-space: nowrap;
}
.checkout-page .shipping-address-display {
    background-color: var(--ti-gesso, #f9f4e8);
    padding: 20px;
    border-radius: 2px;
    border-left: 4px solid var(--ti-ochre, #b78b4a);
}
.checkout-page .shipping-address-display p {
    color: var(--ti-ink-soft, #4a4358);
    line-height: 1.6;
}
.checkout-page .checkout-summary {
    top: 20px;
}
.checkout-page .checkout-total-label {
    opacity: 0.8;
}
.checkout-page .why_choose_box_inner {
    margin-bottom: 1rem;
}
.checkout-page .why_choose_box_inner h6 {
    font-size: 0.9rem;
    margin-bottom: 0.25rem;
}


/* ===== collectible sell/edit — image upload + sales channels (restyle8) ===== */
body.userprofile-page .image-upload-container { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
body.userprofile-page .image-preview-list-box { display:none; flex-wrap:wrap; gap:10px; }
body.userprofile-page .image-preview { width:57px; height:57px; overflow:hidden; position:relative; border:1px solid var(--ti-linen, #ede5d2); background:var(--ti-paper, #fbf7ee); }
body.userprofile-page .image-preview img { width:100%; height:100%; object-fit:cover; }
body.userprofile-page .image-upload-box { text-align:center; width:54px; height:54px; background:var(--ti-linen, #ede5d2); border:1px dashed var(--ti-ink-mute, #6c647a); display:flex; justify-content:center; align-items:center; cursor:pointer; color:var(--ti-ink, #2a2438); }
body.userprofile-page .image-upload-box.disabled { opacity:.5; cursor:not-allowed; }
body.userprofile-page .image-preview .loader { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(251,247,238,.9); }
body.userprofile-page .image-preview .loader::after { content:""; border:3px solid var(--ti-linen, #ede5d2); border-top:3px solid var(--ti-accent, #a0742a); border-radius:50%; width:24px; height:24px; animation:r8spin-ti 1s linear infinite; }
@keyframes r8spin-ti { 0%{transform:rotate(0)} 100%{transform:rotate(360deg)} }
body.userprofile-page .image-preview .remove-btn { position:absolute; top:5px; right:5px; background:var(--ti-ink, #2a2438); color:#fff; border:none; border-radius:50%; width:20px; height:20px; cursor:pointer; font-size:16px; line-height:1; padding:0; }
body.userprofile-page .channel-checkbox-group { display:flex; flex-direction:column; gap:10px; margin-top:10px; }
body.userprofile-page .channel-checkbox-item { display:flex; align-items:center; gap:8px; }


/* ===== start_selling_* (body.start-selling-page) — TI · TopImpressionists ===== */
/* --- right CTA card "Start selling today" --- */
body.start-selling-page .contactForm_sec {
  display: flex;
  align-items: center;
  padding: 48px 70px;
}
body.start-selling-page .form-step.step-dark {
  position: relative;
  width: 100%;
  background: var(--ti-bg, #ffffff);
  border: 1px solid var(--ti-line-2, #d6d6d6);
  border-radius: 3px;
  padding: 48px 48px 100px;
  box-shadow: 0 18px 48px rgba(31, 28, 23, 0.09);
}
body.start-selling-page .form-container h3 { margin-bottom: 20px; }
body.start-selling-page .form-container h3 p {
  font-family: var(--font-title) !important;
  font-weight: 600 !important;
  font-size: 30px !important;
  line-height: 1.15 !important;
  letter-spacing: 0.01em !important;
  text-transform: uppercase !important;
  color: var(--ti-ink, #1f1c17) !important;
  opacity: 1 !important;
  margin: 0 !important;
}
body.start-selling-page .form-container .row p {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: 15px !important;
  line-height: 26px !important;
  text-transform: none !important;
  color: var(--ti-ink-2, #6e6c68) !important;
  opacity: 1 !important;
  margin: 0 0 12px !important;
}
body.start-selling-page .floating_footer {
  position: absolute;
  right: 48px;
  bottom: 48px;
  width: auto;
  margin: 0;
}
body.start-selling-page .floating_footer .btn-dark {
  background: var(--ti-accent, #a0742a);
  border: 1px solid var(--ti-accent, #a0742a);
  color: #fff;
  border-radius: 3px;
  padding: 11px 28px;
  font-family: var(--font-body);
  font-weight: 600;
  letter-spacing: 0.02em;
  transition: background .15s ease, border-color .15s ease;
}
body.start-selling-page .floating_footer .btn-dark:hover {
  background: var(--ti-accent-dark, #7a5820);
  border-color: var(--ti-accent-dark, #7a5820);
  color: #fff;
}
body.start-selling-page .consultation_bottom { background: var(--ti-ink, #2a2438); }
body.start-selling-page .consultation_bottom p,
body.start-selling-page .consultation_bottom p.consultation_text {
  font-family: var(--font-body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 25px !important;
  letter-spacing: normal !important;
  color: var(--ti-gesso, #f9f4e8) !important;
  opacity: 1 !important;
}
body.start-selling-page .consultant_right { color: var(--ti-gesso, #f9f4e8); }
body.start-selling-page .consultant_right .overlay_img {
  background: rgba(42, 36, 56, 0.55) !important;
  opacity: 1 !important;
}
body.start-selling-page .consultant_right h1 {
  font-family: var(--font-title) !important;
  font-weight: 400 !important;
  font-size: 55px !important;
  line-height: 60px !important;
  color: var(--ti-gesso, #f9f4e8) !important;
}
body.start-selling-page .consultant_right p {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 26px !important;
  color: var(--ti-gesso, #f9f4e8) !important;
}
body.start-selling-page .consultant_content h6 {
  font-family: var(--font-title) !important;
  font-weight: 400 !important;
  font-size: 25px !important;
  line-height: 20px !important;
  color: var(--ti-gesso, #f9f4e8) !important;
}
body.start-selling-page .consultant_content span {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 19px !important;
  letter-spacing: 1px !important;
  color: var(--ti-gesso, #f9f4e8) !important;
}
body.start-selling-page .step-title { background: var(--ti-ink, #2a2438); color: var(--ti-gesso, #f9f4e8); }
body.start-selling-page .step-heading { color: var(--ti-ink, #2a2438); }
body.start-selling-page .step-header small { color: var(--ti-ochre, #b78b4a); }
body.start-selling-page .step-header h4 { color: var(--ti-ink, #2a2438); }
body.start-selling-page span.line { background: var(--ti-ink, #2a2438); }
body.start-selling-page .step-content p,
body.start-selling-page ul.step_list li { color: var(--ti-ink-soft, #4a4358); }
body.start-selling-page .contactfull_width_hero_banner_with_background_image { background: var(--ti-canvas, #f4eee2); }


/* ===== apr-thanks (art project request thank-you) =====
   Tokens used:
     --ti-canvas   #f4eee2  (section background — warm impressionist canvas)
     --ti-paper    #fbf7ee  (intro card surface — lightest warm white)
     --ti-gesso    #f9f4e8  (steps card surface — primed-canvas tint)
     --ti-linen    #ede5d2  (card border / subtle divider)
     --ti-ink      #2a2438  (headings — deep impressionist dark)
     --ti-ink-soft #4a4358  (body copy)
     --ti-ink-mute #6c647a  (contact muted text)
     --ti-ochre    #b78b4a  (intro card top accent — brand gold-ochre)
     --ti-monet    #6b8eb3  (steps card left accent — impressionist blue)
     --ti-plein    #d89a78  (step bullet marker — warm terracotta)
     --ti-shadow-sm 0 4px 20px -8px rgba(42,36,56,.10)
     --f-display   Italiana / Cormorant Garamond (headings)
     --f-edit      Cormorant Garamond (body / steps)
   Specificity notes:
     Card surface:  .apr-thanks-page .apr-thanks-card  (0,2,0) — beats global .col-md-6 .card by load order
     Card title:    .apr-thanks-page .apr-thanks-card .apr-thanks-card__title  (0,3,0) — matches global
     Contact link:  .apr-thanks-contact .apr-thanks-contact__link  (0,2,0) — beats .text-muted a
   ===================================================================== */

/* --- Section vertical rhythm --- */
.apr-thanks-page {
  padding: 56px 0 64px;
  background: var(--ti-canvas, #f4eee2);
}

/* --- Shared card surface --- */
.apr-thanks-page .apr-thanks-card {
  background: var(--ti-paper, #fbf7ee);
  border: 1px solid var(--ti-linen, #ede5d2);
  border-radius: 2px;
  box-shadow: var(--ti-shadow-sm, 0 4px 20px -8px rgba(42, 36, 56, .10));
  height: 100%;
}

/* --- Intro card: lightest paper surface, ochre top accent, centered --- */
.apr-thanks-page .apr-thanks-card--intro {
  background: var(--ti-paper, #fbf7ee);
  border-top: 3px solid var(--ti-ochre, #b78b4a);
}

/* --- Steps card: gesso tint, monet-blue left accent --- */
.apr-thanks-page .apr-thanks-card--steps {
  background: var(--ti-gesso, #f9f4e8);
  border-left: 3px solid var(--ti-monet, #6b8eb3);
}

/* --- Card body padding; intro content centered --- */
.apr-thanks-page .apr-thanks-card__body {
  padding: 32px 28px;
}

.apr-thanks-page .apr-thanks-card--intro .apr-thanks-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* --- Card title — (0,3,0) to match/beat global .col-md-6 .card .card-title --- */
.apr-thanks-page .apr-thanks-card .apr-thanks-card__title {
  font-family: var(--f-display, 'Italiana', 'Cormorant Garamond', serif);
  font-weight: 400;
  font-size: clamp(1.25rem, 2.2vw, 1.6rem);
  line-height: 1.2;
  letter-spacing: .01em;
  color: var(--ti-ink, #2a2438);
  margin-bottom: .75rem;
}

/* --- Card body text --- */
.apr-thanks-page .apr-thanks-card__text {
  font-family: var(--f-edit, 'Cormorant Garamond', Garamond, serif);
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--ti-ink-soft, #4a4358);
  margin: 0;
}

/* --- Steps list: remove default bullets, add plein-terracotta diamond marker --- */
.apr-thanks-page .apr-thanks-steps {
  list-style: none;
  margin: 0;
  padding: 0;
}

.apr-thanks-page .apr-thanks-steps__item {
  position: relative;
  padding-left: 1.5em;
  font-family: var(--f-edit, 'Cormorant Garamond', Garamond, serif);
  font-size: 1.025rem;
  line-height: 1.65;
  color: var(--ti-ink-soft, #4a4358);
  margin-bottom: .75rem;
}

/* Plein (terracotta) diamond bullet via pseudo-element */
.apr-thanks-page .apr-thanks-steps__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: .52em;
  width: 6px;
  height: 6px;
  background: var(--ti-plein, #d89a78);
  transform: rotate(45deg);
  flex-shrink: 0;
}

.apr-thanks-page .apr-thanks-steps__item:last-child {
  margin-bottom: 0;
}

/* --- Contact strip --- */
.apr-thanks-page .apr-thanks-contact {
  margin-top: 36px;
}

/* Force TI token over Bootstrap .text-muted color:var(--bs-secondary-color)!important */
.apr-thanks-page .apr-thanks-contact .apr-thanks-contact__text {
  font-family: var(--f-ui, 'Manrope', sans-serif);
  font-size: .88rem;
  color: var(--ti-ink-mute, #6c647a) !important;
  margin: 0;
}

/* (0,2,0) — beats .text-muted a */
.apr-thanks-contact .apr-thanks-contact__link {
  color: var(--ti-ochre, #b78b4a);
  font-weight: 600;
  text-decoration: none;
  transition: color .18s ease;
}

.apr-thanks-contact .apr-thanks-contact__link:hover {
  color: var(--lc, #a0742a);
  text-decoration: underline;
}

/* --- Responsive: stack cols on mobile, tighten padding --- */
@media (max-width: 767px) {
  .apr-thanks-page {
    padding: 36px 0 44px;
  }

  .apr-thanks-page .apr-thanks-card__body {
    padding: 24px 20px;
  }

  .apr-thanks-grid .col-md-6 + .col-md-6 {
    margin-top: 16px;
  }
}

/* ===== Artwork Not Found Page ===== */

/* ── Breadcrumb nav-list ── */
.artwork-not-found-page .nav-list {
    list-style: none;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    padding: 0;
    margin: 24px 0 28px;
    font-family: var(--f-ui, 'Manrope', sans-serif);
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-weight: 500;
    color: var(--ti-ink-mute, #6c647a);
}

.artwork-not-found-page .nav-list li {
    display: flex;
    align-items: center;
}

.artwork-not-found-page .nav-list a {
    color: var(--ti-ochre, #b78b4a);
    text-decoration: none;
    transition: color 0.22s;
    padding: 0;
}

.artwork-not-found-page .nav-list a::before,
.artwork-not-found-page .nav-list a::after {
    content: none !important;
}

.artwork-not-found-page .nav-list a:hover {
    color: var(--lc, #a0742a);
}

.artwork-not-found-page .nav-list .main-heading {
    color: var(--ti-ink-mute, #6c647a);
    font-weight: 600;
}

/* ── Card container ── */
.artwork-not-found-page .e_card_form {
    background: var(--ti-gesso, #f9f4e8);
    border: 0.5px solid var(--ti-rule, #c7bea8);
    border-radius: 2px;
    padding: 52px 48px 48px;
    box-shadow: 0 8px 32px -12px rgba(42, 36, 56, 0.12);
    max-width: 640px;
    margin-inline: auto;
    position: relative;
}

/* Subtle plein top-rule accent */
.artwork-not-found-page .e_card_form::before {
    content: '';
    position: absolute;
    top: 0;
    left: 48px;
    right: 48px;
    height: 1px;
    background: var(--ti-plein, #d89a78);
    opacity: 0.45;
}

/* ── Card heading ── */
.artwork-not-found-page .form_heading {
    font-family: var(--f-display, 'Italiana', 'Cormorant Garamond', serif);
    font-size: clamp(26px, 4vw, 32px);
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: -0.005em;
    color: var(--ti-ink, #2a2438);
    margin-bottom: 18px;
}

/* ── Card body text ── */
.artwork-not-found-page .form_content {
    font-family: var(--f-edit, 'Cormorant Garamond', Garamond, serif);
    font-size: clamp(16px, 2vw, 18px);
    line-height: 1.65;
    color: var(--ti-ink-soft, #4a4358);
    margin-bottom: 28px;
}

.artwork-not-found-page .form_content p {
    margin: 0;
}

.artwork-not-found-page .form_content strong {
    font-weight: 600;
    color: var(--ti-ink, #2a2438);
    font-style: italic;
}

/* ── Primary CTA button (Search Everywhere) ── */
.artwork-not-found-page .btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 28px;
    font-family: var(--f-ui, 'Manrope', sans-serif);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    background: var(--ti-ink, #2a2438);
    color: var(--ti-gesso, #f9f4e8);
    border: none;
    border-radius: 2px;
    cursor: pointer;
    transition: background 0.25s, transform 0.25s;
    text-decoration: none;
}

.artwork-not-found-page .btn-primary:hover,
.artwork-not-found-page .btn-primary:focus {
    background: var(--ti-ink-soft, #4a4358);
    color: var(--ti-gesso, #f9f4e8);
    transform: translateY(-1px);
}

/* ── Secondary button (Retry) ── */
.artwork-not-found-page .btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 13px 28px;
    font-family: var(--f-ui, 'Manrope', sans-serif);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    background: transparent;
    color: var(--ti-ink-soft, #4a4358);
    border: 0.5px solid var(--ti-ink-soft, #4a4358);
    border-radius: 2px;
    cursor: pointer;
    transition: background 0.25s, color 0.25s, border-color 0.25s;
    text-decoration: none;
}

.artwork-not-found-page .btn-secondary:hover,
.artwork-not-found-page .btn-secondary:focus {
    background: var(--ti-ink, #2a2438);
    color: var(--ti-gesso, #f9f4e8);
    border-color: var(--ti-ink, #2a2438);
}

/* Suppress global dual-sweep hover lines on these buttons */
.artwork-not-found-page .btn-primary::before,
.artwork-not-found-page .btn-primary::after,
.artwork-not-found-page .btn-secondary::before,
.artwork-not-found-page .btn-secondary::after {
    content: none !important;
}

/* ── Responsive: tighten padding on small screens ── */
@media (max-width: 576px) {
    .artwork-not-found-page .e_card_form {
        padding: 36px 24px 32px;
    }

    .artwork-not-found-page .e_card_form::before {
        left: 24px;
        right: 24px;
    }

    .artwork-not-found-page .form_heading {
        font-size: clamp(22px, 7vw, 28px);
    }
}

/* =====================================================
   TI (TopImpressionists) — Artwork buy / reproduction page (artwork_buy_ArtistReproduction)
   Structure in global-custom; brand colours/identity here. Scoped to .reproduction_main_page.
   Impressionist identity: Italiana display + Cormorant body, warm canvas/gesso/linen
   surfaces, aubergine ink (#2a2438), gold-ochre accent (#a0742a), 2px radius.
   ===================================================== */
.reproduction_main_page {
  --ti-radius: 2px;
  --ti-r-ink:     var(--ti-ink, #2a2438);
  --ti-r-ink-2:   var(--ti-ink-mute, #6c647a);
  --ti-r-ink-3:   var(--ti-ink-faint, #9a93a4);
  --ti-r-accent:  var(--ti-accent, #a0742a);
  --ti-r-accent-dark: var(--ti-accent-dark, #7a5820);
  --ti-r-bg:      var(--ti-paper, #fbf7ee);
  --ti-r-page:    var(--ti-canvas, #f4eee2);
  --ti-r-band:    var(--ti-gesso, #f9f4e8);
  --ti-r-slot:    var(--ti-linen, #ede5d2);
  --ti-r-line:    var(--ti-rule-soft, #ddd4be);
  --ti-r-line-2:  var(--ti-rule, #c7bea8);
  font-family: var(--font-body, "Cormorant Garamond", serif);
  color: var(--ti-r-ink, #2a2438);
  background-color: var(--ti-r-page, #f4eee2);
}

/* Academic block — same horizontal width as reproduction_section */
.reproduction_main_page > .container {
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}
.reproduction_main_page .article_main_page,
.reproduction_main_page .article_main_page.p-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  width: 100% !important;
}
.reproduction_main_page .academicism_wrapper,
.reproduction_main_page .acadamic_inner_box {
  padding-left: 0;
  padding-right: 0;
  max-width: none;
  width: 100%;
}

/* Custom width/height fields — warm linen slot */
.reproduction_main_page .input_label_text,
.reproduction_main_page .manual_cstm__box .input_label_text {
  background: var(--ti-r-slot, #ede5d2);
}

/* ---- Action bar + cross-channel links (Buy print, Share, Favorites, …) ---- */
.reproduction_main_page .fav-icon-artwork,
.reproduction_main_page .buy_sale_channel_heading_alternate_buy {
  border-bottom-color: var(--ti-r-line, #ddd4be);
}
.reproduction_main_page .buy_sale_channel_heading_alternate_buy {
  gap: 20px;
  padding-bottom: 16px;
}
.reproduction_main_page .fav-icon-artwork a,
.reproduction_main_page .fav-icon-artwork .artwork-share-trigger,
.reproduction_main_page .buy_sale_channel_heading_alternate_buy a {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--ti-r-ink-2, #6c647a) !important;
  transition: color 0.15s ease;
}
.reproduction_main_page .fav-icon-artwork a:hover,
.reproduction_main_page .fav-icon-artwork .artwork-share-trigger:hover,
.reproduction_main_page .buy_sale_channel_heading_alternate_buy a:hover {
  color: var(--ti-r-accent, #a0742a) !important;
}
/* Monochrome icons — neutral ink, gold on hover */
.reproduction_main_page .fav-icon-artwork a img,
.reproduction_main_page .fav-icon-artwork .artwork-share-trigger img,
.reproduction_main_page .buy_sale_channel_heading_alternate_buy a img {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  filter: brightness(0) saturate(100%);
  opacity: 0.42;
  transition: opacity 0.15s ease, filter 0.15s ease;
}
.reproduction_main_page .fav-icon-artwork a:hover img,
.reproduction_main_page .fav-icon-artwork .artwork-share-trigger:hover img,
.reproduction_main_page .buy_sale_channel_heading_alternate_buy a:hover img {
  opacity: 1;
  filter: brightness(0) saturate(100%) invert(48%) sepia(36%) saturate(720%) hue-rotate(2deg) brightness(92%) contrast(88%);
}
.reproduction_main_page .fav-icon-artwork a.fav_toggle .fav_icon {
  filter: brightness(0) saturate(100%) invert(48%) sepia(36%) saturate(720%) hue-rotate(2deg) brightness(92%) contrast(88%);
  opacity: 1;
}

/* ---- Metadata chips (medium, movement, year, …) ---- */
.reproduction_main_page .details_reproducton li {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  font-weight: 400;
  color: var(--ti-r-ink-2, #6c647a);
}
.reproduction_main_page .details_reproducton li img {
  width: 16px;
  height: 16px;
  opacity: 0.7;
}

/* ---- PDP titles ---- */
.reproduction_main_page .repro_heading,
.reproduction_main_page .buy_sale_channel_heading,
.reproduction_main_page .buy_sale_channel_heading a {
  font-family: var(--font-title, "Italiana", serif);
  font-weight: 400;
  font-size: clamp(1.5rem, 2.4vw, 2.1rem);
  line-height: 1.2;
  letter-spacing: 0.005em;
  color: var(--ti-r-ink, #2a2438);
  text-transform: none;
}
.reproduction_main_page .buy_sale_channel_short_description {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 15px;
  font-weight: 400;
  color: var(--ti-r-ink-2, #6c647a);
}

/* ---- Accordions (description, size, summary, …) — warm band on full panel ---- */
.reproduction_main_page .reproduc_tabs .accordion-item,
.reproduction_main_page .reproduction_image_detail .accordion-item,
.reproduction_main_page .repruct_content_collapse .accordion-item,
.reproduction_main_page #summary_checkout .accordion-item,
.reproduction_main_page #summary_checkout .collapse_inner_box .accordion-item {
  background-color: var(--ti-r-band, #f9f4e8) !important;
  border: 1px solid var(--ti-r-line, #ddd4be) !important;
  border-radius: var(--ti-radius, 2px);
  overflow: hidden;
  padding-bottom: 0 !important;
}
.reproduction_main_page .repruct_content_collapse .accordion-item + .accordion-item {
  margin-top: 10px;
}
.reproduction_main_page .reproduction_image_detail .repruct_content_collapse + .repruct_content_collapse {
  margin-top: 10px;
}
.reproduction_main_page .reproduc_tabs .accordion-item + .accordion-item,
.reproduction_main_page .reproduction_image_detail .reproduc_tabs .accordion-item + .accordion-item {
  margin-top: 8px;
}
.reproduction_main_page .reproduc_tabs .accordion-collapse,
.reproduction_main_page .reproduction_image_detail .accordion-collapse,
.reproduction_main_page .repruct_content_collapse .accordion-collapse {
  background-color: var(--ti-r-band, #f9f4e8);
}
.reproduction_main_page .reproduc_tabs button.accordion-button,
.reproduction_main_page .reproduc_tabs button.accordion-button:not(.collapsed),
.reproduction_main_page .reproduction_image_detail .accordion-item button.accordion-button,
.reproduction_main_page .reproduction_image_detail .accordion-item button.accordion-button:not(.collapsed),
.reproduction_main_page .repruct_content_collapse button.accordion-button,
.reproduction_main_page .repruct_content_collapse button.accordion-button:not(.collapsed),
.reproduction_main_page #summary_checkout button.accordion-button,
.reproduction_main_page #summary_checkout button.accordion-button:not(.collapsed) {
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em;
  text-transform: uppercase !important;
  color: var(--ti-r-ink, #2a2438) !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
.reproduction_main_page .reproduc_tabs button.accordion-button {
  padding: 12px 20px;
}
.reproduction_main_page .repruct_content_collapse button.accordion-button {
  padding: 12px 20px;
}
.reproduction_main_page .reproduc_tabs .accordion-body,
.reproduction_main_page .reproduction_image_detail .accordion-body,
.reproduction_main_page .repruct_content_collapse .accordion-body,
.reproduction_main_page #summary_checkout .accordion-body {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 15px;
  font-weight: 400;
  color: var(--ti-r-ink-2, #6c647a);
  background: transparent !important;
  background-color: transparent !important;
}
.reproduction_main_page #summary_checkout .accordion-body {
  padding: 0 16px 16px !important;
}
.reproduction_main_page .reproduc_tabs .accordion-body {
  padding: 0 20px 16px !important;
}
.reproduction_main_page .repruct_content_collapse .accordion-body {
  padding: 0 20px 16px !important;
}
.reproduction_main_page .repruct_content_collapse {
  border-top-color: var(--ti-r-line, #ddd4be);
  border-bottom-color: var(--ti-r-line, #ddd4be);
}
.reproduction_main_page .repruct_content_collapse .accordion-body span {
  color: var(--ti-r-accent, #a0742a);
}

/* Configurator tabs + radios */
.reproduction_main_page .reproduc_tabs .nav-pills .nav-link {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ti-r-ink-3, #9a93a4);
  border-bottom-color: transparent;
}
.reproduction_main_page .reproduc_tabs .nav-pills .nav-link.active,
.reproduction_main_page .reproduc_tabs .nav-pills .show > .nav-link {
  color: var(--ti-r-ink, #2a2438);
  border-bottom-color: var(--ti-r-accent, #a0742a);
}
.reproduction_main_page .repro_radio label,
.reproduction_main_page .article_main_page .repro_radio label,
.reproduction_main_page .ques_box .repro_radio label,
.reproduction_main_page .article_main_page .ques_box .repro_radio label {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 16px !important;
  font-weight: 400;
  line-height: 1.45 !important;
  color: var(--ti-r-ink, #2a2438) !important;
}
.reproduction_main_page .repro_radio input[type="radio"],
.reproduction_main_page .article_main_page .repro_radio input[type="radio"] {
  background: var(--ti-r-bg, #fbf7ee);
}
.reproduction_main_page .repro_radio input[type="radio"]:after,
.reproduction_main_page .article_main_page .repro_radio input[type="radio"]:after,
.reproduction_main_page .question_option .repro_radio input[type="radio"]:after,
.reproduction_main_page .article_main_page .question_option .repro_radio input[type="radio"]:after {
  background-color: var(--ti-r-bg, #fbf7ee) !important;
  border: 1px solid var(--ti-r-line-2, #c7bea8) !important;
}
.reproduction_main_page .repro_radio input[type="radio"]:checked:after,
.reproduction_main_page .article_main_page .repro_radio input[type="radio"]:checked:after,
.reproduction_main_page .question_option .repro_radio input[type="radio"]:checked:after,
.reproduction_main_page .article_main_page .question_option .repro_radio input[type="radio"]:checked:after {
  background-color: var(--ti-r-accent, #a0742a) !important;
  border-color: var(--ti-r-accent, #a0742a) !important;
  outline: 1.5px solid var(--ti-r-accent, #a0742a) !important;
  outline-offset: 3px;
}

/* Size / frame selector surfaces */
.reproduction_main_page .frame_box,
.reproduction_main_page .commn_strache_frame {
  background: var(--ti-r-bg, #fbf7ee);
  border: 1px solid var(--ti-r-line-2, #c7bea8);
  border-radius: var(--ti-radius, 2px);
}
.reproduction_main_page .frame_box.active,
.reproduction_main_page .commn_strache_frame.active {
  border-color: var(--ti-r-accent, #a0742a);
  box-shadow: 0 0 0 1px var(--ti-r-accent, #a0742a);
}

/* Price spans */
.reproduction_main_page .face_color_red,
.reproduction_main_page .aps-price-amount {
  color: var(--ti-r-accent, #a0742a);
}

/* CTA buttons — gold accent, 2px radius, Manrope label */
.reproduction_main_page .add_tocart_btn button,
.reproduction_main_page .reproduction_button_box .add_tocart_btn button {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ffffff;
  background: var(--ti-r-accent, #a0742a);
  border: 1px solid var(--ti-r-accent, #a0742a);
  border-radius: var(--ti-radius, 2px);
  transition: background 0.15s ease, border-color 0.15s ease;
}
.reproduction_main_page .add_tocart_btn button:hover:not(:disabled),
.reproduction_main_page .reproduction_button_box .add_tocart_btn button:hover:not(:disabled) {
  background: var(--ti-r-accent-dark, #7a5820);
  border-color: var(--ti-r-accent-dark, #7a5820);
  color: #ffffff;
}

/* ---- Academic / story block ---- */
.reproduction_main_page .artwork_section,
.reproduction_main_page .article_main_page .artwork_section,
.reproduction_main_page.adc-buy-page-section.artwork_section {
  background: transparent !important;
  padding-top: 24px;
  padding-bottom: 8px;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Unified section headings (Quick Facts, Quiz, story, sidebars) */
.reproduction_main_page .art_heading,
.reproduction_main_page .article_main_page .art_heading,
.reproduction_main_page .art_heading.art_heading--quick-facts,
.reproduction_main_page .quick_facts_section h4,
.reproduction_main_page .quick_facts_section h4.art_heading,
.reproduction_main_page .art_quize_section .art_header h4,
.reproduction_main_page .side_headings {
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--ti-r-ink, #2a2438) !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid var(--ti-r-line-2, #c7bea8) !important;
  opacity: 1;
}
.reproduction_main_page .art_heading.art_heading--section-spaced {
  margin-top: 36px !important;
}
.reproduction_main_page .art_text,
.reproduction_main_page .art_detail,
.reproduction_main_page .box_facts ul li,
.reproduction_main_page .article_main_page .box_facts ul li {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-weight: 400;
  color: var(--ti-r-ink-2, #6c647a);
}
.reproduction_main_page .box_facts ul li b,
.reproduction_main_page .article_main_page .box_facts ul li b {
  font-weight: 600;
  color: var(--ti-r-ink, #2a2438);
}
.reproduction_main_page .box_facts ul li a,
.reproduction_main_page .article_main_page .box_facts ul li a,
.reproduction_main_page .qf-more-trigger {
  color: var(--ti-r-accent, #a0742a);
}
.reproduction_main_page .box_facts ul li a:hover,
.reproduction_main_page .qf-more-trigger:hover {
  color: var(--ti-r-accent-dark, #7a5820);
}

/* Quick Facts cards — warm linen slot */
.reproduction_main_page .quick_facts_section,
.reproduction_main_page .article_main_page .quick_facts_section {
  background-color: var(--ti-r-slot, #ede5d2) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  border-radius: var(--ti-radius, 2px);
  padding: 20px;
}
.reproduction_main_page .art_quize_section,
.reproduction_main_page .article_main_page .art_quize_section {
  margin-top: 0;
  background: var(--ti-r-bg, #fbf7ee) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  border-radius: var(--ti-radius, 2px);
  padding: 20px;
}
.reproduction_main_page .table_of_contents_section,
.reproduction_main_page .article_main_page .table_of_contents_section {
  margin-top: 0;
  background: var(--ti-r-bg, #fbf7ee) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  border-radius: var(--ti-radius, 2px);
  padding: 20px;
}
.reproduction_main_page .quick_facts_section + .art_quize_section,
.reproduction_main_page .article_main_page .quick_facts_section + .art_quize_section {
  margin-top: 16px;
}
.reproduction_main_page .art_quize_section .art_header p,
.reproduction_main_page .article_main_page .art_quize_section .art_header p {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--ti-r-ink-2, #6c647a) !important;
  margin-bottom: 12px;
}
.reproduction_main_page .ques_heading,
.reproduction_main_page .article_main_page .ques_heading {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ti-r-accent, #a0742a) !important;
}
.reproduction_main_page .ques_text,
.reproduction_main_page .article_main_page .ques_text {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--ti-r-ink, #2a2438) !important;
  margin: 8px 0 12px;
}
.reproduction_main_page .ques_box {
  margin-bottom: 14px;
}
.reproduction_main_page .art_quize_section .submit_quiz .add_tocart_btn button {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ffffff !important;
  background: var(--ti-r-accent, #a0742a) !important;
  border: 1px solid var(--ti-r-accent, #a0742a) !important;
  border-radius: var(--ti-radius, 2px);
}
.reproduction_main_page .art_quize_section .submit_quiz .add_tocart_btn button:hover:not(:disabled) {
  background: var(--ti-r-accent-dark, #7a5820) !important;
  border-color: var(--ti-r-accent-dark, #7a5820) !important;
}
.reproduction_main_page .art_quize_section .submit_quiz .add_tocart_btn button.disabled_button {
  opacity: 0.45;
  cursor: not-allowed;
}
.reproduction_main_page .art_quize_section .quiz_result_text {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 15px;
  line-height: 1.45;
  color: var(--ti-r-ink, #2a2438) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  background: var(--ti-r-band, #f9f4e8);
}
.reproduction_main_page .art_quize_section .repro_radio.mark_wrong_answer {
  border-color: #c2554f;
}
.reproduction_main_page .art_quize_section .repro_radio.mark_right_answer {
  border-color: var(--ti-lichen, #8fa280);
}
.reproduction_main_page .article_main_page .art_quize_section .ques_box .repro_radio label {
  color: var(--ti-r-ink, #2a2438) !important;
}
.reproduction_main_page .article_main_page .art_quize_section .art_header h4 {
  color: var(--ti-r-ink, #2a2438) !important;
}

/* Order summary block */
.reproduction_main_page .summery_box,
.reproduction_main_page .summery_inner {
  color: var(--ti-r-ink, #2a2438);
}
.reproduction_main_page .summery_box .summery_total,
.reproduction_main_page .summery_total .face_color_red {
  color: var(--ti-r-accent, #a0742a);
}

/* Collections band at bottom of buy page */
.reproduction_main_page .full_collection_section {
  background: var(--ti-r-band, #f9f4e8);
  color: var(--ti-r-ink, #2a2438);
}
.reproduction_main_page .collec_heading,
.reproduction_main_page .collec_heading a {
  font-family: var(--font-title, "Italiana", serif);
  font-size: clamp(1.6rem, 2.5vw, 2.25rem);
  font-weight: 400;
  letter-spacing: 0.005em;
  color: var(--ti-r-ink, #2a2438);
}
.reproduction_main_page .collec_text {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-weight: 400;
  color: var(--ti-r-ink-2, #6c647a);
}
.reproduction_main_page .collection_tabs .nav-pills .nav-link {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  color: var(--ti-r-ink-2, #6c647a);
  border-color: var(--ti-r-line, #ddd4be);
}
.reproduction_main_page .collection_tabs .nav-pills .nav-link.active,
.reproduction_main_page .collection_tabs .nav-pills .show > .nav-link {
  color: var(--ti-r-ink, #2a2438);
  background-color: var(--ti-r-bg, #fbf7ee);
  border-color: var(--ti-r-line-2, #c7bea8);
}
.reproduction_main_page .collection_details h4 {
  color: var(--ti-r-ink, #2a2438);
}

/* Optional extras (checkbox row) */
.reproduction_main_page .optional_box .optional_add {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0;
}
.reproduction_main_page .optional_box .option_text {
  width: 100%;
}
.reproduction_main_page .optional_box .optional_add > .yellow_cont,
.reproduction_main_page .optional_box .optional_add > span.yellow_cont {
  margin-top: 10px;
  margin-left: 0;
  padding-left: 0;
  align-self: flex-start;
}

/* Read more — TI text CTA (gold, uppercase Manrope) */
.reproduction_main_page .yellow_cont,
.reproduction_main_page span.yellow_cont {
  display: block;
  margin-top: 12px;
}
.reproduction_main_page .repruct_content_collapse .accordion-body .yellow_cont,
.reproduction_main_page .reproduc_tabs .accordion-body .yellow_cont {
  margin-top: 12px;
}
.reproduction_main_page .repruct_content_collapse .accordion-collapse > .yellow_cont,
.reproduction_main_page .repruct_content_collapse .accordion-collapse > span.yellow_cont {
  padding-left: 16px;
  padding-right: 16px;
  margin-top: 0;
  margin-bottom: 4px;
}
.reproduction_main_page .yellow_cont a,
.reproduction_main_page span.yellow_cont a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ti-r-accent, #a0742a) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
.reproduction_main_page .yellow_cont a:hover,
.reproduction_main_page span.yellow_cont a:hover {
  color: var(--ti-r-accent-dark, #7a5820) !important;
}
.reproduction_main_page .yellow_cont a .yellow_cont__icon,
.reproduction_main_page .yellow_cont a img,
.reproduction_main_page span.yellow_cont a .yellow_cont__icon,
.reproduction_main_page span.yellow_cont a img {
  width: 14px;
  height: 14px;
  max-height: 14px;
  margin: 0 !important;
  flex-shrink: 0;
  filter: brightness(0) saturate(100%) invert(48%) sepia(36%) saturate(720%) hue-rotate(2deg) brightness(92%) contrast(88%);
  opacity: 0.9;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.reproduction_main_page .yellow_cont a:hover .yellow_cont__icon,
.reproduction_main_page .yellow_cont a:hover img,
.reproduction_main_page span.yellow_cont a:hover .yellow_cont__icon,
.reproduction_main_page span.yellow_cont a:hover img {
  opacity: 1;
  transform: translateX(2px);
}

/* Related articles — « Explore Article » CTA */
.reproduction_main_page .related_articles .explore_techniques,
.reproduction_main_page .article_main_page .related_articles .explore_techniques {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ti-r-accent, #a0742a) !important;
  cursor: pointer;
}
.reproduction_main_page .related_articles .explore_techniques a,
.reproduction_main_page .article_main_page .related_articles .explore_techniques a {
  font: inherit;
  color: var(--ti-r-accent, #a0742a) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
.reproduction_main_page .related_articles .explore_techniques:hover,
.reproduction_main_page .related_articles .explore_techniques a:hover {
  color: var(--ti-r-accent-dark, #7a5820) !important;
}

/* Below-fold blocks (Related Artworks, Biography, …) */
.reproduction_main_page .container-fluid.adc-buy-page-section {
  padding-top: 32px !important;
  border-top: 1px solid var(--ti-r-line, #ddd4be);
}
.reproduction_main_page .article_main_page hr {
  margin: 0;
  border: none;
  border-top: 1px solid var(--ti-r-line, #ddd4be);
}

/* Related artworks slider — swiper prev/next on warm band */
.reproduction_main_page .parent_slid_box .artist_slider .swp_btn {
  width: 44px;
  height: 44px;
  margin: 0;
  background: var(--ti-r-band, #f9f4e8) !important;
  border: 1px solid var(--ti-r-line, #ddd4be) !important;
  border-radius: 50%;
  box-shadow: none !important;
  opacity: 1;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
.reproduction_main_page .parent_slid_box .artist_slider .swp_btn:hover {
  background: var(--ti-r-slot, #ede5d2) !important;
  border-color: var(--ti-r-accent, #a0742a) !important;
}

/* Digital Image — « Included in Every Digital Image Order » benefits band */
.reproduction_main_page .premium_service .why_choose_right h3,
.reproduction_main_page .premium_service .why_choose_right .heading_text {
  font-family: var(--font-title, "Italiana", serif);
  color: var(--ti-r-band, #f9f4e8);
}
.reproduction_main_page .premium_service .why_choose_info h5 {
  font-family: var(--f-ui, "Manrope", sans-serif);
  color: var(--ti-r-band, #f9f4e8);
}
.reproduction_main_page .premium_service .why_choose_right .heading_paragrap,
.reproduction_main_page .premium_service .why_choose_info p {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  color: var(--ti-r-ink-3, #9a93a4);
}

/* Academic block link colour (override generic historicle handled above) */
.reproduction_main_page .article_main_page .listOf_artwork_section .view_all_art a {
  font-family: var(--f-ui, "Manrope", sans-serif);
  color: var(--ti-r-ink, #2a2438) !important;
}
.reproduction_main_page .article_main_page .listOf_artwork_section .view_all_art a:hover {
  color: var(--ti-r-accent, #a0742a) !important;
}
/* ===== END TI — Artwork buy / reproduction page ===== */

/* ===== TI — museum / artist / article detail sidebar (Quick Facts, Art Quiz, List of Artworks) =====
   Parity with the reproduction page: these scopes were only branded under
   .reproduction_main_page, so on .article_main_page (museum/artist/article detail,
   no reproduction ancestor) the Quick Facts / Art Quiz / artwork-list fell back to
   the neutral global-custom theme. Re-apply the TI tokens here. */
.article_main_page .art_heading,
.article_main_page .art_heading.art_heading--quick-facts,
.article_main_page .quick_facts_section h4,
.article_main_page .art_quize_section .art_header h4,
.article_main_page .side_headings {
  font-family: var(--f-ui, "Manrope", sans-serif) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: var(--ti-r-ink, #2a2438) !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid var(--ti-r-line-2, #c7bea8) !important;
  opacity: 1;
}
.article_main_page .box_facts ul li {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-weight: 400;
  color: var(--ti-r-ink-2, #6c647a);
}
.article_main_page .box_facts ul li b {
  font-weight: 600;
  color: var(--ti-r-ink, #2a2438);
}
.article_main_page .box_facts ul li a,
.article_main_page .qf-more-trigger {
  color: var(--ti-r-accent, #a0742a);
}
.article_main_page .box_facts ul li a:hover,
.article_main_page .qf-more-trigger:hover {
  color: var(--ti-r-accent-dark, #7a5820);
}
/* Quick Facts card — warm linen slot */
.article_main_page .quick_facts_section {
  background-color: var(--ti-r-slot, #ede5d2) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  border-radius: var(--ti-radius, 2px);
  padding: 20px;
}
/* Art Quiz card — paper surface (overrides global dark #3E342A) */
.article_main_page .art_quize_section {
  margin-top: 0;
  background: var(--ti-r-bg, #fbf7ee) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  border-radius: var(--ti-radius, 2px);
  padding: 20px;
}
.article_main_page .quick_facts_section + .art_quize_section {
  margin-top: 16px;
}
.article_main_page .art_quize_section .art_header p {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--ti-r-ink-2, #6c647a) !important;
  margin-bottom: 12px;
}
.article_main_page .ques_heading {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ti-r-accent, #a0742a) !important;
}
.article_main_page .ques_text {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--ti-r-ink, #2a2438) !important;
  margin: 8px 0 12px;
}
.article_main_page .art_quize_section .ques_box .repro_radio label {
  color: var(--ti-r-ink, #2a2438) !important;
}
/* Quiz radio dial — paper surface (parity with reproduction page; the global
   .question_option rule fills the dial dark #3e342b, made for the old dark card) */
.article_main_page .art_quize_section .question_option .repro_radio input[type="radio"] {
  background: var(--ti-r-bg, #fbf7ee);
}
.article_main_page .art_quize_section .question_option .repro_radio input[type="radio"]:after {
  background-color: var(--ti-r-bg, #fbf7ee) !important;
  border: 1px solid var(--ti-r-line-2, #c7bea8) !important;
}
.article_main_page .art_quize_section .question_option .repro_radio input[type="radio"]:checked:after {
  background-color: var(--ti-r-accent, #a0742a) !important;
  border-color: var(--ti-r-accent, #a0742a) !important;
  outline: 1.5px solid var(--ti-r-accent, #a0742a) !important;
  outline-offset: 3px;
}
.article_main_page .art_quize_section .submit_quiz .add_tocart_btn button {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ffffff !important;
  background: var(--ti-r-accent, #a0742a) !important;
  border: 1px solid var(--ti-r-accent, #a0742a) !important;
  border-radius: var(--ti-radius, 2px);
}
.article_main_page .art_quize_section .submit_quiz .add_tocart_btn button:hover:not(:disabled) {
  background: var(--ti-r-accent-dark, #7a5820) !important;
  border-color: var(--ti-r-accent-dark, #7a5820) !important;
}
.article_main_page .art_quize_section .submit_quiz .add_tocart_btn button.disabled_button {
  opacity: 0.45;
  cursor: not-allowed;
}
.article_main_page .art_quize_section .quiz_result_text {
  font-family: var(--font-body, "Cormorant Garamond", serif);
  font-size: 15px;
  line-height: 1.45;
  color: var(--ti-r-ink, #2a2438) !important;
  border: 1px solid var(--ti-r-line, #ddd4be);
  background: var(--ti-r-band, #f9f4e8);
}
.article_main_page .art_quize_section .repro_radio.mark_wrong_answer {
  border-color: #c2554f;
}
.article_main_page .art_quize_section .repro_radio.mark_right_answer {
  border-color: var(--ti-lichen, #8fa280);
}
/* List of Artworks — paper band (overrides global beige #E8E2CD) */
.article_main_page .listOf_artwork_section {
  background: var(--ti-r-bg, #fbf7ee) !important;
  background-color: var(--ti-r-bg, #fbf7ee) !important;
}
.article_main_page .listOf_artwork_section .view_all_art a {
  font-family: var(--f-ui, "Manrope", sans-serif);
  color: var(--ti-r-ink, #2a2438) !important;
}
.article_main_page .listOf_artwork_section .view_all_art a:hover,
.article_main_page .listOf_artwork_section .view_all_art a:focus {
  color: var(--ti-r-accent, #a0742a) !important;
}
/* ===== END TI — museum / artist / article detail sidebar ===== */

/* ===== TI — artist_detail.html — artistPage_Slider_section (corpus/popular/medium sliders) ===== */
/* Background — warm linen surface matching TI canvas palette */
.article_main_page .artistPage_Slider_section {
  background: var(--ti-linen, #ede5d2) !important;
  padding: 32px var(--ti-pad, 44px);
  text-align: center;
}
.article_main_page .artistPage_Slider_section .swiper-wrapper {
  height: 360px;
}
.article_main_page .artistPage_Slider_section .swiper-slide {
  height: 360px;
  box-sizing: border-box;
}
.article_main_page .artistPage_Slider_section .artist_slid_box a img {
  max-height: 300px;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}
.article_main_page .parent_slid_box {
  border-bottom: 1px solid var(--ti-rule, #c7bea8);
  padding: 28px 0;
}
.article_main_page .artistPage_Slider_section .parent_slid_box:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.article_main_page .parent_slid_box h4 {
  margin: 0;
  font-family: var(--font-title, "Cormorant Garamond", serif);
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--ti-ink, #2a2438);
  text-transform: none;
}
.article_main_page .parent_slid_box h4 a {
  color: inherit;
  text-decoration: none;
  transition: color 0.15s ease;
}
.article_main_page .parent_slid_box h4 a:hover {
  color: var(--ti-plein, #d89a78);
}
/* view_all_art tag links — italic editorial style for TI */
.article_main_page .artistPage_Slider_section .view_all_art {
  margin-top: 12px;
}
.article_main_page .artistPage_Slider_section .view_all_art a {
  display: inline-block;
  font-family: var(--ti-f-edit, "Cormorant Garamond", serif);
  font-style: italic;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.35;
  color: var(--ti-ink-soft, #4a4358);
  text-decoration: none;
  transition: color 0.15s ease;
}
.article_main_page .artistPage_Slider_section .view_all_art a:hover {
  color: var(--ti-plein, #d89a78) !important;
}
/* Image hover: only the image itself reacts (zoom retreat) */
.article_main_page .artistPage_Slider_section .artist_slid_box a img.mouseover_effect_images {
  transition: transform 0.6s ease, opacity 0.6s ease;
}
.article_main_page .artistPage_Slider_section .artist_slid_box a:hover img.mouseover_effect_images {
  transform: scale(0.95);
  opacity: 0.9;
}
/* ===== END TI — artist_detail.html artistPage_Slider_section ===== */

/* ===== catalog left sidebars (filter / categories / group-by) — UI Kit alignment ===== */
/* Group-by rail (C): the Sidebar_tags (sbk-chip) rules above only scoped
   artwork-/artist-groupby; a real /groupby/ page carries ONLY catalog-groupby-page,
   so its tag chips fell back to global styling. Extend the existing scope to match
   the sibling title/description rules (catalog + museum + article). Values are the
   SAME tokens already used for artwork-groupby — chip = --SB-inset bg, --SB-border,
   --SB-ink-soft text, accent on hover. */
.search_sec.catalog-groupby-page ul.Sidebar_tags,
.search_sec.museum-groupby-page ul.Sidebar_tags,
.search_sec.article-groupby-page ul.Sidebar_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
  padding: 0;
  list-style: none;
}
.search_sec.catalog-groupby-page ul.Sidebar_tags a,
.search_sec.catalog-groupby-page ul.Sidebar_tags li button.catalog-nav-btn,
.search_sec.museum-groupby-page ul.Sidebar_tags a,
.search_sec.museum-groupby-page ul.Sidebar_tags li button.catalog-nav-btn,
.search_sec.article-groupby-page ul.Sidebar_tags a,
.search_sec.article-groupby-page ul.Sidebar_tags li button.catalog-nav-btn {
  display: inline-block;
  padding: 4px 9px;
  background: var(--ti-gb-slot) !important;
  color: var(--ti-gb-ink-3) !important;
  border: .5px solid var(--ti-gb-line);
  border-radius: 2px;
  font-family: var(--ti-gb-ui);
  font-size: 11px;
  letter-spacing: .08em;
  line-height: 1.4;
  font-weight: 500;
  text-decoration: none;
  text-transform: none;
}
.search_sec.catalog-groupby-page ul.Sidebar_tags a:hover,
.search_sec.museum-groupby-page ul.Sidebar_tags a:hover,
.search_sec.article-groupby-page ul.Sidebar_tags a:hover {
  color: var(--ti-gb-accent) !important;
  border-color: var(--ti-gb-accent) !important;
}

/* ===== customers_reviews — TI brand tokens (structure lives in global-custom) ===== */
.customers-reviews-page {
  --cr-font:              var(--font-body, 'Archivo', Arial, sans-serif);
  --cr-card-bg:           #ffffff;
  --cr-card-border:       1px solid #e6e6e6;
  --cr-card-radius:       4px;
  --cr-card-shadow:       0 1px 3px rgba(31, 28, 23, .08);
  --cr-card-shadow-hover: 0 8px 24px rgba(31, 28, 23, .14);
  --cr-text-color:        var(--ti-ink-2, #6e6c68);
  --cr-name-color:        var(--ti-ink, #1f1c17);
  --cr-meta-color:        var(--ti-ink-3, #a3a09b);
  --cr-divider-color:     #e6e6e6;
}

/* ===== plate-of-affinities (similar artworks study plate) =====
   TI identity: linen/paper plate, ochre frames, impressionist-gold accent,
   Monet-blue criterion bars, Cormorant Garamond. Structure in global-custom. */
.plate-of-affinities-page-shell {
    --poa-serif-font: var(--font-body, "Cormorant Garamond", Garamond, serif);
    --poa-ink: var(--ti-ink, #2a2438);
    --poa-ink-muted: var(--ti-ink-mute, #6c647a);
    --poa-ink-faint: var(--ti-ink-faint, #9a93a4);
    --poa-hairline: var(--ti-rule-soft, #ddd4be);
    --poa-plate-bg: var(--ti-paper, #fbf7ee);
    --poa-plate-border: var(--ti-rule, #c7bea8);
    --poa-work-frame: var(--ti-ochre, #b78b4a);
    --poa-work-frame-width: 3px;
    --poa-work-mat: var(--ti-gesso, #f9f4e8);
    --poa-accent: var(--lc, #a0742a);
    --poa-card-bg: var(--ti-linen, #ede5d2);
    --poa-bar-track: var(--ti-shadow-c, #e6dec8);
    --poa-bar-fill: var(--ti-monet, #6b8eb3);
    --poa-shelf-line: var(--ti-ink-faint, #9a93a4);
}

/* ===== artwork_info — action bar (Buy print, Send, Share, Favorites, Download, Similars, X-Ray, Diaporama) ===== */
.art_info_box .artwork-info-actions-bar .fav-icon-artwork {
  border-bottom: 1px solid var(--ti-r-line, #ddd4be);
  padding-bottom: 14px;
  gap: 12px 20px;
}
.art_info_box .fav-icon-artwork > a,
.art_info_box .fav-icon-artwork > .artwork-share-wrapper {
  font-size: 13px;
  line-height: 1.35;
  margin: 0;
}
.art_info_box .fav-icon-artwork a,
.art_info_box .fav-icon-artwork .artwork-share-trigger {
  font-family: var(--f-ui, "Manrope", sans-serif);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--ti-r-ink-2, #6c647a) !important;
  gap: 8px;
  transition: color 0.15s ease;
}
.art_info_box .fav-icon-artwork a img,
.art_info_box .fav-icon-artwork .artwork-share-trigger img {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  filter: brightness(0) saturate(100%);
  opacity: 0.42;
  transition: opacity 0.15s ease, filter 0.15s ease;
}
.art_info_box .fav-icon-artwork a:hover,
.art_info_box .fav-icon-artwork .artwork-share-trigger:hover {
  color: var(--ti-r-accent, #a0742a) !important;
}
/* hover/active icon recolour → TI ochre gold #a0742a */
.art_info_box .fav-icon-artwork a:hover img,
.art_info_box .fav-icon-artwork .artwork-share-trigger:hover img {
  opacity: 1;
  filter: brightness(0) saturate(100%) invert(48%) sepia(36%) saturate(720%) hue-rotate(2deg) brightness(92%) contrast(88%);
}
.art_info_box .fav-icon-artwork a.fav_toggle .fav_icon {
  filter: brightness(0) saturate(100%) invert(48%) sepia(36%) saturate(720%) hue-rotate(2deg) brightness(92%) contrast(88%);
  opacity: 1;
}

/* ===== Catalog hover panel — align snippet + buy with the card body text =====
   Card padding is reset globally; match __body 18px inset. */
.custom_search .search_card.artwork-catalog-card .hover_visible.artwork-catalog-card__hover {
    padding-left: 18px;
    padding-right: 18px;
    padding-top: 16px;
    padding-bottom: 16px;
}

/* Small-mobile (<=575.98px): body padding shrinks 4px here, so trim the hover
   panel inset to match and keep the snippet/buy aligned with the body text. */
@media (max-width: 575.98px) {
  .custom_search .search_card.artwork-catalog-card .hover_visible.artwork-catalog-card__hover {
    padding-left: 14px;
    padding-right: 14px;
  }
}

/* ===== TI — artworksimilarslider (artwork_similar_slider_section.html) ===== */
/* Artist name kicker hover color */
.artworksimilarslider .view_all_art .vincent_color:hover {
  color: var(--ti-plein, #d89a78);
  opacity: 1;
}
/* Artwork title link hover color */
.artworksimilarslider .view_all_art a:hover {
  color: var(--ti-plein, #d89a78) !important;
}
/* ===== END TI — artworksimilarslider ===== */

/* ===== error_404.html + error_general.html — TopImpressionists ===== */
/*
   Tokens:  --lc #a0742a (impressionist gold)  --ti-ink #2a2438 (plum)
            --ti-ink-soft #4a4358  --font-body Cormorant Garamond serif
*/

.error-404 .error-404__cta--ghost {
    background: transparent;
    border: 2px solid var(--lc, #a0742a);
    color: var(--lc, #a0742a);
    font-family: var(--font-body, "Cormorant Garamond", serif);
    letter-spacing: 0.03em;
}
.error-404 .error-404__cta--ghost:hover {
    background: var(--lc, #a0742a);
    color: #fff;
    text-decoration: none;
}

.error-404 .error-404__cta--solid {
    background: var(--lc, #a0742a);
    border-color: var(--lc, #a0742a);
    color: #fff;
    font-family: var(--font-body, "Cormorant Garamond", serif);
    letter-spacing: 0.03em;
}
.error-404 .error-404__cta--solid:hover {
    background: #7d5920;
    border-color: #7d5920;
    color: #fff;
    text-decoration: none;
}

.error-404 .error-404__cta--home {
    background: transparent;
    border: 1px solid var(--ti-ink, #2a2438);
    color: var(--ti-ink, #2a2438);
    font-family: var(--font-body, "Cormorant Garamond", serif);
}
.error-404 .error-404__cta--home:hover {
    background: var(--ti-ink, #2a2438);
    color: #fff;
    text-decoration: none;
}

.error-404 .error-404__title { color: var(--ti-ink, #2a2438); font-family: var(--font-body, "Cormorant Garamond", serif); }
.error-404 .error-404__lead  { color: var(--ti-ink-soft, #4a4358); }
.error-404 .error-404__contact a { color: var(--lc, #a0742a); }
.error-404 .error-404__contact a:hover { color: #7d5920; }

body.error-general-page .e_card_section .e_card_form {
    --error-card-bg: rgba(252,250,247,0.90);
}
/* ===== /error_404.html + error_general.html — TopImpressionists ===== */
