/* About + Team final visual pass — scoped, flexbox only */
.about-final .inner-hero__copy,
.team-final .inner-hero__copy,
.role-final .inner-hero__copy { max-width: 590px; }

.about-final .inner-hero,
.team-final .inner-hero,
.role-final .inner-hero { padding-bottom: clamp(72px, 9vw, 130px); }

.about-final .section,
.team-final .section,
.role-final .section { padding-top: clamp(88px, 10vw, 150px); padding-bottom: clamp(88px, 10vw, 150px); }

.about-final .lede,
.team-final .lede { max-width: 980px; font-size: clamp(34px, 4.4vw, 72px); line-height: 1.02; }

.about-intro-note,
.team-intro-note { display:flex; gap:24px; align-items:flex-start; padding-top:34px; border-top:1px solid rgba(255,255,255,.14); margin-top:42px; }
.about-intro-note i,
.team-intro-note i { font-size:22px; color:#38bdf8; margin-top:3px; }
.about-intro-note p,
.team-intro-note p { margin:0; max-width:680px; color:rgba(255,255,255,.64); line-height:1.75; }

.about-model { display:flex; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.15); }
.about-model__item { flex:1 1 30%; min-width:250px; padding:34px 28px 40px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.about-model__item + .about-model__item { padding-left:28px; border-left:1px solid rgba(255,255,255,.1); }
.about-model__num { display:block; font-family:'Space Grotesk',sans-serif; font-size:12px; color:#38bdf8; margin-bottom:48px; }
.about-model__item h3 { margin:0 0 18px; font-size:clamp(25px,2.4vw,38px); line-height:1.08; font-weight:500; }
.about-model__item p { margin:0; max-width:390px; color:rgba(255,255,255,.58); line-height:1.7; }

.about-image-block { display:flex; flex-direction:column; gap:18px; }
.about-image-block .feature-image { aspect-ratio:16/8.4; overflow:hidden; }
.about-image-block .feature-image img { width:100%; height:100%; object-fit:cover; }
.about-image-caption { display:flex; justify-content:space-between; gap:28px; padding-top:16px; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.5); font-size:12px; text-transform:uppercase; }
.about-image-caption span:last-child { text-align:right; max-width:540px; }

.about-principles { border-top:1px solid rgba(255,255,255,.16); }
.about-principle { display:flex; gap:34px; align-items:flex-start; padding:30px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.about-principle__num { flex:0 0 44px; color:#38bdf8; font-size:12px; padding-top:8px; }
.about-principle h3 { flex:0 1 360px; margin:0; font-size:clamp(24px,2.6vw,40px); font-weight:500; line-height:1.08; }
.about-principle p { flex:1 1 420px; margin:5px 0 0; color:rgba(255,255,255,.58); line-height:1.75; max-width:600px; }

.about-protect { display:flex; flex-wrap:wrap; gap:0; border-top:1px solid rgba(255,255,255,.15); border-left:1px solid rgba(255,255,255,.15); }
.about-protect__item { flex:1 1 25%; min-width:220px; padding:32px; border-right:1px solid rgba(255,255,255,.15); border-bottom:1px solid rgba(255,255,255,.15); min-height:250px; display:flex; flex-direction:column; justify-content:space-between; }
.about-protect__item i { font-size:24px; color:#38bdf8; }
.about-protect__item h3 { margin:0 0 12px; font-size:23px; font-weight:500; }
.about-protect__item p { margin:0; color:rgba(255,255,255,.56); line-height:1.65; }

.about-team-head { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:54px; }
.about-team-head h2 { margin:0; font-size:clamp(56px,8vw,120px); line-height:.9; }
.about-team-head__copy { max-width:450px; color:rgba(255,255,255,.58); line-height:1.7; }
.about-team-list { display:flex; flex-direction:column; border-top:1px solid rgba(255,255,255,.16); }
.about-team-role { display:flex; align-items:center; gap:28px; padding:22px 0; border-bottom:1px solid rgba(255,255,255,.14); text-decoration:none; color:inherit; }
.about-team-role__image { flex:0 0 110px; aspect-ratio:4/5; overflow:hidden; }
.about-team-role__image img { width:100%; height:100%; object-fit:cover; filter:saturate(.8); transition:transform .6s cubic-bezier(.2,.7,.2,1), filter .35s ease; }
.about-team-role__index { flex:0 0 42px; font-size:12px; color:#38bdf8; }
.about-team-role__name { flex:1 1 auto; font-size:clamp(28px,3vw,48px); line-height:1; }
.about-team-role__discipline { flex:0 1 250px; color:rgba(255,255,255,.48); font-size:13px; }
.about-team-role i { flex:0 0 auto; font-size:21px; transition:transform .3s ease; }
.about-team-role:hover .about-team-role__image img { transform:scale(1.035); filter:saturate(1); }
.about-team-role:hover i { transform:translate(4px,-4px); }

.team-roles-ledger { display:flex; flex-direction:column; border-top:1px solid rgba(255,255,255,.16); }
.team-role-card { display:flex; gap:34px; align-items:stretch; padding:28px 0; border-bottom:1px solid rgba(255,255,255,.14); color:inherit; text-decoration:none; }
.team-role-card__index { flex:0 0 44px; color:#38bdf8; font-size:12px; padding-top:8px; }
.team-role-card__media { flex:0 0 min(25vw,290px); aspect-ratio:4/5; overflow:hidden; }
.team-role-card__media img { width:100%; height:100%; object-fit:cover; filter:saturate(.78); transition:transform .6s cubic-bezier(.2,.7,.2,1), filter .35s ease; }
.team-role-card__body { flex:1 1 auto; display:flex; flex-direction:column; justify-content:space-between; min-width:0; padding:8px 0; }
.team-role-card__top { display:flex; justify-content:space-between; gap:30px; align-items:flex-start; }
.team-role-card__body h2 { margin:0; font-size:clamp(34px,4.3vw,72px); line-height:.98; font-weight:500; }
.team-role-card__disc { max-width:260px; color:rgba(255,255,255,.48); font-size:12px; text-align:right; }
.team-role-card__bottom { display:flex; justify-content:space-between; gap:36px; align-items:flex-end; }
.team-role-card__bottom p { margin:0; max-width:560px; color:rgba(255,255,255,.6); line-height:1.72; }
.team-role-card__bottom span { display:flex; align-items:center; gap:10px; white-space:nowrap; font-size:13px; }
.team-role-card:hover .team-role-card__media img { transform:scale(1.035); filter:saturate(1); }

.team-operating { display:flex; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.15); }
.team-operating__item { flex:1 1 25%; min-width:230px; padding:30px 26px 34px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.team-operating__item + .team-operating__item { padding-left:26px; border-left:1px solid rgba(255,255,255,.1); }
.team-operating__item span { display:block; font-size:12px; color:#38bdf8; margin-bottom:42px; }
.team-operating__item h3 { margin:0 0 14px; font-size:24px; font-weight:500; }
.team-operating__item p { margin:0; color:rgba(255,255,255,.56); line-height:1.7; }

.team-loop { display:flex; flex-direction:column; border-top:1px solid rgba(255,255,255,.15); }
.team-loop__row { display:flex; align-items:flex-start; gap:30px; padding:25px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.team-loop__step { flex:0 0 150px; font-size:12px; color:rgba(255,255,255,.46); }
.team-loop__row h3 { flex:0 1 360px; margin:0; font-size:clamp(24px,2.6vw,38px); font-weight:500; }
.team-loop__row p { flex:1 1 440px; margin:2px 0 0; max-width:620px; color:rgba(255,255,255,.58); line-height:1.7; }

.role-profile { display:flex; gap:clamp(36px,7vw,110px); align-items:flex-start; }
.role-profile__media { flex:0 1 44%; aspect-ratio:4/5; overflow:hidden; }
.role-profile__media img { width:100%; height:100%; object-fit:cover; }
.role-profile__content { flex:1 1 50%; padding-top:14px; }
.role-profile__content h2 { margin:20px 0 28px; font-size:clamp(34px,4.2vw,66px); line-height:1.04; font-weight:500; }
.role-profile__content > p { max-width:680px; margin:0; color:rgba(255,255,255,.6); line-height:1.78; }
.role-facts { display:flex; flex-wrap:wrap; gap:12px 26px; padding-top:34px; margin-top:34px; border-top:1px solid rgba(255,255,255,.15); }
.role-facts span { color:rgba(255,255,255,.5); font-size:12px; }

.role-responsibilities { display:flex; flex-direction:column; border-top:1px solid rgba(255,255,255,.16); }
.role-responsibility { display:flex; gap:32px; align-items:flex-start; padding:28px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.role-responsibility__index { flex:0 0 44px; color:#38bdf8; font-size:12px; padding-top:7px; }
.role-responsibility h3 { flex:0 1 350px; margin:0; font-size:clamp(24px,2.8vw,40px); font-weight:500; line-height:1.08; }
.role-responsibility p { flex:1 1 430px; max-width:590px; margin:3px 0 0; color:rgba(255,255,255,.58); line-height:1.72; }

.role-interface { display:flex; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.15); border-left:1px solid rgba(255,255,255,.15); }
.role-interface__item { flex:1 1 33.333%; min-width:250px; padding:32px; min-height:260px; border-right:1px solid rgba(255,255,255,.15); border-bottom:1px solid rgba(255,255,255,.15); display:flex; flex-direction:column; justify-content:space-between; }
.role-interface__item .eyebrow { margin-bottom:44px; }
.role-interface__item h3 { margin:0 0 14px; font-size:25px; font-weight:500; }
.role-interface__item p { margin:0; color:rgba(255,255,255,.57); line-height:1.7; }

.role-nav { display:flex; gap:1px; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.13); }
.role-nav a { flex:1 1 50%; padding:30px; background:#07090c; color:inherit; text-decoration:none; display:flex; justify-content:space-between; align-items:flex-end; gap:28px; min-height:150px; }
.role-nav small { display:block; color:rgba(255,255,255,.45); margin-bottom:12px; }
.role-nav strong { font-size:clamp(28px,3.2vw,48px); font-weight:500; }
.role-nav i { font-size:24px; }

.about-final .next-page,
.team-final .next-page,
.role-final .next-page { margin-top:0; }

@media (max-width: 980px) {
  .about-model__item { flex-basis:50%; }
  .about-model__item + .about-model__item { border-left:0; padding-left:0; }
  .about-model__item:nth-child(2n) { padding-left:24px; border-left:1px solid rgba(255,255,255,.1); }
  .about-protect__item { flex-basis:50%; }
  .about-team-head { align-items:flex-start; flex-direction:column; }
  .about-team-role__discipline { display:none; }
  .team-role-card__media { flex-basis:240px; }
  .team-role-card__top { flex-direction:column; gap:14px; }
  .team-role-card__disc { text-align:left; }
  .team-operating__item { flex-basis:50%; }
  .team-operating__item + .team-operating__item { border-left:0; padding-left:0; }
  .team-operating__item:nth-child(2n) { padding-left:24px; border-left:1px solid rgba(255,255,255,.1); }
  .role-profile { gap:44px; }
  .role-interface__item { flex-basis:50%; }
}

@media (max-width: 720px) {
  .about-final .section,
  .team-final .section,
  .role-final .section { padding-top:76px; padding-bottom:76px; }
  .about-model { flex-direction:column; }
  .about-model__item { flex-basis:auto; width:100%; min-width:0; padding:26px 0 30px; border-left:0 !important; }
  .about-model__item:nth-child(2n) { padding-left:0; }
  .about-model__num { margin-bottom:26px; }
  .about-image-block .feature-image { aspect-ratio:4/3; }
  .about-image-caption { flex-direction:column; gap:8px; }
  .about-image-caption span:last-child { text-align:left; }
  .about-principle { flex-wrap:wrap; gap:14px 20px; }
  .about-principle__num { flex-basis:34px; }
  .about-principle h3 { flex:1 1 calc(100% - 54px); }
  .about-principle p { flex-basis:100%; padding-left:54px; }
  .about-protect { flex-direction:column; }
  .about-protect__item { flex-basis:auto; width:100%; min-height:220px; }
  .about-team-head h2 { font-size:clamp(52px,18vw,86px); }
  .about-team-role { gap:16px; }
  .about-team-role__image { flex-basis:72px; }
  .about-team-role__index { display:none; }
  .about-team-role__name { font-size:25px; }
  .team-role-card { flex-wrap:wrap; gap:18px; }
  .team-role-card__index { flex-basis:28px; }
  .team-role-card__media { flex:1 1 calc(100% - 46px); aspect-ratio:4/4.7; }
  .team-role-card__body { flex-basis:100%; padding-left:46px; gap:26px; }
  .team-role-card__body h2 { font-size:38px; }
  .team-role-card__bottom { flex-direction:column; align-items:flex-start; gap:20px; }
  .team-operating { flex-direction:column; }
  .team-operating__item { flex-basis:auto; width:100%; padding:26px 0 30px !important; border-left:0 !important; }
  .team-operating__item span { margin-bottom:24px; }
  .team-loop__row { flex-wrap:wrap; gap:10px 18px; }
  .team-loop__step { flex-basis:100%; }
  .team-loop__row h3 { flex-basis:100%; }
  .team-loop__row p { flex-basis:100%; }
  .role-profile { flex-direction:column; }
  .role-profile__media, .role-profile__content { flex-basis:auto; width:100%; }
  .role-profile__media { aspect-ratio:4/4.8; }
  .role-responsibility { flex-wrap:wrap; gap:12px 18px; }
  .role-responsibility__index { flex-basis:34px; }
  .role-responsibility h3 { flex:1 1 calc(100% - 52px); }
  .role-responsibility p { flex-basis:100%; padding-left:52px; }
  .role-interface { flex-direction:column; }
  .role-interface__item { flex-basis:auto; width:100%; min-height:230px; }
  .role-nav { flex-direction:column; }
  .role-nav a { min-height:130px; }
}
