.portfolio-section{position:relative}.portfolio-card{position:relative;cursor:pointer;outline:none;transition:transform .25s ease,box-shadow .25s ease,opacity .25s ease}.portfolio-card:hover{transform:translateY(-10px) scale(1.015);box-shadow:0 18px 34px rgba(6,23,168,.16)}.portfolio-card:focus-visible{outline:4px solid var(--team-yellow);outline-offset:4px}.portfolio-card-detail{display:none}.portfolio-section:has(.portfolio-card.is-expanded)::before{content:"";position:fixed;inset:0;background:rgba(255,255,255,.24);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:10}.portfolio-card.is-expanded{position:fixed;left:50%;top:50%;width:min(760px,86vw);height:min(440px,calc(100vh - 48px));transform:translate(-50%,-50%);z-index:11;box-shadow:0 24px 60px rgba(6,23,168,.24);cursor:default}.portfolio-card.is-expanded:hover{transform:translate(-50%,-50%)}.portfolio-card.is-expanded .portfolio-card-detail{display:block;margin-top:auto;padding-top:16px;border-top:1px solid #d8def2;color:#52648a;font-size:15px;line-height:1.45}.portfolio-card.is-expanded .portfolio-card-detail strong{display:block;margin-bottom:6px;color:var(--team-blue);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.portfolio-card.is-expanded .portfolio-card-detail p{margin:0}.portfolio-card.is-expanded .portfolio-card-body{overflow:auto}@media(max-width:600px){.portfolio-card:hover{transform:none;box-shadow:0 8px 22px rgba(6,23,168,.07)}.portfolio-card.is-expanded{width:calc(100vw - 36px);height:min(620px,calc(100vh - 32px))}.portfolio-card.is-expanded .portfolio-card-image{height:42%;min-height:180px}.portfolio-card.is-expanded .portfolio-card-body{height:58%;min-height:0}}@media(prefers-reduced-motion:reduce){.portfolio-card{transition:none}}
.team-page{--team-blue:#0617a8;--team-yellow:#fff200;min-height:100vh;background:radial-gradient(circle at 50% 30%,#eef3ff 0,#fff 42%);color:var(--team-blue)}
.team-header{position:relative;color:var(--team-blue);background:#fff}.team-header nav a.active{color:var(--team-blue);font-weight:800;border-bottom:3px solid #fff200;padding-bottom:2px;line-height:1.15;display:inline-block}
.team-main{min-height:calc(100vh - 112px);padding:74px 6% 54px}.team-intro{max-width:760px;margin:0 auto 44px;text-align:center}.team-intro .eyebrow{color:var(--team-blue)}.team-intro .eyebrow span{background:var(--team-yellow)}.team-intro h1{font-size:clamp(42px,5.5vw,76px);line-height:.96;letter-spacing:-.04em;margin:18px 0 20px}.team-intro h1 em{color:var(--team-blue);font-style:normal;text-decoration:underline;text-decoration-color:var(--team-yellow);text-decoration-thickness:7px;text-underline-offset:7px}.team-lede{max-width:570px;margin:auto;color:#52648a;font-size:18px;line-height:1.55}
.team-stage{max-width:1240px;margin:auto;overflow:visible}.team-grid{position:relative;display:flex;justify-content:center;align-items:center;gap:16px;min-height:390px;overflow:visible}.team-card{--side-shift:0px;width:clamp(170px,17vw,226px);height:390px;perspective:1200px;cursor:pointer;outline:none;transition:transform .7s cubic-bezier(.2,.75,.25,1),width .7s cubic-bezier(.2,.75,.25,1),height .7s cubic-bezier(.2,.75,.25,1),filter .3s ease}.team-card-inner{height:100%;position:relative;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.75,.25,1)}.team-card.is-selected{position:absolute;left:50%;top:50%;width:min(620px,72vw);height:300px;transform:translate(-50%,-50%);z-index:3}.team-card.is-displaced{transform:translateX(var(--side-shift));z-index:1}.team-card.is-flipped .team-card-inner{transform:rotateY(180deg)}.team-card:focus-visible .team-card-front{outline:4px solid var(--team-yellow);outline-offset:4px}.team-card-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:20px;overflow:hidden;border:1px solid #cdd6f4;box-shadow:0 15px 32px rgba(6,23,168,.13)}.team-card-front{display:flex;flex-direction:column;justify-content:flex-end;background:#f2f5ff}.team-card:hover{transform:translateY(-10px)}.team-card.is-selected:hover{transform:translate(-50%,-50%)}.team-card.is-displaced:hover{transform:translateX(var(--side-shift))}.team-card-back{transform:rotateY(180deg);padding:28px 34px;display:flex;flex-direction:column;justify-content:center;background:var(--team-blue);color:#fff}.team-card-back .card-index{position:absolute;top:24px;left:34px;color:var(--team-yellow);font-size:12px;letter-spacing:.14em}.team-card-back b{font-size:30px;line-height:1.05}.team-card-back>span:not(.card-index){margin-top:7px;color:#cbd7ff;font-size:15px}.team-card-back p{max-width:500px;color:#e1e7ff;font-size:16px;line-height:1.45;margin:18px 0}.team-card-back strong{color:var(--team-yellow);font-size:14px;line-height:1.3}
.portrait{height:100%;display:grid;place-items:center;position:absolute;inset:0;overflow:hidden}.portrait:before,.portrait:after{display:none}.portrait span{position:relative;z-index:1;font-size:82px;font-weight:800;letter-spacing:-.08em;color:#fff;text-shadow:0 5px 20px rgba(6,23,168,.2)}.portrait-blue{background:linear-gradient(145deg,#1832c5,#76a6ff)}.portrait-yellow{background:linear-gradient(145deg,#e5c800,#fff58a)}.portrait-sky{background:linear-gradient(145deg,#0c77b8,#92ddff)}.portrait-coral{background:linear-gradient(145deg,#e36b51,#ffc28f)}.portrait-navy{background:linear-gradient(145deg,#06175f,#627bd8)}.team-card-caption{position:relative;z-index:1;margin:0 10px 10px;padding:14px;border-radius:12px;background:rgba(6,23,168,.88);color:#fff;backdrop-filter:blur(8px)}.team-card-caption b,.team-card-caption span{display:block}.team-card-caption b{font-size:17px}.team-card-caption span{color:#dce4ff;font-size:13px;margin-top:4px;line-height:1.2}.team-hint{text-align:center;color:#52648a;font-size:14px;margin:34px 0 0}.team-hint span{color:var(--team-blue);font-size:20px;margin-left:5px}.team-footer{display:flex;justify-content:space-between;padding:20px 6%;border-top:1px solid #dce4f7;color:#52648a;font-size:14px}.team-footer a{color:var(--team-blue);text-decoration:none;font-weight:700}.team-footer b{color:var(--team-yellow);padding:0 6px}
@media(max-width:900px){.team-main{padding-top:56px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:700px;margin:auto}.team-card{width:100%;height:360px}.team-card:first-child{grid-column:1}.team-card:nth-child(4){grid-column:1 / 2;margin-left:50%}.team-card:nth-child(5){grid-column:2 / 3;margin-left:50%}}
@media(max-width:600px){.team-header{position:relative}.team-header .logo{margin:auto}.team-main{padding:42px 18px}.team-intro{margin-bottom:34px}.team-intro h1{font-size:43px}.team-lede{font-size:16px}.team-grid{grid-template-columns:repeat(2,1fr);gap:12px;min-height:310px}.team-card{height:310px}.team-card:nth-child(4),.team-card:nth-child(5){grid-column:auto;margin-left:0}.team-card.is-selected{width:calc(100vw - 36px);height:250px;transform:translate(-50%,-50%)}.team-card.is-selected:hover{transform:translate(-50%,-50%)}.team-card-back{padding:22px}.team-card-back .card-index{top:18px;left:22px}.team-card-back b{font-size:22px}.team-card-back>span:not(.card-index){font-size:13px}.team-card-back p{font-size:14px;margin:12px 0}.team-card-back strong{font-size:12px}.team-card-caption{padding:10px;margin:0 7px 7px}.team-card-caption b{font-size:14px}.team-card-caption span{font-size:11px}.portrait span{font-size:58px}.team-footer{padding:18px;gap:14px;align-items:flex-start;flex-direction:column}}
/* Keep the expanded profile contained on browsers that do not resolve min(). */
.team-card.is-selected{width:620px;max-width:72vw}
@media(max-width:600px){.team-card.is-selected{width:calc(100vw - 36px);max-width:none}}
@media(prefers-reduced-motion:reduce){.team-card-inner,.team-card{transition:none}}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center}.portrait-transparent img{object-fit:contain;width:92%;height:92%}
.team-card:first-child{order:3}.team-card:nth-child(2){order:4}.team-card:nth-child(3){order:2}.team-card:nth-child(4){order:1}.team-card:nth-child(5){order:5}
.team-card:first-child:not(.is-selected):not(.is-displaced){transform:translateY(-6px) scale(1.02)}.team-card:first-child:not(.is-selected):not(.is-displaced) .team-card-face{border-color:var(--team-yellow);box-shadow:0 18px 36px rgba(6,23,168,.2)}
@media(max-width:900px){.team-card:first-child{order:2}.team-card:nth-child(2){order:1}.team-card:nth-child(3){order:3}.team-card:nth-child(4){order:4}.team-card:nth-child(5){order:5}}
.team-card:nth-child(4),.team-card:nth-child(5){margin-left:0}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.team-card{grid-column:auto!important;margin-left:0!important}}
@media(max-width:600px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.team-card{perspective:none}.team-card-inner{transform-style:flat;transition:none}.team-card.is-flipped .team-card-inner{transform:none}.team-card-face{backface-visibility:visible}.team-card-back{display:none;transform:none}.team-card.is-selected{position:relative;left:auto;top:auto;width:var(--card-width);height:var(--card-height);transform:none;z-index:10}.team-card.is-selected .team-card-inner{position:fixed;left:var(--card-left);top:var(--card-top);width:var(--card-width);height:var(--card-height);transform:none;z-index:10;transition:left .45s cubic-bezier(.2,.75,.25,1),top .45s cubic-bezier(.2,.75,.25,1),width .45s cubic-bezier(.2,.75,.25,1),height .45s cubic-bezier(.2,.75,.25,1)}.team-card.is-selected.is-expanded .team-card-inner{left:calc(50vw - min(170px,36vw));top:calc(50vh - 250px);width:min(340px,72vw);height:500px;transform:none}.team-card.is-selected:hover{transform:none}.team-card.is-selected.is-expanded:hover{transform:none}
@media(max-width:600px){.team-card.is-selected.is-expanded .team-card-inner{left:18px;top:calc(50vh - 215px);width:calc(100vw - 36px);height:430px}}
.team-card:not(.is-selected){transition:none}.team-card:not(.is-selected):hover,.team-card.is-displaced{transform:none}
.team-card:hover,.team-card:first-child:not(.is-selected):not(.is-displaced){transform:none}
@keyframes team-card-fade-in{from{opacity:0}to{opacity:1}}.team-card:not(.is-selected){animation:team-card-fade-in .35s ease both}.team-card:nth-child(1){animation-delay:.04s}.team-card:nth-child(2){animation-delay:.08s}.team-card:nth-child(3){animation-delay:.12s}.team-card:nth-child(4){animation-delay:.16s}.team-card:nth-child(5){animation-delay:.2s}@media(prefers-reduced-motion:reduce){.team-card:not(.is-selected){animation:none}}
.team-stage:has(.team-card.is-selected)::before{content:"";position:fixed;inset:0;background:rgba(255,255,255,.2);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:5;pointer-events:none}
.team-card.is-selected.is-expanded .team-card-front{width:50%;border-radius:20px 0 0 20px}.team-card.is-selected.is-expanded .team-card-back{display:flex;left:50%;width:50%;right:auto;border-radius:0 20px 20px 0;transform:none;padding:28px 30px;z-index:2;animation:team-profile-panel-in .45s ease both}.team-card.is-selected.is-expanded .team-card-back b{font-size:24px}.team-card.is-selected.is-expanded .team-card-back p{font-size:14px;margin:14px 0}.team-card.is-selected.is-expanded .team-card-back strong{font-size:12px}
@media(max-width:600px){.team-card.is-selected.is-expanded .team-card-front{top:0;left:0;width:100%;height:62%;border-radius:20px 20px 0 0}.team-card.is-selected.is-expanded .team-card-back{top:62%;left:0;width:100%;height:38%;padding:20px 16px;border-radius:0 0 20px 20px;animation:team-profile-panel-up .45s ease both}.team-card.is-selected.is-expanded .team-card-back b{font-size:18px}.team-card.is-selected.is-expanded .team-card-back>span:not(.card-index){font-size:12px}.team-card.is-selected.is-expanded .team-card-back p{font-size:12px;line-height:1.35;margin:10px 0}.team-card.is-selected.is-expanded .team-card-back strong{font-size:10px}}
@keyframes team-profile-panel-in{from{clip-path:inset(0 100% 0 0);opacity:.4}to{clip-path:inset(0);opacity:1}}@media(prefers-reduced-motion:reduce){.team-card.is-selected.is-expanded .team-card-back{animation:none}}
@keyframes team-profile-panel-up{from{clip-path:inset(100% 0 0 0);opacity:.4}to{clip-path:inset(0);opacity:1}}
.team-card.is-selected.is-expanded .team-card-back>*{animation:team-profile-text-in .25s ease .45s both}@keyframes team-profile-text-in{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.team-card.is-selected.is-expanded .team-card-back>*{animation:none}}
.team-card.is-selected.is-expanded .team-card-caption{opacity:0;transition:opacity .55s ease .45s;pointer-events:none}
@media(max-width:600px){.team-card:first-child{order:1}.team-card:nth-child(3){order:2}.team-card:nth-child(4){order:3}.team-card:nth-child(2){order:4}.team-card:nth-child(5){order:5}}
@media(min-width:901px){.team-card:not(.is-selected){transition:transform .25s cubic-bezier(.2,.75,.25,1)}.team-card:not(.is-selected):hover{transform:translateY(-8px) scale(1.03)}}
@media(min-width:901px){.team-card:first-child:not(.is-selected):hover{transform:translateY(-8px) scale(1.03)}}
@media(min-width:901px){.team-card:first-child:not(.is-selected){width:clamp(190px,19vw,246px);height:415px}}
.menu-toggle{display:none;border:0;background:transparent;padding:6px;width:36px;height:36px;flex:0 0 36px;cursor:pointer}.menu-toggle span{display:block;width:22px;height:2px;margin:4px auto;background:var(--team-blue);transition:transform .2s ease,opacity .2s ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-6px) rotate(-45deg)}
@media(max-width:600px){.team-header{padding:10px 16px;gap:8px;justify-content:space-between}.team-header .logo{margin:0;min-width:0;gap:7px}.team-header .logo img{width:42px;height:38px}.team-header .logo-name{font-size:12px;line-height:1.05;white-space:nowrap}.team-header .logo-name small{font-size:8px;line-height:1.1;margin-top:2px}.team-header .menu-toggle{display:block}.team-header nav.is-open{display:flex;position:absolute;top:58px;left:16px;right:16px;z-index:4;flex-direction:column;align-items:stretch;gap:0;padding:8px;background:#fff;border:1px solid #dce4f7;box-shadow:0 12px 24px rgba(6,23,168,.12)}.team-header nav.is-open a{padding:10px 12px;border:0}}
.team-header{position:fixed!important;top:0;left:0}.team-page .team-main{padding-top:88px}@media(max-width:600px){.team-page .team-main{padding-top:68px}}

.portfolio-section{max-width:1240px;margin:118px auto 24px;padding:72px 0 8px;border-top:1px solid #dce4f7}.portfolio-heading{max-width:700px;margin:0 auto 30px;text-align:center}.portfolio-heading h2{margin:15px 0 12px;font-size:clamp(40px,5vw,64px);line-height:.98;letter-spacing:-.04em}.portfolio-heading h2 em{font-style:normal;text-decoration:underline;text-decoration-color:var(--team-yellow);text-decoration-thickness:6px;text-underline-offset:7px}.portfolio-heading>p:last-child{max-width:540px;margin:auto;color:#52648a;font-size:17px;line-height:1.5}.portfolio-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 auto 28px}.portfolio-filter{border:1px solid #e1e866;border-radius:999px;padding:10px 17px;background:#fff;color:var(--team-blue);font:700 14px 'League Spartan',sans-serif;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.portfolio-filter:hover,.portfolio-filter:focus-visible{transform:translateY(-2px)}.portfolio-filter.is-active{background:var(--team-blue);color:#fff;border-color:var(--team-blue)}.portfolio-filter:focus-visible{outline:3px solid var(--team-yellow);outline-offset:3px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portfolio-card{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,1.35fr);min-height:250px;overflow:hidden;border-radius:16px;background:#f1f1f1;box-shadow:0 8px 22px rgba(6,23,168,.07);animation:portfolio-card-in .35s ease both}.portfolio-card:nth-child(even){grid-template-columns:minmax(0,1.35fr) minmax(190px,1fr)}.portfolio-card:nth-child(even) .portfolio-card-image{order:2}.portfolio-card-image{width:100%;height:100%;min-height:250px;object-fit:cover;background:#dfe5f4}.portfolio-card-body{display:flex;flex-direction:column;align-items:flex-start;padding:25px 24px}.portfolio-card h3{margin:0 0 12px;color:var(--team-blue);font-size:22px;line-height:1.05}.portfolio-size{margin:0 0 12px;color:#52648a;font-size:15px}.portfolio-badge{display:inline-block;margin-bottom:14px;padding:6px 10px;border-radius:999px;background:var(--team-yellow);color:var(--team-blue);font-size:12px;font-weight:800}.portfolio-card-description{margin:auto 0 0;color:#52648a;font-size:15px;line-height:1.4}@keyframes portfolio-card-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(max-width:900px){.portfolio-section{margin-top:90px}.portfolio-grid{grid-template-columns:1fr}.portfolio-card:nth-child(even){grid-template-columns:minmax(190px,1fr) minmax(0,1.35fr)}.portfolio-card:nth-child(even) .portfolio-card-image{order:0}}@media(max-width:600px){.portfolio-section{margin-top:72px;padding-top:52px}.portfolio-heading h2{font-size:42px}.portfolio-filters{justify-content:flex-start;gap:8px}.portfolio-filter{padding:9px 13px;font-size:13px}.portfolio-card,.portfolio-card:nth-child(even){display:block}.portfolio-card-image{display:block;height:190px;min-height:190px}.portfolio-card-body{min-height:220px;padding:20px}.portfolio-card h3{font-size:20px}.portfolio-card-description{margin-top:8px}}@media(prefers-reduced-motion:reduce){.portfolio-filter,.portfolio-card{animation:none;transition:none}}

