:root{color:#0f172a;--blue:#2563eb;--navy:#0f172a;--muted:#64748b;--line:#e2e8f0;--card:#fff;--nav-height:79px;background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.nav{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#ffffffe6;justify-content:space-between;align-items:center;padding:18px clamp(20px,5vw,72px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;font-weight:800;display:flex}.brand img{object-fit:contain;flex-shrink:0;width:auto;max-width:none;height:42px}.nav nav{color:#334155;gap:24px;font-weight:650;display:flex}.nav nav a{border-radius:999px;padding:7px 0;position:relative}.nav nav a:after{content:"";background:linear-gradient(90deg, transparent, var(--blue), transparent);opacity:0;border-radius:999px;height:2px;transition:opacity .2s,transform .2s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(.2)}.nav nav a:hover{color:var(--blue);text-shadow:0 10px 26px #2563eb2e}.nav nav a:hover:after{opacity:1;transform:scaleX(1)}.navControls{flex-direction:row-reverse;align-items:center;gap:22px;display:flex}.languageSelect{color:#334155;align-items:center;gap:8px;font-size:.82rem;font-weight:800;display:inline-flex}.languageSelect span{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.languageSelect select{border:1px solid var(--line);color:var(--navy);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:8px 28px 8px 12px}.languageSelect select:focus{outline-offset:2px;outline:2px solid #2563eb47}.menuBtn{color:var(--navy);display:none}.section{scroll-margin-top:calc(var(--nav-height) + 8px);padding:80px clamp(20px,5vw,72px)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--blue);font-size:.78rem;font-weight:800}.section h2{letter-spacing:-.06em;margin:12px 0 20px;font-size:clamp(2rem,3.6vw,3.4rem);line-height:.95}.actions{flex-wrap:wrap;gap:14px;margin:30px 0;display:flex}.primary,.secondary{--sheen-opacity:0;--sheen-x:-160%;cursor:pointer;isolation:isolate;will-change:transform;border-radius:999px;align-items:center;gap:8px;padding:14px 20px;font-weight:800;display:inline-flex;position:relative;overflow:hidden;transform:translate(0,0)}.primary:after,.secondary:after{content:"";pointer-events:none;width:36%;opacity:var(--sheen-opacity);transform:rotate(18deg) translateX(var(--sheen-x));background:linear-gradient(90deg,#0000,#ffffff8c,#0000);position:absolute;top:-120%;bottom:-120%;left:-45%}.primary svg,.secondary svg{flex-shrink:0}.primary{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:0;box-shadow:0 14px 34px #2563eb38,inset 0 1px #ffffff2e}.primary:hover{background:linear-gradient(135deg,#2f6ff4,#1d4ed8);box-shadow:0 20px 44px #2563eb52,inset 0 1px #ffffff47}.secondary{border:1px solid var(--line);background:#fff;box-shadow:0 10px 26px #0f172a0d,inset 0 1px #ffffffb3}.secondary:hover{color:var(--blue);border-color:#2563eb57;box-shadow:0 18px 40px #0f172a1f,inset 0 0 0 1px #2563eb0f}.menuBtn,.rolodexControl,.rolodexTabs button{isolation:isolate;position:relative;overflow:hidden}.primary:focus-visible,.secondary:focus-visible,.menuBtn:focus-visible,.rolodexControl:focus-visible,.rolodexTabs button:focus-visible,.nav nav a:focus-visible{outline-offset:3px;outline:2px solid #2563eb66}.readMore{margin-top:4px}.sectionHead{max-width:820px;margin-bottom:34px}.grid{gap:18px;display:grid}.cards{grid-template-columns:repeat(4,1fr)}.card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:0 16px 40px #0f172a0d}.card svg{color:var(--blue);width:30px;height:30px}.card h3{margin:18px 0 8px}.card p{color:var(--muted);line-height:1.65}.dark{color:#fff;background:#0f172a;grid-template-columns:.9fr 1.1fr;gap:36px;display:grid}.dark .eyebrow,.dark h2{color:#fff}footer{text-align:center;color:var(--muted);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;padding:30px;display:flex}.footerLinks{gap:16px;font-weight:700;display:inline-flex}.footerLinks a:hover{color:var(--blue)}@media (width<=980px){.dark{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.nav{gap:8px;padding:14px 16px}.brand{flex:auto;min-width:0}.brand img{width:min(42vw,190px);max-width:100%;height:auto}.menuBtn{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex;box-shadow:0 10px 24px #0f172a14}.nav nav{border:1px solid var(--line);background:#fff;border-radius:20px;flex-direction:column;padding:20px;display:none;position:absolute;top:calc(100% + 8px);left:16px;right:16px}.nav nav.open{display:flex}.navControls{flex-direction:row;flex:none;gap:8px}}@media (width<=680px){.cards{grid-template-columns:1fr}.section{padding:56px 20px}.brand span{display:none}}.aboutPage{background:#f8fafc}.aboutHero{background:radial-gradient(circle at 100% 0,#dbeafe,#0000 30%),linear-gradient(135deg,#fff,#f8fafc);grid-template-columns:1.15fr .85fr;align-items:center;gap:46px;min-height:70vh;display:grid}.aboutHero h1{letter-spacing:-.06em;margin:12px 0 22px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98}.aboutHero p,.aboutLead,.aboutCopy p,.aboutCommitment p{color:var(--muted);font-size:1.08rem;line-height:1.75}.aboutHeroPanel{color:#fff;border-radius:28px;min-height:360px;padding:clamp(28px,5vw,52px);position:relative;overflow:hidden;box-shadow:0 28px 70px #0f172a2e}.aboutHeroPanel:after{content:"";background:linear-gradient(135deg,#0f172adb,#0f172a6b);position:absolute;inset:0}.aboutHeroPanel video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.aboutHeroPanelText{z-index:1;flex-direction:column;justify-content:flex-end;min-height:260px;display:flex;position:relative}.aboutHeroPanel strong{letter-spacing:-.06em;font-size:clamp(4rem,10vw,8rem);line-height:.9;display:block}.aboutHeroPanel span{color:#dbeafe;margin-top:18px;font-size:1.1rem;font-weight:800;display:block}.aboutSplit{grid-template-columns:.9fr 1.1fr;gap:42px;display:grid}.aboutCopy{gap:18px;display:grid}.aboutCopy p,.aboutLead,.aboutCommitment p{margin:0}.aboutServices .card{min-height:172px}.aboutServices .card h3{margin-bottom:0}.aboutLead{max-width:920px;margin-top:28px}.aboutTrust .aboutCopy p{color:#cbd5e1}.aboutCommitment h2{margin-bottom:0}.aboutCommitment strong{color:var(--blue);margin-top:26px;font-size:1.15rem;display:inline-block}@media (width<=980px){.aboutHero,.aboutSplit{grid-template-columns:1fr}}.privacyPage{background:radial-gradient(circle at 100% 0,#dbeafe,#0000 30%),linear-gradient(135deg,#fff,#f8fafc)}.privacyPolicy{max-width:980px;margin:0 auto}.privacyPolicy h1{letter-spacing:-.06em;margin:12px 0 34px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98}.privacyContent{border:1px solid var(--line);background:#fff;border-radius:28px;padding:clamp(24px,5vw,46px);box-shadow:0 20px 60px #0f172a12}.privacyContent h2{letter-spacing:0;margin:34px 0 12px;font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.2}.privacyContent h2:first-child{margin-top:0}.privacyContent p,.privacyContent li{color:var(--muted);font-size:1.04rem;line-height:1.75}.privacyContent ul{gap:10px;margin:0;padding-left:22px;display:grid}.privacyContent strong{color:var(--navy)}.projectsPage{background:#f8fafc}.projectsHero{color:#fff;background:linear-gradient(#0f172abd,#0f172a80),url(/images/project%20bg.jpg) 50%/cover;flex-direction:column;justify-content:center;min-height:48vh;display:flex}.projectsHero h1{letter-spacing:-.06em;max-width:900px;margin:12px 0 22px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98}.projectsHero p:not(.eyebrow){color:#dbeafe;max-width:720px;font-size:1.12rem;line-height:1.75}.projectsListSection{padding-top:64px}.gamesSection{background:#eef2ff}.projectListGrid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.projectListGrid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.projectListCard{border:1px solid var(--line);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 16px 40px #0f172a0d}.projectListCard img{object-fit:contain;background:#f1f5f9;width:100%;height:210px;padding:14px}.projectListCard div{padding:22px}.projectListCard h3{margin:0 0 10px}.projectListCard p{color:var(--muted);margin:0;line-height:1.65}@media (width<=980px){.projectListGrid,.projectListGrid.compact{grid-template-columns:repeat(2,1fr)}}@media (width<=680px){.projectListGrid,.projectListGrid.compact{grid-template-columns:1fr}}.hero{isolation:isolate;background:#f8fafc;grid-template-columns:1.08fr .92fr;align-items:center;gap:50px;min-height:calc(100vh - 80px);display:grid;position:relative;overflow:hidden}.heroBackground{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.heroBackgroundMobile{display:none}.heroFacet,.heroArrowRail{transform-box:fill-box;transform-origin:50%;will-change:transform}.heroFacet{animation:9s ease-in-out infinite alternate hero-facet-shift}.heroArrowRail{opacity:.2}.heroArrowRailTop{animation:11s ease-in-out infinite alternate hero-rail-top;transform:translate(-80px,72px)scale(.72)}.heroArrowRailBottom{animation:13s ease-in-out infinite alternate hero-rail-bottom;transform:translate(-90px,690px)scale(1.05)}.heroSignal{fill:none;stroke:#0cf;stroke-width:3px;stroke-dasharray:22 18;opacity:.42;animation:8s linear infinite hero-signal-flow}.heroText,.heroCard{z-index:1;position:relative}@keyframes hero-facet-shift{0%{transform:translate(-34px,-8px)}to{transform:translate(42px,12px)}}@keyframes hero-rail-top{0%{transform:translate(-140px,72px)scale(.72)}to{transform:translate(30px,72px)scale(.72)}}@keyframes hero-rail-bottom{0%{transform:translate(-30px,690px)scale(1.05)}to{transform:translate(-190px,690px)scale(1.05)}}@keyframes hero-signal-flow{to{stroke-dashoffset:-320px}}.hero h1{letter-spacing:-.06em;margin:12px 0 20px;font-size:clamp(2.3rem,5vw,5.3rem);line-height:.95}.hero p,.intro p,.contact p{color:var(--muted);font-size:1.12rem;line-height:1.75}.metrics{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;display:grid}.metrics div{border:1px solid var(--line);background:#fff;border-radius:20px;padding:18px}.metrics strong{display:block}.metrics span{color:var(--muted);font-size:.9rem}.heroCard{position:relative}.heroCard img{object-fit:cover;border-radius:32px;width:100%;height:540px;box-shadow:0 30px 80px #0f172a29}.glass{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffd1;border-radius:20px;padding:18px;font-weight:800;position:absolute;bottom:24px;left:24px;right:24px}.intro{grid-template-columns:.9fr 1.1fr;gap:40px;display:grid}.industryGrid{flex-wrap:wrap;align-content:center;gap:12px;display:flex}.industryGrid span{background:#ffffff1a;border:1px solid #ffffff24;border-radius:999px;padding:14px 18px}.projectGrid{grid-template-columns:repeat(4,1fr);align-items:start;gap:18px;display:grid}.project{border:1px solid var(--line);will-change:transform;background:#fff;border-radius:28px;transition:transform .28s,box-shadow .28s,border-color .28s;overflow:hidden}.project:hover{border-color:#2563eb47;transform:translateY(-8px);box-shadow:0 24px 70px #0f172a29}.project img{object-fit:cover;background:#f1f5f9;width:100%;height:160px;transition:height .32s,object-fit .32s,padding .32s}.project:hover img{object-fit:contain;height:320px;padding:14px}.project div{padding:20px}.project span{color:var(--blue);text-transform:uppercase;font-size:.8rem;font-weight:800}.project p{color:var(--muted);line-height:1.65}.projectRolodexHead{margin-bottom:34px}.projectRolodexHead .sectionHead{margin-bottom:0}.rolodexControl,.rolodexTabs button{border:1px solid var(--line);color:var(--navy);cursor:pointer;background:#fff}.rolodexControl{z-index:4;border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;transition:color .2s,border-color .2s,box-shadow .2s;display:inline-flex;position:absolute;top:calc(clamp(460px,50vw,560px)/2);transform:translateY(-50%);box-shadow:0 12px 30px #0f172a24}.rolodexControlPrev{left:clamp(8px,2vw,22px)}.rolodexControlNext{right:clamp(8px,2vw,22px)}.rolodexControl:hover{color:var(--blue);border-color:#2563eb57;box-shadow:0 12px 28px #0f172a1a}.projectRolodex{max-width:1200px;margin:0 auto;position:relative}.rolodexStage{perspective:1400px;height:clamp(460px,50vw,560px);transform-style:preserve-3d;touch-action:pan-y;position:relative;overflow:hidden}.rolodexCard{transform-origin:50% 55%;backface-visibility:hidden;flex-direction:column;width:clamp(300px,48vw,620px);height:clamp(420px,48vw,520px);min-height:auto;margin-left:calc(clamp(300px,48vw,620px)/-2);display:flex;position:absolute;top:0;left:50%;box-shadow:0 24px 80px #0f172a2e}.rolodexCard:hover{border-color:#2563eb47;box-shadow:0 30px 90px #0f172a38}.rolodexCard img,.rolodexCard:hover img{object-fit:contain;height:clamp(235px,28vw,330px);min-height:clamp(235px,28vw,330px);padding:0}.rolodexCard div{padding:clamp(22px,3.4vw,34px)}.rolodexCard h3{margin:12px 0 10px;font-size:clamp(1.35rem,2.5vw,2.3rem);line-height:1.02}.rolodexCard p{margin-bottom:0;font-size:1rem}.rolodexTabs{gap:9px;margin-top:28px;padding-left:2px;display:flex}.rolodexTabs button{border-radius:999px;width:32px;height:8px;padding:0;transition:background .2s,border-color .2s,width .2s}.rolodexTabs button.active{background:var(--blue);border-color:var(--blue);width:54px}.process{background:#f1f5f9;grid-template-columns:.8fr 1.2fr;gap:40px;display:grid}.process ol{gap:14px;margin:0;padding:0;list-style:none;display:grid}.process li{border:1px solid var(--line);background:#fff;border-radius:22px;padding:20px;font-weight:800}.process li span{color:var(--blue);margin-right:18px}.contact{grid-template-columns:.85fr 1.15fr;gap:46px;display:grid}.contactLine{align-items:center;gap:10px;margin-top:20px;font-weight:800;display:flex}form{border:1px solid var(--line);background:#fff;border-radius:28px;gap:14px;padding:24px;display:grid;box-shadow:0 20px 60px #0f172a12}.contact form .primary{justify-self:end;padding:10px 18px;font-size:.92rem}input,textarea{border:1px solid var(--line);width:100%;font:inherit;border-radius:16px;padding:14px 16px}textarea{resize:vertical;min-height:150px}.contact form .primary:disabled{cursor:wait;opacity:.65}.submissionPopupBackdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a94;place-items:center;padding:20px;animation:.2s ease-out popupBackdropIn;display:grid;position:fixed;inset:0}.submissionPopup{border:1px solid var(--line);text-align:center;background:#fff;border-radius:24px;width:min(420px,100%);padding:38px 34px 32px;animation:.24s ease-out popupIn;position:relative;box-shadow:0 28px 80px #0f172a4d}.submissionPopup p{color:var(--navy);margin:18px 0 0;font-size:1.05rem;font-weight:700;line-height:1.55}.submissionPopupIcon{width:64px;height:64px;color:var(--blue);background:#2563eb1a;border-radius:999px;place-items:center;margin:0 auto;display:grid}.submissionPopup--success .submissionPopupIcon{color:#15803d;background:#dcfce7}.submissionPopup--error .submissionPopupIcon{color:#b91c1c;background:#fee2e2}.submissionPopupClose{width:36px;height:36px;color:var(--muted);cursor:pointer;background:#f1f5f9;border:0;border-radius:999px;place-items:center;padding:0;display:grid;position:absolute;top:14px;right:14px}.submissionPopupClose:hover,.submissionPopupClose:focus-visible{color:var(--navy);outline:2px solid #2563eb66}.submissionSpinner{border:3px solid #2563eb38;border-top-color:var(--blue);border-radius:999px;width:30px;height:30px;animation:.75s linear infinite submissionSpin}@keyframes popupBackdropIn{0%{opacity:0}}@keyframes popupIn{0%{opacity:0;transform:translateY(12px)scale(.97)}}@keyframes submissionSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.submissionPopupBackdrop,.submissionPopup,.submissionSpinner{animation-duration:.01ms}}@media (width<=980px){.hero,.intro,.process,.contact{grid-template-columns:minmax(0,1fr)}.heroText,.heroCard{min-width:0}.heroArrowRailTop{animation-name:hero-rail-top-tablet}.projectGrid{grid-template-columns:repeat(2,1fr)}.rolodexStage{height:590px}.rolodexControl{top:295px}.rolodexCard{width:min(74vw,520px);height:530px;margin-left:calc(min(74vw,520px)/-2)}.rolodexCard img,.rolodexCard:hover img{height:280px;min-height:280px}.heroCard img{height:360px}}@keyframes hero-rail-top-tablet{0%{transform:translate(420px,150px)scale(.72)}to{transform:translate(550px,150px)scale(.72)}}@media (width<=680px){.hero h1{overflow-wrap:break-word}.heroBackgroundDesktop{display:none}.heroBackgroundMobile{display:block}.mobileHeroRail{opacity:.2}.mobileHeroSignal{fill:none;stroke:#0cf;stroke-width:2px;stroke-dasharray:14 12;opacity:.44;animation:8s linear infinite hero-signal-flow}.mobileHeroFacet{opacity:.24}.projectGrid,.metrics{grid-template-columns:1fr}.rolodexStage{height:560px}.rolodexControl{width:40px;height:40px;top:280px}.rolodexControlPrev{left:6px}.rolodexControlNext{right:6px}.rolodexCard{width:min(82vw,390px);height:500px;margin-left:calc(min(82vw,390px)/-2)}.rolodexCard img,.rolodexCard:hover img{height:230px;min-height:230px}.rolodexCard div{padding:24px}}@media (prefers-reduced-motion:reduce){.heroFacet,.heroArrowRail,.heroSignal,.mobileHeroRail,.mobileHeroSignal,.mobileHeroFacet{animation:none}}
