:root{--black:#050505;--cream:#f5f0e8;--blue:#3da5d9;--muted:#9b978f}*{box-sizing:border-box}html{background:var(--black)}body{background:var(--black);color:var(--cream);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}.app{max-width:720px;min-height:100svh;padding:env(safe-area-inset-top) 22px env(safe-area-inset-bottom);margin:auto;overflow:hidden}.topbar{letter-spacing:2px;color:#888;border-bottom:1px solid #282828;justify-content:space-between;align-items:center;height:74px;font-size:9px;font-weight:800;display:flex}.topbar i{color:var(--blue);font-style:normal}.mark{width:82px;height:82px;display:block;overflow:hidden}.mark img{object-fit:contain;width:100%;height:100%;display:block}.markSmall{width:40px;height:40px}.screen{min-height:calc(100svh - 74px - env(safe-area-inset-top));flex-direction:column;padding:40px 0 30px;display:flex}.welcome{justify-content:space-between}.welcomeCenter{margin:auto 0}.welcome .mark{margin-bottom:34px}.eyebrow,.stepLabel{letter-spacing:3px;color:var(--blue);font-size:10px;font-weight:800}h1,h2{letter-spacing:-4px;margin:13px 0 20px;font-size:clamp(52px,15vw,88px);font-weight:900;line-height:.88}h1 em,h2 em{color:var(--blue);font-style:normal}.intro{color:#aaa;font-size:15px}.primary{background:var(--blue);width:100%;min-height:60px;color:var(--black);letter-spacing:1.5px;cursor:pointer;border:0;border-radius:0;justify-content:space-between;align-items:center;padding:18px 20px;font-size:12px;font-weight:900;display:flex}.primary span{font-size:20px}.primary:disabled{opacity:.3;cursor:not-allowed}.textButton{color:#aaa;letter-spacing:2px;cursor:pointer;background:0 0;border:0;padding:18px;font-size:10px;font-weight:800}.photoFrame{aspect-ratio:4/5;border:1px solid var(--blue);width:100%;color:var(--cream);cursor:pointer;background:#0d0d0d;place-items:center;margin:10px 0 24px;display:grid;overflow:hidden}.photoFrame img{object-fit:cover;width:100%;height:100%}.photoFrame div{flex-direction:column;align-items:center;gap:9px;display:flex}.photoFrame strong{letter-spacing:2px;font-size:10px}.photoFrame small{color:#777}.camera{border:2px solid var(--blue);width:58px;height:58px;color:var(--blue);border-radius:50%;place-items:center;margin-bottom:8px;font-size:27px;display:grid}.fileInput,.honeypot{position:absolute;left:-9999px}.screen h2{margin-bottom:35px;font-size:clamp(42px,12vw,67px)}form{flex-direction:column;gap:26px;display:flex}label{color:#bbb;font-size:13px;font-weight:700}label small{float:right;letter-spacing:1px;color:#666;font-size:8px}input,textarea{width:100%;color:var(--cream);resize:none;background:0 0;border:0;border-bottom:1px solid #494949;border-radius:0;outline:none;margin-top:9px;padding:13px 0;font-size:18px;display:block}input:focus,textarea:focus{border-color:var(--blue)}::placeholder{color:#555}.count{float:right;color:#666;margin-top:5px;font-size:9px}.error{border-left:3px solid var(--blue);color:var(--cream);background:#151515;padding:13px;font-size:13px}.previewScreen{padding-bottom:50px}.emailPreview{background:var(--cream);color:var(--black);max-height:53svh;margin:0 0 26px;overflow:auto;box-shadow:0 14px 50px #000}.emailHead{background:var(--black);color:var(--cream);padding:24px}.emailHead p{letter-spacing:2px;margin:22px 0 7px;font-size:8px}.emailHead h3{letter-spacing:-1px;margin:0;font-size:34px;line-height:.9}.emailHead h3 span{color:var(--blue)}.emailPhoto{aspect-ratio:5/3;object-fit:cover;width:100%;display:block}.emailBody{padding:25px;font-family:Georgia,serif;font-size:14px;line-height:1.55}.emailBody blockquote{border-left:3px solid var(--blue);margin:20px 0;padding:2px 0 2px 14px;font-weight:700}.emailBody h4{margin-top:25px;font-family:Arial,sans-serif}.fakeButton{background:var(--blue);text-align:center;letter-spacing:1px;margin:24px 0;padding:14px;font-family:Arial,sans-serif;font-size:10px;font-weight:900}.signature{margin-top:25px}.status{text-align:center;justify-content:center;align-items:center;gap:26px}.status .mark{animation:1.5s infinite pulse}.progress{background:#292929;width:100%;height:2px;overflow:hidden}.progress span{background:var(--blue);width:40%;height:100%;animation:1.1s ease-in-out infinite loading;display:block}.success .check{border:1px solid var(--blue);width:65px;height:65px;color:var(--blue);border-radius:50%;place-items:center;font-size:27px;display:grid}.success h2{margin:0;font-size:clamp(44px,13vw,70px)}.success>p:not(.stepLabel){color:#888;font-family:Georgia,serif}.success .primary{margin-top:22px}@keyframes loading{0%{transform:translate(-110%)}to{transform:translate(360%)}}@keyframes pulse{50%{opacity:.45}}@media (min-width:600px){.app{padding-left:44px;padding-right:44px}.screen{padding-top:55px}.photoFrame{max-height:560px}}
