:root{--navy:#092d70;--red:#e1243e;--soft:#b9c8df;--line:#e54e5b;color:var(--navy);font-family:"Times New Roman",Times,serif;font-synthesis:none;background:var(--navy)}*{box-sizing:border-box}body{margin:0;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}button,input,a{touch-action:manipulation}button,a,input{outline-offset:6px}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.4}button{border:0;background:none}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--navy)}[hidden]{display:none!important}.frame{position:relative;margin:clamp(7px,1.25vw,17px);background:#fff;min-height:calc(100svh - clamp(14px,2.5vw,34px));height:calc(100dvh - clamp(14px,2.5vw,34px));overflow:hidden}.brand-header{height:23%;max-height:170px;display:flex;justify-content:center;align-items:flex-start;gap:3%;padding:2.2% 3% 0;position:relative;z-index:2}.logo{width:15%;height:95%;object-fit:contain;object-position:top;flex-shrink:0}.brand-line{display:flex;align-items:center;gap:5%;white-space:nowrap;flex:1;font-size:clamp(9px,1.15vw,18px);margin-top:1.5%;letter-spacing:.02em}.brand-line:after{content:"";height:1px;flex:1;background:var(--line)}.brand-line.right:before{content:"";height:1px;flex:1;background:var(--line)}.brand-line.right:after{display:none}.strapline{text-align:center;font-size:clamp(10px,1.15vw,18px);letter-spacing:.025em;position:absolute;top:24%;width:100%;z-index:2}#experience{position:absolute;inset:0}.menu-screen{position:absolute;inset:29% 3% 6%}.menu-cards{position:absolute;inset:0 0 5%}.menu-cards:after{content:"";position:absolute;left:50%;top:3%;height:94%;background:var(--line);width:1px;opacity:.7;transition:opacity .4s}.cocktail{position:absolute;top:0;width:48%;height:100%;padding:0;transition:transform .75s cubic-bezier(.22,.7,.2,1),opacity .4s ease;isolation:isolate}.skinny{left:0}.jacket{left:52%}.cocktail img{width:100%;height:90%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none}.select-hint{display:flex;justify-content:center;gap:22px;align-items:center;font-size:clamp(10px,.9vw,14px);letter-spacing:.12em;height:8%;opacity:.65;transition:opacity .2s}.cocktail:hover .select-hint{opacity:1}.cocktail:after{content:"";position:absolute;inset:5% -20% 12%;background:linear-gradient(110deg,transparent 40%,#fff9 49%,transparent 58%);transform:translateX(-150%);animation:sheen 9s ease-in-out infinite;pointer-events:none}.jacket:after{animation-delay:1.2s}.menu-cards.selected:after{opacity:0}.selected .cocktail{pointer-events:none}.selected .cocktail:not(.chosen){opacity:0;transform:scale(.97)}.selected .jacket.chosen{transform:translateX(-108.3333%)}.selected .select-hint{opacity:0}.selected .cocktail:after{display:none}.quantity-panel{position:absolute;left:53%;width:44%;top:14%;height:75%;display:flex;flex-direction:column;justify-content:center;align-items:center;animation:panel-in .65s both .2s}.eyebrow{font-size:clamp(10px,1.1vw,15px);letter-spacing:.18em;margin:0 0 6%;font-weight:400}.stepper{display:flex;width:100%;justify-content:center;align-items:center;gap:9%}.round{border:1px solid #9baeca;border-radius:50%;height:clamp(44px,5vw,70px);width:clamp(44px,5vw,70px);font-size:clamp(28px,3vw,44px);display:grid;place-items:center;line-height:1;flex-shrink:0}.round:active{background:#edf2fa}.stepper output{font-size:clamp(70px,10vw,148px);font-variant-numeric:tabular-nums;line-height:1;min-width:1.3em;text-align:center}.glasses{font-size:clamp(10px,1.1vw,16px);letter-spacing:.2em;margin:4% 0 8%}.primary{background:var(--navy);color:#fff;border:1px solid var(--navy);min-height:50px;padding:15px 28px;font-size:clamp(17px,1.7vw,25px);letter-spacing:.015em;min-width:65%;transition:background .2s}.primary:hover{background:#174387}.primary:focus-visible{outline-offset:3px}.text-button{margin-top:5%;font-size:clamp(12px,1.05vw,16px);padding:10px;opacity:.7}.toolbar{display:flex;align-items:center;justify-content:space-between;position:absolute;bottom:.5%;left:2%;right:2%;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.12em;z-index:4;opacity:.55;gap:12px;height:34px}.toolbar:hover{opacity:.95}.connection{display:flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.06em;padding:8px 0;min-height:32px}.connection i{width:5px;height:5px;border-radius:50%;background:#b27e29}.connection.online i{background:#3f795e}.connection.offline{color:#a42335}.tools{display:flex;align-items:center;gap:12px}.tools button{min-height:32px;padding:4px;font-family:Arial,sans-serif;font-size:10px}.tools #fullscreen,.tools #settings{font-size:19px}.countdown{position:absolute;inset:28% 5% 8%;display:flex;flex-direction:column;align-items:center;justify-content:center}.floor-window{position:relative;width:100%;height:83%;overflow:hidden}.floor{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;font-size:clamp(150px,31vh,370px);line-height:1;font-variant-numeric:lining-nums tabular-nums}.floor img{height:100%;width:min(80%,660px);object-fit:contain}.floor.enter{animation:floor-enter .55s cubic-bezier(.24,.7,.25,1) both}.floor.exit{animation:floor-exit .55s cubic-bezier(.24,.7,.25,1) both}.down-arrow{width:0;height:0;border-left:clamp(15px,2.4vw,34px) solid transparent;border-right:clamp(15px,2.4vw,34px) solid transparent;border-top:clamp(20px,3.3vw,44px) solid var(--navy);margin-top:2%;animation:arrow 2s ease-in-out infinite}.final-screen{position:absolute;inset:29% 4% 6%;display:flex;align-items:center;justify-content:center;cursor:pointer}.final-screen h1{font-size:clamp(46px,8.3vw,124px);text-align:center;line-height:1.12;font-weight:400;margin:0 0 5%;animation:panel-in .8s both}.final-count{position:absolute;right:1.5%;bottom:3%;display:flex;align-items:center;gap:10px;opacity:.55;font:14px Arial,sans-serif}.back-timer{position:absolute;top:-10%;right:0;width:47%;height:40%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.back-timer #back-number{font-size:clamp(55px,9vw,128px);line-height:1;font-variant-numeric:tabular-nums}.timer-label{font-size:clamp(8px,.8vw,12px);letter-spacing:.12em;margin-top:3%}.back-mode .quantity-panel{top:40%;height:52%}.back-mode .bar-quantity{font-size:clamp(80px,13vw,180px);line-height:1;font-variant-numeric:tabular-nums}.back-mode .glasses{margin-bottom:0}.back-mode .eyebrow{margin-bottom:4%}.back-mode .cocktail{cursor:default}.back-mode .cocktail .select-hint{visibility:hidden}.back-mode .back-timer.urgent{color:var(--red)}.back-mode .back-timer.timeup #back-number{font-size:clamp(45px,6vw,90px);animation:blink 1s steps(2,end) infinite}.standby-label{position:absolute;left:0;right:0;bottom:-1%;text-align:center;font-size:clamp(9px,.8vw,12px);letter-spacing:.14em;opacity:.65}.overlay{position:absolute;inset:29% 5% 4%;display:grid;place-items:center;text-align:center;z-index:3}.pair-card{width:min(400px,90%)}h1{font-weight:400}.pair-card h1{font-size:clamp(36px,5vw,64px);margin:0 0 16px}.pair-card .eyebrow{margin-bottom:15px}.pair-copy,.hint,#pair-error{font:13px/1.7 Arial,sans-serif;color:#617493}.pair-copy{margin:0 0 18px}.pair-card label{display:block;font:10px Arial,sans-serif;letter-spacing:.17em;margin-bottom:8px}.pair-card input{display:block;width:100%;font:40px "Times New Roman",serif;color:var(--navy);border:1px solid #bdcbe0;border-radius:0;text-align:center;letter-spacing:.24em;padding:8px 0 8px .24em;background:#fbfcff}.pair-card input::placeholder{color:#c3cddd}.pair-card .hint{font-size:11px;margin:8px 0 18px}.pair-card .primary{width:100%;font-size:19px}.small-link{font:11px Arial,sans-serif;text-underline-offset:4px;color:#75859d}.pair-card #pair-error{color:#c4233f;margin:12px 0;min-height:0}.launch{display:flex;flex-direction:column;justify-content:center}.launch h1{font-size:clamp(40px,6.5vw,90px);line-height:1.08;margin:0 0 5%}.launch .eyebrow{margin-bottom:3%}.role-links{display:flex;gap:24px;width:min(600px,100%)}.role-links a{border:1px solid #b2c1d8;text-decoration:none;padding:20px;width:50%;font-size:28px;text-align:left}.role-links span{display:block;margin-top:12px;font:11px Arial,sans-serif;color:#74849a}.notice{position:absolute;left:50%;transform:translateX(-50%);bottom:7%;z-index:6;background:#fff5f5;color:#a42035;border:1px solid #eabec5;max-width:90%;width:max-content;padding:12px 22px;font:13px/1.5 Arial,sans-serif;text-align:center}dialog{color:var(--navy);border:1px solid #bdcbe0;padding:40px;width:min(460px,90%);text-align:center}dialog::backdrop{background:#092d7066;backdrop-filter:blur(4px)}dialog h2{font-size:32px;font-weight:400;margin:12px 0 24px}dialog .eyebrow{margin:0}dialog strong{font-size:27px;letter-spacing:.15em}dialog .primary{display:block;width:100%;margin-top:18px;font-size:18px}.dialog-close{position:absolute;right:8px;top:4px;font-size:30px;min-width:36px;min-height:36px}.secondary{padding:12px;border:1px solid #b2c1d8;min-height:44px;margin:12px 0}.back-mode .cocktail:not(.chosen):disabled{opacity:1}.back-mode .selected .cocktail:not(.chosen):disabled{opacity:0}
.selected .cocktail.chosen:disabled{opacity:1}
@keyframes sheen{0%,55%{transform:translateX(-150%)}85%,100%{transform:translateX(150%)}}@keyframes panel-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes floor-enter{from{transform:translateY(-100%);opacity:.3}to{transform:translateY(0);opacity:1}}@keyframes floor-exit{from{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:.3}}@keyframes arrow{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}@keyframes blink{50%{opacity:.15}}
@media(min-aspect-ratio:18/10){.brand-header{height:23%;padding-top:1.4%}.logo{height:100%}.strapline{top:24%}.menu-screen{inset:29% 8% 6%}.pair-card{transform:scale(.88);transform-origin:center center}.pair-card h1{font-size:42px}.pair-copy{margin-bottom:10px}.pair-card .hint{margin:4px 0 10px}}
@media(max-width:700px) and (orientation:portrait){.frame{overflow-y:auto}.brand-header{height:18%;padding-top:6%;gap:4%}.logo{width:28%;height:90%}.brand-line{font-size:7px;white-space:normal;line-height:1.5;letter-spacing:.04em}.brand-line:after,.brand-line:before{display:none!important}.strapline{top:20%;font-size:9px}.menu-screen{inset:26% 2% 8%}.menu-cards{inset:0 0 10%}.cocktail{width:49%}.jacket{left:51%}.cocktail img{height:90%}.select-hint{font-size:8px;letter-spacing:.02em;gap:8px}.selected .jacket.chosen{transform:translateX(-104.0816%)}.quantity-panel{left:51%;width:48%;top:23%;height:50%}.eyebrow{font-size:8px;letter-spacing:.12em}.stepper{gap:3%}.round{width:36px;height:36px;min-width:36px;font-size:25px}.stepper output{font-size:55px}.primary{min-height:44px;min-width:90%;padding:12px 7px;font-size:16px}.text-button{font-size:11px}.toolbar{font-size:8px;left:3%;right:3%;gap:5px}.connection{font-size:8px;letter-spacing:0}.tools{gap:7px}#room-label{letter-spacing:0}.countdown{inset:26% 0 15%}.floor img{width:95%}.final-screen{inset:26% 3% 10%}.final-screen h1{font-size:12vw}.back-timer{top:4%;width:49%;height:25%}.back-timer #back-number{font-size:70px}.timer-label{font-size:7px}.back-mode .quantity-panel{top:38%;height:50%}.back-mode .bar-quantity{font-size:90px}.back-mode .back-timer.timeup #back-number{font-size:11vw}.standby-label{bottom:0;font-size:8px;line-height:1.6}.overlay{inset:24% 4% 6%}.role-links{gap:12px}.role-links a{font-size:24px;padding:16px}.role-links span{font-size:9px}.pair-card .eyebrow{font-size:11px}.pair-card h1{font-size:40px}.pair-card .primary{font-size:19px}.notice{font-size:11px;padding:10px 15px}}
@media(max-height:560px) and (orientation:landscape){.brand-header{padding-top:1%}.logo{height:100%}.pair-card{transform:scale(.74)}.pair-card h1{font-size:32px;margin-bottom:10px}.pair-card .eyebrow{margin-bottom:8px}.pair-copy{font-size:11px;margin-bottom:8px}.pair-card input{font-size:28px;padding:4px}.pair-card .primary{min-height:38px;padding:8px}.pair-card .hint{margin:4px 0 8px}.overlay{inset:23% 5% 1%}.toolbar{height:25px;bottom:0}.tools button{min-height:25px}.round{height:36px;width:36px;font-size:25px}.primary{min-height:40px;padding:10px 20px}.text-button{padding:5px;margin-top:2%}.glasses{margin:2% 0 4%}.eyebrow{margin-bottom:2%}.stepper output{font-size:65px}.menu-screen{inset:29% 8% 8%}.floor img{height:100%}.launch h1{font-size:42px;margin-bottom:3%}.role-links a{padding:12px;font-size:22px}.role-links span{margin-top:7px}.notice{bottom:10%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
