.gift-hero{display:grid;grid-template-columns:1fr 1fr;min-height:min(560px,72svh);background:radial-gradient(ellipse 85% 65% at 70% 20%,rgba(196,169,107,.12),transparent 50%),linear-gradient(168deg,#242018 0%,#18160f 55%,#12100c 100%)}
.gift-hero-text{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,8vw,96px) clamp(24px,5vw,72px)}
.gift-hero h1{font-family:var(--fd);font-size:clamp(40px,5vw,72px);font-weight:300;line-height:1.05;color:var(--warm-white);margin-bottom:20px}
.gift-hero h1 em{font-style:italic;color:var(--gold)}
.gift-hero-text p{font-size:15px;color:rgba(255,255,255,.55);line-height:1.85;max-width:480px;margin-bottom:28px}
.gift-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.gift-card-visual{display:flex;align-items:center;justify-content:center;padding:clamp(32px,5vw,64px);background:rgba(255,255,255,.03)}
.gift-card-mock{position:relative;width:min(100%,320px);aspect-ratio:1.586;border-radius:16px;background:linear-gradient(145deg,#fdfaf6 0%,var(--cream) 45%,#e8dfd0 100%);box-shadow:0 24px 64px rgba(0,0,0,.35);padding:28px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.gc-pattern{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(125deg,transparent 40%,rgba(196,169,107,.25) 47%,transparent 54%),var(--texture-marble-grain,none);background-size:auto,180px 180px;pointer-events:none}
.gc-logo{position:relative;z-index:1}
.gc-logo img{height:40px;width:auto;mix-blend-mode:multiply}
.gc-amount{position:relative;z-index:1;font-family:var(--fd);font-size:56px;font-weight:300;color:var(--charcoal);line-height:1}
.gc-label{position:relative;z-index:1;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim)}
.amounts-section{padding:0 0 64px}
.vagaro-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px;color:var(--mid);font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.vagaro-spinner{width:40px;height:40px;border-radius:50%;border:2px solid rgba(196,169,107,.25);border-top-color:var(--gold);animation:vagaroSpin .8s linear infinite}
.how-section,.occasions-section{padding:clamp(56px,8vw,96px) clamp(24px,5vw,72px)}
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:48px}
.how-step{padding:32px 28px;background:var(--warm-white);border:1px solid rgba(24,22,15,.08);border-radius:12px}
.step-num{font-family:var(--fd);font-size:48px;font-weight:300;color:var(--gold);opacity:.5;line-height:1;margin-bottom:12px}
.step-title{font-family:var(--fd);font-size:22px;font-weight:400;color:var(--charcoal);margin-bottom:10px}
.step-desc{font-size:14px;color:var(--mid);line-height:1.75}
.occasions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.occasion-card{padding:28px 24px;background:var(--warm-white);border:1px solid rgba(24,22,15,.08);border-radius:12px;transition:border-color .2s,box-shadow .2s}
.occasion-card:hover{border-color:rgba(196,169,107,.35);box-shadow:0 12px 32px rgba(24,22,15,.06)}
.occasion-icon{display:flex;width:40px;height:40px;align-items:center;justify-content:center;color:var(--gold);margin-bottom:14px}
.occasion-title{font-family:var(--fd);font-size:20px;font-weight:400;color:var(--charcoal);margin-bottom:8px}
.occasion-desc{font-size:13px;color:var(--mid);line-height:1.7}
@media(max-width:1080px){.gift-hero{grid-template-columns:1fr}.gift-card-visual{min-height:280px}.how-grid,.occasions-grid{grid-template-columns:1fr}}
@media(max-width:600px){.occasions-grid{grid-template-columns:1fr}}
