/* Home — white and ivory, navy and deep-gold accents */
.page-home { --page-bg: var(--paper); --accent: var(--gold-deep); --dim: var(--ink-2); }

.home-center { text-align: center; }
.h2--home { font-weight: 500; font-size: clamp(28px, 3.4vw, 40px); line-height: 1.16; }

/* Text link used across Home ("READ THE GUIDE", "EXPLORE GOLD ›") */
.home-link {
  display: inline-flex; align-items: center; min-height: 44px;
  font-size: 12px; font-weight: 600; letter-spacing: .14em; color: var(--ink);
  border-bottom: 1px solid rgba(27,27,27,.4); transition: color 180ms ease, border-color 180ms ease;
}
.home-link:hover { color: var(--gold-deep); border-bottom-color: var(--gold); }
.home-link--strong { border-bottom-color: var(--ink); }

/* Buttons specific to Home */
.btn--ghost { background: transparent; border-color: rgba(255,255,255,.75); padding: 16px 44px; min-height: 0; font-size: 12px; letter-spacing: .16em; }
.btn--ghost:hover { background: #fff; border-color: #fff; color: var(--navy); }
.btn--gold-outline { background: #fff; border-color: var(--gold); color: var(--ink); padding: 15px 36px; min-height: 0; font-size: 12px; letter-spacing: .16em; }
.btn--gold-outline:hover { background: var(--gold); color: #fff; }

/* Hero: full-screen video with copy bottom-left ------------------------- */
.home-hero {
  position: relative; overflow: hidden; background: #F3EFE6;
  height: calc(100svh - var(--header-h)); min-height: 420px;
}
.home-hero video { background: #F3EFE6; }
.home-hero__scrim {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(to top, rgba(10,10,26,.78) 0%, rgba(10,10,26,.55) 55%, rgba(10,10,26,.14) 85%, rgba(10,10,26,0) 100%);
}
.home-hero__copy {
  position: absolute; left: 0; bottom: 0; max-width: 600px;
  padding: var(--s6) var(--sec-x) clamp(56px, 9vw, 96px); color: #fff;
}
.home-hero .kicker { color: #fff; margin-bottom: var(--s3); }
.home-hero__title { max-width: 17ch; }
.home-hero__lead {
  font-family: var(--serif); font-size: clamp(17px, 1.7vw, 21px); line-height: 1.6;
  color: rgba(255,255,255,.92); margin-top: var(--s3); max-width: 46ch;
}
.home-hero__btn { margin-top: var(--s5); }
.home-hero .scroll-cue { --cue: #fff; }

/* Numbers strip --------------------------------------------------------- */
.home-proof { background: var(--navy); color: #fff; padding: var(--s5) var(--sec-x); }
.home-proof__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr)); gap: var(--s4) var(--s5); }
.home-proof__num { font-family: var(--serif); font-size: 26px; color: var(--gold); }
.home-proof__label { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: rgba(255,255,255,.85); margin-top: var(--s1); }

/* Cards (bridal + catalogue) -------------------------------------------- */
.home-card { display: grid; grid-template-rows: auto auto 1fr auto; height: 100%; transition: transform .35s ease; }
@media (hover: hover) { .home-card:hover { transform: translateY(-4px); } }
.home-card--center { justify-items: center; text-align: center; }
.home-card__img { display: block; width: 100%; max-width: 320px; aspect-ratio: 1/1; --frame-bg: #fff; }
.home-card__img--wide { max-width: none; aspect-ratio: 4/3; border: 1px solid var(--rule); }
.home-card__title { font-family: var(--serif); font-weight: 500; font-size: 22px; line-height: 1.25; margin-top: var(--s4); }
.home-card__body { font-size: 15px; line-height: 1.7; color: var(--ink-3); max-width: 44ch; margin: var(--s2) 0 var(--s3); }
.home-card--center .home-card__body { max-width: 34ch; line-height: 1.65; }

.home-collections { background: var(--paper-2); }
.home-collections .kicker { margin-bottom: var(--s2); }
.home-collections__title { margin: 0 auto var(--s6); max-width: 18ch; }
.home-collections__grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
  gap: var(--s6) clamp(20px, 3vw, 48px); align-items: start;
}

/* Emerald --------------------------------------------------------------- */
.home-emerald { text-align: center; border-top: 1px solid var(--rule); }
.home-emerald .kicker { margin-bottom: var(--s3); }
.home-emerald__title { margin: 0 auto; max-width: 20ch; }
.home-emerald__text { font-size: 15px; line-height: 1.75; color: var(--ink-2); max-width: 52ch; margin: var(--s4) auto 0; }
.home-emerald__btn { margin-top: var(--s5); }

/* Rare jewels: full-width video with a white panel ---------------------- */
.home-rare { position: relative; overflow: hidden; background: #fff; min-height: min(78vh, 720px); }
.home-rare video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; background: #fff; }
.home-rare__wrap { position: relative; display: flex; align-items: center; min-height: min(78vh, 720px); padding: var(--sec-y) var(--sec-x); }
.home-rare__panel {
  background: rgba(255,255,255,.94); max-width: 430px; padding: clamp(24px, 4vw, 44px);
  border: 1px solid rgba(201,162,75,.35);
}
.home-rare .kicker { margin-bottom: var(--s2); }
.home-rare__text { font-size: 15px; line-height: 1.75; color: var(--ink-2); margin: var(--s3) 0; max-width: 42ch; }
@media (max-width: 600px) {
  .home-rare__wrap { align-items: flex-end; padding-top: 42vh; }
}

/* Catalogue: 3D ring card + gold card ----------------------------------- */
.home-catalogue { background: var(--paper-2); }
.home-catalogue .kicker { margin-bottom: var(--s2); }
.home-catalogue__title { margin: 0 auto var(--s6); max-width: 20ch; }
.home-catalogue__grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
  gap: var(--s6) clamp(28px, 5vw, 56px); align-items: start;
}

.ring {
  position: relative; width: 100%; aspect-ratio: 4/3; overflow: hidden;
  border: 1px solid var(--rule); border-radius: var(--radius);
  background: radial-gradient(ellipse at 50% 45%, #ffffff 0%, #F3EFE6 70%, #E7E2D9 100%);
}
.ring__poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .6s ease; }
.ring__canvas { position: absolute; inset: 0; display: block; opacity: 0; transition: opacity .6s ease; }
.ring.is-ready .ring__canvas { opacity: 1; }
.ring.is-ready .ring__poster { opacity: 0; }

/* Our story ------------------------------------------------------------- */
.home-story { border-top: 1px solid var(--rule); }
.home-story .kicker { margin-bottom: var(--s2); }
.home-story__title { margin-bottom: var(--s6); max-width: 20ch; }
.home-story__grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
  gap: var(--s6) clamp(32px, 5vw, 64px); align-items: center;
}
.home-story__img { aspect-ratio: 4/3; }
.home-story__text { font-size: 15px; line-height: 1.8; color: var(--ink-2); max-width: 48ch; }
.home-story__text + .home-story__text { margin-top: var(--s3); }
.home-story__link { margin-top: var(--s4); }

/* Visit ----------------------------------------------------------------- */
.home-visit { text-align: center; border-top: 1px solid var(--rule); }
.home-visit .kicker { margin-bottom: var(--s3); }
.home-visit__text { font-size: 15px; line-height: 1.75; color: var(--ink-2); max-width: 48ch; margin: var(--s3) auto 0; }
.home-visit__where { font-size: 14px; line-height: 1.7; color: var(--ink-3); margin: var(--s2) auto 0; }
.home-visit__btn { margin-top: var(--s5); font-size: 12px; letter-spacing: .16em; padding: 0 38px; }
.home-visit__btn { --btn-hover: var(--gold); }
