/* Shared public-page rhythm. Keep the existing brand palette and reserve blue for actions. */
.main-content {
  --page-space: clamp(3rem, 5vw, 4.5rem);
}

.main-content .hero-section {
  min-height: 0;
  padding-block: clamp(4.5rem, 8vw, 7rem);
}

.main-content .hero-section .hero-title,
.main-content .collection-hero .page-title,
.main-content .rp-showcase .rp-title,
.main-content .bundle-hero .page-title {
  font-size: clamp(2.3rem, 4vw, 3.45rem);
  font-weight: 500;
  line-height: 1.16;
  letter-spacing: -.035em;
}

.main-content .section-title,
.main-content .commissions-heading h2,
.main-content .commissions-request-copy h2 {
  font-size: clamp(1.65rem, 2.5vw, 2.35rem);
  font-weight: 500;
  letter-spacing: -.025em;
}

.main-content .hero-section .hero-subtitle,
.main-content .page-description,
.main-content .rp-showcase .rp-tagline,
.main-content .section-description {
  font-size: clamp(.98rem, 1.2vw, 1.08rem);
  line-height: 1.7;
}

.main-content .blog-hero,
.main-content .docs-hero,
.main-content .resources-hero,
.main-content .rp-hero,
.main-content .bundle-hero {
  padding-block: var(--page-space);
  border-bottom: 0;
}

.main-content .product-card,
.main-content .blog-card,
.main-content .collection-feature-card,
.main-content .commissions-work-card,
.main-content .bundle-purchase-panel {
  box-shadow: none;
  border-radius: .75rem;
}

.main-content .btn-primary {
  background: var(--vp-c-brand-1);
  box-shadow: none;
  font-weight: 500;
}
.main-content .btn-primary:hover { background: var(--vp-c-brand-2); }
.main-content .btn-primary::before { display: none; }
.main-content .bundle-purchase-saving { font-weight: 500; }

.main-content .product-card:hover,
.main-content .blog-card:hover,
.main-content .collection-feature-card:hover {
  transform: none;
  box-shadow: none;
  border-color: var(--vp-c-text-2);
}

.main-content .rp-panel { border-top-width: 1px; }
.main-content .rp-card-title { color: var(--vp-c-text-1); font-weight: 500; }
.main-content .products-grid { gap: 1.25rem; }
.main-content .bundle-purchase-panel { padding: 1.5rem; }
.main-content a:not([class]):visited { color: var(--vp-c-brand-2); }
.main-content .commissions-request-section { border-top: 0; }

.cart-region-check {
  display: grid;
  gap: .55rem;
  padding: 1rem 0;
  margin-top: 1rem;
  border-top: 1px solid var(--vp-c-border);
  font-size: .88rem;
  line-height: 1.55;
}
.cart-region-check p { margin: 0; color: var(--vp-c-text-1); font-weight: 500; }
.cart-region-check span { color: var(--vp-c-text-2); }
.cart-region-check .btn-secondary { justify-self: start; margin-top: .3rem; }
.cart-delivery-note { margin: 1rem .25rem 0; }
.cart-delivery-note a { color: var(--vp-c-text-1); text-underline-offset: .15em; }

@media (max-width: 640px) {
  .main-content .hero-section { padding-block: 3.25rem; }
  .main-content .blog-hero,
  .main-content .docs-hero,
  .main-content .resources-hero,
  .main-content .rp-hero,
  .main-content .bundle-hero { padding-block: 2.75rem; }
  .main-content .hero-section .hero-title,
  .main-content .collection-hero .page-title,
  .main-content .rp-showcase .rp-title,
  .main-content .bundle-hero .page-title { font-size: clamp(2rem, 8vw, 2.8rem); }
}
