/* A more compact editorial rhythm below the cinematic opening. */
.focus-section{padding-top:60px;padding-bottom:52px}
.focus-heading{margin-bottom:36px;gap:28px}
.focus-heading .eyebrow{margin-bottom:12px}
.focus-heading h2{font-size:clamp(36px,3.5vw,52px);line-height:1.08}
.focus-heading-note{font-size:14px;line-height:1.55}
.focus-panels{gap:48px}
.focus-panel{min-height:308px;scroll-margin-top:124px;border-radius:3px}
.focus-panel-content{padding:30px clamp(26px,3vw,44px)}
.sector-kicker{margin-bottom:28px;gap:14px}
.focus-panel h3{font-size:clamp(36px,3.7vw,52px);margin-bottom:14px}
.sector-description{font-size:17px;line-height:1.5;margin-bottom:24px}
.sector-fields{line-height:1.6}
.focus-end{margin-top:56px;padding:24px 0 8svh}

.portfolio-content{padding-top:122px}
.portfolio-heading{padding-bottom:28px;gap:24px}
.portfolio-heading .eyebrow{margin-bottom:14px}
.portfolio-heading h2{font-size:clamp(34px,3.3vw,46px)}
.portfolio-total{font-size:14px}
.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.portfolio-card,.portfolio-card:nth-last-child(-n+4){grid-column:auto}
.portfolio-card{min-height:250px;padding:27px 26px 23px}
.portfolio-logo{max-width:154px;max-height:40px;margin:3px 0 28px}
.portfolio-card[data-company="safire-technology"] .portfolio-logo{width:132px}
.portfolio-card h3{font-size:22px;margin:3px 0 28px}
.portfolio-summary{font-size:15px;line-height:1.55;max-width:270px;margin:auto 0 22px}
.portfolio-meta{font-size:12px;letter-spacing:.015em}
.portfolio-meta .portfolio-open{font-size:18px}
.portfolio-footer{padding:36px 0}
@media(min-width:1200px){.portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:901px) and (max-width:1199px){.portfolio-card:last-child{grid-column:1/-1;min-height:180px;display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:28px}.portfolio-card:last-child .portfolio-logo,.portfolio-card:last-child h3,.portfolio-card:last-child .portfolio-summary{margin:0}.portfolio-card:last-child .portfolio-meta{align-self:center}}

.portfolio-team-bridge{height:72px}
.team-intro{padding:40px 0 60px}
.team-intro>.eyebrow{margin-bottom:28px}
.team-intro h2{font-size:clamp(42px,4.5vw,66px)}
.team-intro-heading{gap:35px}
.team-intro-heading>p{font-size:16px;line-height:1.6;max-width:250px}
.team-index{margin-top:28px;gap:26px}
.team-group{margin-bottom:64px}
.team-group-heading{padding-bottom:18px;margin-bottom:26px}
.team-group-heading h3{font-size:19px}
.portrait-row{--portrait-height:320px;--expanded-height:500px;margin-bottom:44px}
.portrait-row[data-columns="4"]{--portrait-height:228px;--expanded-height:470px}
.portrait-window .portrait-image{object-fit:contain}
.person-select{padding:17px 14px 0}
.person-name{font-size:24px;line-height:1.17;margin-bottom:9px}
.person-role{font-size:14px;line-height:1.5}
.person-experience{font-size:15px;line-height:1.5;margin-top:13px}
.person-action{font-size:14px;margin-top:16px;gap:12px}
.person-action>span{font-size:19px}
.team-group-advisors .person-name{font-size:21px}
.team-group-advisors .person-experience{font-size:15px}
.team-group-advisors .person-select{padding-left:10px;padding-right:10px}
.portrait-bio-inner{padding:28px clamp(24px,3vw,44px)}
.bio-label{margin-bottom:16px}
.bio-name{font-size:clamp(30px,2.8vw,40px);margin-bottom:13px}
.bio-role{margin-bottom:20px}
.bio-copy{font-size:17px;line-height:1.65}
.bio-credentials{margin-top:22px}

@media(min-width:1700px){
  .focus-panel{min-height:340px}
  .portfolio-card{min-height:270px;padding:30px}
  .portfolio-logo{max-width:172px;max-height:44px}
  .portrait-row{--portrait-height:365px;--expanded-height:540px}
  .portrait-row[data-columns="4"]{--portrait-height:265px;--expanded-height:490px}
}
@media(max-width:1100px){
  .portrait-row{--portrait-height:280px;--expanded-height:470px}
  .portrait-row[data-columns="4"]{--portrait-height:204px;--expanded-height:450px}
  .person-name{font-size:23px}
  .team-group-advisors .person-name{font-size:20px}
  .team-intro-heading>p{margin-top:22px;max-width:460px}
}
@media(max-width:900px){
  .focus-panel{min-height:292px}
  .focus-panel-content{padding:27px 26px}
  .focus-panels{gap:36px}
  .focus-heading{margin-bottom:30px}
  .focus-panel h3{font-size:38px}
  .sector-kicker{margin-bottom:24px}
  .sector-description{font-size:16px;margin-bottom:22px}
  .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portfolio-card{min-height:244px;padding:25px 24px 22px}
  .portfolio-heading h2{font-size:36px}
}
@media(max-width:700px){
  .portfolio-team-bridge{height:54px}
  .team-intro{padding:32px 0 44px}
  .team-intro>.eyebrow{margin-bottom:24px}
  .team-intro h2{font-size:clamp(35px,7.7vw,48px);line-height:1.09}
  .team-intro-heading>p{font-size:15px;line-height:1.6;margin-top:20px}
  .team-index{font-size:14px;gap:14px 20px;margin-top:25px}
  .team-group{margin-bottom:48px}
  .team-group-heading{margin-bottom:22px;padding-bottom:16px}
  .team-group-heading h3{font-size:18px}
  .mobile-person,.team-group-advisors .mobile-person{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid #afc7df20}
  .mobile-person:last-child,.team-group-advisors .mobile-person:last-child{margin-bottom:0}
  .mobile-profile,.team-group-advisors .mobile-profile{display:grid;grid-template-columns:112px minmax(0,1fr);gap:20px;align-items:start}
  .mobile-portrait,.team-group-advisors .mobile-portrait{height:154px}
  .mobile-portrait .portrait-image{object-fit:contain}
  .mobile-identity,.team-group-advisors .mobile-identity{padding:3px 0 0}
  .mobile-profile .person-name{font-size:23px;margin-bottom:8px}
  .mobile-profile .person-role{font-size:14px;line-height:1.5}
  .mobile-profile .person-experience,.team-group-advisors .person-experience{font-size:15px;line-height:1.5;margin-top:12px}
  .mobile-profile .person-action{font-size:14px;margin-top:14px}
  .mobile-bio p:not(.bio-credentials){font-size:16px;line-height:1.65;margin:20px 0 0}
  .mobile-bio .bio-credentials{margin:18px 0 0}
}
@media(max-width:600px){
  .focus-section{padding-top:44px;padding-bottom:36px}
  .focus-heading{margin-bottom:26px}
  .focus-heading .eyebrow{margin-bottom:11px}
  .focus-heading h2{font-size:35px}
  .focus-panels{gap:28px}
  .focus-panel{min-height:338px}
  .focus-panel-content{padding:24px 20px}
  .focus-panel h3{font-size:34px;margin-bottom:13px}
  .sector-kicker{font-size:11px;gap:11px;margin-bottom:20px}
  .sector-description{font-size:16px;margin-bottom:20px}
  .sector-fields{font-size:12px;gap:5px}
  .focus-end{margin-top:36px;padding:20px 0 7svh}
  .portfolio-content{padding-top:104px}
  .portfolio-heading{padding-bottom:24px}
  .portfolio-heading h2{font-size:33px;max-width:290px}
  .portfolio-heading .eyebrow{margin-bottom:12px}
  .portfolio-total{font-size:14px;margin-top:13px}
  .portfolio-grid{grid-template-columns:1fr}
  .portfolio-card{min-height:218px;padding:25px 24px 21px}
  .portfolio-logo{max-width:150px;max-height:36px;margin:0 0 24px}
  .portfolio-card h3{font-size:22px;margin:0 0 24px}
  .portfolio-summary{font-size:15px;margin:auto 0 20px;max-width:280px}
  .portfolio-footer{padding:30px 0}
}
@media(max-width:420px){
  .mobile-profile,.team-group-advisors .mobile-profile{grid-template-columns:90px minmax(0,1fr);gap:16px}
  .mobile-portrait,.team-group-advisors .mobile-portrait{height:130px}
  .mobile-profile .person-name{font-size:21px}
}
