/*
 Melina Gallery Visual System 0.4.0
 Lightweight CSS + vector decoration.
 No image filters or background animation.
*/

:root {
 --jdc-bg: #150f20;
 --jdc-text: #f4ecf5;
 --jdc-muted: #ccbad0;
 --jdc-accent: #e0b76e;
 --jdc-line: #684c73;
 --mg-panel: #25182f;
 --mg-panel-soft: #31213d;
 --mg-heading: #fff4ea;
 --mg-gold: #e0b76e;
 --mg-border: rgba(224,183,110,.33);
 --mg-overlay: rgba(21,15,32,.92);
 color-scheme: dark;
}

:root[data-melina-palette="lavender"] {
 --jdc-bg: #f0e7f5;
 --jdc-text: #33203d;
 --jdc-muted: #65516c;
 --jdc-accent: #90692f;
 --jdc-line: #cbb7d0;
 --mg-panel: #fffafd;
 --mg-panel-soft: #e8dbed;
 --mg-heading: #38223f;
 --mg-gold: #946a32;
 --mg-border: rgba(144,105,47,.34);
 --mg-overlay: rgba(250,245,252,.95);
 color-scheme: light;
}

html {
 background: var(--jdc-bg);
}

body {
 background-color: var(--jdc-bg);
 background-image:
  url("../svg/royal-plum-gold.svg"),
  radial-gradient(ellipse at 12% 8%,
    rgba(114,48,128,.29),transparent 52%),
  radial-gradient(ellipse at 90% 75%,
    rgba(143,82,111,.16),transparent 56%),
  linear-gradient(135deg,#150f20,#261331 56%,#100c19);
 background-repeat: no-repeat;
 background-size: 100% auto,auto,auto,auto;
 background-position: top center,center,center,center;
 background-attachment: scroll;
 color: var(--jdc-text);
}

:root[data-melina-palette="lavender"] body {
 background-image:
  url("../svg/lavender-gold.svg"),
  radial-gradient(ellipse at 18% 10%,
    rgba(199,155,214,.36),transparent 50%),
  radial-gradient(ellipse at 80% 68%,
    rgba(227,190,210,.30),transparent 55%),
  linear-gradient(135deg,#f5edf8,#e7daef 60%,#f9f4fb);
}

.jdc-site-header {
 background: var(--mg-overlay);
 border-bottom: 1px solid var(--mg-border);
}

.jdc-site-footer {
 background: var(--mg-panel);
 color: var(--jdc-text);
 border-top: 1px solid var(--mg-border);
}

.jdc-brand a,
.jdc-navigation a,
.jdc-footer-nav a {
 color: var(--jdc-text);
}

.jdc-navigation a:hover,
.jdc-footer-nav a:hover {
 color: var(--mg-gold);
}

.jdc-hero,
.jdc-premium-hero,
.jdc-artwork-page {
 background: transparent;
}

.jdc-premium-intro h1,
.jdc-premium-intro h1 em,
.jdc-artwork-information h1,
.jdc-section-heading h2,
.jdc-section-premium h2,
.jdc-content-page h1,
.jdc-art-details h2,
.jdc-artwork-description,
.jdc-artwork-summary {
 color: var(--mg-heading);
}

.jdc-premium-description,
.jdc-art-details p,
.jdc-artwork-breadcrumb,
.jdc-premium-signature,
.jdc-empty {
 color: var(--jdc-muted);
}

.jdc-eyebrow,
.jdc-view-all,
.jdc-artwork-gold-divider,
.jdc-gold-rule {
 color: var(--mg-gold);
}

.jdc-art-image,
.jdc-art-placeholder,
.jdc-artwork-visual,
.jdc-artwork-no-image,
.jdc-featured-artwork,
.jdc-collection-empty {
 background-color: var(--mg-panel);
 border-color: var(--mg-border);
}

.jdc-button,
.jdc-premium-button {
 border-color: var(--mg-gold);
 color: var(--mg-heading);
 background: var(--mg-panel);
}

.jdc-button:hover,
.jdc-premium-button:hover {
 background: var(--mg-panel-soft);
 color: var(--mg-gold);
}

.jdc-artwork-page .jdc-art-configurator,
.jdc-art-size-picker {
 background: var(--mg-panel);
 color: var(--jdc-text);
 border-color: var(--mg-border);
}

.jdc-artwork-page .jdc-art-configurator select,
.jdc-art-public-size {
 background: var(--mg-panel-soft);
 color: var(--jdc-text);
 border: 1px solid var(--mg-border);
}

.jdc-artwork-page .jdc-viewer-measurements,
.jdc-art-size-note {
 color: var(--jdc-muted);
}

.jdc-artwork-page .jdc-viewer-stage,
.jdc-artwork-page .jdc-viewer-art {
 max-width: 100%;
}

.jdc-art-grid,
.jdc-artwork-layout,
.jdc-premium-hero-grid,
.jdc-artwork-viewer-full {
 min-width: 0;
}

.jdc-art-grid > *,
.jdc-artwork-layout > *,
.jdc-premium-hero-grid > * {
 min-width: 0;
}

img {
 max-width: 100%;
 height: auto;
}

.mg-palette-switch {
 position: fixed;
 right: 14px;
 bottom: 14px;
 z-index: 999;
 border: 1px solid var(--mg-gold);
 background: var(--mg-panel);
 color: var(--jdc-text);
 padding: 10px 14px;
 border-radius: 28px;
 font: 600 13px/1.4 system-ui,sans-serif;
 box-shadow: 0 5px 20px rgba(0,0,0,.20);
 cursor: pointer;
}

.mg-palette-switch:hover,
.mg-palette-switch:focus-visible {
 outline: 2px solid var(--mg-gold);
 outline-offset: 2px;
}

@media (max-width: 767px) {
 body {
  background-size: auto 760px,auto,auto,auto;
  background-position: top center,center,center,center;
 }
 .jdc-premium-hero-grid,
 .jdc-artwork-layout {
  grid-template-columns: minmax(0,1fr);
 }
 .jdc-premium-intro h1 {
  font-size: clamp(30px,8vw,44px);
  line-height: 1.15;
 }
 .jdc-hero-inner {
  padding-block: 48px;
 }
 .jdc-artwork-viewer-full {
  margin-top: 32px;
 }
 .mg-palette-switch {
  right: 8px;
  bottom: 8px;
  font-size: 12px;
  padding: 9px 12px;
 }
}

@media (prefers-reduced-motion: reduce) {
 .mg-palette-switch {
  transition: none;
 }
}

@media print {
 .mg-palette-switch {
  display: none;
 }
 body {
  background-image: none !important;
 }
}
