body{background:var(--night);color:var(--ice);font-family:var(--body)}
.top{background:rgba(5,10,24,.94)}
.gift-main{max-width:880px;margin:auto;padding:60px 24px 40px;text-align:center}
.gift-label{display:inline-block;color:var(--cyan);font-family:'JetBrains Mono',ui-monospace,Menlo,monospace;font-size:13px;font-weight:500;letter-spacing:0}
.gift-main h1{font-size:48px;line-height:1.16;max-width:740px;margin:16px auto;letter-spacing:0;text-wrap:balance}
.gift-intro{max-width:590px;margin:0 auto;color:var(--muted);font-size:18px}
.gift-facts{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin:24px 0;color:var(--ice);font-size:14px}
.gift-facts span:before{content:'';display:inline-block;width:6px;height:6px;background:var(--cyan);border-radius:50%;margin-right:9px;vertical-align:middle}
.gift-form{max-width:550px;margin:32px auto 0;text-align:left}
.gift-form label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}
.gift-input-row{display:flex;gap:10px}
.gift-form input[type=email]{min-width:0;flex:1;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ice);padding:15px;font:inherit;height:54px}
.gift-form input:focus{border-color:var(--cyan);outline:2px solid rgba(73,217,255,.25);outline-offset:2px}
.gift-form .btn{border:0;border-radius:999px;min-height:54px;padding:13px 24px;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;font:600 14px var(--body);cursor:pointer;white-space:normal;max-width:100%;box-shadow:0 8px 26px -8px rgba(47,107,255,.3)}
.gift-form .btn:hover{filter:brightness(1.08)}
.gift-form .btn:disabled{cursor:default;opacity:.6}
.gift-privacy{color:var(--muted);font-size:12px;margin-top:12px;line-height:1.7}
.gift-privacy a{text-decoration:underline;text-underline-offset:3px;color:var(--blue-hi)}
.gift-status{font-size:14px;line-height:1.6;margin-top:16px;padding:12px 0;border-top:1px solid var(--line);color:var(--ice);overflow-wrap:anywhere}
.gift-status[data-state=error]{color:#ffb2aa}
.gift-status[data-state=success]{color:var(--cyan)}
.gift-status:empty{display:none}
.gift-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#giftChallenge{margin-top:16px;min-height:0}
.gift-success{max-width:550px;margin:28px auto 0;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}
.gift-success h2{font-size:24px;line-height:1.3;margin-bottom:10px}
.gift-success p{color:var(--muted);overflow-wrap:anywhere}
.gift-success a{display:inline-block;color:var(--blue-hi);text-decoration:underline;text-underline-offset:4px;margin-top:14px}
[hidden]{display:none!important}
.gift-media{position:relative;width:100%;height:240px;background:var(--night);overflow:hidden;margin-top:38px}
.gift-media img{width:100%;height:100%;object-fit:contain;object-position:center;opacity:.9}
.gift-media:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,10,24,.8),rgba(5,10,24,.12))}
.gift-media p{position:absolute;z-index:1;bottom:24px;left:24px;right:24px;text-align:center;font:600 22px var(--display);color:#fff}
.gift-links{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin:34px 24px 50px;color:var(--blue-hi);font-weight:600;font-size:14px}
.gift-policy{margin:auto;width:calc(100% - 40px);max-width:580px;padding:26px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ice)}
.gift-policy::backdrop{background:rgba(5,10,24,.8)}
.gift-policy h2{font-size:24px;line-height:1.3;margin-bottom:16px}
.gift-policy p{color:var(--muted);font-size:14px;line-height:1.8}
.gift-policy form{text-align:right;margin-top:22px}.gift-policy .btn{border:0;font:600 14px var(--body);cursor:pointer}
footer{background:var(--night);border-color:var(--line)}
@media(max-width:620px){.gift-main{padding:30px 24px 24px}.gift-main h1{font-size:34px}.gift-intro{font-size:16px}.gift-input-row{flex-direction:column}.gift-form{margin-top:24px}.gift-form .btn{width:100%}.gift-facts{gap:10px 18px;margin:18px 0}.gift-media{height:200px;margin-top:20px}.gift-media p{font-size:18px}}
