/* Voyara Gift card */
.vy-gift{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:start}
.vy-gift__prev{position:sticky;top:calc(24px + var(--vy-head-offset,0px));transition:top .3s ease;display:flex;flex-direction:column;gap:12px}
.vy-gift__card{aspect-ratio:1.6/1;border-radius:24px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 24px 48px rgba(21,32,31,.18);overflow:hidden;background:var(--vy-main,#0E3B36);color:#fff;transition:background .2s ease,color .2s ease}
.vy-gift__top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.vy-gift__brand{font-family:var(--vy-font-heading,Marcellus,Georgia,serif);font-size:24px;line-height:1}
.vy-gift__tag{height:28px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;background:var(--vy-accent,#C9962B);color:#15201F}
.vy-gift__amt{font-family:var(--vy-font-heading,Marcellus,Georgia,serif);font-size:56px;line-height:1}
.vy-gift__msg{display:flex;flex-direction:column;gap:4px;font-size:14px}
.vy-gift__msg p{margin:0;font-size:15px;line-height:1.5;opacity:.9;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.vy-gift__msg b{font-weight:600}
.vy-gift__when{margin:0;text-align:center;font-size:13px;color:var(--vy-muted,#5C6664)}
.vy-gift__form{display:flex;flex-direction:column;gap:18px;padding:28px;background:var(--vy-bg,#fff);border-radius:24px;border:1px solid var(--vy-line,#E6E1D8)}
.vy-gift__set{margin:0;padding:0;border:0;min-width:0}
.vy-gift__set legend{padding:0;margin-bottom:8px;font:500 13px/1.3 var(--vy-font-body,Jost,sans-serif);color:var(--vy-ink,#15201F)}
.vy-gift__designs,.vy-gift__amounts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.vy-gift__design{position:relative;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 14px 0 8px;border-radius:999px;border:1px solid var(--vy-line,#E6E1D8);background:var(--vy-bg,#fff);font-size:14px;font-weight:500;color:var(--vy-ink,#15201F);cursor:pointer}
.vy-gift__design i{width:28px;height:28px;border-radius:999px;display:inline-block;border:1px solid rgba(0,0,0,.1)}
.vy-gift__design input,.vy-gift__chip input{position:absolute;opacity:0;width:1px;height:1px}
.vy-gift__design:has(input:checked){border-color:var(--vy-main,#0E3B36);box-shadow:0 0 0 1px var(--vy-main,#0E3B36)}
.vy-gift__chip{position:relative;cursor:pointer}
.vy-gift__chip span{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--vy-line,#E6E1D8);background:var(--vy-bg,#fff);font-size:14px;font-weight:500;color:var(--vy-ink,#15201F)}
.vy-gift__chip input:checked+span{background:var(--vy-main,#0E3B36);border-color:var(--vy-main,#0E3B36);color:var(--vy-on-main,#fff)}
.vy-gift__chip.is-off input:checked+span{background:var(--vy-bg,#fff);border-color:var(--vy-line,#E6E1D8);color:var(--vy-ink,#15201F)}
.vy-gift__design:has(input:focus-visible),.vy-gift__chip input:focus-visible+span{outline:2px solid var(--vy-accent,#C9962B);outline-offset:2px}
.vy-gift .vy-gift__other{width:110px;height:40px;border:1px solid var(--vy-line,#E6E1D8);border-radius:999px;padding:0 14px;font:400 14px var(--vy-font-body,Jost,sans-serif)}
.vy-gift__two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vy-gift__row{display:flex;justify-content:space-between}
.vy-gift__left{font-style:normal;font-weight:400;color:var(--vy-muted,#5C6664)}
.vy-gift__go{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 20px;border:0;border-radius:999px;background:var(--vy-main,#0E3B36);color:var(--vy-on-main,#fff);font:500 15px/1 var(--vy-font-body,Jost,sans-serif);cursor:pointer;transition:background-color .2s ease}
.vy-gift__go:hover{background:var(--vy-main-hover,var(--vy-main,#0E3B36))}
.vy-gift__go:focus-visible{outline:2px solid var(--vy-accent,#C9962B);outline-offset:2px}
.vy-gift__go[disabled]{opacity:.6;cursor:progress}
.vy-gift__msg2{margin:0;font-size:14px;color:var(--vy-main,#0E3B36)}
.vy-gift__msg2:empty{display:none}
.vy-gift__msg2.is-error{color:var(--vy-bad,#B3261E)}
.vy-gift__msg2 a{color:inherit;font-weight:600}
@media (max-width:1024px){.vy-gift{grid-template-columns:1fr}.vy-gift__prev{position:static;max-width:520px}}
@media (max-width:640px){.vy-gift__form{padding:18px}.vy-gift__two{grid-template-columns:1fr}.vy-gift__card{padding:20px}.vy-gift__amt{font-size:40px}}
@media (prefers-reduced-motion:reduce){.vy-gift__card{transition:none}}
