﻿.visual-main {
  flex: 1;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 96px 24px 120px;
}

.visual-hero {
  text-align: center;
  margin: 0 auto 120px;
}

.visual-hero-title {
  margin: 0 0 18px;
  font-size: var(--type-hero-title);
  font-weight: 500;
  line-height: var(--line-heading);
}

.visual-hero-subtitle {
  margin: 0 auto 42px;
  max-width: 780px;
  font-size: var(--type-body);
  line-height: var(--line-body);
  opacity: 0.92;
}

.visual-hero-actions {
  display: flex;
  justify-content: center;
  gap: 22px;
  flex-wrap: nowrap;
}

.visual-pill-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: min(100%, var(--button-min-width));
  height: var(--button-height);
  padding: 0 var(--button-padding-x);
  border-radius: var(--button-radius);
  text-decoration: none;
  white-space: nowrap;
  color: #ffffff;
  font-size: var(--type-ui);
  line-height: 1;
  background: rgba(217, 217, 217, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
  transition: transform 0.15s ease, opacity 0.15s ease;
}

.visual-pill-button:hover {
  transform: translateY(-1px);
  opacity: 0.95;
}

.visual-pill-button:active {
  transform: translateY(0);
  opacity: 0.9;
}

.visual-section {
  margin: 0 auto 120px;
}

.visual-section .section-title {
  margin-bottom: 56px;
}

.visual-option {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 500px;
  gap: 56px;
  align-items: center;
  margin-bottom: 88px;
}

.visual-option:last-child {
  margin-bottom: 0;
}

.visual-option--reverse {
  grid-template-columns: 500px minmax(0, 1fr);
}

.visual-option-title {
  margin: 0 0 14px;
  font-size: var(--type-subsection-title);
  line-height: var(--line-heading);
  font-weight: 500;
}

.visual-option-list {
  margin: 0;
  padding-left: 24px;
  font-size: var(--type-body);
  line-height: var(--line-body);
}

.visual-image-card {
  margin: 0;
  border-radius: 30px;
  overflow: hidden;
  background: rgba(217, 217, 217, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.visual-image-card--large {
  height: 428px;
}

.visual-image-card--medium {
  height: 375px;
}

.visual-image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.visual-examples {
  margin: 0 auto 120px;
}

.visual-examples .section-title {
  margin-bottom: 40px;
}

.visual-examples .model-carousel-stage {
  height: 600px;
}

.visual-cta {
  text-align: center;
  margin: 0 auto 80px;
}

.visual-cta .section-title {
  margin-bottom: 28px;
}

.visual-pill-button--wide {
  width: min(100%, var(--button-min-width));
}

@media (max-width: 1100px) {
  .visual-main {
    padding-top: 72px;
  }

  .visual-hero {
    margin-bottom: 88px;
  }

  .visual-hero-subtitle {
    margin-bottom: 32px;
  }

  .visual-pill-button {
    width: min(100%, var(--button-min-width));
  }

  .visual-option,
  .visual-option--reverse {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 48px;
  }

  .visual-option--reverse .visual-option-content {
    order: 2;
  }

  .visual-option--reverse .visual-image-card {
    order: 1;
  }

  .visual-image-card {
    max-width: 620px;
    margin: 0 auto;
    height: auto;
    aspect-ratio: 5 / 4;
  }

  .visual-examples .model-carousel-stage {
    height: 520px;
  }
}

@media (max-width: 700px) {
  .visual-main {
    padding: 56px 16px 88px;
  }

  .visual-pill-button {
    width: min(100%, var(--button-min-width));
  }

  .visual-examples .model-carousel-stage {
    height: min(82vw, 390px);
  }
}


@media (max-width: 560px) {
  .visual-hero-actions {
    flex-wrap: wrap;
  }

  .visual-hero-actions .visual-pill-button {
    width: 100%;
    max-width: 360px;
  }
}

