:root{
  --black:#0b0b0b;
  --dark:#121212;
  --white:#f7f7f4;
  --paper:#efefe9;
  --grey:#888883;
  --line:rgba(20,20,20,.18);
  --line-dark:rgba(255,255,255,.18);
  --accent:#d6ff37;
  --pad:clamp(20px,4.7vw,76px);
  --max:1540px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:#111;font-family:"DM Sans",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
button{font:inherit}
::selection{background:var(--accent);color:#050505}

.site-header{position:fixed;z-index:1000;top:0;left:0;width:100%;height:84px;padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#fff;transition:background .35s,color .35s,border .35s}
.site-header.scrolled{background:rgba(247,247,244,.94);color:#111;border-bottom:1px solid rgba(0,0,0,.08);backdrop-filter:blur(10px)}
.brand{font-size:25px;font-weight:600;letter-spacing:-.05em;justify-self:start}
.brand-dot{color:var(--accent)}
.desktop-nav{display:flex;gap:30px;font-size:12px;text-transform:uppercase;letter-spacing:.07em}
.desktop-nav a,.header-contact{position:relative}
.desktop-nav a:after,.header-contact:after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1px;background:currentColor;transition:.3s}
.desktop-nav a:hover:after,.header-contact:hover:after{width:100%}
.header-contact{justify-self:end;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.menu-btn{display:none;background:none;border:0;width:38px;height:38px;padding:9px;justify-self:end}
.menu-btn span{display:block;height:1px;background:currentColor;margin:6px 0;transition:.3s}
.mobile-menu{display:none}

.hero{height:100svh;min-height:720px;position:relative;overflow:hidden;color:#fff;background:#111}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(12%) contrast(1.05);transform:scale(1.02)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15) 0%,rgba(0,0,0,.05) 34%,rgba(0,0,0,.74) 100%)}
.hero-kicker{position:absolute;left:var(--pad);top:120px;font-size:11px;letter-spacing:.12em;font-weight:600}
.hero-content{position:absolute;left:0;bottom:0;width:100%;padding:0 var(--pad) 54px}
.hero-title{font-size:clamp(66px,7.7vw,145px);line-height:.82;letter-spacing:-.065em;font-weight:500;margin:0;max-width:1500px;text-transform:uppercase}
.hero-title span{display:block}
.hero-title .outline{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.94)}
.hero-bottom{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.42)}
.hero-bottom p{margin:0;max-width:510px;font-size:15px;line-height:1.55}
.hero-index{position:absolute;right:var(--pad);top:120px;font-size:10px;letter-spacing:.1em}
.text-link{display:inline-flex;align-items:center;gap:16px;padding-bottom:5px;border-bottom:1px solid currentColor;font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:600}
.text-link span{font-size:16px;transition:transform .25s}.text-link:hover span{transform:translate(4px,4px)}
.text-link.light{color:#fff}

.section-shell{max-width:var(--max);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.section-light{background:var(--white);color:#111}
.section-dark{background:var(--black);color:var(--white)}
.section-accent{background:var(--accent);color:#080808}
.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:600;text-transform:uppercase}
.display-title{font-size:clamp(52px,6.3vw,112px);line-height:.91;letter-spacing:-.055em;font-weight:500;margin:0;text-transform:uppercase}

.intro{padding:150px 0 155px}
.intro-grid{display:grid;grid-template-columns:.42fr 1.58fr;gap:60px}
.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:72px;max-width:950px;margin-left:auto}
.intro-copy p{font-size:19px;line-height:1.48;margin:0}
.intro-copy p:last-child{color:#676763}

.capabilities{position:relative;padding:20px 0 145px}
.section-heading-row{display:grid;grid-template-columns:.42fr 1.58fr;gap:60px;align-items:start;margin-bottom:78px}
.section-heading-row h2{font-size:clamp(44px,5.4vw,96px);line-height:.92;letter-spacing:-.05em;font-weight:500;margin:0;text-transform:uppercase}
.business-list{position:relative;border-bottom:1px solid var(--line);z-index:2}
.business-row{display:grid;grid-template-columns:90px 1fr 48px;gap:32px;align-items:center;border-top:1px solid var(--line);padding:39px 0;cursor:default;transition:padding .25s,opacity .25s}
.business-row:hover{padding-left:12px}
.business-number{font-size:10px;color:#6c6c67;letter-spacing:.08em}
.business-row h3{font-size:clamp(30px,4vw,62px);line-height:.95;letter-spacing:-.045em;font-weight:500;margin:0 0 11px;text-transform:uppercase}
.business-row p{margin:0;color:#74746f;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.business-arrow{font-size:24px;justify-self:end;transition:.25s}.business-row:hover .business-arrow{transform:translate(4px,-4px)}
.hover-image{position:absolute;z-index:5;width:320px;height:210px;pointer-events:none;background-size:cover;background-position:center;opacity:0;transform:translate(-50%,-50%) scale(.96);transition:opacity .2s,transform .25s;mix-blend-mode:multiply}
.hover-image.visible{opacity:1;transform:translate(-50%,-50%) scale(1)}

.image-break{height:min(72vw,930px);position:relative;overflow:hidden;color:#fff}
.image-break img{height:100%;object-fit:cover;filter:brightness(.69) saturate(.75);transition:transform 1.8s ease}
.image-break:hover img{transform:scale(1.02)}
.image-break-copy{position:absolute;left:var(--pad);bottom:var(--pad);display:flex;flex-direction:column;gap:14px}
.image-break-copy span{font-size:10px;letter-spacing:.14em}
.image-break-copy strong{font-size:clamp(39px,5vw,84px);line-height:.94;letter-spacing:-.05em;font-weight:500}

.clubs{padding:150px 0}
.clubs-head{display:grid;grid-template-columns:.42fr 1.58fr;gap:60px}
.clubs-head h2{font-size:clamp(50px,6.1vw,108px);line-height:.91;letter-spacing:-.055em;font-weight:500;margin:0;text-transform:uppercase}
.muted{color:#676762}
.club-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;margin-top:110px;padding-top:38px;border-top:1px solid var(--line-dark)}
.club-copy p{font-size:21px;line-height:1.43;max-width:430px;margin:0 0 42px;color:#d0d0c9}
.club-domains>div{display:grid;grid-template-columns:55px 1fr 1fr;gap:20px;align-items:center;border-top:1px solid var(--line-dark);padding:22px 0}.club-domains>div:first-child{border-top:0;padding-top:0}
.club-domains span{font-size:9px;color:#777}
.club-domains strong{font-size:17px;font-weight:500;letter-spacing:-.01em}
.club-domains small{font-size:12px;color:#81817c;justify-self:end;text-align:right}

.intelligence{padding:20px 0 150px}
.intelligence-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:end}
.intelligence-copy .eyebrow{display:block;margin-bottom:26px}
.intelligence-copy>p{font-size:17px;line-height:1.55;color:#a7a7a1;max-width:510px;margin:38px 0}
.pillars{display:flex;flex-wrap:wrap;gap:8px}.pillars span{border:1px solid var(--line-dark);padding:10px 12px;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.dashboard-wrap{background:#131313;border:1px solid #333;padding:22px;box-shadow:0 40px 100px rgba(0,0,0,.35)}
.dashboard-top,.dashboard-foot{display:flex;align-items:center;justify-content:space-between;gap:20px}
.dashboard-top{padding-bottom:20px}.dashboard-top>div:first-child{display:flex;gap:12px;align-items:baseline}.dashboard-top strong{font-size:11px}.dashboard-top span,.dashboard-foot{font-size:8px;color:#777;letter-spacing:.09em}
.live-dot{font-size:8px;color:#94948f;display:flex;align-items:center;gap:7px}.live-dot i{display:block;width:6px;height:6px;background:var(--accent);border-radius:50%}
.dashboard-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:10px}.metric{border:1px solid #292929;background:#0e0e0e;padding:17px;min-height:130px}.metric>span{font-size:8px;color:#85857f;letter-spacing:.09em}.metric strong{display:block;font-size:30px;font-weight:400;letter-spacing:-.04em;margin-top:16px}.metric small{font-size:9px;color:var(--accent)}
.metric-large{grid-row:span 2;min-height:270px}.metric-large strong{font-size:48px}.metric-large svg{width:100%;height:100px;margin-top:15px}.metric-large polyline{fill:none;stroke:#e6e6df;stroke-width:2;vector-effect:non-scaling-stroke}
.metric-wide{grid-column:1/-1;min-height:unset}.metric-wide p{font-size:13px;line-height:1.45;color:#bababa;margin:14px 0 0;max-width:700px}.metric-wide b{color:#fff;font-weight:500}
.bar{display:grid;grid-template-columns:90px 1fr 30px;align-items:center;gap:10px;margin-top:14px}.bar label,.bar em{font-size:8px;color:#8a8a85;font-style:normal}.bar i{height:5px;background:linear-gradient(90deg,#deded8 var(--w),#292929 var(--w));display:block}.bar em{text-align:right;color:#dcdcd7}
.dashboard-foot{padding-top:16px}

.talent{display:grid;grid-template-columns:1.05fr .95fr;min-height:850px}
.talent-media{overflow:hidden;min-height:750px}.talent-media img{height:100%;object-fit:cover;filter:grayscale(100%) contrast(1.05)}
.talent-copy{padding:120px var(--pad);display:flex;flex-direction:column;justify-content:center}
.talent-copy .eyebrow{margin-bottom:28px}.talent-copy>p{font-size:18px;line-height:1.55;max-width:560px;margin:45px 0 54px;color:#666}
.talent-values{border-bottom:1px solid var(--line)}.talent-values div{display:grid;grid-template-columns:60px 1fr;border-top:1px solid var(--line);padding:16px 0}.talent-values span{font-size:9px;color:#888}.talent-values strong{font-size:14px;font-weight:500}

.growth{padding:150px 0}
.growth-title{display:grid;grid-template-columns:.42fr 1.58fr;gap:60px;margin-bottom:80px}.growth-title h2{font-size:clamp(50px,6.1vw,108px);line-height:.91;letter-spacing:-.055em;font-weight:500;margin:0;text-transform:uppercase}
.growth-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:6vw;align-items:stretch}.growth-photo{overflow:hidden;min-height:680px}.growth-photo img{height:100%;object-fit:cover;filter:saturate(.75)}
.growth-services{align-self:end}.growth-services>div{border-top:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:45px 1fr;column-gap:25px}.growth-services>div:last-child{border-bottom:1px solid var(--line)}.growth-services span{font-size:9px;color:#888}.growth-services h3{font-size:25px;letter-spacing:-.03em;font-weight:500;margin:0}.growth-services p{grid-column:2;margin:8px 0 0;color:#777;max-width:390px;font-size:13px;line-height:1.5}

.projects{display:grid;grid-template-columns:1.05fr .95fr;min-height:900px}.projects-visual{overflow:hidden}.projects-visual img{height:100%;object-fit:cover;filter:grayscale(100%) brightness(.7)}.projects-copy{padding:120px var(--pad);display:flex;flex-direction:column;justify-content:center}.projects-copy .eyebrow{margin-bottom:28px}.projects-copy>p{font-size:18px;line-height:1.55;max-width:560px;margin:45px 0 50px;color:#9a9a95}.project-process{border-bottom:1px solid var(--line-dark)}.project-process div{display:grid;grid-template-columns:55px 1fr;padding:15px 0;border-top:1px solid var(--line-dark)}.project-process span{font-size:9px;color:#666}.project-process strong{font-size:13px;font-weight:500}

.method{padding:150px 0}.method-top{display:grid;grid-template-columns:.42fr 1.58fr;gap:60px}.method-top h2{font-size:clamp(50px,6.1vw,108px);line-height:.91;letter-spacing:-.055em;font-weight:500;margin:0;text-transform:uppercase}.method-line{display:grid;grid-template-columns:repeat(4,1fr);margin-top:120px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.method-line>div{padding:25px 25px 35px 0;border-right:1px solid var(--line);min-height:180px}.method-line>div:not(:first-child){padding-left:25px}.method-line>div:last-child{border-right:0}.method-line span{font-size:9px;color:#777}.method-line strong{display:block;margin-top:55px;font-size:15px;font-weight:500}.method-line p{font-size:12px;color:#777;margin:7px 0 0}

.ecosystem{padding:125px 0 145px;overflow:hidden}.ecosystem-title{font-size:clamp(39px,5.3vw,90px);line-height:.92;letter-spacing:-.055em;font-weight:500;margin:28px 0 100px;max-width:1200px}.ecosystem-ring{position:relative;width:min(760px,75vw);aspect-ratio:1/1;margin:0 auto;border:1px solid rgba(0,0,0,.36);border-radius:50%}.ecosystem-ring:before,.ecosystem-ring:after{content:"";position:absolute;inset:13%;border:1px solid rgba(0,0,0,.2);border-radius:50%}.ecosystem-ring:after{inset:31%}.eco-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:clamp(42px,6vw,88px);font-weight:600;letter-spacing:-.07em;text-align:center;z-index:2}.eco-center span{display:block;font-size:8px;line-height:1.4;letter-spacing:.12em;font-weight:600;margin-top:8px}.eco-item{position:absolute;font-size:10px;letter-spacing:.11em;font-weight:600}.e1{left:50%;top:-7px;transform:translateX(-50%)}.e2{right:7%;top:18%}.e3{right:-2%;top:62%}.e4{left:50%;bottom:-7px;transform:translateX(-50%)}.e5{left:-1%;top:62%}.e6{left:6%;top:18%}

.contact{height:min(85vw,880px);min-height:720px;position:relative;overflow:hidden}.contact-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(100%) contrast(1.12)}.contact-overlay{position:absolute;inset:0;background:rgba(0,0,0,.58)}.contact-inner{height:100%;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center}.contact-inner .eyebrow{margin-bottom:30px}.contact h2{font-size:clamp(60px,8vw,146px);line-height:.82;letter-spacing:-.065em;font-weight:500;margin:0;text-transform:uppercase}.contact-link{font-size:14px;text-transform:uppercase;letter-spacing:.08em;margin-top:55px;border-bottom:1px solid #fff;padding-bottom:7px;align-self:flex-start}

.footer{background:#080808;color:#efefe9;padding:75px var(--pad) 28px}.footer-top{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid var(--line-dark);padding-bottom:45px}.footer-brand{font-size:clamp(65px,9vw,150px);font-weight:600;letter-spacing:0;line-height:.76;display:flex;align-items:flex-end;gap:16px}.footer-brand>strong{font:inherit;letter-spacing:-.045em;line-height:.76}.footer-brand>strong span{color:var(--accent)}.footer-brand>small{font-size:11px;letter-spacing:.18em;font-weight:600;line-height:1;margin-bottom:5px}.footer-brand span{color:var(--accent)}.footer-top p{font-size:12px;color:#858580}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:50px;padding:54px 0 70px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid span{font-size:8px;color:#6f6f6b;letter-spacing:.12em;margin-bottom:9px}.footer-grid a,.footer-grid p{font-size:12px;margin:0;color:#bdbdb6}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line-dark);padding-top:18px;display:flex;justify-content:space-between;font-size:9px;color:#5f5f5b}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.reveal-lines span{opacity:0;transform:translateY(50px);transition:opacity .75s,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal-lines.visible span{opacity:1;transform:none}.reveal-lines span:nth-child(2){transition-delay:.08s}.reveal-lines span:nth-child(3){transition-delay:.16s}.reveal-lines span:nth-child(4){transition-delay:.24s}
.cursor-dot{position:fixed;z-index:3000;width:8px;height:8px;border-radius:50%;background:var(--accent);pointer-events:none;left:-20px;top:-20px;mix-blend-mode:difference;transition:width .15s,height .15s}

@media (max-width:1050px){
  .desktop-nav,.header-contact{display:none}.site-header{grid-template-columns:1fr auto}.menu-btn{display:block;color:inherit}.mobile-menu{display:flex;position:fixed;z-index:990;inset:0;background:#0b0b0b;color:#fff;transform:translateY(-100%);transition:transform .5s cubic-bezier(.7,0,.2,1);padding:120px var(--pad) 50px}.mobile-menu.open{transform:none}.mobile-menu nav{display:flex;flex-direction:column;gap:13px}.mobile-menu a{font-size:clamp(40px,8vw,80px);line-height:1;letter-spacing:-.05em;text-transform:uppercase}.intro-grid,.section-heading-row,.clubs-head,.growth-title,.method-top{grid-template-columns:1fr;gap:34px}.intro-copy{margin-left:0}.club-grid,.intelligence-grid,.growth-grid{grid-template-columns:1fr;gap:65px}.clubs-head h2,.growth-title h2,.method-top h2{max-width:900px}.dashboard-wrap{max-width:800px}.talent,.projects{grid-template-columns:1fr}.talent-media,.projects-visual{height:65vw;min-height:520px}.talent-copy,.projects-copy{padding-top:100px;padding-bottom:100px}.method-line{grid-template-columns:1fr 1fr}.method-line>div:nth-child(2){border-right:0}.method-line>div:nth-child(3),.method-line>div:nth-child(4){border-top:1px solid var(--line)}
}

@media (max-width:720px){
  :root{--pad:20px}.site-header{height:68px}.hero{min-height:640px}.hero-kicker,.hero-index{top:92px}.hero-title{font-size:clamp(47px,14vw,78px);line-height:.86}.hero-title .outline{-webkit-text-stroke:1px rgba(255,255,255,.95)}.hero-content{padding-bottom:28px}.hero-bottom{grid-template-columns:1fr;gap:24px;margin-top:25px}.hero-bottom p{font-size:13px;max-width:400px}.intro,.clubs,.growth,.method{padding:90px 0}.intro-copy{grid-template-columns:1fr;gap:22px;margin-top:42px}.intro-copy p{font-size:16px}.capabilities{padding-bottom:90px}.section-heading-row{margin-bottom:45px}.business-row{grid-template-columns:38px 1fr 25px;gap:10px;padding:28px 0}.business-row h3{font-size:34px}.business-row p{font-size:9px;line-height:1.5}.hover-image{display:none}.image-break{height:105vw;min-height:480px}.image-break-copy strong{font-size:40px}.club-grid{margin-top:65px}.club-copy p{font-size:18px}.club-domains>div{grid-template-columns:35px 1fr;gap:10px}.club-domains small{grid-column:2;justify-self:start;text-align:left;margin-top:-5px}.intelligence{padding-bottom:95px}.intelligence-grid{gap:50px}.dashboard-wrap{padding:12px;overflow:hidden}.dashboard-grid{grid-template-columns:1fr}.metric-large{grid-row:auto}.metric-wide{grid-column:auto}.metric-large strong{font-size:37px}.talent-media,.projects-visual{height:110vw;min-height:480px}.talent-copy,.projects-copy{padding:90px var(--pad)}.talent-copy>p,.projects-copy>p{font-size:16px;margin:32px 0 40px}.growth-grid{gap:45px}.growth-photo{min-height:500px}.growth-services h3{font-size:21px}.method-line{grid-template-columns:1fr}.method-line>div,.method-line>div:not(:first-child){padding:22px 0;border-right:0;border-top:1px solid var(--line);min-height:125px}.method-line>div:first-child{border-top:0}.method-line strong{margin-top:30px}.ecosystem{padding:90px 0 105px}.ecosystem-title{margin-bottom:75px}.ecosystem-ring{width:85vw}.eco-item{font-size:8px}.contact{height:120vw;min-height:670px}.contact h2{font-size:clamp(50px,15vw,76px)}.footer{padding-top:60px}.footer-top{align-items:flex-start;flex-direction:column;gap:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 20px}.footer-bottom{flex-direction:column;gap:8px}.cursor-dot{display:none}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal-lines span{opacity:1;transform:none;transition:none}.hero-media,.image-break img{transition:none}}

/* Team section shared with INV SPORT */
.team{padding:130px 0 145px}.team-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:stretch}.team-portrait{min-height:620px;border:1px solid var(--line-dark);display:flex;align-items:center;justify-content:center;position:relative;background:#111}.team-monogram{font-size:clamp(100px,16vw,240px);letter-spacing:-.09em;font-weight:500;color:#efefe9}.team-portrait>span{position:absolute;left:16px;bottom:16px;font-size:8px;letter-spacing:.12em;color:#777}.team-copy{padding-top:15px}.team-copy h2{font-size:clamp(68px,8vw,130px);line-height:.83;letter-spacing:-.065em;font-weight:500;margin:32px 0 35px}.team-copy>p{font-size:18px;line-height:1.55;color:#b9b9b2;max-width:650px}.team-facts{margin-top:60px;border-top:1px solid var(--line-dark)}.team-facts>div{display:grid;grid-template-columns:135px 1fr;gap:25px;border-bottom:1px solid var(--line-dark);padding:17px 0}.team-facts span{font-size:8px;letter-spacing:.1em;color:#777}.team-facts strong{font-size:10px;letter-spacing:.04em;font-weight:500}.team-facts a:hover{color:var(--accent)}
@media(max-width:1050px){.team-grid{grid-template-columns:1fr}.team-portrait{min-height:540px}}
@media(max-width:720px){.team{padding:90px 0}.team-portrait{min-height:430px}.team-copy h2{font-size:clamp(58px,16vw,88px)}.team-facts>div{grid-template-columns:1fr;gap:5px}}

/* INV TEAM ROSTER */
.team-roster-head{display:grid;grid-template-columns:.35fr 1.25fr .6fr;gap:45px;align-items:start;margin-bottom:70px}.team-roster-head h2{font-size:clamp(52px,6.8vw,112px);line-height:.88;letter-spacing:-.06em;font-weight:500;margin:0}.team-roster-head p{font-size:13px;line-height:1.6;color:#9a9a94;max-width:390px;margin:4px 0 0}.team-roster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.team-card{border-top:1px solid var(--line-dark);padding-top:16px}.team-card-portrait{aspect-ratio:3/4;background:#111;border:1px solid var(--line-dark);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.team-card-portrait strong{font-size:clamp(62px,8vw,120px);font-weight:500;letter-spacing:-.075em;color:#efefe9}.team-card-portrait span{position:absolute;left:12px;bottom:12px;font-size:7px;letter-spacing:.12em;color:#6f6f6b}
.team-card-portrait img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.98) contrast(1.02) brightness(.98);}
.team-card-portrait .team-portrait-ricardo{object-fit:cover;transform:none;background:#000;}
.team-card-copy{padding:17px 0 25px}.team-card-copy>span{font-size:7px;letter-spacing:.11em;color:#777}.team-card-copy h3{font-size:clamp(25px,2.3vw,38px);letter-spacing:-.045em;line-height:.95;font-weight:500;margin:9px 0 11px}.team-card-copy p{font-size:11px;line-height:1.55;color:#989892;max-width:360px;margin:0}.team-card-lead{grid-column:span 1}.footer-brand small{font-size:10px;letter-spacing:.16em;margin-left:10px;vertical-align:middle}.brand .players-brand-word{font-size:8px;letter-spacing:.16em;font-weight:600;margin-left:5px}
@media(max-width:1050px){.team-roster-head{grid-template-columns:1fr;gap:24px}.team-roster-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.team-roster-grid{grid-template-columns:1fr}.team-roster-head{margin-bottom:45px}.team-card-portrait{aspect-ratio:3/4}}

/* Footer brand lockup refinement */
.footer-brand{gap:18px}
.footer-brand>strong{letter-spacing:-.025em}
.footer-brand>small{margin-left:0!important;margin-bottom:7px;vertical-align:baseline;font-size:11px;letter-spacing:.18em}

/* Language selector */
.header-actions{justify-self:end;display:flex;align-items:center;gap:18px}
.header-actions .header-contact{justify-self:auto}
.lang-switch{display:flex;align-items:center;gap:5px;font-size:10px;letter-spacing:.11em;font-weight:600}
.lang-option{border:0;background:transparent;color:inherit;padding:6px 2px;cursor:pointer;font:inherit;font-size:10px;letter-spacing:.11em;opacity:.48;transition:opacity .2s}
.lang-option.active,.lang-option:hover{opacity:1}
.lang-switch>span{opacity:.35}
.mobile-language{display:none}
@media(max-width:1050px){
  .header-actions{display:none}
  .mobile-language{display:flex;margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2);width:max-content;font-size:13px;gap:8px}
  .mobile-language .lang-option{font-size:13px;padding:8px 2px;color:#fff}
}

/* Team contact links */
.team-email{display:inline-flex;margin-top:14px;font-size:9px;line-height:1.2;letter-spacing:.05em;color:#d2d2cc;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:3px;transition:color .25s,border-color .25s}
.team-email:hover{color:var(--accent);border-color:var(--accent)}


/* Fine section rhythm adjustments */
#projects{padding-top:42px;padding-bottom:110px}
#projects + .method{padding-top:105px}
@media(max-width:720px){
  #projects{padding-top:30px;padding-bottom:74px}
  #projects + .method{padding-top:72px}
}


/* V13 precision layout refinements */
/* Align the Technology & Intelligence copy with the first executive dashboard rather than the lower sporting panel. */
#technology-intelligence .intelligence-grid{align-items:start;}
#technology-intelligence .intelligence-copy{padding-top:58px;}

/* Make the stadium statement more compact while preserving its crop and visual treatment. */
.image-break{height:min(58vw,760px);}

/* INV SPORT teaser: align copy with the top edge of the photography. */
#talent .talent-copy{justify-content:flex-start;padding-top:18px;}

/* Section rhythm: slightly more space after INV SPORT; distinctly tighter Projects → How We Work. */
#projects{padding-top:86px;padding-bottom:40px;}
#projects + .method{padding-top:48px;}

@media(max-width:1050px){
  #technology-intelligence .intelligence-copy{padding-top:24px;}
  #talent .talent-copy{padding-top:28px;}
}
@media(max-width:720px){
  .image-break{height:92vw;min-height:430px;}
  #projects{padding-top:58px;padding-bottom:32px;}
  #projects + .method{padding-top:36px;}
  #talent .talent-copy{padding-top:24px;}
}


/* V14 INV SPORT teaser sizing */
#talent{min-height:auto;align-items:start;}
#talent .talent-media{min-height:0;height:min(42vw,620px);}
#talent .talent-media img{width:100%;height:100%;object-fit:cover;}
@media(max-width:1050px){
  #talent .talent-media{height:60vw;min-height:440px;}
}
@media(max-width:720px){
  #talent .talent-media{height:96vw;min-height:420px;}
}


/* V16 INV SPORT teaser: copy left, full player image right */
#talent{grid-template-columns:.95fr 1.05fr;}
#talent .talent-media{background:#111;display:flex;align-items:flex-end;justify-content:center;}
#talent .talent-media img{object-fit:contain;object-position:center bottom;background:#111;}
#talent .talent-copy{padding-left:var(--pad);padding-right:6vw;}
@media(max-width:1050px){
  #talent{grid-template-columns:1fr;}
  #talent .talent-copy{order:1;padding-left:var(--pad);padding-right:var(--pad);}
  #talent .talent-media{order:2;}
}


/* Client Portal entry */
.portal-entry{border:1px solid currentColor;padding:9px 12px;line-height:1;}
.portal-entry:after{display:none!important;}
.portal-entry:hover{background:currentColor;color:var(--black);}
.site-header:not(.scrolled) .portal-entry:hover{color:#111;background:#fff;}
.site-header.scrolled .portal-entry:hover{color:#fff;background:#111;}


/* V18 header fit — balanced in EN and ES */
.desktop-nav{white-space:nowrap;}
.header-actions{white-space:nowrap;}
.portal-entry{white-space:nowrap;}
@media(min-width:1051px) and (max-width:1420px){
  .site-header{padding-left:clamp(24px,3vw,48px);padding-right:clamp(24px,3vw,48px);grid-template-columns:.72fr auto .72fr;}
  .desktop-nav{gap:20px;font-size:10.5px;letter-spacing:.055em;}
  .header-actions{gap:12px;}
  .header-contact{font-size:10px;letter-spacing:.065em;}
  .portal-entry{padding:8px 10px;}
  .lang-switch,.lang-option{font-size:9px;}
}
html[lang="es"] .desktop-nav{gap:22px;font-size:11px;letter-spacing:.052em;}
html[lang="es"] .header-actions{gap:13px;}
html[lang="es"] .header-contact{font-size:10.5px;letter-spacing:.055em;}
html[lang="es"] .portal-entry{padding-left:10px;padding-right:10px;}
@media(min-width:1051px) and (max-width:1320px){
  html[lang="es"] .desktop-nav{gap:16px;font-size:9.5px;}
  html[lang="es"] .header-contact{font-size:9.5px;}
  html[lang="es"] .header-actions{gap:10px;}
}

/* V48 — shared footer layout. */
.footer-grid a,.footer-grid p{line-height:1.55}
.footer-rfef{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-top:22px}
.rfef-circle{position:relative;width:64px;height:64px;overflow:hidden;border-radius:50%;flex:none;background:#fff}
.rfef-circle img{position:absolute;display:block;width:185.759%;height:139.319%;max-width:none;left:-42.879%;top:-19.659%;object-fit:fill}
.footer-rfef p{max-width:190px;font-size:11px;color:#efefe9}


/* Mobile production pass — preserves the V60 desktop design */
@media (max-width:720px){
  html,body{max-width:100%;overflow-x:hidden}
  body{min-width:0}
  .site-header{padding-left:20px;padding-right:14px}
  .brand{font-size:23px}
  .menu-btn{width:44px;height:44px;padding:10px}
  .mobile-menu{padding:104px 20px 34px;overflow-y:auto;overscroll-behavior:contain}
  .mobile-menu nav{width:100%;gap:11px}
  .mobile-menu a{font-size:clamp(34px,10vw,52px);line-height:.96}
  .mobile-language{margin-top:18px}

  .hero{height:100svh;min-height:620px}
  .hero-media{transform:none;object-position:center center}
  .hero-content{padding:0 20px 26px}
  .hero-title{font-size:clamp(44px,13.2vw,70px);line-height:.86;max-width:100%}
  .hero-bottom{margin-top:22px;padding-top:17px}
  .hero-bottom p{font-size:13px;line-height:1.48}
  .text-link{font-size:10px}

  .section-shell{padding-left:20px;padding-right:20px}
  .display-title{font-size:clamp(43px,12.5vw,68px);line-height:.91}
  .section-heading-row h2{font-size:clamp(39px,11.5vw,62px)}
  .eyebrow{font-size:9px}

  .intro,.clubs,.growth,.method{padding:82px 0}
  .intro-grid,.section-heading-row,.clubs-head,.growth-title,.method-top{gap:26px}
  .intro-copy{margin-top:34px;gap:18px}
  .intro-copy p{font-size:15px;line-height:1.52}

  .business-row{grid-template-columns:32px minmax(0,1fr) 22px;gap:9px;padding:25px 0}
  .business-row:hover{padding-left:0}
  .business-row h3{font-size:clamp(29px,9.2vw,42px)}
  .business-row p{font-size:8px;line-height:1.55;overflow-wrap:anywhere}
  .business-arrow{font-size:19px}

  .image-break{height:112vw;min-height:470px}
  .image-break img{transition:none}
  .image-break:hover img{transform:none}
  .image-break-copy{left:20px;right:20px;bottom:22px}
  .image-break-copy strong{font-size:clamp(34px,10vw,47px)}

  .club-grid,.intelligence-grid,.growth-grid{gap:45px}
  .club-grid{margin-top:54px}
  .club-domains>div{padding:18px 0}
  .dashboard-wrap{border-radius:0}
  .dashboard-top{align-items:flex-start}
  .dashboard-top>div:first-child{flex-direction:column;gap:3px}
  .dashboard-grid{gap:8px}
  .metric{min-width:0}

  .talent-media,.projects-visual{height:108vw;min-height:430px}
  .talent-copy,.projects-copy{padding:76px 20px}
  .talent-copy>p,.projects-copy>p{font-size:15px}
  .growth-photo{min-height:430px}

  .contact{height:auto;min-height:650px;padding:88px 0}
  .contact h2{font-size:clamp(45px,14vw,70px)}
  .footer{padding:56px 0 26px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:34px 18px}
  .footer-grid>*{min-width:0}
  .footer-bottom{padding-top:30px}

  a,button{-webkit-tap-highlight-color:transparent}
  .cursor-dot,.hover-image{display:none!important}
}


/* INV Group mobile UX pass — shorter vertical journey */
@media(max-width:720px){
  .hero{height:88svh;min-height:560px}
  .hero-content{padding-bottom:22px}
  .hero-bottom{gap:16px;margin-top:16px;padding-top:14px}

  .intro,.clubs,.growth,.method{padding:64px 0}
  .intro-grid,.section-heading-row,.clubs-head,.growth-title,.method-top{gap:20px}
  .intro-copy{margin-top:26px;gap:15px}
  .intro-copy p{font-size:14px}

  .capabilities{padding:6px 0 64px}
  .section-heading-row{margin-bottom:30px}
  .business-row{padding:20px 0}
  .business-row h3{font-size:clamp(27px,8.4vw,38px)}

  .image-break{height:72vw;min-height:360px}
  .image-break-copy{bottom:20px}
  .image-break-copy strong{font-size:clamp(31px,9.4vw,44px)}

  .club-grid{margin-top:36px;gap:30px;padding-top:24px}
  .club-copy p{font-size:15px;margin-bottom:28px}
  .club-domains>div{padding:14px 0}
  .club-domains strong{font-size:15px}
  .club-domains small{font-size:10px}

  .intelligence{padding:6px 0 68px}
  .intelligence-grid{gap:30px}
  #technology-intelligence .intelligence-copy{padding-top:14px}
  .intelligence-copy>p{font-size:14px;margin:24px 0 28px}
  .pillars{gap:6px}
  .pillars span{padding:8px 9px;font-size:8px}
  .dashboard-wrap{padding:10px}
  .dashboard-grid{grid-template-columns:1fr 1fr;gap:8px}
  .metric{min-height:96px;padding:12px}
  .metric strong{font-size:25px;margin-top:10px}
  .metric-large{grid-column:1/-1;grid-row:auto;min-height:176px}
  .metric-large strong{font-size:38px}
  .metric-large svg{height:58px;margin-top:8px}
  .metric-wide{grid-column:1/-1}
  .metric-wide p{font-size:10.5px;line-height:1.4}
  .bar{grid-template-columns:70px 1fr 22px;gap:6px;margin-top:9px}
  .dashboard-foot{padding-top:10px}

  .projects{min-height:0}
  .projects-visual{height:68vw;min-height:300px}
  .projects-copy{padding:60px 20px}
  .projects-copy>p{font-size:14px;margin:24px 0 30px}
  .project-process div{padding:11px 0}
  .project-process strong{font-size:11px}

  .growth{padding:64px 0}
  .growth-title{margin-bottom:34px}
  .growth-grid{gap:28px}
  .growth-photo{min-height:0;height:72vw}
  .growth-services>div{padding:17px 0;grid-template-columns:32px 1fr;column-gap:12px}
  .growth-services h3{font-size:18px}
  .growth-services p{font-size:11px;margin-top:5px}

  #talent{min-height:0}
  #talent .talent-copy{padding:60px 20px 48px}
  #talent .talent-copy>p{font-size:14px;margin:24px 0 28px}
  #talent .talent-media{height:72vw;min-height:300px}

  #projects{padding:58px 0 64px}
  #projects .section-heading-row{margin-bottom:30px}
  #projects .business-list{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:82%;
    gap:12px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    border-bottom:0;
    padding-bottom:6px;
    touch-action:pan-x pan-y
  }
  #projects .business-list::-webkit-scrollbar{display:none}
  #projects .business-row{
    scroll-snap-align:start;
    scroll-snap-stop:always;
    grid-template-columns:28px minmax(0,1fr) 18px;
    align-content:start;
    min-height:190px;
    padding:18px 14px;
    border:1px solid var(--line);
    background:#f1f1ed
  }
  #projects .business-row h3{font-size:clamp(24px,7.5vw,34px)}
  #projects .business-row p{font-size:8px}

  #projects + .method{padding:58px 0 64px}
  .method-line{grid-template-columns:1fr 1fr;margin-top:38px}
  .method-line>div,
  .method-line>div:not(:first-child){
    min-height:108px;
    padding:17px 12px;
    border-top:1px solid var(--line);
    border-right:0
  }
  .method-line>div:nth-child(-n+2){border-top:0}
  .method-line strong{margin-top:18px;font-size:13px}
  .method-line p{font-size:10px;line-height:1.42}

  .ecosystem{padding:64px 0 76px}
  .ecosystem-title{margin:20px 0 46px}
  .ecosystem-ring{width:72vw}
  .eco-center{font-size:clamp(34px,10vw,52px)}
  .eco-item{font-size:7px}

  .team{padding:64px 0 72px}
  .team-roster-head{margin-bottom:28px;gap:16px}
  .team-roster-head h2{font-size:clamp(42px,12vw,62px)}
  .team-roster-grid{
    display:grid!important;
    grid-template-columns:none!important;
    grid-auto-flow:column;
    grid-auto-columns:78%;
    gap:14px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding-bottom:8px;
    touch-action:pan-x pan-y
  }
  .team-roster-grid::-webkit-scrollbar{display:none}
  .team-card{scroll-snap-align:start;scroll-snap-stop:always;padding-top:10px}
  .team-card-copy{padding:13px 0 18px}
  .team-card-copy h3{font-size:clamp(23px,7vw,31px)}

  .contact{min-height:540px;padding:72px 0}
  .contact h2{font-size:clamp(43px,13vw,66px)}
  .contact-link{margin-top:34px}

  .footer{padding-top:48px}
  .footer-grid{padding:38px 0 48px}
}


/* V61 — restrained section-title lift + focused service presentation */
.eyebrow{font-size:11px}
.section-heading-row h2{font-size:clamp(46px,5.65vw,100px)}
.team-roster-head h2{font-size:clamp(54px,7vw,116px)}
.growth-title h2,.method-top h2,.clubs-head h2{font-size:clamp(52px,6.25vw,112px)}

/* Technology capability labels: vertical stack filling the unused dark column. */
#technology-intelligence .intelligence-copy{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
#technology-intelligence .pillars{
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:repeat(4,minmax(58px,1fr));
  gap:10px;
  width:100%;
  min-height:320px;
  margin-top:8px;
  flex:1;
}
#technology-intelligence .pillars span{
  display:flex;
  align-items:center;
  width:100%;
  padding:15px 16px;
  font-size:10px;
  border-color:#343434;
  background:rgba(255,255,255,.018);
}

/* Management Solutions now promises only work that can be delivered today. */
.project-process-focused div{
  grid-template-columns:58px 1fr;
  padding:25px 0;
  align-items:start;
}
.project-process-focused strong{
  font-size:17px;
  line-height:1.25;
}
.project-process-focused small{
  grid-column:2;
  display:block;
  margin-top:7px;
  color:#74746f;
  font-size:10px;
  line-height:1.45;
  letter-spacing:.02em;
}

/* Fewer, stronger project categories retain the visual weight of the original block. */
#projects .business-row{padding:50px 0}
#projects .business-row h3{font-size:clamp(32px,4.25vw,66px)}

@media(max-width:720px){
  .eyebrow{font-size:10px}
  .section-heading-row h2{font-size:clamp(41px,11.8vw,64px)}
  .team-roster-head h2{font-size:clamp(44px,12.4vw,65px)}
  .growth-title h2,.method-top h2,.clubs-head h2{font-size:clamp(44px,12.2vw,66px)}

  #technology-intelligence .pillars{
    grid-template-rows:none;
    min-height:0;
    gap:7px;
    margin-top:2px;
  }
  #technology-intelligence .pillars span{
    min-height:44px;
    padding:11px 12px;
    font-size:8.5px;
  }

  .project-process-focused div{padding:17px 0}
  .project-process-focused strong{font-size:14px}
  .project-process-focused small{font-size:9px}

  #projects .business-row{padding:18px 14px}
  #projects .business-row h3{font-size:clamp(25px,7.7vw,35px)}
}


/* V64 — mobile information architecture */
.mobile-service-summary{display:none}

.service-detail-page .site-header{
  background:rgba(247,247,244,.96);
  color:#111;
  border-bottom:1px solid rgba(0,0,0,.08);
  backdrop-filter:blur(10px);
}
.service-detail-page #clubs,
.service-detail-page #brand-experiences{padding-top:140px}

@media(max-width:720px){
  .mobile-menu{padding:88px 20px 24px}
  .mobile-menu nav{gap:0}
  .mobile-menu nav>a{
    display:flex;
    align-items:center;
    min-height:49px;
    padding:13px 0;
    border-top:1px solid rgba(255,255,255,.18);
    font-size:clamp(14px,4.15vw,17px);
    line-height:1.15;
    letter-spacing:.035em;
    white-space:nowrap;
    text-transform:uppercase;
  }
  .mobile-menu nav>a:last-of-type{border-bottom:1px solid rgba(255,255,255,.18)}
  .mobile-menu .mobile-language{
    margin-top:14px;
    padding-top:14px;
    border-top:0;
  }

  body.group-home #clubs,
  body.group-home #technology-intelligence,
  body.group-home #management-solutions,
  body.group-home #brand-experiences,
  body.group-home #talent{
    display:none!important;
  }
  body.group-home #services .service-tags{display:none}
  body.group-home #services .mobile-service-summary{
    display:block;
    margin:8px 0 0;
    max-width:270px;
    color:rgba(255,255,255,.74);
    font-size:11px;
    line-height:1.45;
    letter-spacing:0;
    text-transform:none;
  }
  body.group-home #services .business-row{
    grid-template-columns:30px minmax(0,1fr) 22px;
    gap:12px;
    padding:23px 0;
  }
  body.group-home #services .business-row h3{
    font-size:clamp(24px,7.2vw,29px);
    line-height:.96;
    margin-bottom:0;
  }
  body.group-home #services .business-row h3 br{display:none}
  body.group-home #services .business-arrow{font-size:18px}

  .service-detail-page #clubs,
  .service-detail-page #brand-experiences{
    padding-top:118px!important;
  }
  .service-detail-page .footer{margin-top:0}
}
