/* Build Something Design System v1 — homepage conversion */
.bs-home-v1 {
  --bs-paper: var(--paper);
  --bs-paper-deep: #ebe3d5;
  --bs-paper-light: var(--paper-raised);
  --bs-ink: var(--ink);
  --bs-gold: var(--gold);
  --bs-gold-dark: var(--gold-dark);
  --bs-gold-light: var(--gold-soft);
  --bs-blue: var(--blue);
  --bs-rule: var(--line-soft);
  --bs-rule-strong: var(--line);
  --bs-sans: var(--font-interface);
  --bs-serif: var(--font-editorial);
  --bs-radius: var(--radius);
  --bs-content-wide: var(--page-max);
  --bs-space-4: var(--space-4);
  --bs-space-6: var(--space-6);
  --bs-space-7: var(--space-7);
  --yellow: var(--bs-gold);
  background: var(--bs-paper);
  color: var(--bs-ink);
  font-family: var(--bs-sans);
}

.bs-home-v1 .masthead {
  min-height: 76px;
  padding-inline: clamp(20px, 4vw, 64px);
  border-color: var(--bs-rule);
  background: color-mix(in srgb, var(--bs-paper) 94%, transparent);
  box-shadow: none;
}

.bs-home-v1 .wordmark-mark {
  background: var(--bs-ink);
}

.bs-home-v1 .wordmark-mark::after {
  background: var(--bs-gold);
}

.bs-home-v1 .constitution-link,
.bs-home-v1 .more-menu summary {
  border-bottom-color: transparent;
  color: var(--bs-blue);
  text-underline-offset: 5px;
}

.bs-home-v1 .constitution-link:hover,
.bs-home-v1 .more-menu summary:hover {
  border-bottom-color: currentColor;
}

.bs-home-v1 .more-panel {
  border-color: var(--bs-rule-strong);
  border-radius: var(--bs-radius);
  background: var(--bs-paper);
  box-shadow: 8px 8px 0 color-mix(in srgb, var(--bs-ink) 10%, transparent);
}

.bs-home-v1 .more-panel a:hover {
  background: var(--bs-blue);
  color: #fff;
}

.bs-home-v1 .hero {
  min-height: min(860px, calc(100svh - 76px));
  padding: clamp(96px, 12vw, 168px) clamp(22px, 7vw, 110px);
  border-bottom-color: var(--bs-rule);
  background: var(--bs-paper);
}

.bs-home-v1 .hero::before {
  width: min(38vw, 560px);
  right: -8vw;
  border-width: clamp(20px, 3vw, 46px);
  border-color: color-mix(in srgb, var(--bs-gold) 82%, var(--bs-paper));
  opacity: .92;
}

.bs-home-v1 .hero-kicker {
  margin-bottom: var(--bs-space-4);
  color: var(--bs-gold-dark);
}

.bs-home-v1 .hero h1 {
  max-width: 9.5ch;
  font-family: var(--bs-sans);
  font-size: clamp(4rem, 10vw, 9rem);
  line-height: .88;
  letter-spacing: -.055em;
}

.bs-home-v1 .hero-action {
  max-width: 28ch;
  margin-top: var(--bs-space-6);
  font-family: var(--bs-serif);
  font-size: clamp(1.4rem, 2.3vw, 2rem);
  line-height: 1.3;
}

.bs-home-v1 .hero-arrow {
  width: 52px;
  height: 52px;
  margin-top: var(--bs-space-6);
  border-color: var(--bs-rule-strong);
  border-radius: var(--bs-radius);
  background: var(--bs-gold);
}

.bs-home-v1 .hero-arrow:hover {
  background: var(--bs-gold-dark);
  color: #fff;
}

.bs-home-v1 .ecosystem {
  padding: clamp(56px, 7vw, 104px) clamp(20px, 4vw, 64px);
  background: var(--bs-paper-deep);
}

.bs-home-v1 .property-grid {
  max-width: var(--bs-content-wide);
  gap: clamp(24px, 3vw, 40px);
}

.bs-home-v1 .property {
  --panel: 255, 253, 248;
  --copy: var(--bs-ink);
  min-height: 620px;
  border: 1px solid var(--bs-rule);
  border-top: 5px solid var(--bs-gold);
  border-radius: var(--bs-radius);
  background: var(--bs-paper-light);
  box-shadow: none;
}

.bs-home-v1 .property:nth-child(even) {
  border-top-color: var(--bs-blue);
}

.bs-home-v1 .property::after {
  background: linear-gradient(to bottom, transparent, rgba(255, 253, 248, .94) 18%, var(--bs-paper-light) 42%);
}

.bs-home-v1 .property-image {
  filter: saturate(.82) contrast(.96);
}

.bs-home-v1 .property-status {
  padding: 8px 11px;
  border-color: var(--bs-rule-strong);
  border-radius: var(--bs-radius);
  background: color-mix(in srgb, var(--bs-paper-light) 92%, transparent);
  color: var(--bs-ink);
}

.bs-home-v1 .property-copy {
  padding: clamp(28px, 3.2vw, 48px);
}

.bs-home-v1 .domain {
  font-family: var(--bs-sans);
  font-weight: 700;
  letter-spacing: -.065em;
}

.bs-home-v1 .domain-suffix {
  opacity: .5;
}

.bs-home-v1 .property-description,
.bs-home-v1 .property-support {
  max-width: 36ch;
  font-size: clamp(1.05rem, 1.35vw, 1.25rem);
  line-height: 1.5;
}

.bs-home-v1 .property-link {
  color: var(--bs-blue);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}

.bs-home-v1 .learn-more {
  padding: clamp(96px, 11vw, 152px) clamp(20px, 4vw, 64px);
  background: var(--bs-paper);
}

.bs-home-v1 .learn-more-inner {
  max-width: var(--bs-content-wide);
}

.bs-home-v1 .learn-more-head {
  padding-bottom: var(--bs-space-7);
  border-bottom-color: var(--bs-rule-strong);
}

.bs-home-v1 .learn-more-head h2,
.bs-home-v1 .whole-thing-feature h3,
.bs-home-v1 .resource h3,
.bs-home-v1 .footer-statement {
  font-family: var(--bs-serif);
  font-weight: 650;
  letter-spacing: -.045em;
}

.bs-home-v1 .learn-more-head h2 {
  font-size: clamp(3rem, 6vw, 5.8rem);
  line-height: .95;
}

.bs-home-v1 .whole-thing-feature {
  margin-block: var(--bs-space-7);
  border-color: var(--bs-rule-strong);
  border-radius: var(--bs-radius);
  background: var(--bs-ink);
}

.bs-home-v1 .whole-thing-feature-label {
  color: var(--bs-gold-light);
}

.bs-home-v1 .whole-thing-feature-links a {
  border-radius: var(--bs-radius);
}

.bs-home-v1 .whole-thing-feature-links a:first-child {
  border-color: var(--bs-gold);
  background: var(--bs-gold);
}

.bs-home-v1 .video-play {
  border-radius: var(--bs-radius);
  background: var(--bs-gold);
}

.bs-home-v1 .resource-grid {
  gap: clamp(24px, 3vw, 40px);
}

.bs-home-v1 .resource {
  --resource-panel: 255, 253, 248;
  --resource-copy: var(--bs-ink);
  border: 1px solid var(--bs-rule);
  border-top: 5px solid var(--bs-gold);
  border-radius: var(--bs-radius);
  background: var(--bs-paper-light);
}

.bs-home-v1 .resource:nth-child(even) {
  --resource-panel: 255, 253, 248;
  border-top-color: var(--bs-blue);
}

.bs-home-v1 .resource:nth-child(3) {
  --resource-panel: 255, 253, 248;
  --resource-copy: var(--bs-ink);
}

.bs-home-v1 .resource::after {
  background: linear-gradient(to bottom, transparent, rgba(255, 253, 248, .95) 20%, var(--bs-paper-light) 48%);
}

.bs-home-v1 .resource-type {
  border: 1px solid var(--bs-rule-strong);
  border-radius: var(--bs-radius);
  background: color-mix(in srgb, var(--bs-paper-light) 92%, transparent);
}

.bs-home-v1 .resource-action {
  color: var(--bs-blue);
}

.bs-home-v1 .footer {
  min-height: 44svh;
  padding: clamp(96px, 11vw, 152px) clamp(22px, 6vw, 96px);
  background: var(--bs-ink);
  color: var(--bs-paper);
}

.bs-home-v1 .footer-links a {
  color: var(--bs-gold-light);
}

@media (max-width: 900px) {
  .bs-home-v1 .property-grid,
  .bs-home-v1 .resource-grid,
  .bs-home-v1 .whole-thing-feature {
    grid-template-columns: 1fr;
  }

  .bs-home-v1 .property,
  .bs-home-v1 .resource {
    min-height: 560px;
  }
}

@media (max-width: 620px) {
  .bs-home-v1 .masthead {
    min-height: 64px;
  }

  .bs-home-v1 .hero {
    min-height: calc(100svh - 64px);
    padding: 88px 20px 72px;
  }

  .bs-home-v1 .hero::before {
    width: 72vw;
    right: -40vw;
    top: 31%;
  }

  .bs-home-v1 .hero h1 {
    font-size: clamp(3.45rem, 15vw, 5.5rem);
  }

  .bs-home-v1 .ecosystem,
  .bs-home-v1 .learn-more {
    padding-inline: 16px;
  }

  .bs-home-v1 .property-grid,
  .bs-home-v1 .resource-grid {
    gap: 24px;
  }

  .bs-home-v1 .property,
  .bs-home-v1 .resource,
  .bs-home-v1 .whole-thing-feature {
    border-radius: var(--bs-radius);
  }
}
