
:root {
  --forest-950: #102f2a;
  --forest-900: #173d36;
  --forest-800: #245247;
  --forest-700: #315f58;
  --forest-500: #5c8177;
  --sage-200: #dce8df;
  --sage-100: #edf3ee;
  --grain-700: #985e25;
  --grain-600: #ae6b2f;
  --grain-500: #c4863e;
  --grain-200: #ead2ad;
  --grain-100: #f5e9d6;
  --paper: #fffdf7;
  --paper-deep: #f7f1e7;
  --white: #ffffff;
  --ink: #172521;
  --muted: #5d6d67;
  --line: #d5d9d2;
  --danger: #7e3e31;
  --shadow-sm: 0 1px 0 rgba(16,47,42,.08), 0 8px 20px rgba(16,47,42,.06);
  --shadow-md: 0 2px 0 rgba(16,47,42,.09), 0 18px 50px rgba(16,47,42,.10);
  --radius-sm: .75rem;
  --radius-md: 1.25rem;
  --radius-lg: 2rem;
  --radius-pill: 999px;
  --container: 76rem;
  --reading: 46rem;
  --space-1: .375rem;
  --space-2: .75rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: 2rem;
  --space-6: 3rem;
  --space-7: 4.5rem;
  --space-8: 7rem;
  --font-display: Georgia, 'Times New Roman', serif;
  --font-body: Arial, Helvetica, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 8% 0%, rgba(234,210,173,.42), transparent 24rem),
    radial-gradient(circle at 94% 28%, rgba(220,232,223,.60), transparent 31rem),
    var(--paper);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .055;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
  z-index: 100;
}
img { display: block; max-width: 100%; }
a { color: var(--forest-800); text-decoration-thickness: .08em; text-underline-offset: .22em; }
a:hover { color: var(--forest-950); }
button, input, textarea, select { font: inherit; }
:focus-visible { outline: 3px solid var(--grain-500); outline-offset: 4px; }
.skip-link { position: fixed; top: .5rem; left: .5rem; z-index: 999; transform: translateY(-150%); padding: .7rem 1rem; border-radius: .5rem; background: var(--forest-950); color: white; }
.skip-link:focus { transform: none; }
.visually-hidden { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; white-space:nowrap !important; border:0 !important; }

.container { width: min(calc(100% - 2rem), var(--container)); margin-inline: auto; }
.reading { width: min(100%, var(--reading)); }
.section { padding-block: clamp(4rem, 8vw, var(--space-8)); position: relative; }
.section.compact { padding-block: clamp(2.8rem, 5vw, 4.75rem); }
.section.soft { background: linear-gradient(180deg, rgba(237,243,238,.78), rgba(247,241,231,.72)); border-block: 1px solid rgba(49,95,88,.10); }
.section.dark { background: var(--forest-900); color: var(--paper); overflow: hidden; }
.section.dark::after { content:''; position:absolute; width:30rem; height:30rem; right:-12rem; top:-12rem; border: 1px solid rgba(255,255,255,.13); border-radius:50%; box-shadow: 0 0 0 4rem rgba(255,255,255,.025), 0 0 0 8rem rgba(255,255,255,.025); }
.section.dark a { color: white; }

h1,h2,h3,h4 { font-family: var(--font-display); font-weight: 500; line-height: 1.08; letter-spacing: -.025em; margin: 0 0 .65em; color: var(--forest-950); text-wrap: balance; }
h1 { font-size: clamp(2.65rem, 6.6vw, 5.55rem); max-width: 13ch; }
h2 { font-size: clamp(2.1rem, 4.5vw, 3.75rem); max-width: 17ch; }
h3 { font-size: clamp(1.35rem, 2.4vw, 1.9rem); }
.section.dark h1,.section.dark h2,.section.dark h3 { color: var(--paper); }
p { margin: 0 0 1.15rem; }
.lede { font-size: clamp(1.12rem, 1.8vw, 1.38rem); line-height: 1.55; color: #344842; max-width: 48rem; }
.section.dark .lede { color: rgba(255,253,247,.82); }
.eyebrow { display: inline-flex; align-items: center; gap: .55rem; margin: 0 0 1rem; color: var(--grain-700); font-weight: 700; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; }
.eyebrow::before { content:''; width: 1.9rem; height: 1px; background: currentColor; }
.section.dark .eyebrow { color: var(--grain-200); }
.muted { color: var(--muted); }
.small { font-size: .88rem; }

.site-header { position: sticky; top: 0; z-index: 80; background: rgba(255,253,247,.90); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(49,95,88,.12); }
.header-inner { width: min(calc(100% - 2rem), var(--container)); min-height: 5.1rem; margin-inline:auto; display:grid; grid-template-columns: auto 1fr auto; align-items:center; gap: 1.25rem; }
.brand { display:flex; align-items:center; width: 10.7rem; color: var(--forest-900); text-decoration:none; }
.brand img { width: 100%; height: auto; }
.desktop-nav { display:flex; justify-content:center; gap: clamp(.45rem, 1.8vw, 1.45rem); }
.desktop-nav a { color: var(--ink); text-decoration:none; font-size:.95rem; padding:.6rem .2rem; border-bottom:2px solid transparent; }
.desktop-nav a:hover { color: var(--forest-800); border-color: var(--grain-500); }
.desktop-nav a[aria-current='page'] { color: var(--forest-900); border-color: var(--forest-700); font-weight:700; }
.header-actions { display:flex; align-items:center; gap:.6rem; }
.menu-button { display:none; width: 2.9rem; height:2.9rem; border:1px solid var(--line); border-radius: 50%; background:var(--paper); color:var(--forest-900); cursor:pointer; place-items:center; }
.menu-button svg { width:1.25rem; }
.mobile-sheet { display:none; }

.button { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-height:3rem; padding:.75rem 1.15rem; border:1px solid var(--forest-900); border-radius: var(--radius-pill); background:var(--forest-900); color:white; text-decoration:none; font-weight:700; line-height:1.1; box-shadow: 0 3px 0 var(--forest-950); transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover { color:white; background:var(--forest-800); transform: translateY(-2px); box-shadow: 0 5px 0 var(--forest-950); }
.button:active { transform:translateY(1px); box-shadow:0 1px 0 var(--forest-950); }
.button.secondary { background:transparent; color:var(--forest-900); box-shadow: 0 3px 0 rgba(23,61,54,.25); }
.button.secondary:hover { color:var(--forest-950); background:var(--sage-100); }
.button.light { background:var(--paper); color:var(--forest-950); border-color:var(--paper); box-shadow:0 3px 0 rgba(0,0,0,.22); }
.button.light:hover { color:var(--forest-950); background:white; }
.text-link { font-weight:700; text-decoration:none; display:inline-flex; align-items:center; gap:.4rem; }
.text-link::after { content:'→'; transition: transform .18s ease; }
.text-link:hover::after { transform:translateX(.25rem); }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap: .8rem; margin-top:1.7rem; }

.hero { padding-block: clamp(2.5rem, 7vw, 6.5rem); overflow:hidden; }
.hero-grid { display:grid; grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr); gap: clamp(2rem, 6vw, 6rem); align-items:center; }
.hero-copy { position:relative; z-index:2; }
.hero-copy::before { content:''; position:absolute; width:4rem; height:4rem; border:1px solid var(--grain-500); border-radius:50%; left:-1.8rem; top:-1rem; opacity:.35; }
.hero-media { position:relative; min-height: clamp(24rem, 43vw, 38rem); }
.hero-media .main-image { position:absolute; inset: 0 1.5rem 1.4rem 0; width:calc(100% - 1.5rem); height:calc(100% - 1.4rem); object-fit:cover; border-radius: 48% 48% 1.8rem 1.8rem / 35% 35% 1.8rem 1.8rem; box-shadow:var(--shadow-md); }
.hero-media .seal { position:absolute; right:0; bottom:0; width:8.5rem; height:8.5rem; border-radius:50%; display:grid; place-items:center; padding:1rem; background:var(--grain-100); border:1px solid var(--grain-200); box-shadow:var(--shadow-sm); color:var(--forest-900); text-align:center; font-size:.78rem; font-weight:700; line-height:1.3; transform:rotate(5deg); }
.hero-media .grain-lines { position:absolute; inset:-1.5rem -1.5rem auto auto; width:11rem; height:11rem; opacity:.75; }

.section-head { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:2.2rem; }
.section-head > p { max-width: 36rem; color:var(--muted); margin:0; }
.grid { display:grid; gap:1.25rem; }
.grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.grid.four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.split { display:grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, .92fr); gap:clamp(2rem,6vw,5.5rem); align-items:center; }
.split.reverse > :first-child { order:2; }

.card { background:rgba(255,255,255,.76); border:1px solid rgba(49,95,88,.15); border-radius:var(--radius-md); padding:clamp(1.2rem,2.5vw,2rem); box-shadow:var(--shadow-sm); }
.card.lift { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.card.lift:hover { transform:translateY(-4px) rotate(-.15deg); box-shadow:var(--shadow-md); border-color:rgba(49,95,88,.28); }
.card .number { font-family:var(--font-display); font-size:2.65rem; color:var(--grain-600); line-height:1; margin-bottom:1.5rem; }
.card-icon { width:3.1rem; height:3.1rem; border-radius:50%; display:grid; place-items:center; background:var(--grain-100); color:var(--grain-700); margin-bottom:1.4rem; }
.card-icon svg { width:1.5rem; height:1.5rem; }

.media-frame { position:relative; overflow:hidden; border-radius:var(--radius-lg); box-shadow:var(--shadow-md); background:var(--sage-100); }
.media-frame img { width:100%; height:100%; object-fit:cover; }
.media-frame.landscape { aspect-ratio:16/10; }
.media-frame.square { aspect-ratio:1/1; }
.media-frame.portrait { aspect-ratio:3/4; }
.media-caption { position:absolute; left:1rem; bottom:1rem; max-width:calc(100% - 2rem); padding:.55rem .8rem; border-radius:var(--radius-pill); background:rgba(255,253,247,.88); backdrop-filter:blur(8px); color:var(--forest-950); font-size:.78rem; font-weight:700; box-shadow:var(--shadow-sm); }

.value-grid .card { min-height: 100%; }
.value-grid h3 { max-width:12ch; }

.shop-band { position:relative; overflow:hidden; border-radius:var(--radius-lg); background:var(--forest-900); color:var(--paper); padding:clamp(1.5rem,5vw,4rem); box-shadow:var(--shadow-md); }
.shop-band h2,.shop-band h3 { color:var(--paper); }
.shop-band p { color:rgba(255,253,247,.82); }
.shop-band .eyebrow { color:var(--grain-200); }
.shop-band::after { content:''; position:absolute; width:24rem; height:24rem; border:1px solid rgba(234,210,173,.30); border-radius:50%; right:-8rem; bottom:-12rem; box-shadow:0 0 0 3.5rem rgba(234,210,173,.04),0 0 0 7rem rgba(234,210,173,.035); }
.shop-band-grid { display:grid; grid-template-columns: minmax(0,1fr) minmax(18rem,.9fr); gap:clamp(2rem,5vw,5rem); align-items:center; position:relative; z-index:1; }
.shop-collage { display:grid; grid-template-columns:1.15fr .85fr; gap:.7rem; transform:rotate(1deg); }
.shop-collage img { width:100%; height:100%; object-fit:cover; border-radius:1rem; border:4px solid rgba(255,253,247,.88); }
.shop-collage img:first-child { grid-row:span 2; min-height:21rem; }

.business-teaser { display:grid; grid-template-columns: 1fr 1.15fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.business-collage { display:grid; grid-template-columns:repeat(6,1fr); grid-template-rows:repeat(8,3.2rem); gap:.65rem; position:relative; }
.business-collage figure { margin:0; overflow:hidden; border-radius:1rem; box-shadow:var(--shadow-sm); border:3px solid rgba(255,253,247,.9); }
.business-collage img { width:100%; height:100%; object-fit:cover; }
.business-collage .b1 { grid-column:1/4; grid-row:1/5; transform:rotate(-1.5deg); }
.business-collage .b2 { grid-column:4/7; grid-row:2/6; transform:rotate(1.7deg); }
.business-collage .b3 { grid-column:2/5; grid-row:5/9; transform:rotate(.8deg); }
.business-collage .b4 { grid-column:5/7; grid-row:6/9; transform:rotate(-2deg); }
.business-collage::after { content:''; position:absolute; inset:8% 4% 5% 9%; border:1px dashed rgba(174,107,47,.55); border-radius:50%; z-index:-1; }

.chips { display:flex; flex-wrap:wrap; gap:.55rem; margin:1rem 0 0; }
.chip { display:inline-flex; align-items:center; min-height:2.2rem; padding:.38rem .75rem; border-radius:var(--radius-pill); background:var(--sage-100); color:var(--forest-900); border:1px solid rgba(49,95,88,.13); font-size:.82rem; font-weight:700; }
.chip.grain { background:var(--grain-100); border-color:var(--grain-200); color:var(--grain-700); }

.membership { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.membership .card { position:relative; overflow:hidden; }
.membership .card.featured { border-color:var(--forest-700); background:linear-gradient(145deg, var(--forest-900), var(--forest-800)); color:white; }
.membership .card.featured h3 { color:white; }
.membership .card.featured .muted { color:rgba(255,255,255,.76); }
.price { font-family:var(--font-display); font-size:clamp(2.4rem,4vw,3.5rem); color:var(--forest-900); line-height:1; margin:1.25rem 0; }
.featured .price { color:var(--grain-200); }

.quote { margin:0; font-family:var(--font-display); font-size:clamp(1.55rem,3.1vw,2.5rem); line-height:1.35; color:var(--forest-900); }
.quote::before { content:'“'; display:block; color:var(--grain-500); font-size:4rem; line-height:.6; }
.quote cite { display:block; margin-top:1rem; font-family:var(--font-body); font-size:.9rem; color:var(--muted); font-style:normal; font-weight:700; }

.facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; }
.fact { border-top:3px solid var(--grain-500); padding:1rem 1rem 0; }
.fact strong { display:block; color:var(--forest-900); margin-bottom:.3rem; }

.steps { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.9rem; counter-reset:step; }
.steps li { counter-increment:step; position:relative; padding:4rem 1rem 1.2rem; background:rgba(255,255,255,.72); border:1px solid rgba(49,95,88,.14); border-radius:var(--radius-md); }
.steps li::before { content:counter(step, decimal-leading-zero); position:absolute; top:1rem; left:1rem; font-family:var(--font-display); font-size:1.85rem; line-height:1; color:var(--grain-600); }
.steps strong { display:block; color:var(--forest-900); margin-bottom:.35rem; }

/* Unified businesses page */
.business-hero { padding-block:clamp(3rem,7vw,7rem); }
.business-hero-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(28rem,1.15fr); gap:clamp(2rem,6vw,6rem); align-items:center; }
.business-map { position:relative; min-height:38rem; }
.business-map .path { position:absolute; inset:3% 9% 7% 4%; width:87%; height:90%; overflow:visible; }
.business-map .photo { position:absolute; overflow:hidden; border-radius:50%; border:5px solid var(--paper); box-shadow:var(--shadow-md); background:var(--sage-100); }
.business-map .photo img { width:100%; height:100%; object-fit:cover; }
.business-map .p1 { width:15rem; height:15rem; left:1%; top:4%; }
.business-map .p2 { width:12rem; height:12rem; right:6%; top:1%; }
.business-map .p3 { width:14rem; height:14rem; left:25%; bottom:2%; }
.business-map .p4 { width:10.5rem; height:10.5rem; right:0; bottom:7%; }
.business-map .label { position:absolute; padding:.5rem .7rem; border-radius:var(--radius-pill); background:var(--paper); color:var(--forest-900); box-shadow:var(--shadow-sm); font-size:.76rem; font-weight:700; border:1px solid var(--line); }
.business-map .l1 { left:2%; top:42%; }
.business-map .l2 { right:1%; top:34%; }
.business-map .l3 { left:29%; bottom:0; }
.business-map .l4 { right:4%; bottom:2%; }

.business-list { position:relative; }
.business-list::before { content:''; position:absolute; left:50%; top:0; bottom:0; width:1px; background:linear-gradient(var(--grain-200), var(--forest-500), var(--grain-200)); }
.business-row { display:grid; grid-template-columns:1fr 4rem 1fr; align-items:center; margin-bottom:clamp(3rem,7vw,6rem); position:relative; }
.business-row .business-dot { grid-column:2; width:1.3rem; height:1.3rem; border-radius:50%; margin:auto; background:var(--grain-500); border:4px solid var(--paper); box-shadow:0 0 0 1px var(--grain-500); z-index:2; }
.business-row .business-copy { padding:clamp(1rem,3vw,2rem); }
.business-row .business-media { aspect-ratio:4/3; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-md); }
.business-row .business-media img { width:100%; height:100%; object-fit:cover; }
.business-row:nth-child(odd) .business-media { grid-column:1; grid-row:1; transform:rotate(-.6deg); }
.business-row:nth-child(odd) .business-copy { grid-column:3; grid-row:1; }
.business-row:nth-child(even) .business-copy { grid-column:1; grid-row:1; text-align:right; }
.business-row:nth-child(even) .chips { justify-content:flex-end; }
.business-row:nth-child(even) .business-media { grid-column:3; grid-row:1; transform:rotate(.6deg); }
.business-category { font-weight:700; color:var(--grain-700); font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; }

.people-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.person { padding:0; overflow:hidden; }
.person img { width:100%; aspect-ratio:4/3; object-fit:cover; filter:grayscale(1); }
.person .person-body { padding:1.1rem; }
.person .role { color:var(--grain-700); font-size:.8rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }

.org-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; align-items:stretch; }
.org-flow .card { position:relative; }
.org-flow .card:not(:last-child)::after { content:'→'; position:absolute; right:-.8rem; top:50%; transform:translateY(-50%); width:1.6rem; height:1.6rem; border-radius:50%; display:grid; place-items:center; background:var(--grain-100); color:var(--grain-700); z-index:2; }

.form-layout { display:grid; grid-template-columns:minmax(0,.72fr) minmax(24rem,1.28fr); gap:clamp(2rem,6vw,6rem); align-items:start; }
.form-card { background:white; border:1px solid var(--line); border-radius:var(--radius-lg); padding:clamp(1.3rem,4vw,3rem); box-shadow:var(--shadow-md); }
.form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.field { display:grid; gap:.4rem; }
.field.full { grid-column:1/-1; }
label { font-weight:700; color:var(--forest-900); }
input,select,textarea { width:100%; border:1px solid #aebbb5; border-radius:.7rem; background:var(--paper); padding:.8rem .9rem; color:var(--ink); }
textarea { min-height:10rem; resize:vertical; }
.help { font-size:.82rem; color:var(--muted); }

.site-footer { background:var(--forest-950); color:rgba(255,253,247,.80); padding-block:4rem 2rem; }
.footer-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:3rem; }
.footer-brand { width:11rem; filter:brightness(0) invert(1); opacity:.95; margin-bottom:1rem; }
.footer-nav { display:grid; gap:.6rem; }
.footer-nav a { color:rgba(255,253,247,.84); text-decoration:none; }
.footer-nav a:hover { color:white; }
.footer-bottom { display:flex; justify-content:space-between; gap:2rem; border-top:1px solid rgba(255,255,255,.16); padding-top:1.5rem; margin-top:3rem; font-size:.82rem; }

.style-swatch { height:8rem; border-radius:1rem; padding:1rem; display:flex; align-items:end; font-weight:700; }
.token-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; }
.component-showcase { display:grid; gap:2.5rem; }
.state-row { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; }

@media (max-width: 64rem) {
  .desktop-nav { display:none; }
  .header-inner { grid-template-columns:auto 1fr auto; }
  .header-actions .button { display:none; }
  .menu-button { display:grid; }
  .mobile-sheet { display:block; position:absolute; top:100%; left:0; right:0; background:var(--paper); border-bottom:1px solid var(--line); box-shadow:var(--shadow-md); transform-origin:top; transform:scaleY(0); opacity:0; pointer-events:none; transition:transform .2s ease, opacity .2s ease; }
  .mobile-sheet[data-open='true'] { transform:scaleY(1); opacity:1; pointer-events:auto; }
  .mobile-sheet nav { width:min(calc(100% - 2rem), var(--container)); margin:auto; padding:1rem 0 1.5rem; display:grid; }
  .mobile-sheet a { padding:1rem .2rem; border-bottom:1px solid var(--line); text-decoration:none; color:var(--ink); font-size:1.1rem; }
  .mobile-sheet .mobile-cta { margin-top:1rem; color:white; border-bottom:1px solid var(--forest-900); }
  .mobile-sheet .mobile-cta:hover { color:white; }
  .hero-grid,.business-hero-grid { grid-template-columns:1fr; }
  .hero-media { min-height:31rem; }
  .business-hero-grid .business-map { max-width:42rem; width:100%; margin-inline:auto; }
  .grid.four,.people-grid { grid-template-columns:repeat(2,1fr); }
  .steps { grid-template-columns:repeat(2,1fr); }
  .steps li:last-child { grid-column:1/-1; }
  .facts { grid-template-columns:repeat(2,1fr); }
  .org-flow { grid-template-columns:repeat(2,1fr); }
  .org-flow .card::after { display:none !important; }
  .token-grid { grid-template-columns:repeat(3,1fr); }
}

@media (max-width: 48rem) {
  :root { --space-8:5rem; }
  .header-inner { min-height:4.4rem; }
  .brand { width:8.8rem; }
  h1 { font-size:clamp(2.45rem,12vw,4rem); }
  h2 { font-size:clamp(2rem,10vw,3rem); }
  .section-head { display:block; }
  .section-head > p { margin-top:1rem; }
  .hero { padding-top:2.2rem; }
  .hero-media { min-height:24rem; }
  .hero-media .main-image { inset:0 .8rem .8rem 0; width:calc(100% - .8rem); height:calc(100% - .8rem); }
  .hero-media .seal { width:6.8rem; height:6.8rem; padding:.7rem; font-size:.67rem; }
  .grid.two,.grid.three,.grid.four,.split,.business-teaser,.shop-band-grid,.membership,.form-layout { grid-template-columns:1fr; }
  .split.reverse > :first-child { order:0; }
  .shop-collage img:first-child { min-height:16rem; }
  .business-collage { grid-template-rows:repeat(8,2.3rem); }
  .facts,.people-grid,.org-flow,.form-grid,.token-grid { grid-template-columns:1fr; }
  .steps { grid-template-columns:1fr; }
  .steps li:last-child { grid-column:auto; }
  .business-map { min-height:27rem; }
  .business-map .p1 { width:10.5rem;height:10.5rem; }
  .business-map .p2 { width:8.5rem;height:8.5rem; }
  .business-map .p3 { width:10rem;height:10rem; }
  .business-map .p4 { width:7.6rem;height:7.6rem; }
  .business-map .label { font-size:.66rem; }
  .business-list::before { left:1rem; }
  .business-row { grid-template-columns:2rem 1fr; gap:.8rem; margin-bottom:4rem; }
  .business-row .business-dot { grid-column:1; grid-row:1; margin:2rem auto auto; }
  .business-row .business-media,.business-row:nth-child(odd) .business-media,.business-row:nth-child(even) .business-media { grid-column:2; grid-row:1; transform:none; }
  .business-row .business-copy,.business-row:nth-child(odd) .business-copy,.business-row:nth-child(even) .business-copy { grid-column:2; grid-row:2; text-align:left; padding:1rem 0 0; }
  .business-row:nth-child(even) .chips { justify-content:flex-start; }
  .footer-grid { grid-template-columns:1fr; gap:2rem; }
  .footer-bottom { display:block; }
  .actions .button { width:100%; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.001ms !important; animation-duration:.001ms !important; }
}
