:root{--ink:#16224b;--ink-soft:#40507f;--muted:#7a7466;--gold:#c08a2e;--gold-soft:#e8c877;--paper:#f8f5ef;--card:#ffffff;--line:#e6e0d4;--ok:#1f7a52;--warn:#b47216;--bad:#a33a3a;--r-lg:26px;--r-md:16px;--r-sm:11px;--shadow:0 1px 2px rgba(22,34,75,.04),0 12px 34px -14px rgba(22,34,75,.22);--shadow-lift:0 2px 4px rgba(22,34,75,.05),0 26px 60px -22px rgba(22,34,75,.34);--font:"Inter","Heebo",system-ui,-apple-system,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:var(--font);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.6}h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em;line-height:1.2}a{color:var(--ink)}button{font-family:inherit}.bg-orbs{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.bg-orbs:after,.bg-orbs:before{content:"";position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}.bg-orbs:before{width:46vw;height:46vw;background:#dbe2ff;top:-14vw;inset-inline-start:-12vw}.bg-orbs:after{width:38vw;height:38vw;background:#f6e3bc;bottom:-16vw;inset-inline-end:-10vw}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent;white-space:nowrap}.pill--ok{background:#e7f4ee;color:var(--ok);border-color:#c4e5d6}.pill--warn{background:#fdf1de;color:var(--warn);border-color:#f2ddb8}.pill--bad{background:#fbeaea;color:var(--bad);border-color:#f0cfcf}.pill--dup{background:#eceaf8;color:#5a45a8;border-color:#d8d2ef}.shell{max-width:760px;margin:0 auto;padding:26px 18px 70px}.langbar{display:flex;justify-content:center;gap:6px;margin-bottom:26px}.langbar button{border:1px solid var(--line);background:#fff;color:var(--ink-soft);padding:7px 15px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease}.langbar button:hover{border-color:var(--ink-soft)}.langbar button[aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.hero{text-align:center;margin-bottom:26px}.crest{width:52px;height:52px;margin:0 auto 16px;border-radius:16px;display:grid;place-items:center;font-size:22px;color:var(--gold);background:linear-gradient(150deg,#fff,#fbf3e2);border:1px solid #f0e2c4;box-shadow:var(--shadow)}.hero h1{font-size:clamp(25px,5vw,36px)}.hero .lead{color:var(--muted);max-width:52ch;margin:12px auto 0;font-size:15.5px}.counter{margin-top:18px;display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 16px;font-size:13.5px;color:var(--ink-soft);box-shadow:var(--shadow)}.counter strong{color:var(--gold);font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.raffle{margin:12px auto 0;max-width:44ch;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;background:#fdf6e7;border:1px solid #f0e2c4;border-radius:var(--r-sm);padding:9px 16px;font-size:13.5px;color:var(--warn);font-weight:600}.raffle b{color:var(--ink)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lift);padding:clamp(20px,4vw,34px);position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset-inline:0;top:0;height:3px;background:linear-gradient(90deg,var(--gold-soft),var(--gold),var(--ink))}.steps{gap:10px;margin-bottom:28px}.chip,.steps{display:flex;align-items:center}.chip{gap:9px;font-size:13px;font-weight:600;color:var(--muted);flex:1 1;min-width:0}.chip i{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:none;background:#f1eee7;color:var(--muted);font-style:normal;font-size:12.5px;font-weight:700;transition:all .25s ease}.chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip[data-state=active]{color:var(--ink)}.chip[data-state=active] i{background:var(--ink);color:#fff;box-shadow:0 0 0 4px rgba(22,34,75,.1)}.chip[data-state=done]{color:var(--ok)}.chip[data-state=done] i{background:var(--ok);color:#fff}.rail{height:3px;background:#f1eee7;overflow:hidden;margin-bottom:28px}.rail,.rail div{border-radius:2px}.rail div{height:100%;width:33%;background:linear-gradient(90deg,var(--gold),var(--gold-soft));transition:width .4s cubic-bezier(.4,0,.2,1)}.step{display:none;animation:rise .32s cubic-bezier(.2,.7,.3,1)}.step.on{display:block}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.grid{display:grid;grid-gap:16px;gap:16px}.grid.two{grid-template-columns:1fr 1fr}@media(max-width:560px){.grid.two{grid-template-columns:1fr}}.f{display:flex;flex-direction:column;gap:6px}.f label{font-size:13.5px;font-weight:600;color:var(--ink)}.f .hint{font-size:12px;color:var(--muted);font-weight:400}.f .req{color:var(--gold)}input[type=date],input[type=email],input[type=tel],input[type=text],select,textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r-sm);font-size:15px;font-family:inherit;color:var(--ink);background:#fdfcfa;transition:border-color .16s,box-shadow .16s,background .16s}textarea{min-height:104px;resize:vertical;line-height:1.65}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink);background:#fff;box-shadow:0 0 0 4px rgba(22,34,75,.09)}.f.err input,.f.err select,.f.err textarea{border-color:var(--bad);background:#fefafa}.msg{font-size:12px;color:var(--bad);display:none}.f.err .msg{display:block}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));grid-gap:9px;gap:9px}.choices input{position:absolute;opacity:0;pointer-events:none}.choices label{border:1.5px solid var(--line);border-radius:var(--r-sm);padding:11px 8px;text-align:center;font-size:13.5px;font-weight:600;cursor:pointer;background:#fdfcfa;color:var(--ink-soft);transition:all .16s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.choices label:hover{border-color:var(--ink-soft);background:#fff}.choices input:checked+label{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:0 6px 16px -8px rgba(22,34,75,.6)}.choices.slim{grid-template-columns:repeat(2,minmax(0,1fr));max-width:260px}.drop{border:1.5px dashed var(--line);border-radius:var(--r-md);padding:20px;text-align:center;cursor:pointer;background:#fdfcfa;transition:all .18s ease;font-size:13.5px;color:var(--muted)}.drop:hover{border-color:var(--gold);background:#fffdf7;color:var(--ink-soft)}.drop input,.preview{display:none}.preview{align-items:center;gap:12px;margin-top:10px}.preview img{width:56px;height:56px;border-radius:14px;object-fit:cover;border:1px solid var(--line)}.preview button{background:none;border:none;color:var(--bad);cursor:pointer;font-size:13px;text-decoration:underline}.nav{display:flex;gap:10px;margin-top:30px}.btn,.nav{align-items:center}.btn{border:none;border-radius:var(--r-sm);padding:13px 26px;font-size:15px;font-weight:600;cursor:pointer;transition:all .18s ease;display:inline-flex;gap:8px}.btn-primary{background:linear-gradient(135deg,var(--ink),#2c3d75);color:#fff;box-shadow:0 10px 24px -12px rgba(22,34,75,.85)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 16px 30px -12px rgba(22,34,75,.85)}.btn-gold{background:linear-gradient(135deg,var(--gold),#d9a64a);color:#fff;box-shadow:0 10px 24px -12px rgba(192,138,46,.9)}.btn-gold:hover{transform:translateY(-1px)}.btn-ghost{background:#fff;border:1.5px solid var(--line);color:var(--ink-soft)}.btn-ghost:hover{border-color:var(--ink-soft)}.btn[disabled]{opacity:.6;cursor:not-allowed;transform:none}.spacer{flex:1 1}.spin{width:15px;height:15px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:sp .7s linear infinite;display:none}.btn.loading .spin{display:inline-block}@keyframes sp{to{transform:rotate(1turn)}}#done{display:none;text-align:center}.tick{width:64px;height:64px;border-radius:50%;margin:4px auto 18px;display:grid;place-items:center;background:#e7f4ee;color:var(--ok);font-size:30px;animation:pop .45s cubic-bezier(.2,1.4,.4,1)}@keyframes pop{0%{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}.ticket{margin:22px auto;max-width:320px;border:1.5px dashed var(--line);border-radius:var(--r-md);padding:16px;background:#fdfcfa}.ticket small{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.ticket b{font-size:26px;letter-spacing:.06em;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.share{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:20px}footer{text-align:center;margin-top:26px;font-size:12.5px;color:var(--muted)}