/* Regalá una entrada */
.gift-section{padding-top:36px}
.gift-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px 48px;align-items:start}
.gift-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;padding:0;list-style:none;counter-reset:gs}
.gift-steps li{counter-increment:gs;position:relative;padding:16px 16px 16px 58px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted);line-height:1.4}
.gift-steps li::before{content:counter(gs);position:absolute;left:16px;top:14px;width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff;font-weight:700;display:grid;place-items:center}
.gift-steps b{color:var(--ink)}
.gift-form,.gift-done{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.gift-done{grid-template-columns:1fr}
.gift-field{display:grid;gap:6px;font-size:15px;color:var(--muted)}
.gift-field:first-child,.gift-field-wide{grid-column:1/-1}
.gift-field input,.gift-field select,.gift-field textarea{width:100%;min-height:50px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;font-size:16px}
.gift-field textarea{resize:vertical;min-height:70px}
.gift-field :focus{outline:2px solid var(--red);outline-offset:1px}
.gift-qty{display:flex;align-items:center;min-height:50px;border:1px solid var(--line);border-radius:8px;background:var(--bg);width:max-content}
.gift-qty button{width:50px;height:48px;border:0;background:transparent;color:var(--ink);font-size:24px}
.gift-qty output{min-width:40px;text-align:center;font-size:20px;font-weight:700;color:var(--ink)}
.gift-total{grid-column:1/-1;margin:0;font-size:20px;font-weight:600}
.gift-submit{grid-column:1/-1;width:100%;font-size:18px}
.gift-status{grid-column:1/-1;margin:0;min-height:1.4em}
.gift-done h2{font-size:clamp(32px,4vw,44px)}
.gift-done-summary{color:var(--muted)}
.gift-done-step{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--line)}
.gift-done-step b{font-size:18px}
.gift-done-step p{color:var(--muted)}
.gift-bank{margin:0;padding:14px;border-radius:8px;background:var(--bg);border:1px solid var(--line);white-space:pre-wrap;font:inherit;font-size:17px;user-select:all}
.gift-secondary{justify-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:1px solid var(--red);border-radius:6px;background:transparent;color:var(--ink);font-weight:600}
.gift-rules{padding:4px 0}
.gift-rules h2{font-size:30px;margin:0 0 12px}
.gift-rules ul{margin:0;padding-left:20px;color:var(--muted);display:grid;gap:8px}
.gift-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 0}
.gift-card{max-width:560px;margin:8px 0 0;padding:30px 28px;border-radius:18px;background:linear-gradient(160deg,#2a0d12,var(--surface) 55%);border:1px solid #5a1a22;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.gift-card.is-void{opacity:.75;filter:grayscale(.6)}
.gift-card-kicker{color:#ff8b95;font-size:14px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.gift-card-to{font-size:clamp(40px,8vw,60px);margin:10px 0 4px}
.gift-card-from{color:var(--muted);font-size:18px}
.gift-card-message{margin:18px 0 0;padding:0 0 0 14px;border-left:3px solid var(--red);font-size:19px;font-style:italic}
.gift-card-facts{display:grid;grid-template-columns:auto 1fr;gap:14px 28px;margin:22px 0 0}
.gift-card-facts div{display:contents}
.gift-card-facts dt{color:var(--muted)}
.gift-card-facts dd{margin:0;font-weight:600}
.gift-card-code-label{margin-top:24px;color:var(--muted);font-size:14px;text-transform:uppercase;letter-spacing:.08em}
.gift-card-code{font-family:var(--display);font-size:clamp(40px,10vw,56px);letter-spacing:.06em;font-weight:600;line-height:1.1}
.gift-card-state{margin-top:12px;font-weight:600;color:#ff8b95}
.gift-card-rule{margin-top:14px;color:var(--ink)}
.gift-card-place{margin-top:18px;color:var(--muted);font-size:14px}
.gift-home-section .notify-copy p{max-width:36em}
@media(max-width:860px){.gift-layout{grid-template-columns:1fr}.gift-steps{grid-template-columns:1fr}.gift-form{grid-template-columns:1fr;padding:18px}.gift-done{padding:18px}.gift-card{padding:24px 20px}.gift-actions .reserve-main,.gift-actions .gift-secondary{flex:1 1 100%}}
