@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(./anton-latin-BbqyLdY8.woff2)format("woff2")}@font-face{font-family:Radio Canada Big;font-style:normal;font-weight:400 700;font-display:swap;src:url(./radio-canada-big-latin-DJ3bFNFx.woff2)format("woff2")}:root{--bg:#faf9f7;--ink:#0b0b0c;--muted:#55534f;--soft:#8b8984;--line:#0b0b0c1a;--glass:#faf9f7ed;--violet:#4d0de8;--violet-ink:#fff;--green:#22e070;--blue:#5e74da;--display:"poplar-std", "Anton", "Impact", "Arial Narrow", sans-serif;--body:"Radio Canada Big", system-ui, -apple-system, "Segoe UI", sans-serif;--gutter:24px;--top:76px;--ease-out:cubic-bezier(.2, .9, .25, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--body);overscroll-behavior:none;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;margin:0;overflow:hidden}body.dark{--glass:#121117e6;--line:#ffffff1f}button{font:inherit;color:inherit}button,a,.dock,.card,.finale,.topbar{touch-action:manipulation}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#scene.grab{cursor:grab}#scene.grabbing{cursor:grabbing}#scene.point{cursor:pointer}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.topbar{z-index:40;padding:16px var(--gutter);pointer-events:none;justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;top:0;left:0;right:0}.topbar>*{pointer-events:auto}.brand{flex:none;transition:filter .6s;display:block}.brand img{width:auto;height:22px;display:block}body.dark .brand{filter:invert()}.steps{background:var(--glass);border:1px solid var(--line);transition:opacity .4s, transform .4s var(--ease-out);border-radius:999px;gap:4px;margin:0;padding:5px;list-style:none;display:flex}.steps.hidden{opacity:0;pointer-events:none;transform:translateY(-8px)}.steps li{letter-spacing:.08em;text-transform:uppercase;color:var(--soft);border-radius:999px;align-items:center;gap:7px;padding:7px 12px 7px 8px;font-size:12px;font-weight:600;transition:background .35s,color .35s;display:flex}.steps li .n{letter-spacing:0;border:1.5px solid;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.steps li.done{color:var(--ink)}.steps li.done .n{background:var(--ink);border-color:var(--ink);color:var(--bg)}.steps li.active{background:var(--ink);color:var(--bg)}.steps li.active .n{border-color:var(--bg)}body.dark .steps li.done{color:#fff}body.dark .steps li.done .n{color:#000;background:#fff;border-color:#fff}body.dark .steps li.active{color:#000;background:#fff}body.dark .steps li.active .n{border-color:#000}.tools{flex:none;gap:8px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--glass);cursor:pointer;width:42px;height:42px;transition:transform .2s var(--ease-spring), background .3s;border-radius:50%;place-items:center;padding:0;display:grid}body.dark .icon-btn{color:#fff}.icon-btn:hover{transform:scale(1.06)}.icon-btn:active{transform:scale(.94)}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.icon-btn .spk{fill:currentColor}.icon-btn .mute,.icon-btn[aria-pressed=false] .wave{display:none}.icon-btn[aria-pressed=false] .mute{display:inline}:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.card{z-index:10;left:var(--gutter);top:var(--top);width:min(370px, calc(100vw - 2 * var(--gutter)));pointer-events:none;transition:opacity .45s, transform .55s var(--ease-out);padding:4px 0 0;position:fixed}.card.swap{opacity:0;transform:translateY(10px)}.card:before{content:"";z-index:-1;inset:-90px -140px -40px calc(-1 * var(--gutter));pointer-events:none;background:radial-gradient(at 0 35%,#faf9f7eb 0%,#faf9f7bf 45%,#faf9f700 72%);position:absolute}.card[hidden]{display:none}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--violet);margin:0;font-size:12px;font-weight:700}body.dark .eyebrow{color:#b79cff}.title{font-family:var(--display);letter-spacing:.004em;text-transform:uppercase;margin:10px 0 12px;font-size:clamp(46px,5.4vw,80px);font-weight:400;line-height:.9}.body{max-width:31ch;color:var(--muted);margin:0;font-size:16.5px;line-height:1.45}.body strong{color:var(--ink);font-weight:600}.meter{max-width:300px;margin-top:18px}.meter[hidden]{display:none}.meter-head{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;margin-bottom:8px;font-size:12px;font-weight:600;display:flex}.meter-head strong{font-family:var(--display);letter-spacing:.02em;color:var(--ink);font-size:26px;font-weight:400}.meter-track{background:#0b0b0c14;border-radius:999px;height:10px;overflow:hidden}.meter-fill{border-radius:inherit;width:0%;height:100%;transition:width .35s var(--ease-out);background:linear-gradient(90deg,#18a0fb,#7b2ff7 35%,#ff4fa3 60%,#ffc53d 85%,#20c978) 0 0/300px 100%}.dock{z-index:15;left:50%;bottom:max(26px, env(safe-area-inset-bottom));max-width:calc(100vw - 2 * var(--gutter));transition:opacity .4s, transform .5s var(--ease-out);justify-content:center;align-items:center;gap:12px;display:flex;position:fixed;transform:translate(-50%)}.dock.swap{opacity:0;transform:translate(-50%,14px)}.dock .hint{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:600}.dock .hint kbd{font:inherit;border:1.5px solid;border-radius:6px;margin:0 2px;padding:2px 7px;font-size:11px;display:inline-block}.btn{border:2px solid var(--ink);background:var(--ink);color:#fff;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:52px;transition:transform .2s var(--ease-spring), background .25s, color .25s, box-shadow .3s, opacity .3s;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 26px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px -12px #00000080}.btn:active{transform:translateY(0)scale(.97)}.btn:disabled{opacity:.35;pointer-events:none}.btn.violet{background:var(--violet);border-color:var(--violet);color:var(--violet-ink)}.btn.violet:hover{box-shadow:0 14px 30px -12px #4d0de8b3}.btn.ghost{color:var(--ink);background:0 0}body.dark .btn.ghost{color:#fff;border-color:#ffffff80}.btn.big{min-height:60px;padding:0 32px;font-size:15px}.btn.pulse{animation:pulse 1.8s var(--ease-out) infinite}@keyframes pulse{0%{box-shadow:0 0 #4d0de873}70%{box-shadow:0 0 0 16px #4d0de800}to{box-shadow:0 0 #4d0de800}}.hold{background:var(--ink);color:#fff;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:124px;height:124px;transition:transform .25s var(--ease-spring), background .3s;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.hold.on{background:#1d1d22;transform:scale(.93)}.hold svg{width:calc(100% + 18px);height:calc(100% + 18px);position:absolute;inset:-9px;transform:rotate(-90deg)}.hold .ring-bg{fill:none;stroke:#0b0b0c1a;stroke-width:6px}.hold .ring{fill:none;stroke:var(--violet);stroke-width:6px;stroke-linecap:round}.hold .label{letter-spacing:.12em;text-align:center;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.3;position:relative}.gauge{flex:none;width:210px;height:124px}.gauge .g-track{fill:none;stroke:#0b0b0c1a;stroke-width:14px;stroke-linecap:round}.gauge .g-zone{fill:none;stroke:var(--green);stroke-width:14px}.gauge .g-hot{fill:none;stroke:#ff5a36;stroke-width:14px;stroke-linecap:round}.gauge .g-fill{fill:none;stroke:var(--ink);stroke-width:4px;stroke-linecap:round;opacity:.25}.gauge .g-needle{stroke:var(--ink);stroke-width:5px;stroke-linecap:round}.gauge .g-hub{fill:var(--ink)}.gauge text{font-family:var(--body);letter-spacing:.12em;fill:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.gauge .g-temp{font-family:var(--display);letter-spacing:.02em;fill:var(--ink);font-size:26px;font-weight:400}.swatches{gap:10px;display:flex}.swatch{border:2px solid var(--line);background:var(--glass);cursor:pointer;text-align:left;min-height:56px;transition:transform .25s var(--ease-spring), border-color .25s, background .25s;border-radius:999px;align-items:center;gap:10px;padding:6px 18px 6px 6px;display:flex;position:relative}.swatch:hover{transform:translateY(-2px)}.swatch .chip{width:42px;height:42px;transition:transform .3s var(--ease-spring);border-radius:50%;box-shadow:inset 0 -6px 12px #0000002e,inset 0 4px 8px #ffffff59}.swatch[data-v=skye] .chip{background:#98bccf}.swatch[data-v=yuzu] .chip{background:#ecc225}.swatch[data-v=onyx] .chip{background:#2a292e}.swatch .nm{font-family:var(--display);letter-spacing:.03em;font-size:21px;line-height:1;display:block}.swatch .sh{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600;display:block}.swatch[aria-checked=true]{border-color:var(--ink);background:#fff}.swatch[aria-checked=true] .chip{transform:scale(1.08)}body.dark .swatch{color:#fff}body.dark .swatch .sh{color:#fff9}body.dark .swatch[aria-checked=true]{background:#ffffff1f;border-color:#fff}.pump-meter{gap:6px;display:flex}.pump-meter i{width:14px;height:34px;transition:background .2s, transform .3s var(--ease-spring);background:#0b0b0c1a;border-radius:5px}.pump-meter i.on{background:var(--blue);transform:scaleY(1.1)}.tags{z-index:12;pointer-events:none;position:fixed;inset:0;overflow:hidden}.tag{background:var(--ink);color:#fff;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;opacity:0;will-change:transform;border-radius:999px;padding:8px 13px;font-size:11.5px;font-weight:700;transition:opacity .3s;position:absolute;top:0;left:0}.tag.show{opacity:1}.tag:after{content:"";background:inherit;width:10px;height:10px;transform:translateX(var(--arrow,0px)) rotate(45deg);border-radius:2px;margin-left:-5px;position:absolute;bottom:-5px;left:50%}.tag.violet{background:var(--violet)}.tag .bob{animation:1.4s ease-in-out infinite bob;display:inline-block}@keyframes bob{50%{transform:translateY(-3px)}}.toast{z-index:30;pointer-events:none;text-align:center;position:fixed;top:40%;left:50%;transform:translate(-50%,-50%)}.toast .t-main{font-family:var(--display);text-transform:uppercase;color:var(--violet);-webkit-text-stroke:0;text-shadow:0 2px #fff,0 18px 40px #4d0de840;white-space:nowrap;font-size:clamp(54px,9vw,128px);line-height:.88;display:block}.toast .t-sub{background:var(--ink);color:#fff;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;margin-top:10px;padding:7px 14px;font-size:12px;font-weight:700;display:inline-block}.toast .pop{animation:stamp 1.7s var(--ease-out) forwards}@keyframes stamp{0%{opacity:0;transform:scale(2.2)rotate(-8deg)}14%{opacity:1;transform:scale(.94)rotate(-4deg)}22%{transform:scale(1.02)rotate(-4deg)}78%{opacity:1;transform:scale(1)rotate(-4deg)}to{opacity:0;transform:scale(1.04)translateY(-24px)rotate(-4deg)}}.intro{z-index:25;padding:var(--top) var(--gutter) 40px;background:linear-gradient(90deg,#faf9f7f7 0%,#faf9f7e6 36%,#faf9f700 68%);align-items:center;transition:opacity .7s,visibility .7s;display:flex;position:fixed;inset:0}.intro.out{opacity:0;visibility:hidden}.intro[hidden]{display:none}.intro-inner{max-width:560px}.intro-title{font-family:var(--display);text-transform:uppercase;margin:16px 0 20px;font-size:clamp(64px,9.6vw,148px);font-weight:400;line-height:.86}.intro-body{max-width:40ch;color:var(--muted);margin:0 0 30px;font-size:18px;line-height:1.5}.intro-body strong{color:var(--ink)}.intro-note{color:var(--soft);margin:16px 0 0 4px;font-size:13px}.finale{z-index:18;right:var(--gutter);width:min(380px, calc(100vw - 2 * var(--gutter)));background:var(--glass);border:1px solid var(--line);color:#fff;transition:opacity .6s, transform .7s var(--ease-out);border-radius:28px;padding:28px;position:fixed;top:50%;transform:translateY(-50%)}.finale[hidden]{display:none}.finale.out{opacity:0;transform:translate(24px,-50%)}.finale-title{font-family:var(--display);text-transform:uppercase;margin:10px 0 16px;font-size:clamp(48px,5vw,72px);font-weight:400;line-height:.9}.facts{gap:9px;margin:0 0 22px;padding:0;list-style:none;display:grid}.facts li{color:#ffffffc7;align-items:baseline;gap:12px;font-size:15px;line-height:1.35;display:flex}.facts li b{min-width:64px;font-family:var(--display);letter-spacing:.02em;color:#fff;font-size:22px;font-weight:400}.facts .short{display:none}.finale-swatches{gap:8px;margin-bottom:18px;display:flex}.finale-swatches .swatch{flex:1;gap:8px;min-height:50px;padding-right:10px}.finale-swatches .swatch .chip{width:34px;height:34px}.finale-swatches .swatch .nm{font-size:18px}.finale .buy{width:100%}.finale #again-btn{width:100%;min-height:46px;margin-top:10px}.finale-hint{letter-spacing:.08em;text-transform:uppercase;text-align:center;color:#ffffff80;margin:14px 0 0;font-size:12px}.loader{z-index:50;background:var(--bg);place-items:center;transition:opacity .6s,visibility .6s;display:grid;position:fixed;inset:0}.loader span{border:4px solid #0b0b0c1a;border-top-color:var(--violet);border-radius:50%;width:46px;height:46px;animation:.8s linear infinite spin}.loader.out{opacity:0;visibility:hidden}@keyframes spin{to{transform:rotate(360deg)}}.noscript{background:var(--bg);text-align:center;z-index:60;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.fallback{z-index:60;background:var(--bg);text-align:center;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.fallback h2{font-family:var(--display);text-transform:uppercase;margin:0 0 12px;font-size:48px;font-weight:400}@media (max-width:860px){:root{--gutter:16px;--top:64px}.topbar{gap:8px;padding:12px 12px 0}.brand img{height:15px}.steps{gap:2px;padding:4px}.steps li{padding:2px}.steps li .txt{display:none}.steps li .n{width:22px;height:22px}.tools{gap:6px}.icon-btn{width:36px;height:36px}.icon-btn svg{width:18px;height:18px}.card{width:calc(100vw - 2 * var(--gutter))}.card:before{inset:-80px calc(-1 * var(--gutter)) -34px;background:linear-gradient(#faf9f7f7 0%,#faf9f7ed 72%,#faf9f700 100%)}.dock:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#faf9f700 0%,#faf9f799 45%,#faf9f7e6 100%);width:100vw;position:absolute;top:-60px;bottom:-40px;left:calc(50% - 50vw)}.dock:empty:before{display:none}.title{margin:6px 0 8px;font-size:clamp(38px,11vw,54px)}.body{max-width:40ch;font-size:14.5px}.meter{max-width:none;margin-top:12px}.dock{width:calc(100vw - 2 * var(--gutter));flex-wrap:wrap;gap:10px}.dock .hint{text-align:center;width:100%;font-size:11.5px}.swatches{width:100%}.swatches .swatch{flex:1;gap:6px;padding-right:8px}.swatches .swatch .chip{width:32px;height:32px}.swatches .swatch .nm{font-size:17px}.swatches .swatch .sh{display:none}.hold{width:104px;height:104px}.gauge{width:170px;height:100px}.intro{padding-bottom:max(28px, env(safe-area-inset-bottom));background:linear-gradient(#faf9f700 38%,#faf9f7f0 58%,#faf9f7fa 100%);align-items:flex-end}.intro-title{font-size:clamp(54px,16vw,88px)}.intro-body{font-size:16px}.finale{top:auto;bottom:max(10px, env(safe-area-inset-bottom));border-radius:22px;width:auto;padding:16px 16px 14px;left:10px;right:10px;transform:none}.finale.out{transform:translateY(24px)}.finale .eyebrow{font-size:10.5px}.finale-title{margin:4px 0 12px;font-size:clamp(32px,9.5vw,42px)}.facts{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px}.facts li{text-align:center;background:#ffffff12;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px}.facts li b{min-width:0;font-size:18px}.facts .long{display:none}.facts .short{letter-spacing:.06em;text-transform:uppercase;color:#fff9;font-size:10px;font-weight:600;display:block}.finale-swatches{gap:6px;margin-bottom:10px}.finale-swatches .swatch{min-height:44px;padding:4px 8px 4px 4px}.finale-swatches .swatch .chip{width:30px;height:30px}.finale-swatches .swatch .nm{font-size:16px}.finale-swatches .swatch .sh{display:none}.finale .buy{min-height:52px}.finale #again-btn{min-height:42px;margin-top:8px}.finale-hint{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
