/* NOVA Jewelry — Home preview v3, aligned with the live left-copy/right-image page system. */

.nova-page-home-preview { --nova-home-wide: 1460px; background: #fff; }
.nova-page-home-preview .nova-home-text-link { width: fit-content; color: inherit; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.08em; text-decoration: none; text-transform: uppercase; }
.nova-page-home-preview .nova-home-text-link span { display: inline-block; margin-left: 7px; transition: transform 180ms var(--nova-ease-out); }

.nova-page-home-preview .nova-home-hero { min-height: clamp(560px, 45vw, 650px); background: #faf8f4; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.nova-page-home-preview .nova-home-hero__media { min-height: inherit; margin: 0; overflow: hidden; background: #eee9e1; }
.nova-page-home-preview .nova-home-hero__media img { width: 100%; height: 100%; min-height: inherit; object-fit: cover; object-position: center; }
.nova-page-home-preview .nova-home-hero__copy { align-self: stretch; max-width: none; padding: clamp(70px, 7vw, 106px) clamp(48px, 6.5vw, 104px); display: flex; flex-direction: column; justify-content: center; }
.nova-page-home-preview .nova-home-hero h1 { max-width: none; margin: 0 0 24px; font-size: clamp(3.6rem, 5.2vw, 5.4rem); line-height: 0.97; letter-spacing: -0.04em; }
.nova-page-home-preview .nova-home-hero h1 > span { display: block; }
.nova-page-home-preview .nova-home-hero__copy > p:not(.nova-eyebrow) { max-width: 590px; margin: 0 0 34px; color: var(--nova-color-text-secondary); font-size: 0.95rem; line-height: 1.78; }
.nova-page-home-preview .nova-home-hero__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 24px; }
.nova-page-home-preview .nova-home-hero .nova-button { background: transparent; border-color: var(--nova-color-accent); color: var(--nova-color-text); }
.nova-page-home-preview .nova-home-hero .nova-button:active,
.nova-page-home-preview .nova-home-hero .nova-button:focus-visible { background: var(--nova-color-accent-soft); border-color: var(--nova-color-accent); color: var(--nova-color-text); }
.nova-page-home-preview .nova-home-hero__scope { margin: 34px 0 0; padding: 20px 0 0; border-top: 1px solid var(--nova-color-border); display: flex; flex-wrap: wrap; gap: 10px 26px; list-style: none; }
.nova-page-home-preview .nova-home-hero__scope li { color: var(--nova-color-text-secondary); font-size: 0.68rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }

.nova-page-home-preview .nova-home-facts { border-block: 1px solid var(--nova-color-border); background: #fff; }
.nova-page-home-preview .nova-home-facts__grid { padding-block: clamp(28px, 3vw, 38px); display: grid; gap: clamp(34px, 7vw, 112px); grid-template-columns: repeat(3, max-content); justify-content: space-between; }
.nova-page-home-preview .nova-home-facts p { min-height: 0; margin: 0; padding: 0; border: 0; display: flex; flex-direction: column; justify-content: flex-start; }
.nova-page-home-preview .nova-home-facts strong { font-family: var(--nova-font-heading); font-size: clamp(1.65rem, 2vw, 2rem); font-weight: 400; line-height: 1.08; }
.nova-page-home-preview .nova-home-facts span { margin-top: 7px; color: var(--nova-color-text-secondary); font-size: 0.7rem; line-height: 1.5; }

.nova-page-home-preview .nova-home-products,
.nova-page-home-preview .nova-home-quality { padding-block: clamp(82px, 8vw, 120px); }
.nova-page-home-preview .nova-home-section-head,
.nova-page-home-preview .nova-home-path__head { align-items: end; margin-bottom: 46px; display: grid; gap: clamp(44px, 8vw, 128px); grid-template-columns: minmax(0, 1.2fr) minmax(330px, 0.8fr); }
.nova-page-home-preview .nova-home-section-head h2,
.nova-page-home-preview .nova-home-path__head h2 { max-width: 14ch; margin: 0; font-size: clamp(3rem, 4.3vw, 4.5rem); line-height: 0.99; }
.nova-page-home-preview .nova-home-section-head > div:last-child > p,
.nova-page-home-preview .nova-home-path__head > p { max-width: 530px; margin: 0 0 20px; color: var(--nova-color-text-secondary); line-height: 1.72; }

.nova-page-home-preview .nova-home-product-grid { width: min(100% - (2 * var(--nova-gutter)), var(--nova-home-wide)); margin-inline: auto; display: grid; gap: 42px clamp(16px, 1.8vw, 28px); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nova-page-home-preview .nova-home-product-card { min-width: 0; color: inherit; text-decoration: none; }
.nova-page-home-preview .nova-home-product-card figure { aspect-ratio: 1.22 / 1; margin: 0; overflow: hidden; background: var(--nova-color-ivory); }
.nova-page-home-preview .nova-home-product-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 240ms var(--nova-ease-out); }
.nova-page-home-preview .nova-home-product-card > div { padding: 16px 2px 0; text-align: center; }
.nova-page-home-preview .nova-home-product-card h3 { margin: 0; font-size: clamp(1.7rem, 2vw, 2.2rem); }
.nova-page-home-preview .nova-home-product-card p { margin: 5px 0 0; color: var(--nova-color-text-secondary); font-size: 0.78rem; line-height: 1.5; }

/* Present source catalog photographs without changing the shared series assets. */
.nova-page-home-preview figure.nova-home-catalog-photo { display: flex; align-items: center; justify-content: center; background: #fff; }
.nova-page-home-preview figure.nova-home-catalog-photo img { width: auto; height: 100%; max-width: 100%; aspect-ratio: 1; object-fit: contain; clip-path: polygon(0 0, 100% 0, 100% 100%, 40% 100%, 40% 89%, 0 89%); }
.nova-page-home-preview .nova-home-product-card figure { background: var(--nova-color-ivory); }
.nova-page-home-preview .nova-home-product-card figure img { mix-blend-mode: multiply; }
.nova-page-home-preview .nova-home-product-card .nova-home-clean-photo { display: flex; align-items: center; justify-content: center; }
.nova-page-home-preview .nova-home-product-card .nova-home-clean-photo img { width: auto; height: 100%; max-width: 100%; aspect-ratio: 1; object-fit: contain; }
.nova-page-home-preview .nova-series-card:nth-child(3) figure.nova-home-catalog-photo img { width: 100%; object-fit: cover; object-position: center bottom; }
.nova-page-home-preview .nova-series-showcase--home { border: 0; }
.nova-page-home-preview .nova-series-card > div { text-align: center; }
.nova-page-home-preview .nova-series-card .nova-home-solitaire-photo img { height: 92%; max-width: 92%; object-fit: contain; }

.nova-page-home-preview .nova-home-path { padding-block: clamp(100px, 9vw, 136px); background: #fff; }
.nova-page-home-preview .nova-home-path__head > p { margin-bottom: 2px; }
.nova-page-home-preview .nova-home-path__head { margin-bottom: clamp(56px, 6vw, 78px); display: block; max-width: var(--nova-home-wide); }
.nova-page-home-preview .nova-home-path__head h2 { max-width: none; }
.nova-page-home-preview .nova-home-path__head > p { max-width: 740px; margin-top: 22px; }
.nova-page-home-preview .nova-home-path__grid { max-width: var(--nova-home-wide); display: grid; gap: clamp(32px, 4vw, 64px); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.nova-page-home-preview .nova-home-path__grid > a { min-width: 0; color: inherit; text-decoration: none; display: flex; flex-direction: column; gap: 30px; }
.nova-page-home-preview .nova-home-path__grid > a:nth-child(2) { flex-direction: column-reverse; }
.nova-page-home-preview .nova-home-path__grid figure { flex: none; aspect-ratio: 1.42; margin: 0; overflow: hidden; }
.nova-page-home-preview .nova-home-path__grid img { width: 100%; height: 100%; object-fit: cover; transition: transform 240ms var(--nova-ease-out); }
.nova-page-home-preview .nova-home-path__grid > a > div { flex: 1; padding: 0 2px; }
.nova-page-home-preview .nova-home-path__grid p { margin: 0 0 8px; color: var(--nova-color-accent); font-size: 0.66rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; }
.nova-page-home-preview .nova-home-path__grid h3 { margin: 0 0 13px; font-size: clamp(1.75rem, 2.1vw, 2.3rem); line-height: 1.02; }
.nova-page-home-preview .nova-home-path__grid span { display: block; max-width: none; color: var(--nova-color-text-secondary); font-size: 0.88rem; line-height: 1.7; }
.nova-page-home-preview .nova-home-path__link { display: block; margin-top: 24px; font-size: 0.66rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
.nova-page-home-preview .nova-home-path__link i { display: inline-block; margin-left: 6px; font-style: normal; }

.nova-page-home-preview .nova-home-inside { padding-block: clamp(76px, 7vw, 104px); background: var(--nova-color-stone); }
.nova-page-home-preview .nova-home-inside__inner { width: min(100% - (2 * var(--nova-gutter)), var(--nova-home-wide)); margin-inline: auto; display: grid; align-items: center; gap: clamp(48px, 6vw, 96px); grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); }
.nova-page-home-preview .nova-home-inside__media { grid-column: 1; grid-row: 1; display: grid; grid-template-columns: 1.12fr 1fr; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 12px; height: clamp(480px, 43vw, 620px); }
.nova-page-home-preview .nova-home-inside__media figure { min-width: 0; min-height: 0; margin: 0; overflow: hidden; background: var(--nova-color-ivory); }
.nova-page-home-preview .nova-home-inside__team { grid-row: span 2; }
.nova-page-home-preview .nova-home-inside__media img { width: 100%; height: 100%; object-fit: cover; }
.nova-page-home-preview .nova-home-inside__team img { object-position: 50% 35%; }
.nova-page-home-preview .nova-home-inside__copy { grid-column: 2; grid-row: 1; max-width: none; padding: 20px 0; }
.nova-page-home-preview .nova-home-inside h2 { max-width: none; margin: 0 0 25px; font-size: clamp(3rem, 3.8vw, 4rem); line-height: 0.99; }
.nova-page-home-preview .nova-home-inside__copy > p:not(.nova-eyebrow) { max-width: 560px; margin: 0 0 28px; color: var(--nova-color-text-secondary); line-height: 1.72; }
.nova-page-home-preview .nova-home-capabilities { margin: 0 0 30px; display: grid; gap: 20px; }
.nova-page-home-preview .nova-home-capabilities p { margin: 0; display: block; }
.nova-page-home-preview .nova-home-capabilities strong { display: block; color: var(--nova-color-text); font: 400 1.2rem/1.1 var(--nova-font-heading); }
.nova-page-home-preview .nova-home-capabilities span { display: block; margin-top: 6px; color: var(--nova-color-text-secondary); font-size: 0.76rem; line-height: 1.55; }
.nova-page-home-preview .nova-home-capacity { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; margin: 32px 0; }
.nova-page-home-preview .nova-home-capacity dt { color: var(--nova-color-text-secondary); font-size: 0.68rem; line-height: 1.5; }
.nova-page-home-preview .nova-home-capacity dd { margin: 6px 0 0; font: 400 clamp(1.65rem, 2.2vw, 2.2rem)/1.1 var(--nova-font-heading); font-variant-numeric: lining-nums tabular-nums; }
.nova-page-home-preview .nova-home-capacity dd span { font: 400 0.7rem/1.3 var(--nova-font-body); }

.nova-page-home-preview .nova-home-quality__grid { align-items: center; display: grid; gap: clamp(64px, 8vw, 126px); grid-template-columns: minmax(390px, 0.82fr) minmax(0, 1.18fr); }
.nova-page-home-preview .nova-home-quality__copy h2 { max-width: 14ch; margin: 0 0 24px; font-size: clamp(2.9rem, 3.7vw, 3.9rem); line-height: 1; }
.nova-page-home-preview .nova-home-quality__copy > p:not(.nova-eyebrow) { max-width: 560px; margin: 0 0 28px; color: var(--nova-color-text-secondary); line-height: 1.72; }
.nova-page-home-preview .nova-home-quality figure { aspect-ratio: 4 / 3; margin: 0; overflow: hidden; }
.nova-page-home-preview .nova-home-quality__video video { display: block; width: 100%; height: 100%; object-fit: cover; }
.nova-page-home-preview .nova-home-quality__video .nova-sv3-video-toggle { top: 50%; left: 50%; right: auto; bottom: auto; width: 64px; height: 64px; transform: translate(-50%, -50%); }
.nova-page-home-preview .nova-home-quality__video .nova-sv3-video-toggle:active { transform: translate(-50%, -50%) scale(0.96); }
.nova-page-home-preview .nova-home-quality__proof { display: grid; gap: 22px; margin: 38px 0 0; }
.nova-page-home-preview .nova-home-quality__proof a { display: flex; align-items: center; justify-content: space-between; gap: 20px; width: 100%; padding: 0; color: inherit; text-decoration: none; }
.nova-page-home-preview .nova-home-quality__proof div > span { display: block; color: var(--nova-color-accent); font-size: 0.61rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }
.nova-page-home-preview .nova-home-quality__proof strong { display: block; margin-top: 6px; font: 400 1.35rem/1.2 var(--nova-font-heading); }
.nova-page-home-preview .nova-home-quality__proof a > span { font-size: 1.2rem; transition: transform 180ms var(--nova-ease-out); }
.nova-page-home-preview .nova-home-contact { padding-block: clamp(86px, 8vw, 118px); border-top: 1px solid var(--nova-color-border); background: #fff; }
.nova-page-home-preview .nova-home-contact .nova-p2-contact__details { position: static; }
.nova-page-home-preview .nova-home-contact .nova-p2-contact__details h2 { max-width: 12ch; margin: 0 0 24px; color: var(--nova-color-text); font-family: var(--nova-font-heading); font-size: clamp(2.8rem, 4vw, 4rem); font-weight: 400; line-height: 0.98; letter-spacing: -0.035em; text-transform: none; }
.nova-page-home-preview .nova-home-contact__intro { max-width: 440px; margin: 0 0 34px; color: var(--nova-color-text-secondary); font-size: 0.92rem; line-height: 1.72; }
.nova-page-home-preview .nova-home-contact .nova-p2-contact__details > div > p { margin: 0; color: var(--nova-color-text-secondary); font-size: 0.88rem; line-height: 1.72; }

@media (hover: hover) and (pointer: fine) {
  .nova-page-home-preview .nova-home-text-link:hover span { transform: translateX(5px); }
  .nova-page-home-preview .nova-home-quality__proof a:hover > span { transform: translate(3px, -3px); }
  .nova-page-home-preview .nova-home-hero .nova-button:hover { background: var(--nova-color-accent-soft); border-color: var(--nova-color-accent); color: var(--nova-color-text); }
  .nova-page-home-preview .nova-home-product-card:hover img,
  .nova-page-home-preview .nova-home-path__grid > a:hover img { transform: scale(1.025); }
}

.nova-page-home-preview .nova-home-product-card:active,
.nova-page-home-preview .nova-home-path__grid > a:active { transform: scale(0.99); }

@media (max-width: 1120px) {
  .nova-page-home-preview .nova-home-hero { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nova-page-home-preview .nova-home-hero__copy { padding-inline: 48px; }
}

@media (max-width: 900px) {
  .nova-page-home-preview .nova-home-hero { min-height: 0; grid-template-columns: 1fr; }
  .nova-page-home-preview .nova-home-hero__media { min-height: 500px; }
  .nova-page-home-preview .nova-home-hero__copy { max-width: none; padding: 70px var(--nova-gutter) 78px; }
  .nova-page-home-preview .nova-home-hero h1 { max-width: 14ch; font-size: clamp(3.45rem, 8.6vw, 4.7rem); }
  .nova-page-home-preview .nova-home-section-head,
  .nova-page-home-preview .nova-home-path__head { align-items: start; gap: 22px; grid-template-columns: 1fr; }
  .nova-page-home-preview .nova-home-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nova-page-home-preview .nova-home-path__grid { grid-template-columns: 1fr; }
  .nova-page-home-preview .nova-home-path__grid > a,
  .nova-page-home-preview .nova-home-path__grid > a:nth-child(2) { flex-direction: row; align-items: center; }
  .nova-page-home-preview .nova-home-path__grid figure { width: 42%; }
  .nova-page-home-preview .nova-home-inside__inner { grid-template-columns: 1fr; gap: 38px; }
  .nova-page-home-preview .nova-home-inside__media { grid-column: auto; grid-row: auto; height: auto; aspect-ratio: 1.15; order: -1; }
  .nova-page-home-preview .nova-home-inside__copy { grid-column: auto; grid-row: auto; max-width: none; padding: 0; }
  .nova-page-home-preview .nova-home-quality__grid { align-items: start; gap: 42px; grid-template-columns: 1fr; }
  .nova-page-home-preview .nova-home-quality figure { order: -1; }
}

@media (max-width: 720px) {
  .nova-page-home-preview .nova-home-hero__media { min-height: 390px; }
  .nova-page-home-preview .nova-home-hero__copy { padding-block: 58px 64px; }
  .nova-page-home-preview .nova-home-hero h1 { max-width: 14ch; font-size: clamp(2.8rem, 11.7vw, 3.55rem); }
  .nova-page-home-preview .nova-home-hero__actions { align-items: flex-start; flex-direction: column; gap: 20px; }
  .nova-page-home-preview .nova-home-facts__grid { gap: 0; grid-template-columns: 1fr; }
  .nova-page-home-preview .nova-home-facts p { min-height: 0; padding: 20px 0; border-top: 1px solid var(--nova-color-border); }
  .nova-page-home-preview .nova-home-facts p:first-child { border-top: 0; }
  .nova-page-home-preview .nova-home-product-grid { gap: 34px 14px; }
  .nova-page-home-preview .nova-home-product-card figure { aspect-ratio: 1 / 1.08; }
  .nova-page-home-preview .nova-home-product-card h3 { font-size: 1.55rem; }
  .nova-page-home-preview .nova-home-product-card p { padding-inline: 4px; font-size: 0.7rem; }
  .nova-page-home-preview .nova-home-path__grid > a,
  .nova-page-home-preview .nova-home-path__grid > a:nth-child(2) { flex-direction: column; align-items: stretch; gap: 24px; }
  .nova-page-home-preview .nova-home-path__grid figure { width: 100%; aspect-ratio: 1.42; }
  .nova-page-home-preview .nova-home-path__grid > a > div { padding: 0 2px 12px; }
  .nova-page-home-preview .nova-home-inside__media { gap: 10px; }
}

@media (max-width: 520px) {
  .nova-page-home-preview .nova-home-hero__media { min-height: 330px; }
  .nova-page-home-preview .nova-home-hero h1 { max-width: 14ch; font-size: clamp(2.55rem, 11vw, 3rem); }
  .nova-page-home-preview .nova-home-section-head h2,
  .nova-page-home-preview .nova-home-path__head h2,
  .nova-page-home-preview .nova-home-inside h2,
  .nova-page-home-preview .nova-home-quality__copy h2 { font-size: clamp(2.5rem, 10.8vw, 3rem); }
  .nova-page-home-preview .nova-home-inside h2 { max-width: none; }
  .nova-page-home-preview .nova-home-product-grid { width: min(100% - 28px, var(--nova-home-wide)); }
  .nova-page-home-preview .nova-home-product-card > div { padding-top: 12px; }
  .nova-page-home-preview .nova-home-product-card h3 { font-size: 1.45rem; }
}

@media (prefers-reduced-motion: reduce) {
  .nova-page-home-preview .nova-home-text-link span,
  .nova-page-home-preview .nova-home-quality__proof a > span,
  .nova-page-home-preview .nova-home-product-card img,
  .nova-page-home-preview .nova-home-path__grid img { transition: none; }
}
