:root {
  --tbs-ink: #11100e;
  --tbs-ink-2: #181613;
  --tbs-ink-3: #242019;
  --tbs-cream: #f3ebdd;
  --tbs-paper: #eee6d8;
  --tbs-muted: #b9ad9a;
  --tbs-copper: #b97945;
  --tbs-copper-2: #d29a69;
  --tbs-line: rgba(243,235,221,.16);
  --tbs-max: 1240px;
  --tbs-article: 760px;
  --tbs-serif: "Libre Baskerville", Georgia, serif;
  --tbs-sans: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--tbs-ink); }
body { margin: 0; background: var(--tbs-ink); color: var(--tbs-cream); font-family: var(--tbs-sans); font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.gh-content .kg-image-card img.kg-image { width:100%; height:auto; }
button, input { font: inherit; }
::selection { background: var(--tbs-copper); color: var(--tbs-ink); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.tbs-skip { position: fixed; left: 1rem; top: -4rem; z-index: 1000; background: var(--tbs-cream); color: var(--tbs-ink); padding: .7rem 1rem; border-radius: 2px; }
.tbs-skip:focus { top: 1rem; }
.tbs-shell { width: min(calc(100% - 40px), var(--tbs-max)); margin-inline: auto; }
.tbs-shell--article { width: min(calc(100% - 40px), var(--tbs-article)); }
.tbs-main { min-height: 65vh; }
.tbs-eyebrow { display: inline-block; color: var(--tbs-copper-2); font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.tbs-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: .8rem 1.15rem; border: 1px solid var(--tbs-copper); border-radius: 2px; background: var(--tbs-copper); color: #130f0b; font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; transition: .2s ease; }
.tbs-button:hover { background: var(--tbs-copper-2); border-color: var(--tbs-copper-2); transform: translateY(-1px); }
.tbs-button--small { min-height: 38px; padding: .55rem .9rem; font-size: .72rem; }
.tbs-button--outline { background: transparent; color: var(--tbs-cream); }
.tbs-text-link { color: var(--tbs-cream); font-size: .86rem; font-weight: 700; letter-spacing: .04em; }
.tbs-text-link:hover { color: var(--tbs-copper-2); }

.tbs-header { position: sticky; top: 0; z-index: 100; background: rgba(17,16,14,.91); backdrop-filter: blur(14px); border-bottom: 1px solid transparent; transition: transform .25s ease, border-color .25s ease, background .25s ease; }
.tbs-header.is-scrolled { border-color: var(--tbs-line); }
.tbs-header.is-hidden { transform: translateY(-100%); }
.tbs-header__inner { min-height: 78px; display: grid; grid-template-columns: auto 1fr auto; gap: 2rem; align-items: center; }
.tbs-brand { display: inline-flex; align-items: center; gap: .7rem; white-space: nowrap; }
.tbs-brand__logo { max-height: 38px; width: auto; }
.tbs-brand__wordmark { font-family: var(--tbs-serif); font-size: 1.1rem; font-weight: 700; letter-spacing: .08em; }
.tbs-brand__rule { width: 24px; height: 1px; background: var(--tbs-copper); }
.tbs-nav { justify-self: center; }
.tbs-nav .nav { list-style: none; display: flex; align-items: center; gap: 1.25rem; margin: 0; padding: 0; }
.tbs-nav .nav a { color: #d8cdbb; font-size: .77rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.tbs-nav .nav a:hover, .tbs-nav .nav-current a { color: var(--tbs-copper-2); }
.tbs-menu-button { display: none; background: transparent; border: 0; padding: .4rem; }
.tbs-menu-button span:not(.sr-only) { display: block; width: 24px; height: 1px; margin: 5px 0; background: var(--tbs-cream); }

.tbs-hero { overflow: hidden; border-bottom: 1px solid var(--tbs-line); background: radial-gradient(circle at 78% 32%, rgba(185,121,69,.11), transparent 27%), linear-gradient(135deg, #11100e 0%, #17140f 100%); }
.tbs-hero__grid { min-height: 680px; display: grid; grid-template-columns: 1.04fr .96fr; gap: 5vw; align-items: center; }
.tbs-hero h1 { max-width: 760px; margin: .65rem 0 1.25rem; font-family: var(--tbs-serif); font-size: clamp(3.5rem, 7.7vw, 7.4rem); line-height: .94; letter-spacing: -.055em; }
.tbs-hero__deck { max-width: 660px; margin: 0; color: #d0c4b2; font-size: clamp(1.06rem, 1.7vw, 1.28rem); }
.tbs-hero__actions { display: flex; align-items: center; gap: 1.4rem; margin-top: 2rem; }
.tbs-hero__topics { margin-top: 2.2rem; color: #8f8475; font-size: .72rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.tbs-hero__topics span { margin: 0 .5rem; color: var(--tbs-copper); }

.tbs-utah-strip { padding: 4.5rem 0; background: #15130f; border-bottom: 1px solid var(--tbs-line); }
.tbs-section-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:2rem; }
.tbs-section-heading h2 { margin:.35rem 0 0; font-family:var(--tbs-serif); font-size:clamp(2rem,4vw,3.6rem); letter-spacing:-.035em; }
.tbs-section-heading p { max-width:650px; margin:.6rem 0 0; color:var(--tbs-muted); }
.tbs-section-heading--compact h2 { font-size:clamp(1.7rem,3vw,2.7rem); }
.tbs-utah-strip__grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border-top:1px solid var(--tbs-line); border-left:1px solid var(--tbs-line); }
.tbs-intel-card { min-height:180px; padding:1.35rem; border-right:1px solid var(--tbs-line); border-bottom:1px solid var(--tbs-line); transition:.2s ease; }
.tbs-intel-card:hover { background:#1d1914; }
.tbs-intel-card span { display:block; margin-bottom:2rem; color:var(--tbs-copper); font-size:.72rem; }
.tbs-intel-card strong { display:block; margin-bottom:.4rem; font-family:var(--tbs-serif); font-size:1.15rem; }
.tbs-intel-card small { color:var(--tbs-muted); line-height:1.5; }

.tbs-featured { padding: 7rem 0; }
.tbs-featured__grid { display:grid; grid-template-columns:1.15fr .85fr; gap:5vw; align-items:center; }
.tbs-featured__media { min-height:460px; background:#1c1914; overflow:hidden; }
.tbs-featured__media img { width:100%; height:100%; min-height:460px; object-fit:cover; filter:saturate(.78) contrast(1.05); }
.tbs-featured__fallback { min-height:460px; display:grid; place-items:center; background:linear-gradient(145deg,#211b14,#0d0c0a); color:#806f5a; font-size:.72rem; letter-spacing:.3em; }
.tbs-featured__content h2 { margin:.55rem 0 1rem; font-family:var(--tbs-serif); font-size:clamp(2.2rem,4.3vw,4.7rem); line-height:1.06; letter-spacing:-.045em; }
.tbs-featured__content p { max-width:540px; color:var(--tbs-muted); font-size:1.06rem; }

.tbs-index-preview { padding: 6rem 0; background: var(--tbs-paper); color: var(--tbs-ink); }
.tbs-index-preview .tbs-eyebrow { color:#8d552d; }
.tbs-index-preview .tbs-text-link { color:var(--tbs-ink); }
.tbs-bottle-index-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.tbs-index-card { min-height:300px; display:flex; flex-direction:column; padding:1.65rem; border:1px solid rgba(17,16,14,.18); background:#f5eee3; }
.tbs-index-card:hover { border-color:#8d552d; }
.tbs-index-card h3 { margin:3.5rem 0 .7rem; font-family:var(--tbs-serif); font-size:2rem; letter-spacing:-.03em; }
.tbs-index-card p { color:#625848; }
.tbs-index-card__action { margin-top:auto; font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }

.tbs-newsletter { margin: 6rem 0; display:grid; grid-template-columns:auto 1.1fr .9fr; gap:2rem; align-items:center; padding:2.3rem; border:1px solid var(--tbs-line); background:linear-gradient(120deg,#1e1913,#11100e); }
.tbs-newsletter__mark { width:76px; height:76px; display:grid; place-items:center; border:1px solid var(--tbs-copper); border-radius:50%; font-family:var(--tbs-serif); font-size:1.1rem; letter-spacing:.12em; color:var(--tbs-copper-2); }
.tbs-newsletter h2 { margin:.3rem 0 .5rem; font-family:var(--tbs-serif); font-size:2rem; }
.tbs-newsletter p { margin:0; color:var(--tbs-muted); }
.tbs-newsletter__form { display:grid; grid-template-columns:1fr auto; gap:.65rem; }
.tbs-newsletter__form input { min-width:0; height:48px; padding:0 .9rem; border:1px solid var(--tbs-line); border-radius:2px; background:#0d0c0a; color:var(--tbs-cream); outline:none; }
.tbs-newsletter__form input:focus { border-color:var(--tbs-copper); }
.tbs-form-success,.tbs-form-error { display:none; grid-column:1/-1; font-size:.78rem; }
.tbs-newsletter__form.success .tbs-form-success,.tbs-newsletter__form.error .tbs-form-error { display:block; }

.tbs-latest { padding: 6rem 0; }
.tbs-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem 1.2rem; }
.tbs-card { border-top:1px solid var(--tbs-line); padding-top:1rem; }
.tbs-card__media { display:block; aspect-ratio:16/10; margin-bottom:1rem; background:#1c1914; overflow:hidden; }
.tbs-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.tbs-card:hover .tbs-card__media img { transform:scale(1.025); }
.tbs-card__placeholder { width:100%; height:100%; display:grid; place-items:center; font-family:var(--tbs-serif); color:#6f6251; background:linear-gradient(135deg,#221c15,#11100e); }
.tbs-card__title { margin:.45rem 0 .65rem; font-family:var(--tbs-serif); font-size:1.35rem; line-height:1.25; }
.tbs-card__excerpt { color:var(--tbs-muted); font-size:.92rem; }
.tbs-card__meta { display:flex; gap:.5rem; color:#807565; font-size:.72rem; }

.tbs-local { padding: 7rem 0; border-top:1px solid var(--tbs-line); background:#15130f; }
.tbs-local__grid { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:center; }
.tbs-local h2 { margin:.5rem 0 1rem; font-family:var(--tbs-serif); font-size:clamp(2.4rem,5vw,5rem); line-height:1.02; letter-spacing:-.045em; }
.tbs-local__copy p { max-width:620px; color:var(--tbs-muted); }
.tbs-local blockquote { margin:0; padding:3rem; border-left:2px solid var(--tbs-copper); background:#1b1712; }
.tbs-local blockquote p { margin:0 0 1rem; font-family:var(--tbs-serif); font-size:clamp(1.7rem,3vw,3rem); line-height:1.18; }
.tbs-local cite { color:var(--tbs-muted); font-size:.76rem; font-style:normal; letter-spacing:.08em; text-transform:uppercase; }

.tbs-archive-header { padding: 7rem 0 4rem; border-bottom:1px solid var(--tbs-line); }
.tbs-archive-header__inner { max-width:900px; }
.tbs-archive-header h1,.tbs-page-header h1,.tbs-error h1 { margin:.6rem 0 1rem; font-family:var(--tbs-serif); font-size:clamp(3rem,7vw,6.4rem); line-height:1; letter-spacing:-.05em; }
.tbs-archive-header p,.tbs-page-header p { max-width:700px; color:var(--tbs-muted); font-size:1.1rem; }

.tbs-article-header { padding-top:6.5rem; padding-bottom:3rem; }
.tbs-article-header h1 { margin:.7rem 0 1rem; font-family:var(--tbs-serif); font-size:clamp(3rem,7.6vw,6.8rem); line-height:1.01; letter-spacing:-.055em; }
.tbs-article-header__deck { color:#c6baa8; font-family:var(--tbs-serif); font-size:clamp(1.15rem,2vw,1.4rem); line-height:1.55; }
.tbs-article-byline { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.7rem; color:#857968; font-size:.76rem; letter-spacing:.02em; }
.tbs-article-hero { margin-bottom:4rem; }
.tbs-article-hero img { width:100%; max-height:760px; object-fit:cover; }
.tbs-article-hero figcaption { margin-top:.65rem; color:#817666; font-size:.74rem; }
.tbs-article-layout { padding-bottom:5rem; }
.tbs-quick-take { margin-bottom:3rem; padding:1.7rem; border:1px solid rgba(185,121,69,.42); background:#18140f; }
.tbs-quick-take p { margin:.6rem 0 1rem; color:#ddd2c0; }
.tbs-quick-take strong { display:block; margin-bottom:.25rem; color:var(--tbs-copper-2); font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; }
.gh-content { font-family:var(--tbs-serif); font-size:1.07rem; line-height:1.85; }
.gh-content > * { margin-top:0; margin-bottom:1.55em; }
.gh-content h2,.gh-content h3,.gh-content h4 { margin-top:2.4em; margin-bottom:.7em; color:var(--tbs-cream); line-height:1.2; letter-spacing:-.025em; }
.gh-content h2 { font-size:2rem; }
.gh-content h3 { font-size:1.5rem; }
.gh-content a { color:var(--tbs-copper-2); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.gh-content blockquote { margin:2.3rem 0; padding:1.6rem 1.8rem; border-left:2px solid var(--tbs-copper); background:#17140f; font-style:italic; }
.gh-content figure { margin:2.5rem 0; }
.gh-content figcaption { margin-top:.6rem; color:#807565; font-family:var(--tbs-sans); font-size:.75rem; }
.gh-content hr { margin:3rem 0; border:0; border-top:1px solid var(--tbs-line); }
.gh-content .kg-width-wide { width:min(1100px,calc(100vw - 40px)); margin-left:50%; transform:translateX(-50%); }
.gh-content .kg-width-full { width:100vw; margin-left:50%; transform:translateX(-50%); }
.gh-content .kg-callout-card { border-radius:0; background:#1a1712; }

/* v0.9.10 — customer-first allocation summary. */
.gh-content .tbs-allocation-glance-wrap { width:min(980px,calc(100vw - 40px)); max-width:none; margin:2.5rem 0 2.7rem 50%; overflow:visible; transform:translateX(-50%); }
.tbs-allocation-glance { width:100%; border-collapse:separate; border-spacing:0 .55rem; font-family:var(--tbs-sans); font-size:.92rem; line-height:1.45; }
.tbs-allocation-glance thead th { padding:0 1.05rem .3rem; color:#9f927f; font-size:.68rem; font-weight:800; letter-spacing:.1em; text-align:left; text-transform:uppercase; }
.tbs-allocation-glance thead th:nth-child(2),.tbs-allocation-glance thead th:nth-child(3) { text-align:right; }
.tbs-allocation-glance tbody td { padding:1rem 1.05rem; border-top:1px solid rgba(243,235,221,.1); border-bottom:1px solid rgba(243,235,221,.1); background:#17140f; vertical-align:middle; }
.tbs-allocation-glance tbody td:first-child { border-left:3px solid rgba(185,121,69,.58); color:var(--tbs-cream); font-family:var(--tbs-serif); font-size:1rem; font-weight:700; }
.tbs-allocation-glance tbody td:last-child { border-right:1px solid rgba(243,235,221,.1); }
.tbs-allocation-glance tbody td:nth-child(2),.tbs-allocation-glance tbody td:nth-child(3) { width:138px; font-variant-numeric:tabular-nums; font-weight:700; text-align:right; white-space:nowrap; }
.tbs-allocation-glance .tbs-allocation-col--price { color:#eee2d0; }
.tbs-allocation-glance .tbs-allocation-col--qty { color:#e2ad78; font-size:1rem; }
.tbs-allocation-glance--store tbody td:nth-child(2) { width:112px; }
.tbs-allocation-glance a { font-weight:700; }
.tbs-allocation-filters { display:grid; grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)); gap:.8rem; margin:2rem 0 2.5rem; padding:1.2rem; border:1px solid var(--tbs-line); background:#1b1712; font-family:var(--tbs-sans); }
.tbs-allocation-filters h3,.tbs-allocation-filters p,.tbs-allocation-filters__actions { grid-column:1/-1; margin:0; }
.tbs-allocation-filters h3 { font-family:var(--tbs-serif); font-size:1.45rem; }
.tbs-allocation-filters p { color:var(--tbs-muted); font-size:.88rem; }
.tbs-allocation-filters label { display:grid; gap:.4rem; color:var(--tbs-cream); font-size:.78rem; font-weight:700; }
.tbs-allocation-filters input,.tbs-allocation-filters select { width:100%; min-width:0; height:44px; padding:0 .65rem; border:1px solid #665442; border-radius:2px; background:#0d0c0a; color:var(--tbs-cream); font:inherit; }
.tbs-allocation-filters input:focus-visible,.tbs-allocation-filters select:focus-visible,.tbs-allocation-filters button:focus-visible { outline:2px solid var(--tbs-copper-2); outline-offset:2px; }
.tbs-allocation-filters__actions { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.tbs-allocation-filters__actions button { padding:.45rem .75rem; border:1px solid #8e6b4c; background:transparent; color:var(--tbs-cream); cursor:pointer; }
.tbs-allocation-filters [hidden],.tbs-allocation-glance [hidden] { display:none !important; }
article.tag-hash-allocation-list .gh-content > [hidden] { display:none !important; }
.tbs-editorial-note { margin-top:3rem; padding:1.5rem; border-top:1px solid var(--tbs-line); border-bottom:1px solid var(--tbs-line); color:var(--tbs-muted); font-size:.87rem; }
.tbs-editorial-note p { margin:.5rem 0 0; }
.tbs-tags { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:2rem; }
.tbs-tags a { padding:.4rem .65rem; border:1px solid var(--tbs-line); color:#a99d8b; font-size:.72rem; }
.tbs-related { padding:5rem 0; border-top:1px solid var(--tbs-line); }

.tbs-page-header { padding:6rem 0 2.5rem; }
.tbs-page-feature { margin-top:0; margin-bottom:4rem; }
.tbs-page-feature picture { display:block; overflow:hidden; background:#1c1914; }
.tbs-page-feature img { width:100%; height:auto; max-height:760px; object-fit:cover; }
.tbs-page-feature figcaption { margin-top:.65rem; color:#817666; font-family:var(--tbs-sans); font-size:.74rem; }
/* v0.9.14 — preserve the complete portrait infographic on the DABS hub. */
.page-dabs-explained .tbs-page-feature { width:min(900px,calc(100% - 40px)); }
.page-dabs-explained .tbs-page-feature picture { background:transparent; }
.page-dabs-explained .tbs-page-feature img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; }
.tbs-page-content { padding-bottom:6rem; }
.tbs-error { min-height:70vh; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.tbs-error p { color:var(--tbs-muted); }

.tbs-footer { padding:4.5rem 0; border-top:1px solid var(--tbs-line); background:#0c0b09; }
.tbs-footer__grid { display:grid; grid-template-columns:1.2fr .8fr .8fr 1.2fr; gap:3rem; }
.tbs-footer__brand { font-family:var(--tbs-serif); font-size:1.25rem; letter-spacing:.08em; }
.tbs-footer__tagline { color:var(--tbs-copper-2); font-family:var(--tbs-serif); font-style:italic; }
.tbs-footer__promise,.tbs-footer__meta p { color:#8e8374; font-size:.82rem; }
.tbs-footer h2 { margin:0 0 1rem; color:#c8bcaa; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; }
.tbs-footer .nav { list-style:none; margin:0; padding:0; }
.tbs-footer .nav li { margin:.4rem 0; }
.tbs-footer .nav a { color:#9e927f; font-size:.82rem; }
.tbs-footer__copyright { margin-top:2rem; }

.pagination { display:flex; justify-content:center; align-items:center; gap:1rem; margin-top:3rem; color:#9d917f; font-size:.8rem; }

@media (max-width: 980px) {
  .tbs-header__inner { grid-template-columns:auto auto 1fr; min-height:70px; gap:.8rem; }
  .tbs-menu-button { display:block; grid-column:3; justify-self:end; }
  .tbs-header__join { grid-column:2; grid-row:1; }
  .tbs-nav { position:absolute; top:70px; left:0; right:0; display:none; padding:1.25rem 20px 1.6rem; background:#11100e; border-top:1px solid var(--tbs-line); border-bottom:1px solid var(--tbs-line); }
  .tbs-nav.is-open { display:block; }
  .tbs-nav .nav { display:grid; gap:.2rem; }
  .tbs-nav .nav a { display:block; padding:.7rem 0; }
  .tbs-hero__grid { min-height:auto; grid-template-columns:1fr; padding-top:5rem; padding-bottom:4rem; }
  .tbs-utah-strip__grid { grid-template-columns:1fr 1fr; }
  .tbs-utah-strip__grid > :last-child { grid-column:1/-1; }
  .tbs-featured__grid,.tbs-local__grid { grid-template-columns:1fr; }
  .tbs-newsletter { grid-template-columns:auto 1fr; }
  .tbs-newsletter__form { grid-column:1/-1; }
  .tbs-footer__grid { grid-template-columns:1fr 1fr; }
}

@media (max-width: 700px) {
  body { font-size:16px; }
  .tbs-shell,.tbs-shell--article { width:min(calc(100% - 28px),var(--tbs-max)); }
  .tbs-header__inner { width:calc(100% - 28px); }
  .tbs-brand__wordmark { font-size:.92rem; }
  .tbs-brand__rule { display:none; }
  .tbs-hero__grid { padding-top:3.8rem; }
  .tbs-hero h1 { font-size:clamp(3.3rem,18vw,5.5rem); }
  .tbs-hero__actions { align-items:flex-start; flex-direction:column; }
  .tbs-hero__visual { margin-top:1rem; }
  .tbs-section-heading { align-items:flex-start; flex-direction:column; gap:.8rem; }
  .tbs-utah-strip { padding:3.5rem 0; }
  .tbs-utah-strip__grid { grid-template-columns:1fr; }
  .tbs-utah-strip__grid > :last-child { grid-column:auto; }
  .tbs-allocation-filters { grid-template-columns:1fr; }
  .tbs-intel-card { min-height:140px; }
  .tbs-intel-card span { margin-bottom:1rem; }
  .tbs-featured,.tbs-latest,.tbs-local { padding:4rem 0; }
  .tbs-featured__media,.tbs-featured__media img,.tbs-featured__fallback { min-height:300px; }
  .tbs-bottle-index-grid,.tbs-card-grid { grid-template-columns:1fr; }
  .tbs-newsletter { margin:4rem 0; grid-template-columns:1fr; padding:1.4rem; }
  .tbs-newsletter__mark { width:58px; height:58px; }
  .tbs-newsletter__form { display:grid; grid-template-columns:1fr; }
  .tbs-article-header { padding-top:4rem; }
  .tbs-article-header h1 { font-size:clamp(2.8rem,14vw,4.6rem); }
  .tbs-article-hero { width:100%; }
  .tbs-article-hero figcaption { padding:0 14px; }
  .tbs-page-feature { width:calc(100% - 28px); margin-bottom:2.75rem; }
  .tbs-page-feature img { max-height:none; }
  .gh-content .kg-width-wide,.gh-content .kg-width-full { width:100vw; }
  .gh-content .tbs-allocation-glance-wrap { width:100%; margin:2rem 0 2.4rem; transform:none; }
  .tbs-allocation-glance { display:block; border-spacing:0; }
  .tbs-allocation-glance thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
  .tbs-allocation-glance tbody,.tbs-allocation-glance tr,.tbs-allocation-glance td { display:block; width:100%; }
  .tbs-allocation-glance tbody tr { margin-bottom:.9rem; border:1px solid rgba(243,235,221,.12); border-left:3px solid rgba(185,121,69,.72); background:#17140f; }
  .tbs-allocation-glance tbody td { display:grid; grid-template-columns:minmax(104px,.44fr) minmax(0,1fr); gap:.8rem; align-items:center; padding:.72rem .9rem; border:0; border-bottom:1px solid rgba(243,235,221,.08); background:transparent; text-align:right; }
  .tbs-allocation-glance tbody td::before { content:attr(data-label); color:#8f826f; font-family:var(--tbs-sans); font-size:.62rem; font-weight:800; letter-spacing:.09em; text-align:left; text-transform:uppercase; }
  .tbs-allocation-glance tbody td:first-child { display:block; padding:1rem .9rem; border-left:0; font-size:1.02rem; text-align:left; }
  .tbs-allocation-glance tbody td:first-child::before { display:none; }
  .tbs-allocation-glance tbody td:nth-child(2),.tbs-allocation-glance tbody td:nth-child(3),.tbs-allocation-glance--store tbody td:nth-child(2) { width:100%; text-align:right; }
  .tbs-allocation-glance tbody td:last-child { border-right:0; border-bottom:0; }
  .tbs-footer__grid { grid-template-columns:1fr; gap:2rem; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; transition:none !important; }
}

/* Phase 1.1 — production hero / brand refinement */
.tbs-brand { min-width:max-content; }
.tbs-brand__wordmark { position:relative; font-size:1.04rem; letter-spacing:.115em; }
.tbs-brand__wordmark::after { content:""; position:absolute; left:0; right:0; bottom:-7px; height:1px; background:linear-gradient(90deg,var(--tbs-copper),transparent 72%); opacity:.68; }
.tbs-header__inner::before { content:""; position:absolute; inset:auto 0 0; height:1px; background:linear-gradient(90deg,transparent,rgba(185,121,69,.36),transparent); opacity:.45; pointer-events:none; }
.tbs-header__inner { position:relative; }

.tbs-hero__visual { min-width:0; }
.tbs-hero-photo,.tbs-brand-stage { position:relative; height:540px; margin:0; overflow:hidden; border:1px solid rgba(243,235,221,.11); background:#14120f; }
.tbs-hero-photo::before,.tbs-brand-stage::before { content:""; position:absolute; inset:14px; border:1px solid rgba(243,235,221,.075); z-index:3; pointer-events:none; }
.tbs-hero-photo img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.72) contrast(1.08) brightness(.82); }
.tbs-hero-photo__wash { position:absolute; inset:0; background:linear-gradient(180deg,transparent 43%,rgba(10,9,7,.8) 100%),linear-gradient(90deg,rgba(17,16,14,.2),transparent 55%); }
.tbs-hero-photo figcaption { position:absolute; z-index:4; left:2rem; right:2rem; bottom:1.7rem; margin:0; color:#d7c9b5; font-family:var(--tbs-serif); font-size:.88rem; font-style:italic; }

.tbs-brand-stage { display:grid; place-items:center; isolation:isolate; background:radial-gradient(circle at 50% 43%,rgba(185,121,69,.13),transparent 28%),linear-gradient(155deg,#19150f 0%,#0d0c0a 74%); }
.tbs-brand-stage__halo { position:absolute; width:360px; height:360px; border-radius:50%; background:radial-gradient(circle,rgba(185,121,69,.18),transparent 64%); filter:blur(8px); }
.tbs-brand-stage__mark { position:relative; z-index:2; width:158px; height:158px; margin-top:-70px; filter:drop-shadow(0 22px 40px rgba(0,0,0,.36)); }
.tbs-brand-stage__label { position:absolute; z-index:2; left:0; right:0; top:63%; display:flex; flex-direction:column; align-items:center; gap:.25rem; text-align:center; }
.tbs-brand-stage__label span { font-family:var(--tbs-serif); font-size:1.08rem; letter-spacing:.17em; }
.tbs-brand-stage__label small { color:#9d8f7b; font-family:var(--tbs-serif); font-size:.72rem; font-style:italic; letter-spacing:.03em; }
.tbs-brand-stage__shelf { position:absolute; z-index:1; left:9%; right:9%; top:58%; height:10px; background:linear-gradient(180deg,#7a4b29,#382116 58%,#17100c); box-shadow:0 16px 40px rgba(0,0,0,.58); }
.tbs-brand-stage > p { position:absolute; z-index:2; left:1.7rem; bottom:1.5rem; margin:0; color:#aa9c88; font-family:var(--tbs-serif); font-size:.84rem; font-style:italic; }

/* Photography is editorial, not retail-catalog imagery. */
.tbs-featured__media { position:relative; }
.tbs-featured__media::after { content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 0 1px rgba(243,235,221,.06); }
.tbs-card__media img { filter:saturate(.78) contrast(1.04); transition:transform .45s ease,filter .35s ease; }
.tbs-card:hover .tbs-card__media img { transform:scale(1.018); filter:saturate(.92) contrast(1.04); }

@media (max-width:980px) {
  .tbs-hero-photo,.tbs-brand-stage { height:430px; }
}
@media (max-width:700px) {
  .tbs-brand__wordmark::after { bottom:-5px; }
  .tbs-hero-photo,.tbs-brand-stage { height:360px; }
  .tbs-hero-photo figcaption { left:1.15rem; right:1.15rem; bottom:1.1rem; }
  .tbs-brand-stage__mark { width:126px; height:126px; margin-top:-62px; }
  .tbs-brand-stage__label { top:64%; }
  .tbs-brand-stage__label span { font-size:.92rem; }
  .tbs-brand-stage > p { left:1.15rem; bottom:1.05rem; font-size:.76rem; }
}

/* =========================================================
   v0.3.3 — Rich Wood Polish
   Dark oak is a structural material, not a rustic wallpaper.
   Information-heavy surfaces remain high-contrast and clean.
   ========================================================= */
:root {
  --tbs-oak-dark: #17100c;
  --tbs-oak-mid: #2a1a12;
  --tbs-oak-warm: #3a2417;
  --tbs-oak-line: rgba(185,121,69,.28);
  --tbs-oak-highlight: rgba(210,154,105,.11);
  --tbs-wood-texture: url("../images/tbs-dark-oak-photo.jpg");
}

/* A narrow shelf-like edge gives the hero a physical material transition. */
.tbs-hero {
  position: relative;
  border-bottom: 0;
}
.tbs-hero::after {
  content: "";
  position: absolute;
  z-index: 5;
  left: 0;
  right: 0;
  bottom: 0;
  height: 12px;
  background:
    linear-gradient(180deg, rgba(210,154,105,.22), transparent 2px),
    linear-gradient(180deg, #4b2d1c 0%, #2b1a12 46%, #130d09 100%);
  box-shadow: 0 10px 28px rgba(0,0,0,.4);
}

/* Utah intelligence becomes the clearest expression of the oak material. */
.tbs-utah-strip {
  position: relative;
  isolation: isolate;
  background-color: var(--tbs-oak-dark);
  background-image:
    linear-gradient(90deg, rgba(10,8,6,.40), rgba(10,8,6,.06) 45%, rgba(10,8,6,.32)),
    linear-gradient(180deg, rgba(12,10,8,.02), rgba(12,10,8,.34)),
    var(--tbs-wood-texture);
  background-size: auto, auto, cover;
  background-position: center, center, 42% center;
  border-bottom: 1px solid rgba(185,121,69,.22);
}
.tbs-utah-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: radial-gradient(circle at 18% 20%, rgba(210,154,105,.09), transparent 32%);
  pointer-events: none;
}
.tbs-utah-strip__grid {
  border-color: rgba(210,154,105,.2);
  box-shadow: 0 18px 60px rgba(0,0,0,.18);
}
.tbs-intel-card {
  position: relative;
  overflow: hidden;
  border-color: rgba(210,154,105,.32);
  background: linear-gradient(180deg, rgba(29,20,15,.84), rgba(15,12,10,.88));
  box-shadow: inset 0 1px 0 rgba(255,239,216,.025), 0 12px 28px rgba(0,0,0,.12);
}
.tbs-intel-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(210,154,105,.06), transparent 42%);
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}
.tbs-intel-card:hover {
  background: linear-gradient(180deg, rgba(48,31,21,.88), rgba(22,16,12,.9));
  border-color: rgba(210,154,105,.48);
  box-shadow: inset 0 0 0 1px rgba(210,154,105,.12), 0 16px 34px rgba(0,0,0,.18);
}
.tbs-intel-card:hover::before { opacity: 1; }

/* Featured editorial zone gets a restrained oak frame, not a full wood backdrop. */
.tbs-featured {
  position: relative;
  background:
    linear-gradient(90deg, rgba(42,26,18,.2), transparent 26%, transparent 74%, rgba(42,26,18,.16)),
    var(--tbs-ink);
}
.tbs-featured::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(185,121,69,.32), transparent);
}
.tbs-featured__media {
  border: 1px solid rgba(185,121,69,.22);
  box-shadow: 18px 18px 0 rgba(42,26,18,.22), 0 30px 60px rgba(0,0,0,.22);
}

/* Bottle Index remains light for scanning, with a subtle wood/copper edge. */
.tbs-index-preview {
  position: relative;
  box-shadow: inset 0 8px 0 var(--tbs-oak-mid), inset 0 9px 0 rgba(210,154,105,.26);
}
.tbs-index-card {
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 0 rgba(58,36,23,.08);
}
.tbs-index-card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 5px;
  background: linear-gradient(90deg, #2a1a12, #8d552d 48%, #2a1a12);
  opacity: .65;
}

/* Newsletter reads like a premium inset panel set into dark oak. */
.tbs-newsletter {
  position: relative;
  border-color: rgba(210,154,105,.32);
  background-color: #17110d;
  background-image:
    linear-gradient(90deg, rgba(10,8,6,.82), rgba(23,17,13,.74)),
    var(--tbs-wood-texture);
  background-size: auto, cover;
  background-position: center, center;
  box-shadow: inset 0 0 0 1px rgba(243,235,221,.035), 0 20px 60px rgba(0,0,0,.22);
}
.tbs-newsletter::before {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 18px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(210,154,105,.32), transparent);
  pointer-events: none;
}

/* Latest cards use warm material cues while retaining readable neutral bodies. */
.tbs-card {
  border-color: rgba(185,121,69,.18);
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
}
.tbs-card__body {
  position: relative;
}
.tbs-card__body::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 46px;
  height: 2px;
  background: linear-gradient(90deg, var(--tbs-copper), transparent);
}

/* Utah distilleries / editorial promise is intentionally richer and warmer. */
.tbs-local {
  position: relative;
  isolation: isolate;
  background-color: var(--tbs-oak-dark);
  background-image:
    linear-gradient(90deg, rgba(10,8,6,.42), rgba(23,16,12,.20) 48%, rgba(10,8,6,.56)),
    var(--tbs-wood-texture);
  background-size: auto, cover;
  background-position: center, center;
  border-top: 1px solid rgba(185,121,69,.25);
  border-bottom: 1px solid rgba(185,121,69,.18);
}
.tbs-local blockquote {
  position: relative;
  border: 1px solid rgba(210,154,105,.28);
  background: rgba(13,10,8,.64);
  box-shadow: inset 0 0 0 1px rgba(243,235,221,.035), 16px 16px 0 rgba(45,27,17,.24);
}
.tbs-local blockquote::before {
  content: "";
  position: absolute;
  left: 1.5rem;
  right: 1.5rem;
  top: 1.15rem;
  height: 1px;
  background: linear-gradient(90deg, var(--tbs-copper), transparent 80%);
  opacity: .6;
}

/* Article and editorial callouts gain oak material cues without hurting long-form reading. */
.tbs-quick-take,
.gh-content blockquote,
.gh-content .kg-callout-card {
  background-color: #18120e;
  background-image:
    linear-gradient(90deg, rgba(17,13,10,.88), rgba(24,18,14,.72)),
    var(--tbs-wood-texture);
  background-size: auto, cover;
}
.tbs-quick-take { box-shadow: inset 4px 0 0 rgba(185,121,69,.48); }

/* Footer carries the most visible wood treatment after Utah/local sections. */
.tbs-footer {
  position: relative;
  background-color: #0d0907;
  background-image:
    linear-gradient(180deg, rgba(7,6,5,.52), rgba(7,6,5,.84)),
    var(--tbs-wood-texture);
  background-size: auto, cover;
  background-position: center, center;
  border-top: 1px solid rgba(210,154,105,.26);
}
.tbs-footer::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 7px;
  background: linear-gradient(180deg, #4b2e1c 0%, #24160f 65%, #100b08 100%);
  box-shadow: 0 6px 20px rgba(0,0,0,.35);
}

@media (max-width: 700px) {
  /* Photographic wood stays atmospheric on phones without turning into pattern noise. */
  .tbs-utah-strip,
  .tbs-local,
  .tbs-footer,
  .tbs-newsletter {
    background-position: center, 58% center;
  }
  .tbs-featured__media {
    box-shadow: 8px 8px 0 rgba(42,26,18,.2), 0 20px 40px rgba(0,0,0,.2);
  }
  .tbs-local blockquote {
    box-shadow: 8px 8px 0 rgba(45,27,17,.2);
  }
}

/* =========================================================
   v0.4.0 Bottle Finder / Bottle Index
   ========================================================= */
.tbs-finder-hero { padding: 5.2rem 0 3.2rem; border-bottom: 1px solid rgba(185,121,69,.28); background: linear-gradient(180deg, rgba(17,16,14,.97), rgba(17,16,14,.94)), url('../images/tbs-dark-oak-photo.jpg') center/cover no-repeat; }
.tbs-finder-hero__grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr); gap:4rem; align-items:end; }
.tbs-finder-hero h1 { margin:.45rem 0 1rem; max-width:850px; font-family:var(--tbs-serif); font-size:clamp(3.1rem,7vw,6.7rem); line-height:.88; letter-spacing:-.055em; }
.tbs-finder-hero__deck { max-width:700px; margin:0; color:#d3c5b2; font-size:1.08rem; }
.tbs-finder-hero__note { padding:1.4rem 1.5rem; border:1px solid rgba(185,121,69,.36); background:rgba(8,7,6,.68); }
.tbs-finder-hero__note strong { display:block; margin-bottom:.45rem; color:var(--tbs-cream); font-family:var(--tbs-serif); font-size:1.2rem; }
.tbs-finder-hero__note p { margin:0; color:#bcae9a; font-size:.9rem; }

.tbs-finder { padding:3rem 0 6rem; background:#f1eadf; color:var(--tbs-ink); }
.tbs-finder__toolbar { position:sticky; top:76px; z-index:30; display:grid; grid-template-columns:minmax(250px,1.7fr) repeat(3,minmax(150px,.55fr)); gap:.7rem; padding:1rem; border:1px solid rgba(17,16,14,.14); background:rgba(246,239,229,.96); backdrop-filter:blur(12px); box-shadow:0 8px 28px rgba(17,16,14,.06); }
.tbs-finder__search { position:relative; }
.tbs-finder__search svg { position:absolute; left:1rem; top:50%; width:18px; transform:translateY(-50%); opacity:.55; }
.tbs-finder input,.tbs-finder select { width:100%; min-height:48px; border:1px solid rgba(17,16,14,.2); border-radius:0; background:#fffaf3; color:var(--tbs-ink); font:inherit; }
.tbs-finder input { padding:.75rem 1rem .75rem 2.8rem; }
.tbs-finder select { padding:.75rem 2.3rem .75rem .9rem; }
.tbs-finder input:focus,.tbs-finder select:focus { outline:2px solid rgba(185,121,69,.45); outline-offset:1px; border-color:#9b6035; }
.tbs-finder__summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:1.35rem 0 1rem; color:#615747; }
.tbs-finder__summary strong { color:var(--tbs-ink); }
.tbs-finder__reset { border:0; padding:0; background:none; color:#7d4c2b; font-weight:700; cursor:pointer; }

.tbs-bottle-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.tbs-bottle-card { display:flex; min-height:360px; flex-direction:column; padding:1.35rem; border:1px solid rgba(17,16,14,.15); background:#fffaf3; color:var(--tbs-ink); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.tbs-bottle-card:hover { transform:translateY(-2px); border-color:#9b6035; box-shadow:0 14px 30px rgba(17,16,14,.08); }
.tbs-bottle-card__image { aspect-ratio:4/3; margin:-1.35rem -1.35rem 1.15rem; overflow:hidden; background:#ded4c5; }
.tbs-bottle-card__image img { width:100%; height:100%; object-fit:cover; }
.tbs-bottle-card__placeholder { height:100%; display:grid; place-items:center; background:linear-gradient(145deg,#1a1713,#332417); color:#c7854e; font-family:var(--tbs-serif); font-size:3.2rem; }
.tbs-bottle-card__meta { display:flex; flex-wrap:wrap; gap:.35rem .65rem; margin-bottom:.8rem; color:#8d552d; font-size:.66rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.tbs-bottle-card h2,.tbs-bottle-card h3 { margin:0 0 .5rem; font-family:var(--tbs-serif); font-size:1.52rem; line-height:1.03; letter-spacing:-.025em; }
.tbs-bottle-card p { margin:0 0 1rem; color:#6b604f; font-size:.88rem; }
.tbs-bottle-card__tags { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:auto; }
.tbs-bottle-card__tags span { padding:.32rem .5rem; border:1px solid rgba(17,16,14,.12); background:#f1e7d8; font-size:.62rem; line-height:1; }
.tbs-bottle-card__action { display:flex; justify-content:space-between; align-items:center; margin-top:1rem; padding-top:.85rem; border-top:1px solid rgba(17,16,14,.12); color:#7d4c2b; font-size:.72rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.tbs-bottle-card[hidden] { display:none; }
.tbs-finder__empty { display:none; padding:4rem 2rem; border:1px solid rgba(17,16,14,.14); text-align:center; background:#fffaf3; }
.tbs-finder__empty.is-visible { display:block; }
.tbs-finder__empty h2 { font-family:var(--tbs-serif); font-size:2rem; }

.tbs-index-intro { padding:4rem 0; background:var(--tbs-paper); color:var(--tbs-ink); }
.tbs-index-intro__grid { display:grid; grid-template-columns:1.05fr .95fr; gap:4rem; }
.tbs-index-intro h1 { margin:.4rem 0 1rem; font-family:var(--tbs-serif); font-size:clamp(3rem,6vw,5.8rem); line-height:.9; letter-spacing:-.05em; }
.tbs-index-intro p { color:#625848; }
.tbs-index-key { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
.tbs-index-key div { padding:1rem; border:1px solid rgba(17,16,14,.14); background:#f7f0e5; }
.tbs-index-key strong { display:block; font-family:var(--tbs-serif); font-size:1.05rem; }
.tbs-index-key span { color:#6b604f; font-size:.78rem; }

.tbs-data-guide { padding:4rem 0; background:#171411; }
.tbs-data-guide__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(185,121,69,.25); border:1px solid rgba(185,121,69,.25); }
.tbs-data-guide__item { padding:1.35rem; background:#171411; }
.tbs-data-guide__item span { color:#c7834b; font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tbs-data-guide__item strong { display:block; margin:.6rem 0 .4rem; font-family:var(--tbs-serif); font-size:1.3rem; }
.tbs-data-guide__item p { margin:0; color:#ad9f8b; font-size:.83rem; }

@media (max-width:1100px) {
  .tbs-bottle-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tbs-finder__toolbar { grid-template-columns:1fr 1fr; }
  .tbs-finder-hero__grid,.tbs-index-intro__grid { gap:2.5rem; }
}
@media (max-width:760px) {
  .tbs-finder-hero { padding:3.4rem 0 2.4rem; }
  .tbs-finder-hero__grid,.tbs-index-intro__grid { grid-template-columns:1fr; }
  .tbs-finder__toolbar { position:static; grid-template-columns:1fr; }
  .tbs-bottle-grid { grid-template-columns:1fr 1fr; }
  .tbs-data-guide__grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:500px) {
  .tbs-bottle-grid,.tbs-index-key,.tbs-data-guide__grid { grid-template-columns:1fr; }
  .tbs-bottle-card { min-height:330px; }
}

/* =========================================================
   v0.4.1 Bottle Finder — production schema refinement
   ========================================================= */
.tbs-finder__toolbar { grid-template-columns:minmax(260px,1.55fr) repeat(4,minmax(135px,.55fr)); align-items:end; }
.tbs-finder__label { display:block; margin:0 0 .32rem .1rem; color:#7d6d58; font-size:.64rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tbs-finder__statusline { display:flex; justify-content:space-between; gap:1rem; margin:1rem 0 0; padding:.72rem .9rem; border-left:3px solid #a9693d; background:#e8ddce; color:#665a49; font-size:.72rem; }
.tbs-finder__statusline strong { color:#3f3428; }
.tbs-bottle-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.15rem; }
.tbs-bottle-card { min-height:475px; padding:1.2rem; border-color:rgba(69,48,31,.18); box-shadow:0 8px 22px rgba(54,36,24,.04); }
.tbs-bottle-card__image { aspect-ratio:16/9; margin:-1.2rem -1.2rem 1rem; }
.tbs-bottle-card__company { margin-bottom:.42rem; color:#9a5e33; font-size:.66rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.tbs-bottle-card h2,.tbs-bottle-card h3 { margin-bottom:.9rem; font-size:1.65rem; }
.tbs-bottle-card__facts { display:grid; grid-template-columns:1fr 1fr; gap:1px; margin:0 0 1rem; overflow:hidden; border:1px solid rgba(74,53,36,.12); background:rgba(74,53,36,.12); }
.tbs-bottle-card__facts div { min-height:62px; padding:.65rem .7rem; background:#fffaf3; }
.tbs-bottle-card__facts span { display:block; margin-bottom:.18rem; color:#8a7965; font-size:.58rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tbs-bottle-card__facts strong { display:block; color:#342a21; font-family:var(--tbs-serif); font-size:.9rem; line-height:1.15; }
.tbs-bottle-card__badges { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:auto; }
.tbs-bottle-badge { display:inline-flex; align-items:center; min-height:26px; padding:.35rem .52rem; border:1px solid rgba(131,79,43,.22); background:#eee0cf; color:#71462a; font-size:.6rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.tbs-bottle-badge.is-muted { border-color:rgba(80,73,64,.16); background:#ece8e1; color:#81796e; }
.tbs-bottle-badge.is-verified { border-color:rgba(75,106,69,.24); background:#e3eadf; color:#496344; }
.tbs-bottle-card__action { margin-top:.9rem; }
.tbs-bottle-card__source-tags { display:none !important; }
@media (max-width:1180px) {
  .tbs-finder__toolbar { grid-template-columns:1.5fr 1fr 1fr; }
  .tbs-finder__toolbar label:nth-child(4),.tbs-finder__toolbar label:nth-child(5) { grid-column:auto; }
}
@media (max-width:900px) {
  .tbs-bottle-grid { grid-template-columns:1fr 1fr; }
  .tbs-finder__statusline { flex-direction:column; gap:.25rem; }
}
@media (max-width:760px) {
  .tbs-finder__toolbar { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .tbs-bottle-grid { grid-template-columns:1fr; }
  .tbs-bottle-card { min-height:430px; }
}


/* =========================================================
   v0.5.0 — 640-record governed Bottle Finder
   ========================================================= */
.tbs-finder { padding:2.2rem 0 6rem; background:var(--tbs-paper); color:var(--tbs-ink); }
.tbs-finder__toolbar {
  position:sticky; top:78px; z-index:35;
  display:grid; grid-template-columns:minmax(250px,1.6fr) repeat(4,minmax(140px,.7fr));
  gap:.75rem; padding:1rem 0; background:rgba(238,230,216,.97); backdrop-filter:blur(10px);
}
.tbs-finder__toolbar input,.tbs-finder__toolbar select {
  width:100%; min-height:46px; padding:.7rem .78rem; border:1px solid rgba(65,48,34,.24);
  border-radius:2px; background:#fffaf3; color:#30261e;
}
.tbs-finder__reset { border:0; background:transparent; color:#8b542f; font-size:.7rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; cursor:pointer; }
.tbs-catalog-notice {
  display:grid; grid-template-columns:auto 1fr; gap:.8rem; align-items:start;
  margin:1rem 0 1.4rem; padding:1rem 1.1rem; border-left:3px solid #a9693d; background:#e6d9c7; color:#5d5142;
}
.tbs-catalog-notice strong { color:#352a21; }
.tbs-bottle-card--catalog { min-height:440px; }
.tbs-bottle-card__image--compact { aspect-ratio:16/6; }
.tbs-bottle-card__image--compact .tbs-bottle-card__placeholder { font-size:2.15rem; letter-spacing:.08em; }
.tbs-bottle-card__expression { display:block; margin-top:.18rem; font-size:.8em; font-weight:400; }
.tbs-bottle-card__facts--fixed {
  grid-template-columns:1fr 1fr;
  grid-template-rows:minmax(66px,auto) minmax(78px,auto);
}
.tbs-bottle-card__facts--fixed div { min-height:0; }
.tbs-bottle-card__maturation {
  margin:.1rem 0 .9rem !important; padding:.65rem .7rem; background:#f1e7d8; color:#5e5345 !important; font-size:.74rem !important;
}
.tbs-bottle-card__maturation span { display:block; color:#8a7965; font-size:.55rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tbs-bottle-badge.is-source { background:#f3e2cd; color:#754925; }
.tbs-bottle-card__action--static { gap:.65rem; flex-wrap:wrap; }
.tbs-bottle-card__action--static a { color:#7d4c2b; }
.tbs-catalog-more { display:flex; justify-content:center; padding-top:2rem; }
.tbs-button--outline-dark { background:transparent; color:#5b3824; border-color:#9a6039; }
.tbs-button--outline-dark:hover { color:#130f0b; }
@media (max-width:1180px) {
  .tbs-finder__toolbar { grid-template-columns:1.5fr 1fr 1fr; }
}
@media (max-width:760px) {
  .tbs-finder__toolbar { position:static; grid-template-columns:1fr; }
  .tbs-catalog-notice { grid-template-columns:1fr; }
}

/* =========================================================
   v0.5.1 — Bottle Finder UX polish
   Presentation-only refinements; Bottle Catalog V2.1 data is unchanged.
   ========================================================= */
.tbs-bottle-card--catalog {
  min-height:0;
  padding:1rem;
}
.tbs-bottle-card--catalog .tbs-bottle-card__image--compact {
  height:76px;
  aspect-ratio:auto;
  margin:-1rem -1rem .72rem;
}
.tbs-bottle-card--catalog .tbs-bottle-card__image--compact .tbs-bottle-card__placeholder {
  font-size:1.65rem;
  letter-spacing:.1em;
}
.tbs-bottle-card--catalog .tbs-bottle-card__company {
  margin-bottom:.24rem;
  font-size:.59rem;
  line-height:1.25;
}
.tbs-bottle-card--catalog .tbs-bottle-card__brand {
  margin:0;
  font-size:1.52rem;
  line-height:1.02;
}
.tbs-bottle-card--catalog .tbs-bottle-card__expression {
  display:block;
  margin:.15rem 0 .72rem;
  color:#5f5143;
  font-family:var(--tbs-serif);
  font-size:1.06rem;
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.015em;
}
.tbs-bottle-card--catalog .tbs-bottle-card__facts--fixed {
  grid-template-columns:1fr 1fr;
  grid-template-rows:minmax(56px,auto) minmax(64px,auto);
  margin-bottom:.68rem;
}
.tbs-bottle-card--catalog .tbs-bottle-card__facts--fixed div {
  min-height:0;
  padding:.5rem .58rem;
}
.tbs-bottle-card--catalog .tbs-bottle-card__facts--fixed span {
  margin-bottom:.14rem;
  font-size:.55rem;
}
.tbs-bottle-card--catalog .tbs-bottle-card__facts--fixed strong {
  font-size:.84rem;
  line-height:1.14;
}
.tbs-bottle-card--catalog .tbs-bottle-card__maturation {
  margin:0 0 .62rem !important;
  padding:.48rem .58rem;
  font-size:.7rem !important;
  line-height:1.28;
}
.tbs-bottle-card--catalog .tbs-bottle-card__badges {
  gap:.32rem;
  margin-top:.02rem;
}
.tbs-bottle-card--catalog .tbs-bottle-badge {
  min-height:23px;
  padding:.29rem .45rem;
  font-size:.56rem;
}
.tbs-bottle-card--catalog .tbs-bottle-card__action--static {
  gap:.5rem .7rem;
  margin-top:.68rem;
  padding-top:.58rem;
  border-top-color:rgba(17,16,14,.09);
  color:#897a68;
  font-size:.6rem;
  font-weight:600;
  letter-spacing:.025em;
  line-height:1.3;
  text-transform:none;
}
.tbs-bottle-card--catalog .tbs-bottle-card__action--static a {
  color:#846044;
  font-weight:700;
}
@media (max-width:560px) {
  .tbs-bottle-card--catalog { min-height:0; }
  .tbs-bottle-card--catalog .tbs-bottle-card__image--compact { height:68px; }
  .tbs-bottle-card--catalog .tbs-bottle-card__brand { font-size:1.45rem; }
  .tbs-bottle-card--catalog .tbs-bottle-card__expression { font-size:1rem; }
}

/* =========================================================
   v0.5.2 Homepage purpose / trust section
   Reframes the former internal editorial-rule block as useful,
   visitor-facing guidance while preserving the approved oak treatment.
   ========================================================= */
.tbs-purpose {
  padding: 6.25rem 0;
}

.tbs-purpose__intro {
  max-width: 880px;
  margin-bottom: 2.4rem;
}

.tbs-purpose__intro h2 {
  margin: .45rem 0 1rem;
  max-width: 820px;
  font-family: var(--tbs-serif);
  font-size: clamp(2.8rem, 5.2vw, 5.4rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.tbs-purpose__intro > p {
  max-width: 780px;
  margin: 0;
  color: var(--tbs-muted);
  font-size: 1.05rem;
  line-height: 1.65;
}

.tbs-purpose__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(210,154,105,.30);
  border-left: 1px solid rgba(210,154,105,.24);
}

.tbs-purpose-card {
  position: relative;
  min-height: 285px;
  padding: 1.65rem 1.65rem 1.8rem;
  border-right: 1px solid rgba(210,154,105,.24);
  border-bottom: 1px solid rgba(210,154,105,.24);
  background: linear-gradient(180deg, rgba(24,17,13,.76), rgba(12,10,8,.72));
  box-shadow: inset 0 1px 0 rgba(255,239,216,.025);
}

.tbs-purpose-card__number {
  display: block;
  margin-bottom: 2.35rem;
  color: var(--tbs-copper);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
}

.tbs-purpose-card h3 {
  margin: .45rem 0 .75rem;
  max-width: 310px;
  font-family: var(--tbs-serif);
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.08;
  letter-spacing: -.02em;
}

.tbs-purpose-card p {
  margin: 0;
  color: var(--tbs-muted);
  line-height: 1.58;
}

.tbs-purpose-card .tbs-text-link {
  display: inline-block;
  margin-top: 1.15rem;
}

.tbs-purpose__trust {
  display: grid;
  grid-template-columns: minmax(260px, .82fr) minmax(0, 1.18fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
  margin-top: 1.5rem;
  padding: 2rem 2.2rem;
  border: 1px solid rgba(210,154,105,.28);
  background: rgba(13,10,8,.68);
  box-shadow: 12px 12px 0 rgba(45,27,17,.20);
}

.tbs-purpose__trust h3 {
  margin: .45rem 0 0;
  font-family: var(--tbs-serif);
  font-size: clamp(1.6rem, 2.7vw, 2.65rem);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.tbs-purpose__trust > p {
  margin: 0;
  color: var(--tbs-muted);
  line-height: 1.65;
}

@media (max-width: 900px) {
  .tbs-purpose__grid {
    grid-template-columns: 1fr;
  }

  .tbs-purpose-card {
    min-height: auto;
  }

  .tbs-purpose-card__number {
    margin-bottom: 1.25rem;
  }

  .tbs-purpose__trust {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

@media (max-width: 700px) {
  .tbs-purpose {
    padding: 4rem 0;
  }

  .tbs-purpose__intro {
    margin-bottom: 1.6rem;
  }

  .tbs-purpose-card,
  .tbs-purpose__trust {
    padding: 1.35rem;
  }

  .tbs-purpose__trust {
    box-shadow: 7px 7px 0 rgba(45,27,17,.18);
  }
}

/* ============================================================
   v0.6.1 — Bottle Detail Pilot Polish
   ============================================================ */
.tbs-bottle-detail { background:#f4efe7; color:#211d19; }
.tbs-bottle-detail__hero { background:linear-gradient(180deg,rgba(17,16,14,.97),rgba(24,20,17,.97)),url('../images/tbs-dark-oak-photo.jpg') center/cover; color:var(--tbs-cream); border-bottom:1px solid rgba(185,121,69,.35); }
.tbs-bottle-detail__hero-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr); gap:4rem; align-items:end; padding-top:clamp(4.5rem,8vw,8rem); padding-bottom:clamp(3.5rem,6vw,6rem); }
.tbs-bottle-detail__back { display:inline-block; margin-bottom:1rem; color:#d9aa80; }
.tbs-bottle-detail__hero h1 { max-width:920px; margin:.2rem 0 1rem; font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(2.8rem,6vw,5.8rem); line-height:.98; letter-spacing:-.04em; }
.tbs-bottle-detail__deck { max-width:760px; margin:0; color:#d8cfc2; font-size:clamp(1.05rem,1.7vw,1.28rem); line-height:1.65; }
.tbs-bottle-detail__actions { display:flex; gap:.8rem; flex-wrap:wrap; margin-top:2rem; }
.tbs-bottle-detail__actions .tbs-button--outline { border-color:rgba(243,235,221,.45); color:var(--tbs-cream); background:transparent; }
.tbs-bottle-detail__actions .tbs-button--outline:hover { border-color:var(--tbs-cream); }
.tbs-bottle-detail__hero-grid.has-approved-image { grid-template-columns:minmax(0,1.2fr) minmax(190px,.48fr) minmax(260px,.68fr); gap:2.5rem; align-items:center; }
.tbs-bottle-detail__approved-image[hidden] { display:none; }
.tbs-bottle-detail__approved-image { position:relative; display:grid; place-items:center; width:100%; height:clamp(420px,38vw,560px); margin:0; padding:1.25rem; overflow:hidden; border:1px solid rgba(185,121,69,.32); background:#fff; box-shadow:0 22px 55px rgba(0,0,0,.22); }
.tbs-bottle-detail__approved-image img { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; object-position:center; }
.tbs-bottle-detail__image-credit { position:absolute; right:.55rem; bottom:.4rem; left:.55rem; color:#604a38; font-size:.58rem; line-height:1.2; text-align:center; }
.tbs-bottle-detail__image-credit a { color:inherit; text-decoration:none; }
.tbs-bottle-detail__image-credit a:hover { text-decoration:underline; }
.tbs-bottle-detail__trust { padding:1.5rem; border:1px solid rgba(185,121,69,.35); background:rgba(0,0,0,.16); }
.tbs-bottle-detail__trust strong { display:block; margin:.5rem 0 .7rem; font-family:'Libre Baskerville',Georgia,serif; font-size:1.35rem; line-height:1.25; }
.tbs-bottle-detail__trust p { margin:0; color:#c9c0b5; line-height:1.6; }
.tbs-bottle-detail__body { padding-top:clamp(2.5rem,5vw,5rem); padding-bottom:clamp(4rem,7vw,7rem); }
.tbs-bottle-detail__image { margin:0 auto 2rem; max-width:980px; }
.tbs-bottle-detail__image img { width:100%; height:auto; display:block; }
.tbs-bottle-detail__content { max-width:980px; margin:0 auto; }
.tbs-bottle-source { padding:0; }
.tbs-bottle-source__intro { margin:0 0 1.5rem; font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(1.2rem,2vw,1.55rem); line-height:1.55; color:#3f342b; }
.tbs-bottle-source dl { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:1px; margin:2rem 0; padding:1px; background:#d7cdc0; border:1px solid #d7cdc0; }
.tbs-bottle-source dl > div { grid-column:span 2; min-width:0; padding:1.15rem 1.2rem; background:#fbf8f3; }
/* Adaptive fact rows: keep partial final rows balanced instead of exposing an empty shaded grid cell. */
.tbs-bottle-source dl > div:first-child:nth-last-child(5) ~ div:nth-child(n+4) { grid-column:span 3; }
.tbs-bottle-source dl > div:first-child:nth-last-child(4),
.tbs-bottle-source dl > div:first-child:nth-last-child(4) ~ div { grid-column:span 3; }
.tbs-bottle-source dl > div:first-child:nth-last-child(2),
.tbs-bottle-source dl > div:first-child:nth-last-child(2) ~ div { grid-column:span 3; }
.tbs-bottle-source dl > div:only-child { grid-column:1 / -1; }
.tbs-bottle-source dt { margin:0 0 .35rem; color:#8a7965; font-size:.67rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.tbs-bottle-source dd { margin:0; color:#2b241e; font-size:.98rem; font-weight:650; line-height:1.35; overflow-wrap:anywhere; }
.tbs-bottle-source__status { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:1.5rem 0; }
.tbs-bottle-source__status > div { padding:1.15rem 1.2rem; border:1px solid #d8ccbe; background:#eee6dc; }
.tbs-bottle-source__status strong { display:block; margin-bottom:.25rem; }
.tbs-bottle-source__status > .tbs-allocation-card { border-color:#b97945; background:#f3e8d8; box-shadow:inset 4px 0 0 #b97945; }
.tbs-allocation-card > span { display:grid; gap:.42rem; }
.tbs-allocation-card > span > b { color:#754925; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; }
.tbs-allocation-card > span > span { line-height:1.45; }
.tbs-allocation-card__totals { font-weight:700; }
.tbs-allocation-card a { width:max-content; margin-top:.18rem; color:#754925; font-size:.82rem; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.tbs-bottle-source__source { margin:1.4rem 0; padding:1.25rem; border-left:3px solid var(--tbs-copper); background:#fffaf3; }
.tbs-bottle-source__source p { margin:.3rem 0; }
.tbs-bottle-source__source a { color:#7d4c2b; font-weight:700; overflow-wrap:anywhere; }
.tbs-bottle-source-note { color:#756a5e; font-size:.9rem; line-height:1.6; }
.tbs-bottle-detail__next { display:flex; justify-content:space-between; gap:2rem; align-items:end; max-width:980px; margin:3rem auto 0; padding:2rem; border-top:1px solid #cfc2b3; border-bottom:1px solid #cfc2b3; }
.tbs-bottle-detail__next h2 { max-width:680px; margin:.35rem 0 .7rem; font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(1.5rem,2.7vw,2.2rem); }
.tbs-bottle-detail__next p { max-width:720px; margin:0; color:#62584e; line-height:1.65; }
.tbs-bottle-detail__next .tbs-text-link { flex:0 0 auto; color:#7d4c2b; font-weight:800; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.28em; }
.tbs-bottle-detail__next .tbs-text-link:hover { color:#4e3424; }
.tbs-bottles-index__card { min-height:260px; }
.tbs-bottles-index__card .tbs-card__link { display:flex; flex-direction:column; height:100%; padding:1.5rem; text-decoration:none; }
.tbs-bottles-index__card h2 { margin:.55rem 0 .7rem; font-family:'Libre Baskerville',Georgia,serif; font-size:1.45rem; }
.tbs-bottles-index__card p { color:#6d6257; line-height:1.55; }
.tbs-bottles-index__card .tbs-text-link { margin-top:auto; color:#7d4c2b; font-weight:700; }

@media (max-width:900px) {
  .tbs-bottle-detail__hero-grid { grid-template-columns:1fr; gap:2rem; }
  .tbs-bottle-detail__hero-grid.has-approved-image { grid-template-columns:1fr; gap:2rem; }
  .tbs-bottle-detail__approved-image { width:min(100%,380px); height:500px; justify-self:start; }
  .tbs-bottle-detail__trust { max-width:680px; }
  .tbs-bottle-source dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tbs-bottle-source dl > div { grid-column:auto; }
  .tbs-bottle-source dl > div:last-child:nth-child(odd) { grid-column:1 / -1; }
}
@media (max-width:640px) {
  .tbs-bottle-detail__hero-grid { padding-top:3.5rem; padding-bottom:3rem; }
  .tbs-bottle-detail__approved-image { width:min(100%,320px); height:390px; justify-self:center; }
  .tbs-bottle-detail__approved-image[data-bottle-feature-image] {
    height:auto;
    min-height:0;
    padding:1rem 1rem 2rem;
  }
  .tbs-bottle-detail__approved-image[data-bottle-feature-image] img {
    width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
    object-position:center;
  }
  .tbs-bottle-detail__hero h1 { font-size:clamp(2.4rem,13vw,3.8rem); }
  .tbs-bottle-source dl { grid-template-columns:1fr; }
  .tbs-bottle-source dl > div,
  .tbs-bottle-source dl > div:last-child:nth-child(odd) { grid-column:auto; }
  .tbs-bottle-source__status { grid-template-columns:1fr; }
  .tbs-bottle-detail__next { display:block; padding:1.5rem 0; }
  .tbs-bottle-detail__next .tbs-text-link { display:inline-block; margin-top:1.2rem; }
}
.tbs-bottle-card__detail-pending { color:#8a7965; font-size:.72rem; font-weight:700; letter-spacing:.03em; text-transform:uppercase; }

/* =========================================================
   v0.6.5 — Bottle Family / Series canary polish
   ========================================================= */
.tbs-family-card { border-color:rgba(132,82,45,.34); background:#fff8ef; }
.tbs-family-card:hover { border-color:#8d5631; }
.tbs-family-card__image .tbs-bottle-card__placeholder { gap:.45rem; font-size:1.5rem; }
.tbs-family-card__image .tbs-bottle-card__placeholder span { font-family:var(--tbs-sans); font-size:.58rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; opacity:.72; }
.tbs-family-card__releases { min-height:52px; margin:0 0 .7rem !important; padding:.58rem .62rem; border-left:3px solid var(--tbs-copper); background:#efe2d1; color:#5c4d3f !important; font-size:.72rem !important; line-height:1.45; }
.tbs-family-card__releases span { display:block; margin-bottom:.18rem; color:#8a7965; font-size:.54rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tbs-family-card__releases strong { color:#70462b; font-weight:800; }

.tbs-series { background:#f4efe7; color:#211d19; }
.tbs-series__hero { background:linear-gradient(180deg,rgba(17,16,14,.97),rgba(24,20,17,.97)),url('../images/tbs-dark-oak-photo.jpg') center/cover; color:var(--tbs-cream); border-bottom:1px solid rgba(185,121,69,.35); }
.tbs-series__hero-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr); gap:4rem; align-items:end; padding-top:clamp(4.5rem,8vw,8rem); padding-bottom:clamp(3.5rem,6vw,6rem); }
.tbs-series__prelude { display:flex; align-items:center; gap:1rem; flex-wrap:wrap; margin-bottom:1.1rem; }
.tbs-series__back { display:inline-block; color:#d9aa80; }
.tbs-series__prelude .tbs-eyebrow { padding-left:1rem; border-left:1px solid rgba(185,121,69,.35); }
.tbs-series__brand { margin:.7rem 0 .2rem; color:#d0b8a0; font-size:.86rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.tbs-series__hero h1 { max-width:920px; margin:.2rem 0 1rem; font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(3rem,6vw,5.8rem); line-height:.98; letter-spacing:-.04em; }
.tbs-series__deck { max-width:760px; margin:0; color:#d8cfc2; font-size:clamp(1.04rem,1.6vw,1.22rem); line-height:1.65; }
.tbs-series__actions { display:flex; gap:.8rem; flex-wrap:wrap; margin-top:2rem; }

.tbs-button--disabled,.tbs-button--disabled:hover { opacity:1; cursor:not-allowed; transform:none; box-shadow:none; background:transparent; color:#9f9283; border-color:rgba(243,235,221,.24); }
.tbs-series__actions .tbs-button--outline { border-color:rgba(243,235,221,.45); color:var(--tbs-cream); background:transparent; }
.tbs-series__trust { padding:1.5rem; border:1px solid rgba(185,121,69,.35); background:rgba(0,0,0,.16); }
.tbs-series__trust strong { display:block; margin:.5rem 0 .7rem; font-family:'Libre Baskerville',Georgia,serif; font-size:1.35rem; line-height:1.25; }
.tbs-series__trust p { margin:0; color:#c9c0b5; line-height:1.6; }
.tbs-series__body { padding-top:clamp(2.5rem,5vw,5rem); padding-bottom:clamp(4rem,7vw,7rem); }
.tbs-series__summary { display:grid; grid-template-columns:1fr 1fr; gap:2.5rem; align-items:end; max-width:1080px; margin:0 auto 2rem; }
.tbs-series__summary h2,.tbs-series__provenance h2 { margin:.35rem 0 .65rem; font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(1.8rem,3.2vw,2.8rem); }
.tbs-series__summary p { margin:0; color:#62584e; line-height:1.65; }
.tbs-series__stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; padding:1px; background:#d7cdc0; }
.tbs-series__stat-grid div { padding:1rem; background:#fbf8f3; }
.tbs-series__stat-grid span { display:block; margin-bottom:.35rem; color:#8a7965; font-size:.6rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tbs-series__stat-grid strong { font-family:'Libre Baskerville',Georgia,serif; font-size:1rem; }
.tbs-series__releases { max-width:1080px; margin:0 auto; }
.tbs-series__table-wrap { overflow-x:auto; border:1px solid #d7cdc0; background:#fffaf3; }
.tbs-series-table { width:100%; border-collapse:collapse; min-width:760px; }
.tbs-series-table th { padding:.8rem .9rem; border-bottom:1px solid #d7cdc0; background:#eee4d8; color:#756552; font-size:.62rem; letter-spacing:.08em; text-align:left; text-transform:uppercase; }
.tbs-series-table td { padding:1rem .9rem; border-bottom:1px solid #e2d8cc; vertical-align:top; color:#43382f; }
.tbs-series-table tbody tr:last-child td { border-bottom:0; }
.tbs-series-table td:first-child strong { display:block; font-family:'Libre Baskerville',Georgia,serif; color:#2a231d; font-size:1.02rem; }
.tbs-series-table td:first-child span { display:block; margin-top:.25rem; color:#7a6e61; font-size:.76rem; }
.tbs-series-table a { color:#7d4c2b; font-weight:800; }
.tbs-series-table__staged { color:#87796b; font-size:.72rem; font-weight:700; letter-spacing:.03em; text-transform:uppercase; }
.tbs-series__provenance { max-width:1080px; margin:2.4rem auto 0; padding:1.5rem 1.6rem; border-left:3px solid var(--tbs-copper); background:#fffaf3; }
.tbs-series__provenance p { max-width:840px; color:#62584e; line-height:1.65; }
.tbs-series__unknown { margin-bottom:0; font-size:.9rem; }

@media (max-width:900px) {
  .tbs-series__hero-grid,.tbs-series__summary { grid-template-columns:1fr; gap:2rem; }
  .tbs-series__trust { max-width:680px; }
}
@media (max-width:620px) {
  .tbs-series__hero-grid { padding-top:3.5rem; padding-bottom:3rem; }
  .tbs-series__prelude { align-items:flex-start; gap:.55rem; }
  .tbs-series__prelude .tbs-eyebrow { width:100%; padding-left:0; border-left:0; }
  .tbs-series__hero h1 { font-size:clamp(2.5rem,13vw,4rem); }
  .tbs-series__stat-grid { grid-template-columns:1fr; }
  .tbs-series__provenance { padding:1.2rem; }
}


/* =========================================================
   v0.6.6 — Bottle Family / Series rollout
   ========================================================= */
.tbs-family-card { box-shadow:0 8px 24px rgba(50,35,22,.035); }
.tbs-family-card__image .tbs-bottle-card__placeholder span { color:#7b614e; }
.tbs-series__actions .tbs-button--disabled { pointer-events:none; }

/* v0.6.7 — exact release search + family detail links */
.tbs-series-table__release-link{display:flex;flex-direction:column;gap:.2rem;color:inherit;text-decoration:none}
.tbs-series-table__release-link:hover strong,.tbs-series-table__release-link:focus-visible strong{color:var(--tbs-copper,#B97945)}
.tbs-series-table__release-link:focus-visible{outline:2px solid var(--tbs-copper,#B97945);outline-offset:3px}


/* =========================================================
   v0.6.9 — Family / Variant Data & Responsive Polish
   ========================================================= */
@media (max-width:620px) {
  .tbs-series__table-wrap { overflow:visible; border:0; background:transparent; }
  .tbs-series-table { min-width:0; border-collapse:separate; border-spacing:0 .85rem; }
  .tbs-series-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
  .tbs-series-table tbody,.tbs-series-table tr,.tbs-series-table td { display:block; width:100%; }
  .tbs-series-table tr { border:1px solid #d7cdc0; background:#fffaf3; box-shadow:0 5px 18px rgba(50,35,22,.035); }
  .tbs-series-table td { display:grid; grid-template-columns:minmax(92px,.38fr) minmax(0,1fr); gap:.8rem; align-items:start; padding:.78rem .9rem; border-bottom:1px solid #e2d8cc; }
  .tbs-series-table td:last-child { border-bottom:0; }
  .tbs-series-table td::before { content:attr(data-label); color:#8a7965; font-size:.58rem; font-weight:800; letter-spacing:.08em; line-height:1.4; text-transform:uppercase; }
  .tbs-series-table td:first-child { padding-top:1rem; }
  .tbs-series-table td:first-child strong { font-size:1.08rem; }
  .tbs-series-table__release-link { min-width:0; }
  .tbs-series-table__staged { line-height:1.45; }
}

/* =========================================================
   v0.7.0 — Customer-facing editorial / UX cleanup
   ========================================================= */
.tbs-series-table { min-width:680px; }
.tbs-series__sources { border-left:0; border:1px solid #d7cdc0; padding:0; background:#fffaf3; }
.tbs-series__sources summary { cursor:pointer; list-style:none; padding:1.1rem 1.25rem; color:#5d4a3b; font-size:.75rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.tbs-series__sources summary::-webkit-details-marker { display:none; }
.tbs-series__sources summary::after { content:'+'; float:right; color:#7d4c2b; font-size:1rem; line-height:1; }
.tbs-series__sources[open] summary::after { content:'−'; }
.tbs-series__sources-body { padding:0 1.25rem 1.25rem; border-top:1px solid #e2d8cc; }
.tbs-series__sources-body p:first-child { margin-top:1.1rem; }
.tbs-index-card--sample { display:block; color:inherit; text-decoration:none; }
.tbs-index-card--sample:hover .tbs-index-card__action,
.tbs-index-card--sample:focus-visible .tbs-index-card__action { color:#7d4c2b; }
.tbs-index-card--sample:focus-visible { outline:2px solid var(--tbs-copper); outline-offset:3px; }
@media (max-width:620px) {
  .tbs-series-table { min-width:0; }
  .tbs-series__sources { padding:0; }
  .tbs-series__sources summary { padding:1rem; }
  .tbs-series__sources-body { padding:0 1rem 1rem; }
}

/* v0.7.0 — customer presentation for sync-generated bottle fact blocks */
.tbs-bottle-source__details { margin:1.4rem 0; padding:0; border-left:0; border:1px solid #d8ccbe; background:#fffaf3; }
.tbs-bottle-source__details summary { cursor:pointer; list-style:none; padding:1.05rem 1.2rem; color:#5d4a3b; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.tbs-bottle-source__details summary::-webkit-details-marker { display:none; }
.tbs-bottle-source__details summary::after { content:'+'; float:right; color:#7d4c2b; font-size:1rem; line-height:1; }
.tbs-bottle-source__details[open] summary::after { content:'−'; }
.tbs-bottle-source__details-body { padding:0 1.2rem 1.2rem; border-top:1px solid #e2d8cc; }
.tbs-bottle-source__details-body > strong { display:block; margin-top:1rem; }
.tbs-bottle-source__details-body p { margin:.4rem 0; }
@media (max-width:640px) {
  .tbs-bottle-source__details summary { padding:1rem; }
  .tbs-bottle-source__details-body { padding:0 1rem 1rem; }
}


/* =========================================================
   v0.7.1 — Final customer-facing polish
   Narrow presentation-only release; no catalog/routing changes.
   ========================================================= */
/* The homepage Bottle Finder CTA sits on a light paper section. */
.tbs-index-preview .tbs-button--outline-dark {
  background:transparent;
  color:#5b3824;
  border-color:#9a6039;
}
.tbs-index-preview .tbs-button--outline-dark:hover,
.tbs-index-preview .tbs-button--outline-dark:focus-visible {
  background:#9a6039;
  border-color:#9a6039;
  color:#fffaf3;
}

/* Bottle Finder card hierarchy: bottle name first, utility facts second. */
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__company {
  margin-bottom:.28rem;
  color:#8b715d;
  font-size:.58rem;
  letter-spacing:.075em;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__brand {
  margin-bottom:.12rem;
  color:#2d241d;
  font-size:1.55rem;
  line-height:1.05;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__expression {
  min-height:2.25em;
  margin:.12rem 0 .78rem;
  color:#5d4939;
  font-family:var(--tbs-serif);
  font-size:1rem;
  font-weight:700;
  line-height:1.18;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__facts--fixed {
  margin-bottom:.7rem;
  border-color:rgba(74,53,36,.1);
  background:rgba(74,53,36,.1);
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__facts--fixed div {
  padding:.55rem .62rem;
  background:#fffaf3;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__facts--fixed span {
  color:#8b7a67;
  font-size:.54rem;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__facts--fixed strong {
  color:#3f3329;
  font-size:.82rem;
  line-height:1.2;
}
/* Verification is still available on the detail page; avoid repeating it on every Finder card. */
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-badge.is-source {
  display:none;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__badges {
  margin-top:.2rem;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__action--static {
  margin-top:auto;
  color:#8a7965;
  font-size:.62rem;
  letter-spacing:.045em;
}
.tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__action--static a:first-child {
  color:#754925;
  font-size:.69rem;
}

@media (max-width:640px) {
  .tbs-bottle-card--catalog:not(.tbs-family-card) .tbs-bottle-card__expression {
    min-height:0;
  }
}


/* =========================================================
   v0.7.2 — Distinct Series & Lineups finder view
   ========================================================= */
.tbs-finder__views { display:inline-flex; gap:0; margin:0 0 1rem; border:1px solid rgba(80,57,39,.22); background:#fffaf3; }
.tbs-finder__views a { min-width:150px; padding:.72rem 1rem; color:#6b5a49; font-size:.7rem; font-weight:800; letter-spacing:.07em; text-align:center; text-decoration:none; text-transform:uppercase; border-right:1px solid rgba(80,57,39,.16); }
.tbs-finder__views a:last-child { border-right:0; }
.tbs-finder__views a:hover,.tbs-finder__views a:focus-visible { color:#3a2a1e; background:#f0e4d4; }
.tbs-finder__views a.is-active { color:#f3ebdd; background:#2d2017; }
.tbs-finder__views a:focus-visible { outline:2px solid var(--tbs-copper); outline-offset:2px; }
@media (max-width:560px) {
  .tbs-finder__views { display:grid; grid-template-columns:1fr 1fr; width:100%; }
  .tbs-finder__views a { min-width:0; }
}

/* =========================================================
   v0.8.0 — Producer Profile Pilot Framework
   Opt-in story template. Existing bottle/finder pages unchanged.
   ========================================================= */
.tbs-producer-profile { background: var(--tbs-paper); color: var(--tbs-ink); }
.tbs-producer-hero { position:relative; overflow:hidden; background:radial-gradient(circle at 80% 26%,rgba(185,121,69,.14),transparent 30%),linear-gradient(135deg,#0f0e0c,#19150f); color:var(--tbs-cream); border-bottom:0; }
.tbs-producer-hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:12px; background:linear-gradient(180deg,rgba(210,154,105,.22),transparent 2px),linear-gradient(180deg,#4b2d1c 0%,#2b1a12 46%,#130d09 100%); box-shadow:0 10px 28px rgba(0,0,0,.4); }
.tbs-producer-hero__grid { min-height:660px; display:grid; grid-template-columns:.92fr 1.08fr; gap:5vw; align-items:center; padding-top:4.5rem; padding-bottom:5.5rem; }
.tbs-producer-hero h1 { max-width:700px; margin:.6rem 0 1.2rem; font-family:var(--tbs-serif); font-size:clamp(3.8rem,7vw,7rem); line-height:.95; letter-spacing:-.055em; }
.tbs-producer-hero__deck { max-width:620px; margin:0; color:#d3c6b4; font-size:clamp(1.05rem,1.7vw,1.28rem); }
.tbs-producer-hero__actions { display:flex; flex-wrap:wrap; gap:.85rem; margin-top:2rem; }
.tbs-producer-hero__visual { min-width:0; }
.tbs-producer-hero__photo { position:relative; height:500px; margin:0; overflow:hidden; border:1px solid rgba(243,235,221,.12); background:#11100e; box-shadow:0 28px 70px rgba(0,0,0,.35); }
.tbs-producer-hero__photo::before { content:""; position:absolute; inset:14px; z-index:2; border:1px solid rgba(243,235,221,.08); pointer-events:none; }
.tbs-producer-hero__photo img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.8) contrast(1.05) brightness(.88); }
.tbs-producer-hero__wash { position:absolute; inset:0; background:linear-gradient(180deg,transparent 52%,rgba(9,8,7,.72)); pointer-events:none; }
.tbs-producer-hero__photo figcaption { position:absolute; z-index:3; left:1.5rem; right:1.5rem; bottom:1.2rem; margin:0; color:#d7c9b5; font-family:var(--tbs-serif); font-size:.76rem; font-style:italic; }
.tbs-producer-hero__placeholder { height:500px; display:grid; place-items:center; align-content:center; gap:.4rem; border:1px solid rgba(243,235,221,.12); background:radial-gradient(circle,rgba(185,121,69,.16),transparent 32%),#14120f; color:#806f5a; }
.tbs-producer-hero__placeholder span { font-family:var(--tbs-serif); font-size:3rem; letter-spacing:.18em; }
.tbs-producer-hero__placeholder small { font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; }
.tbs-producer-body { background:var(--tbs-paper); color:var(--tbs-ink); padding:5.5rem 0 2rem; }
.tbs-producer-content { width:min(calc(100% - 40px),980px); font-family:var(--tbs-sans); font-size:1.02rem; line-height:1.75; }
.tbs-producer-content h2,.tbs-producer-content h3,.tbs-producer-content h4 { color:var(--tbs-ink); font-family:var(--tbs-serif); }
.tbs-producer-content h2 { margin-top:2.7em; font-size:clamp(2rem,4vw,3.4rem); letter-spacing:-.035em; }
.tbs-producer-content h3 { font-size:1.55rem; }
.tbs-producer-content p,.tbs-producer-content li { color:#4f473d; }
.tbs-producer-content a { color:#8b522e; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.tbs-producer-content img { border:1px solid rgba(17,16,14,.08); }
/* v0.8.1 — Keep regular producer-profile story images proportional and restrained.
   Tall product/group photography should punctuate the story rather than dominate it. */
.tbs-producer-content .kg-image-card:not(.kg-width-wide):not(.kg-width-full) {
  display:flex;
  flex-direction:column;
  align-items:center;
}
.tbs-producer-content .kg-image-card:not(.kg-width-wide):not(.kg-width-full) img {
  width:auto;
  max-width:100%;
  max-height:620px;
  height:auto;
  object-fit:contain;
}

.tbs-producer-content figcaption { color:#756a5b; font-size:.75rem; }
.tbs-producer-facts { display:grid; grid-template-columns:repeat(4,1fr); margin:1.5rem 0 3rem; border-top:1px solid rgba(17,16,14,.18); border-left:1px solid rgba(17,16,14,.18); }
.tbs-producer-fact { min-height:130px; padding:1.25rem; border-right:1px solid rgba(17,16,14,.18); border-bottom:1px solid rgba(17,16,14,.18); background:#f6efe4; }
.tbs-producer-fact span { display:block; margin-bottom:1.15rem; color:#8d552d; font-size:.68rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.tbs-producer-fact strong { display:block; font-family:var(--tbs-serif); font-size:1.12rem; line-height:1.35; }
.tbs-producer-callout { margin:3.5rem 0; padding:2rem 2.2rem; border-left:3px solid var(--tbs-copper); background:#18140f; color:var(--tbs-cream); }
.tbs-producer-callout p { margin:0; color:#ded2c0; font-family:var(--tbs-serif); font-size:1.2rem; line-height:1.65; }
.tbs-producer-bottle-grid { display:flex; flex-wrap:wrap; justify-content:center; gap:1rem; margin:1.6rem 0 3.5rem; }
.tbs-producer-bottle-grid > .tbs-producer-bottle { flex:0 1 calc(25% - .75rem); }
.tbs-producer-bottle { display:flex; flex-direction:column; min-height:410px; border:1px solid rgba(17,16,14,.18); background:#f6efe4; overflow:hidden; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
.tbs-producer-bottle:hover { transform:translateY(-2px); border-color:rgba(139,82,46,.38); box-shadow:0 14px 34px rgba(47,34,22,.09); }
.tbs-producer-bottle__media { position:relative; display:grid; place-items:center; height:360px; padding:1.2rem; background:#17130f; overflow:hidden; text-decoration:none; }
.tbs-producer-bottle__media img { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; object-position:center; border:0; filter:none; }
.tbs-producer-bottle:not(.is-placeholder) .tbs-producer-bottle__media { background:#fff; }
.tbs-producer-bottle.is-placeholder .tbs-producer-bottle__media img { width:76px; height:76px; opacity:.68; filter:none; }
.tbs-producer-bottle__placeholder-label { position:absolute; left:1rem; right:1rem; bottom:.9rem; color:#9f8b73; font-size:.61rem; font-weight:700; letter-spacing:.11em; text-align:center; text-transform:uppercase; }
.tbs-producer-bottle__body { display:flex; flex:1; flex-direction:column; padding:1.2rem; }
.tbs-producer-bottle__body small { color:#8d552d; font-size:.66rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.tbs-producer-bottle__body h3 { margin:.4rem 0 .55rem; font-size:1.25rem; line-height:1.25; }
.tbs-producer-bottle__body p { margin:0 0 1rem; color:#665c4e; font-size:.86rem; }
.tbs-producer-bottle__body a { margin-top:auto; color:#8b522e; font-size:.75rem; font-weight:700; letter-spacing:.07em; text-decoration:none; text-transform:uppercase; }
.tbs-producer-bottle__body a:hover { text-decoration:underline; text-underline-offset:3px; }
.tbs-producer-disclosure { margin:4rem 0 1rem; padding:1.5rem; border:1px solid rgba(17,16,14,.18); background:#e7ddce; }
.tbs-producer-disclosure strong { display:block; margin-bottom:.5rem; color:#8d552d; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; }
.tbs-producer-disclosure p { margin:0; font-size:.9rem; }
.tbs-producer-sources { margin:1rem 0 4rem; border-top:1px solid rgba(17,16,14,.18); border-bottom:1px solid rgba(17,16,14,.18); }
.tbs-producer-sources summary { cursor:pointer; padding:1rem 0; color:#6b5f50; font-size:.74rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.tbs-producer-sources ul { margin:0 0 1.3rem; padding-left:1.2rem; }
.tbs-producer-sources li { margin:.45rem 0; font-size:.85rem; }
.tbs-producer-profile > .tbs-shell--article .tbs-newsletter { color:var(--tbs-cream); }
@media (max-width:980px) {
  .tbs-producer-hero__grid { min-height:auto; grid-template-columns:1fr; padding-top:4rem; }
  .tbs-producer-hero__photo,.tbs-producer-hero__placeholder { height:430px; }
  .tbs-producer-facts { grid-template-columns:repeat(2,1fr); }
  .tbs-producer-bottle-grid > .tbs-producer-bottle { flex-basis:calc(50% - .5rem); }
}
@media (max-width:700px) {
  .tbs-producer-hero__grid { padding-top:3rem; padding-bottom:4rem; }
  .tbs-producer-hero h1 { font-size:clamp(3.2rem,16vw,5rem); }
  .tbs-producer-hero__actions { align-items:flex-start; flex-direction:column; }
  .tbs-producer-hero__photo,.tbs-producer-hero__placeholder { height:340px; }
  .tbs-producer-body { padding-top:3.5rem; }
  .tbs-producer-content { width:min(calc(100% - 28px),980px); }
  .tbs-producer-content .kg-image-card:not(.kg-width-wide):not(.kg-width-full) img { max-height:480px; }
  .tbs-producer-facts { grid-template-columns:1fr; }
  .tbs-producer-bottle-grid > .tbs-producer-bottle { flex-basis:100%; }
  .tbs-producer-bottle { min-height:0; }
  .tbs-producer-bottle__media { height:380px; }
  .tbs-producer-bottle:not(.is-placeholder) .tbs-producer-bottle__media {
    height:auto;
    min-height:0;
    padding:0;
  }
  .tbs-producer-bottle:not(.is-placeholder) .tbs-producer-bottle__media img {
    width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
    object-position:center;
  }
}

/* ============================================================
   v0.9.2 — Intentional Utah producer discovery
   ============================================================ */
.tbs-utah-producers { margin:2.25rem 0 0; padding-top:2rem; border-top:1px solid rgba(185,121,69,.3); }
.tbs-utah-producers__heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:1rem; }
.tbs-utah-producers__heading h3 { max-width:650px; margin:.3rem 0 0; font-family:var(--tbs-serif); font-size:clamp(1.55rem,2.7vw,2.25rem); line-height:1.15; }
.tbs-utah-producers__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.tbs-utah-producer-card { display:flex; min-height:210px; flex-direction:column; padding:1.45rem; border:1px solid rgba(185,121,69,.38); background:rgba(20,16,13,.78); color:var(--tbs-cream); text-decoration:none; transition:transform .18s ease,border-color .18s ease,background .18s ease; }
.tbs-utah-producer-card:hover { transform:translateY(-2px); border-color:var(--tbs-copper); background:#18130f; }
.tbs-utah-producer-card span { color:#d9a579; font-size:.66rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.tbs-utah-producer-card strong { display:block; margin:.55rem 0 .7rem; font-family:var(--tbs-serif); font-size:1.45rem; line-height:1.2; }
.tbs-utah-producer-card small { max-width:470px; color:#d4c8b8; font-size:.88rem; line-height:1.55; }
.tbs-utah-producer-card b { margin-top:auto; padding-top:1.4rem; color:#e0a06d; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; }
.tbs-latest .tbs-utah-producers { margin:0 0 3rem; padding:2rem; border:1px solid rgba(185,121,69,.28); background:#17130f; color:var(--tbs-cream); }
@media (max-width:700px) {
  .tbs-utah-producers__heading { display:block; }
  .tbs-utah-producers__grid { grid-template-columns:1fr; }
  .tbs-utah-producer-card { min-height:190px; }
  .tbs-latest .tbs-utah-producers { padding:1.25rem; }
}

/* ============================================================
   v0.9.5 — Dedicated Utah landing page
   ============================================================ */
.tbs-utah-hub__hero-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:3rem; align-items:center; padding-top:3.5rem; padding-bottom:3.5rem; }
.tbs-utah-hub__hero-grid .tbs-archive-header__inner { padding:0; }
.tbs-utah-hub__hero-image { margin:0; overflow:hidden; border:1px solid rgba(243,235,221,.15); background:#15120f; box-shadow:0 24px 60px rgba(0,0,0,.28); }
.tbs-utah-hub__hero-image img { display:block; width:100%; height:auto; aspect-ratio:3 / 2; object-fit:contain; object-position:center; }
.tbs-utah-hub__hero-image figcaption { padding:.65rem .8rem; color:#bcae9b; font-size:.7rem; line-height:1.4; }
.tbs-utah-hub { padding:4.5rem 0 6rem; background:var(--tbs-paper); color:var(--tbs-ink); }
.tbs-utah-hub__intro { max-width:860px; }
.tbs-utah-hub__intro h2 { max-width:780px; margin:.55rem 0 1rem; font-family:var(--tbs-serif); font-size:clamp(2.2rem,4.5vw,4rem); line-height:1.05; letter-spacing:-.04em; }
.tbs-utah-hub__intro p { max-width:760px; color:#5f5549; font-size:1.02rem; line-height:1.7; }
.tbs-utah-hub__actions { display:flex; align-items:center; flex-wrap:wrap; gap:1.2rem; margin-top:1.7rem; }
.tbs-utah-hub__actions .tbs-text-link { color:#754925; }
.tbs-utah-hub__content { max-width:860px; margin-top:3rem; }
.tbs-utah-hub__producers { scroll-margin-top:6rem; margin-top:4rem; }
.tbs-utah-hub__producers .tbs-utah-producers { padding:2rem; border:1px solid rgba(185,121,69,.28); background:#17130f; color:var(--tbs-cream); }
@media (max-width:700px) {
  .tbs-utah-hub__hero-grid { grid-template-columns:1fr; gap:2rem; padding-top:2.5rem; padding-bottom:2.5rem; }
  .tbs-utah-hub { padding:3rem 0 4rem; }
  .tbs-utah-hub__actions { align-items:flex-start; flex-direction:column; }
  .tbs-utah-hub__producers { margin-top:3rem; }
  .tbs-utah-hub__producers .tbs-utah-producers { padding:1.25rem; }
}
