/** Shopify CDN: Minification failed

Line 104:13 Expected identifier but found whitespace
Line 104:14 Unexpected "linear-gradient("

**/
/* ==========================================================================
   The Box House — design system ported from tbh.html into Dawn.
   EVERYTHING is scoped under .tbh so Dawn's header, footer, cart drawer,
   product page and checkout are never touched. Do not remove the .tbh
   prefixes: bare `section {}` / `*{}` rules here would break the theme.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@300;400;500&display=swap');

.tbh {
  --paper: #FBFAF8;
  --bone: #F2EFEA;
  --ink: #131211;
  --stone: #8B867D;
  --taupe: #CBC4B8;
  --dim: rgba(19, 18, 17, .2);
  --font: 'Hanken Grotesk', -apple-system, 'Helvetica Neue', Arial, sans-serif;
  --s1: 8px; --s2: 16px; --s3: 24px; --s4: 40px;
  --s5: 64px; --s6: 96px; --s7: 160px;
  --gutter: 64px;
  --ease: cubic-bezier(.25, .1, .25, 1);

  font-family: var(--font);
  background: var(--paper);
  color: var(--ink);
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  letter-spacing: .005em;
}

@media (max-width: 900px) { .tbh { --s7: 96px; --s6: 64px; --gutter: 24px } }
@media (max-width: 600px) { .tbh { --s7: 64px; --s6: 48px } }

.tbh *, .tbh *::before, .tbh *::after { box-sizing: border-box }
.tbh h1, .tbh h2, .tbh h3, .tbh h4, .tbh p, .tbh ul, .tbh figure { margin: 0; padding: 0 }
.tbh ul { list-style: none }
.tbh img { display: block; max-width: 100% }
.tbh a { color: inherit; text-decoration: none }
.tbh button { font-family: inherit; background: none; border: none; color: inherit; cursor: pointer; font-size: inherit }
.tbh ::selection { background: var(--ink); color: var(--paper) }
.tbh :focus-visible { outline: 1px solid var(--ink); outline-offset: 3px }

/* ---------- type utilities ---------- */
.tbh-eyebrow { font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase }
.tbh-small { font-size: 13px; letter-spacing: .06em }
.tbh-muted { color: var(--stone) }

.tbh-link-u { position: relative; display: inline-block; padding-bottom: 3px; font-size: 14px; letter-spacing: .04em }
.tbh-link-u::after {
  content: ""; position: absolute; left: 0; bottom: 0; height: 1px; width: 100%;
  background: currentColor; transform-origin: right; transition: transform .4s var(--ease);
}
.tbh-link-u:hover::after { animation: tbhUline .55s var(--ease) forwards }
@keyframes tbhUline {
  0% { transform: scaleX(1); transform-origin: right }
  50% { transform: scaleX(0); transform-origin: right }
  51% { transform-origin: left }
  100% { transform: scaleX(1); transform-origin: left }
}

.tbh-btn {
  display: inline-block; background: var(--ink); color: var(--paper);
  font-size: 14px; letter-spacing: .08em; text-transform: uppercase;
  padding: 16px 40px; border: 1px solid var(--ink);
  transition: background .3s var(--ease), color .3s var(--ease);
}
.tbh-btn:hover { background: transparent; color: var(--ink) }

/* ---------- layout ---------- */
.tbh-sec { padding: var(--s7) var(--gutter) }
.tbh-sec--flush-top { padding-top: 0 }
.tbh-sec--tight-bottom { padding-bottom: var(--s6) }
.tbh-band { background: var(--bone) }
.tbh-wrap { max-width: 1440px; margin: 0 auto }
.tbh-sec-head { margin-bottom: var(--s5); display: flex; justify-content: space-between; align-items: baseline; gap: var(--s2); flex-wrap: wrap }

/* ---------- reveals ---------- */
.tbh-reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s var(--ease), transform .8s var(--ease) }
.tbh-reveal.tbh-in { opacity: 1; transform: none }
.tbh-stagger > * { opacity: 0; transform: translateY(24px); transition: opacity .8s var(--ease), transform .8s var(--ease) }
.tbh-stagger.tbh-in > * { opacity: 1; transform: none }
.tbh-stagger.tbh-in > *:nth-child(2) { transition-delay: .08s }
.tbh-stagger.tbh-in > *:nth-child(3) { transition-delay: .16s }
.tbh-stagger.tbh-in > *:nth-child(4) { transition-delay: .24s }

@keyframes tbhFadeIn { from { opacity: 0 } to { opacity: 1 } }
@keyframes tbhFadeUp { from { opacity: 0; transform: translateY(16px) } to { opacity: 1; transform: none } }

/* ---------- hero ---------- */
.tbh-hero {
  min-height: 100svh; background: var(--bone);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; padding: 140px var(--gutter) 110px;
  position: relative; overflow: hidden; isolation: isolate;
}

  --hero-img: linear-gradient(180deg, #f6f3ee 0%, #efeae2 55%, #e7e1d7 100%);
  position: absolute; inset: 0; z-index: -1;
  background-image:
  linear-gradient(
    rgba(248, 247, 244, 0.78),
    rgba(248, 247, 244, 0.78)
  ),
  var(--hero-img);
  background-size: cover; background-position: center; background-repeat: no-repeat;
  opacity: 0; animation: tbhFadeIn 1.6s var(--ease) .1s forwards;
}
.tbh-hero.tbh-on-photo .tbh-hero-bg::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(19,18,17,.45), rgba(19,18,17,.18) 45%, rgba(19,18,17,.62));
}
.tbh-hero.tbh-on-photo,
.tbh-hero.tbh-on-photo .tbh-hero-tag,
.tbh-hero.tbh-on-photo .tbh-hero-sub,
.tbh-hero.tbh-on-photo .tbh-scroll-cue { color: var(--bone) }
.tbh-hero.tbh-on-photo .tbh-scroll-cue::after { background: var(--bone) }

.tbh-hero-name {
  font-size: clamp(40px, 8.5vw, 104px); font-weight: 300; letter-spacing: .06em;
  text-transform: uppercase; line-height: 1.02;
  opacity: 0; animation: tbhFadeUp 1s var(--ease) .35s forwards;
}
.tbh-hero-tag {
  margin-top: var(--s3); font-size: clamp(12px, 1.6vw, 15px); letter-spacing: .34em;
  text-transform: uppercase; color: var(--stone);
  opacity: 0; animation: tbhFadeUp 1s var(--ease) .55s forwards;
}
.tbh-hero-sub {
  margin-top: var(--s2); font-size: 14px; color: var(--stone); letter-spacing: .04em;
  opacity: 0; animation: tbhFadeUp 1s var(--ease) .72s forwards;
}
.tbh-scroll-cue {
  position: absolute; bottom: 34px; left: 50%; transform: translateX(-50%);
  font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--stone);
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  opacity: 0; animation: tbhFadeUp 1s var(--ease) .95s forwards;
}
.tbh-scroll-cue::after { content: ""; width: 1px; height: 34px; background: var(--stone); animation: tbhDrop 1.8s var(--ease) infinite }
@keyframes tbhDrop {
  0% { transform: scaleY(0); transform-origin: top }
  45% { transform: scaleY(1); transform-origin: top }
  55% { transform: scaleY(1); transform-origin: bottom }
  100% { transform: scaleY(0); transform-origin: bottom }
}

/* ---------- ticker ---------- */
.tbh-ticker { border-top: 1px solid var(--taupe); border-bottom: 1px solid var(--taupe); overflow: hidden; background: var(--paper) }
.tbh-ticker-track { display: flex; width: max-content; animation: tbhTick 26s linear infinite }
.tbh-ticker-track span { padding: 13px 34px; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; white-space: nowrap; color: var(--ink) }
.tbh-ticker-track span i { font-style: normal; color: var(--taupe); padding-left: 34px }
@keyframes tbhTick { to { transform: translateX(-50%) } }

/* ---------- product grid ---------- */
.tbh-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s6) 64px }
@media (max-width: 900px) { .tbh-grid2 { gap: var(--s4) 16px } }

.tbh-card { display: block; border: 1px solid transparent; transition: border-color .3s var(--ease) }
.tbh-card:hover { border-color: var(--taupe) }
.tbh-imgbox { position: relative; overflow: hidden; aspect-ratio: 4/5; background: #F7F6F4 }
.tbh-imgbox img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease), opacity .6s var(--ease) }
.tbh-imgbox .tbh-alt { opacity: 0 }
.tbh-card:hover .tbh-imgbox img.tbh-main { transform: scale(1.03) }
.tbh-card:hover .tbh-imgbox .tbh-alt { opacity: 1 }
.tbh-card-info { padding: var(--s2) }
.tbh-card-row { display: flex; justify-content: space-between; font-size: 14px; letter-spacing: .02em; gap: var(--s2) }
.tbh-card-meta { font-size: 12px; color: var(--stone); margin-top: 4px; letter-spacing: .04em }
.tbh-card-add { margin-top: var(--s2); min-height: 20px }
.tbh-card-add a, .tbh-card-add button {
  font-size: 13px; letter-spacing: .06em; border-bottom: 1px solid var(--ink); padding-bottom: 2px;
  opacity: 0; transform: translateY(6px); display: inline-block;
  transition: opacity .4s var(--ease), transform .4s var(--ease);
}
.tbh-card:hover .tbh-card-add a, .tbh-card:hover .tbh-card-add button { opacity: 1; transform: none }
@media (hover: none) { .tbh-card-add a, .tbh-card-add button { opacity: 1; transform: none } }
.tbh-sold { color: var(--stone); border-bottom-color: var(--stone); cursor: default }

/* ---------- editorial ---------- */
.tbh-editorial { display: grid; grid-template-columns: 3fr 2fr; gap: var(--s6); align-items: center }
.tbh-ed-img { overflow: hidden }
.tbh-ed-img img { width: 100%; transition: transform .8s var(--ease) }
.tbh-ed-img:hover img { transform: scale(1.03) }
.tbh-ed-text .tbh-eyebrow { margin-bottom: var(--s3); color: var(--stone) }
.tbh-ed-text h2 { font-size: clamp(28px, 3.4vw, 48px); font-weight: 300; line-height: 1.15; letter-spacing: -.01em; margin-bottom: var(--s4); max-width: 13em }
.tbh-ed-body { max-width: 26em; margin-bottom: 24px; font-size: 15px; line-height: 1.7 }
@media (max-width: 900px) { .tbh-editorial { grid-template-columns: 1fr; gap: var(--s4) } }

/* ---------- philosophy ---------- */
.tbh-philosophy { background: var(--bone); text-align: center }
.tbh-philosophy .tbh-eyebrow { margin-bottom: var(--s4); color: var(--stone) }
.tbh-philosophy p { max-width: 600px; margin: 0 auto; font-size: clamp(17px, 1.5vw, 20px); font-weight: 300; line-height: 1.7 }
.tbh-philosophy p + p { margin-top: var(--s3) }
.tbh-promise { margin-top: var(--s5); font-size: 14px; letter-spacing: .22em; text-transform: uppercase }

/* ---------- trust ---------- */
.tbh-trust { padding-top: var(--s6); padding-bottom: var(--s6) }
.tbh-trust-line { border-top: 1px solid var(--taupe); border-bottom: 1px solid var(--taupe); padding: var(--s3) 0; text-align: center; font-size: 13px; letter-spacing: .06em; color: var(--stone) }
.tbh-trust-line span { padding: 0 var(--s2); display: inline-block }

/* ---------- bulk strip ---------- */
.tbh-strip {
  display: flex; justify-content: space-between; align-items: flex-end; gap: var(--s3);
  border: 1px solid var(--ink); padding: var(--s4); flex-wrap: wrap;
  transition: background .45s var(--ease), color .45s var(--ease);
}
.tbh-strip h3 { font-size: clamp(20px, 2.6vw, 32px); font-weight: 300; line-height: 1.2; margin-top: 12px; max-width: 15em; letter-spacing: -.01em }
.tbh-strip .tbh-cue { font-size: 13px; letter-spacing: .06em; white-space: nowrap }
.tbh-strip:hover { background: var(--ink); color: var(--paper) }
.tbh-strip:hover .tbh-muted { color: var(--taupe) }

/* ---------- archive ---------- */
.tbh-archive-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: var(--s4) }
.tbh-archive-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; background: var(--taupe); border: 1px solid var(--taupe) }
.tbh-archive-grid a, .tbh-archive-grid .tbh-cell { display: block; overflow: hidden; aspect-ratio: 1/1 }
.tbh-archive-grid img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); transition: filter .5s var(--ease), transform .6s var(--ease) }
.tbh-archive-grid a:hover img { filter: grayscale(0); transform: scale(1.04) }
@media (max-width: 700px) {
  .tbh-archive-grid { grid-template-columns: repeat(2, 1fr) }
  .tbh-archive-grid > *:nth-child(5) { display: none }
}

/* ==========================================================================
   BULK & CUSTOM PAGE
   ========================================================================== */
.tbh-bulk-hero {
  position: relative; isolation: isolate; overflow: hidden; min-height: 80svh;
  display: flex; flex-direction: column; justify-content: flex-end;
  padding: 170px var(--gutter) var(--s5); color: var(--bone); background: var(--ink);
}
.tbh-bulk-hero .tbh-hero-bg {
  --hero-img: linear-gradient(160deg, #3a3733 0%, #1d1b19 60%, #131211 100%);
  filter: grayscale(.7) contrast(1.04) brightness(.92);
}
.tbh-bulk-hero .tbh-hero-bg::after {
  content: ""; position: absolute; inset: 0;
  background:
    linear-gradient(90deg, rgba(19,18,17,.9) 0%, rgba(19,18,17,.66) 44%, rgba(19,18,17,.3) 100%),
    linear-gradient(180deg, rgba(19,18,17,.5), rgba(19,18,17,.4) 40%, rgba(19,18,17,.92));
}
.tbh-bulk-hero-inner { max-width: 1440px; margin: 0 auto; width: 100% }
.tbh-bulk-hero .tbh-eyebrow { color: var(--taupe); opacity: 0; animation: tbhFadeUp 1s var(--ease) .2s forwards }
.tbh-bulk-hero h1 {
  margin-top: var(--s3); font-size: clamp(38px, 7vw, 88px); font-weight: 300;
  line-height: 1.04; letter-spacing: -.015em; color: var(--bone);
  opacity: 0; animation: tbhFadeUp 1s var(--ease) .38s forwards;
}
.tbh-bulk-hero .tbh-lede {
  margin-top: var(--s3); max-width: 34em; font-size: clamp(15px, 1.5vw, 17px); line-height: 1.7;
  color: var(--bone); opacity: 0; animation: tbhFadeUp 1s var(--ease) .56s forwards;
}
.tbh-bulk-stats {
  display: flex; gap: var(--s5); flex-wrap: wrap; margin-top: var(--s5); padding-top: var(--s3);
  border-top: 1px solid rgba(242,239,234,.26); opacity: 0; animation: tbhFadeUp 1s var(--ease) .74s forwards;
}
.tbh-bulk-stats strong { display: block; font-size: clamp(22px, 3vw, 34px); font-weight: 300; letter-spacing: -.01em }
.tbh-bulk-stats span { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--taupe) }
@media (max-width: 600px) { .tbh-bulk-stats { gap: var(--s3) var(--s4) } }

/* ---------- quote builder ---------- */
.tbh-quote { display: grid; grid-template-columns: 1.1fr .9fr; gap: var(--s6) }
@media (max-width: 900px) { .tbh-quote { grid-template-columns: 1fr; gap: var(--s4) } }

.tbh-field { margin-bottom: var(--s4) }
.tbh-field--last { margin-bottom: 0 }
.tbh-field > label { display: block; font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--stone); margin-bottom: 14px }
.tbh-field > label em { font-style: normal; letter-spacing: .02em; text-transform: none; color: var(--taupe) }

.tbh-chips { display: flex; flex-wrap: wrap; gap: 8px }
.tbh-chip {
  border: 1px solid var(--taupe); padding: 13px 18px; text-align: left; font-size: 14px; letter-spacing: .02em;
  transition: border-color .3s var(--ease), background .3s var(--ease), color .3s var(--ease);
}
.tbh-chip:hover { border-color: var(--ink) }
.tbh-chip small { display: block; font-size: 11px; letter-spacing: .06em; color: var(--stone); margin-top: 4px }
.tbh-chip[aria-pressed="true"] { background: var(--ink); color: var(--paper); border-color: var(--ink) }
.tbh-chip[aria-pressed="true"] small { color: var(--taupe) }

.tbh-qty-row { display: flex; align-items: center; gap: var(--s3) }
.tbh-qty-row input[type=range] { flex: 1; accent-color: var(--ink); height: 2px; background: var(--taupe); cursor: pointer }
.tbh-qty-num {
  width: 104px; border: 1px solid var(--taupe); background: none; font-family: inherit; font-size: 16px;
  padding: 12px; text-align: center; color: var(--ink); outline: none; transition: border-color .3s var(--ease);
}
.tbh-qty-num:focus { border-color: var(--ink) }

.tbh-ladder { display: flex; margin-top: var(--s3); border: 1px solid var(--taupe) }
.tbh-ladder div { flex: 1; padding: 11px 4px; text-align: center; border-right: 1px solid var(--taupe); transition: background .35s var(--ease), color .35s var(--ease) }
.tbh-ladder div:last-child { border-right: none }
.tbh-ladder b { display: block; font-size: 12px; font-weight: 500; letter-spacing: .04em; margin-bottom: 3px }
.tbh-ladder i { font-style: normal; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--stone) }
.tbh-ladder div.tbh-on { background: var(--ink); color: var(--paper) }
.tbh-ladder div.tbh-on i { color: var(--taupe) }
@media (max-width: 560px) { .tbh-ladder b { font-size: 11px } .tbh-ladder i { display: none } }

.tbh-quote-card { border: 1px solid var(--ink); padding: var(--s4); background: var(--paper); position: sticky; top: 104px }
@media (max-width: 900px) { .tbh-quote-card { position: static } }
.tbh-q-rate { font-size: clamp(42px, 6vw, 66px); font-weight: 300; line-height: 1; letter-spacing: -.02em; margin: 14px 0 6px }
.tbh-q-rate i { font-style: normal; font-size: 14px; letter-spacing: .06em; color: var(--stone); margin-left: 8px }
.tbh-q-lines { margin: var(--s4) 0 var(--s3) }
.tbh-q-line { display: flex; justify-content: space-between; gap: var(--s2); font-size: 14px; padding: 11px 0; border-bottom: 1px solid var(--bone) }
.tbh-q-line span:last-child { white-space: nowrap; color: var(--stone) }
.tbh-q-line[hidden] { display: none }
.tbh-q-total { display: flex; justify-content: space-between; gap: var(--s2); align-items: baseline; padding: var(--s2) 0 var(--s3); border-top: 1px solid var(--ink); font-size: 15px }
.tbh-q-total b { font-size: clamp(20px, 2.4vw, 26px); font-weight: 400; letter-spacing: -.01em }
.tbh-quote-card .tbh-btn { width: 100%; text-align: center; margin-top: var(--s2) }
.tbh-q-note { font-size: 12px; color: var(--stone); margin-bottom: var(--s3) }
.tbh-q-alt { display: block; margin: var(--s3) auto 0; color: var(--stone) }

/* ---------- rate card ---------- */
.tbh-rate-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch }
.tbh-rate-table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 620px }
.tbh-rate-table th, .tbh-rate-table td { padding: 18px 14px; text-align: right; border-bottom: 1px solid var(--taupe); white-space: nowrap }
.tbh-rate-table th:first-child, .tbh-rate-table td:first-child { text-align: left; white-space: normal; min-width: 210px }
.tbh-rate-table thead th { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--stone); font-weight: 500; border-bottom: 1px solid var(--ink) }
.tbh-rate-table tbody tr { transition: background .3s var(--ease) }
.tbh-rate-table tbody tr:hover { background: var(--bone) }
.tbh-rate-table td.tbh-best { color: var(--ink) }
.tbh-rate-table td.tbh-dim { color: var(--stone) }
.tbh-rate-table .tbh-gsm { display: block; font-size: 12px; color: var(--stone); margin-top: 3px }
.tbh-rate-notes { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--s4); margin-top: var(--s5) }
.tbh-rate-notes h4 { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--stone); font-weight: 500; margin-bottom: 14px; padding-top: 14px; border-top: 1px solid var(--taupe) }
.tbh-rate-notes p { font-size: 14px; line-height: 1.72; color: var(--ink); max-width: 26em }
@media (max-width: 900px) { .tbh-rate-notes { grid-template-columns: 1fr; gap: var(--s3) } }

/* ---------- steps ---------- */
.tbh-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--taupe); border: 1px solid var(--taupe) }
.tbh-steps > div { background: var(--paper); padding: var(--s4) }
.tbh-steps .tbh-n { font-size: 11px; letter-spacing: .2em; color: var(--stone) }
.tbh-steps h3 { font-size: 19px; font-weight: 400; letter-spacing: -.005em; margin: var(--s3) 0 12px }
.tbh-steps p { font-size: 14px; line-height: 1.7; color: var(--stone) }
@media (max-width: 900px) { .tbh-steps { grid-template-columns: 1fr 1fr } }
@media (max-width: 560px) { .tbh-steps { grid-template-columns: 1fr } }

/* ---------- who ---------- */
.tbh-who-row { display: grid; grid-template-columns: 1fr 2fr; gap: var(--s4); padding: var(--s4) 0; border-bottom: 1px solid var(--taupe); align-items: baseline }
.tbh-who-row h3 { font-size: clamp(20px, 2.4vw, 28px); font-weight: 300; letter-spacing: -.01em }
.tbh-who-row p { font-size: 14px; line-height: 1.72; color: var(--stone); max-width: 44em }
@media (max-width: 700px) { .tbh-who-row { grid-template-columns: 1fr; gap: 12px } }

/* ---------- enquiry form ---------- */
.tbh-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s4) var(--s5) }
.tbh-form-grid .tbh-full { grid-column: 1/-1 }
@media (max-width: 700px) { .tbh-form-grid { grid-template-columns: 1fr; gap: var(--s3) } }
.tbh-inp {
  width: 100%; border: none; border-bottom: 1px solid var(--taupe); background: none; font-family: inherit;
  font-size: 15px; padding: 12px 0; color: var(--ink); outline: none; transition: border-color .3s var(--ease);
}
.tbh-inp::placeholder { color: var(--taupe) }
.tbh-inp:focus { border-color: var(--ink) }
textarea.tbh-inp { resize: vertical; min-height: 96px; line-height: 1.6 }
.tbh-form-note { font-size: 13px; color: var(--stone); margin-top: var(--s2); min-height: 18px }
.tbh-form-actions { display: flex; align-items: center; gap: var(--s4); flex-wrap: wrap; margin-top: var(--s2) }

/* ---------- faq ---------- */
.tbh-faq { max-width: 900px }
.tbh-faq details { border-top: 1px solid var(--taupe) }
.tbh-faq details:last-of-type { border-bottom: 1px solid var(--taupe) }
.tbh-faq summary {
  list-style: none; cursor: pointer; padding: var(--s3) 0; font-size: clamp(15px, 1.6vw, 18px);
  font-weight: 300; display: flex; justify-content: space-between; gap: var(--s3); align-items: center;
}
.tbh-faq summary::-webkit-details-marker { display: none }
.tbh-faq summary::after { content: "+"; color: var(--stone); font-size: 18px; line-height: 1; flex-shrink: 0 }
.tbh-faq details[open] summary::after { content: "\2013" }
.tbh-faq details p { font-size: 14px; line-height: 1.75; color: var(--stone); padding-bottom: var(--s3); max-width: 62em }

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  .tbh *, .tbh *::before, .tbh *::after { animation-duration: .01ms !important; transition-duration: .01ms !important }
  .tbh-reveal, .tbh-stagger > * { opacity: 1; transform: none }
  .tbh-hero-bg, .tbh-hero-name, .tbh-hero-tag, .tbh-hero-sub, .tbh-scroll-cue { opacity: 1; transform: none }
  .tbh-bulk-hero .tbh-eyebrow, .tbh-bulk-hero h1, .tbh-bulk-hero .tbh-lede, .tbh-bulk-stats { opacity: 1; animation: none }
  .tbh-ticker-track { animation: none }
}
