/* Phase 1 visual refinement: motion is confined to transforms and opacity. */
.hero{isolation:isolate;background:linear-gradient(128deg,#fcfdff 2%,#f7f9fe 60%,#eef2fd);}
.hero:before{z-index:0;opacity:.8;mask-image:linear-gradient(90deg,transparent 5%,black 50%,transparent 100%);}
.hero--glow:before,.hero--plain:before{display:none;}
.hero--plain{background:#f8faff;}
.hero--violet{--hero-glow:rgba(149,130,243,.18);--hero-line:rgba(118,106,195,.17);}
.hero--calm{--hero-glow:rgba(102,148,236,.17);--hero-line:rgba(89,125,209,.16);}
.hero--minimal{--hero-glow:rgba(111,150,216,.09);--hero-line:rgba(100,132,190,.10);}
.hero-atmosphere{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;}
.hero-glow{position:absolute;width:45vw;max-width:660px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--hero-glow),transparent 67%);will-change:transform;}
.hero-glow-one{right:-8%;top:-35%;}.hero-glow-two{left:18%;bottom:-75%;opacity:.65;}
.hero-network{position:absolute;inset:0;width:100%;height:100%;opacity:.7;}
.hero-network path{fill:none;stroke:var(--hero-line);stroke-width:1;stroke-dasharray:5 9;}
.hero-network circle{fill:#90a9e9;opacity:.5;}
.hero-data-dot{position:absolute;width:5px;height:5px;border-radius:50%;background:#8ea9ed;opacity:.35;}
.data-dot-one{left:17%;top:33%;}.data-dot-two{left:62%;top:18%;}.data-dot-three{left:79%;bottom:23%;}
.hero-sweep{position:absolute;inset:-20% auto -20% 10%;width:22%;transform:rotate(18deg) translateX(-130%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);opacity:0;}
.hero--animated .hero-glow-one{animation:hero-drift 24s ease-in-out infinite alternate;}
.hero--animated .hero-glow-two{animation:hero-drift 30s ease-in-out infinite alternate-reverse;}
.hero--animated .hero-network circle{animation:hero-pulse 8s ease-in-out infinite;}
.hero--animated .hero-network circle:nth-of-type(2n){animation-delay:-4s;}
.hero--animated .hero-data-dot{animation:hero-dot 12s ease-in-out infinite alternate;}
.hero--animated .data-dot-two{animation-delay:-5s;}.hero--animated .data-dot-three{animation-delay:-9s;}
.hero--animated .hero-sweep{animation:hero-sweep 20s ease-in-out infinite;}
@keyframes hero-drift{to{transform:translate3d(4%,3%,0);}}
@keyframes hero-pulse{50%{opacity:.95;}}
@keyframes hero-dot{to{transform:translate3d(14px,-20px,0);opacity:.65;}}
@keyframes hero-sweep{8%{opacity:.28;}35%{opacity:0;transform:rotate(18deg) translateX(700%);}100%{opacity:0;transform:rotate(18deg) translateX(700%);}}
.hero-grid{z-index:1;gap:clamp(34px,5vw,76px);padding-block:94px;}
.hero-copy{position:relative;z-index:1;}
.hero-copy h1{letter-spacing:-.057em;}
.hero-copy .button{min-height:55px;box-shadow:0 8px 20px rgba(54,92,228,.17),inset 0 1px rgba(255,255,255,.24);}
.hero-copy .button-light{box-shadow:0 6px 18px rgba(36,60,122,.06),inset 0 1px #fff;}
.hero-copy .button:hover{box-shadow:0 11px 22px rgba(54,92,228,.22);}
.hero-copy .button-light:hover{box-shadow:0 9px 22px rgba(36,60,122,.10);}
.hero-copy .button span{display:inline-block;transition:transform .2s ease;}
.hero-copy .button:hover span{transform:translate(2px,-2px);}
.hero-visual{isolation:isolate;box-shadow:0 28px 70px rgba(39,66,135,.12),0 3px 12px rgba(39,66,135,.04),inset 0 0 45px rgba(124,155,255,.08);}
.hero-visual:before{content:"";position:absolute;inset:15%;border-radius:50%;background:radial-gradient(circle,rgba(105,139,238,.14),transparent 70%);z-index:-1;}
.hero-visual .visual-orbit{transition:border-color .3s;}
.hero-visual.is-motion .orbit-one{animation:orbit-breathe 15s ease-in-out infinite alternate;}
.hero-visual.is-motion .orbit-two{animation:orbit-breathe 20s ease-in-out infinite alternate-reverse;}
.hero-visual.is-motion .core-ring{animation:core-orbit 36s linear infinite;}
.hero-visual.is-motion .core-center{animation:center-pulse 5s ease-in-out infinite;}
.hero-visual.is-motion .visual-node{animation:hero-pulse 6s ease-in-out infinite;}
.hero-visual.is-motion .node-two{animation-delay:-2s;}.hero-visual.is-motion .node-three{animation-delay:-4s;}
.hero-visual.is-motion .visual-label{animation:badge-lift 8s ease-in-out infinite alternate;}
.hero-visual.is-motion .label-bottom{animation-delay:-4s;}
@keyframes orbit-breathe{to{transform:translate(-50%,-50%) scale(1.035);opacity:.65;}}
@keyframes core-orbit{to{transform:rotate(360deg);}}
@keyframes center-pulse{50%{transform:scale(1.13);box-shadow:0 0 0 14px rgba(72,105,228,.07);}}
@keyframes badge-lift{to{transform:translateY(-4px);}}
.intro-strip{background:linear-gradient(180deg,#fff,#fbfcff);}
.section-heading h2{line-height:1.14;}
.research-card,.category-card,.measurement-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;}
.measurement-card:hover,.category-card:hover{border-color:#bdcafa;box-shadow:0 12px 24px rgba(36,60,122,.06);transform:translateY(-2px);}
.simulator-tease,.process-section{background:linear-gradient(135deg,#f8faff,#f3f6fd);}
.tease-visual{box-shadow:0 20px 42px rgba(49,73,137,.07);}
.tease-visual:after{content:"";position:absolute;inset:13%;border:1px dashed rgba(89,119,204,.35);border-radius:50%;}
.documentation-card,.diagnostic-panel{box-shadow:0 14px 32px rgba(39,64,121,.04);}
.research-page-hero{padding:75px 0 58px;background:radial-gradient(circle at 88% 20%,#e7edff,transparent 38%),linear-gradient(140deg,#fbfcff,#f3f6fd);}
.research-page-hero h1{font-size:clamp(2.6rem,4vw,4.3rem);max-width:820px;}
.research-archive-section{padding-top:65px;}
.category-pills{margin-bottom:31px;}
.category-pills a{transition:color .2s,border-color .2s,background .2s;}
.category-pills .is-current{color:#3157d5;border-color:#a9baf0;background:#f3f6ff;}
.archive-grid{align-items:stretch;}
.research-lab-card{display:flex;flex-direction:column;border-color:#cbd6f4;background:linear-gradient(155deg,#f6f8ff,#fff 80%);}
.research-lab-art{position:relative;display:block;height:205px;overflow:hidden;background:radial-gradient(circle at 50% 52%,#dce6ff,#edf2ff 42%,#f8faff 85%);border-bottom:1px solid #dfe7fa;}
.research-lab-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(99,128,204,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(99,128,204,.07) 1px,transparent 1px);background-size:34px 34px;}
.lab-orbit{position:absolute;left:50%;top:50%;width:135px;height:135px;border:1px solid #aebfeb;border-radius:50%;transform:translate(-50%,-50%);}
.lab-orbit-two{width:255px;height:255px;border-style:dashed;opacity:.8;}
.lab-core{position:absolute;display:grid;place-items:center;left:50%;top:50%;width:62px;height:62px;border:1px solid #9fb5ee;border-radius:18px;transform:translate(-50%,-50%);background:#fff;color:#4163d7;font-weight:850;box-shadow:0 9px 24px rgba(68,96,174,.14);}
.lab-node{position:absolute;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#607ee4;box-shadow:0 0 0 2px #afc0ee;}
.lab-node-one{left:28%;top:35%;}.lab-node-two{right:24%;top:29%;}.lab-node-three{right:32%;bottom:20%;}
.research-lab-card .research-card-body{display:flex;flex:1;flex-direction:column;}
.research-lab-card .research-card-body p{min-height:0;}
.research-lab-card .text-link{margin-top:auto;padding-top:22px;}
.research-topics-section{border-top:1px solid var(--line);background:#f8faff;}
.research-topics-section .section-heading{margin-bottom:26px;}
.topic-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;}
.topic-chips a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid #dfe6f2;border-radius:11px;background:#fff;font-size:.88rem;font-weight:700;transition:border-color .2s,transform .2s,box-shadow .2s;}
.topic-chips a span{color:#6680dc;}
.topic-chips a:hover{border-color:#aebfee;transform:translateY(-2px);box-shadow:0 10px 22px rgba(40,62,117,.07);}
.simulator-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 25%,#e5ecff,transparent 40%),linear-gradient(145deg,#fbfcff,#f1f5fe);}
.simulator-hero:after{content:"";position:absolute;right:-5%;top:0;width:43%;height:100%;background-image:linear-gradient(rgba(104,133,208,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(104,133,208,.07) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle,black,transparent 75%);pointer-events:none;}
.simulator-hero .container{position:relative;z-index:1;}
.measurement-card{position:relative;overflow:hidden;min-height:154px;box-shadow:0 5px 16px rgba(34,53,95,.025);}
.measurement-card:after{content:"";position:absolute;right:-15px;top:-15px;width:80px;height:80px;border:1px solid #e1e8fa;border-radius:50%;}
.process-step{padding-inline:15px;border-top-color:#8ca4ee;}
.prose,.article-content{overflow-wrap:anywhere;}
@media(max-width:900px){.hero-grid{padding-block:75px;}.topic-chips{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.hero-grid{padding-block:65px;}.hero-atmosphere{opacity:.55;}.hero-network{display:none;}.hero-visual{max-width:460px;}.research-page-hero{padding:65px 0 52px;}.research-archive-section{padding-top:48px;}.topic-chips{grid-template-columns:1fr;}.research-lab-card .research-card-body{min-height:220px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.hero--animated .hero-glow,.hero--animated .hero-network circle,.hero--animated .hero-data-dot,.hero--animated .hero-sweep,.hero-visual.is-motion .visual-orbit,.hero-visual.is-motion .core-ring,.hero-visual.is-motion .core-center,.hero-visual.is-motion .visual-node,.hero-visual.is-motion .visual-label{animation:none!important;}.button,.button span,.research-card,.category-card,.measurement-card,.topic-chips a{transition:none!important;}}
