.wb-block {
  position: relative;
  display: grid;
  gap: 1.25rem;
  padding: clamp(1.1rem, 2.4vw, 1.8rem);
  border: 1px solid color-mix(in srgb, var(--border) 78%, var(--accent) 22%);
  border-radius: calc(var(--elements-border-radius) + 2px);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 42%),
    color-mix(in srgb, var(--card) 94%, transparent);
  box-shadow: var(--shadow);
  overflow: clip;
}

.wb-block__header,
.wb-map-block__header,
.wb-video-embed__header,
.wb-contact-card__content,
.wb-media-text__content,
.wb-hero-banner__content {
  display: grid;
  gap: 0.75rem;
}

.wb-block :where(h2, h3, h4) {
  margin: 0;
  font-family: var(--font-display), var(--font-body), "Segoe UI", system-ui, sans-serif;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

.wb-block p,
.wb-block li,
.wb-block span,
.wb-block small {
  line-height: 1.6;
}

.wb-block__header p,
.wb-meta,
.wb-richtext :where(p, li),
.wb-contact-card__content > p,
.wb-video-embed__header p,
.wb-map-block__header p {
  margin: 0;
  color: color-mix(in srgb, var(--text) 78%, var(--muted));
}

.wb-eyebrow {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.72rem;
  font-weight: 700;
  color: color-mix(in srgb, var(--accent) 70%, white 30%);
}

.wb-lead {
  margin: 0;
  max-width: 58ch;
  font-size: clamp(1rem, 1.6vw, 1.12rem);
  color: color-mix(in srgb, var(--text) 86%, var(--muted));
}

.wb-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.wb-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.85rem;
  padding: 0.8rem 1.15rem;
  border-radius: var(--button-radius);
  border: 1px solid color-mix(in srgb, var(--accent) 36%, transparent);
  background: linear-gradient(135deg, var(--accent), var(--accent-strong));
  color: var(--background);
  font-weight: 700;
  box-shadow: 0 16px 30px color-mix(in srgb, var(--accent) 22%, transparent);
  transition: transform 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.wb-btn:hover,
.wb-btn:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 18px 34px color-mix(in srgb, var(--accent) 28%, transparent);
}

.wb-btn-secondary {
  border-color: color-mix(in srgb, var(--border) 76%, white 24%);
  background: rgba(255, 255, 255, 0.05);
  color: var(--text);
  box-shadow: none;
}

.wb-btn-ghost {
  border-color: color-mix(in srgb, var(--border) 68%, transparent);
  background: transparent;
  color: var(--text);
  box-shadow: none;
}

.wb-theme-muted {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 48%),
    color-mix(in srgb, var(--surface) 66%, var(--card));
}

.wb-theme-contrast {
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 18%, transparent), transparent 32%),
    linear-gradient(145deg, color-mix(in srgb, var(--surface) 88%, black 12%), color-mix(in srgb, var(--card) 72%, var(--accent-soft) 28%));
}

.wb-chip {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 0.4rem 0.7rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--accent) 34%, transparent);
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  color: color-mix(in srgb, var(--text) 90%, white 10%);
  font-size: 0.82rem;
  font-weight: 600;
}

.wb-richtext > :first-child,
.wb-block__header > :first-child,
.wb-contact-card__content > :first-child {
  margin-top: 0;
}

.wb-richtext > :last-child,
.wb-block__header > :last-child,
.wb-contact-card__content > :last-child {
  margin-bottom: 0;
}

.wb-hero-banner {
  min-height: min(72vh, 42rem);
  align-items: end;
}

.wb-hero-banner__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.wb-hero-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wb-hero-banner__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.18), rgba(2, 6, 23, 0.82));
}

.wb-overlay-none::after { background: linear-gradient(180deg, rgba(2, 6, 23, 0.05), rgba(2, 6, 23, 0.45)); }
.wb-overlay-soft::after { background: linear-gradient(180deg, rgba(2, 6, 23, 0.12), rgba(2, 6, 23, 0.62)); }
.wb-overlay-medium::after { background: linear-gradient(180deg, rgba(2, 6, 23, 0.18), rgba(2, 6, 23, 0.82)); }
.wb-overlay-strong::after { background: linear-gradient(180deg, rgba(2, 6, 23, 0.28), rgba(2, 6, 23, 0.9)); }

.wb-hero-banner__content {
  position: relative;
  z-index: 1;
  max-width: 72ch;
}

.wb-hero-banner h2 {
  font-size: clamp(2.3rem, 5vw, 4.6rem);
}

.wb-align-left { text-align: left; justify-items: start; }
.wb-align-center { text-align: center; justify-items: center; }
.wb-align-right { text-align: right; justify-items: end; }

.wb-width-standard .wb-hero-banner__content { max-width: 52rem; }
.wb-width-wide .wb-hero-banner__content { max-width: 66rem; }
.wb-width-full .wb-hero-banner__content { max-width: none; }
.wb-hero-banner.is-compact { min-height: min(52vh, 30rem); }

.wb-media-text {
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}

.wb-media-text__media {
  border-radius: calc(var(--elements-border-radius) - 2px);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--border) 72%, white 28%);
  background: color-mix(in srgb, var(--surface) 72%, black 28%);
}

.wb-media-text__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wb-ratio-landscape { aspect-ratio: 16 / 10; }
.wb-ratio-square { aspect-ratio: 1 / 1; }
.wb-ratio-portrait { aspect-ratio: 4 / 5; }
.wb-ratio-16-9 { aspect-ratio: 16 / 9; }
.wb-ratio-4-3 { aspect-ratio: 4 / 3; }
.wb-ratio-1-1 { aspect-ratio: 1 / 1; }
.wb-ratio-21-9 { aspect-ratio: 21 / 9; }

.wb-feature-list__items,
.wb-stats-block__items,
.wb-link-list__items {
  display: grid;
  gap: 1rem;
}

.wb-feature-list--grid .wb-feature-list__items,
.wb-stats-block--grid .wb-stats-block__items,
.wb-link-list--cards .wb-link-list__items {
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}

.wb-feature-list--split .wb-feature-list__items {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.wb-feature-list__item,
.wb-stat,
.wb-link-list__item {
  display: grid;
  gap: 0.55rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 80%, white 20%);
  background: rgba(255, 255, 255, 0.03);
}

.wb-stat strong {
  font-size: clamp(1.8rem, 4vw, 3rem);
  line-height: 1;
}

.wb-stat span {
  font-weight: 700;
}

.wb-stat small {
  color: var(--muted);
}

.wb-contact-card {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.wb-contact-card.is-compact {
  grid-template-columns: minmax(0, 1fr);
}

.wb-contact-card__avatar {
  width: clamp(5.2rem, 9vw, 7.5rem);
  aspect-ratio: 1;
  border-radius: calc(var(--elements-border-radius) + 6px);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--border) 70%, white 30%);
}

.wb-contact-card__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wb-contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.6rem;
}

.wb-contact-list a,
.wb-link-list__item {
  color: inherit;
}

.wb-link-list__item strong {
  font-size: 1rem;
}

.wb-link-list__item span {
  color: var(--muted);
}

.wb-link-list--inline .wb-link-list__items {
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
}

.wb-video-embed__frame,
.wb-map-block__frame {
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 2px);
  border: 1px solid color-mix(in srgb, var(--border) 72%, white 28%);
  background: color-mix(in srgb, var(--surface) 72%, black 28%);
}

.wb-video-embed__frame iframe,
.wb-map-block__frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.wb-map-height-compact { min-height: 16rem; }
.wb-map-height-standard { min-height: 22rem; }
.wb-map-height-tall { min-height: 30rem; }

.wb-announcement-bar {
  display: grid;
  gap: 0.85rem;
  padding: 0.9rem 1.2rem;
  border: 1px solid color-mix(in srgb, var(--border) 72%, white 28%);
  border-radius: calc(var(--elements-border-radius) + 2px);
  background: color-mix(in srgb, var(--surface) 82%, var(--card));
}

.wb-announcement-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.wb-announcement-bar__actions {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  flex-wrap: wrap;
}

.wb-announcement-bar__link {
  font-weight: 700;
  color: inherit;
}

.wb-announcement-bar__dismiss {
  display: none;
}

.wb-announcement-bar__toggle {
  cursor: pointer;
  font-size: 1.1rem;
  color: var(--muted);
}

.wb-announcement-bar__dismiss:checked + .wb-announcement-bar {
  display: none;
}

.wb-announcement-bar--success { border-color: color-mix(in srgb, #16a34a 42%, var(--border)); }
.wb-announcement-bar--warning { border-color: color-mix(in srgb, #f59e0b 48%, var(--border)); }
.wb-announcement-bar--promo { border-color: color-mix(in srgb, var(--accent) 46%, var(--border)); }

.wb-section-heading {
  gap: 0.85rem;
}

.wb-section-heading.wb-width-narrow {
  max-width: 38rem;
}

.wb-section-heading.wb-width-standard {
  max-width: 52rem;
}

.wb-section-heading.wb-width-wide {
  max-width: 68rem;
}

.wb-section-heading h2 {
  font-size: clamp(2rem, 4vw, 3.5rem);
}

.wb-logo-strip__items,
.wb-feature-grid__items,
.wb-media-gallery__items,
.wb-download-list__items,
.wb-audio-player__tracks {
  display: grid;
  gap: 1rem;
}

.wb-logo-strip__items {
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  align-items: center;
}

.wb-logo-strip__item {
  display: grid;
  place-items: center;
  min-height: 6rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 82%, white 18%);
  background: rgba(255, 255, 255, 0.03);
}

.wb-logo-strip__item img {
  max-width: 100%;
  max-height: 3.4rem;
  width: auto;
  height: auto;
  object-fit: contain;
}

.wb-logo-strip.is-grayscale img {
  filter: grayscale(1);
  opacity: 0.85;
}

.wb-logo-strip.is-compact .wb-logo-strip__item {
  min-height: 4.5rem;
  padding: 0.8rem;
}

.wb-feature-grid__items {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.wb-feature-grid--cols-2 .wb-feature-grid__items {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.wb-feature-grid--cols-3 .wb-feature-grid__items {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.wb-feature-grid--cols-4 .wb-feature-grid__items {
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

.wb-feature-grid__item {
  display: grid;
  gap: 0.85rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 78%, white 22%);
  background: rgba(255, 255, 255, 0.03);
  color: inherit;
}

.wb-feature-grid__media {
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 6px);
  aspect-ratio: 16 / 10;
}

.wb-feature-grid__media img,
.wb-media-gallery__item img,
.wb-media-gallery__lightbox img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wb-feature-grid__icon {
  font-size: 1.2rem;
  font-weight: 700;
  color: color-mix(in srgb, var(--accent) 72%, white 28%);
}

.wb-feature-grid__content {
  display: grid;
  gap: 0.45rem;
}

.wb-timeline__items {
  display: grid;
  gap: 1rem;
}

.wb-timeline__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.95rem;
}

.wb-timeline__rail {
  display: grid;
  justify-items: center;
  gap: 0.4rem;
}

.wb-timeline__rail::after {
  content: "";
  width: 1px;
  min-height: 100%;
  background: color-mix(in srgb, var(--border) 74%, white 26%);
}

.wb-timeline__item:last-child .wb-timeline__rail::after {
  display: none;
}

.wb-timeline__icon,
.wb-timeline__dot {
  display: inline-grid;
  place-items: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--accent) 42%, transparent);
  background: color-mix(in srgb, var(--accent) 12%, transparent);
}

.wb-timeline__dot {
  width: 0.85rem;
  height: 0.85rem;
  margin-top: 0.65rem;
}

.wb-timeline__content {
  display: grid;
  gap: 0.45rem;
  padding-bottom: 0.8rem;
}

.wb-timeline__meta {
  display: flex;
  gap: 0.6rem;
  align-items: center;
  flex-wrap: wrap;
  color: var(--muted);
  font-size: 0.92rem;
}

.wb-timeline.is-compact .wb-timeline__item {
  gap: 0.75rem;
}

.wb-media-gallery__items {
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

.wb-media-gallery__item {
  margin: 0;
}

.wb-media-gallery__link {
  display: block;
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 76%, white 24%);
  aspect-ratio: 16 / 11;
}

.wb-media-gallery--mosaic .wb-media-gallery__item:nth-child(4n + 1) .wb-media-gallery__link {
  aspect-ratio: 4 / 5;
}

.wb-media-gallery__item figcaption {
  margin-top: 0.55rem;
  color: var(--muted);
}

.wb-media-gallery__lightbox {
  position: fixed;
  inset: 0;
  display: none;
  padding: 1rem;
  z-index: 1000;
}

.wb-media-gallery__lightbox:target {
  display: grid;
  place-items: center;
}

.wb-media-gallery__lightbox-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 6, 23, 0.86);
}

.wb-media-gallery__lightbox-shell {
  position: relative;
  z-index: 1;
  width: min(92vw, 70rem);
  max-height: 90vh;
  display: grid;
  gap: 0.8rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) + 2px);
  background: color-mix(in srgb, var(--surface) 88%, black 12%);
}

.wb-media-gallery__lightbox-shell img {
  max-height: 72vh;
  border-radius: calc(var(--elements-border-radius) - 4px);
}

.wb-media-gallery__lightbox-close {
  position: absolute;
  top: 0.7rem;
  right: 0.9rem;
  color: white;
  font-size: 1.6rem;
}

.wb-button-row {
  display: grid;
  gap: 0.85rem;
}

.wb-button-row__title {
  margin: 0;
}

.wb-button-row.is-compact .wb-btn {
  min-height: 2.5rem;
  padding: 0.65rem 0.95rem;
}

.wb-button-row__icon {
  opacity: 0.9;
}

.wb-audio-player__tracks {
  gap: 0.9rem;
}

.wb-audio-player__track {
  display: grid;
  gap: 0.7rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 80%, white 20%);
  background: rgba(255, 255, 255, 0.03);
}

.wb-audio-player__track-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.wb-audio-player audio {
  width: 100%;
}

.wb-download-list__items {
  gap: 0.8rem;
}

.wb-download-list__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 80%, white 20%);
  background: rgba(255, 255, 255, 0.03);
  color: inherit;
}

.wb-download-list__meta {
  display: grid;
  gap: 0.35rem;
}

.wb-download-list__meta span,
.wb-download-list__type small {
  color: var(--muted);
}

.wb-download-list__type {
  display: grid;
  justify-items: end;
  gap: 0.35rem;
}

.wb-download-list.is-compact .wb-download-list__item {
  padding: 0.85rem;
}

.wb-availability-block {
  gap: 0.9rem;
}

.wb-availability-block__header,
.wb-pricing-table__head,
.wb-related-content__copy,
.wb-press-mentions__copy,
.wb-background-section__content {
  display: grid;
  gap: 0.45rem;
}

.wb-availability-block--available { border-color: color-mix(in srgb, #16a34a 42%, var(--border)); }
.wb-availability-block--limited { border-color: color-mix(in srgb, #f59e0b 46%, var(--border)); }
.wb-availability-block--sold_out,
.wb-availability-block--closed { border-color: color-mix(in srgb, #ef4444 46%, var(--border)); }
.wb-availability-block--on_request { border-color: color-mix(in srgb, #3b82f6 46%, var(--border)); }

.wb-section-nav__items,
.wb-pricing-table__features {
  list-style: none;
  margin: 0;
  padding: 0;
}

.wb-section-nav__items {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.wb-section-nav--vertical .wb-section-nav__items {
  display: grid;
}

.wb-section-nav__items a {
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
  padding: 0.6rem 0.9rem;
  border-radius: calc(var(--elements-border-radius) - 6px);
  border: 1px solid color-mix(in srgb, var(--border) 78%, white 22%);
  background: rgba(255, 255, 255, 0.03);
  color: inherit;
}

.wb-section-nav.is-sticky-hint {
  position: relative;
}

.wb-icon-nav-grid__items,
.wb-related-content__items,
.wb-review-highlights__items,
.wb-press-mentions__items,
.wb-pricing-table__items {
  display: grid;
  gap: 1rem;
}

.wb-icon-nav-grid__items {
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

.wb-icon-nav-grid--cols-2 .wb-icon-nav-grid__items {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.wb-icon-nav-grid--cols-4 .wb-icon-nav-grid__items {
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
}

.wb-icon-nav-grid__item,
.wb-related-content__item,
.wb-press-mentions__item {
  display: grid;
  gap: 0.7rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 80%, white 20%);
  background: rgba(255, 255, 255, 0.03);
  color: inherit;
}

.wb-icon-nav-grid__icon {
  font-size: 1.4rem;
  color: color-mix(in srgb, var(--accent) 74%, white 26%);
}

.wb-related-content__items,
.wb-press-mentions__items {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.wb-related-content__media,
.wb-quote-showcase__media {
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 4px);
}

.wb-related-content__media img,
.wb-quote-showcase__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wb-review-highlights__items {
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

.wb-review-highlights__item {
  display: grid;
  gap: 0.7rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 80%, white 20%);
  background: rgba(255, 255, 255, 0.03);
}

.wb-review-highlights__item blockquote,
.wb-quote-showcase blockquote {
  margin: 0;
  font-size: clamp(1.05rem, 1.9vw, 1.3rem);
  line-height: 1.55;
}

.wb-press-mentions__item {
  align-content: start;
}

.wb-press-mentions__item img {
  max-height: 3rem;
  width: auto;
  max-width: 100%;
  object-fit: contain;
}

.wb-press-mentions.is-grayscale img {
  filter: grayscale(1);
}

.wb-quote-showcase {
  gap: 1rem;
}

.wb-quote-showcase__media {
  width: min(8rem, 28vw);
  aspect-ratio: 1;
  margin-inline: auto;
}

.wb-divider {
  width: 100%;
  border-top: 1px solid color-mix(in srgb, var(--border) 82%, white 18%);
}

.wb-divider--dashed {
  border-top-style: dashed;
}

.wb-divider--accent {
  border-top-color: color-mix(in srgb, var(--accent) 54%, var(--border));
}

.wb-divider--fade {
  border-top-color: transparent;
  background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--border) 86%, white 14%), transparent);
  height: 1px;
}

.wb-divider--spacing-tight {
  margin-block: 0.8rem;
}

.wb-divider--spacing-normal {
  margin-block: 1.4rem;
}

.wb-divider--spacing-airy {
  margin-block: 2.2rem;
}

.wb-spacer {
  width: 100%;
}

.wb-spacer--xs { min-height: 1rem; }
.wb-spacer--sm { min-height: 1.5rem; }
.wb-spacer--md { min-height: 2.5rem; }
.wb-spacer--lg { min-height: 4rem; }
.wb-spacer--xl { min-height: 6rem; }

.wb-background-section--surface {
  background: color-mix(in srgb, var(--card) 92%, transparent);
}

.wb-background-section--muted {
  background: color-mix(in srgb, var(--surface) 78%, var(--card));
}

.wb-background-section--contrast {
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 14%, transparent), transparent 34%),
    color-mix(in srgb, var(--surface) 80%, black 20%);
}

.wb-background-section--accent {
  background: linear-gradient(140deg, color-mix(in srgb, var(--accent-soft) 26%, transparent), color-mix(in srgb, var(--card) 86%, transparent));
}

.wb-html-embed {
  gap: 1rem;
}

.wb-html-embed__body {
  display: grid;
  gap: 0.8rem;
}

.wb-html-embed__frame {
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 2px);
  border: 1px solid color-mix(in srgb, var(--border) 76%, white 24%);
  min-height: 20rem;
}

.wb-html-embed__frame iframe {
  width: 100%;
  height: 100%;
  min-height: 20rem;
  border: 0;
  display: block;
}

.wb-pricing-table__items {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.wb-pricing-table--cols-2 .wb-pricing-table__items {
  grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
}

.wb-pricing-table--cols-3 .wb-pricing-table__items {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.wb-pricing-table--cols-4 .wb-pricing-table__items {
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

.wb-pricing-table__item {
  display: grid;
  gap: 1rem;
  padding: 1.1rem;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 80%, white 20%);
  background: rgba(255, 255, 255, 0.03);
}

.wb-pricing-table__item.is-highlighted {
  border-color: color-mix(in srgb, var(--accent) 52%, var(--border));
  box-shadow: 0 16px 36px color-mix(in srgb, var(--accent) 16%, transparent);
}

.wb-pricing-table__price {
  display: flex;
  align-items: baseline;
  gap: 0.35rem;
  margin: 0;
}

.wb-pricing-table__price strong {
  font-size: clamp(2rem, 4.2vw, 3rem);
  line-height: 1;
}

.wb-pricing-table__features {
  display: grid;
  gap: 0.55rem;
}

.wb-pricing-table__features li {
  position: relative;
  padding-left: 1rem;
}

.wb-pricing-table__features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.7rem;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 70%, white 30%);
}

@media (min-width: 860px) {
  .wb-media-text.wb-media-left {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }

  .wb-media-text.wb-media-right {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  }

  .wb-media-text.wb-media-right .wb-media-text__media {
    order: 2;
  }

  .wb-media-text.wb-media-right .wb-media-text__content {
    order: 1;
  }

  .wb-width-wide.wb-media-text {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  .wb-block {
    padding: 1rem;
  }

  .wb-hero-banner {
    min-height: 24rem;
  }

  .wb-hero-banner h2 {
    font-size: clamp(2rem, 10vw, 3rem);
  }

  .wb-contact-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .wb-announcement-bar__inner,
  .wb-download-list__item {
    align-items: start;
  }

  .wb-pricing-table__item {
    padding: 1rem;
  }
}

/* Phase A core module maturation */
.wb-hero-banner {
  isolation: isolate;
}

.wb-hero-banner__shell {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 2rem;
  align-items: stretch;
}

.wb-hero-banner__subtitle {
  font-size: clamp(1.05rem, 1rem + 0.4vw, 1.35rem);
  color: var(--wb-color-text-muted);
  max-width: 40rem;
  margin: -0.5rem 0 0;
}

.wb-hero-banner .wb-actions--stacked {
  flex-direction: column;
  align-items: flex-start;
}

.wb-hero-banner.wb-spacing-compact {
  padding-block: 2rem;
}

.wb-hero-banner.wb-spacing-standard {
  padding-block: 3rem;
}

.wb-hero-banner.wb-spacing-spacious {
  padding-block: 4.5rem;
}

.wb-hero-banner--background.has-no-media {
  background:
    radial-gradient(circle at top left, rgba(102, 227, 180, 0.15), transparent 45%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0));
}

.wb-hero-banner--split {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
    rgba(255, 255, 255, 0.01);
}

.wb-hero-banner--split .wb-hero-banner__shell {
  grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.9fr);
}

.wb-hero-banner__aside {
  position: relative;
  border-radius: 1.25rem;
  overflow: hidden;
  min-height: 18rem;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.wb-hero-banner__aside img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wb-media-text {
  align-items: center;
}

.wb-media-text.wb-spacing-compact {
  gap: 1.5rem;
}

.wb-media-text.wb-spacing-standard {
  gap: 2rem;
}

.wb-media-text.wb-spacing-spacious {
  gap: 2.75rem;
}

.wb-media-text.wb-surface-soft,
.wb-media-text.wb-surface-raised {
  border-radius: 1.25rem;
  padding: 1.5rem;
}

.wb-media-text.wb-surface-soft {
  background: rgba(255, 255, 255, 0.035);
}

.wb-media-text.wb-surface-raised {
  background: rgba(11, 15, 18, 0.72);
  box-shadow: 0 18px 36px rgba(0, 0, 0, 0.22);
}

.wb-media-text__content.wb-text-width-narrow {
  max-width: 36rem;
}

.wb-media-text__content.wb-text-width-standard {
  max-width: 44rem;
}

.wb-media-text__content.wb-text-width-wide {
  max-width: 54rem;
}

.wb-media-text__media.wb-media-fit-contain img {
  object-fit: contain;
  background: rgba(255, 255, 255, 0.03);
}

.wb-feature-grid {
  gap: 1.5rem;
}

.wb-feature-grid--compact .wb-feature-grid__items {
  gap: 1rem;
}

.wb-feature-grid--relaxed .wb-feature-grid__items {
  gap: 1.5rem;
}

.wb-feature-grid__item {
  height: 100%;
}

.wb-feature-grid--style-showcase .wb-feature-grid__item {
  background:
    linear-gradient(155deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)),
    rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.1);
}

.wb-feature-grid--style-showcase .wb-feature-grid__item.is-featured {
  grid-column: span 2;
  padding: 1.6rem;
  box-shadow: 0 22px 40px rgba(0, 0, 0, 0.26);
}

.wb-feature-grid__link {
  display: inline-flex;
  margin-top: auto;
  font-size: 0.82rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wb-color-text-muted);
}

.wb-stats-block--inline .wb-stats-block__items {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.25rem;
}

.wb-stats-block--boxed .wb-stats-block__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
  gap: 1rem;
}

.wb-stats-block--banded .wb-stats-block__items {
  display: grid;
  gap: 0.75rem;
}

.wb-stats-block--boxed .wb-stat,
.wb-stats-block--banded .wb-stat {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 1rem;
  padding: 1.1rem 1.2rem;
}

.wb-stats-block--banded .wb-stat {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  column-gap: 1rem;
}

.wb-stats-block--density-compact .wb-stat {
  padding: 0.85rem 1rem;
}

.wb-stats-block--emphasis-strong .wb-stat strong,
.wb-stat.is-primary strong {
  color: var(--wb-color-accent);
  font-size: clamp(1.8rem, 1.55rem + 0.9vw, 3.1rem);
}

.wb-stat__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
}

.wb-stat__prefix,
.wb-stat__suffix {
  font-size: 0.7em;
  color: var(--wb-color-text-muted);
}

.wb-stats-block__footer {
  margin-top: 1rem;
  color: var(--wb-color-text-muted);
  max-width: 44rem;
}

.wb-contact-card {
  align-items: stretch;
}

.wb-contact-card--compact {
  padding: 1rem 1.15rem;
  gap: 1rem;
}

.wb-contact-card--profile {
  grid-template-columns: minmax(5.5rem, 7rem) minmax(0, 1fr);
}

.wb-contact-card--contact-list {
  grid-template-columns: 1fr;
}

.wb-contact-card--contact-list .wb-contact-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: 0.75rem;
}

.wb-contact-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.wb-contact-card__address {
  margin: 0;
  color: var(--wb-color-text-muted);
}

.wb-video-embed {
  gap: 1rem;
}

.wb-video-embed--frame-card .wb-video-embed__frame,
.wb-video-embed--frame-card .wb-video-embed__fallback,
.wb-video-embed--frame-showcase .wb-video-embed__frame,
.wb-video-embed--frame-showcase .wb-video-embed__fallback {
  border-radius: 1.2rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.09);
}

.wb-video-embed--frame-card .wb-video-embed__frame,
.wb-video-embed--frame-card .wb-video-embed__fallback {
  background: rgba(255, 255, 255, 0.02);
}

.wb-video-embed--frame-showcase .wb-video-embed__frame,
.wb-video-embed--frame-showcase .wb-video-embed__fallback {
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.3);
}

.wb-video-embed__fallback {
  position: relative;
  min-height: 14rem;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at top left, rgba(102, 227, 180, 0.16), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.wb-video-embed__fallback img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.26;
}

.wb-video-embed__fallback-content {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 0.75rem;
  justify-items: center;
  text-align: center;
  padding: 1.5rem;
}

.wb-map-block__shell {
  display: grid;
  gap: 1rem;
}

.wb-map-block--split .wb-map-block__shell {
  grid-template-columns: minmax(0, 1.2fr) minmax(16rem, 0.8fr);
  align-items: stretch;
}

.wb-map-block__info {
  display: grid;
  gap: 0.9rem;
  align-content: start;
}

.wb-map-block__info .wb-btn {
  justify-self: start;
}

.wb-link-list {
  gap: 1rem;
}

.wb-link-list--density-compact .wb-link-list__items {
  gap: 0.65rem;
}

.wb-link-list__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.85rem;
  height: 1.85rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: var(--wb-color-text);
}

.wb-link-list__indicator {
  display: inline-flex;
  margin-left: 0.5rem;
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wb-color-text-muted);
}

.wb-link-list--pill .wb-link-list__items,
.wb-link-list--footer .wb-link-list__items {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.wb-link-list--pill .wb-link-list__item,
.wb-link-list--footer .wb-link-list__item {
  width: auto;
  min-width: 0;
  align-items: center;
  gap: 0.55rem;
}

.wb-link-list--pill .wb-link-list__item {
  border-radius: 999px;
  padding: 0.8rem 1rem;
}

.wb-link-list--footer .wb-link-list__item {
  padding: 0.7rem 0.85rem;
  background: rgba(255, 255, 255, 0.02);
}

@media (max-width: 820px) {
  .wb-hero-banner--split .wb-hero-banner__shell,
  .wb-map-block--split .wb-map-block__shell,
  .wb-contact-card--profile {
    grid-template-columns: 1fr;
  }

  .wb-media-text.wb-mobile-order-content-first .wb-media-text__media {
    order: 2;
  }

  .wb-media-text.wb-mobile-order-content-first .wb-media-text__content {
    order: 1;
  }

  .wb-feature-grid--style-showcase .wb-feature-grid__item.is-featured {
    grid-column: span 1;
  }

  .wb-link-list--pill .wb-link-list__items,
  .wb-link-list--footer .wb-link-list__items {
    display: grid;
  }
}

/* Phase B narrative, trust, conversion and asset module maturation */
.wb-logo-strip {
  gap: 1.4rem;
}

.wb-logo-strip .wb-block__header {
  max-width: 44rem;
}

.wb-logo-strip--centered .wb-block__header {
  justify-items: center;
  text-align: center;
  margin-inline: auto;
}

.wb-logo-strip--centered .wb-logo-strip__items {
  justify-content: center;
}

.wb-logo-strip--dense_strip .wb-logo-strip__items {
  grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
  gap: 0.7rem;
}

.wb-logo-strip--compact .wb-logo-strip__items,
.wb-logo-strip.is-compact .wb-logo-strip__items {
  gap: 0.7rem;
}

.wb-logo-strip--size-sm .wb-logo-strip__item img {
  max-height: 2.25rem;
}

.wb-logo-strip--size-md .wb-logo-strip__item img {
  max-height: 3.2rem;
}

.wb-logo-strip--size-lg .wb-logo-strip__item img {
  max-height: 4rem;
}

.wb-logo-strip.has-hover-emphasis .wb-logo-strip__item {
  transition: transform 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
}

.wb-logo-strip.has-hover-emphasis .wb-logo-strip__item:hover,
.wb-logo-strip.has-hover-emphasis .wb-logo-strip__item:focus-visible {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--accent) 44%, var(--border));
  background: rgba(255, 255, 255, 0.055);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.16);
}

.wb-timeline {
  gap: 1.35rem;
}

.wb-timeline__item.is-highlighted .wb-timeline__content {
  padding: 1rem 1.05rem 1rem 1.15rem;
  border-radius: 1rem;
  border: 1px solid color-mix(in srgb, var(--accent) 34%, var(--border));
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--accent) 10%, transparent), transparent 65%),
    rgba(255, 255, 255, 0.03);
}

.wb-timeline__date--label {
  font-weight: 700;
  color: color-mix(in srgb, var(--text) 80%, var(--muted));
}

.wb-timeline__date--accent {
  font-weight: 700;
  color: color-mix(in srgb, var(--accent) 72%, white 28%);
}

.wb-timeline__date--pill {
  display: inline-flex;
  align-items: center;
  padding: 0.28rem 0.62rem;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--accent) 30%, transparent);
  background: color-mix(in srgb, var(--accent) 12%, transparent);
}

.wb-timeline.is-disconnected .wb-timeline__rail::after {
  display: none;
}

.wb-timeline--compact_vertical .wb-timeline__content {
  padding-bottom: 0.35rem;
}

.wb-timeline--compact_vertical .wb-timeline__item {
  gap: 0.7rem;
}

.wb-timeline--compact_vertical .wb-timeline__meta {
  gap: 0.45rem;
  font-size: 0.84rem;
}

.wb-timeline--milestone_list .wb-timeline__items {
  gap: 0.8rem;
}

.wb-timeline--milestone_list .wb-timeline__item {
  grid-template-columns: minmax(6rem, 8rem) minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
}

.wb-timeline--milestone_list .wb-timeline__rail {
  grid-auto-flow: column;
  justify-content: start;
  gap: 0.55rem;
}

.wb-timeline--milestone_list .wb-timeline__rail::after {
  display: none;
}

.wb-timeline--milestone_list .wb-timeline__dot {
  margin-top: 0.3rem;
}

.wb-media-gallery {
  gap: 1.25rem;
}

.wb-media-gallery__featured {
  margin: 0;
  display: grid;
  gap: 0.65rem;
}

.wb-media-gallery__featured-link {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 2px);
  border: 1px solid color-mix(in srgb, var(--border) 72%, white 28%);
  box-shadow: 0 22px 42px rgba(0, 0, 0, 0.18);
}

.wb-media-gallery__featured-link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wb-media-gallery--compact_gallery .wb-media-gallery__items {
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  gap: 0.65rem;
}

.wb-media-gallery--compact_gallery .wb-media-gallery__link {
  aspect-ratio: 1;
}

.wb-media-gallery--mosaic .wb-media-gallery__items {
  grid-auto-flow: dense;
}

.wb-media-gallery--mosaic .wb-media-gallery__item:nth-child(6n + 2) .wb-media-gallery__link,
.wb-media-gallery--mosaic .wb-media-gallery__item:nth-child(6n + 5) .wb-media-gallery__link {
  aspect-ratio: 5 / 4;
}

.wb-media-gallery__item figcaption,
.wb-media-gallery__featured figcaption {
  font-size: 0.92rem;
}

.wb-pricing-table {
  gap: 1.4rem;
}

.wb-pricing-table--cards .wb-pricing-table__item {
  height: 100%;
}

.wb-pricing-table--compact_table .wb-pricing-table__items {
  gap: 0.75rem;
}

.wb-pricing-table--compact_table .wb-pricing-table__item {
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
  padding: 0.95rem 1rem;
}

.wb-pricing-table--compact_table .wb-pricing-table__price strong {
  font-size: clamp(1.6rem, 2vw, 2.1rem);
}

.wb-pricing-table--comparison_light .wb-pricing-table__items {
  gap: 0.8rem;
}

.wb-pricing-table--comparison_light .wb-pricing-table__item {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 42%),
    rgba(255, 255, 255, 0.02);
}

.wb-pricing-table__note {
  margin: 0;
  color: color-mix(in srgb, var(--text) 74%, var(--muted));
}

.wb-pricing-table.is-compact .wb-pricing-table__features {
  gap: 0.4rem;
}

.wb-review-highlights {
  gap: 1.2rem;
}

.wb-review-highlights__item .wb-meta {
  display: grid;
  gap: 0.15rem;
}

.wb-review-highlights--compact_list .wb-review-highlights__items {
  gap: 0.7rem;
}

.wb-review-highlights--compact_list .wb-review-highlights__item {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 0.85rem;
  padding: 0.9rem 1rem;
}

.wb-review-highlights--compact_list .wb-review-highlights__item blockquote {
  font-size: 1rem;
}

.wb-review-highlights--cards .wb-review-highlights__items {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.wb-review-highlights--inline_badges .wb-review-highlights__items {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.wb-review-highlights--inline_badges .wb-review-highlights__item {
  width: auto;
  min-width: 14rem;
  padding: 0.85rem 1rem;
  border-radius: 999px;
  align-content: center;
}

.wb-review-highlights--inline_badges .wb-review-highlights__item blockquote {
  font-size: 0.96rem;
}

.wb-press-mentions {
  gap: 1.25rem;
}

.wb-press-mentions--logos_only .wb-press-mentions__items {
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
}

.wb-press-mentions--logos_only .wb-press-mentions__item {
  justify-items: center;
  text-align: center;
  min-height: 7.25rem;
}

.wb-press-mentions--logos_only .wb-press-mentions__copy {
  gap: 0.25rem;
}

.wb-press-mentions--compact_list .wb-press-mentions__items {
  grid-template-columns: 1fr;
  gap: 0.75rem;
}

.wb-press-mentions--compact_list .wb-press-mentions__item {
  grid-template-columns: minmax(4rem, 5.5rem) minmax(0, 1fr);
  align-items: center;
}

.wb-press-mentions--logo-muted img {
  opacity: 0.72;
}

.wb-press-mentions--logo-strong img {
  filter: saturate(1.08) contrast(1.04);
  transform: scale(1.01);
}

.wb-quote-showcase {
  gap: 1.1rem;
}

.wb-quote-showcase blockquote {
  max-width: 26ch;
}

.wb-quote-showcase--centered {
  justify-items: center;
}

.wb-quote-showcase--left_aligned {
  justify-items: start;
}

.wb-quote-showcase--framed {
  border-color: color-mix(in srgb, var(--accent) 34%, var(--border));
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--accent) 12%, transparent), transparent 36%),
    color-mix(in srgb, var(--card) 92%, transparent);
}

.wb-quote-showcase--minimal {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.wb-quote-showcase--emphasis-quiet blockquote {
  font-size: clamp(1rem, 1.6vw, 1.18rem);
}

.wb-quote-showcase--emphasis-strong blockquote {
  font-size: clamp(1.15rem, 2vw, 1.6rem);
}

.wb-quote-showcase--emphasis-hero blockquote {
  font-size: clamp(1.45rem, 3.4vw, 2.4rem);
  line-height: 1.25;
}

.wb-quote-showcase.wb-width-narrow {
  max-width: 32rem;
}

.wb-quote-showcase.wb-width-standard {
  max-width: 46rem;
}

.wb-quote-showcase.wb-width-wide {
  max-width: 62rem;
}

.wb-audio-player {
  gap: 1.25rem;
}

.wb-audio-player__featured-track {
  display: grid;
  gap: 1rem;
  padding: 1rem;
  border-radius: calc(var(--elements-border-radius) - 2px);
  border: 1px solid color-mix(in srgb, var(--accent) 34%, var(--border));
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.05), transparent 54%),
    rgba(255, 255, 255, 0.03);
}

.wb-audio-player__featured-copy {
  display: grid;
  gap: 0.7rem;
}

.wb-audio-player__artwork {
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 4px);
  border: 1px solid color-mix(in srgb, var(--border) 72%, white 28%);
  background: rgba(255, 255, 255, 0.03);
}

.wb-audio-player__artwork img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wb-audio-player__artwork--small {
  width: 4.25rem;
  aspect-ratio: 1;
}

.wb-audio-player--showcase_track .wb-audio-player__featured-track {
  grid-template-columns: minmax(9rem, 12rem) minmax(0, 1fr);
  align-items: center;
}

.wb-audio-player--showcase_track .wb-audio-player__artwork {
  aspect-ratio: 1;
}

.wb-audio-player--compact_player .wb-audio-player__tracks {
  gap: 0.65rem;
}

.wb-audio-player--compact_player .wb-audio-player__track {
  gap: 0.55rem;
  padding: 0.8rem 0.9rem;
}

.wb-audio-player__track .wb-audio-player__artwork--small {
  margin-bottom: 0.1rem;
}

.wb-download-list {
  gap: 1.15rem;
}

.wb-download-list__group {
  margin: 0.15rem 0 0;
  font-size: 0.88rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--accent) 70%, white 30%);
}

.wb-download-list--file_cards .wb-download-list__items {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  gap: 0.9rem;
}

.wb-download-list--file_cards .wb-download-list__item {
  height: 100%;
  align-items: start;
  flex-direction: column;
}

.wb-download-list--file_cards .wb-download-list__type {
  justify-items: start;
}

.wb-download-list--compact_list .wb-download-list__item {
  padding: 0.75rem 0.9rem;
}

.wb-download-list--compact_list .wb-download-list__type {
  gap: 0.2rem;
}

@media (max-width: 820px) {
  .wb-timeline--milestone_list .wb-timeline__item,
  .wb-press-mentions--compact_list .wb-press-mentions__item,
  .wb-audio-player--showcase_track .wb-audio-player__featured-track {
    grid-template-columns: 1fr;
  }

  .wb-review-highlights--inline_badges .wb-review-highlights__items {
    display: grid;
  }

  .wb-download-list__item {
    flex-direction: column;
  }

  .wb-download-list__type {
    justify-items: start;
  }
}

/* Phase C structure / utility maturation */
.wb-announcement-bar {
  border-radius: calc(var(--elements-border-radius) + 4px);
  border: 1px solid color-mix(in srgb, var(--border) 76%, white 24%);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.06), transparent 58%),
    color-mix(in srgb, var(--card) 92%, transparent);
  box-shadow: var(--shadow);
}

.wb-announcement-bar--subtle {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 56%),
    color-mix(in srgb, var(--surface) 78%, var(--card));
}

.wb-announcement-bar--center .wb-announcement-bar__inner,
.wb-announcement-bar--center .wb-announcement-bar__content {
  justify-items: center;
  text-align: center;
}

.wb-announcement-bar--density-compact {
  padding: 0.85rem 1rem;
}

.wb-announcement-bar--density-standard {
  padding: 1rem 1.15rem;
}

.wb-announcement-bar__content,
.wb-announcement-bar__message {
  display: grid;
  gap: 0.4rem;
}

.wb-announcement-bar__message {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.wb-announcement-bar__kicker {
  margin: 0;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: color-mix(in srgb, var(--accent) 72%, white 28%);
}

.wb-announcement-bar__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 16%, transparent);
  color: color-mix(in srgb, var(--accent) 74%, white 26%);
}

.wb-announcement-bar__cta {
  min-height: 2.45rem;
  padding-inline: 1rem;
}

.wb-announcement-bar.is-multiline .wb-announcement-bar__text {
  white-space: normal;
}

.wb-section-heading {
  gap: 0.8rem;
}

.wb-section-heading__inner,
.wb-section-heading__headline {
  display: grid;
  gap: 0.65rem;
}

.wb-section-heading__accent {
  display: inline-flex;
  width: clamp(3.5rem, 12vw, 6rem);
  height: 0.2rem;
  border-radius: 999px;
  background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 78%, white 22%), transparent);
}

.wb-section-heading--accent-divider .wb-section-heading__accent {
  background: color-mix(in srgb, var(--border) 72%, white 28%);
}

.wb-section-heading--size-small h2 {
  font-size: clamp(1.5rem, 2vw, 2rem);
}

.wb-section-heading--size-standard h2 {
  font-size: clamp(1.85rem, 3vw, 2.7rem);
}

.wb-section-heading--size-large h2 {
  font-size: clamp(2.25rem, 4vw, 3.5rem);
}

.wb-section-heading--size-display h2 {
  font-size: clamp(2.8rem, 6vw, 4.8rem);
}

.wb-section-heading--spacing-compact {
  padding-block: 1rem;
}

.wb-section-heading--spacing-standard {
  padding-block: 1.5rem;
}

.wb-section-heading--spacing-spacious {
  padding-block: 2.2rem;
}

.wb-section-heading--showcase {
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--accent) 14%, transparent), transparent 32%),
    color-mix(in srgb, var(--card) 94%, transparent);
}

.wb-section-heading__intro--narrow {
  max-width: 38ch;
}

.wb-section-heading__intro--standard {
  max-width: 52ch;
}

.wb-section-heading__intro--wide {
  max-width: 68ch;
}

.wb-button-row {
  gap: 1rem;
}

.wb-button-row__header,
.wb-button-row__split,
.wb-button-row__featured {
  display: grid;
  gap: 0.85rem;
}

.wb-button-row__description {
  margin: 0;
  color: color-mix(in srgb, var(--text) 80%, var(--muted));
}

.wb-button-row--centered .wb-button-row__actions,
.wb-button-row--centered .wb-button-row__secondary,
.wb-button-row--centered .wb-button-row__featured {
  justify-content: center;
}

.wb-button-row--stacked .wb-button-row__actions,
.wb-button-row--stacked .wb-button-row__secondary {
  flex-direction: column;
  align-items: flex-start;
}

.wb-button-row--size-sm .wb-btn {
  min-height: 2.4rem;
  padding: 0.65rem 0.95rem;
  font-size: 0.92rem;
}

.wb-button-row--size-md .wb-btn {
  min-height: 2.85rem;
}

.wb-button-row--size-lg .wb-btn {
  min-height: 3.15rem;
  padding: 0.95rem 1.25rem;
}

.wb-button-row--spacing-compact {
  gap: 0.7rem;
}

.wb-button-row--spacing-standard {
  gap: 1rem;
}

.wb-button-row--spacing-spacious {
  gap: 1.35rem;
}

.wb-button-row__split {
  align-items: start;
}

.wb-button-row__featured .wb-btn {
  width: fit-content;
}

.wb-section-nav {
  gap: 1rem;
}

.wb-section-nav__items {
  display: grid;
  gap: 0.7rem;
}

.wb-section-nav--inline_pills .wb-section-nav__items {
  display: flex;
  flex-wrap: wrap;
}

.wb-section-nav--compact_anchor .wb-section-nav__items {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.wb-section-nav__items a {
  gap: 0.45rem;
  transition: border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.wb-section-nav__items a.is-active {
  border-color: color-mix(in srgb, var(--accent) 52%, var(--border));
  color: color-mix(in srgb, var(--text) 92%, white 8%);
}

.wb-section-nav--active-pill .wb-section-nav__items a.is-active {
  background: color-mix(in srgb, var(--accent) 18%, transparent);
}

.wb-section-nav--active-underline .wb-section-nav__items a.is-active {
  box-shadow: inset 0 -2px 0 color-mix(in srgb, var(--accent) 68%, white 32%);
}

.wb-section-nav--active-accent .wb-section-nav__items a.is-active {
  background: linear-gradient(135deg, color-mix(in srgb, var(--accent) 20%, transparent), transparent);
}

.wb-section-nav.is-compact .wb-section-nav__items a {
  min-height: 2.15rem;
  padding: 0.45rem 0.7rem;
}

.wb-section-nav__number,
.wb-section-nav__icon {
  color: color-mix(in srgb, var(--accent) 74%, white 26%);
  font-weight: 700;
}

.wb-icon-nav-grid--icon_cards .wb-icon-nav-grid__item,
.wb-icon-nav-grid--minimal_tiles .wb-icon-nav-grid__item,
.wb-icon-nav-grid--compact_grid .wb-icon-nav-grid__item {
  align-content: start;
}

.wb-icon-nav-grid--compact_grid .wb-icon-nav-grid__items {
  gap: 0.8rem;
}

.wb-icon-nav-grid--density-compact .wb-icon-nav-grid__item {
  padding: 0.85rem;
}

.wb-icon-nav-grid__media {
  display: block;
  overflow: hidden;
  border-radius: calc(var(--elements-border-radius) - 6px);
  background: color-mix(in srgb, var(--surface) 72%, black 28%);
  aspect-ratio: 4 / 3;
}

.wb-icon-nav-grid__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wb-icon-nav-grid--icon-soft .wb-icon-nav-grid__icon {
  opacity: 0.78;
}

.wb-icon-nav-grid--icon-strong .wb-icon-nav-grid__icon {
  font-size: 1.7rem;
}

.wb-related-content--compact_list .wb-related-content__items {
  grid-template-columns: 1fr;
}

.wb-related-content--simple_links .wb-related-content__item {
  grid-template-columns: 1fr;
  background: transparent;
  border-color: color-mix(in srgb, var(--border) 66%, transparent);
}

.wb-related-content--density-compact .wb-related-content__item {
  padding: 0.85rem;
}

.wb-divider-block {
  display: grid;
  gap: 0.7rem;
}

.wb-divider-block__line {
  display: block;
  width: 100%;
  border-top: 1px solid color-mix(in srgb, var(--border) 82%, white 18%);
}

.wb-divider-block--soft_line .wb-divider-block__line {
  border-top-style: dashed;
  opacity: 0.72;
}

.wb-divider-block--accent_line .wb-divider-block__line {
  border-top-color: color-mix(in srgb, var(--accent) 58%, var(--border));
}

.wb-divider-block--ornament .wb-divider-block__line {
  position: relative;
  width: min(100%, 16rem);
}

.wb-divider-block--ornament .wb-divider-block__line::after {
  content: "";
  position: absolute;
  top: -0.45rem;
  left: calc(50% - 0.4rem);
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent) 72%, white 28%);
  box-shadow: 0 0 0 0.28rem color-mix(in srgb, var(--card) 92%, transparent);
}

.wb-divider-block--width-short .wb-divider-block__line {
  width: min(100%, 8rem);
}

.wb-divider-block--width-medium .wb-divider-block__line {
  width: min(100%, 14rem);
}

.wb-divider-block--left {
  justify-items: start;
}

.wb-divider-block--center {
  justify-items: center;
}

.wb-divider-block--spacing-tight {
  margin-block: 0.8rem;
}

.wb-divider-block--spacing-normal {
  margin-block: 1.4rem;
}

.wb-divider-block--spacing-airy {
  margin-block: 2.2rem;
}

.wb-divider-block__label {
  font-size: 0.82rem;
  color: color-mix(in srgb, var(--text) 70%, var(--muted));
}

.wb-spacer--xs {
  min-height: clamp(0.85rem, 2vw, 1rem);
}

.wb-spacer--sm {
  min-height: clamp(1.2rem, 2.8vw, 1.6rem);
}

.wb-spacer--md {
  min-height: clamp(1.8rem, 4vw, 2.6rem);
}

.wb-spacer--lg {
  min-height: clamp(2.6rem, 5vw, 4rem);
}

.wb-spacer--xl {
  min-height: clamp(3.5rem, 6vw, 6rem);
}

.wb-background-section--subtle {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 58%),
    color-mix(in srgb, var(--surface) 72%, var(--card));
}

.wb-background-section--padding-compact {
  padding: 1rem;
}

.wb-background-section--padding-standard {
  padding: clamp(1.2rem, 2.6vw, 1.9rem);
}

.wb-background-section--padding-spacious {
  padding: clamp(1.6rem, 3.5vw, 2.8rem);
}

.wb-background-section--emphasis-quiet {
  border-color: color-mix(in srgb, var(--border) 74%, transparent);
}

.wb-background-section--emphasis-strong {
  box-shadow: 0 18px 42px color-mix(in srgb, var(--accent) 14%, transparent);
}

.wb-background-section__hint {
  margin: 0;
  font-size: 0.88rem;
  color: color-mix(in srgb, var(--text) 72%, var(--muted));
}

.wb-html-embed--frame-compact .wb-html-embed__frame,
.wb-html-embed--frame-compact .wb-html-embed__frame iframe {
  min-height: 16rem;
}

.wb-html-embed--frame-borderless .wb-html-embed__frame {
  border: 0;
  background: transparent;
}

@media (min-width: 900px) {
  .wb-button-row__split {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  }

  .wb-button-row--centered .wb-button-row__split {
    justify-items: center;
  }
}

@media (max-width: 760px) {
  .wb-announcement-bar__message {
    grid-template-columns: 1fr;
  }

  .wb-announcement-bar__actions {
    width: 100%;
    justify-content: flex-start;
  }

  .wb-button-row__split {
    grid-template-columns: 1fr;
  }
}
