
/* KMP V4.10 — typography, focus areas, leadership, verified mark */
body{font-size:16px}
nav[aria-label="Primary navigation"] a{font-size:15px!important}
.section-label{font-size:12px!important}
.section-copy{font-size:16px!important;line-height:1.85!important}
.hero-copy p{font-size:16px!important;line-height:1.78!important}
.hero-copy>p:nth-of-type(1){font-size:22px!important;line-height:1.5!important}
.btn-primary,.btn-secondary{font-size:15px!important}
.tag-pill{font-size:11px!important}
.premium-card p{font-size:15px;line-height:1.75}
.profile-verified-icon{color:#67e8f9!important;box-shadow:0 0 25px rgba(34,211,238,.14)}
.profile-verified-icon svg{width:22px!important;height:22px!important;color:#67e8f9!important;display:block}

/* V4.11 — Stable Focus Areas grid */
.focus-grid{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
  width:100%;
}
.focus-card{
  position:relative;
  min-width:0;
  width:100%;
  min-height:390px;
  background:#0f172a;
  border:1px solid rgba(255,255,255,.10);
  border-radius:28px;
  overflow:hidden;
  isolation:isolate;
}
.focus-card-equal{
  height:100%;
}
.focus-card-selected{
  border-color:rgba(34,211,238,.30);
  box-shadow:
    0 18px 55px rgba(2,6,23,.35),
    0 0 0 1px rgba(34,211,238,.06) inset,
    0 0 42px rgba(34,211,238,.05);
}
.focus-card-image{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  opacity:.82;
  transform:scale(1.001);
  transition:transform .65s cubic-bezier(.2,.7,.2,1), opacity .3s ease;
}
.focus-card:hover .focus-card-image{
  transform:scale(1.045);
  opacity:.88;
}
.focus-card-fallback{
  position:absolute;
  inset:0;
  z-index:0;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 75% 20%,rgba(99,102,241,.28),transparent 34%),
    radial-gradient(circle at 15% 78%,rgba(34,211,238,.16),transparent 36%),
    linear-gradient(135deg,#111827,#0f172a 55%,#111827);
}
.focus-card-fallback svg{
  width:72px;
  height:72px;
  color:rgba(103,232,249,.25);
}
.focus-card-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(2,6,23,.12) 0%,rgba(2,6,23,.24) 28%,rgba(2,6,23,.78) 65%,rgba(2,6,23,.97) 100%),
    linear-gradient(90deg,rgba(2,6,23,.35),transparent 65%);
}
.focus-card-content{
  position:relative;
  z-index:2;
  min-height:390px;
  height:100%;
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.focus-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.focus-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:14px;
  background:rgba(2,6,23,.68);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  color:#67e8f9;
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}
.focus-icon svg{
  width:21px;
  height:21px;
}
.focus-selected-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(103,232,249,.22);
  background:rgba(8,47,73,.58);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  color:#cffafe;
  font-size:10px;
  line-height:1;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  white-space:nowrap;
}
.focus-card-copy{
  width:100%;
  max-width:100%;
}
.focus-card-copy h3{
  margin:0;
  max-width:100%;
  color:#fff;
  font-size:clamp(21px,1.55vw,27px);
  line-height:1.15;
  letter-spacing:-.025em;
  font-weight:850;
  overflow-wrap:normal;
  word-break:normal;
}
.focus-card-copy p{
  margin:12px 0 0;
  max-width:100%;
  color:#cbd5e1;
  font-size:15px;
  line-height:1.72;
  overflow-wrap:normal;
  word-break:normal;
}
.focus-card-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  margin-top:18px;
  color:#67e8f9;
  font-size:14px;
  line-height:1;
  font-weight:800;
  text-decoration:none;
  transition:transform .25s ease,color .25s ease;
}
.focus-card-link svg{
  width:16px;
  height:16px;
  transition:transform .25s ease;
}
.focus-card-link:hover{
  color:#a5f3fc;
}
.focus-card-link:hover svg{
  transform:translate(2px,-2px);
}

@media (min-width:768px){
  .focus-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .focus-card,
  .focus-card-content{
    min-height:400px;
  }
}

@media (min-width:1180px){
  .focus-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .focus-card,
  .focus-card-content{
    min-height:420px;
  }
  /* With five records, final two cards sit as an even second row */
  .focus-grid > .focus-card:nth-child(4):nth-last-child(2){
    grid-column:1 / 2;
  }
}

@media (max-width:640px){
  .focus-grid{gap:16px}
  .focus-card{
    min-height:340px;
    border-radius:23px;
  }
  .focus-card-content{
    min-height:340px;
    padding:20px;
  }
  .focus-card-copy h3{
    font-size:22px;
  }
  .focus-card-copy p{
    font-size:14px;
    line-height:1.65;
  }
}

.leadership-logo-wrap{width:70px;height:70px;flex:0 0 70px;border-radius:18px;background:white;border:1px solid rgba(255,255,255,.13);display:grid;place-items:center;overflow:hidden;padding:6px;box-shadow:0 10px 25px rgba(0,0,0,.18)}
.leadership-logo-wrap img{width:100%;height:100%;object-fit:contain}
.leadership-logo-wrap span{font-size:18px;font-weight:900;color:#0f172a}
.leadership-verified{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;color:#67e8f9;background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.18)}
.leadership-verified svg{width:17px;height:17px}
@media(max-width:640px){body{font-size:15px}.hero-copy p{font-size:15px!important}.hero-copy>p:nth-of-type(1){font-size:19px!important}.section-copy{font-size:15px!important}.focus-card{min-height:300px}}


/* V4.12 — Footer visibility / spacing polish */
footer{
  display:block;
  width:100%;
  clear:both;
}
footer a{
  text-decoration:none;
}
@media (max-width:767px){
  footer{margin-top:72px}
}


/* ==========================================================
   V4.13 — Full Homepage Stability + Typography Polish
   Content is ALWAYS visible. Animation is progressive only.
   ========================================================== */
[data-gsap-reveal],
[data-gsap-stagger],
[data-gsap-stagger] > *{
  opacity:1 !important;
  visibility:visible !important;
}
.home-section{
  content-visibility:auto;
  contain-intrinsic-size:900px;
}
.section-title{
  font-size:clamp(34px,3.7vw,56px);
  line-height:1.04;
}
.section-copy{
  font-size:16px;
  line-height:1.8;
}
.premium-card{
  min-width:0;
}
.premium-card h3,
.premium-card p{
  overflow-wrap:break-word;
}
.stat-chip{
  min-width:132px;
}
.stat-chip span{
  font-size:10px !important;
}
.leadership-card{
  min-height:100%;
}
.leadership-logo-wrap{
  flex:0 0 auto;
}
.profile-verified-icon{
  display:grid !important;
  place-items:center;
}
.profile-verified-icon svg{
  display:block !important;
  width:22px;
  height:22px;
}
@media (min-width:1024px){
  .site-nav .nav-links a{
    font-size:14px;
  }
}
@media (max-width:767px){
  .section-title{
    font-size:clamp(30px,9vw,42px);
  }
  .section-copy{
    font-size:15px;
  }
  .stat-chip{
    min-width:calc(50% - 8px);
  }
}


/* =========================================================
   V4.14 — Leadership / Organization Premium Cards
   ========================================================= */
.org-showcase-grid{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:18px;
}
.org-showcase-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:430px;
  padding:24px;
  overflow:hidden;
  border:1px solid rgba(96,165,250,.38);
  border-radius:28px;
  background:
    radial-gradient(circle at 75% 5%,rgba(59,130,246,.13),transparent 31%),
    linear-gradient(155deg,rgba(15,23,42,.96),rgba(6,13,28,.98));
  box-shadow:0 22px 55px rgba(2,6,23,.24);
  transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.org-showcase-card:nth-child(4n+2){border-color:rgba(52,211,153,.44)}
.org-showcase-card:nth-child(4n+3){border-color:rgba(250,204,21,.42)}
.org-showcase-card:nth-child(4n+4){border-color:rgba(248,113,113,.38)}
.org-showcase-card:hover{
  transform:translateY(-5px);
  box-shadow:0 28px 70px rgba(2,6,23,.42);
}
.org-active-badge{
  position:absolute;
  right:18px;
  top:18px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(52,211,153,.18);
  background:rgba(6,78,59,.52);
  color:#a7f3d0;
  font-size:10px;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
}
.org-active-badge > span,
.about-org-status > span{
  width:7px;height:7px;border-radius:999px;background:#34d399;box-shadow:0 0 12px rgba(52,211,153,.9);
}
.org-logo-circle{
  width:104px;
  height:104px;
  margin:8px auto 20px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  overflow:hidden;
  border-radius:999px;
  border:7px solid rgba(255,255,255,.92);
  background:#fff;
  box-shadow:0 13px 32px rgba(0,0,0,.28);
}
.org-logo-circle img{
  width:100%;height:100%;object-fit:contain;padding:7px;background:#fff;
}
.org-logo-circle span{
  display:grid;place-items:center;width:100%;height:100%;
  color:#0f172a;font-size:28px;font-weight:900;letter-spacing:-.04em;
}
.org-logo-circle-sm{
  width:76px;height:76px;margin:0;border-width:5px;
}
.org-card-body{
  flex:1;
  display:flex;
  flex-direction:column;
}
.org-role{
  color:#67e8f9;
  font-size:10px;
  line-height:1.4;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.org-showcase-card h3{
  margin:8px 0 0;
  color:#fff;
  font-size:22px;
  line-height:1.18;
  font-weight:850;
  letter-spacing:-.025em;
}
.org-showcase-card p{
  margin:12px 0 0;
  color:#cbd5e1;
  font-size:15px;
  line-height:1.62;
}
.org-tag-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:18px;
}
.org-tag-list span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(255,255,255,.065);
  color:#dbeafe;
  font-size:10px;
  line-height:1;
  font-weight:700;
}
.org-website-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:46px;
  margin-top:22px;
  padding:11px 14px;
  border-radius:15px;
  background:linear-gradient(135deg,#2563eb,#0ea5e9);
  color:#fff;
  font-size:14px;
  font-weight:850;
  text-decoration:none;
  box-shadow:0 11px 26px rgba(37,99,235,.22);
  transition:transform .25s ease,box-shadow .25s ease;
}
.org-website-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 34px rgba(37,99,235,.33);
}
.org-website-btn svg{width:17px;height:17px}
.org-website-disabled{
  background:rgba(255,255,255,.055);
  color:#64748b;
  box-shadow:none;
}

/* About alternative organization layout */
.about-org-grid{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:16px;
}
.about-org-card{
  min-width:0;
  padding:22px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:26px;
  background:
    radial-gradient(circle at 100% 0,rgba(99,102,241,.11),transparent 34%),
    rgba(15,23,42,.56);
  backdrop-filter:blur(18px);
  transition:transform .3s ease,border-color .3s ease,background .3s ease;
}
.about-org-card:hover{
  transform:translateY(-4px);
  border-color:rgba(103,232,249,.22);
  background:rgba(15,23,42,.72);
}
.about-org-head{
  display:flex;
  align-items:center;
  gap:15px;
}
.about-org-role{
  color:#a78bfa;
  font-size:10px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.about-org-card h3{
  margin-top:5px;
  color:#fff;
  font-size:19px;
  line-height:1.2;
  font-weight:850;
}
.about-org-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  padding:6px 8px;
  border-radius:999px;
  background:rgba(6,78,59,.4);
  color:#a7f3d0;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}
.about-org-description{
  margin-top:16px;
  color:#94a3b8;
  font-size:14px;
  line-height:1.7;
}
.about-org-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:19px;
  color:#67e8f9;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}
.about-org-link svg{width:15px;height:15px}
.about-org-link:hover{color:#cffafe}

@media (min-width:680px){
  .org-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-org-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1180px){
  .org-showcase-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:640px){
  .org-showcase-card{
    min-height:390px;
    padding:21px;
    border-radius:24px;
  }
  .org-logo-circle{width:92px;height:92px}
  .org-showcase-card h3{font-size:20px}
  .org-showcase-card p{font-size:14px}
  .about-org-status{display:none}
}


/* =========================================================
   V4.15 — Reference Hero / Existing Profile Data Preserved
   ========================================================= */
.reference-hero{
  min-height:760px;
  display:flex;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.reference-hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:
    linear-gradient(90deg,rgba(2,6,23,.97) 0%,rgba(2,6,23,.92) 34%,rgba(2,6,23,.63) 64%,rgba(2,6,23,.38) 100%),
    url('../focus/environment-climate.jpg');
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
}
.reference-hero-vignette{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 18% 38%,rgba(37,99,235,.10),transparent 28%),
    radial-gradient(circle at 79% 26%,rgba(34,211,238,.08),transparent 26%),
    linear-gradient(180deg,rgba(2,6,23,.16),rgba(2,6,23,.88));
}
.reference-hero-copy{
  padding:40px 0 22px;
}
.reference-hero-title{
  margin-top:22px;
  max-width:840px;
  font-size:clamp(52px,5.8vw,88px);
  line-height:.95;
  font-weight:950;
  letter-spacing:-.058em;
  color:#fff;
}
.reference-role-line{
  margin-top:22px;
  max-width:760px;
  color:#e2e8f0;
  font-size:clamp(19px,1.55vw,25px);
  line-height:1.45;
  font-weight:750;
}
.reference-hero-bio{
  margin-top:14px;
  max-width:700px;
  color:#b6c2d1;
  font-size:16px;
  line-height:1.78;
}
.reference-stat-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:26px;
  max-width:760px;
}
.reference-stat-card{
  min-width:0;
  min-height:108px;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:17px;
  background:rgba(15,23,42,.54);
  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  box-shadow:0 14px 34px rgba(0,0,0,.17);
}
.reference-stat-card svg{
  width:17px;height:17px;color:#22d3ee;margin-bottom:9px;
}
.reference-stat-card b{
  display:block;
  color:#fff;
  font-size:23px;
  line-height:1;
  font-weight:900;
}
.reference-stat-card span{
  display:block;
  margin-top:8px;
  color:#8290a7;
  font-size:9px;
  line-height:1.35;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.reference-portrait-wrap{
  position:relative;
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.reference-portrait-card{
  position:relative;
  width:min(100%,540px);
  height:620px;
  overflow:hidden;
  border:1px solid rgba(103,232,249,.23);
  border-radius:30px;
  background:#0f172a;
  box-shadow:
    0 34px 90px rgba(0,0,0,.42),
    0 0 0 1px rgba(255,255,255,.03) inset;
}
.reference-portrait-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
}
.reference-portrait-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(2,6,23,.42),transparent 42%),
    linear-gradient(180deg,transparent 45%,rgba(2,6,23,.32) 66%,rgba(2,6,23,.96) 100%);
}
.reference-quote-panel{
  position:absolute;
  left:22px;
  top:175px;
  width:225px;
  padding:18px 18px 16px;
  border:1px solid rgba(103,232,249,.20);
  border-radius:19px;
  background:rgba(8,20,40,.47);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.reference-quote-mark{
  color:#60a5fa;
  font-size:42px;
  line-height:.65;
  font-weight:900;
}
.reference-quote-panel p{
  margin-top:8px;
  color:#fff;
  font-size:15px;
  line-height:1.65;
  font-weight:600;
}
.reference-quote-panel > span{
  display:block;
  width:34px;
  height:3px;
  margin-top:15px;
  border-radius:999px;
  background:linear-gradient(90deg,#8b5cf6,#22d3ee);
}
.reference-signature{
  position:absolute;
  left:26px;
  bottom:117px;
  z-index:3;
  max-width:68%;
  color:#d6f7ff;
  font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;
  font-size:31px;
  line-height:1;
  font-style:italic;
  letter-spacing:.015em;
  transform:rotate(-4deg);
  text-shadow:0 2px 18px rgba(34,211,238,.2);
}
.reference-location{
  position:absolute;
  left:25px;
  bottom:74px;
  z-index:3;
  display:flex;
  align-items:center;
  gap:7px;
  color:#cbd5e1;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.reference-location svg{
  width:16px;height:16px;color:#22d3ee;
}
.reference-focus-pills{
  position:absolute;
  left:20px;
  right:20px;
  bottom:17px;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.reference-focus-pills span{
  min-width:0;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:8px 9px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(8,20,40,.62);
  color:#e2e8f0;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
  backdrop-filter:blur(12px);
}
.reference-focus-pills svg{
  width:14px;height:14px;color:#22d3ee;
}
.reference-verified{
  position:absolute;
  right:22px;
  top:22px;
  z-index:4;
  display:grid;
  place-items:center;
  width:39px;
  height:39px;
  border:1px solid rgba(103,232,249,.28);
  border-radius:13px;
  background:rgba(8,47,73,.56);
  color:#67e8f9;
  backdrop-filter:blur(12px);
}
.reference-verified svg{width:23px;height:23px}
.reference-portrait-fallback{
  background:
    radial-gradient(circle at 70% 20%,rgba(99,102,241,.22),transparent 32%),
    linear-gradient(145deg,#111827,#020617);
}
@media (max-width:1100px){
  .reference-hero{min-height:auto}
  .reference-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reference-portrait-wrap{min-height:560px}
  .reference-portrait-card{height:550px;max-width:470px}
  .reference-quote-panel{top:145px}
}
@media (max-width:720px){
  .reference-hero{
    padding-top:22px;
  }
  .reference-hero-bg{
    background-position:58% center;
  }
  .reference-hero-title{
    font-size:clamp(48px,14vw,67px);
  }
  .reference-role-line{
    font-size:18px;
  }
  .reference-stat-row{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:7px;
    overflow-x:auto;
    max-width:100%;
    padding-bottom:2px;
  }
  .reference-stat-card{
    min-width:118px;
    min-height:100px;
    padding:13px;
  }
  .reference-stat-card b{font-size:21px}
  .reference-stat-card span{font-size:8px}
  .reference-portrait-wrap{min-height:520px}
  .reference-portrait-card{
    height:510px;
    border-radius:25px;
  }
  .reference-quote-panel{
    left:15px;
    top:145px;
    width:190px;
    padding:15px;
  }
  .reference-quote-panel p{font-size:13px}
  .reference-signature{
    left:18px;
    bottom:112px;
    font-size:26px;
  }
  .reference-location{left:18px}
  .reference-focus-pills{
    left:12px;right:12px;gap:5px;
  }
  .reference-focus-pills span{
    font-size:8px;
    padding:7px 5px;
  }
  .reference-focus-pills svg{display:none}
}


/* =========================================================
   V4.16 — Final Hero + Compact Focus Strip
   ========================================================= */
.final-hero{
  min-height:680px;
}
.final-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);
  gap:52px;
  align-items:center;
}
.final-hero-left{
  min-width:0;
  padding:26px 0 20px;
}
.final-hero-right{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.final-profile-card{
  position:relative;
  width:min(100%,465px);
  height:540px;
  overflow:hidden;
  border:1px solid rgba(103,232,249,.22);
  border-radius:28px;
  background:#0f172a;
  box-shadow:0 30px 80px rgba(0,0,0,.42);
}
.final-profile-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
}
.final-profile-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(2,6,23,.34),transparent 48%),
    linear-gradient(180deg,transparent 48%,rgba(2,6,23,.25) 64%,rgba(2,6,23,.96) 100%);
}
.final-quote-panel{
  position:absolute;
  left:18px;
  top:145px;
  width:190px;
  padding:15px;
  border:1px solid rgba(103,232,249,.18);
  border-radius:17px;
  background:rgba(8,20,40,.49);
  backdrop-filter:blur(13px);
}
.final-quote-panel p{
  margin-top:7px;
  color:#fff;
  font-size:13px;
  line-height:1.6;
  font-weight:600;
}
.final-signature{
  bottom:108px;
  left:22px;
  font-size:27px;
}
.final-location{
  bottom:68px;
  left:22px;
}
.final-focus-pills{
  left:14px;
  right:14px;
  bottom:14px;
  gap:6px;
}
.final-focus-pills span{
  min-height:34px;
  padding:7px 7px;
  font-size:9px;
}
.final-stat-row{
  max-width:100%;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.final-stat-row .reference-stat-card{
  min-height:96px;
  padding:13px 14px;
}

/* Compact Focus Strip */
.focus-strip-section{
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
  background:#030817;
}
.focus-strip-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:12px;
}
.focus-view-all{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#60a5fa;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
}
.focus-view-all svg{width:15px;height:15px}
.focus-strip-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:13px;
}
.focus-strip-card{
  position:relative;
  min-width:0;
  height:155px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  background:#0f172a;
}
.focus-strip-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.focus-strip-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(2,6,23,.28),rgba(2,6,23,.12) 36%,rgba(2,6,23,.68) 100%),
    linear-gradient(90deg,rgba(2,6,23,.65),transparent 75%);
}
.focus-strip-content{
  position:relative;
  z-index:2;
  height:100%;
  padding:12px;
}
.focus-strip-top{
  display:flex;
  align-items:flex-start;
  gap:11px;
}
.focus-strip-icon{
  display:grid;
  place-items:center;
  flex:0 0 43px;
  width:43px;
  height:43px;
  border-radius:10px;
  border:1px solid rgba(103,232,249,.16);
  background:rgba(15,23,42,.70);
  color:#67e8f9;
  backdrop-filter:blur(10px);
}
.focus-strip-icon svg{width:22px;height:22px}
.focus-strip-card h3{
  margin:0;
  color:#fff;
  font-size:13px;
  line-height:1.25;
  font-weight:800;
}
.focus-strip-card p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:5px;
  color:#cbd5e1;
  font-size:10px;
  line-height:1.45;
}
.focus-strip-link{
  position:absolute;
  inset:0;
  z-index:5;
}
.focus-strip-card:hover{
  border-color:rgba(103,232,249,.28);
  transform:translateY(-2px);
  transition:.25s ease;
}
.focus-strip-fallback{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#111827,#0f172a);
  color:rgba(103,232,249,.3);
}
.focus-strip-fallback svg{width:42px;height:42px}

@media (max-width:1100px){
  .final-hero-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
  .final-hero-right{
    justify-content:center;
  }
  .final-profile-card{
    width:min(100%,520px);
  }
  .focus-strip-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width:760px){
  .final-stat-row{
    grid-template-columns:repeat(4,minmax(118px,1fr));
    overflow-x:auto;
  }
  .focus-strip-grid{
    display:flex;
    overflow-x:auto;
    gap:10px;
    scroll-snap-type:x mandatory;
    padding-bottom:4px;
  }
  .focus-strip-card{
    flex:0 0 245px;
    scroll-snap-align:start;
  }
  .final-profile-card{
    height:500px;
  }
}


/* =========================================================
   V4.17 — Hero Background + Focus Alignment Final Polish
   ========================================================= */

/* Pull hero background upward behind the floating navbar */
.final-hero{
  margin-top:-92px;
  padding-top:126px !important;
  min-height:720px;
  border-top:0 !important;
}

/* Background must begin from the very top of the hero canvas */
.reference-hero-bg,
.reference-hero-vignette{
  top:0 !important;
  bottom:0 !important;
}
.reference-hero-bg{
  background-position:center top !important;
  background-size:cover !important;
}

/* Keep all hero content aligned and vertically balanced */
.final-hero-grid{
  min-height:590px;
  align-items:center;
}
.final-hero-left{
  align-self:center;
}
.final-hero-right{
  align-self:center;
}

/* Keep stats compact and exactly inside left content width */
.final-stat-row{
  width:100%;
  max-width:760px;
  margin-top:22px;
}
.final-stat-row .reference-stat-card{
  min-width:0;
  overflow:hidden;
}
.final-stat-row .reference-stat-card span{
  white-space:normal;
}

/* Focus strip stays inside same visual container as hero */
.focus-strip-section{
  padding-top:16px !important;
  padding-bottom:18px !important;
}
.focus-strip-section > div{
  width:100%;
  max-width:80rem !important; /* same as Tailwind max-w-7xl */
  margin-left:auto;
  margin-right:auto;
}
.focus-strip-grid{
  width:100%;
  gap:12px;
}
.focus-strip-card{
  height:150px;
  border-radius:14px;
}
.focus-strip-content{
  padding:12px 13px;
}
.focus-strip-top{
  min-width:0;
}
.focus-strip-top > div{
  min-width:0;
}
.focus-strip-card h3{
  max-width:100%;
  font-size:12px;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:break-word;
}
.focus-strip-card p{
  font-size:9px;
  line-height:1.45;
  -webkit-line-clamp:2;
}
.focus-strip-icon{
  flex-basis:39px;
  width:39px;
  height:39px;
}
.focus-strip-icon svg{
  width:19px;
  height:19px;
}

/* More deliberate visual crop for compact cards */
.focus-strip-card img{
  object-position:center 42%;
}

/* Maintain spacing between hero and focus without a large empty band */
.final-hero + .focus-strip-section{
  margin-top:0;
}

/* Desktop polish */
@media (min-width:1101px){
  .final-hero-grid{
    grid-template-columns:minmax(0,1.17fr) minmax(390px,.83fr);
    gap:48px;
  }
  .final-profile-card{
    width:min(100%,455px);
    height:530px;
  }
}

/* Tablet/mobile: don't pull hero behind compact mobile nav too aggressively */
@media (max-width:1100px){
  .final-hero{
    margin-top:-78px;
    padding-top:112px !important;
    min-height:auto;
  }
  .final-hero-grid{
    min-height:auto;
  }
  .focus-strip-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }
}

@media (max-width:760px){
  .final-hero{
    margin-top:-68px;
    padding-top:96px !important;
  }
  .focus-strip-section{
    padding-left:16px !important;
    padding-right:16px !important;
  }
  .focus-strip-grid{
    gap:10px;
  }
  .focus-strip-card{
    flex-basis:232px;
    height:146px;
  }
}

/* Content/animation safety */
.final-hero,
.final-hero-grid,
.final-hero-left,
.final-hero-right,
.focus-strip-section,
.focus-strip-grid,
.focus-strip-card{
  opacity:1 !important;
  visibility:visible !important;
}


/* =========================================================
   V4.18 — Final Focus Carousel + Hero Polish
   ========================================================= */

/* Same visual tone as Selected Work below */
.focus-strip-section{
  background:#020617 !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
}

/* Header actions */
.focus-head-actions{
  display:flex;
  align-items:center;
  gap:8px;
}
.focus-nav-btn{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(15,23,42,.72);
  color:#dbeafe;
  cursor:pointer;
  transition:all .22s ease;
  backdrop-filter:blur(12px);
}
.focus-nav-btn:hover:not(:disabled){
  transform:translateY(-1px);
  border-color:rgba(96,165,250,.38);
  background:rgba(37,99,235,.22);
  color:#fff;
  box-shadow:0 8px 22px rgba(37,99,235,.17);
}
.focus-nav-btn svg{
  width:17px;
  height:17px;
}
.focus-nav-btn:disabled,
.focus-nav-btn.is-disabled{
  opacity:.34;
  cursor:default;
  box-shadow:none;
}

/* Horizontal carousel */
.focus-scroll-shell{
  position:relative;
  overflow:hidden;
}
.focus-scroll-track{
  display:flex !important;
  grid-template-columns:none !important;
  gap:12px !important;
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
  padding:0 0 3px;
}
.focus-scroll-track::-webkit-scrollbar{
  display:none;
}
.focus-scroll-track .focus-strip-card{
  flex:0 0 calc((100% - 48px)/5);
  min-width:0;
  scroll-snap-align:start;
  height:150px;
}

/* Compact readable content */
.focus-scroll-track .focus-strip-card h3{
  font-size:12px;
  line-height:1.22;
}
.focus-scroll-track .focus-strip-card p{
  font-size:9px;
  line-height:1.42;
  -webkit-line-clamp:2;
}

/* Profile quote panel moved to a cleaner upper-left area */
.final-quote-panel{
  left:16px !important;
  top:128px !important;
  width:176px !important;
  padding:14px !important;
}
.final-quote-panel p{
  font-size:12px !important;
  line-height:1.55 !important;
}

/* Maintain hero/profile proportion */
@media (min-width:1180px){
  .final-profile-card{
    width:440px !important;
    height:525px !important;
  }
}

/* Tablet */
@media (max-width:1100px){
  .focus-scroll-track .focus-strip-card{
    flex:0 0 calc((100% - 24px)/3);
  }
}

/* Mobile */
@media (max-width:760px){
  .focus-head-actions{
    gap:6px;
  }
  .focus-view-all{
    font-size:11px;
  }
  .focus-nav-btn{
    width:31px;
    height:31px;
    flex-basis:31px;
  }
  .focus-scroll-track .focus-strip-card{
    flex:0 0 232px;
  }
}


/* V4.20 — Focus cards larger: 4 visible on wide desktop, 3 on medium */
@media (min-width:1181px){
  .focus-scroll-track{
    gap:16px !important;
  }
  .focus-scroll-track .focus-strip-card{
    flex:0 0 calc((100% - 48px)/4) !important;
    height:190px !important;
  }
  .focus-scroll-track .focus-strip-card h3{
    font-size:15px !important;
    line-height:1.25 !important;
  }
  .focus-scroll-track .focus-strip-card p{
    font-size:11px !important;
    line-height:1.45 !important;
    -webkit-line-clamp:2;
  }
  .focus-strip-content{
    padding:15px !important;
  }
  .focus-strip-icon{
    width:38px !important;
    height:38px !important;
  }
}
@media (min-width:761px) and (max-width:1180px){
  .focus-scroll-track{
    gap:14px !important;
  }
  .focus-scroll-track .focus-strip-card{
    flex:0 0 calc((100% - 28px)/3) !important;
    height:180px !important;
  }
  .focus-scroll-track .focus-strip-card h3{
    font-size:14px !important;
  }
  .focus-scroll-track .focus-strip-card p{
    font-size:10px !important;
  }
}


/* =========================================================
   V4.21 — Career Roadmap 2001–2025
   ========================================================= */
.career-roadmap-section{
  position:relative;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(circle at 50% 15%,rgba(99,102,241,.07),transparent 30%),
    #020617;
}
.roadmap-heading{
  text-align:center;
}
.roadmap-heading .section-label{
  justify-content:center;
}
.roadmap-heading .section-title,
.roadmap-heading .section-copy{
  margin-left:auto;
  margin-right:auto;
}
.career-roadmap{
  position:relative;
  max-width:1080px;
  margin-left:auto;
  margin-right:auto;
}
.career-roadmap-line{
  position:absolute;
  left:50%;
  top:18px;
  bottom:22px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg,#22d3ee,#6366f1 48%,#8b5cf6);
  opacity:.42;
}
.roadmap-item{
  position:relative;
  display:grid;
  grid-template-columns:1fr 84px 1fr;
  align-items:center;
  min-height:190px;
}
.roadmap-card{
  position:relative;
  padding:24px;
  border-radius:24px;
}
.roadmap-left .roadmap-card{
  grid-column:1;
  text-align:right;
}
.roadmap-right .roadmap-card{
  grid-column:3;
  text-align:left;
}
.roadmap-node{
  grid-column:2;
  grid-row:1;
  justify-self:center;
  z-index:3;
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:999px;
  border:1px solid rgba(103,232,249,.38);
  background:#071426;
  box-shadow:0 0 26px rgba(34,211,238,.14);
}
.roadmap-node span{
  width:9px;height:9px;border-radius:999px;
  background:#22d3ee;
  box-shadow:0 0 16px rgba(34,211,238,.95);
}
.roadmap-year{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  margin-top:-34px;
  z-index:4;
  color:#a5f3fc;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}
.roadmap-card-top{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:12px;
}
.roadmap-left .roadmap-card-top{
  justify-content:flex-end;
}
.roadmap-index{
  color:#64748b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
}
.roadmap-period{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:5px 9px;
  border:1px solid rgba(103,232,249,.14);
  border-radius:999px;
  background:rgba(8,47,73,.30);
  color:#67e8f9;
  font-size:10px;
  font-weight:850;
}
.roadmap-card h3{
  color:#fff;
  font-size:20px;
  line-height:1.25;
  font-weight:850;
  letter-spacing:-.02em;
}
.roadmap-card p{
  margin-top:10px;
  color:#94a3b8;
  font-size:14px;
  line-height:1.75;
}
@media (max-width:820px){
  .career-roadmap{
    padding-left:30px;
  }
  .career-roadmap-line{
    left:15px;
    transform:none;
  }
  .roadmap-item{
    display:block;
    min-height:0;
    padding:0 0 24px;
  }
  .roadmap-left .roadmap-card,
  .roadmap-right .roadmap-card{
    text-align:left;
  }
  .roadmap-left .roadmap-card-top{
    justify-content:flex-start;
  }
  .roadmap-node{
    position:absolute;
    left:-30px;
    top:28px;
    width:30px;height:30px;
  }
  .roadmap-year{
    position:static;
    display:none;
  }
}
