.nir-hbv.svelte-17yazcx{border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-surface)}.nir-hbv__summary.svelte-17yazcx{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);list-style:none}.nir-hbv__summary.svelte-17yazcx::-webkit-details-marker{display:none}.nir-hbv__summary.svelte-17yazcx:after{content:"▸";margin-inline-start:auto;color:var(--color-text-muted);transition:transform .15s ease}.nir-hbv[open].svelte-17yazcx .nir-hbv__summary:where(.svelte-17yazcx):after{transform:rotate(90deg)}.nir-hbv__badge.svelte-17yazcx{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted)}.nir-hbv__body.svelte-17yazcx{padding:0 var(--space-5) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.nir-hbv__fields.svelte-17yazcx{margin:0;display:grid;gap:var(--space-3)}.nir-hbv__row.svelte-17yazcx{display:grid;grid-template-columns:minmax(7rem,max-content) 1fr;gap:var(--space-3);align-items:baseline}.nir-hbv__row.svelte-17yazcx dt:where(.svelte-17yazcx){margin:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted)}.nir-hbv__row.svelte-17yazcx dd:where(.svelte-17yazcx){margin:0;font-size:var(--font-size-sm);color:var(--color-text)}.nir-hbv__producer-name.svelte-17yazcx,.nir-hbv__addr-line.svelte-17yazcx{display:block}.nir-hbv__statement.svelte-17yazcx{margin:0;padding:var(--space-3) var(--space-4);background-color:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text)}.roast-provenance.svelte-13qkshj{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.roast-provenance__freshness.svelte-13qkshj{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-accent)}.roast-provenance__roaster.svelte-13qkshj{font-weight:var(--font-weight-regular);color:var(--color-text-muted)}.roast-provenance__grid.svelte-13qkshj{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-4);margin:0}.roast-provenance__notes.svelte-13qkshj{grid-column:1 / -1}.roast-provenance__grid.svelte-13qkshj dt:where(.svelte-13qkshj){margin:0;font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-subtle)}.roast-provenance__grid.svelte-13qkshj dd:where(.svelte-13qkshj){margin:var(--space-1) 0 0;color:var(--color-text)}.roast-provenance__notes.svelte-13qkshj ul:where(.svelte-13qkshj){list-style:none;margin:var(--space-1) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.nir-chip.svelte-13qkshj{padding:var(--space-1) var(--space-2);background-color:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-muted)}.nir-variant.svelte-1obp0g1{display:flex;flex-direction:column;gap:var(--space-5)}.nir-variant__group.svelte-1obp0g1{margin:0;padding:0;border:0}.nir-variant__legend.svelte-1obp0g1{padding:0;margin-bottom:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.nir-variant__options.svelte-1obp0g1{display:flex;flex-wrap:wrap;gap:var(--space-2)}.nir-variant__option.svelte-1obp0g1{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background-color:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none}.nir-variant__option.svelte-1obp0g1:hover:not(.is-disabled){border-color:var(--color-border-strong)}.nir-variant__option.svelte-1obp0g1:has(input:where(.svelte-1obp0g1):checked){border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.nir-variant__option.svelte-1obp0g1:has(input:where(.svelte-1obp0g1):focus-visible){outline:2px solid var(--color-focus);outline-offset:2px}.nir-variant__option.is-disabled.svelte-1obp0g1{opacity:.45;cursor:not-allowed;text-decoration:line-through}.nir-variant__price.svelte-1obp0g1{display:flex;align-items:baseline;gap:var(--space-3);margin:0}.nir-variant__price-amount.svelte-1obp0g1{font-family:var(--font-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text)}.nir-variant__in-stock.svelte-1obp0g1{font-size:var(--font-size-sm);color:var(--color-success)}.nir-variant__sold-out.svelte-1obp0g1{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-danger)}.nir-variant__limited-note.svelte-1obp0g1{font-size:var(--font-size-sm);color:var(--color-warning)}.nir-variant__unavailable.svelte-1obp0g1{margin:0;color:var(--color-warning);font-size:var(--font-size-sm)}.nir-variant__cart.svelte-1obp0g1{display:flex;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap}.nir-variant__qty.svelte-1obp0g1{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.nir-variant__qty-input.svelte-1obp0g1{width:4.5rem;padding:var(--space-2) var(--space-3);background-color:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-base)}.nir-variant__qty-input.svelte-1obp0g1:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.product.svelte-1iljj73{display:grid;grid-template-columns:1fr;grid-template-areas:"media" "info" "provenance";gap:var(--space-8);padding-block:var(--space-8)}.product__media{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;background:linear-gradient(135deg,var(--color-surface-2),var(--color-surface-3));border:1px solid var(--color-border);border-radius:var(--radius-lg)}.product__media-col.svelte-1iljj73{grid-area:media;display:flex;flex-direction:column;gap:var(--space-4)}.product__gallery.svelte-1iljj73{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,6rem),1fr));gap:var(--space-3)}.product__gallery-item{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;background:linear-gradient(135deg,var(--color-surface-2),var(--color-surface-3));border:1px solid var(--color-border);border-radius:var(--radius-md)}.product__info.svelte-1iljj73{grid-area:info;display:flex;flex-direction:column;gap:var(--space-6)}.product__provenance.svelte-1iljj73{grid-area:provenance}.product__head.svelte-1iljj73{display:flex;flex-direction:column;gap:var(--space-2)}.product__buy.svelte-1iljj73{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-6);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.eyebrow.svelte-1iljj73{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-accent)}.eyebrow__degree.svelte-1iljj73{color:var(--color-text-muted);font-weight:var(--font-weight-regular)}.product__subtitle.svelte-1iljj73{margin:0;color:var(--color-text-muted);font-size:var(--font-size-lg)}.product__story.svelte-1iljj73{margin:0;max-width:60ch;color:var(--color-text-muted);line-height:var(--line-height-relaxed)}.product__unavailable.svelte-1iljj73{margin:0;color:var(--color-warning)}.product__made-to-order.svelte-1iljj73{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.product__cart-error.svelte-1iljj73{margin:0;padding:var(--space-3) var(--space-4);background-color:var(--color-surface-2);border:1px solid var(--color-danger);border-radius:var(--radius-md);color:var(--color-danger)}@media(min-width:48rem){.product.svelte-1iljj73{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-areas:"media info" "provenance info";align-items:start}}
