/*
 * Leadership & Management Message page.
 *
 * Extracted from the source file during migration. The rules are the source
 * rules; only their home is new.
 *
 * The `@import` that pulled in four font families is gone. It forced the
 * browser to finish downloading this stylesheet before it could even discover
 * the font request; the families are registered as stylesheets of their own so
 * both requests start together.
 */

.fbi-lm-wrap, .fbi-lm-wrap *, .fbi-lm-wrap *::before, .fbi-lm-wrap *::after{ box-sizing:border-box; }
.fbi-lm-wrap :where(h1,h2,h3,p,figure,figcaption,blockquote,ul,nav,div,span,section){
  margin:0; padding:0; border:0; background:none; quotes:none;
}
.fbi-lm-wrap :where(img){ max-width:100%; height:auto; display:block; }
.fbi-lm-wrap :where(a){ text-decoration:none; color:inherit; }
.fbi-lm-wrap :where(blockquote)::before, .fbi-lm-wrap :where(blockquote)::after{ content:none; }

/* ===== tokens ===== */
.fbi-lm-wrap{
  --navy:#041853;
  --blue:#0066CC;
  --cyan:#2EB0E7;
  --ink:#12203C;
  --body:#4A5872;
  --muted:#84909F;
  --line:#E4E9F0;
  --tint:#F7F9FC;

  --sans:'IBM Plex Sans','Segoe UI',sans-serif;
  --serif:'IBM Plex Serif',Georgia,serif;
  --ui:'Inter','Segoe UI',sans-serif;
  --script:'Mrs Saint Delafield',cursive;

  --pad: clamp(20px,5vw,40px);
  --max: 1120px;

  font-family:var(--ui); color:var(--body); background:#fff; overflow-x:clip;
}

/* fade-in */
.fbi-lm-wrap .fbi-lm-rv{ opacity:0; transform:translateY(16px); transition:opacity .8s ease, transform .8s ease; }
.fbi-lm-wrap .fbi-lm-rv.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){
  .fbi-lm-wrap .fbi-lm-rv{ opacity:1 !important; transform:none !important; transition:none !important; }
}

/* ===== 0. hero banner ===== */
.fbi-lm-wrap .fbi-lm-hero{
  position:relative; overflow:hidden; color:#fff;
  padding: clamp(22px,3vw,30px) var(--pad) clamp(26px,3.4vw,34px);
  background:linear-gradient(96deg,var(--navy) 0%,#073B84 52%,#0B5CB0 100%);
}
.fbi-lm-wrap .fbi-lm-hero-bg{ position:absolute; inset:0; }
.fbi-lm-wrap .fbi-lm-hero-bg img{ width:100%; height:100%; object-fit:cover; object-position:center 40%; opacity:.26; }
.fbi-lm-wrap .fbi-lm-hero-bg::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(96deg,var(--navy) 10%,rgba(7,59,132,.78) 58%,rgba(11,92,176,.5) 100%);
}
.fbi-lm-wrap .fbi-lm-hero-inner{ position:relative; z-index:2; max-width:var(--max); margin:0 auto; }
.fbi-lm-wrap .fbi-lm-crumb{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:12.5px; color:rgba(255,255,255,.66); }
.fbi-lm-wrap .fbi-lm-crumb a:hover{ color:var(--cyan); }
.fbi-lm-wrap .fbi-lm-crumb span[aria-current]{ color:rgba(255,255,255,.95); }
.fbi-lm-wrap .fbi-lm-crumb i{ font-style:normal; color:rgba(255,255,255,.34); }
.fbi-lm-wrap .fbi-lm-hero h1{
  font-family:var(--sans); font-weight:600; color:#fff; margin-top:14px;
  font-size:clamp(27px,3.5vw,38px); line-height:1.15; letter-spacing:-.024em;
}
.fbi-lm-wrap .fbi-lm-hero-sub{ font-size:clamp(14px,1.4vw,15.5px); color:rgba(255,255,255,.78); margin-top:8px; }

/* ===== 1. intro ===== */
.fbi-lm-wrap .fbi-lm-intro{
  text-align:center;
  padding: clamp(56px,7vw,90px) var(--pad) clamp(40px,4.6vw,58px);
}
.fbi-lm-wrap .fbi-lm-intro-inner{ max-width:720px; margin:0 auto; }
.fbi-lm-wrap .fbi-lm-label{
  display:inline-block; font-size:11.5px; font-weight:600; letter-spacing:.2em;
  text-transform:uppercase; color:var(--blue);
}
.fbi-lm-wrap .fbi-lm-intro h2{
  font-family:var(--sans); font-weight:600; color:var(--navy); margin-top:16px;
  font-size:clamp(28px,3.8vw,42px); line-height:1.16; letter-spacing:-.028em;
}
.fbi-lm-wrap .fbi-lm-intro p{
  font-size:clamp(15px,1.5vw,17px); line-height:1.8; color:var(--body); margin-top:18px;
}

/* ===== shared: two-column person layout ===== */
.fbi-lm-wrap .fbi-lm-person{ padding: clamp(46px,5.6vw,76px) var(--pad); }
.fbi-lm-wrap .fbi-lm-person.is-tinted{ background:var(--tint); border-top:1px solid var(--line); }
.fbi-lm-wrap .fbi-lm-person-inner{
  max-width:var(--max); margin:0 auto;
  display:grid; grid-template-columns:minmax(0,340px) minmax(0,1fr);
  gap:clamp(32px,4.4vw,64px); align-items:start;
}

.fbi-lm-wrap .fbi-lm-photo img{
  width:100%; aspect-ratio:4/4.9; object-fit:cover; object-position:center 14%;
  border-radius:6px;
  box-shadow:0 18px 40px -26px rgba(4,24,83,.55);
}
.fbi-lm-wrap .fbi-lm-caption{ margin-top:20px; padding-top:18px; border-top:2px solid var(--cyan); }
.fbi-lm-wrap .fbi-lm-caption b{
  display:block; font-family:var(--sans); font-weight:600; font-size:19px;
  color:var(--navy); letter-spacing:-.018em;
}
.fbi-lm-wrap .fbi-lm-caption span{
  display:block; font-size:12px; font-weight:600; letter-spacing:.16em;
  text-transform:uppercase; color:var(--blue); margin-top:7px;
}

.fbi-lm-wrap .fbi-lm-text h3{
  font-family:var(--sans); font-weight:600; color:var(--navy);
  font-size:clamp(24px,3vw,32px); line-height:1.22; letter-spacing:-.026em;
}
.fbi-lm-wrap .fbi-lm-text .fbi-lm-label{ margin-bottom:14px; }
.fbi-lm-wrap .fbi-lm-text p{ font-size:clamp(15px,1.5vw,16.6px); line-height:1.86; color:var(--body); margin-top:20px; }

/* legacy note */
.fbi-lm-wrap .fbi-lm-note{
  margin-top:30px; padding-top:24px; border-top:1px solid var(--line);
  display:flex; align-items:baseline; gap:16px;
}
.fbi-lm-wrap .fbi-lm-note b{
  font-family:var(--sans); font-weight:600; font-size:30px; line-height:1;
  letter-spacing:-.03em; color:var(--blue); flex:0 0 auto;
}
.fbi-lm-wrap .fbi-lm-note span{ font-size:14.5px; line-height:1.6; color:var(--body); }
.fbi-lm-wrap .fbi-lm-note span i{ display:block; font-style:normal; color:var(--muted); font-size:13.5px; margin-top:3px; }

/* quotes */
.fbi-lm-wrap .fbi-lm-q{ margin-top:26px; padding-left:22px; border-left:2px solid var(--cyan); }
.fbi-lm-wrap .fbi-lm-q p{
  margin:0; font-family:var(--serif); font-style:italic; font-weight:400;
  font-size:clamp(17px,1.95vw,21px); line-height:1.5; color:var(--navy);
}

/* people & humanity */
.fbi-lm-wrap .fbi-lm-people{ margin-top:32px; padding-top:26px; border-top:1px solid var(--line); }
.fbi-lm-wrap .fbi-lm-people h4{
  font-family:var(--sans); font-weight:600; font-size:13px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--navy); margin:0;
}
.fbi-lm-wrap .fbi-lm-people p{ margin-top:12px; }

/* signature */
.fbi-lm-wrap .fbi-lm-sign{ margin-top:34px; text-align:right; }
.fbi-lm-wrap .fbi-lm-sign-mark{ font-family:var(--script); font-size:clamp(38px,4.2vw,50px); line-height:1; color:var(--blue); }
.fbi-lm-wrap .fbi-lm-sign-name{ font-family:var(--sans); font-weight:600; font-size:16px; color:var(--navy); margin-top:8px; }
.fbi-lm-wrap .fbi-lm-sign-role{ font-size:13px; color:var(--muted); margin-top:3px; }

.fbi-lm-wrap a:focus-visible{ outline:2px solid var(--cyan); outline-offset:3px; }

/* ===== responsive ===== */
@media (max-width:900px){
  .fbi-lm-wrap .fbi-lm-person-inner{ grid-template-columns:1fr; gap:30px; }
  .fbi-lm-wrap .fbi-lm-photo{ max-width:320px; }
  .fbi-lm-wrap .fbi-lm-photo img{ aspect-ratio:4/4.5; }
}
@media (max-width:600px){
  .fbi-lm-wrap .fbi-lm-crumb{ font-size:11.5px; gap:6px; }
  .fbi-lm-wrap .fbi-lm-photo{ max-width:100%; }
  .fbi-lm-wrap .fbi-lm-photo img{ aspect-ratio:4/4.2; }
  .fbi-lm-wrap .fbi-lm-q{ padding-left:18px; margin-top:22px; }
  .fbi-lm-wrap .fbi-lm-sign{ text-align:left; }
  .fbi-lm-wrap .fbi-lm-note{ gap:12px; }
}
