/* ==========================================================================
   IWMI — shared site styles (extracted from the index.html design system)
   ========================================================================== */
:root{
  --navy:   #08335d;
  --navy: #365DBC;
  --navydeep:#00203F;
  --navydeep: #22417F;
  --royal:  #365DBC;
  --steel:  #5B7C9D;
  --powder: #AEC4DA;
  --mist:   #E8EEF5;
  --paper:  #F6F8FB;
  --ink:    #10263D;
  --body:   #33475C;
  --mute:   #5B7C9D;
  --gold:   #f7cd70;
  --goldlt: #dfc47e;
  --golddeep:#A97C2E;
  --ivory:  #FBF6EC;
  --cream:  #F4ECDA;
  --sand:   #E8DCC0;
}
body{ font-family:'Libre Franklin',system-ui,sans-serif; color:#33475C; }
.font-display{ font-family:'Cormorant Garamond',Georgia,serif; }

/* .eyebrow{ font-size:.7rem; letter-spacing:.32em; text-transform:uppercase; font-weight:600; color:#0A4A86; } */
.eyebrow-l{ color:#AEC4DA; }

/* engraved double rule — the diplomatic "document" signature */
.engrave{ position:relative; }
.engrave::before,.engrave::after{ content:""; display:block; height:1px; background:currentColor; opacity:.35; }
.engrave::before{ margin-bottom:3px; }
.engrave::after{ opacity:.18; }
.rule2{ display:flex; align-items:center; gap:14px; }
.rule2::before,.rule2::after{ content:""; height:1px; flex:1; background:linear-gradient(90deg,transparent,rgba(10,74,134,.4),transparent); }
.rule2-l::before,.rule2-l::after{ background:linear-gradient(90deg,transparent,rgba(174,196,218,.5),transparent); }
.rule2-gold::before,.rule2-gold::after{ background:linear-gradient(90deg,transparent,rgba(228,207,158,.65),transparent); }

/* rotating engraved seal */
.seal-rot{ animation:spin 44s linear infinite; }
@keyframes spin{ to{ transform:rotate(360deg); } }
.seal-text{ font-family:'Libre Franklin',sans-serif; font-size:8.5px; letter-spacing:2.4px; font-weight:600; text-transform:uppercase; }

/* guilloché-ish concentric texture for navy hero */
.officiate{ background:
   radial-gradient(circle at 50% 42%, rgba(174,196,218,.05), transparent 42%),
   repeating-radial-gradient(circle at 50% 42%, rgba(174,196,218,.01) 0 1px, transparent 1px 22px); }

/* nav */
#nav{ transition:background .3s ease, box-shadow .3s ease, border-color .3s ease; }
#nav.scrolled{ background:rgba(0,48,96,.94); backdrop-filter:blur(12px); box-shadow:0 10px 30px -16px rgba(0,32,63,.7); }
/* inner pages start with a solid nav so text is readable over white */
#nav.solid{ background:rgba(255,255,255,.94); backdrop-filter:blur(12px); box-shadow:0 1px 12px rgba(16,23,61,.08); }
#nav.solid .navlink{ color:var(--navydeep); text-shadow:none; }
#nav.solid .webname{ color:var(--navydeep); }
#nav.solid .webtagline{ color:var(--navy); text-shadow:none; }
#nav.solid .btn-lineL{ color:var(--navydeep); border-color:rgba(34,65,127,.3); }
#nav.solid #menuBtn{ color:var(--navydeep); }



.navlink{ position:relative; }
.navlink::after{ content:""; position:absolute; left:0; bottom:-4px; height:1px; width:0; background:#AEC4DA; transition:width .3s ease; }
.navlink:hover::after,.navlink:focus-visible::after,.navlink.active::after{ width:100%; }
/* .navlink.active{ color:#fff; } */

/* buttons */
.btn-gold{ background:var(--gold); color:#00203F; transition:transform .25s, background .25s, box-shadow .25s; }
.btn-gold:hover{ transform:translateY(-2px); background:var(--goldlt); box-shadow:0 16px 34px -14px rgba(198,161,91,.5); }
.btn-navy{ background:#003060; color:#F6F8FB; transition:transform .25s, background .25s, box-shadow .25s; }
.btn-navy:hover{ transform:translateY(-2px); background:#0A4A86; box-shadow:0 16px 34px -16px rgba(0,48,96,.55); }
.btn-line{ border:1px solid rgba(0,48,96,.3); color:#003060; transition:border-color .25s, background .25s, transform .25s; }
.btn-line:hover{ border-color:#0A4A86; background:rgba(10,74,134,.06); transform:translateY(-2px); }
.btn-lineL{ border:1px solid rgba(246,248,251,.45); color:#F6F8FB; transition:background .25s, border-color .25s, transform .25s; }
.btn-lineL:hover{ background:rgba(246,248,251,.1); border-color:#F6F8FB; transform:translateY(-2px); }

.arrow{ transition:gap .25s; } .group:hover .arrow{ gap:.7rem; }

.card-eng{ border:1px solid rgba(0,48,96,.14); transition:transform .4s, box-shadow .4s, border-color .4s; }
.card-eng:hover{ transform:translateY(-4px); box-shadow:0 24px 50px -26px rgba(0,48,96,.4); border-color:rgba(0,48,96,.3); }
.card-eng img{ transition:transform .8s cubic-bezier(.2,.6,.2,1); }
.card-eng:hover img{ transform:scale(1.05); }

/* medallion portrait — blue ring with an occasional light glint */
@property --shimmer-angle{ syntax:'<angle>'; inherits:false; initial-value:0deg; }
.medallion{
  position:relative; border-radius:9999px; padding:4px;
  background:conic-gradient(from 0deg,var(--steel),var(--powder),var(--steel),var(--royal),var(--powder),var(--steel));
  box-shadow: 0 0 2px 8px rgba(200,200,200,.1);
}
.medallion::before{
  content:""; position:absolute; inset:0; border-radius:inherit; opacity:0;
  background:conic-gradient(from var(--shimmer-angle),
    transparent 0deg 40deg,
    rgba(232,238,245,.35) 48deg,
    rgba(255,255,255,.75) 54deg,
    rgba(174,196,218,.4) 62deg,
    transparent 74deg 360deg);
  animation:medallion-glint var(--glint-dur,9s) ease-in-out infinite;
  animation-delay:var(--glint-delay,0s);
}
@keyframes medallion-glint{
  0%, 62%  { opacity:0; --shimmer-angle:-30deg; }
  72%      { opacity:1; }
  88%      { opacity:1; }
  100%     { opacity:0; --shimmer-angle:330deg; }
}
.medallion img{ position:relative; z-index:1; border-radius:9999px; border:3px solid #F6F8FB; }

.vfacade{ cursor:pointer; }
.vfacade .play{ transition:transform .3s, background .3s; }
.vfacade:hover .play{ transform:scale(1.08); }

.reveal{ opacity:0; transform:translateY(24px); transition:opacity .8s cubic-bezier(.2,.6,.2,1), transform .8s cubic-bezier(.2,.6,.2,1); }
.reveal.in{ opacity:1; transform:none; }
.d1{ transition-delay:.1s } .d2{ transition-delay:.2s } .d3{ transition-delay:.3s } .d4{ transition-delay:.4s } .d5{ transition-delay:.5s }

::selection{ background:#003060; color:#fff; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{ outline:2px solid #0A4A86; outline-offset:3px; border-radius:3px; }
.skip{ position:absolute; left:-999px; }
.skip:focus{ left:12px; top:12px; z-index:70; background:#003060; color:#fff; padding:.6rem 1rem; border-radius:8px; }

@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1; transform:none; transition:none }
  .seal-rot{ animation:none }
  .medallion::before{ animation:none; opacity:0 }
  html{ scroll-behavior:auto }
}

/* Signature: dawn / sunrise gradient */
.dawn{ background:linear-gradient(115deg,var(--navy) 0%,var(--steel) 46%,var(--royal) 100%); }
.horizon{ height:2px; width:100%;
  background:linear-gradient(90deg,transparent,var(--royal) 18%,var(--steel) 50%,var(--navy) 82%,transparent); }
.horizon-short{ width:64px; height:2px;
  background:linear-gradient(90deg, var(--navy), var(--royal) 60%,var(--steel)); }
.horizon-center{ margin-left:auto; margin-right:auto; }

/* church-window arch for portraits */
.arch{ border-radius:150px 150px 18px 18px; overflow:hidden; }

/* page-header band for inner pages */
.page-head{ background:linear-gradient(115deg,var(--navydeep) 0%,var(--navy) 55%,var(--royal) 100%); }
.crumb a{ color:#AEC4DA; } .crumb a:hover{ color:#fff; }

/* Shared finish for inner-page heroes without a custom motto band. */
.standard-hero{ padding-bottom:5.75rem; }
.standard-hero > img{ opacity:.42 !important; }
.standard-hero > img + div{ background:linear-gradient(135deg,rgba(34,32,90,.72),rgba(34,65,127,.52),rgba(54,93,188,.32)) !important; }
.standard-hero-band{ position:absolute; right:0; bottom:0; left:0; padding:1rem 1.25rem; overflow:hidden;
  border-top:1px solid rgba(255,255,255,.12); color:rgba(201,216,242,.9); text-align:center;
  white-space:nowrap; font-size:11.5px; letter-spacing:.32em; text-transform:uppercase;
  text-shadow:0 1px 2px rgba(0,0,0,.2); }
.standard-hero-band span{ color:var(--goldlt); padding:0 .7em; }
@media (max-width:640px){ .standard-hero{ padding-bottom:5.25rem; } .standard-hero-band{ font-size:10px; letter-spacing:.2em; } }

/* form controls */
.field{ width:100%; border-radius:14px; background:#fff; border:1px solid rgba(0,48,96,.15);
  padding:.9rem 1.1rem; color:var(--ink); transition:border-color .25s, box-shadow .25s; }
.field::placeholder{ color:var(--mute); }
.field:focus{ border-color:var(--royal); outline:none; box-shadow:0 0 0 3px rgba(10,74,134,.12); }
label.lbl{ font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; font-weight:600; color:var(--royal); }

/* copy-to-clipboard button */
.copy-btn{ display:inline-flex; align-items:center; gap:.5rem; border:1px solid rgba(255,255,255,.28);
  color:#F6F8FB; padding:.5rem .9rem; border-radius:9999px; font-size:.8rem; font-weight:600;
  transition:background .2s, border-color .2s, transform .2s; cursor:pointer; }
.copy-btn:hover{ background:rgba(246,248,251,.12); border-color:#F6F8FB; transform:translateY(-1px); }
.copy-btn.copied{ background:#F6F8FB; color:#003060; border-color:#F6F8FB; }

/* account number display */
.acct-no{ font-family:'Libre Franklin',monospace; letter-spacing:.12em; font-variant-numeric:tabular-nums; }

/* blog post body typography */
.post-body{ color:var(--body); font-size:1.05rem; line-height:1.85; }
.post-body p{ margin:0 0 1.25rem; }
.post-body h3{ font-family:'Cormorant Garamond',Georgia,serif; color:var(--ink);
  font-size:1.7rem; font-weight:600; margin:2.25rem 0 .85rem; }
.post-body ul{ margin:0 0 1.5rem; padding-left:0; list-style:none; }
.post-body ul li{ position:relative; padding-left:1.6rem; margin-bottom:.75rem; }
.post-body ul li::before{ content:""; position:absolute; left:0; top:.62em;
  width:.5rem; height:.5rem; border-radius:9999px; background:var(--royal); }
.post-body strong{ color:var(--ink); }
.post-body a{ color:var(--royal); text-decoration:underline; }

/* scroll progress line (day advancing) */
#progress{ position:fixed; top:0; left:0; height:3px; width:0; z-index:60;
  background:linear-gradient(90deg,var(--royal),var(--steel),var(--navy)); transition:width .1s linear; }

/* ==========================================================================
   REDESIGN LAYER — warmth, rhythm & gold accents (2026 refresh)
   Additive: gives every page a warmer, less-flat feel without breaking prior markup.
   ========================================================================== */

/* Warm section skins — alternate these down a page for rhythm */
.sec-ivory{ background:var(--ivory); }
.sec-cream{ background:var(--cream); }
.sec-mist { background:var(--mist); }
/* soft warm wash used behind light sections that would otherwise be plain white */
.sec-glow{ background:
   radial-gradient(70% 60% at 12% 0%, rgba(247,205,112,.10), transparent 60%),
   radial-gradient(60% 55% at 100% 100%, rgba(174,196,218,.16), transparent 60%),
   var(--ivory); }
.sec-glow-white{ background:
   radial-gradient(60% 55% at 0% 0%, rgba(247,205,112,.07), transparent 55%),
   radial-gradient(55% 55% at 100% 100%, rgba(10,74,134,.05), transparent 55%),
   #fff; }

/* Gold accent eyebrow — a small mark + deep-gold label for light backgrounds */
.eyebrow-g{ font-size:.7rem; letter-spacing:.32em; text-transform:uppercase; font-weight:700; color:var(--golddeep); display:inline-flex; align-items:center; gap:.6rem; }
.eyebrow-g::before{ content:""; width:26px; height:2px; border-radius:2px;
  background:linear-gradient(90deg,var(--gold),var(--golddeep)); }

/* Gold hairline rule (short) for light sections */
.rule-gold{ width:60px; height:3px; border-radius:3px;
  background:linear-gradient(90deg,var(--gold),var(--golddeep)); }
.rule-gold.center{ margin-left:auto; margin-right:auto; }

/* Thin gold top-accent that can sit on a card */
.top-gold{ position:relative; }
.top-gold::before{ content:""; position:absolute; left:0; top:0; height:4px; width:100%;
  border-radius:16px 16px 0 0; background:linear-gradient(90deg,var(--gold),var(--golddeep)); }

/* Refined light card */
.card-soft{ background:#fff; border:1px solid var(--sand);
  box-shadow:0 20px 45px -30px rgba(8,51,93,.35);
  transition:transform .4s, box-shadow .4s, border-color .4s; }
.card-soft:hover{ transform:translateY(-5px); box-shadow:0 30px 60px -30px rgba(8,51,93,.42); border-color:var(--goldlt); }

/* Leadership — Executive Director spotlight */
.ed-ring{ position:relative; border-radius:9999px; padding:6px;
  background:conic-gradient(from 210deg,var(--gold),var(--goldlt),var(--powder),var(--gold)); }
.ed-ring img{ position:relative; z-index:1; border-radius:9999px; border:4px solid #fff; }
.ed-badge{ background:linear-gradient(90deg,var(--gold),var(--goldlt)); color:var(--navydeep);
  font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; font-weight:700;
  padding:.34rem .8rem; border-radius:9999px; display:inline-block; }

/* Testimony card on a light background */
.quote-soft{ background:#fff; border:1px solid var(--sand); border-top:3px solid var(--gold);
  transition:transform .4s, box-shadow .4s; }
.quote-soft:hover{ transform:translateY(-4px); box-shadow:0 26px 55px -30px rgba(8,51,93,.4); }
.quote-mark{ font-family:'Cormorant Garamond',Georgia,serif; color:var(--goldlt); line-height:.7; }

/* Gallery preview — subtle gold frame on hover */
.gtile{ position:relative; overflow:hidden; border-radius:1rem; }
.gtile::after{ content:""; position:absolute; inset:0; border-radius:1rem;
  box-shadow:inset 0 0 0 0 rgba(247,205,112,0); transition:box-shadow .4s; pointer-events:none; }
.gtile:hover::after{ box-shadow:inset 0 0 0 3px rgba(247,205,112,.85); }

/* Small caption chip for photos (Caritas-style context line) */
.cap-chip{ background: var(--royal); color:#F6F8FB; backdrop-filter:blur(4px);
  font-size:.72rem; line-height:1.35; }

/* Section-label kicker that stands over a photo */
.kicker-dark{ color:var(--gold); font-weight:700; letter-spacing:.28em; text-transform:uppercase; font-size:.7rem; }




  body{ font-family:'Libre Franklin',system-ui,sans-serif; color:#4B5680; background:#fff; }
  .font-display{ font-family:'Cormorant Garamond',Georgia,serif; }
  .script{ font-family:'Caveat',cursive; }
  ::selection{ background:#365DBC; color:#fff; }

  .eyebrow{ font-family:'Caveat',cursive; font-size:1.4rem; color:#FF6F61; line-height:1; }
  .eyebrow-l{ color:#F7D488; }
  .rule2{ width:64px; height:3px; border-radius:4px; background:linear-gradient(90deg,#FF6F61,#F5B93C); }
  .horizon-short{ width:64px; height:3px; border-radius:4px; background:linear-gradient(90deg, #365DBC99, var(--gold), #F5B93C, #FF6F61); }

  .btn-gold{ background:#F5B93C; color:#16205A; box-shadow:0 14px 34px -14px rgba(245,185,60,.55); transition:transform .25s ease, background .25s ease; }
  .btn-gold:hover{ background:#C9902A; transform:translateY(-2px); }
  .btn-lineL{ border:1px solid rgba(255,255,255,.4); color:#fff; transition:background .25s ease, transform .25s ease; }
  .btn-lineL:hover{ background:rgba(255,255,255,.12); transform:translateY(-2px); }
  .btn-navy{ background:#365DBC; color:#fff; box-shadow:0 14px 34px -16px rgba(54,93,188,.6); transition:transform .25s ease, background .25s ease; }
  .btn-navy:hover{ background:#24408F; transform:translateY(-2px); }

  .arrow span{ transition:transform .25s ease; display:inline-block; }
  .arrow:hover span{ transform:translateX(5px); }

  .officiate{ position:relative; }
  .seal-rot{ animation:sealspin 34s linear infinite; }
  @keyframes sealspin{ to{ transform:rotate(360deg); } }
  .seal-text{ font-family:'Libre Franklin',sans-serif; font-size:8.4px; letter-spacing:.22em; }

  .reveal{ opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease; }
  .reveal.in{ opacity:1; transform:translateY(0); }
  .reveal.d1{ transition-delay:.08s; }
  .reveal.d2{ transition-delay:.16s; }
  .reveal.d3{ transition-delay:.24s; }

  .soft{ box-shadow:0 24px 60px -34px rgba(22,32,90,.45); }
  .blob{ border-radius:44% 56% 58% 42% / 48% 44% 56% 52%; }

  @keyframes mqScroll{ from{ transform:translateX(0); } to{ transform:translateX(calc(-1 * var(--mq,0px))); } }

  
/* Base solid nav state */
#nav.scrolled {
  background-color: rgb(255 255 255 / 0.85); /* bg-white/95 */
  backdrop-filter: blur(10px); /* backdrop-blur */
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); /* shadow-sm */
}

#nav.scrolled .navlink {
  color: var(--navydeep); /* text-body / text-gray-700 */
  text-shadow:none !important;
}

#nav.scrolled .webname {
  color: var(--navydeep); /* text-ink / text-gray-900 */
}

#nav.scrolled .webtagline {
  color: var(--navy); /* text-slate-500 */
  text-shadow:none !important;
}

/* Donate button: text-white border-white/40 -> text-royal border-royal/30 */
#nav.scrolled .btn-lineL {
  color: var(--navydeep); /* text-royal / text-indigo-600 */
  border-color: var(--navy); /* border-royal/30 */
  border-width: 1px;
}

#nav.scrolled #menuBtn {
  color: var(--navydeep); /* text-royal / text-indigo-600 */
}






.ght {
  --bg: #f7f4ee;
  --surface: #fffdf9;
  --surface-strong: #ffffff;
  --ink: #171513;
  --muted: #716b63;
  --line: #dfd7ca;
  --accent: #b57a22;
  --accent-soft: #ead8b8;
  --shadow: 0 18px 45px rgba(57, 43, 24, 0.08);
  --shadow-soft: 0 10px 28px rgba(57, 43, 24, 0.06);
  --radius-lg: 28px;
  --radius-md: 20px;
  --radius-sm: 16px;
}

/* html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
} */

.ght img {
  display: block;
  width: 100%;
}

.ght button,
.ght a,
.ght img {
  -webkit-tap-highlight-color: transparent;
}

.ght.leadership-section {
  position: relative;
  overflow: hidden;
  padding: 112px 24px 132px;
  background:
    radial-gradient(circle at 14% 18%, rgba(181, 122, 34, 0.06), transparent 22%),
    radial-gradient(circle at 88% 76%, rgba(181, 122, 34, 0.05), transparent 24%),
    var(--bg);
}

.ght.leadership-section::before,
.ght.leadership-section::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(181, 122, 34, 0.12);
  border-radius: 50%;
  pointer-events: none;
}

.ght.leadership-section::before {
  width: 520px;
  height: 520px;
  top: -240px;
  right: -240px;
}

.ght.leadership-section::after {
  width: 380px;
  height: 380px;
  left: -210px;
  bottom: -220px;
}

.ght .leadership-shell {
  position: relative;
  z-index: 1;
  width: min(1240px, 100%);
  margin: 0 auto;
}

.ght .section-intro {
  width: min(650px, 100%);
  margin: 0 auto 76px;
  text-align: center;
}

.ght .eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border: 1px solid rgba(181, 122, 34, 0.28);
  border-radius: 999px;
  color: #9a6317;
  background: rgba(255, 253, 249, 0.78);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.ght .section-intro h1 {
  margin: 18px 0 16px;
  font-size: clamp(2.6rem, 6vw, 4.6rem);
  line-height: 0.98;
  letter-spacing: -0.05em;
  font-weight: 800;
}

.ght .section-intro p {
  margin: 0 auto;
  max-width: 590px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.8;
}

.ght .leadership-tree {
  position: relative;
}

.ght .connector {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  background: linear-gradient(to bottom, rgba(181, 122, 34, 0.5), rgba(181, 122, 34, 0.16));
  pointer-events: none;
}

.ght .connector-main {
  top: 390px;
  height: 72px;
}

.ght .connector-secondary {
  top: 680px;
  height: 76px;
}

.ght .leader-card,
.ght .team-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 252, 247, 0.98));
  border: 1px solid rgba(182, 164, 140, 0.26);
  box-shadow: var(--shadow-soft);
}

.ght .leader-card::after,
.ght .team-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--accent), transparent);
  opacity: 0.72;
}

.ght .leader-card {
  width: min(400px, 100%);
  margin: 0 auto;
  padding: 12px;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
}

.ght .team-card {
  padding: 10px;
  border-radius: var(--radius-md);
}

.ght .executive-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 64px;
  width: min(760px, 100%);
  margin: 84px auto 88px;
}

.ght .role-assistant {
  transform: translateY(-6px);
}

.ght .role-programs {
  transform: translateY(24px);
}

.ght .portrait-wrap {
  overflow: hidden;
  aspect-ratio: 4 / 3;
  border-radius: calc(var(--radius-md) - 6px);
  background: #ece6dc;
}

.ght .portrait-lg {
  aspect-ratio: 5 / 4;
  border-radius: calc(var(--radius-lg) - 8px);
}

.ght .portrait-wrap img {
  height: 100%;
  object-fit: cover;
  object-position: center top;
  filter: saturate(0.96) contrast(1.02);
}

.ght .person-meta {
  padding: 20px 14px 18px;
  text-align: center;
}

.ght .person-meta .role-label {
  display: inline-block;
  margin-bottom: 7px;
  color: #a56917;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.ght .person-meta h2,
.ght .person-meta h3 {
  margin: 0;
  letter-spacing: -0.035em;
  font-weight: 800;
}

.ght .person-meta h2 {
  font-size: clamp(1.35rem, 2vw, 1.6rem);
}

.ght .person-meta h3 {
  font-size: 1.18rem;
}

.ght .person-meta p {
  max-width: 36ch;
  margin: 9px auto 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}

.ght .secondary-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  padding-top: 16px;
}

.ght .secondary-grid::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 8%;
  right: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(181, 122, 34, 0.32), transparent);
}

.ght .secondary-card {
  min-width: 0;
}

.ght .secondary-card .person-meta {
  padding: 16px 10px 18px;
}

.ght .secondary-card .person-meta p {
  font-size: 12px;
  line-height: 1.6;
}

.ght .team-card,
.ght .leader-card,
.ght .section-intro {
  opacity: 1;
  transform: translateY(0);
}

.ght .reveal {
  transition:
    opacity 700ms cubic-bezier(0.32, 0.72, 0, 1),
    transform 700ms cubic-bezier(0.32, 0.72, 0, 1),
    box-shadow 500ms cubic-bezier(0.32, 0.72, 0, 1);
}

.js-enabled .ght .reveal.is-hidden {
  opacity: 0;
  transform: translateY(28px);
}

.js-enabled .ght .reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.ght .leader-card:hover,
.ght .team-card:hover {
  box-shadow: 0 22px 48px rgba(57, 43, 24, 0.12);
}

.ght .leader-card:hover .portrait-wrap img,
.ght .team-card:hover .portrait-wrap img {
  transform: scale(1.025);
}

.ght .portrait-wrap img {
  transition: transform 700ms cubic-bezier(0.32, 0.72, 0, 1);
}

@media (max-width: 1080px) {
  .ght .secondary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 18px;
  }

  .ght .secondary-card:last-child {
    grid-column: span 1;
  }
}

@media (max-width: 767px) {
  .ght.leadership-section {
    padding: 78px 16px 88px;
  }

  .ght .section-intro {
    margin-bottom: 46px;
    text-align: left;
  }

  .ght .section-intro p {
    margin-left: 0;
  }

  .ght .section-intro h1 {
    font-size: clamp(2.5rem, 13vw, 3.5rem);
  }

  .ght .connector {
    display: none;
  }

  .ght .leader-card {
    width: 100%;
  }

  .ght .executive-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    width: 100%;
    margin: 20px 0;
  }

  .ght .role-assistant,
  .ght .role-programs {
    transform: none;
  }

  .ght .secondary-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding-top: 0;
  }

  .ght .secondary-grid::before {
    display: none;
  }

  .ght .team-card,
  .ght .leader-card {
    border-radius: 22px;
  }

  .ght .portrait-wrap,
  .ght .portrait-lg {
    aspect-ratio: 5 / 4;
  }

  .ght .person-meta {
    padding: 18px 14px 20px;
    text-align: left;
  }

  .ght .person-meta p {
    max-width: none;
    margin-left: 0;
  }

  .ght .secondary-card .person-meta {
    padding: 17px 14px 20px;
  }

  .ght .secondary-card:last-child {
    width: calc(50% - 9px);
    grid-column: 1 / -1;
    justify-self: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .ght .reveal,
  .ght .portrait-wrap img {
    transition: none !important;
  }
}