:root {

  --navy:
    #14213d;

  --navy-deep:
    #0d1830;

  --navy-soft:
    #263654;

  --navy-pale:
    #52627a;

  --gold:
    #ad7a20;

  --gold-deep:
    #8d6118;

  --gold-soft:
    #d7b56f;

  --ivory:
    #faf7ef;

  --ivory-deep:
    #f1eadc;

  --paper:
    #fffdf8;

  --white:
    #ffffff;

  --text:
    #1d2a42;

  --muted:
    #627087;

  --line:
    rgba(173, 122, 32, .22);

  --navy-line:
    rgba(20, 33, 61, .10);

  --shadow:
    rgba(40, 31, 18, .11);
}


* {
  box-sizing:
    border-box;
}


html {

  min-height:
    100%;

  scroll-behavior:
    smooth;

  background:
    var(--ivory);
}


body {

  margin:
    0;

  min-height:
    100vh;

  color:
    var(--text);

  background:
    radial-gradient(
      circle at 82% 3%,
      rgba(255,255,255,.98),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      #fbf8f1,
      #f3ecdf 62%,
      #f9f6ef
    );

  font-family:
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}


a {
  color:
    inherit;
}


.team-page {

  min-height:
    100vh;

  overflow:
    hidden;
}


/* ============================================================
   HEADER
============================================================ */

.site-header {

  width:
    min(
      1460px,
      calc(100% - 48px)
    );

  min-height:
    76px;

  margin:
    0 auto;

  display:
    flex;

  align-items:
    center;

  gap:
    34px;

  border-bottom:
    1px solid
    rgba(173,122,32,.18);
}


.brand-lockup {

  display:
    inline-flex;

  align-items:
    center;

  gap:
    11px;

  flex:
    0 0 auto;

  text-decoration:
    none;
}


.brand-seal {

  width:
    42px;

  height:
    42px;

  object-fit:
    contain;
}


.brand-copy {

  display:
    flex;

  flex-direction:
    column;

  line-height:
    1;
}


.brand-copy strong {

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    20px;

  font-weight:
    600;

  letter-spacing:
    .04em;
}


.brand-copy small {

  margin-top:
    5px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    800;

  letter-spacing:
    .18em;
}


.site-navigation {

  margin-left:
    auto;

  display:
    flex;

  align-items:
    center;

  gap:
    21px;
}


.site-navigation > a {

  color:
    var(--navy-soft);

  text-decoration:
    none;

  font-size:
    12px;

  font-weight:
    650;

  transition:
    color 160ms ease;
}


.site-navigation > a:hover,
.site-navigation > a[aria-current="page"] {

  color:
    var(--gold);
}


.site-navigation .profile-link {

  min-height:
    39px;

  display:
    inline-flex;

  align-items:
    center;

  padding:
    0 14px;

  border:
    1px solid
    rgba(173,122,32,.34);

  border-radius:
    999px;

  background:
    rgba(255,255,255,.64);
}


/* ============================================================
   HERO
============================================================ */

.team-hero {

  position:
    relative;

  width:
    min(
      1380px,
      calc(100% - 64px)
    );

  min-height:
    710px;

  margin:
    0 auto;

  padding:
    112px 0 125px;

  display:
    grid;

  grid-template-columns:
    minmax(0, 1.35fr)
    minmax(340px, .65fr);

  gap:
    clamp(
      60px,
      8vw,
      130px
    );

  align-items:
    center;
}


.team-hero::before {

  content:
    "";

  position:
    absolute;

  width:
    690px;

  height:
    690px;

  top:
    -195px;

  right:
    -295px;

  border:
    1px solid
    rgba(173,122,32,.09);

  border-radius:
    50%;

  box-shadow:
    inset 0 0 0 80px
    rgba(173,122,32,.015);

  pointer-events:
    none;
}


.team-hero::after {

  content:
    "";

  position:
    absolute;

  width:
    350px;

  height:
    350px;

  right:
    -90px;

  top:
    -25px;

  border:
    1px solid
    rgba(173,122,32,.07);

  border-radius:
    50%;

  pointer-events:
    none;
}


.eyebrow,
.section-eyebrow {

  margin:
    0 0 13px;

  color:
    var(--gold);

  font-size:
    10px;

  font-weight:
    850;

  letter-spacing:
    .19em;
}


.hero-copy h1 {

  max-width:
    900px;

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      3.8rem,
      6.5vw,
      7rem
    );

  font-weight:
    500;

  line-height:
    .94;

  letter-spacing:
    -.055em;
}


.hero-copy h1 em {

  display:
    block;

  margin-top:
    14px;

  color:
    var(--gold);

  font-size:
    .59em;

  font-weight:
    400;

  line-height:
    1.07;
}


.hero-lead {

  max-width:
    780px;

  margin:
    35px 0 0;

  color:
    var(--text);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      1.2rem,
      2vw,
      1.55rem
    );

  line-height:
    1.6;
}


.hero-body {

  max-width:
    720px;

  margin:
    19px 0 0;

  color:
    var(--muted);

  font-size:
    14px;

  line-height:
    1.78;
}


/* ============================================================
   HERO INSTITUTION
============================================================ */

.hero-institution {

  position:
    relative;

  padding:
    42px 38px;

  border:
    1px solid
    var(--line);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.95),
      rgba(247,241,228,.80)
    );

  box-shadow:
    0 30px 75px
    rgba(40,31,18,.10);
}


.hero-institution::before {

  content:
    "";

  position:
    absolute;

  top:
    0;

  left:
    38px;

  width:
    90px;

  height:
    2px;

  background:
    var(--gold);
}


.institution-seal {

  width:
    82px;

  height:
    82px;

  display:
    grid;

  place-items:
    center;

  margin-bottom:
    30px;

  border:
    1px solid
    rgba(173,122,32,.30);

  border-radius:
    50%;

  background:
    rgba(255,255,255,.58);
}


.institution-seal img {

  width:
    65px;

  height:
    65px;

  object-fit:
    contain;
}


.institution-label {

  margin:
    0 0 25px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    850;

  letter-spacing:
    .17em;
}


.hero-institution > strong {

  display:
    block;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    25px;

  font-weight:
    500;
}


.hero-institution > span {

  display:
    block;

  width:
    24px;

  height:
    1px;

  margin:
    12px 0;

  background:
    rgba(173,122,32,.40);
}


.institution-rule {

  height:
    1px;

  margin:
    29px 0 17px;

  background:
    linear-gradient(
      90deg,
      rgba(173,122,32,.45),
      transparent
    );
}


.hero-institution small {

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    800;

  letter-spacing:
    .16em;
}


/* ============================================================
   SHARED SECTION
============================================================ */

.leadership-intro {

  width:
    min(
      1320px,
      calc(100% - 64px)
    );

  margin:
    0 auto;

  padding:
    105px 0;

  display:
    grid;

  grid-template-columns:
    145px minmax(0,1fr);

  gap:
    50px;

  border-top:
    1px solid
    rgba(173,122,32,.16);
}


.section-marker {

  padding-top:
    4px;
}


.section-marker > span {

  display:
    block;

  color:
    var(--gold);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    36px;
}


.section-marker > small {

  display:
    block;

  max-width:
    110px;

  margin-top:
    8px;

  color:
    var(--muted);

  font-size:
    8px;

  font-weight:
    800;

  line-height:
    1.5;

  letter-spacing:
    .15em;
}


.section-content h2,
.architect-heading h2,
.directors-heading h2,
.responsibility-copy h2,
.minds-heading h2,
.assurance-copy h2,
.closing-section h2 {

  max-width:
    980px;

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      2.35rem,
      4.4vw,
      4.2rem
    );

  font-weight:
    500;

  line-height:
    1.07;

  letter-spacing:
    -.04em;
}


.prose-grid {

  display:
    grid;

  grid-template-columns:
    repeat(2,minmax(0,1fr));

  gap:
    42px;

  margin-top:
    35px;
}


.prose-grid p {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    15px;

  line-height:
    1.82;
}


.institutional-quote {

  max-width:
    970px;

  margin:
    56px 0 0;

  padding:
    6px 0 6px 30px;

  border-left:
    2px solid
    var(--gold);
}


.institutional-quote p {

  margin:
    0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      1.4rem,
      2.6vw,
      2rem
    );

  line-height:
    1.5;
}


/* ============================================================
   ARCHITECT
============================================================ */

.architect-section {

  padding:
    110px
    max(
      32px,
      calc((100vw - 1320px) / 2)
    );

  color:
    #fff;

  background:
    radial-gradient(
      circle at 15% 15%,
      rgba(215,181,111,.14),
      transparent 31%
    ),
    radial-gradient(
      circle at 88% 0%,
      rgba(255,255,255,.05),
      transparent 25%
    ),
    linear-gradient(
      135deg,
      var(--navy-deep),
      #1e314f
    );
}


.architect-heading {

  max-width:
    900px;
}


.architect-heading .section-eyebrow {

  color:
    var(--gold-soft);
}


.architect-heading h2 {

  color:
    #fff;
}


.architect-layout {

  display:
    grid;

  grid-template-columns:
    minmax(300px,.65fr)
    minmax(0,1.35fr);

  gap:
    clamp(
      55px,
      8vw,
      120px
    );

  align-items:
    center;

  margin-top:
    75px;
}


/* Portrait stage */

.architect-portrait {

  position:
    relative;

  width:
    min(100%,420px);

  aspect-ratio:
    1;

  margin:
    0 auto;

  display:
    grid;

  place-items:
    center;
}


.portrait-core {

  position:
    relative;

  z-index:
    3;

  width:
    210px;

  height:
    210px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(215,181,111,.46);

  border-radius:
    50%;

  background:
    radial-gradient(
      circle,
      rgba(255,255,255,.10),
      rgba(255,255,255,.025)
    );

  box-shadow:
    0 30px 80px
    rgba(0,0,0,.24),
    inset 0 0 45px
    rgba(215,181,111,.05);
}


.portrait-core::before {

  content:
    "";

  position:
    absolute;

  inset:
    13px;

  border:
    1px solid
    rgba(215,181,111,.16);

  border-radius:
    50%;
}


.portrait-core img {

  width:
    158px;

  height:
    158px;

  object-fit:
    contain;
}


.portrait-orbit {

  position:
    absolute;

  border:
    1px solid
    rgba(215,181,111,.18);

  border-radius:
    50%;
}


.orbit-one {

  width:
    310px;

  height:
    310px;
}


.orbit-two {

  width:
    390px;

  height:
    260px;

  transform:
    rotate(-28deg);
}


.portrait-node {

  position:
    absolute;

  z-index:
    4;

  width:
    9px;

  height:
    9px;

  border-radius:
    50%;

  background:
    var(--gold-soft);

  box-shadow:
    0 0 20px
    rgba(215,181,111,.45);
}


.node-one {

  top:
    17%;

  right:
    18%;
}


.node-two {

  bottom:
    21%;

  left:
    12%;
}


.node-three {

  right:
    4%;

  bottom:
    37%;
}


/* Profile */

.architect-profile {

  max-width:
    760px;
}


.profile-kicker {

  margin:
    0 0 15px;

  color:
    var(--gold-soft);

  font-size:
    8px;

  font-weight:
    850;

  letter-spacing:
    .17em;
}


.architect-profile h3 {

  margin:
    0;

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      2.3rem,
      4vw,
      4rem
    );

  font-weight:
    500;

  line-height:
    1.05;

  letter-spacing:
    -.035em;
}


.architect-profile h3 span {

  display:
    block;

  margin-top:
    8px;

  color:
    var(--gold-soft);

  font-size:
    .45em;

  letter-spacing:
    0;
}


.profile-title {

  margin:
    18px 0 0;

  color:
    rgba(255,255,255,.88);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    18px;

  line-height:
    1.5;
}


.profile-rule {

  width:
    90px;

  height:
    2px;

  margin:
    31px 0;

  background:
    var(--gold);
}


.architect-profile > p:not(.profile-kicker):not(.profile-title) {

  max-width:
    730px;

  margin:
    17px 0 0;

  color:
    rgba(255,255,255,.64);

  font-size:
    13px;

  line-height:
    1.78;
}


.architect-thesis {

  margin-top:
    34px;

  padding:
    27px 29px;

  border-left:
    2px solid
    var(--gold-soft);

  background:
    rgba(255,255,255,.045);
}


.architect-thesis small {

  display:
    block;

  color:
    var(--gold-soft);

  font-size:
    7px;

  font-weight:
    850;

  letter-spacing:
    .16em;
}


.architect-thesis strong {

  display:
    block;

  margin-top:
    11px;

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    clamp(
      1.25rem,
      2vw,
      1.65rem
    );

  font-weight:
    500;

  line-height:
    1.5;
}


.profile-disciplines {

  display:
    flex;

  flex-wrap:
    wrap;

  gap:
    8px;

  margin-top:
    30px;
}


.profile-disciplines span {

  padding:
    7px 11px;

  border:
    1px solid
    rgba(215,181,111,.20);

  border-radius:
    999px;

  color:
    rgba(255,255,255,.68);

  font-size:
    9px;
}


/* ============================================================
   MEDICAL DIRECTORS
============================================================ */

.directors-section {

  width:
    min(
      1320px,
      calc(100% - 64px)
    );

  margin:
    0 auto;

  padding:
    115px 0;
}


.directors-heading {

  max-width:
    950px;
}


.directors-heading > p:last-child {

  max-width:
    780px;

  margin:
    25px 0 0;

  color:
    var(--muted);

  font-size:
    14px;

  line-height:
    1.78;
}


.director-principles {

  display:
    grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:
    1px;

  margin-top:
    58px;

  border:
    1px solid
    var(--navy-line);

  background:
    var(--navy-line);
}


.director-principles article {

  min-height:
    390px;

  padding:
    30px;

  display:
    flex;

  flex-direction:
    column;

  background:
    rgba(250,247,239,.97);
}


.principle-number {

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    800;
}


.principle-icon {

  width:
    52px;

  height:
    52px;

  margin-top:
    42px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.30);

  border-radius:
    50%;

  color:
    var(--gold);

  font-size:
    19px;
}


.principle-label {

  margin:
    28px 0 8px;

  color:
    var(--gold);

  font-size:
    8px;

  font-weight:
    850;

  letter-spacing:
    .15em;
}


.director-principles h3 {

  margin:
    0 0 15px;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    24px;

  font-weight:
    500;

  line-height:
    1.3;
}


.director-principles article > p:last-child {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    12px;

  line-height:
    1.72;
}


/* ============================================================
   RESPONSIBILITY
============================================================ */

.responsibility-section {

  padding:
    105px
    max(
      32px,
      calc((100vw - 1320px) / 2)
    );

  display:
    grid;

  grid-template-columns:
    minmax(0,.9fr)
    minmax(480px,1.1fr);

  gap:
    85px;

  align-items:
    center;

  background:
    linear-gradient(
      135deg,
      #f0e8d9,
      #faf7ef 60%,
      #f5efe4
    );

  border-top:
    1px solid
    rgba(173,122,32,.15);

  border-bottom:
    1px solid
    rgba(173,122,32,.15);
}


.responsibility-copy > p:not(.section-eyebrow) {

  max-width:
    700px;

  margin:
    20px 0 0;

  color:
    var(--muted);

  font-size:
    13px;

  line-height:
    1.76;
}


.responsibility-model {

  display:
    grid;

  grid-template-columns:
    1fr 100px 1fr;

  align-items:
    center;
}


.responsibility-node {

  min-height:
    230px;

  padding:
    29px;

  display:
    flex;

  flex-direction:
    column;

  justify-content:
    center;

  border:
    1px solid
    var(--line);

  background:
    rgba(255,255,255,.70);

  box-shadow:
    0 18px 45px
    rgba(40,31,18,.055);
}


.responsibility-node small {

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    850;

  letter-spacing:
    .15em;
}


.responsibility-node strong {

  margin-top:
    25px;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    27px;

  font-weight:
    500;
}


.responsibility-node > span {

  margin-top:
    9px;

  color:
    var(--muted);

  font-size:
    10px;

  line-height:
    1.6;
}


.responsibility-bridge {

  display:
    flex;

  flex-direction:
    column;

  align-items:
    center;

  justify-content:
    center;
}


.responsibility-bridge > span {

  width:
    1px;

  height:
    54px;

  background:
    linear-gradient(
      transparent,
      rgba(173,122,32,.46)
    );
}


.responsibility-bridge > span:last-child {

  background:
    linear-gradient(
      rgba(173,122,32,.46),
      transparent
    );
}


.responsibility-bridge div {

  width:
    78px;

  height:
    78px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.40);

  border-radius:
    50%;

  color:
    var(--gold);

  background:
    var(--ivory);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    9px;

  letter-spacing:
    .08em;
}


/* ============================================================
   MINDS OF ATLAS
============================================================ */

.minds-section {

  width:
    min(
      1320px,
      calc(100% - 64px)
    );

  margin:
    0 auto;

  padding:
    120px 0;
}


.minds-heading {

  max-width:
    920px;
}


.minds-heading h2 {

  font-size:
    clamp(
      3rem,
      6vw,
      6rem
    );
}


.minds-heading > p:last-child {

  max-width:
    790px;

  margin:
    25px 0 0;

  color:
    var(--muted);

  font-size:
    14px;

  line-height:
    1.78;
}


.minds-directory {

  display:
    grid;

  grid-template-columns:
    repeat(3,minmax(0,1fr));

  gap:
    18px;

  margin-top:
    65px;
}


.future-profile {

  position:
    relative;

  min-height:
    355px;

  padding:
    30px;

  border:
    1px solid
    var(--line);

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.84),
      rgba(247,241,228,.60)
    );

  overflow:
    hidden;
}


.future-profile::after {

  content:
    "";

  position:
    absolute;

  width:
    190px;

  height:
    190px;

  right:
    -100px;

  bottom:
    -100px;

  border:
    1px solid
    rgba(173,122,32,.09);

  border-radius:
    50%;
}


.future-profile-head {

  display:
    flex;

  align-items:
    center;

  gap:
    17px;
}


.future-avatar {

  width:
    68px;

  height:
    68px;

  flex:
    0 0 68px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.30);

  border-radius:
    50%;

  color:
    var(--gold);

  background:
    rgba(255,255,255,.60);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    15px;
}


.future-avatar img {

  width:
    53px;

  height:
    53px;

  object-fit:
    contain;
}


.profile-status {

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    850;

  letter-spacing:
    .15em;
}


.future-profile h3 {

  margin:
    7px 0 0;

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    22px;

  font-weight:
    500;
}


.future-profile > p {

  max-width:
    330px;

  margin:
    35px 0 0;

  color:
    var(--muted);

  font-size:
    11px;

  line-height:
    1.72;
}


.future-lines {

  margin-top:
    40px;
}


.future-lines span {

  display:
    block;

  height:
    1px;

  margin-top:
    13px;

  background:
    linear-gradient(
      90deg,
      rgba(20,33,61,.13),
      transparent
    );
}


.future-lines span:nth-child(1) {
  width:
    76%;
}


.future-lines span:nth-child(2) {
  width:
    58%;
}


.future-lines span:nth-child(3) {
  width:
    42%;
}


.directory-note {

  margin-top:
    18px;

  padding:
    25px 28px;

  display:
    grid;

  grid-template-columns:
    50px 1fr;

  gap:
    19px;

  align-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.20);

  background:
    rgba(255,255,255,.42);
}


.directory-note-symbol {

  width:
    45px;

  height:
    45px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.30);

  border-radius:
    50%;

  color:
    var(--gold);
}


.directory-note strong {

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    16px;

  font-weight:
    500;
}


.directory-note p {

  margin:
    6px 0 0;

  color:
    var(--muted);

  font-size:
    10px;

  line-height:
    1.6;
}


/* ============================================================
   ASSURANCE
============================================================ */

.assurance-section {

  width:
    min(
      1180px,
      calc(100% - 64px)
    );

  margin:
    15px auto 120px;

  padding:
    62px;

  display:
    grid;

  grid-template-columns:
    110px 1fr;

  gap:
    45px;

  color:
    #fff;

  background:
    radial-gradient(
      circle at 90% 0%,
      rgba(215,181,111,.15),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      var(--navy),
      #203451
    );

  box-shadow:
    0 30px 70px
    rgba(20,33,61,.17);
}


.assurance-symbol {

  width:
    90px;

  height:
    90px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(215,181,111,.42);

  border-radius:
    50%;

  color:
    var(--gold-soft);

  font-size:
    32px;
}


.assurance-copy .section-eyebrow {

  color:
    var(--gold-soft);
}


.assurance-copy h2 {

  color:
    #fff;
}


.assurance-copy > p:not(.section-eyebrow) {

  max-width:
    850px;

  margin:
    22px 0 0;

  color:
    rgba(255,255,255,.66);

  font-size:
    13px;

  line-height:
    1.78;
}


.assurance-copy > strong {

  display:
    block;

  margin-top:
    30px;

  padding-top:
    27px;

  border-top:
    1px solid
    rgba(215,181,111,.22);

  color:
    #fff;

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    21px;

  font-weight:
    500;
}


/* ============================================================
   CLOSING
============================================================ */

.closing-section {

  width:
    min(
      1120px,
      calc(100% - 64px)
    );

  margin:
    20px auto 110px;

  padding:
    76px;

  text-align:
    center;

  border:
    1px solid
    var(--line);

  background:
    radial-gradient(
      circle at 50% -10%,
      rgba(215,181,111,.19),
      transparent 42%
    ),
    rgba(255,255,255,.58);

  box-shadow:
    0 25px 65px
    rgba(40,31,18,.07);
}


.closing-symbol {

  width:
    68px;

  height:
    68px;

  margin:
    0 auto 27px;

  display:
    grid;

  place-items:
    center;

  border:
    1px solid
    rgba(173,122,32,.36);

  border-radius:
    50%;

  color:
    var(--gold);

  font-size:
    24px;
}


.closing-section h2 {

  margin:
    0 auto;
}


.closing-section > p:not(.section-eyebrow) {

  max-width:
    780px;

  margin:
    20px auto 0;

  color:
    var(--muted);

  font-size:
    13px;

  line-height:
    1.76;
}


.closing-actions {

  display:
    flex;

  flex-wrap:
    wrap;

  justify-content:
    center;

  gap:
    11px;

  margin-top:
    37px;
}


.primary-action,
.secondary-action {

  min-height:
    46px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  gap:
    9px;

  padding:
    0 19px;

  border-radius:
    999px;

  text-decoration:
    none;

  font-size:
    12px;

  font-weight:
    750;
}


.primary-action {

  color:
    #fff;

  background:
    var(--navy);

  box-shadow:
    0 12px 28px
    rgba(20,33,61,.17);
}


.secondary-action {

  color:
    var(--navy);

  border:
    1px solid
    rgba(20,33,61,.14);

  background:
    rgba(255,255,255,.62);
}


/* ============================================================
   FOOTER
============================================================ */

.site-footer {

  width:
    min(
      1380px,
      calc(100% - 64px)
    );

  min-height:
    125px;

  margin:
    0 auto;

  display:
    grid;

  grid-template-columns:
    auto 1fr auto;

  gap:
    30px;

  align-items:
    center;

  border-top:
    1px solid
    rgba(173,122,32,.18);
}


.footer-brand {

  display:
    flex;

  flex-direction:
    column;
}


.footer-brand strong {

  color:
    var(--navy);

  font-family:
    Georgia,
    "Times New Roman",
    serif;

  font-size:
    15px;

  letter-spacing:
    .05em;
}


.footer-brand span {

  margin-top:
    4px;

  color:
    var(--gold);

  font-size:
    7px;

  font-weight:
    800;

  letter-spacing:
    .17em;
}


.site-footer > p {

  margin:
    0;

  color:
    var(--muted);

  font-size:
    10px;
}


.site-footer nav {

  display:
    flex;

  gap:
    18px;
}


.site-footer nav a {

  color:
    rgba(70,78,91,.70);

  text-decoration:
    none;

  font-size:
    10px;
}


/* ============================================================
   INTERACTION
============================================================ */

.primary-action,
.secondary-action,
.site-navigation a,
.future-profile {

  transition:
    transform 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    color 180ms ease;
}


.primary-action:hover,
.secondary-action:hover {

  transform:
    translateY(-2px);
}


.future-profile:hover {

  transform:
    translateY(-4px);

  border-color:
    rgba(173,122,32,.36);

  box-shadow:
    0 22px 55px
    rgba(40,31,18,.08);
}


:focus-visible {

  outline:
    3px solid
    rgba(173,122,32,.48);

  outline-offset:
    3px;
}


/* ============================================================
   RESPONSIVE
============================================================ */

@media (max-width: 1120px) {

  .site-header {

    flex-wrap:
      wrap;

    padding:
      17px 0;
  }


  .site-navigation {

    width:
      100%;

    margin-left:
      0;

    flex-wrap:
      wrap;
  }


  .team-hero,
  .architect-layout,
  .responsibility-section {

    grid-template-columns:
      1fr;
  }


  .hero-institution {

    max-width:
      620px;
  }


  .director-principles {

    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }


  .responsibility-model {

    max-width:
      760px;
  }


  .minds-directory {

    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


@media (max-width: 760px) {

  .site-header,
  .team-hero,
  .leadership-intro,
  .directors-section,
  .minds-section,
  .assurance-section,
  .closing-section,
  .site-footer {

    width:
      calc(100% - 30px);
  }


  .site-navigation {

    gap:
      14px;
  }


  .site-navigation > a {

    font-size:
      11px;
  }


  .team-hero {

    padding:
      70px 0 80px;
  }


  .leadership-intro {

    grid-template-columns:
      1fr;

    gap:
      25px;

    padding:
      75px 0;
  }


  .section-marker {

    display:
      flex;

    align-items:
      center;

    gap:
      12px;
  }


  .section-marker > span {

    font-size:
      25px;
  }


  .section-marker > small {

    max-width:
      none;

    margin:
      0;
  }


  .prose-grid,
  .director-principles,
  .minds-directory {

    grid-template-columns:
      1fr;
  }


  .architect-section {

    padding:
      78px 20px;
  }


  .architect-layout {

    margin-top:
      50px;
  }


  .architect-portrait {

    max-width:
      340px;
  }


  .portrait-core {

    width:
      170px;

    height:
      170px;
  }


  .portrait-core img {

    width:
      128px;

    height:
      128px;
  }


  .orbit-one {

    width:
      255px;

    height:
      255px;
  }


  .orbit-two {

    width:
      315px;

    height:
      210px;
  }


  .responsibility-section {

    padding:
      75px 20px;

    gap:
      50px;
  }


  .responsibility-model {

    grid-template-columns:
      1fr;
  }


  .responsibility-bridge {

    min-height:
      180px;
  }


  .responsibility-bridge > span {

    height:
      42px;
  }


  .minds-section {

    padding:
      85px 0;
  }


  .assurance-section {

    grid-template-columns:
      1fr;

    padding:
      40px 28px;
  }


  .closing-section {

    padding:
      52px 27px;
  }


  .site-footer {

    grid-template-columns:
      1fr;

    gap:
      15px;

    padding:
      30px 0;
  }


  .site-footer nav {

    flex-wrap:
      wrap;
  }

}


@media (max-width: 480px) {

  .brand-seal {

    width:
      36px;

    height:
      36px;
  }


  .hero-copy h1 {

    font-size:
      clamp(
        3rem,
        16vw,
        4.4rem
      );
  }


  .hero-institution {

    padding:
      31px 25px;
  }


  .architect-portrait {

    transform:
      scale(.88);
  }


  .future-profile {

    padding:
      25px 22px;
  }


  .directory-note {

    grid-template-columns:
      1fr;
  }

}


@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {

    scroll-behavior:
      auto !important;

    transition-duration:
      .001ms !important;

    animation-duration:
      .001ms !important;

    animation-iteration-count:
      1 !important;
  }

}
