﻿/* =========================================================
   CHITA'S  Fine Diamond Jewellery
   Design tokens: Surat-cut brilliance meets restrained Indian luxury
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400;1,9..144,500&family=Jost:wght@300;400;500;600&family=Space+Mono:wght@400;700&display=swap');

:root{
  /* --- colour tokens: warm brown, cream and muted gold --- */
  --ink:        #1A1A1A;   /* deep charcoal for dark sections */
  --ink-2:      #262626;   /* raised charcoal surface */
  --ink-3:      #4A4A4A;   /* charcoal hairlines */
  --ivory:      #F7F5F0;   /* warm off-white main background */
  --ivory-2:    #F1EEE6;   /* soft warm raised surface */
  --ink-text:   #1A1A1A;   /* accessible primary text */
  --bone:       #EEE8DC;   /* muted text on dark sections */
  --gold:       #824a1b;   /* primary brand brown */
  --gold-light: #D8CBAF;   /* muted sand highlights */
  --gold-dim:   #D8CBAF;   /* sand borders and subtle states */
  --garnet:     #824a1b;   /* secondary brand emphasis */
  --label-ink:  #6A5845;   /* readable warm label tone */

  /* --- type --- */
  --f-display: 'Fraunces', 'Iowan Old Style', ui-serif, Georgia, serif;
  --f-body:    'Jost', 'Helvetica Neue', Arial, sans-serif;
  --f-mono:    'Space Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  --container: 1480px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--ivory);
  color:var(--ink-text);
  font-family:var(--f-body);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3,h4{ font-family:var(--f-display); font-weight:500; margin:0 0 .5em; letter-spacing:.005em; }
p{ margin:0 0 1em; }
ul{ margin:0; padding:0; list-style:none; }
button{ font-family:inherit; cursor:pointer; }
.container{ width:100%; max-width:var(--container); margin:0 auto; padding:0 40px; }

@media (max-width:920px){ .container{ padding:0 28px; } }
@media (max-width:640px){ .container{ padding:0 20px; } }

/* --- eyebrow / mono labels (grading-ticket vocabulary) --- */
.eyebrow{
  font-family:var(--f-mono);
  font-size:13px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--label-ink);
  display:flex;
  align-items:center;
  gap:.75em;
  margin-bottom:1.1em;
}
.eyebrow::before{
  content:"";
  width:22px; height:1px;
  background:var(--label-ink);
  display:inline-block;
}
.hero .eyebrow{
  letter-spacing:0.26em;
  color:var(--label-ink);
  margin-bottom:1.4em;
}
.hero .eyebrow::before{
  background:var(--label-ink);
}
.on-ink .eyebrow{ color:#D8CBAF; }

/* =========================================================
   NAV
   ========================================================= */
.site-nav{
  position:sticky; top:0; z-index:100;
  background:#824a1b;
  backdrop-filter:blur(10px);
  border-bottom:1px solid #824a1b;
}
.site-nav .container{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:118px;
}
.site-nav .brand{
  gap:0;
  line-height:0;
  padding:6px 8px;
  min-height:0;
}
.brand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:#824a1b;
  position:relative;
  z-index:3;
  padding:10px 8px;
  min-width:180px;
  min-height:110px;
  flex-shrink:0;
}
.site-nav .brand-text{
  display:none;
}
.brand-mark{
  display:block;
  width:150px;
  height:auto;
  flex-shrink:0;
  object-fit:contain;
  transform:none;
  transform-origin:left center;
}
@media (max-width:640px){
  .site-nav .brand-mark{
    width:112px;
    height:auto;
    transform:none;
  }
}
.brand-text{
  display:flex; flex-direction:column; line-height:0.9;
  font-family:var(--f-display); font-size:24px; letter-spacing:.12em; color:#824a1b;
}
.brand small {
  font-family:var(--f-mono); font-style:normal;
  font-size:9px; letter-spacing:.28em; color:#8B7A62;
  margin-top:4px;
  text-transform:uppercase;
}
.footer-social a.soon{ opacity:.4; cursor:default; }
.footer-social a.soon:hover{ border-color:var(--ink-3); color:inherit; }
.nav-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:36px;
  position:absolute;
  z-index:1;
  left:0;
  right:0;
  top:50%;
  transform:translateY(-50%);
  width:auto;
  padding:0 40px 0 0;
}
.nav-links > li:last-child{
  position:absolute;
  right:40px;
  top:50%;
  transform:translateY(-50%);
}
.nav-links a{
  font-size:14px; letter-spacing:.08em; text-transform:uppercase;
  color:#fff;
  position:relative; padding:6px 0;
  transition:color .25s ease;
}
.nav-links a:hover, .nav-links a.active{ color:var(--gold-light); }
.nav-links a.active::after{
  content:""; position:absolute; left:0; right:0; bottom:0;
  height:1px; background:var(--gold);
}
.nav-cta{
  border:1px solid rgba(130,74,27,.72);
  color:#fff !important;
  background:#824a1b;
  padding:13px 25px; border-radius:1px;
  font-family:var(--f-mono); font-size:12px !important; letter-spacing:.14em !important;
  text-transform:uppercase;
  box-shadow:0 5px 14px rgba(26,26,26,.08), inset 0 0 0 1px rgba(255,255,255,.75);
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
}
.nav-cta:hover{
  background:#824a1b;
  color:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(26,26,26,.18), 0 0 0 3px rgba(130,74,27,.09);
}
.nav-toggle{ display:none; background:none; border:0; padding:8px; }
.nav-toggle span, .nav-toggle span::before, .nav-toggle span::after{
  content:""; display:block; width:22px; height:1px; background:#824a1b;
  position:relative; transition:.25s;
}
.nav-toggle span::before{ position:absolute; top:-7px; }
.nav-toggle span::after{ position:absolute; top:7px; }

@media (max-width:920px){
  .site-nav .container{
    position:static;
    display:flex;
    justify-content:space-between;
    height:92px;
  }
  .nav-links{
    position:fixed; inset:92px 0 0 0; height:calc(100vh - 92px);
    background:#824a1b; flex-direction:column; justify-content:flex-start;
    padding:40px 32px; gap:26px;
    left:0; top:92px; width:auto;
    transform:translateX(100%); transition:transform .35s ease;
  }
  .nav-links.open{ transform:translateX(0); }
  .nav-links a{ font-size:16px; color:var(--bone); }
  .nav-links > li:last-child{
    position:static;
    right:auto;
    top:auto;
    transform:none;
  }
  .nav-toggle{ display:block; }
}

/* =========================================================
   BUTTONS
   ========================================================= */
.btn{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--f-mono); font-size:13px; letter-spacing:.14em; text-transform:uppercase;
  padding:16px 30px; border-radius:2px; border:1px solid transparent;
  transition:all .25s ease; white-space:nowrap;
}
.btn-gold{ background:var(--gold); color:var(--ink); border-color:var(--gold); }
.btn-gold:hover{ background:transparent; color:var(--gold-light); border-color:var(--gold); }
.kyc-submit{
  display:block;
  margin:24px auto 0;
  color:#fff;
}
.kyc-submit:hover{
  color:#fff;
}
.kyc-page .kyc-intro{
  width:min(100%,700px);
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}
.kyc-page > section.on-ivory > .container{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.kyc-page .kyc-intro h2,
.kyc-page .kyc-intro .lede,
.kyc-page .kyc-intro > p:last-child{
  width:100%;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.btn-outline{ border-color:var(--gold-dim); color:var(--gold-light); }
.btn-outline:hover{ background:var(--gold); color:var(--ink); border-color:var(--gold); }
.btn-outline.on-light{ border-color:var(--ink-text); color:var(--ink-text); }
.btn-outline.on-light:hover{ background:var(--ink-text); color:var(--ivory); }
.btn-text{
  font-family:var(--f-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase;
  border-bottom:1px solid var(--gold-dim); padding-bottom:3px;
}
.btn-text:hover{ border-color:var(--gold); color:var(--gold); }

/* =========================================================
   SECTIONS
   ========================================================= */
section{ padding:112px 0; }
@media (max-width:768px){ section{ padding:72px 0; } }
.on-ink{ background:#824a1b; color:var(--ivory); }
.on-ivory{ background:var(--ivory); color:var(--ink-text); }
.on-ivory-2{ background:var(--ivory-2); color:var(--ink-text); }
.about-page > section:first-of-type{ padding:48px 0 48px; }
.about-page > section:first-of-type .grid-2{ align-items:start; }
.about-page > section:first-of-type .figure-frame{ height:440px; }
.about-page > section:first-of-type .figure-frame img{ height:100%; object-fit:cover; object-position:center 35%; }
@media (max-width:920px){ .about-page > section:first-of-type .figure-frame{ height:380px; } }
@media (max-width:600px){ .about-page > section:first-of-type .figure-frame{ height:320px; } }
.section-head{ max-width:640px; margin-bottom:56px; }
.section-head h2{ font-size:clamp(34px,4.4vw,54px); }
.on-ink .section-head h2{ color:var(--ivory); }
.lede{ font-size:19px; line-height:1.65; max-width:560px; }
.on-ink .lede{ color:#F7F5F0; opacity:1; }
.on-ivory .lede, .on-ivory-2 .lede{ color:#824a1b; opacity:1; }
.on-ink p{ color:#D8CBAF; }
.on-ivory p, .on-ivory-2 p{ color:#824a1b; }

/* =========================================================
   HERO
   ========================================================= */
.hero{
  background:
    radial-gradient(circle at 18% 28%, rgba(130,74,27,0.34), transparent 26%),
    linear-gradient(90deg, rgba(130,74,27,0.98) 0%, rgba(130,74,27,0.92) 45%, rgba(130,74,27,0.72) 100%);
  color:var(--ivory);
  padding:88px 0 94px;
  position:relative;
  overflow:hidden;
  min-height:76vh;
  display:flex;
  align-items:center;
}
.landing-hero{
  background:#ffffff;
  color:var(--ink-text);
}
.hero::after{ display:none; }
.hero .container{
  display:grid;
  grid-template-columns:minmax(0,0.88fr) minmax(0,1fr);
  gap:56px;
  align-items:center;
  position:relative;
  z-index:1;
}
.landing-hero .container{
  grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);
  gap:28px;
  align-items:center;
  min-height:calc(100svh - 92px);
}
.hero-copy{ max-width:720px; }
.hero h1{
  font-size:clamp(64px,8vw,118px);
  line-height:.88;
  letter-spacing:-.06em;
  color:var(--ivory);
  max-width:620px;
}
.hero h1 em{ font-style:italic; color:#F7F5F0; }
.hero .lede{
  font-size:20px;
  color:rgba(130,74,27,0.9);
  margin:24px 0 34px;
  max-width:560px;
  line-height:1.55;
}
.hero-actions{ display:flex; gap:18px; flex-wrap:wrap; align-items:center; }
.hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:18px 28px;
  margin-top:24px;
  align-items:center;
}
.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#6A5845;
  font:600 14px var(--f-body);
  letter-spacing:.22em;
  text-transform:uppercase;
  white-space:nowrap;
}
.hero-badge svg{
  width:16px;
  height:16px;
  fill:#D8CBAF;
  flex:0 0 16px;
}
.btn-whatsapp{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#25d366;
  color:#ffffff;
  border-color:#25d366;
  box-shadow:0 12px 26px rgba(37,211,102,.22);
}
.btn-whatsapp:hover{
  background:#1fb85a;
  border-color:#1fb85a;
  color:#ffffff;
}
.btn-whatsapp-icon{
  width:18px;
  height:18px;
  display:inline-grid;
  place-items:center;
  color:#ffffff;
}
.btn-whatsapp-icon svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.hero-dots{ display:none; }
.hero-figure{
  position:relative;
  display:flex;
  justify-content:flex-end;
}
.landing-hero .hero-figure{
  display:block;
  position:sticky;
  top:112px;
  align-self:start;
}
.landing-hero .hero-copy{
  align-self:center;
  padding:32px 0 32px 4px;
  max-width:560px;
  justify-self:start;
}
.landing-hero .hero-copy .eyebrow{
  color:#000 !important;
}
.landing-hero .hero h1{
  font-size:clamp(68px,8vw,120px);
  max-width:520px;
  color:#000 !important;
}
.landing-hero .hero h1 em{
  color:#000 !important;
}
.landing-hero .hero .lede{
  max-width:500px;
  font-size:19px;
  color:#000 !important;
}
.landing-hero .hero-badge{
  color:#1A1A1A;
}
.landing-hero .hero-badge svg{
  color:#824a1b;
}
.landing-hero .hero-actions .btn-gold{
  background:#824a1b;
  color:#fff;
  border-color:#824a1b;
  box-shadow:0 12px 30px -18px rgba(130,74,27,.82);
}
.landing-hero .hero-actions .btn-gold:hover{
  background:#824a1b;
  border-color:#824a1b;
}
.hero-image-frame{
  position:relative;
  width:min(100%, 520px);
  max-width:none;
  padding:18px;
  border:1px solid rgba(216,203,175,0.25);
  background:rgba(255,255,255,0.06);
  box-shadow:0 30px 80px rgba(0,0,0,0.42);
  border-radius:30px;
  animation:floatCard 6.5s ease-in-out infinite;
}
.landing-hero .hero-image-frame{
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:0 24px 60px rgba(130,74,27,.12);
  border-radius:36px;
  overflow:hidden;
  max-width:none;
  min-height:0;
}
.hero-image-frame::before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(255,255,255,0.14);
  pointer-events:none;
  border-radius:22px;
}
.landing-hero .hero-image-frame::before{
  inset:0;
  border:1px solid rgba(130,74,27,0.08);
  border-radius:36px;
  mix-blend-mode:normal;
}
.hero-image{
  width:100%;
  display:block;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:24px;
}
.landing-hero .hero-image{
  aspect-ratio:auto;
  height:100%;
  min-height:0;
  object-position:center center;
  border-radius:36px;
  transform:scale(1.02);
}
.landing-hero .hero-video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  background:#824a1b;
  border-radius:36px;
  /* H1.mp4 has built-in side mattes; crop them while keeping the jewelry centered. */
  transform:scale(1.38);
  object-position:center center;
  min-height:0;
}
.landing-hero .hero-image-frame .video-volume-toggle{
  right:24px;
  bottom:24px;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(130,74,27,.42);
  box-shadow:0 10px 22px rgba(130,74,27,.16), inset 0 0 0 1px rgba(255,255,255,.04);
}
.landing-hero .hero-image-frame .video-volume-toggle:hover{
  background:rgba(130,74,27,.56);
}
.landing-hero .hero-image-frame .video-volume-toggle .volume-icon{
  width:18px;
  height:18px;
}
@media (max-width:920px){
  .hero .container{ grid-template-columns:1fr; }
  .landing-hero{ background:#ffffff; }
  .landing-hero .hero-figure{ display:block; }
  .landing-hero .hero-image-frame{ max-width:100%; min-height:420px; }
  .landing-hero .hero-image{ min-height:420px; }
  .landing-hero .hero-video{ min-height:420px; }
  .landing-hero .hero-image-frame .video-volume-toggle{
    right:16px;
    bottom:16px;
  }
  .hero-figure{ order:-1; max-width:360px; margin:0 auto 24px; justify-content:center; }
  .hero-image-frame{ max-width:360px; }
  .hero-badges{ gap:12px 20px; }
  .hero-badge{ font-size:12px; letter-spacing:.18em; }
}
@media (min-width:921px) and (max-width:1240px){
  .site-nav .container{ padding-left:24px; padding-right:24px; }
  .nav-links{ gap:22px; }
  .landing-hero .container{ gap:16px; }
  .landing-hero .hero-copy{ max-width:500px; }
  .landing-hero .hero h1{ font-size:clamp(58px,7vw,90px); }
  .landing-hero .hero-figure{ top:106px; }
}
@media (min-width:1241px){
  .landing-hero{
    min-height:calc(100vh - 92px);
  }
}
@keyframes floatCard{
  0%,100%{ transform:translateY(0) rotate(0deg); }
  50%{ transform:translateY(-10px) rotate(.7deg); }
}

/* facet shimmer */
.facet{ transition:fill-opacity 1.8s ease; }
@keyframes shimmer{
  0%,100%{ fill-opacity:.55; }
  50%{ fill-opacity:1; }
}
.facet-anim .facet{ animation:shimmer 5.5s ease-in-out infinite; }
.facet:nth-child(2n){ animation-delay:.6s; }
.facet:nth-child(3n){ animation-delay:1.2s; }
.facet:nth-child(5n){ animation-delay:1.8s; }

@media (prefers-reduced-motion:reduce){
  .facet-anim .facet{ animation:none; }
  html{ scroll-behavior:auto; }
}

/* =========================================================
   TICKET  signature component (diamond grading-report card)
   ========================================================= */
.ticket-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  background:var(--ink-3);
  border:1px solid var(--ink-3);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 28px 70px -48px rgba(0,0,0,.72);
}
.on-ivory .ticket-grid{ background:var(--ivory-2); border-color:var(--ivory-2); }
.ticket{
  background:linear-gradient(180deg, rgba(130,74,27,.98) 0%, rgba(130,74,27,.98) 100%);
  padding:40px 30px 34px;
  display:flex; flex-direction:column; gap:16px;
  justify-content:center;
  min-height:230px;
  position:relative;
  transition:transform .28s ease, background .28s ease, box-shadow .28s ease;
}
.on-ivory .ticket{ background:var(--ivory); }
.ticket::before{
  content:"";
  width:38px;
  height:2px;
  background:var(--gold-light);
  opacity:.78;
}
.ticket-num{ font-family:var(--f-mono); font-size:12px; color:#D8CBAF; letter-spacing:.16em; }
.ticket h3{ font-size:clamp(20px,1.8vw,26px); margin:0; line-height:1.22; max-width:14ch; }
.on-ink .ticket h3{ color:var(--ivory); }
.ticket p{ font-size:15px; line-height:1.72; opacity:.82; margin:0; max-width:28ch; }
.on-ivory .ticket p{ color:#824a1b; opacity:.9; }
.on-ink .ticket p{ color:#D8CBAF; opacity:.95; }
.ticket *{
  align-self:flex-start;
}
.ticket:hover{
  transform:translateY(-4px);
  background:linear-gradient(180deg, rgba(130,74,27,.98) 0%, rgba(130,74,27,.98) 100%);
}
.finance-partners .ticket-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
  justify-content:stretch;
  background:transparent;
  border:none;
  padding:0;
}
.finance-partners .ticket{
  min-height:334px;
  padding:28px 28px 30px;
  border:1px solid rgba(26,26,26,.08);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%, #F7F5F0 100%);
  box-shadow:0 18px 48px -34px rgba(26,26,26,.38);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  gap:14px;
}
.finance-partners .ticket::before{
  content:"";
  display:block;
  width:44px;
  height:2px;
  margin:0 auto 6px;
  background:linear-gradient(90deg, #d2b99e 0%, #F7F5F0 100%);
  opacity:1;
}
.finance-partners .ticket *{
  align-self:center;
}
.finance-partners .partner-ticket-figure{
  width:calc(100% + 56px);
  margin:-28px -28px 18px;
  border-radius:0 0 22px 22px;
  background:linear-gradient(180deg, rgba(130,74,27,.98) 0%, rgba(130,74,27,1) 100%);
  border-bottom:1px solid rgba(26,26,26,.06);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px 28px 22px;
  overflow:hidden;
  min-height:128px;
}
.finance-partners .partner-ticket-figure img{
  display:block;
  width:auto;
  height:auto;
  max-width:108px;
  max-height:82px;
  object-fit:contain;
  filter:drop-shadow(0 6px 18px rgba(26,26,26,.08));
}
.finance-partners .ticket h3{
  display:block;
  margin:0;
  color:#1A1A1A;
  font-size:clamp(20px,1.65vw,24px);
  line-height:1.18;
  font-weight:500;
  max-width:15ch;
}
.finance-partners .ticket p{
  display:block;
  margin:0;
  color:#78604d;
  font-size:15px;
  line-height:1.7;
  font-style:italic;
  max-width:25ch;
  opacity:1;
}
.finance-partners .ticket-num{
  display:block;
  color:#D8CBAF;
  font-size:12px;
  letter-spacing:.22em;
  line-height:1;
}
.finance-partners .ticket:hover{
  background:linear-gradient(180deg,#ffffff 0%, #F7F5F0 100%);
  transform:translateY(-6px);
  box-shadow:0 24px 55px -34px rgba(26,26,26,.48);
}
.finance-cards > .ticket:nth-child(5){
  grid-column:2;
}
.finance-cards > .ticket:nth-child(6){
  grid-column:3;
}

.alliances-showcase .grid-3{
  grid-template-columns:repeat(4, 1fr);
  gap:18px;
}
.alliances-showcase .ticket{
  min-height:334px;
  padding:28px 28px 30px;
  border:1px solid rgba(26,26,26,.08);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%, #F7F5F0 100%);
  box-shadow:0 18px 48px -34px rgba(26,26,26,.38);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  gap:14px;
}
.alliances-showcase .ticket::before{
  content:"";
  display:block;
  width:44px;
  height:2px;
  margin:0 auto 6px;
  background:linear-gradient(90deg, #d2b99e 0%, #F7F5F0 100%);
  opacity:1;
}
.alliances-showcase .ticket *{
  align-self:center;
}
.alliances-showcase .ticket h3{
  color:#1A1A1A;
  font-size:clamp(20px,1.65vw,24px);
  line-height:1.18;
  max-width:15ch;
}
.alliances-showcase .ticket p{
  color:#78604d;
  font-size:15px;
  line-height:1.7;
  max-width:25ch;
}
.alliances-showcase .ticket-num{
  color:#D8CBAF;
  font-size:12px;
  letter-spacing:.22em;
  line-height:1;
}
.alliances-showcase .ticket:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 55px -34px rgba(26,26,26,.48);
}

@media (max-width:920px){
  .ticket-grid{ grid-template-columns:repeat(2,1fr); }
  .finance-partners .ticket-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .finance-cards > .ticket:nth-child(5),
  .finance-cards > .ticket:nth-child(6){
    grid-column:auto;
  }
  .finance-partners .ticket{ min-height:280px; }
  .cert-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cert-grid .ticket,
  .cert-grid > .ticket:nth-child(4),
  .cert-grid > .ticket:nth-child(5){
    grid-column:auto;
  }
}
@media (max-width:560px){
  .ticket-grid{ grid-template-columns:1fr; }
  .finance-partners .ticket-grid{ grid-template-columns:1fr; }
  .finance-cards > .ticket:nth-child(5),
  .finance-cards > .ticket:nth-child(6){
    grid-column:auto;
  }
  .finance-partners .ticket{ min-height:auto; }
  .cert-grid{ grid-template-columns:1fr; }
}

/* product ticket (collections) */
.product-ticket{
  border:1px solid var(--ink-3);
  background:var(--ink-2);
  display:flex; flex-direction:column;
  transition:transform .3s ease, border-color .3s ease;
}
.product-ticket:hover{ transform:translateY(-6px); border-color:var(--gold-dim); }
.on-ivory .product-ticket{ background:#fff; border-color:var(--ivory-2); }
.product-ticket .thumb{ aspect-ratio:4/5; overflow:hidden; }
.product-ticket .thumb img{ width:100%; height:100%; object-fit:cover; }
.product-ticket .body{ padding:22px 22px 26px; flex:1; display:flex; flex-direction:column; }
.product-ticket h3{ font-size:19px; margin:0 0 6px; }
.on-ink .product-ticket h3{ color:var(--ivory); }
.product-ticket .cat{ font-family:var(--f-mono); font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--label-ink); margin-bottom:10px; }
.on-ink .product-ticket .cat{ color:#D8CBAF; }
.spec-row{
  display:grid; grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--ink-3); margin-top:16px; padding-top:14px;
  font-family:var(--f-mono); font-size:11px;
}
.on-ivory .spec-row{ border-color:var(--ivory-2); }
.spec-row div{ display:flex; flex-direction:column; gap:4px; }
.spec-row span{ opacity:.55; font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.product-ticket .price{ margin-top:16px; font-family:var(--f-mono); font-size:15px; color:var(--label-ink); }

/* =========================================================
   GRID UTILITIES
   ========================================================= */
.grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
.grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
@media (max-width:920px){
  .grid-3{ grid-template-columns:repeat(2,1fr); }
  .grid-4{ grid-template-columns:repeat(2,1fr); }
  .grid-2{ grid-template-columns:1fr; gap:32px; }
}
@media (max-width:600px){
  .grid-3{ grid-template-columns:1fr; }
  .grid-4{ grid-template-columns:1fr; }
}

/* image + copy block */
.figure-frame{ position:relative; border:1px solid var(--gold-dim); padding:14px; }
.figure-frame img{ width:100%; height:100%; object-fit:cover; }

/* shared video feature block */
.video-feature{
  padding:104px 0;
}
.video-feature-grid{
  display:grid;
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
  gap:48px;
  align-items:center;
}
.video-feature-copy{
  max-width:560px;
}
.video-feature-copy h2{
  font-size:clamp(36px,4.6vw,62px);
  line-height:1.02;
  max-width:12ch;
}
.video-feature-copy .lede{
  margin:18px 0 28px;
  max-width:520px;
}
.video-frame{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(130,74,27,.14);
  background:linear-gradient(180deg, #824a1b 0%, #824a1b 100%);
  box-shadow:0 28px 65px rgba(130,74,27,.16);
  aspect-ratio:16 / 9;
}
.video-frame video{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#824a1b;
}
.video-frame.video-triptych{
  display:grid;
  grid-template-areas:"left main right";
  grid-template-columns:minmax(0,.92fr) minmax(0,1.18fr) minmax(0,.92fr);
  gap:0;
  aspect-ratio:16 / 9;
}
.video-pane{
  position:relative;
  min-width:0;
  min-height:0;
  overflow:hidden;
  background:linear-gradient(180deg, #824a1b 0%, #824a1b 100%);
}
.video-pane-left{ grid-area:left; }
.video-pane-main{ grid-area:main; }
.video-pane-right{ grid-area:right; }
.video-pane video{
  width:100%;
  height:100%;
  display:block;
}
.video-pane-left video,
.video-pane-right video{
  object-fit:cover;
  object-position:center center;
  filter:saturate(.82) brightness(.78);
  transform:scale(1.02);
}
.video-pane-main video{
  object-fit:contain;
  background:#824a1b;
}
.video-pane-main .video-volume-toggle{
  right:18px;
  bottom:18px;
}
.video-volume-toggle{
  position:absolute;
  right:18px;
  bottom:18px;
  z-index:2;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(130,74,27,.62);
  color:#fff;
  box-shadow:0 14px 28px rgba(130,74,27,.28);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  cursor:pointer;
  transition:transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.video-volume-toggle:hover{
  transform:translateY(-1px) scale(1.03);
  background:rgba(130,74,27,.78);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 18px 34px rgba(130,74,27,.34);
}
.video-volume-toggle:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(255,255,255,.18), 0 18px 34px rgba(130,74,27,.34);
}
.video-volume-toggle .volume-icon{
  width:22px;
  height:22px;
  fill:currentColor;
}
.video-volume-toggle .volume-icon-off{
  display:none;
}
.video-volume-toggle.is-muted .volume-icon-on{
  display:none;
}
.video-volume-toggle.is-muted .volume-icon-off{
  display:block;
}
.video-clips{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:28px;
}
.video-clip-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.video-clip-card .video-frame{
  aspect-ratio:4 / 5;
}
.gallery-page .video-clip-card{
  min-width:0;
}
.gallery-page .video-clip-card .video-frame{
  position:relative;
  width:100%;
  min-width:0;
  aspect-ratio:4 / 5;
}
.gallery-page .video-clip-card .video-frame > video{
  position:absolute;
  inset:0;
  display:block;
  width:100% !important;
  max-width:none;
  min-width:100%;
  height:100% !important;
  min-height:100%;
  object-fit:cover;
  object-position:center;
  background:#824a1b;
}
.video-clip-card h3{
  font-size:20px;
  margin:0;
}
.video-clip-card p{
  font-size:14px;
  line-height:1.55;
  color:#6e5542;
  margin:0;
}
.gallery-cta-btn{
  background:linear-gradient(135deg, #824a1b 0%, #824a1b 100%);
  color:#fff;
  border-color:#824a1b;
  box-shadow:0 14px 28px rgba(130,74,27,.22);
}
.gallery-cta-btn:hover{
  background:linear-gradient(135deg, #824a1b 0%, #824a1b 100%);
  color:#fff;
  border-color:#824a1b;
}
@media (max-width:920px){
  .video-feature{ padding:76px 0; }
  .video-feature-grid{ grid-template-columns:1fr; gap:28px; }
  .video-feature-copy{ max-width:none; }
  .video-feature-copy h2{ max-width:none; }
  .video-frame.video-triptych{
    grid-template-areas:
      "main"
      "left"
      "right";
    grid-template-columns:1fr;
    aspect-ratio:auto;
  }
  .video-pane{ min-height:220px; }
  .video-pane-main .video-volume-toggle{
    right:14px;
    bottom:14px;
    width:46px;
    height:46px;
  }
  .video-pane-main .video-volume-toggle .volume-icon{
    width:18px;
    height:18px;
  }
  .video-clips{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .video-frame{ aspect-ratio:4 / 5; }
  .video-volume-toggle{
    right:14px;
    bottom:14px;
    width:46px;
    height:46px;
  }
  .video-volume-toggle .volume-icon{
    width:19px;
    height:19px;
  }
}

/* three image story cards */
.story-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:34px;
}
.story-card{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.story-media{
  overflow:hidden;
  border-radius:28px 28px 24px 24px;
  box-shadow:0 18px 35px rgba(130,74,27,.12);
  background:#D8CBAF;
}
.story-media img{
  width:100%;
  aspect-ratio:1/1.18;
  object-fit:cover;
}
.story-kicker{
  display:flex;
  align-items:center;
  gap:10px;
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#824a1b;
}
.story-kicker::before{
  content:"";
  width:22px;
  height:1px;
  background:#824a1b;
  display:inline-block;
}
.story-card h3{
  font-size:clamp(22px,2.1vw,30px);
  margin:6px 0 10px;
  color:var(--ink-text);
}
.story-card p{
  font-size:16px;
  line-height:1.75;
  color:#6e5542;
  margin:0;
}
@media (max-width:920px){
  .story-grid{ grid-template-columns:1fr; gap:26px; }
}

/* =========================================================
   SHAPE STRIP (13 diamond cuts)
   ========================================================= */
.shape-strip{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--ink-3); border:1px solid var(--ink-3); }
.shape-cell{
  background:#824a1b; padding:26px 10px; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:12px;
  transition:background .25s ease;
}
.shape-cell:hover{ background:var(--ink-2); }
.shape-cell svg{ width:34px; height:34px; }
.shape-cell img{
  width:100px;
  height:86px;
  object-fit:contain;
  mix-blend-mode:screen;
  transition:transform .3s ease, filter .3s ease;
}
.shape-cell:hover img{ transform:scale(1.08); filter:drop-shadow(0 8px 14px rgba(130,74,27,.24)); }
.shape-cell span{ font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:#F7F5F0; }
@media (max-width:920px){ .shape-strip{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:560px){ .shape-strip{ grid-template-columns:repeat(2,1fr); } }

/* =========================================================
   PROCESS (numbered  genuinely sequential)
   ========================================================= */
.process-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--ivory-2); border:1px solid var(--ivory-2); }
.process-step{ background:var(--ivory); padding:34px 26px; }
.process-step .step-no{ font-family:var(--f-mono); font-size:34px; color:var(--label-ink); display:block; margin-bottom:14px; }
.process-step h3{ font-size:18px; margin-bottom:8px; }
.process-step p{ font-size:14px; opacity:.75; }
@media (max-width:920px){ .process-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .process-grid{ grid-template-columns:1fr; } }

.process-showcase{ padding:112px 0; overflow:hidden; }
.process-showcase-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:72px; align-items:center; }
.process-images{ display:grid; gap:14px; }
.process-photo{ height:282px; overflow:hidden; border-radius:18px; background:var(--ink-2); }
.process-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.process-photo:hover img{ transform:scale(1.045); }
.process-copy{ max-width:600px; }
.process-copy h2{ color:var(--ivory); font-size:clamp(38px,4.8vw,64px); line-height:1.02; max-width:520px; }
.process-intro{ max-width:520px; color:var(--bone); font-size:17px; margin:20px 0 30px; }
.process-list{ display:grid; gap:22px; margin:0; padding:0; list-style:none; }
.process-list li{ display:grid; grid-template-columns:42px 1fr; gap:14px; align-items:start; }
.process-icon{ display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--gold-dim); border-radius:50%; color:var(--gold-light); font:11px var(--f-mono); }
.process-list h3{ margin:0 0 3px; color:var(--ivory); font:500 18px var(--f-body); }
.process-list p{ margin:0; color:var(--bone); opacity:.8; font-size:14px; line-height:1.5; }
@media (max-width:920px){ .process-showcase-grid{ grid-template-columns:1fr; gap:48px; } .process-copy{ max-width:680px; } }
@media (max-width:600px){ .process-showcase{ padding:76px 0; } .process-photo{ height:220px; } .process-copy h2{ font-size:42px; } }

/* =========================================================
   STAT BAND
   ========================================================= */
.stat-band{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px; text-align:center; }
.stat-band .num{ font-family:var(--f-display); font-size:clamp(38px,5vw,58px); color:var(--gold-light); }
.stat-band .label{ font-family:var(--f-mono); font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--label-ink); margin-top:8px; }
@media (max-width:700px){ .stat-band{ grid-template-columns:1fr; gap:32px; } }

/* =========================================================
   CTA BANNER
   ========================================================= */
.cta-banner{
  border:1px solid var(--gold-dim);
  padding:64px 48px; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:20px;
}
.cta-banner h2{ font-size:clamp(26px,3.6vw,40px); max-width:640px; }

/* =========================================================
   ALL DIAMONDS PAGE
   ========================================================= */
.all-diamonds-page{ background:#fff; }
.all-diamonds-hero{
  padding:28px 0 72px;
  background:#fff;
}
.all-diamonds-hero-shell{
  position:relative;
  min-height:560px;
  border-radius:30px;
  overflow:hidden;
  background:#824a1b;
  box-shadow:0 36px 70px rgba(26,26,26,.14);
}
.all-diamonds-hero-shell img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.9) brightness(.95);
  opacity:.88;
}
.all-diamonds-hero-shell::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(130,74,27,.72) 0%, rgba(130,74,27,.34) 36%, rgba(130,74,27,.08) 65%, rgba(130,74,27,0) 100%);
}
.all-diamonds-hero-copy{
  position:relative;
  z-index:1;
  min-height:560px;
  display:flex;
  align-items:center;
}
.all-diamonds-hero-copy .inner{
  padding:56px 58px;
  max-width:560px;
}
.all-diamonds-hero-copy h1{
  color:#fff;
  font-size:clamp(44px,5vw,84px);
  line-height:.95;
  max-width:9ch;
  margin-bottom:14px;
}
.all-diamonds-hero-copy p{
  color:#F1EEE6;
  opacity:.92;
  font-size:18px;
  max-width:34ch;
}
.all-diamonds-hero .hero-actions{ margin-top:28px; }
.all-diamonds-hero .btn-primary{
  background:var(--gold);
  color:#fff;
  border-color:var(--gold);
  box-shadow:0 14px 28px rgba(130,74,27,.25);
}
.all-diamonds-hero .btn-primary:hover{
  background:#824a1b;
  border-color:#824a1b;
  color:#fff;
}
.all-diamonds-hero .btn-outline.on-light{
  border-color:rgba(255,255,255,.72);
  color:#fff;
}
.all-diamonds-hero .btn-outline.on-light:hover{
  background:rgba(255,255,255,.1);
  border-color:#fff;
  color:#fff;
}
.diamond-section{ padding:78px 0; }
.diamond-section.alt{ background:var(--ivory-2); }
.diamond-row-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:30px;
}
.diamond-row-head h2,
.diamond-summary-box h2{
  font-size:clamp(28px,3.8vw,48px);
  margin:0;
}
.diamond-row-head .lede{ margin:0; max-width:760px; }
.diamond-card-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:18px;
}
.diamond-card-grid.four{ grid-template-columns:repeat(4,1fr); }
.diamond-card{
  border:1px solid #D8CBAF;
  background:#fff;
  border-radius:24px;
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:14px;
  box-shadow:0 18px 34px rgba(26,26,26,.05);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.diamond-card:hover{
  transform:translateY(-4px);
  border-color:#D8CBAF;
  box-shadow:0 22px 40px rgba(26,26,26,.09);
}
.diamond-card figure{
  margin:0;
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(180deg, #F7F5F0 0%, #F1EEE6 100%);
  aspect-ratio:1/1;
  display:grid;
  place-items:center;
}
.diamond-card figure img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:12px;
}
.diamond-card figure.asscher-mark svg{
  width:78%;
  height:auto;
  display:block;
}
.diamond-card .tag{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#6A5845;
}
.diamond-card h3{
  font-size:18px;
  margin:0;
  color:var(--ink-text);
}
.diamond-card p{
  font-size:14px;
  line-height:1.65;
  color:#824a1b;
  margin:0;
}
.shape-marquee{
  margin-top:8px;
  overflow:hidden;
  position:relative;
}
.shape-marquee::before,
.shape-marquee::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:84px;
  pointer-events:none;
  z-index:2;
}
.shape-marquee::before{
  left:0;
  background:linear-gradient(90deg, #F7F5F0 0%, rgba(130,74,27,0) 100%);
}
.shape-marquee::after{
  right:0;
  background:linear-gradient(270deg, #F7F5F0 0%, rgba(130,74,27,0) 100%);
}
.shape-marquee-track{
  display:flex;
  width:max-content;
  animation:shapeMarquee 42s linear infinite;
  will-change:transform;
}
.shape-marquee-track:hover{
  animation-play-state:paused;
}
.shape-marquee-group{
  display:flex;
  flex:0 0 auto;
}
.shape-marquee .diamond-card{
  width:clamp(220px, 22vw, 290px);
  flex:0 0 clamp(220px, 22vw, 290px);
  margin-right:18px;
}
.shape-marquee .diamond-card figure img{
  transform:scale(.82);
}
.shape-marquee .diamond-card figure img[src*="marquise.png"]{
  transform:scale(.68);
}
@keyframes shapeMarquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
.fancy-color-marquee{
  margin-top:8px;
  overflow:hidden;
  position:relative;
}
.fancy-color-marquee::before,
.fancy-color-marquee::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:84px;
  pointer-events:none;
  z-index:2;
}
.fancy-color-marquee::before{
  left:0;
  background:linear-gradient(90deg, #F1EEE6 0%, rgba(130,74,27,0) 100%);
}
.fancy-color-marquee::after{
  right:0;
  background:linear-gradient(270deg, #F1EEE6 0%, rgba(130,74,27,0) 100%);
}
.fancy-color-marquee-track{
  display:flex;
  width:max-content;
  animation:fancyColorMarquee 38s linear infinite;
  will-change:transform;
}
.fancy-color-marquee-track:hover{
  animation-play-state:paused;
}
.fancy-color-marquee-group{
  display:flex;
  flex:0 0 auto;
}
.fancy-color-marquee .diamond-card{
  width:clamp(220px, 21vw, 282px);
  flex:0 0 clamp(220px, 21vw, 282px);
  margin-right:18px;
}
@keyframes fancyColorMarquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
.loose-diamonds-marquee{
  margin-top:8px;
  overflow:hidden;
  position:relative;
}
.loose-diamonds-marquee::before,
.loose-diamonds-marquee::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:84px;
  pointer-events:none;
  z-index:2;
}
.loose-diamonds-marquee::before{
  left:0;
  background:linear-gradient(90deg, #fff 0%, rgba(255,255,255,0) 100%);
}
.loose-diamonds-marquee::after{
  right:0;
  background:linear-gradient(270deg, #fff 0%, rgba(255,255,255,0) 100%);
}
.loose-diamonds-marquee-track{
  display:flex;
  width:max-content;
  animation:looseDiamondsMarquee 40s linear infinite;
  will-change:transform;
}
.loose-diamonds-marquee-track:hover{
  animation-play-state:paused;
}
.loose-diamonds-marquee-group{
  display:flex;
  flex:0 0 auto;
}
.loose-diamonds-marquee .diamond-card{
  width:clamp(220px, 21vw, 282px);
  flex:0 0 clamp(220px, 21vw, 282px);
  margin-right:18px;
}
@keyframes looseDiamondsMarquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
.diamond-summary{ padding:34px 0 80px; }
.diamond-summary-box{
  border:1px solid #D8CBAF;
  border-radius:28px;
  padding:34px;
  background:#fff;
  display:grid;
  grid-template-columns:1.25fr .95fr;
  gap:28px;
  align-items:center;
  box-shadow:0 20px 35px rgba(26,26,26,.05);
}
.diamond-summary-box .copy p{
  max-width:none;
  color:#824a1b;
}
.diamond-summary-box .meta{
  border-left:1px solid #D8CBAF;
  padding-left:28px;
}
.diamond-summary-box .meta p{
  color:#824a1b;
  line-height:1.7;
  margin-bottom:18px;
}
.diamond-summary-box .hero-actions{
  gap:14px;
  justify-content:flex-start;
}
@media (max-width:1100px){
  .diamond-card-grid,
  .diamond-card-grid.four{ grid-template-columns:repeat(2,1fr); }
  .diamond-summary-box{ grid-template-columns:1fr; }
  .diamond-summary-box .meta{
    border-left:0;
    padding-left:0;
    border-top:1px solid #D8CBAF;
    padding-top:24px;
  }
  .shape-marquee::before,
  .shape-marquee::after{ width:54px; }
  .shape-marquee .diamond-card{
    width:260px;
    flex-basis:260px;
    margin-right:16px;
  }
  .fancy-color-marquee::before,
  .fancy-color-marquee::after{ width:54px; }
  .fancy-color-marquee .diamond-card{
    width:260px;
    flex-basis:260px;
    margin-right:16px;
  }
  .loose-diamonds-marquee::before,
  .loose-diamonds-marquee::after{ width:54px; }
  .loose-diamonds-marquee .diamond-card{
    width:260px;
    flex-basis:260px;
    margin-right:16px;
  }
}
@media (max-width:700px){
  .all-diamonds-hero{ padding:18px 0 56px; }
  .all-diamonds-hero-shell,
  .all-diamonds-hero-copy{ min-height:480px; }
  .all-diamonds-hero-copy .inner{ padding:40px 24px; }
  .diamond-section{ padding:62px 0; }
  .diamond-card-grid,
  .diamond-card-grid.four{ grid-template-columns:1fr; }
  .shape-marquee{ margin-top:0; }
  .shape-marquee::before,
  .shape-marquee::after{ width:34px; }
  .shape-marquee-track{ animation-duration:56s; }
  .shape-marquee .diamond-card{
    width:220px;
    flex-basis:220px;
    margin-right:14px;
  }
  .fancy-color-marquee{ margin-top:0; }
  .fancy-color-marquee::before,
  .fancy-color-marquee::after{ width:34px; }
  .fancy-color-marquee-track{ animation-duration:56s; }
  .fancy-color-marquee .diamond-card{
    width:220px;
    flex-basis:220px;
    margin-right:14px;
  }
  .loose-diamonds-marquee{ margin-top:0; }
  .loose-diamonds-marquee::before,
  .loose-diamonds-marquee::after{ width:34px; }
  .loose-diamonds-marquee-track{ animation-duration:56s; }
  .loose-diamonds-marquee .diamond-card{
    width:220px;
    flex-basis:220px;
    margin-right:14px;
  }
  .diamond-summary{ padding:18px 0 64px; }
  .diamond-summary-box{ padding:24px; }
  .diamond-summary-box .hero-actions{ flex-direction:column; align-items:flex-start; }
}

/* =========================================================
   OUR ALLIANCES HERO
   ========================================================= */
.alliances-hero{
  background:#fff;
  padding:28px 0 64px;
}
.alliances-hero-shell{
  position:relative;
  min-height:500px;
  border-radius:30px;
  overflow:hidden;
  background:#824a1b;
  box-shadow:0 36px 70px rgba(26,26,26,.14);
}
.alliances-hero-shell img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:contrast(1.02) saturate(.95) brightness(.88);
}
.alliances-hero-shell::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(130,74,27,.62) 0%, rgba(130,74,27,.30) 45%, rgba(130,74,27,.06) 72%, rgba(130,74,27,0) 100%);
}
.alliances-hero-copy{
  position:relative;
  z-index:1;
  min-height:500px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:48px 56px;
  max-width:760px;
}
.alliances-hero-copy .breadcrumb{
  color:#F1EEE6;
  margin-bottom:18px;
}
.alliances-hero-copy .breadcrumb a{ color:#F7F5F0; }
.alliances-hero-copy .eyebrow{
  color:#D8CBAF;
  margin-bottom:12px;
}
.alliances-hero-copy .eyebrow::before{ background:#D8CBAF; }
.alliances-hero-copy h1{
  color:#fff;
  font-size:clamp(42px,5vw,80px);
  line-height:.96;
  max-width:11ch;
  margin-bottom:14px;
}
.alliances-hero-copy .lede{
  color:#F1EEE6;
  max-width:44ch;
  font-size:18px;
  line-height:1.7;
  margin:0;
}
.alliances-image-ticket{
  overflow:hidden;
}
.alliances-image-ticket .alliances-image{
  margin:-24px -22px 14px;
  border-radius:0 0 22px 22px;
  overflow:hidden;
  aspect-ratio:16/9;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 18px 14px;
}
.alliances-image-ticket .alliances-image img{
  display:block;
  width:auto;
  height:auto;
  max-width:85%;
  max-height:85%;
  object-fit:contain;
}
.alliances-image-ticket .ticket-num{
  margin-top:2px;
}
.alliances-logo-ticket{
  overflow:hidden;
}
.alliances-logo-ticket .alliances-logo{
  margin:-24px -22px 14px;
  border-radius:0 0 22px 22px;
  overflow:hidden;
  aspect-ratio:16/9;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 18px 14px;
}
.alliances-logo-ticket .alliances-logo img{
  display:block;
  width:auto;
  height:auto;
  max-width:82%;
  max-height:82%;
  object-fit:contain;
}
.alliances-logo-ticket.gjepc .alliances-logo img{
  max-width:90%;
  max-height:90%;
  transform:scale(1.08);
}
.alliances-logo-ticket .ticket-num{
  margin-top:2px;
}
.cert-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:24px;
  max-width:1180px;
  margin:0 auto;
}
.cert-grid .ticket{
  grid-column:span 4;
  min-height:334px;
  padding:28px 28px 30px;
  border:1px solid rgba(26,26,26,.08);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%, #F7F5F0 100%);
  box-shadow:0 18px 48px -34px rgba(26,26,26,.38);
}
.cert-grid .ticket::before{
  width:44px;
  background:linear-gradient(90deg, #d2b99e 0%, #F7F5F0 100%);
  opacity:1;
  margin-bottom:6px;
}
.cert-grid .alliances-logo{
  margin:-28px -28px 18px;
  padding:24px 28px 22px;
  min-height:128px;
  background:linear-gradient(180deg, rgba(130,74,27,.98) 0%, rgba(130,74,27,1) 100%);
  border-bottom:1px solid rgba(26,26,26,.06);
}
.cert-grid .alliances-logo img{
  max-width:108px;
  max-height:82px;
  filter:drop-shadow(0 6px 18px rgba(26,26,26,.08));
}
.cert-grid .ticket-num{
  color:#D8CBAF;
  font-size:12px;
  letter-spacing:.22em;
}
.cert-grid .ticket h3{
  color:#1A1A1A;
  font-size:clamp(20px,1.65vw,24px);
  line-height:1.18;
  max-width:15ch;
}
.cert-grid .ticket p{
  color:#78604d;
  font-size:15px;
  line-height:1.7;
  max-width:25ch;
}
.cert-grid > .ticket:nth-child(4),
.cert-grid > .ticket:nth-child(5){
  grid-column:4 / span 4;
}
.cert-grid > .ticket:nth-child(5){
  grid-column:8 / span 4;
}
.cert-grid .ticket:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 55px -34px rgba(26,26,26,.48);
}
.alliances-image-ticket::before,
.alliances-logo-ticket::before{
  content:"";
  display:block;
  width:44px;
  height:2px;
  margin:0 auto 6px;
  background:linear-gradient(90deg, #d2b99e 0%, #F7F5F0 100%);
  opacity:1;
}
.alliances-logo-ticket:hover,
.alliances-image-ticket:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 55px -34px rgba(26,26,26,.48);
}
.alliances-showcase .grid-3{
  grid-template-columns:repeat(4, 1fr);
  gap:18px;
}
.alliances-showcase .grid-3 > :nth-child(5){
  grid-column:2;
}
.alliances-showcase .grid-3 > :nth-child(6){
  grid-column:3;
}
.alliances-showcase .ticket{
  min-height:334px;
  padding:28px 28px 30px;
  border:1px solid rgba(26,26,26,.08);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%, #F7F5F0 100%);
  box-shadow:0 18px 48px -34px rgba(26,26,26,.38);
  gap:14px;
  align-items:center;
  text-align:center;
}
.alliances-showcase .ticket::before{
  margin:0 auto 6px;
  width:44px;
  background:linear-gradient(90deg, #d2b99e 0%, #F7F5F0 100%);
}
.alliances-showcase .ticket *{
  align-self:center;
}
.alliances-showcase .ticket h3,
.alliances-showcase .ticket p{
  max-width:25ch;
}
.partner-logo-strip{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:14px;
  margin:28px 0 22px;
}
.partner-logo-card{
  background:#fff;
  border:1px solid rgba(130,74,27,.55);
  border-radius:18px;
  min-height:112px;
  padding:14px 12px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  box-shadow:0 10px 24px rgba(130,74,27,.08);
}
.partner-logo-card img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:58px;
  object-fit:contain;
}
.partner-logo-card span{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#824a1b;
}
@media (max-width:700px){
  .alliances-hero{ padding:18px 0 52px; }
  .alliances-hero-shell,
  .alliances-hero-copy{ min-height:460px; }
  .alliances-hero-copy{ padding:34px 22px; }
  .alliances-showcase .grid-3{ grid-template-columns:1fr; }
  .alliances-showcase .grid-3 > :nth-child(5),
  .alliances-showcase .grid-3 > :nth-child(6){ grid-column:auto; }
  .partner-logo-strip{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

/* =========================================================
   FOOTER
   ========================================================= */
.site-footer{
  background:#824a1b;
  color:var(--bone);
  padding:74px 0 26px;
  border-top:1px solid rgba(216,203,175,.16);
}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(300px,1.15fr) minmax(180px,.78fr) minmax(220px,.92fr) minmax(250px,1fr);
  gap:48px 54px;
  margin-bottom:46px;
  align-items:start;
}
.footer-grid-modern{
  grid-template-columns:minmax(300px,1.15fr) minmax(180px,.78fr) minmax(220px,.92fr) minmax(250px,1fr) minmax(280px,1fr);
  gap:42px 48px;
}
.footer-grid.has-private-viewings{ grid-template-columns:1.5fr 1fr 1fr; gap:48px; }
.footer-grid.has-private-viewings > div:last-child{ display:none; }
.footer-grid > div{ min-width:0; }
.footer-grid h4{
  font-family:var(--f-mono);
  font-size:15px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#D8CBAF;
  margin-bottom:18px;
}
.footer-grid-modern h4{
  font-size:14px;
  letter-spacing:.18em;
}
.footer-grid li{ margin-bottom:12px; font-size:15px; line-height:1.55; }
.footer-grid a:hover{ color:var(--gold-light); }
.footer-address-label{
  display:block;
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#d2b99e;
  margin-bottom:6px;
}
.footer-grid > div:nth-child(2) ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 24px;
  max-width:300px;
}
.footer-grid-modern > div:nth-child(2) ul,
.footer-grid-modern > div:nth-child(3) ul,
.footer-grid-modern > div:nth-child(4) ul{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  max-width:100%;
}
.footer-page-links{
  columns:1;
  column-gap:0;
  max-width:260px;
}
.footer-page-links li{
  break-inside:avoid;
  margin-bottom:10px;
}
.footer-support-group{
  margin-top:18px;
}
.footer-support-group h4{
  margin-top:0;
}
.footer-brand .brand{
  gap:14px;
  margin-bottom:18px;
  color:#F1EEE6;
}
.footer-brand .brand-mark{
  width:176px;
  height:auto;
  filter:drop-shadow(0 6px 14px rgba(130,74,27,.18));
}
.footer-brand .brand-text{
  color:#F1EEE6;
  font-size:30px;
  letter-spacing:.14em;
  line-height:.92;
}
.footer-tagline{
  font-family:var(--f-mono);
  font-size:15px;
  letter-spacing:.04em;
  color:#fff;
  margin-top:4px;
  margin-bottom:10px !important;
}
.footer-brand .brand small{
  color:#d2b99e;
  font-size:10px;
  letter-spacing:.24em;
  margin-top:7px;
}
.footer-brand p{
  font-size:16px;
  line-height:1.72;
  max-width:390px;
  opacity:.88;
  margin-top:6px;
}
.footer-social{ display:flex; gap:12px; margin-top:20px; flex-wrap:wrap; align-items:center; }
.footer-social.footer-social-atelier{
  width:100%;
  justify-content:flex-end;
  margin-top:26px;
}
.footer-social a{
  width:40px; height:40px; border:1px solid rgba(130,74,27,.22); border-radius:50%;
  display:flex; align-items:center; justify-content:center; font-size:12px;
  font-family:var(--f-mono);
  background:rgba(255,255,255,.02);
}
.footer-social a:hover{ border-color:var(--gold); color:var(--gold-light); background:rgba(216,203,175,.06); }
.social-links{ display:flex; flex-wrap:wrap; gap:12px; margin:18px 0; }
.footer-social a, .social-links a{
  width:40px; height:40px; border:1px solid rgba(130,74,27,.22); border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center; font-size:0; position:relative;
  transition:border-color .2s ease, color .2s ease, transform .2s ease;
}
.footer-social a:hover, .social-links a:hover{ border-color:var(--gold); color:var(--gold-light); transform:translateY(-2px); }
.footer-social a::before, .social-links a::before{ content:""; font-family:Arial,sans-serif; font-size:15px; font-weight:700; line-height:1; }
.footer-social a[href*="instagram"]::before, .social-links a[href*="instagram"]::before{
  content:""; width:14px; height:14px; border:1.5px solid currentColor; border-radius:4px;
  box-shadow:inset 0 0 0 3px transparent;
}
.footer-social a[href*="instagram"]::after, .social-links a[href*="instagram"]::after{
  content:""; position:absolute; width:5px; height:5px; border:1.5px solid currentColor; border-radius:50%;
}
.footer-social a[href*="facebook"]::before, .social-links a[href*="facebook"]::before{ content:"f"; font-family:Arial,sans-serif; font-size:20px; font-weight:700; }
.footer-social a[href*="linkedin"]::before, .social-links a[href*="linkedin"]::before{ content:"in"; font-family:Arial,sans-serif; font-size:14px; font-weight:700; }
.footer-social a[href*="youtube"]::before, .social-links a[href*="youtube"]::before{ content:""; font-size:13px; }
.footer-social a[href*="line.me"]::before{ content:"L"; font-family:Arial,sans-serif; font-size:14px; font-weight:700; }
.footer-social a.whatsapp-footer{ background:#25d366; border-color:#25d366; color:#fff; }
.footer-social a.whatsapp-footer::before{ content:"WA"; font-family:Arial,sans-serif; font-size:10px; font-weight:700; }
.footer-social a.whatsapp-footer{ display:inline-flex; }
.footer-contact{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.footer-contact-details{
  display:grid;
  gap:14px;
  margin-top:24px;
}
.finance-partners.is-hidden-section{
  display:none;
}
.footer-contact-line{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:15px;
  line-height:1.45;
}
.footer-address-line{
  align-items:flex-start;
}
.footer-address-copy{
  display:grid;
  gap:2px;
  margin-top:-1px;
}
.footer-address-copy .footer-address-label{
  margin-bottom:2px;
}
.footer-contact-icon{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  flex:0 0 24px;
  color:var(--gold-light);
}
.footer-contact-icon svg{
  width:20px;
  height:20px;
  fill:currentColor;
}
.footer-bottom{
  border-top:1px solid rgba(216,203,175,.14);
  padding-top:24px;
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em; opacity:.72;
}
.admin-footer-link{ color:var(--gold-light); opacity:.9; transition:color .2s ease, opacity .2s ease; }
.admin-footer-link:hover{ color:var(--ivory); opacity:1; }
.whatsapp-float{
  position:fixed;
  right:24px;
  bottom:24px;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#25d366;
  color:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.28);
  z-index:150;
  transition:transform .25s ease, box-shadow .25s ease;
}
.whatsapp-float{ display:grid; }
.whatsapp-float:hover{
  color:#fff;
  transform:translateY(-4px) scale(1.04);
  box-shadow:0 16px 34px rgba(0,0,0,.34);
}
.whatsapp-float svg{ width:29px; height:29px; fill:currentColor; }
@media (max-width:640px){ .whatsapp-float{ right:18px; bottom:18px; width:52px; height:52px; } .whatsapp-float svg{ width:26px; height:26px; } }
.whatsapp-widget{ position:fixed; right:24px; bottom:40px; z-index:160; display:none; flex-direction:column; align-items:flex-end; gap:14px; }
.whatsapp-panel{ width:320px; padding:0; overflow:hidden; border-radius:12px; background:#fff; color:#824a1b; box-shadow:0 18px 45px rgba(0,0,0,.28); opacity:0; visibility:hidden; transform:translateY(12px) scale(.96); transform-origin:bottom right; transition:opacity .25s ease, transform .25s ease, visibility .25s ease; }
.whatsapp-widget.open .whatsapp-panel{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.whatsapp-panel-head{ display:flex; align-items:center; gap:12px; padding:18px 20px; background:#078c68; color:#fff; }
.whatsapp-widget-icon{ width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; border-radius:50%; background:#fff; color:#078c68; }
.whatsapp-widget-icon svg{ width:24px; height:24px; fill:currentColor; }
.whatsapp-panel-head strong,.whatsapp-panel-head small{ display:block; }
.whatsapp-panel-head strong{ font:600 15px var(--f-body); }
.whatsapp-panel-head small{ margin-top:3px; font-size:11px; opacity:.9; }
.whatsapp-close{ position:absolute; margin:0 0 0 286px; border:0; background:transparent; color:#fff; font-size:25px; line-height:1; cursor:pointer; }
.whatsapp-panel-body{ padding:18px 20px 20px; background:#f4eee7; background-image:radial-gradient(rgba(13,123,91,.08) 1px, transparent 1px); background-size:18px 18px; }
.whatsapp-panel-body span{ display:block; color:#867568; font-size:11px; margin-bottom:6px; }
.whatsapp-panel-body p{ width:max-content; max-width:100%; margin:0; padding:10px 13px; border-radius:4px 12px 12px 12px; background:#fff; color:#824a1b; font-size:14px; line-height:1.45; box-shadow:0 3px 10px rgba(0,0,0,.05); }
.whatsapp-start{ display:flex; justify-content:center; align-items:center; gap:8px; margin:18px 20px 10px; padding:13px; border-radius:6px; background:#18c867; color:#fff; font:600 14px var(--f-body); }
.whatsapp-start:hover{ background:#0ea957; color:#fff; }
.whatsapp-start span{ font-size:18px; line-height:1; }
.whatsapp-powered{ display:block; padding:0 20px 14px; text-align:center; color:#a0a6ad; font-size:10px; }
.whatsapp-launcher{ width:58px; height:58px; display:grid; place-items:center; border:0; border-radius:50%; background:#18c867; color:#fff; box-shadow:0 12px 28px rgba(0,0,0,.28); cursor:pointer; transition:transform .25s ease, box-shadow .25s ease; }
.whatsapp-launcher:hover{ transform:translateY(-3px); box-shadow:0 16px 34px rgba(0,0,0,.34); }
.whatsapp-launcher svg{ width:29px; height:29px; fill:currentColor; }
.whatsapp-fallback{ position:fixed; right:14px; bottom:18px; z-index:10000; width:54px; height:54px; display:grid; place-items:center; border-radius:50%; background:#18c867; color:#fff; box-shadow:0 12px 28px rgba(0,0,0,.28); }
.whatsapp-fallback svg{ width:27px; height:27px; fill:currentColor; }
@media (max-width:640px){ .whatsapp-widget{ right:16px; bottom:24px; } .whatsapp-panel{ width:min(320px, calc(100vw - 32px)); } .whatsapp-close{ right:14px; margin:0; } .whatsapp-launcher{ width:52px; height:52px; } .whatsapp-launcher svg{ width:26px; height:26px; } }
@media (max-width:640px){
  .whatsapp-widget{ right:14px; bottom:18px; z-index:9999; gap:10px; }
  .whatsapp-launcher{ width:54px; height:54px; flex:0 0 54px; }
  .whatsapp-launcher svg{ width:27px; height:27px; }
  .landing-hero{ min-height:78svh; padding:58px 0 54px; }
  .landing-hero .container{ min-height:0; display:block; }
  .landing-hero .hero-copy{ max-width:100%; padding:20px 0; }
  .landing-hero .hero h1{ max-width:100%; font-size:clamp(52px,15vw,72px); line-height:.94; }
  .landing-hero .hero .lede{ max-width:100%; font-size:16px; line-height:1.5; margin:20px 0 26px; }
  .hero-actions{ gap:14px; }
  .hero-actions .btn{ padding:14px 18px; font-size:11px; }
}
.newsletter-row{ display:flex; gap:0; margin-top:16px; max-width:340px; border:1px solid var(--ink-3); }
.newsletter-row input{
  flex:1; background:transparent; border:0; padding:13px 14px; color:var(--ivory);
  font-family:var(--f-body); font-size:13px;
}
.newsletter-row input:focus{ outline:none; }
.newsletter-row button{
  background:var(--gold); color:var(--ink); border:0; padding:0 18px;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase;
}
@media (max-width:1200px){ .footer-grid-modern{ grid-template-columns:1.2fr 1fr 1fr 1fr; } .footer-grid-modern > div:last-child{ grid-column:1/-1; } }
@media (max-width:920px){ .footer-grid, .footer-grid-modern{ grid-template-columns:1fr 1fr; gap:34px 30px; } .footer-grid-modern > div:last-child{ grid-column:auto; } }
@media (max-width:560px){ .footer-grid, .footer-grid-modern{ grid-template-columns:1fr; } }
@media (max-width:920px){ .footer-grid.has-private-viewings{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .footer-grid.has-private-viewings{ grid-template-columns:1fr; } }
@media (max-width:920px){ .footer-social.footer-social-atelier{ justify-content:flex-start; } }
@media (max-width:920px){ .footer-page-links{ columns:1; } }

/* =========================================================
   PAGE HEADER (inner pages)
   ========================================================= */
.page-header{ background:#824a1b; color:var(--ivory); padding:150px 0 70px; }
.page-header h1{ font-size:clamp(38px,5.6vw,64px); color:var(--ivory); }
.page-header .lede{ color:var(--bone); }
.breadcrumb{ font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--label-ink); margin-bottom:20px; }
.breadcrumb a{ color:var(--bone); }
.breadcrumb a:hover{ color:var(--gold-light); }

/* =========================================================
   FORMS (contact)
   ========================================================= */
.form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.form-grid > label{ display:flex; flex-direction:column; gap:8px; color:var(--label-ink); font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase; }
.form-grid > label:nth-child(3), .form-grid > label:nth-child(4){ grid-column:1/-1; }
.form-grid > label input, .form-grid > label select, .form-grid > label textarea{ width:100%; min-width:0; background:transparent; border:1px solid var(--ink-3); color:var(--ivory); padding:14px 16px; font-family:var(--f-body); font-size:15px; letter-spacing:normal; text-transform:none; border-radius:2px; }
.on-ivory .form-grid > label input, .on-ivory .form-grid > label select, .on-ivory .form-grid > label textarea{ border-color:#e3d2c0; color:var(--ink-text); background:#fff; }
.form-grid > label input:focus, .form-grid > label select:focus, .form-grid > label textarea:focus{ outline:none; border-color:var(--gold); }
.form-grid > label textarea{ resize:vertical; min-height:120px; }
.about-page .form-grid > label,
.about-page .field label{
  color:#824a1b;
}
.about-page .contact-card .eyebrow{
  color:#824a1b;
}
.contact-page-stack{
  max-width:700px;
  margin:0 auto;
  display:grid;
  gap:20px;
}
.contact-page-stack .contact-card{
  width:100%;
}
.contact-form-card{
  padding:32px;
}
.contact-form-card h2{
  color:var(--ink-text);
}
.contact-form-card .form-grid{
  gap:22px;
}
.field{ display:flex; flex-direction:column; gap:8px; }
.field.full{ grid-column:1/-1; }
.field label{ font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--label-ink); }
.field input, .field select, .field textarea{
  background:transparent; border:1px solid var(--ink-3); color:var(--ivory);
  padding:14px 16px; font-family:var(--f-body); font-size:15px; border-radius:2px;
}
.on-ivory .field input, .on-ivory .field select, .on-ivory .field textarea{
  border-color:#e3d2c0; color:var(--ink-text); background:#fff;
}
.field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--gold); }
.field textarea{ resize:vertical; min-height:120px; }
@media (max-width:700px){ .form-grid{ grid-template-columns:1fr; } }

.contact-card{ border:1px solid var(--ink-3); padding:30px; }
.on-ivory .contact-card{ border-color:var(--ivory-2); }
.contact-card h3{ font-size:19px; margin-bottom:12px; }
.contact-card p{ font-size:14px; opacity:.78; margin-bottom:4px; }
.call-card .eyebrow{ color:var(--gold-light) !important; }
.call-card p{ color:#F7F5F0 !important; opacity:1 !important; }

/* =========================================================
   GALLERY
   ========================================================= */
.masonry{ column-count:3; column-gap:20px; }
.masonry figure{
  break-inside:avoid;
  margin:0 0 20px;
  position:relative;
  overflow:hidden;
  cursor:pointer;
  border-radius:24px;
  background:#fff;
  box-shadow:0 16px 34px rgba(26,26,26,.08);
}
.masonry img{ width:100%; display:block; transition:transform .5s ease; }
.masonry figure:hover img{ transform:scale(1.05); }
.masonry figcaption{
  position:absolute; left:0; right:0; bottom:0; padding:16px;
  background:linear-gradient(to top, rgba(13,16,14,.85), transparent);
  color:var(--ivory); font-family:var(--f-mono); font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  opacity:0; transition:opacity .3s ease;
}
.masonry figure:hover figcaption{ opacity:1; }
@media (max-width:920px){ .masonry{ column-count:2; } }
@media (max-width:560px){ .masonry{ column-count:1; } }

.lightbox{
  position:fixed; inset:0; background:rgba(9,10,8,.94); z-index:200;
  display:none; align-items:center; justify-content:center; padding:40px;
}
.lightbox.open{ display:flex; }
.lightbox img{ max-width:min(900px,90vw); max-height:82vh; object-fit:contain; border:1px solid var(--gold-dim); }
.lightbox-close{
  position:absolute; top:28px; right:32px; color:var(--ivory); font-family:var(--f-mono);
  font-size:12px; letter-spacing:.1em; text-transform:uppercase; border:1px solid var(--ink-3); padding:10px 16px;
}

/* =========================================================
   FILTER TABS (collections)
   ========================================================= */
.filter-tabs{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:44px; }
.filter-tabs button{
  background:transparent; border:1px solid var(--ink-3); color:var(--bone);
  font-family:var(--f-mono); font-size:12px; letter-spacing:.1em; text-transform:uppercase;
  padding:11px 20px; transition:all .2s ease;
}
.filter-tabs button.active, .filter-tabs button:hover{ border-color:var(--gold); color:var(--gold-light); }

/* =========================================================
   AMBIENT BACKGROUND ORBS (hero + page-header)
   ========================================================= */
.bg-orb{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.32; pointer-events:none; z-index:0; }
.orb-a{ width:440px; height:440px; background:var(--gold); top:-140px; right:-110px; animation:floatBlob 15s ease-in-out infinite; }
.orb-b{ width:300px; height:300px; background:var(--gold-light); bottom:-90px; left:-70px; animation:floatBlob 19s ease-in-out infinite reverse; }
@keyframes floatBlob{
  0%,100%{ transform:translate(0,0) scale(1); }
  50%{ transform:translate(24px,-28px) scale(1.06); }
}
.hero .container, .page-header .container{ position:relative; z-index:1; }
.page-header{ position:relative; overflow:hidden; }

/* =========================================================
   ENTRANCE ANIMATION (hero + page headers on load)
   ========================================================= */
@keyframes fadeUp{
  from{ opacity:0; transform:translateY(24px); }
  to{ opacity:1; transform:translateY(0); }
}
.hero-copy .eyebrow{ animation:fadeUp .8s ease both; }
.hero-copy h1{ animation:none; }
.hero-line{ display:block; opacity:0; animation:heroLineIn .85s cubic-bezier(.2,.75,.25,1) forwards; }
.hero-line:nth-child(1){ animation-delay:.12s; }
.hero-line:nth-child(2){ animation-delay:.24s; }
.hero-line:nth-child(3){ animation-delay:.36s; }
.hero-copy .lede{ animation:fadeUp .9s .26s ease both; }
.hero-actions{ animation:fadeUp .9s .4s ease both; }
.hero-figure{ animation:fadeUp 1.1s .18s ease both; }
.page-header .breadcrumb{ animation:fadeUp .7s ease both; }
.page-header h1{ animation:fadeUp .8s .1s ease both; }
.page-header .lede{ animation:fadeUp .8s .22s ease both; }
@keyframes heroLineIn{
  from{ opacity:0; transform:translateY(28px); filter:blur(5px); }
  to{ opacity:1; transform:translateY(0); filter:blur(0); }
}

/* =========================================================
   CONTACT  success state, animated pin
   ========================================================= */
.btn.is-success{
  background:#2f8f5b !important; border-color:#2f8f5b !important; color:#fff !important;
  animation:pulseSuccess .5s ease;
}
@keyframes pulseSuccess{
  0%{ transform:scale(1); }
  40%{ transform:scale(1.04); }
  100%{ transform:scale(1); }
}
.contact-card{ position:relative; overflow:hidden; transition:transform .3s ease, box-shadow .3s ease; }
.contact-card:hover{ transform:translateY(-5px); box-shadow:0 18px 40px -20px rgba(130,74,27,.35); }

/* Size chart page */
.size-chart-page{ background:#fff; }
.size-chart-page .page-header{
  background:#fff;
  color:var(--ink);
  padding-bottom:34px;
}
.size-chart-page .page-header .breadcrumb a{ color:var(--gold); }
.size-chart-page .page-header .lede{ color:#6A5845; }
.size-chart-page .page-header .bg-orb{ display:none; }
.size-chart-wrap{ padding-top:12px; padding-bottom:64px; }
.shape-gallery{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:16px;
  margin-bottom:32px;
}
.shape-pill{
  width:86px;
  min-height:88px;
  padding:10px 8px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:9px;
  text-align:center;
  border-radius:0;
  color:var(--ink);
  background:#fff;
  border:1px solid transparent;
  transition:background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.shape-pill img{
  width:46px;
  height:46px;
  object-fit:contain;
  display:block;
  filter:saturate(.95) contrast(1.05);
}
.shape-pill span{
  font-family:var(--font-serif);
  font-size:14px;
  line-height:1;
}
.shape-pill.active{
  background:#D8CBAF;
  box-shadow:0 10px 24px -18px rgba(0,0,0,.5);
}
.shape-pill:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px -20px rgba(130,74,27,.25);
}
.size-chart-head{
  text-align:center;
  max-width:720px;
  margin:0 auto 26px;
}
.size-chart-head .lede{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.size-chart-head.compact{
  margin-bottom:18px;
}
.size-chart-head h2{
  font-size:clamp(30px,4vw,54px);
  margin-bottom:10px;
}

/* FAQ page */
.faq-page-wrap{
  padding:10px 0 72px;
}
.faq-page-head{
  max-width:980px;
  margin:0 auto 22px;
  text-align:center;
}
.faq-page-head .lede{
  max-width:780px;
  margin:10px auto 0;
}
.faq-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:34px;
  align-items:start;
  margin-bottom:34px;
}
.faq-categories{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:34px;
  padding-top:6px;
  flex-wrap:wrap;
}
.faq-category{
  border:0;
  background:none;
  text-align:center;
  font-family:var(--f-serif);
  font-size:24px;
  line-height:1.05;
  color:#111;
  padding:0;
  cursor:pointer;
  min-width:180px;
}
.faq-category.active{
  color:var(--ink);
}
.faq-panels{
  background:transparent;
  width:100%;
  max-width:980px;
  margin:0 auto;
}
.faq-panel{
  display:none;
}
.faq-panel.active{
  display:block;
}
.faq-item{
  background:transparent;
  border-bottom:1px solid #dadada;
}
.faq-item summary{
  padding:14px 0 12px;
  font-size:16px;
  font-weight:600;
  color:#343434;
  text-align:center;
}
.faq-item .policy-answer{
  padding:2px 0 16px;
  max-width:100%;
  color:#727272;
  font-size:12px;
  line-height:1.45;
  text-align:center;
}
.faq-help-note{
  font-size:12px;
  color:#6A5845;
  margin:6px 0 38px;
  text-align:center;
}
.faq-help-note a{
  color:var(--gold);
}
.faq-contact{
  max-width:860px;
  margin:0 auto;
  text-align:center;
}
.faq-contact-head{
  margin-bottom:22px;
}
.faq-contact-head .lede{
  max-width:680px;
  margin:12px auto 6px;
}
.faq-contact-sub{
  color:#6A5845;
  font-size:13px;
  margin:0;
}
.faq-form{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-width:760px;
  margin:0 auto;
}
.faq-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.faq-form-row input,
.faq-form-row textarea{
  width:100%;
  border:1px solid #824a1b;
  background:#fff;
  color:var(--ink);
  padding:12px 14px;
  font:inherit;
  border-radius:0;
  box-sizing:border-box;
}
.faq-form-row textarea{
  grid-column:1 / -1;
  min-height:92px;
  resize:vertical;
}
.faq-submit{
  align-self:center;
  background:var(--ink-2);
  color:#fff;
  border:0;
  padding:11px 22px;
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
}
@media (max-width: 900px){
  .faq-categories{
    flex-direction:row;
    flex-wrap:wrap;
    gap:12px 20px;
  }
  .faq-category{
    font-size:18px;
    min-width:auto;
  }
}
@media (max-width: 640px){
  .faq-form-row{
    grid-template-columns:1fr;
  }
}
.size-chart-panels{
  margin-top:6px;
}
.size-chart-panel{ display:none; }
.size-chart-panel.active{ display:block; }
.size-table-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.oval-size-table-grid{ grid-template-columns:1fr; }
.emerald-size-table-grid{ grid-template-columns:1fr; }
.asscher-size-table-grid,
.heart-size-table-grid{ grid-template-columns:1fr; }
.radiant-size-table-grid,
.cushion-size-table-grid{ grid-template-columns:1fr; }
.radiant-size-table-grid .size-table:nth-child(2),
.cushion-size-table-grid .size-table:nth-child(2){ display:none; }
.size-table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
  border:1px solid #D8CBAF;
  box-shadow:0 10px 28px -24px rgba(26,26,26,.35);
}
.size-table th{
  background:#824a1b;
  color:#fff;
  font-family:var(--f-body);
  font-size:13px;
  font-weight:700;
  padding:11px 12px;
  text-align:center;
}
.size-table td{
  padding:10px 12px;
  border-top:1px solid #D8CBAF;
  border-right:1px solid #D8CBAF;
  color:#3A3028;
  font-size:13px;
  text-align:center;
}
.size-table td:last-child,
.size-table th:last-child{ border-right:none; }
.size-table tbody tr:nth-child(even) td{ background:#FBFBFE; }
@media (max-width:900px){
  .size-table-grid{ grid-template-columns:1fr; }
  .shape-pill{ width:78px; min-height:82px; }
  .shape-pill img{ width:42px; height:42px; }
}

/* Policy page */
.policy-page .page-header{ padding-bottom:84px; }
.policy-wrap{ padding-top:20px; }
.policy-section{
  display:grid;
  grid-template-columns:minmax(180px,220px) minmax(0,1fr);
  gap:32px;
  align-items:start;
  margin-bottom:42px;
}
.policy-label{
  color:#824a1b;
  font-family:var(--font-serif);
  font-size:18px;
  line-height:1.15;
  padding-top:10px;
}
.policy-list{
  border-top:1px solid rgba(26,26,26,.12);
}
.policy-item{
  border-bottom:1px solid rgba(26,26,26,.12);
  padding:0;
}
.policy-item summary{
  list-style:none;
  cursor:pointer;
  padding:18px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  font-size:16px;
  font-weight:700;
  color:var(--ink);
}
.policy-item summary::-webkit-details-marker{ display:none; }
.policy-item summary::after{
  content:"+";
  font-size:24px;
  line-height:1;
  color:var(--ink-2);
  flex:0 0 auto;
}
.policy-item[open] summary::after{ content:""; }
.policy-answer{
  padding:0 0 18px;
  color:var(--ink-2);
  font-size:14px;
  line-height:1.7;
}
.policy-note{
  margin-top:8px;
  font-size:13px;
  color:var(--ink-2);
}
.policy-help-wrap{
  max-width:1180px;
  margin:18px auto 0;
}
.policy-card{
  min-height:220px;
  border-radius:18px;
  padding:28px;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  position:relative;
  background:#B69D72;
}
.policy-help-card{
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:34px 38px;
  text-align:center;
  margin:0 auto;
  width:min(100%, 1060px);
  background-position:center;
}
.policy-help-copy{
  max-width:540px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.policy-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,0));
  pointer-events:none;
}
.policy-card h3{
  font-size:28px;
  line-height:1.08;
  margin:0 0 10px;
}
.policy-card p{
  max-width:300px;
  margin:0;
  font-size:15px;
  line-height:1.7;
  opacity:.92;
}
.policy-help-card h3,
.policy-help-card p{
  text-align:center;
}
.policy-help-card p{
  max-width:420px;
}
.policy-help-btn{
  background:var(--gold);
  border-color:var(--gold);
  color:#fff;
  align-self:center;
  margin-top:8px;
}
.policy-help-btn:hover{
  background:#824a1b;
  border-color:#824a1b;
  color:#fff;
}
@media (max-width:900px){
  .policy-section{ grid-template-columns:1fr; gap:14px; }
  .policy-label{ padding-top:0; font-size:17px; }
  .policy-help-card{
    min-height:240px;
    padding:28px 24px;
  }
}
.pin-dot{
  width:9px; height:9px; border-radius:50%; background:var(--gold);
  display:inline-block; margin-right:8px; position:relative;
}
.pin-dot::after{
  content:""; position:absolute; inset:-6px; border-radius:50%;
  border:1px solid var(--gold); opacity:.5; animation:pinPulse 2.2s ease-out infinite;
}
@keyframes pinPulse{
  0%{ transform:scale(.6); opacity:.7; }
  100%{ transform:scale(1.9); opacity:0; }
}

@media (prefers-reduced-motion:reduce){
  .bg-orb, .hero-copy .eyebrow, .hero-copy h1, .hero-copy .lede, .hero-actions,
  .hero-figure, .page-header .breadcrumb, .page-header h1, .page-header .lede,
  .btn.is-success, .pin-dot::after{ animation:none !important; }
}

/* =========================================================
   DATA TABLE (stock / grading reference)
   ========================================================= */
.data-table{ width:100%; border-collapse:collapse; font-family:var(--f-mono); font-size:13px; }
.data-table th{
  text-align:left; padding:16px 18px; border-bottom:1px solid var(--ink-3);
  font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-light);
  font-weight:400;
}
.data-table td{ padding:18px; border-bottom:1px solid var(--ink-3); color:var(--bone); }
.data-table tr:last-child td{ border-bottom:none; }
.data-table td:first-child, .data-table th:first-child{ color:var(--ivory); font-family:var(--f-body); font-size:14px; }
.data-table .yes{ color:#6fbf8f; }
.data-table .no{ color:var(--bone); opacity:.6; }
.on-ivory .data-table th{ color:var(--gold-dim); border-color:var(--ivory-2); }
.on-ivory .data-table td{ color:#6A5845; border-color:var(--ivory-2); }
.on-ivory .data-table td:first-child, .on-ivory .data-table th:first-child{ color:var(--ink-text); }
.on-ivory .data-table .no{ color:#6A5845; opacity:.55; }
@media (max-width:700px){
  .data-table{ font-size:11px; }
  .data-table th, .data-table td{ padding:12px 10px; }
}

/* =========================================================
   PAGES DROPDOWN (nav)
   ========================================================= */
.nav-dropdown{ position:relative; }
.dropdown-trigger{
  background:none; border:0; font-family:var(--f-body); color:#fff;
  font-size:13px; letter-spacing:.08em; text-transform:uppercase;
  display:flex; align-items:center; gap:7px; padding:6px 0;
  transition:color .25s ease;
}
.dropdown-trigger:hover{ color:var(--gold-light); }
.chevron{ width:9px; height:9px; transition:transform .3s ease; flex-shrink:0; }
.nav-dropdown.open .chevron{ transform:rotate(180deg); color:var(--gold-light); }
@media (hover:hover){
  .nav-dropdown:hover .chevron{ transform:rotate(180deg); }
}

.dropdown-panel{
  position:absolute; top:calc(100% + 8px); left:50%;
  transform:translateX(-50%) translateY(-10px);
  width:230px; background:#824a1b; border:1px solid var(--ink-3);
  box-shadow:0 26px 60px -22px rgba(130,74,27,.55);
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .28s ease, transform .28s ease, visibility .28s;
  z-index:60; overflow:hidden;
}
@media (min-width:921px){
  .nav-dropdown::after{
    content:""; position:absolute; top:100%; left:-6px; right:-6px; height:8px;
  }
}
.nav-dropdown.open .dropdown-panel{
  opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0);
}
@media (hover:hover){
  .nav-dropdown:hover .dropdown-panel{
    opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0);
  }
}
.dropdown-panel a{
  display:block; padding:16px 22px; font-size:14px; letter-spacing:.01em;
  color:var(--ivory); border-bottom:1px solid var(--ink-3);
  opacity:0; transform:translateY(8px);
  transition:background .2s ease, padding-left .2s ease, color .2s ease, opacity .3s ease, transform .3s ease;
}
.nav-dropdown.open .dropdown-panel a,
.nav-dropdown:hover .dropdown-panel a{ opacity:1; transform:translateY(0); }
.dropdown-panel a:nth-child(1){ transition-delay:.03s; }
.dropdown-panel a:nth-child(2){ transition-delay:.07s; }
.dropdown-panel a:nth-child(3){ transition-delay:.11s; }
.dropdown-panel a:nth-child(4){ transition-delay:.15s; }
.dropdown-panel a:nth-child(5){ transition-delay:.19s; }
.dropdown-panel a:hover{ background:var(--ink-2); padding-left:28px; color:var(--gold-light); }
.dropdown-panel a.dropdown-highlight{
  border-bottom:1px solid var(--ink-3); background:transparent; color:var(--ivory);
  font-family:inherit; font-size:14px; letter-spacing:.01em; text-transform:none;
}
.dropdown-panel a.dropdown-highlight:hover{ background:var(--ink-2); color:var(--gold-light); padding-left:28px; }

@media (max-width:920px){
  .nav-dropdown{ width:100%; }
  .dropdown-trigger{ font-size:16px; width:100%; justify-content:space-between; color:var(--bone); }
  .dropdown-panel{
    position:static; transform:none; width:100%; border:0; box-shadow:none;
    background:transparent; opacity:1; visibility:visible; pointer-events:auto;
    max-height:0; overflow:hidden; transition:max-height .35s ease;
  }
  .nav-dropdown.open .dropdown-panel{ max-height:340px; }
  .dropdown-panel a{ opacity:1; transform:none; padding:14px 12px; border-bottom:1px solid var(--ink-3); font-size:15px; }
  .dropdown-panel a.dropdown-highlight{ background:transparent; color:var(--ivory); }
}

@media (prefers-reduced-motion:reduce){
  .chevron, .dropdown-panel, .dropdown-panel a{ transition:none !important; }
}

/* =========================================================
   REVEAL ANIMATION
   ========================================================= */
.reveal{ opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; }
.reveal.in{ opacity:1; transform:translateY(0); }
@media (prefers-reduced-motion:reduce){ .reveal{ opacity:1; transform:none; } }

/* misc */
.divider-gold{ height:1px; background:linear-gradient(90deg, transparent, var(--gold-dim), transparent); margin:0 0 60px; }
.pill{ font-family:var(--f-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; border:1px solid var(--gold-dim); color:var(--label-ink); padding:6px 12px; border-radius:20px; display:inline-block; }

/* =========================================================
   GLOBAL BUTTON TONE OVERRIDE
   ========================================================= */
button:not(.dropdown-trigger),
.btn,
.btn-primary,
.btn-gold,
.btn-outline,
.nav-cta,
.newsletter-row button,
.policy-help-btn,
.filter-tabs button,
.hero-actions .btn,
.all-diamonds-hero .btn-primary,
.btn.is-success{
  background:#824a1b !important;
  color:#fff !important;
  border-color:#824a1b !important;
}
button:not(.dropdown-trigger):hover,
.btn:hover,
.btn-primary:hover,
.btn-gold:hover,
.btn-outline:hover,
.nav-cta:hover,
.newsletter-row button:hover,
.policy-help-btn:hover,
.filter-tabs button:hover,
.hero-actions .btn:hover,
.all-diamonds-hero .btn-primary:hover,
.btn.is-success:hover{
  background:#824a1b !important;
  color:#fff !important;
  border-color:#824a1b !important;
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(130,74,27,.22);
}
button:not(.dropdown-trigger):focus-visible,
.btn:focus-visible,
.btn-primary:focus-visible,
.btn-gold:focus-visible,
.btn-outline:focus-visible,
.nav-cta:focus-visible,
.newsletter-row button:focus-visible,
.policy-help-btn:focus-visible,
.filter-tabs button:focus-visible,
.hero-actions .btn:focus-visible,
.all-diamonds-hero .btn-primary:focus-visible,
.btn.is-success:focus-visible{
  outline:2px solid rgba(216,203,175,.95);
  outline-offset:2px;
}

/* =========================================================
   GLOBAL WARM THEME
   ========================================================= */
body{ background:#F7F5F0; color:#1A1A1A; }
.stat-band .num{ color:#000 !important; }
.site-nav{
  background:#824a1b;
  border-bottom:1px solid #D8CBAF;
}
.site-nav .nav-links a,
.site-nav .dropdown-trigger,
.site-nav .nav-toggle span,
.site-nav .nav-toggle span::before,
.site-nav .nav-toggle span::after{ color:#fff; }
.nav-links a:hover,
.nav-links a.active{ color:#D8CBAF; }
.nav-links a.active::after{ background:#824a1b; }
.site-nav .nav-toggle span,
.site-nav .nav-toggle span::before,
.site-nav .nav-toggle span::after{ background:#fff; }
.brand,
.brand-text{ color:#824a1b; }
.site-footer{
  background:#824a1b;
  color:#fff;
  border-top:1px solid #D8CBAF;
}
.site-footer .footer-grid,
.site-footer .footer-grid h4,
.site-footer .footer-grid li,
.site-footer .footer-grid a,
.site-footer .footer-brand p,
.site-footer .footer-tagline,
.site-footer .footer-contact,
.site-footer .footer-bottom{ color:#fff; }
.site-footer .footer-grid h4{ color:#D8CBAF; }
.site-footer .footer-grid a:hover,
.site-footer .admin-footer-link{ color:#824a1b; }
.site-footer .footer-brand .brand,
.site-footer .footer-brand .brand-text{ color:#824a1b; }
.site-footer .footer-brand .brand small{ color:#6A5845; }
.site-footer .footer-social a,
.site-footer .social-links a{ border-color:#D8CBAF; color:#824a1b; background:transparent; }
.site-footer .footer-social a:hover,
.site-footer .social-links a:hover{ border-color:#824a1b; color:#824a1b; background:#F1EEE6; }
.site-footer .footer-bottom{ border-top-color:#D8CBAF; }
.site-footer .footer-contact-icon{ color:#824a1b; }
.btn.gallery-cta-btn{ color:#fff !important; }
.site-footer .footer-social a,
.site-footer .social-links a{
  color:#1A1A1A !important;
  border-color:#1A1A1A !important;
}
.site-footer .footer-social svg,
.site-footer .social-links svg,
.site-footer .footer-contact-icon,
.site-footer .footer-contact-icon svg{
  color:#1A1A1A !important;
  fill:currentColor;
  stroke:currentColor;
}
.dropdown-panel{
  background:#F7F5F0;
  border-color:#D8CBAF;
}
.dropdown-panel a,
.dropdown-panel a.dropdown-highlight{ color:#1A1A1A; border-bottom-color:#D8CBAF; }
.dropdown-panel a:hover,
.dropdown-panel a.dropdown-highlight:hover{ background:#F1EEE6; color:#824a1b; }
h1,h2,h3,h4{ color:#824a1b; }
.on-ink h1,.on-ink h2,.on-ink h3,.on-ink h4,
.page-header h1,.page-header h2,.page-header h3{ color:#F7F5F0; }
.on-ivory,.on-ivory-2{ color:#1A1A1A; }
.on-ivory p,.on-ivory-2 p,
.on-ivory .lede,.on-ivory-2 .lede{ color:#1A1A1A; }
.divider-gold{ background:linear-gradient(90deg, transparent, #D8CBAF, transparent); }
@media (max-width:920px){
  .nav-links{ background:#F7F5F0; }
  .nav-links a,
  .dropdown-trigger,
  .dropdown-panel a,
  .dropdown-panel a.dropdown-highlight{ color:#1A1A1A; }
  .dropdown-panel a{ border-bottom-color:#D8CBAF; }
}

/* =========================================================
   GLOBAL TEXT CONTRAST OVERRIDE
   ========================================================= */
body,
h1,h2,h3,h4,h5,h6,
p,label,li,
a,
.nav-links a,
.dropdown-trigger,
.dropdown-panel a,
.footer-grid,
.footer-grid a,
.footer-grid li,
.lede,
.eyebrow,
.tag,
.caption{
  color:#1A1A1A !important;
}
button:not(.dropdown-trigger):not(.whatsapp-launcher):not(.whatsapp-fallback),
button:not(.dropdown-trigger):not(.whatsapp-launcher):not(.whatsapp-fallback) *,
.btn,
.btn *,
.nav-cta,
.nav-cta *,
.newsletter-row button,
.newsletter-row button *,
.policy-help-btn,
.policy-help-btn *,
.filter-tabs button,
.filter-tabs button *,
button[type="submit"],
button[type="submit"] *{
  color:#FFFFFF !important;
}
.on-ink,
.page-header,
.shape-cell,
.landing-hero .hero-video{
  background:#824a1b !important;
}
.on-ink h1,.on-ink h2,.on-ink h3,.on-ink h4,
.on-ink p,.on-ink .lede,.on-ink .eyebrow,
.page-header h1,.page-header h2,.page-header h3,
.page-header p,.page-header .lede,.page-header .breadcrumb,
.page-header .breadcrumb a,
.shape-cell span{
  color:#F7F5F0 !important;
}
.shape-cell:hover{ background:#824a1b !important; }
/* Gallery CTA: keep the main hero button visually distinct */
.btn.gallery-cta-btn{
  background:linear-gradient(135deg, #824a1b 0%, #D8CBAF 100%) !important;
  color:#fff !important;
  border-color:#824a1b !important;
  box-shadow:0 14px 30px rgba(130,74,27,.24) !important;
}
.btn.gallery-cta-btn:hover{
  background:linear-gradient(135deg, #824a1b 0%, #824a1b 100%) !important;
  color:#fff !important;
  border-color:#824a1b !important;
  box-shadow:0 16px 34px rgba(130,74,27,.28) !important;
}

/* Header white text theme */
.site-nav .nav-links a,
.site-nav .dropdown-trigger,
.site-nav .dropdown-trigger .chevron{ color:#FFFFFF !important; }
.site-nav .nav-toggle span,
.site-nav .nav-toggle span::before,
.site-nav .nav-toggle span::after{ background:#FFFFFF !important; }
.site-nav .nav-links .nav-cta,
.site-nav .nav-links .nav-cta:hover{
  background:transparent !important;
  color:#FFFFFF !important;
  border:0 !important;
  padding:6px 0 !important;
  box-shadow:none !important;
  transform:none !important;
}
.site-footer,
.site-footer .footer-grid h4,
.site-footer .footer-grid li,
.site-footer .footer-grid a:not(.footer-social a):not(.social-links a),
.site-footer .footer-brand p,
.site-footer .footer-tagline,
.site-footer .footer-contact,
.site-footer .footer-bottom{
  color:#FFFFFF !important;
}
.site-footer .footer-social a,
.site-footer .social-links a,
.site-footer .footer-contact-icon,
.site-footer .footer-contact-icon svg{
  color:#FFFFFF !important;
  border-color:#FFFFFF !important;
}
.site-footer .footer-social svg,
.site-footer .social-links svg,
.site-footer .footer-contact-icon svg{
  fill:#FFFFFF !important;
  stroke:#FFFFFF !important;
}
.dropdown-panel a,
.dropdown-panel a.dropdown-highlight,
.dropdown-panel a:hover,
.dropdown-panel a.dropdown-highlight:hover{
  color:#824a1b !important;
}
@media (max-width:920px){
  .site-nav .nav-links{ background:#824a1b !important; }
  .site-nav .dropdown-panel{ background:#6f3f16 !important; }
}
.site-nav .dropdown-panel,
.site-nav .dropdown-panel a,
.site-nav .dropdown-panel a *{
  color:#824a1b !important;
}
.whatsapp-footer{ display:inline-flex !important; }
.footer-social a.soon{ display:none !important; }
.whatsapp-float,
.whatsapp-fallback{
  position:fixed;
  right:24px;
  bottom:24px;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#25D366;
  color:#FFFFFF;
  box-shadow:0 12px 28px rgba(0,0,0,.28);
  z-index:150;
  transition:transform .25s ease, box-shadow .25s ease;
}
.whatsapp-float:hover,
.whatsapp-fallback:hover{
  color:#FFFFFF;
  transform:translateY(-4px) scale(1.04);
  box-shadow:0 16px 34px rgba(0,0,0,.34);
}
.whatsapp-float svg,
.whatsapp-fallback svg{ width:29px; height:29px; fill:currentColor; }
.site-footer .footer-social a.whatsapp-footer{
  background:#25D366 !important;
  border-color:#25D366 !important;
  color:#FFFFFF !important;
}
.site-footer .footer-social a.telegram-footer svg{
  width:18px;
  height:18px;
  fill:#FFFFFF !important;
  stroke:none !important;
}
.why-krishna-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.why-krishna-section .section-head h2,
.why-krishna-section .section-head p{
  color:#1A1A1A !important;
}
.why-krishna-section .section-head .eyebrow{
  color:#824a1b !important;
}
.why-krishna-section .ticket-grid{
  background:#824a1b !important;
  border:1px solid #824a1b !important;
  border-radius:16px;
}
.why-krishna-section .ticket{
  background:#824a1b !important;
  color:#F7F5F0 !important;
}
.why-krishna-section .ticket-num,
.why-krishna-section .ticket h3,
.why-krishna-section .ticket p{
  color:#F7F5F0 !important;
}
.why-krishna-section .ticket::before{
  background:#D8CBAF;
}
.why-krishna-section .ticket:hover{
  background:#6F3F17 !important;
}
@media (max-width:640px){
  .whatsapp-float,
  .whatsapp-fallback{ right:18px; bottom:18px; width:52px; height:52px; }
  .whatsapp-float svg,
  .whatsapp-fallback svg{ width:26px; height:26px; }
}

/* Page-specific landing artwork stays scoped to each page hero. */
.about-landing-page .page-header{ background-image:url("assets/Pages_Landing/about%20us.png") !important; }
.contact-page .page-header{ background-image:url("assets/Pages_Landing/contect.jpeg") !important; }
.product-page .page-header{ background-image:url("assets/Pages_Landing/product.png") !important; }
.gallery-page .page-header{ background-image:url("assets/Pages_Landing/gallery.jpeg") !important; }
.policy-page .page-header{ background-image:url("assets/Pages_Landing/policies.png") !important; }
.kyc-page .page-header{ background-image:url("assets/Pages_Landing/kyc.jpeg") !important; }
.faq-page .page-header{ background-image:url("assets/Pages_Landing/faqs.png") !important; }
.about-landing-page .page-header,
.contact-page .page-header,
.product-page .page-header,
.gallery-page .page-header,
.policy-page .page-header,
.kyc-page .page-header,
.faq-page .page-header{
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.contact-page .page-header{
  min-height:0;
  aspect-ratio:1376 / 768;
  display:flex;
  align-items:center;
}
@media (max-width:640px){
  .contact-page .page-header{
    min-height:520px;
    aspect-ratio:auto;
  }
}
.kyc-page .page-header{ background-position:center 35% !important; }
.kyc-page .page-header{
  min-height:0;
  aspect-ratio:1376 / 768;
  display:flex;
  align-items:center;
}
.kyc-page .page-header .container{ width:100%; }
@media (max-width:640px){
  .kyc-page .page-header{
    min-height:520px;
    aspect-ratio:auto;
  }
}
.faq-page .page-header{
  min-height:0;
  aspect-ratio:1376 / 768;
  display:flex;
  align-items:center;
}
.faq-page .page-header .container{ width:100%; }
@media (max-width:640px){
  .faq-page .page-header{
    min-height:520px;
    aspect-ratio:auto;
  }
}
.product-page .page-header{
  min-height:0;
  aspect-ratio:1376 / 768;
  display:flex;
  align-items:center;
}
@media (max-width:640px){
  .product-page .page-header{
    min-height:520px;
    aspect-ratio:auto;
  }
}
.gallery-page .page-header{
  min-height:0;
  aspect-ratio:1376 / 768;
  display:flex;
  align-items:center;
}
@media (max-width:640px){
  .gallery-page .page-header{
    min-height:520px;
    aspect-ratio:auto;
  }
}
.policy-page .page-header{
  min-height:0;
  aspect-ratio:1376 / 768;
  display:flex;
  align-items:center;
}
@media (max-width:640px){
  .policy-page .page-header{
    min-height:520px;
    aspect-ratio:auto;
  }
}
.kyc-page .page-header h1,
.kyc-page .page-header .lede{
  color:#1A1A1A !important;
}
.contact-page .page-header h1{
  color:#824a1b !important;
}
.contact-page .page-header .lede{
  color:#1A1A1A !important;
}

/* Footer social icons use the cream-on-brown hover treatment everywhere. */
.site-footer .footer-social a:hover,
.site-footer .social-links a:hover{
  background:#F7F5F0 !important;
  border-color:#F7F5F0 !important;
  color:#824a1b !important;
}
.site-footer .footer-social a:hover::before,
.site-footer .footer-social a:hover::after,
.site-footer .social-links a:hover::before,
.site-footer .social-links a:hover::after{
  color:#824a1b !important;
  border-color:#824a1b !important;
}
.site-footer .footer-social a:hover svg,
.site-footer .social-links a:hover svg{
  color:#824a1b !important;
  fill:#824a1b !important;
  stroke:#824a1b !important;
}

/* FAQ category controls: equal-height luxury navigation buttons. */
.faq-page .faq-categories{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:20px;
  flex-wrap:wrap;
}
.faq-page .faq-category{
  display:flex;
  align-items:center;
  justify-content:center;
  width:220px;
  height:64px;
  min-width:220px;
  min-height:64px;
  padding:12px 24px;
  border:1px solid #824a1b !important;
  border-radius:2px;
  background:#824a1b !important;
  color:#FFFFFF !important;
  font-family:var(--f-body);
  font-size:15px;
  font-weight:600;
  line-height:1.3;
  text-align:center;
  transition:background-color .3s ease, border-color .3s ease, color .3s ease;
}
.faq-page .faq-category:hover,
.faq-page .faq-category:focus-visible{
  border-color:#824a1b !important;
  background:transparent !important;
  color:#824a1b !important;
}
@media (max-width:640px){
  .faq-page .faq-categories{ gap:20px; }
  .faq-page .faq-category{
    width:min(100%, 320px);
    min-width:0;
  }
}

/* Size-chart shape selector states. */
.size-chart-page .shape-pill{
  background:#F7F5F0 !important;
  border:1px solid #D8CBAF !important;
  border-radius:2px;
  color:#1A1A1A !important;
  cursor:pointer;
  transition:background-color .3s ease, border-color .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease;
}
.size-chart-page .shape-pill span{ color:inherit !important; }
.size-chart-page .shape-pill.active{
  background:#824a1b !important;
  border-color:#824a1b !important;
  color:#FFFFFF !important;
  box-shadow:0 10px 24px -18px rgba(0,0,0,.5);
}
.size-chart-page .shape-pill:hover:not(.active),
.size-chart-page .shape-pill:focus-visible:not(.active){
  background:#EFE8DA !important;
  border-color:#824a1b !important;
  color:#1A1A1A !important;
  transform:translateY(-2px);
  box-shadow:0 10px 22px -20px rgba(130,74,27,.35);
}
.size-chart-page .shape-pill.active:hover,
.size-chart-page .shape-pill.active:focus-visible{
  background:#824a1b !important;
  border-color:#824a1b !important;
  color:#FFFFFF !important;
}
body.size-chart-page .shape-gallery button.shape-pill,
body.size-chart-page .shape-gallery button.shape-pill span{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
body.size-chart-page .shape-gallery button.shape-pill.active,
body.size-chart-page .shape-gallery button.shape-pill.active span{
  background:#824a1b !important;
  color:#FFFFFF !important;
}

/* Keep the shape cards brown while the surrounding section stays cream. */
.shape-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.shape-section .section-head h2{
  color:#1A1A1A !important;
}
.shape-section .shape-strip{
  background:#824a1b !important;
  border:1px solid #D8CBAF !important;
  gap:1px;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.18);
}
.shape-section .shape-cell{
  background:#824a1b !important;
  color:#F7F5F0 !important;
}
.shape-section .shape-cell span{
  color:#F7F5F0 !important;
}
.shape-section .shape-cell img{
  mix-blend-mode:normal !important;
}
.shape-section .shape-cell:hover{
  background:#6F3F17 !important;
}

/* Normalize the shape thumbnails so every diamond reads with equal clarity. */
.size-chart-page .shape-pill img{
  width:54px;
  height:54px;
  object-fit:contain;
  opacity:1;
  filter:brightness(1.14) contrast(1.16) saturate(1.08) drop-shadow(0 4px 7px rgba(26,26,26,.22));
}
.size-chart-page .shape-pill[data-shape="radiant"] img,
.size-chart-page .shape-pill[data-shape="marquise"] img,
.size-chart-page .shape-pill[data-shape="oval"] img{
  transform:scale(1.08);
}
.size-chart-page .shape-pill[data-shape="emerald"] img,
.size-chart-page .shape-pill[data-shape="heart"] img{
  transform:scale(1.04);
}
@media (max-width:900px){
  .size-chart-page .shape-pill img{
    width:48px;
    height:48px;
  }
}

/* Make every shape thumbnail prominent in the size-chart selector. */
.size-chart-page .shape-pill{
  width:108px;
  min-height:132px;
  padding:12px 8px 14px;
  gap:10px;
}
.size-chart-page .shape-pill img{
  width:78px;
  height:78px;
}
@media (max-width:900px){
  .size-chart-page .shape-pill{
    width:94px;
    min-height:118px;
  }
  .size-chart-page .shape-pill img{
    width:66px;
    height:66px;
  }
}

/* About rules: light section with brown, readable cards. */
.about-rules-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.about-rules-section .section-head h2,
.about-rules-section .section-head .eyebrow{
  color:#824a1b !important;
}
.about-rules-section .ticket{
  background:#824a1b !important;
  border:1px solid #824a1b !important;
  border-radius:16px;
  color:#F7F5F0 !important;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.18);
}
.about-rules-section .ticket::before{
  background:#D8CBAF;
}
.about-rules-section .ticket-num,
.about-rules-section .ticket h3,
.about-rules-section .ticket p{
  color:#F7F5F0 !important;
}
.about-rules-section .ticket:hover{
  background:#6F3F17 !important;
}

/* About values: sand background with brown cards. */
.about-values-section{
  background:#D8CBAF !important;
  color:#1A1A1A !important;
}
.about-values-section .section-head h2,
.about-values-section .section-head .eyebrow{
  color:#824a1b !important;
}
.about-values-section .ticket-grid{
  background:#D8CBAF !important;
  border-color:#D8CBAF !important;
  gap:clamp(10px, 1.5vw, 16px);
}
.about-values-section .ticket{
  background:#824a1b !important;
  border:1px solid #824a1b !important;
  border-radius:16px;
  color:#F7F5F0 !important;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.18);
}
.about-values-section .ticket::before{
  background:#D8CBAF;
}
.about-values-section .ticket-num,
.about-values-section .ticket h3,
.about-values-section .ticket p{
  color:#F7F5F0 !important;
}
.about-values-section .ticket:hover{
  background:#6F3F17 !important;
}

/* Give the About journey timeline a soft card finish. */
.about-page #journey .process-grid{
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.16);
}
.about-page .cta-banner{
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.14);
}
.product-cta-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.product-cta-section .cta-banner{
  background:#824a1b !important;
  border:1px solid #824a1b !important;
  border-radius:16px;
  color:#F7F5F0 !important;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.14);
}
.product-cta-section .cta-banner .eyebrow,
.product-cta-section .cta-banner h2,
.product-cta-section .cta-banner p{
  color:#F7F5F0 !important;
}
.product-cta-section .cta-banner .btn{
  background:#F7F5F0 !important;
  border-color:#F7F5F0 !important;
  color:#824a1b !important;
}
.product-cta-section .cta-banner .btn:hover{
  background:transparent !important;
  border-color:#F7F5F0 !important;
  color:#F7F5F0 !important;
}
.gallery-cta-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.gallery-cta-section .cta-banner{
  background:#824a1b !important;
  border:1px solid #824a1b !important;
  border-radius:16px;
  color:#F7F5F0 !important;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.14);
}
.gallery-cta-section .cta-banner .eyebrow,
.gallery-cta-section .cta-banner h2,
.gallery-cta-section .cta-banner p{
  color:#F7F5F0 !important;
}
.gallery-cta-section .cta-banner .btn{
  background:#F7F5F0 !important;
  border-color:#F7F5F0 !important;
  color:#824a1b !important;
}
.gallery-cta-section .cta-banner .btn:hover{
  background:transparent !important;
  border-color:#F7F5F0 !important;
  color:#F7F5F0 !important;
}
.product-page .grading-grid{
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.14);
}
.product-page .process-grid{
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.14);
}
.product-stock-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.product-stock-section .section-head h2,
.product-stock-section .section-head .eyebrow,
.product-stock-section .section-head .lede{
  color:#1A1A1A !important;
}
.product-stock-section .stock-table-shell{
  background:#824a1b !important;
  border:1px solid #824a1b !important;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 18px 38px rgba(26,26,26,.14);
}
.product-stock-section .data-table{
  background:#824a1b !important;
}
.product-stock-section .data-table th,
.product-stock-section .data-table td,
.product-stock-section .data-table td:first-child,
.product-stock-section .data-table th:first-child{
  background:#824a1b !important;
  color:#F7F5F0 !important;
  border-color:rgba(247,245,240,.22) !important;
}
.product-stock-section .data-table .no{
  color:#D8CBAF !important;
}
.shape-offer-section{
  background:#F7F5F0 !important;
  color:#1A1A1A !important;
}
.shape-offer-section .section-head h2,
.shape-offer-section .section-head .eyebrow{
  color:#1A1A1A !important;
}
.shape-offer-section .shape-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  background:transparent !important;
  border:0 !important;
}
.shape-offer-section .shape-cell{
  min-height:150px;
  padding:26px 16px;
  border:1px solid rgba(216,203,175,.34);
  border-radius:16px;
  background:#824a1b !important;
  color:#F7F5F0 !important;
  box-shadow:0 14px 30px rgba(26,26,26,.12);
  transition:transform .25s ease, background .25s ease, box-shadow .25s ease;
}
.shape-offer-section .shape-cell svg{
  width:52px;
  height:52px;
}
.shape-offer-section .shape-cell svg *{
  stroke:#F7F5F0 !important;
}
.shape-offer-section .shape-cell span{
  color:#F7F5F0 !important;
}
.shape-offer-section .shape-cell:hover{
  background:#6F3F17 !important;
  transform:translateY(-4px);
  box-shadow:0 20px 36px rgba(26,26,26,.18);
}
.shape-offer-section .shape-cell:last-child{
  grid-column:2;
}
@media (max-width:560px){
  .shape-offer-section .shape-strip{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .shape-offer-section .shape-cell:last-child{ grid-column:auto; }
}

/* Home diamond showcase */
.diamond-showcase-section{
  background:#F7F5F0 !important;
  color:#1A1A1A;
}
.diamond-showcase-head{
  max-width:720px;
  margin:0 auto 34px;
  text-align:center;
}
.diamond-showcase-head h2{ color:#824a1b !important; }
.diamond-showcase-head .lede{ margin:12px auto 0; max-width:590px; }
.diamond-showcase-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:18px;
}
.diamond-showcase-card{
  margin:0;
  overflow:hidden;
  aspect-ratio:1 / 1;
  border:1px solid #D8CBAF;
  border-radius:18px;
  background:#824a1b;
  box-shadow:0 14px 28px rgba(26,26,26,.10);
  transition:transform .25s ease, box-shadow .25s ease;
}
.diamond-showcase-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .35s ease;
}
.diamond-showcase-card.pear-showcase-card img{
  object-fit:contain;
  object-position:center;
}
.diamond-showcase-card:hover{
  transform:translateY(-5px);
  box-shadow:0 20px 34px rgba(26,26,26,.16);
}
.diamond-showcase-card:hover img{ transform:scale(1.035); }
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
@media (max-width:1100px){
  .diamond-showcase-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
@media (max-width:640px){
  .diamond-showcase-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; }
  .diamond-showcase-card{ border-radius:14px; }
}

/* Keep all Pure Alliances cards in one horizontal row. */
.alliances-showcase .grid-3{
  display:flex;
  flex-wrap:nowrap;
  gap:16px;
  overflow-x:auto;
  padding-bottom:10px;
  scrollbar-width:thin;
  scrollbar-color:#824a1b #F7F5F0;
}
.alliances-showcase .grid-3 > .ticket{
  flex:1 0 calc((100% - 64px) / 5);
  min-width:220px;
}

.alliances-page .alliances-hero .breadcrumb,
.alliances-page .alliances-hero .breadcrumb a,
.alliances-page .alliances-hero .alliances-hero-copy .eyebrow,
.alliances-page .alliances-hero .alliances-hero-copy h1,
.alliances-page .alliances-hero .alliances-hero-copy .lede{
  color:#FFFFFF !important;
}

/* Keep the outlined FAQ button label brown while hovered. */
body.faq-page .faq-categories .faq-category:hover,
body.faq-page .faq-categories .faq-category:focus-visible{
  color:#824a1b !important;
  -webkit-text-fill-color:#824a1b !important;
}

/* Keep video playback clean without the floating speaker control. */
.video-volume-toggle{ display:none !important; }

/* Mobile layout hardening for compact screens. */
@media (max-width:700px){
  html,
  body{ min-width:0; overflow-x:hidden; }
  .site-nav .container{
    height:76px;
    padding-left:16px;
    padding-right:16px;
  }
  .site-nav .brand{ min-width:0; padding:4px 0; }
  .site-nav .brand-mark{ width:min(112px, 38vw); }
  .nav-links{
    top:76px;
    inset:76px 0 0;
    width:100%;
    height:calc(100dvh - 76px);
    padding:24px 20px 40px;
    gap:18px;
    overflow-y:auto;
  }
  .nav-toggle{ padding:12px; margin-right:-8px; }
  .page-header{ padding:100px 0 52px; }
  .page-header h1{ font-size:clamp(38px, 11vw, 58px); line-height:1; }
  .page-header .lede,
  .lede{ font-size:16px; line-height:1.55; }
  .section-head{ margin-bottom:32px; }
  .section-head h2,
  .size-chart-head h2{ font-size:clamp(28px, 8vw, 40px); line-height:1.08; }
  .hero-actions{ width:100%; flex-direction:column; align-items:stretch; }
  .hero-actions .btn,
  .kyc-submit{ width:100%; justify-content:center; white-space:normal; text-align:center; }
  .shape-gallery{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    margin-bottom:24px;
  }
  .size-chart-page .shape-pill{
    width:100%;
    min-height:108px;
    padding:10px 6px;
  }
  .size-chart-page .shape-pill img{ width:60px; height:60px; }
  .size-chart-wrap{ padding-top:8px; overflow:hidden; }
  .size-table-grid{
    display:block;
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:4px;
  }
  .size-table{
    min-width:0;
    table-layout:fixed;
  }
  .size-table th,
  .size-table td{
    padding:9px 6px;
    font-size:11px;
    line-height:1.35;
    overflow-wrap:anywhere;
  }
  .contact-form-card,
  .contact-card{ padding:24px 18px; }
  .form-grid{ gap:16px; }
  .video-feature{ padding:72px 0; }
  .video-frame{ border-radius:18px; }
}

@media (max-width:420px){
  .container{ padding-left:16px; padding-right:16px; }
  .site-nav .brand-mark{ width:100px; }
  .size-chart-page .shape-pill span{ font-size:12px; }
}

/* Keep each landing artwork at its own natural ratio so its text is never cropped. */
.page-header.landing-art-only{
  min-height:0 !important;
  height:auto;
  padding:0 !important;
  display:block;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.page-header.landing-art-only .bg-orb{ display:none; }
.about-landing-page .page-header.landing-art-only{ aspect-ratio:1983 / 793; }
.contact-page .page-header.landing-art-only{ aspect-ratio:1600 / 600; }
.product-page .page-header.landing-art-only{ aspect-ratio:1536 / 1024; }
.gallery-page .page-header.landing-art-only{ aspect-ratio:1600 / 800; }
.policy-page .page-header.landing-art-only{ aspect-ratio:2172 / 724; }
.kyc-page .page-header.landing-art-only{ aspect-ratio:1600 / 800; }
.faq-page .page-header.landing-art-only{ aspect-ratio:2002 / 786; }
.alliances-page .alliances-hero-shell{
  min-height:0 !important;
  aspect-ratio:1983 / 793;
}
.alliances-page .alliances-hero-shell::after{ display:none; }
.alliances-page .alliances-hero-shell img{ filter:none; object-position:center; }

/* Soft sunlight treatment for the site header. */
.site-nav{
  isolation:isolate;
  background:
    radial-gradient(ellipse 34% 150% at 82% 0%, rgba(255,226,157,.34), transparent 72%),
    linear-gradient(116deg, transparent 42%, rgba(255,231,177,.15) 52%, transparent 63%),
    #824a1b !important;
}
.site-nav::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(116deg, transparent 45%, rgba(255,239,198,.18) 52%, transparent 61%);
  filter:blur(12px);
  opacity:.72;
  animation:nav-sunlight-drift 10s ease-in-out infinite alternate;
}
.site-nav .container{ z-index:1; }
@keyframes nav-sunlight-drift{
  from{ transform:translateX(-2%); opacity:.55; }
  to{ transform:translateX(2%); opacity:.82; }
}
@media (prefers-reduced-motion:reduce){
  .site-nav::before{ animation:none; }
}
.alliances-page .alliances-hero-copy{ display:none; }

/* Warm sunlight treatment for the process section. */
.process-showcase{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(ellipse 42% 76% at 86% 4%, rgba(255,220,153,.28) 0%, rgba(255,220,153,.12) 30%, transparent 72%),
    linear-gradient(122deg, transparent 0 48%, rgba(255,211,139,.10) 57%, transparent 70%),
    #824a1b !important;
}
.process-showcase::before{
  content:"";
  position:absolute;
  inset:-24% -12%;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(124deg, transparent 0 45%, rgba(255,226,166,.18) 51%, transparent 59%),
    linear-gradient(108deg, transparent 0 64%, rgba(255,239,190,.12) 70%, transparent 77%);
  filter:blur(22px);
  opacity:.9;
  transform:rotate(-2deg);
}
.process-showcase > .container{
  position:relative;
  z-index:1;
}

/* Carry the warm sunlight treatment through the footer. */
.site-footer{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(ellipse 48% 120% at 90% 0%, rgba(255,226,157,.28), transparent 70%),
    linear-gradient(118deg, transparent 42%, rgba(255,231,177,.12) 54%, transparent 66%),
    #824a1b !important;
}
.site-footer::before{
  content:"";
  position:absolute;
  inset:-24% -12%;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(124deg, transparent 0 46%, rgba(255,226,166,.16) 52%, transparent 60%),
    linear-gradient(108deg, transparent 0 66%, rgba(255,239,190,.10) 72%, transparent 79%);
  filter:blur(22px);
  opacity:.82;
  transform:rotate(-2deg);
  animation:footer-sunlight-drift 14s ease-in-out infinite alternate;
}
.site-footer > .container{
  position:relative;
  z-index:1;
}
@keyframes footer-sunlight-drift{
  from{ transform:translateX(-2%) rotate(-2deg); opacity:.58; }
  to{ transform:translateX(2%) rotate(-2deg); opacity:.86; }
}
@media (prefers-reduced-motion:reduce){
  .site-footer::before{ animation:none; }
}

/* Keep the mobile navigation full-width and readable when a dropdown opens. */
@media (max-width:920px){
  .site-nav .nav-links{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    padding:18px 0 36px !important;
    overflow-y:auto !important;
  }
  .site-nav .nav-links > li,
  .site-nav .nav-links .nav-dropdown{
    width:100% !important;
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .site-nav .nav-links > li:last-child{
    position:static !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
  }
  .site-nav .nav-links > li > a,
  .site-nav .nav-links .dropdown-trigger{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    width:100% !important;
    padding:16px 22px !important;
    text-align:left;
    color:#fff !important;
    -webkit-text-fill-color:#fff;
    font-size:15px !important;
    line-height:1.35;
    letter-spacing:.08em;
    background:transparent !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel{
    display:none !important;
    position:static !important;
    transform:none !important;
    width:100% !important;
    max-height:none !important;
    margin:0 !important;
    padding:4px 0 8px !important;
    background:#6f3f16 !important;
    border:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    overflow:visible !important;
  }
  .site-nav .nav-links .nav-dropdown.open > .dropdown-panel,
  .site-nav .nav-links .nav-dropdown.is-mobile-open > .dropdown-panel{
    display:block !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel[hidden]{ display:none !important; }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a,
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a:hover,
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a.dropdown-highlight{
    display:flex !important;
    align-items:center;
    width:100% !important;
    min-height:auto;
    padding:12px 34px !important;
    font-family:var(--f-body) !important;
    font-size:14px !important;
    line-height:1.4;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#fff !important;
    -webkit-text-fill-color:#fff;
    background:transparent !important;
    border:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    text-indent:0 !important;
    transform:none !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a:hover{
    background:rgba(255,255,255,.08) !important;
  }
}

@media (max-width:700px){
  .site-nav .nav-links{
    top:76px !important;
    inset:76px 0 0 !important;
    height:calc(100dvh - 76px) !important;
  }
}

/* Phone gets its own compact drawer so it does not inherit desktop spacing. */
@media (max-width:640px){
  .site-nav{
    position:sticky !important;
    top:0 !important;
    z-index:999 !important;
    width:100% !important;
    background:
      linear-gradient(112deg, rgba(255,232,182,.08) 0 28%, transparent 46%),
      #824a1b !important;
    border-bottom:1px solid rgba(255,255,255,.16) !important;
  }
  .site-nav .container{
    position:relative !important;
    height:72px !important;
    min-height:72px !important;
    width:100% !important;
    padding:0 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
  }
  .site-nav .brand{
    min-width:0 !important;
    min-height:0 !important;
    padding:0 !important;
  }
  .site-nav .brand-mark{
    width:104px !important;
    height:auto !important;
  }
  .site-nav .nav-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:42px !important;
    height:42px !important;
    padding:0 !important;
    margin:0 !important;
    background:rgba(255,255,255,.08) !important;
    border:0 !important;
    border-radius:0 !important;
  }
  .site-nav .nav-toggle span,
  .site-nav .nav-toggle span::before,
  .site-nav .nav-toggle span::after{
    width:22px !important;
    height:1px !important;
    background:#fff !important;
  }
  .site-nav .nav-links{
    position:fixed !important;
    top:72px !important;
    right:0 !important;
    bottom:0 !important;
    left:0 !important;
    inset:72px 0 0 0 !important;
    width:100% !important;
    height:calc(100dvh - 72px) !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:0 !important;
    padding:10px 0 28px !important;
    list-style:none !important;
    background:#824a1b !important;
    transform:translateX(100%) !important;
    transition:transform .28s ease !important;
    overflow-y:auto !important;
    z-index:998 !important;
  }
  .site-nav .nav-links.open{
    transform:translateX(0) !important;
  }
  .site-nav .nav-links > li{
    position:static !important;
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    border-bottom:1px solid rgba(255,255,255,.12) !important;
  }
  .site-nav .nav-links > li > a,
  .site-nav .nav-links .dropdown-trigger{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 24px !important;
    font-family:var(--f-body) !important;
    font-size:14px !important;
    line-height:1.2 !important;
    letter-spacing:.08em !important;
    text-align:left !important;
    text-transform:uppercase !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }
  .site-nav .nav-links a.active::after{
    display:none !important;
  }
  .site-nav .nav-links .nav-cta,
  .site-nav .nav-links .nav-cta:hover{
    padding:0 24px !important;
    border:0 !important;
    background:transparent !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel{
    position:static !important;
    display:none !important;
    width:100% !important;
    max-height:none !important;
    margin:0 !important;
    padding:6px 0 !important;
    background:#6d3d14 !important;
    border:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
    overflow:visible !important;
  }
  .site-nav .nav-links .nav-dropdown.open > .dropdown-panel,
  .site-nav .nav-links .nav-dropdown.is-mobile-open > .dropdown-panel{
    display:block !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel[hidden]{
    display:none !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a,
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a:hover,
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a.dropdown-highlight{
    display:flex !important;
    align-items:center !important;
    width:100% !important;
    min-height:42px !important;
    padding:0 38px !important;
    font-family:var(--f-body) !important;
    font-size:13px !important;
    line-height:1.25 !important;
    letter-spacing:.06em !important;
    text-align:left !important;
    text-transform:uppercase !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:transparent !important;
    border:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    text-indent:0 !important;
    transform:none !important;
  }
  .site-nav .nav-links .nav-dropdown > .dropdown-panel > a:hover{
    background:rgba(255,255,255,.08) !important;
  }
}









/* Phone drawer: keep the page visible behind a clean, white side panel. */
@media (max-width:640px){
  body.mobile-menu-open{ overflow:hidden !important; }

  .site-nav.mobile-drawer-open{
    position:fixed !important;
    inset:0 !important;
    width:100% !important;
    height:100dvh !important;
    background:rgba(17,18,20,.78) !important;
    border:0 !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    cursor:pointer;
  }
  .site-nav.mobile-drawer-open::before{ display:none !important; }

  .site-nav.mobile-drawer-open .container{
    position:absolute !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:auto !important;
    width:min(84vw, 360px) !important;
    max-width:none !important;
    height:100dvh !important;
    min-height:100dvh !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    overflow-y:auto !important;
    background:#fff !important;
    box-shadow:-16px 0 36px rgba(0,0,0,.18) !important;
    cursor:default;
  }
  .site-nav.mobile-drawer-open .brand{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    height:112px !important;
    min-height:112px !important;
    padding:20px 22px !important;
    border-bottom:1px solid #ece9e3 !important;
  }
  .site-nav.mobile-drawer-open .brand-mark{
    width:124px !important;
    max-width:54vw !important;
    height:auto !important;
    filter:brightness(0) saturate(100%) !important;
  }
  .site-nav.mobile-drawer-open .nav-toggle{
    position:absolute !important;
    top:32px !important;
    right:18px !important;
    z-index:3 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:42px !important;
    height:42px !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:0 !important;
    outline:none !important;
    box-shadow:none !important;
    appearance:none !important;
    cursor:pointer;
  }
  .site-nav.mobile-drawer-open .nav-toggle:focus,
  .site-nav.mobile-drawer-open .nav-toggle:focus-visible,
  .site-nav.mobile-drawer-open .nav-toggle:hover{
    background:transparent !important;
    border:0 !important;
    outline:none !important;
    box-shadow:none !important;
  }
  .site-nav.mobile-drawer-open .nav-toggle span,
  .site-nav.mobile-drawer-open .nav-toggle span::before,
  .site-nav.mobile-drawer-open .nav-toggle span::after{
    width:22px !important;
    height:1px !important;
    background:#1a1a1a !important;
  }
  .site-nav.mobile-drawer-open .nav-toggle span{ background:transparent !important; }
  .site-nav.mobile-drawer-open .nav-toggle span::before,
  .site-nav.mobile-drawer-open .nav-toggle span::after{
    position:absolute !important;
    top:20px !important;
    left:10px !important;
    margin:0 !important;
  }
  .site-nav.mobile-drawer-open .nav-toggle span::before{ transform:rotate(45deg); }
  .site-nav.mobile-drawer-open .nav-toggle span::after{ transform:rotate(-45deg); }

  .site-nav.mobile-drawer-open .nav-links{
    position:static !important;
    inset:auto !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 22px 28px !important;
    background:#fff !important;
    transform:none !important;
    transition:none !important;
    overflow:visible !important;
  }
  .site-nav.mobile-drawer-open .nav-links > li{
    width:100% !important;
    border-bottom:1px solid #ece9e3 !important;
  }
  .site-nav.mobile-drawer-open .nav-links > li > a,
  .site-nav.mobile-drawer-open .nav-links .dropdown-trigger{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
    min-height:52px !important;
    padding:0 !important;
    font-family:var(--f-body) !important;
    font-size:16px !important;
    font-weight:500 !important;
    line-height:1.2 !important;
    letter-spacing:0 !important;
    text-align:left !important;
    text-transform:none !important;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }
  .site-nav.mobile-drawer-open .nav-links > li:first-child > a{ color:#9a420e !important; }
  .site-nav.mobile-drawer-open .nav-links a.active::after{ display:none !important; }
  .site-nav.mobile-drawer-open .nav-links .nav-cta,
  .site-nav.mobile-drawer-open .nav-links .nav-cta:hover{
    display:flex !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#111 !important;
    -webkit-text-fill-color:#111 !important;
  }
  .site-nav.mobile-drawer-open .nav-links .chevron{
    width:12px !important;
    height:12px !important;
    color:#111 !important;
    flex:0 0 auto;
  }
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown > .dropdown-panel{
    position:static !important;
    display:none !important;
    width:100% !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    background:#fff !important;
    border:0 !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
    overflow:visible !important;
  }
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown.open > .dropdown-panel,
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown.is-mobile-open > .dropdown-panel{
    display:block !important;
  }
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown > .dropdown-panel[hidden]{ display:none !important; }
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown > .dropdown-panel > a,
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown > .dropdown-panel > a:hover{
    display:flex !important;
    align-items:center !important;
    width:100% !important;
    min-height:44px !important;
    padding:0 16px !important;
    font-family:var(--f-body) !important;
    font-size:15px !important;
    line-height:1.3 !important;
    letter-spacing:0 !important;
    text-align:left !important;
    text-transform:none !important;
    color:#222 !important;
    -webkit-text-fill-color:#222 !important;
    background:#faf9f6 !important;
    border-top:1px solid #ece9e3 !important;
    border-bottom:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }
  .site-nav.mobile-drawer-open .nav-links .nav-dropdown > .dropdown-panel > a:hover{
    background:#f1eee6 !important;
    color:#9a420e !important;
  }
}

/* Load the KYC artwork as a real image so the form never gets hidden by a missing background asset. */
.kyc-page .page-header.landing-art-only{
  position:relative;
  overflow:hidden;
  background:#824a1b !important;
}
.kyc-page .page-header.landing-art-only .kyc-landing-art{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
@media (max-width:640px){
  .kyc-page .page-header.landing-art-only .kyc-landing-art{
    height:auto;
    min-height:520px;
    object-fit:cover;
  }
}

/* Keep certification cards readable on narrow screens instead of squeezing three into one row. */
@media (max-width:700px){
  .alliances-page .cert-grid{
    grid-template-columns:1fr !important;
    gap:16px;
    width:100%;
  }
  .alliances-page .cert-grid > .ticket,
  .alliances-page .cert-grid > .ticket:nth-child(4),
  .alliances-page .cert-grid > .ticket:nth-child(5){
    grid-column:1 !important;
    width:100%;
    min-width:0;
    min-height:0;
  }
  .alliances-page .cert-grid .ticket h3,
  .alliances-page .cert-grid .ticket p{
    max-width:34ch;
  }
}

