/* Scoped to the group-gift selector; existing article and cart styles are preserved. */
.group-gifts{margin:2rem 0;padding:clamp(1rem,4vw,2rem);background:var(--bg-2,#fffdf7);border:1px solid var(--line-bright,#d4cdb8);border-radius:20px;scroll-margin-top:8rem}
.group-gifts [hidden]{display:none!important}
.group-gifts h2{margin:0 0 .75rem!important}
.group-gifts p{margin:.75rem 0!important}
.group-gifts form{margin:1.25rem 0}
.group-gifts fieldset{border:0;min-width:0;padding:0;margin:0}
.group-gifts label,.group-gifts legend{display:block;font:600 1rem/1.5 var(--font-body,sans-serif);margin:0 0 .5rem}
.group-gifts select,.group-gifts input{width:100%;min-width:0;max-width:100%;min-height:48px;border:1px solid var(--line-bright,#d4cdb8);border-radius:10px;background:#fff;color:var(--ink,#1a1a1a);font:400 1rem/1.5 var(--font-body,sans-serif);padding:.65rem .8rem}
.group-gifts select{margin-bottom:1rem}
.group-gifts__quantity{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap}
.group-gifts__custom{flex:1 1 160px;max-width:220px}
.group-gifts__presets{display:flex;gap:.5rem;flex-wrap:wrap}
.group-gifts button{cursor:pointer;font:600 1rem/1.4 var(--font-body,sans-serif);min-height:48px;border-radius:10px;border:1px solid var(--ink,#1a1a1a);padding:.65rem 1rem;transition:background-color .15s,color .15s}
.group-gifts__presets button{color:var(--ink,#1a1a1a);background:transparent;min-width:50px}
.group-gifts__presets button[aria-pressed=true]{background:var(--ink,#1a1a1a);color:#fff}
.group-gifts :is(button,input,select,a):focus-visible{outline:3px solid #18605b;outline-offset:3px}
.group-gifts button:disabled{cursor:default;opacity:.6}
.group-gifts__summary{margin-top:1.25rem}
.group-gifts__product{display:grid;grid-template-columns:120px minmax(0,1fr);gap:1rem;align-items:center}
.group-gifts__product img{display:block;width:120px;height:120px;object-fit:contain;border-radius:12px;background:#f3efe6}
.group-gifts__product a{font-weight:700;text-decoration:underline;overflow-wrap:anywhere}
.group-gifts__product p{font-size:.95rem;line-height:1.5}
.group-gifts dl{margin:1rem 0;padding:0;border-top:1px solid var(--line,#e8e2d0)}
.group-gifts dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem;padding:.65rem 0;border-bottom:1px solid var(--line,#e8e2d0)}
.group-gifts dt{font-weight:400}
.group-gifts dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;font-weight:600;max-width:18ch}
.group-gifts__total{font-size:1.12rem}
.group-gifts__total dt,.group-gifts__total dd{font-weight:700}
.group-gifts__note{font-size:.94rem;line-height:1.6;color:var(--ink-dim,#5a5a5a)}
.group-gifts__actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}
.group-gifts__add{background:var(--ink,#1a1a1a);color:#fff;flex:1 1 220px}
.group-gifts__cart{display:inline-flex;min-height:48px;align-items:center;font-weight:700;text-decoration:underline}
.group-gifts__status{min-height:1.6em}
.group-gifts__status[role=alert]{color:#8c211a}
.group-gifts details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line,#e8e2d0)}
.group-gifts details summary{cursor:pointer;font-weight:600;min-height:44px}
.group-gifts details a{overflow-wrap:anywhere}
@media(max-width:480px){.group-gifts__product{grid-template-columns:88px minmax(0,1fr);gap:.75rem}.group-gifts__product img{width:88px;height:88px}.group-gifts dl>div{grid-template-columns:minmax(0,1fr) minmax(6rem,.8fr)}.group-gifts dd{max-width:none}.group-gifts__actions{align-items:stretch}.group-gifts__cart{justify-content:center;flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.group-gifts button{transition:none}}
