/* Quality Chops gift vouchers page (gift-vouchers.html + js/qc-gift-vouchers.js). Look from the design handoff
   gift-vouchers-update/screenshots/website/13 and 14. */
.gv-hero{position:relative;color:#F7F4EE;background:#22302D url(/assets/IMG_8581-hero.webp) center/cover no-repeat}
.gv-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,31,29,.82),rgba(22,31,29,.55))}
.gv-hero-inner{position:relative;max-width:1200px;margin:0 auto;padding:clamp(56px,9vw,110px) clamp(24px,3vw,28px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:28px 48px;align-items:center}
.gv-eyebrow{font-family:'Playfair Display',serif;font-style:italic;font-weight:500;font-size:clamp(20px,2.4vw,26px);color:#E8B96A;margin-bottom:8px}
.gv-hero h1{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(38px,6.4vw,64px);line-height:1;letter-spacing:-.02em;margin:0;text-wrap:balance}
.gv-hero-copy{font-size:clamp(16.5px,1.6vw,19px);line-height:1.6;font-weight:300;margin:0 0 24px;color:rgba(247,244,238,.92)}
.gv-btn-gold{display:inline-block;background:#E8B96A;color:#22302D;font-weight:500;font-size:16.5px;padding:15px 30px;border-radius:999px}
.gv-btn-gold:hover{background:#f0c883;color:#22302D}

.gv-wrap{max-width:1200px;margin:0 auto;padding:clamp(40px,6vw,72px) clamp(24px,3vw,28px)}
.gv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:28px;align-items:start}
.gv-panel{background:#fff;border:1px solid rgba(34,48,45,.09);border-radius:22px;padding:clamp(24px,3vw,32px)}
.gv-step{font-family:'Playfair Display',serif;font-style:italic;font-weight:500;font-size:20px;color:#0C7F79;margin:0}
.gv-panel h2,.gv-terms h2{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(26px,3vw,32px);line-height:1.15;margin:2px 0 16px;color:#22302D}
.gv-panel h2 + .gv-step{margin-top:28px}
.gv-amounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.gv-amount{border:1.5px solid rgba(34,48,45,.18);background:#fff;border-radius:14px;padding:16px 10px;font-family:'Playfair Display',serif;font-weight:700;font-size:24px;color:#22302D;cursor:pointer;min-height:56px}
.gv-amount:hover{border-color:#0C7F79}
.gv-amount[aria-pressed="true"]{background:#22302D;border-color:#22302D;color:#F7F4EE}
.gv-amount:focus-visible,.gv-field input:focus-visible,.gv-field textarea:focus-visible,.gv-pay:focus-visible{outline:2px solid #0C7F79;outline-offset:2px}
.gv-fields{display:grid;gap:14px}
.gv-field{display:block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#4c5b58;font-weight:500}
.gv-field .gv-opt{text-transform:none;letter-spacing:0;font-weight:300;color:#6b7a77}
.gv-field input,.gv-field textarea{display:block;width:100%;margin-top:7px;padding:13px 14px;border:1px solid rgba(34,48,45,.18);border-radius:12px;font:inherit;font-size:16px;text-transform:none;letter-spacing:0;font-weight:400;color:#22302D;background:#fff}
.gv-field textarea{min-height:96px;resize:vertical}
.gv-count{display:block;margin-top:4px;font-size:12px;text-transform:none;letter-spacing:0;font-weight:300;color:#6b7a77;text-align:right}
.gv-pay{margin-top:24px;width:100%;background:#0C7F79;color:#fff;border:0;border-radius:999px;padding:16px 24px;font:inherit;font-size:17px;font-weight:500;cursor:pointer;min-height:52px}
.gv-pay:hover{background:#095c58}
.gv-pay[disabled]{opacity:.6;cursor:default}
.gv-note{margin:12px 0 0;font-size:14px;line-height:1.5;color:#6b7a77;font-weight:300}
.gv-error{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#F6E2DC;color:#8C3323;font-size:15px;line-height:1.5}
.gv-info{margin:0 0 18px;padding:12px 14px;border-radius:12px;background:#DCE7E0;color:#1d4a41;font-size:15px;line-height:1.5}

/* The voucher preview, as the dark gift card in the design */
.gv-card{background:#22302D;border-radius:22px;padding:clamp(12px,2.6vw,30px);position:sticky;top:130px}
.gv-card-inner{border:1px solid rgba(169,195,182,.35);border-radius:14px;padding:clamp(24px,2.4vw,28px);color:#F7F4EE}
.gv-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.gv-card-name{font-family:'Playfair Display',serif;font-weight:700;font-size:20px}
.gv-card-kind{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#A9C3B6;margin-top:4px}
.gv-card-logo{width:46px;height:46px;border-radius:50%;flex-shrink:0}
.gv-card-amount{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(48px,6vw,64px);line-height:1;margin:26px 0 8px;color:#E8B96A}
.gv-card-sub{font-size:14.5px;color:rgba(247,244,238,.78);font-weight:300;line-height:1.45}
.gv-card-people{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid rgba(169,195,182,.3);margin-top:20px;padding-top:16px}
.gv-card-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#A9C3B6}
.gv-card-value{margin-top:6px;font-size:15.5px;overflow-wrap:anywhere}
.gv-card-msg{font-family:'Playfair Display',serif;font-style:italic;font-weight:500;font-size:18px;line-height:1.4;margin-top:18px;overflow-wrap:anywhere}

.gv-done-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;border-top:1px solid rgba(34,48,45,.1);margin-top:20px;padding-top:18px}
.gv-done-label{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#0C7F79}
.gv-done-value{margin-top:6px;font-size:17px;font-weight:500}
.gv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.gv-actions a{display:inline-block;border-radius:999px;padding:13px 24px;font-weight:500}
.gv-actions .gv-primary{background:#0C7F79;color:#fff}
.gv-actions .gv-secondary{border:1px solid rgba(34,48,45,.25);color:#22302D}

.gv-terms{padding-top:0}
.gv-terms ul{margin:0;padding-left:20px;max-width:760px;font-size:16.5px;line-height:1.65;color:#4c5b58;font-weight:300}
.gv-terms li{margin-bottom:6px}

@media (max-width:760px){.gv-card{position:static}}
