/* =========================================================
   BACK FACE — built to match approved mockup MVB_CARD-10-15-26.
   Sized in cqw (1% of card width), mockup reference width 478px.
   ========================================================= */
.back {
  container-type: inline-size;
  width: 100%;
  border-radius: var(--radius-front);
  overflow: hidden;
  clip-path: inset(0 round var(--radius-front)); /* guarantees all 4 corners are round, incl. Safari */
  background: #EDEFF2;
  font-family: var(--font-sans);
  color: var(--navy);
  display: flex; flex-direction: column;
}

/* Navy header */
.back__head {
  background: radial-gradient(120% 120% at 15% 0%, #13294D 0%, var(--navy) 65%);
  color: var(--white);
  padding: 8cqw 7.5cqw 5cqw 10cqw;
}
.back__name { margin: 0; font-size: 8.4cqw; font-weight: 700; letter-spacing: .02em; line-height: 1.1; white-space: nowrap; }
.back__headline { margin: 3cqw 0 0; font-size: max(3.75cqw, 0.8125rem); line-height: 1.45; color: #DCE2EC; }
.back__rule { display: block; width: 14cqw; height: 3px; background: var(--gold); margin-top: 4cqw; }

/* Light body with sections */
.back__body {
  flex: 1;
  background: linear-gradient(180deg, #F8F9FA 0%, #ECEEF1 100%);
  padding: 2cqw 6cqw 1cqw 7.5cqw;
}
.info {
  display: grid; grid-template-columns: 12cqw 1fr; column-gap: 3.6cqw;
  padding: 4.6cqw 0;
  border-bottom: 1px solid rgba(200,162,80,.75);
  margin-left: 0;
}
.info--last { border-bottom: 0; }
.info__badge {
  width: 12cqw; height: 12cqw; box-sizing: border-box; padding: 2.1cqw;
  border-radius: 50%; background: var(--navy); color: var(--gold);
  box-shadow: inset 0 0 0 .55cqw var(--gold), 0 0 0 .5cqw #E8EBEF;
}
.info__badge svg { width: 100%; height: 100%; display: block; }
.info__title {
  overflow-wrap: anywhere;
  margin: 1.2cqw 0 1.4cqw; font-size: max(3.75cqw, 0.8125rem); font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--navy);
}
.info__title small { font-size: max(2.6cqw, 0.75rem); letter-spacing: .06em; font-weight: 400; }
.info__text { margin: 0; font-size: max(3.4cqw, 0.8125rem); line-height: 1.5; color: #1D2840; }
.edu + .edu { margin-top: 2.6cqw; }
.edu span { display: block; }
.edu__date { display: inline !important; }

/* Professional links */
.plinks, .contact { list-style: none; margin: 0; padding: 0; }
.plink { display: flex; align-items: center; gap: 3cqw; padding: 1.6cqw 0; color: var(--navy); text-decoration: none; }
.plinks li + li .plink { margin-top: 2.4cqw; }
.plink__icon { flex: 0 0 auto; width: 6.6cqw; height: 6.6cqw; color: var(--navy-raised); }
.plink__icon--line { color: var(--navy); }
.plink__icon svg, .plink__ext svg, .contact__icon svg, .back__nfc-icon svg { width: 100%; height: 100%; display: block; }
.plink__icon:not(.plink__icon--line) svg rect { fill: #1F4C99; }
.plink__icon:not(.plink__icon--line) svg circle, .plink__icon:not(.plink__icon--line) svg path { fill: #FFFFFF; }
.plink__text { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.plink__title { font-size: max(3.5cqw, 0.8125rem); font-weight: 700; }
.plink__url { font-size: max(2.85cqw, 0.75rem); color: #2C3A57; margin-top: .4cqw; }
.plink__ext { width: 3.8cqw; height: 3.8cqw; color: var(--navy); }
.plink:hover .plink__title { text-decoration: underline; text-underline-offset: 3px; }

/* Contact (coming soon) */
.contact li { display: flex; align-items: center; gap: 3.2cqw; font-size: max(3.2cqw, 0.8125rem); color: #1D2840; padding: 1.2cqw 0; }
.contact small { font-size: max(2.7cqw, 0.75rem); color: var(--ink-muted); }
.contact__icon { width: 5.4cqw; height: 5.4cqw; color: var(--navy); }
.contact__icon svg path[stroke] { stroke: #FFFFFF; }

/* Navy footer */
.back__foot { background: var(--navy); color: var(--white); position: relative; }
.back__wave { display: block; width: 100%; height: 10cqw; }
.back__share { display: flex; align-items: center; gap: 4cqw; padding: 2cqw 8cqw 5cqw 10cqw; }
.back__qr {
  flex: 0 0 auto; width: 17cqw; height: 17cqw; box-sizing: border-box;
  background: var(--white); border-radius: 1.4cqw;
  display: grid; place-items: center; text-align: center;
  font-size: max(2.3cqw, 0.75rem); line-height: 1.3; color: var(--ink-muted);
}
.back__scan { margin: 0; font-size: max(3cqw, 0.8125rem); line-height: 1.45; }
.back__scan small, .back__nfc small { color: var(--navy-muted); font-size: max(2.7cqw, 0.75rem); }
.back__divider { align-self: stretch; width: 1px; background: rgba(255,255,255,.35); margin: 0 2cqw; }
.back__nfc { display: flex; flex-direction: column; align-items: center; text-align: center; flex: 1; }
.back__nfc-icon { width: 10cqw; height: 10cqw; color: var(--gold); margin-bottom: 1.6cqw; }
.back__nfc p { margin: 0; font-size: max(3cqw, 0.8125rem); line-height: 1.45; }
.back__tagline {
  margin: 0 8cqw; padding: 3.6cqw 0 7cqw; border-top: 1.5px solid var(--gold);
  text-align: center; text-transform: uppercase; letter-spacing: .16em; text-wrap: balance;
  font-size: max(2.8cqw, 0.75rem); color: var(--white);
  background: none;
}
.back__foot::after { /* gold corner sweep, bottom-right, as in mockup */
  content: ""; position: absolute; right: 0; bottom: 0; width: 55%; height: 8cqw;
  background: linear-gradient(100deg, transparent 0 35%, #C8A250 70%, #E4C77E);
  clip-path: path("M0 100 C 60 100, 140 70, 200 0 L 200 100 Z");
  clip-path: polygon(100% 0, 100% 100%, 0 100%, 55% 75%);
  opacity: .9;
}

/* Keyboard focus */
.back a:focus-visible { outline: 3px solid var(--navy); outline-offset: 3px; border-radius: 1.4cqw; }

/* Narrow phones: let the link list use the full width under the badge,
   so each web address fits on one line. */
@container (max-width: 420px) { .plinks { margin-left: -15.6cqw; margin-top: 6cqw; } }

/* Approved contact email (back) */
.contact__link { color: var(--navy); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.contact__link:hover { text-decoration-thickness: 2px; }
.contact__msg { margin-left: 2cqw; font-size: max(2.7cqw, 0.75rem); color: var(--gold-deep); }
