:root{--bg:#050912;--bg2:#080d18;--panel:#0a101e;--ink:#f3f6ff;--muted:#98a2b9;--subtle:#57647f;--line:rgba(185,203,255,.14);--blue:#2445a1;--bright:#567fff;--glow:#376dff;--white:#fff;--pad:clamp(24px,6vw,110px);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.095;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,.service-card:focus-visible{outline:2px solid #9cbaff;outline-offset:5px}::selection{background:var(--bright);color:white}.skip-link{position:fixed;top:-100px;left:20px;z-index:110;background:white;color:black;padding:10px}.skip-link:focus{top:15px}.page-progress{position:fixed;top:0;left:0;right:0;height:2px;background:transparent;z-index:102}.page-progress span{display:block;width:0%;height:100%;background:linear-gradient(90deg,#243d8d,#90b8ff);box-shadow:0 0 15px #4875ff}.cursor-glow{position:fixed;width:370px;height:370px;margin:-185px 0 0 -185px;left:-400px;top:-400px;border-radius:50%;background:radial-gradient(circle,rgba(53,90,203,.11),transparent 67%);pointer-events:none;z-index:6;mix-blend-mode:screen;transition:opacity .3s}
.site-header{height:91px;padding:0 var(--pad);position:fixed;top:0;left:0;width:100%;z-index:90;display:flex;align-items:center;gap:35px;border-bottom:1px solid rgba(182,207,255,.1);background:linear-gradient(180deg,rgba(4,8,17,.86),rgba(4,8,17,.35));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:height .4s,background .4s}.site-header.scrolled{height:73px;background:rgba(4,8,17,.87);border-bottom-color:rgba(182,207,255,.15)}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{width:151px;height:auto;max-height:62px;object-fit:contain}.header-descriptor{font-size:9px;white-space:nowrap;letter-spacing:.18em;color:#8793b1;margin-right:auto;padding-left:26px;border-left:1px solid var(--line)}.descriptor-dot{font-size:7px;color:#5474b7;margin:0 6px}.desktop-nav{display:flex;align-items:center;gap:36px;white-space:nowrap}.desktop-nav a{font-size:12px;font-weight:500;color:#c5ccdc;transition:color .3s}.desktop-nav a:hover{color:#fff}.header-actions{display:flex;align-items:center;gap:25px}.language-toggle{background:none;border:0;color:#e8edf8;font-size:11px;letter-spacing:.08em;cursor:pointer;white-space:nowrap;padding:10px 0}.language-toggle span{color:#5874ae;margin:0 5px}.nav-cta{border:1px solid rgba(122,151,239,.5);padding:13px 20px;border-radius:999px;font-size:11px;font-weight:600;display:flex;align-items:center;gap:21px;white-space:nowrap;transition:background .3s,border-color .3s,transform .3s}.nav-cta:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-2px)}.nav-cta span:last-child{font-size:16px;font-weight:400}.mobile-toggle{display:none;background:transparent;border:0;width:35px;height:35px;align-items:center;justify-content:center;flex-direction:column;gap:7px;cursor:pointer}.mobile-toggle span{height:1px;width:25px;background:white;display:block;transition:transform .3s}.mobile-menu{display:none}
.experience{height:370vh;min-height:1800px;position:relative}.experience-sticky{position:sticky;top:0;height:100vh;height:100svh;min-height:550px;overflow:hidden;background:radial-gradient(ellipse 63% 50% at 55% 47%,#0c193b 0%,#071027 44%,#040810 100%);isolation:isolate}.experience-grid{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(114,144,206,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(114,144,206,.065) 1px,transparent 1px);background-size:82px 82px;mask-image:linear-gradient(90deg,transparent,black 36%,black 88%,transparent);opacity:.48;transform:perspective(500px) rotateX(7deg) scale(1.14);transform-origin:50% 40%}.atmosphere{position:absolute;border-radius:50%;pointer-events:none;filter:blur(50px);z-index:1}.atmosphere-a{width:70vw;height:70vw;max-width:850px;max-height:850px;right:-20%;top:-40%;background:radial-gradient(circle,rgba(20,52,154,.32),transparent 70%)}.atmosphere-b{width:47vw;height:47vw;max-width:620px;max-height:620px;left:-17%;bottom:-43%;background:radial-gradient(circle,rgba(24,56,132,.2),transparent 70%)}
.eye-photo{position:absolute;inset:-1%;background:url('assets/inevia-eye-master.webp') center 46%/cover no-repeat;z-index:2;opacity:0;transform:scale(1.5);transform-origin:50% 47%;will-change:opacity,transform;filter:saturate(1.2) contrast(1.13)}.eye-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 48%,transparent 7%,rgba(3,8,19,.12) 43%,rgba(3,8,19,.75) 100%),linear-gradient(90deg,rgba(2,7,18,.73),transparent 58%,rgba(2,7,18,.18))}.scene-shade{position:absolute;inset:0;z-index:5;background:linear-gradient(90deg,rgba(4,8,19,.68),rgba(4,8,19,.1) 60%,rgba(4,8,19,.05));pointer-events:none}#networkCanvas{position:absolute;inset:0;z-index:4;width:100%;height:100%;pointer-events:none}.frame-label{position:absolute;z-index:12;left:var(--pad);top:132px;font-size:9px;font-weight:600;letter-spacing:.24em;color:rgba(181,197,227,.62);display:flex;align-items:center;gap:10px}.frame-label span:last-child{color:rgba(181,197,227,.35);margin-left:12px}.frame-blip{width:6px;height:6px;background:var(--bright);border-radius:100%;box-shadow:0 0 14px var(--bright);animation:blink 2s ease-in-out infinite}.frame-coordinate{position:absolute;right:var(--pad);top:135px;z-index:11;color:rgba(181,197,227,.42);font-family:monospace;font-size:10px;letter-spacing:.15em}.scene-text{position:absolute;z-index:15;top:41%;left:var(--pad);width:min(760px,85vw);transform:translate3d(0,-36%,0);transition:none;will-change:opacity,transform;pointer-events:none}.scene-text a{pointer-events:auto}.scene-text-one{opacity:1}.scene-text-two,.scene-text-three{opacity:0}.eyebrow,.kicker{font-size:11px;letter-spacing:.19em;font-weight:600;color:#b0c4ef;text-transform:uppercase}.eyebrow{display:flex;gap:15px;align-items:center;margin:0 0 34px}.eyebrow-rule{width:34px;height:1px;background:#7394e5;display:inline-block}.scene-text h1,.scene-text h2{font-size:clamp(56px,6.4vw,110px);font-weight:550;line-height:1.01;letter-spacing:-.075em;margin:0;max-width:880px;text-shadow:0 6px 28px rgba(0,0,0,.42), 0 0 20px rgba(4,8,19,.18)}.scene-text h1 em,.scene-text h2 em,.expertise-heading h2 em,.approach-header h2 em,.contact-content h2 em{font-weight:350;font-style:normal;color:#8ca9f5}.scene-description{color:#d7ddef;font-weight:360;letter-spacing:.01em;font-size:clamp(15px,1.25vw,19px);max-width:390px;line-height:1.75;margin-top:27px;text-shadow:0 3px 18px rgba(0,0,0,.45)}.scene-text-three{top:43%}.text-link{display:inline-flex;gap:37px;align-items:center;margin-top:21px;border-bottom:1px solid rgba(153,190,255,.8);padding-bottom:10px;font-size:12px;font-weight:600;letter-spacing:.045em}.text-link span:last-child{font-size:21px;font-weight:300}.scene-bottom-bar{position:absolute;bottom:43px;left:var(--pad);right:var(--pad);z-index:15;display:flex;align-items:center;justify-content:space-between}.scroll-prompt{display:flex;align-items:center;gap:16px;font-size:9px;letter-spacing:.2em;color:#c4cede;font-weight:600}.scroll-icon{border:1px solid rgba(166,190,255,.6);border-radius:14px;width:22px;height:34px;display:flex;justify-content:center;padding-top:7px}.scroll-icon span{height:7px;width:2px;border-radius:1px;background:#c2d5ff;animation:scrollCue 1.8s infinite}.scene-timeline{width:min(28vw,300px);height:1px;background:rgba(190,202,231,.3);position:relative;display:flex;justify-content:space-between;align-items:center}.scene-timeline>span{position:absolute;left:0;top:0;height:1px;background:#7293e8;width:0%;box-shadow:0 0 15px #376dff}.scene-timeline i{position:relative;height:5px;width:5px;background:#91a4ce;border-radius:50%;display:block}.chapter-counter{font-size:16px;letter-spacing:.1em;font-weight:400}.chapter-counter span{color:#6f7e9e;font-size:12px;margin-left:8px}
.section-pad{padding-left:var(--pad);padding-right:var(--pad)}.section-topline{padding-top:48px;display:flex;align-items:center;gap:32px;color:#8394b8;font-size:9px;font-weight:700;letter-spacing:.19em;white-space:nowrap}.section-topline span:first-child{color:#c8d4ed}.section-topline .thin-line{height:1px;background:var(--line);flex:1}.reveal{opacity:0;transform:translate3d(0,50px,0);transition:opacity .9s var(--ease),transform 1s var(--ease)}.reveal.visible{opacity:1;transform:translate3d(0,0,0)}
.intro-section{background:#f1f3f7;color:#111b32;position:relative;min-height:850px}.intro-section .section-topline{color:#67748b}.intro-section .section-topline span:first-child{color:#2e477a}.intro-section .thin-line{background:rgba(27,48,87,.18)}.intro-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;padding-top:clamp(90px,10vw,170px);padding-bottom:clamp(80px,8vw,160px)}.intro-left .kicker{color:#4164a9;margin:0 0 25px}.statement{font-size:clamp(55px,6.5vw,111px);font-weight:500;letter-spacing:-.08em;line-height:1.07;margin:0}.stroke-text{-webkit-text-stroke:1.2px #3764af;color:transparent}.accent-period{color:#3766bd}.intro-right{padding-top:clamp(50px,7.5vw,140px)}.plus-mark{font-size:33px;color:#3154a1}.big-body{font-size:clamp(21px,2.0vw,31px);line-height:1.44;letter-spacing:-.035em;font-weight:420;max-width:560px;margin:29px 0}.muted-body{color:#67738a;line-height:1.8;font-size:15px;max-width:490px}.underlined-link{display:inline-flex;align-items:center;gap:55px;margin-top:32px;padding-bottom:12px;border-bottom:1px solid #3e609f;font-size:12px;font-weight:650}.underlined-link span:last-child{font-size:21px}.statement-footer{border-top:1px solid rgba(27,48,87,.15);display:flex;justify-content:space-between;padding:29px 0;color:#758198;font-size:10px;font-weight:700;letter-spacing:.18em}
.expertise-section{padding-bottom:clamp(120px,12vw,210px);background:radial-gradient(ellipse at 80% 40%,rgba(17,37,86,.3),transparent 49%),#060a14}.expertise-heading{padding:120px 0 65px;display:flex;justify-content:space-between;gap:50px;align-items:end}.expertise-heading h2,.approach-header h2{font-size:clamp(54px,6vw,104px);font-weight:520;line-height:1.04;letter-spacing:-.073em;margin:19px 0 0}.expertise-heading>p{max-width:300px;font-size:16px;line-height:1.8;color:#97a5c1;flex:0 0 25%;margin-bottom:8px}.expertise-heading .kicker{color:#7496dd}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.service-card{border:1px solid rgba(130,164,231,.16);background:linear-gradient(145deg,rgba(24,36,69,.48),rgba(7,13,27,.92) 65%);min-height:505px;padding:35px;display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate;transition:border-color .35s,background .35s,box-shadow .35s}.service-card::before{content:"";inset:0;position:absolute;pointer-events:none;z-index:-1;background:radial-gradient(circle at 50% 37%,rgba(46,90,185,.14),transparent 61%);opacity:.4;transition:opacity .5s}.service-card:hover,.service-card:focus-visible{border-color:rgba(99,145,255,.63);box-shadow:inset 0 0 48px rgba(28,53,124,.12)}.service-card:hover::before{opacity:1}.service-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.17em;color:#8195bd;font-weight:600}.service-arrow{border:1px solid rgba(158,181,234,.27);width:31px;height:31px;display:grid;place-items:center;border-radius:100%;font-size:17px;color:#d9e5ff;transition:transform .3s,background .3s}.service-card:hover .service-arrow{transform:rotate(45deg);background:rgba(57,91,180,.35)}.service-art{height:220px;position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center}.art-orbit{position:absolute;border:1px solid rgba(88,128,230,.48);border-radius:50%;width:205px;height:100px;transform:rotate(-35deg)}.orbit-2{transform:rotate(35deg)}.art-core{font-size:32px;font-weight:550;color:#d7e5ff;letter-spacing:.08em;text-shadow:0 0 35px #5085ff}.art-point{position:absolute;background:#6d96ff;width:9px;height:9px;border-radius:50%;box-shadow:0 0 20px #6d96ff}.art-point.p1{left:calc(50% - 87px);top:61px}.art-point.p2{right:calc(50% - 80px);bottom:62px}.service-content{margin-top:auto}.service-category{font-size:10px;letter-spacing:.18em;color:#7796d9;margin:0 0 10px}.service-content h3{font-size:clamp(28px,2.6vw,41px);letter-spacing:-.055em;line-height:1.2;font-weight:500;margin:0 0 14px}.service-content>p:not(.service-category){color:#98a8c7;font-size:14px;line-height:1.75;max-width:440px;margin:0 0 23px}.service-tags{display:flex;gap:7px;flex-wrap:wrap}.service-tags span{border:1px solid rgba(108,147,227,.25);border-radius:3px;padding:6px 10px;font-size:9px;letter-spacing:.13em;color:#a7bbdf}.art-integration svg{position:absolute;width:76%;height:76%;overflow:visible}.art-integration path{fill:none;stroke:#4274e3;stroke-width:1.2;filter:drop-shadow(0 0 6px #4981e4)}.integr-node{width:12px;height:12px;position:absolute;border:2px solid #8aacf5;box-shadow:0 0 24px #567fff;border-radius:100%;z-index:1;background:#0c1c42}.integr-node.n1{left:12.5%;top:47%}.integr-node.n2{left:49%;top:45%}.integr-node.n3{right:11%;top:47%}.integr-node.n4{left:49%;top:24%;width:5px;height:5px}.data-bars{height:125px;display:flex;align-items:center;gap:12px;transform:rotate(-7deg)}.data-bars i{height:var(--bar);width:6px;border-radius:4px;background:linear-gradient(180deg,#79a5ff,rgba(39,77,185,.18));box-shadow:0 0 13px rgba(58,103,255,.45)}.data-bars i:nth-child(1){--bar:24px}.data-bars i:nth-child(2){--bar:62px}.data-bars i:nth-child(3){--bar:108px}.data-bars i:nth-child(4){--bar:78px}.data-bars i:nth-child(5){--bar:126px}.data-bars i:nth-child(6){--bar:82px}.data-bars i:nth-child(7){--bar:115px}.data-bars i:nth-child(8){--bar:47px}.data-bars i:nth-child(9){--bar:90px}.art-data-horizon{position:absolute;left:16%;right:16%;height:1px;background:linear-gradient(90deg,transparent,#4265b4,transparent);top:50%}.delivery-ring{position:absolute;border:1px solid rgba(92,129,216,.57);width:175px;height:175px;border-radius:50%}.delivery-ring.two{width:125px;height:125px;border-style:dashed;animation:rotateRing 35s linear infinite}.delivery-ring.three{width:63px;height:63px;background:radial-gradient(circle,rgba(73,123,245,.32),transparent)}.delivery-dot{width:15px;height:15px;background:#8fafff;box-shadow:0 0 25px #417aff;border-radius:50%;z-index:1}
.approach-section{background:#0d1527;padding-bottom:150px}.approach-header{padding-top:105px}.approach-header .kicker{color:#849dd0}.pathway{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:115px;position:relative}.path-rail{position:absolute;top:66px;left:10%;right:10%;height:1px;background:linear-gradient(90deg,#4f78d7,#91a9d8 42%,#4f78d7);opacity:.47}.path-rail span{position:absolute;top:-2px;left:0;width:5px;height:5px;border-radius:50%;background:#c3d6ff;box-shadow:0 0 18px #6891ff;animation:rail 7s linear infinite}.path-step{position:relative;padding:0 15px;z-index:1}.path-index{color:#7891bd;font-size:11px;letter-spacing:.1em}.path-circle{width:83px;height:83px;border-radius:50%;display:grid;place-items:center;background:#0d182f;border:1px solid #5271ae;font-size:29px;font-weight:300;color:#b4cbf9;margin:27px 0 36px;box-shadow:0 0 30px rgba(37,72,164,.18)}.path-step h3{font-size:28px;font-weight:500;letter-spacing:-.04em;margin:0 0 10px}.path-step p{color:#8f9fb9;max-width:230px;font-size:14px;line-height:1.75}.approach-note{display:flex;gap:50px;align-items:start;border-top:1px solid var(--line);margin-top:125px;padding-top:42px;max-width:740px}.note-cross{font-size:38px;color:#7298ed}.approach-note p{font-size:clamp(19px,2.2vw,29px);line-height:1.55;font-weight:400;letter-spacing:-.025em;margin:0;color:#c9d4e9}
.contact-section{position:relative;background:radial-gradient(ellipse at 70% 55%,#122c73 0%,#0b1a42 37%,#070e24 80%);overflow:hidden}.contact-inner{min-height:760px;position:relative;z-index:2;padding-bottom:130px}.contact-halo{position:absolute;right:-14vw;top:4%;height:850px;width:850px;max-width:75vw;max-height:80vw;display:grid;place-items:center;opacity:.75;pointer-events:none}.contact-halo:before{content:"";position:absolute;width:80%;height:80%;background:radial-gradient(circle,rgba(55,92,192,.26),transparent 68%);filter:blur(22px)}.contact-orbit{position:absolute;width:58%;height:58%;border-radius:50%;border:1px solid rgba(112,161,255,.24);box-shadow:0 0 70px rgba(41,82,186,.13)}.contact-orbit.orbit-b{width:78%;height:78%;border-color:rgba(112,161,255,.13)}.contact-orbit.orbit-c{width:99%;height:99%;border-color:rgba(112,161,255,.08)}.contact-halo img{width:30%;height:auto;opacity:.22;filter:drop-shadow(0 0 40px #6283de)}.contact-content{margin-top:125px;position:relative}.contact-content .kicker{color:#91b3f7}.contact-content h2{font-size:clamp(65px,7.6vw,135px);line-height:1.02;letter-spacing:-.085em;font-weight:500;margin:20px 0 25px}.contact-content h2 em{color:#a6c1ff}.contact-content>p:not(.kicker):not(.email-line){font-size:17px;color:#b9c9e9;max-width:420px;line-height:1.7}.contact-button{display:inline-flex;align-items:center;justify-content:space-between;gap:72px;padding:15px 16px 15px 25px;background:#eff4ff;color:#102858;border-radius:999px;font-size:13px;font-weight:650;margin-top:34px;transition:transform .3s,box-shadow .3s,background .3s}.contact-button:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(0,0,0,.25);background:white}.contact-button-arrow{display:grid;place-items:center;border-radius:50%;background:#21488f;color:#fff;width:37px;height:37px;font-size:21px;font-weight:350}.email-line{color:#8da9db;display:flex;gap:21px;align-items:center;flex-wrap:wrap;margin-top:42px;font-size:10px;letter-spacing:.13em}.email-line a{color:#d9e6ff;text-transform:none;font-size:12px;letter-spacing:.02em;border-bottom:1px solid rgba(224,235,255,.35)}.email-divider{color:#506fa9}
.site-footer{background:#040812;padding:65px var(--pad) 27px}.footer-main{display:flex;align-items:center;gap:65px;padding-bottom:85px}.footer-logo img{width:170px;height:auto}.footer-main p{color:#99a8c6;font-size:13px;line-height:1.65}.footer-top{margin-left:auto;font-size:10px;letter-spacing:.14em;color:#acbfe8;display:flex;align-items:center;gap:23px}.footer-top:first-letter{color:#5f8fed}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;color:#72809d;font-size:9px;letter-spacing:.08em}.footer-bottom>div{display:flex;gap:25px}.footer-bottom a{color:#99add0;transition:color .25s}.footer-bottom a:hover{color:white}
@keyframes blink{50%{opacity:.35;box-shadow:0 0 4px var(--bright)}}@keyframes scrollCue{0%{transform:translateY(0);opacity:1}80%{transform:translateY(10px);opacity:.1}100%{transform:translateY(10px);opacity:0}}@keyframes rotateRing{to{transform:rotate(360deg)}}@keyframes rail{from{left:0}to{left:100%}}
@media(max-width:1350px){.header-descriptor{display:none}.desktop-nav{margin-left:auto}.site-header{gap:30px}.header-actions{gap:17px}.desktop-nav{gap:24px}}@media(max-width:900px){.site-header{height:76px}.site-header.scrolled{height:68px}.brand img{width:135px}.desktop-nav,.nav-cta{display:none}.mobile-toggle{display:flex}.header-actions{margin-left:auto;gap:30px}.mobile-menu{position:fixed;z-index:89;inset:0;background:#081022;display:flex;flex-direction:column;justify-content:center;padding:60px var(--pad);gap:22px;transform:translateY(-110%);transition:transform .5s var(--ease)}.mobile-menu.open{transform:translateY(0)}.mobile-menu a{font-size:clamp(30px,7vw,60px);font-weight:500;letter-spacing:-.05em;border-bottom:1px solid rgba(187,210,255,.12);padding-bottom:15px}.mobile-toggle.open span:first-child{transform:translateY(4px) rotate(45deg)}.mobile-toggle.open span:last-child{transform:translateY(-4px) rotate(-45deg)}.scene-text h1,.scene-text h2{font-size:clamp(55px,9vw,84px)}.intro-layout{grid-template-columns:1fr;gap:10px}.intro-right{padding-top:20px}.intro-section{min-height:auto}.expertise-heading{align-items:start;flex-direction:column}.expertise-heading>p{flex:auto;max-width:500px}.contact-inner{min-height:700px}.contact-halo{right:-32%;top:12%;max-width:100vw;max-height:100vw}.footer-bottom{flex-wrap:wrap}}
@media(max-width:650px){:root{--pad:23px}.experience{height:325vh;min-height:1500px}.experience-sticky{min-height:500px}.frame-label{top:110px;font-size:8px}.frame-coordinate{display:none}.scene-text{top:43%;width:calc(100% - 44px);transform:translate3d(0,-25%,0)}.scene-text-one{top:40%}.scene-text-three{top:38%}.scene-text h1,.scene-text h2{font-size:clamp(52px,12vw,74px)}.scene-description{max-width:290px;font-size:14px;line-height:1.6;margin-top:18px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:24px}.scene-shade{background:linear-gradient(90deg,rgba(4,8,19,.73),rgba(4,8,19,.22)),linear-gradient(0deg,rgba(4,8,19,.45),transparent 50%)}.eye-photo{background-position:center 45%}.scene-bottom-bar{bottom:29px}.scroll-prompt{font-size:8px}.scene-timeline{width:23vw}.section-topline{gap:16px;padding-top:38px;font-size:8px;letter-spacing:.08em}.section-topline>span:last-child{display:none}.intro-layout{padding-top:95px;padding-bottom:105px}.statement{font-size:clamp(56px,13vw,78px)}.intro-right{padding-top:15px}.big-body{font-size:23px}.statement-footer{gap:18px;flex-direction:column;font-size:9px;padding:20px 0}.expertise-heading{padding:95px 0 45px}.expertise-heading h2,.approach-header h2{font-size:clamp(45px,11vw,72px)}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:470px;padding:26px}.service-art{height:195px}.service-content h3{font-size:36px}.approach-section{padding-bottom:100px}.approach-header{padding-top:95px}.pathway{grid-template-columns:1fr 1fr;gap:40px 15px;margin-top:65px}.path-rail{display:none}.path-circle{width:63px;height:63px;margin:20px 0 25px;font-size:23px}.path-step{padding:0}.path-step h3{font-size:22px}.path-step p{font-size:12px}.approach-note{margin-top:90px;gap:22px}.approach-note p{font-size:20px}.contact-inner{min-height:660px;padding-bottom:90px}.contact-content{margin-top:135px}.contact-content h2{font-size:clamp(54px,12vw,79px)}.contact-content>p:not(.kicker):not(.email-line){font-size:15px}.contact-halo{right:-68%;top:24%;max-width:140vw;max-height:140vw;opacity:.5}.footer-main{flex-wrap:wrap;gap:20px;padding-bottom:60px}.footer-logo{width:100%}.footer-main p{font-size:12px}.footer-top{margin-left:auto}.footer-bottom{display:flex;align-items:start;flex-direction:column;gap:13px;line-height:1.6;font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.cursor-glow{display:none}}

body.menu-open{overflow:hidden}
@media(prefers-reduced-motion:reduce){.scene-text{transition:opacity .1s linear!important}}


/* ===== cinematic hero overhaul ===== */
.experience{height:470vh;min-height:2400px;position:relative}
.experience-sticky{background:radial-gradient(circle at 58% 48%,rgba(16,34,90,.52),rgba(4,10,24,.94) 38%,#02050b 100%)}
.experience-grid{opacity:.25;transform:perspective(1200px) rotateX(79deg) translateY(36%) scale(1.22);transform-origin:50% 100%;transition:transform .2s linear,opacity .2s linear;z-index:1}
.atmosphere-a{width:78vw;height:78vw;right:-16%;top:-38%;background:radial-gradient(circle,rgba(23,72,210,.33),transparent 72%)}
.atmosphere-b{width:55vw;height:55vw;left:-15%;bottom:-32%;background:radial-gradient(circle,rgba(19,83,190,.22),transparent 70%)}
.eye-photo{position:absolute;inset:-6%;z-index:2;background-image:url('assets/inevia-eye-master.webp');background-size:cover;background-position:center center;opacity:0;transform:scale(2.6);filter:saturate(1.18) contrast(1.08) brightness(.74);will-change:transform,opacity,filter;transition:none}
.eye-photo::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0%,rgba(4,8,18,.12) 52%,rgba(2,4,9,.72) 100%);mix-blend-mode:multiply}
.eye-photo::after{content:"";position:absolute;inset:-10% -10% auto auto;width:55%;height:72%;background:radial-gradient(circle at 40% 40%,rgba(255,255,255,.18),transparent 46%);filter:blur(22px);opacity:.35;transform:rotate(16deg)}
.eye-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,5,11,.7),rgba(2,5,11,.08) 28%,rgba(2,5,11,.05) 72%,rgba(2,5,11,.55)),linear-gradient(0deg,rgba(2,5,11,.8),transparent 30%,transparent 72%,rgba(2,5,11,.7));mix-blend-mode:multiply}
#networkCanvas{position:absolute;inset:-3%;width:106%;height:106%;z-index:4;mix-blend-mode:screen;opacity:.96;filter:drop-shadow(0 0 18px rgba(88,139,255,.22));pointer-events:none}
.iris-shell{position:absolute;left:50%;top:50%;width:min(38vw,560px);aspect-ratio:1;border-radius:50%;z-index:3;transform:translate(-50%,-50%) scale(.38) rotate(-12deg);opacity:0;pointer-events:none;box-shadow:0 0 80px rgba(58,112,255,.24),0 0 140px rgba(22,72,220,.22) inset;background:radial-gradient(circle at 50% 50%,rgba(16,24,58,.04) 0 17%,rgba(28,82,255,.14) 18%,rgba(16,44,126,.22) 40%,rgba(8,14,30,.02) 68%,transparent 70%)}
.iris-shell::before,.iris-shell::after{content:"";position:absolute;inset:0;border-radius:50%}
.iris-shell::before{background:repeating-conic-gradient(from 0deg,rgba(140,183,255,.9) 0 2deg,transparent 2deg 8deg);mask:radial-gradient(circle at center,transparent 0 30%,#000 34% 73%,transparent 77%);opacity:.22;animation:spinSlow 26s linear infinite}
.iris-shell::after{background:radial-gradient(circle at center,transparent 0 31%,rgba(103,166,255,.24) 32% 34%,transparent 35% 45%,rgba(155,210,255,.11) 46% 47%,transparent 50% 100%)}
.iris-core{position:absolute;inset:34%;border-radius:50%;background:radial-gradient(circle at 45% 38%,#08111f 0%,#060b13 54%,#000 100%);box-shadow:0 0 35px rgba(0,0,0,.65),0 0 0 1px rgba(163,196,255,.12)}
.iris-circuit{position:absolute;inset:11%;border-radius:50%;mask:radial-gradient(circle at center,transparent 0 32%,#000 33% 79%,transparent 80%)}
.iris-circuit-a{background:repeating-conic-gradient(from 0deg,rgba(147,203,255,.88) 0 1.9deg,transparent 1.9deg 7deg);opacity:.38;animation:spinAlt 34s linear infinite}
.iris-circuit-b{background:repeating-radial-gradient(circle at center,rgba(123,175,255,.1) 0 6px,transparent 6px 17px);opacity:.25}
.iris-circuit-c{background:conic-gradient(from 0deg,transparent 0 18%,rgba(245,193,95,.55) 18% 24%,transparent 24% 44%,rgba(245,193,95,.4) 44% 49%,transparent 49% 75%,rgba(245,193,95,.45) 75% 83%,transparent 83% 100%);filter:blur(1.2px);opacity:.5}
.iris-spark{position:absolute;width:10px;height:10px;border-radius:50%;background:#d6e6ff;box-shadow:0 0 18px rgba(184,216,255,.9);animation:blinkSpark 2.3s ease-in-out infinite}
.spark-a{left:23%;top:36%}.spark-b{right:20%;top:58%;animation-delay:.7s}.spark-c{left:60%;top:18%;animation-delay:1.2s}
.iris-scan{position:absolute;inset:9%;border-radius:50%;border:1px solid rgba(174,212,255,.18);box-shadow:0 0 30px rgba(58,126,255,.18) inset}
.scene-shade{z-index:5;background:linear-gradient(90deg,rgba(2,6,14,.82),rgba(2,6,14,.28) 33%,rgba(2,6,14,.08) 64%,rgba(2,6,14,.3)),linear-gradient(180deg,rgba(2,5,11,.55),transparent 22%,transparent 70%,rgba(2,5,11,.58));pointer-events:none}
.scene-text{z-index:6;left:clamp(18px,5vw,74px);top:53%;width:min(48vw,700px)}
.scene-text h1,.scene-text h2{font-size:clamp(68px,8vw,148px);line-height:.92;letter-spacing:-.05em;text-shadow:0 8px 30px rgba(0,0,0,.2)}
.scene-text em{font-style:normal;color:#91a9ff}
.scene-description{max-width:460px;font-size:clamp(15px,1.4vw,23px);line-height:1.6;color:rgba(232,240,255,.8)}
.eyebrow{margin-bottom:28px}
.hero-status{position:absolute;z-index:6;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(205,222,255,.42);top:124px}.hero-status-left{left:clamp(18px,5vw,74px)}.hero-status-right{right:clamp(18px,5vw,74px);text-align:right}
.frame-label{z-index:6}.frame-coordinate{z-index:6}.scene-bottom-bar{z-index:7}.scene-timeline{width:min(22vw,320px)}
.contact-section,.site-footer,.expertise-section,.approach-section,.intro-section{position:relative;z-index:2}
@keyframes spinSlow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes spinAlt{from{transform:rotate(360deg)}to{transform:rotate(0deg)}}
@keyframes blinkSpark{0%,100%{transform:scale(.6);opacity:.35}50%{transform:scale(1.2);opacity:1}}
@media (max-width:900px){.experience{height:430vh;min-height:2100px}.scene-text{width:min(90vw,560px);top:48%}.scene-text h1,.scene-text h2{font-size:clamp(58px,11.5vw,96px)}.hero-status{display:none}.iris-shell{width:min(70vw,430px)}.eye-photo{background-position:60% center}.experience-grid{transform:perspective(1000px) rotateX(82deg) translateY(43%) scale(1.34)}.scene-shade{background:linear-gradient(180deg,rgba(2,6,14,.52),transparent 26%,rgba(2,6,14,.16) 55%,rgba(2,6,14,.75)),linear-gradient(90deg,rgba(2,6,14,.88),rgba(2,6,14,.42) 36%,rgba(2,6,14,.12) 72%)}}
@media (max-width:650px){.experience{height:400vh;min-height:1850px}.scene-text{top:42%;left:22px;width:calc(100% - 44px)}.scene-text h1,.scene-text h2{font-size:clamp(54px,14vw,78px)}.scene-description{font-size:15px;max-width:290px}.iris-shell{width:min(84vw,360px)}.eye-photo{inset:-10%;background-position:60% center;filter:saturate(1.18) contrast(1.08) brightness(.68)}.scene-bottom-bar{bottom:22px}.scene-timeline{width:32vw}.frame-label{top:96px}.experience-grid{opacity:.22}}


/* ===== v3 scroll-scrub eye hero + projects ===== */
.experience{height:430vh;min-height:2500px;position:relative}
.experience-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 48%,rgba(10,24,72,.55),rgba(3,8,20,.92) 40%,#02050b 100%)}
.experience-grid{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(114,144,206,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(114,144,206,.08) 1px,transparent 1px);background-size:74px 74px;opacity:.18;mask-image:radial-gradient(circle at 50% 44%,black 22%,rgba(0,0,0,.78) 50%,transparent 100%);transform:scale(1.12)}
.atmosphere{position:absolute;border-radius:50%;pointer-events:none;filter:blur(60px);z-index:1}
.atmosphere-a{width:80vw;height:80vw;max-width:980px;max-height:980px;right:-18%;top:-44%;background:radial-gradient(circle,rgba(24,76,220,.28),transparent 72%)}
.atmosphere-b{width:50vw;height:50vw;max-width:720px;max-height:720px;left:-12%;bottom:-22%;background:radial-gradient(circle,rgba(15,103,205,.18),transparent 72%)}
#eyeSequenceCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:2;display:block;will-change:transform,filter;background:url('assets/inevia-eye-poster.webp') center center / cover no-repeat}
.scene-shade{position:absolute;inset:0;z-index:5;background:linear-gradient(90deg,rgba(2,5,12,.62),rgba(2,5,12,.16) 33%,rgba(2,5,12,.03) 65%,rgba(2,5,12,.28)),linear-gradient(180deg,rgba(2,5,12,.36),transparent 28%,transparent 72%,rgba(2,5,12,.48));pointer-events:none}
.eye-blink{position:absolute;left:-2%;width:104%;height:52%;z-index:4;background:linear-gradient(180deg,rgba(6,13,26,.98),rgba(8,20,42,.92) 38%,rgba(8,20,42,.55) 72%,rgba(8,20,42,0));pointer-events:none;transition:transform .18s cubic-bezier(.7,0,.3,1)}
.blink-top{top:-1%;transform:translateY(-110%);border-bottom-left-radius:48% 100%;border-bottom-right-radius:48% 100%;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.blink-bottom{bottom:-1%;transform:translateY(110%) rotate(180deg);border-bottom-left-radius:48% 100%;border-bottom-right-radius:48% 100%;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.experience-sticky.is-blinking .blink-top{transform:translateY(-8%)}
.experience-sticky.is-blinking .blink-bottom{transform:translateY(8%) rotate(180deg)}
.frame-label,.frame-coordinate,.hero-status,.scene-text,.scene-bottom-bar{position:absolute;z-index:6}
.frame-label{top:24px;left:clamp(18px,4vw,52px);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(215,228,255,.58);display:flex;align-items:center;gap:16px}.frame-blip{width:8px;height:8px;border-radius:50%;display:inline-block;background:#5d8cff;box-shadow:0 0 14px rgba(93,140,255,.65)}
.frame-coordinate{top:44px;right:clamp(18px,4vw,52px);font-size:11px;letter-spacing:.22em;color:rgba(215,228,255,.46)}
.hero-status{top:116px;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:rgba(220,232,255,.38)}
.hero-status-left{left:clamp(18px,5vw,74px)}
.hero-status-right{right:clamp(18px,5vw,74px);text-align:right}
.scene-text{left:clamp(18px,5vw,74px);top:52%;width:min(48vw,720px);transform:translate3d(0,-48%,0);opacity:0;visibility:hidden;pointer-events:none}
.scene-text h1,.scene-text h2{margin:0;font-size:clamp(62px,8vw,142px);line-height:.92;letter-spacing:-.05em;text-shadow:0 12px 40px rgba(0,0,0,.28)}
.scene-text em{font-style:normal;color:#8ea9ff}
.eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 28px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(214,227,255,.76)}
.eyebrow-rule{width:34px;height:1px;background:rgba(214,227,255,.76)}
.scene-description{max-width:470px;font-size:clamp(15px,1.45vw,23px);line-height:1.62;color:rgba(236,241,255,.82);margin-top:20px}
.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:24px;color:#dfe9ff;text-decoration:none;font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.scene-bottom-bar{left:clamp(18px,5vw,74px);right:clamp(18px,5vw,74px);bottom:32px;display:flex;align-items:center;justify-content:space-between;gap:22px}.scroll-prompt{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(227,236,255,.78)}
.scroll-icon{width:26px;height:42px;border:1px solid rgba(227,236,255,.38);border-radius:999px;display:inline-flex;justify-content:center;padding-top:8px}.scroll-icon span{width:4px;height:9px;border-radius:999px;background:#a4bfff;animation:scrollNudge 1.7s infinite}
.scene-timeline{position:relative;flex:1;max-width:320px;height:1px;background:rgba(227,236,255,.18)}
.scene-timeline span{position:absolute;left:0;top:0;height:100%;width:0;background:#95acff;box-shadow:0 0 18px rgba(149,172,255,.42)}
.scene-timeline i{position:absolute;top:50%;width:7px;height:7px;border-radius:50%;background:#dfe9ff;transform:translate(-50%,-50%)}
.scene-timeline i:nth-child(2){left:0}.scene-timeline i:nth-child(3){left:50%}.scene-timeline i:nth-child(4){left:100%}
.chapter-counter{font-size:22px;letter-spacing:.18em;color:#eef3ff}.chapter-counter span{font-size:12px;color:rgba(238,243,255,.58)}
@keyframes scrollNudge{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(9px);opacity:1}}

.projects-section{padding-top:40px;padding-bottom:120px}
.projects-header{display:grid;grid-template-columns:1.2fr .8fr;gap:42px;align-items:end;padding:110px 0 42px}.projects-header h2{font-size:clamp(46px,6.4vw,86px);line-height:.95;letter-spacing:-.05em;margin:0}.projects-header em{font-style:normal;color:#8ea9ff}.projects-header>p{max-width:440px;color:#bdc9e2;font-size:17px;line-height:1.7}
.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{position:relative;padding:16px;border:1px solid rgba(134,156,212,.16);border-radius:26px;background:linear-gradient(180deg,rgba(11,18,38,.82),rgba(7,11,24,.98));overflow:hidden;transition:transform .45s ease,border-color .45s ease,box-shadow .45s ease}.project-card:hover,.project-card:focus-within{transform:translateY(-8px);border-color:rgba(142,169,255,.42);box-shadow:0 22px 60px rgba(0,0,0,.28)}
.project-visual{position:relative;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:#cad0d9}.project-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .7s ease,transform .85s ease,filter .7s ease}.project-img-bw{filter:grayscale(1);opacity:1}.project-img-color{opacity:0}.project-card:hover .project-img-color,.project-card:focus-within .project-img-color{opacity:1;transform:scale(1.04)}.project-card:hover .project-img-bw,.project-card:focus-within .project-img-bw{opacity:0;transform:scale(1.04)}
.project-copy{padding:18px 6px 8px}.project-index{display:block;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#8ea9ff;margin-bottom:14px}.project-copy h3{font-size:27px;line-height:1.1;letter-spacing:-.03em;margin:0 0 10px}.project-copy p{margin:0;color:#aab8d4;line-height:1.7}

@media (max-width:1100px){.projects-grid{grid-template-columns:1fr}.projects-header{grid-template-columns:1fr;gap:18px;padding-top:95px}.scene-text{width:min(58vw,620px)}.scene-text h1,.scene-text h2{font-size:clamp(58px,8.8vw,110px)}}
@media (max-width:900px){.experience{height:390vh;min-height:2200px}.hero-status{display:none}.scene-shade{background:linear-gradient(180deg,rgba(2,5,12,.5),transparent 24%,transparent 75%,rgba(2,5,12,.7)),linear-gradient(90deg,rgba(2,5,12,.9),rgba(2,5,12,.32) 36%,rgba(2,5,12,.08) 75%)}.scene-text{width:min(88vw,560px);top:45%}.scene-text h1,.scene-text h2{font-size:clamp(54px,11vw,92px)}.frame-coordinate{display:none}}
@media (max-width:650px){.experience{height:355vh;min-height:1900px}.frame-label{top:100px;font-size:9px;gap:10px}.scene-text{left:22px;top:42%;width:calc(100% - 44px)}.scene-text h1,.scene-text h2{font-size:clamp(48px,13vw,74px)}.scene-description{max-width:290px;font-size:15px}.eyebrow{font-size:9px;margin-bottom:20px}.scene-bottom-bar{left:22px;right:22px;bottom:18px}.scene-timeline{max-width:115px}.chapter-counter{font-size:18px}.projects-section{padding-bottom:80px}.project-card{padding:12px;border-radius:20px}.project-copy h3{font-size:23px}}


/* ===== v5 - reliable image-stage scroll cinematics ===== */
.experience-sticky{position:sticky!important;top:0;height:100svh;min-height:550px;overflow:hidden;background:#040914!important}
.eye-stage{position:absolute;inset:0;z-index:3;display:block;overflow:visible;transform-origin:54% 48%;transform:scale(3.3);will-change:transform,filter;background:radial-gradient(circle at 50% 50%,#123b78,#040813)}
.eye-stage-frame{width:100%;height:100%;display:block;object-fit:cover;object-position:center;filter:saturate(1.14) contrast(1.08) brightness(1.12)}
.pupil-correction{position:absolute;top:42.5%;left:55.1%;width:clamp(170px,22vw,320px);height:clamp(105px,14vw,200px);border-radius:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,rgba(0,5,19,1) 0%,rgba(0,5,19,1) 77%,rgba(0,5,19,.9) 85%,rgba(0,5,19,0) 100%);pointer-events:none}
.pupil-correction span{font-family:Inter,'Helvetica Neue',Arial,sans-serif;font-size:clamp(23px,3.6vw,65px);font-weight:500;color:white;letter-spacing:-.05em;line-height:1;text-shadow:0 0 12px rgba(1,5,25,.5);opacity:1}
.eye-blink{z-index:5;pointer-events:none}
.scene-shade{z-index:6!important;pointer-events:none;background:linear-gradient(90deg,rgba(2,5,12,.52),rgba(2,5,12,.07) 28%,rgba(2,5,12,0) 58%,rgba(2,5,12,.12)),linear-gradient(0deg,rgba(2,5,12,.53),transparent 24%,transparent 80%,rgba(2,5,12,.30))!important}
.frame-label,.frame-coordinate,.hero-status,.scene-text,.scene-bottom-bar{z-index:7!important}
.scene-text-one{opacity:1;visibility:visible}
.experience-grid{z-index:2!important;opacity:.06!important}
.experience{height:410vh;min-height:2300px}
@media (max-width:900px){.experience{height:360vh;min-height:1920px}.eye-stage{transform-origin:54% 48%}.scene-shade{background:linear-gradient(90deg,rgba(2,5,12,.65),rgba(2,5,12,.12) 60%),linear-gradient(0deg,rgba(2,5,12,.65),transparent 27%,transparent 80%,rgba(2,5,12,.3))!important}}
@media (max-width:650px){.experience{height:320vh;min-height:1640px}.pupil-correction{width:86vw;height:55vw}.pupil-correction span{font-size:8vw}.scene-text-three{top:71%}.scene-text-three h2{font-size:clamp(44px,11.3vw,62px)}.scene-text-three .scene-description{font-size:13px;max-width:255px;margin-top:13px}.scene-text-three .text-link{margin-top:13px;font-size:11px}.eye-stage-frame{object-position:54% center}}


/* ===== v6 / Smooth eye interpolation — final overrides ===== */
.eye-stage{position:absolute;inset:0;z-index:3;overflow:hidden;transform-origin:54% 48%;will-change:transform;background:#040914;transform:scale(3.22)}
.eye-stage-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;filter:saturate(1.1) contrast(1.05) brightness(1.02)}
.eye-frame-blend{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .44s ease;pointer-events:none;will-change:opacity}
.eye-frame-blend.is-ready{opacity:1}
.eye-blink,.pupil-correction{display:none!important}
/* Show the footage rather than covering it with an excessively dark vignette */
.scene-shade{background:linear-gradient(90deg,rgba(2,5,12,.42),rgba(2,5,12,.08) 27%,rgba(2,5,12,0) 63%,rgba(2,5,12,.12)),linear-gradient(0deg,rgba(2,5,12,.40),transparent 23%,transparent 80%,rgba(2,5,12,.24))!important}
@media (prefers-reduced-motion: reduce){.eye-frame-blend{transition:none}}

/* V8 — single-frame continuous cinematic camera (no frame swapping). */
.experience{height:410vh;min-height:2100px}
.experience-sticky{background:#040912;isolation:isolate}
.eye-stage{position:absolute;inset:0;z-index:3;overflow:hidden;background:#040912;transform:scale(2.70);transform-origin:50% 49%;will-change:transform;backface-visibility:hidden;contain:paint}
.eye-stage-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;filter:saturate(1.075) contrast(1.045);transform:translateZ(0);backface-visibility:hidden}
.eye-ambient-glow{position:absolute;inset:0;pointer-events:none;opacity:.24;mix-blend-mode:screen;background:radial-gradient(circle at 51% 51%,rgba(64,172,255,.28),transparent 18%),radial-gradient(circle at 60% 60%,rgba(255,179,44,.11),transparent 20%);animation:eyeGlow 7.5s ease-in-out infinite alternate}
@keyframes eyeGlow{0%{opacity:.09;filter:hue-rotate(0deg)}100%{opacity:.25;filter:hue-rotate(9deg)}}
.scene-shade{position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(90deg,rgba(3,6,15,.72),rgba(3,6,15,.33) 35%,rgba(3,6,15,.08) 65%,rgba(3,6,15,.13)),linear-gradient(180deg,rgba(3,6,15,.35),transparent 26%,transparent 76%,rgba(3,6,15,.48))!important}
.frame-blip{animation:none}
@media (max-width:900px){.experience{height:365vh;min-height:1750px}.eye-stage{transform:scale(2.45)}.scene-shade{background:linear-gradient(90deg,rgba(3,6,15,.64),rgba(3,6,15,.2) 55%,rgba(3,6,15,.08)),linear-gradient(180deg,rgba(3,6,15,.40),transparent 22%,transparent 66%,rgba(3,6,15,.55))!important}}
@media (max-width:650px){.experience{height:330vh;min-height:1580px}.eye-stage{transform:scale(1.04);transform-origin:56% 48%}.eye-stage-frame{object-position:56% 49%}.scene-text{left:16px;width:min(52vw,220px);padding:16px 14px 14px 14px;border-radius:18px;background:linear-gradient(90deg,rgba(2,5,13,.62),rgba(2,5,13,.34) 68%,rgba(2,5,13,.08));backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);box-shadow:0 14px 34px rgba(2,5,13,.14)}.scene-text-one{top:67%;width:min(52vw,220px)}.scene-text-one h1{font-size:clamp(32px,9.8vw,54px);line-height:.93}.scene-text-one .scene-description{max-width:190px;font-size:12px;line-height:1.45;margin-top:12px}.scene-text-two{top:64%;width:min(55vw,230px)}.scene-text-two h2{font-size:clamp(33px,10vw,56px);line-height:.95}.scene-text-two .scene-description{max-width:200px;font-size:12px;line-height:1.45;margin-top:12px}.scene-text-three{top:69%;width:min(55vw,230px)}.scene-text-three h2{font-size:clamp(33px,10vw,56px);line-height:.96}.scene-text-three .scene-description{max-width:205px;font-size:12px;line-height:1.45;margin-top:12px}.scene-shade{background:linear-gradient(90deg,rgba(2,5,13,.78),rgba(2,5,13,.52) 26%,rgba(2,5,13,.16) 58%,rgba(2,5,13,.08)),linear-gradient(180deg,rgba(2,5,13,.20),rgba(2,5,13,.09) 26%,rgba(2,5,13,.17) 56%,rgba(2,5,13,.76))!important}}
@media (prefers-reduced-motion:reduce){.eye-ambient-glow{animation:none}}

/* Keep the final headline clear of the pupil and maintain legibility. */
@media(min-width:901px){.scene-text-three{width:min(520px,40vw);top:47%}.scene-text-three h2{font-size:clamp(54px,5vw,80px)}.scene-text-three .scene-description{max-width:330px}}
@media(max-width:650px){.scene-text-three{top:71%}.scene-text-three h2{font-size:clamp(42px,10vw,58px);line-height:1.04}.scene-text-three .scene-description{font-size:13px;max-width:310px;line-height:1.5}}

@media (max-width:650px){.frame-label{top:114px;font-size:8px;gap:8px;opacity:.74}.scene-bottom-bar{left:18px;right:18px;bottom:16px}.scene-timeline{max-width:100px}.chapter-counter{font-size:17px}}

/* v12 hero headline refinement */
.experience .scene-text{top:auto;bottom:132px;left:var(--pad);transform:none;width:min(480px,33vw);padding:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.experience .scene-text .scene-description{display:none}
.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(48px,4.8vw,76px);line-height:.94;max-width:100%;text-shadow:0 8px 30px rgba(0,0,0,.45),0 0 14px rgba(2,5,12,.22)}
.experience .scene-text h1 em,.experience .scene-text h2 em{color:#8ca9f5}
.experience .eyebrow{margin:0 0 18px;font-size:10px;letter-spacing:.22em;color:rgba(219,229,255,.9);text-shadow:0 2px 10px rgba(0,0,0,.4)}
.experience .eyebrow-rule{background:rgba(141,170,244,.9)}
.experience .scene-text-three,.experience .scene-text-two,.experience .scene-text-one{top:auto}
@media (max-width:900px){.experience .scene-text{width:min(48vw,360px);bottom:106px}.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(42px,7vw,62px)}}
@media (max-width:650px){.experience .scene-text{left:18px;bottom:114px;width:min(42vw,175px)}.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(26px,7.5vw,40px);line-height:.96}.experience .eyebrow{margin-bottom:12px;font-size:8px;letter-spacing:.18em}.experience .scene-shade{background:linear-gradient(90deg,rgba(2,5,13,.84),rgba(2,5,13,.56) 22%,rgba(2,5,13,.18) 48%,rgba(2,5,13,.06) 68%),linear-gradient(180deg,rgba(2,5,13,.18),rgba(2,5,13,.08) 26%,rgba(2,5,13,.16) 58%,rgba(2,5,13,.74))!important}.experience .eye-stage{transform-origin:58% 48%}.experience .eye-stage-frame{object-position:58% 49%}}

/* v13 mobile lower hero headlines */
@media (max-width:650px){.experience .scene-text{bottom:78px !important}.experience .discover-more{display:none}.experience .scene-bottom-bar{bottom:14px}.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(25px,7.2vw,38px)}}

/* v14 mobile micro-tuning */
@media (max-width:650px){.experience .scene-text{bottom:52px !important}.experience .eye-stage{transform-origin:60% 49% !important}.experience .eye-stage-frame{object-position:60% 49% !important}.experience .scene-bottom-bar{bottom:12px}.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(24px,7vw,36px)}}

/* v15 mobile center + zoom correction */
@media (max-width:650px){.experience .eye-stage{transform-origin:57% 49% !important}.experience .eye-stage-frame{object-position:57% 49% !important}.experience .scene-text{bottom:56px !important}}

/* v16 mobile wow-start framing */
@media (max-width:650px){.experience .eye-stage{transform-origin:50% 48.5% !important}.experience .eye-stage-frame{object-position:50% 48.5% !important}.experience .scene-text{bottom:42px !important}.experience .scene-bottom-bar{bottom:10px}.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(23px,6.8vw,35px)}}

/* v17 mobile dynamic wow framing */
@media (max-width:650px){.experience .eye-stage{transform-origin:50% 49% !important}.experience .eye-stage-frame{object-position:50% 49% !important}.experience .scene-text{bottom:34px !important}.experience .scene-bottom-bar{bottom:8px}.experience .scene-text h1,.experience .scene-text h2{font-size:clamp(22px,6.5vw,34px)}}

/* v18 mobile max pupil + dark intro */
@media (max-width:650px){
  .experience .eye-stage{transform-origin:50% 49% !important}
  .experience .eye-stage-frame{object-position:50% 49% !important}
  .experience .scene-text{bottom:28px !important}
  .experience .scene-bottom-bar{bottom:8px}
  .experience .scene-text h1,.experience .scene-text h2{font-size:clamp(21px,6.4vw,33px)}
}
.intro-section{background:radial-gradient(ellipse at 70% 12%,rgba(38,78,172,.18),transparent 36%),linear-gradient(180deg,#081022 0%,#091224 42%,#070d1a 100%) !important;color:#e9efff}
.intro-section .section-topline{color:#96acd6}
.intro-section .section-topline span:first-child{color:#b5c7ea}
.intro-section .thin-line{background:rgba(144,170,219,.22)}
.intro-left .kicker{color:#8faef9}
.statement{color:#f1f5ff}
.stroke-text{-webkit-text-stroke:1.2px #7ea1f8;color:transparent}
.accent-period{color:#7ea1f8}
.plus-mark{color:#87a8f5}
.big-body{color:#dce6fb}
.muted-body{color:#96a7cc}
.statement-footer{border-top:1px solid rgba(151,176,224,.14);color:#8fa0c1}
.underlined-link{border-bottom:1px solid rgba(137,170,245,.8);color:#edf3ff}

/* v19 final mobile centering + synced hero copy */
@media (max-width:650px){
  .experience .eye-stage{transform-origin:50.5% 49.3% !important}
  .experience .eye-stage-frame{object-position:50.5% 49.3% !important}
  .experience .scene-text{bottom:36px !important}
  .experience .scene-bottom-bar{bottom:10px}
}

/* v20 mobile final micro-tuning */
@media (max-width:650px){
  .experience{height:290vh !important;min-height:1420px !important}
  .experience .eye-stage{transform-origin:49.2% 49.3% !important}
  .experience .eye-stage-frame{object-position:49.2% 49.3% !important}
  .experience .scene-text{bottom:36px !important}
}

/* v21 mobile recenter left + faster next-section exit */
@media (max-width:650px){
  .experience{height:252vh !important;min-height:1220px !important}
  .experience .eye-stage{transform-origin:52.6% 49.3% !important}
  .experience .eye-stage-frame{object-position:52.6% 49.3% !important}
  .experience .scene-text{bottom:34px !important}
  .experience .scene-bottom-bar{bottom:8px}
}


/* INEVIA v22: About us / Meet the team
   Works with the approved v21 cinematic eye; no changes to its scroll behavior. */
.team-section{
  position:relative;isolation:isolate;
  padding-bottom:clamp(90px,9vw,165px);
  background:radial-gradient(ellipse 52% 55% at 53% 28%,rgba(39,69,153,.17),transparent 72%),
             linear-gradient(180deg,#060b15 0%,#091121 59%,#070e1e 100%);
  overflow:hidden;color:#f3f6ff;
}
.team-section:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
 background:linear-gradient(90deg,transparent 0,rgba(94,132,241,.038) 50%,transparent 100%);
 opacity:.6}
.team-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;
 padding:clamp(78px,8vw,132px) 0 clamp(55px,6vw,96px)}
.team-heading-group{flex:1 1 auto;min-width:0}
.team-headline{display:flex;align-items:center;gap:clamp(15px,2vw,30px)}
.team-spark{display:inline-block;color:#476ed3;flex:none;font-size:clamp(47px,5.3vw,90px);
 line-height:1;filter:drop-shadow(0 0 21px rgba(75,110,212,.25))}
.team-headline h2{font-size:clamp(50px,6.8vw,112px);font-weight:540;line-height:.95;
 letter-spacing:-.073em;margin:0}
.team-headline h2 em{font-style:normal;font-weight:350;color:#91aaf8}
.team-kicker{font-size:11px;letter-spacing:.24em;color:#83a0ed;font-weight:650;
 text-transform:uppercase;margin:27px 0 0 clamp(63px,7.3vw,120px)}
.team-deck{max-width:375px;color:#aab8d3;font-size:clamp(14px,1.24vw,18px);
 line-height:1.75;margin:0 0 6px;flex:0 1 375px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 gap:clamp(22px,4vw,86px);align-items:start}
.team-person{position:relative;min-width:0;isolation:isolate}
.team-portrait-wrap{width:clamp(190px,18.5vw,278px);max-width:100%;aspect-ratio:1;
 border-radius:50%;position:relative;display:grid;place-items:center;margin-bottom:34px;
 transition:transform .65s var(--ease),filter .65s var(--ease)}
.team-portrait-wrap:before{content:"";position:absolute;inset:-11px;border-radius:50%;
 border:1px solid rgba(122,159,255,.2);box-shadow:0 0 46px rgba(51,91,193,.07);transition:border-color .4s,box-shadow .4s}
.team-portrait-wrap:after{content:"";position:absolute;inset:-19px;border-radius:50%;
 border:1px solid rgba(129,161,255,.05)}
.team-portrait{display:block;border-radius:50%;width:100%;height:100%;object-fit:cover;
 filter:saturate(.94);background:#d1d9e9}
.team-person:hover .team-portrait-wrap{transform:translateY(-7px) scale(1.025)}
.team-person:hover .team-portrait-wrap:before{border-color:rgba(140,173,255,.58);
 box-shadow:0 0 58px rgba(51,91,193,.18)}
.team-person-index{display:block;font-size:10px;letter-spacing:.2em;color:#7d99df;
 font-weight:650;margin-bottom:15px}
.team-person h3{color:#f3f6ff;font-size:clamp(24px,2.5vw,39px);font-weight:500;
 letter-spacing:-.045em;line-height:1.14;margin:0 0 19px}
.team-position{color:#a8bdff;font-size:clamp(14px,1.15vw,18px);line-height:1.5;
 font-weight:570;margin:0 0 8px}
.team-specialty{color:#bdc9dc;font-size:clamp(14px,1.12vw,17px);line-height:1.65;
 font-weight:400;margin:0}
.team-specialty span{color:#91a5c7}
.team-footer{display:flex;align-items:center;gap:26px;margin-top:clamp(80px,9vw,144px);
 color:#7f97c7;font-size:10px;letter-spacing:.21em;font-weight:650}
.team-footer-line{height:1px;background:rgba(166,189,245,.2);flex:1}
.team-footer-star{font-size:30px;line-height:1;color:#567be0;font-weight:400}
@media(max-width:1100px){
 .team-intro{align-items:start;flex-direction:column;gap:25px}
 .team-deck{flex:auto;max-width:560px}
 .team-portrait-wrap{width:min(22vw,245px)}
 .team-grid{gap:26px}
 .team-person h3{font-size:clamp(22px,2.7vw,33px)}
}
@media(max-width:700px){
 .team-headline h2{font-size:clamp(47px,10vw,74px)}
 .team-spark{font-size:clamp(45px,10vw,70px)}
 .team-intro{padding-top:80px;padding-bottom:60px}
 .team-kicker{margin-left:0;margin-top:24px;letter-spacing:.14em;font-size:10px}
 .team-grid{grid-template-columns:1fr;gap:0}
 .team-person{display:grid;grid-template-columns:minmax(104px,30%) minmax(0,1fr);
   align-items:start;gap:0 22px;padding:31px 0 40px;
   border-top:1px solid rgba(153,180,249,.16)}
 .team-portrait-wrap{grid-row:1/5;grid-column:1;width:min(100%,200px);
    margin:9px 0 0;align-self:start}
 .team-portrait-wrap:before{inset:-5px}.team-portrait-wrap:after{display:none}
 .team-person-index{grid-row:1;grid-column:2;margin-bottom:10px;font-size:9px;letter-spacing:.12em}
 .team-person h3{grid-row:2;grid-column:2;font-size:clamp(24px,5.4vw,33px);margin-bottom:10px}
 .team-position{grid-row:3;grid-column:2;font-size:14px;margin-bottom:8px}
 .team-specialty{grid-row:4;grid-column:2;font-size:13px;line-height:1.6}
 .team-footer{margin-top:32px;font-size:9px;gap:12px}
}
@media(max-width:375px){
 .team-person{grid-template-columns:104px minmax(0,1fr);gap:0 17px}
 .team-person h3{font-size:23px}
 .team-position{font-size:12px}
 .team-specialty{font-size:12px}
 .team-headline{gap:12px}
}
@media(prefers-reduced-motion:reduce){.team-portrait-wrap{transition:none}}

/* v24: selected SAP case study card */
.projects-grid{align-items:stretch}
.projects-grid .project-card{min-height:100%;display:flex;flex-direction:column}
.projects-grid .project-copy{display:flex;flex-direction:column;flex:1}
.project-card--featured{cursor:pointer;outline-offset:5px}
.project-card--featured .project-visual{isolation:isolate}
.project-card--featured .project-copy h3{font-size:clamp(20px,1.75vw,28px);line-height:1.19;letter-spacing:-.032em;max-width:34ch;overflow-wrap:break-word}
.project-card--featured .project-sector{font-size:10px;letter-spacing:.1em;color:#9baace;margin-left:12px;font-weight:500}
.project-card--featured .project-technology{font-size:12px;color:#8ea9ed;letter-spacing:.04em;margin:8px 0 0}
.project-more{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#dce7ff;font-size:12px;font-weight:650;letter-spacing:.06em;border-top:1px solid rgba(136,167,230,.22);padding:18px 0 2px;margin-top:auto;transition:color .25s}
.project-more span{font-size:21px;font-weight:400;transition:transform .35s var(--ease)}
.project-card--featured:hover .project-more,.project-card--featured:focus-visible .project-more{color:#95b1ff}
.project-card--featured:hover .project-more span,.project-card--featured:focus-visible .project-more span{transform:translate(3px,-3px)}
.project-image-indicator{position:absolute;top:16px;right:17px;z-index:4;background:rgba(7,12,29,.65);border:1px solid rgba(221,232,255,.27);color:#fff;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;font-size:23px;backdrop-filter:blur(8px);transition:background .3s,transform .3s}
.project-card--featured:hover .project-image-indicator{background:#355db8;transform:rotate(45deg)}
@media(max-width:1100px){.project-card--featured .project-copy h3{font-size:clamp(22px,3.3vw,31px);max-width:37ch}.project-card--featured .project-sector{font-size:11px}}
@media(max-width:650px){.project-card--featured .project-copy h3{font-size:clamp(23px,6vw,30px)}.project-more{padding:18px 2px 4px}}
@media(prefers-reduced-motion:reduce){.project-card--featured .project-more span,.project-image-indicator{transition:none}}

/* INEVIA v25: Mobile team reliability fix.
   Team portraits must not be hidden by the general scroll-reveal effect.
   Responsive JPEGs also load in browsers/viewers without WebP support. */
@media (max-width:700px){
  .team-section .team-person.reveal,
  .team-section .team-person.reveal.visible {
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    transition:none !important;
  }
  .team-section .team-portrait-wrap,
  .team-section .team-portrait {
    opacity:1 !important;
    visibility:visible !important;
  }
  .team-section .team-portrait {
    display:block;
    width:100%;height:100%;aspect-ratio:1;
    object-fit:cover;
  }
}


/* INEVIA v27 — full-color team portraits, animated on scroll.
   Progressive enhancement: the portrait is always visible with or without JS.
   No grayscale, color transitions or hover recoloring. */
.team-section .team-person { --team-enter-delay:0ms; }
.team-section .team-person:nth-child(2) { --team-enter-delay:110ms; }
.team-section .team-person:nth-child(3) { --team-enter-delay:220ms; }
.team-section .team-portrait-wrap { isolation:isolate; }
.team-section .team-portrait {
  display:block;
  filter:none !important;
  transform:none !important;
  transition:none !important;
}
.team-section .team-person.is-entered .team-portrait-wrap {
  animation:ineviaTeamPortraitReveal .88s cubic-bezier(.18,.86,.2,1) backwards;
  animation-delay:var(--team-enter-delay);
}
.team-section .team-person.is-entered .team-person-index,
.team-section .team-person.is-entered h3,
.team-section .team-person.is-entered .team-position,
.team-section .team-person.is-entered .team-specialty {
  animation:ineviaTeamCopyReveal .76s cubic-bezier(.18,.84,.24,1) backwards;
  animation-delay:calc(var(--team-enter-delay) + 120ms);
}
@keyframes ineviaTeamPortraitReveal {
  from {opacity:.18;transform:translate3d(0,45px,0) scale(.91)}
  to {opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes ineviaTeamCopyReveal {
  from {opacity:0;transform:translate3d(0,20px,0)}
  to {opacity:1;transform:translate3d(0,0,0)}
}
@media (max-width:700px) {
  .team-section .team-person {--team-enter-delay:0ms}
  .team-section .team-person.is-entered .team-portrait-wrap {animation-duration:.78s}
}
@media (prefers-reduced-motion:reduce) {
  .team-section .team-person.is-entered .team-portrait-wrap,
  .team-section .team-person.is-entered .team-person-index,
  .team-section .team-person.is-entered h3,
  .team-section .team-person.is-entered .team-position,
  .team-section .team-person.is-entered .team-specialty {animation:none !important}
}

/* v31: emphasis for the approved Our thinking statement */
.approach-note p strong{font-weight:590}


/* v32 – private contact form, cinematic visual continuity */
.contact-inner{min-height:760px;padding-bottom:110px}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:clamp(30px,6vw,110px);align-items:start;padding:36px 0 25px}
.contact-grid .contact-content{margin-top:45px;max-width:750px}
.contact-grid .contact-content h2{font-size:clamp(56px,6.5vw,115px);line-height:1.04}
.contact-grid .contact-content>p:not(.kicker):not(.email-line){max-width:490px}
.contact-private-note{display:flex;align-items:center;gap:13px;font-size:12px!important;line-height:1.7;color:#a4badf!important;margin-top:35px;max-width:420px}
.contact-signal{flex:0 0 auto;background:#8cadff;width:7px;height:7px;border-radius:50%;box-shadow:0 0 12px #6e97f9}
.contact-form{padding:clamp(23px,3vw,42px);position:relative;z-index:2;border-radius:23px;border:1px solid rgba(142,176,255,.27);background:linear-gradient(142deg,rgba(18,39,82,.86),rgba(7,17,40,.96));box-shadow:0 30px 75px rgba(0,0,0,.24),inset 0 1px rgba(190,208,255,.1);backdrop-filter:blur(18px)}
.contact-form-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;letter-spacing:.22em;color:#c5d7fe;border-bottom:1px solid rgba(150,172,221,.22);padding-bottom:22px;margin-bottom:27px}
.contact-form-top>span:last-child{font-size:24px;font-weight:300;letter-spacing:0;color:#8ca9f5}
.contact-form-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.contact-field{min-width:0;margin-bottom:18px}
.contact-field label{display:block;font-size:11px;font-weight:600;letter-spacing:.05em;margin:0 0 9px;color:#d9e5ff}
.contact-field input,.contact-field textarea,.contact-field select{box-sizing:border-box;display:block;width:100%;border:1px solid rgba(150,174,226,.26);border-radius:10px;background:rgba(3,10,29,.61);color:#f5f8ff;outline:none;padding:14px 15px;font:400 14px/1.55 inherit;font-family:inherit;font-size:14px;line-height:1.5;min-height:50px;transition:background .24s,border-color .24s,box-shadow .24s}
.contact-field textarea{min-height:140px;resize:vertical}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#7e91ba;opacity:1}
.contact-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23aabdf2' stroke-width='1.5'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:40px;cursor:pointer}
.contact-field select option{background:#101b38;color:#f5f8ff}
.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus{border-color:#99b6ff;background:rgba(8,22,53,.8);box-shadow:0 0 0 3px rgba(124,164,255,.13)}
.contact-field :is(input,textarea).invalid{border-color:#ff9caa}
.contact-submit{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;border:0;border-radius:999px;padding:9px 9px 9px 25px;background:#e5ecff;color:#102651;font-size:14px;font-weight:700;cursor:pointer;transition:transform .22s,background .22s,box-shadow .22s;margin-top:7px}
.contact-submit:hover{transform:translateY(-2px);background:#fff;box-shadow:0 12px 34px rgba(12,28,67,.26)}
.contact-submit:disabled{opacity:.7;cursor:wait;transform:none}
.contact-submit-arrow{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-weight:300;font-size:21px;background:#274b95;color:white}
.form-fine-print{font-size:11px;color:#94a8cf;line-height:1.65;margin:15px 0 0}
.form-feedback{min-height:0;font-size:13px;line-height:1.6;margin:14px 0 0;color:#d2e3ff}
.form-feedback:empty{margin:0}
.form-feedback[data-kind="error"]{color:#ffc0c0}.form-feedback[data-kind="success"]{color:#abedc7}
.contact-trap{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:1100px){.contact-grid{grid-template-columns:1fr 1fr;gap:28px}.contact-form-two{grid-template-columns:1fr}}
@media(max-width:800px){.contact-grid{grid-template-columns:1fr;gap:28px}.contact-grid .contact-content{margin-top:18px}.contact-form{max-width:650px;width:100%;margin:0 auto}.contact-form-two{grid-template-columns:1fr 1fr}.contact-inner{padding-bottom:80px}}
@media(max-width:550px){.contact-grid{padding-top:15px}.contact-form-two{grid-template-columns:1fr;gap:0}.contact-form{padding:24px 20px 25px;border-radius:20px}.contact-grid .contact-content h2{font-size:clamp(54px,12vw,75px)}.contact-grid .contact-content>p:not(.kicker):not(.email-line){font-size:15px}.contact-private-note{margin-top:23px}.contact-form-top{margin-bottom:24px}.contact-field{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.contact-submit,.contact-field input,.contact-field select,.contact-field textarea{transition:none!important}}

/* v34 — Family-owned editorial story + impact counters. Prior sections untouched. */
.intro-section{overflow:hidden}
.intro-layout--values{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:clamp(42px,6vw,125px);
  padding-top:clamp(105px,11vw,164px);
  padding-bottom:clamp(104px,10vw,150px);
}
.intro-layout--values .intro-left{padding-top:9px;min-width:0}
.statement--values{font-size:clamp(56px,5.8vw,106px);line-height:1.055;max-width:710px;letter-spacing:-.079em}
.statement--values .stroke-text{-webkit-text-stroke:1.15px #8faaff}
.intro-signature{display:flex;align-items:center;gap:17px;color:#7794d2;font-size:10px;letter-spacing:.20em;font-weight:650;margin-top:61px}
.intro-signature-line{width:39px;height:1px;background:#6485d2}
.intro-right--values{padding-top:0;min-width:0;max-width:735px}
.intro-right--values .plus-mark{font-size:37px;line-height:1;display:block;margin-bottom:29px}
.intro-right--values .intro-lead{font-size:clamp(19px,1.52vw,24px);line-height:1.58;letter-spacing:-.024em;max-width:690px;margin:0 0 31px;font-weight:480;color:#e6edfd}
.intro-right--values .intro-detail{font-size:clamp(15px,1.03vw,17px);line-height:1.87;letter-spacing:-.008em;max-width:690px;color:#b4c3e3;margin:0 0 34px;font-weight:400}
.intro-right--values .intro-closing{border-left:2px solid #6c92ee;padding-left:22px;color:#dce7fe;font-size:clamp(16px,1.12vw,18px);line-height:1.7;max-width:685px;margin:0;font-weight:500}
.intro-right--values .underlined-link{margin-top:42px}
.impact-block{margin:0 calc(-1 * var(--pad));padding:39px var(--pad) clamp(85px,8vw,132px);background:linear-gradient(180deg,rgba(2,5,13,.32),rgba(2,5,12,.94) 18%,#02050b 100%);border-top:1px solid rgba(137,166,231,.18)}
.impact-heading{display:flex;align-items:center;gap:25px;color:#9ab5ee;font-weight:700;letter-spacing:.20em;font-size:10px;white-space:nowrap}
.impact-heading-rule{flex:1;height:1px;background:rgba(137,166,231,.18)}
.impact-heading>span:last-child{color:#697b9e}
.impact-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(32px,5vw,90px);padding-top:70px}
.impact-stat{min-width:0;text-align:center;position:relative}
.impact-stat+.impact-stat:before{content:"";position:absolute;left:calc(-.5 * clamp(32px,5vw,90px));top:22px;bottom:3px;width:1px;background:linear-gradient(180deg,transparent,rgba(142,174,255,.2),transparent)}
.impact-number{display:flex;justify-content:center;align-items:baseline;font-size:clamp(75px,8.25vw,158px);line-height:1.12;letter-spacing:-.075em;font-weight:400;color:#3457c3;margin:0 0 15px;font-variant-numeric:tabular-nums}
.impact-plus{font-size:.82em;letter-spacing:-.04em}
.impact-caption{color:#d9e4f8;line-height:1.55;font-weight:430;font-size:clamp(15px,1.3vw,20px);margin:0}
@media(max-width:1100px){
 .intro-layout--values{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(35px,4vw,60px)}
 .statement--values{font-size:clamp(54px,6.1vw,85px)}
 .intro-right--values .intro-lead{font-size:19px}
 .impact-number{font-size:clamp(67px,9vw,105px)}
}
@media(max-width:900px){
 .intro-layout--values{grid-template-columns:1fr;gap:64px;padding-top:86px;padding-bottom:94px}
 .statement--values{max-width:680px;font-size:clamp(68px,9.6vw,99px)}
 .intro-signature{margin-top:40px}
 .intro-right--values{max-width:720px}
 .intro-right--values .intro-lead{font-size:clamp(19px,3.3vw,23px)}
 .intro-right--values .intro-detail{font-size:16px}
 .impact-stats{gap:18px}
 .impact-stat+.impact-stat:before{left:-9px}
}
@media(max-width:650px){
 .intro-layout--values{padding-top:80px;padding-bottom:91px;gap:51px}
 .intro-layout--values .intro-left .kicker{font-size:10px;line-height:1.7;letter-spacing:.15em;margin-bottom:25px}
 .statement--values{font-size:clamp(51px,11.7vw,73px);letter-spacing:-.074em;line-height:1.07}
 .intro-signature{font-size:9px;letter-spacing:.13em;margin-top:35px}
 .intro-right--values .plus-mark{margin-bottom:24px}
 .intro-right--values .intro-lead{font-size:19px;line-height:1.61}
 .intro-right--values .intro-detail{font-size:15px;line-height:1.82;margin-bottom:29px}
 .intro-right--values .intro-closing{font-size:16px;line-height:1.69;padding-left:16px}
 .intro-right--values .underlined-link{margin-top:36px}
 .impact-block{padding-top:30px;padding-bottom:75px}
 .impact-heading{font-size:9px;gap:12px;letter-spacing:.14em}
 .impact-heading>span:last-child{display:none}
 .impact-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding-top:51px}
 .impact-stat+.impact-stat:before{left:-5px;top:10px}
 .impact-number{font-size:clamp(42px,11.8vw,70px);letter-spacing:-.087em;margin-bottom:10px}
 .impact-caption{font-size:11px;line-height:1.6;padding:0 2px}
}
@media(max-width:375px){.statement--values{font-size:clamp(44px,11.4vw,52px)}.impact-number{font-size:clamp(39px,11vw,47px)}.impact-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.impact-stat.reveal{opacity:1;transform:none}}


/* ===========================================================================
   INEVIA v35 — gentle photo fade-in on scroll (no jumping)
   Three Projects use ONE eager-loaded image per card (instead of layered,
   lazy-loaded images). On desktop the approved grayscale-to-color hover stays.
   Team portraits always retain their original colors.
   If JS/IntersectionObserver is unavailable, photographs stay visible.
   =========================================================================== */

/* Remove the legacy vertical slide/zoom animation from project cards. */
.projects-grid .project-card.reveal,
.projects-grid .project-card.reveal.visible,
.projects-grid .project-card:hover,
.projects-grid .project-card:focus-within {
  opacity:1;
  transform:none;
}
.projects-grid .project-card.reveal,
.projects-grid .project-card.reveal.visible {
  transition:border-color .45s ease, box-shadow .45s ease;
}
.project-visual {
  background:#11182a; /* no pale empty rectangle while images decode */
}
.projects-grid .project-img-single {
  opacity:1;
  filter:grayscale(1);
  transform:none;
  transition:filter .75s ease;
}
@media (hover:hover) and (pointer:fine) {
  .projects-grid .project-card:hover .project-img-single,
  .projects-grid .project-card:focus-visible .project-img-single {
    filter:grayscale(0);
    transform:none;
  }
}
/* No sticky :hover on Android/iOS. Color photographs instead. */
@media (hover:none), (pointer:coarse) {
  .projects-grid .project-img-single,
  .projects-grid .project-card:hover .project-img-single,
  .projects-grid .project-card:focus-within .project-img-single {
    filter:none;
    transform:none;
    opacity:1;
  }
}

/* Remove the old scale/slide keyframes from About us. */
.team-section .team-person.is-entered .team-portrait-wrap,
.team-section .team-person.is-entered .team-person-index,
.team-section .team-person.is-entered h3,
.team-section .team-person.is-entered .team-position,
.team-section .team-person.is-entered .team-specialty {
  animation:none !important;
}
.team-section .team-portrait-wrap,
.team-section .team-person:hover .team-portrait-wrap {
  transform:none !important;
}
.team-section .team-portrait {
  filter:none !important;
}

/* Fade only media, not content, position or the card layout. */
@media (prefers-reduced-motion:no-preference) {
  html.inevia-fade-ready .projects-grid .project-card .project-visual {
    opacity:0;
    transition:opacity 1.35s ease;
  }
  html.inevia-fade-ready .projects-grid .project-card.photo-visible .project-visual {
    opacity:1;
  }
  html.inevia-fade-ready .team-section .team-person .team-portrait-wrap {
    opacity:0 !important;
    transition:opacity 1.35s ease;
  }
  html.inevia-fade-ready .team-section .team-person.is-entered .team-portrait-wrap {
    opacity:1 !important;
  }
}
@media (prefers-reduced-motion:reduce) {
  .projects-grid .project-card .project-visual,
  .team-section .team-person .team-portrait-wrap {
    opacity:1 !important;
    animation:none !important;
    transition:none !important;
  }
}
