/* Professional team section — command, trades and delivery */
.team#team{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(8rem,12vw,12rem) 5vw clamp(7rem,10vw,10rem) 10vw;
  background:
    radial-gradient(circle at 79% 22%,rgba(43,83,117,.25),transparent 27%),
    linear-gradient(135deg,#06101d 0%,#081727 56%,#050c15 100%);
  color:#f4f3ee;
}
.team#team:before{content:"";position:absolute;inset:0;z-index:-3;background-image:linear-gradient(rgba(154,191,213,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(154,191,213,.05) 1px,transparent 1px);background-size:25vw 25vw;mask-image:linear-gradient(110deg,#000,rgba(0,0,0,.45) 70%,transparent)}
.team#team:after{content:"";position:absolute;z-index:-2;width:64vw;height:64vw;right:-28vw;top:-24vw;border:1px solid rgba(144,186,211,.13);border-radius:50%;box-shadow:0 0 0 10vw rgba(144,186,211,.022),0 0 0 20vw rgba(144,186,211,.015)}
.team-blueprint{position:absolute;inset:0;z-index:-1;pointer-events:none}
.team-blueprint i:first-child{position:absolute;left:10vw;right:5vw;top:clamp(7rem,10vw,10rem);height:1px;background:linear-gradient(90deg,rgba(190,214,227,.34),rgba(190,214,227,.03))}
.team-blueprint i:nth-child(2){position:absolute;left:58%;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(190,214,227,.08),transparent)}
.team-blueprint i:last-child{position:absolute;left:calc(58% - 4px);top:31%;width:8px;height:8px;border-radius:50%;background:#b9d2df;box-shadow:0 0 20px rgba(143,194,222,.7)}
.team-watermark{position:absolute;right:-.04em;bottom:-.12em;z-index:-1;color:transparent;-webkit-text-stroke:1px rgba(180,210,227,.035);font:900 clamp(15rem,31vw,38rem)/.75 'Montserrat',sans-serif;letter-spacing:-.11em;user-select:none}
.team#team .section-label{left:4.5vw;top:clamp(8.5rem,12vw,12.5rem);color:rgba(218,231,238,.58)}
.team#team .section-label span{color:#718fff}
.team#team .team-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);align-items:end;gap:8vw}
.team-title .eyebrow{margin-bottom:2rem;color:#9ab8c8}
.team#team .team-title h2{margin:0;color:#f4f2ed;font-size:clamp(3.25rem,5.65vw,6.7rem);line-height:.87;letter-spacing:-.07em}
.team-title h2 span,.team-title h2 em{display:inline-block;opacity:0;transform:translateY(42px);clip-path:inset(0 0 100%);transition:opacity .8s ease,transform 1s cubic-bezier(.16,.8,.22,1),clip-path 1s cubic-bezier(.16,.8,.22,1)}
.team-title h2 span:nth-of-type(2){transition-delay:.1s}
.team-title h2 em{transition-delay:.2s;color:#f4f2ed!important}
.team#team.is-visible .team-title h2 span,.team#team.is-visible .team-title h2 em{opacity:1;transform:none;clip-path:inset(0)}
.team-statement{padding:2rem 0 0 2.2rem;border-left:1px solid rgba(188,213,227,.23);opacity:0;transform:translateY(30px);transition:opacity .9s ease .28s,transform .9s cubic-bezier(.16,.8,.22,1) .28s}
.team#team.is-visible .team-statement{opacity:1;transform:none}
.team-statement>small{color:#7894ff;font:700 .62rem 'Inter',sans-serif;letter-spacing:.17em;text-transform:uppercase}
.team-statement>p{margin:1.6rem 0 2.3rem;color:#eef0ee;font:500 clamp(1.25rem,1.55vw,1.7rem)/1.45 'Montserrat',sans-serif;letter-spacing:-.035em}
.team-statement>div{display:flex;justify-content:space-between;padding:.9rem 0;border-top:1px solid rgba(187,211,225,.15);color:rgba(204,220,229,.55);font:600 .58rem 'Inter',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.team-statement>div b{color:#9db9c8}
.team#team .trades{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:clamp(4rem,7vw,7rem) 0 0;border:1px solid rgba(184,210,224,.17);background:rgba(184,210,224,.17)}
.team#team .trades>span{display:flex;flex-direction:column;min-height:145px;padding:1.25rem 1.2rem;border:0;border-radius:0;background:rgba(7,18,31,.94);opacity:0;transform:translateY(35px);transition:opacity .65s ease,transform .8s cubic-bezier(.16,.8,.22,1),background .3s}
.team#team .trades>span+span{border-left:1px solid rgba(184,210,224,.17)}
.team#team .trades>span:nth-child(2){transition-delay:.07s}.team#team .trades>span:nth-child(3){transition-delay:.14s}.team#team .trades>span:nth-child(4){transition-delay:.21s}.team#team .trades>span:nth-child(5){transition-delay:.28s}
.team#team.is-visible .trades>span{opacity:1;transform:none}
.team#team .trades>span:hover{background:rgba(14,35,56,.98)}
.team#team .trades b{color:#7894ff;font:700 .6rem 'Inter',sans-serif;letter-spacing:.1em}
.team#team .trades strong{margin-top:auto;color:#f3f3ef;font:800 clamp(1rem,1.25vw,1.35rem)/1 'Montserrat',sans-serif;letter-spacing:-.035em;text-transform:uppercase}
.team#team .trades small{margin-top:.6rem;color:rgba(194,214,225,.48);font:600 .55rem 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase}
.process-head{display:flex;justify-content:space-between;margin-top:clamp(4rem,7vw,7rem);padding-bottom:1.15rem;border-bottom:1px solid rgba(184,210,224,.17);color:rgba(201,219,228,.5);font:600 .6rem 'Inter',sans-serif;letter-spacing:.15em;text-transform:uppercase}
.team#team .process{position:relative;display:grid;grid-template-columns:repeat(4,1fr);border:0}
.team#team .process:before{content:"";position:absolute;left:0;top:2.25rem;width:0;height:1px;background:linear-gradient(90deg,#607aff,#9eaeff);box-shadow:0 0 12px rgba(101,126,255,.45);transition:width 1.5s cubic-bezier(.16,.8,.22,1) .3s}
.team#team.is-visible .process:before{width:100%}
.team#team .process article{position:relative;min-height:270px;padding:1.8rem 2rem 1.5rem 0;border:0;opacity:0;transform:translateY(32px);transition:opacity .7s ease .35s,transform .8s cubic-bezier(.16,.8,.22,1) .35s}
.team#team .process article+article{padding-left:2rem;border-left:1px solid rgba(184,210,224,.13)}
.team#team .process article:nth-child(2){transition-delay:.45s}.team#team .process article:nth-child(3){transition-delay:.55s}.team#team .process article:nth-child(4){transition-delay:.65s}
.team#team.is-visible .process article{opacity:1;transform:none}
.team#team .process article>b{color:#819bff;font:700 .62rem 'Inter',sans-serif;letter-spacing:.1em}
.team#team .process article>i{position:absolute;top:2rem;right:-4px;width:7px;height:7px;border-radius:50%;background:#b9cfdb;box-shadow:0 0 14px rgba(138,188,218,.7)}
.team#team .process article:last-child>i{right:0}
.team#team .process h3{margin:5rem 0 1rem;color:#f4f2ee;font-size:clamp(1.45rem,1.8vw,2rem);letter-spacing:-.05em}
.team#team .process p{max-width:260px;margin:0;color:rgba(204,220,228,.6);font:400 .86rem/1.65 'Inter',sans-serif}
.team#team .process small{position:absolute;left:0;bottom:1.5rem;color:rgba(165,195,211,.4);font:600 .55rem 'Inter',sans-serif;letter-spacing:.15em;text-transform:uppercase}
.team#team .process article+article small{left:2rem}

@media(max-width:1000px){
  .team#team{padding-left:7vw;padding-right:7vw}
  .team#team .section-label{position:static;writing-mode:initial;transform:none;margin-bottom:3rem}
  .team#team .team-head{grid-template-columns:1fr}
  .team-statement{max-width:650px}
  .team#team .trades{grid-template-columns:repeat(2,1fr)}
  .team#team .trades>span+span{border-left:0}
  .team#team .trades>span:nth-child(even){border-left:1px solid rgba(184,210,224,.17)}
  .team#team .trades>span{border-bottom:1px solid rgba(184,210,224,.17)}
  .team#team .trades>span:last-child{grid-column:1/-1}
}
@media(max-width:650px){
  .team#team{padding:6rem 6vw}
  .team#team .team-title h2{font-size:12vw;line-height:.92}
  .team-statement{padding-left:1.3rem}
  .team#team .trades{grid-template-columns:1fr}
  .team#team .trades>span,.team#team .trades>span:nth-child(even){min-height:118px;border-left:0}
  .team#team .trades>span:last-child{grid-column:auto}
  .team#team .process{grid-template-columns:1fr}
  .team#team .process:before{left:2.25rem;top:0;width:1px;height:0;transition:height 1.5s cubic-bezier(.16,.8,.22,1) .3s}
  .team#team.is-visible .process:before{width:1px;height:100%}
  .team#team .process article,.team#team .process article+article{min-height:220px;padding:1.7rem 0 1.7rem 4.5rem;border-left:0;border-bottom:1px solid rgba(184,210,224,.13)}
  .team#team .process article>i,.team#team .process article:last-child>i{left:calc(2.25rem - 3px);right:auto;top:2rem}
  .team#team .process h3{margin:2rem 0 .8rem}
  .team#team .process small,.team#team .process article+article small{left:4.5rem;bottom:1.5rem}
  .team-watermark{font-size:58vw}
}
@media(prefers-reduced-motion:reduce){
  .team-title h2 span,.team-title h2 em,.team-statement,.team#team .trades>span,.team#team .process article{opacity:1;transform:none;clip-path:none;transition:none}
}
