.gallery{display:grid;grid-template-columns:90px minmax(0,1fr);grid-template-areas:"thumbs stage";gap:1rem;align-items:start}.gallery--single{grid-template-columns:1fr;grid-template-areas:"stage"}.gallery__stage{grid-area:stage;position:relative;aspect-ratio:.92;border-radius:28px;overflow:hidden;background:var(--white)}.gallery__frames{position:absolute;inset:0}.gallery__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease}.gallery__img.is-active{opacity:1}.gallery__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:48px;height:48px;padding:0;border:none;border-radius:50%;background:var(--wine);color:#fff;cursor:pointer;transition:background .2s ease,transform .15s ease}.gallery__nav:hover{background:var(--wine-dark)}.gallery__nav:active{transform:translateY(-50%) scale(.92)}.gallery__nav--prev{left:1rem}.gallery__nav--next{right:1rem}.gallery__counter{position:absolute;right:1rem;bottom:1rem;z-index:2;padding:.3rem .7rem;border-radius:999px;background:#3f3d3bb8;color:#fff;font-size:.82rem;font-weight:600;font-variant-numeric:tabular-nums}.gallery__thumbs{grid-area:thumbs;display:flex;flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;max-height:640px;overflow-y:auto;scrollbar-width:thin}.gallery__thumb{display:block;width:100%;aspect-ratio:1;padding:0;overflow:hidden;border:2px solid transparent;border-radius:16px;background:var(--white);cursor:pointer;transition:border-color .2s ease,transform .15s ease}.gallery__thumb img{display:block;width:100%;height:100%;object-fit:cover}.gallery__thumb:hover{transform:translateY(-2px)}.gallery__thumb[aria-current=true]{border-color:var(--wine)}.gallery__nav:focus-visible,.gallery__thumb:focus-visible{outline:3px solid var(--blue);outline-offset:2px}@media(prefers-reduced-motion:reduce){.gallery__img,.gallery__nav,.gallery__thumb{transition:none}}@media(max-width:560px){.gallery{grid-template-columns:1fr;grid-template-areas:"stage" "thumbs"}.gallery__stage{border-radius:20px}.gallery__thumbs{flex-direction:row;flex-wrap:wrap;max-height:none;overflow:visible}.gallery__thumb{width:64px}}.variant-picker{display:grid;gap:1.1rem}.variant-group{display:grid;gap:.55rem}.variant-group__label{color:var(--ink-soft);font-size:.92rem;font-weight:600}.variant-group__label b{color:var(--ink);font-weight:600}.variant-options{display:flex;flex-wrap:wrap;gap:.5rem}.chip{min-width:46px;height:46px;padding:0 1rem;border:1.5px solid var(--line);border-radius:100px;background:var(--white);color:var(--ink);font:inherit;font-weight:600;cursor:pointer;transition:border-color .2s ease,color .2s ease}.chip[aria-pressed=true]{border-color:var(--wine);color:var(--wine)}.chip:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}.swatch{display:grid;place-items:center;width:46px;height:46px;padding:4px;border:2px solid transparent;border-radius:50%;background:none;cursor:pointer;transition:border-color .2s ease}.swatch__dot{display:block;width:100%;height:100%;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #00000024}.swatch[aria-pressed=true]{border-color:var(--wine)}.swatch:disabled{opacity:.35;cursor:not-allowed}.chip:focus-visible,.swatch:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.product-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);grid-template-areas:"media info" "desc info";column-gap:clamp(2rem,5vw,4.5rem);row-gap:clamp(1.5rem,4vw,3rem);padding:clamp(3rem,7vw,5.5rem) 0;align-items:start}.product-media{grid-area:media}.product-info{grid-area:info;align-self:stretch}.product-info h1{font-size:clamp(1.9rem,3vw,2.75rem);color:var(--wine)}.buy-card{position:sticky;top:110px;margin-top:1.6rem}.product-discontinued{border-bottom:2px solid var(--wine);background:var(--paper);font-size:.92rem;color:var(--ink)}.product-discontinued__inner{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding-top:.85rem;padding-bottom:.85rem}.product-discontinued svg{flex-shrink:0;color:var(--wine)}.product-discontinued a{font-weight:700;color:var(--wine);text-decoration:underline;white-space:nowrap}.product-discontinued a:hover{color:var(--wine-dark)}.buy-card__recommended{display:inline-block;margin:0 0 .8rem;padding:.35rem .85rem;background:var(--green);color:#fff;border-radius:100px;font-size:.82rem;font-weight:700;letter-spacing:.02em}.buy-card__price{font-family:var(--serif);font-size:clamp(1.9rem,3vw,2.4rem);font-weight:700;line-height:1}.buy-card__form{display:grid;gap:.9rem;margin-top:1.15rem}.buy-card__row{display:grid;grid-template-columns:96px 1fr;gap:.8rem;align-items:end}.buy-card__cta{width:100%;min-height:50px;justify-content:center}.buy-card__notice{margin:.2rem 0 0;color:var(--wine);font-size:.9rem;font-weight:700}.buy-card__trust{display:grid;gap:.65rem;margin:1.2rem 0 0;padding:1.2rem 0 0;border-top:1px solid var(--line);list-style:none}.buy-card__trust li{display:flex;align-items:center;gap:.7rem;color:var(--ink-soft);font-size:.92rem}.buy-card__trust svg{flex-shrink:0;color:var(--green)}.product-description{grid-area:desc;padding:0 0 1rem;max-width:65ch}@media(max-width:980px){.product-layout{grid-template-columns:1fr;grid-template-areas:"media" "info" "desc"}.buy-card{position:static}.product-description{max-width:none}}
