/* ==========================================================================
   Partnership & Vendor page (partnership-vendor.php). Loaded after motherland.css
   and about.css, and reuses their tokens.
   ========================================================================== */

/* ── Hero: "Home is calling your brand" ─────────────────── */
.pv-hero { position: relative; overflow: hidden; display: flex; align-items: flex-end; min-height: 47.6vw; background: #2a2a1c url("../img/bg-partner-hero.jpg") center / cover no-repeat; text-align: center; }
.pv-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #100e0e 0%, rgba(16,14,14,.88) 16%, rgba(16,14,14,.4) 40%, rgba(16,14,14,0) 65%); }
.pv-hero__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; padding-bottom: 3.5vw; }
.pv-hero__title { font-size: 6.85vw; line-height: .87; text-shadow: 0 2px 30px rgba(0,0,0,.4); }
.pv-hero__title span { display: block; }
.pv-hero__p { margin-top: .6vw; max-width: 43vw; font-size: clamp(13.5px, 1.11vw, 19px); line-height: 1.42; color: #e2e2e2; }
.pv-hero__p:first-of-type { margin-top: 1.6vw; }
.pv-hero__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: clamp(10px, 1vw, 16px); margin-top: 2.2vw; }
.pv-hero__actions .btn svg { width: 16px; height: 16px; margin-right: .4em; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; vertical-align: -3px; }

/* ── Build with a movement ──────────────────────────────── */
.pv-build { background: var(--page); padding: 7.6vw 0 5.5vw; }
.pv-build__title { font-size: 7.28vw; line-height: .87; }
.pv-build__title .lime { color: var(--lime-soft); }
.pvcards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.7vw; margin-top: 3.6vw; }
.pvcard { min-height: 15.3vw; padding: 2.4vw 2vw 2.1vw; border-radius: clamp(12px, 1.5vw, 26px); background: var(--card); }
.pvcard__ico { display: block; width: 8.3vw; height: 8.3vw; min-width: 56px; min-height: 56px; fill: var(--pv-color); }
.pvcard__title { margin-top: 1.6vw; font-family: var(--font-bold); font-weight: 700; font-size: clamp(17px, 1.53vw, 27px); line-height: 1.2; }
.pvcard__text { margin-top: .7vw; font-size: clamp(12.5px, .98vw, 17px); line-height: 1.4; color: #b9b9b9; }

@media (max-width: 720px) {
  .pv-hero { height: var(--hero-viewport); min-height: 0; }
  .pv-hero__title { font-size: 12.6vw; line-height: .88; }
  .pv-hero__p { max-width: none; margin-top: 3vw; font-size: 14px; }
  .pv-hero__p:first-of-type { margin-top: 5vw; }
  .pv-hero__actions { margin-top: 5vw; gap: 10px; width: 100%; }
  .pv-hero__actions .btn { flex: 1 1 44%; white-space: nowrap; padding-inline: 3.5vw; font-size: 12px; }

  .pv-build { padding: 13vw 0 10vw; }
  .pv-build__title { font-size: 9.6vw; line-height: .95; }
  .pvcards { grid-template-columns: 1fr; gap: 4vw; margin-top: 7.5vw; }
  .pvcard { padding: 6vw 6vw 7vw; border-radius: 4vw; }
  .pvcard__ico { width: 13vw; height: 13vw; }
  .pvcard__title { margin-top: 5vw; font-size: max(18px, 5.3vw); }
  .pvcard__text { margin-top: 2vw; font-size: 13.5px; }
}

/* The complete hero stays visible below the site header. */
.page-partnership .pv-hero {
  height: var(--hero-viewport);
  min-height: 0;
}

@media (max-width: 720px) {
  .page-partnership .pv-hero__inner { padding-bottom: clamp(28px, 6svh, 52px); }
  .page-partnership .pv-hero__title { font-size: clamp(54px, 15vw, 72px); }
  .page-partnership .pv-hero__p { max-width: 90vw; margin-top: 12px; font-size: 12.5px; line-height: 1.35; }
  .page-partnership .pv-hero__actions { margin-top: 20px; }
}
@media (max-width:720px) and (max-height:720px) {
  .page-partnership .pv-hero__inner { padding-bottom:24px; }
  .page-partnership .pv-hero__title { font-size:clamp(46px,13vw,62px); }
  .page-partnership .pv-hero__p { margin-top:8px; font-size:11.5px; line-height:1.28; }
  .page-partnership .pv-hero__p:first-of-type { margin-top:12px; }
  .page-partnership .pv-hero__actions { margin-top:14px; }
  .page-partnership .pv-hero__actions .btn { min-height:38px; }
}

/* ── Be part of Motherland Experience ───────────────────── */
.pv-collage { background: var(--page); padding: 3vw 0 6vw; }
.pv-collage__title { font-size: 5.05vw; line-height: .93; text-align: center; }
.pv-collage__title .purple { color: var(--violet-line); }
.pgrid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 14.7vw; gap: 1vw; margin-top: 3vw; }
.ptile { position: relative; overflow: hidden; border-radius: max(6px, .8vw); background: #1c1c1c; }
.ptile--big { grid-column: span 2; grid-row: span 2; }
.ptile--tall { grid-row: span 2; }
.ptile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ptile__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.88) 0%, rgba(0,0,0,.25) 45%, rgba(0,0,0,0) 70%); }
.ptile__body { position: absolute; left: 1.1vw; right: 1.1vw; bottom: 1vw; z-index: 1; display: flex; flex-direction: column; gap: .3vw; }
.ptile__tag { font-size: clamp(9px, .74vw, 12px); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--lime-soft); }
.ptile__title { font-family: var(--font-bold); font-weight: 700; font-size: clamp(13px, 1.13vw, 20px); line-height: 1.2; color: #fff; }
.ptile--big .ptile__title, .ptile--tall .ptile__title { font-size: clamp(15px, 1.4vw, 24px); }
.ptile__text { max-width: 32vw; font-size: clamp(11px, .82vw, 14px); line-height: 1.4; color: #d6d6d6; }
.pv-collage__foot { display: flex; justify-content: center; margin-top: 2.6vw; }

/* ── Nigeria's biggest cultural moment ──────────────────── */
.pv-dec { background: var(--page); padding: 6vw 0 6.5vw; }
.pv-dec__grid { display: flex; align-items: flex-end; justify-content: space-between; gap: 4vw; flex-wrap: wrap; }
.pv-dec__title { font-size: 5.05vw; line-height: 1.02; }
.pv-dec__title .coral { color: var(--coral); }
.pv-dec__lead { max-width: 26vw; font-size: clamp(12.5px, .95vw, 16px); line-height: 1.4; color: #cfcfcf; }
.pv-dec__stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.7vw; margin-top: 4vw; padding-top: 2.6vw; border-top: 1px solid #262626; }
.pv-dec__label { display: block; font-size: clamp(10px, .78vw, 13px); font-weight: 500; letter-spacing: .03em; text-transform: uppercase; color: #a8a8a8; }
.pv-dec__value { display: block; margin-top: .7vw; font-size: 3.36vw; line-height: 1; color: #fff; }
.pv-dec__text { display: block; margin-top: .7vw; font-size: clamp(11.5px, .85vw, 14px); line-height: 1.35; color: #999; }

@media (max-width: 720px) {
  .pv-collage { padding: 6vw 0 12vw; }
  .pv-collage__title { font-size: 9.7vw; }
  .pgrid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 28vw; gap: 2.6vw; margin-top: 7vw; }
  .ptile--big { grid-column: span 2; }
  .ptile--tall { grid-row: span 1; }
  .ptile__body { left: 4vw; right: 4vw; bottom: 3vw; }
  .ptile__title { font-size: max(13px, 3.7vw); }
  .ptile--big .ptile__title, .ptile--tall .ptile__title { font-size: max(15px, 4.4vw); }
  .ptile__text { max-width: none; font-size: 12px; }
  .pv-collage__foot { margin-top: 8vw; }
  .pv-collage__foot .btn { width: 100%; }

  .pv-dec { padding: 12vw 0 13vw; }
  .pv-dec__grid { flex-direction: column; align-items: flex-start; gap: 5vw; }
  .pv-dec__title { font-size: 9.6vw; }
  .pv-dec__lead { max-width: none; font-size: 14px; }
  .pv-dec__stats { grid-template-columns: repeat(2, 1fr); gap: 7vw 5vw; margin-top: 8vw; padding-top: 6vw; }
  .pv-dec__value { font-size: 9vw; margin-top: 2vw; }
  .pv-dec__text { margin-top: 2vw; }
}

/* ── Culture in motion: plain-text variant for this page (no red box) ──── */
.culture--plain { padding-top: 2vw; padding-bottom: 5.2vw; }
.culture--plain .culture__title { display: block; width: auto; background: none; color: #fff; padding: 0; }
@media (max-width: 720px) {
  .culture--plain { padding-top: 8vw; padding-bottom: 14vw; }
}
