/* =====================================================
   FONTS — Bricolage Grotesque · Familjen Grotesk · JetBrains Mono
   ===================================================== */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght,wdth@12..96,200..800,75..100&family=Familjen+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  /* Design-system colour tokens (mirrors reference HTML) */
  --aps-bg:           #F6F4EF;
  --aps-bg-2:         #ECE9E1;
  --aps-paper:        #FBFAF6;
  --aps-ink:          #161310;
  --aps-ink-2:        #4A4641;
  --aps-ink-3:        #8A857D;
  --aps-rule:         #DCD7CB;
  --aps-rule-2:       #C8C2B3;
  --aps-burgundy:     #5B1622;
  --aps-burgundy-2:   #7A1F30;
  --aps-burgundy-ink: #2E0B12;
  --aps-cream:        #E8DFC9;
  --aps-cream-2:      #F2E6D8;  /* text on burgundy   */
  --aps-cream-3:      #F4ECDD;  /* text on ink        */
  --aps-gold:         #E8C9A8;  /* highlight on dark  */
  --aps-surcharge:    #A8321F;  /* +price / surcharge */
  --aps-warn-bg:      #F5EDD2;  /* amber alert fill   */
  --aps-warn-bd:      #E2CC85;  /* amber alert border */
  --aps-warn-ink:     #6E5712;  /* amber alert text   */
  --aps-max:          1440px;
  /* Horizontal page padding — mirrors global .search_sec side padding so the
     masthead, navbar and footer line up with the page content. Overridden at
     the same breakpoints as .search_sec further below (60px / 20px). */
  --aps-page-pad:     160px;

  /* Font stacks */
  --aps-f-display: "Bricolage Grotesque", ui-sans-serif, sans-serif;
  --aps-f-text:    "Familjen Grotesk", ui-sans-serif, sans-serif;
  --aps-f-mono:    "JetBrains Mono", ui-monospace, monospace;

  /* Legacy aliases — keep existing site CSS working */
  --font-title-accent: "Bricolage Grotesque", ui-sans-serif, sans-serif;
  --font-title:        "Familjen Grotesk", ui-sans-serif, sans-serif;
  --font-body:         "Familjen Grotesk", ui-sans-serif, sans-serif;
  --font-mono:         "JetBrains Mono", ui-monospace, monospace;
  --w-radius:          2px;

  /* Layout token — prevents global beige fallback (#EDE9DE) on body/main */
  --site-bg: var(--aps-bg);
}

/* Keep --aps-page-pad in lock-step with the global .search_sec breakpoints
   (global-style: 160px · global-responsive 992–1500px: 60px · ≤991px: 20px)
   so the masthead, navbar and footer always share the page content margins. */
@media (max-width: 1500px) { :root { --aps-page-pad: 60px; } }
@media (max-width: 991px)  { :root { --aps-page-pad: 20px; } }

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

/* Contain Bootstrap row negative-gutter margins so the homepage doesn't
   produce an ~8px horizontal scroll inside the px-2 container-fluid wrapper. */
.homepage-site-widgets { overflow-x: clip; }

/* =====================================================
   APS — Image hover: dark veil (radial ::after overlay)
   ===================================================== */

/* Veil pseudo-element — hidden by default */
.search_img::after,
.showMainResulsImage::after,
.artist_slid_box::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(transparent 30%, rgba(0, 0, 0, .55) 100%);
    opacity: 0;
    transition: opacity 1.1s;
    pointer-events: none;
}

/* Reveal veil on hover */
.search_img:hover::after,
.showMainResulsImage:hover::after,
.artist_slid_box:hover::after {
    opacity: 1;
}

/* mouseover_effect_images — subtle scale for widget images (mouseover_image_effect kept as alias) */
img.mouseover_effect_images,
img.mouseover_image_effect {
    transition: transform 0.6s ease;
}

a:hover img.mouseover_effect_images,
img.mouseover_effect_images:hover,
a:hover img.mouseover_image_effect,
img.mouseover_image_effect:hover {
    transform: scale(1.03);
}

/* =====================================================
   APS — text link hover: center-out underline
   ===================================================== */

a {
    position: relative;
}

a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 50%;
    width: 0;
    height: 1px;
    background: var(--aps-burgundy);
    transform: translateX(-50%);
    transition: width .38s cubic-bezier(.22, 1, .36, 1);
}

a:hover::after {
    width: 100%;
}

/* Suppress underline effect on anchors that wrap an image or are styled buttons */
a:has(> img)::after,
a:has(> picture)::after,
a:has(> figure)::after,
a.btn-primary::after,
a.btn-ghost::after,
a.navbtn::after,
a.chip::after,
a.vibe-tag::after,
a.ci::after,
a.crest-tag::after,
a.pill::after,
a.ship-tag::after {
    content: none;
}

/* =====================================================
   mouseover_effect_texts — opt-in class for text links
   (nav, footer, breadcrumb anchors; not image links or buttons)
   ===================================================== */
a.mouseover_effect_texts {
    transition: opacity 0.25s ease;
}
a.mouseover_effect_texts:hover {
    opacity: 0.8;
}

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

/* =====================================================
   APS — UTILITY BAR (aps-utility)
   ===================================================== */
.aps-utility {
  background: var(--aps-burgundy);
  color: #F2E6D8;
  font-family: var(--aps-f-text);
  font-size: 12px;
  letter-spacing: .04em;
}
.aps-utility__wrap {
  padding: 0 var(--aps-page-pad);
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 34px;
}
.aps-utility__trust {
  display: flex;
  gap: 28px;
  opacity: .92;
}
.aps-utility__trust span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.aps-utility__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #E8C9A8;
  flex: none;
}
.aps-utility__stats {
  display: flex;
  gap: 20px;
  opacity: .92;
  font-family: var(--aps-f-mono);
  font-size: 11px;
  letter-spacing: .05em;
}
.aps-utility__stats span {
  display: inline-flex;
  align-items: baseline;
}
.aps-utility__stats b {
  color: #F4ECDD;
  font-weight: 500;
  margin-right: 5px;
}

/* =====================================================
   APS — MASTHEAD (aps-masthead)
   ===================================================== */
.aps-masthead {
  background: var(--aps-bg, #F6F4EF);
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.aps-masthead__wrap {
  padding: 0 var(--aps-page-pad);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  min-height: 106px;
  gap: 28px;
  padding-top: 14px;
  padding-bottom: 14px;
}

/* left — config selectors */
.aps-mh-config {
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-self: start;
}
.aps-mh-config__row {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--aps-ink-2, #4A4641);
  transition: color .15s ease;
  cursor: pointer;
}
.aps-mh-config__row:hover {
  color: var(--aps-burgundy, #5B1622);
}
.aps-mh-config__ic {
  width: 14px;
  height: 14px;
  color: var(--aps-burgundy, #5B1622);
  flex: none;
}
.aps-mh-config__lbl {
  color: var(--aps-ink-3, #8A857D);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 9px;
  width: 58px;
  font-family: var(--aps-f-mono);
}
.aps-mh-config__car {
  width: 8px;
  height: 8px;
  color: var(--aps-ink-3, #8A857D);
  margin-left: 1px;
  flex: none;
}
/* flatten selector wrapper elements into the flex row */
.aps-mh-config__row .top_dropdown_country_selector_wrapper_block,
.aps-mh-config__row .top_dropdown_currency_selector_wrapper_block,
.aps-mh-config__row .top_dropdown_language_selector_wrapper_block,
.aps-mh-config__row .top_dropdown_country_selector_wrapper_block > form {
  display: contents;
}
.aps-mh-config select,
.aps-mh-config .top_dropdown_toggle_button_main_style {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .05em;
  color: var(--aps-ink, #1E1B17);
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  outline: none;
  white-space: nowrap;
  transition: color .15s ease;
}
.aps-mh-config select:hover,
.aps-mh-config .top_dropdown_toggle_button_main_style:hover {
  color: var(--aps-burgundy, #5B1622);
}
/* avoid the double-V caret: keep the APS SVG caret (.aps-mh-config__car),
   suppress the generic Font Awesome chevron from the global dropdown styles */
.aps-mh-config .top_dropdown_toggle_button_main_style::after {
  content: none;
  display: none;
}
/* keep the toggle flat (no cream pill) when the dropdown is open */
.aps-mh-config .top_dropdown_toggle_button_main_style.open {
  background: transparent;
  border-radius: 0;
  color: var(--aps-burgundy, #5B1622);
}

/* ---- open dropdown menu (country / currency / language) ----
   the global item styling is scoped to .topright_side, which the APS
   masthead does not use, so the menu items fall back to unstyled native
   buttons. Restyle the menu + items with APS tokens. */
.aps-mh-config .top_dropdown_menu_list_block {
  margin-top: 6px;
  padding: 5px 0;
  min-width: 180px;
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 3px;
  box-shadow: 0 12px 28px -12px rgba(46, 11, 18, .28);
}
.aps-mh-config .top_dropdown_item_list_element {
  list-style: none;
}
.aps-mh-config .top_dropdown_item_button_clickable {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 6px 14px;
  text-align: left;
  background: transparent;
  border: none;
  cursor: pointer;
  font-family: var(--aps-f-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .03em;
  line-height: 1.45;
  color: var(--aps-ink-2, #4A4641);
  white-space: nowrap;
  transition: background-color .12s ease, color .12s ease;
}
.aps-mh-config .top_dropdown_item_button_clickable:hover,
.aps-mh-config .top_dropdown_item_button_clickable.top_dropdown_item_active_selected_style {
  background: var(--aps-bg-2, #ECE9E1);
  color: var(--aps-burgundy, #5B1622);
}
.aps-mh-actions__link {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .05em;
  line-height: 20px;
  color: var(--aps-ink-2, #4A4641);
  transition: color .15s ease;
}
.aps-mh-actions__link:hover {
  color: var(--aps-burgundy, #5B1622);
}

/* center — brand */
.aps-mh-brand {
  justify-self: center;
  text-align: center;
  line-height: 1;
  text-decoration: none;
  display: block;
}
.aps-mh-brand__est {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
  margin-bottom: 9px;
}
.aps-mh-brand__est b {
  color: var(--aps-burgundy);
  font-weight: 500;
}
.aps-mh-brand__name {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: 42px;
  letter-spacing: -.038em;
  color: var(--aps-burgundy-ink, #2E0B12);
  line-height: .9;
  white-space: nowrap;
}
.aps-mh-brand__name em {
  font-style: normal;
  font-weight: 700;
  color: var(--aps-burgundy);
}
.aps-mh-brand__url {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .14em;
  color: var(--aps-ink-3);
  margin-top: 10px;
  text-transform: lowercase;
}

/* right — account / wishlist / cart */
.aps-mh-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-self: end;
  gap: 9px;
}
.aps-mh-actions__link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  text-decoration: none;
  white-space: nowrap;
}
.aps-mh-actions__ic,
.aps-mh-actions__link svg {
  flex: none;
  width: 14px;
  height: 14px;
  color: var(--aps-burgundy, #5B1622);
}
.aps-mh-actions__lbl {
  color: var(--aps-ink, #1E1B17);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 10px;
  font-family: var(--aps-f-mono);
}
.aps-cart-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  margin-left: 4px;
  background: var(--aps-burgundy);
  color: #F2E6D8;
  border-radius: 999px;
  font-size: 10px;
  line-height: 1;
  padding: 0 6px;
  font-family: var(--aps-f-mono);
  letter-spacing: .02em;
}
.aps-user-menu-wrapper {
  display: inline-flex;
  align-items: center;
}
.aps-user-auth-visual {
  position: relative;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.aps-user-icon--guest,
.aps-user-icon--auth {
  width: 22px;
  height: 22px;
}
.aps-user-initial {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  line-height: 1;
  font-size: 9px;
  font-family: var(--aps-f-mono);
}
.aps-mh-actions .aps-user-auth-visual {
  width: auto;
  height: auto;
  min-width: 0;
}
.aps-mh-actions .aps-user-icon--guest,
.aps-mh-actions .aps-user-icon--auth {
  width: 14px;
  height: 14px;
}
.aps-mh-actions .aps-user-initial:not(.aps-header-auth--hidden) {
  position: static;
  transform: none;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  color: inherit;
}
.aps-mh-actions .aps-user-initial.aps-user-initial--compact {
  font-size: inherit;
}

/* mobile toggle */
.aps-mobile-toggle {
  display: none;
}
.aps-mobile-toggle__btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 20px;
  color: var(--aps-ink);
  padding: 4px;
}
.aps-mobile-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.45);
  z-index: 1040;
}
.aps-mobile-overlay.open {
  display: block;
}
.aps-side-nav {
  position: fixed;
  top: 0;
  right: -320px;
  width: 300px;
  height: 100%;
  background: var(--aps-paper, #FBFAF6);
  z-index: 1050;
  overflow-y: auto;
  transition: right .3s ease;
  box-shadow: -4px 0 24px rgba(0,0,0,.15);
}
.aps-side-nav.open {
  right: 0;
}
.aps-side-nav__close {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  padding: 16px 20px;
  display: block;
  color: var(--aps-ink);
}
.aps-side-nav__inner {
  padding: 0 20px 40px;
}
.aps-side-nav__search {
  margin-bottom: 20px;
}
.aps-side-nav__search form {
  position: relative;
}
.aps-side-nav__search input {
  width: 100%;
}
.aps-side-nav__selectors {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 16px;
  border-top: 1px solid var(--aps-rule);
}

/* =====================================================
   APS — PRIMARY NAVBAR (aps-navbar)
   ===================================================== */
.aps-navbar {
  background: var(--aps-bg, #F6F4EF);
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.aps-navbar__wrap {
  padding: 0 var(--aps-page-pad) 12px;
  display: flex;
  flex-direction: column;
}
.aps-navbar__row {
  display: flex;
  align-items: center;
  height: 56px;
}
.aps-navbar__menu {
  flex: 1;
  min-width: 0;
}
.aps-navbar__menu .nav-menu {
  display: flex;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.aps-navbar__menu .nav-menu li > a {
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: .01em;
  color: var(--aps-ink, #161310);
  text-decoration: none;
  padding: 6px 0;
  position: relative;
  white-space: nowrap;
}
.aps-navbar__menu .nav-menu li.active > a,
.aps-navbar__menu .nav-menu li > a:hover {
  color: var(--aps-burgundy);
}
.aps-navbar__rule {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
  flex: none;
}
.aps-navbar__search {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  height: 40px;
  border-radius: 2px;
  padding: 0 14px;
  width: 100%;
  flex: none;
  margin-top: 10px;
}
.aps-navbar__search svg {
  color: var(--aps-ink-3);
  flex: none;
}
.aps-navbar__search input {
  flex: 1;
  border: 0;
  background: transparent;
  outline: none;
  font-family: var(--aps-f-text);
  font-size: 13px;
  color: var(--aps-ink);
  min-width: 0;
}
.aps-navbar__kbd {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  color: var(--aps-ink-3);
  border: 1px solid var(--aps-rule);
  padding: 2px 6px;
  border-radius: 2px;
  white-space: nowrap;
  margin-left: 6px;
}

/* ── Mega-menu dropdown panel — APS surface (override global #EDE9DE beige) ── */
.aps-navbar .dropdown-content.full-width {
  background-color: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  box-shadow: 0 12px 32px rgba(22, 19, 16, 0.08);
}

/* Dropdown option links — match the nav title size/font (14px display) */
.aps-navbar .dropdown-content.full-width .column a.mouseover_effect_texts {
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: .01em;
  color: var(--aps-ink, #161310);
}
.aps-navbar .dropdown-content.full-width .column a.mouseover_effect_texts:hover {
  color: var(--aps-burgundy, #5B1622);
  opacity: 1;
}

/* =====================================================
   APS — FOOTER (aps-foot) — header-style light redesign
   ===================================================== */
.aps-foot {
  background: var(--aps-bg, #F6F4EF);
  color: var(--aps-ink-2, #4A4641);
  border-top: 1px solid var(--aps-rule, #DCD7CB);
}
.aps-foot__wrap {
  padding: 0 var(--aps-page-pad);
}

/* ── top columns ── */
.aps-foot-top {
  display: grid;
  grid-template-columns: 1.4fr 3fr;
  gap: 56px;
  padding: 56px 0 48px;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}

/* ── brand block — mirrors .aps-mh-brand ── */
.aps-foot-brand__est {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
  margin-bottom: 9px;
}
.aps-foot-brand__est b {
  color: var(--aps-burgundy, #5B1622);
  font-weight: 500;
}
.aps-foot-brand__name {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: 34px;
  letter-spacing: -.038em;
  color: var(--aps-burgundy-ink, #2E0B12);
  line-height: .9;
  white-space: nowrap;
  margin-bottom: 8px;
}
.aps-foot-brand__name em {
  font-style: normal;
  font-weight: 700;
  color: var(--aps-burgundy, #5B1622);
}
.aps-foot-brand__url {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .14em;
  color: var(--aps-ink-3, #8A857D);
  text-transform: lowercase;
  margin-bottom: 20px;
}
.aps-foot-brand p {
  font-size: 13px;
  line-height: 1.7;
  color: var(--aps-ink-2, #4A4641);
  max-width: 44ch;
  margin: 0;
}

/* stats grid */
.aps-foot-brand__stats {
  margin-top: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  padding-top: 20px;
}
.aps-foot-brand__stats span {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .1em;
  color: var(--aps-ink-3, #8A857D);
  text-transform: uppercase;
  line-height: 1.5;
}
.aps-foot-brand__stats b {
  display: block;
  font-family: var(--aps-f-display);
  font-weight: 400;
  font-size: 20px;
  color: var(--aps-burgundy-ink, #2E0B12);
  letter-spacing: -.02em;
  margin-bottom: 2px;
}

/* social icons — inline SVG, dark stroke on light bg */
.aps-foot-brand__social {
  display: flex;
  gap: 18px;
  margin-top: 22px;
  align-items: center;
}
.aps-foot-brand__social a {
  color: var(--aps-ink-3, #8A857D);
  display: flex;
  align-items: center;
  transition: color .15s ease, transform .2s ease;
  text-decoration: none;
}
.aps-foot-brand__social a:hover {
  color: var(--aps-burgundy, #5B1622);
  transform: translateY(-2px);
}
.aps-foot-brand__social svg {
  display: block;
}

/* ── footer link columns via render_footer_menu ── */
.aps-foot-cols .row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 24px;
  margin: 0;
}
.aps-foot-cols .col-lg-3 {
  padding: 0;
  margin: 0;
  float: none;
  width: auto;
}
.aps-foot-cols .links_heading {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--aps-ink, #161310);
  font-weight: 500;
  margin-bottom: 18px;
}
.aps-foot-cols .footer_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.aps-foot-cols .list_link {
  font-family: var(--aps-f-display);
  font-weight: 400;
  font-size: 13px;
  color: var(--aps-ink-2, #4A4641);
  text-decoration: none;
  letter-spacing: -.005em;
  transition: color .15s ease;
}
.aps-foot-cols .list_link:hover {
  color: var(--aps-burgundy, #5B1622);
}

/* ── language bar — full-width row, below brand/link columns ── */
.foot-langs {
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  padding: 22px 0 20px;
  margin-top: 0;
}
.foot-langs__lead {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 10px;
  flex-wrap: wrap;
}
.foot-langs__lbl {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
}
.foot-langs__lbl b {
  color: var(--aps-ink, #161310);
  font-weight: 500;
}
.foot-langs__cur {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .08em;
  color: var(--aps-burgundy, #5B1622);
  font-weight: 500;
}
.foot-langs__list {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem .55rem;
}
.foot-langs__list a {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  color: var(--aps-ink-3, #8A857D);
  text-decoration: none;
  cursor: pointer;
  transition: color .15s ease;
  padding: .1rem 0;
}
.foot-langs__list a:hover {
  color: var(--aps-burgundy, #5B1622);
}
.foot-langs__list a.on {
  color: var(--aps-burgundy, #5B1622);
  font-weight: 600;
}

/* ── contact strip — inline footer style, after language list ── */
.aps-foot-connect__inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 48px;
  align-items: center;
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  padding-top: 24px;
  padding-bottom: 28px;
}
.aps-foot-connect__kicker {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
  margin-bottom: 6px;
}
.aps-foot-connect__inner h4 {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: 18px;
  color: var(--aps-ink, #161310);
  letter-spacing: -.015em;
  margin: 0;
  line-height: 1.3;
}
.aps-foot-connect__inner h4 em {
  font-style: italic;
  color: var(--aps-burgundy, #5B1622);
}
.aps-connect-icons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.aps-ci {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 999px;
  font-family: var(--aps-f-mono);
  font-size: 10px;
  color: var(--aps-ink-2, #4A4641);
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
  white-space: nowrap;
}
.aps-ci:hover,
.aps-ci:focus {
  background: var(--aps-burgundy, #5B1622);
  border-color: var(--aps-burgundy, #5B1622);
  color: #F2E6D8;
  text-decoration: none;
}

/* ── bottom copyright / payment bar ── */
.aps-foot-cta {
  padding: 22px 0;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.aps-foot-cta__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--aps-f-mono);
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--aps-burgundy);
  text-decoration: none;
  transition: opacity .2s ease;
}
.aps-foot-cta__btn:hover { opacity: .7; }

.aps-foot-legal {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 0 24px;
  font-family: var(--aps-f-mono);
  font-size: 10px;
  color: var(--aps-ink-3, #8A857D);
  letter-spacing: .1em;
}
.aps-foot-legal__l { display: flex; gap: 22px; }
.aps-foot-legal__r { display: flex; gap: 14px; align-items: center; }
.aps-foot-badge {
  padding: 2px 6px;
  border: 1px solid var(--aps-rule, #DCD7CB);
  color: var(--aps-ink-3);
  font-size: 9px;
  letter-spacing: .08em;
}

.aps-bottom-bar {
  background: var(--aps-burgundy, #5B1622);
}
.aps-bottom-bar .copyRight_sec,
.aps-bottom-bar__inner.copyRight_sec {
  background: var(--aps-burgundy, #5B1622);
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  padding: 10px 0;
  min-height: 34px;
}
.aps-bottom-bar__inner .copyRight_text {
  margin-left: 0;
  text-align: left;
  font-family: var(--aps-f-mono);
  font-size: 11px;
  letter-spacing: .05em;
  color: rgba(242,230,216,.82);
  opacity: 1;
}
.aps-bottom-bar__inner .rightSide { margin-left: auto; }
.aps-bottom-bar__inner .paymentList { margin: 0; }

/* Payment badge chips — crisp SVG icons on the burgundy bar */
.aps-payment-badges { gap: 6px; }
.aps-payment-badge {
  display: block;
  width: 40px;
  height: 26px;
  border-radius: 4px;
  box-shadow: 0 1px 3px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.10);
  opacity: .92;
  transition: opacity .15s ease, transform .15s ease;
}
.aps-payment-badge:hover {
  opacity: 1;
  transform: translateY(-1px);
}

/* =====================================================
   APS — Responsive overrides
   ===================================================== */
@media (max-width: 1100px) {
  .aps-masthead__wrap {
    grid-template-columns: auto 1fr auto;
    padding-top: 10px;
    padding-bottom: 10px;
    min-height: 80px;
  }
  .aps-mh-brand__name { font-size: 28px; }
}

@media (max-width: 991px) {
  .aps-mobile-toggle { display: flex; align-items: center; }
  .aps-navbar__menu { display: none; }
  .aps-navbar__search { display: none; }
  .aps-navbar__row { height: 48px; }
}

@media (max-width: 768px) {
  .aps-utility__trust { gap: 14px; font-size: 11px; }
  .aps-utility__stats { display: none; }
  .aps-masthead__wrap {
    grid-template-columns: 1fr auto;
    gap: 12px;
    padding-top: 12px;
    padding-bottom: 12px;
    min-height: auto;
  }
  .aps-mh-config { display: none; }
  .aps-mh-brand { justify-self: start; }
  .aps-mh-brand__name { font-size: 22px; }
  .aps-mh-brand__est,
  .aps-mh-brand__url { display: none; }
  .aps-mh-actions {
    flex-direction: row;
    align-items: center;
    gap: 12px;
  }
  .aps-mh-actions__link:not(.aps-cart-icon-wrap) { display: none; }
  .aps-foot-top {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 36px 0 32px;
  }
  .aps-foot-brand__name { font-size: 26px; }
  .aps-foot-cols .row {
    grid-template-columns: 1fr 1fr;
    gap: 24px 16px;
  }
  .aps-foot-connect__inner {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .aps-connect-icons { justify-content: flex-start; }
  .aps-foot-legal {
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  .aps-foot-cols .row { grid-template-columns: 1fr; }
}

/* =====================================================
   APS — UI Kit production components
   Classes from the UI Kit translated to --aps-* tokens
   ===================================================== */

/* buttons */
.btn-primary { display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 22px; border-radius: 2px; font-family: var(--aps-f-display); font-weight: 500; font-size: 14px; letter-spacing: .04em; text-transform: uppercase; transition: background .18s ease; text-decoration: none; background: var(--aps-burgundy); color: var(--aps-cream-2); }
.btn-primary:hover { background: var(--aps-burgundy-2); color: var(--aps-cream-2); }
.btn-ghost { display: inline-flex; align-items: center; color: var(--aps-ink); border-bottom: 1px solid var(--aps-ink); border-radius: 0; padding: 0 0 4px; height: auto; font-family: var(--aps-f-display); font-weight: 500; font-size: 14px; letter-spacing: .04em; text-transform: uppercase; transition: color .18s ease, border-color .18s ease; text-decoration: none; }
.btn-ghost:hover { color: var(--aps-burgundy); border-color: var(--aps-burgundy); }
.btn-primary svg, .btn-ghost svg { width: 14px; height: 14px; }

/* eyebrow / section kicker */
.eyebrow { font-family: var(--aps-f-mono); font-size: 11px; letter-spacing: .16em; color: var(--aps-burgundy); text-transform: uppercase; display: flex; align-items: center; gap: 12px; }
.eyebrow::before { content: ""; width: 28px; height: 1px; background: var(--aps-burgundy); }

/* search field */
.search { display: flex; align-items: center; gap: 10px; background: var(--aps-paper); border: 1px solid var(--aps-rule); height: 44px; border-radius: 2px; padding: 0 14px; min-width: 320px; max-width: 560px; }
.search svg { width: 16px; height: 16px; color: var(--aps-ink-3); }
.search input { flex: 1; border: 0; background: transparent; outline: none; font: inherit; color: var(--aps-ink); }
.search .kbd { font-family: var(--aps-f-mono); font-size: 10px; color: var(--aps-ink-3); border: 1px solid var(--aps-rule); padding: 2px 6px; border-radius: 2px; }

/* filter chips */
.chip { font-family: var(--aps-f-display); font-weight: 500; font-size: 13px; letter-spacing: .02em; padding: 8px 14px; border: 1px solid var(--aps-rule-2); border-radius: 999px; color: var(--aps-ink-2); font-variation-settings: "wdth" 95; transition: .18s ease; cursor: pointer; }
.chip:hover { border-color: var(--aps-ink); color: var(--aps-ink); }
.chip.is-active { background: var(--aps-ink); color: var(--aps-paper); border-color: var(--aps-ink); }

/* vibe tags */
.vibe-tag { font-family: var(--aps-f-display); font-weight: 500; font-size: 12px; letter-spacing: .01em; padding: 6px 10px; background: var(--aps-bg); border: 1px solid var(--aps-rule); border-radius: 999px; color: var(--aps-ink-2); cursor: pointer; transition: .15s; font-variation-settings: "wdth" 92; }
.vibe-tag:hover { border-color: var(--aps-burgundy); color: var(--aps-burgundy); }
.vibe-tag.on { background: var(--aps-ink); color: var(--aps-paper); border-color: var(--aps-ink); }
.vibe-tags { display: flex; flex-wrap: wrap; gap: 6px; }

/* circular nav/carousel buttons */
.navbtn { width: 44px; height: 44px; border: 1px solid var(--aps-rule-2); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: var(--aps-ink); transition: .18s ease; background: none; cursor: pointer; }
.navbtn:hover { background: var(--aps-burgundy); border-color: var(--aps-burgundy); color: var(--aps-cream-2); }
.navbtn svg { width: 14px; height: 14px; }

/* badge / pill tags */
.pill { display: inline-block; background: var(--aps-burgundy); color: var(--aps-cream-2); border-radius: 999px; font-size: 11px; padding: 2px 9px; font-family: var(--aps-f-mono); letter-spacing: .04em; }
.ship-tag { display: inline-block; font-family: var(--aps-f-mono); font-size: 9px; letter-spacing: .1em; background: var(--aps-burgundy); color: var(--aps-cream-3); padding: 3px 7px; text-transform: uppercase; }
.crest-tag { display: inline-block; font-family: var(--aps-f-mono); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--aps-burgundy); border: 1px solid var(--aps-rule-2); padding: 6px 10px; }

/* connect chip (for dark surfaces) */
.ci { display: inline-flex; align-items: center; gap: 10px; padding: 11px 16px; border: 1px solid rgba(244,236,221,.18); border-radius: 999px; font-family: var(--aps-f-mono); font-size: 11px; color: var(--aps-cream-3); letter-spacing: .1em; text-transform: uppercase; cursor: pointer; transition: .18s; }
.ci:hover { background: rgba(244,236,221,.08); border-color: rgba(244,236,221,.4); }
.ci svg { width: 14px; height: 14px; }

/* breadcrumb */
.crumb { display: flex; align-items: center; gap: 9px; font-family: var(--aps-f-mono); font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--aps-ink-3); }
.crumb a { color: var(--aps-ink-2); }
.crumb a:hover { color: var(--aps-burgundy); }
.crumb .sep { color: var(--aps-rule-2); }
.crumb .cur { color: var(--aps-burgundy); }

/* panel */
.panel { background: var(--aps-paper); border: 1px solid var(--aps-rule); border-radius: 2px; padding: 28px 28px 26px; }
.panel .p-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 18px; }
.panel h3 { font-family: var(--aps-f-display); font-weight: 600; font-size: 22px; letter-spacing: -.015em; color: var(--aps-ink); font-variation-settings: "wdth" 88; }
.panel .p-kicker { font-family: var(--aps-f-mono); font-size: 10px; color: var(--aps-burgundy); letter-spacing: .16em; text-transform: uppercase; }
.panel p.lede { font-size: 13px; color: var(--aps-ink-2); line-height: 1.5; max-width: 54ch; }

/* alerts */
.banner { display: flex; align-items: center; gap: 12px; background: var(--aps-burgundy); color: var(--aps-cream-3); border-radius: 2px; padding: 12px 16px; font-size: 13px; }
.banner .x { margin-left: auto; width: 22px; height: 22px; border-radius: 50%; border: 1px solid rgba(244,236,221,.3); display: flex; align-items: center; justify-content: center; cursor: pointer; flex: none; }
.banner .x svg { width: 11px; height: 11px; }
.warn { display: flex; align-items: flex-start; gap: 12px; background: var(--aps-warn-bg); border: 1px solid var(--aps-warn-bd); border-radius: 2px; padding: 14px 16px; }
.warn .ic { flex: none; color: var(--aps-warn-ink); margin-top: 1px; }
.warn .ic svg { width: 18px; height: 18px; }
.warn .tx { font-size: 12.5px; color: var(--aps-warn-ink); line-height: 1.5; }
.warn .tx b { font-weight: 700; }
.warn .tx a { color: var(--aps-warn-ink); text-decoration: underline; }
.notice { display: flex; align-items: flex-start; gap: 12px; background: rgba(91,22,34,.05); border: 1px solid rgba(91,22,34,.16); border-radius: 2px; padding: 14px 16px; }
.notice .ic { flex: none; color: var(--aps-burgundy); margin-top: 1px; }
.notice .ic svg { width: 18px; height: 18px; }
.notice .tx { font-size: 12.5px; color: var(--aps-ink-2); line-height: 1.5; }
.notice .tx b { color: var(--aps-burgundy); font-weight: 600; }
.readmore { font-family: var(--aps-f-display); font-weight: 500; font-size: 12.5px; color: var(--aps-burgundy); border-bottom: 1px solid var(--aps-burgundy); font-variation-settings: "wdth" 92; text-decoration: none; }

/* =====================================================
   APS — Homepage site widgets
   Extracted from inline styles, deduplicated, APS tokens merged
   ===================================================== */

.homepage-site-widgets {
  max-width: 100%;
  overflow-x: clip;
}
.widget-mpl__tile,
.widget-curated-choice__tile,
.widget-curated-choice__grid-item,
.widget-stf__media,
.widget-museum-4p__hero,
.widget-museum-4p__tile-img {
  overflow: hidden;
}
.widget-mpl__cta::after,
.widget-curated-choice__cta::after,
.widget-museum-4p__cta::after {
  content: none;
}
.widget-mpl__cta:hover::before,
.widget-curated-choice__cta:hover::before,
.widget-museum-4p__cta:hover::before {
  width: auto;
  height: auto;
  border: none;
  opacity: 1;
}

/* =====================================================
   APS — Reusable section heading strip
   ===================================================== */
.aps-section-head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 32px;
  margin: 2.5rem 0 2rem;
  padding-bottom: 1.75rem;
  border-bottom: 2px solid var(--aps-ink);
}
.aps-section-head h2 {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  line-height: 0.96;
  letter-spacing: -0.035em;
  color: var(--aps-ink);
  margin: 0;
}
.aps-section-head h2 em {
  font-style: italic;
  font-weight: 300;
  color: var(--aps-burgundy);
}
.aps-section-head__meta {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  color: var(--aps-ink-3);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-align: right;
  line-height: 1.6;
}
.aps-section-head__meta b {
  display: block;
  color: var(--aps-ink);
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: -0.02em;
  margin-bottom: 4px;
  text-transform: none;
}
@media (max-width: 575px) {
  .aps-section-head {
    grid-template-columns: 1fr;
  }
  .aps-section-head__meta {
    text-align: left;
  }
}

/* ── APS decor section (trade / interior designers) ── */
.aps-decor {
  padding: 104px 0 110px;
  background: var(--aps-bg);
}
.aps-decor__inner {
  max-width: var(--aps-max);
  margin: 0 auto;
  padding: 0 36px;
}
.aps-decor__head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 32px;
  margin-bottom: 2.5rem;
  padding-bottom: 1.75rem;
  border-bottom: 2px solid var(--aps-ink);
}
.aps-decor__head h2 {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  line-height: 0.96;
  letter-spacing: -0.035em;
  color: var(--aps-ink);
  margin: 0;
}
.aps-decor__head h2 em {
  font-style: italic;
  font-weight: 300;
  color: var(--aps-burgundy);
}
.aps-decor__meta {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  color: var(--aps-ink-3);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-align: right;
  line-height: 1.6;
}
.aps-decor__meta b {
  display: block;
  color: var(--aps-ink);
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: -0.02em;
  margin-bottom: 4px;
  text-transform: none;
}
.aps-decor__intro {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 56px;
  align-items: end;
  margin-bottom: 40px;
  padding-bottom: 34px;
  border-bottom: 1px solid var(--aps-rule);
}
.aps-decor__kicker {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--aps-burgundy);
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.aps-decor__kicker::before {
  content: "";
  width: 28px;
  height: 1px;
  background: var(--aps-burgundy);
}
.aps-decor__lede {
  font-size: 16px;
  line-height: 1.6;
  color: var(--aps-ink-2);
  max-width: 52ch;
}
.aps-decor__benefits {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px 30px;
  margin: 0;
}
.aps-decor__benefits dt {
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--aps-ink-3);
  margin-bottom: 6px;
}
.aps-decor__benefits dd {
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 15px;
  color: var(--aps-ink);
  line-height: 1.32;
  margin: 0;
}
.aps-decor__benefits dd b {
  color: var(--aps-burgundy);
  font-weight: 600;
}
.aps-decor__grid {
  /* Bootstrap row/col handles the grid layout */
}
.aps-dc-tile {
  position: relative;
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border-radius: 2px;
  color: #fff;
  text-decoration: none;
}
.aps-dc-tile__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transition: transform 0.6s ease;
}
.aps-dc-tile:hover .aps-dc-tile__bg {
  transform: scale(1.04);
}
.aps-dc-tile__ins {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(22, 19, 16, 0.72) 0%, rgba(22, 19, 16, 0.08) 55%, transparent 100%);
  pointer-events: none;
}
.aps-dc-tile__n {
  position: absolute;
  top: 12px;
  left: 12px;
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: 0.14em;
  opacity: 0.7;
}
.aps-dc-tile__lab {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 14px 14px 16px;
}
.aps-dc-tile__lab h3 {
  font-family: var(--aps-f-display);
  font-size: 15px;
  font-weight: 500;
  margin: 0 0 4px;
  line-height: 1.2;
}
.aps-dc-tile__lab .ct {
  font-family: var(--aps-f-mono);
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.85;
}
.aps-decor__foot {
  margin-top: 36px;
  padding-top: 24px;
  border-top: 1px solid var(--aps-rule);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: var(--aps-f-mono);
  font-size: 11px;
  color: var(--aps-ink-3);
  letter-spacing: 0.1em;
}
.aps-decor__foot-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 14px;
  color: var(--aps-burgundy);
  letter-spacing: 0;
  text-transform: none;
}
.aps-decor__foot-cta svg {
  width: 16px;
  height: 16px;
}
@media (max-width: 1100px) {
  .aps-decor__intro {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
@media (max-width: 768px) {
  .aps-decor {
    padding: 64px 0 72px;
  }
  .aps-decor__inner {
    padding: 0 20px;
  }
  .aps-decor__head {
    grid-template-columns: 1fr;
  }
  .aps-decor__meta {
    text-align: left;
  }
  .aps-decor__foot {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
}

.homepage-site-widgets {
  --homepage-slider-arrow-gap: 2.75rem;
  background: var(--aps-bg);
}
.homepage-site-widgets .widget-tf-slider .row,
.homepage-site-widgets .widget-recent-own-slider .row,
.homepage-site-widgets .widget-stock-ready-slider .row {
  align-items: center;
}
.homepage-site-widgets .widget-tf-slider .col-md-8,
.homepage-site-widgets .widget-recent-own-slider .col-md-8,
.homepage-site-widgets .widget-stock-ready-slider .col-md-8 {
  display: flex;
  align-items: center;
}
.homepage-site-widgets .widget-tf-slider .parent_slid_box,
.homepage-site-widgets .widget-recent-own-slider .parent_slid_box,
.homepage-site-widgets .widget-stock-ready-slider .parent_slid_box {
  width: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}
.homepage-site-widgets .widget-tf-slider .artist_slider,
.homepage-site-widgets .widget-recent-own-slider .artist_slider,
.homepage-site-widgets .widget-stock-ready-slider .artist_slider {
  position: relative;
  width: 100%;
  padding-inline: var(--homepage-slider-arrow-gap);
  box-sizing: border-box;
}
.homepage-site-widgets .widget-recent-own-slider .artist_slider {
  width: 80%;
  margin: 0 auto;
}
.homepage-site-widgets .widget-tf-slider .artist_slider .swiper,
.homepage-site-widgets .widget-recent-own-slider .artist_slider .swiper,
.homepage-site-widgets .widget-stock-ready-slider .artist_slider .swiper {
  width: 100%;
  overflow: hidden;
}
.homepage-site-widgets .widget-tf-slider .artist_slider .swp_btn.swiper-button-prev,
.homepage-site-widgets .widget-tf-slider .artist_slider .swp_btn.swiper-button-next,
.homepage-site-widgets .widget-recent-own-slider .artist_slider .swp_btn.swiper-button-prev,
.homepage-site-widgets .widget-recent-own-slider .artist_slider .swp_btn.swiper-button-next,
.homepage-site-widgets .widget-stock-ready-slider .artist_slider .swp_btn.swiper-button-prev,
.homepage-site-widgets .widget-stock-ready-slider .artist_slider .swp_btn.swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
  z-index: 5;
}
.homepage-site-widgets .widget-tf-slider .artist_slider .swp_btn.swiper-button-prev,
.homepage-site-widgets .widget-recent-own-slider .artist_slider .swp_btn.swiper-button-prev,
.homepage-site-widgets .widget-stock-ready-slider .artist_slider .swp_btn.swiper-button-prev {
  left: 0;
}
.homepage-site-widgets .widget-tf-slider .artist_slider .swp_btn.swiper-button-next,
.homepage-site-widgets .widget-recent-own-slider .artist_slider .swp_btn.swiper-button-next,
.homepage-site-widgets .widget-stock-ready-slider .artist_slider .swp_btn.swiper-button-next {
  right: 0;
}
.homepage-site-widgets .widget-artist-slider .artist_slider .swp_btn img,
.homepage-site-widgets .artist_slider .swp_btn img {
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.45));
  transition: filter 0.2s ease;
}
.homepage-site-widgets .widget-artist-slider .artist_slider .swp_btn:hover img,
.homepage-site-widgets .artist_slider .swp_btn:hover img {
  filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.65));
}
.homepage-site-widgets .widget-tf-slider .artist_slid_box,
.homepage-site-widgets .widget-recent-own-slider .artist_slid_box,
.homepage-site-widgets .widget-stock-ready-slider .artist_slid_box,
.homepage-site-widgets .widget-tf-slider .view_all_art,
.homepage-site-widgets .widget-recent-own-slider .view_all_art,
.homepage-site-widgets .widget-stock-ready-slider .view_all_art {
  text-align: center;
}
.homepage-site-widgets .widget-tf-slider .artist_slid_box img,
.homepage-site-widgets .widget-recent-own-slider .artist_slid_box img,
.homepage-site-widgets .widget-stock-ready-slider .artist_slid_box img {
  display: block;
  margin-inline: auto;
}
.widget-famous-artwork-day {
  font-family: var(--aps-f-text);
  border-color: var(--aps-rule) !important;
  background: var(--aps-paper);
  border-radius: 2px !important;
  display: flex;
  flex-direction: column;
}
.widget-famous-artwork-day__heading {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: -0.025em;
  color: var(--aps-ink);
  text-align: center;
  margin-bottom: 1rem;
}
.widget-famous-artwork-day__figure {
  position: relative;
  width: 100%;
  border-radius: 2px;
  overflow: hidden;
  background: var(--aps-bg-2);
}
.widget-famous-artwork-day__link {
  position: relative;
  display: block;
  color: inherit;
}
.widget-famous-artwork-day__figure img {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: middle;
}
.widget-famous-artwork-day__overlay-line {
  font-family: var(--aps-f-display);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.015em;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  padding: 1rem 1rem 0.85rem;
}
.widget-famous-artwork-day__meta {
  font-family: var(--aps-f-text);
  margin-top: 1rem;
  font-size: 15px;
  line-height: 1.6;
  color: var(--aps-ink-2);
}
.widget-stf {
  font-family: var(--aps-f-text);
  background: var(--aps-bg-2);
  padding: 1.25rem 1rem 1rem;
  margin-bottom: 1rem;
  height: 100%;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .widget-stf {
    padding: 1.5rem 1.25rem 1.25rem;
  }
}
.widget-stf__title {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  line-height: 1.2;
  color: var(--aps-ink);
  text-align: center;
  text-transform: uppercase;
  text-wrap: balance;
  margin: 0 0 1rem;
  letter-spacing: -0.025em;
}
.widget-stf__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem 1rem;
}
.widget-stf__item {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.widget-stf__media {
  display: block;
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #d4cec4;
  border-radius: 2px;
}
.widget-stf__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.widget-stf__label {
  margin: 0.5rem 0 0;
  padding: 0;
  font-family: var(--aps-f-mono);
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: none;
}
.widget-stf__label a {
  color: var(--aps-burgundy);
  background: var(--aps-bg-2);
  padding: 0.32rem 0.38rem;
  display: inline-block;
  text-decoration: none;
}
.widget-stf__label a::before,
.widget-stf__label a::after {
  content: none;
}
.widget-stf__label a:hover {
  color: var(--aps-burgundy-2);
  text-decoration: underline;
}
.widget-mpl {
  font-family: var(--aps-f-text);
  background: var(--aps-bg-2);
  padding: 1rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .widget-mpl {
    padding: 1.5rem;
  }
}
.widget-mpl__main {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  align-items: center;
}
@media (min-width: 768px) {
  .widget-mpl__main {
    grid-template-columns: minmax(0, 3fr) minmax(0, 9fr);
    gap: 1rem;
    align-items: stretch;
  }
  .widget-mpl__intro {
    width: 100%;
    max-width: none;
    min-height: 100%;
    justify-content: center;
    padding: 0;
  }
  .widget-mpl__intro p,
.widget-mpl__intro .widget-mpl__filter-subtitle,
.widget-mpl__cta span {
    white-space: nowrap;
  }
  .widget-mpl__intro h2 {
    font-size: clamp(1.1rem, 1.5vw, 1.5rem);
    text-wrap: balance;
    overflow-wrap: anywhere;
  }
  .widget-mpl__intro p {
    font-size: 0.9375rem;
  }
  .widget-mpl__cta {
    padding: 1rem 1.15rem;
    letter-spacing: 0.08em;
  }
  .widget-mpl__gallery-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.widget-mpl__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
}
.widget-mpl__intro h2,
.widget-mpl__intro p,
.widget-mpl__intro .widget-mpl__filter-subtitle {
  width: 100%;
  text-align: center;
}
.widget-mpl__intro h2 {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  color: var(--aps-ink);
  margin: 0 0 0.5rem;
  line-height: 1.2;
  letter-spacing: -0.025em;
}
.widget-mpl__intro p {
  font-size: 1rem;
  line-height: 1.55;
  color: var(--aps-ink-2);
  margin: 0 0 1.25rem;
}
.widget-mpl__filter-subtitle {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--aps-ink-2);
  margin: -1.25rem 0 1.75rem;
}
.widget-mpl__cta {
  font-family: var(--aps-f-mono);
  position: relative;
  display: block;
  align-self: stretch;
  overflow: hidden;
  border: 1px solid var(--aps-burgundy);
  padding: 1.1rem 1.25rem;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
  font-weight: 500;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  color: var(--aps-burgundy) !important;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.widget-mpl__cta::after {
  display: none;
}
.widget-mpl__cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--aps-burgundy);
  transform: translateX(-100%);
  transition: transform 0.35s ease;
  z-index: 0;
  width: auto;
  height: auto;
  opacity: 1;
  border: none;
}
.widget-mpl__cta:hover::before {
  transform: translateX(0);
}
.widget-mpl__cta span {
  position: relative;
  z-index: 2;
  display: inline-block;
  transition: color 0.35s ease;
}
.widget-mpl__cta:hover span {
  color: #fff;
}
.widget-mpl__gallery-panel {
  background: #DCD7CB;
  padding: 1rem;
}
.widget-mpl__gallery {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
@media (min-width: 992px) {
  .widget-mpl__gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
}
@media (max-width: 991.98px) {
  .widget-mpl__gallery {
    grid-template-columns: 1fr;
  }
}
.widget-mpl__card {
  min-width: 0;
  overflow: hidden;
}
.widget-mpl__art-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  width: 100%;
  aspect-ratio: 2 / 1;
  margin-bottom: 1.25rem;
  overflow: hidden;
}
.widget-mpl__grid-item {
  overflow: hidden;
  border-radius: 2px;
  position: relative;
  min-height: 0;
  min-width: 0;
  background: #d4cec4;
}
.widget-mpl__grid-item--1 {
  grid-row: 1 / span 2;
  grid-column: 1;
}
.widget-mpl__grid-item--2 {
  grid-column: 2;
  grid-row: 1;
}
.widget-mpl__grid-item--3 {
  grid-column: 3;
  grid-row: 1;
}
.widget-mpl__grid-item--4 {
  grid-column: 2;
  grid-row: 2;
}
.widget-mpl__grid-item--5 {
  grid-column: 3;
  grid-row: 2;
}
.widget-mpl__tile {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  position: relative;
  overflow: hidden;
  background: #e8e4dc;
}
.widget-mpl__tile::before,
.widget-mpl__tile::after {
  display: none;
}
.widget-mpl__tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.4s ease, filter 0.75s ease;
}
.widget-mpl__category {
  margin: 0;
  font-family: var(--aps-f-mono);
  text-align: center;
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: none;
  line-height: 1.25;
}
.widget-mpl__category a {
  color: var(--aps-burgundy);
  text-decoration: none;
  background: var(--aps-bg-2);
  padding: 0.32rem 0.38rem;
  display: inline-block;
}
.widget-mpl__category a::before,
.widget-mpl__category a::after {
  display: none;
}
.widget-mpl__category a:hover {
  text-decoration: underline;
  opacity: 1;
}
@media (max-width: 767.98px) {
  .widget-mpl__art-grid {
    aspect-ratio: 2 / 1;
    height: auto;
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  }
}
.widget-mpl__art-grid img.mouseover_effect_images {
  transition: transform 0.4s ease, filter 0.75s ease;
}
.widget-mpl__card:hover .widget-mpl__art-grid a:hover img.mouseover_effect_images,
.widget-mpl__card:hover .widget-mpl__art-grid img.mouseover_effect_images:hover {
  filter: brightness(1.14) saturate(1.25);
  transform: scale(1.04);
}
.widget-mov-4-slider {
  font-family: var(--aps-f-text);
  background: var(--aps-bg);
  border: 1px solid var(--aps-rule);
  padding: 1.25rem 1.5rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.widget-mov-4-slider__layout {
  display: grid;
  grid-template-columns: minmax(0, 470px) 1fr;
  gap: 2.5rem;
  align-items: stretch;
}
@media (max-width: 1024px) {
  .widget-mov-4-slider__layout {
    grid-template-columns: 1fr;
  }
}
.widget-mov-4-slider__portrait-col {
  min-width: 0;
}
.widget-mov-4-slider__portrait {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--aps-rule-2);
  background: var(--aps-bg-2);
  text-decoration: none;
  color: inherit;
}
.widget-mov-4-slider__portrait img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  filter: grayscale(100%);
}
.widget-mov-4-slider__name {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--aps-bg-2);
  color: var(--aps-burgundy);
  text-align: center;
  padding: 0.5rem 0.75rem;
  font-family: var(--aps-f-mono);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: none;
}
.widget-mov-4-slider__content-col {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-block: 0.75rem;
  min-width: 0;
  min-height: 0;
}
.widget-mov-4-slider__intro {
  flex-shrink: 0;
}
.widget-mov-4-slider__carousel {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  min-height: 0;
  margin-top: 1.5rem;
}
.widget-mov-4-slider .parent_slid_box {
  width: 100%;
  padding: 0 !important;
  margin: 0;
  display: flex;
  align-items: center;
}
.widget-mov-4-slider .artist_slider {
  width: 100%;
}
.widget-mov-4-slider__cta-wrap {
  flex-shrink: 0;
  margin-top: 2rem;
}
.widget-mov-4-slider__title {
  margin: 0;
  font-family: var(--aps-f-display);
  font-size: clamp(1.5rem, 2.4vw, 2.125rem);
  font-weight: 300;
  line-height: 1.15;
  color: var(--aps-ink);
  letter-spacing: -0.025em;
}
.widget-mov-4-slider__tagline {
  margin: 0.5rem 0 0;
  font-family: var(--aps-f-display);
  font-size: clamp(1.5rem, 2.75vw, 2.125rem);
  font-weight: 300;
  line-height: 1.12;
  color: var(--aps-burgundy);
  letter-spacing: -0.02em;
}
.widget-mov-4-slide-img-wrap {
  position: relative;
  display: block;
}
.widget-mov-4-slider .widget-mov-4-slide-img-wrap img {
  display: block;
  width: 100%;
  height: 142px;
  object-fit: cover;
}
/* Featured artist portrait sized ~80% of the 142px artwork image */
.homepage-site-widgets .widget-mov-4-slider__portrait {
  width: 114px;
  height: 114px;
  aspect-ratio: auto;
}
.widget-mov-4-slider .view_all_art {
  margin-top: 0.4rem;
  line-height: 1.25;
}
.widget-mov-4-slider .vincent_color {
  font-size: 0.8125rem;
  line-height: 1.2;
}
.widget-mov-4-slider .view_all_art a {
  font-size: 0.875rem;
  line-height: 1.25;
}
.widget-mov-4-slider .widget-mov-4-slide-label {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  text-align: center;
  padding: 0.18em 0.5em;
  border-radius: 4px;
  text-decoration: none;
  white-space: nowrap;
  max-width: 90%;
  overflow: hidden;
  text-overflow: ellipsis;
  z-index: 2;
  pointer-events: auto;
}
.widget-mov-4-slider .widget-mov-4-slide-label:hover {
  background: rgba(0, 0, 0, 0.8);
  text-decoration: underline;
}
.widget-mov-4-slider__cta {
  font-family: var(--aps-f-mono);
  position: relative;
  display: inline-block;
  overflow: hidden;
  border: 1px solid var(--aps-burgundy);
  color: var(--aps-burgundy);
  padding: 1.1rem 1.25rem;
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.3s ease, color 0.3s ease;
}
.widget-mov-4-slider__cta:hover {
  background: var(--aps-burgundy);
  color: #fff;
  text-decoration: none;
}
.widget-tf-slider {
  font-family: var(--aps-f-text);
  background: var(--aps-bg);
  border-color: var(--aps-rule);
  box-shadow: none;
}
.widget-tf-slider__title {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  color: var(--aps-ink);
  letter-spacing: -0.025em;
}
.widget-tf-slider__sub {
  font-family: var(--aps-f-text);
  font-size: 0.88rem;
  color: var(--aps-ink-2);
  line-height: 1.4;
}
.widget-recent-own-slider {
  font-family: var(--aps-f-text);
  background: var(--aps-bg);
  border-color: var(--aps-rule);
  box-shadow: none;
}
.widget-recent-own-slider__title {
  font-family: var(--aps-f-display);
  font-weight: 300;
  color: var(--aps-ink);
  letter-spacing: -0.025em;
}
.widget-stock-ready-slider {
  font-family: var(--aps-f-text);
  background: var(--aps-bg);
  border-color: var(--aps-rule);
  box-shadow: none;
}
.widget-stock-ready-slider__title {
  font-family: var(--aps-f-display);
  font-weight: 300;
  color: var(--aps-ink);
  letter-spacing: -0.025em;
}
.widget-stock-ready-slider__badge {
  display: inline-block;
  padding: 0.2rem 0.6rem;
  background: var(--aps-burgundy);
  color: #fff;
  border-radius: 2px;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-family: var(--aps-f-mono);
}
.widget-museum-4p {
  font-family: var(--aps-f-text);
  background: var(--aps-paper);
  padding: 1.15rem;
  margin-bottom: 1.5rem;
  max-width: 100%;
  overflow-x: clip;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .widget-museum-4p {
    padding: 1.35rem 1.6rem;
  }
}
.widget-museum-4p__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0.95rem;
  align-items: stretch;
  min-width: 0;
}
@media (min-width: 768px) {
  .widget-museum-4p__layout {
    grid-template-columns: minmax(0, 3fr) minmax(0, 4fr) minmax(0, 5fr);
    gap: 1.15rem;
  }
}
.widget-museum-4p__hero {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 11rem;
  overflow: hidden;
  background: #e8e4dc;
}
@media (min-width: 768px) {
  .widget-museum-4p__hero {
    min-height: 0;
    max-height: 27rem;
    height: 27rem;
  }
}
.widget-museum-4p__hero img {
  width: 100%;
  height: 100%;
  min-height: 11rem;
  object-fit: cover;
  object-position: center;
  display: block;
}
@media (min-width: 768px) {
  .widget-museum-4p__hero img {
    min-height: 0;
  }
}
.widget-museum-4p__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 0.6rem;
  min-width: 0;
  height: 100%;
}
@media (min-width: 768px) {
  .widget-museum-4p__grid {
    max-height: 27rem;
    height: 27rem;
  }
}
.widget-museum-4p__tile {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
}
.widget-museum-4p__tile-link {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  text-decoration: none;
  color: inherit;
}
.widget-museum-4p__tile-link::before,
.widget-museum-4p__tile-link::after {
  display: none;
}
.widget-museum-4p__tile-img {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  background: #d4cec4;
  aspect-ratio: 1;
}
@media (min-width: 768px) {
  .widget-museum-4p__tile-img {
    aspect-ratio: auto;
  }
}
.widget-museum-4p__tile-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.widget-museum-4p__label {
  flex: 0 0 auto;
  font-family: var(--aps-f-mono);
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: center;
  color: var(--aps-burgundy);
  background: var(--aps-bg-2);
  padding: 0.32rem 0.38rem;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.widget-museum-4p__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  align-self: start;
  text-align: left;
  min-width: 0;
  padding: 0.85rem 0 0;
  font-family: var(--aps-f-text);
  font-style: normal;
}
@media (min-width: 768px) {
  .widget-museum-4p__content {
    padding: 1.25rem 0.25rem 0;
  }
}
.widget-museum-4p__title {
  margin: 0 0 1.1rem;
  padding: 0;
  width: 100%;
  font-family: var(--aps-f-display);
  font-size: inherit;
  font-style: normal;
  font-weight: 300;
  font-synthesis: none;
  line-height: 1.2;
}
.widget-museum-4p__title-line1,
.widget-museum-4p__title-accent {
  display: block;
  font-family: var(--aps-f-display);
  font-style: normal;
  font-weight: 300;
  font-synthesis: none;
  font-variant: normal;
  text-transform: none;
  letter-spacing: -.02em;
}
.widget-museum-4p__title-line2,
.widget-museum-4p__title-line3 {
  display: inline;
  font-family: var(--aps-f-display);
  font-style: italic;
  font-weight: 300;
  font-synthesis: none;
  font-variant: normal;
  text-transform: none;
  font-size: clamp(1.5rem, 2.75vw, 2.125rem);
  letter-spacing: -0.02em;
  color: var(--aps-burgundy);
  line-height: 1.15;
}
.widget-museum-4p__title-line1 {
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  color: var(--aps-ink);
  line-height: 1.2;
  letter-spacing: -0.025em;
  margin-bottom: 0.35rem;
}
.widget-museum-4p__meta {
  font-family: var(--aps-f-text);
  font-style: normal;
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--aps-ink-2);
  margin: 0 0 1.25rem;
  width: 100%;
}
.widget-museum-4p__meta p {
  margin: 0;
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
}
.widget-museum-4p__cta {
  font-family: var(--aps-f-display);
  font-style: normal;
  font-weight: 500 !important;
  font-synthesis: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  align-self: flex-start;
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.75rem 1.2rem;
  background: var(--aps-burgundy);
  border: 0;
  border-radius: 0;
  color: #fff !important;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: left;
  line-height: 1.35;
  transition: background 0.25s ease;
}
@media (min-width: 768px) {
  .widget-museum-4p__cta {
    font-size: 0.875rem;
    padding: 0.85rem 1.35rem;
  }
}
.widget-museum-4p__cta::before,
.widget-museum-4p__cta::after {
  display: none;
}
.widget-museum-4p__cta:hover,
.widget-museum-4p__cta:focus {
  background: var(--aps-burgundy-2);
  color: #fff !important;
}
.widget-museum-4p__cta-arrow {
  font-size: 0.9em;
  line-height: 1;
}
.widget-museum-4p__hero,
.widget-museum-4p__tile-img {
  overflow: hidden;
}
.widget-artist-otd5 {
  font-family: var(--aps-f-text);
  background: var(--aps-bg-2) !important;
  padding: 1.15rem;
  margin-bottom: 1.5rem;
  max-width: 100%;
  overflow-x: clip;
  box-sizing: border-box;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
}
@media (min-width: 768px) {
  .widget-artist-otd5 {
    padding: 1.35rem 1.6rem;
  }
}
.widget-artist-otd5__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
  "hero"
  "grid"
  "aside";
  gap: 0.95rem;
  align-items: stretch;
  min-width: 0;
}
.widget-artist-otd5__hero {
  grid-area: hero;
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 11rem;
  overflow: hidden;
  background: #e8e4dc;
}
.widget-artist-otd5__grid {
  grid-area: grid;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 0.6rem;
  min-width: 0;
  height: 100%;
}
.widget-artist-otd5__aside {
  grid-area: aside;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 0.85rem 0 0;
}
@media (min-width: 768px) {
  .widget-artist-otd5__layout {
    grid-template-columns: minmax(0, 3fr) minmax(0, 4fr) minmax(0, 5fr);
    grid-template-areas: "hero grid aside";
    gap: 1.15rem;
  }
  .widget-artist-otd5__aside {
    padding: 1.25rem 0.25rem 0;
  }
}
.widget-artist-otd5__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  text-align: left;
  min-width: 0;
  width: 100%;
  padding: 0;
  font-family: var(--aps-f-text);
  font-style: normal;
}
@media (min-width: 992px) {
  .homepage-widget-pair .widget-artist-otd5 {
    margin-bottom: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  .homepage-widget-pair .widget-artist-otd5__layout {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    grid-template-rows: auto auto auto;
    grid-template-areas:
    "content content"
    "hero grid"
    "footer footer";
    flex: 1;
    height: 100%;
    align-items: stretch;
  }
  .homepage-widget-pair .widget-artist-otd5__aside {
    display: contents;
  }
  .homepage-widget-pair .widget-artist-otd5__content {
    grid-area: content;
    padding: 0;
  }
  .homepage-widget-pair .widget-artist-otd5__footer {
    grid-area: footer;
    padding-top: 0.85rem;
    width: 100%;
  }
  .homepage-widget-pair .widget-artist-otd5__hero {
    max-height: none;
    height: 100%;
    min-height: 0;
    align-self: stretch;
  }
  .homepage-widget-pair .widget-artist-otd5__hero img {
    min-height: 0;
    height: 100%;
  }
  .homepage-widget-pair .widget-artist-otd5__grid {
    max-height: none;
    height: auto;
    grid-template-rows: auto auto;
    align-self: stretch;
  }
  .homepage-widget-pair .widget-artist-otd5__tile-img {
    aspect-ratio: 1;
    flex: 0 0 auto;
    width: 100%;
  }
  .homepage-widget-pair .widget-artist-otd5__title {
    margin-bottom: 0.65rem;
  }
  .homepage-widget-pair .widget-artist-otd5__title-line1 {
    font-size: 1.35rem;
    margin-bottom: 0.2rem;
  }
  .homepage-widget-pair .widget-artist-otd5__title-line2,
.homepage-widget-pair .widget-artist-otd5__title-line3 {
    font-size: 1.2rem;
  }
  .homepage-widget-pair .widget-artist-otd5__meta {
    font-size: 0.8125rem;
    line-height: 1.5;
    margin-bottom: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .homepage-widget-pair .widget-artist-otd5__cta {
    font-size: 0.75rem;
    padding: 0.65rem 1rem;
    width: 100%;
    justify-content: center;
  }
}
.widget-artist-otd5__footer {
  width: 100%;
}
@media (min-width: 768px) {
  .widget-artist-otd5__hero {
    min-height: 0;
    max-height: 27rem;
    height: 27rem;
  }
}
.widget-artist-otd5__hero img {
  width: 100%;
  height: 100%;
  min-height: 11rem;
  object-fit: cover;
  object-position: center top;
  display: block;
}
@media (min-width: 768px) {
  .widget-artist-otd5__hero img {
    min-height: 0;
  }
}
@media (min-width: 768px) {
  .widget-artist-otd5__grid {
    max-height: 27rem;
    height: 27rem;
  }
}
.widget-artist-otd5__tile {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
}
.widget-artist-otd5__tile-link {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  text-decoration: none;
  color: inherit;
}
.widget-artist-otd5__tile-link::before,
.widget-artist-otd5__tile-link::after {
  display: none;
}
.widget-artist-otd5__tile-img {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  background: #e8e4dc;
  aspect-ratio: 1;
}
@media (min-width: 768px) {
  .widget-artist-otd5__tile-img {
    aspect-ratio: auto;
  }
}
.widget-artist-otd5__tile-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.widget-artist-otd5__label {
  flex: 0 0 auto;
  font-family: var(--aps-f-mono);
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-align: center;
  color: var(--aps-burgundy);
  background: var(--aps-bg-2);
  padding: 0.32rem 0.38rem;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.widget-artist-otd5__title {
  margin: 0 0 1.1rem;
  padding: 0;
  width: 100%;
  font-family: var(--aps-f-display);
  font-size: inherit;
  font-style: normal;
  font-weight: 300;
  font-synthesis: none;
  line-height: 1.2;
  color: var(--aps-ink);
}
.widget-artist-otd5__title-line1,
.widget-artist-otd5__title-accent {
  display: block;
  font-family: var(--aps-f-display);
  font-style: normal;
  font-weight: 400;
  font-synthesis: none;
  font-variant: normal;
  text-transform: none;
}
.widget-artist-otd5__title-line2,
.widget-artist-otd5__title-line3 {
  display: inline;
  font-family: var(--aps-f-display);
  font-style: italic;
  font-weight: 300;
  font-synthesis: none;
  font-variant: normal;
  text-transform: none;
  font-size: clamp(1.5rem, 2.75vw, 2.125rem);
  letter-spacing: -0.02em;
  color: var(--aps-burgundy);
  line-height: 1.15;
}
.widget-artist-otd5__title-line1 {
  font-size: clamp(1.5rem, 2.75vw, 2.125rem);
  color: var(--aps-ink);
  line-height: 1.15;
  letter-spacing: -0.025em;
  margin-bottom: 0.35rem;
}
.widget-artist-otd5__meta {
  font-family: var(--aps-f-text);
  font-style: normal;
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--aps-ink-2);
  margin: 0 0 1.25rem;
  width: 100%;
}
.widget-artist-otd5__meta p {
  margin: 0;
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
}
.widget-artist-otd5__cta {
  font-family: var(--aps-f-display);
  font-style: normal;
  font-weight: 500 !important;
  font-synthesis: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  align-self: flex-start;
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0.75rem 1.2rem;
  background: var(--aps-burgundy);
  border: 0;
  border-radius: 0;
  color: #fff !important;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: left;
  line-height: 1.35;
  transition: background 0.25s ease;
}
@media (min-width: 768px) {
  .widget-artist-otd5__cta {
    font-size: 0.875rem;
    padding: 0.85rem 1.35rem;
  }
}
.widget-artist-otd5__cta::before,
.widget-artist-otd5__cta::after {
  display: none;
}
.widget-artist-otd5__cta:hover,
.widget-artist-otd5__cta:focus {
  background: var(--aps-burgundy-2);
  color: #fff !important;
}
.widget-artist-otd5__cta-arrow {
  font-size: 0.9em;
  line-height: 1;
}
.widget-artist-otd5__hero,
.widget-artist-otd5__tile-img {
  overflow: hidden;
}
.widget-identify-masterpiece {
  font-family: var(--aps-f-text);
  background: var(--aps-paper);
  padding: 1.15rem;
  margin-bottom: 1.5rem;
  max-width: 100%;
  overflow-x: clip;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .widget-identify-masterpiece {
    padding: 1.35rem 1.6rem;
  }
}
@media (min-width: 992px) {
  .homepage-widget-pair .widget-identify-masterpiece {
    margin-bottom: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
}
.widget-identify-masterpiece__inner {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  min-width: 0;
}
.widget-identify-masterpiece__card {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
}
.widget-identify-masterpiece__card .widget-identify-masterpiece__btn {
  margin-top: auto;
}
.widget-identify-masterpiece__title {
  margin: 0 0 0.85rem;
  padding: 0;
  width: 100%;
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-style: normal;
  font-weight: 300;
  font-synthesis: none;
  line-height: 1.2;
  letter-spacing: -0.025em;
  color: var(--aps-ink);
}
.widget-identify-masterpiece__title-line1 {
  display: block;
  font-family: var(--aps-f-display);
  font-size: clamp(1.5rem, 2.75vw, 2.125rem);
  color: var(--aps-ink);
  line-height: 1.15;
  letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .widget-identify-masterpiece__title-line1 {
    font-size: 2.125rem;
  }
}
@media (min-width: 992px) {
  .homepage-widget-pair .widget-identify-masterpiece__title {
    margin-bottom: 0.65rem;
  }
  .homepage-widget-pair .widget-identify-masterpiece__title-line1 {
    font-size: 1.35rem;
  }
}
.widget-identify-masterpiece__question {
  font-family: var(--aps-f-text);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--aps-ink-2);
  margin: 0 0 1rem;
}
@media (min-width: 992px) {
  .homepage-widget-pair .widget-identify-masterpiece__question {
    font-size: 0.9375rem;
    line-height: 1.6;
    margin-bottom: 0.85rem;
  }
}
.widget-identify-masterpiece__choices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.6rem;
  flex: 1 1 auto;
  align-content: start;
  min-width: 0;
}
.widget-identify-masterpiece--full .widget-identify-masterpiece__choices {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1rem;
}
@media (max-width: 991.98px) {
  .widget-identify-masterpiece--full .widget-identify-masterpiece__choices {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 575.98px) {
  .widget-identify-masterpiece--full .widget-identify-masterpiece__choices {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.widget-identify-masterpiece__cell {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  background: #e8e4dc;
  border-radius: 2px;
}
.widget-identify-masterpiece__cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.widget-identify-masterpiece__footer {
  margin-top: auto;
  padding-top: 1rem;
}
@media (min-width: 992px) {
  .homepage-widget-pair .widget-identify-masterpiece__footer {
    padding-top: 0.85rem;
  }
}
.widget-identify-masterpiece__cta {
  font-family: var(--aps-f-display);
  font-style: normal;
  font-weight: 500 !important;
  font-synthesis: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  width: 100%;
  box-sizing: border-box;
  padding: 0.75rem 1.2rem;
  background: var(--aps-burgundy);
  border: 0;
  border-radius: 0;
  color: #fff !important;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  line-height: 1.35;
  transition: background 0.25s ease;
}
@media (min-width: 768px) {
  .widget-identify-masterpiece__cta {
    font-size: 0.875rem;
    padding: 0.85rem 1.35rem;
  }
}
@media (min-width: 992px) {
  .homepage-widget-pair .widget-identify-masterpiece__cta {
    font-size: 0.75rem;
    padding: 0.65rem 1rem;
  }
}
.widget-identify-masterpiece__cta::before,
.widget-identify-masterpiece__cta::after {
  display: none;
}
.widget-identify-masterpiece__cta:hover,
.widget-identify-masterpiece__cta:focus {
  background: var(--aps-burgundy-2);
  color: #fff !important;
}
.widget-identify-masterpiece__cta-arrow {
  font-size: 0.9em;
  line-height: 1;
}
.widget-article-kw {
  --widget-akw-accent: #161310;
  font-family: var(--aps-f-text);
  background: var(--aps-paper) !important;
  box-shadow: none;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
}
.widget-article-kw__title {
  font-weight: 300;
  color: var(--aps-ink);
  letter-spacing: -.025em;
  line-height: 1.3;
  font-family: var(--aps-f-display);
}
.widget-article-kw__cell {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 2px;
  background: var(--aps-ink);
}
.widget-article-kw__cell a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.widget-article-kw__meta {
  font-family: var(--aps-f-display);
  z-index: 2;
  padding: 0.5rem 0.55rem 0.55rem;
  max-height: 55%;
  overflow: hidden;
  font-size: 0.8rem;
  line-height: 1.35;
  font-weight: 600;
  text-align: left;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}
.widget-article-kw__cell--wide {
  aspect-ratio: 16 / 9;
}
.widget-quiz-artist__card {
  font-family: var(--aps-f-text);
  background: var(--aps-bg-2);
  border: 1px solid var(--aps-rule);
}
.widget-quiz-artist__btn {
  background: var(--aps-burgundy);
  border: 0;
  color: #fff;
  font-family: var(--aps-f-display);
  font-weight: 500;
  letter-spacing: 0.06em;
}
.widget-quiz-artist__btn:hover,
.widget-quiz-artist__btn:focus {
  background: var(--aps-burgundy-2);
  color: #fff;
}
.widget-quiz-artist__opt label {
  cursor: pointer;
}
.widget-quiz-artist__img {
  border-radius: var(--w-radius);
  overflow: hidden;
}
.widget-quiz-artist__img-inner {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  min-height: 0;
}
.widget-quiz-artist__title-top {
  font-family: var(--aps-f-display);
  z-index: 1;
  margin: 0;
  padding: 0.55rem 0.65rem 0.5rem;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
  pointer-events: none;
}
.widget-quiz-artist__caption {
  font-family: var(--aps-f-display);
  z-index: 1;
  padding: 0.5rem 0.65rem 0.55rem;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: left;
  pointer-events: none;
}
.widget-quiz-artist__question {
  font-family: var(--aps-f-text);
  color: var(--aps-ink-2);
  line-height: 1.4;
}
.widget-quiz-artist__meta {
  font-family: var(--aps-f-text);
  color: var(--aps-ink-2);
  line-height: 1.45;
}
.widget-curated-choice {
  font-family: var(--aps-f-text);
  background: var(--aps-bg-2);
  padding: 1rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .widget-curated-choice {
    padding: 1.5rem;
  }
}
.widget-curated-choice__main {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  align-items: stretch;
}
@media (min-width: 768px) {
  .widget-curated-choice__main {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: 1rem;
  }
}
.widget-curated-choice__gallery-panel {
  background: #DCD7CB;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.widget-curated-choice__art-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
  width: 100%;
  max-height: 14.5rem;
  aspect-ratio: 2 / 1;
  overflow: hidden;
}
@media (min-width: 768px) {
  .widget-curated-choice__art-grid {
    max-height: 18rem;
  }
}
.widget-curated-choice__grid-item {
  overflow: hidden;
  border-radius: 4px;
  position: relative;
  min-height: 0;
  min-width: 0;
  background: #e8e4dc;
}
.widget-curated-choice__grid-item--1 {
  grid-row: 1 / span 2;
  grid-column: 1;
}
.widget-curated-choice__grid-item--2 {
  grid-column: 2;
  grid-row: 1;
}
.widget-curated-choice__grid-item--3 {
  grid-column: 3;
  grid-row: 1;
}
.widget-curated-choice__grid-item--4 {
  grid-column: 2;
  grid-row: 2;
}
.widget-curated-choice__grid-item--5 {
  grid-column: 3;
  grid-row: 2;
}
.widget-curated-choice__tile {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  position: relative;
  overflow: hidden;
  background: #e8e4dc;
}
.widget-curated-choice__tile::before,
.widget-curated-choice__tile::after {
  display: none;
}
.widget-curated-choice__tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.4s ease, filter 0.75s ease;
}
.widget-curated-choice__label {
  font-family: var(--aps-f-text);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.25;
  text-transform: none;
  padding: 0.4rem 0.55rem;
  color: #fff;
  text-align: left;
}
.widget-curated-choice__label--hero {
  font-size: 0.78rem;
  padding: 0.45rem 0.65rem;
}
.widget-curated-choice__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.widget-curated-choice__head,
.widget-curated-choice__desc {
  width: 100%;
}
@media (min-width: 768px) {
  .widget-curated-choice__intro {
    padding: 0;
    min-height: 100%;
    justify-content: center;
  }
  .widget-curated-choice__head {
    font-size: clamp(1.1rem, 1.5vw, 1.5rem);
  }
  .widget-curated-choice__desc {
    font-size: 0.9375rem;
  }
  .widget-curated-choice__cta {
    padding: 1rem 1.15rem;
    letter-spacing: 0.08em;
  }
}
.widget-curated-choice__head {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  color: var(--aps-ink);
  margin: 0 0 0.5rem;
  line-height: 1.2;
  text-wrap: balance;
  overflow-wrap: anywhere;
  width: 100%;
  text-align: center;
  letter-spacing: -0.025em;
}
.widget-curated-choice__desc {
  font-size: 1rem;
  line-height: 1.55;
  color: var(--aps-ink-2);
  margin: 0 0 1.25rem;
  width: 100%;
  text-align: center;
}
.widget-curated-choice__cta {
  font-family: var(--aps-f-mono);
  position: relative;
  display: block;
  align-self: stretch;
  overflow: hidden;
  border: 1px solid var(--aps-burgundy);
  padding: 1.1rem 1.25rem;
  letter-spacing: 0.1em;
  font-size: 0.8rem;
  font-weight: 500;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  color: var(--aps-burgundy) !important;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.widget-curated-choice__cta::after {
  display: none;
}
.widget-curated-choice__cta::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--aps-burgundy);
  transform: translateX(-100%);
  transition: transform 0.35s ease;
  z-index: 0;
  width: auto;
  height: auto;
  opacity: 1;
  border: none;
}
.widget-curated-choice__cta:hover::before {
  transform: translateX(0);
}
.widget-curated-choice__cta span {
  position: relative;
  z-index: 2;
  display: inline-block;
  transition: color 0.35s ease;
}
.widget-curated-choice__cta:hover span {
  color: #fff;
}
@media (max-width: 767.98px) {
  .widget-curated-choice__art-grid {
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  }
}
.widget-curated-choice:hover .widget-curated-choice__art-grid a:hover img.mouseover_effect_images,
.widget-curated-choice:hover .widget-curated-choice__art-grid img.mouseover_effect_images:hover {
  filter: brightness(1.14) saturate(1.25);
  transform: scale(1.04);
}
.exarti-widget {
  padding: 2.5rem 0 2.75rem;
  background: var(--aps-bg-2, #ECE9E1);
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.exarti-widget .exarti-head {
  margin-bottom: 1.75rem;
}
.exarti-widget .exarti-head h2 {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: clamp(1.5rem, 2.75vw, 2.125rem);
  letter-spacing: -0.02em;
  color: var(--aps-ink, #161310);
  margin-bottom: 0.35rem;
  line-height: 1.15;
}
.exarti-widget .exarti-head h2 em {
  font-style: italic;
  font-weight: 300;
  color: var(--aps-burgundy, #5B1622);
}
.exarti-widget .exarti-head-meta {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 0.7rem;
  color: var(--aps-ink-3, #8A857D);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.exarti-widget .exarti-head-meta b {
  color: var(--aps-ink, #161310);
  font-weight: 600;
}
.exa-widget-grid {
  /* Bootstrap row/col handles the grid — no custom grid needed */
}
.exa-widget-card {
  font-family: var(--aps-f-text);
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: 0.25s ease;
  text-decoration: none;
  color: inherit;
}
.exa-widget-card:hover {
  transform: translateY(-3px);
  border-color: var(--aps-burgundy-2, #7A1F30);
}
.exa-widget-top {
  display: flex;
  gap: 18px;
  padding: 22px 22px 16px;
}
.exa-widget-portrait {
  width: 80px;
  height: 80px;
  flex: none;
  border-radius: 50%;
  object-fit: cover;
  background: var(--aps-bg-2, #ECE9E1);
  border: 1px solid var(--aps-rule-2, #C8C2B3);
  filter: saturate(0.9) contrast(1.02);
  display: block;
}
.exa-widget-portrait-wrap {
  width: 80px;
  height: 80px;
  flex: none;
  border-radius: 50%;
  overflow: hidden;
  background: var(--aps-bg-2, #ECE9E1);
  border: 1px solid var(--aps-rule-2, #C8C2B3);
  display: block;
  text-decoration: none;
}
.exa-widget-id {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  min-width: 0;
}
.exa-widget-tag {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 0.56rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.exa-widget-tag::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--aps-burgundy, #5B1622);
  flex: none;
}
.exa-widget-name {
  font-family: var(--aps-f-display, var(--aps-f-display));
  font-weight: 600;
  font-size: 1.15rem;
  letter-spacing: -0.02em;
  color: var(--aps-ink, #161310);
  line-height: 1.1;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.exa-widget-name:hover {
  color: var(--aps-burgundy, #5B1622);
}
.exa-widget-birth {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 0.62rem;
  color: var(--aps-ink-3, #8A857D);
  letter-spacing: 0.05em;
}
.exa-widget-bio {
  font-family: var(--aps-f-text);
  padding: 0 22px;
  font-size: 0.82rem;
  line-height: 1.55;
  color: var(--aps-ink-2, #4A4641);
  flex-grow: 1;
}
.exa-widget-stat {
  display: flex;
  gap: 18px;
  margin: 14px 22px 18px;
  padding-top: 12px;
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 0.56rem;
  color: var(--aps-ink-3, #8A857D);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.exa-widget-stat b {
  color: var(--aps-burgundy, #5B1622);
  font-family: var(--aps-f-display, var(--aps-f-display));
  font-weight: 600;
  font-size: 0.9rem;
  display: block;
  letter-spacing: -0.01em;
  margin-bottom: 2px;
}
.exa-widget-works {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 2px;
  margin-top: auto;
}
.exa-widget-work {
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
  display: block;
  background: var(--aps-bg-2, #ECE9E1);
  text-decoration: none;
}
.exa-widget-work img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}
.exa-widget-work:hover img {
  transform: scale(1.04);
}
.exa-widget-work::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20,15,12,0) 50%, rgba(20,15,12,0.66) 100%);
  opacity: 0;
  transition: 0.22s;
}
.exa-widget-work:hover::after {
  opacity: 1;
}
.exa-widget-wname {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 8px;
  z-index: 1;
  font-family: var(--aps-f-display, var(--aps-f-display));
  font-style: italic;
  font-size: 0.68rem;
  color: #F4ECDD;
  opacity: 0;
  transform: translateY(4px);
  transition: 0.22s;
  line-height: 1.15;
  text-shadow: 0 1px 4px rgba(0,0,0,0.6);
}
.exa-widget-work:hover .exa-widget-wname {
  opacity: 1; transform: none;
}
.exa-widget-foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 13px 22px;
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 0.62rem;
  color: var(--aps-ink-3, #8A857D);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.exa-widget-view {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--aps-ink, #161310);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.62rem;
  transition: color 0.15s;
}
.exa-widget-view svg {
  width: 11px; height: 11px; color: var(--aps-burgundy, #5B1622); flex: none;
}
.exa-widget-card:hover .exa-widget-view {
  color: var(--aps-burgundy, #5B1622);
}
.w37 {
  font-family: var(--aps-f-text);
  background: var(--aps-paper);
  padding: 2.75rem 0 3.25rem;
  width: 100%;
}
.w37__inner {
  max-width: 1298px;
  margin: 0 auto;
  padding: 0 1.5rem;
}
.w37__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 1.375rem;
  border-bottom: 2px solid var(--aps-ink);
  margin-bottom: 2.5rem;
  gap: 3rem;
  flex-wrap: wrap;
}
.w37__title {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: clamp(2.25rem, 4.5vw, 4rem);
  letter-spacing: -0.035em;
  line-height: 0.96;
  color: var(--aps-ink);
  max-width: 18ch;
  margin: 0;
}
.w37__title em {
  font-style: italic;
  font-weight: 300;
  color: var(--aps-burgundy);
}
.w37__meta {
  font-family: var(--aps-f-mono);
  font-size: 0.6875rem;
  color: var(--aps-ink-3);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-align: right;
  line-height: 1.6;
}
.w37__meta b {
  display: block;
  color: var(--aps-ink);
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 1.625rem;
  letter-spacing: -0.018em;
  margin-bottom: 0.25rem;
  text-transform: none;
}
.w37__letters {
  display: grid;
  grid-template-columns: repeat(26, 1fr);
  gap: 2px;
  margin-bottom: 2.5rem;
  font-family: var(--aps-f-mono);
  font-size: 0.6875rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  overflow-x: auto;
  min-width: 0;
}
@media (max-width: 575px) {
  .w37__letters {
    grid-template-columns: repeat(26, minmax(1.5rem, 1fr));
    font-size: 0.5625rem;
    letter-spacing: 0.02em;
  }
}
.w37__letters span {
  text-align: center;
  padding: 8px 0;
  color: var(--aps-ink-3);
  border: 1px solid transparent;
  cursor: pointer;
  transition: 0.15s;
  user-select: none;
}
.w37__letters span:hover {
  color: var(--aps-ink); border-color: var(--aps-rule);
}
.w37__letters span.w37--on {
  color: var(--aps-burgundy);
  border-bottom: 1px solid var(--aps-burgundy);
}
.w37__letters span.w37--empty {
  color: var(--aps-rule-2);
  cursor: not-allowed;
  pointer-events: none;
}
.w37__cols {
  column-count: 3;
  column-gap: 2.25rem;
  column-rule: 1px solid var(--aps-rule);
}
@media (min-width: 768px) {
  .w37__cols {
    column-count: 4;
  }
}
@media (min-width: 1100px) {
  .w37__cols {
    column-count: 5;
  }
}
.w37__group {
  break-inside: avoid;
  margin-bottom: 1.875rem;
  padding-right: 0.875rem;
}
.w37__group-head {
  font-family: var(--aps-f-mono);
  font-size: 0.625rem;
  color: var(--aps-burgundy);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin: 0 0 0.875rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--aps-rule);
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.w37__group-head span {
  color: var(--aps-ink-3); font-weight: 400;
}
.w37__group ul {
  list-style: none; margin: 0; padding: 0;
}
.w37__group li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 5px 0;
  border-bottom: 1px dotted transparent;
  transition: 0.15s;
}
.w37__group li:hover {
  border-bottom-color: var(--aps-rule);
}
.w37__group a {
  font-family: var(--aps-f-display);
  font-weight: 400;
  font-size: 0.8125rem;
  color: var(--aps-ink);
  letter-spacing: -0.005em;
  transition: 0.15s;
  line-height: 1.25;
  text-decoration: none;
}
.w37__group li:hover a {
  color: var(--aps-burgundy);
}
.w37__n {
  font-family: var(--aps-f-mono);
  font-size: 0.5625rem;
  color: var(--aps-ink-3);
  letter-spacing: 0.06em;
  white-space: nowrap;
  margin-left: 0.5rem;
}
.w37__foot {
  margin-top: 2.25rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--aps-rule);
  font-family: var(--aps-f-mono);
  font-size: 0.6875rem;
  color: var(--aps-ink-3);
  letter-spacing: 0.1em;
}
.w37__foot b {
  color: var(--aps-ink); font-weight: 500;
}
.widget-reimagine-4 {
  font-family: var(--aps-f-text);
  background: var(--aps-bg);
  border-color: var(--aps-rule);
  box-shadow: none;
}
.widget-reimagine-4__title {
  font-family: var(--aps-f-display);
  font-weight: 300;
  color: var(--aps-ink);
  letter-spacing: -0.025em;
}
.widget-reimagine-4__cell {
  position: relative;
  border-radius: var(--w-radius);
  overflow: hidden;
  aspect-ratio: 1;
  background: var(--aps-bg-2);
}
.widget-reimagine-4__cell a {
  display: block; width: 100%; height: 100%;
}
.widget-reimagine-4__name {
  padding: 0.5rem 0.6rem;
  font-family: var(--aps-f-mono);
  font-weight: 500;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.2;
  color: var(--aps-ink-2);
}
.widget-reimagine-4__cta {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 0.875rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 0.75rem 1.25rem;
  border-radius: var(--w-radius);
  background: var(--aps-burgundy);
  color: #fff !important;
  text-decoration: none !important;
  border: none;
  transition: background 0.25s ease;
}
.widget-reimagine-4__cta:hover, .widget-reimagine-4__cta:focus {
  background: var(--aps-burgundy-2);
  color: #fff !important;
}
.widget-curated-choice__grid-item,
.widget-curated-choice__tile {
  border-radius: 2px;
}
.widget-mov-4-slider,
.widget-tf-slider,
.widget-recent-own-slider,
.widget-stock-ready-slider,
.widget-recent-nft-slider,
.widget-artist-slider {
  font-family: var(--aps-f-text);
  background: var(--aps-bg) !important;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
  box-shadow: none;
}
.widget-artist-slider__portrait {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 2px;
  background: var(--aps-bg-2);
}
.widget-artist-slider__name-label {
  font-family: var(--aps-f-mono);
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-burgundy);
  margin: 0.5rem 0 0.5rem;
}
.widget-artist-slider__bio {
  font-family: var(--aps-f-text);
  font-size: 0.875rem;
  line-height: 1.55;
  color: var(--aps-ink-2);
}
.widget-mov-4-slider__portrait,
.widget-mov-4__portrait {
  background: var(--aps-burgundy);
  border-radius: 2px;
}
.widget-mov-4-slider__head,
.widget-mov-4__head {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  color: var(--aps-ink);
  font-weight: 300;
  letter-spacing: -0.025em;
}
.widget-mov-4-slider__head strong,
.widget-mov-4__head strong {
  color: var(--aps-burgundy);
}
.widget-mov-4__cta {
  color: var(--aps-burgundy);
}
.widget-mov-4__cta:hover,
.widget-mov-4__cta:focus {
  color: var(--aps-burgundy-2);
}
.widget-tf-slider__title,
.widget-recent-own-slider__title,
.widget-stock-ready-slider__title,
.widget-recent-nft-slider__title {
  font-family: var(--aps-f-display);
  color: var(--aps-ink);
  font-weight: 300;
}
.widget-tf-slider__sub,
.widget-recent-nft-slider__sub {
  font-family: var(--aps-f-text);
  color: var(--aps-ink-2);
}
.widget-museum-4p__cta,
.widget-museum-4p__tile-img {
  border-radius: 2px;
}
.widget-artist-otd5__media,
.widget-artist-otd5__art {
  border-radius: 2px;
}
.widget-identify-masterpiece__card {
  background: var(--aps-bg-2) !important;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
}
.widget-identify-masterpiece__btn {
  background: transparent !important;
  border: 1px solid var(--aps-burgundy) !important;
  color: var(--aps-burgundy) !important;
  font-family: var(--aps-f-mono) !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  transition: background 0.3s ease, color 0.3s ease !important;
}
.widget-identify-masterpiece__btn:hover,
.widget-identify-masterpiece__btn:focus {
  background: var(--aps-burgundy) !important;
  color: #fff !important;
  border-color: var(--aps-burgundy) !important;
}
.widget-quiz-artist__card,
.widget-quiz-artwork__card {
  font-family: var(--aps-f-text);
  background: var(--aps-bg-2) !important;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
}
.widget-quiz-artist__btn,
.widget-quiz-artwork__btn {
  background: transparent !important;
  border: 1px solid var(--aps-burgundy) !important;
  color: var(--aps-burgundy) !important;
  font-family: var(--aps-f-mono) !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  border-radius: 0 !important;
  transition: background 0.3s ease, color 0.3s ease !important;
}
.widget-quiz-artist__btn:hover,
.widget-quiz-artist__btn:focus,
.widget-quiz-artwork__btn:hover,
.widget-quiz-artwork__btn:focus {
  background: var(--aps-burgundy) !important;
  color: #fff !important;
  border-color: var(--aps-burgundy) !important;
}
.widget-quiz-artist__img,
.widget-quiz-artwork__img {
  border-radius: 2px;
}
.widget-quiz-artist__title-top,
.widget-quiz-artwork__kicker {
  font-family: var(--aps-f-display);
}
.widget-quiz-artist__question,
.widget-quiz-artist__meta,
.widget-quiz-artwork__question {
  font-family: var(--aps-f-text);
  color: var(--aps-ink-2);
}
.widget-quiz-artwork__eyebrow {
  font-family: var(--aps-f-mono);
  color: var(--aps-burgundy);
}
.widget-dqf--artwork {
  --widget-dqf-accent: #5B1622;
  font-family: var(--aps-f-text);
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
}
.widget-dqf--artwork .widget-dqf__title {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  color: var(--aps-ink);
  letter-spacing: -0.025em;
}
.widget-dqf--artwork .widget-dqf__cta {
  background: var(--aps-burgundy) !important;
  border-radius: 2px !important;
}
.widget-dqf--artwork .widget-dqf__cta:hover,
.widget-dqf--artwork .widget-dqf__cta:focus {
  background: var(--aps-burgundy-2) !important;
}
.widget-dqf--artwork .widget-dqf__meta {
  font-family: var(--aps-f-text);
  color: var(--aps-ink-2);
}
.widget-dqf--artwork .widget-dqf__fact {
  font-family: var(--aps-f-text);
  color: var(--aps-ink);
}
.widget-dqf--artwork .widget-dqf__photo {
  border-radius: 2px;
  background: var(--aps-bg-2);
}
.homepage-site-widgets .widget-dqf {
  font-family: var(--aps-f-text);
  background: var(--aps-paper) !important;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
}
.widget-mov-4 {
  --widget-mov-accent: #5B1622;
  font-family: var(--aps-f-text);
  background: var(--aps-paper) !important;
  border-color: var(--aps-rule) !important;
  border-radius: 2px !important;
  box-shadow: none;
}
.widget-mov-4__row-thumb {
  background: var(--aps-bg-2);
  border-radius: 2px;
}
.widget-mov-4__row-title {
  font-family: var(--aps-f-display);
  color: var(--aps-ink);
  font-weight: 600;
}
.widget-mov-4__row-subtitle {
  font-family: var(--aps-f-mono);
  font-size: 0.625rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .06em;
  color: var(--aps-burgundy);
  background: var(--aps-bg-2);
  padding: 0.32rem 0.38rem;
  display: inline-block;
}
.widget-unique-nft-1 {
  --widget-unique-nft-accent: #E8DFC9;
  font-family: var(--aps-f-text);
  background: var(--aps-ink) !important;
  border-color: rgba(22, 19, 16, .12) !important;
  border-radius: 2px !important;
  box-shadow: none;
}
.widget-unique-nft-1__headline {
  font-family: var(--aps-f-display);
  font-size: clamp(1.1rem, 1.8vw, 1.5rem);
  font-weight: 300;
  letter-spacing: -0.025em;
  color: var(--widget-unique-nft-accent);
}
.widget-unique-nft-1__body {
  color: rgba(232, 223, 201, 0.70);
}
.widget-unique-nft-1__figure {
  position: relative;
  width: 100%;
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
  border-radius: 2px;
  overflow: hidden;
  aspect-ratio: 1;
}
.widget-unique-nft-1__figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.widget-unique-nft-1__over {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6rem;
  padding: 1rem 0.75rem 0.85rem;
}
.widget-unique-nft-1__overlay-title {
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-align: center;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.widget-unique-nft-1__cta {
  background: #E8DFC9 !important;
  color: var(--aps-ink) !important;
  border-radius: 2px !important;
  font-family: var(--aps-f-display);
  font-weight: 600;
}
.widget-unique-nft-1__cta:hover {
  filter: brightness(.95) !important;
  color: var(--aps-ink) !important;
}
.homepage-site-widgets .border {
  border-color: var(--aps-rule) !important;
}
.homepage-site-widgets .rounded-3 {
  border-radius: 2px !important;
}
.homepage-site-widgets .text-muted {
  color: var(--aps-ink-3) !important;
}
.homepage-site-widgets .bg-light {
  background-color: var(--aps-bg-2) !important;
}
.homepage-site-widgets .btn-primary,
.homepage-site-widgets .btn-dark {
  background: var(--aps-burgundy);
  border-color: var(--aps-burgundy);
}
.homepage-site-widgets .btn-primary:hover,
.homepage-site-widgets .btn-dark:hover {
  background: var(--aps-burgundy-2);
  border-color: var(--aps-burgundy-2);
}
.homepage-site-widgets h2:not([class]),
.homepage-site-widgets h3:not([class]),
.homepage-site-widgets h4:not([class]),
.homepage-site-widgets h5:not([class]) {
  font-family: var(--aps-f-display);
}
.homepage-site-widgets .small:not([class*="widget"]) {
  font-family: var(--aps-f-text);
  color: var(--aps-ink-2);
}
.widget-mov-4-slide-label,
.mpl-slide-group-label {
  background: var(--aps-burgundy) !important;
  color: #F2E6D8 !important;
  font-family: var(--aps-f-mono) !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
}
.widget-mov-4-slide-label:hover {
  background: var(--aps-burgundy-2) !important;
}
.homepage-site-widgets .vincent_color,
.homepage-site-widgets .vincent_color a {
  font-family: var(--aps-f-mono) !important;
  font-size: 0.625rem !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: .06em !important;
  text-transform: none !important;
  color: var(--aps-burgundy) !important;
  background: var(--aps-bg-2) !important;
  padding: 0.32rem 0.38rem !important;
  display: inline-block !important;
  margin-bottom: 4px !important;
}
.homepage-site-widgets .vincent_color a:hover {
  color: var(--aps-burgundy-2) !important;
}
.homepage-site-widgets .artist_slid_box .vincent_color {
  margin-top: 0.4rem;
  margin-bottom: 2px;
}
.homepage-site-widgets .view_all_art {
  margin-top: 0.5rem;
  padding-bottom: 0.35rem;
}
.homepage-site-widgets .artist_slid_box::after {
  display: none;
}
.homepage-site-widgets .widget-artist-slider .swiper-slide {
  width: auto !important;
}
.homepage-site-widgets .widget-artist-slider .swiper-wrapper {
  align-items: flex-end;
}
.homepage-site-widgets .widget-artist-slider .artist_slid_box img {
  height: 200px;
  width: auto;
  max-width: none;
  display: block;
}
/* Artist portrait sized ~80% of the 200px artwork image so artworks lead */
.homepage-site-widgets .widget-artist-slider__portrait {
  width: 160px;
  height: 160px;
  aspect-ratio: auto;
  align-self: flex-start;
}
.homepage-site-widgets .widget-artist-otd5,
.homepage-site-widgets .widget-identify-masterpiece,
.homepage-site-widgets .widget-article-kw,
.homepage-site-widgets .widget-quiz-artist {
  height: 100%;
  box-sizing: border-box;
}
.homepage-site-widgets .widget-artist-otd5__layout {
  flex: 1 1 auto;
  min-height: 0;
}
.homepage-site-widgets .widget-artist-slider .parent_slid_box {
  padding: 0;
  border-bottom: none;
  width: 100%;
}
.homepage-site-widgets .widget-identify-masterpiece__card,
.homepage-site-widgets .widget-quiz-artist__card {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.homepage-site-widgets .widget-identify-masterpiece__card .widget-identify-masterpiece__btn {
  margin-top: auto;
}
.homepage-site-widgets .view_all_art a {
  font-family: var(--aps-f-mono) !important;
  font-size: 0.625rem !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: .06em !important;
  text-transform: none !important;
  color: var(--aps-burgundy) !important;
  background: var(--aps-bg-2) !important;
  padding: 0.32rem 0.38rem !important;
  display: inline-block !important;
}
.homepage-site-widgets .view_all_art a:hover {
  color: var(--aps-burgundy-2) !important;
}
.homepage-site-widgets .artist_slid_box {
  background: var(--aps-bg-2) !important;
  border-radius: 2px !important;
  overflow: hidden;
}
.homepage-site-widgets .swiper-button-next,
.homepage-site-widgets .swiper-button-prev {
  color: var(--aps-burgundy) !important;
}
.homepage-site-widgets .swiper-button-next::after,
.homepage-site-widgets .swiper-button-prev::after {
  color: var(--aps-burgundy) !important;
}
.homepage-site-widgets .swiper-pagination-bullet-active {
  background: var(--aps-burgundy) !important;
}

/* APS-only swiper arrow icons — burgundy-accented on cream, replacing the generic warm-brown SVG */
.homepage-site-widgets .swp_btn img {
  content: url('/static/images/artist/arrows_swiper_aps.svg');
  opacity: 0.7;
  filter: drop-shadow(0 2px 4px rgba(91, 22, 34, 0.28));
  transition: filter 0.18s ease, transform 0.18s ease, opacity 0.18s ease;
}
.homepage-site-widgets .swp_btn.swiper-button-prev img {
  transform: scaleX(-1);
}
.homepage-site-widgets .swp_btn:hover img {
  filter: drop-shadow(0 2px 8px rgba(91, 22, 34, 0.35));
  opacity: 1;
  transform: scale(1.08);
}
.homepage-site-widgets .swp_btn.swiper-button-prev:hover img {
  transform: scaleX(-1) scale(1.08);
}

/* =====================================================
   APS — Bespoke Commissions section
   ===================================================== */

.aps-commission {
  font-family: var(--aps-f-text);
  padding: 104px 0 110px;
  background: var(--aps-bg);
}

.aps-commission__inner {
  max-width: var(--aps-max);
  margin: 0 auto;
  padding: 0 36px;
}

/* heading strip — mirrors .aps-section-head */
.aps-commission__head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  gap: 32px;
  margin-bottom: 2.5rem;
  padding-bottom: 1.75rem;
  border-bottom: 2px solid var(--aps-ink);
}

.aps-commission__head h2 {
  font-family: var(--aps-f-display);
  font-weight: 300;
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  line-height: 0.96;
  letter-spacing: -0.035em;
  color: var(--aps-ink);
  margin: 0;
}

.aps-commission__head h2 em {
  font-style: italic;
  font-weight: 300;
  color: var(--aps-burgundy);
}

.aps-commission__meta {
  font-family: var(--aps-f-mono);
  font-size: 11px;
  color: var(--aps-ink-3);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-align: right;
  line-height: 1.6;
}

.aps-commission__meta b {
  display: block;
  color: var(--aps-ink);
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: -0.02em;
  margin-bottom: 4px;
  text-transform: none;
}

/* 3-column card grid */
.aps-com-grid {
  /* Bootstrap row/col handles the grid layout */
}

/* Individual commission card */
.aps-com {
  background: var(--aps-paper);
  border: 1px solid var(--aps-rule);
  border-radius: 2px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: border-color 0.25s ease, transform 0.25s ease;
}

.aps-com:hover {
  border-color: var(--aps-burgundy-2);
  transform: translateY(-3px);
}

/* Process visualization — before/after image panels */
.aps-com__process {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
  height: 200px;
  border-bottom: 1px solid var(--aps-rule);
  background: var(--aps-bg-2);
}

.aps-com__step {
  position: relative;
  background-color: var(--aps-bg-2);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

/* "before" step — slight warm desaturation to read as the source photo */
.aps-com__step--photo {
  filter: sepia(0.18) brightness(0.97);
}

.aps-com__step-lbl {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
  font-family: var(--aps-f-mono);
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #fff;
  background: rgba(22, 19, 16, 0.62);
  padding: 5px 8px 6px;
  line-height: 1.4;
}

.aps-com__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  background: var(--aps-bg-2);
  border-left: 1px solid var(--aps-rule);
  border-right: 1px solid var(--aps-rule);
  color: var(--aps-burgundy);
  flex-shrink: 0;
}

.aps-com__arrow svg {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}

/* Card body */
.aps-com__body {
  padding: 1.25rem 1.35rem 1.5rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* "01 · Family Portrait" + price line */
.aps-com__ix {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  font-family: var(--aps-f-mono);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--aps-ink-3);
  margin-bottom: 0.5rem;
}

.aps-com__ix span:last-child {
  color: var(--aps-burgundy);
  letter-spacing: 0.08em;
  white-space: nowrap;
}

.aps-com__title {
  font-family: var(--aps-f-display);
  font-weight: 500;
  font-size: clamp(1.125rem, 1.6vw, 1.375rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: var(--aps-ink);
  margin: 0 0 0.625rem;
}

.aps-com__desc {
  font-family: var(--aps-f-text);
  font-size: 14px;
  line-height: 1.6;
  color: var(--aps-ink-2);
  margin: 0 0 1rem;
  flex: 1;
}

/* Specs dl */
.aps-com__specs {
  margin: 0 0 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 5px;
  border-top: 1px solid var(--aps-rule);
  padding-top: 0.75rem;
}

.aps-com__specs > div {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
}

.aps-com__specs dt {
  font-family: var(--aps-f-mono);
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--aps-ink-3);
  flex-shrink: 0;
  white-space: nowrap;
}

.aps-com__specs dd {
  font-family: var(--aps-f-text);
  font-size: 13px;
  color: var(--aps-ink-2);
  margin: 0;
  text-align: right;
}

.aps-com__specs dd b {
  font-family: var(--aps-f-display);
  font-weight: 600;
  color: var(--aps-ink);
  letter-spacing: -0.015em;
  margin-right: 3px;
}

/* CTA link */
.aps-com__cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  font-family: var(--aps-f-display);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.01em;
  color: var(--aps-burgundy);
  cursor: pointer;
  text-decoration: none;
  transition: color 0.2s ease;
}

.aps-com__cta::after {
  content: none;
}

.aps-com__cta svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform 0.25s ease;
}

.aps-com__cta:hover {
  color: var(--aps-burgundy-2);
}

.aps-com__cta:hover svg {
  transform: translateX(3px);
}

/* Responsive */
@media (max-width: 1100px) {
  .aps-commission__inner {
    padding: 0 20px;
  }
}

@media (max-width: 768px) {
  .aps-commission {
    padding: 64px 0 72px;
  }
  .aps-commission__inner {
    padding: 0 16px;
  }
  .aps-commission__head {
    grid-template-columns: 1fr;
  }
  .aps-commission__meta {
    text-align: left;
  }
  .aps-com__process {
    height: 170px;
  }
}

@media (max-width: 575px) {
  .aps-commission__head {
    grid-template-columns: 1fr;
  }
}

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

.aps-bycolor { background: #faf8f5; padding: 3.5rem 0 3rem; }
.aps-bycolor__wrap { max-width: 1200px; margin: 0 auto; padding: 0 1.5rem; }
.aps-bycolor__head { margin-bottom: 2rem; display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
.aps-bycolor__head-left { display: flex; flex-direction: column; gap: .4rem; }
.aps-bycolor__title { font-family: var(--aps-f-display); font-weight: 300; font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 0.96; letter-spacing: -0.035em; color: var(--aps-ink); margin: 0; }
.aps-bycolor__title em { font-style: italic; font-weight: 300; color: var(--aps-burgundy); }
.aps-bycolor__meta { font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: #aaa; }
.aps-bycolor__meta b { color: #777; font-weight: 600; }
.aps-bycolor__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: #ddd8ce;
  border: 1px solid #ddd8ce;
}
.aps-bycolor__card {
  display: flex;
  flex-direction: column;
  background: #fff;
  text-decoration: none;
  color: inherit;
  overflow: hidden;
  transition: background .15s;
}
.aps-bycolor__card:hover { background: #fdf9f5; }
.aps-bycolor__card:hover .aps-bycolor__img { transform: scale(1.03); }
.aps-bycolor__img-wrap { aspect-ratio: 1 / 1; overflow: hidden; position: relative; }
.aps-bycolor__img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s ease; }
.aps-bycolor__swatch {
  position: absolute;
  bottom: .6rem;
  right: .6rem;
  width: 13px;
  height: 13px;
  border: 2px solid rgba(255,255,255,.85);
  box-shadow: 0 1px 3px rgba(0,0,0,.25);
}
.aps-bycolor__info {
  padding: .7rem .8rem .85rem;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: .65rem;
  border-top: 1px solid #ede9e2;
}
.aps-bycolor__color-block {
  width: 28px;
  flex-shrink: 0;
  align-self: stretch;
  min-height: 58px;
}
.aps-bycolor__details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .22rem;
  min-width: 0;
  flex: 1;
}
.aps-bycolor__color-tag {
  font-size: .68rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #999;
}
.aps-bycolor__artwork-title { font-size: .8rem; font-weight: 600; line-height: 1.35; color: #222; }
.aps-bycolor__artist { font-size: .73rem; color: #999; }
.aps-bycolor__foot {
  margin-top: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .75rem;
}
.aps-bycolor__foot-text { font-size: .75rem; color: #aaa; letter-spacing: .04em; text-transform: uppercase; }
.aps-bycolor__btn {
  font-family: var(--aps-f-mono);
  border: 1px solid var(--aps-burgundy);
  color: var(--aps-burgundy);
  padding: .65rem 1.25rem;
  font-size: .8rem;
  font-weight: 500;
  letter-spacing: .1em;
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
  transition: background .3s, color .3s;
}
.aps-bycolor__btn:hover { background: var(--aps-burgundy); color: #fff; }
@media (max-width: 900px) {
  .aps-bycolor__grid { grid-template-columns: repeat(2, 1fr); }
  .aps-bycolor__head { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 480px) {
  .aps-bycolor__grid { grid-template-columns: repeat(2, 1fr); }
  .aps-bycolor__title { font-size: 1.6rem; }
}

/* --- block --- */

.aps-museum { background: #f2ede4; padding: 3rem 0; }
.aps-museum .wrap { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }
.aps-museum .sec-head { margin-bottom: 1.75rem; }
.aps-museum .sec-head h2 { font-family: var(--aps-f-display); font-weight: 300; font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 0.96; letter-spacing: -0.035em; color: var(--aps-ink); margin: 0 0 .35rem; }
.aps-museum .sec-head h2 em { font-style: italic; font-weight: 300; color: var(--aps-burgundy); }
.aps-museum .sec-head .meta { font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: #777; }
.mus-feature { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media(min-width:768px){ .mus-feature { grid-template-columns: minmax(0,2fr) minmax(0,3fr); } }
.mus-image { aspect-ratio: 3/4; background-size: cover; background-position: center; position: relative; overflow: hidden; }
.mus-image .crest { position: absolute; top: .75rem; left: .75rem; background: rgba(0,0,0,.55); color: #fff; font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; padding: .3rem .6rem; }
.mus-image .caption-img { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent, rgba(0,0,0,.65)); color: #fff; font-size: .75rem; padding: .75rem .85rem .5rem; }
.mus-body { display: flex; flex-direction: column; gap: .85rem; }
.mus-body .kicker { font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; color: var(--aps-burgundy); font-weight: 600; }
.mus-body h3 { font-size: 1.5rem; font-weight: 700; margin: 0; line-height: 1.2; }
.mus-body h3 em { color: var(--aps-burgundy); font-style: italic; }
.mus-body .desc { font-size: .92rem; color: #444; line-height: 1.6; margin: 0; }
.mus-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: .5rem; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; padding: .85rem 0; margin: 0; list-style: none; }
.mus-stats div { display: flex; flex-direction: column; }
.mus-stats dt { font-size: .72rem; text-transform: uppercase; letter-spacing: .07em; color: #888; margin-bottom: .2rem; }
.mus-stats dd { font-size: 1.35rem; font-weight: 700; color: #1a1a1a; margin: 0; }
.mus-stats small { display: block; font-size: .7rem; color: #999; font-weight: 400; }
.mus-list .head { font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; color: #888; margin-bottom: .5rem; }
.mus-list .item { display: flex; gap: .75rem; align-items: baseline; font-size: .85rem; border-bottom: 1px solid #ede9e2; padding: .4rem 0; }
.mus-list .item .n { font-size: .7rem; color: #bbb; min-width: 1.5rem; }
.mus-list .item .t { flex: 1; }
.mus-list .item .t i { color: var(--aps-burgundy); font-style: italic; }
.mus-list .item .pr { font-weight: 600; color: var(--aps-burgundy); }
.mus-body .btn-primary { font-family: var(--aps-f-display); font-variation-settings: "wdth" 90; display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 22px; border-radius: 2px; background: var(--aps-burgundy); color: var(--aps-cream-2) !important; font-weight: 500; font-size: 14px; letter-spacing: .04em; text-transform: uppercase; text-decoration: none; transition: background .18s ease; }
.mus-body .btn-primary:hover { background: var(--aps-burgundy-2); color: var(--aps-cream-2) !important; }

/* --- block --- */

.aps-otd { background: #fff; padding: 3rem 0; border-top: 1px solid #ede9e2; }
.aps-otd .wrap { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }
.otd-masthead { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 1rem; margin-bottom: 1.75rem; }
.almanac { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: #aaa; }
.almanac b { display: block; margin-top: .2rem; }
.otd-masthead h2 { font-size: 2rem; font-weight: 700; margin: 0; }
.otd-masthead h2 em { font-style: italic; color: var(--aps-burgundy); }
.otd-stamp { font-size: .75rem; color: #888; text-align: right; line-height: 1.5; }
.otd-spread { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media(min-width:768px){ .otd-spread { grid-template-columns: minmax(0,2fr) minmax(0,3fr); } }
.otd-portrait-card {}
.otd-portrait { aspect-ratio: 1; position: relative; overflow: hidden; }
.otd-portrait img { width: 100%; height: 100%; object-fit: cover; }
.otd-portrait .corner { position: absolute; top: .6rem; left: .6rem; background: rgba(0,0,0,.55); color: #fff; font-size: .68rem; padding: .25rem .5rem; }
.otd-portrait .signature { position: absolute; bottom: .5rem; right: .65rem; font-style: italic; color: rgba(255,255,255,.9); font-size: .85rem; }
.otd-caption { display: flex; gap: .5rem; align-items: baseline; margin-top: .75rem; }
.otd-caption .num { font-size: 2.2rem; font-weight: 800; color: var(--aps-burgundy); line-height: 1; }
.otd-caption .name { font-size: 1rem; font-weight: 700; }
.otd-caption .sub { font-size: .75rem; color: #888; }
.otd-caption-foot { display: flex; justify-content: space-between; font-size: .75rem; color: #888; margin-top: .35rem; padding-top: .35rem; border-top: 1px solid #ede9e2; }
.otd-body { display: flex; flex-direction: column; gap: 1rem; }
.otd-body .kicker { font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; color: var(--aps-burgundy); font-weight: 600; }
.otd-pullquote { background: #f8f5ef; border-left: 3px solid var(--aps-burgundy); padding: .85rem 1rem; margin: 0; font-style: italic; font-size: .95rem; line-height: 1.6; }
.otd-pullquote em { font-style: normal; color: var(--aps-burgundy); }
.otd-body p { font-size: .9rem; color: #444; line-height: 1.7; margin: 0; }
.otd-facts { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px,1fr)); gap: .65rem; margin: 0; list-style: none; padding: 0; }
.otd-facts div { border: 1px solid #ede9e2; padding: .6rem .75rem; }
.otd-facts dt { font-size: .68rem; text-transform: uppercase; letter-spacing: .07em; color: #aaa; margin-bottom: .15rem; }
.otd-facts dd { font-weight: 600; font-size: .88rem; margin: 0; }
.otd-works { display: grid; grid-template-columns: repeat(auto-fill,minmax(130px,1fr)); gap: .75rem; margin-top: .75rem; }
.otd-work { display: flex; flex-direction: column; }
.otd-work a { display: block; aspect-ratio: 1; overflow: hidden; }
.otd-work img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.otd-work:hover img { transform: scale(1.04); }
.otd-ctas { display: flex; flex-wrap: wrap; gap: .75rem; }
.otd-btn-primary { font-family: var(--aps-f-mono); display: inline-block; background: transparent; border: 1px solid var(--aps-burgundy); color: var(--aps-burgundy); padding: .65rem 1.25rem; font-size: .8rem; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; transition: background .3s, color .3s; }
.otd-btn-primary:hover { background: var(--aps-burgundy); color: #fff; }
.otd-btn-ghost { display: inline-block; border: 1px solid var(--aps-burgundy); color: var(--aps-burgundy); padding: .6rem 1.1rem; font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background .2s, color .2s; }
.otd-btn-ghost:hover { background: var(--aps-burgundy); color: #fff; }

/* --- block --- */

.aps-reimagine { background: #0d0d0d; padding: 3.5rem 0; }
.aps-reimagine .wrap { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }
.reimagine-grid { display: grid; grid-template-columns: 1fr; gap: 2rem; }
@media(min-width:768px){ .reimagine-grid { grid-template-columns: minmax(0,2fr) minmax(0,3fr); align-items: center; } }
.ri-copy .k { font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--aps-gold); margin-bottom: .5rem; font-weight: 600; }
.ri-copy h2 { font-family: var(--aps-f-display); font-weight: 300; font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 0.96; letter-spacing: -0.035em; color: #fff; margin: 0 0 .75rem; }
.ri-copy h2 em { font-style: italic; font-weight: 300; color: #fff; }
.ri-copy p { font-size: .9rem; color: #aaa; line-height: 1.7; margin: 0 0 1.25rem; }
.ri-steps { display: flex; flex-direction: column; gap: .45rem; margin-bottom: 1.25rem; }
.ri-steps div { font-size: .82rem; color: #ccc; }
.ri-steps b { color: var(--aps-gold); margin-right: .4rem; }
.ri-ctas { display: flex; flex-wrap: wrap; gap: .75rem; }
.ri-btn-primary { display: inline-block; background: var(--aps-burgundy); color: var(--aps-cream-2); padding: .7rem 1.35rem; font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background .2s; }
.ri-btn-primary:hover { background: var(--aps-burgundy-2); color: var(--aps-cream-2); }
.ri-btn-ghost { display: inline-block; border: 1px solid rgba(244,236,221,.4); color: var(--aps-cream-3); padding: .65rem 1.1rem; font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; transition: background .2s, border-color .2s; }
.ri-btn-ghost:hover { background: rgba(244,236,221,.1); border-color: rgba(244,236,221,.7); }
.ri-styles { display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem; }
.rs-thumb { position: relative; aspect-ratio: 1; overflow: hidden; background: #1a1a1a; cursor: pointer; }
.rs-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.rs-thumb:hover img { transform: scale(1.05); }
.rs-thumb .rs-name { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(transparent,rgba(0,0,0,.7)); color: #fff; font-size: .78rem; font-weight: 600; padding: .85rem .6rem .45rem; }

/* --- block --- */

.aps-challenge { background: #f8f5ef; padding: 3rem 0; border-top: 1px solid #ede9e2; }
.aps-challenge .wrap { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }
.ch-card { display: grid; grid-template-columns: 1fr; gap: 1.5rem; }
@media(min-width:768px){ .ch-card { grid-template-columns: minmax(0,2fr) minmax(0,3fr); } }
.ch-left .kicker { font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: var(--aps-burgundy); font-weight: 600; margin-bottom: .5rem; }
.ch-left .kicker .dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--aps-burgundy); margin-right: .4rem; vertical-align: middle; animation: blink 1.4s step-end infinite; }
@keyframes blink { 50%{opacity:0;} }
.ch-left h2 { font-family: var(--aps-f-display); font-weight: 300; font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 0.96; letter-spacing: -0.035em; color: var(--aps-ink); margin: 0 0 .65rem; }
.ch-left h2 em { font-style: italic; font-weight: 300; color: var(--aps-burgundy); }
.ch-left p { font-size: .9rem; color: #555; line-height: 1.7; margin: 0 0 1rem; }
.ch-right { background: #fff; border: 1px solid #ede9e2; padding: 1.25rem; display: flex; flex-direction: column; gap: .85rem; }
.ch-q { display: flex; justify-content: space-between; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: #aaa; }
.ch-question { font-size: 1rem; font-weight: 600; line-height: 1.45; color: #1a1a1a; }
.ch-options { display: grid; gap: .5rem; }
.ch-opt { display: flex; align-items: center; justify-content: space-between; padding: .7rem 1rem; border: 1px solid #ddd; background: #fafafa; cursor: pointer; text-align: left; font-size: .88rem; transition: border-color .2s, background .2s; }
.ch-opt:hover { border-color: var(--aps-burgundy); background: #f3ece2; }
.ch-opt .key { font-size: .7rem; font-weight: 700; color: #bbb; background: #f0ece5; padding: .15rem .4rem; border-radius: 2px; }
.ch-foot { display: flex; justify-content: space-between; align-items: center; font-size: .78rem; color: #aaa; }
.ch-foot .submit { font-family: var(--aps-f-mono); display: inline-block; background: transparent; border: 1px solid var(--aps-burgundy); color: var(--aps-burgundy); padding: .5rem .95rem; font-size: .78rem; font-weight: 500; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; transition: background .3s, color .3s; }
.ch-foot .submit:hover { background: var(--aps-burgundy); color: #fff; }

/* --- block --- */

.aps-identify { background: #fff; padding: 3rem 0; border-top: 1px solid #ede9e2; }
.aps-identify .wrap { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }
.aps-identify .sec-head { margin-bottom: 1.25rem; }
.aps-identify .sec-head h2 { font-family: var(--aps-f-display); font-weight: 300; font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 0.96; letter-spacing: -0.035em; color: var(--aps-ink); margin: 0 0 .3rem; }
.aps-identify .sec-head h2 em { font-style: italic; font-weight: 300; color: var(--aps-burgundy); }
.aps-identify .sec-head .meta { font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: #888; }
.id-period { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--aps-burgundy); font-weight: 600; margin-bottom: .75rem; }
.id-prompt { font-size: 1.05rem; font-weight: 600; margin: 0 0 1.25rem; }
.id-prompt em { color: var(--aps-burgundy); font-style: italic; }
.id-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: .75rem; margin-bottom: 1.25rem; }
@media(min-width:600px){ .id-grid { grid-template-columns: repeat(4,1fr); } }
.id-opt { cursor: default; }
.id-frame { aspect-ratio: 1; overflow: hidden; background: #eee; position: relative; }
.id-art { width: 100%; height: 100%; background-size: cover; background-position: center; pointer-events: none; }
.id-letter { display: flex; align-items: center; justify-content: center; font-size: .85rem; font-weight: 700; background: #f0ece5; color: var(--aps-burgundy); height: 2rem; }
.id-answer-reveal { display: none; background: rgba(135,93,42,.92); color: #fff; position: absolute; inset: 0; align-items: center; justify-content: center; font-size: .82rem; font-weight: 600; text-align: center; padding: .5rem; }
.aps-identify.is-revealed .id-opt[data-correct="true"] .id-answer-reveal { display: flex; }
.id-foot { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .75rem; font-size: .82rem; color: #888; }
.id-reveal-btn { display: inline-block; background: var(--aps-burgundy); color: #fff; padding: .6rem 1.15rem; font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; border: none; transition: background .2s; }
.id-reveal-btn:hover { background: #6f4a22; }

/* --- block --- */

.aps-articles3 { background: #faf8f5; padding: 3rem 0; border-top: 1px solid #ede9e2; }
.aps-articles3 .wrap { max-width: 1160px; margin: 0 auto; padding: 0 1.25rem; }
.aps-articles3 .sec-head { margin-bottom: 1.75rem; }
.aps-articles3 .sec-head h2 { font-family: var(--aps-f-display); font-weight: 300; font-size: clamp(2rem, 4.5vw, 3.5rem); line-height: 0.96; letter-spacing: -0.035em; color: var(--aps-ink); margin: 0 0 .35rem; }
.aps-articles3 .sec-head h2 em { font-style: italic; font-weight: 300; color: var(--aps-burgundy); }
.aps-articles3 .sec-head .meta { font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: #888; }
.a3-grid { display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
@media(min-width:600px){ .a3-grid { grid-template-columns: repeat(3,1fr); } }
.a3-card { display: flex; flex-direction: column; text-decoration: none; color: inherit; border: 1px solid #ede9e2; background: #fff; transition: box-shadow .2s; }
.a3-card:hover { box-shadow: 0 4px 20px rgba(0,0,0,.08); }
.a3-card .cover { width: 100%; aspect-ratio: 1 / 1; background-size: cover; background-position: center; position: relative; overflow: hidden; }
.a3-card .cat { position: absolute; top: .65rem; left: .65rem; background: var(--aps-burgundy); color: #fff; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; padding: .2rem .55rem; }
.a3-card h3 { font-size: .95rem; font-weight: 600; margin: .75rem .85rem .4rem; line-height: 1.35; }
.a3-card h3 em { color: var(--aps-burgundy); font-style: italic; }
.a3-card p { font-size: .82rem; color: #666; line-height: 1.6; margin: 0 .85rem .75rem; flex: 1; }
.a3-card .more { display: block; font-size: .78rem; font-weight: 600; color: var(--aps-burgundy); text-transform: uppercase; letter-spacing: .06em; margin: auto .85rem .85rem; padding-top: .5rem; border-top: 1px solid #ede9e2; }

/* === APS hompagetest — utility classes === */
.aps-portrait-top { object-position: center top; }
.link-inherit { color: inherit; text-decoration: none; }
.link-inherit:hover { color: inherit; }

/* === 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 (allpaintingsstore) === */
.widget-mov-4__name {
                padding: 0.65rem 0.75rem;
                font-weight: 700;
                font-size: 1.1rem;
                line-height: 1.2;
              }
.widget-quiz-artwork__opt label { cursor: pointer; }
.widget-quiz-artwork__img-inner { position: relative; width: 100%; height: 100%; }
.widget-quiz-artwork__caption {
                font-size: 0.78rem;
                font-weight: 700;
                line-height: 1.3;
                text-align: left;
                pointer-events: none;
                padding: 0.5rem 0.65rem 0.55rem;
              }
.widget-quiz-artwork__caption .widget-quiz-artwork__cap-artist {
                font-size: 0.72rem;
                font-weight: 600;
                opacity: 0.95;
                margin-top: 0.1rem;
              }


/* ===================================================== */
/* 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): APS — warm paper page, burgundy sidebar, gold accent on dark */
/* ===================================================== */
/* 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(--aps-bg, #F6F4EF);
    --up-profile-photo-input-bg: var(--aps-paper, #FBFAF6);
    --up-profile-photo-input-border: var(--aps-rule, #DCD7CB);
    --up-profile-photo-input-ink: var(--aps-ink, #161310);
    --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(--aps-paper, #FBFAF6);
    padding: 15px 20px;
    box-shadow: 0px 0px 10px 0px rgb(22 19 16 / 10%);
    -webkit-box-shadow: 0px 0px 10px 0px rgb(22 19 16 / 10%);
    -moz-box-shadow: 0px 0px 10px 0px rgb(22 19 16 / 10%);
    margin-left: 320px;
}
h3.user_heading_text {
    color: var(--aps-ink, #161310);
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    font-family: var(--font-title);
    margin-bottom: 0px;
}
p.user_title_text {
    color: var(--aps-ink, #161310);
    font-size: 14px;
    font-weight: 400;
    opacity: 0.6;
    line-height: 22px;
    margin-bottom: 0px;
}
.sidebar_box {
    background: var(--aps-burgundy, #5B1622);
margin-bottom:0 !important;
border:0 !important;
height:100%;
}
.sidebar_menu_link {
/*     height: 100vh; */
}
.sidebar_profile_section {
    padding: 15px 30px;
    border-bottom: 1px solid #F2E6D833;
    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: #7A1F30;
    border-radius: 10px;
}

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

aside {
    scrollbar-width: thin;
    scrollbar-color: var(--aps-rule, #DCD7CB) var(--aps-burgundy, #5B1622);
}


.image_letter {
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background: #F2E6D840;
    border-radius: 50%;
    color: var(--aps-cream-2, #F2E6D8);
    font-weight: 500;
    font-size: 19.43px;
}
.profile_name {
    color: var(--aps-cream-2, #F2E6D8);
    font-weight: 500;
    font-size: 18px;
    line-height: 26px;
}
.profile_email {
    color: var(--aps-cream-2, #F2E6D8);
    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(232, 201, 168, 0.10);
    border-left: 4px solid var(--aps-gold, #E8C9A8);
}

.sidebar_menu_link li.active a span {
    color: var(--aps-gold, #E8C9A8);
}
/* .sidebar_menu_link li.active a svg {
    color: var(--aps-gold, #E8C9A8) !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(232, 201, 168, 0.10);
}

/* .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(--aps-gold, #E8C9A8);
}
.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(--aps-cream-2, #F2E6D8);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 16px;
}
.sidebar_menu_link li a svg ,
.logout_section ul li a svg
{
    color: var(--aps-cream-2, #F2E6D8) ;
}

.main_section {
}
.favorite_img_card {
    border-right: 1px solid var(--aps-rule, #DCD7CB);
    border-bottom: 1px solid var(--aps-rule, #DCD7CB);
    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(--aps-surcharge, #A8321F);
}
.fav-artist h2 a{
    color: var(--aps-surcharge, #A8321F);
}
.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(--aps-ink, #161310);
    margin: 6px 0px 11px;
    min-height: 38px;
}
.fav-title a{
    color: var(--aps-ink, #161310);
}
.button-dash {
    width: 100%;
    border: 1px solid var(--aps-burgundy);
    border-radius: 0;
    padding: 11px 15px;
    color: var(--aps-burgundy);
    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(--aps-rule, #DCD7CB);
}
.logout_section {
    width: 100%;
    z-index: 99;
    background: var(--aps-burgundy, #5B1622);
}
.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(--aps-cream-2, #F2E6D8);
    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(--aps-ink, #161310);
    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(--aps-rule, #DCD7CB);
}
.date_amount h6 {
    color: var(--aps-ink, #161310);
    font-size: 14px;
    opacity: 0.6;
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 0px;
}
.date_amount p {
    color: var(--aps-ink, #161310);
    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(22 19 16 / 10%);
    -webkit-box-shadow: 0px 0px 10px 0px rgb(22 19 16 / 10%);
    -moz-box-shadow: 0px 0px 10px 0px rgb(22 19 16 / 10%);
    background: var(--aps-paper, #FBFAF6);
}
.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(--aps-rule, #DCD7CB) !important;
}
table thead th {
    background: var(--aps-bg-2, #ECE9E1) !important;
    color: var(--aps-ink, #161310) !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(--aps-paper, #FBFAF6) !important;
    color: var(--aps-ink, #161310) !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(--aps-bg-2, #ECE9E1);
}
.message_section {
 
}

.message_form {
    max-width: 630px;
    /* background: var(--aps-bg-2, #ECE9E1); */
    margin: auto;
}

textarea.form-control:focus {
    background-color:var(--aps-paper, #FBFAF6);
}
    
.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(--aps-ink, #161310);
}
.text-center.sendmsg_textt p {
    font-size: 16px;
    line-height: 24px;
opacity:0.8;
    font-weight: 400;
    font-family: var(--font-body);
    color: var(--aps-ink, #161310);
}
.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(--aps-paper, #FBFAF6);
    resize: vertical;
    background: var(--aps-paper, #FBFAF6);
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(--aps-burgundy-2, #7A1F30);
   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(--aps-cream-2, #F2E6D8);
}
.sendmsg_textt button:hover {
    border: none !important;
color:var(--aps-cream-2, #F2E6D8) !important;
    background: var(--aps-burgundy-2, #7A1F30) !important;

}
/* When textarea is focused, change button color */
.mesg_textarea textarea:focus ~ button {
    background: var(--aps-burgundy);
}
.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(--aps-ink, #161310);
}
.text-center.suceesfulmsg_textt p {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    font-family: var(--font-body);
    color: var(--aps-ink, #161310);
}

.suceesfulmsg_textt button
 {
    padding: 10px 120px;
    border: none;
    background: var(--aps-burgundy);
    font-size: 16px;
    line-height: 24px;
    font-family: var(--font-body);
    font-weight: 500;
    color: var(--aps-cream-2, #F2E6D8);
    text-transform: uppercase;
}
 

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


/* Toggle Button */
.sidebar-toggle {
    background: var(--aps-burgundy-2, #7A1F30);
    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(--aps-burgundy, #5B1622);
    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, #FBFAF6) !important;
    border-radius: 0 !important;
    padding: 12px !important;
    border: 1px solid var(--up-profile-photo-input-border, #C8C2B3) !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(--aps-paper, #FBFAF6);
    border-radius: 0px;
}

.profile-photo-section > label {
    display: block;
    color: var(--aps-ink, #161310);
    position: relative;
    font-weight: 500;
    padding: 0;
    font-size: 16px;
    margin-bottom: 15px;
    text-transform: uppercase;
}.profile-photo-section > label {
    display: block;
    color: var(--aps-ink, #161310);
    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(--aps-bg-2, #ECE9E1);
    border-radius: 0;
}

.profile-photo-circle {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid var(--aps-burgundy);
    box-shadow: 0 4px 10px rgba(22, 19, 16, 0.2);
    margin-bottom: 15px;
}

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

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

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

.btn-delete-photo {
    background: var(--aps-surcharge, #A8321F);
    color: var(--aps-cream-2, #F2E6D8);
    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(--aps-rule, #DCD7CB);
    border-radius: 4px;
    font-size: 14px;
    color: var(--aps-ink, #161310);
}

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


/* user interaction-card  */

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

.header-section {
    background-color: var(--aps-paper, #FBFAF6);
    padding: 12px 20px;
    margin-bottom: 20px;
    width: -webkit-fill-available;
box-shadow: 0px 0px 10px 0px #1613101A;
}
.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(--aps-ink, #161310);
}

.header-section p {
color:var(--aps-ink, #161310);
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(--aps-paper, #FBFAF6);
border:1px solid var(--aps-rule, #DCD7CB);
padding:0;
}
.purchase-card-head {
padding:20px;
border-bottom:1px solid var(--aps-rule, #DCD7CB);
}

.puchase-card-content {
padding:20px;
    flex-wrap: wrap;
gap:20px;
}
.puchase-card-content img {
height:120px;
width:120px;
}
.purchase-card .btn-prev {
color:var(--aps-burgundy);
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;
}
/* ═══════════════════════════════════════
   AllPaintingsStore — Infinite Scroll (/art/infinite_scroll/)
   Scoped via .ais-hero-banner; brand tokens only.
   ═══════════════════════════════════════ */
body:has(.ais-hero-banner) {
  --ais-page: var(--aps-bg);
  --ais-surface: var(--aps-paper);
  --ais-surface-2: var(--aps-bg-2);
  --ais-border: var(--aps-rule);
  --ais-divider: var(--aps-rule);
  --ais-frame-bg: var(--aps-bg-2);
  --ais-ink: var(--aps-ink);
  --ais-ink-2: var(--aps-ink-2);
  --ais-ink-3: var(--aps-ink-3);
  --ais-faint: var(--aps-ink-3);
  --ais-accent: var(--aps-burgundy);
  --ais-accent-dark: var(--aps-burgundy-ink);
  --ais-label-accent: var(--aps-burgundy);
  --ais-on-accent: var(--aps-cream-2);
  --ais-shadow-rgb: 22 19 16;
  --ais-accent-rgb: 91 22 34;
  --ais-f-heading: var(--aps-f-display);
  --ais-f-title: var(--aps-f-text);
  --ais-f-body: var(--aps-f-text);
  --ais-f-label: var(--aps-f-text);
  --ais-f-mono: var(--aps-f-mono);
  --ais-heading-weight: 600;
  --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: aps-ais-reveal-up .9s cubic-bezier(.16, 1, .3, 1) forwards;
}

@keyframes aps-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: aps-ais-draw-line 1.1s 1s cubic-bezier(.16, 1, .3, 1) forwards;
}

@keyframes aps-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: aps-ais-pin-in .8s cubic-bezier(.16, 1, .3, 1) both;
}

@keyframes aps-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: aps-ais-breathe 14s ease-in-out infinite alternate;
}

@keyframes aps-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: aps-ais-fact-in .5s cubic-bezier(.16, 1, .3, 1) forwards;
}

@keyframes aps-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: aps-ais-heart-pop .45s cubic-bezier(.34, 1.56, .64, 1);
}

@keyframes aps-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: aps-ais-shine .55s ease-out forwards;
}

@keyframes aps-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: aps-ais-feed-out .35s ease forwards;
}

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

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

@keyframes aps-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 — APS (burgundy/cream) ===== */
.art_info_section .historicle_box,
.art_info_section .historicle_box a { color: var(--aps-ink-2, #4A4641); }
.art_info_section .historicle_box h1,
.art_info_section .historicle_box h2,
.art_info_section .historicle_box h3 { color: var(--aps-ink, #161310); }
.artinfo_top h4,
.historicle_box.artwork-info-infobox .art-info-page-title { color: var(--aps-ink, #161310); }
.art_info_details,
.historicle_box.artwork-info-infobox { background: var(--aps-cream, #E8DFC9); border-color: var(--aps-rule, #DCD7CB); box-shadow: 0 4px 16px rgba(22,19,16,0.08); }
.art_info_inner { background: var(--aps-cream-3, #F4ECDD); }
.art_info_inner h4 { color: var(--aps-burgundy, #5B1622); text-transform: none; }
.art_info_inner p { color: var(--aps-ink-2, #4A4641); }
.artwork-info-meta-link { color: var(--aps-ink-2, #4A4641); }
.artwork-info-meta-link:hover { color: var(--aps-burgundy, #5B1622); }
.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(--aps-burgundy, #5B1622); }


/* ═══════════════════════════════════════════════════════════════════
   APS — AllPaintingsStore — Similar artworks browse (/art/similar/<slug>/)
   Scoped to .artwork-similar-page — gallery-minimal tokens
   ═══════════════════════════════════════════════════════════════════ */
.search_sec.artwork-similar-page {
  --aps-bg:      #ffffff;
  --aps-ink:     #1a1a1a;
  --aps-ink-2:   #6e6c68;
  --aps-ink-3:   #a3a09b;
  --aps-line:    #e6e6e6;
  --aps-line-2:  #d6d6d6;
  --aps-band:    #f5f5f5;
  --aps-slot:    #eeeeee;
  --aps-accent:  #5B1622;
  --aps-accent-dark: #2E0B12;
  --aps-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(--aps-ink);
  font-family: var(--aps-body);
}
.search_sec.artwork-similar-page .Showing_text .form-control,
.search_sec.artwork-similar-page .sorting_content select.custom-select {
  background-color: var(--aps-bg) !important;
  border: 1px solid var(--aps-line-2) !important;
  color: var(--aps-ink) !important;
  border-radius: 2px;
}

/* Criteria sidebar */
.search_sec.artwork-similar-page .filter-panel {
  background-color: var(--aps-band);
  border: 1px solid var(--aps-line);
  border-radius: 2px;
  font-family: var(--aps-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(--aps-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-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(--aps-ink);
}
.search_sec.artwork-similar-page .colors_list li a {
  display: block;
  padding: 10px 12px !important;
  font-family: var(--aps-body);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--aps-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(--aps-accent) !important;
  background-color: var(--aps-slot);
}
.search_sec.artwork-similar-page .colors_list li a.active {
  color: var(--aps-accent) !important;
  font-weight: 600;
  background-color: var(--aps-slot);
}

/* Grid — catalog cards */
.search_sec.artwork-similar-page .custom_search .row > [class*="col-"] {
  border-color: var(--aps-line) !important;
}
.search_sec.artwork-similar-page .custom_search .search_card {
  background-color: var(--aps-bg);
  border-color: var(--aps-line) !important;
  transition: background-color 0.2s ease;
}
.search_sec.artwork-similar-page .search_card:hover {
  background-color: var(--aps-band) !important;
}
.search_sec.artwork-similar-page .hover_visible {
  background: var(--aps-band) !important;
  border-bottom-color: var(--aps-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(--aps-body);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-align: left;
  color: var(--aps-accent) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
.search_sec.artwork-similar-page .search_card .art-artist h2 a:hover {
  color: var(--aps-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(--aps-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;
  text-align: right;
  flex-shrink: 0;
  opacity: 1;
  color: var(--aps-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(--aps-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  color: var(--aps-ink) !important;
  text-decoration: none;
  transition: color 0.15s ease;
}
.search_sec.artwork-similar-page .search_card .art-title a:hover {
  color: var(--aps-accent) !important;
}
.search_sec.artwork-similar-page .search_card .hover_visible p {
  font-family: var(--aps-body);
  font-size: 13px;
  font-weight: 300;
  font-style: normal;
  line-height: 1.55;
  text-align: left;
  color: var(--aps-ink-2) !important;
  opacity: 1;
  margin-bottom: 24px;
}
.search_sec.artwork-similar-page .search_card .hover_visible p a {
  color: var(--aps-accent) !important;
}
.search_sec.artwork-similar-page .search_card .addToCart,
.search_sec.artwork-similar-page .search_card .addToCart.added {
  background: var(--aps-ink) !important;
  color: #ffffff !important;
  font-family: var(--aps-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(--aps-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(--aps-bg);
  border: 1px solid var(--aps-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(--aps-slot) !important;
  border-color: var(--aps-accent) !important;
}

/* ===================================================================
   Ecard (artworks/artwork_ecard.html) — APS AllPaintingsStore
   Cream editorial + burgundy CTA, Familjen Grotesk, tight radius.
   =================================================================== */
.ecard-page .e_card_section .e_card_form,
.ecard-page .e_card_form {
    background: var(--aps-paper, #FBFAF6) !important;
    border: 1px solid var(--aps-rule, #DCD7CB) !important;
    border-radius: 2px;
}
.ecard-page .e_card_form .form_heading {
    font-family: var(--font-title, 'Familjen Grotesk', sans-serif);
    color: var(--aps-ink, #161310);
}
.ecard-page .e_card_form .form_content {
    color: var(--aps-ink-2, #4A4641);
}
.ecard-page .e_card_form .form-control {
    background: #ffffff;
    border: 1px solid var(--aps-rule, #DCD7CB);
    color: var(--aps-ink, #161310);
    border-radius: 2px;
}
.ecard-page .e_card_form .form-control:focus {
    border-color: var(--aps-burgundy, #5B1622);
    box-shadow: none;
}
.ecard-page .form-top_heading {
    background: var(--aps-bg-2, #ECE9E1) !important;
    border: 1px solid var(--aps-rule, #DCD7CB);
}
.ecard-page .floating_right_heading h5,
.ecard-page .floating_right_heading p {
    color: var(--aps-ink-2, #4A4641);
}
.ecard-page .add_tocart_btn button {
    background: var(--aps-burgundy, #5B1622);
    color: var(--aps-cream-3, #F4ECDD);
    border: 1px solid var(--aps-burgundy, #5B1622);
    border-radius: 2px;
    font-family: var(--font-title, 'Familjen Grotesk', sans-serif);
    letter-spacing: .03em;
}
.ecard-page .add_tocart_btn button:hover {
    background: var(--aps-burgundy-2, #7A1F30);
    border-color: var(--aps-burgundy-2, #7A1F30);
    color: var(--aps-cream-3, #F4ECDD);
}
.ecard-page .e-card_img_upload_section {
    background: var(--aps-paper, #FBFAF6) !important;
    border: 1px solid var(--aps-rule, #DCD7CB) !important;
}
.ecard-page .e-card_img_upload_section h5 {
    font-family: var(--font-title, 'Familjen Grotesk', sans-serif);
    color: var(--aps-ink, #161310);
}

/* ===== Artwork catalog list card — AllPaintingsStore (UI Kit aligned) ===== */
/*
   Scope: .search_sec.catalog-list-page  and  .search_sec.artwork-list-page
   Tokens: --aps-paper, --aps-bg, --aps-bg-2, --aps-ink, --aps-ink-2, --aps-ink-3,
           --aps-rule, --aps-rule-2, --aps-burgundy, --aps-burgundy-2,
           --aps-cream-2, --aps-cream-3,
           --aps-f-display (Bricolage Grotesque), --aps-f-text (Familjen Grotesk),
           --aps-f-mono (JetBrains Mono)
   All selectors are double-prefixed to avoid collision with ~95 other .search_card pages.
   Pure CSS — no HTML/class-name changes.
*/

/* ── Convenience scope alias ──────────────────────────────────────────────── */
.search_sec.catalog-list-page  .custom_search .search_card,
.search_sec.artwork-list-page  .custom_search .search_card {
    background: var(--aps-paper, #FBFAF6);
    border: 1px solid var(--aps-rule, #DCD7CB) !important;
    border-bottom: 1px solid var(--aps-rule, #DCD7CB) !important;
    border-radius: 2px;
    overflow: visible;   /* hover panel floats below the card (see __hover) — the
                            image zoom is still clipped by __media's overflow:hidden */
    position: relative;
    transition: border-color 0.22s ease, transform 0.22s ease;
}

/* ── Card hover: lift + border intensify (no drop shadow per UI Kit rules) ── */
.search_sec.catalog-list-page  .custom_search .search_card:hover,
.search_sec.artwork-list-page  .custom_search .search_card:hover {
    background: var(--aps-paper, #FBFAF6) !important;
    border-color: var(--aps-rule-2, #C8C2B3) !important;
    transform: translateY(-3px);
}

/* ── Column border (grid gutters) ─────────────────────────────────────────── */
.search_sec.catalog-list-page  .custom_search .row > [class*="col-"],
.search_sec.artwork-list-page  .custom_search .row > [class*="col-"] {
    border: none !important;
    margin-bottom: 28px;   /* vertical breathing room between card rows */
}

/* ── Image container ──────────────────────────────────────────────────────── */
.search_sec.catalog-list-page  .custom_search .search_card .search_img,
.search_sec.artwork-list-page  .custom_search .search_card .search_img {
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--aps-rule, #DCD7CB);
    background: var(--aps-bg-2, #ECE9E1);
}

/* ── 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: 14px 16px 12px;
    background: var(--aps-paper, #FBFAF6);
}

/* ── Artist row: name + year on one line ─────────────────────────────────── */
.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;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 5px;
}

/* Artist name — Bricolage Grotesque semi-bold, ink, narrow */
.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(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    letter-spacing: -0.005em !important;
    font-variation-settings: "wdth" 90 !important;
    text-transform: none !important;
    color: var(--aps-ink, #161310) !important;
    text-decoration: none;
    margin: 0;
    flex: 1 1 auto;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.15s 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(--aps-burgundy, #5B1622) !important;
}

/* Year — JetBrains Mono, tertiary ink, no underline animation */
.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(--aps-f-mono, "JetBrains Mono", monospace) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--aps-ink-3, #8A857D) !important;
    white-space: nowrap;
    flex-shrink: 0;
    text-decoration: none;
}

/* ── Artwork title ────────────────────────────────────────────────────────── */
.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(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 300 !important;
    font-style: italic !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.008em !important;
    font-variation-settings: "wdth" 92 !important;
    color: var(--aps-ink-2, #4A4641) !important;
    text-decoration: none;
    display: block;
    transition: color 0.15s 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(--aps-ink, #161310) !important;
}

/* ── Hover overlay panel ──────────────────────────────────────────────────── */
/* Preserve global display:none / display:block reveal — just restyle the surface.
   The panel floats absolutely below the card, so it must read as a seamless
   extension: same paper background + matching side/bottom border as the card. */
.search_sec.catalog-list-page  .custom_search .search_card .hover_visible,
.search_sec.artwork-list-page  .custom_search .search_card .hover_visible {
    position: absolute;
    top: 100%;
    left: -1px;
    width: calc(100% + 2px);
    box-sizing: border-box;
    background: var(--aps-paper, #FBFAF6) !important;
    border: 1px solid var(--aps-rule-2, #C8C2B3);
    border-top: 1px solid var(--aps-rule, #DCD7CB);
    border-radius: 0 0 2px 2px;
    /* 31px = card padding (15px) + searchCard_body padding (16px); keeps the
       overlay full-width to the card frame while aligning the snippet text
       with the resting-state artist/title text. */
    padding: 12px 31px 14px;
    margin-top: 0;
    z-index: 1;
}
/* On hover, the card's own bottom border merges into the panel's top border */
.search_sec.catalog-list-page  .custom_search .search_card:hover,
.search_sec.artwork-list-page  .custom_search .search_card:hover {
    z-index: 20;
    border-bottom-color: transparent !important;
}

/* Snippet text inside hover overlay */
.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(--aps-f-text, "Familjen Grotesk", sans-serif) !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 1.55 !important;
    color: var(--aps-ink-2, #4A4641) !important;
    margin-bottom: 12px;
}
.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(--aps-burgundy, #5B1622) !important;
}

/* ── card_bottom: CTA + favourite side by side ───────────────────────────── */
.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: 8px;
    margin-top: 4px;
}

/* ── addToCart — burgundy 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: 6px !important;
    height: 36px !important;
    padding: 0 14px !important;
    background: var(--aps-burgundy, #5B1622) !important;
    color: var(--aps-cream-2, #F2E6D8) !important;
    font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 500 !important;
    font-size: 12px !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    font-variation-settings: "wdth" 90 !important;
    border: none !important;
    border-radius: 2px !important;
    width: auto !important;
    min-width: 0 !important;
    transition: background-color 0.18s ease !important;
    text-decoration: none;
    white-space: nowrap;
}
.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(--aps-burgundy-2, #7A1F30) !important;
    color: var(--aps-cream-2, #F2E6D8) !important;
}

/* Price display inside addToCart — JetBrains Mono for the number */
.search_sec.catalog-list-page  .custom_search .search_card .product-price-display,
.search_sec.artwork-list-page  .custom_search .search_card .product-price-display {
    font-family: var(--aps-f-mono, "JetBrains Mono", monospace) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    color: inherit !important;
}

/* ── Favourite control ────────────────────────────────────────────────────── */
.search_sec.catalog-list-page  .custom_search .search_card .fav_group,
.search_sec.artwork-list-page  .custom_search .search_card .fav_group {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--aps-paper, #FBFAF6);
    border: 1px solid var(--aps-rule-2, #C8C2B3) !important;
    border-radius: 50%;
    flex-shrink: 0;
    transition: border-color 0.18s ease, background-color 0.18s ease;
}
.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(--aps-burgundy, #5B1622) !important;
    border-color: var(--aps-burgundy, #5B1622) !important;
}

.search_sec.catalog-list-page  .custom_search .search_card .fav_toggle,
.search_sec.artwork-list-page  .custom_search .search_card .fav_toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    text-decoration: none;
}

/* Unfav icon: burgundy tint for clear visibility; Fav icon: cream on hover (handled by .fav_group bg) */
.search_sec.catalog-list-page  .custom_search .search_card .unfav_icon,
.search_sec.artwork-list-page  .custom_search .search_card .unfav_icon {
    width: 14px;
    height: 14px;
    opacity: 1;
    /* tint the light SVG stroke to brand burgundy so the heart is clearly visible */
    filter: brightness(0) saturate(100%) invert(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
    transition: opacity 0.18s ease, filter 0.18s ease;
}
.search_sec.catalog-list-page  .custom_search .search_card .fav_group:hover .unfav_icon,
.search_sec.artwork-list-page  .custom_search .search_card .fav_group:hover .unfav_icon {
    opacity: 1;
    filter: brightness(10); /* icon becomes white on burgundy bg */
}
.search_sec.catalog-list-page  .custom_search .search_card .fav_icon,
.search_sec.artwork-list-page  .custom_search .search_card .fav_icon {
    width: 14px;
    height: 14px;
    /* burgundy-tinted at rest so the saved heart is visible on the cream circle */
    filter: brightness(0) saturate(100%) invert(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
    transition: filter 0.18s ease;
}
.search_sec.catalog-list-page  .custom_search .search_card .fav_group:hover .fav_icon,
.search_sec.artwork-list-page  .custom_search .search_card .fav_group:hover .fav_icon {
    filter: brightness(10); /* white on burgundy hover bg */
}

/* ── Suppress the global center-out underline on image links inside cards ─── */
.search_sec.catalog-list-page  .custom_search .search_card .artwork-grid-img-link::after,
.search_sec.artwork-list-page  .custom_search .search_card .artwork-grid-img-link::after {
    content: none !important;
}
/* ===== /Artwork catalog list card — AllPaintingsStore ===== */

/* =====================================================
   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(--aps-ink, #161310);
}
.reproduction_main_page .historicle_box a,
.adc-buy-page-section .historicle_box a {
    color: var(--aps-accent, #5B1622);
}

/* ============================================================
   Article detail page (article_detail.html) — AllPaintingsStore
   Overrides the brand-neutral beige structure in global-custom
   with APS tokens: warm paper, burgundy accent, Familjen Grotesk.
   Scoped under .article_main_page so artwork/artist/museum pages
   are unaffected.
   ============================================================ */

/* Keyword tag pills */
.article_main_page .art_his_text {
  background: var(--aps-cream, #E8DFC9);
  color: var(--aps-burgundy, #5B1622);
  font-family: var(--aps-f-text, var(--font-body));
  letter-spacing: 0.04em;
}
.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(--aps-ink, #161310);
  font-family: var(--aps-f-text, var(--font-title));
}
.article_main_page .taggart {
  color: var(--aps-ink-2, #4A4641);
}

/* Body copy + headings + links */
.article_main_page .historicle_box,
.article_main_page .historicle_box p {
  color: var(--aps-ink-2, #4A4641);
}
.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(--aps-ink, #161310);
  font-family: var(--aps-f-text, var(--font-title));
}
.article_main_page .historicle_box a {
  color: var(--aps-accent, #5B1622);
}
.article_main_page .historicle_box a:hover {
  color: var(--aps-burgundy-2, #7A1F30);
}

/* Sidebar section headings */
.article_main_page .side_headings {
  color: var(--aps-ink-2, #4A4641);
}

/* Table of contents links */
.article_main_page .tableContent .nav-link {
  color: var(--aps-ink-2, #4A4641);
}
.article_main_page .tableContent li.nav-item {
  border-left-color: var(--aps-rule, #DCD7CB);
}
.article_main_page .tableContent .nav-pills .nav-link.active,
.article_main_page .tableContent .nav-pills .show > .nav-link {
  color: var(--aps-ink, #161310);
  border-left: 2px solid var(--aps-burgundy, #5B1622) !important;
}

/* Related-artworks sidebar */
.article_main_page .related_artwork_box .vincent_color,
.article_main_page .related_artwork_box .vincent_color a {
  color: var(--aps-accent, #5B1622);
}
.article_main_page .related_artwork_box p a {
  color: var(--aps-ink-2, #4A4641);
}
.article_main_page .related_artwork_box p a:hover {
  color: var(--aps-ink, #161310);
}

/* Related-articles list */
.article_main_page .related_aricle_box {
  border-bottom-color: var(--aps-rule, #DCD7CB);
}
.article_main_page .related_aricle_box h4,
.article_main_page .related_aricle_box h4 a {
  color: var(--aps-ink, #161310);
}
.article_main_page .related_aricle_box p {
  color: var(--aps-ink-2, #4A4641);
}
.article_main_page .explore_techniques,
.article_main_page .explore_techniques a {
  color: var(--aps-burgundy, #5B1622);
}
/* ===== END Article detail page — AllPaintingsStore ===== */

/* ===== TOP 100 PAGES (artists / artworks / museums / articles) ===== */
/* AllPaintingsStore identity: warm paper, deep burgundy accent, 3 fonts
   (Bricolage display / Familjen text / JetBrains mono), 2px radius,
   hairline rules, hover-lift instead of drop shadows. All colors come from
   the brand --aps-* variables defined in :root. */

/* --- Brand palette → --top100-* tokens (inherit into all 3 components) --- */
.top100-artist-grid,
.top100-artwork-list,
.top100-listing {
  --top100-card-bg:     var(--aps-paper, #FBFAF6);
  --top100-card-border: var(--aps-rule, #DCD7CB);
  --top100-ink:         var(--aps-ink, #161310);
  --top100-muted:       var(--aps-ink-3, #8A857D);
  --top100-accent:      var(--aps-burgundy, #5B1622);
  --top100-rank-color:  rgba(91, 22, 34, 0.07); /* faint burgundy ghost number */
  --top100-card-radius: 2px;
}

/* ───────────────────────────────────────────────────────────────────────────
   A) ARTISTS portrait grid  (/en/aps/artists/top100/)
   ─────────────────────────────────────────────────────────────────────────── */
.top100-artist-card {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.top100-artist-card:hover {
  transform: translateY(-3px);
  border-color: var(--aps-rule-2, #C8C2B3);
}
/* Circular portrait — hairline ring, warm placeholder */
.top100-artist-card__photo {
  border: 1px solid var(--aps-rule, #DCD7CB);
  background: var(--aps-bg-2, #ECE9E1);
  transition: border-color 0.2s ease;
}
.top100-artist-card:hover .top100-artist-card__photo {
  border-color: var(--aps-burgundy, #5B1622);
}
/* Name — Bricolage display, narrowed width */
.top100-artist-card__name,
.top100-artist-card__name a {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 600;
  letter-spacing: -0.01em;
  font-variation-settings: "wdth" 90;
  color: var(--aps-ink, #161310);
  transition: color 0.15s ease;
}
.top100-artist-card__name a:hover {
  color: var(--aps-burgundy, #5B1622);
}
/* Description — Familjen text, secondary ink */
.top100-artist-card__desc {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-weight: 400;
  color: var(--aps-ink-2, #4A4641);
}

/* ───────────────────────────────────────────────────────────────────────────
   B) ARTWORKS zigzag gallery  (/en/aps/art/top100/)
   ─────────────────────────────────────────────────────────────────────────── */
/* Giant background rank number — light display, ghost burgundy */
.top100-artwork-card__rank {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 300;
  letter-spacing: -0.04em;
  font-variation-settings: "wdth" 80;
  color: var(--top100-rank-color);
}
/* Hover box — paper surface, hairline border, lift (no shadow) */
.top100-artwork-card__inner {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  transition: transform 0.25s ease, border-color 0.25s ease;
}
.top100-artwork-card:hover .top100-artwork-card__inner {
  transform: translateY(-3px);
  border-color: var(--aps-burgundy-2, #7A1F30);
}
.top100-artwork-card__photo {
  border-radius: 2px;
  background: var(--aps-bg-2, #ECE9E1);
}
/* Framed variant — warm dark "frame" edge */
.top100-artwork-card__photo--framed {
  border: 8px solid var(--aps-burgundy-ink, #2E0B12);
  border-radius: 2px;
}
/* Meta block revealed on hover */
.top100-artwork-card__meta {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622);
}
.top100-artwork-card__artist {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 600;
  letter-spacing: -0.005em;
  font-variation-settings: "wdth" 90;
  color: var(--aps-ink, #161310);
}
.top100-artwork-card__year {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
}
.top100-artwork-card__title {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 300;
  font-style: italic;
  letter-spacing: -0.008em;
  color: var(--aps-ink-2, #4A4641);
}

/* ───────────────────────────────────────────────────────────────────────────
   C) MUSEUMS + ARTICLES listing  (reuses .search_card under .top100-listing)
   Scoped overrides only — never touches bare .search_card.
   ─────────────────────────────────────────────────────────────────────────── */
.top100-listing .search_card {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: 2px;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.top100-listing .search_card:hover {
  background: var(--aps-paper, #FBFAF6) !important;
  border-color: var(--aps-rule-2, #C8C2B3) !important;
  transform: translateY(-3px);
}
.top100-listing .search_card.top100-listing__card:not(:hover) {
  border-bottom-color: transparent !important;
}
.top100-listing .search_img img {
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
  background: var(--aps-bg-2, #ECE9E1);
}
/* Artist / museum name row — Bricolage display */
.top100-listing .art-artist h2,
.top100-listing .art-artist h2 a {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em !important;
  font-variation-settings: "wdth" 90 !important;
  color: var(--aps-ink, #161310) !important;
}
.top100-listing .art-artist h2 a:hover {
  color: var(--aps-burgundy, #5B1622) !important;
}
/* Title — italic display */
.top100-listing .art-title,
.top100-listing .art-title a {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
  font-weight: 300 !important;
  font-style: italic !important;
  letter-spacing: -0.008em !important;
  color: var(--aps-ink-2, #4A4641) !important;
  transition: color 0.15s ease;
}
.top100-listing .art-title a:hover {
  color: var(--aps-burgundy, #5B1622) !important;
}
/* addToCart — burgundy primary button (UI Kit .btn-primary) */
.top100-listing .addToCart,
.top100-listing .addToCart.added {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  height: 36px !important;
  padding: 0 14px !important;
  background: var(--aps-burgundy, #5B1622) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  font-variation-settings: "wdth" 90 !important;
  border: none !important;
  border-radius: 2px !important;
  transition: background-color 0.18s ease !important;
  white-space: nowrap;
}
.top100-listing .addToCart:hover {
  background: var(--aps-burgundy-2, #7A1F30) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
}
/* Articles variant: no cart button, lead with editorial title */
.top100-listing--articles .art-title,
.top100-listing--articles .art-title a {
  font-style: normal !important;
  font-weight: 600 !important;
  color: var(--aps-ink, #161310) !important;
}
/* Hover panel — match article_list card frame (full box, aligned sides) */
.top100-listing .search_card.top100-listing__card .searchCard_body {
  padding: 14px 16px 12px;
  background: var(--aps-paper, #FBFAF6);
}
.top100-listing .search_card.top100-listing__card .searchCard_body::after {
  background: var(--aps-rule, #DCD7CB);
}
.top100-listing .search_card.top100-listing__card .hover_visible {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  left: -1px;
  width: calc(100% + 2px);
  padding: 0;
}
.top100-listing .search_card.top100-listing__card .hover_visible .card_content {
  padding: 14px 20px 16px;
}
.top100-listing .search_card.top100-listing__card .hover_visible p {
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--aps-ink-2, #4A4641);
  margin: 0 0 12px;
}
/* ===== END TOP 100 PAGES — AllPaintingsStore ===== */

/* ===== fts_search — model type badge (APS) ===== */
/* Overrides the global default to match the APS UI Kit overlay-tag idiom
   (.ship-tag / .frame-tag): burgundy fill, cream text-on-burgundy, mono
   uppercase micro-label, brand 2px radius. Inherits absolute top/left 10px. */
.search_sec.fts-search-page .search_card_model_badge {
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-3, #F4ECDD);
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 4px 9px;
  border-radius: var(--w-radius, 2px);
}
.search_sec.fts-search-page .search_card_model_badge a {
  color: var(--aps-cream-3, #F4ECDD);
}

/* ===== artwork-catalog-card (catalog list grid card) ===== */
/* Dedicated, self-contained styling for the catalog list grid card via the
   long companion classes. Aligned to the APS UI Kit: warm "paper" surface,
   hairline rule borders, 2px radius, NO drop shadow (hover = lift + border),
   Bricolage Grotesque display type (narrow width axis), Familjen Grotesk body,
   JetBrains Mono micro-labels, and the single deep burgundy accent used
   sparingly (links, the buy button, the favourite-active state).
   Scoped under .custom_search + the long classes so it wins the cascade over
   the older shared .search_card rules. Tokens only — no hardcoded colours.
   Tokens used: --aps-paper, --aps-bg-2, --aps-rule, --aps-rule-2,
   --aps-ink, --aps-ink-2, --aps-ink-3, --aps-burgundy, --aps-burgundy-2,
   --aps-cream-2, --aps-cream-3, --aps-f-display, --aps-f-text, --aps-f-mono,
   --w-radius. */

/* ── Card root: paper surface, hairline border, 2px radius, hover lift ────── */
.custom_search .artwork-catalog-card {
    background: var(--aps-paper, #FBFAF6) !important;
    border: 1px solid var(--aps-rule, #DCD7CB) !important;
    border-radius: var(--w-radius, 2px) !important;
    overflow: visible;   /* let the hover panel float BELOW the card without being
                            clipped; the image zoom is clipped by __media's own
                            overflow:hidden */
    position: relative;
    display: flex;
    flex-direction: column;
    transition: border-color 0.22s ease, transform 0.22s ease;
}
.custom_search .artwork-catalog-card:hover {
    border-color: var(--aps-rule-2, #C8C2B3) !important;
    transform: translateY(-3px);
    z-index: 20;   /* lift the hovered card above later cards so its absolute hover
                      panel (which floats below, over the next row) isn't painted
                      under them — the transform makes the card a stacking context,
                      so the panel's own z-index can't escape it. */
}

/* ── Media wrapper: warm placeholder fill, hairline base rule, clip zoom ──── */
.custom_search .artwork-catalog-card .artwork-catalog-card__media {
    position: relative;
    overflow: hidden;
    background: var(--aps-bg-2, #ECE9E1);
    border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.custom_search .artwork-catalog-card .artwork-catalog-card__media-link {
    display: block;
    line-height: 0;
}

/* ── Image: quiet zoom on card hover (UI Kit "card hover = subtle move") ──── */
.custom_search .artwork-catalog-card .artwork-catalog-card__image {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.45s ease;
    transform-origin: center;
}
.custom_search .artwork-catalog-card:hover .artwork-catalog-card__image {
    transform: scale(1.05);
}

/* ── Body: artist + title block ──────────────────────────────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__body {
    padding: 14px 16px 12px;
    background: var(--aps-paper, #FBFAF6);
}

/* ── Artist row: name (left) + year (right) on one baseline ──────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__artist {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 5px;
}
/* Artist name — Bricolage Grotesque semi-bold, ink, narrowed width axis */
.custom_search .artwork-catalog-card .artwork-catalog-card__artist h2,
.custom_search .artwork-catalog-card .artwork-catalog-card__artist h2 a {
    font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    letter-spacing: -0.005em !important;
    font-variation-settings: "wdth" 90 !important;
    text-transform: none !important;
    color: var(--aps-ink, #161310) !important;
    text-decoration: none;
    margin: 0;
    flex: 1 1 auto;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.15s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__artist h2 a:hover {
    color: var(--aps-burgundy, #5B1622) !important;
}
/* Year — JetBrains Mono micro-label, tertiary ink, uppercase wide tracking */
.custom_search .artwork-catalog-card .artwork-catalog-card__artist span,
.custom_search .artwork-catalog-card .artwork-catalog-card__artist span a {
    font-family: var(--aps-f-mono, "JetBrains Mono", monospace) !important;
    font-size: 10px !important;
    font-weight: 400 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--aps-ink-3, #8A857D) !important;
    white-space: nowrap;
    flex-shrink: 0;
    text-decoration: none;
}

/* ── Title — light italic Bricolage display, secondary ink ───────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__title,
.custom_search .artwork-catalog-card .artwork-catalog-card__title a {
    font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 300 !important;
    font-style: italic !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.008em !important;
    font-variation-settings: "wdth" 92 !important;
    color: var(--aps-ink-2, #4A4641) !important;
    text-decoration: none;
    display: block;
    transition: color 0.15s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__title a:hover {
    color: var(--aps-ink, #161310) !important;
}

/* ── Hover overlay: revealed on card hover, alt warm band + hairline rule.
      Floats absolutely BELOW the card (top:100% = card's bottom edge) so it
      overlays the row beneath instead of pushing it down. top:100% is explicit
      because, on a column-flex card, an absolute child with top:auto would pin
      to the flex start (= over the image). ── */
.custom_search .artwork-catalog-card .artwork-catalog-card__hover {
    position: absolute;
    top: 100%;
    left: -1px;
    width: calc(100% + 2px);
    margin: 0;
    box-sizing: border-box;
    background: var(--aps-paper, #FBFAF6) !important;   /* match card surface */
    border: 1px solid var(--aps-rule-2, #C8C2B3);
    border-top: 1px solid var(--aps-rule, #DCD7CB);
    border-radius: 0 0 2px 2px;
    padding: 14px 16px 12px;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__content p {
    font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif) !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    line-height: 1.55 !important;
    color: var(--aps-ink-2, #4A4641) !important;
    margin-bottom: 12px;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__content p a {
    color: var(--aps-burgundy, #5B1622) !important;
}

/* ── Footer: buy button + favourite toggle, side by side ─────────────────── */
.custom_search .artwork-catalog-card .artwork-catalog-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 4px;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__cart-group {
    flex: 1 1 auto;
    min-width: 0;
}

/* ── Buy button — UI Kit .btn-primary: burgundy fill, cream text, 2px, mono ─ */
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100%;
    min-height: 36px !important;
    padding: 7px 14px !important;
    background: var(--aps-burgundy, #5B1622) !important;
    border: 1px solid var(--aps-burgundy, #5B1622) !important;
    border-radius: var(--w-radius, 2px) !important;
    font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 500 !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    letter-spacing: 0.1em !important;
    text-align: center !important;
    white-space: normal !important;
    text-transform: uppercase !important;
    color: var(--aps-cream-2, #F2E6D8) !important;
    text-decoration: none !important;
    cursor: pointer;
    transition: background-color 0.18s ease, border-color 0.18s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn:hover {
    background: var(--aps-burgundy-2, #7A1F30) !important;
    border-color: var(--aps-burgundy-2, #7A1F30) !important;
    color: var(--aps-cream-2, #F2E6D8) !important;
}
/* Price — kept legible on the burgundy fill (cream-on-dark) */
.custom_search .artwork-catalog-card .artwork-catalog-card__buy-btn .artwork-catalog-card__price {
    font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: 0.02em !important;
    font-variation-settings: "wdth" 88 !important;
    color: var(--aps-cream-2, #F2E6D8) !important;
}

/* ── Favourite toggle — circular outline icon button, burgundy when active ── */
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-group {
    flex: 0 0 auto;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--aps-rule-2, #C8C2B3) !important;
    border-radius: 50% !important;
    background: var(--aps-paper, #FBFAF6) !important;
    color: var(--aps-burgundy, #5B1622) !important;
    cursor: pointer;
    transition: border-color 0.18s ease, background-color 0.18s ease;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle:hover {
    border-color: var(--aps-burgundy, #5B1622) !important;
    background: var(--aps-bg-2, #ECE9E1) !important;
}
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle img {
    width: 16px;
    height: 16px;
    display: block;
}
/* Active favourite: burgundy fill, cream icon (the rare "this matters" accent) */
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-group.active .artwork-catalog-card__fav-toggle,
.custom_search .artwork-catalog-card .artwork-catalog-card__fav-toggle.active {
    background: var(--aps-burgundy, #5B1622) !important;
    border-color: var(--aps-burgundy, #5B1622) !important;
    color: var(--aps-cream-3, #F4ECDD) !important;
}

/* On the artwork-list cards the legacy .fav_group (further up) is the favourite
   control — a paper circle that fills burgundy on hover with white icons.
   Neutralise the BEM __fav-toggle here so it doesn't stack a second ring inside
   it (the double border). The toggle becomes a transparent icon holder; the
   .fav_group circle stays the single, complete control. */
.search_sec.artwork-list-page  .custom_search .search_card .artwork-catalog-card__fav-toggle,
.search_sec.artwork-list-page  .custom_search .search_card .artwork-catalog-card__fav-toggle:hover {
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
}
/* ===== END artwork-catalog-card — AllPaintingsStore ===== */

/* ===== article_list.html — article list cards (article-list-card) ===== */
/* APS UI-Kit catalogue idiom: warm paper surface, 1px hairline rule, 2px
   radius, NO shadow — hover is a quiet translateY lift + border tint.
   Image zoom on hover, mono uppercase burgundy eyebrow, display title in
   ink with burgundy hover, neutral text excerpt, burgundy PRIMARY button.
   Tokens: --aps-paper/-bg-2/-rule/-rule-2/-ink/-ink-2/-ink-3/-burgundy/
   -burgundy-2/-cream-2/-f-display/-f-text/-f-mono/-w-radius.
   Scoped under .article-list-page; chained page+grid+long-class selectors
   match/exceed global specificity (.custom_search .search_card ... = 0,3,1
   and .search_sec.catalog-list-page ... art-artist h2 a ~ 0,5,2). */

/* Grid spacing — UI Kit card-grid gap rhythm (14–18px). Layout comes from the
   Bootstrap .row>col-* in the markup (same as the sibling catalog lists); the
   container is not a grid, so the gap must be applied as the row's vertical
   gutter (a bare `gap` on a block does nothing). */
.article-list-page .article-list-grid > .row {
  --bs-gutter-y: 18px;
}

/* Card surface — paper, hairline rule, 2px radius, no shadow */
.article-list-page .article-list-grid .article-list-card {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: var(--w-radius, 2px);
  box-shadow: none;
  overflow: visible;
  transition: transform .2s ease, border-color .2s ease;
}
.article-list-page .article-list-grid .article-list-card:hover {
  transform: translateY(-3px);
  border-color: var(--aps-burgundy-2, #7A1F30);
}

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

/* Media — square-ish, warm fill, 2px radius, image zoom on hover */
.article-list-page .article-list-grid .article-list-card__media {
  position: relative;
  overflow: hidden;
  background: var(--aps-bg-2, #ECE9E1);
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.article-list-page .article-list-grid .article-list-card__media-link {
  display: block;
  overflow: hidden;
}
.article-list-page .article-list-grid .article-list-card__img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform .6s ease;
}
.article-list-page .article-list-grid .article-list-card:hover .article-list-card__img {
  transform: scale(1.04);
}

/* Body — generous catalogue padding */
.article-list-page .article-list-grid .article-list-card__body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* Meta eyebrow — mono uppercase burgundy category + muted mono year.
   Uses !important to win over the over-specified global
   .search_sec.catalog-list-page .custom_search .search_card .art-artist h2 a (~0,5,2). */
.article-list-page .article-list-grid .article-list-card__meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}
.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(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace) !important;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622) !important;
  line-height: 1.4;
  margin: 0;
}
.article-list-page .article-list-grid .article-list-card__meta h2 a:hover {
  color: var(--aps-burgundy-2, #7A1F30) !important;
}
.article-list-page .article-list-grid .article-list-card__meta span {
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace);
  font-size: 9.5px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
  white-space: nowrap;
}

/* Title — display family, ink, tight tracking; burgundy on hover.
   Chained selector (0,3,1) matches global .custom_search .search_card .art-title a. */
.article-list-page .article-list-grid .article-list-card__title {
  margin: 0;
}
.article-list-page .article-list-grid .article-list-card__title a {
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 600;
  font-size: 17px;
  line-height: 1.18;
  letter-spacing: -.018em;
  font-variation-settings: "wdth" 90;
  color: var(--aps-ink, #161310);
  transition: color .18s ease;
}
.article-list-page .article-list-grid .article-list-card__title a:hover {
  color: var(--aps-burgundy, #5B1622);
}

.article-list-page .article-list-grid .article-list-card__hover {
  background: transparent;
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-top: 1px solid var(--aps-rule, #DCD7CB);
}

/* Hover panel — excerpt typography in neutral text font */
.article-list-page .article-list-grid .article-list-card__content {
  margin-top: 0;
  padding: 14px 20px 16px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.article-list-page .article-list-grid .article-list-card__content p {
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--aps-ink-2, #4A4641);
  margin: 0;
}

/* Footer / actions */
.article-list-page .article-list-grid .article-list-card__footer {
  margin-top: auto;
  padding-top: 16px;
}
.article-list-page .article-list-grid .article-list-card__actions {
  display: flex;
}

/* Read button — APS PRIMARY: burgundy fill, cream text, 2px, mono-ish caps */
.article-list-page .article-list-grid .article-list-card__read-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  padding: 0 20px;
  border-radius: var(--w-radius, 2px);
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 500;
  font-size: 13px;
  letter-spacing: .06em;
  text-transform: uppercase;
  border: 0;
  transition: background .18s ease;
}
.article-list-page .article-list-grid .article-list-card__read-btn:hover {
  background: var(--aps-burgundy-2, #7A1F30);
  color: var(--aps-cream-2, #F2E6D8);
}
/* ===== END article_list.html — article list cards (AllPaintingsStore) ===== */

/* ===== 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(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace) !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: var(--aps-burgundy, #5B1622) !important;
}

/* ===== article_list.html — horizontal alignment: defeat leaked catalog-list-page
   padding so the hover excerpt/button line up with the resting eyebrow/title.
   The page carries both .catalog-list-page and .article-list-page, so the shared
   catalog rules (0,5,0) force searchCard_body to 16px and hover_visible to 31px.
   These article-scoped selectors are (0,5,0) too and sit later in the file, so
   they win — restoring the article card's intended 20px text inset on BOTH the
   body and the hover panel (whose only inset is its own __content padding). ===== */
.search_sec.article-list-page .custom_search .search_card .article-list-card__body {
  padding: 18px 20px 20px;
}
.search_sec.article-list-page .custom_search .search_card .article-list-card__hover {
  padding: 0;
}

/* ===== list-page filter sidebar + sort (artwork-list-page scope, shared by art/article/artist/museum lists) — APS ===== */

/* Sort chrome — ink text + brand sans */
.search_sec.artwork-list-page .sorting_content,
.search_sec.artwork-list-page .sort_by {
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
}
.search_sec.artwork-list-page .sorting_content select.custom-select {
  background-color: var(--aps-paper, #FBFAF6) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  color: var(--aps-ink, #161310) !important;
  border-radius: var(--w-radius, 2px) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
  font-size: 13px !important;
}

/* Filter panel surface — match group-by sidebar band (--aps-gb-band / --aps-bg-2) */
.search_sec.artwork-list-page .filter-panel {
  background-color: var(--aps-bg-2, #ECE9E1) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: var(--w-radius, 2px) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
}

/* Filter title — mono micro-label + CLEAR ALL burgundy link */
.search_sec.artwork-list-page .filter-title span {
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace) !important;
  font-size: 12px !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}
.search_sec.artwork-list-page .filter-title a {
  color: var(--aps-burgundy, #5B1622) !important;
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace) !important;
  font-size: 11px !important;
  letter-spacing: .1em !important;
}
.search_sec.artwork-list-page .filter-title a:hover {
  color: var(--aps-burgundy-2, #7A1F30) !important;
}

/* Active-filter badge list + chips */
.search_sec.artwork-list-page .badge_list {
  border-bottom: 1px solid var(--aps-rule, #DCD7CB) !important;
}
.search_sec.artwork-list-page .badge-filter {
  background: var(--aps-burgundy, #5B1622) !important;
  border: 1px solid var(--aps-burgundy, #5B1622) !important;
  border-radius: var(--w-radius, 2px) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
  font-size: 13px !important;
}

/* Accordion (filter groups) — match group-by sidebar band */
.search_sec.artwork-list-page .accordion-item {
  background-color: var(--aps-bg-2, #ECE9E1) !important;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB) !important;
}
.search_sec.artwork-list-page button.accordion-button,
.search_sec.artwork-list-page .accordion-button:not(.collapsed) {
  background: var(--aps-bg-2, #ECE9E1) !important;
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
  box-shadow: none !important;
}
.search_sec.artwork-list-page .accordion-body {
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
}

/* Colour / criteria chips list */
/* 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: 5px 8px !important;
  background: var(--aps-cream, #E8DFC9) !important;
  color: var(--aps-ink-2, #4A4641) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: 2px !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: normal !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(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !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(--aps-ink, #161310) !important;
  color: var(--aps-paper, #FBFAF6) !important;
  border-color: var(--aps-ink, #161310) !important;
}

.search_sec.artwork-list-page .filter-panel .colors_list li {
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li span {
  color: var(--aps-ink, #161310) !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li.active span {
  color: var(--aps-paper, #FBFAF6) !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(--aps-burgundy, #5B1622) !important;
}
.search_sec.artwork-list-page .filter-panel .colors_list li.active {
  background-color: var(--aps-ink, #161310) !important;
  border: 1px solid var(--aps-ink, #161310) !important;
  color: var(--aps-paper, #FBFAF6) !important;
}

/* Checkboxes — burgundy when checked */
.search_sec.artwork-list-page .form-check input {
  background-color: var(--aps-paper, #FBFAF6) !important;
  border: 1px solid var(--aps-rule-2, #C8C2B3) !important;
}
.search_sec.artwork-list-page .form-check input:checked {
  background-color: var(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
}

/* Artist text filter + tag buttons */
.search_sec.artwork-list-page .artist_input {
  background: var(--aps-paper, #FBFAF6) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: var(--w-radius, 2px) !important;
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
}
.search_sec.artwork-list-page .artist_input::placeholder {
  color: var(--aps-ink-3, #8A857D) !important;
}
.search_sec.artwork-list-page .tag-btn {
  background-color: var(--aps-cream-3, #F4ECDD) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: var(--w-radius, 2px) !important;
  color: var(--aps-ink, #161310) !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
}

/* Range sliders (noUiSlider) — burgundy fill on rule track */
.search_sec.artwork-list-page .noUi-target {
  background: var(--aps-rule, #DCD7CB) !important;
}
.search_sec.artwork-list-page .noUi-connect {
  background: var(--aps-burgundy, #5B1622) !important;
}
.search_sec.artwork-list-page .noUi-horizontal .noUi-handle {
  background: var(--aps-burgundy, #5B1622) !important;
  border: 1px solid var(--aps-burgundy-ink, #2E0B12) !important;
  box-shadow: none !important;
}

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

/* 1. Alphabet nav box — letter cells */
.art_info_section .alphabet_box .alpha_letter {
  border-color: var(--aps-rule-2, #C8C2B3);
  color: var(--aps-ink, #161310);
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
}
.art_info_section .alphabet_box .alpha_letter:last-child {
  border-right-color: var(--aps-rule-2, #C8C2B3);
}
.art_info_section .alphabet_box .alpha_letter a {
  color: var(--aps-ink, #161310);
}
.art_info_section .alphabet_box .alpha_letter:hover {
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
}
.art_info_section .alphabet_box .alpha_letter:hover a {
  color: var(--aps-cream-2, #F2E6D8);
}

/* 2. Alphabet section heading (letter group title) */
.art_info_section .alphabet_indv h4 {
  color: var(--aps-burgundy, #5B1622);
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
}

/* 3. Artist profile card */
.art_info_section .profile_img img {
  border-radius: 60px;
  border: 2px solid var(--aps-rule-2, #C8C2B3);
}
.art_info_section .profile_name a {
  color: var(--aps-ink, #161310);
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 500;
}
.art_info_section .profile_name a:hover {
  color: var(--aps-burgundy, #5B1622);
}
.art_info_section .profile_year {
  color: var(--aps-ink-3, #8A857D);
}

/* 4. "View more" link */
.art_info_section .view_more_alpha a {
  color: var(--aps-burgundy, #5B1622);
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 600;
}
.art_info_section .view_more_alpha a:hover,
.art_info_section .view_more_alpha a:focus {
  color: var(--aps-burgundy-2, #7A1F30);
}
.art_info_section .view_more_alpha .fa-angle-right {
  font-size: 15px;
}

/* ===== photo_to_restyled_masterpiece ===== */
/* APS brand styling for the photo→art page. Shared markup/structure lives in
   global-custom; this section gives APS values to the --pr-* tokens read there
   and brand-styles every component (steps, headings, chips, upload box,
   textarea, style cards) using the APS palette. */

body.custom-repro-page {
  /* tokens consumed by shared structural CSS in global-custom */
  --pr-spinner-overlay: rgba(251, 250, 246, 0.9);          /* aps-paper @90% */
  --pr-remove-bg:        var(--aps-burgundy, #5B1622);
  --pr-remove-bg-hover:  var(--aps-burgundy-2, #7A1F30);
  --pr-muted-text:       var(--aps-ink-3, #8A857D);

  background: var(--aps-bg, #F6F4EF);
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  color: var(--aps-ink, #161310);
}

/* ── Hero caption ─────────────────────────────────────────────────────── */
body.custom-repro-page .consultation_content h6 {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--aps-gold, #E8C9A8);
}
body.custom-repro-page .consultation_content h1 {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 300;
  letter-spacing: -.035em;
  color: var(--aps-cream-3, #F4ECDD);
}

/* ── Intro paragraphs ─────────────────────────────────────────────────── */
body.custom-repro-page .consultation_bottom p {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 16px;
  line-height: 1.6;
  color: var(--aps-cream-3, #F4ECDD);
}

/* ── Step blocks (panel surface, like UI Kit .panel) ──────────────────── */
body.custom-repro-page .production_form .form_produc {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  padding: 28px 28px 26px;
  margin-bottom: 24px;
}

/* Step badge — burgundy mono kicker */
body.custom-repro-page .steps_count span {
  display: inline-block;
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--aps-cream-2, #F2E6D8);
  background: var(--aps-burgundy, #5B1622);
  padding: 4px 10px;
  border-radius: 999px;
}

/* Step heading — Bricolage display */
body.custom-repro-page .form_heading {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 600;
  font-size: 22px;
  letter-spacing: -.015em;
  font-variation-settings: "wdth" 88;
  color: var(--aps-ink, #161310);
  margin-top: 10px;
}

/* Step body copy */
body.custom-repro-page .form_content {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 13px;
  line-height: 1.5;
  color: var(--aps-ink-2, #4A4641);
}

/* File-extension hint — mono tertiary */
body.custom-repro-page .img_extention {
  font-family: var(--aps-f-mono, "JetBrains Mono", monospace);
  font-size: 11px;
  letter-spacing: .04em;
  color: var(--aps-ink-3, #8A857D);
}

/* ── Step 01: upload box ──────────────────────────────────────────────── */
body.custom-repro-page .image-upload-box#add-image {
  background: var(--aps-bg-2, #ECE9E1);
  border: 1px dashed var(--aps-rule-2, #C8C2B3);
  border-radius: 2px;
  transition: border-color .18s ease, background .18s ease;
}
body.custom-repro-page .image-upload-box#add-image:hover {
  border-color: var(--aps-burgundy, #5B1622);
  background: var(--aps-paper, #FBFAF6);
}

/* ── Step 02: edit-request textarea ───────────────────────────────────── */
body.custom-repro-page .form-control#image_edit_requests {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 14px;
  color: var(--aps-ink, #161310);
}
body.custom-repro-page .form-control#image_edit_requests:focus {
  border-color: var(--aps-burgundy, #5B1622);
  box-shadow: 0 0 0 2px rgba(91, 22, 34, .12);
  outline: none;
}
body.custom-repro-page .form-floating > label[for="image_edit_requests"] {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  color: var(--aps-ink-3, #8A857D);
}

/* ── Chips: edit-request examples + category filters ──────────────────── */
body.custom-repro-page .Sidebar_tags a,
body.custom-repro-page a.edit-request-example,
body.custom-repro-page a.category-filter-link {
  display: inline-block;
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 500;
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: .02em;
  font-variation-settings: "wdth" 95;
  padding: 8px 14px;
  border: 1px solid var(--aps-rule-2, #C8C2B3);
  border-radius: 999px;
  background: var(--aps-paper, #FBFAF6);
  color: var(--aps-ink-2, #4A4641);
  text-decoration: none;
  transition: border-color .18s ease, color .18s ease, background .18s ease;
}
body.custom-repro-page .Sidebar_tags a:hover,
body.custom-repro-page a.edit-request-example:hover,
body.custom-repro-page a.category-filter-link:hover {
  border-color: var(--aps-ink, #161310);
  color: var(--aps-ink, #161310);
  background: var(--aps-paper, #FBFAF6);
}
/* Active category chip — solid burgundy */
body.custom-repro-page a.category-filter-link.active {
  background: var(--aps-burgundy, #5B1622);
  border-color: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
}
body.custom-repro-page a.category-filter-link.active:hover {
  background: var(--aps-burgundy-2, #7A1F30);
  border-color: var(--aps-burgundy-2, #7A1F30);
  color: var(--aps-cream-2, #F2E6D8);
}
/* Suppress the global center-out underline on these chips */
body.custom-repro-page .Sidebar_tags a::after,
body.custom-repro-page a.edit-request-example::after,
body.custom-repro-page a.category-filter-link::after {
  content: none;
}

/* ── Step 04: style cards (reuse APS list-card look) ──────────────────── */
body.custom-repro-page .custom_search .search_card {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  overflow: hidden;
  position: relative;
  transition: border-color .22s ease, transform .22s ease;
}
body.custom-repro-page .custom_search .search_card:hover {
  border-color: var(--aps-rule-2, #C8C2B3);
  transform: translateY(-3px);
}
body.custom-repro-page .custom_search .search_card .search_img {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
  background: var(--aps-bg-2, #ECE9E1);
}
body.custom-repro-page .custom_search .search_card .searchCard_body {
  padding: 14px 16px 12px;
  background: var(--aps-paper, #FBFAF6);
}
/* Category label (art-artist h2) — display, ink */
body.custom-repro-page .custom_search .search_card .art-artist h2 {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 600;
  font-size: 13px;
  line-height: 1.25;
  letter-spacing: -.005em;
  font-variation-settings: "wdth" 90;
  text-transform: none;
  color: var(--aps-ink, #161310);
  margin: 0 0 5px;
}
/* Style name (art-title span) — italic display */
body.custom-repro-page .custom_search .search_card .art-title span {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 300;
  font-style: italic;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: -.008em;
  font-variation-settings: "wdth" 92;
  color: var(--aps-ink-2, #4A4641);
  display: block;
}
/* Card description */
body.custom-repro-page .custom_search .search_card .card_content p {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--aps-ink-2, #4A4641);
  margin: 0;
}

/* ===== artist_group_by_attribute / group-by browse — APS ===== */
.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 {
  --aps-gb-bg:        var(--aps-paper, #FBFAF6);
  --aps-gb-bg-2:      var(--aps-bg, #F6F4EF);
  --aps-gb-band:      var(--aps-bg-2, #ECE9E1);
  --aps-gb-slot:      var(--aps-cream, #E8DFC9);
  --aps-gb-ink:       var(--aps-ink, #161310);
  --aps-gb-ink-2:     var(--aps-ink-2, #4A4641);
  --aps-gb-ink-3:     var(--aps-ink-3, #8A857D);
  --aps-gb-line:      var(--aps-rule, #DCD7CB);
  --aps-gb-line-2:    var(--aps-rule-2, #C8C2B3);
  --aps-gb-accent:    var(--aps-burgundy, #5B1622);
  --aps-gb-accent-h:  var(--aps-burgundy-2, #7A1F30);
  --aps-gb-display:   var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  --aps-gb-body:      var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
}

/* ── nav-list / main-heading / Showing_text / sortABC base ── */
.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(--aps-gb-ink);
  font-family: var(--aps-gb-body);
}

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

/* ── groupby-selector / search form 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(--aps-gb-bg) !important;
  border: 1px solid var(--aps-gb-line-2) !important;
  color: var(--aps-gb-ink) !important;
  border-radius: 2px;
  font-family: var(--aps-gb-body);
  font-size: 13px;
}

/* ── placeholder + search 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(--aps-gb-ink-3);
}
.search_sec.artwork-groupby-page form.countrySearchForm i.fa.fa-search,
.search_sec.artist-groupby-page form.countrySearchForm i.fa.fa-search {
  color: var(--aps-gb-ink-2);
}

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

/* ── sortABC letters (active / disabled) ── */
.search_sec.artwork-groupby-page .sortABC a.active,
.search_sec.artist-groupby-page .sortABC a.active {
  color: var(--aps-gb-accent) !important;
  font-weight: 600;
}
.search_sec.artwork-groupby-page .sortABC a.disabled,
.search_sec.artist-groupby-page .sortABC a.disabled {
  color: var(--aps-gb-ink-3) !important;
}

/* ── 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(--aps-gb-band) !important;
  border: 1px solid var(--aps-gb-line) !important;
  color: var(--aps-gb-ink) !important;
  border-radius: 2px;
  font-family: var(--aps-gb-body);
}
.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(--aps-gb-band) !important;
  border-color: var(--aps-gb-line-2) !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(--aps-paper, #FBFAF6) !important;
  border-color: var(--aps-gb-accent, #5B1622) !important;
  border-left-width: 3px !important;
}

/* ── sidebar_box_title + description ── */
.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 {
  color: var(--aps-gb-ink) !important;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
  text-transform: none;
  letter-spacing: normal;
}
.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 {
  color: var(--aps-gb-ink-2, #4A4641) !important;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
  text-transform: none;
  letter-spacing: normal;
}
.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 {
  font-family: var(--aps-gb-display);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.015em;
  margin-bottom: 12px;
}
.search_sec.artwork-groupby-page h3.sidebar_box_title a:hover,
.search_sec.artist-groupby-page h3.sidebar_box_title a:hover {
  color: var(--aps-gb-accent) !important;
}

/* ── Sidebar_tags chips ── */
.search_sec.artwork-groupby-page ul.Sidebar_tags,
.search_sec.artist-groupby-page ul.Sidebar_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
  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: 5px 8px;
  background: var(--aps-gb-slot) !important;
  color: var(--aps-gb-ink-2) !important;
  border: 1px solid var(--aps-gb-line);
  border-radius: 2px;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  line-height: 1.4;
  font-weight: 400;
  text-decoration: none;
}
.search_sec.artwork-groupby-page ul.Sidebar_tags a:hover,
.search_sec.artist-groupby-page ul.Sidebar_tags a:hover {
  color: var(--aps-gb-accent) !important;
}

/* ── .showMainResuls container ── */
.search_sec.artwork-groupby-page .showMainResuls,
.search_sec.artist-groupby-page .showMainResuls {
  font-family: var(--aps-gb-body);
}

/* ── group heading + count badge ── */
.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(--aps-gb-ink) !important;
  font-family: var(--aps-gb-display);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: -0.015em;
  text-transform: none;
}
.search_sec.artwork-groupby-page .showMainResulsTitle h3 a:hover,
.search_sec.artist-groupby-page .showMainResulsTitle h3 a:hover {
  color: var(--aps-gb-accent) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.search_sec.artwork-groupby-page .showMainResulsTitle h3 span,
.search_sec.artist-groupby-page .showMainResulsTitle h3 span {
  background: var(--aps-gb-slot) !important;
  color: var(--aps-gb-ink) !important;
  font-family: var(--aps-gb-body);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: normal;
}

/* ── "See All" link ── */
.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(--aps-gb-ink) !important;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  text-transform: none;
}
.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(--aps-gb-accent) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ── result cards ── */
.search_sec.artwork-groupby-page .showMainResulsBox,
.search_sec.artist-groupby-page .showMainResulsBox {
  background: var(--aps-gb-band) !important;
  color: var(--aps-gb-ink) !important;
  border: 1px solid var(--aps-gb-line);
  border-radius: 2px;
  font-family: var(--aps-gb-body);
}

/* ── image overlay caption ── */
.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(22, 19, 16, 0.72) !important;
  color: var(--aps-gb-bg) !important;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
}
.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(--aps-gb-bg) !important;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.4;
}
/* Light text sits on the dark image overlay, so an underline reads better than a colour shift on hover. */
.search_sec.artwork-groupby-page .showMainResulsImage h3 a:hover,
.search_sec.artwork-groupby-page .showMainResulsImage p a:hover,
.search_sec.artist-groupby-page .showMainResulsImage h3 a:hover,
.search_sec.artist-groupby-page .showMainResulsImage p a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* ── result-item text rows ── */
.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(--aps-gb-ink) !important;
  font-family: var(--aps-gb-body);
  font-size: 13px;
  line-height: 1.4;
  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-weight: 600;
}
.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(--aps-gb-accent) !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}
/* ===== end artist_group_by_attribute / group-by browse — APS ===== */

/* ===== APS — Custom reproduction / photo-to-painting order ===== */
/* Overrides COLOURS/identity only; structural layout + neutral (brown) defaults
   live in global-custom-V1.9.css. Scoped under .production_form / .summery_checkout.
   Palette = APS editorial: bone surfaces, ink text, burgundy identity, terracotta
   surcharge, amber alert. All values reference :root --aps-* tokens (top of file). */
.production_form,
.summery_checkout {
  --aps-cr-surface:   var(--aps-bg-2);      /* #ECE9E1 panel fill            */
  --aps-cr-surface-2: var(--aps-paper);     /* #FBFAF6 input / inner fill    */
  --aps-cr-ink:       var(--aps-ink);       /* #161310 primary text          */
  --aps-cr-ink-2:     var(--aps-ink-2);     /* #4A4641 secondary text        */
  --aps-cr-ink-3:     var(--aps-ink-3);     /* #8A857D muted text            */
  --aps-cr-rule:      var(--aps-rule);      /* #DCD7CB hairline              */
  --aps-cr-rule-2:    var(--aps-rule-2);    /* #C8C2B3 stronger border       */
  --aps-cr-accent:    var(--aps-burgundy);  /* #5B1622 identity / selected   */
  --aps-cr-accent-2:  var(--aps-burgundy-2);/* #7A1F30 hover                 */
  --aps-cr-on-accent: var(--aps-cream-2);   /* #F2E6D8 text on burgundy      */
  --aps-cr-surcharge: var(--aps-surcharge); /* #A8321F + price / surcharge   */
}

/* ---- Step shell --------------------------------------------------------- */
.production_form .steps_count span {
  background: var(--aps-cr-accent);
  color: var(--aps-cr-on-accent);
}
.production_form .form_heading {
  color: var(--aps-cr-ink);
}
.production_form .form_content {
  color: var(--aps-cr-ink-2);
}
.production_form .repro-required,
.summery_checkout .repro-required {
  color: var(--aps-cr-surcharge);
}

/* ---- Step 01 upload ----------------------------------------------------- */
.production_form .upload_img_form .img_extention {
  color: var(--aps-cr-ink-3);
}
.production_form .image-upload-box,
.production_form .image-upload-box#add-image {
  background: var(--aps-cr-surface);
  border: 1px dashed var(--aps-cr-rule-2);
  color: var(--aps-cr-ink-2);
}
.production_form .image-upload-box#add-image:hover {
  border-color: var(--aps-cr-accent);
}
.production_form .repro-remove-image-btn {
  background: var(--aps-cr-accent);
  color: var(--aps-cr-on-accent);
}

/* ---- Step 02 faces ------------------------------------------------------ */
.production_form .repro-faces__option {
  background: var(--aps-cr-surface);
  border: 1px solid var(--aps-cr-rule);
}
.production_form .repro-faces__option.checked_box {
  border: 1px solid var(--aps-cr-accent) !important;
  background: var(--aps-cr-surface-2);
}
.production_form .repro-faces__count p {
  color: var(--aps-cr-ink);
}
.production_form .repro-faces__free-badge {
  color: var(--aps-cr-ink-3);
}
.production_form .face_color_red {
  color: var(--aps-cr-surcharge);
}

/* ---- Step 03 size ------------------------------------------------------- */
.production_form .repro-size__manual-label p {
  color: var(--aps-cr-ink);
}
.production_form .switches-container {
  background: var(--aps-cr-rule);
}
.production_form .switches-container label {
  color: var(--aps-cr-ink-2);
}
.production_form .switches-container .switch {
  background: var(--aps-cr-accent);
}
.production_form .switches-container .switch .switchbox {
  color: var(--aps-cr-on-accent);
}
.production_form .form-floating .form-control {
  background: var(--aps-cr-surface-2);
  border: 1px solid var(--aps-cr-rule-2);
  color: var(--aps-cr-ink);
}
.production_form .form-floating .form-control:focus {
  border-color: var(--aps-cr-accent);
  box-shadow: 0 0 0 1px var(--aps-cr-accent);
}
.production_form .form-floating > label {
  color: var(--aps-cr-ink-3) !important;
}
.production_form .reproduction_ratio_warning {
  background: var(--aps-warn-bg);
  border: 1px solid var(--aps-warn-bd);
}
.production_form .reproduction_ratio_warning p {
  color: var(--aps-warn-ink);
}

/* ---- Step 04 style ------------------------------------------------------ */
.production_form .form-check-input-custom {
  background-color: var(--aps-cr-surface-2) !important;
  border: 1px solid var(--aps-cr-rule-2) !important;
}
.production_form .form-check-input-custom:checked {
  background-color: var(--aps-cr-accent) !important;
  border-color: var(--aps-cr-accent) !important;
}
.production_form .repro-styles__option {
  background: var(--aps-cr-surface);
  border: 1px solid var(--aps-cr-rule);
}
.production_form .repro-styles__option:hover {
  border-color: var(--aps-cr-accent);
}
.production_form .repro-styles__option .overlay_img {
  background: rgba(46, 11, 18, 0.80); /* --aps-burgundy-ink @ 80% */
}
.production_form .repro-styles__radio label {
  color: var(--aps-cr-ink);
}

/* ---- Step 05 frame ------------------------------------------------------ */
.production_form .repro_radio label {
  color: var(--aps-cr-ink);
}
.production_form .green_include {
  color: var(--aps-cr-ink-3);
}
.production_form .frame_box {
  border: 1px solid var(--aps-cr-rule);
  background-color: var(--aps-cr-surface);
}
.production_form .frame_box.checked_box {
  border: 1px solid var(--aps-cr-accent) !important;
}
.production_form .frame_text,
.production_form .frame_text.headingSelect {
  color: var(--aps-cr-ink);
}
.production_form .frame-price-span,
.production_form .frame_text .face_color_red {
  color: var(--aps-cr-surcharge);
}
.production_form .frame_details h5 {
  color: var(--aps-cr-ink);
}
.production_form .frame_details p {
  color: var(--aps-cr-ink-2);
}
.production_form .---confirmation_notice {
  background: var(--aps-warn-bg);
  border: 1px solid var(--aps-warn-bd);
}
.production_form .---confirmation_notice p {
  color: var(--aps-warn-ink);
}

/* ---- Radio dials (faces / frame / medium) ------------------------------- */
.production_form input[type="radio"] {
  background: var(--aps-cr-surface-2);
}
.production_form input[type="radio"]:after {
  background-color: var(--aps-cr-surface-2);
  border: 1px solid var(--aps-cr-rule-2);
}
.production_form input[type="radio"]:checked:after {
  background-color: var(--aps-cr-accent);
  outline: 1.5px solid var(--aps-cr-accent);
}

/* ---- Step 07 / 08 customization + add-ons ------------------------------- */
.production_form .repro-customization__section {
  background: var(--aps-cr-surface);
}
.production_form .repro-customization__box .custome_check label {
  color: var(--aps-cr-ink);
}
.production_form .repro-price-tag {
  color: var(--aps-cr-surcharge);
}
.production_form .custom_detail {
  background: var(--aps-cr-surface-2);
  border: 1px solid var(--aps-cr-rule);
}
.production_form .custom_detail p {
  color: var(--aps-cr-ink-2);
}
.production_form .optional_box .option_text label {
  color: var(--aps-cr-ink);
}
.production_form .optional_box .option_text > div,
.production_form .optional_box .option_text > span {
  color: var(--aps-cr-ink-2);
}
.production_form .optional_text {
  color: var(--aps-cr-ink-3);
}

/* ---- Summary card (.summery_checkout) ----------------------------------- */
.summery_checkout {
  background: var(--aps-cr-surface);
  border: 1px solid var(--aps-cr-rule);
}
.summery_checkout .sum_chek_text {
  color: var(--aps-cr-ink);
  border-bottom: 1px solid var(--aps-cr-rule);
}
.summery_checkout .accordion-button {
  background: transparent !important;
  color: var(--aps-cr-ink) !important;
  box-shadow: none !important;
}
.summery_checkout .accordion-body,
.summery_checkout .accordion-body p {
  color: var(--aps-cr-ink-2);
}
.summery_checkout .repro-summary__row {
  border-bottom: 1px solid var(--aps-cr-rule) !important;
}
.summery_checkout .repro-summary__row .dtl_con h4 {
  color: var(--aps-cr-ink);
}
.summery_checkout .repro-summary__row .dtl_con p {
  color: var(--aps-cr-ink-3);
}
.summery_checkout .repro-summary__row .detail_cont_right h4 {
  color: var(--aps-cr-accent);
}
.summery_checkout .total_price_box .total_price,
.summery_checkout h4.total_price {
  color: var(--aps-cr-ink);
}
.summery_checkout .add_tocart_btn button,
.summery_checkout #addToCartButton {
  background: var(--aps-cr-accent);
  color: var(--aps-cr-on-accent);
}
.summery_checkout #emailConfigButton {
  background: var(--aps-cr-surface-2);
  color: var(--aps-cr-ink);
  border: 1px solid var(--aps-cr-rule-2);
}
.summery_checkout .add_tocart_btn button:hover,
.summery_checkout #addToCartButton:hover {
  background: var(--aps-cr-accent-2);
  color: var(--aps-cr-on-accent);
}
.summery_checkout #emailConfigButton:hover {
  border-color: var(--aps-cr-accent);
  color: var(--aps-cr-accent);
}
.summery_checkout .confirmation_notice p {
  color: var(--aps-cr-ink-2);
}

/* ---- Read-more CTA (brand accent) --------------------------------------- */
.production_form .yellow_cont a,
.summery_checkout .yellow_cont a {
  color: var(--aps-cr-accent) !important;
}
.production_form .yellow_cont a:hover,
.summery_checkout .yellow_cont a:hover {
  color: var(--aps-cr-accent-2) !important;
}
/* ===== end APS — Custom reproduction / photo-to-painting order ===== */

/* ═══════════════════════════════════════════════════════════════════
   APS — Catalog categories browse (list_category)
   URL: /en/art/list_category/<field_code_name>/
   Wrapper: .search_sec same-space-card catalog-categories-page artwork-categories-page
   Scope: .search_sec.catalog-categories-page  AND  .search_sec.artwork-categories-page
   Tokens (APS UI Kit):
     --aps-bg #F6F4EF · --aps-bg-2 #ECE9E1 · --aps-paper #FBFAF6 · --aps-cream-3 #F4ECDD
     --aps-ink #161310 · --aps-ink-2 #4A4641 · --aps-ink-3 #8A857D
     --aps-rule #DCD7CB · --aps-rule-2 #C8C2B3
     --aps-burgundy #5B1622 · --aps-burgundy-2 #7A1F30 · --aps-cream-2 #F2E6D8
     --aps-f-display (Bricolage Grotesque) · --aps-f-text (Familjen Grotesk) · --aps-f-mono (JetBrains Mono)
   Structure mirrors ADC "Catalog categories browse"; every value mapped to APS tokens.
   ═══════════════════════════════════════════════════════════════════ */

/* ── 1. Page chrome: breadcrumb nav, heading, results count, 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(--aps-ink, #161310);
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
}
.search_sec.catalog-categories-page .nav-list a:hover,
.search_sec.artwork-categories-page .nav-list a:hover {
  color: var(--aps-burgundy, #5B1622);
}
.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(--aps-paper, #FBFAF6) !important;
  border: 1px solid var(--aps-rule-2, #C8C2B3) !important;
  color: var(--aps-ink, #161310) !important;
  border-radius: 2px;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  font-size: 13px;
}

/* ── 2. Filter panel surface — match group-by sidebar band (--aps-gb-band / --aps-bg-2) ── */
.search_sec.catalog-categories-page .filter-panel,
.search_sec.artwork-categories-page .filter-panel {
  background-color: var(--aps-bg-2, #ECE9E1);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
}

/* ── 3. Filter title (flex header + Bricolage label + 16px icon) ──────────── */
.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;
  margin: 0;
}
.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(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 600;
  font-size: 15px;
  line-height: 1.3;
  letter-spacing: -0.005em;
  font-variation-settings: "wdth" 90;
  color: var(--aps-ink, #161310);
}
.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 badge list + chips (slot/inset bg) ──────────────────── */
.search_sec.catalog-categories-page .badge_list,
.search_sec.artwork-categories-page .badge_list {
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
}
.search_sec.catalog-categories-page .badge-filter,
.search_sec.artwork-categories-page .badge-filter {
  background: var(--aps-cream, #E8DFC9) !important;
  color: var(--aps-ink, #161310) !important;
  border: 1px solid var(--aps-rule-2, #C8C2B3);
  border-radius: 2px;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  font-size: 13px;
}

/* ── 5. CORE category links (.colors_list) — slot chip cloud ──────────────── */
.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;
  margin: 0;
}
.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;
  width: auto !important;
  padding: 5px 8px !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--aps-ink-2, #4A4641) !important;
  text-decoration: none !important;
  background: var(--aps-cream, #E8DFC9) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !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(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
}
.search_sec.catalog-categories-page .colors_list li a.active,
.search_sec.artwork-categories-page .colors_list li a.active {
  background: var(--aps-ink, #161310) !important;
  border-color: var(--aps-ink, #161310) !important;
  color: var(--aps-paper, #FBFAF6) !important;
  font-weight: 600;
}

/* ── 6. Card grid — identical chrome to .artwork-list-page list card ──────── */
.search_sec.catalog-categories-page .custom_search .search_card,
.search_sec.artwork-categories-page .custom_search .search_card {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: 2px;
  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;
  transition: border-color 0.22s ease, transform 0.22s ease;
}
.search_sec.catalog-categories-page .custom_search .search_card:hover,
.search_sec.artwork-categories-page .custom_search .search_card:hover {
  background: var(--aps-paper, #FBFAF6) !important;
  border-color: var(--aps-rule-2, #C8C2B3) !important;
  transform: translateY(-3px);
}
.search_sec.catalog-categories-page .custom_search .row > [class*="col-"],
.search_sec.artwork-categories-page .custom_search .row > [class*="col-"] {
  border: none !important;
}
.search_sec.catalog-categories-page .custom_search .search_card .search_img,
.search_sec.artwork-categories-page .custom_search .search_card .search_img {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid var(--aps-rule, #DCD7CB);
  background: var(--aps-bg-2, #ECE9E1);
}
.search_sec.catalog-categories-page .custom_search .search_card .searchCard_body,
.search_sec.artwork-categories-page .custom_search .search_card .searchCard_body {
  padding: 14px 16px 12px;
  background: transparent;
}
.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;
  justify-content: space-between;
  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(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.005em !important;
  font-variation-settings: "wdth" 90 !important;
  text-transform: none !important;
  color: var(--aps-ink, #161310) !important;
  text-decoration: none;
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.15s 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(--aps-burgundy, #5B1622) !important;
}
.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(--aps-f-mono, "JetBrains Mono", monospace) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--aps-ink-3, #8A857D) !important;
  white-space: nowrap;
  flex-shrink: 0;
  text-decoration: none;
}
.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(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
  font-weight: 300 !important;
  font-style: italic !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  letter-spacing: -0.008em !important;
  font-variation-settings: "wdth" 92 !important;
  color: var(--aps-ink-2, #4A4641) !important;
  text-decoration: none;
  display: block;
  transition: color 0.15s 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(--aps-ink, #161310) !important;
}
.search_sec.catalog-categories-page .custom_search .search_card .hover_visible,
.search_sec.artwork-categories-page .custom_search .search_card .hover_visible {
  box-sizing: border-box;
  background: var(--aps-paper, #FBFAF6) !important;   /* same as card :hover (panel only shows on hover) */
  border: 1px solid var(--aps-rule-2, #C8C2B3);       /* side + bottom frame, matches list-page panel */
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 0 0 2px 2px;
  padding: 14px 16px 12px;
}
.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(--aps-f-text, "Familjen Grotesk", sans-serif) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.55 !important;
  color: var(--aps-ink-2, #4A4641) !important;
  margin-bottom: 12px;
}
.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(--aps-burgundy, #5B1622) !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: 8px;
  margin-top: 4px;
}
.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: 6px !important;
  height: 36px !important;
  padding: 0 14px !important;
  background: var(--aps-burgundy, #5B1622) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif) !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  font-variation-settings: "wdth" 90 !important;
  border: none !important;
  border-radius: 2px !important;
  width: auto !important;
  min-width: 0 !important;
  transition: background-color 0.18s ease !important;
  text-decoration: none;
  white-space: nowrap;
}
.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(--aps-burgundy-2, #7A1F30) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
}
.search_sec.catalog-categories-page .custom_search .search_card .artwork-grid-img-link::after,
.search_sec.artwork-categories-page .custom_search .search_card .artwork-grid-img-link::after {
  content: none !important;
}

/* ── 7. Pagination — SITE-WIDE (every paginated template: list, categories,
   search, color search). Paper cell, hairline rule; burgundy active pill.
   Overrides the global brown #875D2A defaults. ─────────────────────────────── */
.pagination .page-link,
.pagination a.page-link,
.pagination .page-item:first-child .page-link {
  color: var(--aps-ink, #161310) !important;
  background: var(--aps-paper, #FBFAF6) !important;
  border: 1px solid var(--aps-rule, #DCD7CB) !important;
  border-radius: 0 !important;
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif) !important;
  box-shadow: none !important;
}
.pagination .page-link:hover,
.pagination .page-link:focus,
.pagination .page-item:first-child .page-link:hover {
  background: var(--aps-paper-2, #F5F0E8) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
  color: var(--aps-ink, #161310) !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: var(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
}
.pagination .page-item.disabled .page-link {
  background: var(--aps-paper, #FBFAF6) !important;
  border-color: var(--aps-rule, #DCD7CB) !important;
  color: var(--aps-muted, #9A938A) !important;
}
/* ═══ end APS — 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(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
  color: var(--aps-cream-2, #F2E6D8) !important;
}

/* =====================================================
   DigitalImage buy page — "Included in Every Digital Image Order"
   premium benefits band — AllPaintingsStore 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(--aps-accent-dark, #2E0B12);
  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(--aps-cream, #E8DFC9);
}
.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(--aps-cream-2, #F2E6D8);
}
.premium_service .why_choose_right .heading_paragrap {
  margin: 0 auto;
  max-width: 52rem;
  text-align: center;
  color: var(--aps-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(--aps-cream-2, #F2E6D8);
}
.premium_service .why_choose_info p {
  width: 100%;
  margin: 0;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.55;
  color: var(--aps-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(--aps-ink-2, #4A4641); 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(--aps-rule, #DCD7CB); padding: 14px 0;
}
.color-search-page .filter-row-label { min-width: 280px; font-weight: 600; color: var(--aps-ink, #161310); }
.color-search-page .filter-row-description {
  margin-top: 6px; font-size: 0.95em; line-height: 1.5;
  color: var(--aps-ink-2, #4A4641); 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(--aps-ink-2, #4A4641); 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(--aps-bg, #F6F4EF); border: 1px solid var(--aps-rule, #DCD7CB); border-radius: 4px;
  transition: border-color .15s, background .15s;
}
.color-search-page .main-color-list li:hover {
  border-color: var(--aps-burgundy, #5B1622); background: var(--aps-bg-2, #ECE9E1);
}
.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(--aps-burgundy, #5B1622);
}

.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(--aps-rule-2, #C8C2B3); 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(--aps-rule-2, #C8C2B3); vertical-align: middle; flex-shrink: 0;
}

.color-search-page .filter-actions { margin-top: 24px; }
.color-search-page #artworks-results { margin-top: 40px; }

/* Brand accent on all checkboxes within the color-search page */
.color-search-page input[type="checkbox"] { accent-color: var(--aps-burgundy, #5B1622); }

@media (max-width: 768px) {
  .color-search-page .filter-row { flex-direction: column; gap: 8px; }
  .color-search-page .filter-row-label { min-width: auto; }
}

/* ===== orders/art_consultation.html — step image offset shadow ===== */
/* AllPaintingsStore: soft burgundy wash of the brand accent. */
.step .step-image { --step-image-shadow: rgb(var(--ais-accent-rgb, 91 22 34) / 0.15); }

/* ===== orders/art_consultation.html — AllPaintingsStore brand colours ===== */
/* Deep ink + burgundy accent + parchment surfaces */
body.art-consultation-page .consultation_bottom { background: var(--aps-ink, #161310); }
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(--aps-cream-3, #F4ECDD) !important;
  opacity: 1 !important;
}
body.art-consultation-page span.line { background: var(--aps-rule-2, #C8C2B3); }
body.art-consultation-page .step-title { background: var(--aps-burgundy, #5B1622); color: var(--aps-cream-2, #F2E6D8); }
body.art-consultation-page .step-heading { color: var(--aps-ink, #161310); }
body.art-consultation-page .step-header small { color: var(--aps-burgundy, #5B1622); }
body.art-consultation-page .step-header h4 { color: var(--aps-ink, #161310); }
body.art-consultation-page .step-content p,
body.art-consultation-page .step li,
body.art-consultation-page ul.step_list li { color: var(--aps-ink-2, #4A4641); }
body.art-consultation-page .step-number-box { background: var(--aps-cream, #E8DFC9); border-color: var(--aps-rule-2, #C8C2B3); color: var(--aps-burgundy, #5B1622); }
body.art-consultation-page .contactfull_width_hero_banner_with_background_image { background: var(--aps-bg-2, #ECE9E1); }
body.art-consultation-page .consultant_right { color: var(--aps-cream-3, #F4ECDD); }
body.art-consultation-page .consultant_right .overlay_img {
  background: rgba(22, 19, 16, 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(--aps-cream-3, #F4ECDD) !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(--aps-cream-3, #F4ECDD) !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(--aps-cream-3, #F4ECDD) !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(--aps-cream-3, #F4ECDD) !important;
}
body.art-consultation-page .form-container input { background: var(--aps-bg, #F6F4EF) !important; color: var(--aps-ink, #161310) !important; }
body.art-consultation-page .form-floating > label { color: var(--aps-ink-2, #4A4641) !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(--aps-bg, #F6F4EF); }
body.art-consultation-page .consultation-dropdown,
body.art-consultation-page .consultation-dropdown-header { background: var(--aps-bg, #F6F4EF) !important; color: var(--aps-ink, #161310) !important; }
body.art-consultation-page .consultation-dropdown-list { background: var(--aps-bg, #F6F4EF); }
body.art-consultation-page .consultation-dropdown-list li { color: var(--aps-ink, #161310); }
body.art-consultation-page .consultation-dropdown-list li:hover { background: var(--aps-bg-2, #ECE9E1); }
body.art-consultation-page .image-upload-box { background: var(--aps-bg, #F6F4EF); border-color: var(--aps-rule-2, #C8C2B3); }
body.art-consultation-page .btn-prev { color: var(--aps-burgundy, #5B1622) !important; border-color: var(--aps-burgundy, #5B1622) !important; }
body.art-consultation-page .btn-next { background: var(--aps-burgundy, #5B1622) !important; border-color: var(--aps-burgundy-ink, #2E0B12) !important; color: var(--aps-cream-2, #F2E6D8) !important; }
/* ===== /orders/art_consultation.html — AllPaintingsStore ===== */

/* ===== viewcart — cart state tokens (APS) ===== */
:root {
  --cart-placeholder-bg: var(--aps-paper, #FBFAF6);
  --cart-placeholder-border: var(--aps-rule, #DCD7CB);
  --cart-placeholder-icon: var(--aps-ink-3, #8A857D);
  --cart-alert-warning-text: var(--aps-warn-ink, #6E5712);
  --cart-alert-warning-bg: var(--aps-warn-bg, #F5EDD2);
  --cart-alert-warning-border: var(--aps-warn-bd, #E2CC85);
  --cart-alert-warning-accent: var(--aps-gold, #E8C9A8);
  --cart-surface: var(--aps-cream-2, #F2E6D8);
  --cart-surface-border: var(--aps-rule, #DCD7CB);
  --cart-inset: var(--aps-paper, #FBFAF6);
  --cart-icon-bg: var(--aps-cream, #E8DFC9);
  --cart-summary-ink: var(--aps-ink, #161310);
  --cart-summary-ink-2: var(--aps-ink-2, #4A4641);
  --cart-summary-accent: var(--aps-burgundy, #5B1622);
  --cart-th-bg: var(--aps-cream, #E8DFC9);
  --cart-th-color: var(--aps-ink, #161310);
}

/* Summary panel surface matches the cart table header (DETAILS) background */
.cart_section .summery_checkout {
  background: var(--aps-bg-2, #ECE9E1) !important;
}

/* Discount "Apply" button — APS burgundy, aligned with the discount input field.
   The form row uses .align-items-center, which centres the button against the
   taller input column (input + status line) and drops it below the input top.
   Pin the row contents to the top and mirror the input box model so the button
   lines up with the input. */
.cart_section .summery_checkout #discount_code_form .row {
  align-items: flex-start !important;
}
.cart_section .summery_checkout #discount_code_button {
  width: 100%;
  padding: 9px 12px;
  font-size: 14px;
  line-height: 1.21;
  font-weight: 500;
  border-radius: 6px;
  background: var(--aps-burgundy, #5B1622);
  border: 1px solid var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.cart_section .summery_checkout #discount_code_button:hover,
.cart_section .summery_checkout #discount_code_button:focus {
  background: var(--aps-burgundy-ink, #2E0B12);
  border-color: var(--aps-burgundy-ink, #2E0B12);
  color: var(--aps-cream-3, #F4ECDD);
}

/* ===== start_selling_* step-image shadow tint — APS · gold highlight ===== */
.start-selling-steps .step .step-image { --step-image-shadow: var(--aps-gold, #E8C9A8); }

/* ===== Art Appraisal (body.art-appraisal-page) — APS ===== */
body.art-appraisal-page{
  --appraisal-step-shadow: var(--aps-burgundy-ink, #2E0B12);
  --appraisal-required:    var(--aps-surcharge, #A8321F);
  --appraisal-surface:     var(--aps-paper, #FBFAF6);
  --appraisal-input-border:var(--aps-rule-2, #C8C2B3);
  --appraisal-input-divider:var(--aps-rule, #DCD7CB);
  --appraisal-hover:       var(--aps-bg-2, #ECE9E1);
  --appraisal-selected:    var(--aps-cream-2, #F2E6D8);
  --appraisal-help-text:   var(--aps-ink-2, #4A4641); /* was global warm-brown #3E342A */
  --appraisal-panel-bg:    var(--aps-paper, #FBFAF6); /* was global beige #E8E2CD */
  --appraisal-panel-border:var(--aps-rule-2, #C8C2B3);
}

/* 1 — Hero caption over dark video (keep light, legible) */
body.art-appraisal-page .consultation_content h6,
body.art-appraisal-page .consultation_content h1,
body.art-appraisal-page .consultation_content p{
  color: var(--aps-cream-3, #F4ECDD);
}

/* 2 — Intro band */
body.art-appraisal-page .consultation_bottom{
  background: var(--aps-burgundy-ink, #2E0B12);
}
body.art-appraisal-page .consultation_bottom p{
  color: var(--aps-cream-3, #F4ECDD);
}

/* 3 — Vertical connector */
body.art-appraisal-page span.line{
  background: var(--aps-burgundy, #5B1622);
}

/* 4 — Step pill */
body.art-appraisal-page .step-title{
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
}

/* 5 — Step text */
body.art-appraisal-page .step-heading{
  color: var(--aps-ink, #161310);
}
body.art-appraisal-page .step-content p,
body.art-appraisal-page .step li,
body.art-appraisal-page ul.step_list li{
  color: var(--aps-ink-2, #4A4641);
}

/* 6 — Step image shadow (token consumed by global) */
body.art-appraisal-page .step .step-image{
  --step-image-shadow: var(--appraisal-step-shadow);
}

/* 7 — Pricing table */
body.art-appraisal-page .appraisel_main_section{
  background: var(--aps-bg-2, #ECE9E1);
}
body.art-appraisal-page .table>:not(caption)>*>*{
  background: var(--aps-paper, #FBFAF6) !important; /* beats pre-existing site rule `table tbody td{background:#F7F2E1!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(--aps-rule-2, #C8C2B3);
}
body.art-appraisal-page table th{
  color: var(--aps-burgundy, #5B1622) !important; /* beats global `table th { color:#875D2A !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(--aps-ink, #161310);
}
body.art-appraisal-page .table_price_color{
  color: var(--aps-surcharge, #A8321F);
}

/* 8 — Request form */
body.art-appraisal-page .valuation_request h4{
  color: var(--aps-ink, #161310);
}
body.art-appraisal-page .valuation_form_box label{
  color: var(--aps-ink, #161310);
}
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: var(--aps-paper, #FBFAF6);
  color: var(--aps-ink, #161310);
}
body.art-appraisal-page .form_heading{
  color: var(--aps-burgundy, #5B1622);
}
/* step chip: filled burgundy + cream (was warm-brown #3E342A bg leak) */
body.art-appraisal-page .steps_count span{
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
}
body.art-appraisal-page .required-asterisk{
  color: var(--appraisal-required);
}
body.art-appraisal-page .valuation_request .add_tocart_btn button{
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
}
body.art-appraisal-page .valuation_request .add_tocart_btn button:hover{
  background: var(--aps-burgundy-2, #7A1F30);
  color: var(--aps-cream-2, #F2E6D8);
}

/* 9 — Plan dropdown (consume tokens declared above) */
body.art-appraisal-page .custom-dropdown .dropdown-list{
  background: var(--appraisal-surface);
  border-color: var(--appraisal-input-border);
}
body.art-appraisal-page .custom-dropdown .dropdown-list li{
  border-bottom-color: var(--appraisal-input-divider);
}
body.art-appraisal-page .custom-dropdown .dropdown-list li:hover{
  background: var(--appraisal-hover);
}
body.art-appraisal-page .custom-dropdown .dropdown-list li.selected{
  background: var(--appraisal-selected);
}

/* ===== orders/checkout ===== */
/* AllPaintingsStore — printed-catalogue look: warm paper, hairline rules,
   burgundy accent, 2px radius, Bricolage display titles. No drop shadows —
   cards read as bordered panels (brand rule), so the card "shadow" is a
   1px burgundy-tinted hairline ring rather than a soft blur. */
.checkout-page .checkout_subtitle {
  color: var(--aps-ink-3, #8A857D);
  font-size: 1.1rem;
}
.checkout-page .card {
  border: none;
  border-radius: var(--w-radius, 2px);
  box-shadow: 0 0 0 1px var(--aps-rule, #DCD7CB);
}
.checkout-page .card-header {
  border-bottom: none;
  padding: 1rem 1.5rem;
}
.checkout-page .card-header.bg-dark {
  background-color: var(--aps-burgundy, #5B1622) !important;
}
.checkout-page .card-header h5 {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
}
.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(--aps-bg-2, #ECE9E1);
  padding: 20px;
  border-radius: var(--w-radius, 2px);
  border-left: 4px solid var(--aps-burgundy, #5B1622);
}
.checkout-page .shipping-address-display p {
  color: var(--aps-ink-2, #4A4641);
  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;
}

/* ===== apr-thanks (art project request thank-you) ===== */

/* Page wrapper — warm off-white, generous vertical breathing room */
.apr-thanks-page {
  padding-top: 3.5rem;
  padding-bottom: 4rem;
  background: var(--aps-bg, #F6F4EF);
}

/* 2-col grid: equal columns, responsive gap.
   Centered pair with a comfortable max-width so the two boxes read large. */
.apr-thanks-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  gap: 2rem;
  max-width: 1040px;
  margin-inline: auto;
}

/* Neutralise the bootstrap col sizing/padding so each card fills its track
   and both columns share the same (tallest) height. */
.apr-thanks-grid > .col-md-6 {
  display: flex;
  width: 100%;
  max-width: 100%;
  flex: 1 1 0;
  padding: 0;
}

@media (max-width: 767px) {
  .apr-thanks-grid {
    grid-template-columns: 1fr;
    max-width: 560px;
  }
}

/* ── Card surface ──
   Specificity (0,2,0): loads after global-custom so wins on tie */
.apr-thanks-page .apr-thanks-card {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  box-shadow: 0 1px 4px rgba(22, 19, 16, 0.06);
  transition: box-shadow 0.18s ease;
  /* Fill the column and equalise heights — overrides the global
     `.col-md-6 .card { height: -webkit-fill-available }` that caused the
     uneven, oversized boxes. */
  width: 100%;
  height: 100%;
  margin-bottom: 0;
  display: flex;
  flex-direction: column;
}

.apr-thanks-page .apr-thanks-card:hover {
  box-shadow: 0 3px 10px rgba(22, 19, 16, 0.1);
}

/* Intro card: top border accent in brand burgundy */
.apr-thanks-page .apr-thanks-card--intro {
  border-top: 3px solid var(--aps-burgundy, #5B1622);
}

/* Steps card: slightly warmer background to differentiate */
.apr-thanks-page .apr-thanks-card--steps {
  background: var(--aps-bg-2, #ECE9E1);
  border-top: 3px solid var(--aps-rule-2, #C8C2B3);
}

/* ── Card body ── */
.apr-thanks-page .apr-thanks-card__body {
  flex: 1 1 auto;
  padding: 2.75rem 2.75rem 3rem;
}

/* Intro card body: center the content (both axes) */
.apr-thanks-page .apr-thanks-card--intro .apr-thanks-card__body {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* ── Card title ──
   Specificity (0,3,0): overrides global .col-md-6 .card .card-title (0,3,0) because site CSS loads after global-custom */
.apr-thanks-page .apr-thanks-card .apr-thanks-card__title {
  font-family: var(--aps-f-display, "Bricolage Grotesque", sans-serif);
  font-weight: 300;
  font-size: 1.65rem;
  letter-spacing: -0.025em;
  line-height: 1.1;
  color: var(--aps-burgundy-ink, #2E0B12);
  margin-bottom: 0.9rem;
  font-variation-settings: "wdth" 88;
}

/* ── Card body text ── */
.apr-thanks-page .apr-thanks-card__text {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--aps-ink-2, #4A4641);
  max-width: 52ch;
}

/* ── Steps list ── */
.apr-thanks-steps {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.apr-thanks-steps__item {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--aps-ink-2, #4A4641);
  padding-left: 1.4rem;
  position: relative;
}

/* Replace default bullet with a small burgundy square marker */
.apr-thanks-steps__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 6px;
  height: 6px;
  background: var(--aps-burgundy, #5B1622);
  border-radius: 1px;
  flex-shrink: 0;
}

/* ── Contact strip ── */
.apr-thanks-contact {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--aps-rule, #DCD7CB);
  text-align: center;
}

.apr-thanks-contact__text {
  font-family: var(--aps-f-text, "Familjen Grotesk", sans-serif);
  font-size: 0.9rem;
  color: var(--aps-ink-3, #8A857D);
  line-height: 1.6;
}

/* Raise to (0,2,0) to beat .text-muted a (0,2,0) in global-custom — loads after so wins on tie */
.apr-thanks-contact .apr-thanks-contact__link {
  color: var(--aps-burgundy, #5B1622);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 500;
  transition: color 0.15s ease;
}

.apr-thanks-contact .apr-thanks-contact__link:hover {
  color: var(--aps-burgundy-2, #7A1F30);
  text-decoration-color: var(--aps-burgundy-2, #7A1F30);
}

/* ── Mobile tweaks ── */
@media (max-width: 575px) {
  .apr-thanks-page {
    padding-top: 2rem;
    padding-bottom: 2.5rem;
  }

  .apr-thanks-page .apr-thanks-card__body {
    padding: 1.5rem 1.25rem 1.75rem;
  }

  .apr-thanks-page .apr-thanks-card .apr-thanks-card__title {
    font-size: 1.35rem;
  }
}

/* ===== 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(--aps-ink-3, #8A857D); background:var(--aps-paper, #FBFAF6); }
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(--aps-cream-3, #F4ECDD); border:1px dashed var(--aps-ink-3, #8A857D); display:flex; justify-content:center; align-items:center; cursor:pointer; color:var(--aps-ink-2, #4A4641); }
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,250,246,.9); }
body.userprofile-page .image-preview .loader::after { content:""; border:3px solid var(--aps-cream, #E8DFC9); border-top:3px solid var(--aps-accent, #5B1622); border-radius:50%; width:24px; height:24px; animation:r8spin-aps 1s linear infinite; }
@keyframes r8spin-aps { 0%{transform:rotate(0)} 100%{transform:rotate(360deg)} }
body.userprofile-page .image-preview .remove-btn { position:absolute; top:5px; right:5px; background:var(--aps-accent, #5B1622); 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) — APS · AllPaintingsStore ===== */
/* --- 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(--aps-bg, #F6F4EF);
  border: 1px solid var(--aps-line, #e6e6e6);
  border-radius: 4px;
  padding: 48px 48px 100px;
  box-shadow: 0 18px 48px rgba(22, 19, 16, 0.10);
}
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(--aps-ink, #161310) !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(--aps-ink-2, #4A4641) !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(--aps-accent, #5B1622);
  border: 1px solid var(--aps-accent, #5B1622);
  color: #fff;
  border-radius: 4px;
  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(--aps-accent-dark, #2E0B12);
  border-color: var(--aps-accent-dark, #2E0B12);
  color: #fff;
}
body.start-selling-page .consultation_bottom { background: var(--aps-burgundy-ink, #2E0B12); }
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(--aps-cream-3, #F4ECDD) !important;
  opacity: 1 !important;
}
body.start-selling-page .consultant_right { color: var(--aps-cream-3, #F4ECDD); }
body.start-selling-page .consultant_right .overlay_img {
  background: rgba(22, 19, 16, 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(--aps-cream-3, #F4ECDD) !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(--aps-cream-3, #F4ECDD) !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(--aps-cream-3, #F4ECDD) !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(--aps-cream-3, #F4ECDD) !important;
}
body.start-selling-page .step-title { background: var(--aps-burgundy, #5B1622); color: var(--aps-cream-2, #F2E6D8); }
body.start-selling-page .step-heading { color: var(--aps-ink, #161310); }
body.start-selling-page .step-header small { color: var(--aps-burgundy, #5B1622); }
body.start-selling-page .step-header h4 { color: var(--aps-ink, #161310); }
body.start-selling-page span.line { background: var(--aps-burgundy, #5B1622); }
body.start-selling-page .step-content p,
body.start-selling-page ul.step_list li { color: var(--aps-ink, #161310); }
body.start-selling-page .contactfull_width_hero_banner_with_background_image { background: var(--aps-cream, #E8DFC9); }

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

/* Card surface */
.artwork-not-found-page .e_card_form {
  background: var(--aps-paper, #FBFAF6);
  border: 1px solid var(--aps-rule, #DCD7CB);
  border-radius: 2px;
  padding: 48px 40px 44px;
  max-width: 640px;
  margin: 0 auto;
}

/* Page heading inside card */
.artwork-not-found-page .form_heading {
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 300;
  font-size: 30px;
  line-height: 1.08;
  letter-spacing: -0.032em;
  font-variation-settings: "wdth" 88;
  color: var(--aps-ink, #161310);
}

/* Body copy / description */
.artwork-not-found-page .form_content {
  font-family: var(--aps-f-text, "Familjen Grotesk", ui-sans-serif, sans-serif);
  font-size: 16px;
  line-height: 1.6;
  color: var(--aps-ink-2, #4A4641);
}

.artwork-not-found-page .form_content p {
  margin-bottom: 0;
  color: var(--aps-ink-2, #4A4641);
}

/* Breadcrumb nav-list */
.artwork-not-found-page .nav-list {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  margin-bottom: 24px;
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
}

.artwork-not-found-page .nav-list a {
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622);
  text-decoration: none;
  transition: color 0.18s ease;
}

.artwork-not-found-page .nav-list a:hover {
  color: var(--aps-burgundy-2, #7A1F30);
}

/* Suppress the global center-out underline on nav-list links */
.artwork-not-found-page .nav-list a::after {
  content: none;
}

/* "Not Found" terminal crumb — muted */
.artwork-not-found-page .nav-list .main-heading {
  font-family: var(--aps-f-mono, "JetBrains Mono", ui-monospace, monospace);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
}

/* Primary CTA — burgundy fill, cream text (UI Kit .btn-primary) */
.artwork-not-found-page .btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 48px;
  padding: 0 22px;
  border-radius: 2px;
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background: var(--aps-burgundy, #5B1622);
  color: var(--aps-cream-2, #F2E6D8);
  border: none;
  text-decoration: none;
  transition: background 0.18s ease;
}

.artwork-not-found-page .btn-primary:hover {
  background: var(--aps-burgundy-2, #7A1F30);
  color: var(--aps-cream-2, #F2E6D8);
}

/* Secondary button — outlined in ink, ink text */
.artwork-not-found-page .btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 48px;
  padding: 0 22px;
  border-radius: 2px;
  font-family: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background: transparent;
  color: var(--aps-ink, #161310);
  border: 1px solid var(--aps-rule-2, #C8C2B3);
  text-decoration: none;
  transition: border-color 0.18s ease, color 0.18s ease;
}

.artwork-not-found-page .btn-secondary:hover {
  border-color: var(--aps-ink, #161310);
  color: var(--aps-ink, #161310);
}

/* Suppress center-out underline on both button types */
.artwork-not-found-page .btn-primary::after,
.artwork-not-found-page .btn-secondary::after {
  content: none;
}

/* =====================================================
   APS — AllPaintingsStore — Artwork buy / reproduction page (artwork_buy_ArtistReproduction)
   Structure lives in global-custom; brand colours/identity here.
   Warm paper / burgundy accent / Bricolage display + Familjen Grotesk text, 2px radius.
   Scoped to .reproduction_main_page (mirrors ADC reference block).
   ===================================================== */
.reproduction_main_page {
  --aps-r-radius: 2px;
  --aps-r-line: var(--aps-rule, #DCD7CB);
  --aps-r-line-2: var(--aps-rule-2, #C8C2B3);
  --aps-r-band: var(--aps-bg-2, #ECE9E1);
  --aps-r-slot: var(--aps-cream, #E8DFC9);
  --aps-r-surface: var(--aps-paper, #FBFAF6);
  --aps-r-accent-hover: var(--aps-burgundy-2, #7A1F30);
  font-family: var(--aps-f-text, var(--font-body));
  color: var(--aps-ink, #161310);
  background-color: var(--aps-bg, #F6F4EF);
}

/* Academic block — full width (no nested container gutters) */
.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 slot */
.reproduction_main_page .input_label_text,
.reproduction_main_page .manual_cstm__box .input_label_text {
  background: var(--aps-r-band, #ECE9E1);
}

/* ---- 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(--aps-r-line, #DCD7CB);
}
.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(--aps-f-text, var(--font-body));
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-transform: none;
  color: var(--aps-ink-2, #4A4641) !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(--aps-burgundy, #5B1622) !important;
}
/* Monochrome icons — neutral ink, burgundy 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(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
}
.reproduction_main_page .fav-icon-artwork a.fav_toggle .fav_icon {
  filter: brightness(0) saturate(100%) invert(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
  opacity: 1;
}

/* ---- Metadata chips (medium, movement, year, …) ---- */
.reproduction_main_page .details_reproducton li {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 13px;
  font-weight: 400;
  color: var(--aps-ink-2, #4A4641);
}
.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(--aps-f-display, var(--font-title));
  font-weight: 600;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: var(--aps-ink, #161310);
  text-transform: none;
}
.reproduction_main_page .buy_sale_channel_short_description {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 14px;
  font-weight: 300;
  color: var(--aps-ink-2, #4A4641);
}

/* ---- Accordions (description, size, summary, …) — warm band ---- */
.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(--aps-r-band, #ECE9E1) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB) !important;
  border-radius: var(--aps-r-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(--aps-r-band, #ECE9E1);
}
.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(--aps-f-text, var(--font-body)) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase !important;
  color: var(--aps-ink, #161310) !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(--aps-f-text, var(--font-body));
  font-size: 14px;
  font-weight: 300;
  color: var(--aps-ink-2, #4A4641);
  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(--aps-r-line, #DCD7CB);
  border-bottom-color: var(--aps-r-line, #DCD7CB);
}
.reproduction_main_page .repruct_content_collapse .accordion-body span {
  color: var(--aps-burgundy, #5B1622);
}

/* Configurator tabs (.reproduc_tabs nav-pills) */
.reproduction_main_page .reproduc_tabs .nav-pills .nav-link {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--aps-ink-3, #8A857D);
  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(--aps-ink, #161310);
  border-bottom-color: var(--aps-burgundy, #5B1622);
}

/* Size / frame radio controls */
.reproduction_main_page .repro_radio label,
.reproduction_main_page .article_main_page .repro_radio label,
.adc-buy-page-section .repro_radio label,
.reproduction_main_page .ques_box .repro_radio label,
.reproduction_main_page .article_main_page .ques_box .repro_radio label,
.adc-buy-page-section .ques_box .repro_radio label {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 14px !important;
  font-weight: 400;
  line-height: 1.45 !important;
  color: var(--aps-ink, #161310) !important;
}
.reproduction_main_page .repro_radio input[type="radio"],
.reproduction_main_page .article_main_page .repro_radio input[type="radio"],
.adc-buy-page-section .repro_radio input[type="radio"] {
  background: var(--aps-r-surface, #FBFAF6);
}
.reproduction_main_page .repro_radio input[type="radio"]:after,
.reproduction_main_page .article_main_page .repro_radio input[type="radio"]:after,
.adc-buy-page-section .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,
.adc-buy-page-section .question_option .repro_radio input[type="radio"]:after {
  background-color: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line-2, #C8C2B3) !important;
}
.reproduction_main_page .repro_radio input[type="radio"]:checked:after,
.reproduction_main_page .article_main_page .repro_radio input[type="radio"]:checked:after,
.adc-buy-page-section .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,
.adc-buy-page-section .question_option .repro_radio input[type="radio"]:checked:after {
  background-color: var(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
  outline: 1.5px solid var(--aps-burgundy, #5B1622) !important;
  outline-offset: 3px;
}

/* Clickable frame/size tile cards — lighter surface so they read as selectable */
.reproduction_main_page .frame_box {
  background: var(--aps-r-surface, #FBFAF6);
  border: 1px solid var(--aps-r-line-2, #C8C2B3);
  border-radius: var(--aps-r-radius, 2px);
}
.reproduction_main_page .frame_box.active,
.reproduction_main_page .frame_box.selected {
  border-color: var(--aps-burgundy, #5B1622);
  box-shadow: inset 0 0 0 1px var(--aps-burgundy, #5B1622);
}
/* Section containers (.commn_strache_frame) — transparent so they absorb the
   accordion band (#ECE9E1) instead of floating as a white card */
.reproduction_main_page .commn_strache_frame {
  background: transparent;
  border: none;
  border-radius: 0;
}
.reproduction_main_page .commn_strache_frame.active,
.reproduction_main_page .commn_strache_frame.selected {
  border-color: var(--aps-burgundy, #5B1622);
  box-shadow: inset 0 0 0 1px var(--aps-burgundy, #5B1622);
}

/* Preset-size dropdown — override legacy cream defaults (#f5f1df / #F7F2E1 /
   #f6f2e1 from global-style) so the control matches the APS paper palette.
   The outer .commn_strache_frame is now transparent; the border lives here. */
.reproduction_main_page .manual_std__box .custom-dropdown {
  background: var(--aps-r-surface, #FBFAF6);
  border: 1px solid var(--aps-r-line-2, #C8C2B3);
  border-radius: var(--aps-r-radius, 2px);
  color: var(--aps-ink, #161310);
}
.reproduction_main_page .manual_std__box .custom-dropdown .dropdown-header,
.reproduction_main_page .manual_std__box .custom-dropdown .dropdown-list {
  background: var(--aps-r-surface, #FBFAF6);
  border-color: var(--aps-r-line-2, #C8C2B3);
  color: var(--aps-ink, #161310);
}
.reproduction_main_page .manual_std__box .custom-dropdown .dropdown-list li {
  border-bottom-color: var(--aps-r-line, #DCD7CB);
  color: var(--aps-ink, #161310);
}
.reproduction_main_page .manual_std__box .custom-dropdown .dropdown-list li:hover {
  background: var(--aps-bg-2, #ECE9E1);
}

/* Price spans */
.reproduction_main_page .face_color_red,
.reproduction_main_page .aps-price-amount,
.reproduction_main_page .summery_total .face_color_red {
  color: var(--aps-burgundy, #5B1622) !important;
  font-family: var(--aps-f-display, var(--font-title));
  font-weight: 600;
}
/* Surcharge / +price markers */
.reproduction_main_page .yellow_cont .face_color_red,
.reproduction_main_page .optional_box .face_color_red {
  color: var(--aps-surcharge, #A8321F) !important;
}

/* Order summary block */
.reproduction_main_page .summery_box,
.reproduction_main_page .summery_inner {
  background: var(--aps-r-surface, #FBFAF6);
  border: 1px solid var(--aps-r-line, #DCD7CB);
  border-radius: var(--aps-r-radius, 2px);
}
.reproduction_main_page .summery_heading,
.reproduction_main_page .summery_box h4 {
  font-family: var(--aps-f-text, var(--font-body));
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--aps-ink, #161310);
}
.reproduction_main_page .summery_text,
.reproduction_main_page .summery_box li,
.reproduction_main_page .summery_box p {
  font-family: var(--aps-f-text, var(--font-body));
  color: var(--aps-ink-2, #4A4641);
}
.reproduction_main_page .summery_box .summery_total,
.reproduction_main_page .summery_total {
  border-top: 1px solid var(--aps-r-line, #DCD7CB);
  color: var(--aps-ink, #161310);
}

/* CTA buttons (add-to-cart, primary buy) */
.reproduction_main_page .add_tocart_btn button,
.reproduction_main_page .reproduction_button_box .add_tocart_btn button,
.reproduction_main_page .add_cart_btn {
  font-family: var(--aps-f-display, var(--font-title));
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--aps-cream-2, #F2E6D8);
  background: var(--aps-burgundy, #5B1622);
  border: 1px solid var(--aps-burgundy, #5B1622);
  border-radius: var(--aps-r-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),
.reproduction_main_page .add_cart_btn:hover:not(:disabled) {
  background: var(--aps-r-accent-hover, #7A1F30);
  border-color: var(--aps-r-accent-hover, #7A1F30);
  color: var(--aps-cream-2, #F2E6D8);
}

/* ---- Academic / story block ---- */
.reproduction_main_page .artwork_section,
.reproduction_main_page .article_main_page .artwork_section,
.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 */
.reproduction_main_page .art_heading,
.reproduction_main_page .article_main_page .art_heading,
.adc-buy-page-section .art_heading,
.reproduction_main_page .art_heading.art_heading--quick-facts,
.adc-buy-page-section .art_heading.art_heading--quick-facts,
.reproduction_main_page .quick_facts_section h4,
.adc-buy-page-section .quick_facts_section h4,
.reproduction_main_page .quick_facts_section h4.art_heading,
.reproduction_main_page .art_quize_section .art_header h4,
.adc-buy-page-section .art_quize_section .art_header h4,
.reproduction_main_page .side_headings,
.adc-buy-page-section .side_headings {
  font-family: var(--aps-f-text, var(--font-body)) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--aps-ink, #161310) !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid var(--aps-r-line-2, #C8C2B3) !important;
  opacity: 1;
}
.reproduction_main_page .art_heading.art_heading--section-spaced,
.adc-buy-page-section .art_heading.art_heading--section-spaced {
  margin-top: 36px !important;
}
.adc-buy-page-section .parent_slid_box.adc-related-slider {
  border: none;
  border-bottom: none;
  padding: 0 0 28px;
  margin: 0;
}
.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(--aps-f-text, var(--font-body));
  font-weight: 300;
  color: var(--aps-ink-2, #4A4641);
}
.reproduction_main_page .box_facts ul li b,
.reproduction_main_page .article_main_page .box_facts ul li b {
  font-weight: 600;
  color: var(--aps-ink, #161310);
}
.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(--aps-burgundy, #5B1622);
}
.reproduction_main_page .box_facts ul li a:hover,
.reproduction_main_page .qf-more-trigger:hover {
  color: var(--aps-r-accent-hover, #7A1F30);
}

/* Quick Facts cards — paper surface (matches Art Quiz / TOC cards) */
.reproduction_main_page .quick_facts_section,
.reproduction_main_page .article_main_page .quick_facts_section,
.adc-buy-page-section .quick_facts_section {
  background-color: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  border-radius: var(--aps-r-radius, 2px);
  padding: 20px;
}
/* Art Quiz — paper surface card */
.reproduction_main_page .art_quize_section,
.reproduction_main_page .article_main_page .art_quize_section,
.adc-buy-page-section .art_quize_section {
  margin-top: 0;
  background: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  border-radius: var(--aps-r-radius, 2px);
  padding: 20px;
}
.reproduction_main_page .table_of_contents_section,
.reproduction_main_page .article_main_page .table_of_contents_section,
.adc-buy-page-section .table_of_contents_section {
  margin-top: 0;
  background: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  border-radius: var(--aps-r-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,
.adc-buy-page-section .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,
.adc-buy-page-section .art_quize_section .art_header p {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 12px;
  font-weight: 300;
  line-height: 1.45;
  color: var(--aps-ink-2, #4A4641) !important;
  margin-bottom: 12px;
}
.reproduction_main_page .ques_heading,
.reproduction_main_page .article_main_page .ques_heading,
.adc-buy-page-section .ques_heading {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622) !important;
}
.reproduction_main_page .ques_text,
.reproduction_main_page .article_main_page .ques_text,
.adc-buy-page-section .ques_text {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--aps-ink, #161310) !important;
  margin: 8px 0 12px;
}
.reproduction_main_page .ques_box,
.adc-buy-page-section .ques_box {
  margin-bottom: 14px;
}
.reproduction_main_page .art_quize_section .submit_quiz .add_tocart_btn button,
.adc-buy-page-section .art_quize_section .submit_quiz .add_tocart_btn button {
  font-family: var(--aps-f-display, var(--font-title));
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--aps-cream-2, #F2E6D8) !important;
  background: var(--aps-burgundy, #5B1622) !important;
  border: 1px solid var(--aps-burgundy, #5B1622) !important;
  border-radius: var(--aps-r-radius, 2px);
}
.reproduction_main_page .art_quize_section .submit_quiz .add_tocart_btn button:hover:not(:disabled),
.adc-buy-page-section .art_quize_section .submit_quiz .add_tocart_btn button:hover:not(:disabled) {
  background: var(--aps-r-accent-hover, #7A1F30) !important;
  border-color: var(--aps-r-accent-hover, #7A1F30) !important;
}
.reproduction_main_page .art_quize_section .submit_quiz .add_tocart_btn button.disabled_button,
.adc-buy-page-section .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,
.adc-buy-page-section .art_quize_section .quiz_result_text {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 14px;
  line-height: 1.45;
  color: var(--aps-ink, #161310) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  background: var(--aps-r-band, #ECE9E1);
}
.reproduction_main_page .art_quize_section .repro_radio.mark_wrong_answer,
.adc-buy-page-section .art_quize_section .repro_radio.mark_wrong_answer {
  border-color: #d7352c;
}
.reproduction_main_page .art_quize_section .repro_radio.mark_right_answer,
.adc-buy-page-section .art_quize_section .repro_radio.mark_right_answer {
  border-color: #4a8c2a;
}

/* Collections band at bottom of buy page */
.reproduction_main_page .full_collection_section {
  background: var(--aps-r-band, #ECE9E1);
  color: var(--aps-ink, #161310);
}
.reproduction_main_page .collec_heading,
.reproduction_main_page .collec_heading a {
  font-family: var(--aps-f-display, var(--font-title));
  font-size: clamp(1.5rem, 2.5vw, 2.25rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--aps-ink, #161310);
}
.reproduction_main_page .collec_text {
  font-family: var(--aps-f-text, var(--font-body));
  font-weight: 300;
  color: var(--aps-ink-2, #4A4641);
}
.reproduction_main_page .collection_tabs .nav-pills .nav-link {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 13px;
  color: var(--aps-ink-2, #4A4641);
  border-color: var(--aps-r-line, #DCD7CB);
}
.reproduction_main_page .collection_tabs .nav-pills .nav-link.active,
.reproduction_main_page .collection_tabs .nav-pills .show > .nav-link {
  color: var(--aps-ink, #161310);
  background-color: var(--aps-r-surface, #FBFAF6);
  border-color: var(--aps-r-line-2, #C8C2B3);
}
.reproduction_main_page .collection_details h4 {
  color: var(--aps-ink, #161310);
}

/* 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 — APS text CTA (accordions, tabs, options) */
.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(--aps-f-text, var(--font-body));
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622) !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(--aps-r-accent-hover, #7A1F30) !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(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
  opacity: 0.9;
  transition: opacity 0.15s ease, transform 0.15s ease, filter 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(--aps-f-text, var(--font-body));
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622) !important;
  cursor: pointer;
}
.reproduction_main_page .related_articles .explore_techniques a,
.reproduction_main_page .article_main_page .related_articles .explore_techniques a {
  font: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  text-transform: inherit;
  color: var(--aps-burgundy, #5B1622) !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,
.reproduction_main_page .article_main_page .related_articles .explore_techniques:hover,
.reproduction_main_page .article_main_page .related_articles .explore_techniques a:hover {
  color: var(--aps-r-accent-hover, #7A1F30) !important;
}
.reproduction_main_page .related_articles .explore_techniques span,
.reproduction_main_page .article_main_page .related_articles .explore_techniques span {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}
.reproduction_main_page .related_articles .explore_techniques span img,
.reproduction_main_page .article_main_page .related_articles .explore_techniques span img {
  width: 14px;
  height: 14px;
  margin: 0 !important;
  filter: brightness(0) saturate(100%) invert(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
  opacity: 0.9;
  transition: opacity 0.15s ease, transform 0.15s ease, filter 0.15s ease;
}
.reproduction_main_page .related_articles .explore_techniques:hover span img,
.reproduction_main_page .article_main_page .related_articles .explore_techniques:hover span img {
  opacity: 1;
  transform: translateX(2px);
}

/* Academic block — Related Artworks inside reproduction_main_page */
.reproduction_main_page .container-fluid.adc-buy-page-section {
  padding-top: 32px !important;
  border-top: 1px solid var(--aps-r-line, #DCD7CB);
}
.reproduction_main_page .container-fluid.adc-buy-page-section .art_heading.art_heading--section-spaced,
.reproduction_main_page .article_main_page .container-fluid.adc-buy-page-section .art_heading.art_heading--section-spaced {
  margin-top: 33px !important;
}
.reproduction_main_page .article_main_page hr {
  margin: 0;
  border: none;
  border-top: 1px solid var(--aps-r-line, #DCD7CB);
}

/* Artist-detail & related-artworks sliders — reuse the APS homepage swiper
   arrow style: burgundy aps icon, no background band, prev flipped, hover lift. */
.article_main_page .artistPage_Slider_section .artist_slider .swp_btn,
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn {
  margin: 0;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  opacity: 1;
}
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn {
  width: 44px;
  height: 44px;
}
.article_main_page .artistPage_Slider_section .artist_slider .swp_btn img,
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn img {
  content: url('/static/images/artist/arrows_swiper_aps.svg');
  opacity: 0.7;
  filter: drop-shadow(0 2px 4px rgba(91, 22, 34, 0.28));
  transition: filter 0.18s ease, transform 0.18s ease, opacity 0.18s ease;
}
.article_main_page .artistPage_Slider_section .artist_slider .swp_btn.swiper-button-prev,
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn.swiper-button-prev {
  transform: none;
}
.article_main_page .artistPage_Slider_section .artist_slider .swp_btn.swiper-button-prev img,
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn.swiper-button-prev img {
  transform: scaleX(-1);
}
.article_main_page .artistPage_Slider_section .artist_slider .swp_btn:hover img,
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn:hover img {
  filter: drop-shadow(0 2px 8px rgba(91, 22, 34, 0.35));
  opacity: 1;
  transform: scale(1.08);
}
.article_main_page .artistPage_Slider_section .artist_slider .swp_btn.swiper-button-prev:hover img,
.reproduction_main_page .parent_slid_box.adc-related-slider .artist_slider .swp_btn.swiper-button-prev:hover img {
  transform: scaleX(-1) scale(1.08);
}

/* ===== APS — artist_detail.html — artistPage_Slider_section (corpus/popular/medium sliders) ===== */
/* Background — linen-parchment band matching APS card surfaces */
.article_main_page .artistPage_Slider_section {
  background: var(--aps-bg-2, #ECE9E1) !important;
  padding: 32px var(--aps-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(--aps-rule, #DCD7CB);
  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(--aps-f-display, var(--font-title));
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 400;
  line-height: 1.25;
  color: var(--aps-ink, #161310);
  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(--aps-burgundy, #5B1622);
}
/* view_all_art tag links */
.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(--aps-f-mono, monospace);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.35;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622);
  background: var(--aps-bg, #F6F4EF);
  padding: 0.3rem 0.4rem;
  text-decoration: none;
  transition: color 0.15s ease, background 0.15s ease;
}
.article_main_page .artistPage_Slider_section .view_all_art a:hover {
  color: var(--aps-burgundy-2, #8B1C2C) !important;
  background: var(--aps-cream, #E8DFC9) !important;
}
/* Disable the box-level veil (inset:0 would cover the text area below the image) */
.article_main_page .artistPage_Slider_section .artist_slid_box::after {
  display: none !important;
}
/* Veil reattached to the image <a> — covers only the artwork thumbnail */
.article_main_page .artistPage_Slider_section .artist_slid_box > a {
  position: relative;
}
.article_main_page .artistPage_Slider_section .artist_slid_box > a::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(transparent 30%, rgba(0, 0, 0, .55) 100%);
  opacity: 0;
  transition: opacity 1.1s;
  pointer-events: none;
}
.article_main_page .artistPage_Slider_section .artist_slid_box > a:hover::after {
  opacity: 1;
}
/* ===== END APS — artist_detail.html artistPage_Slider_section ===== */

/* ===== APS — artworksimilarslider (artwork_similar_slider_section.html) ===== */
/* Disable the box-level veil (inset:0 would cover the text area below the image) */
.artworksimilarslider .artist_slid_box::after {
  display: none !important;
}
/* Veil reattached to the image <a> — covers only the artwork thumbnail */
.artworksimilarslider .artist_slid_box > a::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(transparent 30%, rgba(0, 0, 0, .55) 100%);
  opacity: 0;
  transition: opacity 1.1s;
  pointer-events: none;
}
.artworksimilarslider .artist_slid_box > a:hover::after {
  opacity: 1;
}
/* Artist name kicker hover color */
.artworksimilarslider .view_all_art .vincent_color:hover {
  color: var(--aps-burgundy-2, #8B1C2C);
  opacity: 1;
}
/* Artwork title link hover color */
.artworksimilarslider .view_all_art a:hover {
  color: var(--aps-burgundy-2, #8B1C2C) !important;
}
/* ===== END APS — artworksimilarslider ===== */

/* Digital Image — benefits band (dark burgundy-ink surface) */
.premium_service .why_choose_right.black_back {
  background: var(--aps-burgundy-ink, #2E0B12) !important;
}
.premium_service .why_choose_right h3,
.premium_service .why_choose_right .heading_text {
  font-family: var(--aps-f-display, var(--font-title));
  color: var(--aps-cream-3, #F4ECDD);
}
.premium_service .why_choose_right .heading_paragrap {
  color: var(--aps-gold, #E8C9A8);
}
.premium_service .why_choose_info h5 {
  font-family: var(--aps-f-text, var(--font-body));
  color: var(--aps-cream-3, #F4ECDD);
}
.premium_service .why_choose_info p {
  color: var(--aps-gold, #E8C9A8);
}
.premium_service .why_choose_icon img {
  background: transparent !important;
  filter: brightness(0) invert(1);
  opacity: 0.92;
}

/* ===== APS — 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 / .adc-buy-page-section, 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
   (beige #E8E2CD facts, dark #3E342A quiz, gold buttons). Re-apply APS tokens. */
.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(--aps-f-text, var(--font-body)) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: var(--aps-ink, #161310) !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
  padding-top: 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid var(--aps-r-line-2, #C8C2B3) !important;
  opacity: 1;
}
.article_main_page .box_facts ul li {
  font-family: var(--aps-f-text, var(--font-body));
  font-weight: 300;
  color: var(--aps-ink-2, #4A4641);
}
.article_main_page .box_facts ul li b {
  font-weight: 600;
  color: var(--aps-ink, #161310);
}
.article_main_page .box_facts ul li a,
.article_main_page .qf-more-trigger {
  color: var(--aps-burgundy, #5B1622);
}
.article_main_page .box_facts ul li a:hover,
.article_main_page .qf-more-trigger:hover {
  color: var(--aps-r-accent-hover, #7A1F30);
}
/* Quick Facts card — paper surface (matches Art Quiz card) */
.article_main_page .quick_facts_section {
  background-color: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  border-radius: var(--aps-r-radius, 2px);
  padding: 20px;
}
/* Art Quiz card — paper surface (overrides global dark #3E342A) */
.article_main_page .art_quize_section {
  margin-top: 0;
  background: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  border-radius: var(--aps-r-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(--aps-f-text, var(--font-body));
  font-size: 12px;
  font-weight: 300;
  line-height: 1.45;
  color: var(--aps-ink-2, #4A4641) !important;
  margin-bottom: 12px;
}
.article_main_page .ques_heading {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--aps-burgundy, #5B1622) !important;
}
.article_main_page .ques_text {
  font-family: var(--aps-f-text, var(--font-body));
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--aps-ink, #161310) !important;
  margin: 8px 0 12px;
}
.article_main_page .art_quize_section .ques_box .repro_radio label {
  color: var(--aps-ink, #161310) !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(--aps-r-surface, #FBFAF6);
}
.article_main_page .art_quize_section .question_option .repro_radio input[type="radio"]:after {
  background-color: var(--aps-r-surface, #FBFAF6) !important;
  border: 1px solid var(--aps-r-line-2, #C8C2B3) !important;
}
.article_main_page .art_quize_section .question_option .repro_radio input[type="radio"]:checked:after {
  background-color: var(--aps-burgundy, #5B1622) !important;
  border-color: var(--aps-burgundy, #5B1622) !important;
  outline: 1.5px solid var(--aps-burgundy, #5B1622) !important;
  outline-offset: 3px;
}
.article_main_page .art_quize_section .submit_quiz .add_tocart_btn button {
  font-family: var(--aps-f-display, var(--font-title));
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--aps-cream-2, #F2E6D8) !important;
  background: var(--aps-burgundy, #5B1622) !important;
  border: 1px solid var(--aps-burgundy, #5B1622) !important;
  border-radius: var(--aps-r-radius, 2px);
}
.article_main_page .art_quize_section .submit_quiz .add_tocart_btn button:hover:not(:disabled) {
  background: var(--aps-r-accent-hover, #7A1F30) !important;
  border-color: var(--aps-r-accent-hover, #7A1F30) !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(--aps-f-text, var(--font-body));
  font-size: 14px;
  line-height: 1.45;
  color: var(--aps-ink, #161310) !important;
  border: 1px solid var(--aps-r-line, #DCD7CB);
  background: var(--aps-r-band, #ECE9E1);
}
.article_main_page .art_quize_section .repro_radio.mark_wrong_answer {
  border-color: #d7352c;
}
.article_main_page .art_quize_section .repro_radio.mark_right_answer {
  border-color: #4a8c2a;
}
/* List of Artworks — paper band (overrides global beige #E8E2CD) */
.article_main_page .listOf_artwork_section {
  background: var(--aps-r-surface, #FBFAF6) !important;
  background-color: var(--aps-r-surface, #FBFAF6) !important;
}
.article_main_page .listOf_artwork_section .view_all_art a {
  font-family: var(--aps-f-text, var(--font-body));
  color: var(--aps-ink, #161310) !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(--aps-burgundy, #5B1622) !important;
}
/* ===== END APS — museum / artist / article detail sidebar ===== */

/* ===== customers_reviews — APS brand tokens (structure lives in global-custom) ===== */
.customers-reviews-page {
  --cr-font:              var(--font-body, 'Archivo', Arial, sans-serif);
  --cr-card-bg:           #FBFAF6;
  --cr-card-border:       1px solid rgba(22, 19, 16, .12);
  --cr-card-radius:       0;
  --cr-card-shadow:       none;
  --cr-card-shadow-hover: 0 10px 26px -18px rgba(22, 19, 16, .4);
  --cr-text-color:        var(--aps-ink-2, #4A4641);
  --cr-name-color:        var(--aps-ink, #161310);
  --cr-meta-color:        var(--aps-ink-3, #8A857D);
  --cr-divider-color:     rgba(22, 19, 16, .14);
}

/* ===== plate-of-affinities (similar artworks study plate) =====
   APS identity: warm paper plate, light rules, burgundy accent (centered
   frame + bars), Bricolage Grotesque captions. Structure in global-custom. */
.plate-of-affinities-page-shell {
    --poa-serif-font: var(--aps-f-display, "Bricolage Grotesque", ui-sans-serif, sans-serif);
    --poa-ink: var(--aps-ink, #161310);
    --poa-ink-muted: var(--aps-ink-2, #4A4641);
    --poa-ink-faint: var(--aps-ink-3, #8A857D);
    --poa-hairline: var(--aps-rule, #DCD7CB);
    --poa-plate-bg: var(--aps-paper, #FBFAF6);
    --poa-plate-border: var(--aps-rule-2, #C8C2B3);
    --poa-work-frame: var(--aps-rule-2, #C8C2B3);
    --poa-work-frame-width: 2px;
    --poa-work-mat: var(--aps-paper, #FBFAF6);
    --poa-accent: var(--aps-burgundy-2, #7A1F30);
    --poa-card-bg: var(--aps-bg-2, #ECE9E1);
    --poa-bar-track: var(--aps-rule, #DCD7CB);
    --poa-bar-fill: var(--aps-burgundy, #5B1622);
    --poa-shelf-line: var(--aps-rule-2, #C8C2B3);
}

/* ===== 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(--aps-r-line, #DCD7CB);
  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(--aps-f-text, var(--font-body));
  font-size: 13px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-transform: none;
  color: var(--aps-ink-2, #4A4641) !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(--aps-burgundy, #5B1622) !important;
}
/* hover/active icon recolour → APS burgundy #5B1622 */
.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(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
}
.art_info_box .fav-icon-artwork a.fav_toggle .fav_icon {
  filter: brightness(0) saturate(100%) invert(11%) sepia(48%) saturate(2618%) hue-rotate(327deg) brightness(86%) contrast(98%);
  opacity: 1;
}

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