/* ── SECTION ── */
/* section{padding:96px 5%} — removed to prevent conflicts */
.si{max-width:1200px;margin:0 auto}
.ey{display:inline-block;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--acc);margin-bottom:16px}
.h2{font-family:var(--serif);font-size:clamp(30px,4vw,50px);line-height:1.12;letter-spacing:-.8px;color:var(--tp);margin-bottom:20px;font-weight:400}
.h2 em,.h2-em{font-style:italic;color:var(--acc)}
.sub{font-size:17px;font-weight:300;color:var(--ts);line-height:1.7;max-width:560px}
.hdr{margin-bottom:60px}
.dvl{width:48px;height:2px;background:var(--ice-m);border-radius:2px;margin:20px 0}

/* ── REVEAL ── */
.rv{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.rv.on{opacity:1;transform:translateY(0)}
.rv-l{opacity:0;transform:translateX(-24px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.rv-l.on{opacity:1;transform:translateX(0)}
.rv-r{opacity:0;transform:translateX(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.rv-r.on{opacity:1;transform:translateX(0)}

/* ── BUTTONS ── */
.bw{background:#fff;color:var(--navy);padding:14px 28px;border-radius:10px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .2s}
.bw:hover{background:var(--ice);transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.15)}
.ba{background:var(--acc);color:#fff;padding:14px 28px;border-radius:10px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .2s}
.ba:hover{background:#4a7fd4;transform:translateY(-2px);box-shadow:0 10px 28px rgba(59,111,196,.4)}
.bg{color:rgba(255,255,255,.7);padding:14px 22px;border-radius:10px;font-size:14px;font-weight:400;text-decoration:none;transition:all .25s;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.15)}
.bg:hover{color:#fff;border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.05)}
.bo{color:var(--navy);padding:12px 20px;border-radius:8px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--g200);transition:all .2s}
.bo:hover{border-color:var(--navy);background:var(--ice)}
.bw svg,.ba svg,.bo svg{transition:transform .2s}
.bw:hover svg,.ba:hover svg,.bo:hover svg{transform:translateX(3px)}

/* ── CTA DARK ── */
.cd{background:var(--navy);padding:96px 5%;text-align:center;position:relative;overflow:hidden}
.cd::before{content:'';position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(59,111,196,.2) 0%,transparent 60%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.cd .si{position:relative;z-index:1}
.cd .h2{color:#fff}
.cd .h2 em{color:#7AAAE8}
.cd p{font-size:17px;color:rgba(255,255,255,.45);font-weight:300;margin-bottom:36px;max-width:460px;margin-left:auto;margin-right:auto}
.cd-btns{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}

/* ── FOOTER ── */
#gf{background:var(--g800);color:rgba(255,255,255,.45);padding:60px 5% 36px}
.gf-i{max-width:1200px;margin:0 auto}
.gf-t{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:40px;margin-bottom:44px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.08)}
.gf-brand p{font-size:14px;line-height:1.7;font-weight:300;margin-top:12px;max-width:240px}
.gf-logo{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.gf-dot{width:32px;height:32px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center}
.gf-dot span{font-weight:600;font-size:15px;color:#fff}
.gf-name{font-weight:600;font-size:16px;color:#fff;letter-spacing:-.3px}
.gf-col h5{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:14px}
.gf-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.gf-col a{color:rgba(255,255,255,.5);text-decoration:none;font-size:13px;font-weight:300;transition:color .2s}
.gf-col a:hover{color:#fff}
.gf-b{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:rgba(255,255,255,.3)}

@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:960px){
  
  .gf-t{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  section{padding:72px 5%}
  .gf-t{grid-template-columns:1fr}
}

.ph-about{padding:160px 5% 100px;background:var(--owhite);border-bottom:1px solid var(--g200);position:relative;overflow:hidden}
.ph-about::before{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(59,111,196,.05) 0%,transparent 70%);top:-100px;right:10%;pointer-events:none}
.ph-about-i{max-width:1200px;margin:0 auto;position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}
.val-list{display:flex;flex-direction:column;gap:0}
.val-item{padding:24px 0;border-bottom:1px solid var(--g200);display:flex;gap:20px;align-items:flex-start;transition:padding-left .3s}
.val-item:first-child{padding-top:0}
.val-item:hover{padding-left:8px}
.val-n{font-family:var(--serif);font-size:32px;color:var(--ice-m);font-style:italic;line-height:1;flex-shrink:0;width:36px}
.val-item h4{font-size:16px;font-weight:600;color:var(--tp);margin-bottom:4px}
.val-item p{font-size:13px;color:var(--tm);font-weight:300;line-height:1.6}
.stats-dark{background:var(--navy)}
.stats-g{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.07);border-radius:var(--rl);overflow:hidden}
.stat-box{background:var(--navy);padding:44px 32px;text-align:center;transition:background .3s}
.stat-box:hover{background:var(--navy-m)}
.stat-n{font-family:var(--serif);font-size:52px;color:#fff;line-height:1;margin-bottom:8px}
.stat-lbl{font-size:12px;color:rgba(255,255,255,.35);font-weight:300;max-width:140px;margin:0 auto;line-height:1.5}
.sol-strip{background:var(--owhite)}
.sol-g{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.sol-card{background:var(--white);border:1px solid var(--g200);border-radius:var(--rx);padding:36px 28px;transition:all .3s;display:block;text-decoration:none;position:relative;overflow:hidden}
.sol-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.sol-wb::after{background:var(--acc)}
.sol-ao::after{background:#1A7F6E}
.sol-co::after{background:#2D3F8F}
.sol-card:hover{box-shadow:0 16px 48px rgba(11,28,62,.09);transform:translateY(-4px);border-color:transparent}
.sol-card:hover::after{transform:scaleX(1)}
.sol-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.sol-wb .sol-card-icon{background:var(--ice)}
.sol-ao .sol-card-icon{background:#E6F5F2}
.sol-co .sol-card-icon{background:#EFF2FF}
.sol-card-icon svg{width:20px;height:20px;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sol-wb .sol-card-icon svg{stroke:var(--acc)}
.sol-ao .sol-card-icon svg{stroke:#1A7F6E}
.sol-co .sol-card-icon svg{stroke:#2D3F8F}
.sol-card-tag{font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;display:block}
.sol-wb .sol-card-tag{color:var(--acc)}
.sol-ao .sol-card-tag{color:#1A7F6E}
.sol-co .sol-card-tag{color:#2D3F8F}
.sol-card h3{font-size:19px;font-weight:600;color:var(--tp);letter-spacing:-.3px;margin-bottom:8px}
.sol-card p{font-size:13px;color:var(--ts);font-weight:300;line-height:1.65}
.sol-card-arr{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--navy);margin-top:16px;transition:gap .2s}
.sol-card:hover .sol-card-arr{gap:8px}
.team-intro-g{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:56px}
.team-g{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.team-c{text-align:center}
.team-av{width:76px;height:76px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-family:var(--serif);font-size:24px;color:#fff;font-style:italic}
.team-c h4{font-size:15px;font-weight:600;color:var(--tp);margin-bottom:3px}
.team-c .role{font-size:12px;color:var(--tm);font-weight:300}
.team-c .dept{display:inline-block;background:var(--ice);color:var(--acc);font-size:10px;font-weight:600;padding:3px 8px;border-radius:5px;margin-top:7px;letter-spacing:.3px}
.appr-g{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.appr-list{display:flex;flex-direction:column;gap:28px}
.appr-item{display:flex;gap:20px}
.appr-n{font-family:var(--serif);font-size:36px;color:var(--ice-m);line-height:1;flex-shrink:0;font-style:italic;width:40px}
.appr-item h4{font-size:16px;font-weight:600;color:var(--tp);margin-bottom:5px}
.appr-item p{font-size:14px;color:var(--ts);font-weight:300;line-height:1.65}
@media(max-width:960px){.ph-about-i,.team-intro-g,.appr-g{grid-template-columns:1fr}.stats-g{grid-template-columns:1fr 1fr}.sol-g,.team-g{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sol-g,.team-g{grid-template-columns:1fr}.stats-g{grid-template-columns:1fr}}

.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-l.visible{opacity:1;transform:translateX(0)}
.reveal-r.visible{opacity:1;transform:translateX(0)}

/* ── PHOTO SECTIONS ── */
.team-photo-g{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:48px}
.team-photo-card{border-radius:var(--rx);overflow:hidden;position:relative;background:var(--g800)}
.team-photo-card img{width:100%;height:420px;object-fit:cover;object-position:top center;display:block;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.team-photo-card:hover img{transform:scale(1.03)}
.team-photo-info{position:absolute;bottom:0;left:0;right:0;padding:24px 28px;background:linear-gradient(to top,rgba(11,28,62,.92) 0%,transparent 100%)}
.team-photo-info h4{font-size:18px;font-weight:600;color:#fff;letter-spacing:-.3px;margin-bottom:2px}
.team-photo-info span{font-size:13px;color:rgba(255,255,255,.55);font-weight:300}
.team-photo-wide{border-radius:var(--rx);overflow:hidden;margin-bottom:24px}
.team-photo-wide img{width:100%;height:380px;object-fit:cover;object-position:center 30%;display:block;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.team-photo-wide:hover img{transform:scale(1.02)}
.about-hero-photo{margin-bottom:48px}
.about-hero-photo img{width:100%;height:500px;object-fit:cover;border-radius:var(--rx);object-position:center 20%}
@media(max-width:700px){.team-photo-g{grid-template-columns:1fr}.team-photo-card img,.team-photo-wide img{height:320px}}