/* ==========================================================
   PAGINA TEAM — REV. 1
   ========================================================== */
.team-hero{position:relative;min-height:590px;display:flex;align-items:flex-end;overflow:hidden;background:#071b31;color:#fff}
.team-hero__media,.team-hero__overlay{position:absolute;inset:0}
.team-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 32%;display:block;filter:saturate(.82) contrast(1.04)}
.team-hero__overlay{background:linear-gradient(90deg,rgba(4,23,42,.96) 0%,rgba(4,23,42,.82) 40%,rgba(4,23,42,.23) 73%,rgba(4,23,42,.12) 100%),linear-gradient(0deg,rgba(4,23,42,.72) 0%,transparent 48%)}
.team-hero__inner{position:relative;z-index:2;padding-top:180px;padding-bottom:86px;max-width:1220px;width:100%}
.team-kicker{margin:0 0 18px;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;color:#62a744}
.team-kicker--dark{color:#4f9137}
.team-hero h1{margin:0;max-width:760px;font-size:clamp(48px,6.4vw,92px);line-height:.96;letter-spacing:-.045em;font-weight:760}
.team-hero__lead{max-width:720px;margin:28px 0 0;font-size:clamp(19px,2vw,27px);line-height:1.42;color:rgba(255,255,255,.85)}

.team-intro{padding:96px 0 82px;background:#fff}
.team-intro__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:90px;align-items:start}
.team-intro h2,.management h2,.team-cta h2{margin:0;color:#0a2038;font-size:clamp(38px,4.4vw,64px);line-height:1.04;letter-spacing:-.035em}
.team-intro__grid>p,.management__head>p{margin:0;color:#4f5c68;font-size:19px;line-height:1.78}

.team-leaders{padding:0 0 105px;background:#fff}
.team-leaders__grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.leader-card{display:grid;grid-template-columns:minmax(250px,.88fr) minmax(0,1.12fr);min-height:510px;background:#0a2038;color:#fff;overflow:hidden}
.leader-card--accent{background:#102b48}
.team-photo{position:relative;min-height:330px;overflow:hidden;background:linear-gradient(145deg,#e9edf0,#cfd8df)}
.team-photo::after{content:var(--initials);position:absolute;inset:0;display:grid;place-items:center;color:#0b2744;font-weight:800;font-size:76px;letter-spacing:-.05em;opacity:.24}
.team-photo img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block}
.team-photo--leader{min-height:510px}
.leader-card__content{padding:52px 42px 42px;display:flex;flex-direction:column;align-items:flex-start}
.team-role{margin:0 0 12px;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:#72ad55}
.leader-card h3,.manager-card h3{margin:0;letter-spacing:-.03em}
.leader-card h3{font-size:38px;line-height:1.04;color:#fff}
.leader-card__content>p:not(.team-role){margin:24px 0 0;color:rgba(255,255,255,.78);font-size:16px;line-height:1.72}
.leader-card blockquote{margin:auto 0 0;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.18);font-size:15px;line-height:1.56;font-style:italic;color:rgba(255,255,255,.9)}
.leader-focus{margin:auto 0 0;display:flex;flex-wrap:wrap;gap:8px;padding-top:28px}
.leader-focus span{padding:8px 10px;border:1px solid rgba(255,255,255,.2);font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:rgba(255,255,255,.83)}

.management{padding:105px 0 112px;background:#f3f5f6}
.management__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:80px;align-items:start;margin-bottom:58px}
.management__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.manager-card{background:#fff;box-shadow:0 18px 44px rgba(7,27,49,.08)}
.manager-card .team-photo{aspect-ratio:1.1/1;min-height:0}
.manager-card__body{padding:30px 30px 34px;border-top:4px solid #5c9f3f}
.manager-card h3{font-size:28px;line-height:1.08;color:#0a2038}
.manager-card__body>p:last-child{margin:18px 0 0;color:#596571;font-size:15px;line-height:1.68}

.team-principles{padding:82px 0;background:#0a2038;color:#fff}
.team-principles__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.principle{padding:12px 28px 12px 0;min-height:178px}
.principle+.principle{padding-left:28px;border-left:1px solid rgba(255,255,255,.16)}
.principle span{display:block;color:#6eae4f;font-weight:800;font-size:12px;letter-spacing:.15em;margin-bottom:26px}
.principle h3{margin:0;font-size:24px;color:#fff}
.principle p{margin:14px 0 0;color:rgba(255,255,255,.67);font-size:14px;line-height:1.65}

.team-cta{padding:78px 0;background:#0d2947;color:#fff}
.team-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:50px}
.team-cta h2{color:#fff;max-width:760px}
.team-cta__button{display:inline-flex;align-items:center;justify-content:center;min-width:220px;min-height:58px;padding:0 26px;background:#5c9f3f;color:#fff!important;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:800;transition:transform .2s ease,background .2s ease}
.team-cta__button:hover{transform:translateY(-2px);background:#4d8b34}

@media(max-width:1100px){
  .leader-card{grid-template-columns:1fr;min-height:0}.team-photo--leader{min-height:430px}.leader-card__content{min-height:390px}
  .management__grid{gap:18px}.manager-card__body{padding:26px 24px 30px}
}
@media(max-width:900px){
  .team-hero{min-height:520px}.team-hero__overlay{background:linear-gradient(90deg,rgba(4,23,42,.92),rgba(4,23,42,.56)),linear-gradient(0deg,rgba(4,23,42,.82),transparent)}
  .team-intro__grid,.management__head{grid-template-columns:1fr;gap:28px}
  .team-leaders__grid{grid-template-columns:1fr}.leader-card{grid-template-columns:minmax(250px,.8fr) 1.2fr}.team-photo--leader{min-height:500px}.leader-card__content{min-height:500px}
  .management__grid{grid-template-columns:1fr 1fr}.team-principles__grid{grid-template-columns:1fr 1fr}.principle:nth-child(3){border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.16);padding-top:30px;margin-top:26px}.principle:nth-child(4){border-top:1px solid rgba(255,255,255,.16);padding-top:30px;margin-top:26px}
}
@media(max-width:680px){
  .team-hero{min-height:500px}.team-hero__inner{padding-top:140px;padding-bottom:58px}.team-hero__media img{object-position:58% center}.team-hero__lead{font-size:18px}
  .team-intro{padding:70px 0 58px}.team-leaders{padding-bottom:72px}.leader-card{grid-template-columns:1fr}.team-photo--leader{min-height:390px}.leader-card__content{min-height:0;padding:36px 28px}.leader-card blockquote,.leader-focus{margin-top:28px}
  .management{padding:74px 0}.management__grid{grid-template-columns:1fr}.manager-card .team-photo{aspect-ratio:1.18/1}
  .team-principles{padding:60px 0}.team-principles__grid{grid-template-columns:1fr}.principle,.principle+.principle,.principle:nth-child(3),.principle:nth-child(4){padding:25px 0;border-left:0;border-top:1px solid rgba(255,255,255,.16);margin:0;min-height:0}.principle:first-child{border-top:0;padding-top:0}.principle span{margin-bottom:14px}
  .team-cta{padding:58px 0}.team-cta__inner{align-items:flex-start;flex-direction:column}.team-cta__button{width:100%}
}

/* rev. 2 — fix team photos and full hero group image */
.team-hero{min-height:690px;background:#071b31}
.team-hero__media img{width:100%;height:100%;object-fit:contain !important;object-position:center bottom !important;display:block;filter:saturate(.95) contrast(1.02) !important;background:#071b31}
.team-hero__overlay{background:linear-gradient(180deg,rgba(4,23,42,.06) 0%,rgba(4,23,42,.10) 46%,rgba(4,23,42,.74) 100%) !important}
.team-hero__inner{padding-top:320px !important;padding-bottom:42px !important}
.team-hero__copy{display:inline-block;max-width:660px;background:rgba(4,23,42,.78);padding:30px 34px 32px;backdrop-filter:blur(3px)}
.team-hero h1{max-width:none}
.team-hero__lead{margin:22px 0 0}
.team-photo img{object-position:center 18%}
.team-photo--leader img{object-position:center 14%}
@media(max-width:1200px){.team-hero{min-height:640px}.team-hero__inner{padding-top:290px !important}}
@media(max-width:980px){.team-hero{min-height:580px}.team-hero__inner{padding-top:250px !important;padding-bottom:32px !important}.team-hero__copy{max-width:100%;padding:24px 24px 26px}}
@media(max-width:640px){.team-hero{min-height:500px}.team-hero__inner{padding-top:200px !important}.team-hero__copy{padding:20px 18px 22px}.team-photo img,.team-photo--leader img{object-position:center 10%}}

/* rev. 3 — remove hero photo, use original site portraits, add separate group photo */
.team-hero{min-height:auto !important;background:linear-gradient(135deg,#081f38 0%,#102f50 100%) !important;color:#fff}
.team-hero__inner{padding-top:120px !important;padding-bottom:84px !important}
.team-hero__copy{background:none !important;padding:0 !important;max-width:760px !important;backdrop-filter:none !important}
.team-hero h1{max-width:760px}
.team-hero__lead{max-width:720px;color:rgba(255,255,255,.82)}
.team-group{padding:0 0 98px;background:#fff}
.team-group__photo{position:relative;background:#edf1f4;overflow:hidden}
.team-group__photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.team-group__caption{padding-top:14px;color:#65717d;font-size:14px;line-height:1.6}
.team-photo img{object-fit:cover;object-position:center top !important}
.team-photo--leader img{object-position:center top !important}
@media(max-width:980px){
 .team-hero__inner{padding-top:96px !important;padding-bottom:62px !important}
 .team-group{padding-bottom:72px}
}
@media(max-width:640px){
 .team-hero__inner{padding-top:84px !important;padding-bottom:54px !important}
}

/* rev. 4 — six numbered image spaces and corrected text alignment */
html,body{max-width:100%;overflow-x:hidden}
.team-hero{min-height:auto !important;background:linear-gradient(135deg,#071b31 0%,#0d2a49 100%) !important}
.team-hero__inner{
  width:min(calc(100% - 48px),var(--container)) !important;
  max-width:var(--container) !important;
  margin-inline:auto !important;
  padding:210px 0 82px !important;
  box-sizing:border-box !important;
  text-align:left !important;
}
.team-hero__inner>*{margin-left:0 !important;margin-right:0 !important}
.team-hero h1{
  max-width:760px !important;
  font-size:clamp(48px,6vw,82px) !important;
  line-height:1.02 !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.team-hero__lead{max-width:720px !important}

.team-group__photo.is-placeholder,
.team-photo.is-placeholder{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eef2f4 !important;
  border:2px dashed #9aa8b4;
  overflow:hidden;
}
.team-group__photo.is-placeholder{height:430px}
.team-group__photo.is-placeholder::before,
.team-photo.is-placeholder::before{
  content:var(--photo-number);
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#0b2744;
  font-size:clamp(72px,10vw,150px);
  font-weight:800;
  line-height:1;
  opacity:.22;
}
.team-photo.is-placeholder::after{content:none !important}
.photo-placeholder__label{
  position:relative;
  z-index:2;
  margin-top:150px;
  padding:9px 14px;
  background:#0a2038;
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.team-group__photo .photo-placeholder__label{margin-top:190px}
.team-group__caption{font-weight:700;color:#52606c}

@media(max-width:1100px){
  .team-hero__inner{padding:190px 0 70px !important}
}
@media(max-width:980px){
  .team-hero__inner{width:min(calc(100% - 36px),var(--container)) !important;padding:175px 0 58px !important}
  .team-group__photo.is-placeholder{height:340px}
}
@media(max-width:640px){
  .team-hero__inner{width:calc(100% - 28px) !important;padding:165px 0 48px !important}
  .team-hero h1{font-size:44px !important}
  .team-group__photo.is-placeholder{height:250px}
  .photo-placeholder__label{margin-top:110px;font-size:10px}
  .team-group__photo .photo-placeholder__label{margin-top:130px}
}

/* rev. 5 — user-provided photos inserted in slots 1–6 */
.team-group__photo{position:relative;background:#eef2f5;overflow:hidden;border:none !important}
.team-group__photo img{display:block;width:100%;height:auto;object-fit:contain;background:#eef2f5}
.team-group__photo::before,.team-group__photo::after{content:none !important}
.team-group__caption{padding-top:14px;color:#52606c;font-weight:700}
.team-photo{background:#eef2f5 !important;overflow:hidden}
.team-photo::before,.team-photo::after{content:none !important}
.team-photo img{position:relative;z-index:1;width:100%;height:100%;display:block;object-fit:cover;object-position:center top}
.team-photo--leader img{object-position:center 14%}
@media(max-width:900px){.team-photo--leader img{object-position:center top}}

/* rev. 6 — final refinement: portraits, spacing and readability */
.team-group{padding-bottom:64px !important}
.team-group__caption{padding-top:12px;font-size:14px;line-height:1.55}
.team-leaders{padding-bottom:92px !important}
.team-leaders__grid{gap:30px}
.leader-card{grid-template-columns:minmax(290px,1fr) minmax(0,1.08fr);min-height:500px}
.team-photo--leader{min-height:500px;background:#e9eef2 !important}
.team-photo--leader img{object-fit:cover !important;width:100%;height:100%}
.team-photo--founder img{object-position:68% 16% !important}
.team-photo--ceo img{object-position:50% 14% !important}
.leader-card__content{padding:46px 40px 38px}
.team-role{font-size:12px;line-height:1.35}
.leader-card__content>p:not(.team-role){font-size:17px !important;line-height:1.76 !important;margin-top:22px}
.leader-card blockquote{font-size:16px !important;line-height:1.62 !important}
.manager-card__body>p:last-child{font-size:16px !important;line-height:1.74 !important}
.management__head>p{font-size:20px !important;line-height:1.72 !important}
.principle p{font-size:15px !important;line-height:1.72 !important;color:rgba(255,255,255,.74)}
.principle h3{font-size:25px}
@media(max-width:1200px){
  .leader-card{grid-template-columns:minmax(250px,.95fr) minmax(0,1.05fr)}
  .leader-card__content{padding:40px 32px 34px}
}
@media(max-width:1100px){
  .leader-card{grid-template-columns:1fr;min-height:0}
  .team-photo--leader{min-height:0;aspect-ratio:1.08/1}
  .team-photo--founder img{object-position:68% 18% !important}
  .team-photo--ceo img{object-position:center 14% !important}
}
@media(max-width:640px){
  .team-group{padding-bottom:48px !important}
  .leader-card__content>p:not(.team-role),.manager-card__body>p:last-child{font-size:15.5px !important}
  .principle p{font-size:14.5px !important}
}

/* rev. 7 — desktop portrait framing requested by the client */
@media(min-width:1101px){
  .team-photo--leader img{position:absolute;left:50%;top:50%;height:auto !important;max-width:none;object-fit:contain !important;object-position:center !important;transform:translate(-50%,-50%)}
  .team-photo--founder img{width:122% !important}
  .team-photo--ceo img{width:108% !important}
}
