/* Photorealistic ICU welcome. The retained case is unchanged. */
[hidden]{display:none!important}.opening{--opening-navy:#173c39;min-height:100svh;background:#f4f3ec;color:var(--opening-navy);padding:28px clamp(22px,5vw,88px) 19px;display:flex;flex-direction:column;position:relative;isolation:isolate}.opening-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #bdc8bd;padding-bottom:18px;font-size:9px;font-weight:700;letter-spacing:.15em}.opening-brand{display:flex;align-items:center;gap:12px}.opening-brand svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.4;fill:none}.opening-number{font-family:Georgia,serif;font-size:21px;font-weight:400;letter-spacing:0}.opening-layout{max-width:1380px;width:100%;margin:auto;display:grid;grid-template-columns:.72fr 1.6fr;gap:32px;align-items:center;padding:40px 0}.opening-copy{padding:8px 0 15px}.opening-presenter{font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.035em;margin:0 0 14px;color:#31594d;white-space:nowrap}.opening-presenter span{font-size:12px;font-weight:400;font-style:italic;letter-spacing:0}.opening-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(32px,3.5vw,52px);line-height:1.1;font-weight:400;letter-spacing:-.04em;margin:0 0 12px;max-width:390px;outline:none}.opening-copy h1 em{color:#477568;font-family:inherit;font-style:italic;font-weight:400}.opening-subtitle{font-size:clamp(12px,1.05vw,15px);line-height:1.5;letter-spacing:.025em;margin:0 0 18px;max-width:390px}.opening-description{font-size:clamp(12px,1.05vw,15px);line-height:1.65;color:#536c5f;max-width:360px;margin:0}
.opening-puzzle{--pump-x:83.5%;--pump-y:53%;width:100%;max-width:830px;justify-self:center;position:relative;overflow:hidden;border-radius:2px;box-shadow:0 15px 36px #243d301b;background:#dddcd2;isolation:isolate}.entrance-photo{display:block;width:100%;height:auto;pointer-events:none;user-select:none}.dispenser-button{position:absolute;left:var(--pump-x);top:var(--pump-y);transform:translate(-50%,-50%);width:8%;height:17%;min-width:44px;min-height:44px;background:transparent;padding:0;border:0;border-radius:4px;touch-action:manipulation;z-index:3}.dispenser-button:focus-visible{outline:3px solid #f7f2d7!important;outline-offset:2px;box-shadow:0 0 0 5px #1e4a42b3}.dispenser-button:active,.dispenser-button.is-pumping{background:linear-gradient(transparent 55%,#e8f7ed13)}
.next-reveal{position:absolute;left:clamp(66px,var(--pump-x),calc(100% - 66px));bottom:5%;transform:translateX(-50%);width:132px;height:46px;z-index:4;background:transparent;pointer-events:none}.next-reveal button{display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;height:100%;padding:0 13px;border:1px solid #f9f5e4a3;border-radius:4px;background:#f7f4e7e6;color:#254b3e;font-size:12px;font-weight:600;box-shadow:0 4px 15px #193b3520;opacity:0;clip-path:polygon(0 0,100% 0,100% 0,0 0);transition:clip-path .85s cubic-bezier(.2,.65,.2,1),opacity .4s;pointer-events:none}.next-reveal button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.next-reveal[data-pumps="1"] button{opacity:.65;clip-path:polygon(0 0,100% 0,100% 14%,84% 21%,69% 15%,55% 19%,46% 28%,33% 10%,18% 18%,0 13%)}.next-reveal[data-pumps="2"] button{opacity:.8;clip-path:polygon(0 0,100% 0,100% 39%,84% 47%,69% 39%,55% 46%,46% 55%,33% 34%,18% 45%,0 38%)}.next-reveal[data-pumps="3"] button{opacity:.9;clip-path:polygon(0 0,100% 0,100% 67%,84% 76%,69% 67%,55% 75%,46% 84%,33% 64%,18% 75%,0 67%)}.next-reveal[data-pumps="4"] button{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);pointer-events:auto}.next-reveal[data-pumps="4"]{pointer-events:auto}.next-reveal button:hover:not(:disabled){background:#fffdf1}.next-reveal:focus-within{outline:3px solid #f7f2d7;outline-offset:3px}.next-reveal button:focus-visible{outline:2px solid #214d40;outline-offset:-4px}
.rinse-stream{position:absolute;left:81.65%;top:47.35%;width:6px;height:32%;pointer-events:none;z-index:2;opacity:0;background:linear-gradient(90deg,#dcfff300,#a4d7caa3,#f2fff9cd,#b7e4dc00);border-radius:40% 40% 20% 25%;transform-origin:top}.rinse-stream i{position:absolute;width:3px;height:7px;top:70%;left:2px;background:#a6c8bda0;border-radius:50% 50% 45% 45%}.rinse-stream i:nth-child(2){left:-8px;top:78%}.rinse-stream i:nth-child(3){left:12px;top:82%}.is-rinsing .rinse-stream{animation:rinse-flow .8s ease-out both}.is-rinsing .rinse-stream i{animation:rinse-drop .75s ease-in both}.is-rinsing .rinse-stream i:nth-child(2){animation-delay:.06s}.is-rinsing .rinse-stream i:nth-child(3){animation-delay:.1s}.rinse-ripple{position:absolute;width:12px;height:3px;background:#ecfff3bc;left:50%;top:0;opacity:0;border-radius:50%;pointer-events:none}.is-rinsing .rinse-ripple{animation:rinse-ripple .8s ease-out both}@keyframes rinse-flow{0%{opacity:0;transform:scaleY(.05)}20%{opacity:.85;transform:scaleY(1)}75%{opacity:.5}100%{opacity:0;transform:scaleY(1)}}@keyframes rinse-drop{0%{opacity:0;transform:translateY(-10px)}30%{opacity:.9}100%{opacity:0;transform:translateY(25px)}}@keyframes rinse-ripple{0%{opacity:0;transform:scaleX(.2)}30%{opacity:1}100%{opacity:0;transform:scaleX(11)}}
.opening-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.opening-foot{margin-top:auto;border-top:1px solid #becbc0;padding-top:15px;color:#5a6d60;font-size:9px;line-height:1.5}.opening-foot p{margin:0}
@media(max-width:740px){.opening{padding:15px 22px 14px}.opening-topline{font-size:8px;letter-spacing:.08em;padding-bottom:10px}.opening-brand{gap:9px}.opening-brand svg{width:18px;height:18px}.opening-number{font-size:18px}.opening-layout{display:flex;flex-direction:column;gap:23px;margin:0 auto;padding:13px 0 24px}.opening-copy{width:100%;padding:0}.opening-presenter{font-size:12px;padding-right:50px}.opening-presenter span{font-size:11px}.opening-copy h1{font-size:clamp(29px,7.8vw,40px);margin-bottom:9px;line-height:1.1;max-width:410px}.opening-subtitle{font-size:12px;line-height:1.45;margin-bottom:14px}.opening-description{font-size:12px;line-height:1.6;max-width:410px}.opening-puzzle{width:100%;max-width:570px}.opening-foot{font-size:8px;padding-top:12px}.header-end{flex-wrap:wrap;justify-content:flex-end;gap:5px 12px}.rinse-stream{width:4px}.next-reveal{width:122px;height:44px;left:clamp(61px,var(--pump-x),calc(100% - 64px))}.next-reveal button{font-size:11px;padding:0 10px}}
@media(max-width:370px){.opening{padding-left:19px;padding-right:19px}.opening-layout{padding-top:13px;padding-bottom:17px;gap:18px}.opening-copy h1{font-size:29px;margin-bottom:9px}.opening-subtitle{font-size:12px;margin-bottom:12px}.opening-description{font-size:12px;line-height:1.6}.opening-foot{padding-top:10px}}
@media(prefers-reduced-motion:reduce){.opening *, .opening *::before,.opening *::after{animation:none!important;transition:none!important}}
/* Keep the discovery scene's cursor constant; keyboard focus stays visible. */
.opening-puzzle,#opening-pump,#opening-pump:hover{cursor:default}
