html,
body {
  max-width: 100%;
  overflow-x: clip;
}

.vs-site-main,
.vs-shop-page,
.vs-product-page,
.vs-members-app {
  min-width: 0;
}

.vs-container,
.vs-header-inner,
.vs-shop-hero,
.vs-shop-section,
.vs-product-sales-hero,
.vs-product-section {
  box-sizing: border-box;
}

.vs-hero h1,
.vs-shop-hero h1,
.vs-product-sales-hero h1,
.vs-section h2,
.vs-shop-section h2,
.vs-product-section h2,
.vs-members-top-copy h1 {
  max-width: 100%;
  overflow-wrap: break-word;
  text-wrap: balance;
}

.vs-button,
.vs-header-cta,
.vs-shop-card-details {
  border-radius: 10px;
  letter-spacing: 0;
  text-align: center;
}

.vs-button {
  min-height: 48px;
  box-shadow: 0 12px 28px rgba(127, 45, 42, .16);
}

.vs-button.secondary {
  box-shadow: none;
}

.vs-kicker {
  letter-spacing: .08em;
}

.vs-lead {
  max-width: 66ch;
}

img,
video,
audio {
  max-width: 100%;
}
