@font-face{font-family:Bricolage Grotesque;src:url(/BricolageGrotesque.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;src:url(/Inter.woff2) format("woff2");font-display:swap}:root{font-family:Inter,system-ui,sans-serif;color:#172728;background:#f4f0e8;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.shell{position:relative;min-height:100dvh;padding:24px 34px 98px;display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 96% 5%,#e8b43b 0 7%,transparent 7.3%),linear-gradient(118deg,transparent 0 72%,rgba(224,75,48,.08) 72% 100%),#f4f0e8;overflow:hidden}.shell header{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:64px}.module-lockup{display:flex;align-items:center;gap:14px}.module-lockup img{width:clamp(168px,24vw,244px);height:56px;object-fit:contain;object-position:left center}.module-lockup span{max-width:116px;color:#63706c;font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.brand-lockup{display:grid;justify-items:end;gap:4px;text-align:right;min-width:130px}.brand-lockup img{max-width:150px;max-height:46px;object-fit:contain}.brand-lockup strong{font-family:Bricolage Grotesque,sans-serif;font-size:20px}.brand-lockup small{color:#63706c;font-size:12px}.shell footer{color:#63706c;text-align:center;font-size:11px;font-weight:700}.stage{width:min(880px,100%);margin:auto;padding:34px 0 26px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;text-align:center}.intro{display:grid;justify-items:center;gap:12px}.eyebrow{display:inline-flex;padding:8px 12px;border:1px solid #172728;border-radius:999px;background:#ffffffb8;font-size:11px;font-weight:900;letter-spacing:.13em}.stage h1{max-width:760px;margin:0;font-family:Bricolage Grotesque,sans-serif;font-size:clamp(43px,7vw,76px);line-height:.95;letter-spacing:-.045em}.stage p{max-width:640px;margin:0;color:#465755;font-size:clamp(16px,2vw,19px);line-height:1.5}.stage-content{width:100%;display:grid;justify-items:center;gap:22px}.welcome-brand{min-width:220px;min-height:150px;padding:22px 32px;display:grid;place-items:center;align-content:center;gap:8px;border:2px solid #172728;border-radius:22px;background:#fffdf8c7;box-shadow:7px 7px #f3b52a}.welcome-brand img{max-width:250px;max-height:112px;object-fit:contain}.welcome-brand strong{font-family:Bricolage Grotesque,sans-serif;font-size:clamp(27px,4vw,40px);line-height:1}.welcome-brand small{color:#63706c;font-size:13px}.design-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.design-card{position:relative;min-height:310px;padding:18px;border:2px solid #172728;border-radius:20px;background:#fffdf8;box-shadow:6px 6px #164f58;display:grid;justify-items:start;align-content:end;gap:7px;text-align:left;cursor:pointer;transition:transform .14s,box-shadow .14s}.design-card:active{transform:translateY(2px);box-shadow:3px 3px #164f58}.design-card.selected{background:#164f58;color:#fffdf8}.design-number{position:absolute;top:16px;left:18px;font-size:12px;font-weight:900}.design-paper{width:100%;height:190px;padding:20px;margin-bottom:6px;border:1px solid rgba(23,39,40,.45);display:flex;flex-direction:column;justify-content:space-between;color:#172728;background:#f6eee2;transform:rotate(-2deg);box-shadow:4px 4px #1727282e}.design-card--playful .design-paper{border-radius:18px 5px;background:#f3b52a;transform:rotate(2deg)}.design-card--ticket .design-paper{border-style:dashed;background:#fff;transform:rotate(-1deg)}.design-paper b{font-family:Bricolage Grotesque,sans-serif;font-size:30px;line-height:.86}.design-paper small{font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.design-paper i{font-size:10px;font-style:normal;letter-spacing:.08em}.design-card>strong{font-family:Bricolage Grotesque,sans-serif;font-size:26px}.design-card>small{color:#63706c;font-size:13px}.design-card.selected>small{color:#dce9e6}.choices{width:min(690px,100%);display:grid;gap:12px}.choice{min-height:92px;padding:15px 20px;border:2px solid #172728;border-radius:16px;background:#fffdf8;box-shadow:5px 5px #164f58;display:grid;grid-template-columns:42px 1fr auto;grid-template-rows:auto auto;align-items:center;text-align:left;cursor:pointer}.choice>span{grid-row:1/3;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#f3b52a;font-size:11px;font-weight:900}.choice strong{font-family:Bricolage Grotesque,sans-serif;font-size:25px}.choice small{color:#63706c;font-size:13px}.choice i{grid-column:3;grid-row:1/3;font-size:28px;font-style:normal}.choice.selected{background:#164f58;color:#fff}.choice.selected small{color:#dce9e6}.button{min-height:56px;min-width:220px;padding:14px 24px;border:2px solid #164f58;border-radius:12px;font-weight:900;cursor:pointer}.button:active{transform:translateY(2px)}.button:focus-visible,.choice:focus-visible,.design-card:focus-visible,.text-button:focus-visible{outline:3px solid #e34b30;outline-offset:3px}.button.primary{background:#164f58;color:#fff}.button.secondary{background:#fffdf8;color:#164f58}.button:disabled{opacity:.6;cursor:wait}.text-button{min-height:44px;border:0;background:transparent;color:#164f58;text-decoration:underline;font-weight:800;cursor:pointer}.actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.photo{width:min(430px,78vw);aspect-ratio:1;margin:0;overflow:hidden;border:4px solid #172728;border-radius:22px;background:#164f58;box-shadow:10px 10px #f3b52a}.photo img{width:100%;height:100%;object-fit:contain}.microcopy{color:#63706c!important;font-size:13px!important}.notice{width:min(640px,100%);padding:12px 16px;border-left:5px solid #b67a11;background:#fffdf8;color:#465755!important;font-size:14px!important;text-align:left}.self-serve-timer{position:absolute;z-index:5;bottom:50px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:7px 12px;border:2px solid #172728;border-radius:999px;background:#fffdf8;box-shadow:3px 3px #172728;font-size:11px;font-weight:900}.self-serve-timer strong{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#f3b52a}.status{min-height:70vh}.status h1{font-size:clamp(37px,6vw,62px)}.status-mark,.spinner{width:80px;height:80px;display:grid;place-items:center;border-radius:50%;background:#f3b52a;border:3px solid #172728;font-size:38px;font-weight:900}.spinner{border:9px solid #d5d5cb;border-top-color:#e34b30;background:transparent;animation:spin 1s linear infinite}.result-card{width:min(650px,100%);padding:22px;display:flex;align-items:center;gap:24px;border:2px solid #172728;border-radius:18px;background:#fffdf8;box-shadow:8px 8px #164f58;text-align:left}.receipt-mini{width:170px;flex:0 0 170px}.receipt-mini>img{display:block;width:100%;max-height:290px;object-fit:contain}.result-copy{display:grid;gap:9px}.result-copy strong{font-family:Bricolage Grotesque,sans-serif;font-size:27px;line-height:1}.result-copy span{color:#63706c;font-size:14px}.result-copy a{color:#164f58;font-size:14px;font-weight:900}.qr-card{display:grid;justify-items:center;gap:7px;color:#63706c;font-size:12px;font-weight:800}.qr{width:170px;height:170px;padding:8px;background:#fff;border:1px solid #172728}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:680px){.shell{padding:18px 20px}.shell header{align-items:flex-start}.module-lockup span{display:none}.brand-lockup img{max-width:100px}.brand-lockup strong{font-size:15px}.design-grid{grid-template-columns:1fr}.design-card{min-height:176px;grid-template-columns:110px 1fr;grid-template-rows:auto auto;align-items:end;column-gap:14px}.design-number{top:14px}.design-paper{grid-row:1 / 3;height:140px;margin:0}.design-card>strong,.design-card>small{grid-column:2}.result-card{flex-direction:column;text-align:center}.receipt-mini{width:150px;flex-basis:auto}.actions,.actions .button{width:100%}}@media(max-height:900px)and (min-width:700px){.stage{padding:12px 0;gap:16px}.intro{gap:7px}.stage h1{font-size:clamp(38px,5vw,58px)}.design-card{min-height:260px}.design-paper{height:154px}}.welcome-stage{gap:32px}.welcome-brand{border:0;background:none;box-shadow:none;padding:0;min-height:160px}.welcome-brand img{max-width:340px;max-height:170px}.welcome-brand small{margin-top:12px}.welcome-stage h1{font-size:clamp(40px,6.5vw,66px);line-height:1.04}.journey-strip{display:flex;flex-wrap:wrap;gap:12px 22px;color:#536660;font-size:13px}.design-paper{height:270px;background:#fff!important;transform:rotate(-2deg);padding:16px;color:#172728;gap:7px}.design-brand{width:100%;height:38px;object-fit:contain}.design-paper>b{font-size:13px;line-height:1.2}.design-photo{display:block;width:100%;height:128px;background:#e7e9e4;border:double 4px #4d625b;position:relative;overflow:hidden}.design-photo svg{height:100%;width:100%;stroke:#7a8c82;stroke-width:2;fill:#d5dcd3}.design-paper small{font-size:8px;letter-spacing:0;text-transform:none;text-align:left}.design-note-lines{display:block;width:100%;border-bottom:1px solid #ced3cd;height:5px}.design-card{padding:30px 16px 18px;min-height:400px;gap:10px}.design-card--playful .design-paper{border-radius:0;transform:rotate(2deg)}.design-card--playful .design-photo{border:1px solid #4d625b}.design-card--playful .design-photo:after{content:"♡";position:absolute;right:4px;top:0;color:#17343a;font-size:24px}.design-card--playful .design-photo:before{content:"";position:absolute;left:3px;top:0;width:52px;height:10px;background:#b5bfb580;transform:rotate(-8deg)}.design-card--ticket .design-photo{border-style:dashed;border-width:1px 9px 1px 1px}.design-card>small{line-height:1.4;min-height:36px}.design-number{font-size:10px;top:9px}.design-select{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:12px;font-weight:700;padding-top:10px;border-top:1px solid #d3d8d0}.design-select i{font-size:22px;font-style:normal}.photo{width:min(400px,72vw)}.qr{width:230px;height:230px}.result-copy strong{font-size:24px}.stage-content{gap:20px}.stage h1{line-height:1.04}.self-serve-timer{box-shadow:none;border:1px solid #d2d8cb;background:#ffffff80;color:#60716b;font-weight:600}.self-serve-timer strong{background:#e5ebdd}.shell footer{position:absolute;bottom:20px;left:0;right:0}@media(max-width:680px){.shell{padding:20px 20px 110px}.design-card{min-height:224px;padding:26px 14px 14px;grid-template-columns:130px 1fr;grid-template-rows:auto auto auto;align-items:center}.design-paper{height:192px;grid-row:1/4;padding:10px;gap:4px}.design-brand{height:28px}.design-photo{height:80px}.design-card>small{min-height:0}.design-select{grid-column:2}.journey-strip{font-size:11px;gap:8px}.result-card{flex-direction:row;text-align:left;gap:14px;padding:14px}.receipt-mini{width:90px;flex-basis:90px}.result-copy strong{font-size:20px}.module-lockup img{width:150px}.qr{width:200px;height:200px}.stage{padding:30px 0}.self-serve-timer{white-space:nowrap;font-size:10px}.welcome-brand img{max-width:260px}}@media(max-height:900px)and (min-width:700px){.photo{width:300px}.qr{width:180px;height:180px}.receipt-mini>img{max-height:185px}.design-paper{height:210px}.design-photo{height:94px}.design-card{min-height:320px}.stage h1{font-size:42px}}
