/*
Theme Name: MEETCUTE JADE — Variant Design Studio
Theme URI: https://variant-design.studio
Description: Responsive bilingual contemporary jade jewellery presentation theme developed by Variant Design Studio Inc., with collections, product catalogue, product detail, editorial brand pages and enquiry-led conversion.
Author: Racelar Ho
Author URI: https://variant-design.studio
Copyright: 2026 Variant Design Studio Inc.
Contact: variantdesignsca@gmail.com
Version: 1.7.79
Requires at least: 7.1
Requires PHP: 8.3
Tested up to: 7.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: meetcute-jade-variant-design-studio
Template: variant-design-studio-meetcute-jade
*/

/* Brand font sources are injected by functions.php from Settings -> MEETCUTE JADE. */

:root {
  --mcj-bg: #fff;
  --mcj-surface: #f2f2f2;
  --mcj-fg: #090a0c;
  --mcj-muted: #6f7378;
  --mcj-line: rgba(9,10,12,.14);
  --mcj-blue: #596c8c;
  --mcj-hover-text: var(--mcj-blue);
  --mcj-blue-deep: #46566f;
  --mcj-blue-mid: #7f8a98;
  --mcj-mint: #a8c8bd;
  --mcj-periwinkle: #a8a9d3;
  --mcj-silver: #c5cbcf;
  --mcj-white: #fff;
  --mcj-gutter: clamp(1rem,2.4vw,2.75rem);
  --mcj-nav-h: 10.5rem;
  --mcj-wordmark-size: clamp(2.25rem,3.8vw,3.75rem);
  --mcj-header-wordmark-optical-shift: -.142em;
  --mcj-section-gap: calc((var(--mcj-nav-h) - var(--mcj-wordmark-size)) / 2);
  --mcj-section: var(--mcj-section-gap);
  --mcj-page-start-gap: clamp(1.25rem,1.6vw,1.75rem);
  --mcj-product-display-frame-ratio: 770 / 1048;
  --mcj-product-display-frame-media-inset: 0;
  --mcj-product-detail-frame-ratio: 1162 / 1038;
  --mcj-product-detail-frame-width: 45.390625vw;
  --mcj-product-detail-frame-height: 40.546875vw;
  --mcj-product-detail-thumb-offset: 1.953125vw;
  --mcj-product-detail-thumb-size: 5.215037222636719vw;
  --mcj-product-detail-thumb-stack-gap: .78125vw;
  --mcj-product-detail-info-gap: 7.48027527736328vw;
  --mcj-product-detail-info-width: 29.9609375vw;
  --mcj-product-detail-info-anchor: calc(
    var(--mcj-gutter) +
    var(--mcj-product-detail-frame-width) +
    var(--mcj-product-detail-thumb-offset) +
    var(--mcj-product-detail-thumb-size) +
    var(--mcj-product-detail-info-gap)
  );
  --mcj-product-detail-frame-media-inset: 0;
  --mcj-product-detail-magnify-scale: 1.8;
  --mcj-max-title-size: clamp(calc(1.75rem - .333333rem),calc(3.8vw - .5rem - .333333rem),calc(3.25rem - .333333rem));
  --mcj-product-title-size: clamp(1.125rem,1.5vw,1.75rem);
  --mcj-menu-size: clamp(calc(.625rem + .166667rem),calc(.78vw + .166667rem),calc(.8125rem + .166667rem));
  --mcj-language-size: clamp(.625rem,.78vw,.8125rem);
  --mcj-detail-heading-size: calc(.75rem + .166667rem);
  --mcj-font-brand-black: "MCJ Sequel100Black 75 Exact";
  --mcj-font-heading: "MCJ Heading", "Sequel 100 Wide", "Sequel 100 Wide 45", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --mcj-font-body: "MCJ GT America", "GT America", "GT America Rg", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", Arial, sans-serif;
}

html { scroll-behavior: smooth; }
body.mcj-site {
  margin: 0;
  min-width: 20rem;
  overflow-x: hidden;
  background: var(--mcj-bg);
  color: var(--mcj-fg);
  font-family: var(--mcj-font-body) !important;
  font-size: clamp(.8125rem, .9vw, .9375rem);
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
  font-optical-sizing: auto;
}
body.mcj-site *, body.mcj-site *::before, body.mcj-site *::after { box-sizing: border-box; }
/* Keep the child theme typography authoritative across local, preview and production hosts. */
body.mcj-site button,
body.mcj-site input,
body.mcj-site textarea,
body.mcj-site select { font-family: var(--mcj-font-body) !important; }
body.mcj-site h1, body.mcj-site h2, body.mcj-site h3, body.mcj-site h4, body.mcj-site h5, body.mcj-site h6,
body.mcj-site .mcj-home-nav__item,
body.mcj-site .mcj-accordion summary, body.mcj-site .mcj-related-products__head h2,
body.mcj-site .mcj-piece-card h2, body.mcj-site .mcj-piece-card h3 {
  font-family: var(--mcj-font-heading) !important;
}

/* English-first typography: make the approved brand families authoritative at element level. */
html[lang^="en"] body.mcj-site,
html[lang^="en"] body.mcj-site p,
html[lang^="en"] body.mcj-site li,
html[lang^="en"] body.mcj-site dt,
html[lang^="en"] body.mcj-site dd,
html[lang^="en"] body.mcj-site a,
html[lang^="en"] body.mcj-site span,
html[lang^="en"] body.mcj-site small,
html[lang^="en"] body.mcj-site label,
html[lang^="en"] body.mcj-site button,
html[lang^="en"] body.mcj-site input,
html[lang^="en"] body.mcj-site textarea,
html[lang^="en"] body.mcj-site select {
  font-family: var(--mcj-font-body) !important;
}
html[lang^="en"] body.mcj-site h1,
html[lang^="en"] body.mcj-site h1 *,
html[lang^="en"] body.mcj-site h2,
html[lang^="en"] body.mcj-site h2 *,
html[lang^="en"] body.mcj-site h3,
html[lang^="en"] body.mcj-site h3 *,
html[lang^="en"] body.mcj-site h4,
html[lang^="en"] body.mcj-site h4 *,
html[lang^="en"] body.mcj-site h5,
html[lang^="en"] body.mcj-site h5 *,
html[lang^="en"] body.mcj-site h6,
html[lang^="en"] body.mcj-site h6 *,
html[lang^="en"] body.mcj-site .mcj-home-nav__item,
html[lang^="en"] body.mcj-site .mcj-home-nav__item *,
html[lang^="en"] body.mcj-site .mcj-accordion summary,
html[lang^="en"] body.mcj-site .mcj-accordion summary *,
html[lang^="en"] body.mcj-site .mcj-support-accordion summary,
html[lang^="en"] body.mcj-site .mcj-support-accordion summary *,
html[lang^="en"] body.mcj-site .mcj-related-products__head h2,
html[lang^="en"] body.mcj-site .mcj-related-products__head h2 *,
html[lang^="en"] body.mcj-site .mcj-piece-card h2,
html[lang^="en"] body.mcj-site .mcj-piece-card h2 *,
html[lang^="en"] body.mcj-site .mcj-piece-card h3,
html[lang^="en"] body.mcj-site .mcj-piece-card h3 * {
  font-family: var(--mcj-font-heading) !important;
}
body.mcj-site a { color: inherit; text-decoration: none; }
body.mcj-site img, body.mcj-site video, body.mcj-site iframe { max-width: 100%; }
body.mcj-site main h1, body.mcj-site main h2, body.mcj-site main h3,
body.mcj-site main h4, body.mcj-site main h5, body.mcj-site main h6 {
  margin-top: 0;
  font-family: var(--mcj-font-heading);
  color: var(--mcj-fg);
  font-weight: 700;
  text-transform: uppercase;
}
.mcj-eyebrow {
  margin: 0 0 1rem;
  font-family: "MCJ Sequel100Black 75 Exact";
  font-size: clamp(.625rem,.75vw,.75rem);
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* Shared navigation */
.mcj-site-header { z-index: 100; background: #fff; }
.mcj-site-header--inner { position: sticky; top: 0; }
.mcj-site-header__row {
  min-height: var(--mcj-nav-h);
  padding: 0 var(--mcj-gutter);
  display: flex;
  align-items: center;
  gap: clamp(1.125rem,3vw,3rem);
}
.mcj-wordmark {
  font-family: "MCJ Sequel100Black 75 Exact";
  font-size: var(--mcj-wordmark-size);
  font-weight: 800;
  letter-spacing: .01em;
  text-transform: uppercase;
  white-space: nowrap;
  line-height: 1;
}
.mcj-home-nav { min-width: 0; background: #fff; }
.mcj-home-nav__inner {
  min-height: var(--mcj-nav-h);
  padding: 0 var(--mcj-gutter);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.5rem,4vw,4.25rem);
  overflow-x: auto;
  scrollbar-width: none;
}
.mcj-home-nav__inner::-webkit-scrollbar { display: none; }
.mcj-home-nav__item {
  font-family: var(--mcj-font-heading);
  display: inline-flex;
  align-items: center;
  gap: .5625rem;
  flex: 0 0 auto;
  font-size: var(--mcj-menu-size);
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.mcj-home-nav__pill {
  width: clamp(1.25rem,1.45vw,1.5625rem);
  height: clamp(.625rem,.72vw,.8125rem);
  border: .0625rem solid var(--mcj-fg);
  border-radius: 62.4375rem;
  flex: 0 0 auto;
}
.mcj-home-nav__item.is-primary .mcj-home-nav__pill { background: var(--mcj-fg); }
.mcj-home-nav__item:hover .mcj-home-nav__pill,
.mcj-home-nav__item:focus-visible .mcj-home-nav__pill { background: var(--mcj-fg); }
.mcj-home-nav__inner:has(.mcj-home-nav__item:is(:hover,:focus-visible)) .mcj-home-nav__item.is-primary:not(:hover):not(:focus-visible) .mcj-home-nav__pill { background: transparent; }
.mcj-home-nav--inner {
  position: static;
  margin-left: auto;
  flex: 1 1 auto;
}
.mcj-home-nav--inner .mcj-home-nav__inner {
  min-height: var(--mcj-nav-h);
  padding: 0;
  justify-content: flex-end;
  gap: clamp(1.125rem,2.5vw,2.5rem);
  overflow: visible;
}
.mcj-header-lang, .mcj-home-nav__language { font-size: var(--mcj-language-size); line-height: 1; white-space: nowrap; }
.mcj-lang-switcher { display: inline-flex; gap: .375rem; align-items: center; }
.mcj-lang-switcher a { opacity: .42; }
.mcj-lang-switcher a.is-active { opacity: 1; }

/* Header typography is one system everywhere: Sequel/Heading, uppercase Latin, same local/build cascade. */
body.mcj-site .mcj-site-header .mcj-home-nav__item,
body.mcj-site .mcj-site-header .mcj-home-nav__language,
body.mcj-site .mcj-site-header .mcj-lang-switcher,
body.mcj-site .mcj-site-header .mcj-lang-switcher *,
body.mcj-site .mcj-home-nav--below-hero .mcj-home-nav__item,
body.mcj-site .mcj-home-nav--below-hero .mcj-home-nav__language,
body.mcj-site .mcj-home-nav--below-hero .mcj-lang-switcher,
body.mcj-site .mcj-home-nav--below-hero .mcj-lang-switcher * {
  font-family: var(--mcj-font-heading) !important;
  text-transform: uppercase;
}

/* Homepage campaign: exact same header geometry as inner pages; colour is the only desktop difference. */
.home .mcj-site-header--home {
  position: absolute;
  inset: 0 0 auto;
  z-index: 120;
  background: transparent;
}
.home .mcj-site-header--home .mcj-site-header__row {
  min-height: var(--mcj-nav-h);
}
.home .mcj-site-header--home .mcj-wordmark,
.home .mcj-site-header--home .mcj-home-nav__item,
.home .mcj-site-header--home .mcj-home-nav__language,
.home .mcj-site-header--home .mcj-lang-switcher {
  color: #fff !important;
}
.home .mcj-site-header--home .mcj-home-nav__pill { border-color: #fff; }
.home .mcj-site-header--home .mcj-home-nav__item.is-primary .mcj-home-nav__pill,
.home .mcj-site-header--home .mcj-home-nav__item:hover .mcj-home-nav__pill,
.home .mcj-site-header--home .mcj-home-nav__item:focus-visible .mcj-home-nav__pill { background: #fff; }
.home .mcj-site-header--home .mcj-home-nav__inner:has(.mcj-home-nav__item:is(:hover,:focus-visible)) .mcj-home-nav__item.is-primary:not(:hover):not(:focus-visible) .mcj-home-nav__pill { background: transparent; }
.mcj-campaign-hero {
  position: relative;
  width: 100%;
  min-height: 35rem;
  height: 100svh;
  overflow: hidden;
  background: var(--mcj-blue-deep);
  color: #fff;
}
.mcj-campaign-hero__media, .mcj-campaign-hero__media iframe, .mcj-campaign-hero__media video, .mcj-campaign-hero__fallback {
  position: absolute; inset: 0; width: 100%; height: 100%; border: 0;
}
.mcj-campaign-hero--video {
  height: auto;
  min-height: 0;
  aspect-ratio: var(--mcj-banner-ratio, 16 / 9);
}
.mcj-campaign-hero__video { display: block; object-fit: contain; background: #000; }
.mcj-campaign-hero__fallback {
  background:
    radial-gradient(circle at 70% 25%,rgba(168,200,189,.72),transparent 24%),
    radial-gradient(circle at 24% 76%,rgba(168,169,211,.42),transparent 30%),
    linear-gradient(145deg,var(--mcj-blue-deep),var(--mcj-blue) 56%,var(--mcj-blue-mid));
}
.mcj-campaign-hero__media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg,rgba(0,0,0,.14),transparent 28%,transparent 76%,rgba(0,0,0,.1));
}
.mcj-campaign-hero__jump { position: absolute; inset: 0; z-index: 3; cursor: pointer; }
.mcj-campaign-hero, .mcj-campaign-hero * { color: #fff !important; }

/* Home product rail */
.mcj-shop-section, .mcj-collections-strip, .mcj-catalogue, .mcj-standard-page { padding-left: var(--mcj-gutter); padding-right: var(--mcj-gutter); }
.mcj-shop-section--marquee {
  padding: 0;
  overflow: hidden;
  scroll-margin-top: var(--mcj-nav-h);
}
.mcj-product-marquee { width: 100%; overflow: hidden; }
.mcj-product-marquee__track {
  display: flex;
  width: max-content;
  animation: mcj-marquee-left var(--mcj-product-marquee-duration,144s) linear infinite;
  will-change: transform;
}
.mcj-product-marquee:hover .mcj-product-marquee__track,
.mcj-product-marquee:focus-within .mcj-product-marquee__track { animation-play-state: paused; }
.mcj-product-marquee__set {
  display: flex;
  gap: clamp(1.25rem,2.3vw,2.625rem);
  padding-right: clamp(1.25rem,2.3vw,2.625rem);
}
@keyframes mcj-marquee-left { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }

/* Product cards */
.mcj-product-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: clamp(1.5rem,2.5vw,3rem);
  background: transparent;
  border: 0;
}
.mcj-product-card { min-width: 0; background: #fff; border: 0; }
.mcj-product-card--marquee { width: clamp(18.125rem,25vw,28.75rem); flex: 0 0 auto; }
.mcj-product-card__media {
  position: relative;
  aspect-ratio: var(--mcj-product-display-frame-ratio);
  overflow: hidden;
  background: var(--mcj-surface);
}
.mcj-product-media__item { position: absolute; inset: 0; opacity: 0; transition: opacity .25s ease; pointer-events: none; }
.mcj-product-media__item.is-active { opacity: 1; }
.mcj-product-media__item img, .mcj-product-media__item video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: clamp(.875rem,2.6vw,2.875rem);
  background: var(--mcj-surface);
}
.mcj-product-card__meta {
  padding-top: .75rem;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: .875rem;
  align-items: start;
  min-height: 0;
}
.mcj-product-card__meta h2, .mcj-product-card__meta h3 {
  margin: 0;
  font-size: clamp(.75rem,.92vw,.9375rem);
  line-height: 1.15;
  font-weight: 700;
  text-transform: uppercase;
}
.mcj-product-card__meta p { margin: .3125rem 0 0; color: var(--mcj-muted); font-size: calc(.6875rem + .166667rem); line-height: 1.2; }
.mcj-product-card__price { font-size: clamp(.75rem,.92vw,.9375rem); line-height: 1.15; font-weight: 700; white-space: nowrap; text-align: right; }

/* Home collections and brand */
.mcj-collections-strip { padding-top: var(--mcj-section-gap); padding-bottom: 0; overflow: hidden; }
.mcj-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1.25rem; margin-bottom: 1.5rem; }
.mcj-section-head h2 { margin: 0; font-size: 1rem; text-transform: uppercase; }
body.mcj-site .mcj-collections-strip .mcj-section-head > .mcj-section-head__view-all {
  color: #8d8f92 !important;
  font-size: var(--mcj-language-size);
  text-transform: uppercase;
}
body.mcj-site .mcj-collections-strip .mcj-section-head > .mcj-section-head__view-all:hover,
body.mcj-site .mcj-collections-strip .mcj-section-head > .mcj-section-head__view-all:focus-visible { color: var(--mcj-hover-text) !important; }
.mcj-collection-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(1rem,1.8vw,1.75rem); }
.mcj-collections-header { max-width: none; }
.mcj-collection-family-tags { display: flex; flex-wrap: wrap; gap: .625rem; margin-top: 1.75rem; }
.mcj-collection-family-tag {
  min-height: 2.25rem;
  padding: .5rem 1.125rem;
  border: .0625rem solid var(--mcj-fg);
  border-radius: 62.4375rem;
  background: transparent;
  color: var(--mcj-fg);
  font: inherit;
  font-family: "MCJ Sequel100Wide Exact", "Sequel 100 Wide", sans-serif !important;
  font-size: clamp(.45875rem,calc(1.8vw - .66625rem),1.20875rem);
  font-weight: 400;
  line-height: 1.05;
  text-transform: uppercase;
  cursor: pointer;
  position: relative;
  overflow: visible;
  transition: background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,backdrop-filter .18s ease;
}
.mcj-collection-family-tag.is-active { background: var(--mcj-fg); color: #fff; }
.mcj-collection-family-panel[hidden] { display: none; }
.mcj-collection-family-intro { max-width: 55rem; margin: 0 0 clamp(1.875rem,3.5vw,3.5rem); }
.mcj-collection-family-intro p { max-width: 47.5rem; margin: 0 0 .75rem; font-size: clamp(.75rem,1vw,.9375rem); line-height: 1.5; }
.mcj-collection-family-intro p:last-child { margin-bottom: 0; }
.mcj-collection-card { display: block; min-width: 0; background: #fff; }
.mcj-collection-card__media { aspect-ratio: 1 / 1; overflow: hidden; background: var(--mcj-surface); }
.mcj-collection-card__media img,
.mcj-collection-card__media video { display: block; width: 100%; height: 100%; object-fit: cover; }
.mcj-collection-card h2, .mcj-collection-card h3 {
  margin: 0;
  padding-top: .75rem;
  font-size: clamp(.75rem,.92vw,.9375rem);
  line-height: 1.15;
  font-weight: 700;
}
.mcj-collection-card p {
  max-width: 58ch;
  margin: .3125rem 0 0;
  color: var(--mcj-muted);
  font-size: calc(.6875rem + .166667rem);
  line-height: 1.2;
}
.mcj-brand-statement {
  padding: var(--mcj-section-gap) var(--mcj-gutter) var(--mcj-section-gap);
  background: #fff;
}
.mcj-brand-statement h2 {
  max-width: 75rem;
  margin: 0 0 2.125rem;
  font-size: var(--mcj-max-title-size);
  line-height: .96;
  letter-spacing: -.045em;
}
.mcj-brand-statement > p:not(.mcj-eyebrow) {
  max-width: 47.5rem;
  margin: 0;
  color: var(--mcj-fg);
  font-size: clamp(1.125rem,2vw,1.875rem);
  font-weight: 600;
  line-height: 1.34;
}
.mcj-brand-statement > a { display: inline-block; margin-top: 1.75rem; font-size: .75rem; text-transform: uppercase; }

/* Catalogue and collections */
.mcj-catalogue, .mcj-standard-page { padding-top: var(--mcj-section-gap); padding-bottom: var(--mcj-section-gap); }
.mcj-catalogue-header { max-width: 70rem; padding: 0 0 var(--mcj-section-gap); }
.mcj-catalogue-header h1, .mcj-about-hero h1 {
  margin: 0;
  font-size: var(--mcj-max-title-size);
  line-height: .94;
  letter-spacing: -.05em;
}
.mcj-catalogue-header > p, .mcj-catalogue-intro { max-width: 45rem; margin: 1.5rem 0 0; font-size: clamp(.75rem,calc(1.3vw - .333333rem),calc(1.25rem - .333333rem)); }
.mcj-filter-bar { display: flex; gap: 1.25rem; align-items: center; overflow-x: auto; margin-bottom: 2.25rem; padding: 0; white-space: nowrap; scrollbar-width: none; }
.mcj-filter-bar::-webkit-scrollbar { display: none; }
.mcj-filter-bar span { color: var(--mcj-muted); }
.mcj-filter-bar a { color: var(--mcj-muted); font-size: .75rem; }
.mcj-filter-bar a.is-active { color: var(--mcj-fg); }
.mcj-filter-bar a:hover,
.mcj-filter-bar a:focus-visible { color: var(--mcj-hover-text); }
.mcj-catalogue-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) clamp(12.5rem,14vw,15.625rem);
  gap: clamp(1.625rem,3vw,3.375rem);
  align-items: start;
}
.mcj-catalogue-products { grid-template-columns: repeat(3,minmax(0,1fr)); }
.mcj-filter-panel {
  position: sticky;
  top: calc(var(--mcj-nav-h) + 1.5rem);
  border: .0625rem solid var(--mcj-fg);
  border-radius: 2.5rem;
  padding: 1.125rem 1.25rem 1.375rem;
  max-height: calc(100vh - var(--mcj-nav-h) - 3rem);
  overflow-y: auto;
  background: #fff;
}
.mcj-filter-panel__toggle {
  font-family: var(--mcj-font-heading);
  width: 100%;
  min-height: 2rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--mcj-fg);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  font: inherit;
font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.mcj-filter-panel__chevron {  transform: rotate(45deg) translateY(.1875rem);
  transition: transform .2s ease;
}
.mcj-filter-panel__toggle[aria-expanded="false"] .mcj-filter-panel__chevron { transform: rotate(225deg) translate(-.125rem,-.125rem); }
.mcj-filter-panel__body[hidden] { display: none; }
.mcj-filter-panel__group { margin-top: .375rem; }
.mcj-filter-panel__group--sort { margin-top: 1.75rem; }
.mcj-filter-panel__group h2 {
  font-family: var(--mcj-font-heading);
  margin: 0 0 1rem;
line-height: 1.1;
  font-weight: 700;
  text-transform: uppercase;
}
.mcj-filter-panel__subgroup-body > button,
.mcj-filter-panel__group--sort > button {
  width: 100%;
  min-height: 2.375rem;
  padding: .5rem 0;
  border: 0;
  border-top: .0625rem solid rgba(9,10,12,.36);
  background: transparent;
  color: #8d8f92;
  display: block;
  font: inherit;
font-weight: 400;
  line-height: 1.2;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}
.mcj-filter-panel__subgroup-body > button.is-active,
.mcj-filter-panel__group--sort > button.is-active { color: var(--mcj-fg); }
.mcj-filter-panel__subgroup-body > button:hover,
.mcj-filter-panel__subgroup-body > button:focus-visible,
.mcj-filter-panel__group--sort > button:hover,
.mcj-filter-panel__group--sort > button:focus-visible { color: var(--mcj-hover-text); }
.mcj-filter-panel__subgroup-body > button.is-active,
.mcj-filter-panel__group--sort > button.is-active { font-weight: 700; }
.mcj-filter-panel__subgroup { margin-top: 1.25rem; }
.mcj-filter-panel__subgroup:first-child { margin-top: .5rem; }
.mcj-filter-panel__subgroup-toggle {
  width: 100%;
  min-height: 1.5rem;
  padding: 0 0 .375rem;
  border: 0;
  background: transparent;
  color: var(--mcj-fg);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .625rem;
  font-family: var(--mcj-font-heading);
font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.2;
  text-align: left;
  text-transform: uppercase;
  cursor: pointer;
}
.mcj-filter-panel__subgroup-chevron {  transform: rotate(45deg) translateY(.125rem);
  transition: transform .2s ease;
}
.mcj-filter-panel__subgroup-toggle[aria-expanded="false"] .mcj-filter-panel__subgroup-chevron { transform: rotate(225deg) translate(-.0625rem,-.0625rem); }
.mcj-filter-panel__subgroup-body[hidden] { display: none; }
.mcj-filter-panel__option { display: flex !important; align-items: center; gap: .5rem; }
.mcj-filter-panel__option .mcj-colour-dot { width: .6875rem; height: .6875rem; flex: 0 0 .6875rem; border-radius: 50%; border: .0625rem solid rgba(9,10,12,.18); background: var(--mcj-swatch,#ddd); }
.mcj-pagination { padding-top: 2.625rem; }
.nav-links { display: flex; flex-wrap: wrap; gap: .625rem; }
.nav-links a, .nav-links span { padding: .5rem .6875rem; border: .0625rem solid var(--mcj-line); }
.mcj-empty { padding: 1.875rem 0; }

/* Piece detail */
.mcj-piece-page { background: #fff; padding-top: var(--mcj-section-gap); }
.mcj-piece-detail {
  display: grid;
  grid-template-columns: minmax(0,53.9375rem) minmax(20.625rem,33.75rem);
  gap: clamp(1.75rem,4vw,4.5rem);
  align-items: start;
  max-width: 100rem;
  margin: 0 auto;
  padding: 0 var(--mcj-gutter) var(--mcj-section-gap);
}
.mcj-piece-viewer {
  position: sticky;
  top: var(--mcj-nav-h);
  width: 100%;
  max-width: 53.9375rem;
  max-height: 73.4375rem;
  height: auto;
  min-height: 0;
  aspect-ratio: var(--mcj-product-detail-frame-ratio);
  overflow: hidden;
  background: var(--mcj-surface);
  outline: 0;
  overscroll-behavior: contain;
  touch-action: pan-x;
}
.mcj-piece-viewer:focus-visible { box-shadow: 0 0 0 .125rem var(--mcj-fg) inset; }
.mcj-piece-viewer__track {
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: transform .56s cubic-bezier(.22,.72,.2,1);
  will-change: transform;
}
.mcj-piece-viewer__slide {
  flex: 0 0 100%;
  height: 100%;
  margin: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--mcj-surface);
}
.mcj-piece-viewer__slide img,
.mcj-piece-viewer__slide video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: clamp(1.125rem,3vw,3.625rem);
  background: var(--mcj-surface);
}
.mcj-piece-viewer__hint {
  position: absolute;
  z-index: 4;
  top: 1rem;
  right: 1rem;
  max-width: 13.125rem;
  padding: .5rem .625rem;
  background: rgba(255,255,255,.88);
  color: var(--mcj-fg);
  font-size: .625rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .04em;
  text-transform: uppercase;
  transition: opacity .2s ease;
  pointer-events: none;
}
.mcj-piece-viewer.is-used .mcj-piece-viewer__hint { opacity: 0; }
.mcj-piece-viewer__counter {
  position: absolute;
  z-index: 4;
  right: 1rem;
  bottom: .875rem;
  padding: .375rem .5rem;
  background: rgba(255,255,255,.84);
  color: var(--mcj-fg);
  font-size: .625rem;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
}
.mcj-piece-panel { position: sticky; top: var(--mcj-nav-h); align-self: start; padding: 0 0 2.5rem; }
.mcj-piece-panel > .mcj-eyebrow { margin-bottom: .75rem; font-size: clamp(calc(.625rem + .166667rem),calc(var(--mcj-menu-size) - .166667rem),calc(.75rem + .166667rem)); line-height: 1.1; letter-spacing: .08em; }
.mcj-piece-panel h1 { margin: 0 0 .625rem; font-size: var(--mcj-product-title-size); line-height: 1; letter-spacing: -.04em; }
.mcj-piece-panel__collection { margin: 0 0 .5rem; color: var(--mcj-muted); font-size: .75rem; }
.mcj-piece-panel__price { margin: 0 0 1.375rem; font-size: 1.125rem; font-weight: 700; }
.mcj-colour-options { margin: 0 0 1.75rem; border-top: .0625rem solid var(--mcj-line); }
.mcj-colour-option {
  min-height: 3.875rem;
  padding: .8125rem 0;
  border-bottom: .0625rem solid var(--mcj-line);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.125rem;
}
.mcj-colour-option__label { display: block; margin-bottom: .25rem; font-size: var(--mcj-detail-heading-size); font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.mcj-colour-option__value { display: block; color: var(--mcj-muted); font-size: calc(.6875rem + .166667rem); line-height: 1.25; }
.mcj-colour-dots { display: flex; align-items: center; gap: .3125rem; flex: 0 0 auto; }
.mcj-colour-option--metal,
.mcj-colour-option--gemstone { align-items: stretch; }
.mcj-colour-option__main { width: 100%; min-width: 0; }
.mcj-colour-option__row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 1.125rem; min-width: 0; }
.mcj-gemstone-colour-list { display: grid; gap: .375rem; }
.mcj-gemstone-colour-row { min-width: 0; }
.mcj-gemstone-colour-row__value { display: block; min-width: 0; color: var(--mcj-muted); font-size: calc(.6875rem + .166667rem); line-height: 1.25; }
/* Product Detail colour swatches use an optical centre, not the CSS line-box centre.
   The offset is expressed in the shared body-small type size so it scales with the
   Desktop > Tablet > Mobile typography ladder. */
.mcj-colour-option__row > .mcj-colour-dots {
  align-self: center;
  line-height: 0;
  font-size: var(--mcj-type-body-small-size);
  transform: translateY(-.24em);
}
.mcj-colour-dot { width: 1.125rem; height: 1.125rem; border-radius: 50%; background: var(--mcj-swatch); border: .0625rem solid rgba(9,10,12,.14); box-shadow: 0 0 0 .0625rem rgba(255,255,255,.85) inset; }
.mcj-piece-panel__description { font-size: clamp(.875rem,1vw,1rem); line-height: 1.68; }
.mcj-accordion { margin-top: 1.75rem; padding: .875rem 0; border-top: .0625rem solid var(--mcj-line); border-bottom: .0625rem solid var(--mcj-line); }
.mcj-accordion summary { font-family: var(--mcj-font-heading); cursor: pointer; font-size: var(--mcj-detail-heading-size); font-weight: 700; text-transform: uppercase; }
.mcj-accordion dl { margin: 1rem 0 0; font-size: calc(.6875rem + .166667rem); line-height: 1.4; }
.mcj-accordion dl > div { display: grid; grid-template-columns: minmax(5.625rem,7.5rem) 1fr; gap: .875rem; padding: .5rem 0; }
.mcj-accordion dt { color: var(--mcj-muted); font-size: calc(.6875rem + .166667rem); font-weight: 600; }
.mcj-accordion dd { margin: 0; font-size: calc(.6875rem + .166667rem); }
.mcj-suite-pieces__list { margin-top: 1rem; }
.mcj-suite-piece { padding: 1rem 0; border-top: .0625rem solid var(--mcj-line); }
.mcj-suite-piece:first-child { border-top: 0; padding-top: 0; }
.mcj-suite-piece:last-child { padding-bottom: 0; }
.mcj-suite-piece__head { display: grid; grid-template-columns: 2.25rem minmax(0,1fr); gap: .75rem; align-items: start; }
.mcj-suite-piece__index,
.mcj-suite-piece__category { margin: 0; color: var(--mcj-muted); font-size: var(--mcj-type-card-meta, .6875rem); line-height: 1.35; letter-spacing: .04em; text-transform: uppercase; }
.mcj-suite-piece__name { margin: .25rem 0 0; }
.mcj-suite-piece dl { margin-top: .75rem; }
.mcj-enquire { display: flex; min-height: 3.25rem; margin-top: 1.75rem; align-items: center; justify-content: center; padding: .75rem 1.5rem; border-radius: 62.4375rem; background: var(--mcj-blue-deep); color: #fff !important; font-size: clamp(calc(.75rem + .166667rem),calc(.9vw + .166667rem),calc(.875rem + .166667rem)); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.mcj-enquire-note { margin-top: .75rem; color: var(--mcj-muted); font-size: .6875rem; }

.mcj-product-support {
  margin: 0 var(--mcj-gutter);
  padding: 0 0 var(--mcj-section-gap);
}
.mcj-support-accordion { border-top: .0625rem solid var(--mcj-line); }
.mcj-support-accordion:last-child { border-bottom: .0625rem solid var(--mcj-line); }
.mcj-support-accordion summary {
  font-family: var(--mcj-font-heading);
  min-height: 4.375rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  cursor: pointer;
  list-style: none;
  font-size: var(--mcj-detail-heading-size);
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.mcj-support-accordion summary::-webkit-details-marker { display: none; }
.mcj-support-accordion__mark { width: 1.125rem; text-align: center; font-size: 0; }
.mcj-support-accordion__mark::before { content: '+'; font-size: .875rem; font-weight: 400; }
.mcj-support-accordion[open] .mcj-support-accordion__mark::before { content: '−'; }
.mcj-support-accordion__content { max-width: 61.25rem; padding: 0 0 1.5rem; color: var(--mcj-muted); font-size: .8125rem; line-height: 1.65; }
.mcj-support-accordion__content p { margin: 0; }

.mcj-related-products { padding: 0 var(--mcj-gutter) var(--mcj-section-gap); }
.mcj-related-products__head { margin-bottom: 1.5rem; }
.mcj-related-products__head h2 { font-family: var(--mcj-font-heading); margin: 0; font-size: calc(clamp(.75rem,.92vw,.9375rem) + .333333rem); font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.mcj-product-grid--related { grid-template-columns: repeat(4,minmax(0,1fr)); }

/* About / editorial brand page */
.mcj-about-hero { padding: 0 0 var(--mcj-section-gap); }
.mcj-about-hero h1 { max-width: 82.5rem; }
.mcj-about-editorial { width: 100%; }
.mcj-about-banner { width: min(100%, 93.75rem); margin: 0 auto var(--mcj-section-gap); aspect-ratio: 16/9; overflow: hidden; background: var(--mcj-surface); }
.mcj-about-banner img, .mcj-about-banner video { display: block; width: 100%; height: 100%; object-fit: cover; }
.mcj-about-banner__fallback { width: 100%; height: 100%; background: radial-gradient(circle at 72% 30%,rgba(168,200,189,.72),transparent 24%),radial-gradient(circle at 25% 78%,rgba(168,169,211,.45),transparent 30%),linear-gradient(145deg,var(--mcj-blue-deep),var(--mcj-blue),var(--mcj-blue-mid)); }
.mcj-about-intro { width: min(45rem,100%); margin: 0 auto var(--mcj-section-gap); font-size: clamp(.9375rem,1.2vw,1.1875rem); line-height: 1.7; }
.mcj-about-story {
  width: min(90rem,100%);
  margin: 0 auto var(--mcj-section-gap);
}
.mcj-about-story--split { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(1.5rem,4vw,4.375rem); align-items: center; }
.mcj-about-story--reverse .mcj-about-story__visual { order: 2; }
.mcj-about-story__visual { aspect-ratio: 4/3; overflow: hidden; background: var(--mcj-surface); }
.mcj-about-story__visual img, .mcj-about-story__visual video { width: 100%; height: 100%; display: block; object-fit: cover; }
.mcj-about-story__visual--product img { object-fit: contain; padding: clamp(1.25rem,4vw,4.375rem); }
.mcj-about-story__copy { max-width: 38.75rem; padding: clamp(.375rem,2vw,2.125rem); }
.mcj-about-story__copy h2 { margin-bottom: 1.375rem; font-size: var(--mcj-max-title-size); line-height: 1; letter-spacing: -.035em; }
.mcj-about-story__copy p { margin: 0; font-size: clamp(.875rem,1.05vw,1.0625rem); line-height: 1.7; }
.mcj-about-word-panel { min-height: 100%; padding: clamp(2.125rem,6vw,5.625rem); display: flex; align-items: center; background: var(--mcj-blue-deep); color: #fff; }
.mcj-about-word-panel h2 { margin: 0; color: #fff !important; font-size: var(--mcj-max-title-size); line-height: .95; letter-spacing: -.045em; }

/* Instagram Reels rail - penultimate About section */
.mcj-reels-section { margin: 0 calc(var(--mcj-gutter) * -1) var(--mcj-section-gap); overflow: hidden; }
.mcj-reels-section__head { padding: 0 var(--mcj-gutter) 1.375rem; display: flex; justify-content: space-between; gap: 1.25rem; align-items: baseline; }
.mcj-reels-section__head h2 { margin: 0; font-size: .9375rem; }
body.mcj-site .mcj-reels-empty-state {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0 var(--mcj-gutter);
}
.mcj-reels-rail { overflow: hidden; }
.mcj-reels-track { display: flex; width: max-content; animation: mcj-reels-left 48s linear infinite; will-change: transform; }
.mcj-reels-rail:hover .mcj-reels-track, .mcj-reels-rail:focus-within .mcj-reels-track { animation-play-state: paused; }
.mcj-reels-set { display: flex; gap: clamp(1rem,1.8vw,1.875rem); padding-right: clamp(1rem,1.8vw,1.875rem); }
.mcj-reel-card { width: clamp(14.375rem,22vw,22.5rem); aspect-ratio: 9/16; flex: 0 0 auto; overflow: hidden; background: var(--mcj-surface); }
.mcj-reel-card iframe { display: block; width: 100%; height: 100%; border: 0; }
.mcj-reel-card--placeholder { display: flex; align-items: flex-end; padding: 1.375rem; background: linear-gradient(160deg,var(--mcj-blue-deep),var(--mcj-blue-mid)); color: #fff; }
.mcj-reel-card--placeholder span { font-size: .75rem; font-weight: 700; text-transform: uppercase; }
@keyframes mcj-reels-left { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
.mcj-about-closing { padding: 0; }
.mcj-about-closing h2 { max-width: 56.25rem; margin: 0; color: var(--mcj-blue-deep); font-size: var(--mcj-max-title-size); font-weight: 600; line-height: 1.12; }

/* Other standard pages */
.mcj-material-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1.75rem,4vw,4.375rem); margin-bottom: var(--mcj-section-gap); }
.mcj-material-grid h2 { font-size: var(--mcj-max-title-size); }
.mcj-material-grid p { max-width: 44ch; color: var(--mcj-muted); }
.mcj-contact-panel { max-width: 48.75rem; padding-bottom: var(--mcj-section-gap); }
.mcj-contact-panel p { font-size: clamp(1rem,1.8vw,1.625rem); }
.mcj-contact-panel a { display: inline-block; margin-top: 1.25rem; font-size: clamp(.9375rem,1.3vw,1.25rem); }
.mcj-page-editor { max-width: 68.75rem; padding: var(--mcj-section-gap) 0 0; }

/* Global vertical rhythm: one gap token for every major section and for the header-to-content offset.
   The gap is derived from the same top inset that positions the wordmark inside the header. */
body.mcj-site .mcj-catalogue,
body.mcj-site .mcj-standard-page,
body.mcj-site .mcj-piece-page {
}
body.mcj-site .mcj-catalogue,
body.mcj-site .mcj-standard-page {
  padding-top: var(--mcj-page-start-gap) !important;
  padding-bottom: var(--mcj-section-gap) !important;
}
body.mcj-site .mcj-piece-page { padding-top: var(--mcj-page-start-gap) !important; }
body.mcj-site .mcj-shop-section--marquee { padding-bottom: 0 !important; }
body.mcj-site .mcj-collections-strip { padding-top: var(--mcj-section-gap) !important; padding-bottom: 0 !important; }
body.mcj-site .mcj-brand-statement { padding-top: var(--mcj-section-gap) !important; }
body.mcj-site .mcj-about-hero { padding-top: 0 !important; padding-bottom: var(--mcj-section-gap) !important; }
body.mcj-site .mcj-about-banner,
body.mcj-site .mcj-about-intro,
body.mcj-site .mcj-about-story,
body.mcj-site .mcj-reels-section { margin-bottom: var(--mcj-section-gap) !important; }
body.mcj-site .mcj-material-grid { margin-bottom: var(--mcj-section-gap) !important; }
body.mcj-site .mcj-product-card__meta { min-height: 0 !important; }

/* Footer: no filled block */
.mcj-site-footer { padding: clamp(2.75rem,5vw,5rem) var(--mcj-gutter) var(--mcj-footer-content-bottom-offset); background: transparent; border: 0; }
.mcj-site-footer__inner { display: grid; grid-template-columns: minmax(0,.72fr) minmax(0,1.75fr); gap: clamp(1.75rem,4vw,4.375rem); align-items: end; background: transparent; }
.mcj-site-footer__brand { margin-top: 0; font-weight: 700; }
.mcj-site-footer__links { display: flex; flex-direction: column; align-self: end; gap: .5rem; }
.mcj-site-footer__credit { align-self: end; color: var(--mcj-muted); font-size: .6875rem; }
.mcj-site-footer__credit p { margin: 0 0 .375rem; }
.mcj-site-footer__credit p:last-child { margin-bottom: 0; }

/* Variant Design Studio scroll-to-top: arrow only, using the MEETCUTE JADE interaction colour. */
body.mcj-site .mcj-scroll-top {
  position: fixed;
  right: 1.625rem;
  bottom: 1.75rem;
  z-index: 90;
  width: 2.625rem;
  height: 2.625rem;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--mcj-fg);
  font-family: "MCJ Heading", "Sequel 100 Wide", sans-serif;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease, color .2s ease;
}
body.mcj-site .mcj-scroll-top.is-visible { opacity: 1; pointer-events: auto; }
body.mcj-site .mcj-scroll-top:hover,
body.mcj-site .mcj-scroll-top:focus-visible { color: var(--mcj-blue-deep); }

/* Responsive scaling */
@media (max-width: 1200px) {
  .mcj-home-nav--inner .mcj-home-nav__inner { gap: 1.125rem; }
  .mcj-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .mcj-piece-detail { grid-template-columns: minmax(0,1.35fr) minmax(19.375rem,.65fr); }
  .mcj-product-grid--related { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  :root { --mcj-nav-h: 9.625rem; }
  .home .mcj-site-header--home .mcj-home-nav--inner { display: none; }
  .mcj-site-header__row { gap: .875rem; }
  .mcj-home-nav--inner .mcj-home-nav__inner { justify-content: flex-start; gap: 1.375rem; overflow-x: auto; }
  .mcj-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mcj-piece-detail { display: block; }
  .mcj-piece-viewer { position: relative; top: auto; height: auto; min-height: 0; aspect-ratio: var(--mcj-product-detail-frame-ratio); margin-bottom: 1.875rem; }
  .mcj-piece-panel { position: static; padding-top: 0; }
  .mcj-product-grid--related { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mcj-material-grid { grid-template-columns: 1fr; }
}
@media (max-width: 1180px) {
  .mcj-catalogue-products { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .mcj-collection-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 900px) {
  .mcj-catalogue-layout { grid-template-columns: 1fr; }
  .mcj-filter-panel { position: static; order: -1; border-radius: 2.375rem; padding: 1.25rem 1.375rem 1.5rem; max-height: none; overflow: visible; }
  .mcj-filter-panel__group--sort { margin-top: 1.75rem; }
}
@media (max-width: 720px) {
  :root { --mcj-gutter: 1rem; --mcj-nav-h: 10rem; }
  .home .mcj-campaign-hero { height: 82svh; min-height: 32.5rem; }
  .home .mcj-campaign-hero.mcj-campaign-hero--video { height: auto; min-height: 0; }
  .mcj-site-header--inner .mcj-site-header__row {
    min-height: var(--mcj-nav-h);
    padding: .875rem 1rem .625rem;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    align-items: center;
  }
  .mcj-site-header--inner .mcj-wordmark { grid-column: 1; grid-row: 1; }
  .mcj-home-nav--inner { grid-column: 1; grid-row: 2; margin-left: 0; width: 100%; }
  .mcj-home-nav--inner .mcj-home-nav__inner { padding: 0; min-height: 2.75rem; }
  .mcj-home-nav__inner { justify-content: flex-start; min-height: 4rem; gap: 1.5rem; }
  .mcj-home-nav__language { margin-left: 0; padding-right: .75rem; }
  .mcj-product-card--marquee { width: 76vw; }
  .mcj-collection-grid { grid-template-columns: 1fr; }
  .mcj-site-footer__inner { grid-template-columns: minmax(0,.72fr) minmax(0,1.75fr); }
  .mcj-site-footer__credit { grid-column: auto; }
}
@media (max-width: 520px) {
  .mcj-product-grid { grid-template-columns: 1fr; gap: 2.125rem; }
  .mcj-product-card--marquee { width: 82vw; }
  .mcj-product-card__meta { min-height: 3.625rem; }
  .mcj-catalogue-header h1, .mcj-about-hero h1, .mcj-brand-statement h2 { font-size: var(--mcj-max-title-size); }
  .mcj-piece-detail { padding-left: 1rem; padding-right: 1rem; }
  .mcj-piece-viewer { height: auto; min-height: 0; aspect-ratio: var(--mcj-product-detail-frame-ratio); }
  .mcj-piece-viewer__slide img, .mcj-piece-viewer__slide video { padding: var(--mcj-product-detail-frame-media-inset); }
  .mcj-product-grid--related { grid-template-columns: 1fr; }
  .mcj-accordion dl > div { grid-template-columns: 1fr; gap: .125rem; }
  .mcj-site-footer__inner { grid-template-columns: minmax(0,.72fr) minmax(0,1.75fr); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .mcj-product-marquee__track, .mcj-reels-track { animation: none; }
  .mcj-product-media__item { transition: none; }
  .mcj-piece-viewer__track { transition: none; }
}

/* Variant Design Studio authoritative type hierarchy.
   These selectors intentionally remain authoritative in Studio public previews. */
body.mcj-site .mcj-wordmark { font-size: var(--mcj-wordmark-size) !important; }
body.mcj-site .mcj-catalogue-header h1,
body.mcj-site .mcj-about-hero h1,
body.mcj-site .mcj-brand-statement h2,
body.mcj-site .mcj-about-story__copy h2,
body.mcj-site .mcj-about-word-panel h2,
body.mcj-site .mcj-about-closing h2,
body.mcj-site .mcj-material-grid h2 { font-size: var(--mcj-max-title-size) !important; }
html body.mcj-site .mcj-eyebrow,
html body.mcj-site .mcj-eyebrow * {
  font-family: "MCJ Sequel100Black 75 Exact" !important;
  font-size: calc(clamp(.625rem,.75vw,.75rem) + .333333rem) !important;
  font-weight: 900 !important;
  font-synthesis: none !important;
}
/* Every header MEETCUTE JADE mark uses the same licensed black face as the eyebrows. */
html body.mcj-site .mcj-site-header .mcj-wordmark,
html body.mcj-site .mcj-site-header .mcj-wordmark * {
  font-family: "MCJ Sequel100Black 75 Exact" !important;
  font-weight: 900 !important;
  font-synthesis: none !important;
}
body.mcj-site .mcj-site-footer__brand,
body.mcj-site .mcj-site-footer__brand * {
  font-weight: 800 !important;
}
body.mcj-site.home .mcj-site-header--home .mcj-wordmark,
body.mcj-site.home .mcj-site-header--home .mcj-wordmark * {
  font-size: calc(var(--mcj-wordmark-size) + .333333rem) !important;
}
/* Desktop/laptop header: keep the shared geometric centre line and compensate for the
   Sequel100Black wordmark glyph box. The em-based shift scales with the wordmark itself. */
@media (min-width: 981px) {
  body.mcj-site .mcj-site-header__row,
  body.mcj-site .mcj-site-header .mcj-home-nav__inner {
    min-height: var(--mcj-nav-h);
    align-items: center;
  }
  body.mcj-site .mcj-site-header .mcj-wordmark {
    display: inline-flex;
    align-items: center;
    align-self: center;
    height: auto;
    line-height: 1;
    transform: translateY(var(--mcj-header-wordmark-optical-shift));
  }
}
body.mcj-site .mcj-home-nav__item { font-size: var(--mcj-menu-size) !important; }
body.mcj-site .mcj-header-lang,
body.mcj-site .mcj-home-nav__language,
body.mcj-site .mcj-lang-switcher { font-size: var(--mcj-language-size) !important; }
body.mcj-site .mcj-product-card__meta h2,
body.mcj-site .mcj-product-card__meta h3,
body.mcj-site .mcj-product-card__price { font-size: clamp(.75rem,.92vw,.9375rem) !important; }
body.mcj-site .mcj-collection-card h2,
body.mcj-site .mcj-collection-card h3 {
  margin: 0 !important;
  padding-top: .75rem !important;
  font-size: clamp(.75rem,.92vw,.9375rem) !important;
  line-height: 1.15 !important;
}
body.mcj-site .mcj-catalogue-header > p,
body.mcj-site .mcj-catalogue-intro { font-size: clamp(.75rem,calc(1.3vw - .333333rem),calc(1.25rem - .333333rem)) !important; }
body.mcj-site .mcj-piece-panel > .mcj-eyebrow { font-size: calc(clamp(calc(.625rem + .166667rem),calc(var(--mcj-menu-size) - .166667rem),calc(.75rem + .166667rem)) + .333333rem) !important; }
body.mcj-site .mcj-piece-panel h1 { font-size: var(--mcj-product-title-size) !important; }
body.mcj-site .mcj-colour-option__label,
body.mcj-site .mcj-accordion summary,
body.mcj-site .mcj-support-accordion summary { font-size: var(--mcj-detail-heading-size) !important; }
body.mcj-site .mcj-related-products__head h2 { font-size: calc(clamp(.75rem,.92vw,.9375rem) + .333333rem) !important; }

/* Footer typography: one brand voice across local, Studio .build and production. */
body.mcj-site .mcj-site-footer,
body.mcj-site .mcj-site-footer p,
body.mcj-site .mcj-site-footer a,
body.mcj-site .mcj-site-footer span {
  font-family: var(--mcj-font-heading) !important;
  text-transform: uppercase !important;
}

/* v1.6.21: homepage and inner pages share one header row, one flex alignment and one nav geometry. */
body.mcj-site footer.mcj-site-footer,
body.mcj-site footer.mcj-site-footer *,
html[lang^="en"] body.mcj-site footer.mcj-site-footer,
html[lang^="en"] body.mcj-site footer.mcj-site-footer * {
  font-family: var(--mcj-font-heading) !important;
  text-transform: uppercase !important;
  font-synthesis: none !important;
}

/* v1.6.22: the homepage navigation is an overlay only; never render a filled menu panel. */
.home .mcj-site-header--home .mcj-home-nav,
.home .mcj-site-header--home .mcj-home-nav--inner,
.home .mcj-site-header--home .mcj-home-nav__inner {
  background: transparent !important;
  box-shadow: none !important;
}
.home .mcj-site-header--home .mcj-home-nav,
.home .mcj-site-header--home .mcj-home-nav--inner {
  border: 0 !important;
}


/* v1.6.24: clean first-party parent/child architecture; no third-party plugin integrations. */

/* v1.6.25: resilient same-origin brand-font loading from Media Library or WordPress Font Library uploads. */

/* v1.6.28: product filters mirror Product Descriptor options and add accessible per-group disclosure controls. */

/* v1.6.29: catalogue filter subgroups are collapsed by default on first load. */

/* v1.6.31: all shared eyebrow labels and MEETCUTE JADE wordmarks use font-weight 800, double the previous 400 brand weight. */

/* v1.6.43: eyebrows and the Home wordmark use Sequel100Black-75.ttf and are 4pt larger than v1.6.42. */

/* v1.6.44: all header wordmarks use the same brand-black face; Home wordmark/nav centres share one desktop Y axis. */
/* v1.6.45: exact Sequel100Black-75 source wins the cascade; all desktop header wordmarks receive the font-metric optical Y correction. */

/* v1.6.46: remove the English heading override and all generic fallbacks from eyebrow/wordmark typography; the final exact face is printed last in wp_head. */


/* v1.6.48: responsive header type system across desktop, narrow desktop, tablet and mobile. */
:root {
  --mcj-eyebrow-size-responsive: calc(clamp(.625rem,.75vw,.75rem) + .333333rem);
}

@media (max-width: 1200px) {
  :root {
    --mcj-nav-h: clamp(7rem,11vw,9.125rem);
    --mcj-wordmark-size: clamp(1.875rem,3.7vw,2.75rem);
    --mcj-menu-size: clamp(.625rem,1.05vw,.75rem);
    --mcj-language-size: clamp(.5625rem,.9vw,.6875rem);
    --mcj-eyebrow-size-responsive: clamp(.6875rem,1.05vw,.875rem);
  }
  body.mcj-site .mcj-site-header__row { gap: clamp(.875rem,2vw,1.625rem); }
  body.mcj-site .mcj-home-nav--inner .mcj-home-nav__inner { gap: clamp(.75rem,1.6vw,1.375rem); }
  body.mcj-site .mcj-home-nav__item { gap: clamp(.3125rem,.8vw,.5rem); }
  body.mcj-site .mcj-home-nav__pill {
    width: clamp(.875rem,1.3vw,1.25rem);
    height: clamp(.4375rem,.65vw,.625rem);
  }
}

@media (max-width: 980px) {
  :root {
    --mcj-nav-h: 6.5rem;
    --mcj-wordmark-size: clamp(1.625rem,4.4vw,2.25rem);
    --mcj-menu-size: clamp(.5625rem,1.15vw,.65625rem);
    --mcj-language-size: clamp(.5rem,1vw,.59375rem);
    --mcj-eyebrow-size-responsive: clamp(.65625rem,1.25vw,.75rem);
  }
}

@media (max-width: 720px) {
  :root {
    --mcj-nav-h: 5.875rem;
    --mcj-wordmark-size: clamp(1.25rem,5.8vw,1.5625rem);
    --mcj-menu-size: clamp(.5rem,2.25vw,.59375rem);
    --mcj-language-size: clamp(.46875rem,2vw,.53125rem);
    --mcj-eyebrow-size-responsive: clamp(.59375rem,2.4vw,.65625rem);
  }
  body.mcj-site.home .mcj-site-header--home .mcj-site-header__row {
    min-height: clamp(3.375rem,15vw,4.5rem);
    padding: 0 var(--mcj-gutter);
  }
  body.mcj-site .mcj-site-header--inner .mcj-site-header__row {
    min-height: var(--mcj-nav-h);
    padding: .625rem 1rem .5rem;
    row-gap: .375rem;
  }
  body.mcj-site .mcj-home-nav--inner .mcj-home-nav__inner {
    min-height: 2.125rem;
    gap: 1rem;
  }
  body.mcj-site .mcj-home-nav--below-hero .mcj-home-nav__inner {
    min-height: 3rem;
    padding: 0 .75rem;
    gap: 1.125rem;
  }
  body.mcj-site .mcj-home-nav__item { gap: .375rem; }
  body.mcj-site .mcj-home-nav__pill { width: .9375rem; height: .5rem; }
}

@media (max-width: 420px) {
  :root {
    --mcj-wordmark-size: clamp(1.125rem,5.4vw,1.375rem);
    --mcj-menu-size: clamp(.46875rem,2.15vw,.53125rem);
    --mcj-language-size: clamp(.4375rem,1.9vw,.5rem);
    --mcj-eyebrow-size-responsive: clamp(.5625rem,2.25vw,.625rem);
  }
  body.mcj-site .mcj-home-nav--below-hero .mcj-home-nav__inner {
    gap: .875rem;
    padding-inline: .625rem;
  }
  body.mcj-site .mcj-home-nav__pill { width: .8125rem; height: .4375rem; }
}

/* Final responsive sizes must win the legacy fixed/+4pt rules while preserving the exact brand face. */
html body.mcj-site .mcj-eyebrow,
html body.mcj-site .mcj-eyebrow *,
body.mcj-site .mcj-piece-panel > .mcj-eyebrow {
  font-size: var(--mcj-eyebrow-size-responsive) !important;
}
body.mcj-site .mcj-site-header .mcj-wordmark,
body.mcj-site .mcj-site-header .mcj-wordmark * {
  font-size: var(--mcj-wordmark-size) !important;
}
body.mcj-site.home .mcj-site-header--home .mcj-wordmark,
body.mcj-site.home .mcj-site-header--home .mcj-wordmark * {
  font-size: calc(var(--mcj-wordmark-size) + .333333rem) !important;
}

/* v1.6.49: Gao Yu AIGC ambassador banner and archive. */
.mcj-gaoyu-home {
  width: 100%;
  margin-top: var(--mcj-section-gap);
  background: #1b1b1b;
}
.mcj-gaoyu-home__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  container-type: inline-size;
  overflow: hidden;
  background: #1b1b1b;
}
.mcj-gaoyu-home__media > img,
.mcj-gaoyu-home__media > video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #1b1b1b;
}
.mcj-gaoyu-home__hello {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 18.75%;
  min-width: 0;
  max-width: none;
  aspect-ratio: 18 / 5;
  padding: 0;
  display: grid;
  place-items: center;
  border: max(.0625rem,0.104167cqw) solid #fff;
  border-radius: 62.4375rem;
  background: rgba(0,0,0,.08);
  color: #fff !important;
  font-family: "MCJ Sequel100Wide Exact" !important;
  font-size: 3.125vw;
  font-size: 3.125cqw;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  transition: background .18s ease,color .18s ease,font-size .18s ease,backdrop-filter .18s ease;
}
.mcj-gaoyu-home__scroll-link {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
  cursor: pointer;
}
.mcj-gaoyu-home__hello { z-index: 3; }
.mcj-gaoyu-home__hello:hover,
.mcj-gaoyu-home__hello:focus-visible {
  background: linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.035));
  color: #fff !important;
  font-size: 3.229167vw;
  font-size: 3.229167cqw;
  border-color: rgba(255,255,255,.72);
  -webkit-backdrop-filter: blur(.21875rem) saturate(118%);
  backdrop-filter: blur(.21875rem) saturate(118%);
  box-shadow: inset 0 .0625rem 0 rgba(255,255,255,.34), inset 0 -.0625rem 0 rgba(255,255,255,.08), 0 .375rem 1.125rem rgba(0,0,0,.08);
}
#mcj-page-end { display: block; width: 100%; height: 0; }

.mcj-gaoyu-header { padding-bottom: clamp(2.25rem,5vw,4.5rem); }
.mcj-gaoyu-header > p { max-width: 51.25rem; line-height: 1.55; }
.mcj-gaoyu-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: clamp(1.125rem,2vw,2rem);
}
.mcj-gaoyu-card { display: block; min-width: 0; color: inherit; }
.mcj-gaoyu-card__media {
  aspect-ratio: 9 / 16;
  overflow: hidden;
  background: var(--mcj-surface);
}
.mcj-gaoyu-card__media img,
.mcj-gaoyu-card__media video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform .35s ease;
}
.mcj-gaoyu-card:hover .mcj-gaoyu-card__media img,
.mcj-gaoyu-card:focus-visible .mcj-gaoyu-card__media img { transform: scale(1.035); }
.mcj-gaoyu-card__copy { padding-top: .75rem; }
.mcj-gaoyu-card__copy h2 {
  margin: 0;
  font-size: clamp(.75rem,.92vw,.9375rem);
  line-height: 1.15;
  font-weight: 700;
}
.mcj-gaoyu-card__copy p {
  max-width: 44ch;
  margin: .3125rem 0 0;
  color: var(--mcj-muted);
  font-size: calc(.6875rem + .166667rem);
  line-height: 1.25;
}
.mcj-gaoyu-empty { min-height: 30vh; color: var(--mcj-muted); }

@media (max-width: 980px) {
  .mcj-gaoyu-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px) {
  .mcj-gaoyu-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .mcj-gaoyu-card__media img { transition: none; }
}


/* v1.6.55: optical responsive scale.
   Geometry remains fluid, but the mobile root no longer collapses to 10px.
   The text floor protects readability while catalogue/collection display frames use a dense three-column mobile grid. */
:root { --mcj-root-fluid-size: clamp(13px, calc(12.235px + .1961vw), 20px); }
html { font-size: var(--mcj-root-fluid-size); }

@media (max-width: 980px) {
  /* Products and Collections retain at least three proportional display frames per row. */
  .mcj-catalogue-products,
  .mcj-collection-family-panels .mcj-collection-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(.625rem,2vw,1rem);
  }
}

@media (max-width: 720px) {
  :root {
    --mcj-gutter: clamp(.625rem,2.6vw,.875rem);
    --mcj-max-title-size: clamp(1.75rem,7.2vw,2.5rem);
    --mcj-wordmark-size: clamp(1.35rem,5.8vw,1.7rem);
    --mcj-menu-size: clamp(.7rem,2.6vw,.82rem);
    --mcj-language-size: clamp(.68rem,2.4vw,.78rem);
    --mcj-eyebrow-size-responsive: clamp(.75rem,2.8vw,.9rem);
  }

  /* Dense frames scale; text stops shrinking once it reaches a readable mobile floor. */
  .mcj-catalogue-header > p,
  .mcj-catalogue-intro,
  .mcj-collection-family-intro p,
  .mcj-standard-page > p,
  .mcj-about-story__copy p,
  .mcj-piece-panel__description {
    font-size: clamp(13px,3.45vw,15px) !important;
  }

  .mcj-product-card__meta h2,
  .mcj-product-card__meta h3,
  .mcj-product-card__price,
  .mcj-collection-card h2,
  .mcj-collection-card h3 {
    font-size: clamp(10.5px,2.8vw,12px) !important;
  }

  .mcj-product-card__meta p,
  .mcj-collection-card p {
    font-size: clamp(10px,2.55vw,11px) !important;
  }

  .mcj-product-card__meta {
    grid-template-columns: 1fr;
    gap: .25rem;
    padding-top: .5rem;
  }
  .mcj-product-card__price { text-align: left; white-space: normal; }
  .mcj-collection-card h2,
  .mcj-collection-card h3 { padding-top: .5rem; }

  .mcj-product-media__item img,
  .mcj-product-media__item video {
    padding: clamp(.45rem,2vw,.75rem);
  }

  .mcj-filter-panel__toggle {}
  .mcj-filter-panel__group h2 {}
  .mcj-filter-panel__subgroup-toggle,
  .mcj-filter-panel__subgroup-body > button,
  .mcj-filter-panel__group--sort > button {}
  .mcj-collection-family-tag {
    min-height: 2rem;
    padding: .45rem .8rem;
    font-size: clamp(10.5px,2.8vw,12px);
  }
}

@media (max-width: 420px) {
  :root {
    --mcj-wordmark-size: clamp(1.3rem,5.6vw,1.6rem);
    --mcj-menu-size: clamp(.7rem,2.6vw,.8rem);
    --mcj-language-size: clamp(.68rem,2.4vw,.76rem);
    --mcj-eyebrow-size-responsive: clamp(.75rem,2.8vw,.86rem);
  }
  .mcj-catalogue-products,
  .mcj-collection-family-panels .mcj-collection-grid {
    gap: clamp(.5rem,2vw,.75rem);
  }
}

/* v1.6.57: narrow catalogue geometry.
   Products keep three proportional display frames per row on narrow/mobile windows.
   The stronger catalogue selector intentionally wins the legacy generic one-column product rule.
   Filter controls scale with the viewport but retain readable touch/type floors. */
@media (max-width: 1180px) {
  .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(.55rem,1.8vw,1rem);
  }
}

@media (max-width: 900px) {
  .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(.45rem,1.6vw,.75rem);
  }

  .mcj-catalogue .mcj-product-card,
  .mcj-catalogue .mcj-product-card__media {
    min-width: 0;
    width: 100%;
  }

  .mcj-catalogue .mcj-product-card__media {
    aspect-ratio: var(--mcj-product-display-frame-ratio);
  }

  .mcj-filter-panel {
    border-radius: clamp(1.75rem,7vw,2.5rem);
    padding: clamp(.75rem,2.8vw,1.125rem) clamp(.875rem,3.2vw,1.25rem);
  }

  .mcj-filter-panel__toggle {
    min-height: clamp(2.25rem,9vw,2.75rem);
    gap: clamp(.5rem,2vw,.875rem);
}

  .mcj-filter-panel__chevron {    }

  .mcj-filter-panel__subgroup {
    margin-top: clamp(.75rem,3vw,1.125rem);
  }

  .mcj-filter-panel__subgroup-toggle {
    min-height: clamp(1.75rem,7vw,2.125rem);
    padding-bottom: clamp(.25rem,1vw,.375rem);
}

  .mcj-filter-panel__subgroup-body > button,
  .mcj-filter-panel__group--sort > button {
    min-height: clamp(2rem,8vw,2.375rem);
    padding: clamp(.35rem,1.5vw,.5rem) 0;
}
}

@media (max-width: 520px) {
  .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(.35rem,1.8vw,.625rem);
  }

  .mcj-catalogue .mcj-product-card__meta {
    min-height: 0;
    gap: clamp(.125rem,.8vw,.25rem);
    padding-top: clamp(.35rem,1.4vw,.5rem);
  }

  .mcj-filter-panel {
    border-radius: clamp(1.75rem,7vw,2.5rem);
    padding: clamp(.6875rem,3vw,.875rem) clamp(.75rem,3.4vw,1rem);
  }

  .mcj-filter-panel__toggle {
    min-height: clamp(2.25rem,10vw,2.625rem);
}
}


/* v1.6.58: shared proportional display-frame system.
   Product and collection cards now use one site-wide geometry token set instead of page-specific mobile fallbacks.
   Narrow windows keep a three-frame floor; typography retains the readability floors introduced in v1.6.55. */
:root {
  --mcj-display-frame-columns: 4;
  --mcj-display-frame-gap: clamp(.75rem,1.8vw,1.75rem);
}

/* One grid contract for homepage Collections, collection/product archives and related products. */
.mcj-product-grid,
.mcj-collection-grid {
  grid-template-columns: repeat(var(--mcj-display-frame-columns),minmax(0,1fr));
  gap: var(--mcj-display-frame-gap);
}

/* The Products archive keeps its intentional three-column desktop content area beside FILTER. */
.mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
  --mcj-display-frame-columns: 3;
  gap: var(--mcj-display-frame-gap);
}

/* Card media inset follows the same viewport scale everywhere product cards are rendered. */
.mcj-product-media__item img,
.mcj-product-media__item video {
  padding: var(--mcj-product-display-frame-media-inset);
}

/* Homepage product showcase uses the same visible frame density as the shared grid system. */
.mcj-product-marquee__set {
  gap: var(--mcj-display-frame-gap);
  padding-right: var(--mcj-display-frame-gap);
}
.mcj-product-card--marquee {
  width: 23.6vw;
  min-width: 0;
  max-width: none;
}

/* Product-detail media is fluid inside its available column instead of stopping at a fixed frame cap. */
.mcj-piece-viewer {
  width: 100%;
  max-width: none;
  max-height: none;
}
.mcj-piece-viewer__slide img,
.mcj-piece-viewer__slide video {
  padding: var(--mcj-product-detail-frame-media-inset);
}
@media (min-width: 981px) {
  .mcj-piece-detail {
    grid-template-columns: minmax(0,1.6fr) minmax(20.625rem,1fr);
  }
}

@media (max-width: 1200px) {
  :root {
    --mcj-display-frame-columns: 3;
    --mcj-display-frame-gap: clamp(.55rem,1.6vw,1rem);
  }
  .mcj-product-card--marquee { width: 31.9vw; }
}

@media (max-width: 720px) {
  :root {
    --mcj-display-frame-gap: clamp(.4rem,1.8vw,.7rem);
  }
  .mcj-product-card--marquee { width: 31.8vw; }

  /* Explicitly defeat legacy 1/2-column rules on every shared product/collection frame grid. */
  .mcj-product-grid,
  .mcj-collection-grid,
  .mcj-product-grid--related,
  .mcj-collection-family-panels .mcj-collection-grid,
  .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: var(--mcj-display-frame-gap);
  }
}

@media (max-width: 520px) {
  :root { --mcj-display-frame-gap: clamp(.35rem,1.6vw,.6rem); }
  .mcj-product-card--marquee { width: 31.8vw; }
}

/* v1.6.59: proportional two-column product-detail layout.
   Product media stays on the left and product information stays on the right on tablet and mobile. */
.mcj-piece-detail {
  grid-template-columns: minmax(0,1.6fr) minmax(0,1fr);
}
.mcj-piece-viewer,
.mcj-piece-panel {
  min-width: 0;
  width: 100%;
}

@media (max-width: 980px) {
  .mcj-piece-detail {
    display: grid;
    grid-template-columns: minmax(0,1.6fr) minmax(0,1fr);
    gap: clamp(.5rem,2vw,1.25rem);
    padding-left: var(--mcj-gutter);
    padding-right: var(--mcj-gutter);
  }
  .mcj-piece-viewer {
    position: relative;
    top: auto;
    margin-bottom: 0;
    aspect-ratio: var(--mcj-product-detail-frame-ratio);
  }
  .mcj-piece-panel {
    position: static;
    padding: 0 0 clamp(1rem,3vw,1.75rem);
    overflow-wrap: anywhere;
  }
  body.mcj-site .mcj-piece-panel h1 {
    font-size: clamp(14px,2.8vw,22px) !important;
  }
  .mcj-piece-panel__description {
    font-size: clamp(12px,2.35vw,14px) !important;
    line-height: 1.5;
  }
  .mcj-piece-panel__price {
    margin-bottom: clamp(.75rem,2.2vw,1.25rem);
    font-size: clamp(12px,2.4vw,16px);
  }
  .mcj-colour-options,
  .mcj-accordion {
    margin-top: clamp(.75rem,2vw,1.25rem);
    margin-bottom: clamp(.75rem,2vw,1.25rem);
  }
  .mcj-colour-option {
    min-height: 0;
    padding: clamp(.45rem,1.5vw,.75rem) 0;
    gap: clamp(.35rem,1.2vw,.65rem);
  }
  .mcj-colour-option__label,
  .mcj-accordion summary {
    font-size: clamp(10px,2.1vw,12px) !important;
  }
  .mcj-colour-option__value,
  .mcj-gemstone-colour-row__value,
  .mcj-accordion dl,
  .mcj-accordion dt,
  .mcj-accordion dd,
  .mcj-enquire-note {
    font-size: clamp(10px,2vw,12px);
  }
  .mcj-colour-dot {
    width: clamp(.7rem,2.5vw,1rem);
    height: clamp(.7rem,2.5vw,1rem);
  }
  .mcj-enquire {
    min-height: clamp(2.25rem,7.5vw,3rem);
    margin-top: clamp(.75rem,2vw,1.25rem);
    padding: clamp(.45rem,1.4vw,.65rem) clamp(.5rem,1.8vw,.9rem);
    font-size: clamp(10px,2.2vw,12px);
  }
}

@media (max-width: 520px) {
  .mcj-piece-detail {
    display: grid;
    grid-template-columns: minmax(0,1.6fr) minmax(0,1fr);
    gap: clamp(.4rem,1.8vw,.625rem);
    padding-left: var(--mcj-gutter);
    padding-right: var(--mcj-gutter);
  }
  .mcj-piece-viewer__slide img,
  .mcj-piece-viewer__slide video {
    padding: var(--mcj-product-detail-frame-media-inset);
  }
  .mcj-colour-option {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* v1.6.65: narrow product descriptions use a custom short scroll thumb.
   The native scrollbar is fully hidden so Windows/Chromium cannot render arrow buttons or a track. */
.mcj-piece-panel__description-scroll-indicator { display: none; }

@media (max-width: 980px) {
  body.mcj-site .mcj-piece-panel__description-shell {
    position: relative;
    min-width: 0;
  }
  body.mcj-site .mcj-piece-panel__description {
    max-height: clamp(10rem,25vw,13.25rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none;
    scrollbar-width: none;
    scrollbar-gutter: auto;
    padding-right: clamp(.5rem,1.2vw,.75rem);
  }
  body.mcj-site .mcj-piece-panel__description > :first-child { margin-top: 0; }
  body.mcj-site .mcj-piece-panel__description > :last-child { margin-bottom: 0; }
  body.mcj-site .mcj-piece-panel__description::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }
  body.mcj-site .mcj-piece-panel__description-scroll-indicator {
    position: absolute;
    z-index: 2;
    top: 0;
    right: clamp(.05rem,.25vw,.125rem);
    bottom: 0;
    display: block;
    width: clamp(4px,.55vw,6px);
    pointer-events: none;
  }
  body.mcj-site .mcj-piece-panel__description-scroll-thumb {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: clamp(25px,3.375vw,35px);
    border-radius: 999px;
    background: #8d8f92;
    opacity: 0;
    transform: translate3d(0,var(--mcj-description-thumb-y,0px),0);
    transition: opacity .15s ease;
  }
  body.mcj-site .mcj-piece-panel__description-shell.is-scrollable .mcj-piece-panel__description-scroll-thumb {
    opacity: 1;
  }
}

/* v1.6.67: product catalogue keeps FILTER as a right-side rail on narrow devices.
   Tablet keeps three proportional product frames; mobile uses two for readable card copy. */
@media (max-width: 900px) {
  body.mcj-site .mcj-catalogue-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) clamp(7.25rem,18vw,10rem);
    gap: clamp(.5rem,1.4vw,.875rem);
    align-items: start;
  }
  body.mcj-site .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(.4rem,1.25vw,.75rem);
  }
  body.mcj-site .mcj-filter-panel {
    position: sticky;
    top: calc(var(--mcj-nav-h) + .75rem);
    order: 0;
    min-width: 0;
    max-height: calc(100svh - var(--mcj-nav-h) - 1.5rem);
    overflow-y: auto;
    border-radius: clamp(1.5rem,4vw,2.25rem);
    padding: clamp(.6rem,1.5vw,.875rem) clamp(.55rem,1.35vw,.8rem);
  }
  body.mcj-site .mcj-filter-panel__toggle {
    min-height: clamp(2.25rem,5.5vw,2.75rem);
}
  body.mcj-site .mcj-filter-panel__subgroup-toggle,
  body.mcj-site .mcj-filter-panel__subgroup-body > button,
  body.mcj-site .mcj-filter-panel__group--sort > button {}
}

@media (max-width: 600px) {
  body.mcj-site .mcj-catalogue-layout {
    grid-template-columns: minmax(0,1fr) clamp(6.25rem,27vw,7.25rem);
    gap: clamp(.35rem,1.6vw,.55rem);
  }
  body.mcj-site .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: clamp(.35rem,1.8vw,.55rem);
  }
  body.mcj-site .mcj-filter-panel {
    top: calc(var(--mcj-nav-h) + .5rem);
    border-radius: clamp(1.35rem,6vw,1.9rem);
    padding: clamp(.5rem,2.4vw,.7rem) clamp(.45rem,2vw,.625rem);
  }
  body.mcj-site .mcj-filter-panel__toggle {
    min-height: clamp(2.125rem,9vw,2.5rem);
}
  body.mcj-site .mcj-filter-panel__group h2,
  body.mcj-site .mcj-filter-panel__subgroup-toggle,
  body.mcj-site .mcj-filter-panel__subgroup-body > button,
  body.mcj-site .mcj-filter-panel__group--sort > button {}
}


/* v1.6.69: shared narrow-device page-heading, catalogue-filter and footer scale.
   Tablet and mobile use separate proportional type and control scales. */
@media (max-width: 900px) {
  :root {
    --mcj-narrow-page-heading-size: clamp(22px,4.1vw,34px);
    --mcj-narrow-filter-rail: clamp(5.75rem,13.5vw,7.25rem);
    --mcj-narrow-catalogue-gap: clamp(1rem,2.8vw,1.5rem);
    --mcj-narrow-filter-toggle-height: clamp(1.75rem,4vw,2rem);
    --mcj-narrow-filter-option-height: clamp(1.75rem,3.7vw,2rem);
    --mcj-narrow-footer-size: clamp(9.5px,1.35vw,13px);
    --mcj-narrow-footer-credit-size: clamp(8.5px,1vw,10.5px);
  }

  body.mcj-site .mcj-catalogue-header h1,
  body.mcj-site .mcj-about-hero h1,
  body.mcj-site .mcj-standard-page > header h1 {
    font-size: var(--mcj-narrow-page-heading-size) !important;
  }

  body.mcj-site .mcj-catalogue-layout {
    grid-template-columns: minmax(0,1fr) var(--mcj-narrow-filter-rail);
    gap: var(--mcj-narrow-catalogue-gap);
  }

  body.mcj-site .mcj-filter-panel {
    border-radius: clamp(1.25rem,3vw,1.75rem);
    padding: clamp(.42rem,.9vw,.58rem) clamp(.38rem,.85vw,.55rem);
  }

  body.mcj-site .mcj-filter-panel__toggle {
    min-height: var(--mcj-narrow-filter-toggle-height);
    gap: clamp(.3rem,.7vw,.5rem);
}

  body.mcj-site .mcj-filter-panel__chevron {    }

  body.mcj-site .mcj-filter-panel__group { margin-top: clamp(.25rem,.55vw,.4rem); }
  body.mcj-site .mcj-filter-panel__group--sort { margin-top: clamp(.9rem,2vw,1.25rem); }
  body.mcj-site .mcj-filter-panel__group h2 {
    margin-bottom: clamp(.55rem,1.2vw,.8rem);
}

  body.mcj-site .mcj-filter-panel__subgroup { margin-top: clamp(.65rem,1.45vw,.9rem); }
  body.mcj-site .mcj-filter-panel__subgroup:first-child { margin-top: clamp(.3rem,.7vw,.45rem); }
  body.mcj-site .mcj-filter-panel__subgroup-toggle {
    min-height: clamp(1.1rem,2.5vw,1.35rem);
    padding-bottom: clamp(.22rem,.5vw,.32rem);
    gap: clamp(.3rem,.7vw,.45rem);
}

  body.mcj-site .mcj-filter-panel__subgroup-chevron {    }

  body.mcj-site .mcj-filter-panel__subgroup-body > button,
  body.mcj-site .mcj-filter-panel__group--sort > button {
    min-height: var(--mcj-narrow-filter-option-height);
    padding: clamp(.3rem,.65vw,.42rem) 0;
}

  body.mcj-site .mcj-filter-panel__option { gap: clamp(.3rem,.65vw,.45rem); }
  body.mcj-site .mcj-filter-panel__option .mcj-colour-dot {
    width: clamp(.45rem,.9vw,.58rem);
    height: clamp(.45rem,.9vw,.58rem);
    flex-basis: clamp(.45rem,.9vw,.58rem);
  }

  body.mcj-site .mcj-site-footer__brand,
  body.mcj-site .mcj-site-footer__links a,
  body.mcj-site .mcj-site-footer__inner > div:first-child > p {
    font-size: var(--mcj-narrow-footer-size) !important;
    line-height: 1.25;
  }

  body.mcj-site .mcj-site-footer__credit,
  body.mcj-site .mcj-site-footer__credit p,
  body.mcj-site .mcj-site-footer__credit a {
    font-size: var(--mcj-narrow-footer-credit-size) !important;
    line-height: 1.25;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-narrow-page-heading-size: clamp(19px,6.4vw,23px);
    --mcj-narrow-filter-rail: clamp(4.75rem,20vw,5.5rem);
    --mcj-narrow-catalogue-gap: clamp(.7rem,3.2vw,1rem);
    --mcj-narrow-filter-toggle-height: clamp(1.6rem,7vw,1.85rem);
    --mcj-narrow-filter-option-height: clamp(1.55rem,6.5vw,1.8rem);
    --mcj-narrow-footer-size: clamp(8.5px,2.2vw,10.5px);
    --mcj-narrow-footer-credit-size: clamp(7.5px,1.9vw,9px);
  }

  body.mcj-site .mcj-filter-panel {
    border-radius: clamp(1.05rem,4.5vw,1.35rem);
    padding: clamp(.34rem,1.7vw,.48rem) clamp(.32rem,1.5vw,.45rem);
  }
}

/* v1.6.70: optical product-catalogue type + FILTER proportions on tablet/mobile.
   The rail stays compact when closed; the open menu wraps within its rail and never creates horizontal scrolling. */
@media (max-width: 900px) {
  :root {
    --mcj-catalogue-filter-rail: clamp(4.9rem,10.8vw,5.6rem);
    --mcj-catalogue-filter-gap: clamp(1.15rem,3vw,1.65rem);
    --mcj-catalogue-filter-text-inset: clamp(.42rem,.9vw,.58rem);
    --mcj-catalogue-filter-icon-inset: clamp(.35rem,.8vw,.5rem);
    --mcj-catalogue-card-title-size: clamp(8.75px,1.12vw,10px);
    --mcj-catalogue-card-meta-size: clamp(8px,1vw,9.25px);
    --mcj-catalogue-card-price-size: clamp(8.5px,1.08vw,9.75px);
  }

  body.mcj-site .mcj-catalogue-layout {
    grid-template-columns: minmax(0,1fr) var(--mcj-catalogue-filter-rail);
    gap: var(--mcj-catalogue-filter-gap);
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta {
    min-width: 0;
    gap: clamp(.12rem,.35vw,.22rem);
    padding-top: clamp(.3rem,.75vw,.45rem);
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta h2,
  body.mcj-site .mcj-catalogue .mcj-product-card__meta h3 {
    font-size: var(--mcj-catalogue-card-title-size) !important;
    line-height: 1.08;
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta p {
    margin-top: clamp(.08rem,.2vw,.14rem);
    font-size: var(--mcj-catalogue-card-meta-size) !important;
    line-height: 1.08;
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__price {
    font-size: var(--mcj-catalogue-card-price-size) !important;
    line-height: 1.08;
  }

  body.mcj-site .mcj-filter-panel {
    min-width: 0;
    overflow-x: hidden;
    border-radius: clamp(1rem,2.4vw,1.3rem);
    padding: clamp(.28rem,.65vw,.38rem) clamp(.25rem,.6vw,.34rem);
  }

  body.mcj-site .mcj-filter-panel__toggle {
    min-height: clamp(1.45rem,3.2vw,1.7rem);
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    padding: 0 var(--mcj-catalogue-filter-icon-inset) 0 var(--mcj-catalogue-filter-text-inset);
    gap: clamp(.38rem,.85vw,.55rem);
line-height: 1;
    text-align: left;
  }

  body.mcj-site .mcj-filter-panel__toggle > span:first-child {
    min-width: 0;
    text-align: left;
  }

  body.mcj-site .mcj-filter-panel__body {
    min-width: 0;
    max-width: 100%;
    overflow-x: hidden;
  }

  body.mcj-site .mcj-filter-panel__group h2,
  body.mcj-site .mcj-filter-panel__subgroup-toggle {}

  body.mcj-site .mcj-filter-panel__group h2 {
    padding-left: var(--mcj-catalogue-filter-text-inset);
  }

  body.mcj-site .mcj-filter-panel__subgroup-toggle {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    min-height: clamp(1rem,2.15vw,1.2rem);
    gap: clamp(.38rem,.85vw,.52rem);
    padding: 0 var(--mcj-catalogue-filter-icon-inset) clamp(.18rem,.4vw,.25rem) var(--mcj-catalogue-filter-text-inset);
    letter-spacing: .02em;
    line-height: 1.12;
    white-space: normal;
  }

  body.mcj-site .mcj-filter-panel__subgroup-toggle > span:first-child {
    min-width: 0;
    overflow-wrap: break-word;
  }

  body.mcj-site .mcj-filter-panel__subgroup-chevron {    justify-self: end;
  }

  body.mcj-site .mcj-filter-panel__subgroup-body,
  body.mcj-site .mcj-filter-panel__group--sort {
    min-width: 0;
    max-width: 100%;
    overflow-x: hidden;
  }

  body.mcj-site .mcj-filter-panel__subgroup-body > button,
  body.mcj-site .mcj-filter-panel__group--sort > button {
    min-width: 0;
    max-width: 100%;
    min-height: clamp(1.35rem,2.8vw,1.55rem);
    padding: clamp(.22rem,.48vw,.3rem) var(--mcj-catalogue-filter-icon-inset) clamp(.22rem,.48vw,.3rem) var(--mcj-catalogue-filter-text-inset);
line-height: 1.12;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  body.mcj-site .mcj-filter-panel__chevron {    }
}

@media (max-width: 600px) {
  :root {
    --mcj-catalogue-filter-rail: clamp(3.8rem,16.5vw,4.35rem);
    --mcj-catalogue-filter-gap: clamp(.72rem,3.8vw,1rem);
    --mcj-catalogue-card-title-size: clamp(7.5px,2.05vw,8.5px);
    --mcj-catalogue-card-meta-size: clamp(6.75px,1.85vw,7.75px);
    --mcj-catalogue-card-price-size: clamp(7.25px,1.98vw,8.25px);
  }

  body.mcj-site .mcj-filter-panel {
    border-radius: clamp(.82rem,3.8vw,1.05rem);
    padding: clamp(.2rem,1vw,.27rem) clamp(.18rem,.9vw,.24rem);
  }

  body.mcj-site .mcj-filter-panel__toggle {
    min-height: clamp(1.25rem,5.2vw,1.45rem);
    gap: clamp(.28rem,1.4vw,.38rem);
  }

  body.mcj-site .mcj-filter-panel__subgroup {
    margin-top: clamp(.42rem,2vw,.58rem);
  }

  body.mcj-site .mcj-filter-panel__subgroup-toggle {
    min-height: clamp(.9rem,3.8vw,1.05rem);
    gap: clamp(.3rem,1.45vw,.4rem);
    letter-spacing: .01em;
  }

  body.mcj-site .mcj-filter-panel__subgroup-chevron {    }

  body.mcj-site .mcj-filter-panel__subgroup-body > button,
  body.mcj-site .mcj-filter-panel__group--sort > button {
    min-height: clamp(1.18rem,4.8vw,1.35rem);
    padding: clamp(.16rem,.8vw,.22rem) 0;
  }

  body.mcj-site .mcj-filter-panel__chevron {    }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta {
    gap: clamp(.08rem,.45vw,.14rem);
    padding-top: clamp(.24rem,1.15vw,.34rem);
  }
}

/* v1.6.71: FILTER optical inset and arrow-axis alignment on tablet/mobile. */
@media (max-width: 900px) {
  body.mcj-site .mcj-filter-panel__chevron,
  body.mcj-site .mcj-filter-panel__subgroup-chevron {
    align-self: center;
    justify-self: end;
    margin: 0;
    transform-origin: 50% 50%;
  }

  body.mcj-site .mcj-filter-panel__chevron { transform: rotate(45deg); }
  body.mcj-site .mcj-filter-panel__toggle[aria-expanded="false"] .mcj-filter-panel__chevron { transform: rotate(225deg); }
  body.mcj-site .mcj-filter-panel__subgroup-chevron { transform: rotate(45deg); }
  body.mcj-site .mcj-filter-panel__subgroup-toggle[aria-expanded="false"] .mcj-filter-panel__subgroup-chevron { transform: rotate(225deg); }
}

@media (max-width: 600px) {
  :root {
    /* Mobile remains about 2pt smaller than the tablet FILTER scale. */
    /* This is approximately 2pt below the tablet main FILTER type range. */
    --mcj-catalogue-filter-text-inset: clamp(.28rem,1.4vw,.38rem);
    --mcj-catalogue-filter-icon-inset: clamp(.26rem,1.3vw,.36rem);
  }

  body.mcj-site .mcj-filter-panel__toggle {
    padding-left: var(--mcj-catalogue-filter-text-inset);
    padding-right: var(--mcj-catalogue-filter-icon-inset);
  }

  body.mcj-site .mcj-filter-panel__subgroup-body > button,
  body.mcj-site .mcj-filter-panel__group--sort > button {
    padding-left: var(--mcj-catalogue-filter-text-inset);
    padding-right: var(--mcj-catalogue-filter-icon-inset);
  }
}

/* v1.6.72: wider tablet/mobile FILTER rail + compact page-heading rhythm.
   The rail is ~1.8x the v1.6.71 optical width; the product grid keeps its existing 3/2-column counts and scales into the remaining width. */
@media (max-width: 900px) {
  :root {
    --mcj-catalogue-filter-rail: clamp(8.82rem,19.44vw,10.08rem);
    --mcj-compact-heading-size: clamp(16.667px,calc(4.1vw - 4pt),28.667px);
    --mcj-compact-heading-top: clamp(.9rem,2.2vw,1.25rem);
    --mcj-compact-heading-bottom: clamp(.85rem,2vw,1.15rem);
    --mcj-compact-heading-intro-gap: clamp(.42rem,.9vw,.62rem);
  }

  body.mcj-site .mcj-catalogue,
  body.mcj-site .mcj-standard-page {
    padding-top: var(--mcj-compact-heading-top);
  }

  body.mcj-site .mcj-catalogue-header {
    padding-bottom: var(--mcj-compact-heading-bottom);
  }

  body.mcj-site .mcj-catalogue-header h1,
  body.mcj-site .mcj-about-hero h1,
  body.mcj-site .mcj-standard-page > header h1 {
    font-size: var(--mcj-compact-heading-size) !important;
    line-height: .92;
  }

  body.mcj-site .mcj-catalogue-header > p,
  body.mcj-site .mcj-catalogue-intro {
    margin-top: var(--mcj-compact-heading-intro-gap);
  }

  body.mcj-site .mcj-catalogue-layout {
    grid-template-columns: minmax(0,1fr) var(--mcj-catalogue-filter-rail);
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta h2,
  body.mcj-site .mcj-catalogue .mcj-product-card__meta h3,
  body.mcj-site .mcj-catalogue .mcj-product-card__meta p,
  body.mcj-site .mcj-catalogue .mcj-product-card__price {
    line-height: 1.16;
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta {
    row-gap: clamp(.16rem,.38vw,.25rem);
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-catalogue-filter-rail: clamp(6.84rem,29.7vw,7.83rem);
    --mcj-compact-heading-size: clamp(12px,calc(6.4vw - 8pt),14px);
    --mcj-compact-heading-top: clamp(.55rem,2.7vw,.78rem);
    --mcj-compact-heading-bottom: clamp(.5rem,2.5vw,.72rem);
    --mcj-compact-heading-intro-gap: clamp(.24rem,1.15vw,.36rem);
  }

  body.mcj-site .mcj-catalogue-header h1,
  body.mcj-site .mcj-about-hero h1,
  body.mcj-site .mcj-standard-page > header h1 {
    line-height: .88;
  }

  body.mcj-site .mcj-catalogue-header > p,
  body.mcj-site .mcj-catalogue-intro {
    line-height: 1.08;
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta h2,
  body.mcj-site .mcj-catalogue .mcj-product-card__meta h3,
  body.mcj-site .mcj-catalogue .mcj-product-card__meta p,
  body.mcj-site .mcj-catalogue .mcj-product-card__price {
    line-height: 1.18;
  }

  body.mcj-site .mcj-catalogue .mcj-product-card__meta {
    row-gap: clamp(.18rem,.9vw,.28rem);
  }
}

/* v1.6.73: mobile catalogue optical alignment.
   Closed FILTER is 0.6x the v1.6.72 rail; opening restores the readable menu width.
   The catalogue content shares the header wordmark's left inset, and the heading block is vertically centred between navigation and product frames. */
@media (max-width: 600px) {
  :root {
    --mcj-mobile-catalogue-inline: 1rem;
    --mcj-mobile-heading-zone: clamp(3.75rem,17vw,4.25rem);
  }

  body.mcj-site .mcj-catalogue {
    padding-top: 0;
    padding-left: var(--mcj-mobile-catalogue-inline);
    padding-right: var(--mcj-mobile-catalogue-inline);
  }

  body.mcj-site .mcj-catalogue-header {
    min-height: var(--mcj-mobile-heading-zone);
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  body.mcj-site .mcj-catalogue-header > p,
  body.mcj-site .mcj-catalogue-intro {
    margin-top: clamp(.18rem,.9vw,.28rem);
  }

  body.mcj-site .mcj-catalogue-layout {
    gap: clamp(.5rem,2.4vw,.75rem);
  }
body.mcj-site .mcj-catalogue .mcj-product-grid.mcj-catalogue-products {
    gap: clamp(.32rem,1.5vw,.48rem);
  }
}

/* v1.6.74: centre narrow-device catalogue headings, tighten the mobile FILTER rail,
   and share one mobile left inset between the wordmark/header and catalogue content. */
@media (min-width: 601px) and (max-width: 900px) {
  :root {
    --mcj-tablet-heading-zone: clamp(4.5rem,9.5vw,5.25rem);
    --mcj-tablet-heading-copy-gap: clamp(.22rem,.55vw,.35rem);
  }

  body.mcj-site .mcj-catalogue {
    padding-top: 0;
  }

  body.mcj-site .mcj-catalogue-header {
    height: var(--mcj-tablet-heading-zone);
    min-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--mcj-tablet-heading-copy-gap);
  }

  body.mcj-site .mcj-catalogue-header h1,
  body.mcj-site .mcj-catalogue-header > p,
  body.mcj-site .mcj-catalogue-intro {
    margin-top: 0;
    margin-bottom: 0;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-mobile-content-inset: clamp(1rem,4.8vw,1.125rem);
    --mcj-mobile-header-breath: clamp(.4rem,2.2vw,.5rem);
    --mcj-mobile-heading-copy-gap: clamp(.08rem,.45vw,.14rem);
  }

  body.mcj-site .mcj-site-header--inner .mcj-site-header__row {
    min-height: 0;
    padding-top: var(--mcj-mobile-header-breath);
    padding-right: var(--mcj-mobile-content-inset);
    padding-bottom: var(--mcj-mobile-header-breath);
    padding-left: var(--mcj-mobile-content-inset);
    row-gap: var(--mcj-mobile-header-breath);
    align-content: start;
  }

  body.mcj-site .mcj-site-header--inner .mcj-home-nav--inner .mcj-home-nav__inner {
    min-height: 0;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
  }

  body.mcj-site .mcj-catalogue {
    padding-left: var(--mcj-mobile-content-inset);
    padding-right: var(--mcj-mobile-content-inset);
  }

  body.mcj-site .mcj-catalogue-header {
    height: var(--mcj-mobile-heading-zone);
    min-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--mcj-mobile-heading-copy-gap);
  }

  body.mcj-site .mcj-catalogue-header h1,
  body.mcj-site .mcj-catalogue-header > p,
  body.mcj-site .mcj-catalogue-intro {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.mcj-site .mcj-catalogue-layout {
  }
}

/* v1.6.75: optical page-heading balance + narrow Collections rhythm.
   Products/other catalogue headings keep their existing zone height but lift as one visual group so
   the visible space above the title matches the space below the intro. Collections separates the
   heading copy from family tags so the parent description can scale without colliding with tabs. */
.mcj-catalogue-heading-copy {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.mcj-catalogue-heading-copy > p {
  max-width: 45rem;
  margin: 1.5rem 0 0;
  font-size: clamp(.75rem,calc(1.3vw - .333333rem),calc(1.25rem - .333333rem));
}

@media (min-width: 601px) and (max-width: 900px) {
  :root {
    --mcj-tablet-heading-optical-lift: clamp(.75rem,1.65vw,1rem);
    --mcj-tablet-collection-copy-size: clamp(10px,1.25vw,11.5px);
  }

  body.mcj-site .mcj-catalogue-header:not(.mcj-collections-header) {
    transform: translateY(calc(-1 * var(--mcj-tablet-heading-optical-lift)));
  }

  body.mcj-site .mcj-collections-header {
    height: auto;
    min-height: 0;
    padding: 0;
    display: block;
  }

  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy {
    height: var(--mcj-tablet-heading-zone);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--mcj-tablet-heading-copy-gap);
    transform: translateY(calc(-1 * var(--mcj-tablet-heading-optical-lift)));
  }

  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy h1,
  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy > p {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy > p {
    font-size: clamp(9.5px,1.15vw,10.75px) !important;
    line-height: 1.22;
  }

  body.mcj-site .mcj-collection-family-tags {
    margin-top: clamp(.15rem,.45vw,.3rem);
    gap: clamp(.35rem,.75vw,.5rem);
  }

  body.mcj-site .mcj-collection-family-panels {
    margin-top: clamp(.7rem,1.5vw,1rem);
  }

  body.mcj-site .mcj-collection-family-intro {
    max-width: 100%;
    margin: 0 0 clamp(1rem,2vw,1.4rem);
  }

  body.mcj-site .mcj-collection-family-intro p {
    max-width: 48rem;
    margin: 0;
    font-size: var(--mcj-tablet-collection-copy-size) !important;
    line-height: 1.38;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-mobile-heading-optical-lift: clamp(.6rem,3vw,.8rem);
    --mcj-mobile-collection-copy-size: clamp(8.75px,2.45vw,10px);
  }

  body.mcj-site .mcj-catalogue-header:not(.mcj-collections-header) {
    transform: translateY(calc(-1 * var(--mcj-mobile-heading-optical-lift)));
  }

  body.mcj-site .mcj-collections-header {
    height: auto;
    min-height: 0;
    padding: 0;
    display: block;
  }

  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy {
    height: var(--mcj-mobile-heading-zone);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--mcj-mobile-heading-copy-gap);
    transform: translateY(calc(-1 * var(--mcj-mobile-heading-optical-lift)));
  }

  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy h1,
  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy > p {
    margin-top: 0;
    margin-bottom: 0;
  }

  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy > p {
    font-size: clamp(8.5px,2.3vw,9.5px) !important;
    line-height: 1.18;
  }

  body.mcj-site .mcj-collection-family-tags {
    margin-top: clamp(.1rem,.7vw,.22rem);
    gap: clamp(.28rem,1.4vw,.42rem);
  }

  body.mcj-site .mcj-collection-family-panels {
    margin-top: clamp(.55rem,2.8vw,.8rem);
  }

  body.mcj-site .mcj-collection-family-intro {
    max-width: 100%;
    margin: 0 0 clamp(.8rem,3.8vw,1.1rem);
  }

  body.mcj-site .mcj-collection-family-intro p {
    max-width: 100%;
    margin: 0;
    font-size: var(--mcj-mobile-collection-copy-size) !important;
    line-height: 1.34;
  }
}

/* v1.6.76: compact mobile header/menu, shorter mobile heading zone, and shared Collections alignment/tag scale. */
@media (min-width: 601px) and (max-width: 900px) {
  :root {
    --mcj-tablet-collection-tag-size: clamp(8.5px,1.08vw,9.75px);
    --mcj-tablet-collection-tag-height: clamp(1.55rem,3vw,1.8rem);
    --mcj-tablet-collection-tag-pad-x: clamp(.55rem,1.1vw,.7rem);
  }

  body.mcj-site .mcj-collection-family-tags {
    gap: clamp(.3rem,.65vw,.45rem);
  }

  body.mcj-site .mcj-collection-family-tag {
    min-height: var(--mcj-tablet-collection-tag-height);
    padding: clamp(.26rem,.55vw,.34rem) var(--mcj-tablet-collection-tag-pad-x);
    font-size: var(--mcj-tablet-collection-tag-size) !important;
    line-height: 1;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-menu-size: clamp(.62rem,2.28vw,.72rem);
    --mcj-language-size: clamp(.58rem,2.1vw,.68rem);
    --mcj-mobile-heading-zone: clamp(2.7rem,12.2vw,3.05rem);
    --mcj-mobile-heading-optical-lift: 0rem;
    --mcj-mobile-collection-tag-size: clamp(7.25px,1.95vw,8.25px);
    --mcj-mobile-collection-tag-height: clamp(1.25rem,5.4vw,1.45rem);
    --mcj-mobile-collection-tag-pad-x: clamp(.38rem,1.8vw,.5rem);
  }

  body.mcj-site .mcj-site-header--inner .mcj-home-nav--inner .mcj-home-nav__inner {
    gap: clamp(.55rem,2.8vw,.75rem);
  }

  body.mcj-site .mcj-site-header .mcj-home-nav__item {
    gap: clamp(.18rem,.9vw,.25rem);
  }

  body.mcj-site .mcj-site-header .mcj-home-nav__pill {
    width: clamp(.58rem,2.6vw,.7rem);
    height: clamp(.29rem,1.3vw,.35rem);
  }

  body.mcj-site .mcj-catalogue-header:not(.mcj-collections-header),
  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy {
    height: var(--mcj-mobile-heading-zone);
    transform: none;
  }

  body.mcj-site .mcj-standard-page:has(.mcj-collections-header) {
    padding-left: var(--mcj-mobile-content-inset);
    padding-right: var(--mcj-mobile-content-inset);
  }

  body.mcj-site .mcj-collection-family-tags {
    margin-top: clamp(.08rem,.45vw,.15rem);
    gap: clamp(.2rem,1vw,.3rem);
  }

  body.mcj-site .mcj-collection-family-tag {
    min-height: var(--mcj-mobile-collection-tag-height);
    padding: clamp(.2rem,.9vw,.26rem) var(--mcj-mobile-collection-tag-pad-x);
    font-size: var(--mcj-mobile-collection-tag-size) !important;
    line-height: 1;
  }

  body.mcj-site .mcj-collection-family-panels {
    margin-top: clamp(.45rem,2.2vw,.65rem);
  }
}

/* v1.6.77: narrow-page start rhythm plus About/Material & Craft responsive scale. */
@media (min-width: 601px) and (max-width: 900px) {
  :root {
    --mcj-tablet-standard-page-top: clamp(.45rem,1vw,.65rem);
    --mcj-tablet-standard-heading-pad: clamp(.42rem,.95vw,.62rem);
    --mcj-tablet-standard-section-gap: clamp(1rem,2.2vw,1.45rem);
  }

  body.mcj-site .mcj-standard-page:has(> .mcj-about-hero) {
    padding-top: var(--mcj-tablet-standard-page-top) !important;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero {
    padding: var(--mcj-tablet-standard-heading-pad) 0 !important;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero .mcj-eyebrow {
    margin: 0 0 clamp(.25rem,.55vw,.36rem);
    font-size: clamp(8.5px,1.1vw,10px) !important;
    line-height: 1;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero h1 {
    font-size: var(--mcj-heading-1-size) !important;
    line-height: var(--mcj-heading-1-line-height) !important;
  }
  body.mcj-site .mcj-about-story__copy h2,
  body.mcj-site .mcj-about-word-panel h2 {
    font-size: var(--mcj-heading-2-size) !important;
    line-height: var(--mcj-heading-2-line-height) !important;
  }
  body.mcj-site .mcj-about-closing h2 {
    font-size: var(--mcj-heading-3-size) !important;
    line-height: var(--mcj-heading-3-line-height) !important;
  }
  body.mcj-site .mcj-material-grid h2 {
    font-size: var(--mcj-heading-5-size) !important;
    line-height: var(--mcj-heading-5-line-height) !important;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero h1 { line-height: .95; }

  body.mcj-site .mcj-about-banner {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: var(--mcj-tablet-standard-section-gap) !important;
  }

  body.mcj-site .mcj-about-intro,
  body.mcj-site .mcj-about-story,
  body.mcj-site .mcj-material-grid {
    margin-bottom: var(--mcj-tablet-standard-section-gap) !important;
  }

  body.mcj-site .mcj-about-intro {
    width: 100%;
    font-size: var(--mcj-type-body-size);
    line-height: 1.45;
  }

  body.mcj-site .mcj-about-story--split { gap: var(--mcj-tablet-standard-section-gap); }
  body.mcj-site .mcj-about-story__copy { padding: 0; }
  body.mcj-site .mcj-about-story__copy h2 { margin-bottom: clamp(.42rem,.9vw,.6rem); }
  body.mcj-site .mcj-about-story__copy p,
  body.mcj-site .mcj-material-grid p {
    margin: 0;
    font-size: var(--mcj-type-body-size);
    line-height: 1.45;
  }

  body.mcj-site .mcj-about-word-panel { padding: clamp(1.15rem,2.8vw,1.8rem); }

  body.mcj-site .mcj-material-grid { gap: var(--mcj-tablet-standard-section-gap); }
  body.mcj-site .mcj-material-grid h2 {
    margin: 0 0 clamp(.35rem,.8vw,.5rem);
    line-height: .98;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-mobile-heading-zone: clamp(2.25rem,10vw,2.55rem);
    --mcj-mobile-standard-heading-pad: clamp(.3rem,1.5vw,.42rem);
    --mcj-mobile-standard-section-gap: clamp(.8rem,3.8vw,1rem);
  }

  body.mcj-site .mcj-catalogue,
  body.mcj-site .mcj-standard-page {
    padding-top: 0 !important;
  }

  body.mcj-site .mcj-standard-page {
    padding-left: var(--mcj-mobile-content-inset);
    padding-right: var(--mcj-mobile-content-inset);
  }

  body.mcj-site .mcj-catalogue-header:not(.mcj-collections-header),
  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy {
    height: var(--mcj-mobile-heading-zone);
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero {
    padding: var(--mcj-mobile-standard-heading-pad) 0 !important;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero .mcj-eyebrow {
    margin: 0 0 clamp(.16rem,.8vw,.22rem);
    font-size: clamp(7.5px,2.15vw,8.75px) !important;
    line-height: 1;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero h1 {
    font-size: var(--mcj-heading-1-size) !important;
    line-height: var(--mcj-heading-1-line-height) !important;
  }
  body.mcj-site .mcj-about-story__copy h2,
  body.mcj-site .mcj-about-word-panel h2 {
    font-size: var(--mcj-heading-2-size) !important;
    line-height: var(--mcj-heading-2-line-height) !important;
  }
  body.mcj-site .mcj-about-closing h2 {
    font-size: var(--mcj-heading-3-size) !important;
    line-height: var(--mcj-heading-3-line-height) !important;
  }
  body.mcj-site .mcj-material-grid h2 {
    font-size: var(--mcj-heading-5-size) !important;
    line-height: var(--mcj-heading-5-line-height) !important;
  }

  body.mcj-site .mcj-standard-page > .mcj-about-hero h1 { line-height: .92; }

  body.mcj-site .mcj-about-banner {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: var(--mcj-mobile-standard-section-gap) !important;
  }

  body.mcj-site .mcj-about-intro,
  body.mcj-site .mcj-about-story,
  body.mcj-site .mcj-material-grid {
    margin-bottom: var(--mcj-mobile-standard-section-gap) !important;
  }

  body.mcj-site .mcj-about-intro {
    width: 100%;
    font-size: var(--mcj-type-body-size);
    line-height: 1.42;
  }

  body.mcj-site .mcj-about-story--split { gap: var(--mcj-mobile-standard-section-gap); }
  body.mcj-site .mcj-about-story__copy { padding: 0; }
  body.mcj-site .mcj-about-story__copy h2 { margin-bottom: clamp(.3rem,1.4vw,.42rem); }
  body.mcj-site .mcj-about-story__copy p,
  body.mcj-site .mcj-material-grid p {
    margin: 0;
    font-size: var(--mcj-type-body-size);
    line-height: 1.42;
  }

  body.mcj-site .mcj-about-word-panel { padding: clamp(.8rem,3.8vw,1rem); }

  body.mcj-site .mcj-material-grid {
    gap: var(--mcj-mobile-standard-section-gap);
  }

  body.mcj-site .mcj-material-grid h2 {
    margin: 0 0 clamp(.25rem,1.2vw,.34rem);
    line-height: .98;
  }
}

/* v1.6.78: filter type refinement, Collections rhythm/card-type parity, and Material & Craft layout discipline. */
:root {
  --mcj-material-heading-gap: clamp(1.25rem,2.4vw,2rem);
}

/* Material & Craft: one shared gap controls both menu-to-heading and heading-to-content distance. */
body.mcj-site .mcj-standard-page:has(> .mcj-about-hero + .mcj-material-grid) {
  padding-top: var(--mcj-material-heading-gap) !important;
}
body.mcj-site .mcj-standard-page:has(> .mcj-about-hero + .mcj-material-grid) > .mcj-about-hero {
  padding: 0 0 var(--mcj-material-heading-gap) !important;
}
body.mcj-site .mcj-standard-page:has(> .mcj-about-hero + .mcj-material-grid) > .mcj-about-hero > .mcj-eyebrow {
  display: none !important;
}

@media (min-width: 601px) and (max-width: 900px) {
  :root {
    --mcj-material-heading-gap: clamp(.8rem,1.8vw,1.1rem);
  }

  /* Collections: separate title, intro and tags; card copy matches Products catalogue scale. */
  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy {
    gap: clamp(.3rem,.68vw,.44rem);
  }
  body.mcj-site .mcj-collection-family-tags {
    margin-top: clamp(.42rem,.92vw,.62rem);
  }
  body.mcj-site .mcj-collection-family-panels {
    margin-top: clamp(.68rem,1.45vw,.95rem);
  }
  body.mcj-site .mcj-collection-card h2,
  body.mcj-site .mcj-collection-card h3 {
    padding-top: clamp(.3rem,.75vw,.45rem);
    font-size: var(--mcj-catalogue-card-title-size) !important;
    line-height: 1.16;
  }
  body.mcj-site .mcj-collection-card p {
    margin-top: clamp(.08rem,.2vw,.14rem);
    font-size: var(--mcj-catalogue-card-meta-size) !important;
    line-height: 1.16;
  }

  /* Tablet Material & Craft remains one row of three proportional columns. */
  body.mcj-site .mcj-material-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(.8rem,1.8vw,1.2rem);
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-material-heading-gap: clamp(.55rem,2.8vw,.75rem);
  }

  /* Collections: mobile spacing is compact but no longer crowded. */
  body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy {
    gap: clamp(.18rem,.9vw,.26rem);
  }
  body.mcj-site .mcj-collection-family-tags {
    margin-top: clamp(.34rem,1.7vw,.48rem);
  }
  body.mcj-site .mcj-collection-family-panels {
    margin-top: clamp(.55rem,2.65vw,.72rem);
  }
  body.mcj-site .mcj-collection-card h2,
  body.mcj-site .mcj-collection-card h3 {
    padding-top: clamp(.24rem,1.15vw,.34rem);
    font-size: var(--mcj-catalogue-card-title-size) !important;
    line-height: 1.18;
  }
  body.mcj-site .mcj-collection-card p {
    margin-top: clamp(.08rem,.45vw,.14rem);
    font-size: var(--mcj-catalogue-card-meta-size) !important;
    line-height: 1.18;
  }

  body.mcj-site .mcj-material-grid {
    grid-template-columns: 1fr;
  }
}

/* v1.6.79: mobile FILTER width, header breathing rhythm, and Material & Craft three-column scale. */
@media (max-width: 600px) {
  :root {
    /* Exactly 4/3 of the v1.6.78 collapsed FILTER rail: 3.2rem/14vw/3.6rem -> 4.266667rem/18.666667vw/4.8rem. */

    /* Mobile inner-header spacing follows one viewport-scaled rhythm instead of the former compressed .4-.5rem gap. */
    --mcj-mobile-header-top-inset: clamp(.72rem,3.6vw,.9rem);
    --mcj-mobile-header-wordmark-nav-gap: clamp(.58rem,3vw,.78rem);
    --mcj-mobile-header-bottom-inset: clamp(.62rem,3.1vw,.8rem);

    /* Material & Craft uses a local three-column scale so standard-page body copy elsewhere is unchanged. */
    --mcj-mobile-material-column-gap: clamp(.4rem,2vw,.65rem);
  }

  body.mcj-site .mcj-site-header--inner .mcj-site-header__row {
    padding-top: var(--mcj-mobile-header-top-inset);
    padding-bottom: var(--mcj-mobile-header-bottom-inset);
    row-gap: var(--mcj-mobile-header-wordmark-nav-gap);
  }

  /* Keep the FILTER capsule wider in its closed state without enlarging its type or height. */
/* Material & Craft remains one row of three proportional columns on mobile. */
  body.mcj-site .mcj-material-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: var(--mcj-mobile-material-column-gap);
    align-items: start;
  }
  body.mcj-site .mcj-material-grid > div { min-width: 0; }
  body.mcj-site .mcj-material-grid h2 {
    margin: 0 0 clamp(.22rem,1vw,.3rem);
    font-size: var(--mcj-heading-5-size) !important;
    line-height: 1;
  }
  body.mcj-site .mcj-material-grid p {
    max-width: none;
    margin: 0;
    font-size: var(--mcj-type-body-size) !important;
    line-height: 1.32;
  }
}

/* v1.6.80: mobile footer optical scale + homepage brand-statement responsive parity. */
@media (min-width: 601px) and (max-width: 900px) {
  body.mcj-site.home .mcj-brand-statement h2 {
    margin-bottom: clamp(.7rem,1.55vw,1rem);
    font-size: var(--mcj-heading-3-size) !important;
    line-height: .98;
  }
  body.mcj-site.home .mcj-brand-statement > p:not(.mcj-eyebrow) {
    max-width: 47.5rem;
    font-size: var(--mcj-type-body-size) !important;
    line-height: 1.45;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-narrow-footer-size: clamp(6.75px,1.8vw,8.25px);
    --mcj-narrow-footer-credit-size: clamp(5.75px,1.5vw,7.25px);
  }

  body.mcj-site.home .mcj-brand-statement h2 {
    margin-bottom: clamp(.48rem,2.3vw,.65rem);
    font-size: var(--mcj-heading-3-size) !important;
    line-height: .98;
  }
  body.mcj-site.home .mcj-brand-statement > p:not(.mcj-eyebrow) {
    max-width: 100%;
    font-size: var(--mcj-type-body-size) !important;
    line-height: 1.42;
  }

  body.mcj-site .mcj-site-footer__brand,
  body.mcj-site .mcj-site-footer__links a,
  body.mcj-site .mcj-site-footer__inner > div:first-child > p {
    font-size: var(--mcj-narrow-footer-size) !important;
    line-height: 1.18;
  }
  body.mcj-site .mcj-site-footer__credit,
  body.mcj-site .mcj-site-footer__credit p,
  body.mcj-site .mcj-site-footer__credit a {
    font-size: var(--mcj-narrow-footer-credit-size) !important;
    line-height: 1.18;
  }
}

/* v1.6.81: give narrow catalogue introductions more breathing room before the next content block. */
@media (max-width: 600px) {
  :root {
    --mcj-mobile-heading-follow-gap: clamp(.55rem,2.7vw,.75rem);
  }

  /* Products and sibling catalogue pages: intro copy clears the following grid/filter row. */
  body.mcj-site .mcj-catalogue-header:not(.mcj-collections-header) {
    margin-bottom: var(--mcj-mobile-heading-follow-gap);
  }

  /* Collections: the same rhythm separates the intro copy from the family tags. */
  body.mcj-site .mcj-collections-header .mcj-collection-family-tags {
    margin-top: var(--mcj-mobile-heading-follow-gap);
  }
}


/* v1.6.82: footer becomes two columns with three lines each; bottom padding remains unchanged. */
body.mcj-site .mcj-site-footer__inner {
  grid-template-columns: minmax(0,.72fr) minmax(0,1.75fr);
  align-items: end;
}
body.mcj-site .mcj-site-footer__links,
body.mcj-site .mcj-site-footer__credit { align-self: end; min-width: 0; }
body.mcj-site .mcj-site-footer__credit p:last-child { margin-bottom: 0; }
@media (max-width: 720px) {
  body.mcj-site .mcj-site-footer__inner {
    grid-template-columns: minmax(0,.68fr) minmax(0,1.9fr);
    gap: clamp(.9rem,4vw,1.35rem);
  }
}

/* v1.6.83: flower hover state for back-to-top + footer-link interaction colour. */
:root {
  --mcj-scroll-top-flower-size: clamp(20px,2.7778vw,40px);
}
body.mcj-site .mcj-scroll-top {
  overflow: visible;
  transition: opacity .2s ease, color .24s ease;
}
body.mcj-site .mcj-scroll-top::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--mcj-scroll-top-flower-size);
  aspect-ratio: 2047 / 2009;
  background-color: var(--mcj-fg,#090a0c);
  -webkit-mask: url("assets/images/meetcute-jade-flower-logo.png") center / contain no-repeat;
  mask: url("assets/images/meetcute-jade-flower-logo.png") center / contain no-repeat;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%,-50%) rotate(0deg);
  transform-origin: 50% 50%;
  transition: opacity .24s ease, background-color .7s ease;
}
body.mcj-site .mcj-scroll-top:hover,
body.mcj-site .mcj-scroll-top:focus-visible {
  color: transparent;
}
body.mcj-site .mcj-scroll-top:hover::after,
body.mcj-site .mcj-scroll-top:focus-visible::after {
  opacity: 1;
  background-color: var(--mcj-blue,#596c8c);
  animation: mcj-flower-breeze 3.2s linear infinite;
}
@keyframes mcj-flower-breeze {
  from { transform: translate(-50%,-50%) rotate(0deg); }
  to { transform: translate(-50%,-50%) rotate(-360deg); }
}
body.mcj-site .mcj-site-footer__links a {
  transition: color .28s ease;
}
body.mcj-site .mcj-site-footer__links a:hover,
body.mcj-site .mcj-site-footer__links a:focus-visible {
  color: var(--mcj-blue,#596c8c) !important;
}
@media (prefers-reduced-motion: reduce) {
  body.mcj-site .mcj-scroll-top:hover::after,
  body.mcj-site .mcj-scroll-top:focus-visible::after {
    animation: none;
  }
}

/* v1.6.88: arrow and flower share one responsive centre-axis control box.
   The box edge, not either glyph, aligns to the shared right bleed and footer bottom spacing. */
:root {
  --mcj-footer-content-bottom-offset: clamp(2.25rem,4vw,4rem);
  --mcj-scroll-top-size: clamp(18px,6.25vw,40px);
  --mcj-scroll-top-control-size: var(--mcj-scroll-top-size);
  --mcj-scroll-top-flower-size: var(--mcj-scroll-top-size);
  --mcj-scroll-top-arrow-size: calc(var(--mcj-scroll-top-size) * .58);
}
body.mcj-site .mcj-scroll-top {
  right: var(--mcj-gutter);
  bottom: var(--mcj-footer-content-bottom-offset);
  width: var(--mcj-scroll-top-control-size);
  height: var(--mcj-scroll-top-control-size);
  display: grid;
  place-items: center;
  text-align: center;
  font-size: var(--mcj-scroll-top-arrow-size);
  line-height: 1;
}
body.mcj-site .mcj-scroll-top::after {
  left: 50%;
  right: auto;
  top: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%,-50%) rotate(0deg);
}
@keyframes mcj-flower-breeze {
  from { transform: translate(-50%,-50%) rotate(0deg); }
  to { transform: translate(-50%,-50%) rotate(-360deg); }
}


/* v1.6.89: explicit Desktop -> Tablet -> Mobile step scale for the shared back-to-top control. */
:root {
  --mcj-scroll-top-size: clamp(34px,2.7778vw,40px);
}
@media (min-width: 601px) and (max-width: 980px) {
  :root {
    --mcj-scroll-top-size: clamp(18px,2.2vw,21px);
  }
}
@media (max-width: 600px) {
  :root {
    --mcj-scroll-top-size: clamp(12.25px,3.8vw,14.5px);
  }
}

/* v1.6.90: homepage secondary navigation is centred at every viewport;
   product-detail UI uses explicit Tablet/Mobile type and spacing steps, and related card copy shares Product List scales. */
body.mcj-site.home .mcj-home-nav--below-hero .mcj-home-nav__inner {
  justify-content: center !important;
}

@media (min-width: 601px) and (max-width: 980px) {
  :root {
    --mcj-detail-title-step: clamp(15px,2vw,18px);
    --mcj-detail-price-step: clamp(10.5px,1.4vw,12.5px);
    --mcj-detail-label-step: clamp(9px,1.15vw,10.25px);
    --mcj-detail-copy-step: clamp(8.5px,1.08vw,9.75px);
    --mcj-detail-control-step: clamp(8.5px,1.12vw,10px);
    --mcj-detail-support-step: clamp(10px,1.28vw,11.5px);
    --mcj-detail-related-heading-step: clamp(12.5px,1.6vw,14.5px);
    --mcj-detail-support-row: clamp(2.5rem,5vw,3.1rem);
    --mcj-catalogue-card-title-size: clamp(8.75px,1.12vw,10px);
    --mcj-catalogue-card-meta-size: clamp(8px,1vw,9.25px);
    --mcj-catalogue-card-price-size: clamp(8.5px,1.08vw,9.75px);
  }

  body.mcj-site .mcj-piece-panel > .mcj-eyebrow {
    margin-bottom: clamp(.35rem,.8vw,.5rem);
    font-size: var(--mcj-detail-label-step) !important;
  }
  body.mcj-site .mcj-piece-panel h1 {
    margin-bottom: clamp(.3rem,.7vw,.45rem);
    font-size: var(--mcj-detail-title-step) !important;
  }
  body.mcj-site .mcj-piece-panel__price {
    margin-bottom: clamp(.55rem,1.2vw,.8rem);
    font-size: var(--mcj-detail-price-step) !important;
  }
  body.mcj-site .mcj-colour-options,
  body.mcj-site .mcj-accordion {
    margin-top: clamp(.5rem,1.1vw,.7rem);
    margin-bottom: clamp(.5rem,1.1vw,.7rem);
  }
  body.mcj-site .mcj-colour-option {
    min-height: 0;
    padding: clamp(.35rem,.75vw,.5rem) 0;
    gap: clamp(.3rem,.65vw,.45rem);
  }
  body.mcj-site .mcj-colour-option__label,
  body.mcj-site .mcj-accordion summary {
    font-size: var(--mcj-detail-label-step) !important;
    line-height: 1.08;
  }
  body.mcj-site .mcj-colour-option__value,
  body.mcj-site .mcj-gemstone-colour-row__value,
  body.mcj-site .mcj-piece-panel__description,
  body.mcj-site .mcj-accordion dl,
  body.mcj-site .mcj-accordion dt,
  body.mcj-site .mcj-accordion dd,
  body.mcj-site .mcj-enquire-note {
    font-size: var(--mcj-detail-copy-step) !important;
  }
  body.mcj-site .mcj-piece-panel__description { line-height: 1.46; }
  body.mcj-site .mcj-accordion { padding: clamp(.45rem,.95vw,.62rem) 0; }
  body.mcj-site .mcj-accordion dl {
    margin-top: clamp(.45rem,.9vw,.65rem);
    line-height: 1.35;
  }
  body.mcj-site .mcj-enquire {
    min-height: clamp(1.9rem,4.2vw,2.35rem);
    margin-top: clamp(.5rem,1.1vw,.7rem);
    padding: clamp(.35rem,.75vw,.48rem) clamp(.5rem,1vw,.75rem);
    font-size: var(--mcj-detail-control-step) !important;
  }
  body.mcj-site .mcj-enquire-note {
    margin-top: clamp(.35rem,.75vw,.5rem);
    line-height: 1.42;
  }

  body.mcj-site .mcj-support-accordion summary {
    min-height: var(--mcj-detail-support-row);
    gap: clamp(.6rem,1.2vw,.9rem);
    font-size: var(--mcj-detail-support-step) !important;
  }
  body.mcj-site .mcj-support-accordion__mark { width: clamp(.75rem,1.4vw,1rem); }
  body.mcj-site .mcj-support-accordion__mark::before { font-size: var(--mcj-detail-support-step); }
  body.mcj-site .mcj-support-accordion__content {
    padding-bottom: clamp(.8rem,1.6vw,1.1rem);
    font-size: var(--mcj-detail-copy-step) !important;
    line-height: 1.5;
  }
  body.mcj-site .mcj-related-products__head {
    margin-bottom: clamp(.8rem,1.6vw,1.15rem);
  }
  body.mcj-site .mcj-related-products__head h2 {
    font-size: var(--mcj-detail-related-heading-step) !important;
    line-height: 1.08;
  }
  body.mcj-site .mcj-related-products .mcj-product-card__meta h2,
  body.mcj-site .mcj-related-products .mcj-product-card__meta h3 {
    font-size: var(--mcj-catalogue-card-title-size) !important;
    line-height: 1.16;
  }
  body.mcj-site .mcj-related-products .mcj-product-card__meta p {
    font-size: var(--mcj-catalogue-card-meta-size) !important;
    line-height: 1.16;
  }
  body.mcj-site .mcj-related-products .mcj-product-card__price {
    font-size: var(--mcj-catalogue-card-price-size) !important;
    line-height: 1.16;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-detail-title-step: clamp(11px,3.05vw,13px);
    --mcj-detail-price-step: clamp(8.5px,2.35vw,10px);
    --mcj-detail-label-step: clamp(7.5px,2.05vw,8.5px);
    --mcj-detail-copy-step: clamp(7px,1.92vw,8px);
    --mcj-detail-control-step: clamp(7.5px,2.05vw,8.5px);
    --mcj-detail-support-step: clamp(9px,2.45vw,10.5px);
    --mcj-detail-related-heading-step: clamp(11px,3vw,12.5px);
    --mcj-detail-support-row: clamp(2.15rem,9vw,2.55rem);
    --mcj-catalogue-card-title-size: clamp(7.5px,2.05vw,8.5px);
    --mcj-catalogue-card-meta-size: clamp(6.75px,1.85vw,7.75px);
    --mcj-catalogue-card-price-size: clamp(7.25px,1.98vw,8.25px);
  }

  body.mcj-site .mcj-piece-panel > .mcj-eyebrow {
    margin-bottom: clamp(.24rem,1.2vw,.34rem);
    font-size: var(--mcj-detail-label-step) !important;
  }
  body.mcj-site .mcj-piece-panel h1 {
    margin-bottom: clamp(.22rem,1vw,.3rem);
    font-size: var(--mcj-detail-title-step) !important;
  }
  body.mcj-site .mcj-piece-panel__price {
    margin-bottom: clamp(.42rem,1.9vw,.58rem);
    font-size: var(--mcj-detail-price-step) !important;
  }
  body.mcj-site .mcj-colour-options,
  body.mcj-site .mcj-accordion {
    margin-top: clamp(.38rem,1.8vw,.52rem);
    margin-bottom: clamp(.38rem,1.8vw,.52rem);
  }
  body.mcj-site .mcj-colour-option {
    min-height: 0;
    padding: clamp(.28rem,1.35vw,.38rem) 0;
    gap: clamp(.24rem,1.1vw,.34rem);
  }
  body.mcj-site .mcj-colour-option__label,
  body.mcj-site .mcj-accordion summary {
    font-size: var(--mcj-detail-label-step) !important;
    line-height: 1.06;
  }
  body.mcj-site .mcj-colour-option__value,
  body.mcj-site .mcj-gemstone-colour-row__value,
  body.mcj-site .mcj-piece-panel__description,
  body.mcj-site .mcj-accordion dl,
  body.mcj-site .mcj-accordion dt,
  body.mcj-site .mcj-accordion dd,
  body.mcj-site .mcj-enquire-note {
    font-size: var(--mcj-detail-copy-step) !important;
  }
  body.mcj-site .mcj-piece-panel__description { line-height: 1.42; }
  body.mcj-site .mcj-accordion { padding: clamp(.34rem,1.6vw,.46rem) 0; }
  body.mcj-site .mcj-accordion dl {
    margin-top: clamp(.32rem,1.5vw,.44rem);
    line-height: 1.3;
  }
  body.mcj-site .mcj-enquire {
    min-height: clamp(1.6rem,7vw,1.9rem);
    margin-top: clamp(.38rem,1.8vw,.5rem);
    padding: clamp(.28rem,1.3vw,.36rem) clamp(.38rem,1.7vw,.52rem);
    font-size: var(--mcj-detail-control-step) !important;
  }
  body.mcj-site .mcj-enquire-note {
    margin-top: clamp(.28rem,1.3vw,.38rem);
    line-height: 1.38;
  }

  body.mcj-site .mcj-support-accordion summary {
    min-height: var(--mcj-detail-support-row);
    gap: clamp(.45rem,2vw,.65rem);
    font-size: var(--mcj-detail-support-step) !important;
  }
  body.mcj-site .mcj-support-accordion__mark { width: clamp(.65rem,2.7vw,.82rem); }
  body.mcj-site .mcj-support-accordion__mark::before { font-size: var(--mcj-detail-support-step); }
  body.mcj-site .mcj-support-accordion__content {
    padding-bottom: clamp(.65rem,3vw,.85rem);
    font-size: var(--mcj-detail-copy-step) !important;
    line-height: 1.46;
  }
  body.mcj-site .mcj-related-products__head {
    margin-bottom: clamp(.58rem,2.7vw,.78rem);
  }
  body.mcj-site .mcj-related-products__head h2 {
    font-size: var(--mcj-detail-related-heading-step) !important;
    line-height: 1.06;
  }
  body.mcj-site .mcj-related-products .mcj-product-card__meta {
    row-gap: clamp(.18rem,.9vw,.28rem);
  }
  body.mcj-site .mcj-related-products .mcj-product-card__meta h2,
  body.mcj-site .mcj-related-products .mcj-product-card__meta h3 {
    font-size: var(--mcj-catalogue-card-title-size) !important;
    line-height: 1.18;
  }
  body.mcj-site .mcj-related-products .mcj-product-card__meta p {
    font-size: var(--mcj-catalogue-card-meta-size) !important;
    line-height: 1.18;
  }
  body.mcj-site .mcj-related-products .mcj-product-card__price {
    font-size: var(--mcj-catalogue-card-price-size) !important;
    line-height: 1.18;
  }
}

/* v1.6.91: preserve the Product Detail heading hierarchy across narrow breakpoints.
   Service accordions stay smaller; YOU MAY ALSO LIKE keeps the larger section-heading scale. */

/* v1.6.95: About closing slogan is a heading and reuses the canonical Sequel100Wide site heading family. */
body.mcj-site .mcj-reels-section__head .mcj-reels-profile {
  color: var(--mcj-fg);
  text-decoration: none;
}
body.mcj-site .mcj-about-closing h2 {
  color: var(--mcj-fg) !important;
  font-family: var(--mcj-font-heading) !important;
  font-weight: 400 !important;
  font-synthesis: none !important;
  text-transform: uppercase;
}

/* v1.7.17: canonical proportional leading + Page Intro density.
   Font size and line box now share one role system; Every canonical text role resolves from the Desktop leading reference with one shared device multiplier: Tablet .95, Mobile .92.
   Page Intro keeps Desktop spacing and applies a second narrow-layout density reduction. */
/* v1.7.03 structural device scale.
   Desktop wordmark-to-H1 reference is approximately 1 : .80.
   H1-H4 and the visible scroll-top mark resolve through the same device ladder:
   Desktop 1.00 -> Tablet .52 -> Mobile .36. */
/* v1.6.97: canonical site-wide typography hierarchy.
   H1-H6 control structural headings; dense cards and non-heading text use named role tokens. */
:root {
  /* Structural heading scale */
  --mcj-heading-1-size: clamp(36px,3.1vw,48px);
  --mcj-heading-2-size: clamp(29px,2.45vw,40px);
  --mcj-heading-3-size: clamp(22px,1.8vw,30px);
  --mcj-heading-3-weight: 700;
  --mcj-heading-4-size: clamp(18px,1.5vw,28px);
  --mcj-heading-5-size: clamp(15px,1.25vw,20px);
  --mcj-heading-6-size: clamp(12px,.82vw,13px);

  --mcj-heading-1-line-height: .96;
  --mcj-heading-2-line-height: 1;
  --mcj-heading-3-line-height: 1.06;
  --mcj-heading-4-line-height: 1.05;
  --mcj-heading-5-line-height: 1.1;
  --mcj-heading-6-line-height: 1.18;

  /* Supporting text roles */
  --mcj-type-lead-size: clamp(12.5px,1vw,15px);
  --mcj-type-body-size: clamp(12px,.9vw,14px);
  --mcj-type-body-small-size: clamp(10.5px,.75vw,12.5px);
  --mcj-type-card-title-size: clamp(11.5px,.92vw,14px);
  --mcj-type-card-meta-size: clamp(10.5px,.82vw,12px);
  --mcj-type-price-size: clamp(11.5px,.92vw,14px);
  --mcj-type-detail-price-size: clamp(12px,1vw,14px);
  --mcj-type-control-size: clamp(10.5px,.82vw,12px);
  --mcj-type-control-line-height: 1.2;
  --mcj-type-eyebrow-size: var(--mcj-eyebrow-size-responsive);
  --mcj-type-nav-size: var(--mcj-menu-size);
  --mcj-type-language-size: var(--mcj-language-size);

  --mcj-type-lead-line-height: 1.42;
  --mcj-type-body-line-height: 1.45;
  --mcj-type-body-small-line-height: 1.46;
  --mcj-type-card-title-line-height: 1.15;
  --mcj-type-card-meta-line-height: 1.2;
  --mcj-type-price-line-height: 1.15;
  --mcj-type-detail-price-line-height: var(--mcj-type-price-line-height);

  /* Existing component tokens now resolve from the canonical system. */
  --mcj-product-title-size: var(--mcj-heading-4-size);
  --mcj-detail-heading-size: var(--mcj-heading-6-size);
  --mcj-detail-title-step: var(--mcj-heading-4-size);
  --mcj-detail-support-step: var(--mcj-heading-6-size);
  --mcj-detail-related-heading-step: var(--mcj-heading-5-size);
  --mcj-catalogue-card-title-size: var(--mcj-type-card-title-size);
  --mcj-catalogue-card-meta-size: var(--mcj-type-card-meta-size);
  --mcj-catalogue-card-price-size: var(--mcj-type-price-size);
}

/* Reusable visual heading utilities. Semantic HTML level remains independent. */
body.mcj-site .mcj-heading-1,
body.mcj-site .mcj-heading-2,
body.mcj-site .mcj-heading-3,
body.mcj-site .mcj-heading-4,
body.mcj-site .mcj-heading-5,
body.mcj-site .mcj-heading-6 {
  font-family: var(--mcj-font-heading) !important;
  font-synthesis: none !important;
}
body.mcj-site .mcj-heading-1 { font-size: var(--mcj-heading-1-size) !important; line-height: var(--mcj-heading-1-line-height) !important; }
body.mcj-site .mcj-heading-2 { font-size: var(--mcj-heading-2-size) !important; line-height: var(--mcj-heading-2-line-height) !important; }
body.mcj-site .mcj-heading-3 { font-size: var(--mcj-heading-3-size) !important; line-height: var(--mcj-heading-3-line-height) !important; }
body.mcj-site .mcj-heading-4 { font-size: var(--mcj-heading-4-size) !important; line-height: var(--mcj-heading-4-line-height) !important; }
body.mcj-site .mcj-heading-5 { font-size: var(--mcj-heading-5-size) !important; line-height: var(--mcj-heading-5-line-height) !important; }
body.mcj-site .mcj-heading-6 { font-size: var(--mcj-heading-6-size) !important; line-height: var(--mcj-heading-6-line-height) !important; }

/* Reusable supporting text utilities. */
body.mcj-site .mcj-type-lead { font-size: var(--mcj-type-lead-size) !important; line-height: var(--mcj-type-lead-line-height) !important; }
body.mcj-site .mcj-type-body { font-size: var(--mcj-type-body-size) !important; line-height: var(--mcj-type-body-line-height) !important; }
body.mcj-site .mcj-type-body-small { font-size: var(--mcj-type-body-small-size) !important; line-height: var(--mcj-type-body-small-line-height) !important; }
body.mcj-site .mcj-type-card-title { font-size: var(--mcj-type-card-title-size) !important; line-height: var(--mcj-type-card-title-line-height) !important; }
body.mcj-site .mcj-type-card-meta { font-size: var(--mcj-type-card-meta-size) !important; line-height: var(--mcj-type-card-meta-line-height) !important; }
body.mcj-site .mcj-type-price { font-size: var(--mcj-type-price-size) !important; line-height: var(--mcj-type-price-line-height) !important; }
body.mcj-site .mcj-type-eyebrow { font-size: var(--mcj-type-eyebrow-size) !important; }
body.mcj-site .mcj-type-control { font-size: var(--mcj-type-control-size) !important; line-height: var(--mcj-type-control-line-height) !important; }

/* Structural role mapping. */
body.mcj-site .mcj-catalogue-header h1,
body.mcj-site .mcj-about-hero h1,
body.mcj-site .mcj-standard-page > header h1,
body.mcj-site .mcj-gaoyu-hero h1 {
  font-size: var(--mcj-heading-1-size) !important;
  line-height: var(--mcj-heading-1-line-height) !important;
}
body.mcj-site .mcj-about-story__copy h2,
body.mcj-site .mcj-about-word-panel h2 {
  font-size: var(--mcj-heading-2-size) !important;
  line-height: var(--mcj-heading-2-line-height) !important;
}
body.mcj-site.home .mcj-brand-statement h2,
body.mcj-site .mcj-about-closing h2 {
  font-size: var(--mcj-heading-3-size) !important;
  line-height: var(--mcj-heading-3-line-height) !important;
}
body.mcj-site .mcj-piece-panel h1 {
  font-size: var(--mcj-heading-4-size) !important;
  line-height: var(--mcj-heading-4-line-height) !important;
}
body.mcj-site .mcj-section-head h2,
body.mcj-site .mcj-reels-section__head h2,
body.mcj-site .mcj-related-products__head h2,
body.mcj-site .mcj-material-grid h2 {
  font-size: var(--mcj-heading-5-size) !important;
  line-height: var(--mcj-heading-5-line-height) !important;
}
body.mcj-site .mcj-colour-option__label,
body.mcj-site .mcj-accordion summary,
body.mcj-site .mcj-support-accordion summary {
  font-size: var(--mcj-heading-6-size) !important;
  line-height: var(--mcj-heading-6-line-height) !important;
}

/* Dense product/collection modules use a dedicated shared card role instead of a structural heading level. */
body.mcj-site .mcj-product-card__meta h2,
body.mcj-site .mcj-product-card__meta h3,
body.mcj-site .mcj-collection-card h2,
body.mcj-site .mcj-collection-card h3,
body.mcj-site .mcj-gaoyu-card__copy h2 {
  font-size: var(--mcj-type-card-title-size) !important;
  line-height: var(--mcj-type-card-title-line-height) !important;
}
body.mcj-site .mcj-product-card__meta p,
body.mcj-site .mcj-collection-card p,
body.mcj-site .mcj-gaoyu-card__copy p {
  font-size: var(--mcj-type-card-meta-size) !important;
  line-height: var(--mcj-type-card-meta-line-height) !important;
}
body.mcj-site .mcj-product-card__price {
  font-size: var(--mcj-type-price-size) !important;
  line-height: var(--mcj-type-price-line-height) !important;
}

/* Shared non-heading roles. */
body.mcj-site .mcj-catalogue-header > p,
body.mcj-site .mcj-catalogue-intro {
  font-size: var(--mcj-type-lead-size) !important;
  line-height: var(--mcj-type-lead-line-height) !important;
}
body.mcj-site .mcj-about-intro,
body.mcj-site .mcj-about-story__copy p,
body.mcj-site .mcj-material-grid p,
body.mcj-site.home .mcj-brand-statement > p:not(.mcj-eyebrow) {
  font-size: var(--mcj-type-body-size) !important;
  line-height: var(--mcj-type-body-line-height) !important;
}
body.mcj-site .mcj-piece-panel__description,
body.mcj-site .mcj-colour-option__value,
body.mcj-site .mcj-gemstone-colour-row__value,
body.mcj-site .mcj-accordion dl,
body.mcj-site .mcj-accordion dt,
body.mcj-site .mcj-accordion dd,
body.mcj-site .mcj-enquire-note,
body.mcj-site .mcj-support-accordion__content {
  font-size: var(--mcj-type-body-small-size) !important;
  line-height: var(--mcj-type-body-small-line-height) !important;
}
body.mcj-site .mcj-piece-panel__price {
  font-size: var(--mcj-type-detail-price-size) !important;
  line-height: var(--mcj-type-detail-price-line-height) !important;
}
body.mcj-site .mcj-eyebrow,
body.mcj-site .mcj-piece-panel > .mcj-eyebrow {
  font-size: var(--mcj-type-eyebrow-size) !important;
}
body.mcj-site .mcj-home-nav__item { font-size: var(--mcj-type-nav-size) !important; }
body.mcj-site .mcj-lang-switcher,
body.mcj-site .mcj-header-lang,
body.mcj-site .mcj-home-nav__language { font-size: var(--mcj-type-language-size) !important; }

@media (min-width: 601px) and (max-width: 980px) {
  :root {
    --mcj-heading-1-size: clamp(19px,2.55vw,25px);
    --mcj-heading-2-size: clamp(15px,2.15vw,21px);
    --mcj-heading-3-size: clamp(11.5px,1.6vw,15.5px);
    --mcj-heading-4-size: clamp(10.25px,1.5vw,14.5px);
    --mcj-heading-5-size: clamp(12px,1.45vw,14px);
    --mcj-heading-6-size: clamp(9.5px,1.12vw,11px);

    --mcj-type-lead-size: clamp(10px,1.18vw,11.5px);
    --mcj-type-body-size: clamp(10px,1.15vw,11.5px);
    --mcj-type-body-small-size: clamp(8.5px,1vw,10px);
    --mcj-type-card-title-size: clamp(9px,1.08vw,11px);
    --mcj-type-card-meta-size: clamp(8px,.98vw,10px);
    --mcj-type-price-size: clamp(8.75px,1.06vw,11px);
    --mcj-type-detail-price-size: clamp(9.75px,1.2vw,11.5px);
    --mcj-type-control-size: clamp(8px,1vw,10px);

    --mcj-heading-1-line-height: .8832;
    --mcj-heading-2-line-height: .92;
    --mcj-heading-3-line-height: .9752;
    --mcj-heading-4-line-height: .966;
    --mcj-heading-5-line-height: 1.012;
    --mcj-heading-6-line-height: 1.0856;
    --mcj-type-lead-line-height: 1.3064;
    --mcj-type-body-line-height: 1.334;
    --mcj-type-body-small-line-height: 1.3432;
    --mcj-type-card-title-line-height: 1.058;
    --mcj-type-card-meta-line-height: 1.104;
    --mcj-type-price-line-height: 1.058;
    --mcj-type-control-line-height: 1.104;

  }
}

@media (max-width: 600px) {
  :root {
    --mcj-heading-1-size: clamp(13px,4.5vw,17.25px);
    --mcj-heading-2-size: clamp(10.5px,3.7vw,14.5px);
    --mcj-heading-3-size: clamp(8px,2.8vw,10.75px);
    --mcj-heading-4-size: clamp(6.5px,2.6vw,10px);
    --mcj-heading-5-size: clamp(9px,2.7vw,11px);
    --mcj-heading-6-size: clamp(8px,2.2vw,9px);

    --mcj-type-lead-size: clamp(8px,2.2vw,9.5px);
    --mcj-type-body-size: clamp(8.5px,2.4vw,9.5px);
    --mcj-type-body-small-size: clamp(7px,1.92vw,8px);
    --mcj-type-card-title-size: clamp(7.5px,2vw,8.5px);
    --mcj-type-card-meta-size: clamp(6.75px,1.8vw,7.75px);
    --mcj-type-price-size: clamp(7.25px,1.9vw,8.5px);
    --mcj-type-detail-price-size: clamp(8.5px,2.2vw,9.25px);
    --mcj-type-control-size: clamp(7px,1.9vw,7.75px);

    --mcj-heading-1-line-height: .8064;
    --mcj-heading-2-line-height: .84;
    --mcj-heading-3-line-height: .8904;
    --mcj-heading-4-line-height: .882;
    --mcj-heading-5-line-height: .924;
    --mcj-heading-6-line-height: .9912;
    --mcj-type-lead-line-height: 1.1928;
    --mcj-type-body-line-height: 1.218;
    --mcj-type-body-small-line-height: 1.2264;
    --mcj-type-card-title-line-height: .966;
    --mcj-type-card-meta-line-height: 1.008;
    --mcj-type-price-line-height: .966;
    --mcj-type-control-line-height: 1.008;

  }
}


/* v1.6.99: canonical hover accent, H3 weight and collection-tag interaction. */
body.mcj-site .mcj-heading-3,
body.mcj-site.home .mcj-brand-statement h2,
body.mcj-site .mcj-about-closing h2 {
  font-weight: var(--mcj-heading-3-weight) !important;
  font-synthesis: weight !important;
}
body.mcj-site .mcj-collection-family-tag__label {
  display: inline-block;
  transform: none;
  transition: none;
}
body.mcj-site .mcj-collection-family-tag.is-active {
  border-color: var(--mcj-fg);
  background: var(--mcj-fg);
  color: #fff;
}
body.mcj-site .mcj-collection-family-tag:hover,
body.mcj-site .mcj-collection-family-tag:focus-visible {
  border-color: var(--mcj-blue,#596c8c);
  background: var(--mcj-blue,#596c8c);
  color: #fff;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  box-shadow: none;
}

/* v1.7.01: site-wide back-to-top uses one shared control box.
   Arrow is the resting state; hover/focus crossfades to the brand flower.
   The control bottom and footer content bottom share one offset token. */
body.mcj-site .mcj-site-footer {
  padding-bottom: var(--mcj-footer-content-bottom-offset) !important;
}
body.mcj-site .mcj-scroll-top {
  bottom: var(--mcj-footer-content-bottom-offset);
  opacity: 1;
  pointer-events: auto;
  color: transparent;
  font-size: 0;
}
body.mcj-site .mcj-scroll-top::before {
  content: "↑";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: var(--mcj-fg,#090a0c);
  font-family: "MCJ Heading", "Sequel 100 Wide", sans-serif;
  font-size: var(--mcj-scroll-top-arrow-size);
  line-height: 1;
  opacity: 1;
  pointer-events: none;
  transition: opacity .2s ease, color .24s ease;
}
body.mcj-site .mcj-scroll-top::after {
  opacity: 0;
  background-color: var(--mcj-blue,#596c8c);
}
body.mcj-site .mcj-scroll-top:hover::before,
body.mcj-site .mcj-scroll-top:focus-visible::before {
  opacity: 0;
}
body.mcj-site .mcj-scroll-top:hover::after,
body.mcj-site .mcj-scroll-top:focus-visible::after {
  opacity: 1;
  background-color: var(--mcj-blue,#596c8c);
  animation: mcj-flower-breeze 3.2s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  body.mcj-site .mcj-scroll-top:hover::after,
  body.mcj-site .mcj-scroll-top:focus-visible::after {
    animation: none;
  }
}

/* v1.7.02: monotonic responsive type ladder and invariant About composition.
   Canonical rule: every role stays Desktop > Tablet > Mobile; About structure never stacks. */
:root {
  --mcj-about-story-gap: clamp(32px,4vw,70px);
  --mcj-about-copy-pad: clamp(16px,2vw,34px);
  --mcj-about-word-pad: clamp(34px,6vw,90px);
  --mcj-reels-card-width: clamp(230px,22vw,360px);
  --mcj-reels-gap: clamp(16px,1.8vw,30px);
  --mcj-reels-head-gap: 22px;
  --mcj-reels-placeholder-pad: 22px;
}

body.mcj-site .mcj-about-story--split {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: var(--mcj-about-story-gap);
  align-items: center;
}
body.mcj-site .mcj-about-story--reverse .mcj-about-story__visual { order: 2; }
body.mcj-site .mcj-about-story__copy {
  max-width: 38.75rem;
  padding: var(--mcj-about-copy-pad);
}
body.mcj-site .mcj-about-banner { width: min(100%,93.75rem); aspect-ratio: 16 / 9; }
body.mcj-site .mcj-about-word-panel { padding: var(--mcj-about-word-pad); }
body.mcj-site .mcj-standard-page > .mcj-about-hero h1 {
  font-size: var(--mcj-heading-1-size) !important;
  line-height: var(--mcj-heading-1-line-height) !important;
}
body.mcj-site .mcj-about-story__copy h2,
body.mcj-site .mcj-about-word-panel h2 {
  font-size: var(--mcj-heading-2-size) !important;
  line-height: var(--mcj-heading-2-line-height) !important;
}
body.mcj-site .mcj-about-closing h2 {
  font-size: var(--mcj-heading-3-size) !important;
  line-height: var(--mcj-heading-3-line-height) !important;
}
body.mcj-site .mcj-reels-section__head h2 {
  font-size: var(--mcj-heading-5-size) !important;
  line-height: var(--mcj-heading-5-line-height) !important;
}
body.mcj-site .mcj-about-intro,
body.mcj-site .mcj-about-story__copy p {
  font-size: var(--mcj-type-body-size) !important;
  line-height: var(--mcj-type-body-line-height) !important;
}
body.mcj-site .mcj-reels-section__head { padding-bottom: var(--mcj-reels-head-gap); }
body.mcj-site .mcj-reels-set { gap: var(--mcj-reels-gap); padding-right: var(--mcj-reels-gap); }
body.mcj-site .mcj-reel-card { width: var(--mcj-reels-card-width); }
body.mcj-site .mcj-reel-card--placeholder { padding: var(--mcj-reels-placeholder-pad); }
body.mcj-site .mcj-reel-card--placeholder span { font-size: var(--mcj-type-card-meta-size); }
body.mcj-site .mcj-reels-section__head .mcj-reels-profile { font-size: var(--mcj-type-control-size); }

@media (min-width: 601px) and (max-width: 980px) {
  :root {
    --mcj-about-story-gap: clamp(20px,2.8vw,28px);
    --mcj-about-copy-pad: clamp(8px,1.3vw,14px);
    --mcj-about-word-pad: clamp(24px,3.2vw,32px);
    --mcj-reels-card-width: clamp(172px,22vw,220px);
    --mcj-reels-gap: clamp(12px,1.45vw,15px);
    --mcj-reels-head-gap: 16px;
    --mcj-reels-placeholder-pad: 16px;
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-about-story-gap: clamp(10px,2.5vw,16px);
    --mcj-about-copy-pad: clamp(3px,1vw,6px);
    --mcj-about-word-pad: clamp(14px,3.8vw,20px);
    --mcj-reels-card-width: clamp(120px,28vw,160px);
    --mcj-reels-gap: clamp(8px,2.1vw,10px);
    --mcj-reels-head-gap: 12px;
    --mcj-reels-placeholder-pad: 12px;
  }
}

/* v1.7.20: canonical non-home Page Intro component with visual edge symmetry and a shared +10px edge increment.
   Edge spacing follows the H1 structural ladder; H1-to-Body spacing follows the Lead/Body ladder.
   Missing Body copy does not change the component's outer spacing. */
:root {
  --mcj-page-intro-inline: var(--mcj-gutter);
  --mcj-page-intro-edge-gap: clamp(60px,calc(4.4vw + 10px),77px);
  --mcj-page-intro-copy-gap: clamp(18px,1.4vw,22px);
  --mcj-page-intro-header-menu-tail: max(0px,calc((var(--mcj-wordmark-size) - var(--mcj-menu-size)) / 2));
  --mcj-page-intro-header-bottom-pad: max(0px,calc(var(--mcj-page-intro-edge-gap) - var(--mcj-page-intro-header-menu-tail)));
  --mcj-page-intro-mobile-nav-row-height: 2.125rem;
  --mcj-page-title-eyebrow-offset: clamp(1.15rem,1.55vw,1.65rem);
}

body.mcj-site .mcj-catalogue,
body.mcj-site .mcj-standard-page {
  padding-top: 0 !important;
  padding-left: var(--mcj-page-intro-inline) !important;
  padding-right: var(--mcj-page-intro-inline) !important;
}

body.mcj-site .mcj-standard-page:has(> .mcj-page-intro),
body.mcj-site .mcj-standard-page:has(> .mcj-about-hero + .mcj-material-grid) {
  padding-top: 0 !important;
}

@media (min-width: 721px) {
  body.mcj-site .mcj-site-header--inner .mcj-site-header__row {
    align-items: flex-end !important;
    padding-bottom: var(--mcj-page-intro-header-bottom-pad) !important;
  }
  body.mcj-site .mcj-site-header--inner .mcj-wordmark,
  body.mcj-site .mcj-site-header--inner .mcj-home-nav--inner {
    align-self: flex-end !important;
  }
  body.mcj-site .mcj-site-header--inner .mcj-home-nav--inner .mcj-home-nav__inner {
    min-height: var(--mcj-wordmark-size) !important;
  }
}

@media (max-width: 720px) {
  :root {
    --mcj-page-intro-mobile-nav-row-height: min(2.125rem,calc(var(--mcj-menu-size) + var(--mcj-page-intro-edge-gap) + var(--mcj-page-intro-edge-gap)));
    --mcj-page-intro-header-menu-tail: max(0px,calc((var(--mcj-page-intro-mobile-nav-row-height) - var(--mcj-menu-size)) / 2));
    --mcj-page-intro-header-bottom-pad: max(0px,calc(var(--mcj-page-intro-edge-gap) - var(--mcj-page-intro-header-menu-tail)));
  }
  body.mcj-site .mcj-site-header--inner .mcj-home-nav--inner .mcj-home-nav__inner {
    min-height: var(--mcj-page-intro-mobile-nav-row-height) !important;
  }
  body.mcj-site .mcj-site-header--inner .mcj-site-header__row {
    align-content: end !important;
    padding-bottom: var(--mcj-page-intro-header-bottom-pad) !important;
  }
}

body.mcj-site .mcj-page-intro {
  height: auto !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: var(--mcj-page-intro-edge-gap) !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  transform: none !important;
  justify-content: flex-start !important;
}

body.mcj-site .mcj-catalogue > .mcj-catalogue-header.mcj-page-intro:not(.mcj-collections-header),
body.mcj-site .mcj-standard-page > .mcj-catalogue-header.mcj-page-intro:not(.mcj-collections-header),
body.mcj-site .mcj-standard-page > .mcj-about-hero.mcj-page-intro,
body.mcj-site .mcj-standard-page:has(> .mcj-about-hero + .mcj-material-grid) > .mcj-about-hero.mcj-page-intro,
body.mcj-site .mcj-collections-header .mcj-catalogue-heading-copy.mcj-page-intro {
  height: auto !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  margin-bottom: var(--mcj-page-intro-edge-gap) !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  transform: none !important;
  justify-content: flex-start !important;
}

body.mcj-site .mcj-page-intro h1 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.mcj-site .mcj-page-intro__body {
  margin-top: var(--mcj-page-intro-copy-gap) !important;
  margin-bottom: 0 !important;
}

/* Collections treats the H1+Body block as the intro component; tags are the next section. */
body.mcj-site .mcj-collections-header .mcj-collection-family-tags {
  margin-top: 0 !important;
}

/* Eyebrows may sit above a page title, but they never alter the Page Intro baseline. */
body.mcj-site .mcj-standard-page > .mcj-page-intro {
  position: relative;
}
body.mcj-site .mcj-standard-page > .mcj-page-intro > .mcj-eyebrow {
  position: absolute;
  top: calc(-1 * var(--mcj-page-title-eyebrow-offset));
  left: 0;
  margin: 0 !important;
}

@media (min-width: 601px) and (max-width: 980px) {
  :root {
    --mcj-page-intro-edge-gap: clamp(30px,calc(2.7vw + 10px),37px);
    --mcj-page-intro-copy-gap: clamp(10px,1.3vw,13px);
    --mcj-page-title-eyebrow-offset: clamp(.72rem,1vw,.9rem);
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-page-intro-inline: var(--mcj-mobile-content-inset,var(--mcj-gutter));
    --mcj-page-intro-edge-gap: clamp(21px,calc(3.5vw + 10px),25px);
    --mcj-page-intro-copy-gap: clamp(7px,1.9vw,9px);
    --mcj-page-title-eyebrow-offset: clamp(.52rem,2.2vw,.7rem);
  }
}

/* v1.7.10: Filter uses the site-wide responsive typography utilities directly.
   H6 drives FILTER/SORT BY; Control drives groups/options; every chevron scales in em from its parent role. */
:root {
  --mcj-filter-chevron-size: .9em;
  --mcj-filter-chevron-stroke: .09em;
}

html body.mcj-site .mcj-filter-panel .mcj-type-filter-title,
html body.mcj-site .mcj-filter-panel .mcj-type-filter-heading {
  font-family: var(--mcj-font-heading) !important;
  font-weight: 700 !important;
  font-synthesis: none !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
}

html body.mcj-site .mcj-filter-panel .mcj-type-filter-option {
  font-family: var(--mcj-font-body) !important;
  font-weight: 400;
  line-height: var(--mcj-type-control-line-height) !important;
  letter-spacing: 0;
  text-transform: uppercase;
}

html body.mcj-site .mcj-filter-panel .mcj-type-filter-option.is-active {
  font-weight: 700;
}

body.mcj-site .mcj-filter-panel__toggle {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

html body.mcj-site .mcj-filter-panel .mcj-type-filter-title > span:first-child,
html body.mcj-site .mcj-filter-panel .mcj-type-filter-heading > span:first-child {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  font-synthesis: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit;
}

body.mcj-site .mcj-filter-panel__group--sort > h2.mcj-type-filter-heading {
  margin: 0 0 1rem;
}

body.mcj-site .mcj-filter-panel__chevron,
body.mcj-site .mcj-filter-panel__subgroup-chevron {
  display: block;
  font-size: inherit !important;
  width: var(--mcj-filter-chevron-size) !important;
  height: var(--mcj-filter-chevron-size) !important;
  flex: 0 0 var(--mcj-filter-chevron-size) !important;
  align-self: center !important;
  justify-self: end;
  margin: 0 !important;
  border: 0 !important;
  border-top: var(--mcj-filter-chevron-stroke) solid currentColor !important;
  border-left: var(--mcj-filter-chevron-stroke) solid currentColor !important;
  background: transparent !important;
  clip-path: none !important;
  transform-origin: 50% 50%;
  transform: rotate(45deg) !important;
  transition: transform .2s ease;
}

body.mcj-site .mcj-filter-panel__toggle[aria-expanded="false"] .mcj-filter-panel__chevron,
body.mcj-site .mcj-filter-panel__subgroup-toggle[aria-expanded="false"] .mcj-filter-panel__subgroup-chevron {
  transform: rotate(225deg) !important;
}

@media (min-width: 901px) {
  body.mcj-site .mcj-filter-panel:has(.mcj-filter-panel__toggle[aria-expanded="false"]) {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

/* v1.7.19: canonical Filter hierarchy, scaled SORT BY rhythm, two-level Collection disclosure and state-invariant geometry.
   FILTER is the Filter Title and sits 2pt above every section heading.
   CATEGORY through SORT BY share one Filter Section Heading role; options remain the lower control role.
   Collection shows first-level families first, then reveals second-level names with the same chevron system. */
:root {
  --mcj-filter-type-device-scale: 1;
  --mcj-filter-title-step: 2pt;
  --mcj-filter-sort-before-gap: 1.75rem;
  --mcj-filter-sort-heading-gap: 1rem;
  --mcj-filter-section-heading-size: clamp(12px,.82vw,13px);
  --mcj-filter-option-size: clamp(10.5px,.82vw,12px);
  --mcj-filter-title-size: calc(var(--mcj-filter-section-heading-size) + var(--mcj-filter-title-step));
  --mcj-filter-rail-width: clamp(12.5rem,14vw,15.625rem);
}

html body.mcj-site .mcj-filter-panel .mcj-type-filter-title {
  font-size: var(--mcj-filter-title-size) !important;
  line-height: var(--mcj-heading-6-line-height) !important;
}
html body.mcj-site .mcj-filter-panel .mcj-type-filter-heading {
  font-size: var(--mcj-filter-section-heading-size) !important;
  line-height: var(--mcj-heading-6-line-height) !important;
}
html body.mcj-site .mcj-filter-panel .mcj-type-filter-option {
  font-size: var(--mcj-filter-option-size) !important;
}
body.mcj-site .mcj-filter-panel__group--sort {
  margin-top: var(--mcj-filter-sort-before-gap) !important;
}
body.mcj-site .mcj-filter-panel__group--sort > h2.mcj-type-filter-heading {
  margin: 0 0 var(--mcj-filter-sort-heading-gap) !important;
}
body.mcj-site .mcj-catalogue-layout {
  grid-template-columns: minmax(0,1fr) var(--mcj-filter-rail-width) !important;
}

body.mcj-site .mcj-filter-panel__subgroup-toggle,
body.mcj-site .mcj-filter-panel__collection-family-row {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
}
body.mcj-site .mcj-filter-panel__subgroup-toggle > span:first-child,
body.mcj-site .mcj-filter-panel__collection-family-row > .mcj-filter-panel__option {
  min-width: 0;
  align-self: center !important;
  margin: 0 !important;
}
body.mcj-site .mcj-filter-panel__subgroup-chevron {
  align-self: center !important;
  justify-self: end !important;
}

body.mcj-site .mcj-filter-panel__option {
  color: #8d8f92;
  background: transparent;
  cursor: pointer;
  text-align: left;
  text-transform: uppercase;
}
body.mcj-site .mcj-filter-panel__option.is-active {
  color: var(--mcj-fg);
  font-weight: 700;
}
body.mcj-site .mcj-filter-panel__option:hover,
body.mcj-site .mcj-filter-panel__option:focus-visible {
  color: var(--mcj-hover-text);
}
body.mcj-site .mcj-filter-panel__collection-family {
  margin-top: .35em;
}
body.mcj-site .mcj-filter-panel__collection-family:first-child {
  margin-top: 0;
}
body.mcj-site .mcj-filter-panel__collection-family-row {
  min-height: 2.1em;
  border-top: .0625rem solid rgba(9,10,12,.36);
}
body.mcj-site .mcj-filter-panel__collection-family-row > .mcj-filter-panel__option {
  width: 100%;
  min-height: 2.1em;
  padding: .45em 0;
  border: 0;
  justify-content: flex-start;
  text-align: left;
}
body.mcj-site .mcj-filter-panel__collection-toggle {
  display: grid;
  place-items: center;
  width: 1.8em;
  height: 1.8em;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
body.mcj-site .mcj-filter-panel__collection-toggle[aria-expanded="false"] .mcj-filter-panel__subgroup-chevron {
  transform: rotate(225deg) !important;
}
body.mcj-site .mcj-filter-panel__collection-children {
  padding-left: .8em;
}
body.mcj-site .mcj-filter-panel__collection-children[hidden] {
  display: none;
}
body.mcj-site .mcj-filter-panel__collection-child {
  width: 100%;
  min-height: 2.1em;
  padding: .45em 0;
  border: 0;
  border-top: .0625rem solid rgba(9,10,12,.36);
}

@media (min-width: 601px) and (max-width: 980px) {
  :root {
    --mcj-filter-type-device-scale: .70;
    --mcj-filter-title-step: 1.4pt;
    --mcj-filter-sort-before-gap: 1.225rem;
    --mcj-filter-sort-heading-gap: .7rem;
    --mcj-filter-section-heading-size: clamp(8.4px,.91vw,9.1px);
    --mcj-filter-option-size: clamp(7.35px,.84vw,8.4px);
    --mcj-filter-rail-width: clamp(7.5rem,17vw,8.5rem);
  }
}

@media (max-width: 600px) {
  :root {
    --mcj-filter-type-device-scale: .42;
    --mcj-filter-title-step: .84pt;
    --mcj-filter-sort-before-gap: .735rem;
    --mcj-filter-sort-heading-gap: .42rem;
    --mcj-filter-section-heading-size: clamp(5.04px,1.4vw,5.46px);
    --mcj-filter-option-size: clamp(4.41px,1.29vw,5.04px);
    --mcj-filter-rail-width: clamp(5.3rem,23.5vw,5.9rem);
  }

  body.mcj-site .mcj-filter-panel__toggle {
    width: 100%;
  }
}

/* v1.7.21: one Product Display Frame component across cards, showcases, related products and Product Detail.
   Context layouts choose width; the frame owns aspect ratio and media occupancy. */
body.mcj-site .mcj-product-display-frame {
  aspect-ratio: var(--mcj-product-display-frame-ratio) !important;
  overflow: hidden;
  background: var(--mcj-surface);
}
body.mcj-site .mcj-product-card__media.mcj-product-display-frame .mcj-product-media__item img,
body.mcj-site .mcj-product-card__media.mcj-product-display-frame .mcj-product-media__item video {
  width: 100% !important;
  height: 100% !important;
  padding: var(--mcj-product-display-frame-media-inset) !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  background: #fff !important;
}
body.mcj-site .mcj-product-display-frame,
body.mcj-site .mcj-product-display-frame .mcj-product-media__item {
  background: #fff !important;
}



/* v1.7.43: Product Detail related-product frame geometry.
   YOU MAY ALSO LIKE remains left-anchored at the canonical gutter. Relative to v1.7.42, the complete
   related grid and every inter-frame gap are reduced by a further 5% (95% of the v1.7.42 geometry).
   This makes the grid 76% of the pre-v1.7.42 geometry while preserving the existing Desktop -> Tablet
   -> Mobile column ladder, frame aspect ratio, media fitting and typography hierarchy. */
:root {
  --mcj-related-display-frame-width: 76%;
  --mcj-related-display-frame-gap: clamp(.57rem,1.368vw,1.33rem);
}
body.mcj-site.single-mcj_piece .mcj-product-grid--related {
  width: var(--mcj-related-display-frame-width) !important;
  max-width: var(--mcj-related-display-frame-width) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  gap: var(--mcj-related-display-frame-gap) !important;
}
@media (max-width: 1200px) {
  :root { --mcj-related-display-frame-gap: clamp(.418rem,1.216vw,.76rem); }
}
@media (max-width: 720px) {
  :root { --mcj-related-display-frame-gap: clamp(.304rem,1.368vw,.532rem); }
}
@media (max-width: 520px) {
  :root { --mcj-related-display-frame-gap: clamp(.266rem,1.216vw,.456rem); }
}

/* v1.7.22: Product Detail has its own display-frame component.
   Reference geometry keeps the 1162x1038 frame and Product Info anchor. v1.7.39 retains the v1.7.36 Product Detail geometry and v1.7.37 per-gemstone rows, preserves the shared Product Detail colour-spec typography, and optically centres every swatch on the visible value text using a body-small-relative offset that scales through Desktop, Tablet and Mobile. */
body.mcj-site.single-mcj_piece .mcj-piece-page {
  padding-top: var(--mcj-section-gap);
}
body.mcj-site.single-mcj_piece .mcj-piece-detail {
  display: grid !important;
  grid-template-columns:
    var(--mcj-product-detail-frame-width)
    var(--mcj-product-detail-thumb-offset)
    var(--mcj-product-detail-thumb-size)
    var(--mcj-product-detail-info-gap)
    var(--mcj-product-detail-info-width)
    minmax(0,1fr) !important;
  gap: 0 !important;
  align-items: start;
  width: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 var(--mcj-gutter) var(--mcj-section-gap) !important;
}
body.mcj-site.single-mcj_piece .mcj-piece-viewer.mcj-product-detail-display-frame {
  grid-column: 1;
  width: var(--mcj-product-detail-frame-width) !important;
  height: var(--mcj-product-detail-frame-height) !important;
  min-width: 0;
  min-height: 0;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: var(--mcj-product-detail-frame-ratio) !important;
  margin: 0 !important;
  position: sticky;
  top: var(--mcj-nav-h);
  overflow: hidden;
  background: transparent !important;
}
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide {
  place-items: center;
  background: transparent !important;
}
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide img,
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide video {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  background: transparent !important;
}
/* The fit axis is resolved from each asset's intrinsic dimensions.
   Tall/narrow assets use the full frame height with proportional width; wide assets use the full frame width with proportional height.
   theme.js also writes the resolved live pixel dimensions as inline !important declarations so historical width/height !important rules cannot override the fit.
   The attribute rules below remain as the no-JavaScript / pre-measurement fallback. */
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide img[data-mcj-fit-axis="height"],
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide video[data-mcj-fit-axis="height"] {
  width: auto !important;
  height: 100% !important;
}
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide img[data-mcj-fit-axis="width"],
body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide video[data-mcj-fit-axis="width"] {
  width: 100% !important;
  height: auto !important;
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnails {
  grid-column: 3;
  width: var(--mcj-product-detail-thumb-size);
  height: var(--mcj-product-detail-frame-height);
  max-height: var(--mcj-product-detail-frame-height);
  display: flex;
  flex-direction: column;
  gap: var(--mcj-product-detail-thumb-stack-gap);
  align-items: stretch;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: none;
  position: sticky;
  top: var(--mcj-nav-h);
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnails::-webkit-scrollbar { display: none; }
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail {
  position: relative;
  flex: 0 0 var(--mcj-product-detail-thumb-size);
  width: var(--mcj-product-detail-thumb-size);
  height: var(--mcj-product-detail-thumb-size);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff !important;
  color: var(--mcj-fg);
  opacity: .52;
  overflow: hidden;
  cursor: pointer;
  transition: opacity .18s ease;
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail::after {
  content: "";
  position: absolute;
  inset: 0;
  border: .0625rem solid currentColor;
  opacity: 0;
  pointer-events: none;
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail:hover,
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail:focus-visible { opacity: .78; }
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail:focus-visible {
  outline: .125rem solid var(--mcj-fg);
  outline-offset: .125rem;
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail.is-active {
  opacity: 1;
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail.is-active::after { opacity: 1; }
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail img,
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail video {
  display: block;
  width: 100%;
  height: 100%;
  padding: 8%;
  object-fit: contain;
  object-position: center;
  background: #fff !important;
}
body.mcj-site.single-mcj_piece .mcj-piece-thumbnail__type {
  position: absolute;
  right: .25rem;
  bottom: .25rem;
  padding: .125rem .2rem;
  background: rgba(255,255,255,.84);
  font-size: .45rem;
  line-height: 1;
  letter-spacing: .04em;
}
body.mcj-site.single-mcj_piece .mcj-piece-panel {
  grid-column: 5;
  width: var(--mcj-product-detail-info-width) !important;
  min-width: 0;
  min-height: var(--mcj-product-detail-frame-height);
  position: sticky;
  top: var(--mcj-nav-h);
  align-self: start;
  padding-top: 0;
}


@media (max-width: 720px) {
  :root {
    --mcj-product-detail-mobile-thumb-size: clamp(40.5118477764px,11.48925210176835vw,66.2921145432px);
    --mcj-product-detail-mobile-stack-gap: clamp(.75rem,3.5vw,1.25rem);
  }
  body.mcj-site.single-mcj_piece .mcj-piece-detail {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 0 !important;
    padding-left: var(--mcj-gutter) !important;
    padding-right: var(--mcj-gutter) !important;
  }
  body.mcj-site.single-mcj_piece .mcj-piece-viewer.mcj-product-detail-display-frame {
    grid-column: 1;
    grid-row: 1;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: var(--mcj-product-detail-frame-ratio) !important;
    position: relative;
    top: auto;
  }
  body.mcj-site.single-mcj_piece .mcj-piece-thumbnails {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    height: auto;
    max-height: none;
    margin-top: var(--mcj-product-detail-mobile-stack-gap);
    display: flex;
    flex-direction: row;
    gap: clamp(.45rem,2vw,.75rem);
    overflow-x: auto;
    overflow-y: hidden;
    position: static;
  }
  body.mcj-site.single-mcj_piece .mcj-piece-thumbnail {
    flex: 0 0 var(--mcj-product-detail-mobile-thumb-size);
    width: var(--mcj-product-detail-mobile-thumb-size);
    height: var(--mcj-product-detail-mobile-thumb-size);
  }
  body.mcj-site.single-mcj_piece .mcj-piece-panel {
    grid-column: 1;
    grid-row: 3;
    width: 100% !important;
    min-height: 0;
    margin-top: clamp(1.5rem,7vw,2.5rem);
    position: static;
  }
}



/* v1.7.40: Desktop Product Detail magnifier follows the resolved media box at 1.8x. */
@media (min-width: 981px) and (hover: hover) and (pointer: fine) {
  body.mcj-site.single-mcj_piece .mcj-piece-viewer.mcj-product-detail-display-frame {
    cursor: zoom-in;
  }
  body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide img {
    transform-origin: var(--mcj-magnify-x,50%) var(--mcj-magnify-y,50%);
    transition: transform .18s ease;
    will-change: transform;
  }
  body.mcj-site.single-mcj_piece .mcj-piece-viewer.is-magnifying .mcj-piece-viewer__slide.is-active img {
    transform: scale(var(--mcj-product-detail-magnify-scale));
  }
}
@media (prefers-reduced-motion: reduce) {
  body.mcj-site.single-mcj_piece .mcj-product-detail-display-frame .mcj-piece-viewer__slide img {
    transition: none;
  }
}


/* v1.7.40: Product List display frames are 5% smaller while preserving the shared frame aspect ratio.
   Only the display-frame box is reduced. The card/grid cell geometry is untouched, and the frame remains
   pinned to the left edge of its existing cell so the leftmost Product List frame keeps its original X position. */
body.mcj-site .mcj-catalogue .mcj-product-grid.mcj-catalogue-products > .mcj-product-card > .mcj-product-card__media.mcj-product-display-frame {
  width: 95% !important;
  max-width: 95% !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}
/* v1.7.45: GAO YU Digital Persona Distributor public-page contract.
   Banner and content remain on the site's canonical gutter rails. At a 2560px viewport the existing
   fluid root and gutter resolve a 2465.1px content width; 3.286795:1 therefore resolves the requested
   750px banner height. The same ratio is preserved through Desktop -> Tablet -> Mobile.
   GAO YU media cards reuse Product Display Frame geometry instead of maintaining a second frame system. */
:root {
  --mcj-gaoyu-banner-ratio: 3.286795 / 1;
  --mcj-gaoyu-content-gap: var(--mcj-display-frame-gap);
}
body.mcj-site .mcj-gaoyu-page > .mcj-gaoyu-header {
  padding-bottom: var(--mcj-section-gap) !important;
}
body.mcj-site .mcj-gaoyu-banner {
  width: 100%;
  aspect-ratio: var(--mcj-gaoyu-banner-ratio);
  margin: 0 0 var(--mcj-section-gap);
  overflow: hidden;
  background: var(--mcj-surface);
}
body.mcj-site .mcj-gaoyu-banner > img,
body.mcj-site .mcj-gaoyu-banner > video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
body.mcj-site .mcj-gaoyu-grid.mcj-product-grid {
  display: grid;
  grid-template-columns: repeat(var(--mcj-display-frame-columns),minmax(0,1fr));
  gap: var(--mcj-gaoyu-content-gap);
  margin-bottom: var(--mcj-section-gap);
}
body.mcj-site .mcj-gaoyu-card__media.mcj-product-display-frame {
  width: 100%;
  aspect-ratio: var(--mcj-product-display-frame-ratio) !important;
  overflow: hidden;
  background: #fff !important;
}
body.mcj-site .mcj-gaoyu-card__media.mcj-product-display-frame img,
body.mcj-site .mcj-gaoyu-card__media.mcj-product-display-frame video {
  display: block;
  width: 100% !important;
  height: 100% !important;
  padding: var(--mcj-product-display-frame-media-inset) !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  background: #fff !important;
}
body.mcj-site .mcj-gaoyu-reels {
  margin-top: 0;
  margin-bottom: var(--mcj-section-gap) !important;
}
@media (max-width: 1200px) {
  body.mcj-site .mcj-gaoyu-grid.mcj-product-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: var(--mcj-display-frame-gap);
  }
}
@media (max-width: 720px) {
  body.mcj-site .mcj-gaoyu-grid.mcj-product-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: var(--mcj-display-frame-gap);
  }
}
@media (max-width: 520px) {
  body.mcj-site .mcj-gaoyu-grid.mcj-product-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: var(--mcj-display-frame-gap);
  }
}

body.mcj-site .mcj-gaoyu-card:hover .mcj-gaoyu-card__media.mcj-product-display-frame img,
body.mcj-site .mcj-gaoyu-card:focus-visible .mcj-gaoyu-card__media.mcj-product-display-frame img {
  transform: none !important;
}

/* v1.7.53: GAO YU content cards reveal detail without enlarging the shared Display Frame.
   Desktop/Laptop use two shared tracks: one unchanged media track plus one copy track.
   Tablet/Mobile use the site three-track row: one unchanged media track plus two copy tracks. */
body.mcj-site .mcj-gaoyu-card {
  position: relative;
  min-width: 0;
}
body.mcj-site .mcj-gaoyu-card__toggle {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
body.mcj-site .mcj-gaoyu-card__toggle:focus-visible {
  outline: 1px solid var(--mcj-fg);
  outline-offset: 3px;
}
body.mcj-site .mcj-gaoyu-card.is-expanded {
  grid-column: span 2;
}
body.mcj-site .mcj-gaoyu-card.is-expanded > .mcj-gaoyu-card__toggle,
body.mcj-site .mcj-gaoyu-card.is-expanded > .mcj-gaoyu-card__media,
body.mcj-site .mcj-gaoyu-card.is-expanded > .mcj-gaoyu-card__copy {
  display: none;
}
body.mcj-site .mcj-gaoyu-card__detail[hidden] {
  display: none !important;
}
body.mcj-site .mcj-gaoyu-card__detail {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: var(--mcj-gaoyu-content-gap);
  align-items: start;
  width: 100%;
}
body.mcj-site .mcj-gaoyu-card__detail-media.mcj-product-display-frame {
  grid-column: span 1;
  width: 100%;
  aspect-ratio: var(--mcj-product-display-frame-ratio) !important;
  overflow: hidden;
  background: #fff !important;
}
body.mcj-site .mcj-gaoyu-card__detail-media.mcj-product-display-frame img,
body.mcj-site .mcj-gaoyu-card__detail-media.mcj-product-display-frame video {
  display: block;
  width: 100% !important;
  height: 100% !important;
  padding: var(--mcj-product-display-frame-media-inset) !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  background: #fff !important;
}
body.mcj-site .mcj-gaoyu-card__detail-copy {
  position: relative;
  grid-column: span 1;
  min-width: 0;
  padding-right: clamp(3rem,4vw,4.5rem);
}
body.mcj-site .mcj-gaoyu-card__close {
  position: absolute;
  top: -.35rem;
  right: -.35rem;
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  margin: 0;
  padding: .35rem;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
body.mcj-site .mcj-gaoyu-card__close-icon {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: square;
}
body.mcj-site .mcj-gaoyu-card__close:hover,
body.mcj-site .mcj-gaoyu-card__close:focus-visible {
  color: var(--mcj-hover-text);
}
body.mcj-site .mcj-gaoyu-card__close:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 2px;
}
body.mcj-site .mcj-gaoyu-card__timestamp {
  display: block;
  margin: 0 0 1rem;
  color: var(--mcj-muted);
  letter-spacing: .04em;
}
body.mcj-site .mcj-gaoyu-card__detail-heading {
  margin: 0;
}
body.mcj-site .mcj-gaoyu-card__detail-caption {
  max-width: 48ch;
  margin: .9rem 0 0;
  color: var(--mcj-muted);
}
body.mcj-site .mcj-gaoyu-card__body {
  max-width: 58ch;
  margin-top: 1.25rem;
}
body.mcj-site .mcj-gaoyu-card__body > :first-child {
  margin-top: 0;
}
body.mcj-site .mcj-gaoyu-card__body > :last-child {
  margin-bottom: 0;
}
body.mcj-site .mcj-gaoyu-card__source {
  display: inline-block;
  margin-top: 1.25rem;
  padding-bottom: .15em;
  border-bottom: 1px solid currentColor;
  color: inherit;
  letter-spacing: .04em;
}
@media (max-width: 980px) {
  body.mcj-site .mcj-gaoyu-card.is-expanded {
    grid-column: 1 / -1;
  }
  body.mcj-site .mcj-gaoyu-card__detail {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
  body.mcj-site .mcj-gaoyu-card__detail-copy {
    grid-column: span 2;
    padding-right: 3.25rem;
  }
}

/* v1.7.48: laptop scale bridge.
   981-2048 CSS px interpolates the existing Tablet endpoint into the Desktop reference system.
   The bridge is viewport-based rather than model-based because macOS and Windows display scaling change the CSS viewport independently of panel pixels. */
@media (min-width: 981px) and (max-width: 2048px) {
  :root {
    /* Shared header geometry. */
    --mcj-nav-h: clamp(92.02px,calc(19.8781px + 7.3614vw),170.64px);
    --mcj-wordmark-size: clamp(31.85px,calc(5.1569px + 2.7238vw),60.94px);
    --mcj-menu-size: clamp(9.29px,calc(3.2155px + .6199vw),15.91px);
    --mcj-language-size: clamp(8.41px,calc(4.0147px + .4485vw),13.2px);
    --mcj-eyebrow-size-responsive: clamp(10.62px,calc(4.206px + .6545vw),17.61px);

    /* Canonical heading and supporting-text ladder. */
    --mcj-heading-1-size: clamp(25px,calc(3.8951px + 2.1536vw),48px);
    --mcj-heading-2-size: clamp(21px,calc(3.5655px + 1.779vw),40px);
    --mcj-heading-3-size: clamp(15.5px,calc(2.1948px + 1.3577vw),30px);
    --mcj-heading-4-size: clamp(14.5px,calc(2.1124px + 1.264vw),28px);
    --mcj-heading-5-size: clamp(14px,calc(8.4944px + .5618vw),20px);
    --mcj-heading-6-size: clamp(10.98px,calc(9.1264px + .1891vw),13px);
    --mcj-type-lead-size: clamp(11.5px,calc(8.2884px + .3277vw),15px);
    --mcj-type-body-size: clamp(11.27px,calc(8.7649px + .2556vw),14px);
    --mcj-type-body-small-size: clamp(9.8px,calc(7.3225px + .2528vw),12.5px);
    --mcj-type-card-title-size: clamp(10.584px,calc(7.4495px + .3199vw),14px);
    --mcj-type-card-meta-size: clamp(9.604px,calc(7.4054px + .2243vw),12px);
    --mcj-type-price-size: clamp(10.388px,calc(7.0736px + .3382vw),14px);
    --mcj-type-detail-price-size: clamp(11.5px,calc(9.206px + .2341vw),14px);
    --mcj-type-control-size: clamp(9.8px,calc(7.7813px + .206vw),12px);

    /* Standard-page entry rhythm and persistent controls. */
    --mcj-page-intro-edge-gap: clamp(36.46px,calc(-.7396px + 3.7959vw),77px);
    --mcj-page-intro-copy-gap: clamp(12.74px,calc(4.243px + .867vw),22px);
    --mcj-page-title-eyebrow-offset: clamp(10.19px,calc(-5.0606px + 1.5562vw),26.81px);
    --mcj-scroll-top-size: clamp(21px,calc(3.5655px + 1.779vw),40px);
    --mcj-material-heading-gap: clamp(15.57px,calc(.035px + 1.5852vw),32.5px);

    /* About and editorial spacing. */
    --mcj-about-story-gap: clamp(28px,calc(-10.5393px + 3.9326vw),70px);
    --mcj-about-copy-pad: clamp(14px,calc(-4.3521px + 1.8727vw),34px);
    --mcj-about-word-pad: clamp(32px,calc(-21.221px + 5.4307vw),90px);
    --mcj-reels-card-width: clamp(220px,calc(91.5356px + 13.1086vw),360px);
    --mcj-reels-gap: clamp(15px,calc(1.236px + 1.4045vw),30px);

    /* Catalogue Filter bridge. */
    --mcj-filter-title-step: clamp(1.866667px,calc(1.1326px + .0749vw),2.666667px);
    --mcj-filter-sort-before-gap: clamp(17.34px,calc(7.1546px + 1.0393vw),28.44px);
    --mcj-filter-sort-heading-gap: clamp(9.91px,calc(4.0924px + .5936vw),16.25px);
    --mcj-filter-section-heading-size: clamp(8.918px,calc(5.1723px + .3822vw),13px);
    --mcj-filter-option-size: clamp(8.232px,calc(4.7745px + .3528vw),12px);
    --mcj-filter-rail-width: clamp(120.33px,calc(-2.2526px + 12.5084vw),253.92px);
  }

  body.mcj-site .mcj-site-header__row {
    gap: clamp(19.6px,calc(-7.1481px + 2.7294vw),48.75px);
  }
  body.mcj-site .mcj-home-nav--inner .mcj-home-nav__inner {
    gap: clamp(15.68px,calc(-33.3108px + 4.9991vw),69.07px);
  }
  body.mcj-site .mcj-home-nav__item {
    gap: clamp(7.08px,calc(5.1897px + .1929vw),9.14px);
  }
  body.mcj-site .mcj-home-nav__pill {
    width: clamp(12.74px,calc(1.1323px + 1.1845vw),25.39px);
    height: clamp(6.37px,calc(.1028px + .6395vw),13.2px);
  }
}

/* v1.7.68: exhibition experience page reuses the shared MEETCUTE JADE header, type ladder, navigation pill and support accordion components. */
body.mcj-site.mcj-exhibition-page {
  min-height: 100svh;
  background: var(--mcj-bg);
}
body.mcj-site .mcj-exhibition-header {
  position: relative;
  border-bottom: .0625rem solid var(--mcj-line);
}
body.mcj-site .mcj-exhibition-header__row {
  justify-content: space-between;
}
body.mcj-site .mcj-exhibition-header .mcj-wordmark,
body.mcj-site .mcj-exhibition-header .mcj-header-lang {
  flex: 0 0 auto;
}
body.mcj-site .mcj-exhibition-header .mcj-header-lang {
  margin-left: auto;
}
body.mcj-site .mcj-exhibition-shell {
  width: 100%;
  padding: 0 var(--mcj-page-intro-inline) var(--mcj-section-gap);
}
body.mcj-site .mcj-exhibition-intro {
  padding: var(--mcj-page-intro-edge-gap) 0;
}
body.mcj-site .mcj-exhibition-intro .mcj-eyebrow {
  margin: 0 !important;
}
body.mcj-site .mcj-exhibition-actions {
  border-top: .0625rem solid var(--mcj-line);
}
body.mcj-site .mcj-exhibition-action {
  width: 100%;
  padding: var(--mcj-page-intro-edge-gap) 0;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  border-bottom: .0625rem solid var(--mcj-line);
  color: var(--mcj-fg);
  white-space: normal;
}
body.mcj-site .mcj-exhibition-action__label {
  min-width: 0;
  margin: 0;
}
body.mcj-site .mcj-exhibition-action__arrow {
  justify-self: end;
}
body.mcj-site .mcj-exhibition-support {
  padding-top: var(--mcj-page-intro-edge-gap);
}
body.mcj-site .mcj-exhibition-consult {
  display: inline-block;
  padding-bottom: .18em;
  border-bottom: .0625rem solid currentColor;
}
body.mcj-site .mcj-exhibition-consult .mcj-heading-5 {
  margin: 0;
}
body.mcj-site .mcj-exhibition-consult:hover,
body.mcj-site .mcj-exhibition-consult:focus-visible,
body.mcj-site .mcj-exhibition-links a:hover,
body.mcj-site .mcj-exhibition-links a:focus-visible {
  color: var(--mcj-hover-text);
}
body.mcj-site .mcj-exhibition-consult:focus-visible,
body.mcj-site .mcj-exhibition-links a:focus-visible {
  outline: .0625rem solid currentColor;
  outline-offset: .25rem;
}
body.mcj-site .mcj-exhibition-links {
  margin-top: var(--mcj-page-intro-copy-gap);
  display: flex;
  flex-wrap: wrap;
  gap: .75rem var(--mcj-gutter);
}
body.mcj-site .mcj-exhibition-gift {
  margin-top: var(--mcj-page-intro-edge-gap);
}

/* v1.7.69: Master QR contact form composes existing MEETCUTE JADE type, pill, rule and enquire components. */
body.mcj-site.mcj-lead-page {
  min-height: 100svh;
  background: var(--mcj-bg);
}
body.mcj-site .mcj-lead-intro {
  padding: var(--mcj-page-intro-edge-gap) 0;
  border-bottom: .0625rem solid var(--mcj-line);
}
body.mcj-site .mcj-lead-intro .mcj-eyebrow,
body.mcj-site .mcj-lead-intro .mcj-heading-1,
body.mcj-site .mcj-lead-intro .mcj-type-body {
  margin-left: 0;
  margin-right: 0;
}
body.mcj-site .mcj-lead-intro .mcj-heading-1 {
  margin-bottom: var(--mcj-page-intro-copy-gap);
}
body.mcj-site .mcj-lead-intro .mcj-type-body {
  max-width: 44rem;
  margin-bottom: 0;
  color: var(--mcj-muted);
}
body.mcj-site .mcj-lead-form {
  padding-bottom: var(--mcj-section-gap);
}
body.mcj-site .mcj-lead-section {
  padding: var(--mcj-page-intro-edge-gap) 0;
  border-bottom: .0625rem solid var(--mcj-line);
}
body.mcj-site .mcj-lead-section > .mcj-heading-6,
body.mcj-site .mcj-lead-section > .mcj-type-body-small {
  margin: 0;
}
body.mcj-site .mcj-lead-section > .mcj-type-body-small {
  margin-top: .5rem;
  color: var(--mcj-muted);
}
body.mcj-site .mcj-lead-fields {
  margin-top: var(--mcj-page-intro-copy-gap);
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: var(--mcj-gutter);
}
body.mcj-site .mcj-lead-field {
  display: block;
}
body.mcj-site .mcj-lead-field > .mcj-type-control {
  display: block;
  margin-bottom: .625rem;
}
body.mcj-site .mcj-lead-field input {
  width: 100%;
  min-height: 3.25rem;
  padding: .75rem 0;
  border: 0;
  border-bottom: .0625rem solid var(--mcj-line);
  border-radius: 0;
  outline: 0;
  background: transparent;
  color: var(--mcj-fg);
}
body.mcj-site .mcj-lead-field input::placeholder {
  color: var(--mcj-muted);
  opacity: 1;
}
body.mcj-site .mcj-lead-field input:focus-visible {
  border-bottom-color: var(--mcj-fg);
}
body.mcj-site .mcj-lead-options {
  margin-top: var(--mcj-page-intro-copy-gap);
  border-top: .0625rem solid var(--mcj-line);
}
body.mcj-site .mcj-lead-choice {
  position: relative;
  width: 100%;
  min-height: 4.375rem;
  padding: 1rem 0;
  border-bottom: .0625rem solid var(--mcj-line);
  cursor: pointer;
  white-space: normal;
}
body.mcj-site .mcj-lead-choice__input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
body.mcj-site .mcj-lead-choice__input:checked + .mcj-home-nav__pill {
  background: var(--mcj-fg);
}
body.mcj-site .mcj-lead-choice__input:focus-visible + .mcj-home-nav__pill {
  outline: .0625rem solid var(--mcj-fg);
  outline-offset: .25rem;
}
body.mcj-site .mcj-lead-actions {
  padding-top: var(--mcj-page-intro-edge-gap);
}
body.mcj-site .mcj-lead-submit {
  width: min(100%,28rem);
  border: 0;
  cursor: pointer;
}
body.mcj-site .mcj-lead-note,
body.mcj-site .mcj-lead-status {
  max-width: 44rem;
  margin: var(--mcj-page-intro-copy-gap) 0 0;
  color: var(--mcj-muted);
}
body.mcj-site .mcj-lead-back {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-top: var(--mcj-page-intro-edge-gap);
}
body.mcj-site .mcj-lead-back:hover,
body.mcj-site .mcj-lead-back:focus-visible {
  color: var(--mcj-hover-text);
}
body.mcj-site .mcj-lead-back:focus-visible {
  outline: .0625rem solid currentColor;
  outline-offset: .25rem;
}
@media (max-width: 600px) {
  body.mcj-site .mcj-lead-fields {
    grid-template-columns: minmax(0,1fr);
  }
}