:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.625rem;--text-2xl:2.25rem;--text-3xl:3rem;--leading-tight:1.15;--leading-normal:1.55;--tracking-caps:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--measure:68ch;--content-max:72rem;--control-height:2.75rem;--header-height:4.25rem;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--radius-xl:22px;--radius-pill:999px;--duration-fast:.12s;--duration-base:.2s;--duration-slow:.32s;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-in-out:cubic-bezier(.6, 0, .3, 1);--colour-bg:#f6f0e6;--colour-surface:#fcf8f1;--colour-surface-raised:#fff;--colour-surface-sunken:#efe6d8;--colour-ink:#2b1d1f;--colour-ink-muted:#6b5a5c;--colour-ink-faint:#9b8b8c;--colour-rule:#e4d9cb;--colour-rule-strong:#cdbfae;--colour-accent:#7a1f2e;--colour-accent-hover:#641827;--colour-accent-ink:#fbf3ea;--colour-accent-soft:#f1dfd8;--colour-focus:#a7411f;--colour-success:#3f6b3a;--colour-success-soft:#e3ecdf;--colour-danger:#a12b2b;--colour-danger-soft:#f5e0de;--colour-swatch-ring:#2b1d1f24;--colour-scrim:#2b1d1f66;--swatch-red:#8b1e2d;--swatch-white:#e9d89a;--swatch-rose:#e8a0a6;--swatch-sparkling:#d9c67a;--swatch-orange:#d98a3a;--swatch-dessert:#9a5a1e;--shadow-sm:0 1px 2px #2b1d1f14;--shadow-md:0 4px 14px #2b1d1f1a, 0 1px 3px #2b1d1f0f;--shadow-lg:0 14px 40px #2b1d1f29, 0 2px 6px #2b1d1f14;--shadow-focus:0 0 0 3px #f1dfd8}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--colour-bg:#1e1420;--colour-surface:#27192a;--colour-surface-raised:#312033;--colour-surface-sunken:#180f1a;--colour-ink:#f1e6e2;--colour-ink-muted:#bfaab0;--colour-ink-faint:#8a7580;--colour-rule:#3c2a3e;--colour-rule-strong:#54405a;--colour-accent:#c9566a;--colour-accent-hover:#d9728a;--colour-accent-ink:#1e1420;--colour-accent-soft:#3d2531;--colour-focus:#e3a06e;--colour-success:#7fb27a;--colour-success-soft:#27352a;--colour-danger:#e26b6b;--colour-danger-soft:#3f2328;--colour-swatch-ring:#ffffff29;--colour-scrim:#0000008c;--swatch-red:#c8364b;--swatch-white:#f0e2a8;--swatch-rose:#f0a8b0;--swatch-sparkling:#ead98b;--swatch-orange:#e89a4a;--swatch-dessert:#c27a35;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 4px 14px #0006, 0 1px 3px #0000004d;--shadow-lg:0 14px 40px #00000080, 0 2px 6px #0000004d;--shadow-focus:0 0 0 3px #3d2531}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-base:0s;--duration-slow:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--colour-bg);scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{min-height:100dvh;font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);color:var(--colour-ink);background:radial-gradient(120% 60% at 50% -10%, var(--colour-surface) 0%, transparent 70%), var(--colour-bg);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}h1,h2,h3{font-family:var(--font-serif);font-weight:500;line-height:var(--leading-tight);letter-spacing:-.01em;text-wrap:balance;margin:0}h1{font-size:var(--text-3xl);letter-spacing:-.02em}h2{font-size:var(--text-xl)}p,ul,ol,dl,fieldset{margin:0}fieldset{border:0;min-width:0;padding:0}a{color:var(--colour-accent);text-underline-offset:.18em;transition:color var(--duration-fast) var(--ease-out);text-decoration-thickness:1px}a:hover{color:var(--colour-accent-hover)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--colour-focus);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--colour-accent-soft)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.swatch{width:.85rem;height:.85rem;box-shadow:inset 0 0 0 1px var(--colour-swatch-ring);vertical-align:-.1em;border-radius:50%;flex:none;display:inline-block}.swatch--red{background:var(--swatch-red)}.swatch--white{background:var(--swatch-white)}.swatch--rose{background:var(--swatch-rose)}.swatch--sparkling{background:var(--swatch-sparkling)}.swatch--orange{background:var(--swatch-orange)}.swatch--dessert{background:var(--swatch-dessert)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:var(--space-2) var(--space-4);font:inherit;color:var(--colour-ink);background:var(--colour-surface-raised);border:1px solid var(--colour-rule-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.button:hover{background:var(--colour-accent-soft);border-color:var(--colour-accent)}.button:active{box-shadow:none;transform:translateY(1px)scale(.98)}.button:focus-visible{outline:2px solid var(--colour-focus);outline-offset:2px}.button--primary{color:var(--colour-accent-ink);background:linear-gradient(180deg, color-mix(in srgb, var(--colour-accent) 88%, var(--colour-accent-ink)), var(--colour-accent));border-color:var(--colour-accent)}.button--primary:hover{background:var(--colour-accent-hover);border-color:var(--colour-accent-hover)}.button--danger{color:var(--colour-danger)}.button--danger:hover{background:var(--colour-danger-soft);border-color:var(--colour-danger)}.button--small{min-height:2.25rem;padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.link-button{padding:var(--space-1) var(--space-2);margin:0 calc(-1 * var(--space-2));font:inherit;font-size:var(--text-sm);color:var(--colour-accent);border-radius:var(--radius-sm);cursor:pointer;text-underline-offset:.18em;transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);background:0 0;border:0;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.link-button:hover{color:var(--colour-accent-hover);background:var(--colour-accent-soft)}.field{gap:var(--space-1);min-width:0;display:grid}.field__label{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);font-weight:600}.control{width:100%;min-height:var(--control-height);padding:var(--space-2) var(--space-3);font:inherit;color:var(--colour-ink);background:var(--colour-surface-raised);border:1px solid var(--colour-rule-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}.control::placeholder{color:var(--colour-ink-faint)}.control:hover{border-color:var(--colour-ink-faint)}.control:focus-visible{border-color:var(--colour-accent);box-shadow:var(--shadow-focus);outline:none}.control[aria-invalid=true]{border-color:var(--colour-danger)}.control[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px var(--colour-danger-soft)}textarea.control{resize:vertical;min-height:7rem;line-height:var(--leading-normal)}input[type=search].control::-webkit-search-cancel-button{cursor:pointer}.select{display:block;position:relative}.select .control{padding-right:var(--space-7);appearance:none;cursor:pointer}.select:after{content:"";right:var(--space-4);border-right:1.5px solid var(--colour-ink-muted);border-bottom:1.5px solid var(--colour-ink-muted);pointer-events:none;width:.5rem;height:.5rem;position:absolute;top:50%;transform:translateY(-70%)rotate(45deg)}input[type=checkbox],input[type=radio]{width:1.125rem;height:1.125rem;accent-color:var(--colour-accent);flex:none;margin:0}.check{align-items:center;gap:var(--space-3);min-height:2.5rem;padding:0 var(--space-2);margin:0 calc(-1 * var(--space-2));border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);display:flex}.check:hover{background:var(--colour-accent-soft)}.chips{gap:var(--space-1);flex-wrap:wrap;padding:0;list-style:none;display:flex}.chip{align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);color:var(--colour-accent);background:var(--colour-accent-soft);border-radius:var(--radius-pill);font-weight:500;line-height:1.4;display:inline-flex}.kicker{align-items:center;gap:var(--space-3);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-accent);font-weight:600;display:flex}.kicker:before{content:"";background:currentColor;width:1.5rem;height:1px}.shell{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr);min-height:100dvh;display:grid}.shell__header{z-index:10;background:color-mix(in srgb, var(--colour-bg) 86%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.2);border-bottom:1px solid var(--colour-rule);position:sticky;top:0}.shell__header-inner{max-width:var(--content-max);min-height:var(--header-height);padding:var(--space-3) var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-5);margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-3);color:inherit;border-radius:var(--radius-sm);min-width:0;text-decoration:none;display:flex}.brand:hover{color:var(--colour-accent)}.brand__mark{background:radial-gradient(circle at 35% 30%, var(--colour-accent-hover), var(--colour-accent) 60%);width:1.5rem;height:1.5rem;box-shadow:inset 0 0 0 1px var(--colour-swatch-ring), var(--shadow-sm);border-radius:50%;flex:none}.brand__name{font-family:var(--font-serif);font-size:var(--text-lg);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.brand__name--short{display:none}.tabs{gap:var(--space-1);padding:var(--space-1);background:var(--colour-surface);border:1px solid var(--colour-rule);border-radius:var(--radius-pill);display:flex}.tabs__link{align-items:center;gap:var(--space-2);min-height:2.25rem;padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);color:var(--colour-ink-muted);font-size:var(--text-sm);letter-spacing:.01em;transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);font-weight:500;text-decoration:none;display:inline-flex;position:relative}.tabs__link:hover{color:var(--colour-ink);background:var(--colour-accent-soft)}.tabs__link:active{transform:scale(.98)}.tabs__link[aria-current=page]{color:var(--colour-accent-ink);background:var(--colour-accent);box-shadow:var(--shadow-sm)}.tabs__icon{flex:none;width:1.375rem;height:1.375rem;display:none}.tabs__count{min-width:1.25rem;height:1.25rem;padding:0 var(--space-1);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--colour-accent);background:var(--colour-accent-soft);border-radius:var(--radius-pill);place-items:center;font-weight:600;line-height:1;display:inline-grid}.tabs__link[aria-current=page] .tabs__count{color:var(--colour-accent);background:var(--colour-accent-ink)}.shell__main{width:100%;min-width:0;max-width:var(--content-max);padding:var(--space-7) var(--space-5) var(--space-8);margin:0 auto}.view{animation:fade-in var(--duration-slow) var(--ease-out) backwards}.view__header{gap:var(--space-3);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--colour-rule-strong);flex-direction:column;display:flex}.view__lede{max-width:var(--measure);font-size:var(--text-lg);color:var(--colour-ink-muted);line-height:1.45}.empty-state{text-align:center;justify-items:center;gap:var(--space-4);padding:var(--space-8) var(--space-5);border:1px dashed var(--colour-rule-strong);border-radius:var(--radius-xl);background:var(--colour-surface);animation:view-in var(--duration-slow) var(--ease-out) both;display:grid}.empty-state__glyph{width:4.5rem;height:4.5rem;padding:var(--space-4);color:var(--colour-accent);background:var(--colour-accent-soft);border-radius:50%;place-items:center;display:grid}.empty-state__title{font-size:var(--text-xl)}.empty-state__body{justify-items:center;gap:var(--space-4);max-width:44ch;color:var(--colour-ink-muted);display:grid}.empty-state__swatches{gap:var(--space-2);margin-top:var(--space-2);display:flex}.shell__footer{border-top:1px solid var(--colour-rule);color:var(--colour-ink-faint);font-size:var(--text-sm)}.shell__footer-inner{max-width:var(--content-max);padding:var(--space-5);justify-content:space-between;gap:var(--space-4);margin:0 auto;display:flex}.shell__footer a{color:inherit}.shell__footer a:hover{color:var(--colour-accent)}.browse__layout{gap:var(--space-7);grid-template-columns:16rem minmax(0,1fr);align-items:start;display:grid}.browse__main{min-width:0}.browse__bar{align-items:end;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.browse__field--search{flex:18rem}.browse__field--sort{flex:0 14rem}.browse__count{margin-bottom:var(--space-4);color:var(--colour-ink-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.wine-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));margin:0;padding:0;list-style:none;display:grid}.wine-card{--card-band:var(--colour-rule-strong);align-content:start;gap:var(--space-1);padding:var(--space-5);background:var(--colour-surface-raised);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);display:grid;position:relative;overflow:hidden}.wine-card:before{content:"";background:var(--card-band);height:4px;position:absolute;inset:0 0 auto}.wine-card--red{--card-band:var(--swatch-red)}.wine-card--white{--card-band:var(--swatch-white)}.wine-card--rose{--card-band:var(--swatch-rose)}.wine-card--sparkling{--card-band:var(--swatch-sparkling)}.wine-card--orange{--card-band:var(--swatch-orange)}.wine-card--dessert{--card-band:var(--swatch-dessert)}.wine-card:hover,.wine-card:focus-within{box-shadow:var(--shadow-md);border-color:var(--colour-rule-strong);transform:translateY(-2px)}.wine-card__colour{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);font-weight:600;display:flex}.wine-card__name{font-size:var(--text-lg);line-height:var(--leading-tight)}.wine-card__link{color:var(--colour-ink);text-decoration:none}.wine-card__link:hover{color:var(--colour-accent)}.wine-card__link:after{content:"";border-radius:var(--radius-lg);position:absolute;inset:0}.wine-card__link:focus-visible{outline:none}.wine-card__link:focus-visible:after{outline:2px solid var(--colour-focus);outline-offset:-2px}.wine-card__vintage{color:var(--colour-accent);white-space:nowrap}.wine-card__producer,.wine-card__place{font-size:var(--text-sm);color:var(--colour-ink-muted)}.wine-card__foot{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--colour-rule);display:flex}.wine-card__price{font-family:var(--font-serif);font-size:var(--text-lg);font-variant-numeric:tabular-nums;font-weight:500}.wine-card .chips{margin-top:var(--space-2)}.shortlist-toggle{z-index:1;min-height:2.25rem;padding:var(--space-1) var(--space-3);font:inherit;font-size:var(--text-sm);color:var(--colour-ink-muted);background:var(--colour-surface);border:1px solid var(--colour-rule-strong);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);align-items:center;font-weight:500;display:inline-flex;position:relative}.shortlist-toggle:hover{color:var(--colour-accent);border-color:var(--colour-accent);background:var(--colour-accent-soft)}.shortlist-toggle:active{transform:scale(.96)}.shortlist-toggle:focus-visible{outline:2px solid var(--colour-focus);outline-offset:2px}.shortlist-toggle[aria-pressed=true]{color:var(--colour-accent);background:var(--colour-accent-soft);border-color:var(--colour-accent)}.filters__toggle,.filters__done{display:none}.filters{top:calc(var(--header-height) + var(--space-4));max-height:calc(100dvh - var(--header-height) - var(--space-6));padding:var(--space-4) var(--space-5) var(--space-5);background:var(--colour-surface);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);position:sticky;overflow-y:auto}.filters__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);min-height:2.25rem;display:flex}.filters__title{font-family:var(--font-serif);font-size:var(--text-lg);margin:0}.filters__group{margin:var(--space-3) 0 0;padding:var(--space-3) 0 0;border-top:1px solid var(--colour-rule)}.filters__group legend{float:left;width:100%;margin-bottom:var(--space-1);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--colour-ink-muted);padding:0;font-weight:600}.filters__option{gap:var(--space-3);min-height:2.25rem;padding:0 var(--space-2);margin:0 calc(-1 * var(--space-2));border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);align-items:center;display:flex}.filters__option:hover{background:var(--colour-accent-soft)}.filters__option:has(input:checked){color:var(--colour-accent);font-weight:500}.detail{column-gap:var(--space-7);row-gap:var(--space-5);grid-template-columns:minmax(0,1fr) 20rem;grid-template-areas:"back back""hero hero""body side";align-items:start;display:grid}.detail__back{justify-self:start;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--colour-accent);grid-area:back;font-weight:500;text-decoration:none;display:inline-flex}.detail__back:before{content:"";width:.5rem;height:.5rem;transition:transform var(--duration-fast) var(--ease-out);border-bottom:1.5px solid;border-left:1.5px solid;transform:rotate(45deg)}.detail__back:hover{text-decoration:underline}.detail__back:hover:before{transform:translate(-2px)rotate(45deg)}.detail__hero{gap:var(--space-2);padding-bottom:var(--space-5);border-bottom:1px solid var(--colour-rule-strong);grid-area:hero;display:grid}.detail__colour{align-items:center;gap:var(--space-2);font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);font-weight:600;display:flex}.detail__vintage{color:var(--colour-accent);white-space:nowrap}.detail__producer{font-size:var(--text-lg);color:var(--colour-ink-muted)}.detail__badge{margin-top:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--colour-danger);background:var(--colour-danger-soft);border-radius:var(--radius-pill);justify-self:start;font-weight:600}.detail__body{gap:var(--space-6);grid-area:body;min-width:0;display:grid}.detail__side{gap:var(--space-4);top:calc(var(--header-height) + var(--space-4));grid-area:side;display:grid;position:sticky}.detail__buy{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--colour-surface-raised);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.detail__price{font-family:var(--font-serif);font-size:var(--text-xl);font-variant-numeric:tabular-nums;font-weight:500}.detail__description{max-width:var(--measure);font-size:var(--text-lg);line-height:1.6}.detail__description:first-letter{font-family:var(--font-serif);color:var(--colour-accent);font-size:1.5em;line-height:1}.detail__facts{gap:var(--space-2) var(--space-5);padding:var(--space-4) var(--space-5);background:var(--colour-surface);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);font-size:var(--text-sm);grid-template-columns:max-content minmax(0,1fr);display:grid}.detail__facts dt{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);padding-top:.2em;font-weight:600}.detail__facts dd{color:var(--colour-ink);margin:0}.detail__section{gap:var(--space-3);display:grid}.detail__pairs{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.detail__pairs li{align-items:center;gap:var(--space-2);min-height:2.25rem;padding:var(--space-1) var(--space-3);font-size:var(--text-sm);background:var(--colour-surface);border:1px solid var(--colour-rule-strong);border-radius:var(--radius-pill);display:inline-flex}.detail__pick{padding:1px var(--space-2);font-size:var(--text-xs);color:var(--colour-accent);background:var(--colour-accent-soft);border-radius:var(--radius-pill);font-weight:600}.note{gap:var(--space-3);padding:var(--space-5);background:var(--colour-surface);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);display:grid}.note__stars{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.note__star{width:2.5rem;height:2.5rem;font-size:var(--text-xl);color:var(--colour-rule-strong);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out);border-radius:50%;place-items:center;line-height:1;display:grid;position:relative}.note__star--on{color:var(--colour-accent)}.note__star:hover{color:var(--colour-accent);background:var(--colour-accent-soft);transform:scale(1.1)}.note__star input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.note__star:focus-within{outline:2px solid var(--colour-focus);outline-offset:2px}.note__clear{margin-left:var(--space-2)}.note__label{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);font-weight:600}.note__saved{align-items:center;gap:var(--space-2);min-height:1.5em;font-size:var(--text-sm);color:var(--colour-success);font-weight:500;display:flex}.note__saved:not(:empty):before{content:"";width:.4rem;height:.4rem;animation:pulse-in var(--duration-base) var(--ease-out) both;background:currentColor;border-radius:50%}.notes-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.notes-list__row{gap:var(--space-1);padding:var(--space-4) var(--space-5);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);background:var(--colour-surface-raised);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);display:grid}.notes-list__row:hover{box-shadow:var(--shadow-md);border-color:var(--colour-rule-strong)}.notes-list__name{font-family:var(--font-serif);font-size:var(--text-lg);font-weight:500;line-height:var(--leading-tight);color:var(--colour-ink);text-decoration:none}.notes-list__name:hover{color:var(--colour-accent);text-decoration:underline}.notes-list__rating{font-size:var(--text-lg);letter-spacing:.08em;color:var(--colour-accent);line-height:1}.notes-list__excerpt{max-width:var(--measure);color:var(--colour-ink-muted)}.notes-list__date{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-faint);font-weight:600}.shortlist-row{align-items:center;column-gap:var(--space-5);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name price""meta remove"}.shortlist-row .notes-list__name{grid-area:name;justify-self:start}.shortlist-row .notes-list__excerpt{font-size:var(--text-sm);grid-area:meta}.shortlist-row__price{gap:var(--space-3);font-family:var(--font-serif);font-size:var(--text-lg);font-variant-numeric:tabular-nums;grid-area:price;justify-content:end;align-items:baseline;font-weight:500;display:flex}.shortlist-row__stock{padding:1px var(--space-2);font-family:var(--font-sans);font-size:var(--text-xs);color:var(--colour-danger);background:var(--colour-danger-soft);border-radius:var(--radius-pill);font-weight:600}.shortlist-row__remove{grid-area:remove;justify-self:end}.shortlist-total{margin-block:var(--space-5);padding-top:var(--space-4);border-top:2px solid var(--colour-ink);font-family:var(--font-serif);font-size:var(--text-xl);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;font-weight:500;display:flex}.shortlist-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.pairings__dishes{gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.dish-button{min-height:var(--control-height);padding:var(--space-2) var(--space-4);font:inherit;color:var(--colour-ink);background:var(--colour-surface-raised);border:1px solid var(--colour-rule-strong);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);cursor:pointer;transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);font-weight:500}.dish-button:hover{background:var(--colour-accent-soft);border-color:var(--colour-accent)}.dish-button:active{transform:scale(.96)}.dish-button[aria-pressed=true]{color:var(--colour-accent-ink);background:var(--colour-accent);border-color:var(--colour-accent)}.dish-button:focus-visible{outline:2px solid var(--colour-focus);outline-offset:2px}.pairings__budget{max-width:16rem;margin-bottom:var(--space-6)}.pairings__heading{margin-bottom:var(--space-4)}.admin__bar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.admin__count{color:var(--colour-ink-muted);font-variant-numeric:tabular-nums;margin:0}.admin__actions,.admin__row-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin__scroll{border:1px solid var(--colour-rule);border-radius:var(--radius-lg);background:var(--colour-surface-raised);min-width:0;box-shadow:var(--shadow-sm);overflow-x:auto}.admin__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.admin__table th,.admin__table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--colour-rule);vertical-align:middle}.admin__table thead th{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);background:var(--colour-surface);white-space:nowrap;font-weight:600}.admin__table tbody tr{transition:background-color var(--duration-fast) var(--ease-out)}.admin__table tbody tr:hover{background:var(--colour-surface)}.admin__table tbody tr:last-child th,.admin__table tbody tr:last-child td{border-bottom:0}.admin__table tbody th{font-family:var(--font-serif);font-size:var(--text-md);font-weight:500}.admin__table tbody th span{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--colour-accent);font-weight:500}.admin__table td:nth-child(2){white-space:nowrap}.admin__table td .swatch{margin-right:var(--space-1)}.admin__price{font-variant-numeric:tabular-nums}input[type=checkbox].admin__stock{appearance:none;background-color:var(--colour-rule-strong);background-image:radial-gradient(circle at center, var(--colour-surface-raised) 0 .5rem, transparent .55rem);border-radius:var(--radius-pill);width:2.5rem;height:1.5rem;box-shadow:inset 0 1px 2px var(--colour-swatch-ring);cursor:pointer;transition:background-color var(--duration-base) var(--ease-out), background-position var(--duration-base) var(--ease-out);background-position:0 0;background-repeat:no-repeat;background-size:1.5rem 1.5rem;border:0;margin:0;display:block}input[type=checkbox].admin__stock:checked{background-color:var(--colour-success);background-position:1rem 0}input[type=checkbox].admin__stock:focus-visible{outline:2px solid var(--colour-focus);outline-offset:2px}.admin__panel{gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--colour-surface-raised);border:1px solid var(--colour-rule);border-left:4px solid var(--colour-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);animation:view-in var(--duration-base) var(--ease-out) both;display:grid}.admin__panel h2{font-size:var(--text-lg)}.admin__panel ul{gap:var(--space-1);padding-left:var(--space-5);color:var(--colour-ink-muted);font-size:var(--text-sm);display:grid}.admin__panel--error{border-left-color:var(--colour-danger)}.admin__panel .admin__actions{margin-top:var(--space-1)}.admin__panel .button{justify-self:start}.admin__notice{align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-3) var(--space-4);color:var(--colour-success);background:var(--colour-success-soft);border-radius:var(--radius-md);animation:view-in var(--duration-base) var(--ease-out) both;font-weight:500;display:flex}.admin__notice:before{content:"";background:currentColor;border-radius:50%;width:.5rem;height:.5rem}.admin__import{cursor:pointer;position:relative}.admin__import input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.admin__import:focus-within{outline:2px solid var(--colour-focus);outline-offset:2px}.form{gap:var(--space-5) var(--space-5);max-width:44rem;padding:var(--space-6);background:var(--colour-surface-raised);border:1px solid var(--colour-rule);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form>h2,.form__field--wide,.form__pairings,.form__actions{grid-column:1/-1}.form__field{gap:var(--space-1);align-content:start;min-width:0;display:grid}.form__field label,.form__pairings legend{font-size:var(--text-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--colour-ink-muted);font-weight:600}.form__hint{font-size:var(--text-sm);color:var(--colour-ink-faint)}.form__error{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--colour-danger);font-weight:500;display:flex}.form__error:before{content:"!";width:1rem;height:1rem;font-size:var(--text-xs);color:var(--colour-accent-ink);background:var(--colour-danger);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.form__check{align-items:center;gap:var(--space-3);min-height:2.5rem;padding:0 var(--space-2);margin:0 calc(-1 * var(--space-2));border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);display:flex}.form__check:hover{background:var(--colour-accent-soft)}.form__check--stock{align-self:end;font-weight:500}.form__pairings{gap:0 var(--space-4);padding:var(--space-3) var(--space-4) var(--space-4);background:var(--colour-surface);border:1px solid var(--colour-rule);border-radius:var(--radius-lg);grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));display:grid}.form__pairings legend{float:left;width:100%;margin-bottom:var(--space-2);padding:0}.form__actions{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--colour-rule);flex-wrap:wrap;display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes view-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes sheet-in{0%{opacity:0;transform:translateY(4%)}to{opacity:1;transform:none}}@keyframes pulse-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}@media (width<=59.98rem){.detail{grid-template-columns:minmax(0,1fr);grid-template-areas:"back""hero""side""body"}.detail__side{position:static}}@media (width<=719.98px){:root{--header-height:3.5rem}h1{font-size:var(--text-2xl)}.brand__name--full{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brand__name--short{display:inline}.shell__header-inner{padding:var(--space-2) var(--space-4)}.shell__main{padding:var(--space-5) var(--space-4) calc(var(--space-8) + var(--space-5))}.view__header{margin-bottom:var(--space-5);padding-bottom:var(--space-4)}.view__lede{font-size:var(--text-md)}.tabs{z-index:10;padding:var(--space-1) var(--space-2) calc(var(--space-1) + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--colour-surface) 94%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.2);border:0;border-top:1px solid var(--colour-rule);box-shadow:var(--shadow-lg);border-radius:0;grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:fixed;inset:auto 0 0}.tabs__link{min-height:3.25rem;padding:var(--space-1);border-radius:var(--radius-md);font-size:var(--text-xs);background:0 0;flex-direction:column;justify-content:center;gap:2px}.tabs__link[aria-current=page]{color:var(--colour-accent);box-shadow:none;background:0 0}.tabs__link[aria-current=page] .tabs__count{color:var(--colour-accent-ink);background:var(--colour-accent)}.tabs__link:hover{background:0 0}.tabs__icon{display:block}.tabs__count{top:var(--space-1);left:calc(50% + var(--space-1));min-width:1.125rem;height:1.125rem;position:absolute}.shell__footer-inner{padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom));gap:var(--space-2);flex-direction:column}.browse__layout{display:block}.filters__toggle{margin-bottom:var(--space-4);display:inline-flex}.filters{display:none}.filters--open{z-index:20;background:var(--colour-surface-raised);max-height:none;animation:sheet-in var(--duration-slow) var(--ease-out) both;border:0;border-radius:0;grid-template-rows:auto 1fr auto;padding:0;display:grid;position:fixed;inset:0;overflow:hidden}.filters--open .filters__head{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--colour-rule);min-height:var(--header-height)}.filters--open .filters__body{padding:var(--space-2) var(--space-5) var(--space-5);overflow-y:auto}.filters__done{margin:var(--space-3) var(--space-5) calc(var(--space-3) + env(safe-area-inset-bottom));display:inline-flex}.wine-grid{grid-template-columns:1fr}.wine-card{padding:var(--space-4) var(--space-5)}.shortlist-row{row-gap:var(--space-2);grid-template-columns:minmax(0,1fr);grid-template-areas:"name""meta""price""remove"}.shortlist-row__price{justify-content:start}.shortlist-row__remove{justify-self:stretch}.shortlist-actions .button{flex:10rem}.detail__buy{padding:var(--space-4)}.detail__description{font-size:var(--text-md)}.admin__actions{width:100%}.admin__actions>.button{flex:1 1 calc(50% - var(--space-2))}.admin__row-actions{flex-wrap:nowrap}.form{gap:var(--space-4);padding:var(--space-5) var(--space-4);border-radius:var(--radius-lg);grid-template-columns:1fr}.form__actions .button{flex:8rem}}.print-only{display:none}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{color:var(--colour-ink);background:0 0}.shell__header,.shell__footer,.tabs,.button,.shortlist-toggle,button{display:none!important}.shell__main{padding:0}.view{animation:none}.view__header{display:none}.print-only{margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--colour-ink);display:block}.print-only h2{font-size:var(--text-2xl)}.print-only p{color:var(--colour-ink-muted)}.notes-list__row{padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--colour-rule-strong);box-shadow:none;break-inside:avoid;border-radius:0}.shortlist-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name price""meta price"}.shortlist-row__stock{background:0 0;padding:0}.shortlist-total{margin-bottom:0}}
