/* Immersive video hero and end-to-end research service presentation. */
.hero-film:not(.film-ready) .scene-overlay,.hero-film.film-fallback .scene-overlay{opacity:0}
.video-site .header{position:fixed;inset:0 0 auto;height:90px;background:transparent;backdrop-filter:none;border-color:#ffffff20;color:#ffffff;transition:background .25s,color .25s}
.video-site .header.scrolled{background:#fffffff5;backdrop-filter:blur(18px);color:var(--ink);border-color:var(--border)}
.video-site .header:not(.scrolled) .nav-cta{background:#ffffff;color:#101113}
.video-site .header:not(.scrolled) .brand-sub{color:#dfe5eb}
.video-site .hero-film{position:relative;display:block;width:100%;max-width:none;height:100svh;min-height:740px;margin:0;padding:0;overflow:hidden;isolation:isolate;background:#101113;color:#ffffff}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-4;filter:grayscale(1) brightness(.73)}
.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#07090ced 0%,#080b0fcc 25%,#10111360 60%,#10111320),linear-gradient(0deg,#08090bf5 0%,#10111320 36%,#10111340 70%,#0b0d10ac 100%);z-index:-2}
.film-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#f5f7fa04 1px,transparent 1px),linear-gradient(90deg,#f5f7fa04 1px,transparent 1px);background-size:100px 100px;z-index:-1}
.film-topline{position:absolute;left:56px;right:56px;top:124px;display:flex;justify-content:space-between;align-items:center;color:#dfe5eb;font:8px/1.5 var(--body);letter-spacing:1.7px}
.film-topline>span:first-child{display:flex;align-items:center;gap:8px}.film-topline i,.inspector-top i{display:inline-block;height:5px;width:5px;border-radius:50%;background:#a9d9ff;box-shadow:0 0 12px #a9d9ff60}
.hero-film .hero-copy{position:absolute;left:0;right:0;top:50%;transform:translateY(-51%);padding:0;pointer-events:none}
.hero-film .hero-copy>*>*{pointer-events:auto}.hero-film .hero-copy>p{pointer-events:auto}
.hero-film .eyebrow{font-size:10px;color:#dfe5eb;letter-spacing:1.8px;max-width:620px}
.hero-film h1{font-size:clamp(60px,5.8vw,90px);line-height:1.08;font-weight:400;letter-spacing:-4.8px;max-width:900px;margin:26px 0 25px;pointer-events:none!important}
.hero-film h1 span{color:#bce2ff;pointer-events:none}
.hero-film .hero-description{color:#dfe5eb;max-width:460px;font-size:15px;line-height:1.9}
.hero-film .hero-actions{margin-top:29px;gap:28px;pointer-events:none}
.hero-film .text-link{color:#ffffff;font-size:12px}.hero-film .text-link:hover{color:#bce2ff}.hero-film .play-icon{border-color:#dfe5eb55;color:#d8edff;background:#ffffff08}
.hero-film .button-accent{background:#a9d9ff;color:#101113;padding:17px 24px;gap:43px}.hero-film .button-accent:hover{background:#cbe8ff}
.hero-role-line{display:flex;align-items:center;gap:10px;color:#bdc6cf;margin-top:30px;font-size:9px;letter-spacing:.1px}.hero-role-line i{color:#68727d;font-style:normal}
.scene-overlay{position:absolute;left:0;top:0;z-index:-3;pointer-events:none;transition:opacity .25s}.scene-overlay svg{width:100%;height:100%;overflow:visible}.annotation-shapes{stroke:#a9d9ff;stroke-width:1.5}.annotation-shapes .label-bg{fill:#a9d9ff;stroke:none}.annotation-shapes text{fill:#101113;stroke:none;font:11px monospace;letter-spacing:.7px}.annotation-shapes circle{fill:#a9d9ff}.hero-film.labels-hidden .scene-overlay{opacity:0}
.scene-inspector{position:absolute;right:56px;bottom:215px;width:270px;padding:20px 21px 16px;border:1px solid #a9d9ff36;border-radius:7px;background:#101113cc;backdrop-filter:blur(20px);color:#ffffff;box-shadow:0 12px 40px #0002}
.inspector-top{display:flex;align-items:center;justify-content:space-between;color:#a9d9ff;font-size:7px;letter-spacing:1.1px}.inspector-top>span:first-child{display:flex;gap:7px;align-items:center}.inspector-top i{height:4px;width:4px}
.scene-inspector h2{font-size:21px;line-height:1.25;letter-spacing:-.7px;margin:18px 0 12px;max-width:220px}.scene-inspector p{font-size:11px;line-height:1.8;color:#bdc6cf}.inspector-tags{display:flex;gap:5px;flex-wrap:wrap;margin:17px 0}.inspector-tags>span{font-size:7px;padding:3px 6px;background:#a9d9ff10;border:1px solid #a9d9ff33;border-radius:3px;color:#cbe8ff}.inspect-action{display:flex;justify-content:space-between;align-items:center;width:100%;border-top:1px solid #dfe5eb20;padding:12px 0 0;text-align:left;font-size:9px;color:#f5f7fa}.inspect-action:hover{color:#a9d9ff}.inspect-action>span{font-size:16px}
.film-controls{position:absolute;left:0;right:0;bottom:30px}.film-playback{display:flex;align-items:center;gap:20px}.film-playback>button{color:#dfe5eb;display:flex;align-items:center;gap:7px;font-size:15px;white-space:nowrap;padding:10px 0}.film-playback>button>span{font-size:9px}.film-playback #motion-toggle{height:auto;width:auto;border:0;border-radius:0;letter-spacing:1px}.scroll-link{display:grid;place-items:center;width:34px;height:34px;border:1px solid #dfe5eb3b;border-radius:50%;font-size:15px;color:#dfe5eb;margin-left:3px}
.video-site .solutions-grid{grid-template-columns:repeat(3,1fr)}.video-site .solution{padding:27px 28px 20px}.video-site .solution:nth-child(4){border-left:0}.video-site .solution:nth-child(n+4){border-top:1px solid var(--border)}.video-site .solution h3{min-height:auto;font-size:21px;margin:20px 0 15px}.video-site .solution p{font-size:13px}.video-site .tags{min-height:28px}.video-site .tags>span{font-size:9px}.video-site .solution-link{font-size:11px}.video-site .platform-intro{max-width:360px}.role-row{width:100%;text-align:left;transition:background .2s;padding:18px 0}.role-row:hover{background:#e1f1ff}.role-copy{display:block;flex:1;min-width:0}.role-copy strong{display:block;font-size:14px;font-weight:500;letter-spacing:-.3px;line-height:1.4}.role-copy small{display:block;font-size:9px;color:#68727d;margin-top:4px;line-height:1.6}.video-site .expertise-board{transform:none}.video-site .talent-section{gap:80px}
@media(min-width:1600px){.hero-film .hero-copy{top:49%}.hero-film h1{font-size:100px;letter-spacing:-5.5px}.scene-inspector{right:max(56px,calc((100vw - 1320px)/2));bottom:230px}.film-topline{left:max(56px,calc((100vw - 1320px)/2));right:max(56px,calc((100vw - 1320px)/2))}}
@media(max-width:1200px){.hero-film h1{font-size:68px;max-width:720px;letter-spacing:-3.5px}.hero-film .hero-copy{top:47%}.scene-inspector{width:240px;right:35px;bottom:205px;padding:17px}.scene-inspector h2{font-size:18px}.scene-inspector p{font-size:10px}.hero-film .hero-description{max-width:410px;font-size:13px}.film-topline{left:35px;right:35px;top:117px}.hero-role-line{font-size:8px}.film-playback{gap:13px}.video-site .solution{padding:24px}.video-site .solution h3{font-size:19px}.video-site .solution p{font-size:12px}.video-site .talent-section{gap:45px}}
@media(max-width:950px){.video-site .header{height:80px}.hero-film h1{font-size:60px;letter-spacing:-3px;max-width:660px}.hero-film .hero-copy{top:43%}.scene-inspector{bottom:195px;width:245px;padding:12px 16px}.scene-inspector h2{font-size:17px;margin:10px 0 7px}.scene-inspector p{font-size:9px;max-width:235px}.inspector-tags{margin:10px 0}.inspect-action{font-size:8px;padding-top:8px}.hero-film .hero-actions{margin-top:22px}.hero-role-line{margin-top:20px}.hero-film .hero-description{max-width:390px}.film-playback>button>span{display:none}.film-playback #motion-toggle{font-size:14px}.video-site .solutions-grid{grid-template-columns:repeat(2,1fr)}.video-site .solution:nth-child(n){border-left:1px solid var(--border);border-top:1px solid var(--border)}.video-site .solution:nth-child(2n+1){border-left:0}.video-site .solution:nth-child(-n+2){border-top:0}.role-copy strong{font-size:12px}.role-copy small{font-size:8px}.video-site .talent-section{gap:30px}}
@media(max-width:650px){.video-site .header{height:76px}.video-site .header:not(.scrolled) .menu-toggle{border-color:#dfe5eb44}.video-site .header:not(.scrolled) .menu-toggle span{background:#dfe5eb}.video-site .header:not(.scrolled) nav{background:#101113f5;backdrop-filter:blur(18px);border-color:#dfe5eb22}.video-site .hero-film{height:100svh;min-height:790px;max-width:none}.hero-video{object-position:58% center}.film-shade{background:linear-gradient(90deg,#080a0de8,#10111380 75%),linear-gradient(0deg,#08090b 0%,#10111330 45%,#10111399 100%)}.film-topline{left:20px;right:20px;top:98px;font-size:6px;letter-spacing:1.2px}.film-topline>span:last-child{display:none}.hero-film .hero-copy{top:180px;transform:none;left:0;right:0;width:calc(100% - 40px)}.hero-film .eyebrow{font-size:7px;letter-spacing:1.2px}.hero-film h1{font-size:clamp(39px,9.7vw,59px);letter-spacing:-2.2px;line-height:1.1;margin:24px 0 24px;max-width:none}.hero-film .hero-description{font-size:13px;line-height:1.85;max-width:340px}.hero-film .hero-actions{gap:18px;margin-top:24px}.hero-film .button-accent{padding:15px 18px;gap:21px;font-size:12px}.hero-film .text-link{font-size:10px;gap:8px}.hero-role-line{font-size:8px;flex-wrap:wrap;gap:5px 8px;line-height:1.8;max-width:330px;margin-top:22px}.scene-inspector{display:none}.film-controls{bottom:27px}.film-playback{border-top:1px solid #dfe5eb1a;justify-content:flex-start;gap:24px;height:46px}.film-playback>button>span{display:inline;font-size:8px}.film-playback>button{font-size:13px}.film-playback #motion-toggle{font-size:11px}.scroll-link{margin-left:auto;height:26px;width:26px;font-size:13px}.video-site .solutions-grid{grid-template-columns:1fr}.video-site .solution:nth-child(n){border-left:0;border-top:1px solid var(--border);padding:24px}.video-site .solution:first-child{border-top:0}.video-site .solution h3{font-size:21px}.video-site .solution p{font-size:13px}.video-site .talent-section{gap:32px}.role-copy strong{font-size:12px}.role-copy small{font-size:8px}.role-row{padding:18px 0}.video-site .talent-copy h2{font-size:38px}}
@media(max-width:360px){.hero-film .hero-copy{top:155px}.hero-film h1{font-size:35px;letter-spacing:-1.9px}.hero-film .eyebrow{font-size:6px;letter-spacing:1px}.hero-film .hero-description{font-size:12px}.hero-film .hero-actions{gap:12px}.hero-film .button-accent{padding:14px 14px;gap:18px}.hero-film .text-link{font-size:9px}.film-controls{bottom:20px}.hero-role-line{font-size:7px}}
@media(min-width:651px) and (max-height:800px){.video-site .hero-film{min-height:740px}.hero-film .hero-copy{top:45%}.hero-film h1{font-size:62px;margin:19px 0}.hero-role-line{margin-top:19px}.scene-inspector{bottom:205px}}
