.approach-media{overflow:hidden;isolation:isolate}
.approach-media img{animation:approachPan 18s ease-in-out infinite alternate;will-change:transform}
.approach-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 20%,rgba(104,224,255,.22) 48%,transparent 58%);background-size:220% 100%;animation:lightpass 8s linear infinite;mix-blend-mode:screen}
.division-page{background:radial-gradient(circle at 75% 20%,rgba(42,129,203,.28),transparent 30%),var(--night)}
.division-hero{min-height:70vh;padding:180px 0 120px;display:flex;flex-direction:column;justify-content:center}
.division-hero h1{max-width:980px}.division-hero .hero-intro{max-width:620px;margin:38px 0 42px}
.division-detail{padding:110px 0 170px;border-top:1px solid var(--line)}.division-detail h2{max-width:850px;margin:28px 0 55px}
.service{text-decoration:none;color:inherit;display:block}.service:hover{transform:translateY(-8px);border-color:rgba(97,224,245,.8);box-shadow:0 24px 60px rgba(0,0,0,.24),0 0 28px rgba(44,176,230,.16)}
@keyframes approachPan{0%{transform:scale(1.06) translate3d(-1.5%,0,0)}100%{transform:scale(1.12) translate3d(2.5%,-1.5%,0)}}
@media (prefers-reduced-motion:reduce){.approach-media img,.approach-media:after{animation:none}}
.case-hero{min-height:76vh;padding:170px 0 110px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 80% 28%,rgba(66,180,229,.2),transparent 28%)}
.case-hero .globe-motion{display:none}
.case-hero-media{isolation:isolate;background:#081b2a;overflow:hidden}
.case-hero-media:before{content:"";position:absolute;inset:-20%;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 16% 48%,rgba(40,175,255,.38),transparent 22%),radial-gradient(ellipse at 78% 36%,rgba(39,132,255,.3),transparent 24%),linear-gradient(112deg,transparent 30%,rgba(121,236,255,.2) 48%,transparent 58%);background-size:100% 100%,100% 100%,260% 100%;animation:caseSpotlight 11s ease-in-out infinite alternate,lightpass 13s linear infinite;mix-blend-mode:screen}
.case-hero-media:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(4,19,32,.97) 0%,rgba(5,26,43,.79) 34%,rgba(4,22,39,.2) 64%,rgba(4,18,31,.58) 100%),linear-gradient(0deg,rgba(3,16,29,.52),transparent 45%,rgba(75,194,255,.12));}
.case-hero-media .hero-media{inset:-9%;transform:translateZ(0);animation:caseImageDrift 18s ease-in-out infinite alternate}
.case-hero-media .hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 25%,rgba(101,230,255,.22) 49%,transparent 57%);background-size:230% 100%;animation:lightpass 9s linear infinite;mix-blend-mode:screen}
.case-hero-media .hero-media img{filter:saturate(.82) contrast(1.16) brightness(.72);}
.case-hero-media .hero-content{filter:drop-shadow(0 12px 35px rgba(0,0,0,.34))}
.case-hero-media .hero-actions .button{box-shadow:0 0 0 1px rgba(100,220,255,.12),0 0 38px rgba(29,180,255,.22),0 14px 34px rgba(0,0,0,.3)}
.case-opportunities{overflow:hidden}
.case-opportunities .services-grid:after{content:"";position:absolute;top:-80%;bottom:-80%;left:34%;width:1px;background:linear-gradient(transparent,rgba(108,231,255,.7),transparent);box-shadow:0 0 28px 6px rgba(82,215,255,.18);transform:rotate(24deg);animation:caseBeam 8s ease-in-out infinite;pointer-events:none}
.case-opportunities .service{position:relative;overflow:hidden;transform-style:preserve-3d}
.case-opportunities .service:before{content:"";position:absolute;inset:-80% 35% auto -35%;height:160%;background:linear-gradient(105deg,transparent 44%,rgba(133,239,255,.18) 50%,transparent 56%);transform:rotate(18deg);animation:caseCardLight 8s linear infinite;pointer-events:none}
.case-opportunities .service:hover{transform:perspective(700px) rotateX(2deg) rotateY(-2deg) translateY(-10px);box-shadow:0 30px 70px rgba(0,0,0,.34),0 0 35px rgba(45,190,255,.22)}
.case-opportunities .service h3,.case-opportunities .service p,.case-opportunities .service span{position:relative;z-index:1}
.portfolio-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-left:1px solid var(--line);box-shadow:0 40px 100px rgba(0,0,0,.22)}
.portfolio-grid .service{min-height:290px}.portfolio-grid small{display:block;position:relative;z-index:1;margin-top:26px;color:var(--cyan);font:500 .63rem 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase}
.case-next{position:relative;overflow:hidden}
.case-next:after{content:"";position:absolute;width:620px;height:620px;right:-290px;bottom:-390px;border:1px solid rgba(100,224,255,.3);border-radius:50%;box-shadow:0 0 0 48px rgba(77,205,255,.07),0 0 0 96px rgba(77,205,255,.04);animation:casePulse 7s ease-in-out infinite}
@keyframes caseSpotlight{0%{transform:translate3d(-3%,1%,0) rotate(-2deg);opacity:.65}100%{transform:translate3d(4%,-2%,0) rotate(3deg);opacity:1}}
@keyframes caseImageDrift{0%{transform:scale(1.04) translate3d(-1%,0,0)}100%{transform:scale(1.11) translate3d(2%,-1%,0)}}
@keyframes caseBeam{0%,100%{transform:translateX(-90px) rotate(24deg);opacity:0}40%,70%{opacity:1}50%{transform:translateX(420px) rotate(24deg)}}
@keyframes caseCardLight{0%{transform:translateX(-40%) rotate(18deg);opacity:0}20%,75%{opacity:1}100%{transform:translateX(260%) rotate(18deg);opacity:0}}
@keyframes casePulse{50%{transform:scale(1.08);opacity:.72}}
@media (prefers-reduced-motion:reduce){.case-hero-media:before,.case-hero-media .hero-media,.case-hero-media .hero-media:after,.case-opportunities .services-grid:after,.case-opportunities .service:before,.case-next:after{animation:none}}
@media (max-width:800px){.portfolio-grid{grid-template-columns:1fr}.portfolio-grid .service{min-height:230px}}
.case-home-link{margin:32px 0 0}
.case-kicker{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:80px;color:var(--muted);font:500 .68rem/1.2 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.1em}.case-hero h1{max-width:1000px}.case-hero .hero-intro{max-width:700px;margin:36px 0 30px}.case-status{color:var(--cyan);font:500 .68rem/1.3 "DM Mono",monospace;letter-spacing:.12em}.case-status span{margin:0 10px;color:var(--muted)}
.case-signal{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;padding:135px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-signal p:last-child{align-self:end;color:var(--muted);font-size:1.1rem;line-height:1.7}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin-top:100px}.case-card{padding:54px 46px;min-height:390px;background:linear-gradient(145deg,rgba(24,76,111,.72),rgba(8,30,48,.95));position:relative}.case-number{font:500 3rem/1 "DM Mono",monospace;color:var(--cyan)}.case-card h3{font-size:2.2rem;max-width:370px;margin:26px 0 20px}.case-card p:not(.eyebrow){color:var(--muted);line-height:1.65}.case-card strong{display:block;margin-top:35px;color:var(--ink);font-size:.82rem}
.case-architecture{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;padding:150px 0}.case-architecture ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.case-architecture li{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.case-architecture b{color:var(--cyan)}.case-architecture span{color:var(--muted)}
.case-guardrails{padding:90px 0 150px}.guardrail-list{margin-top:45px;border-top:1px solid var(--line)}.guardrail-list div{display:grid;grid-template-columns:.8fr 1.2fr;padding:22px 0;border-bottom:1px solid var(--line)}.guardrail-list span{color:var(--muted)}.case-next{padding:145px 0 180px;border-top:1px solid var(--line)}.case-next p{max-width:630px;color:var(--muted);font-size:1.1rem;line-height:1.7;margin:30px 0 40px}
@media (max-width:800px){.case-hero{padding-top:140px}.case-kicker{display:block;margin-bottom:50px}.case-kicker span{display:block;margin-bottom:10px}.case-signal,.case-grid,.case-architecture{display:block}.case-signal{padding:90px 0}.case-signal p:last-child{margin-top:35px}.case-grid{margin-top:60px;background:none}.case-card{margin-bottom:1px;padding:38px 28px;min-height:0}.case-architecture{padding:95px 0}.case-architecture ol{margin-top:55px}.case-architecture li{grid-template-columns:110px 1fr}.guardrail-list div{display:block}.guardrail-list span{display:block;margin-top:8px}.case-next{padding:100px 0 130px}}
