.em main{position:relative;z-index:1}
.flood{position:fixed;inset:auto 0 0 0;height:calc(var(--lvl,.18) * 100vh);z-index:0;pointer-events:none;
  background:linear-gradient(180deg,rgb(15 181 174 / .42),rgb(4 60 66 / .7));transition:height 1.2s cubic-bezier(.2,.8,.2,1)}
.wave{position:absolute;left:-50%;right:-50%;top:-22px;height:44px;
  background:radial-gradient(40px 22px at 50% 100%,rgb(15 181 174 / .42) 98%,transparent) 0 0/80px 44px repeat-x;animation:wave 3.2s linear infinite}
@keyframes wave{to{transform:translateX(80px)}}
.em-hero{padding:calc(16vh + 40px) var(--gut) 8vh;max-width:1200px}
.em-hero h1{font-size:clamp(2.6rem,6.4vw,6.6rem);line-height:.95;letter-spacing:-.05em;font-weight:600;mix-blend-mode:normal;color:var(--foam)}
.em-hero h1 em{font-weight:200}
.steps{list-style:none;margin:0;padding:0 var(--gut)}
.step{display:grid;grid-template-columns:1fr minmax(0,26rem);gap:clamp(24px,6vw,100px);align-items:center;padding:10vh 0;border-top:1px solid var(--line)}
.n{display:inline-grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:50%;border:1px solid var(--copper);color:var(--copper-2);font:500 1.2rem/1 var(--disp);margin-bottom:1.4rem}
.step h2{font-size:clamp(2rem,4.2vw,3.8rem);line-height:1}
.step p{color:var(--ink-2);max-width:34rem}
.step strong{color:var(--aqua)}
.try{font-size:.9rem;color:var(--copper-2)!important}
.valve-wrap{display:grid;place-items:center}
.valve{width:min(100%,320px);text-align:center;cursor:grab;touch-action:none;border-radius:24px;padding:1rem;outline-offset:6px}
.valve:active{cursor:grabbing}
.valve svg{width:100%;filter:drop-shadow(0 30px 40px rgb(0 0 0 / .45))}
.handle{transform-origin:120px 120px}
.state{font:600 .8rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--copper-2);margin-top:1rem}
.valve.closed .state{color:var(--aqua)}
.icon svg{width:min(100%,220px);display:block;margin:auto;fill:none;stroke:var(--aqua);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.icon .flame,.icon .drip,.icon .bolt{stroke:var(--copper)}
.em-call{padding:14vh var(--gut);text-align:center}
.em-call .big-tel{margin:2rem auto 1.4rem}
.em-call p{color:var(--ink-2);max-width:34rem;margin-inline:auto}
@media (max-width:900px){ .step{grid-template-columns:1fr} }
@media (prefers-reduced-motion:reduce){ .wave{animation:none} .flood{transition:none} }
