html {
  font-size: 16px;
}

body.dt-market-body {
  background:
    radial-gradient(circle at top left, rgba(255, 56, 92, 0.07), transparent 26%),
    linear-gradient(180deg, #fff8fa 0, #ffffff 22%, #ffffff 100%);
  color: var(--color-text);
  font-family: var(--font-base);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.dt-market-body,
body.dt-market-body button,
body.dt-market-body input,
body.dt-market-body select,
body.dt-market-body textarea {
  font-family: var(--font-base);
}

main.dt-main-content {
  min-height: calc(100vh - 220px);
}

.dt-page-shell {
  margin-top: 24px;
}

.dt-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: var(--radius-pill);
  background: #fff2f5;
  color: var(--color-rausch-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.dt-section-link,
.dt-text-link {
  color: var(--color-text);
  font-weight: 700;
  text-decoration: none;
}

.dt-section-link i {
  margin-left: 8px;
}

.dt-text-link:hover,
.dt-section-link:hover,
.dt-product-card a:hover,
.dt-detail-breadcrumb a:hover,
.dt-purchase-head a:hover {
  color: var(--color-rausch-dark);
}

.dt-v2-section {
  margin-top: 48px;
}

.dt-v2-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

.dt-v2-section-head h2,
.dt-detail-story h2,
.dt-detail-facts h2,
.dt-detail-more h2 {
  margin: 0 0 6px;
  color: var(--color-text);
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.dt-v2-section-head p,
.dt-v2-page-hero p,
.dt-detail-story p,
.dt-detail-more p,
.dt-v2-results-head p {
  margin: 0;
  color: var(--color-text-sub);
}

.dt-v2-page-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding: 34px;
  border: 1px solid rgba(255, 56, 92, 0.12);
  border-radius: 28px;
  background: linear-gradient(135deg, #fff8fa 0, #ffffff 48%, #fff4ef 100%);
  box-shadow: var(--shadow-card);
}

.dt-v2-page-hero h1 {
  margin: 12px 0 10px;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  letter-spacing: -0.05em;
}

.container {
  max-width: 1440px;
  padding-right: 18px;
  padding-left: 18px;
}

@media (max-width: 991.98px) {
  .dt-page-shell {
    margin-top: 16px;
  }

  .dt-v2-section-head,
  .dt-v2-page-hero {
    flex-direction: column;
    align-items: start;
  }

  .container {
    padding-right: 14px;
    padding-left: 14px;
  }
}
