/* =====================================================================
   Displays Trend MAISON: warm ivory & champagne, editorial luxury.
   Sizes, colours and spacing live in Elementor; this file adds the
   finishing touches Elementor has no control for.
   ===================================================================== */
:root {
  --mx-ivory: #F5F1EA;
  --mx-paper: #FBF9F5;
  --mx-sand: #EFE8DC;
  --mx-sand2: #E6DCCB;
  --mx-ink: #1F1C18;
  --mx-ink2: #2A2620;
  --mx-body: #4A433B;
  --mx-muted: #7A7268;
  --mx-line: #E3DACB;
  --mx-gold: #B08D57;
  --mx-gold-soft: #D8C3A0;
  --mx-serif: "Cormorant Garamond", "Cormorant", Georgia, serif;
  --mx-sans: "Inter Tight", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mx-ease: cubic-bezier(.22,.8,.24,1);
  --dt-font: var(--mx-sans);
  --dt-bg: var(--mx-ivory);
  --dt-ink: var(--mx-ink);
  --dt-volt: var(--mx-gold);
}

/* ---------- Base ---------- */
body.dt-store { background: var(--mx-ivory) !important; color: var(--mx-body); font-family: var(--mx-sans); letter-spacing: .005em; }
body.dt-store ::selection { background: var(--mx-gold-soft); color: var(--mx-ink); }
body.dt-store h1, body.dt-store h2, body.dt-store .dt-page-head h1, body.dt-store .product_title,
body.dt-store .dt-arch-hero h1, body.dt-store .dt-feature-body h2, body.dt-store .dt-list-empty h2, body.dt-store .dt-arch-empty h2,
body.dt-store .dt-empty-cart h2, body.dt-store .dt-arch-shop-head h2, body.dt-store .dt-pol-body h2, body.dt-store .dt-pol-help h2,
body.dt-store .cart_totals h2, body.dt-store .woocommerce-billing-fields h3, body.dt-store #order_review_heading, body.dt-store .related > h2, body.dt-store .upsells > h2,
body.dt-store .woocommerce-Tabs-panel h2, body.dt-store .dt-auth-brand h1, body.dt-store .page-header .entry-title, body.dt-store .entry-title {
  font-family: var(--mx-serif) !important; font-weight: 500 !important; letter-spacing: -0.01em !important;
}
body.dt-store .product_title { font-size: clamp(34px, 3.6vw, 52px) !important; line-height: 1.05 !important; }
body.dt-store .dt-arch-hero h1 { font-size: clamp(44px, 6vw, 84px); line-height: .98; }
body.dt-store .dt-page-head h1 { font-size: clamp(40px, 5vw, 68px); }
body.dt-store .entry-content a:not(.button):not(.elementor-button) { text-decoration-color: var(--mx-gold); }
body.dt-store .price, body.dt-store .amount { font-variant-numeric: lining-nums; }
.dt-arch-type, .dt-feature-tag { letter-spacing: .18em !important; }
.dt-arch-hero { background: var(--mx-ink) !important; }
.dt-arch-hero::after { border-color: rgba(216,195,160,.35) !important; }
.dt-arch-hero::before { background: rgba(216,195,160,.07) !important; }
.dt-feature-tag { background: var(--mx-sand) !important; color: var(--mx-ink) !important; }
.dt-badge-new { background: var(--mx-ink) !important; color: var(--mx-ivory) !important; }
.dt-stars-fill { color: var(--mx-gold) !important; }

/* Store buttons: espresso with a champagne hover */
.dt-store a.dt-btn-volt, .dt-store a.dt-btn-dark { background: var(--mx-ink) !important; color: var(--mx-ivory) !important; border-color: var(--mx-ink) !important; }
.dt-store a.dt-btn-volt:hover, .dt-store a.dt-btn-dark:hover { background: var(--mx-gold) !important; border-color: var(--mx-gold) !important; color: #fff !important; }
.dt-404 a.dt-btn-dark { background: var(--mx-gold) !important; color: #fff !important; }

/* ---------- Header ---------- */
.dt-header-wrap { background: transparent; }
.dt-header-wrap.is-scrolled { box-shadow: 0 12px 30px -24px rgba(31,28,24,.35); }
.dt-header-wrap.is-scrolled .mx-annc { display: none; }
.mx-bar { -webkit-backdrop-filter: saturate(140%) blur(14px); backdrop-filter: saturate(140%) blur(14px); }
.mx-annc p { margin: 0; }
.mx-annc b { color: var(--mx-gold-soft); font-weight: 500; }
.mx-annc .mx-dot { display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: var(--mx-gold-soft); margin: 0 14px; vertical-align: middle; }
.mx-logo .elementor-heading-title a { color: inherit !important; }
.mx-logo .elementor-heading-title em { font-style: italic; color: var(--mx-gold); font-weight: 500; }
.mx-nav .elementskit-navbar-nav { flex-wrap: nowrap; }
.mx-nav .elementskit-navbar-nav > li > a { position: relative; white-space: nowrap; }
.mx-nav .elementskit-navbar-nav > li > a::after { content: ""; position: absolute; left: 50%; right: 50%; bottom: 18px; height: 1px; background: var(--mx-gold); transition: left .45s var(--mx-ease), right .45s var(--mx-ease); }
.mx-nav .elementskit-navbar-nav > li > a:hover::after, .mx-nav .elementskit-navbar-nav > li.current-menu-item > a::after { left: 12px; right: 12px; }
.mx-hdr .dt-act { color: var(--mx-ink) !important; }
.mx-hdr .dt-act:hover, .mx-hdr .dt-act:focus { background: var(--mx-sand) !important; }
.mx-hdr .dt-act-account .dt-act-label { display: none; }
.mx-hdr .dt-bag { background: var(--mx-ink); color: var(--mx-ivory); }
.mx-hdr .dt-act-cart:hover .dt-bag { background: var(--mx-gold); }
.mx-hdr .dt-bag .dt-count, .mx-hdr .dt-cart-count { background: var(--mx-gold) !important; color: #fff !important; }
.mx-hdr .dt-list-count { background: var(--mx-gold); color: #fff; }
@media (min-width: 1025px) and (max-width: 1320px) {
  .mx-hdr .dt-act-cart .dt-act-label { display: none; }
  .mx-nav .elementskit-navbar-nav > li > a { padding-left: 9px !important; padding-right: 9px !important; }
}

/* ---------- Footer ---------- */
.mx-foot { position: relative; overflow: hidden; }
.mx-foot .elementor-icon-list-text { transition: color .3s ease, transform .4s var(--mx-ease); }
.mx-foot .elementor-icon-list-item a:hover .elementor-icon-list-text { transform: translateX(4px); }
.mx-foot-word .elementor-heading-title { white-space: nowrap; user-select: none; }
.mx-foot-word .elementor-heading-title em { font-style: italic; color: var(--mx-gold); }
.mx-foot-bottom p { margin: 0; }
.mx-foot-bottom a { color: rgba(245,241,234,.62) !important; transition: color .3s ease; }
.mx-foot-bottom a:hover { color: var(--mx-gold-soft) !important; }

/* ---------- Type details ---------- */
.mx-eyebrow .elementor-heading-title { display: inline-flex; align-items: center; gap: 14px; }
.mx-eyebrow .elementor-heading-title::before { content: ""; width: 28px; height: 1px; background: currentColor; opacity: .8; }
.mx-display .elementor-heading-title em, .mx-head .elementskit-section-title em { font-style: italic; color: var(--mx-gold); }
.mx-head .elementskit-section-subtitle { display: inline-flex !important; align-items: center; gap: 14px; }
.mx-head .elementskit-section-subtitle::before { content: ""; width: 28px; height: 1px; background: currentColor; opacity: .8; }
.mx-head .elementskit-section-title > span { font-style: italic; }
.mx-head.mx-center .elementskit-section-subtitle::after { content: ""; width: 28px; height: 1px; background: currentColor; opacity: .8; }
.mx-head .elementskit-border-divider, .mx-head .elementskit-border-star { display: none; }
.mx-lead p { margin: 0; }

/* ---------- Buttons ---------- */
.mx-btn .elementskit-btn { transition: background-color .4s var(--mx-ease), color .4s var(--mx-ease), border-color .4s var(--mx-ease), letter-spacing .5s var(--mx-ease) !important; }
.mx-btn .elementskit-btn:hover { letter-spacing: .1em !important; }
.mx-btn .elementskit-btn i, .mx-btn .elementskit-btn svg { transition: transform .45s var(--mx-ease); }
.mx-btn .elementskit-btn:hover i, .mx-btn .elementskit-btn:hover svg { transform: translateX(5px); }
.mx-textlink .elementskit-btn { background: none !important; border: 0 !important; padding: 6px 0 !important; border-radius: 0 !important; position: relative; }
.mx-textlink .elementskit-btn::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: currentColor; transform-origin: right; transition: transform .55s var(--mx-ease); }
.mx-textlink .elementskit-btn:hover::after { transform: scaleX(0); }
.mx-textlink .elementskit-btn:hover { letter-spacing: inherit !important; }

/* ---------- Hero ---------- */
.mx-hero { position: relative; }
.mx-arch { position: relative; overflow: hidden; isolation: isolate; }
.mx-arch::before { content: ""; position: absolute; inset: 14px; border-radius: inherit; border: 1px solid rgba(176,141,87,.35); pointer-events: none; z-index: 2; }
.mx-arch img { mix-blend-mode: multiply; transition: transform 1.6s var(--mx-ease); }
.mx-arch:hover img { transform: scale(1.04); }
.mx-badge { position: absolute !important; z-index: 3; width: auto !important; }
.mx-badge .mx-ring { width: 132px; height: 132px; border-radius: 50%; background: var(--mx-ink); color: var(--mx-ivory); display: grid; place-items: center; position: relative; box-shadow: 0 20px 40px -20px rgba(31,28,24,.5); }
.mx-badge .mx-ring svg { position: absolute; inset: 0; width: 100%; height: 100%; animation: mx-rotate 22s linear infinite; }
.mx-badge .mx-ring text { font: 500 10.5px var(--mx-sans); letter-spacing: .24em; text-transform: uppercase; fill: var(--mx-ivory); }
.mx-badge .mx-ring b { font: italic 500 30px/1 var(--mx-serif); color: var(--mx-gold-soft); }
.mx-floatcard { position: absolute !important; z-index: 3; width: auto !important; }
.mx-floatcard .elementor-widget-container, .mx-floatcard > .elementor-widget-container { padding: 0; }
.mx-pricecard { display: flex; align-items: center; gap: 14px; padding: 12px 18px 12px 12px; background: rgba(251,249,245,.92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border: 1px solid var(--mx-line); border-radius: 999px; box-shadow: 0 24px 40px -28px rgba(31,28,24,.45); }
.mx-pricecard i { width: 40px; height: 40px; border-radius: 50%; background: var(--mx-sand); display: grid; place-items: center; font-style: normal; color: var(--mx-gold); font: italic 500 20px/1 var(--mx-serif); }
.mx-pricecard span { display: flex; flex-direction: column; gap: 2px; font: 500 12px/1.2 var(--mx-sans); color: var(--mx-muted); letter-spacing: .02em; }
.mx-pricecard span b { font: 600 15px/1.2 var(--mx-sans); color: var(--mx-ink); letter-spacing: 0; }
.mx-facts .elementor-widget-heading .elementor-heading-title em { font-style: italic; color: var(--mx-gold); }

/* ---------- Marquee ---------- */
.mx-marquee { overflow: hidden; }
.mx-marquee .mx-track { display: flex; width: max-content; animation: mx-marq 60s linear infinite; }
.mx-marquee:hover .mx-track { animation-play-state: paused; }
.mx-marquee .mx-track span { display: inline-flex; align-items: center; gap: 44px; padding-right: 44px; font: italic 400 clamp(38px, 5.2vw, 78px)/1.1 var(--mx-serif); color: var(--mx-ink); white-space: nowrap; }
.mx-marquee .mx-track span:nth-child(even) { font-style: normal; color: transparent; -webkit-text-stroke: 1px rgba(31,28,24,.35); }
.mx-marquee .mx-track span::after { content: "\2726"; font: normal 18px/1 var(--mx-sans); color: var(--mx-gold); -webkit-text-stroke: 0; }

/* ---------- Category tiles ---------- */
.mx-tile { position: relative; overflow: hidden; transition: background-color .5s var(--mx-ease); }
.mx-tile img { mix-blend-mode: multiply; transition: transform 1.2s var(--mx-ease); }
.mx-tile:hover img { transform: scale(1.06) translateY(-4px); }
.mx-tile:hover { background-color: var(--mx-sand2) !important; }
.mx-tile .elementor-heading-title a::after { content: ""; position: absolute; inset: 0; z-index: 4; }
.mx-tile .mx-arrow .elementor-icon { transition: transform .55s var(--mx-ease), background-color .4s ease, color .4s ease; }
.mx-tile:hover .mx-arrow .elementor-icon { transform: rotate(-45deg); background-color: var(--mx-ink) !important; color: var(--mx-ivory) !important; }
.mx-tile .mx-count .elementor-heading-title { font-variant-numeric: tabular-nums; }

/* ---------- Product rails / cards ---------- */
.dt-store ul.products li.product { border: 1px solid transparent !important; transition: border-color .4s ease, box-shadow .5s var(--mx-ease), transform .5s var(--mx-ease) !important; }
.dt-store ul.products li.product:hover { border-color: var(--mx-line) !important; box-shadow: 0 30px 50px -40px rgba(31,28,24,.45) !important; transform: translateY(-4px); }
.dt-store .dt-pc-media { background: var(--mx-sand) !important; }
.dt-store ul.products li.product .price { color: var(--mx-ink) !important; }
.dt-store ul.products li.product .dt-loop-cat { color: var(--mx-gold) !important; letter-spacing: .14em !important; }
.dt-rail-nav button { background: transparent !important; border: 1px solid var(--mx-line) !important; color: var(--mx-ink) !important; }
.dt-rail-nav button:hover { background: var(--mx-ink) !important; border-color: var(--mx-ink) !important; color: var(--mx-ivory) !important; }

/* ---------- Dark (espresso) bands ---------- */
.mx-band { position: relative; overflow: hidden; }
.mx-band .mx-stage { position: relative; isolation: isolate; }
.mx-stage::before { content: ""; position: absolute; left: 50%; top: 50%; width: 84%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; z-index: -1; background: radial-gradient(circle at 50% 38%, #FBF8F2 0%, #EFE7D9 58%, #E2D6C2 100%); }
.mx-stage::after { content: ""; position: absolute; left: 50%; top: 50%; width: 98%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; z-index: -2; border: 1px solid rgba(216,195,160,.3); }
.mx-stage img { mix-blend-mode: multiply; }
.mx-numlist .elementor-icon-list-item { padding: 16px 0 !important; border-top: 1px solid rgba(245,241,234,.12); counter-increment: mxn; }
.mx-numlist .elementor-icon-list-item:last-child { border-bottom: 1px solid rgba(245,241,234,.12); }
.mx-numlist .elementor-icon-list-items { counter-reset: mxn; }
.mx-numlist .elementor-icon-list-text::before { content: counter(mxn, decimal-leading-zero); display: inline-block; width: 44px; font: italic 500 18px/1 var(--mx-serif); color: var(--mx-gold-soft); }
.mx-buy .dt-buy, .mx-buy .button, .mx-buy button { border-radius: 999px !important; }
.mx-buy .button, .mx-buy button[type="submit"], .mx-buy a.button { background: var(--mx-ivory) !important; color: var(--mx-ink) !important; border: 0 !important; }
.mx-buy .button:hover, .mx-buy button[type="submit"]:hover { background: var(--mx-gold) !important; color: #fff !important; }
.mx-band .dt-buy-price, .mx-band .price, .mx-band .amount { color: var(--mx-ivory) !important; }

/* ---------- Promise boxes (ElementsKit) ---------- */
.mx-promise .elementskit-infobox { height: 100%; border-radius: 0 !important; }
.mx-promise .elementskit-info-box-icon { transition: transform .6s var(--mx-ease), background-color .4s ease, color .4s ease !important; }
.mx-promise:hover .elementskit-info-box-icon { transform: translateY(-4px); }
.mx-promise .elementskit-infobox .elementskit-box-header { margin-bottom: 4px; }

/* ---------- Manifesto ---------- */
.mx-quote .elementor-heading-title em { font-style: italic; color: var(--mx-gold); }
.mx-quote .mx-wi { transition: color .6s ease; }

/* ---------- FAQ (ElementsKit) ---------- */
.mx-faq .elementskit-single-faq { border: 0 !important; border-top: 1px solid var(--mx-line) !important; border-radius: 0 !important; margin: 0 !important; background: transparent !important; }
.mx-faq .elementskit-single-faq:last-child { border-bottom: 1px solid var(--mx-line) !important; }
.mx-faq .elementskit-faq-header, .mx-faq .elementskit-faq-body { background: transparent !important; }
.mx-faq .elementskit-faq-title { margin: 0; }

/* ---------- Journal (ElementsKit) ---------- */
.mx-posts .elementskit-post-image-card { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.mx-posts .elementskit-entry-thumb { overflow: hidden; border-radius: 10px; background: var(--mx-sand); }
.mx-posts .elementskit-entry-thumb img { width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform 1.2s var(--mx-ease); }
.mx-posts .elementskit-post-image-card:hover .elementskit-entry-thumb img { transform: scale(1.05); }
.mx-posts .elementskit-post-body { padding-left: 0 !important; padding-right: 0 !important; }
.mx-posts .entry-title a { background-image: linear-gradient(currentColor, currentColor); background-size: 0 1px; background-repeat: no-repeat; background-position: 0 100%; transition: background-size .6s var(--mx-ease), color .3s ease; }
.mx-posts .elementskit-post-image-card:hover .entry-title a { background-size: 100% 1px; }

/* ---------- Reviews on ivory ---------- */
.dt-rv-card { border: 1px solid var(--mx-line); }
.dt-rv-dots button.is-active { background: var(--mx-gold) !important; }

/* ---------- Contact form ---------- */
.mx-form input[type="text"], .mx-form input[type="email"], .mx-form input[type="tel"], .mx-form textarea, .mx-form select {
  background: var(--mx-paper) !important; border: 1px solid var(--mx-line) !important; border-radius: 8px !important; color: var(--mx-ink) !important; font-family: var(--mx-sans) !important; transition: border-color .3s ease, box-shadow .3s ease;
}
.mx-form input:focus, .mx-form textarea:focus { border-color: var(--mx-gold) !important; box-shadow: 0 0 0 3px rgba(176,141,87,.15) !important; outline: none; }
.mx-form button, .mx-form input[type="submit"] { background: var(--mx-ink) !important; color: var(--mx-ivory) !important; border-radius: 999px !important; border: 0 !important; }
.mx-form button:hover, .mx-form input[type="submit"]:hover { background: var(--mx-gold) !important; color: #fff !important; }
.mx-card-link .elementor-heading-title a::after { content: ""; position: absolute; inset: 0; z-index: 3; }
.mx-card-link { position: relative; transition: background-color .4s ease, border-color .4s ease; }
.mx-card-link:hover { border-color: var(--mx-gold-soft) !important; }

/* ---------- Motion (subtle) ---------- */
.mx-w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .1em; margin-bottom: -.1em; }
.mx-wi { display: inline-block; transition: transform 1.1s var(--mx-ease), opacity 1s ease; }
.mx-js:not(.mx-static) .mx-split:not(.is-in) .mx-wi { transform: translateY(100%); opacity: 0; }
.mx-rise, .mx-kid { transition: opacity 1.1s ease, transform 1.2s var(--mx-ease); }
.mx-js:not(.mx-static) .mx-rise:not(.is-in) { opacity: 0; transform: translateY(28px); }
.mx-js:not(.mx-static) .mx-stagger:not(.is-in) .mx-kid { opacity: 0; transform: translateY(30px); }
.mx-reveal { transition: clip-path 1.5s var(--mx-ease); }
.mx-js:not(.mx-static) .mx-reveal:not(.is-in) { clip-path: inset(100% 0 0 0 round 999px 999px 0 0); }
.mx-js:not(.mx-static) .mx-reveal.is-in { clip-path: inset(0 0 0 0 round 999px 999px 14px 14px); }
.mx-reveal-sq { transition: clip-path 1.4s var(--mx-ease); }
.mx-js:not(.mx-static) .mx-reveal-sq:not(.is-in) { clip-path: inset(0 0 100% 0); }
.mx-js:not(.mx-static) .mx-reveal-sq.is-in { clip-path: inset(0 0 0 0); }
.mx-par { will-change: transform; }
.mx-float { animation: mx-float 7s ease-in-out infinite; }

@keyframes mx-marq { to { transform: translateX(-50%); } }
@keyframes mx-rotate { to { transform: rotate(360deg); } }
@keyframes mx-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
  .mx-badge .mx-ring { width: 108px; height: 108px; }
  .mx-badge .mx-ring b { font-size: 24px; }
}
@media (max-width: 767px) {
  .mx-badge .mx-ring { width: 92px; height: 92px; }
  .mx-badge .mx-ring text { font-size: 9.5px; }
  .mx-pricecard { padding: 8px 14px 8px 8px; gap: 10px; }
  .mx-pricecard i { width: 32px; height: 32px; font-size: 16px; }
  .mx-marquee .mx-track span { gap: 28px; padding-right: 28px; }
  .mx-foot-word .elementor-heading-title { white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
  .mx-marquee .mx-track, .mx-badge .mx-ring svg, .mx-float { animation: none !important; }
}

/* ---------- Hero figure placement ---------- */
.mx-herofig { position: relative; }
.mx-herofig .mx-badge { left: -52px; bottom: 72px; }
.mx-herofig .mx-floatcard { right: -26px; top: 96px; }
.mx-pricecard .amount, .mx-pricecard bdi { color: var(--mx-ink); }
.mx-cta { isolation: isolate; }
.mx-cta::before, .mx-cta::after { content: ""; position: absolute; left: 50%; top: 50%; aspect-ratio: 1; border-radius: 50%; transform: translate(-50%, -50%); border: 1px solid rgba(216,195,160,.14); pointer-events: none; z-index: -1; }
.mx-cta::before { width: min(1100px, 140vw); }
.mx-cta::after { width: min(720px, 100vw); border-color: rgba(216,195,160,.1); }
.mx-tile .elementor-heading-title a { color: inherit !important; }
.mx-band .mx-stage::before { box-shadow: 0 40px 120px -40px rgba(216,195,160,.35); }
@media (max-width: 1024px) {
  .mx-herofig .mx-badge { left: 14px; bottom: -36px; }
  .mx-herofig .mx-floatcard { right: 10px; top: 24px; }
}

/* Fixes: price card, nav on one line */
.mx-pricecard span { display: inline; }
.mx-pricecard > span { display: flex; flex-direction: column; }
.mx-pricecard > span > b { display: block; }
.mx-nav .elementskit-navbar-nav > li > a { padding-left: 10px !important; padding-right: 10px !important; letter-spacing: .1em !important; font-size: 12px !important; }
@media (min-width: 1025px) and (max-width: 1440px) { .mx-nav .elementskit-navbar-nav > li > a { padding-left: 7px !important; padding-right: 7px !important; font-size: 11.5px !important; letter-spacing: .07em !important; } .mx-hdr .dt-act-cart .dt-act-label { display: none; } }
.mx-nav .elementskit-navbar-nav, .mx-nav .elementskit-menu-container .elementskit-navbar-nav { flex-wrap: nowrap !important; }

/* Arch = full-bleed photo window */
.mx-arch > .elementor-widget-image { position: absolute !important; inset: -7% 0; width: 100% !important; max-width: none !important; margin: 0 !important; z-index: 0; }
.mx-arch > .elementor-widget-image .elementor-widget-container, .mx-arch > .elementor-widget-image a { height: 100%; display: block; }
.mx-arch > .elementor-widget-image img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; mix-blend-mode: normal; border-radius: 0 !important; }
.mx-arch::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(31,28,24,0) 55%, rgba(31,28,24,.18)); }
/* Word wrappers must not inherit accent styles */
i.mx-w { font-style: inherit; font-weight: inherit; color: inherit; }
/* Category tiles fill their column */
.e-con > .mx-tile:only-child, .e-con-inner > .mx-tile:only-child { flex: 1 1 auto; }
.mx-tile img { border-radius: 10px; }
/* Spotlight: round photo inside the ivory disc */
.mx-stage > .elementor-widget-image { width: 76% !important; max-width: 520px; }
.mx-stage > .elementor-widget-image img { width: 100% !important; aspect-ratio: 1; object-fit: cover; border-radius: 50%; mix-blend-mode: normal; box-shadow: 0 40px 80px -40px rgba(0,0,0,.6); }
.mx-promise .elementskit-badge { font-family: var(--mx-serif); }
.dt-rv-empty h3, .dt-reviews-empty h3, .dt-rv-card h3 { font-family: var(--mx-serif) !important; font-weight: 500 !important; font-size: clamp(26px, 2.4vw, 34px) !important; letter-spacing: -0.01em !important; }

i.mx-wi { font-style: inherit; font-weight: inherit; color: inherit; }
@media (max-width: 767px) { .mx-annc .dt-hide-sm { display: none !important; } }

/* About: product shot sits inside the arch on its own */
.page-id-4400 .mx-arch > .elementor-widget-image { position: relative !important; inset: auto; width: 74% !important; }
.page-id-4400 .mx-arch > .elementor-widget-image img { height: auto !important; object-fit: contain; mix-blend-mode: multiply; }
.page-id-4400 .mx-arch::after { display: none; }
.page-id-4400 .mx-arch > .elementor-widget-image { mix-blend-mode: multiply; }
.mx-tile > .e-con > .elementor-widget-image, .mx-tile .elementor-widget-image { mix-blend-mode: multiply; }

/* =====================================================================
   DARK LUXURY: warm charcoal, soft ivory text, muted champagne gold
   ===================================================================== */
:root {
  --mx-ivory: #121110; --mx-paper: #181613; --mx-sand: #1F1C18; --mx-sand2: #26221D;
  --mx-ink: #EFE8DC; --mx-ink2: #CFC7BA; --mx-body: #BDB4A6; --mx-muted: #958D81;
  --mx-line: rgba(239,232,220,.11); --mx-gold: #C9A86A; --mx-gold-soft: #DCC49A; --mx-dark: #14120F;
  --dt-bg: #121110; --dt-surface: #1B1916; --dt-ink: #EFE8DC; --dt-body: #BDB4A6; --dt-muted: #958D81; --dt-line: rgba(239,232,220,.11); --dt-volt: #C9A86A;
}
body.dt-store { background: #121110 !important; color: var(--mx-body); }
body.dt-store ::selection { background: var(--mx-gold); color: var(--mx-dark); }
.dt-arch-hero { background: #1A1815 !important; border: 1px solid var(--mx-line); }
.dt-store a.dt-btn-volt, .dt-store a.dt-btn-dark, .dt-404 a.dt-btn-dark { background: var(--mx-gold) !important; color: var(--mx-dark) !important; border-color: var(--mx-gold) !important; }
.dt-store a.dt-btn-volt:hover, .dt-store a.dt-btn-dark:hover, .dt-404 a.dt-btn-dark:hover { background: var(--mx-ink) !important; border-color: var(--mx-ink) !important; color: var(--mx-dark) !important; }
.dt-badge-new { background: var(--mx-ink) !important; color: var(--mx-dark) !important; }
.dt-feature-tag { background: var(--mx-sand2) !important; color: var(--mx-gold-soft) !important; }
.mx-hdr .dt-bag { background: var(--mx-gold); color: var(--mx-dark); }
.mx-hdr .dt-act-cart:hover .dt-bag { background: var(--mx-ink); }
.mx-hdr .dt-bag .dt-count, .mx-hdr .dt-cart-count { background: var(--mx-ink) !important; color: var(--mx-dark) !important; }
.mx-hdr .dt-act:hover, .mx-hdr .dt-act:focus { background: rgba(239,232,220,.07) !important; }
.mx-hdr .dt-list-count { background: var(--mx-gold); color: var(--mx-dark); }
.mx-badge .mx-ring { background: var(--mx-gold); color: var(--mx-dark); box-shadow: 0 20px 40px -18px rgba(0,0,0,.7); }
.mx-badge .mx-ring text { fill: var(--mx-dark); }
.mx-badge .mx-ring b { color: var(--mx-dark); }
.mx-pricecard { background: rgba(24,22,19,.9); border-color: var(--mx-line); box-shadow: 0 24px 40px -24px rgba(0,0,0,.8); }
.mx-pricecard i { background: var(--mx-sand2); }
.mx-pricecard .amount, .mx-pricecard bdi, .mx-pricecard span b { color: var(--mx-ink); }
.mx-marquee .mx-track span:nth-child(even) { -webkit-text-stroke: 1px rgba(239,232,220,.3); }
.mx-tile img, .mx-tile .elementor-widget-image, .mx-tile > .e-con > .elementor-widget-image { mix-blend-mode: normal !important; }
.mx-tile:hover { background-color: var(--mx-sand2) !important; }
.mx-tile:hover .mx-arrow .elementor-icon { background-color: var(--mx-gold) !important; color: var(--mx-dark) !important; border-color: var(--mx-gold) !important; }
.dt-store ul.products li.product { background: #181613 !important; border: 1px solid var(--mx-line) !important; }
.dt-store ul.products li.product:hover { border-color: rgba(201,168,106,.4) !important; box-shadow: 0 30px 50px -36px rgba(0,0,0,.9) !important; }
.dt-store .dt-pc-media, .dt-wl-media, .dt-cmp-media, .dt-sticky-prod img { background: #DCD4C6 !important; }
.dt-store ul.products li.product .price { color: var(--mx-ink) !important; }
.dt-store ul.products li.product .woocommerce-loop-product__title a { color: var(--mx-ink) !important; }
.dt-rail-nav button { border-color: rgba(239,232,220,.2) !important; color: var(--mx-ink) !important; }
.dt-rail-nav button:hover { background: var(--mx-gold) !important; border-color: var(--mx-gold) !important; color: var(--mx-dark) !important; }
.mx-form button, .mx-form input[type="submit"] { background: var(--mx-gold) !important; color: var(--mx-dark) !important; }
.mx-form button:hover, .mx-form input[type="submit"]:hover { background: var(--mx-ink) !important; color: var(--mx-dark) !important; }
.mx-form input[type="text"], .mx-form input[type="email"], .mx-form input[type="tel"], .mx-form textarea, .mx-form select { background: #121110 !important; }
.mx-buy .button, .mx-buy button[type="submit"], .mx-buy a.button { background: var(--mx-gold) !important; color: var(--mx-dark) !important; }
.mx-buy .button:hover, .mx-buy button[type="submit"]:hover { background: var(--mx-ink) !important; color: var(--mx-dark) !important; }
.mx-stage::before { background: radial-gradient(circle at 50% 38%, #3A342C 0%, #24201B 60%, #1A1815 100%); box-shadow: 0 40px 120px -40px rgba(201,168,106,.25); }
.dt-rv-card { background: #181613 !important; }
.mx-card-link:hover { border-color: rgba(201,168,106,.45) !important; }
.dt-store .woocommerce-info, .dt-store .woocommerce-message, .dt-store .woocommerce-error { background: #1B1916 !important; color: var(--mx-ink) !important; border-color: var(--mx-line) !important; }
.dt-store input[type="text"], .dt-store input[type="email"], .dt-store input[type="tel"], .dt-store input[type="password"], .dt-store input[type="number"], .dt-store input[type="search"], .dt-store textarea, .dt-store select { background-color: #121110; color: var(--mx-ink); border-color: rgba(239,232,220,.16); }
.dt-store ::placeholder { color: #7E776D; }
.dt-store .select2-container--default .select2-selection--single { background: #121110; border-color: rgba(239,232,220,.16); }
.dt-store .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--mx-ink); }
.select2-dropdown { background: #1B1916; color: var(--mx-ink); border-color: rgba(239,232,220,.16); }
.dt-store table, .dt-store th, .dt-store td { border-color: var(--mx-line) !important; }
.mx-band .dt-buy-price, .mx-band .price, .mx-band .amount, .mx-band bdi { color: var(--mx-ink) !important; }
.mx-band .dt-buy a:not(.button), .mx-band .dt-buy .dt-buy-view { color: var(--mx-ink) !important; border-color: rgba(239,232,220,.3) !important; }

/* Product gallery: light display panel so product photos stay true */
.dt-store .woocommerce-product-gallery, .dt-store .woocommerce-product-gallery__wrapper, .dt-store .woocommerce-product-gallery__image, .dt-store .flex-viewport { background-color: #DCD4C6 !important; }
.dt-store .woocommerce-product-gallery img { mix-blend-mode: multiply; }
.dt-store .flex-control-thumbs li img, .dt-store .flex-control-thumbs li { background: #DCD4C6 !important; }
.dt-store .woocommerce-product-gallery .flex-control-thumbs { background: transparent !important; }

.dt-store .woocommerce-product-gallery { background-color: transparent !important; }
