:root {
  --fc-navy-950: #071a2d;
  --fc-navy-900: #0b253f;
  --fc-teal-700: #08747d;
  --fc-teal-100: #dff1f0;
  --fc-gold-500: #b9872d;
  --fc-gold-300: #d3ad61;
  --fc-ink: #1a2d3d;
  --fc-muted: #60727e;
  --fc-line: #d9e3e5;
  --fc-canvas: #f5f9fa;
  --fc-white: #fff;
  --fc-radius: 16px;
  --fc-shadow: 0 18px 44px rgba(7, 37, 61, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--fc-ink);
  background: var(--fc-canvas);
  font: 400 16px/1.7 Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
img { display: block; max-width: 100%; }
a { color: var(--fc-teal-700); text-underline-offset: 3px; }
.profile-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.profile-hero {
  position: relative;
  overflow: hidden;
  padding: 34px 0 76px;
  color: var(--fc-white);
  background:
    radial-gradient(circle at 82% 8%, rgba(8, 116, 125, .68), transparent 30%),
    linear-gradient(132deg, var(--fc-navy-950), var(--fc-navy-900));
}
.profile-hero::after {
  position: absolute;
  right: -170px;
  bottom: -290px;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(211, 173, 97, .35);
  border-radius: 50%;
  content: "";
}
.profile-breadcrumb {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  margin-bottom: 46px;
  color: #c9d9df;
  font-size: .88rem;
}
.profile-breadcrumb a { color: #fff; font-weight: 700; }
.profile-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: clamp(38px, 7vw, 86px);
  align-items: center;
}
.profile-kicker {
  margin: 0 0 12px;
  color: var(--fc-gold-300);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.profile-hero h1 {
  max-width: 780px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(2.6rem, 6vw, 5.25rem);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.profile-role {
  max-width: 740px;
  margin: 0 0 18px;
  color: #99edf0;
  font-size: clamp(1.05rem, 2.1vw, 1.4rem);
  font-weight: 800;
  line-height: 1.45;
}
.profile-intro { max-width: 760px; margin: 0; color: #d7e4e9; font-size: 1.07rem; }
.profile-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.profile-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 11px 18px;
  border: 2px solid var(--fc-gold-300);
  border-radius: 9px;
  color: var(--fc-navy-950);
  background: var(--fc-gold-300);
  font-weight: 900;
  text-decoration: none;
}
.profile-button:hover { background: #e1bf79; }
.profile-button--secondary { color: #fff; background: transparent; }
.profile-button--secondary:hover { color: var(--fc-navy-950); background: var(--fc-gold-300); }
.profile-figure { width: min(380px, 100%); margin: 0 auto; }
.profile-photo {
  display: grid;
  place-items: center;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border: 7px solid rgba(255, 255, 255, .92);
  border-radius: 22px;
  background: var(--fc-teal-100);
  box-shadow: var(--fc-shadow);
}
.profile-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; }
.profile-photo--pending { padding: 30px; color: var(--fc-navy-900); text-align: center; }
.profile-photo--pending span { color: var(--fc-teal-700); font-size: clamp(3rem, 8vw, 5.5rem); font-weight: 900; letter-spacing: -.06em; }
.profile-photo--pending p { margin: 10px 0 0; font-weight: 800; }
.profile-figure figcaption { margin-top: 12px; color: #d7e4e9; font-size: .84rem; text-align: center; }
.profile-section { padding: 68px 0; }
.profile-section--tint { border-block: 1px solid var(--fc-line); background: #eaf4f4; }
.profile-section h2 { max-width: 800px; margin: 0 0 18px; color: var(--fc-navy-900); font-size: clamp(1.75rem, 3vw, 2.65rem); line-height: 1.2; letter-spacing: -.025em; }
.profile-section h3 { margin: 0 0 10px; color: var(--fc-navy-900); font-size: 1.1rem; line-height: 1.4; }
.profile-details { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: 24px; }
.profile-card { padding: clamp(24px, 4vw, 38px); border: 1px solid var(--fc-line); border-radius: var(--fc-radius); background: #fff; box-shadow: 0 12px 34px rgba(7, 37, 61, .07); }
.profile-card > :last-child { margin-bottom: 0; }
.profile-notice { margin-top: 26px; padding: 18px 20px; border-left: 4px solid var(--fc-gold-500); border-radius: 8px; background: #fff7e8; }
.profile-notice strong { color: var(--fc-navy-900); }
.profile-notice p { margin: 5px 0 0; }
.profile-facts { display: grid; gap: 0; margin: 0; }
.profile-facts div { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 18px; padding: 14px 0; border-bottom: 1px solid var(--fc-line); }
.profile-facts div:last-child { border-bottom: 0; }
.profile-facts dt { color: var(--fc-muted); font-size: .82rem; font-weight: 800; text-transform: uppercase; }
.profile-facts dd { margin: 0; color: var(--fc-navy-900); font-weight: 800; }
.profile-answer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.profile-next { display: grid; gap: 24px; }
.profile-next > div:first-child p:last-child { max-width: 720px; }
.profile-paths { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.profile-paths a { min-height: 50px; padding: 13px 15px; border: 1px solid var(--fc-line); border-radius: 9px; background: #fff; font-weight: 800; text-align: center; text-decoration: none; }
.profile-paths a:hover { border-color: var(--fc-teal-700); background: var(--fc-teal-100); }
.profile-share { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; color: var(--fc-muted); }
.profile-share span { color: var(--fc-navy-900); font-weight: 900; }
.profile-share a { font-weight: 800; }
:where(a, button):focus-visible { outline: 3px solid var(--fc-gold-300); outline-offset: 3px; }

@media (max-width: 860px) {
  .profile-hero__grid, .profile-details { grid-template-columns: 1fr; }
  .profile-figure { width: min(320px, 82vw); }
  .profile-hero__copy { text-align: center; }
  .profile-role, .profile-intro { margin-inline: auto; }
  .profile-actions { justify-content: center; }
  .profile-answer-grid { grid-template-columns: 1fr; }
  .profile-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 540px) {
  .profile-shell { width: min(100% - 28px, 1180px); }
  .profile-hero { padding-bottom: 52px; }
  .profile-breadcrumb { margin-bottom: 30px; }
  .profile-section { padding: 48px 0; }
  .profile-card { padding: 22px; }
  .profile-facts div { grid-template-columns: 1fr; gap: 3px; }
  .profile-paths { grid-template-columns: 1fr; }
  .profile-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

@media print {
  #fc-master-header, #fc-master-footer, .profile-actions, .profile-share { display: none !important; }
  .profile-hero { padding: 28px 0; color: #000; background: #fff; }
  .profile-hero h1, .profile-role, .profile-intro, .profile-figure figcaption { color: #000; }
  .profile-section { padding: 26px 0; }
  .profile-card { box-shadow: none; }
}
