/**
 * Copyright 2026 Bitwise Media Group Ltd
 * SPDX-License-Identifier: MIT
 */

/* ============================================================
   BitWise Media Group — warm "terracotta" theme for Zensical / Material
   Parent brand: terracotta orange (#D96C36) on warm cream / stone neutrals.
   Earthy and analogue, never clinical — Hanken Grotesk + JetBrains Mono.
   Light -> Material "default" scheme   Dark -> Material "slate" scheme
   (Sub-brands — Evolve, dotty — keep their own divergent looks; they appear
    inline as self-contained dark cards in the open-source section.)
   ============================================================ */

/* ---------- LIGHT (default) — cream + terracotta ---------- */
[data-md-color-scheme="default"] {
  --md-default-bg-color: #faf6f1;
  --md-default-bg-color--light: #f2eae0;
  --md-default-fg-color: #1c1711;
  --md-default-fg-color--light: #322920;
  --md-default-fg-color--lighter: #6a5840;
  --md-default-fg-color--lightest: rgba(28, 23, 17, 0.1);

  --md-primary-fg-color: #faf6f1;
  --md-primary-fg-color--light: #f2eae0;
  --md-primary-fg-color--dark: #e6d9c9;
  --md-primary-bg-color: #1c1711;
  --md-primary-bg-color--light: #4d3f2d;

  --md-accent-fg-color: #c25a28;
  --md-accent-fg-color--transparent: rgba(217, 108, 54, 0.1);
  --md-typeset-a-color: #a1471f;

  --md-code-bg-color: #f2eae0;
  --md-code-fg-color: #322920;

  --md-footer-bg-color: #1c1711;
  --md-footer-bg-color--dark: #15110b;

  /* warm brand ramp */
  --bw-orange: #d96c36; /* primary — the logo colour */
  --bw-orange-2: #c25a28; /* hover */
  --bw-orange-3: #a1471f; /* active */
  --bw-orange-soft: #fbf1ea;
  --bw-orange-tint: rgba(217, 108, 54, 0.1);
  --bw-green: #5e8c4f; /* moss — success / live dot */
  --bw-amber: #e0a030;

  --bw-bg: #faf6f1; /* page / cream */
  --bw-surface: #ffffff; /* cards */
  --bw-sunken: #f2eae0;
  --bw-fg: #1c1711;
  --bw-body: #322920;
  --bw-muted: #6a5840;
  --bw-faint: #8b7559;
  --bw-line: #e6d9c9;
  --bw-line-2: #d4c2ac;
  --bw-shadow:
    0 12px 32px rgba(50, 41, 32, 0.12), 0 4px 8px rgba(50, 41, 32, 0.06);
  --bw-glow: 0 8px 22px rgba(217, 108, 54, 0.3);
}

/* ---------- DARK (slate) — warm charcoal ---------- */
[data-md-color-scheme="slate"] {
  --md-default-bg-color: #1c1711;
  --md-default-bg-color--light: #322920;
  --md-default-fg-color: #faf6f1;
  --md-default-fg-color--light: #e6d9c9;
  --md-default-fg-color--lighter: #b0997e;
  --md-default-fg-color--lightest: rgba(250, 246, 241, 0.09);

  --md-primary-fg-color: #1c1711;
  --md-primary-fg-color--light: #322920;
  --md-primary-fg-color--dark: #15110b;
  --md-primary-bg-color: #faf6f1;
  --md-primary-bg-color--light: #d4c2ac;

  --md-accent-fg-color: #de854f;
  --md-accent-fg-color--transparent: rgba(222, 133, 79, 0.12);
  --md-typeset-a-color: #e49e72;

  --md-code-bg-color: #15110b;
  --md-code-fg-color: #e6d9c9;

  --md-footer-bg-color: #15110b;
  --md-footer-bg-color--dark: #100d08;

  --bw-orange: #de854f;
  --bw-orange-2: #e49e72;
  --bw-orange-3: #edbe9f;
  --bw-orange-soft: rgba(222, 133, 79, 0.16);
  --bw-orange-tint: rgba(222, 133, 79, 0.12);
  --bw-green: #8fb37e;
  --bw-amber: #e0a030;

  --bw-bg: #1c1711;
  --bw-surface: #322920;
  --bw-sunken: #15110b;
  --bw-fg: #faf6f1;
  --bw-body: #f2eae0;
  --bw-muted: #b0997e;
  --bw-faint: #8b7559;
  --bw-line: rgba(250, 246, 241, 0.1);
  --bw-line-2: rgba(250, 246, 241, 0.18);
  --bw-shadow: 0 24px 60px rgba(0, 0, 0, 0.5);
  --bw-glow: 0 8px 22px rgba(222, 133, 79, 0.28);
}

/* ===== Header: flat, with a soft terracotta underline ===== */
.md-header {
  box-shadow: none;
  border-bottom: 1px solid var(--bw-line);
  position: relative;
}
.md-header[data-md-state="shadow"],
.md-header--shadow {
  box-shadow: none;
}
.md-header__inner {
  min-height: 3rem;
}
.md-header::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 3px;
  background: linear-gradient(
    90deg,
    var(--bw-orange),
    var(--bw-orange-2) 55%,
    var(--bw-orange-3)
  );
  opacity: 0.9;
}

/* Header wordmark lockup: logo + stacked "BITWISE / MEDIA GROUP" */
.bw-headmark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: inherit;
  line-height: 1;
}
.bw-headmark img {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}
.bw-headmark__text {
  display: flex;
  flex-direction: column;
  line-height: 1;
}
.bw-headmark__name {
  font-family: var(--md-text-font-family, "Hanken Grotesk", sans-serif);
  font-weight: 800;
  font-size: 16px;
  letter-spacing: 0.14em;
  color: var(--bw-orange);
}
.bw-headmark__sub {
  font-family: var(--md-code-font-family, "JetBrains Mono", monospace);
  font-size: 8.5px;
  letter-spacing: 0.34em;
  color: var(--bw-faint);
  margin-top: 3px;
}
.bw-headmark:hover {
  opacity: 0.85;
}
/* Material lays the header title out for cross-fading page "topics": the title
   is a fixed 2.4rem-tall cell and .md-header__topic is position:absolute (so it
   carries no width and pins to the top). We render a single static wordmark, so
   undo that — let the lockup flow, size the title to its content, and vertically
   centre it — otherwise it collapses to zero width (the section nav overlaps it)
   and sits flush to the top of the bar. */
.md-header__title {
  flex-grow: 0;
  height: auto;
  line-height: 1;
  margin-right: 0;
}
.md-header__title > .md-header__ellipsis {
  display: flex;
  align-items: center;
  width: auto;
  height: auto;
}
.md-header .md-header__topic {
  position: static;
  align-items: center;
}
.md-header .md-ellipsis {
  flex-grow: 0;
  overflow: visible;
}

/* In-header section nav (desktop) + "get notified" CTA */
.bw-secnav {
  display: flex;
  align-items: center;
  gap: 26px;
  margin: 0 0 0 30px;
  margin-right: auto;
}
.bw-secnav a {
  font-family: var(--md-text-font-family, "Hanken Grotesk", sans-serif);
  font-size: 14px;
  font-weight: 500;
  color: var(--bw-muted);
  text-decoration: none;
  transition: color 0.15s;
}
.bw-secnav a:hover {
  color: var(--bw-orange-2);
}
.bw-header-cta {
  margin-left: 6px;
}
@media (max-width: 1100px) {
  .bw-secnav {
    display: none;
  }
}
@media (max-width: 76.1875em) {
  /* Material collapses to the drawer; reclaim the wordmark's grow */
  .md-header__title {
    flex-grow: 1;
  }
  .bw-header-cta {
    display: none;
  }
}

/* Active drawer/nav links pick up the terracotta accent */
.md-nav__link--active,
.md-nav__item .md-nav__link--active {
  color: var(--md-accent-fg-color);
}

/* ============================================================
   LANDING PAGE  (.bw) — injected by overrides/home.html
   ============================================================ */
.bw {
  --bw-mono: var(--md-code-font-family, "JetBrains Mono", monospace);
  --bw-sans: var(--md-text-font-family, "Hanken Grotesk", sans-serif);
  font-family: var(--bw-sans);
  color: var(--bw-body);
  line-height: 1.55;
}
.bw * {
  box-sizing: border-box;
}
.bw a {
  text-decoration: none;
}

/* shared eyebrow / button primitives ----------------------- */
.bw-eyebrow {
  font-family: var(--bw-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--bw-orange-2);
  margin: 0;
}
.bw-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  font-family: var(--bw-sans);
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  padding: 13px 22px;
  border-radius: 10px;
  border: 1px solid transparent;
  cursor: pointer;
  transition:
    transform 0.15s,
    box-shadow 0.15s,
    background 0.15s,
    border-color 0.15s;
}
.bw-btn svg {
  display: block;
  flex-shrink: 0;
}
.bw-btn--primary {
  background: var(--bw-orange);
  color: #fff;
}
.bw-btn--primary:hover {
  background: var(--bw-orange-2);
  box-shadow: var(--bw-glow);
  transform: translateY(-1px);
}
.bw-btn--secondary {
  background: var(--bw-surface);
  color: var(--bw-body);
  border-color: var(--bw-line-2);
}
.bw-btn--secondary:hover {
  border-color: var(--bw-orange);
  color: var(--bw-orange-2);
}
.bw-btn--ghost {
  background: transparent;
  color: var(--bw-muted);
  padding-left: 12px;
  padding-right: 12px;
}
.bw-btn--ghost:hover {
  color: var(--bw-orange-2);
}
.bw-btn--sm {
  font-size: 14px;
  padding: 9px 15px;
}
.bw-btn--lg {
  font-size: 16px;
  padding: 15px 26px;
}

/* HERO ----------------------------------------------------- */
.bw-hero {
  position: relative;
  overflow: hidden;
  background: var(--bw-bg);
}
.bw-hero__mark {
  position: absolute;
  right: -120px;
  top: -70px;
  width: 560px;
  max-width: 70vw;
  opacity: 0.05;
  pointer-events: none;
  user-select: none;
}
.bw-hero__inner {
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
  padding: 92px 40px 76px;
  text-align: center;
}
.bw-kicker {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 26px;
}
.bw-kicker .bw-eyebrow {
  color: var(--bw-orange-2);
}
.bw-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--bw-green);
  box-shadow: 0 0 0 4px color-mix(in oklab, var(--bw-green) 22%, transparent);
  animation: bw-pulse 1.8s ease-in-out infinite;
}
.bw-hero h1 {
  margin: 0;
  font-family: var(--bw-sans);
  font-weight: 800;
  font-size: clamp(42px, 7vw, 78px);
  line-height: 1.04;
  letter-spacing: -0.02em;
  color: var(--bw-fg);
}
.bw-hero__lede {
  max-width: 620px;
  margin: 24px auto 0;
  font-size: 19px;
  line-height: 1.65;
  color: var(--bw-muted);
  text-wrap: pretty;
}
.bw-hero__cta {
  display: flex;
  justify-content: center;
  gap: 13px;
  flex-wrap: wrap;
  margin-top: 34px;
}
.bw-hero__meta {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 34px;
}
.bw-avatars {
  display: flex;
}
.bw-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--bw-sans);
  font-weight: 700;
  font-size: 13px;
  color: #fff;
  background: var(--bw-orange);
  box-shadow: 0 0 0 2px var(--bw-bg);
}
.bw-avatar + .bw-avatar {
  margin-left: -8px;
  background: var(--bw-orange-3);
}
.bw-hero__meta span {
  font-size: 14px;
  color: var(--bw-faint);
}
.bw-badge {
  display: inline-flex;
  align-items: center;
  font-family: var(--bw-sans);
  font-size: 12.5px;
  font-weight: 600;
  padding: 4px 11px;
  border-radius: 999px;
  color: var(--bw-orange-3);
  background: var(--bw-orange-soft);
  border: 1px solid color-mix(in oklab, var(--bw-orange) 30%, transparent);
}

/* OPEN SOURCE --------------------------------------------- */
.bw-oss {
  background: var(--bw-surface);
  border-top: 1px solid var(--bw-line);
  border-bottom: 1px solid var(--bw-line);
}
.bw-oss__inner {
  max-width: 1080px;
  margin: 0 auto;
  padding: 84px 40px;
}
.bw-oss__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 36px;
}
.bw-oss__head h2 {
  margin: 8px 0 0;
  font-family: var(--bw-sans);
  font-size: clamp(28px, 4vw, 38px);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--bw-fg);
}
.bw-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 22px;
}
.bw-card {
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  padding: 26px;
  border: 1px solid var(--bw-line);
  background: var(--bw-surface);
  color: var(--bw-body);
  transition:
    transform 0.18s,
    box-shadow 0.18s,
    border-color 0.18s;
}
a.bw-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--bw-shadow);
}
.bw-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}
.bw-card__mark {
  font-family: var(--bw-mono);
  font-size: 22px;
  font-weight: 700;
}
.bw-card__go {
  color: inherit;
  opacity: 0.55;
  transition:
    transform 0.18s,
    opacity 0.18s;
}
a.bw-card:hover .bw-card__go {
  opacity: 1;
  transform: translate(3px, -3px);
}
.bw-card h3 {
  margin: 0 0 7px;
  font-family: var(--bw-sans);
  font-size: 21px;
  font-weight: 700;
}
.bw-card p {
  margin: 0;
  font-size: 14.5px;
  line-height: 1.6;
  color: var(--bw-card-muted, var(--bw-muted));
  text-wrap: pretty;
}
.bw-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 20px;
}
.bw-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bw-mono);
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 7px;
  border: 1px solid currentColor;
  color: var(--bw-card-muted, var(--bw-faint));
}
.bw-tag::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--bw-card-accent, var(--bw-orange));
}

/* sub-brand cards are self-contained dark panels (scheme-agnostic) */
.bw-card--evolve {
  background: #1e2124;
  border-color: rgba(255, 255, 255, 0.08);
  color: #c7ccd4;
  --bw-card-muted: #9aa3b2;
  --bw-card-accent: #5ef1ff;
}
.bw-card--evolve .bw-card__mark,
.bw-card--evolve h3 {
  color: #5ef1ff;
}
.bw-card--evolve h3 {
  color: #ffffff;
}
/* canonical Evolve wordmark: per-letter neon, matching the live page */
.bw-evolve-wordmark {
  font-weight: 800;
  letter-spacing: 1px;
}
.bw-evolve-wordmark span:nth-child(1) {
  color: #5ea1ff;
} /* E — blue */
.bw-evolve-wordmark span:nth-child(2) {
  color: #5eff6c;
} /* V — green */
.bw-evolve-wordmark span:nth-child(3) {
  color: #5ef1ff;
} /* O — cyan */
.bw-evolve-wordmark span:nth-child(4) {
  color: #ff5ef1;
} /* L — magenta */
.bw-evolve-wordmark span:nth-child(5) {
  color: #ffbd5e;
} /* V — orange */
.bw-evolve-wordmark span:nth-child(6) {
  color: #bd5eff;
} /* E — purple */
.bw-card--dotty {
  background: #1f1d15;
  border-color: #34301f;
  color: #a39a77;
  --bw-card-muted: #a39a77;
  --bw-card-accent: #f5c518;
}
.bw-card--dotty .bw-card__mark {
  color: #f5c518;
}
.bw-card--dotty h3 {
  color: #f4efdd;
}
.bw-card--patchy {
  background: #0c140e;
  border-color: rgba(120, 214, 75, 0.3);
  color: #98ab9b;
  --bw-card-muted: #98ab9b;
  --bw-card-accent: #78d64b;
}
.bw-card--patchy .bw-card__mark {
  color: #9be66a;
}
.bw-patchy-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.bw-patchy-mark {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  overflow: visible;
}
.bw-patchy-mark > rect {
  fill: #17251a;
  stroke: #354a39;
  stroke-width: 3;
}
.bw-patchy-mark ellipse {
  fill: #a47a55;
}
.bw-patchy-mark__hole {
  fill: none;
  stroke: #d7e7d7;
  stroke-width: 3;
  opacity: 0.35;
}
.bw-patchy-mark__blades {
  fill: none;
  stroke: #9be66a;
  stroke-width: 4;
  stroke-linecap: round;
}
.bw-patchy-mark__turf {
  fill: #78d64b;
  stroke: #9be66a;
  stroke-width: 2;
}
.bw-card--patchy h3 {
  color: #edf7ee;
}
.bw-card--gh-claude {
  background: #211712;
  border-color: #3a2a20;
  color: #b9a597;
  --bw-card-muted: #b9a597;
  --bw-card-accent: #d97757;
}
.bw-card--gh-claude .bw-card__mark {
  color: #d97757;
}
.bw-card--gh-claude h3 {
  color: #f6ede6;
}

/* QUOTE BAND (always warm-dark) --------------------------- */
.bw-quote {
  background: #1c1711;
  color: #faf6f1;
}
.bw-quote__inner {
  max-width: 760px;
  margin: 0 auto;
  padding: 84px 40px;
  text-align: center;
}
.bw-quote__glyph {
  color: var(--bw-orange);
  margin: 0 auto 22px;
}
.bw-quote blockquote {
  margin: 0;
  font-family: var(--bw-sans);
  font-size: clamp(24px, 3.4vw, 34px);
  font-weight: 600;
  line-height: 1.28;
  letter-spacing: -0.015em;
}
.bw-quote blockquote em {
  color: var(--bw-orange);
  font-style: normal;
}
.bw-quote__by {
  margin-top: 26px;
  font-family: var(--bw-mono);
  font-size: 14px;
  color: #b0997e;
}

/* SIGNUP -------------------------------------------------- */
.bw-signup {
  background: var(--bw-bg);
}
.bw-signup__inner {
  max-width: 720px;
  margin: 0 auto;
  padding: 84px 40px;
  text-align: center;
}
.bw-signup h2 {
  margin: 0 0 10px;
  font-family: var(--bw-sans);
  font-size: clamp(28px, 4vw, 38px);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--bw-fg);
}
.bw-signup p {
  margin: 0 0 28px;
  font-size: 18px;
  color: var(--bw-muted);
}
.bw-form {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  max-width: 460px;
  margin: 0 auto;
}
.bw-input {
  position: relative;
  display: flex;
  align-items: center;
}
.bw-input svg {
  position: absolute;
  left: 14px;
  color: var(--bw-faint);
  pointer-events: none;
}
.bw-input input {
  width: 100%;
  font-family: var(--bw-sans);
  font-size: 15px;
  color: var(--bw-fg);
  background: var(--bw-surface);
  border: 1px solid var(--bw-line-2);
  border-radius: 10px;
  padding: 13px 14px 13px 42px;
  outline: none;
  transition:
    border-color 0.15s,
    box-shadow 0.15s;
}
.bw-input input:focus {
  border-color: var(--bw-orange);
  box-shadow: 0 0 0 3px var(--bw-orange-tint);
}
.bw-form .bw-btn {
  white-space: nowrap;
}
/* Status messages (ok / pending / error) share the form's centered 460px
   column and left-align under the email field, with breathing room above. */
.bw-signup__status {
  max-width: 460px;
  margin: 0 auto;
  text-align: left;
}
.bw-signup__status > div {
  margin-top: 12px;
}
/* Confirmed state — the form is swapped out for this, so make it a bold,
   celebratory full-width card rather than the small inline pill used for the
   pending/error states. */
.bw-signup__ok {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
  padding: 30px 28px;
  border-radius: 14px;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #3f6233;
  background: #ecf2e7;
  border: 1px solid color-mix(in oklab, #5e8c4f 45%, transparent);
}
.bw-signup__ok svg {
  box-sizing: border-box;
  width: 46px;
  height: 46px;
  padding: 11px;
  border-radius: 50%;
  color: #fff;
  background: #5e8c4f;
}
[data-md-color-scheme="slate"] .bw-signup__ok {
  color: #cfe6c2;
  background: rgba(94, 140, 79, 0.18);
  border-color: color-mix(in oklab, #5e8c4f 50%, transparent);
}
/* Turnstile widget — sits on its own row directly under the email input and
   matches its width (grid column 1), left-aligned rather than centered.
   Collapsed until Cloudflare injects the (interaction-only) widget. */
.bw-turnstile {
  grid-column: 1;
  display: flex;
  justify-content: flex-start;
}
/* Make the injected widget span the full input column. In production the
   flexible-size widget is already 100% wide; the localhost test/dummy widget
   renders at a fixed ~300px, so force its wrapper and iframe to fill too. */
.bw-turnstile > div,
.bw-turnstile iframe {
  width: 100% !important;
}
.bw-turnstile:empty {
  display: none;
}
/* Double opt-in states: pending ("check your inbox") and error, mirroring the
   confirmed __ok pill. */
.bw-signup__pending,
.bw-signup__err {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 22px;
  border-radius: 10px;
  font-weight: 600;
}
.bw-signup__pending {
  color: #6a4a2a;
  background: #f6ead9;
  border: 1px solid color-mix(in oklab, #d96c36 35%, transparent);
}
[data-md-color-scheme="slate"] .bw-signup__pending {
  color: #e8c39a;
  background: rgba(217, 108, 54, 0.16);
}
.bw-signup__err {
  color: #7a2e2e;
  background: #f6e4e4;
  border: 1px solid color-mix(in oklab, #b23b3b 35%, transparent);
}
[data-md-color-scheme="slate"] .bw-signup__err {
  color: #e6a6a6;
  background: rgba(178, 59, 59, 0.16);
}
.bw-hidden {
  display: none !important;
}

/* keyframes ----------------------------------------------- */
@keyframes bw-pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
@media (prefers-reduced-motion: reduce) {
  .bw-dot {
    animation: none !important;
  }
}

/* responsive --------------------------------------------- */
@media (max-width: 600px) {
  .bw-hero__inner,
  .bw-oss__inner,
  .bw-quote__inner,
  .bw-signup__inner {
    padding-left: 22px;
    padding-right: 22px;
  }
  .bw-form {
    grid-template-columns: 1fr;
  }
  .bw-form .bw-btn {
    width: 100%;
  }
}

/* The landing is injected above <main> (via the `tabs` block) and the article
   `content` block is emptied, leaving an empty <main>. Scope off the hero so
   only this page collapses that empty container — real doc pages (404, …) keep
   theirs. `body:has(.bw-hero)` matches only the landing. */
body:has(.bw-hero) .md-content__inner {
  display: none;
}
body:has(.bw-hero) .md-main__inner {
  margin-top: 0;
}
body:has(.bw-hero) .md-main {
  background: var(--bw-bg);
}
