/* ==========================================================================
   NOGA DIAMONDS · site layer (assets/css/site.css)
   Loaded after noga.css. Page components built on the design-system tokens;
   noga.css itself is not modified. All motion is removed under
   prefers-reduced-motion (see the end of the file).
   ========================================================================== */

/* ---------- shared bits ---------- */
.split--top{align-items:start}
@media (min-width:900px){.sticky-col{position:sticky;top:calc(var(--header-h) + 40px)}}
.note-line{margin-top:clamp(28px,3vw,40px);max-width:72ch;color:var(--stone);font-size:var(--step--1)}
.verdict{margin-top:clamp(28px,4vw,48px);max-width:34ch}
.coda{margin-top:clamp(36px,4vw,56px);max-width:46ch;font-weight:400}
.lede+.lede{margin-top:0}
.section-head>[lang]+[lang]{margin-top:0}
.nav a.nav__edu{color:var(--gold)}
.nav a.nav__edu:hover,.nav a.nav__edu[aria-current="page"]{color:var(--gold-hi)}
@media (min-width:1024px) and (max-width:1180px){.nav{gap:14px}.nav a{font-size:13px;letter-spacing:.03em}}

/* ---------- hero (home): the logo diamond lights up ---------- */
.hero--home{padding-top:clamp(40px,7vw,104px)}
@keyframes site-rays-in{to{opacity:1}}
@keyframes site-rays-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
.ignite{position:relative;isolation:isolate}
/* The logo and its diamond are painted on the very first frame. No fade-in, no dimmed
   diamond waiting for the animation, no animated glare over the N. The still photo (an <img> with
   fetchpriority=high) is the diamond; the video only fades in on top of it once it is actually playing. */
.ignite__logo{opacity:1}
.ignite__stone{box-shadow:0 0 18px rgba(246,233,226,.28)}
.mark .ignite__stone>video{position:absolute;inset:0;opacity:0;transition:opacity .8s var(--ease-out)}
.ignite.is-live .ignite__stone>video{opacity:1}
/* Hero text is painted at once (it is often the LCP element): the entrance only slides it into place,
   it never starts invisible. */
.js .ignite__step{animation:site-step .8s var(--ease-lux) var(--d,0s) both}
@keyframes site-step{from{transform:translateY(10px)}to{transform:none}}
.hero__scroll{position:relative}

/* ---------- intro ---------- */
.intro__grid{align-items:start}
.intro__name{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line);color:var(--stone);font-size:var(--step--1);max-width:52ch}
.intro__name .heb{color:var(--gold-hi)}
.pillars{list-style:none;margin:0;padding:0;display:grid;gap:0}
.pillar{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:20px;padding-block:clamp(22px,2.6vw,32px);border-top:1px solid var(--line)}
.pillar:first-child{border-top:0;padding-top:0}
.pillar__n{grid-row:span 3;font-family:var(--font-display);font-size:var(--step-3);line-height:1;color:var(--gold);font-variant-numeric:lining-nums}
.pillar h3{margin-bottom:8px}
.pillar p{color:var(--stone)}

/* ---------- methods (HPHT / CVD) ---------- */
.method__name{font-family:var(--font-display);font-weight:500;font-size:clamp(44px,6vw,72px);line-height:1;color:var(--gold-hi);letter-spacing:.01em;font-variant-numeric:lining-nums}
.method__name--muted{color:var(--mute)}
.method__kicker--muted{color:var(--mute)}
.method .card__text{font-size:var(--step-0)}

/* ---------- facts ---------- */
.facts{margin-top:var(--space-2)}
.fact{padding-top:var(--space-5);border-top:1px solid var(--line-2)}
.fact h3{margin-bottom:10px}
.fact p{color:var(--stone)}
.beyond{margin-top:clamp(36px,5vw,64px)}
.beyond__col{padding:clamp(22px,3vw,36px);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}
.beyond__col--yes{border-color:var(--gold-lo);background:linear-gradient(180deg,rgba(226,199,186,.08),rgba(226,199,186,0) 70%),var(--surface)}
.beyond__h{margin-bottom:10px;color:var(--mute)}
.beyond__col--yes .beyond__h{color:var(--gold)}
.beyond ul{list-style:none;margin:0;padding:0}
.beyond li{padding-block:13px;border-top:1px solid var(--line);font-family:var(--font-display);font-weight:500;font-size:var(--step-2);line-height:1.25}
.beyond li:first-child{border-top:0}
.beyond li small{margin-left:10px;font-family:var(--font-body);font-size:var(--step--2);letter-spacing:.04em;color:var(--mute)}
.beyond__col--yes li{color:var(--gold-hi)}

/* ---------- WOW blocks ---------- */
.wow{overflow:clip}
.wow__grid{align-items:center}
.wow__text{display:grid;gap:var(--space-4);justify-items:start}
.wow__text .kicker{margin-bottom:0}
.wow__figure{position:relative;display:grid;gap:var(--space-5);padding:clamp(18px,3vw,36px);border-color:var(--line-2);box-shadow:var(--shadow-lg)}
.wow__figure::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(246,233,226,.45),transparent 35%,transparent 65%,rgba(164,124,60,.4));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.wow__hint{display:grid;gap:4px;color:var(--stone);font-size:var(--step--1);text-align:center}
.wow__close{display:grid;justify-items:center;gap:var(--space-5);margin-top:clamp(40px,5vw,72px)}
.wow__close .quote{max-width:36ch}
.chips{list-style:none;margin:var(--space-2) 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
.chip{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line-2);border-radius:var(--radius-sm);background:rgba(17,16,13,.6)}
.chip img{width:34px;height:34px;flex:none}
.chip strong{display:block;font-family:var(--font-display);font-weight:500;font-size:var(--step-1);line-height:1.1}
.chip small{display:block;font-size:var(--step--2);color:var(--mute);letter-spacing:.04em}
.chip--gold{border-color:var(--gold-lo);background:var(--gold-veil)}
.chip--gold strong{color:var(--gold-hi)}
.color-stage{position:relative}
.color-stage img{width:min(340px,100%);border-radius:var(--radius-sm)}
.level-badge{position:absolute;right:6%;top:6%;display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--gold-lo);border-radius:50%;background:rgba(0,0,0,.78);font-family:var(--font-display);font-size:var(--step-3);line-height:1;color:var(--gold-hi)}

/* ---------- steps (how we choose) ---------- */
.steps{list-style:none;margin:0;padding:0}
.steps li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;padding-block:26px;border-top:1px solid var(--line)}
.steps li:first-child{border-top:0;padding-top:4px}
.steps__n{font-family:var(--font-display);font-size:var(--step-4);line-height:1;color:var(--gold);font-variant-numeric:lining-nums}
.steps h3{margin-bottom:8px}
.steps p{color:var(--stone)}

/* ---------- rarity chart (animated) ---------- */
.rarity{margin:0 0 clamp(40px,6vw,72px);padding:clamp(22px,3.2vw,40px);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}
.rarity__title{margin-bottom:26px;font-weight:500;font-size:var(--step--2);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--gold)}
.bars{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.bars li{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr) minmax(110px,auto);align-items:center;gap:18px}
.bars__label{font-size:var(--step--1);color:var(--stone)}
.bars__track{position:relative;height:22px;border-radius:0 4px 4px 0;background:linear-gradient(90deg,rgba(255,255,255,.03),transparent)}
.bars__bar{position:absolute;left:0;top:0;bottom:0;width:var(--w);min-width:3px;border-radius:0 4px 4px 0;background:linear-gradient(90deg,#4f493f,#7a7264);transform-origin:left;overflow:hidden}
/* The bars fill when the chart scrolls into view (site.js adds .is-in to [data-bars]),
   one after the other, then a single soft sheen runs along each bar. Counters run in step (site.js). */
.js [data-bars] .bars__bar{transform:scaleX(0);transition:transform 1.5s var(--ease-lux) calc(var(--d,0s) * 2)}
.js [data-bars].is-in .bars__bar{transform:none}
.bars__bar::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 0 35%,rgba(255,246,242,.28) 50%,transparent 65% 100%);transform:translateX(-100%);opacity:0}
.js [data-bars].is-in .bars__bar::before{animation:site-sheen 1.4s var(--ease-in-out) calc(var(--d,0s) * 2 + 1.2s) 1 both}
@keyframes site-sheen{0%{opacity:1;transform:translateX(-100%)}100%{opacity:1;transform:translateX(100%)}}
.bars--noga .bars__bar{overflow:visible}
.js [data-bars] .bars--noga .bars__bar::after{opacity:0;transition:opacity .6s var(--ease-out) 2.2s}
.js [data-bars].is-in .bars--noga .bars__bar::after{opacity:1}
.bars__value [data-bar-count]{font-variant-numeric:tabular-nums}
.bars--tiny .bars__bar{background:linear-gradient(90deg,#7a7264,rgba(122,114,100,.2))}
.bars--noga .bars__bar{background:var(--gold-hi);box-shadow:0 0 12px 2px rgba(246,233,226,.8)}
.bars--noga .bars__bar::after{content:"";position:absolute;left:-4px;top:50%;width:11px;height:11px;transform:translateY(-50%) rotate(45deg);background:var(--gold-hi);box-shadow:0 0 14px 3px rgba(246,233,226,.7);animation:site-twinkle 2.8s var(--ease-in-out) 2s infinite}
@keyframes site-twinkle{50%{opacity:.45;transform:translateY(-50%) rotate(45deg) scale(.75)}}
.bars__value{justify-self:end;text-align:right;white-space:nowrap;font-weight:400;color:var(--ivory)}
.bars--noga .bars__label,.bars--noga .bars__value{color:var(--gold-hi);font-weight:500}
.rarity__note{margin-top:22px;max-width:80ch;font-size:var(--step--2);color:var(--mute);line-height:1.6}
.rarity__note+.rarity__note{margin-top:22px}
@media (max-width:760px){
  .bars li{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}
  .bars__track{grid-column:1/-1;grid-row:2}
}

/* ---------- ladder ---------- */
.ladder{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-auto-rows:1fr} /* every box the same height */
.ladder li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;margin-left:calc(var(--i) * clamp(0px,3vw,48px));padding:clamp(20px,2.4vw,28px);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}
.ladder__n{font-family:var(--font-display);font-size:var(--step-3);line-height:1;color:var(--mute);font-variant-numeric:lining-nums}
.ladder__t{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:8px}
.ladder__name{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);line-height:1.1}
.ladder__tag{font-weight:500;font-size:var(--step--2);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--mute)}
.ladder li p{color:var(--stone)}
.ladder li>div{display:flex;flex-direction:column}
.ladder__more{align-self:flex-start;margin-top:10px;font-size:var(--step--1);color:var(--gold-hi);text-decoration:none;border-bottom:1px solid var(--gold-deep);transition:border-color var(--dur-2)}
.ladder__more:hover{border-bottom-color:var(--gold-hi)}
.ladder__more .arrow{display:inline-block;transition:transform var(--dur-2) var(--ease-lux)}
.ladder__more:hover .arrow{transform:translateX(3px)}
.ladder li.ladder--top{border-color:var(--gold-lo);background:linear-gradient(180deg,rgba(226,199,186,.1),rgba(226,199,186,0) 70%),var(--surface);box-shadow:var(--glow)}
.ladder--top .ladder__n,.ladder--top .ladder__name{color:var(--gold-hi)}
.ladder--top .ladder__tag{color:var(--gold)}
.ha{display:flex;flex-wrap:wrap;gap:16px;margin:18px 0 10px}
.ha figure{margin:0;width:120px}
.ha img{width:120px;height:120px;border-radius:50%;background:#000;object-fit:cover}
.ha figcaption{margin-top:8px;text-align:center;font-size:var(--step--2);color:var(--mute)}
@media (max-width:760px){.ladder li{margin-left:0;grid-template-columns:40px minmax(0,1fr);gap:14px}}

/* ---------- mini anatomy (home) ---------- */
.mini-anatomy{position:relative;margin:var(--space-2) 0;width:100%;max-width:460px}
.mini-anatomy img{width:100%;opacity:.9}
.mini-anatomy__label{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);padding:3px 8px;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:rgba(0,0,0,.85);font-size:var(--step--2);letter-spacing:.06em;color:var(--gold-hi);white-space:nowrap}
.js .mini-anatomy.reveal-stagger>img{opacity:.9;transform:none}

/* ---------- light paths ---------- */
.lightpath{margin:0}
.lightpath svg{width:100%;height:auto}
.lp-tabs .tabs__list{justify-content:center;margin-bottom:var(--space-3)}
.lp-tabs .tabs__tab{padding-inline:4px}
.lp-caption{text-align:center}

/* ---------- ASET + terms ---------- */
.aset-figure{margin:clamp(28px,3vw,40px) 0 0}
.aset-figure__img{width:min(300px,100%)}
.legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:22px 0 12px;font-size:var(--step--1);color:var(--stone)}
.legend>span{display:flex;align-items:center;gap:2px}
.terms{margin:0}
.terms>div{padding-block:22px;border-top:1px solid var(--line)}
.terms>div:first-child{border-top:0;padding-top:4px}
.terms dt{margin-bottom:6px;font-family:var(--font-display);font-weight:500;font-size:var(--step-2)}
.terms dt small{margin-left:10px;font-family:var(--font-body);font-weight:500;font-size:var(--step--2);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--mute)}
.terms dd{margin:0;color:var(--stone)}
@media (max-width:440px){.legend{grid-template-columns:minmax(0,1fr)}}

/* ---------- measure cards (home WOW) ---------- */
.measure-card .card__media{--ratio:1}
.measure-card__media.illus{border:0;border-radius:0}
.measure-card__media img{width:100%;height:100%;object-fit:contain}
.measure-card .compare{border-radius:0}
.spin-slow{animation:site-float 7s var(--ease-in-out) infinite}
@keyframes site-float{50%{transform:translateY(-6px) scale(1.02)}}
.pulse-soft{animation:site-pulse 5s var(--ease-in-out) infinite}
@keyframes site-pulse{50%{filter:brightness(1.25) saturate(1.15)}}

/* ---------- band: same report, different light ---------- */
.band{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,56px)}
.band__text{display:grid;gap:10px}
.band__text p{color:var(--stone);max-width:62ch}
.band__pair{display:flex;align-items:center;gap:14px}
.band__gem{display:block;width:clamp(64px,8vw,96px)}
.band__gem--a img{filter:brightness(1.25) drop-shadow(0 0 14px rgba(246,233,226,.45));animation:site-glint 3.6s var(--ease-in-out) infinite}
.band__gem--b img{filter:brightness(.7) saturate(.6)}
@keyframes site-glint{50%{filter:brightness(1.5) drop-shadow(0 0 22px rgba(246,233,226,.7))}}
.band__eq{font-family:var(--font-display);font-size:var(--step-3);color:var(--mute)}
@media (max-width:899.98px){.band{grid-template-columns:minmax(0,1fr)}.band__cta{justify-self:start}}

/* ---------- examples ---------- */
.exhead{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px;margin-bottom:clamp(32px,4vw,56px)}
.exhead .section-head{margin-bottom:0}
.example{display:grid;gap:12px;align-content:start}
.example h3{margin-top:6px}
.example__meta{font-size:var(--step--1);color:var(--stone)}
.examples__fine{margin-top:clamp(28px,4vw,44px);max-width:70ch;font-size:var(--step--1)}
.video-toggle .video-toggle__play,.video-toggle[aria-pressed="true"] .video-toggle__pause{display:none}
.video-toggle[aria-pressed="true"] .video-toggle__play{display:inline}
.example .media-frame video,.example .media-frame img{transition:transform var(--dur-5) var(--ease-lux)}
.example:hover .media-frame video{transform:scale(1.03)}

/* ---------- timeline ---------- */
.timeline{list-style:none;margin:clamp(36px,5vw,56px) 0 0;padding:0;max-width:880px}
.timeline li{display:grid;grid-template-columns:minmax(110px,180px) minmax(0,1fr);gap:24px;padding-block:22px;border-top:1px solid var(--line)}
.timeline__y{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);line-height:1.1;color:var(--gold)}
.timeline p{color:var(--stone)}
.slogan{margin-top:8px;font-family:var(--font-display);font-style:italic;font-weight:500;font-size:var(--step-3);color:var(--ivory)!important}
@media (max-width:640px){.timeline li{grid-template-columns:minmax(0,1fr);gap:6px}}
.story{margin-bottom:var(--space-4)}

/* ---------- contact ---------- */
.contact .container{display:grid;justify-items:center;gap:var(--space-5)}
.contact .kicker{margin-bottom:0}
.mail{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:var(--space-2)}
.mail__addr{font-family:var(--font-display);font-weight:500;font-size:clamp(24px,3.4vw,34px);line-height:1.2;color:var(--gold-hi);text-decoration:none;overflow-wrap:anywhere}
.mail__addr:hover{text-decoration:underline;text-decoration-color:var(--gold-deep)}
.contact__note{color:var(--stone)}

/* ---------- sources ---------- */
.sources-block{background:var(--ink-2)}
.sources-block .footer-title{font-size:var(--step--2)}
.sources--cols{max-width:none;columns:2 420px;column-gap:clamp(32px,5vw,72px);display:block}
.sources--cols li{break-inside:avoid;margin-bottom:8px;scroll-margin-top:calc(var(--header-h) + 24px)}
.sources--cols li:target{color:var(--gold-hi)}
.sources--cols li:target a{color:var(--gold-hi);border-bottom-color:var(--gold)}
.footer-note{margin-top:clamp(32px,4vw,48px);max-width:90ch;color:var(--mute)}
.footer-note+.footer-note{margin-top:clamp(32px,4vw,48px)}
.footer-brand p{color:var(--stone)}
.footer-brand .footer-title{margin-top:var(--space-2);margin-bottom:var(--space-2)}

/* ---------- education: breadcrumb, sub-nav, hero ---------- */
.crumbs ol{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 0;margin:0 0 var(--space-5);padding:0;list-style:none;font-size:var(--step--2);letter-spacing:.06em;color:var(--mute)}
.crumbs li+li::before{content:"/";margin:0 10px;color:var(--line-2)}
.crumbs a{color:var(--stone);text-decoration:none}
.crumbs a:hover{color:var(--gold-hi)}
.crumbs [aria-current]{color:var(--gold)}
.edu-hero{padding-block:clamp(48px,7vw,104px) clamp(40px,5vw,72px)}
.edu-hero .hero__title{margin-top:var(--space-2);max-width:20ch}
.edu-hero .kicker{justify-content:center;margin-bottom:var(--space-4)}
.edu-hero .kicker::after{content:"";width:32px;height:1px;background:var(--gold-grad);flex:none}
.edu-nav{position:sticky;top:var(--header-h);z-index:20;border-block:1px solid var(--line);background:rgba(0,0,0,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.edu-nav__list{display:flex;gap:clamp(4px,2vw,32px);margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.edu-nav__list::-webkit-scrollbar{display:none}
.edu-nav a{position:relative;display:flex;align-items:baseline;gap:8px;padding:14px 6px;white-space:nowrap;text-decoration:none;font-size:var(--step--1);color:var(--stone)}
.edu-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--gold-grad);transform:scaleX(0);transition:transform var(--dur-3) var(--ease-lux)}
.edu-nav a:hover{color:var(--ivory)}
.edu-nav a[aria-current="page"]{color:var(--gold-hi)}
.edu-nav a[aria-current="page"]::after{transform:scaleX(1)}
.edu-nav__n{font-size:var(--step--2);color:var(--mute)}
.anchors{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:clamp(28px,3vw,40px) 0 0;padding:0;list-style:none}
.anchors a{display:inline-block;padding:8px 14px;border:1px solid var(--line-2);border-radius:var(--radius-pill);font-size:var(--step--1);color:var(--stone);text-decoration:none;transition:border-color var(--dur-2),color var(--dur-2)}
.anchors a:hover{border-color:var(--gold);color:var(--gold-hi)}
.page-hub .section,.page-article .section{scroll-margin-top:calc(var(--header-h) + 56px)}

/* ---------- concierge widget: dark atelier skin ---------- */
.noga-cc.noga-cc.noga-cc{--noga-cc-bg:#140712;--noga-cc-surface:#1c0a19;--noga-cc-text:#f6f0e6;--noga-cc-muted:#c0b4b0;--noga-cc-accent:#e2c7ba;--noga-cc-accent-text:#000000;--noga-cc-user:#2a1426;--noga-cc-border:#432239;--noga-cc-error:#f0a3a3;--noga-cc-focus:#f6e9e2;--noga-cc-font:"Jost",system-ui,sans-serif;--noga-cc-title-font:"Cormorant Garamond",Georgia,serif}
html.menu-open .noga-cc{opacity:0;pointer-events:none}
.noga-cc .noga-cc-launcher{box-shadow:var(--shadow-lg),0 0 0 1px rgba(226,199,186,.3)}

/* ---------- interactive figures: full-width controls ---------- */
.wow__figure.illus,.lab__figure.illus{place-items:stretch}
.level-controls{width:100%}
.wow__figure .level-stage img{margin-inline:auto}
.measure-card__media img.spin-slow{width:92%;height:92%;margin:4%}

/* =====================================================================
   EDUCATION PAGES
   ===================================================================== */
.copy-done[hidden],.copy-label[hidden]{display:none}
.section--dark{background:#000;border-block:1px solid var(--line)}
.section-head--row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-5)}
.section-head--row>div{max-width:68ch}
.lab__grid{align-items:center;gap:clamp(32px,5vw,80px)}
.lab__text>*+*{margin-top:var(--space-4)}
.lab__text .btn--link{margin-top:var(--space-5)}
.lab__num{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--step-4);line-height:1;color:transparent;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;opacity:.85}
.lab__figure{margin:0;gap:var(--space-5)}
.lab__figure>figcaption{text-align:center}
.takeaway{padding-left:var(--space-4);border-left:2px solid var(--gold);font-family:var(--font-display);font-size:var(--step-1);line-height:var(--leading-snug);color:var(--ivory)}
.note-box{padding:var(--space-5);border:1px solid var(--line-2);border-radius:var(--radius-sm);background:linear-gradient(160deg,var(--gold-veil),transparent 70%);color:var(--stone);font-size:var(--step--1)}
.note-box>*+*{margin-top:var(--space-3)}
.note-box .h3{color:var(--ivory)}
.level-out{min-height:5.6em;text-align:center}
.level-out p{margin:0 auto;max-width:52ch}
.level-out .level-text p+p{margin-top:var(--space-2)}
.level-out strong{color:var(--gold-hi);font-weight:500}
.range-labels--small button{font-size:var(--step--1);font-family:var(--font-body);letter-spacing:.02em}
.range-labels--words button{font-family:var(--font-body);font-size:var(--step--2);letter-spacing:.04em;white-space:nowrap}
.range-labels--words button:first-child{transform:translateX(-18%)}
.range-labels--words button:last-child{transform:translateX(-82%)}
.range-labels--words button.is-active:first-child{transform:translateX(-18%) translateY(-2px)}
.range-labels--words button.is-active:last-child{transform:translateX(-82%) translateY(-2px)}
@media (max-width:560px){.range-labels--words button:not(.is-active){font-size:0;min-width:28px}.range-labels--words button:not(.is-active)::after{content:"•";font-size:14px}}

/* carat */
.carat__intro{text-align:center;margin:0}
.carat__row{display:flex;align-items:flex-end;justify-content:center;gap:clamp(4px,1vw,12px);min-height:clamp(90px,14vw,150px)}
.carat__gem{flex:none;width:calc(var(--mm) * 1.75%);aspect-ratio:1;opacity:.6;filter:brightness(1.3);transition:opacity var(--dur-3),filter var(--dur-3),transform var(--dur-3) var(--ease-lux)}
.carat__gem img{width:100%;height:100%}
.carat__gem.is-active{opacity:1;filter:brightness(1.6) drop-shadow(0 0 14px rgba(246,233,226,.5));transform:translateY(-6px)}
.carat__out{text-align:center;min-height:3.2em}
.carat__ct{display:block;font-family:var(--font-display);font-size:var(--step-3);color:var(--gold-hi);line-height:1.1}
.carat__mm{font-size:var(--step-0);color:var(--ivory)}

/* clarity */
.clarity-stage img{width:min(100%,320px);margin-inline:auto}

/* D–Z bar */
.dz{margin:clamp(48px,6vw,88px) 0 0}
.dz__bar{display:grid;grid-template-columns:repeat(23,1fr);height:44px;border-radius:var(--radius-sm);overflow:hidden;background:linear-gradient(90deg,#fff 0%,#fffefb 13%,#fdf7de 30%,#fbf2cf 44%,#f3e2a0 100%);box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.dz__bar span{display:grid;place-items:center;font-size:var(--step--2);color:rgba(24,8,22,.7);border-right:1px solid rgba(0,0,0,.08)}
.dz__bands{display:flex;margin:var(--space-3) 0 var(--space-3);padding:0;list-style:none;gap:2px}
.dz__bands li{flex:var(--n) 1 0;min-width:0;padding:var(--space-3) var(--space-2) 0;border-top:2px solid var(--line-2);font-size:var(--step--2);line-height:1.45;color:var(--stone)}
.dz__bands li:first-child{border-color:var(--gold)}
.dz__bands strong{display:block;font-family:var(--font-display);font-size:var(--step-1);font-weight:500;color:var(--ivory)}
.dz__bands b{font-weight:500;color:var(--ivory)}
@media (max-width:760px){.dz__bar{height:34px}.dz__bar span:nth-child(even){font-size:0}.dz__bands{flex-direction:column;gap:var(--space-3)}.dz__bands li{padding-top:var(--space-2)}}

/* cut grade */
.cutgrade__tag{margin:0;text-align:center}
.cutgrade__stage{display:grid;place-items:center}
.cutgrade__gem{position:relative;display:block;width:min(70%,300px);aspect-ratio:1;transition:filter var(--dur-3)}
.cutgrade__gem img{width:100%;height:100%}
.cutgrade__shade{position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.85) 0 22%,rgba(0,0,0,.4) 46%,transparent 70%);opacity:0;transition:opacity var(--dur-4) var(--ease-out)}
.cutgrade__spark{position:absolute;left:34%;top:30%;width:14%;aspect-ratio:1;background:conic-gradient(from 45deg,transparent 0 22%,#fff6f2 25%,transparent 28% 47%,#fff6f2 50%,transparent 53% 72%,#fff6f2 75%,transparent 78% 97%,#fff6f2 100%);border-radius:50%;filter:blur(.4px);animation:site-glint 3.2s var(--ease-in-out) infinite;transition:opacity var(--dur-3)}
.cutgrade[data-level-current="0"] .cutgrade__gem{filter:brightness(1.12) drop-shadow(0 0 18px rgba(246,233,226,.4))}
.cutgrade[data-level-current="1"] .cutgrade__shade{opacity:.2}
.cutgrade[data-level-current="1"] .cutgrade__gem{filter:brightness(1.02)}
.cutgrade[data-level-current="2"] .cutgrade__shade{opacity:.45}
.cutgrade[data-level-current="2"] .cutgrade__spark{opacity:.6}
.cutgrade[data-level-current="2"] .cutgrade__gem{filter:brightness(.9) saturate(.8)}
.cutgrade[data-level-current="3"] .cutgrade__shade{opacity:.7}
.cutgrade[data-level-current="3"] .cutgrade__spark{opacity:.25}
.cutgrade[data-level-current="3"] .cutgrade__gem{filter:brightness(.75) saturate(.6)}
.cutgrade[data-level-current="4"] .cutgrade__shade{opacity:.95}
.cutgrade[data-level-current="4"] .cutgrade__spark{opacity:0}
.cutgrade[data-level-current="4"] .cutgrade__gem{filter:brightness(.6) saturate(.4)}

/* light cards */
.light-cards{margin-top:clamp(32px,4vw,56px)}
.light-demo{position:relative;display:grid;place-items:center;aspect-ratio:16/10;overflow:hidden;background:radial-gradient(70% 90% at 50% 40%,#140712,#070605)}
.light-demo img{width:46%;height:auto}
.light-demo i{position:absolute;display:block;pointer-events:none}
.light-demo--brillo i{inset:0;background:radial-gradient(26% 40% at 50% 48%,rgba(255,248,245,.85),rgba(255,248,245,.25) 45%,transparent 72%);mix-blend-mode:screen;animation:site-breathe-b 4.5s var(--ease-in-out) infinite}
@keyframes site-breathe-b{50%{opacity:.35}}
.light-demo--fuego i{width:9%;aspect-ratio:1;border-radius:50%;filter:blur(3px);mix-blend-mode:screen;opacity:0;animation:site-fire 3.6s var(--ease-in-out) infinite}
.light-demo--fuego i:nth-of-type(1){left:40%;top:32%;background:#ff5a4a}
.light-demo--fuego i:nth-of-type(2){left:55%;top:48%;background:#4a8bff;animation-delay:1.2s}
.light-demo--fuego i:nth-of-type(3){left:46%;top:58%;background:#ffa63a;animation-delay:2.4s}
@keyframes site-fire{0%,100%{opacity:0;transform:scale(.4)}40%{opacity:.95;transform:scale(1)}}
.light-demo--centelleo i{width:5%;aspect-ratio:1;background:conic-gradient(from 45deg,transparent 0 22%,#fff 25%,transparent 28% 47%,#fff 50%,transparent 53% 72%,#fff 75%,transparent 78% 97%,#fff 100%);border-radius:50%;opacity:0;animation:site-spark 2.4s var(--ease-out) infinite}
.light-demo--centelleo i:nth-of-type(1){left:38%;top:30%}
.light-demo--centelleo i:nth-of-type(2){left:58%;top:36%;animation-delay:.5s}
.light-demo--centelleo i:nth-of-type(3){left:47%;top:52%;animation-delay:1s}
.light-demo--centelleo i:nth-of-type(4){left:62%;top:60%;animation-delay:1.5s}
.light-demo--centelleo i:nth-of-type(5){left:35%;top:58%;animation-delay:1.9s}
@keyframes site-spark{0%,100%{opacity:0;transform:scale(.3) rotate(0)}30%{opacity:1;transform:scale(1) rotate(30deg)}}
.samegrade{margin-top:clamp(40px,5vw,72px);gap:clamp(20px,4vw,56px);padding-top:clamp(28px,4vw,48px);border-top:1px solid var(--line);color:var(--stone)}
.samegrade .gold{display:block;margin-top:var(--space-3);font-family:var(--font-display);font-size:var(--step-2);font-weight:500;color:var(--gold-hi)}

/* reports */
.report-card__icon{width:44px;height:44px;margin-bottom:var(--space-4);color:var(--gold)}
.report-card .card__text+.card__text{margin-top:var(--space-3)}
.table-wrap{margin-top:clamp(40px,5vw,64px);overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}
.rtable{width:100%;min-width:640px;border-collapse:collapse;font-size:var(--step--1)}
.rtable th,.rtable td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.rtable thead th{font-size:var(--step--2);font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--mute)}
.rtable tbody th{font-family:var(--font-display);font-size:var(--step-1);font-weight:500;color:var(--ivory)}
.rtable tbody tr:last-child>*{border-bottom:0}
.rtable .yes{color:var(--gold-hi)}
.rtable .no{color:var(--mute)}
.rtable .part{color:var(--stone)}
.rtable__hl{background:var(--gold-veil)}
.rtable__hl th{color:var(--gold-hi)!important}
.principle{max-width:72ch;margin:clamp(40px,5vw,72px) auto 0;text-align:center;color:var(--stone)}
.principle>*+*{margin-top:var(--space-4)}
.principle .quote{font-family:var(--font-display);font-size:var(--step-3);line-height:var(--leading-snug);color:var(--ivory)}
.principle .btn{margin-top:var(--space-6)}

/* CTA band */
.cta-band{background:radial-gradient(60% 120% at 50% 0%,rgba(226,199,186,.1),transparent 70%),var(--ink-2);border-top:1px solid var(--line)}
.cta-band .lede{max-width:60ch;margin:var(--space-4) auto 0}
.cta-band__btns{justify-content:center;margin-top:var(--space-6)}
.cta-band .contact,.cta-band .mail{margin-inline:auto}
.quote--center{text-align:center}

/* la talla */
.reasons{margin:clamp(32px,4vw,56px) 0 0;padding:0;list-style:none}
.reason{padding:var(--space-6) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-sm);background:linear-gradient(170deg,var(--surface),var(--ink))}
.reason>*+*{margin-top:var(--space-3)}
.reason__n{display:block;font-family:var(--font-display);font-size:var(--step-3);line-height:1;color:var(--gold)}
.reason h3{font-size:var(--step-2)}
.reason p{color:var(--stone)}
.anatomy-layout{display:grid;gap:clamp(28px,4vw,56px);margin-top:clamp(32px,4vw,56px);align-items:start}
@media (min-width:960px){.anatomy-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.anatomy-side{position:sticky;top:calc(var(--header-h) + 72px)}}
.anatomy{padding:clamp(12px,2vw,24px);border:1px solid var(--line);border-radius:var(--radius-sm);background:radial-gradient(80% 80% at 50% 40%,#140712,var(--ink-2))}
.anatomy svg{display:block;width:100%;height:auto}
.anatomy-side .diagram-legend{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 var(--space-5);padding:0;list-style:none}
.anatomy-side .diagram-legend button{padding:8px 14px;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:transparent;color:var(--stone);font:inherit;font-size:var(--step--1);cursor:pointer;transition:border-color var(--dur-2),color var(--dur-2),background-color var(--dur-2)}
.anatomy-side .diagram-legend button:hover{border-color:var(--gold);color:var(--ivory)}
.anatomy-side .diagram-legend button[aria-pressed="true"]{border-color:var(--gold);background:var(--gold-veil-2);color:var(--gold-hi)}
.anatomy-note{min-height:12em;padding:var(--space-5);border:1px solid var(--line-2);border-radius:var(--radius-sm);background:var(--surface)}
.anatomy-note h3{margin-bottom:var(--space-3);font-size:var(--step-2);color:var(--gold-hi)}
.anatomy-note p{color:var(--stone)}
.anatomy-note p+p{margin-top:var(--space-3)}
.anatomy-note strong{color:var(--ivory);font-weight:500}
.anatomy-note__empty{color:var(--mute);font-style:italic}
.anatomy-note:has([data-note]:not([hidden])) .anatomy-note__empty{display:none}
.together{margin-top:clamp(48px,6vw,96px);gap:clamp(28px,4vw,64px);align-items:center}
.ranges{margin:0;padding:var(--space-5);border:1px solid var(--line-2);border-radius:var(--radius-sm);background:var(--surface)}
.ranges figcaption{margin-bottom:var(--space-4);font-size:var(--step--1);color:var(--stone)}
.ranges dl{margin:0}
.ranges dl>div{display:flex;justify-content:space-between;gap:var(--space-4);padding:10px 0;border-top:1px solid var(--line)}
.ranges dt{color:var(--stone);font-size:var(--step--1)}
.ranges dd{margin:0;text-align:right;color:var(--gold-hi);font-size:var(--step--1)}
.lp-slider .level-stage{width:100%}
.talla-reports{gap:clamp(28px,4vw,64px)}

/* formas */
.hero-shapes{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(6px,1.4vw,18px);margin-top:clamp(28px,3vw,44px)}
.hero-shapes img{width:clamp(28px,4.4vw,56px);height:auto;filter:brightness(1.5);animation:site-float 6s var(--ease-in-out) infinite}
.hero-shapes img:nth-child(2n){animation-delay:-1.5s}.hero-shapes img:nth-child(3n){animation-delay:-3s}.hero-shapes img:nth-child(5n){animation-delay:-4.2s}
.estilos-h{margin-bottom:var(--space-5)}
.estilo .card__body>*+*{margin-top:var(--space-3)}
.svb{position:relative;margin:clamp(40px,5vw,72px) auto 0;max-width:900px}
.svb__art{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:radial-gradient(80% 90% at 50% 40%,#140712,var(--ink-2))}
.svb__art img{display:block;width:100%;height:auto}
.svb__sweep{position:absolute;top:0;bottom:0;left:0;width:50%;background:linear-gradient(100deg,transparent 30%,rgba(255,246,242,.16) 48%,rgba(255,246,242,.28) 50%,rgba(255,246,242,.16) 52%,transparent 70%);background-size:300% 100%;mix-blend-mode:screen;animation:site-sweep 5.5s var(--ease-in-out) infinite}
@keyframes site-sweep{0%{background-position:100% 0}60%,100%{background-position:0 0}}
.svb__sparks{position:absolute;top:0;bottom:0;left:50%;width:50%}
.svb__sparks i{position:absolute;width:3.2%;aspect-ratio:1;background:conic-gradient(from 45deg,transparent 0 22%,#fff 25%,transparent 28% 47%,#fff 50%,transparent 53% 72%,#fff 75%,transparent 78% 97%,#fff 100%);border-radius:50%;opacity:0;animation:site-spark 2.6s var(--ease-out) infinite}
.svb__sparks i:nth-child(1){left:42%;top:28%}.svb__sparks i:nth-child(2){left:58%;top:40%;animation-delay:.4s}.svb__sparks i:nth-child(3){left:36%;top:55%;animation-delay:.9s}.svb__sparks i:nth-child(4){left:62%;top:64%;animation-delay:1.3s}.svb__sparks i:nth-child(5){left:50%;top:48%;animation-delay:1.7s}.svb__sparks i:nth-child(6){left:46%;top:72%;animation-delay:2.1s}.svb__sparks i:nth-child(7){left:54%;top:22%;animation-delay:2.4s}
.svb__caption{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-4);align-items:baseline;margin-top:var(--space-3);font-family:var(--font-display);font-size:var(--step-1);color:var(--ivory)}
.svb__caption>:first-child{text-align:center}.svb__caption>:last-child{text-align:center}
@media (max-width:600px){.svb__caption{grid-template-columns:1fr 1fr}.svb__caption .fine{grid-column:1/-1;grid-row:2;text-align:center}}
.gallery-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:clamp(24px,3vw,40px)}
.filter{display:inline-flex;padding:4px;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:var(--surface)}
.filter button{padding:8px 16px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--stone);font:inherit;font-size:var(--step--1);cursor:pointer;transition:background-color var(--dur-2),color var(--dur-2)}
.filter button:hover{color:var(--ivory)}
.filter button[aria-pressed="true"]{background:var(--gold-grad);color:var(--ink)}
.shape-tabs{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;margin:0 0 clamp(20px,3vw,32px);padding:0;list-style:none}
.shape-tabs li[hidden]{display:none}
.shape-tab{display:grid;justify-items:center;gap:6px;width:100%;padding:12px 4px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--stone);font:inherit;font-size:var(--step--2);letter-spacing:.04em;cursor:pointer;transition:border-color var(--dur-2),color var(--dur-2),transform var(--dur-2) var(--ease-lux),background-color var(--dur-2)}
.shape-tab img{width:clamp(30px,4vw,48px);height:auto;opacity:.85;filter:brightness(1.3);transition:opacity var(--dur-2)}
.shape-tab:hover{border-color:var(--line-2);color:var(--ivory);transform:translateY(-2px)}
.shape-tab:hover img{opacity:.9}
.shape-tab[aria-selected="true"]{border-color:var(--gold);background:var(--gold-veil-2);color:var(--gold-hi)}
.shape-tab[aria-selected="true"] img{opacity:1;filter:drop-shadow(0 0 8px rgba(246,233,226,.4))}
.shape-tab:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px}
@media (max-width:900px){.shape-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (max-width:420px){.shape-tab{padding:10px 2px 8px;font-size:11px}}
.shape-panel{display:grid;gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(20px,4vw,48px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,var(--surface),var(--ink))}
.shape-panel[hidden]{display:none}
@media (min-width:860px){.shape-panel{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.shape-panel__art{display:grid;place-items:center;aspect-ratio:1;max-width:360px;width:100%;margin-inline:auto;border-radius:50%;background:radial-gradient(closest-side,rgba(246,233,226,.12),transparent 72%)}
.shape-panel__art img{width:78%;height:auto;animation:site-float 7s var(--ease-in-out) infinite}
.shape-panel__body>*+*{margin-top:var(--space-4)}
.shape-panel__body>p{color:var(--stone)}
.shape-spec{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);margin:var(--space-5) 0 0}
.shape-spec>div{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm)}
.shape-spec dt{font-size:var(--step--2);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--mute)}
.shape-spec dd{margin:4px 0 0;color:var(--ivory);font-size:var(--step--1)}
.proscons{display:grid;gap:var(--space-4);margin-top:var(--space-5)}
@media (min-width:640px){.proscons{grid-template-columns:1fr 1fr}}
.proscons__col{padding-top:var(--space-3);border-top:1px solid var(--line-2);color:var(--stone);font-size:var(--step--1)}
.proscons__col--pro{border-top-color:var(--gold)}
.proscons__col .eyebrow{margin-bottom:var(--space-2)}
.emerald-art{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:460px;width:100%;margin:0 auto;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:radial-gradient(70% 70% at 50% 45%,#140712,#050403)}
.emerald-art img{width:62%;height:auto}
.emerald-art__mirror{position:absolute;inset:-10%;background:linear-gradient(90deg,transparent 30%,rgba(255,246,242,.07) 42%,rgba(255,246,242,.14) 46%,transparent 50%,transparent 56%,rgba(255,246,242,.08) 60%,transparent 66%);filter:blur(6px);mix-blend-mode:screen;animation:site-mirror 6s var(--ease-in-out) infinite alternate}
@keyframes site-mirror{from{transform:translateX(-12%)}to{transform:translateX(12%)}}
.concepts{gap:clamp(24px,4vw,56px)}
.concept>*+*{margin-top:var(--space-4)}
.concept>p{color:var(--stone)}
.concept h3{font-size:var(--step-2)}
.concept .illus{margin:0}
.ratio{--thumb:22px;display:grid;gap:var(--space-4);aspect-ratio:auto}
.ratio__stage{position:relative;display:grid;place-items:center;height:clamp(180px,24vw,240px)}
.ratio__stage img{width:clamp(110px,15vw,150px);height:auto;transform:scaleY(calc(var(--ratio-scale,1)));transition:transform var(--dur-2) var(--ease-out)}
.ratio__dim{display:none}
.ratio__controls{display:grid;gap:var(--space-3);width:100%}
.ratio__out{text-align:center;font-family:var(--font-display);font-size:var(--step-3);color:var(--gold-hi);line-height:1}
.ratio__track{position:relative}
.ratio__band{position:absolute;left:calc(11px + (100% - 22px) * (1.2 - 1.1) / .7);right:calc(11px + (100% - 22px) * (1.8 - 1.7) / .7);top:50%;height:10px;margin-top:-5px;border-radius:999px;background:rgba(226,199,186,.22);pointer-events:none}
.ratio__track .range{position:relative;width:100%}
.ratio__legend{display:flex;align-items:center;justify-content:center;gap:8px;margin:0}
.ratio__swatch{display:inline-block;width:18px;height:8px;border-radius:999px;background:rgba(226,199,186,.35)}
.concept>figure{min-height:clamp(300px,34vw,424px)}
.bowtie-fig img{width:min(72%,300px);height:auto}

/* cómo medimos */
.light-words{margin-top:clamp(32px,4vw,56px)}
.light-word{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}
.light-word>*+*{margin-top:var(--space-3)}
.light-word h3{font-size:var(--step-2)}
.light-word p{color:var(--stone);font-size:var(--step--1)}
.light-word__art{position:relative;display:block;width:56px;height:56px;border-radius:50%;border:1px solid var(--line-2)}
.light-word--brillo .light-word__art{background:radial-gradient(circle,#fff6f2 0 18%,rgba(255,246,242,.35) 40%,transparent 70%);animation:site-breathe-b 4s var(--ease-in-out) infinite}
.light-word--fuego .light-word__art{background:conic-gradient(#ff5a4a,#ffa63a,#ffe36a,#5ad17a,#4a8bff,#a46bff,#ff5a4a);filter:saturate(.8);animation:site-spin 9s linear infinite}
@keyframes site-spin{to{transform:rotate(360deg)}}
.light-word--centelleo .light-word__art{background:repeating-conic-gradient(#f6f0e6 0 12deg,#140712 12deg 30deg);animation:site-pulse 2.4s var(--ease-in-out) infinite}
.light-word--simetria .light-word__art{background:repeating-conic-gradient(from 22.5deg,rgba(226,199,186,.85) 0 22.5deg,rgba(226,199,186,.15) 22.5deg 45deg)}
.model3d img{width:100%;height:auto}
.aset-legend{display:grid;gap:var(--space-3);margin:var(--space-5) 0}
.aset-legend>div{display:grid;grid-template-columns:110px 1fr;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line)}
.aset-legend dt{display:flex;align-items:center;gap:8px;color:var(--ivory)}
.aset-legend dd{margin:0;color:var(--stone);font-size:var(--step--1)}
.legend-dot{display:inline-block;width:12px;height:12px;border-radius:50%;flex:none}
.aset-pair{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);align-items:start}
.aset-pair figure{margin:0;display:grid;gap:var(--space-3);text-align:center}
.aset-pair .illus{padding:0;aspect-ratio:1;align-content:center}
.aset-pair .illus img{width:100%;height:auto}
.aset-pair .illus figcaption{padding-bottom:var(--space-3)}
@media (max-width:520px){.aset-pair{grid-template-columns:1fr}}
.hya{margin:0;display:grid;gap:var(--space-4);justify-items:center;text-align:center}
.hya__toggle{justify-content:center;gap:8px}
.hya__toggle button{padding:8px 16px;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:transparent;color:var(--stone);font:inherit;font-size:var(--step--1);cursor:pointer}
.hya__toggle button[aria-pressed="true"]{border-color:var(--gold);background:var(--gold-veil-2);color:var(--gold-hi)}
.hya__stage{position:relative;width:min(100%,360px);aspect-ratio:1}
.hya__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity var(--dur-4) var(--ease-out),transform var(--dur-4) var(--ease-lux)}
.hya__stage[data-state="arrows"] .hya__img--hearts,.hya__stage[data-state="hearts"] .hya__img--arrows{opacity:0;transform:rotateY(70deg) scale(.96)}
.compare--big{max-width:480px;margin-inline:auto}
.section--dark figure{margin:0;display:grid;gap:var(--space-3);text-align:center}

/* hub */
.hub-cards{margin:0;padding:0;list-style:none}
.hub-cards>li{display:flex}
.hub-card{display:flex;flex-direction:column;width:100%;text-decoration:none;color:inherit}
.hub-card__art{display:flex;align-items:center;justify-content:center;gap:clamp(10px,2vw,22px);aspect-ratio:16/8;border:0;border-bottom:1px solid var(--line);border-radius:0;overflow:hidden}
.hub-card__art img{width:clamp(40px,7vw,64px);height:auto;transition:transform var(--dur-4) var(--ease-lux)}
.hub-card__art--wide img{width:78%}
.hub-card__art--shapes img{width:clamp(34px,5.4vw,58px)}
.hub-card__art--photo{position:relative;background:#000}
.hub-card__art--photo img{width:auto;height:84%;border-radius:50%}
.hub-card__over{position:absolute;opacity:0;transition:opacity var(--dur-4) var(--ease-out)}
.hub-card:hover .hub-card__over{opacity:1}
.hub-card:hover .hub-card__art img{transform:translateY(-4px) scale(1.03)}
.hub-card .card__body{display:flex;flex-direction:column;gap:var(--space-3);flex:1}
.hub-card__n{font-size:var(--step--2);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--gold)}
.hub-card .card__title{display:block;color:var(--ivory)}
.hub-card .card__text{display:block;color:var(--stone)}
.hub-card__go{margin-top:auto;padding-top:var(--space-3);color:var(--gold-hi);font-size:var(--step--1)}
.hub-card__go .arrow{display:inline-block;transition:transform var(--dur-2) var(--ease-lux)}
.hub-card:hover .hub-card__go .arrow{transform:translateX(4px)}

/* ---------- reduced motion: keep end states visible ---------- */
@media (prefers-reduced-motion:reduce){
  .svb__sweep,.svb__sparks,.emerald-art__mirror,.cutgrade__spark,.light-demo i{animation:none!important}
  .ignite__step,.js .ignite__step{opacity:1!important;filter:none!important;transform:none!important}
  .ignite__stone>video{transition:none}
  .light-demo--fuego i{opacity:.8;transform:none}
  .light-demo--centelleo i{opacity:.8;transform:none}
  .svb__sparks i{opacity:.7}
  .svb__sparks{animation:none}
  .svb__sparks i{animation:none!important}
}

.lab__text .btn--link,.stack>.btn--link{align-self:flex-start;justify-self:start;width:fit-content}
.principle .quote,.center .quote,.quote--center{margin-inline:auto;text-align:center}
.compare--big{width:100%}
.hub-card__art--shapes img,.hub-card__art--wide img{filter:brightness(1.4)}
.page-hub .cta-band{padding-block:clamp(48px,6vw,88px)}

/* ---------- nothing cut off at 360–1024 px ---------- */
/* light-path tabs: three equal columns, labels wrap instead of scrolling out of view */
.lp-tabs .tabs__list{overflow:visible;flex-wrap:nowrap;justify-content:stretch;gap:clamp(4px,1vw,16px)}
.lp-tabs .tabs__tab{flex:1 1 0;min-width:0;white-space:normal;text-align:center;line-height:1.25;padding:10px 4px;overflow-wrap:anywhere}
/* Education Center nav: below 520 px the 01–04 numbers go and the items wrap rather than scroll hidden */
@media (max-width:520px){
  .edu-nav__list{flex-wrap:wrap;overflow:visible;column-gap:14px;row-gap:0}
  .edu-nav__n{display:none}
  .edu-nav a{padding:12px 2px}
}
/* certificate table: below 700 px each report becomes a card with its own labels */
.rtable__k{display:none}
@media (max-width:700px){
  .table-wrap{overflow:visible}
  .rtable{min-width:0}
  .rtable,.rtable tbody,.rtable tr,.rtable th,.rtable td{display:block;width:auto}
  .rtable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .rtable tr{padding:16px;border-bottom:1px solid var(--line)}
  .rtable tbody tr:last-child{border-bottom:0}
  .rtable th,.rtable td{border-bottom:0}
  .rtable tbody th{padding:0 0 10px}
  .rtable td{display:grid;grid-template-columns:minmax(7.5em,40%) 1fr;gap:12px;padding:6px 0}
  .rtable__k{display:block;font-size:var(--step--2);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--mute);line-height:1.4}
}
/* word labels under the cut / light-path sliders: on phones every label stays readable, on two staggered rows */
@media (max-width:560px){
  .range-labels--words{height:50px}
  .range-labels--words button:not(.is-active){font-size:var(--step--2);min-width:0}
  .range-labels--words button:not(.is-active)::after{content:none}
  .range-labels--words button{font-size:var(--step--2);line-height:1.15}
  .range-labels--words button:nth-child(even){top:24px}
}
/* assistant launcher: a 48 px round icon button (its accessible name stays in aria-label) until the side margin
   is wide enough for the labelled pill (≥ 1560 px), so it stays clear of the content column; the footer keeps
   room below its last line so the button never covers it */
@media (max-width:1559.98px){
  .noga-cc .noga-cc-launcher{width:48px;height:48px;min-height:48px;padding:0;justify-content:center;gap:0}
  .noga-cc .noga-cc-launcher-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .noga-cc .noga-cc-launcher-icon{width:15px;height:15px}
}
.site-footer{padding-bottom:calc(var(--space-5, 48px) + 72px)}
@media (max-width:640px){
  .noga-cc .noga-cc-launcher{transition:transform .25s var(--ease-out),visibility 0s}
  .noga-cc.noga-cc--away:not(.noga-cc--open):not(:focus-within) .noga-cc-launcher{transform:translateY(calc(100% + 32px));visibility:hidden;transition:transform .25s var(--ease-out),visibility 0s .25s}
}

/* =====================================================================
   HOME: 4C tabs with sliders, 3D slot,
   Noga certificate card. Reduced motion handled at the end of the block.
   ===================================================================== */
/* ---------- 4C: the chips are the tabs, each panel holds its own slider ---------- */
.c4__tabs{margin:var(--space-2) 0 0}
.c4__tab{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-2),background-color var(--dur-2),transform var(--dur-2) var(--ease-lux),box-shadow var(--dur-3)}
.c4__tab img{opacity:.7;transition:opacity var(--dur-2),filter var(--dur-2)}
.c4__tab strong{color:var(--ivory);transition:color var(--dur-2)}
.c4__tab small i{font-style:italic}
.c4__tab:hover{border-color:var(--gold-lo);transform:translateY(-1px)}
.c4__tab:hover img{opacity:1}
.c4__tab[aria-selected="true"]{border-color:var(--gold);background:var(--gold-veil-2);box-shadow:var(--glow)}
.c4__tab[aria-selected="true"] img{opacity:1;filter:drop-shadow(0 0 6px rgba(246,233,226,.45))}
.c4__tab[aria-selected="true"] strong{color:var(--gold-hi)}
.c4__tab:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px}
.c4__hint{margin:-4px 0 0;color:var(--mute)}
.c4__figure{--stage-h:clamp(190px,21vw,272px);align-content:start}
.c4__panel{display:grid}
.c4__panel[hidden]{display:none}
.c4__slider{gap:clamp(16px,2.2vw,26px)}
.c4__stage{height:var(--stage-h);grid-template-rows:minmax(0,100%);overflow:hidden}
.c4__stage>*{min-height:0;max-height:100%}
.c4__stage img{max-height:100%;width:auto;max-width:100%}
.c4 .color-stage{justify-self:center;aspect-ratio:1;width:auto}
.c4 .color-stage img{height:100%;width:100%;border-radius:var(--radius-sm)}
.c4 .clarity-stage .level-item{height:100%;display:grid;place-items:center}
.c4 .clarity-stage img{height:var(--stage-h);width:auto;max-width:100%;object-fit:contain}
.c4-cut__stage img{height:var(--stage-h);width:auto;max-width:100%;object-fit:contain}
.c4__out{min-height:5.4em}
.c4__slider>figcaption{min-height:5em;text-align:center;align-self:start}
/* carat: each diamond sits exactly above its tick on the slider (same formula as .range-labels) */
.c4-carat__row{position:relative;width:100%;overflow:visible}
.c4-carat__gem{position:absolute;top:50%;left:calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--i) / 5);width:calc(var(--mm) * 2%);aspect-ratio:1;transform:translate(-50%,-50%);opacity:.62;filter:brightness(1.45) saturate(.8);transition:opacity var(--dur-3) var(--ease-out),filter var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-lux)}
.c4-carat__gem img{display:block;width:100%;height:100%}
.c4-carat__gem.is-active{opacity:1;filter:brightness(1.9) drop-shadow(0 0 14px rgba(246,233,226,.55));transform:translate(-50%,calc(-50% - 6px)) scale(1.06)}
.c4-carat__ct{display:block;font-family:var(--font-display);font-size:var(--step-3);line-height:1.1;color:var(--gold-hi)}
.c4-carat__mm{font-size:var(--step-0);color:var(--ivory)}
@media (max-width:899.98px){.c4__figure{--stage-h:clamp(170px,46vw,240px)}}

/* ---------- 3D diamond slot (assets/js/diamond3d.js) ---------- */
.d3{align-content:center}
.d3__stage{position:relative;display:grid;place-items:center;width:100%;max-width:480px;aspect-ratio:1;margin-inline:auto}
.d3__stage>*{grid-area:1/1}
.d3__fallback{width:92%;height:auto;animation:site-float 7s var(--ease-in-out) infinite}
#home-3d{width:100%;height:100%}
#home-3d:empty{pointer-events:none}
.d3__stage:has(#home-3d:not(:empty)) .d3__fallback{display:none}
.d3__caption{text-align:center;max-width:44ch;margin-inline:auto}

/* ---------- Noga certificate (FAQ «¿Qué recibo?»): a schematic card, no grades, no scores ---------- */
.ncert{margin:var(--space-5) 0 var(--space-2);max-width:440px;padding:clamp(18px,2.4vw,26px);border:1px solid var(--gold-lo);border-radius:var(--radius-sm);background:linear-gradient(160deg,rgba(226,199,186,.12),rgba(226,199,186,0) 60%),var(--surface);box-shadow:var(--glow)}
.ncert__head{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line-2)}
.ncert__mark{width:84px;flex:none}
.ncert__title{font-family:var(--font-display);font-weight:500;font-size:var(--step-1);line-height:1.15;color:var(--ivory)}
.ncert__seal{display:flex;align-items:center;gap:10px;margin:14px 0 10px!important;font-size:var(--step--2);font-weight:500;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--gold-hi)!important}
.ncert__check{position:relative;flex:none;width:22px;height:22px;border:1px solid var(--gold);border-radius:50%}
.ncert__check::after{content:"";position:absolute;left:7px;top:4px;width:5px;height:10px;border:solid var(--gold-hi);border-width:0 2px 2px 0;transform:rotate(45deg)}
.ncert__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;margin:0;padding:0;list-style:none;font-size:var(--step--1);color:var(--stone)}
.ncert__list li{display:flex;align-items:center;gap:8px}
.ncert__list li::before{content:"";flex:none;width:6px;height:6px;background:var(--gold);transform:rotate(45deg)}
.ncert__foot{margin-top:12px!important;padding-top:10px;border-top:1px solid var(--line);font-size:var(--step--2);color:var(--mute)!important}
@media (max-width:420px){.ncert__list{grid-template-columns:minmax(0,1fr)}}

@media (prefers-reduced-motion:reduce){
  .js [data-bars] .bars__bar,.js [data-bars].is-in .bars__bar{transform:none;transition:none}
  .bars__bar::before{display:none}
  .js [data-bars] .bars--noga .bars__bar::after{opacity:1;transition:none}
  .bars--noga .bars__bar::after{animation:none!important}
  .c4-carat__gem,.c4__tab,.c4__tab img{transition:none}
  .d3__fallback{animation:none}
}
/* phones: the same panel height on every 4C tab (the word labels of the cut slider use two rows) */
@media (max-width:560px){.c4 .range-labels{height:50px}.c4__out{min-height:6.8em}.c4__slider>figcaption{min-height:6.4em}}
/* 3D slot: minimal layout for the parts diamond3d.js creates, so the home works on its own */
#home-3d{position:relative}
#home-3d .d3d__canvas,#home-3d .d3d__fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
#home-3d [hidden]{display:none!important}
#home-3d .d3d__pause{position:absolute;right:6px;bottom:6px;z-index:1;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--line-2);border-radius:50%;background:rgba(0,0,0,.7);color:var(--gold-hi);cursor:pointer}
#home-3d .d3d__pause:hover{border-color:var(--gold)}
#home-3d .d3d__pause:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px}
#home-3d .d3d__icon{display:block;width:10px;height:12px;border-inline:3px solid currentColor}
#home-3d .d3d__pause[aria-pressed="true"] .d3d__icon{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent currentColor;margin-left:3px}
.c4__tab small{color:var(--stone)}

/* Logo: on the home title the diamond takes the place of the O,
   with no ring. noga-home.svg viewBox -10 -724 3442 748, <circle id="stone-slot" cx="1214.26" cy="-350" r="364">. */
.ignite .ignite__stone{left:24.9925%;top:1.3369%;width:21.1505%;box-shadow:none}
.hero__mark.ignite{width:min(720px,100%)}
.brand .mark--word{width:112px}
.footer-brand .mark--word{width:150px}

/* ---------------------------------------------------------------- palette accents: where the pop goes
   Ruby: main call to action, active choices, the scroll cue. Light violet: links. Rose gold stays the metal and the italics. */
.btn{--bg:var(--ruby);--fg:var(--ivory);--bd:var(--ruby)}
.btn:hover{--bg:var(--ruby-hi);--bd:var(--ruby-hi);color:var(--ivory);box-shadow:0 10px 36px -12px rgba(200,50,63,.55)}
.btn--ghost{--bg:transparent;--fg:var(--gold);--bd:var(--line-2)}
.btn--ghost:hover{--bg:var(--gold-veil);--bd:var(--gold);color:var(--gold-hi);box-shadow:var(--glow)}
.btn--link{--bg:transparent;--bd:transparent;--fg:var(--violet)}
.btn--link:hover{--bg:transparent;--bd:transparent;color:var(--violet-hi);box-shadow:none}
.prose a{color:var(--violet);text-decoration-color:rgba(200,50,63,.75)}
.prose a:hover{color:var(--violet-hi);text-decoration-color:var(--ruby)}
.lang-switch button[aria-pressed="true"]{background:var(--ruby);color:var(--ivory)}
.filter button[aria-pressed="true"]{background:var(--ruby);color:var(--ivory)}
.c4__tab[aria-selected="true"],.shape-tab[aria-selected="true"]{border-color:var(--ruby);background:rgba(200,50,63,.12);box-shadow:0 0 0 1px rgba(200,50,63,.35)}
.rs-switch button[aria-pressed="true"]{background:var(--ruby);color:var(--ivory)}

/* Header = seal + wordmark. The home diamond only tilts, as filmed (owner, 12/10: no spinning, no painted glints). */
.brand .mark--seal{width:156px}
@media (max-width:479.98px){.topbar__bar .brand .mark--seal{width:118px}}
/* rarity chart: the Noga row stands out (ruby bar, rose-gold words); its value may wrap */
.bars--noga .bars__bar{background:var(--ruby);box-shadow:0 0 14px 3px rgba(200,50,63,.75)}
.bars--noga .bars__bar::after{background:#ff6b78;box-shadow:0 0 16px 4px rgba(220,66,80,.8)}
.bars--noga .bars__label{font-family:var(--font-display);font-size:var(--step-1);letter-spacing:.04em;color:var(--ivory)}
.bars--noga .bars__value{color:var(--gold-hi);font-weight:500;white-space:normal;line-height:1.35;text-wrap:balance}
.bars li{grid-template-columns:minmax(120px,220px) minmax(0,1fr) minmax(110px,13em)}
@media (max-width:760px){.bars li{grid-template-columns:auto minmax(0,1fr)}.bars--noga .bars__value{max-width:16em}}

/* drawn brilliant turning on its own axis (site.js initWireSpin) */
.wire-spin{position:relative}
.wire-spin.is-live .wire-spin__still{visibility:hidden}
.wire-spin__svg{position:absolute;inset:6%;width:88%;height:88%;overflow:visible}
.wire-spin__front{fill:none;stroke:var(--gold);stroke-width:.012;stroke-linecap:round;stroke-linejoin:round}
.wire-spin__back{fill:none;stroke:var(--gold);stroke-opacity:.28;stroke-width:.008}
.wire-spin__floor{fill:none;stroke:var(--gold);stroke-opacity:.25;stroke-width:.006;stroke-dasharray:.02 .05}

/* ---- palette accents, single-column sections, Noga box, certificate seal ---- */
:root{--ruby-text:#e45a66}
em.em--violet{color:var(--violet-hi)}
em.em--ruby{color:var(--ruby-text)}
em.em--rose{color:var(--gold-hi);background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-right:.08em}
@media (forced-colors:active){em.em--rose{-webkit-text-fill-color:currentColor;background:none}}
.wow__grid--solo{display:block}
.wow__grid--solo .wow__text{max-width:760px;margin-inline:auto}
.wow__grid--solo .mini-anatomy{max-width:520px;margin-inline:auto}
.lab__grid--solo{display:block}
.lab__grid--solo .lab__text{max-width:760px;margin-inline:auto}
/* Noga row: content centred, seal fills the space, slow ruby–violet–rose sheen on the border */
.ladder li.ladder--top{position:relative;isolation:isolate;border-color:transparent;overflow:hidden}
.ladder li.ladder--top>div{justify-content:center;padding-right:clamp(0px,9vw,120px)}
.ladder li.ladder--top::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;background:conic-gradient(from var(--sheen,0deg),var(--ruby),var(--violet),var(--gold),var(--gold-lo),var(--ruby));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:ladder-sheen 9s linear infinite}
.ladder li.ladder--top::after{content:"";position:absolute;inset:-40% -10%;z-index:-2;background:radial-gradient(40% 50% at 85% 50%,rgba(200,50,63,.16),transparent 70%),radial-gradient(40% 60% at 20% 30%,rgba(154,138,216,.10),transparent 70%);pointer-events:none}
.ladder__seal{position:absolute;right:clamp(14px,2.4vw,32px);top:50%;width:clamp(56px,7vw,96px);height:auto;transform:translateY(-50%);opacity:.9;animation:seal-breathe 6s ease-in-out infinite;filter:drop-shadow(0 0 18px rgba(226,199,186,.25))}
@property --sheen{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes ladder-sheen{to{--sheen:360deg}}
@keyframes seal-breathe{0%,100%{opacity:.75;transform:translateY(-50%) scale(.97)}50%{opacity:1;transform:translateY(-50%) scale(1.03)}}
@media (max-width:760px){.ladder li.ladder--top>div{padding-right:0}.ladder__seal{position:static;transform:none;width:56px;order:-1;margin-bottom:10px;animation:none}}
@media (prefers-reduced-motion:reduce){.ladder li.ladder--top::before,.ladder__seal{animation:none}}
.ncert__mark--seal{width:56px}
/* carats 0.25–5 ct on the home slider: 8 steps, smaller scale so the 4 and 5 ct never overlap */
.c4-carat__gem{left:calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--i) / 7);width:calc(var(--mm) * 1.12%)}
.nosell{display:block;margin-top:8px;font-size:var(--step--1);color:var(--ruby-text)}
.nosell::before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;vertical-align:.15em;border-radius:50%;background:var(--ruby)}

/* ==== «Ilustración / Fotografía» switch on the home 4C sliders (#wow-4c) ====
   Markup: figure.c4-rs[data-real-slider] (assets/js/real-slider.js) with two [data-view-panel] stages that share
   the slider, the texts and the .nosell notes. Same stage height in both views, so the panel never jumps. */
.c4 .rs-switch{display:none;justify-self:center;gap:2px;padding:3px;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:rgba(0,0,0,.6)}
.js .c4 .rs-switch{display:inline-flex}
.c4 .rs-switch button{min-height:36px;padding:6px 16px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--stone);font:inherit;font-size:var(--step--1);letter-spacing:.04em;cursor:pointer;transition:background-color var(--dur-2),color var(--dur-2)}
.c4 .rs-switch button:hover{color:var(--ivory)}
.c4 .rs-switch button[aria-pressed="true"]{background:var(--ruby);color:var(--ivory)}
.c4 .rs-switch button:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px}
.c4 [data-view-panel][hidden]{display:none!important}
/* cut tab: illustrations only, no switch; an empty row of the switch's height keeps the panel from jumping */
.c4__switch-gap{display:none;height:44px}
.js .c4__switch-gap{display:block}
.c4 .rs-cap{display:block}
/* photo stages */
.c4-photo .level-item{height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;align-items:center;gap:8px}
.c4-photo__item{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;gap:8px}
.c4-photo__item img{height:100%;width:auto;max-width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-sm);box-shadow:0 0 0 1px var(--line-2),0 18px 44px -20px rgba(0,0,0,.9)}
.c4-photo--clarity .c4-photo__item img,.c4-photo--cut .c4-photo__item img{border-radius:50%}
.c4-photo__tag{margin:0;font-size:var(--step--1);letter-spacing:.06em;color:var(--stone);white-space:nowrap}
.c4-photo__none{width:min(100%,340px);height:100%;min-height:0;padding:var(--space-4);gap:var(--space-2)}
.c4-photo__none .rs-none__t{font-size:var(--step-1)}
.c4-photo__none .rs-none__icon{width:36px;height:36px}
/* rs-none is styled by edu-v3.css, which the home does not load: same look here */
.c4 .rs-none{display:grid;justify-items:center;align-content:center;margin-inline:auto;border:1px dashed var(--line-2);border-radius:var(--radius-sm);text-align:center;background:linear-gradient(170deg,rgba(226,199,186,.05),transparent 60%)}
.c4 .rs-none__icon{border:1px solid var(--gold-lo);border-radius:50%;background:linear-gradient(135deg,transparent 47%,var(--gold-lo) 48% 52%,transparent 53%)}
.c4 .rs-none__t{margin:0;font-family:var(--font-display);line-height:1.15;color:var(--ivory)}
.c4 .rs-none__b{margin:0;max-width:34ch;font-size:var(--step--1);color:var(--stone)}
/* carat photo row: the real round, scaled like the drawn row (same --mm and --i, so it lines up with the labels) */
.c4-carat__gem--photo{opacity:.55;filter:none}
.c4-carat__gem--photo img{border-radius:50%}
.c4-carat__gem--photo.is-active{opacity:1;filter:drop-shadow(0 0 14px rgba(246,233,226,.45))}
@media (prefers-reduced-motion:reduce){.c4 .rs-switch button{transition:none}}
/* 390 px: the eight carat labels (0.25 … 5) ran into each other; every other one drops a line, still centred on its tick */
@media (max-width:480px){#c4p-carat .range-labels--small button{padding-inline:2px}#c4p-carat .range-labels--small button:nth-child(even){top:22px}}
/* sources collapse (review 12/10): long lists stay one tap away; footnote links open them (noga.js) */
.sources-details>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none}
.sources-details>summary::-webkit-details-marker{display:none}
.sources-details>summary::after{content:"";width:8px;height:8px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);transform:translateY(-3px) rotate(45deg);transition:transform var(--dur-2)}
.sources-details[open]>summary::after{transform:translateY(2px) rotate(-135deg)}
.sources-details>summary .footer-title{margin:0}
.sources-details .sources-n{color:var(--mute);font-weight:400;letter-spacing:0}
.sources-details[open]>summary{margin-bottom:18px}
