@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Manrope:wght@300;400;500;600&family=Newsreader:ital,opsz,wght@1,6..72,300&display=swap");:root{--ink:#102018;--paper:#e9eadf;--moss:#3d5a3d}*{box-sizing:border-box}body,html{margin:0;width:100%;height:100%;background:#aebb9f;color:var(--ink);font-family:Manrope,Arial,sans-serif}.app,body,html{overflow:hidden}.app{height:100dvh;position:relative;isolation:isolate}.stage{position:absolute;inset:0}.stage:after{content:"";background:linear-gradient(90deg,rgba(225,231,215,.9),transparent 42%),linear-gradient(0deg,rgba(30,49,34,.28),transparent 32%)}.atmosphere,.stage:after{position:absolute;inset:0;pointer-events:none}.atmosphere{box-shadow:inset 0 0 120px rgba(34,48,30,.18)}.brand{position:absolute;z-index:4;top:32px;left:40px;display:flex;align-items:center;gap:13px}.brand strong{font:500 16px DM Mono;letter-spacing:.18em;display:block}.brand span{font:400 9px DM Mono;letter-spacing:.1em;text-transform:uppercase;opacity:.58}.mark{width:29px;height:29px;border:1px solid;position:relative;padding:4px;display:grid;grid-template:1fr 1fr/1fr 1fr;grid-gap:3px;gap:3px}.mark i{border:2px solid}.mark i:last-child{grid-column:2}.intro{position:absolute;z-index:3;left:7vw;top:20%;max-width:490px;transition:.7s ease}.composer>span,.eyebrow,.mode-control p,footer,label{font:500 10px DM Mono;letter-spacing:.17em;text-transform:uppercase}.intro h1{font-size:clamp(54px,7.2vw,112px);font-weight:300;letter-spacing:-.07em;line-height:.78;margin:30px 0}.intro h1 em{font-family:Newsreader,serif;font-weight:300}.lede{font-size:13px;line-height:1.7;max-width:365px;opacity:.7}.composer{position:absolute;z-index:5;left:7vw;bottom:70px;width:min(430px,42vw)}.composer label{display:block;margin-bottom:9px;opacity:.65}.input-row{height:53px;border-bottom:1px solid rgba(16,32,24,.45);display:flex}.input-row input{background:transparent;border:0;outline:0;min-width:0;flex:1 1;font:400 15px DM Mono;color:inherit}.input-row button{border:0;background:var(--ink);color:#ecf0e7;padding:0 22px;text-transform:uppercase;font:500 10px DM Mono;letter-spacing:.12em;cursor:pointer}.composer>span{display:block;margin-top:10px;opacity:.48}.error{font-size:12px;color:#733;margin:8px 0}.mode-control{position:absolute;z-index:6;right:5vw;bottom:67px;text-align:center}.mode-control button{width:158px;height:158px;border-radius:50%;border:1px solid rgba(16,32,24,.5);background:rgba(225,232,216,.58);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font:500 11px DM Mono;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:.3s}.mode-control button:hover{transform:scale(1.04);background:rgba(238,241,231,.8)}.mode-control b{display:block;font-size:27px;margin-top:10px}.mode-control p{font-size:8px;opacity:.55}.scan-layer{position:absolute;z-index:4;inset:0;display:grid;place-items:center;pointer-events:none}.scan-code{width:min(62vh,67vw);text-align:center}.scan-code svg{display:block;width:100%;height:auto;filter:drop-shadow(0 25px 40px rgba(16,32,24,.16))}.scan-code p{font:500 9px DM Mono;text-transform:uppercase;letter-spacing:.2em}.is-scan .composer,.is-scan .intro{opacity:0;pointer-events:none;transform:translateY(20px)}.is-scan .stage{filter:saturate(.45) brightness(1.08)}footer{position:absolute;z-index:5;bottom:24px;left:40px;right:40px;display:flex;justify-content:space-between;font-size:8px;opacity:.6}@media(max-width:700px){.brand{top:20px;left:20px}.intro{left:22px;right:22px;top:15%;max-width:340px}.intro h1{font-size:56px;margin:22px 0}.lede{max-width:290px}.composer{left:20px;bottom:115px;width:calc(100% - 40px)}.mode-control{right:20px;bottom:190px}.mode-control button{width:112px;height:112px}.mode-control p{display:none}.input-row button{padding:0 16px}.scan-code{width:min(84vw,58vh)}footer{left:20px;right:20px;bottom:15px}.stage:after{background:linear-gradient(180deg,rgba(225,231,215,.65),transparent 48%),linear-gradient(0deg,rgba(30,49,34,.35),transparent 35%)}.is-scan .mode-control{bottom:75px;right:50%;transform:translateX(50%)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.intro,.mode-control button{transition:none}}