:root{--swatch-image-width:100px;--swatch-image-width-tablet:var(--swatch-image-width);--swatch-image-width-mobile:var(--swatch-image-width);--swatch-gap-desktop:40px;--swatch-gap-tablet:24px;--swatch-gap-mobile:18px;--swatch-card-min-desktop:200px;--swatch-card-width-tablet:180px;--swatch-card-width-mobile:160px;--swatch-radius:6px;--swatch-border:3px;--swatch-selected-border:5px;--swatch-name-size:1.05rem;--swatch-name-size-mobile:0.95rem}
.product-form__input--swatch{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--swatch-card-min-desktop),1fr));gap:var(--swatch-gap-desktop);width:100%;text-align:center;margin-top:25px;justify-items:center;align-items:start;padding-inline:var(--page-padding);box-sizing:border-box}
.product-form__input--swatch input[type=radio]{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;overflow:hidden}
.product-form__input--swatch .variant-swatch__label{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%;max-width:260px;user-select:none;text-align:center;border:var(--swatch-border) solid #535252;padding:8px 10px;border-radius:var(--swatch-radius);transition:transform .12s,box-shadow .12s,border-color .12s;background-color:var(--background-color);position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent}
.product-form__input--swatch .variant-swatch__label:hover{transform:translateY(-1px)}
.product-form__input--swatch .variant-swatch__image{display:block;width:var(--swatch-image-width);height:auto;object-fit:cover;border:none;margin:0}
.product-form__input--swatch .swatch-fallback{display:inline-flex;align-items:center;justify-content:center;width:var(--swatch-image-width);padding:15px 0;background-color:var(--background-color);font-size:.95rem;letter-spacing:var(--letter-spacing);color:var(--text-color);font-weight:var(--font-body-weight);border:none}
.product-form__input--swatch .variant-swatch__name{display:block;margin-top:8px;line-height:1.3;color:var(--text-color);letter-spacing:var(--letter-spacing);font-size:var(--swatch-name-size);font-weight:var(--font-body-weight);text-align:center;max-width:100%;padding:6px 4px;white-space:normal;overflow-wrap:anywhere;word-break:break-word;text-overflow:clip}
.product-form__input--swatch .variant-swatch__name br{display:none!important}
.product-form__input--swatch .variant-swatch__name>*{display:inline!important}
.product-form__input--swatch input[type=radio]:checked+.variant-swatch__label{border:var(--swatch-selected-border) solid #000;box-shadow:0 0 0 0 transparent,0 0 10px var(--swatch-glow,rgba(0,0,0,.35)),0 0 18px var(--swatch-glow-soft,rgba(0,0,0,.18));border-radius:var(--swatch-radius)}
@media (max-width:520px){.product-form__input--swatch{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--swatch-gap-mobile)}
.product-form__input--swatch .variant-swatch__label{max-width:var(--swatch-card-width-mobile);padding:6px 8px;margin-inline:auto}
.product-form__input--swatch .swatch-fallback,.product-form__input--swatch .variant-swatch__image{width:var(--swatch-image-width-mobile)}
.product-form__input--swatch .variant-swatch__name{font-size:var(--swatch-name-size-mobile)}}@media (min-width:521px) and (max-width:820px){.product-form__input--swatch{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--swatch-gap-tablet)}
.product-form__input--swatch .variant-swatch__label{max-width:var(--swatch-card-width-tablet)}
.product-form__input--swatch .swatch-fallback,.product-form__input--swatch .variant-swatch__image{width:var(--swatch-image-width-tablet)}}@media (prefers-reduced-motion:reduce){.product-form__input--swatch .variant-swatch__label:hover{transform:none}}.product-form__input--swatch .variant-swatch__label>*{pointer-events:none}
.product-form__input:has(input[type=radio][name^="Select Gift Card Value"]){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.product-form__input input[type=radio][name^="Select Gift Card Value"]{position:absolute;opacity:0;pointer-events:none;width:0;height:0}
.product-form__input input[type=radio][name^="Select Gift Card Value"]+label{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 8px;border:2px solid #000;background:#fff;color:inherit;text-align:center;border-radius:var(--swatch-radius,6px);cursor:pointer;user-select:none}
.product-form__input input[type=radio][name^="Select Gift Card Value"]:checked+label{box-shadow:0 0 0 2px #000 inset}
.product-form__input input[type=radio][name^="Select Gift Card Value"]:focus-visible+label{outline:#000 solid 2px;outline-offset:2px}
.product-form__input input[type=radio][name^="Select Gift Card Value"]:disabled+label{opacity:.5;cursor:not-allowed}