/* Scoped voucher storefront: the shop header and other forms keep their theme. */
.gv-page{--gv-green:#294e40;--gv-ink:#202f2a;--gv-muted:#626b65;--gv-line:#dedfd7;background:#faf9f4;color:var(--gv-ink);padding:30px 0 64px;font-family:Nunito,Arial,sans-serif;font-size:16px;line-height:1.55}
.gv-page *{box-sizing:border-box}
.gv-container{width:calc(100% - 48px);max-width:1220px;margin:0 auto}
.gv-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;color:var(--gv-muted);margin:0 0 30px}
.gv-breadcrumb a{color:var(--gv-green);text-decoration:none}
.gv-breadcrumb a:hover{text-decoration:underline}
.gv-heading{text-align:center;max-width:820px;margin:0 auto 34px}
.gv-page .gv-heading h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(30px,3.7vw,48px);font-weight:500!important;line-height:1.15;letter-spacing:-.025em;margin:0 0 14px;color:var(--gv-ink)}
.gv-heading p{color:var(--gv-muted);margin:0;font-size:17px;line-height:1.6}
.gv-heading .gv-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--gv-green);margin-bottom:12px;font-weight:700}
.gv-purchase-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);align-items:start;gap:24px}
.gv-panel{min-width:0;background:#fffefa;border:1px solid #e4e5dd;border-radius:16px;padding:28px;box-shadow:0 8px 32px rgb(41 78 64 / 3%)}
.gv-fieldset,.gv-motifs{border:0;min-width:0;padding:0;margin:0}
.gv-fieldset legend{display:flex;align-items:center;gap:14px;float:none;width:100%;padding:0;margin:0 0 24px;font-family:Georgia,'Times New Roman',serif;font-size:24px;font-weight:500;line-height:1.3;color:var(--gv-ink)}
.gv-step{display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--gv-green);color:white;font:500 20px Georgia,serif}
.gv-field{min-width:0;margin:0 0 24px}
.gv-field label{display:block;color:var(--gv-ink);font-size:14px;line-height:1.45;font-weight:700;margin:0 0 8px}
.gv-field label span{color:var(--gv-muted);font-size:12px;font-weight:400}
.gv-label-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.gv-counter{white-space:nowrap;color:var(--gv-muted);font-size:12px;font-variant-numeric:tabular-nums}
.gv-page .gv-input{display:block;width:100%;min-width:0;height:52px;margin:0;padding:12px 14px;border:1px solid #cfd4ce;border-radius:9px;background:#fff;color:var(--gv-ink);font-family:inherit;font-size:16px;line-height:1.5;box-shadow:0 1px 2px rgb(0 0 0 / 2%);transition:border-color .15s,box-shadow .15s}
.gv-page .gv-input::placeholder{color:#757e77;opacity:1;font-weight:400}
.gv-page .gv-input:focus{border-color:var(--gv-green);outline:3px solid rgb(41 78 64 / 15%);outline-offset:1px;box-shadow:none}
.gv-page .gv-textarea{height:116px;min-height:100px;resize:vertical}
.gv-help{display:block;font-size:12px;line-height:1.6;color:var(--gv-muted);margin-top:7px}
.gv-buyer{border-top:1px solid var(--gv-line);padding-top:26px;margin-top:5px}
.gv-buyer legend{float:left}
.gv-buyer .gv-name-grid{clear:both}
.gv-name-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.gv-payment{padding-top:22px;border-top:1px solid var(--gv-line)}
.gv-total{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;font-weight:700;font-size:16px}
.gv-total strong{font-size:24px;color:var(--gv-ink);white-space:nowrap}
.gv-page .gv-button{display:flex;width:100%;min-height:54px;align-items:center;justify-content:center;gap:18px;padding:13px 18px;border:1px solid var(--gv-green);border-radius:9px;background:var(--gv-green);color:#fff;font-family:inherit;font-weight:700;font-size:16px;line-height:1.4;text-align:center;text-decoration:none;cursor:pointer;box-shadow:0 4px 10px rgb(41 78 64 / 12%);transition:background .15s,box-shadow .15s}
.gv-page .gv-button:hover{background:#1e3e31;color:#fff;box-shadow:0 5px 14px rgb(41 78 64 / 20%)}
.gv-page .gv-button:focus-visible,.gv-breadcrumb a:focus-visible{outline:3px solid #527e67;outline-offset:4px}
.gv-button span{font-size:22px;line-height:1}
.gv-secure{display:flex;justify-content:center;align-items:center;gap:10px;margin:14px 0 0;font-size:12px;color:var(--gv-muted)}
.gv-secure i{font-size:17px;color:var(--gv-green)}
.gv-preview-column{min-width:0}
.gv-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.gv-page .gv-preview-heading h2{font-family:inherit!important;font-size:13px!important;letter-spacing:.06em;text-transform:uppercase;font-weight:700!important;margin:0;line-height:1.5}
.gv-live{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--gv-muted);white-space:nowrap}
.gv-live>span{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#57834e}
.gv-preview{container-type:inline-size;position:relative;width:100%;aspect-ratio:210/148.5;overflow:hidden;background:#f7f3e8;border:1px solid #e4dfd2;box-shadow:0 6px 18px rgb(37 44 31 / 10%)}
.gv-preview>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gv-preview [data-voucher-field]{position:absolute;line-height:1.25;white-space:pre-wrap;overflow-wrap:anywhere}
.gv-preview--plain:after{content:"";position:absolute;inset:3%;border:2px solid #24313a;pointer-events:none}
.gv-preview-note{font-size:12px;line-height:1.6;color:var(--gv-muted);margin:12px 0 24px}
.gv-motifs{border-top:1px solid var(--gv-line);padding-top:22px}
.gv-motifs legend{float:left;width:100%;padding:0;margin:0 0 14px;font-family:inherit;font-size:16px;font-weight:700;line-height:1.5}
.gv-motif-grid{clear:both;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:390px;overflow:auto;padding:3px;margin:-3px}
.gv-design-option{position:relative;display:block;min-width:0;margin:0;cursor:pointer}
.gv-design-option>input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.gv-design-card{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid #cfd4ce;border-radius:10px;background:#fff;transition:border-color .15s,box-shadow .15s}
.gv-design-card>img{display:block;width:100%;height:auto;aspect-ratio:210/148.5;object-fit:cover}
.gv-design-label{display:flex;align-items:center;gap:10px;padding:12px 13px;font-size:13px;line-height:1.4;color:var(--gv-ink);overflow-wrap:anywhere}
.gv-radio{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;border:1.5px solid #909b92;border-radius:50%;background:#fff}
.gv-design-check{display:none;position:absolute;top:8px;right:8px;width:24px;height:24px;align-items:center;justify-content:center;border:2px solid #fff;border-radius:50%;background:var(--gv-green);color:white;font-size:14px}
.gv-design-option>input:checked+.gv-design-card{border-color:var(--gv-green);box-shadow:0 0 0 1px var(--gv-green);background:#edf2e9}
.gv-design-option>input:checked+.gv-design-card .gv-radio{border-color:var(--gv-green)}
.gv-design-option>input:checked+.gv-design-card .gv-radio:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--gv-green)}
.gv-design-option>input:checked+.gv-design-card .gv-design-check{display:flex}
.gv-design-option>input:focus-visible+.gv-design-card{outline:3px solid #527e67;outline-offset:2px}
.gv-design-option:hover .gv-design-card{border-color:var(--gv-green)}
.gv-benefits{list-style:none;margin:26px 0 0;padding:20px;background:#eef2e8;border-radius:10px;display:grid;gap:18px}
.gv-benefits li{display:flex;gap:16px;align-items:flex-start;margin:0;padding:0}
.gv-benefits i{flex:0 0 24px;font-size:24px;line-height:1.4;color:var(--gv-green)}
.gv-benefits strong{font-size:13px;font-weight:700;color:var(--gv-ink)}
.gv-benefits p{font-size:12px;line-height:1.6;color:var(--gv-muted);margin:3px 0 0}
.gv-error{padding:14px 18px;margin:0 0 24px;border:1px solid #d9a199;background:#fff2ef;border-radius:10px;color:#8d2f22}
@media(min-width:992px) and (min-height:800px){.gv-preview-column{position:sticky;top:24px}}
@media(max-width:991px){.gv-purchase-grid{grid-template-columns:minmax(0,1fr);max-width:620px;margin:auto}.gv-preview-column{grid-row:1}.gv-heading{margin-bottom:26px}.gv-benefits{grid-template-columns:1fr;gap:12px}.gv-preview-panel{padding:24px}}
@media(max-width:575px){.gv-page{padding:20px 0 40px}.gv-container{width:calc(100% - 32px)}.gv-panel{padding:20px;border-radius:12px}.gv-heading p{font-size:15px}.gv-breadcrumb{font-size:12px;margin-bottom:24px}.gv-fieldset legend{font-size:22px;gap:12px}.gv-field label{font-size:13px}.gv-label-row{gap:8px}.gv-name-grid{gap:12px}.gv-design-label{padding:10px;gap:10px}.gv-total{font-size:14px}.gv-benefits{padding:16px}.gv-field label span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.gv-page *{transition:none!important}}
