/* ii world — Venera Collection Editorial Page */

/* Page wrapper */
.venera { padding: 0; overflow-x: hidden; }

/* ========== Hero ========== */
.vn-hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--nav-height) 20px 0;
  margin-top: calc(-1 * var(--nav-height));
}

.vn-hero__title {
  font-family: var(--font-display);
  font-size: clamp(4rem, 14vw, 12rem);
  font-weight: 300;
  letter-spacing: 0.04em;
  color: var(--color-text);
  user-select: none;
}

/* ========== Grid Container ========== */
.vn-grid {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 20px;
}

@media (min-width: 768px) {
  .vn-grid { padding: 0 40px; }
}

/* ========== Duo — two-column ========== */
.vn-duo {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 12px;
}

@media (min-width: 768px) {
  .vn-duo { grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; }
}

/* Offset variant: 60/40 split */
.vn-duo--offset {
  grid-template-columns: 1fr;
}

@media (min-width: 768px) {
  .vn-duo--offset { grid-template-columns: 3fr 2fr; }
  .vn-duo--offset-r { grid-template-columns: 2fr 3fr; }
}

/* ========== Trio — three-column ========== */
.vn-trio {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
}

@media (min-width: 768px) {
  .vn-trio { grid-template-columns: 1fr 1fr 1fr; gap: 20px; margin-bottom: 20px; }
}

.vn-trio > :last-child:nth-child(odd) {
  grid-column: span 2;
}

@media (min-width: 768px) {
  .vn-trio > :last-child:nth-child(odd) { grid-column: auto; }
}

/* ========== Solo — centered single ========== */
.vn-solo {
  max-width: 560px;
  margin: 0 auto 12px;
}

@media (min-width: 768px) {
  .vn-solo { margin-bottom: 20px; max-width: 640px; }
}

/* ========== Wide — large single ========== */
.vn-wide {
  max-width: 900px;
  margin: 0 auto 12px;
}

@media (min-width: 768px) {
  .vn-wide { margin-bottom: 20px; }
}

/* ========== Image base ========== */
.vn-img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity 0.6s ease;
}

/* ========== Text / Quote blocks ========== */
.vn-text {
  text-align: center;
  padding: 56px 20px;
  max-width: 640px;
  margin: 0 auto;
}

@media (min-width: 768px) {
  .vn-text { padding: 88px 40px; }
}

.vn-text__chapter {
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
  margin-bottom: 20px;
}

@media (min-width: 1025px) {
  .vn-text__chapter { font-size: 0.65rem; }
}

.vn-text__quote {
  font-family: var(--font-display);
  font-size: clamp(1rem, 2vw, 1.35rem);
  font-weight: 300;
  line-height: 1.8;
  color: var(--color-text-secondary);
}

/* ========== Closing CTA ========== */
.vn-cta {
  text-align: center;
  padding: 80px 20px 120px;
}

@media (min-width: 768px) {
  .vn-cta { padding: 120px 40px 160px; }
}

.vn-cta__heading {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  color: var(--color-text);
  margin-bottom: 32px;
  font-weight: 300;
}

.vn-cta__link {
  display: inline-block;
  padding: 14px 48px;
  border: 1px solid var(--color-text);
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-text);
  transition: all 0.3s ease;
}

.vn-cta__link:hover {
  background: var(--color-text);
  color: var(--color-bg);
}

/* ========== Scroll counter (look number) ========== */
.vn-look {
  font-size: 0.6rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
  text-align: center;
  padding: 32px 0 8px;
}

/* ============================================================
   2026-04-28 Step 8 Round B — page-venera section-driven overrides

   The chapters template now emits generic block/hero + text + image-mosaic +
   block/banner sections instead of bespoke .vn-hero / .vn-text / .vn-cta
   markup. These overrides re-style the new macro output to match the
   legacy editorial styling (centered text-only hero, small caps chapter
   labels, Lineal serif quote body, generous padding).

   Selectors target page-venera body class so other pages using the same
   macros are unaffected.
   ============================================================ */

/* Hero — text-only block/hero on /en/venera.html.
   Overrides the .lookbook-hero default (small block) into the legacy
   full-viewport centered title. */
.page-venera .lookbook-hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--nav-height) 20px 0;
  margin-top: calc(-1 * var(--nav-height));
  margin-bottom: 0;
  /* bgColor inline-style on the section comes from VB / seed (default
     #1a1a1a — dark editorial). When admin clears bgColor in PropertiesSidebar,
     falls through to body bg. */
}
.page-venera .lookbook-hero__overlay {
  position: relative;
  inset: auto;
  background: none !important;
  display: block;
  padding: 0;
  text-align: center;
  /* Text is white because the seed defaults to dark bgColor. If admin
     picks a light bgColor in VB, this needs a future text-color toggle. */
  color: #fff;
}
.page-venera .lookbook-hero__title {
  font-family: var(--font-display);
  font-size: clamp(4rem, 14vw, 12rem);
  font-weight: 300;
  letter-spacing: 0.04em;
  color: #fff;
  margin: 0;
  user-select: none;
}

/* Chapter quote text sections (block 2/4/6/8). Macro emits .cms-section
   with inline max-width/padding/text-align; we override max-width + padding
   and re-style the title (chapter label) + body (quote). */
.page-venera .cms-section {
  text-align: center;
  padding: 56px 20px !important;
  max-width: 640px !important;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .page-venera .cms-section { padding: 88px 40px !important; }
}
.page-venera .cms-section__title {
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: var(--color-text-tertiary);
  margin-bottom: 20px;
}
@media (min-width: 1025px) {
  .page-venera .cms-section__title { font-size: 0.65rem; }
}
.page-venera .cms-section__body {
  font-family: var(--font-display);
  font-size: clamp(1rem, 2vw, 1.35rem);
  font-weight: 300;
  line-height: 1.8;
  color: var(--color-text-secondary);
}

/* Closing CTA — block/banner now renders as .brand-statement. Re-style
   to match legacy .vn-cta padding + heading typography. */
.page-venera .brand-statement {
  text-align: center;
  padding: 80px 20px 120px !important;
  background: transparent !important;
}
@media (min-width: 768px) {
  .page-venera .brand-statement { padding: 120px 40px 160px !important; }
}
.page-venera .brand-statement__text {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  color: var(--color-text);
  margin-bottom: 32px;
  font-weight: 300;
  letter-spacing: normal;
}
