body{background:#081522;color:#eaf2fc}
.nav a[aria-current=page]{color:#51aaff;position:relative}.nav a[aria-current=page]::after{content:'';position:absolute;left:0;right:0;bottom:-28px;height:3px;background:#268eff}
.cases-hero{padding:91px 0 84px;background:radial-gradient(ellipse at 70% 20%,#103e7270,transparent 55%),linear-gradient(115deg,#081522,#071321)}
.cases-hero::before{opacity:.2}.cases-hero::after{height:1px;background:#23456680}.cases-hero h1{white-space:nowrap;font-size:clamp(40px,4.5vw,64px);line-height:1.24;font-weight:900;letter-spacing:-.06em;margin:24px 0 22px}.cases-hero h1 em{font-style:normal;background:linear-gradient(110deg,#a5d6ff,#48a0ff);background-clip:text;color:transparent}.cases-hero p{font-size:16px;margin:0;line-height:1.85}.cases-hero .eyebrow{letter-spacing:.05em;display:flex;align-items:center;gap:18px}.cases-hero .eyebrow::after{content:'';width:46px;height:1px;background:#549eff}
.cases-orbit{position:absolute;right:4%;top:0;width:500px;height:100%;pointer-events:none;opacity:.7}.cases-orbit span{position:absolute;top:-165px;left:70px;width:620px;height:620px;border:1px solid #359dff55;border-radius:50%;box-shadow:inset 9px 0 30px -25px #39a2ff, -6px 0 23px -20px #4ba6ff}.cases-orbit i{position:absolute;top:-100px;left:160px;width:550px;height:550px;border:1px solid #1c68a940;border-radius:50%;transform:rotate(-28deg)}.cases-orbit::after{content:'';position:absolute;height:1px;width:500px;top:57%;left:40px;background:linear-gradient(90deg,transparent,#207bd47a,transparent);transform:rotate(-45deg)}.cases-orbit b{position:absolute;right:60px;top:60%;color:#549ddb;font-size:12px;letter-spacing:.3em;font-weight:400}
.cases-section{padding:44px 0 92px}.cases-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.cases-heading h2{font-size:28px;letter-spacing:-.05em;margin:0;font-weight:800}.cases-heading p{font-size:12px;color:#99b1cb;margin:0}.cases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.case-card{margin:0;position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#112238;border:1px solid #ffffff1f;transition:border-color .35s,box-shadow .35s,transform .35s;outline:none}
.case-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s cubic-bezier(.2,.6,.3,1)}.case-card.hofmann img{object-position:center 32%}.case-card.logo{background:#fff}.case-card.logo img{object-fit:contain;padding:38px}.case-card.miele{background:#940016}.case-card.miele img{padding:0 24px}.case-card.raydel img{padding:26px}.case-card.titleist img{padding:20px 40px}
.case-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:27px 25px;background:linear-gradient(180deg,transparent 20%,#0715221a 45%,#040e1dec 100%);opacity:0;transition:opacity .35s}.case-overlay h3{font-size:20px;font-weight:800;letter-spacing:-.05em;line-height:1.45;margin:0;transform:translateY(12px);transition:transform .35s;color:#fff}.case-card:hover,.case-card:focus-visible{border-color:#459eff;box-shadow:0 0 0 1px #459eff,0 12px 35px #087ef524;transform:translateY(-3px)}.case-card:hover img,.case-card:focus-visible img{transform:scale(1.045)}.case-card:hover .case-overlay,.case-card:focus-visible .case-overlay{opacity:1}.case-card:hover h3,.case-card:focus-visible h3{transform:translateY(0)}
a.case-card{display:block;cursor:pointer}.case-blog{color:#80c8ff;font-size:12px;margin-top:9px}.case-arrow{position:absolute;right:22px;bottom:24px;width:39px;height:39px;border:1px solid #70bfff;border-radius:50%;display:grid;place-items:center;font-size:25px}.case-card.has-link h3{padding-right:44px}
.footer{border-top:1px solid #23456680;background:#071321}
@media(max-width:1000px){.cases-grid{gap:20px}.case-overlay{padding:20px}.case-overlay h3{font-size:17px}.cases-orbit{right:-170px;opacity:.4}}
@media(max-width:780px){.cases-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cases-heading{align-items:flex-start;flex-direction:column;gap:10px}.cases-hero{padding:65px 0}.cases-hero p{font-size:14px}.cases-orbit{opacity:.23}.cases-section{padding:32px 0 65px}.case-overlay h3{font-size:16px}}
@media(max-width:520px){.cases-grid{grid-template-columns:1fr;gap:22px}.cases-hero h1{font-size:clamp(28px,8.4vw,39px)}.cases-heading h2{font-size:24px}.case-overlay{opacity:1;padding:23px}.case-overlay h3{transform:none;font-size:20px}.cases-orbit b{display:none}.nav a[aria-current=page]::after{display:none}}
@media(hover:none){.case-overlay{opacity:1}.case-overlay h3{transform:none}}
@media(prefers-reduced-motion:reduce){.case-card,.case-card img,.case-overlay,.case-overlay h3{transition:none}.case-card:hover,.case-card:focus-visible,.case-card:hover img,.case-card:focus-visible img{transform:none}}
/* Atmospheric movement and a connected field graphic. */
.cases-hero{isolation:isolate;background:radial-gradient(ellipse at 75% 48%,#0e447559,transparent 57%),linear-gradient(110deg,#081522,#071321)}
.cases-hero .wrap{z-index:2}.cases-hero::before{opacity:.3;mask-image:linear-gradient(90deg,transparent 35%,#000)}
.cases-orbit{width:510px;right:5%;overflow:visible;opacity:.95;z-index:0}
.cases-orbit>span{width:440px;height:440px;left:50px;top:-35px;border-color:#369efe40;box-shadow:inset 8px 0 26px -20px #4eb2ff,0 0 40px -20px #137edc}
.cases-orbit>i{width:570px;height:570px;left:-15px;top:-100px;border-color:#3597eb20}
.cases-glow{position:absolute;inset:-60px -140px;background:radial-gradient(ellipse,#087dff38,transparent 65%);filter:blur(18px);animation:cases-breathe 9s ease-in-out infinite alternate}
.cases-path{position:absolute;width:300px;height:300px;left:122px;top:35px;border:1px solid #519eff38;border-radius:50%;transform:rotate(0deg);animation:cases-orbit-turn 42s linear infinite}
.cases-ring{position:absolute;border-radius:50%;border:1px solid #428ddd30;width:355px;height:355px;left:94px;top:7px}
.ring-one{border-top-color:#5bbdffb0;border-right-color:#5bbdff70;transform:rotate(0deg);animation:cases-orbit-turn 55s linear infinite}.ring-two{width:250px;height:250px;left:146px;top:60px;border-style:dashed;border-color:#42b0ff30;animation:cases-orbit-turn 70s linear infinite reverse}
.cases-node{position:absolute;width:17px;height:17px;border-radius:50%;background:#071c34;border:1px solid #7bcbff;box-shadow:0 0 0 6px #3399ff12,0 0 25px #22a5ff75}.cases-node::after{content:'';position:absolute;inset:5px;border-radius:50%;background:#bfe5ff;box-shadow:0 0 10px #a3ddff}.node-one{left:34px;top:27px}.node-two{right:-8px;top:144px}.node-three{left:60px;bottom:14px}
.cases-core{position:absolute;top:99px;left:99px;width:100px;height:100px;display:grid;place-items:center;border-radius:26px;background:linear-gradient(135deg,#2678bd26,#113e7133);border:1px solid #6ec3ff55;box-shadow:inset 0 0 30px #208eff15,0 0 55px #1484ff20;transform:rotate(0deg);animation:cases-core-turn 42s linear infinite}
.cases-core svg{width:76px;height:76px;stroke:#8bcfff;stroke-width:1.5;stroke-linejoin:round;filter:drop-shadow(0 0 6px #48a3ff)}
.cases-star{position:absolute;width:4px;height:4px;background:#98d9ff;border-radius:50%;box-shadow:0 0 14px #59afff;animation:cases-twinkle 5s ease-in-out infinite alternate}.star-one{left:42px;top:100px}.star-two{right:28px;top:75px;animation-delay:-2s}.star-three{right:48px;bottom:44px;animation-delay:-4s}
.cases-hero h1{animation:cases-heading-enter .8s ease-out both}.cases-hero h1 em{background-size:200% 100%;background-image:linear-gradient(100deg,#aad9ff 5%,#5cabff 35%,#b9e5ff 65%,#5cabff 95%);animation:cases-title-light 12s ease-in-out infinite alternate}.cases-hero .eyebrow,.cases-hero p{animation:cases-heading-enter 1s ease-out both}
@keyframes cases-orbit-turn{to{transform:rotate(360deg)}}
@keyframes cases-core-turn{to{transform:rotate(-360deg)}}
@keyframes cases-breathe{from{opacity:.6;transform:translate(-14px,5px) scale(.9)}to{opacity:1;transform:translate(18px,-10px) scale(1.1)}}
@keyframes cases-twinkle{from{opacity:.3;transform:scale(.7)}to{opacity:.9;transform:scale(1.3)}}
@keyframes cases-title-light{from{background-position:0% 50%}to{background-position:100% 50%}}
@keyframes cases-heading-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.cases-orbit{right:-120px;opacity:.7}}
@media(max-width:780px){.cases-orbit{right:-210px;opacity:.35}.cases-core{opacity:.7}}
@media(max-width:520px){.cases-orbit{right:-340px;opacity:.25}.cases-glow{opacity:.5}.cases-hero .wrap{position:relative}}
@media(prefers-reduced-motion:reduce){.cases-hero h1,.cases-hero h1 em,.cases-hero .eyebrow,.cases-hero p,.cases-glow,.cases-path,.cases-core,.cases-ring,.cases-star{animation:none!important}}
