:root {
  --bon-black: #050505;
  --bon-muted: #73737a;
  --bon-line: #dedee2;
  --bon-soft: #f3f3f5;
  --bon-white: #fff;
  --bon-max: 1160px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--bon-white);
  color: var(--bon-black);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.wp-site-blocks { padding: 0; }
.wp-site-blocks > * { margin-block-start: 0; }

body.home { position: relative; overflow-x: hidden; }
body.home .wp-site-blocks { position: relative; z-index: 1; background: transparent; }

.bon-shell { width: min(calc(100% - 48px), var(--bon-max)); margin: 0 auto; }

.bon-header {
  position: relative;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: min(calc(100% - 48px), var(--bon-max));
  margin: 0 auto;
  padding: 14px 0 18px;
}

.bon-brand {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--bon-black);
  font-size: clamp(1.28rem, 2vw, 1.62rem);
  font-weight: 900;
  letter-spacing: -0.055em;
  line-height: 1;
  text-decoration: none;
}
.bon-brand-of { color: #a9a9af; }

.bon-header-actions, .bon-nav { display: flex; align-items: center; }
.bon-header-actions { gap: 24px; }
.bon-nav { gap: 26px; font-size: .9rem; }
.bon-header > p, .bon-header-actions > p { display: contents; }
.bon-header-actions br, .bon-nav br { display: none; }
.bon-nav a { color: var(--bon-black); text-decoration: none; }
.bon-nav a:hover { opacity: .55; }
.bon-nav a[aria-current="page"], .bon-footer-links a[aria-current="page"] { opacity: .52; }

.bon-nav-cta,
.bon-primary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--bon-black);
  border-radius: 9px;
  background: var(--bon-black);
  color: var(--bon-white) !important;
  font-weight: 750;
  transition: transform .18s ease, opacity .18s ease;
}

.bon-nav-cta { min-height: 48px; padding: 0 22px; }
.bon-primary-button:hover, .bon-nav-cta:hover { transform: translateY(-2px); opacity: .88; }
.bon-primary-button:focus-visible, .bon-mobile-cta:focus-visible, .bon-menu-toggle:focus-visible, .bon-nav a:focus-visible, .bon-amount:focus-visible, .bon-404-return:focus-visible { outline: 3px solid #5b7cfa; outline-offset: 3px; }
.bon-menu-toggle, .bon-mobile-cta.bon-icon-link { display: none; }

.bon-share-widget { position: fixed; right: 22px; bottom: 22px; z-index: 80; }
.bon-share-trigger { display: grid; width: 50px; height: 50px; place-items: center; padding: 0; border: 1px solid var(--bon-black); border-radius: 50%; background: var(--bon-black); color: var(--bon-white); cursor: pointer; box-shadow: 0 10px 30px rgba(0,0,0,.16); transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease; }
.bon-share-trigger:hover, .bon-share-widget.is-open .bon-share-trigger { background: #1b1b1b; color: var(--bon-white); box-shadow: 0 14px 34px rgba(0,0,0,.22); transform: translateY(-2px); }
.bon-share-trigger:focus-visible, .bon-share-option:focus-visible { outline: 3px solid #5b7cfa; outline-offset: 3px; }
.bon-share-icon { width: 22px; height: 22px; overflow: visible; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.bon-share-line { stroke-dasharray: 9; stroke-dashoffset: 0; transition: stroke-dashoffset .35s ease; }
.bon-share-node { fill: currentColor; transform-box: fill-box; transform-origin: center; transition: fill .2s ease, transform .35s cubic-bezier(.2,.9,.2,1.3); }
.bon-share-trigger:hover .bon-share-line, .bon-share-widget.is-open .bon-share-line { animation: bon-share-line .55s ease; }
.bon-share-trigger:hover .bon-share-node-two, .bon-share-widget.is-open .bon-share-node-two { transform: translate(1px,-1px) scale(1.08); }
.bon-share-trigger:hover .bon-share-node-three, .bon-share-widget.is-open .bon-share-node-three { transform: translate(1px,1px) scale(1.08); }
.bon-share-panel { position: absolute; right: 0; bottom: 62px; width: min(330px, calc(100vw - 32px)); padding: 16px; border: 1px solid var(--bon-black); border-radius: 12px; background: var(--bon-white); box-shadow: 0 18px 50px rgba(0,0,0,.14); transform-origin: right bottom; animation: bon-share-panel .22s cubic-bezier(.2,.8,.2,1); }
.bon-share-panel[hidden] { display: none; }
.bon-share-panel-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
.bon-share-panel-head strong { font-size: 1rem; letter-spacing: -.025em; }
.bon-share-panel-head span { color: var(--bon-muted); font-size: .72rem; }
.bon-share-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.bon-share-option { display: flex; min-height: 58px; flex-direction: column; justify-content: center; padding: 10px 12px; border: 1px solid var(--bon-line); border-radius: 8px; background: var(--bon-white); color: var(--bon-black); cursor: pointer; font: inherit; text-align: left; text-decoration: none; transition: border-color .16s ease, background .16s ease, transform .16s ease; }
.bon-share-option:hover { border-color: #aaaab0; background: var(--bon-soft); transform: translateY(-1px); }
.bon-share-option span { font-size: .84rem; font-weight: 680; }
.bon-share-option small { margin-top: 3px; color: var(--bon-muted); font-size: .66rem; }
.bon-share-native { grid-column: 1 / -1; border-color: var(--bon-black); background: var(--bon-black); color: var(--bon-white); }
.bon-share-native:hover { background: #1b1b1b; }
.bon-share-native small { color: #bdbdc2; }
.bon-share-widget.is-copied .bon-share-copy { border-color: #237a3b; background: #edf8f0; color: #175d2b; }
@keyframes bon-share-line { 0% { stroke-dashoffset: 0; } 45% { stroke-dashoffset: 9; } 46% { stroke-dashoffset: -9; } 100% { stroke-dashoffset: 0; } }
@keyframes bon-share-panel { from { opacity: 0; transform: translateY(8px) scale(.97); } to { opacity: 1; transform: translateY(0) scale(1); } }

.bon-home { overflow: hidden; }
.bon-hero { padding: clamp(18px, 2.7vw, 34px) 0 42px; text-align: center; }

.bon-eyebrow {
  margin: 0 0 14px;
  color: var(--bon-muted);
  font-size: .78rem;
  font-weight: 650;
  letter-spacing: .48em;
  text-transform: uppercase;
}

.bon-hero h1 {
  margin: 0;
  font-size: clamp(5.2rem, 10vw, 8.25rem);
  font-weight: 900;
  letter-spacing: -.066em;
  line-height: .82;
}

.bon-tagline { margin: 14px 0 0; font-size: clamp(1rem, 1.75vw, 1.28rem); letter-spacing: -.025em; }

.bon-meter { max-width: 520px; margin: 26px auto 0; }
.bon-orbit-meter { position: relative; display: grid; width: clamp(280px, 33vw, 380px); aspect-ratio: 1; place-items: center; margin: 0 auto; }
.bon-orbit-meter svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; transform: rotate(-90deg); }
.bon-orbit-meter circle { fill: none; stroke-width: 2.35; vector-effect: non-scaling-stroke; }
.bon-orbit-track { stroke: #d9d9dd; }
.bon-orbit-value { stroke: var(--bon-black); stroke-linecap: butt; transition: stroke-dasharray .9s cubic-bezier(.2,.8,.2,1); }
.bon-orbit-copy { position: absolute; inset: 0; z-index: 1; display: grid; place-items: center; }
.bon-remaining { margin: 0; font-size: clamp(2.55rem, 4.8vw, 3.85rem); font-weight: 900; letter-spacing: -.065em; line-height: 1; font-variant-numeric: tabular-nums; }
.bon-meter-label, .bon-stat-label { margin: 10px 0 0; font-size: .64rem; font-weight: 750; letter-spacing: .29em; text-transform: uppercase; }
.bon-orbit-copy .bon-meter-label { position: absolute; top: calc(50% + 42px); margin: 0; }

.bon-meter-stats { display: flex; flex-wrap: nowrap; align-items: baseline; justify-content: center; gap: 0; width: min(820px, calc(100vw - 48px)); margin: 16px 0 0 50%; color: var(--bon-muted); text-align: left; transform: translateX(-50%); }
.bon-meter-stat { display: inline-flex; flex: 0 0 auto; align-items: baseline; gap: 5px; min-width: 0; }
.bon-meter-stat + .bon-meter-stat::before { margin: 0 12px; color: #c6c6ca; font-size: 1rem; line-height: 1.2; content: "\00b7"; }
.bon-meter-value { display: inline; color: #55555b; font-size: 1rem; font-weight: 500; letter-spacing: -.01em; line-height: 1.2; }
.bon-stat-label { display: inline; margin: 0; font-size: 1rem; font-weight: 400; letter-spacing: 0; line-height: 1.2; text-transform: none; white-space: nowrap; }
.bon-meter-activity { min-height: 1.2em; }
.bon-meter-activity-frame { display: inline-grid; width: 340px; min-height: 1.2em; overflow: hidden; }
.bon-meter-activity-item { position: static; grid-area: 1 / 1; width: 100%; color: #c3161c; font-size: 1rem; font-weight: 400; line-height: 1.2; white-space: nowrap; opacity: 0; transform: translateY(115%); transition: opacity .52s ease, transform .52s cubic-bezier(.22,1,.36,1); }
.bon-meter-activity-item.is-active { opacity: 1; transform: translateY(0); }
.bon-meter-activity-item.is-leaving { opacity: 0; transform: translateY(-115%); }

.bon-purchase { max-width: 790px; margin: 40px auto 0; }
.bon-purchase > p:not([class]) { display: contents; }
.bon-purchase-label { margin: 0 0 16px; color: var(--bon-black); font-size: .66rem; font-weight: 750; letter-spacing: .29em; text-transform: uppercase; }
.bon-amounts { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.bon-amounts > br { display: none; }
.bon-amount {
  min-height: 56px;
  border: 1px solid #d2d2d7;
  border-radius: 8px;
  background: #fff;
  color: var(--bon-black);
  cursor: pointer;
  font: inherit;
  font-size: 1.05rem;
  font-weight: 760;
  transition: background .16s ease, color .16s ease, transform .16s ease;
}
.bon-amount:hover { transform: translateY(-2px); }
.bon-amount[aria-pressed="true"] { border-color: var(--bon-black); background: var(--bon-black); color: #fff; }

.bon-other-wrap { display: none; margin: 14px 0 0; }
.bon-other-wrap.is-visible { display: block; }
.bon-other-input { width: 100%; min-height: 58px; padding: 0 18px; border: 1px solid #c7c7cc; border-radius: 8px; font: inherit; font-size: 1.05rem; }

.bon-primary-button { width: 100%; min-height: 58px; margin-top: 10px; padding: 0 30px; cursor: pointer; font: inherit; font-size: .78rem; letter-spacing: .2em; text-transform: uppercase; }
.bon-primary-button:disabled { cursor: not-allowed; opacity: .45; transform: none; }
.bon-payment-note { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 14px 0 0; color: var(--bon-muted); font-size: .72rem; }
.bon-payment-note svg { width: 15px; height: 15px; }
.bon-status:empty { display: none; }
.bon-status:not(:empty) { min-height: 24px; margin: 14px 0 0; color: #b42318; font-size: .9rem; }

.bon-story { display: grid; grid-template-columns: minmax(330px, .93fr) minmax(0, 1.07fr); gap: 0; margin-top: 20px; padding: clamp(42px, 5.5vw, 70px) 0; border-top: 1px solid var(--bon-line); text-align: left; }
.bon-story-label { margin: 0 0 14px; color: var(--bon-muted); font-size: .7rem; font-weight: 750; letter-spacing: .22em; text-transform: uppercase; }
.bon-story-heading { align-self: stretch; padding-right: clamp(34px, 5vw, 70px); }
.bon-story h2 { max-width: 520px; margin: 0; font-size: clamp(2.55rem, 4.4vw, 4rem); font-weight: 760; letter-spacing: -.065em; line-height: .98; }
.bon-story-statements { margin: 28px 0 0; padding: 0; list-style: none; }
.bon-story-statements li { display: grid; grid-template-columns: 36px minmax(0,1fr); gap: 14px; align-items: start; padding: 0 0 18px; }
.bon-story-statements li>span { color: #68686f; font-family: ui-monospace,SFMono-Regular,Menlo,monospace; font-size: .76rem; line-height: 1.55; }
.bon-story-statements p { margin: 0; }
.bon-story-statements strong { display: block; color: var(--bon-black); font-size: .94rem; font-weight: 680; letter-spacing: -.012em; line-height: 1.4; }
.bon-story-statements small { display: block; margin-top: 2px; color: #73737a; font-size: .78rem; line-height: 1.5; }
.bon-story-links { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px; margin-top: 12px; }
.bon-story-links a { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 46px; padding: 0 16px; border: 1px solid #d4d4d8; border-radius: 7px; color: var(--bon-black); font-size: .82rem; font-weight: 500; text-decoration: none; transition: border-color .18s ease, background .18s ease; }
.bon-story-links a:hover { opacity: .55; }
.bon-story-links br { display: none; }
.bon-story-links .bon-icon { width: 16px; height: 16px; }

.bon-home-certificate-wrap { display: flex; align-items: center; min-width: 0; padding-left: clamp(36px, 6vw, 76px); border-left: 1px solid var(--bon-line); }
.bon-home-certificate { position: relative; display: flex; flex-direction: column; justify-content: space-between; width: min(100%, 510px); aspect-ratio: .84; margin: 8px auto 4px; padding: clamp(24px, 3.2vw, 38px); color: #151515; background-color: #f4f0ea; background-image: radial-gradient(rgba(30,25,20,.045) .6px,transparent .7px),radial-gradient(rgba(30,25,20,.025) .5px,transparent .65px); background-position: 0 0,3px 3px; background-size: 6px 6px,8px 8px; box-shadow: 0 26px 45px rgba(30,24,18,.17); transform: rotate(-5.5deg); }
.bon-home-certificate header,.bon-home-certificate footer { display:flex;align-items:flex-start;justify-content:space-between;gap:20px; }
.bon-home-certificate header>strong { font-size: clamp(.82rem,1.25vw,1.05rem); font-weight:900; letter-spacing:-.06em; }
.bon-home-certificate header>strong span { color:#9a9792; }
.bon-home-certificate header small { font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.66rem;letter-spacing:.08em; }
.bon-home-certificate-copy { text-align:center; }
.bon-home-certificate-copy h3 { margin:0;font-family:Lora,Georgia,serif;font-size:clamp(2rem,3.55vw,3.25rem);font-weight:500;letter-spacing:-.04em;line-height:1.05; }
.bon-home-certificate-copy i { display:block;width:24px;height:1px;margin:18px auto;background:#111; }
.bon-home-certificate-copy p { margin:16px 0 0;color:#3e3a36;font-size:clamp(.72rem,1.15vw,.92rem);line-height:1.55; }
.bon-home-certificate-copy>strong { display:block;margin-top:7px;font-family:Lora,Georgia,serif;font-size:clamp(1.35rem,2.25vw,2rem);font-weight:600; }
.bon-home-certificate footer { align-items:flex-end; }
.bon-home-certificate footer span { display:block;font-family:Lora,Georgia,serif;font-size:.82rem; }
.bon-home-certificate footer small { display:block;margin-top:7px;font-size:.5rem;font-weight:750;letter-spacing:.24em;text-transform:uppercase; }
.bon-home-certificate footer img { width:clamp(78px,10vw,116px);height:auto;transform:rotate(7deg); }

.bon-home-record { display:grid;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);padding:30px 0 50px;border-top:1px solid var(--bon-line); }
.bon-home-record-list { min-width:0;padding-right:clamp(32px,5vw,68px); }
.bon-home-record-list ul { margin:0;padding:0;list-style:none; }
.bon-home-record-list .bon-public-record-row { display:grid;grid-template-columns:92px 58px minmax(105px,1fr) 92px 96px;gap:12px;align-items:center;min-height:31px;color:#55555c;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem; }
.bon-home-record-list li strong { color:#55555c;font-weight:500; }
.bon-story-record-link { justify-content:space-between;min-height:46px;width:max-content;margin-top:24px;padding:0 16px;border:1px solid #d4d4d8;border-radius:7px;color:#111;font-size:.8rem;text-decoration:none; }
.bon-story-record-link .bon-icon { width:15px;height:15px;margin-left:12px; }
.bon-home-record-empty { display:flex;flex-direction:column;justify-content:center;min-height:154px;color:#6d6d73; }
.bon-home-record-empty strong { color:#111;font-size:1rem; }
.bon-home-record-empty span { margin-top:6px;font-size:.82rem; }
.bon-home-together { padding-left:clamp(36px,6vw,70px);border-left:1px solid var(--bon-line); }
.bon-home-together p:not(.bon-story-label) { margin:0; }
.bon-home-together p strong { display:block;font-size:clamp(2.25rem,4.35vw,4rem);font-weight:760;letter-spacing:-.065em;line-height:.98; }
.bon-home-together>span,.bon-home-together>p:last-child { display:block;margin-top:0;padding-top:36px;color:#68686f;font-size:.91rem;line-height:1.55; }
.bon-home-together>p:last-child span { color:inherit;font:inherit; }

.bon-community { display: grid; grid-template-columns: minmax(340px, .86fr) minmax(0, 1.45fr); gap: 0; margin-top: 0; margin-bottom: 44px; padding: 34px 0 42px; border-top: 1px solid var(--bon-line); }
.bon-community > p:empty { display: none; }
.bon-community-stats { min-width: 0; padding-right: clamp(34px, 4.5vw, 56px); border-right: 1px solid var(--bon-line); }
.bon-community-stats > p:empty, .bon-global-stat > p:empty { display: none; }
.bon-community-stats h2, .bon-section-head h2 { margin: 0; font-size: 1.4rem; letter-spacing: -.045em; }
.bon-activity { min-width: 0; padding-left: clamp(34px, 4.5vw, 56px); text-align: left; }
.bon-section-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 10px; }
.bon-section-head a { color: var(--bon-black); font-size: .88rem; text-decoration: none; }

.bon-activity-list { list-style: none; margin: 0; padding: 0; }
.bon-activity-row { display: grid; grid-template-columns: 1.15fr .8fr 1.3fr 1.45fr .95fr; align-items: center; min-height: 56px; border-bottom: 1px solid #e6e6e8; font-size: .92rem; }
.bon-activity-row span:nth-child(n+3) { color: var(--bon-muted); }
.bon-person { display: flex; align-items: center; gap: 14px; }
.bon-dot { width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; background: var(--dot, #4caf69); }
.bon-empty { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; gap: 7px; min-height: 146px; margin-top: 18px; padding: 28px 30px; color: var(--bon-muted); border-radius: 10px; background: var(--bon-soft); }
.bon-empty strong { color: var(--bon-black); font-size: 1rem; }
.bon-empty span { color: #65656c; font-size: .9rem; line-height: 1.5; }

.bon-milestone { margin: 0 0 30px; padding: 28px 30px; border: 1px solid var(--bon-line); border-radius: 10px; background: var(--bon-soft); }
.bon-milestone > span { color: #65656c; font-size: .68rem; font-weight: 750; letter-spacing: .18em; text-transform: uppercase; }
.bon-milestone h2 { margin: 12px 0 0; font-size: clamp(1.65rem, 4vw, 2.4rem); letter-spacing: -.045em; }
.bon-milestone p { margin: 9px 0 0; color: #55555b; font-size: .96rem; line-height: 1.55; }

.bon-global-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.bon-global-stat { display: flex; align-items: flex-start; flex-direction: column; justify-content: space-between; min-height: 146px; padding: 22px; border-radius: 10px; background: var(--bon-soft); text-align: left; }
.bon-global-stat svg { width: 32px; height: 32px; }
.bon-global-stat strong { display: block; font-size: 2rem; letter-spacing: -.055em; line-height: 1; }
.bon-global-stat small { display: block; margin-top: 6px; font-size: .7rem; font-weight: 750; letter-spacing: .2em; text-transform: uppercase; }

.bon-voices { display: grid; grid-template-columns: minmax(280px, .78fr) minmax(0, 1.4fr); gap: clamp(48px, 8vw, 112px); margin-bottom: 44px; padding: clamp(48px, 6vw, 76px) 0; border-top: 1px solid var(--bon-line); text-align: left; }
.bon-voices-heading { align-self: start; }
.bon-voices-heading h2 { max-width: 430px; margin: 0; font-size: clamp(2.2rem, 4.2vw, 3.5rem); font-weight: 530; letter-spacing: -.06em; line-height: .98; }
.bon-voices-heading > a { display: inline-flex; align-items: center; gap: 10px; margin-top: 28px; color: var(--bon-black); font-size: .9rem; text-decoration: none; }
.bon-voices-heading > a:hover { opacity: .55; }
.bon-voices-list { margin: 0; padding: 0; list-style: none; }
.bon-voices-list li + li { margin-top: clamp(32px, 5vw, 52px); }
.bon-voices-list .bon-voice-entry { position: relative; display: block; color: inherit; }
.bon-voice-meta { margin: 0 0 10px; color: #65656c; font-size: .87rem; line-height: 1.5; }
.bon-voice-meta strong { color: var(--bon-black); font-weight: 680; }
.bon-voice-meta span { color: var(--bon-black); }
.bon-voices-list blockquote { max-width: 720px; margin: 0; font-size: clamp(1.25rem, 2.2vw, 1.75rem); font-weight: 430; letter-spacing: -.025em; line-height: 1.35; }

.bon-footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; width: min(calc(100% - 48px), var(--bon-max)); margin: 0 auto; padding: 20px 0 36px; }
.bon-footer-brand strong { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; font-size: 1.28rem; font-weight: 900; letter-spacing: -.055em; }
.bon-footer-brand > span { display: block; margin-top: 5px; color: #65656c; font-size: .9rem; }
.bon-footer-brand strong span { display: inline; margin-top: 0; color: var(--bon-black); font-size: inherit; }
.bon-footer-brand strong .bon-copyright { color: var(--bon-black); font-size: inherit; font-weight: inherit; letter-spacing: inherit; }
.bon-footer-brand strong .bon-brand-of { color: #a9a9af; }
.bon-footer-links { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 18px; color: #3f3f45; font-size: .94rem; }
.bon-footer-links a { color: inherit; }
.bon-footer-links br { display: none; }

.bon-icon {
  flex: 0 0 auto;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}
.bon-icon-link { display: inline-flex; align-items: center; gap: 10px; }
.bon-primary-button .bon-icon { width: 22px; height: 22px; margin-left: 7px; }
.bon-mobile-cta .bon-icon { width: 20px; height: 20px; }
.bon-section-head .bon-icon { width: 17px; height: 17px; }
.bon-footer-links .bon-icon { width: 18px; height: 18px; }
.bon-icon-link .bon-icon-arrow,
.bon-global-stat .bon-icon,
.bon-payment-note .bon-icon,
.bon-icon-link .bon-icon-mail-flap { transition: transform .3s cubic-bezier(.22, 1, .36, 1); }
.bon-icon-link:hover .bon-icon-arrow { transform: translateX(4px); }
.bon-global-stat:hover .bon-icon-globe { transform: rotate(14deg); }
.bon-global-stat:hover .bon-icon-people { transform: translateY(-2px) scale(1.04); }
.bon-global-stat:hover .bon-icon-leaf { transform: rotate(-7deg) translateY(-1px); }
.bon-payment-note:hover .bon-icon-lock-shackle { transform: translateY(-1.5px); }
.bon-icon-link:hover .bon-icon-mail-flap { transform: translateY(1px); }
.bon-icon-lock-shackle,
.bon-icon-mail-flap,
.bon-icon-menu path { transform-origin: center; transition: transform .3s cubic-bezier(.22, 1, .36, 1); }
.bon-menu-toggle[aria-expanded="true"] .bon-icon-menu-top { transform: translateY(4px) rotate(45deg); }
.bon-menu-toggle[aria-expanded="true"] .bon-icon-menu-bottom { transform: translateY(-4px) rotate(-45deg); }

.bon-content { width: min(calc(100% - 48px), 760px); min-height: 60vh; margin: 50px auto 100px; }
.bon-content h1 { margin: 0 0 42px; font-size: clamp(3.2rem, 9vw, 6.5rem); line-height: .92; letter-spacing: -.075em; }
.bon-content h2 { margin-top: 48px; font-size: 1.7rem; letter-spacing: -.035em; }
.bon-content p, .bon-content li { color: #35353a; font-size: 1.08rem; line-height: 1.75; }

/* About */
.bon-about-body .bon-content { width: 100%; min-height: 0; margin: 0 auto; }
.bon-about-body .bon-content > h1 { display: none; }
.bon-about-body .bon-content > .wp-block-post-content { width: 100% !important; max-width: none !important; }
.bon-about-page { width: 100vw; max-width: none !important; margin-left: calc(50% - 50vw) !important; --about-width: min(calc(100% - 48px), var(--bon-max)); overflow: hidden; }
.bon-about-kicker { margin: 0 0 15px !important; color: var(--bon-muted) !important; font-size: .69rem !important; font-weight: 750; letter-spacing: .22em; line-height: 1.2 !important; text-transform: uppercase; }
.bon-about-hero { width: var(--about-width); margin: 0 auto; padding: clamp(70px, 9vw, 112px) 0 clamp(74px, 9vw, 116px); }
.bon-about-hero h1 { max-width: 1040px; margin: 0; font-size: clamp(4.3rem, 9.4vw, 8rem); font-weight: 560; letter-spacing: -.078em; line-height: .9; }
.bon-about-lead { max-width: 690px; margin: 34px 0 0 !important; color: #515158 !important; font-size: clamp(1.05rem, 1.8vw, 1.25rem) !important; line-height: 1.65 !important; }
.bon-about-section, .bon-about-ending { display: grid; grid-template-columns: minmax(300px, .88fr) minmax(0, 1.12fr); gap: clamp(56px, 9vw, 126px); width: var(--about-width); margin: 0 auto; padding: clamp(60px, 7vw, 88px) 0; border-top: 1px solid var(--bon-line); }
.bon-about-section h2, .bon-about-ending h2 { max-width: 560px; margin: 0; font-size: clamp(2.7rem, 5vw, 4.7rem); font-weight: 540; letter-spacing: -.068em; line-height: .94; }
.bon-about-copy p { max-width: 600px; margin: 0; color: #53535a; font-size: 1rem; line-height: 1.72; }
.bon-about-copy p + p { margin-top: 24px; }
.bon-about-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: var(--about-width); margin: 0 auto; border-top: 1px solid var(--bon-line); }
.bon-about-details article { min-width: 0; padding: clamp(54px, 7vw, 82px) clamp(36px, 6vw, 76px) clamp(58px, 7vw, 88px) 0; }
.bon-about-details article + article { padding-right: 0; padding-left: clamp(36px, 6vw, 76px); border-left: 1px solid var(--bon-line); }
.bon-about-details h2 { max-width: 480px; margin: 0; font-size: clamp(2rem, 3.5vw, 3.15rem); font-weight: 540; letter-spacing: -.06em; line-height: 1; }
.bon-about-details article > p:last-child { max-width: 510px; margin: 26px 0 0; color: #595960; font-size: .96rem; line-height: 1.7; }
.bon-about-exchange { width: var(--about-width); margin: 0 auto; padding: 0; border-top: 1px solid var(--bon-line); }
.bon-about-exchange > div { display: grid; grid-template-columns: minmax(240px, .88fr) minmax(0, 1.12fr); gap: clamp(56px, 9vw, 126px); align-items: baseline; min-height: 108px; padding: 28px 0; border-bottom: 1px solid var(--bon-line); }
.bon-about-exchange dt { color: #64646b; font-size: .92rem; }
.bon-about-exchange dd { margin: 0; font-size: clamp(1.65rem, 3vw, 2.5rem); font-weight: 580; letter-spacing: -.045em; line-height: 1.1; }
.bon-about-ending { margin-top: clamp(64px, 8vw, 104px); border-top: 0; border-bottom: 1px solid var(--bon-line); }
.bon-about-collective { color: var(--bon-black) !important; font-size: clamp(1.35rem, 2.5vw, 1.9rem) !important; font-weight: 540; letter-spacing: -.035em; line-height: 1.35 !important; }
.bon-about-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 34px; }
.bon-about-actions a { display: inline-flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 54px; padding: 0 18px; border: 1px solid var(--bon-black); border-radius: 8px; color: var(--bon-black); font-size: .92rem; text-decoration: none; transition: transform .18s ease, opacity .18s ease; }
.bon-about-actions a:hover { transform: translateY(-2px); opacity: .72; }
.bon-about-actions a:focus-visible { outline: 3px solid #5b7cfa; outline-offset: 3px; }
.bon-about-actions .bon-about-primary { min-width: 205px; background: var(--bon-black); color: var(--bon-white); }
.bon-about-actions .bon-about-secondary { min-width: 245px; }
.bon-about-note { width: var(--about-width); max-width: var(--about-width) !important; margin: 0 auto !important; padding: 26px 0 clamp(72px, 8vw, 104px); color: #77777e !important; font-size: .78rem !important; line-height: 1.65 !important; }
.bon-about-note strong { color: #55555c; }

/* Public record */
.bon-record-body .bon-content { width: 100%; min-height: 0; margin: 0 auto; }
.bon-record-body .bon-content > h1 { display: none; }
.bon-record-body .bon-content > .wp-block-post-content { width: 100% !important; max-width: none !important; }
.bon-record-page { width: 100vw; max-width: none !important; margin-left: calc(50% - 50vw) !important; --record-width: min(calc(100% - 48px), var(--bon-max)); overflow: hidden; }
.bon-record-kicker { margin: 0 0 14px !important; color: var(--bon-muted) !important; font-size: .68rem !important; font-weight: 750; letter-spacing: .22em; line-height: 1.2 !important; text-transform: uppercase; }
.bon-record-hero { width: var(--record-width); margin: 0 auto; padding: clamp(58px, 8vw, 105px) 0 clamp(64px, 8vw, 98px); text-align: center; }
.bon-record-hero h1 { max-width: 970px; margin: 0 auto; font-size: clamp(4rem, 9.4vw, 7.9rem); letter-spacing: -.075em; line-height: .88; }
.bon-record-hero > p:not(.bon-record-kicker) { max-width: 630px; margin: 30px auto 0; color: #55555b; font-size: 1.04rem; line-height: 1.65; }
.bon-record-totals { display: flex; justify-content: center; gap: 0; margin-top: 36px; color: var(--bon-muted); font-size: .82rem; }
.bon-record-totals span { display: inline-flex; align-items: baseline; gap: 5px; }
.bon-record-totals span + span::before { margin: 0 14px; color: #c5c5c9; content: "\00b7"; }
.bon-record-totals strong { color: #4f4f55; font-size: .86rem; }

.bon-record-wall { width: var(--record-width); margin: 0 auto; padding: clamp(46px, 6vw, 76px) 0; border-top: 1px solid var(--bon-line); }
.bon-record-heading { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(280px, 1fr); gap: 24px 64px; align-items: end; margin-bottom: 42px; }
.bon-record-heading .bon-record-kicker { grid-column: 1 / -1; margin-bottom: -6px !important; }
.bon-record-heading h2, .bon-record-section-title h2 { margin: 0; font-size: clamp(2.8rem, 5.8vw, 5.3rem); letter-spacing: -.07em; line-height: .93; }
.bon-record-heading > p:last-child { max-width: 500px; margin: 0; color: #55555b; font-size: .98rem; line-height: 1.65; }
.bon-gap-area { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(250px, .62fr); min-height: 590px; border: 1px solid var(--bon-line); background: #fff; }
.bon-nothing-orb { position: relative; width: min(520px, 78%); aspect-ratio: 1; align-self: center; justify-self: center; border-radius: 50%; background: var(--bon-black); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); }
.bon-nothing-orb.is-untouched::after { position: absolute; inset: 0; display: grid; place-items: center; color: rgba(255,255,255,.62); font-size: .68rem; font-weight: 700; letter-spacing: .2em; content: "UNTOUCHED"; }
.bon-gap { position: absolute; left: var(--gap-x); top: var(--gap-y); width: var(--gap-size); height: var(--gap-size); padding: 0; border: 3px solid #fff; border-radius: 50%; background: #fff; cursor: pointer; transform: translate(-50%, -50%); transition: box-shadow .15s ease, transform .15s ease; }
.bon-gap::after { position: absolute; inset: -9px; content: ""; }
.bon-gap:hover { transform: translate(-50%, -50%) scale(1.14); }
.bon-gap.is-selected { box-shadow: 0 0 0 3px var(--bon-black), 0 0 0 6px #fff; }
.bon-gap:focus-visible { outline: 3px solid #5b7cfa; outline-offset: 4px; }
.bon-gap-detail { display: flex; flex-direction: column; justify-content: center; padding: clamp(30px, 4vw, 52px); border-left: 1px solid var(--bon-line); }
.bon-gap-detail > span:first-child { color: var(--bon-muted); font-size: .66rem; font-weight: 750; letter-spacing: .18em; text-transform: uppercase; }
.bon-gap-detail > strong { display: block; margin-top: 18px; font-size: clamp(1.8rem, 3vw, 2.8rem); letter-spacing: -.055em; line-height: 1; }
.bon-gap-detail p { margin: 20px 0 0; color: #606066; font-size: .91rem; line-height: 1.7; }
.bon-gap-detail a { display: inline-flex; align-items: center; gap: 9px; align-self: flex-start; margin-top: 34px; color: var(--bon-black); font-size: .82rem; font-weight: 750; text-decoration: none; }
.bon-gap-detail a .bon-icon { width: 17px; height: 17px; }
.bon-gap-sample { margin: 14px 0 0; color: var(--bon-muted); font-size: .76rem; line-height: 1.5; }

.bon-record-milestones, .bon-record-largest, .bon-record-roll { width: var(--record-width); margin: 0 auto; padding: clamp(56px, 7vw, 90px) 0; border-top: 1px solid var(--bon-line); }
.bon-record-section-title { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 1fr); gap: 22px 64px; align-items: end; margin-bottom: 38px; }
.bon-record-section-title .bon-record-kicker { grid-column: 1 / -1; margin-bottom: -7px !important; }
.bon-record-section-title h2 { grid-column: 1 / -1; max-width: 820px; }
.bon-milestone-track { border-top: 1px solid var(--bon-line); }
.bon-record-milestone { display: grid; grid-template-columns: minmax(95px, .36fr) minmax(0, 1.5fr) auto; gap: 28px; align-items: center; min-height: 118px; border-bottom: 1px solid var(--bon-line); }
.bon-record-milestone > strong { color: #b1b1b6; font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 700; letter-spacing: -.06em; }
.bon-record-milestone h3 { margin: 0; font-size: 1.25rem; letter-spacing: -.03em; }
.bon-record-milestone p { margin: 5px 0 0; color: var(--bon-muted); font-size: .88rem; line-height: 1.45; }
.bon-record-milestone > span { color: var(--bon-muted); font-size: .68rem; font-weight: 750; letter-spacing: .15em; text-transform: uppercase; }
.bon-record-milestone.is-reached > strong, .bon-record-milestone.is-reached > span { color: var(--bon-black); }

.bon-record-largest .bon-record-section-title { grid-template-columns: minmax(260px, .8fr) minmax(280px, 1fr); }
.bon-record-largest .bon-record-section-title h2 { grid-column: 1; }
.bon-record-largest .bon-record-section-title > p:last-child { grid-column: 2; align-self: end; max-width: 440px; margin: 0; color: var(--bon-muted); font-size: .91rem; line-height: 1.6; }
.bon-largest-list { margin: 0; padding: 0; border-top: 1px solid var(--bon-line); list-style: none; }
.bon-largest-list li { display: grid; grid-template-columns: 56px minmax(150px, 1.1fr) minmax(120px, .8fr) minmax(150px, .85fr) 90px; gap: 22px; align-items: center; min-height: 78px; border-bottom: 1px solid var(--bon-line); font-size: .9rem; }
.bon-largest-rank { color: #a2a2a8; font-size: .76rem; font-variant-numeric: tabular-nums; font-weight: 750; letter-spacing: .08em; }
.bon-largest-list strong { font-size: 1rem; }
.bon-largest-country, .bon-largest-share { color: var(--bon-muted); }
.bon-largest-money { color: var(--bon-black); font-weight: 800; text-align: right; }

.bon-roll-list { margin: 0; padding: 0; border-top: 1px solid var(--bon-line); list-style: none; }
.bon-roll-list li { margin: 0; padding: 0; }
.bon-roll-list .bon-roll-row { display: grid; grid-template-columns: 130px minmax(130px, 1.1fr) minmax(110px, .75fr) 115px 100px; gap: 20px; align-items: center; min-height: 76px; border-bottom: 1px solid var(--bon-line); color: var(--bon-black); font-size: .9rem; line-height: 1.3; }
.bon-roll-list strong { font-size: .96rem; }
.bon-roll-list span { color: var(--bon-muted); }
.bon-roll-list .bon-roll-number { color: #55555b; font-variant-numeric: tabular-nums; }
.bon-roll-list .bon-roll-money { color: var(--bon-black); font-weight: 750; text-align: right; }
.bon-roll-arrow { display: flex; justify-content: flex-end; }
.bon-roll-arrow .bon-icon { width: 18px; height: 18px; }
.bon-roll-empty { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; min-height: 150px; padding: 28px 0; border-top: 1px solid var(--bon-line); border-bottom: 1px solid var(--bon-line); }
.bon-roll-empty strong { font-size: 1.05rem; }
.bon-roll-empty span { margin-top: 6px; color: var(--bon-muted); font-size: .9rem; }
.bon-roll-pagination { display: grid; grid-template-columns: 1fr auto 1fr; gap: 18px; align-items: center; min-height: 72px; color: var(--bon-muted); font-size: .78rem; }
.bon-roll-pagination a { display: inline-flex; align-items: center; gap: 9px; color: var(--bon-black); font-weight: 700; text-decoration: none; }
.bon-roll-pagination a:last-child { justify-self: end; }
.bon-roll-pagination a:first-child .bon-icon { transform: rotate(180deg); }
.bon-roll-pagination .bon-icon { width: 16px; height: 16px; }

.bon-certificate { max-width: 900px; margin: 40px auto; padding: clamp(30px, 6vw, 64px); border: 2px solid var(--bon-black); text-align: center; }
.bon-certificate h2 { margin: 0; font-size: clamp(2.5rem, 7vw, 5rem); letter-spacing: -.07em; line-height: .95; }
.bon-certificate-statement { max-width: 610px; margin: 26px auto 0; color: #35353a; font-size: clamp(1rem, 2vw, 1.18rem); line-height: 1.65; }
.bon-certificate-details { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 34px 0 0; border-top: 1px solid var(--bon-black); border-bottom: 1px solid var(--bon-black); text-align: left; }
.bon-certificate-details > div { min-width: 0; padding: 18px 16px; }
.bon-certificate-details > div + div { border-left: 1px solid var(--bon-line); }
.bon-certificate-details dt { color: var(--bon-muted); font-size: .67rem; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; }
.bon-certificate-details dd { overflow-wrap: anywhere; margin: 7px 0 0; font-size: .9rem; font-weight: 700; }
.bon-certificate-closing { margin: 24px 0 0; font-size: .78rem; font-weight: 700; letter-spacing: .04em; }
.bon-certificate.is-pending { border-color: var(--bon-line); }
.bon-certificate.is-pending p:last-child { max-width: 560px; margin: 22px auto 0; color: var(--bon-muted); line-height: 1.6; }

/* Notes from Nothing */
.bon-blog-page, .bon-entry-page { width: min(calc(100% - 48px), var(--bon-max)); margin: 0 auto; }
.bon-blog-hero { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: clamp(42px, 5vw, 66px) 0 30px; }
.bon-blog-hero h1 { margin: 0; font-size: clamp(2.25rem, 4.3vw, 4rem); font-weight: 580; letter-spacing: -.06em; line-height: .94; }
.bon-blog-series { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.bon-blog-series a { display: inline-flex; align-items: center; min-height: 42px; padding: 0 14px; border: 1px solid var(--bon-line); border-radius: 7px; color: var(--bon-black); font-size: .8rem; text-decoration: none; transition: border-color .16s ease, background .16s ease; }
.bon-blog-series a:hover, .bon-blog-series a[aria-current="page"] { border-color: var(--bon-black); background: var(--bon-black); color: var(--bon-white); }
.bon-blog-series a:focus-visible, .bon-blog-card a:focus-visible, .bon-entry a:focus-visible { outline: 3px solid #5b7cfa; outline-offset: 3px; }
.bon-blog-query { margin: 0 0 clamp(78px, 10vw, 126px); border-top: 1px solid var(--bon-line); }
.bon-blog-query .wp-block-post-template { margin: 0; padding: 0; list-style: none; }
.bon-blog-card { display: grid; grid-template-columns: minmax(260px, .72fr) minmax(0, 1fr); gap: 16px clamp(38px, 6vw, 82px); padding: clamp(34px, 4vw, 52px) 0; border-bottom: 1px solid var(--bon-line); }
.bon-blog-card > .wp-block-post-featured-image { grid-column: 1; grid-row: 1 / span 3; align-self: start; margin: 0; overflow: hidden; background: #f2f0f0; }
.bon-blog-card > .wp-block-post-featured-image img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; transition: transform .3s ease; }
.bon-blog-card > .wp-block-post-featured-image:hover img { transform: scale(1.018); }
.bon-blog-card-meta { grid-column: 2; align-content: flex-start; align-items: flex-start !important; gap: 15px !important; margin: 2px 0 0; }
.bon-blog-card-meta .wp-block-post-terms, .bon-entry-meta .wp-block-post-terms { margin: 0; font-size: .68rem; font-weight: 750; letter-spacing: .15em; line-height: 1.35; text-transform: uppercase; }
.bon-blog-card-meta .wp-block-post-terms a, .bon-entry-meta .wp-block-post-terms a { color: var(--bon-black); text-decoration: none; }
.bon-blog-card-meta .wp-block-post-date, .bon-entry-meta .wp-block-post-date { margin: 0; color: var(--bon-muted); font-size: .78rem; }
.bon-blog-card > .wp-block-post-title { grid-column: 2; margin: 0; font-size: clamp(2rem, 3.65vw, 3.55rem); font-weight: 580; letter-spacing: -.06em; line-height: .96; }
.bon-blog-card > .wp-block-post-title a { color: var(--bon-black); text-decoration: none; }
.bon-blog-card > .wp-block-post-title a:hover { opacity: .54; }
.bon-blog-card > .wp-block-post-excerpt { grid-column: 2; margin: -4px 0 0; }
.bon-blog-card .wp-block-post-excerpt__excerpt { max-width: 650px; margin: 0; color: #5a5a61; font-size: .98rem; line-height: 1.7; }
.bon-blog-card .wp-block-post-excerpt__more-text { margin: 23px 0 0; }
.bon-blog-card .wp-block-post-excerpt__more-link { color: var(--bon-black); font-size: .82rem; font-weight: 700; text-decoration: none; }
.bon-blog-empty { padding: clamp(54px, 7vw, 86px) 0; border-bottom: 1px solid var(--bon-line); }
.bon-blog-empty h2 { margin: 0; font-size: clamp(2.1rem, 4.5vw, 4rem); font-weight: 580; letter-spacing: -.058em; line-height: .96; }
.bon-blog-empty p { margin: 18px 0 0; color: var(--bon-muted); font-size: .95rem; }
.bon-blog-query .wp-block-query-pagination { min-height: 76px; margin: 0; font-size: .8rem; }
.bon-blog-query .wp-block-query-pagination a { color: var(--bon-black); text-decoration: none; }

.bon-entry-page { padding: clamp(72px, 9vw, 116px) 0 clamp(82px, 10vw, 132px); }
.bon-entry { width: 100%; }
.bon-entry-meta { gap: 18px !important; margin-bottom: 28px; }
.bon-entry > .wp-block-post-title { max-width: 1020px; margin: 0; font-size: clamp(4rem, 9vw, 8.4rem); font-weight: 580; letter-spacing: -.075em; line-height: .88; }
.bon-entry > .wp-block-post-featured-image { margin: clamp(46px, 7vw, 82px) 0; }
.bon-entry > .wp-block-post-featured-image img { width: 100%; border-radius: 2px; object-fit: cover; }
.bon-entry > .wp-block-post-content { width: min(100%, 760px); margin: clamp(52px, 7vw, 86px) auto 0; }
.bon-entry > .wp-block-post-content > * { max-width: 760px; }
.bon-entry > .wp-block-post-content p, .bon-entry > .wp-block-post-content li { color: #303036; font-size: clamp(1.06rem, 1.7vw, 1.18rem); line-height: 1.82; }
.bon-entry > .wp-block-post-content h2 { margin: 2.2em 0 .65em; font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 580; letter-spacing: -.055em; line-height: 1; }
.bon-entry > .wp-block-post-content blockquote { margin: 2.2em 0; padding-left: 26px; border-left: 2px solid var(--bon-black); }
.bon-entry > .wp-block-post-content blockquote p { font-size: clamp(1.35rem, 2.7vw, 2rem); letter-spacing: -.03em; line-height: 1.4; }
.bon-blog-cta { width: min(100%, 760px); margin: clamp(62px, 9vw, 104px) auto 0; padding: clamp(34px, 5vw, 50px); border-radius: 2px; background: #f2f0f0; }
.bon-blog-cta-kicker { margin: 0; color: #6b6b70; font-size: .68rem; font-weight: 750; letter-spacing: .15em; text-transform: uppercase; }
.bon-blog-cta h2 { max-width: 610px; margin: 20px 0 0; font-size: clamp(2.6rem, 6vw, 4.7rem); font-weight: 580; letter-spacing: -.065em; line-height: .94; }
.bon-blog-cta > p:not(.bon-blog-cta-kicker) { margin: 20px 0 0; color: #55555b; font-size: 1rem; }
.bon-blog-cta-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; margin-top: 30px; }
.bon-blog-cta-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 52px; border-radius: 5px; font-size: .86rem; text-decoration: none; transition: opacity .16s ease, background .16s ease, color .16s ease; }
.bon-blog-cta-actions a:hover { opacity: .68; }
.bon-blog-cta-primary { padding: 0 20px; background: var(--bon-black); color: #fff; }
.bon-blog-cta-secondary { color: var(--bon-black); }
.bon-entry-footer { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; width: min(100%, 760px); margin: clamp(58px, 8vw, 92px) auto 0; padding-top: 24px; border-top: 1px solid var(--bon-line); }
.bon-entry-footer > p { grid-column: 1 / -1; margin: 0 0 18px; }
.bon-entry-footer a { color: var(--bon-black); font-size: .82rem; text-decoration: none; }
.bon-entry-footer .wp-block-post-navigation-link:last-child { text-align: right; }

.bon-404-page { overflow: hidden; }
.bon-404-shell { position: relative; display: grid; min-height: calc(100vh - 184px); place-items: center; width: min(calc(100% - 48px), var(--bon-max)); margin: 0 auto; padding: clamp(54px, 7vw, 94px) 0 clamp(70px, 8vw, 108px); text-align: center; }
.bon-404-code { position: absolute; top: clamp(22px, 4vw, 54px); left: 50%; z-index: -1; margin: 0; color: #f1f1f3; font-size: clamp(12rem, 31vw, 25rem); font-weight: 900; letter-spacing: -.1em; line-height: .72; transform: translateX(-52%); user-select: none; }
.bon-404-content { width: min(100%, 900px); }
.bon-404-content h1 { max-width: 850px; margin: 0 auto; font-size: clamp(3.2rem, 7.1vw, 6.25rem); font-weight: 590; letter-spacing: -.07em; line-height: .92; }
.bon-404-intro { max-width: 560px; margin: 26px auto 0; color: #5f5f65; font-size: clamp(.98rem, 1.6vw, 1.12rem); line-height: 1.65; }
.bon-404-meter { display: flex; align-items: baseline; justify-content: center; gap: 7px; margin-top: 28px; color: #626268; font-size: .9rem; }
.bon-404-meter strong { color: var(--bon-black); font-size: 1.18rem; letter-spacing: -.025em; }
.bon-404-purchase { margin-top: 28px; }
.bon-404-purchase .bon-primary-button { text-transform: uppercase; }
.bon-404-trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; margin: 16px 0 0; color: var(--bon-muted); font-size: .78rem; line-height: 1.5; }
.bon-404-return { display: inline-flex; align-items: center; gap: 8px; margin-top: 22px; color: var(--bon-black); font-size: .88rem; text-decoration: none; }
.bon-404-return:hover { opacity: .55; }
.bon-404-return .bon-icon { width: 16px; height: 16px; }

@media (max-width: 760px) {
	.bon-share-widget { right: 16px; bottom: 16px; }
	body:has(.bon-mobile-cta.is-visible) .bon-share-widget { bottom: 88px; }
	.bon-share-trigger { width: 48px; height: 48px; }
	.bon-share-panel { bottom: 58px; }
  .bon-shell, .bon-header, .bon-footer { width: min(calc(100% - 32px), var(--bon-max)); }
  .bon-header { padding: 12px 0 14px; }
  .bon-brand { display: inline-flex; flex: 0 1 auto; min-width: 0; font-size: 1.12rem; white-space: nowrap; }
  .bon-header-actions { gap: 8px; margin-left: auto; }
  .bon-nav { display: none; position: absolute; top: calc(100% - 8px); right: 0; z-index: 30; align-items: stretch; flex-direction: column; min-width: 210px; padding: 8px; border: 1px solid var(--bon-line); border-radius: 10px; background: #fff; box-shadow: 0 18px 50px rgba(0,0,0,.12); }
  .bon-nav.is-open { display: flex; }
  .bon-nav a { padding: 12px 14px; border-radius: 7px; text-align: left; }
  .bon-nav a:hover { background: var(--bon-soft); opacity: 1; }
  .bon-nav-cta { min-height: 42px; padding: 0 15px; font-size: .78rem; }
  .bon-menu-toggle { display: inline-grid; width: 38px; height: 42px; place-items: center; padding: 0; border: 0; background: transparent; color: var(--bon-black); cursor: pointer; }
  .bon-menu-toggle .bon-icon { width: 22px; height: 22px; }
  .bon-hero { padding: 20px 0 24px; }
  .bon-eyebrow { letter-spacing: .34em; }
  .bon-meter { margin-top: 24px; }
  .bon-orbit-meter { width:min(78vw,330px); }
  .bon-remaining { font-size:clamp(2.25rem,11vw,3rem); }
  .bon-orbit-copy .bon-meter-label { top: calc(50% + 36px); }
  .bon-meter-label, .bon-stat-label { letter-spacing: .17em; }
	.bon-meter-stats { flex-wrap: wrap; align-items: center; justify-content: center; gap: 0; width: 100%; margin: 11px 0 0; color: var(--bon-muted); transform: none; }
  .bon-meter-stat { display: inline-flex; flex: 0 0 auto; align-items: baseline; gap: 4px; min-width: 0; }
  .bon-meter-stat + .bon-meter-stat::before { margin: 0 9px; color: #c6c6ca; content: "\00b7"; }
  .bon-meter-stat:last-of-type { text-align: left; }
	.bon-meter-stats .bon-meter-value { color: #55555b; font-size: 1rem; font-weight: 650; letter-spacing: -.01em; line-height: 1.2; }
	.bon-meter-stats .bon-stat-label { margin: 0; font-size: 1rem; font-weight: 400; letter-spacing: 0; line-height: 1.2; text-transform: none; white-space: nowrap; }
	.bon-meter-activity { flex-basis: 100%; width: 100%; min-height: 1.2em; margin-top: 10px; text-align: center; }
	.bon-meter-activity::before { display: none; }
	.bon-meter-activity-frame { width: 100%; min-height: 1.2em; }
	.bon-meter-activity-item { width: 100%; font-size: 1rem; line-height: 1.2; text-align: center; }
  .bon-purchase { margin-top: 32px; }
  .bon-purchase-label { margin-bottom:14px; }
  .bon-amounts { grid-template-columns: repeat(2, 1fr); }
  .bon-amount:last-child { grid-column: 1 / -1; }
  .bon-primary-button { width: 100%; min-height: 58px; margin-top: 10px; letter-spacing: .14em; }
  .bon-mobile-cta { position: fixed; right: 16px; bottom: 16px; left: 16px; z-index: 60; align-items: center; justify-content: center; gap: 12px; min-height: 58px; padding: 0 22px; border: 1px solid var(--bon-black); border-radius: 9px; background: var(--bon-black); color: #fff; cursor: pointer; font: inherit; font-size: .86rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; box-shadow: 0 14px 36px rgba(0,0,0,.2); opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity .2s ease, transform .2s ease; }
  .bon-mobile-cta.is-visible { display: inline-flex; opacity: 1; pointer-events: auto; transform: translateY(0); }
  .bon-mobile-cta:disabled { cursor: not-allowed; opacity: .45; }
	.bon-story { grid-template-columns: 1fr; gap: 36px; margin-top: 24px; padding: 36px 0 44px; }
	.bon-story-heading { padding-right: 0; }
	.bon-story h2 { max-width: 520px; font-size: clamp(2.45rem, 11vw, 3.25rem); }
	.bon-story-statements { margin-top: 26px; }
	.bon-story-statements li { grid-template-columns: 30px minmax(0,1fr);gap:10px;padding:0 0 16px; }
	.bon-story-statements li>span { margin:0;font-size:.7rem; }
	.bon-story-statements strong { font-size: .94rem; }
	.bon-story-statements small { margin-top: 2px; font-size: .78rem; }
	.bon-story-links { justify-content: flex-start; margin-top: 8px; }
	.bon-home-certificate-wrap { padding:32px 18px 14px;border-top:1px solid var(--bon-line);border-left:0; }
	.bon-home-certificate { width:min(88vw,430px);transform:rotate(-3deg); }
	.bon-voices { grid-template-columns: 1fr; gap: 34px; margin-bottom: 36px; padding: 38px 0; }
	.bon-voices-heading h2 { max-width: 500px; }
	.bon-voices-heading > a { margin-top: 20px; }
	.bon-voices-list li + li { margin-top: 30px; }
	.bon-voices-list blockquote { font-size: 1.2rem; }
	.bon-about-page { --about-width: min(calc(100% - 32px), var(--bon-max)); }
	.bon-about-hero { padding: 48px 0 58px; }
	.bon-about-hero h1 { max-width: 540px; font-size: clamp(3.1rem, 15.5vw, 4.8rem); }
	.bon-about-lead { margin-top: 26px !important; font-size: .98rem !important; }
	.bon-about-section, .bon-about-ending { grid-template-columns: 1fr; gap: 28px; padding: 46px 0 52px; }
	.bon-about-section h2, .bon-about-ending h2 { font-size: clamp(2.55rem, 12vw, 3.8rem); }
	.bon-about-copy p { font-size: .94rem; }
	.bon-about-details { grid-template-columns: 1fr; }
	.bon-about-details article, .bon-about-details article + article { padding: 46px 0 50px; border-left: 0; }
	.bon-about-details article + article { border-top: 1px solid var(--bon-line); }
	.bon-about-details h2 { font-size: clamp(2rem, 9vw, 2.8rem); }
	.bon-about-exchange > div { grid-template-columns: 1fr; gap: 8px; min-height: 0; padding: 24px 0 26px; }
	.bon-about-exchange dd { font-size: 1.75rem; }
	.bon-about-ending { margin-top: 58px; }
	.bon-about-actions { align-items: stretch; flex-direction: column; }
	.bon-about-actions a { width: 100%; min-width: 0 !important; }
	.bon-about-note { padding-bottom: 64px; }
  .bon-community { grid-template-columns: 1fr; gap: 28px; margin-top: 24px; margin-bottom: 40px; padding: 26px 0 32px; }
  .bon-community-stats { padding-right: 0; padding-bottom: 28px; border-right: 0; border-bottom: 1px solid var(--bon-line); }
  .bon-activity { padding-left: 0; }
  .bon-empty { min-height: 124px; margin-top: 14px; padding: 22px; }
  .bon-activity-row { grid-template-columns: 1.5fr .65fr 1fr; }
  .bon-activity-row span:nth-child(3), .bon-activity-row span:nth-child(4) { display: none; }
  .bon-global-stat { min-height: 128px; padding: 18px; }
  .bon-certificate { margin: 30px auto; padding: 30px 20px; }
  .bon-certificate-details { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bon-certificate-details > div:nth-child(3) { border-left: 0; border-top: 1px solid var(--bon-line); }
  .bon-certificate-details > div:nth-child(4) { border-top: 1px solid var(--bon-line); }
	.bon-home-record { grid-template-columns:1fr;padding:28px 0 40px; }
	.bon-home-record-list { padding-right:0;padding-bottom:34px; }
	.bon-home-record-list .bon-public-record-row { grid-template-columns:82px 50px minmax(0,1fr) 82px;gap:8px;min-height:34px;font-size:.9rem; }
	.bon-home-record-list .bon-public-record-row span:last-child { display:none; }
	.bon-home-together { padding:34px 0 0;border-top:1px solid var(--bon-line);border-left:0; }
	.bon-home-together p strong { font-size:clamp(2.25rem,11.5vw,3.35rem); }
	.bon-blog-page, .bon-entry-page { width: min(calc(100% - 32px), var(--bon-max)); }
	.bon-blog-hero { align-items: flex-start; flex-direction: column; gap: 22px; padding: 38px 0 24px; }
	.bon-blog-hero h1 { font-size: clamp(2.5rem, 12vw, 3.65rem); }
	.bon-blog-series { justify-content: flex-start; }
	.bon-blog-series a { min-height: 40px; padding: 0 12px; font-size: .75rem; }
	.bon-blog-card { grid-template-columns: 1fr; gap: 18px; padding: 36px 0 40px; }
	.bon-blog-card-meta { flex-direction: row; gap: 15px !important; }
	.bon-blog-card > .wp-block-post-featured-image { grid-column: 1; grid-row: auto; }
	.bon-blog-card-meta, .bon-blog-card > .wp-block-post-title, .bon-blog-card > .wp-block-post-excerpt { grid-column: 1; }
	.bon-blog-card > .wp-block-post-title { font-size: clamp(2.25rem, 11vw, 3.35rem); }
	.bon-entry-page { padding: 54px 0 76px; }
	.bon-entry-meta { margin-bottom: 22px; }
	.bon-entry > .wp-block-post-title { font-size: clamp(3.35rem, 15vw, 5.1rem); }
	.bon-entry > .wp-block-post-featured-image { margin: 38px 0 48px; }
	.bon-entry > .wp-block-post-content { margin-top: 46px; }
	.bon-entry > .wp-block-post-content p, .bon-entry > .wp-block-post-content li { font-size: 1.02rem; line-height: 1.75; }
	.bon-blog-cta { margin-top: 54px; padding: 30px 24px 32px; }
	.bon-blog-cta h2 { font-size: clamp(2.45rem, 12.5vw, 3.45rem); }
	.bon-blog-cta-actions { align-items: stretch; flex-direction: column; }
	.bon-blog-cta-actions a { width: 100%; }
	.bon-entry-footer { grid-template-columns: 1fr; }
	.bon-entry-footer .wp-block-post-navigation-link:last-child { text-align: left; }
	.bon-404-shell { min-height: 0; width: min(calc(100% - 32px), var(--bon-max)); padding: 72px 0 76px; }
	.bon-404-code { top: 26px; font-size: clamp(9.5rem, 52vw, 13rem); }
	.bon-404-content h1 { font-size: clamp(3rem, 14.6vw, 4.35rem); }
	.bon-404-intro { margin-top: 23px; font-size: .94rem; }
	.bon-404-meter { margin-top: 23px; }
	.bon-404-purchase { margin-top: 24px; }
	.bon-404-trust { gap: 4px 6px; padding: 0 12px; font-size: .72rem; }
	.bon-record-page { --record-width: min(calc(100% - 32px), var(--bon-max)); }
	.bon-record-hero { padding: 42px 0 54px; text-align: left; }
	.bon-record-hero h1 { margin: 0; font-size: clamp(3.2rem, 15.5vw, 5rem); }
	.bon-record-hero > p:not(.bon-record-kicker) { margin: 22px 0 0; font-size: .94rem; }
	.bon-record-totals { justify-content: flex-start; flex-wrap: wrap; row-gap: 7px; margin-top: 26px; }
	.bon-record-totals span + span::before { margin: 0 9px; }
	.bon-record-wall { padding: 40px 0 52px; }
	.bon-record-heading, .bon-record-section-title { grid-template-columns: 1fr; gap: 20px; margin-bottom: 28px; }
	.bon-record-heading .bon-record-kicker, .bon-record-section-title .bon-record-kicker { grid-column: 1; margin-bottom: -4px !important; }
	.bon-record-heading h2, .bon-record-section-title h2 { grid-column: 1; font-size: clamp(2.5rem, 12vw, 3.7rem); }
	.bon-gap-area { grid-template-columns: 1fr; min-height: 0; }
	.bon-nothing-orb { width: min(360px, 78vw); margin: 42px auto; }
	.bon-gap-detail { min-height: 250px; border-top: 1px solid var(--bon-line); border-left: 0; }
	.bon-record-milestones, .bon-record-largest, .bon-record-roll { padding: 48px 0 58px; }
	.bon-record-milestone { grid-template-columns: 68px minmax(0, 1fr); gap: 18px; min-height: 106px; }
	.bon-record-milestone > span { grid-column: 2; margin-top: -16px; }
	.bon-record-milestone > strong { font-size: 2rem; }
	.bon-record-largest .bon-record-section-title { grid-template-columns: 1fr; }
	.bon-record-largest .bon-record-section-title h2, .bon-record-largest .bon-record-section-title > p:last-child { grid-column: 1; }
	.bon-largest-list li { grid-template-columns: 38px minmax(0, 1fr) auto; gap: 12px; min-height: 72px; }
	.bon-largest-country, .bon-largest-share { display: none; }
	.bon-roll-list .bon-roll-row { grid-template-columns: 92px minmax(0, 1fr) auto; gap: 10px; min-height: 72px; }
	.bon-roll-list .bon-roll-row > span:nth-child(3), .bon-roll-list .bon-roll-row > span:nth-child(4) { display: none; }
	.bon-roll-list .bon-roll-money { text-align: right; }
	.bon-roll-pagination { grid-template-columns: 1fr 1fr; padding-top: 14px; }
	.bon-roll-pagination > span:not(:empty) { grid-column: 1 / -1; grid-row: 1; text-align: center; }
  .bon-footer { align-items: flex-start; flex-direction: column; gap: 18px; padding: 18px 0 28px; }
  .bon-footer-links { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 12px 18px; font-size: .9rem; }
}

@media (max-width: 375px) {
  .bon-brand { font-size: 1.12rem; }
  .bon-nav-cta { padding: 0 11px; font-size: .72rem; }
  .bon-hero h1 { font-size: 4.5rem; }
  .bon-footer-links { display: flex; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
