/* Controlled public area pages. Every selector stays inside the public root. */
.public-site .public-area {
  overflow: clip;
}

.public-site .public-area__hero {
  border-bottom: 1px solid var(--vk-public-color-border);
}

.public-site .public-area__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(16rem, 0.55fr);
  align-items: end;
  gap: clamp(var(--vk-public-space-7), 7vw, var(--vk-public-space-9));
}

.public-site .public-area__hero-copy,
.public-site .public-area__focus-note,
.public-site .public-area__path,
.public-site .public-area__question {
  min-width: 0;
}

.public-site .public-area__hero-copy h1 {
  max-width: 15ch;
}

.public-site .public-area__hero-actions {
  margin-top: var(--vk-public-space-6);
}

.public-site .public-area__professional-line {
  color: var(--vk-public-color-text-muted);
  font-size: var(--vk-public-font-size-small);
  font-weight: var(--vk-public-weight-medium);
}

.public-site .public-area__focus-note {
  border-top: 0.25rem solid var(--vk-public-color-accent);
  background: var(--vk-public-color-surface);
  box-shadow: var(--vk-public-shadow-subtle);
  padding: var(--vk-public-space-6);
}

.public-site .public-area__focus-note > :last-child {
  margin-bottom: 0;
}

.public-site .public-area__section {
  scroll-margin-top: var(--vk-public-space-5);
}

.public-site .public-area__split,
.public-site .public-area__nearby-grid,
.public-site .public-area__contact-grid {
  display: grid;
  grid-template-columns: minmax(14rem, 0.7fr) minmax(0, 1.3fr);
  gap: clamp(var(--vk-public-space-6), 7vw, var(--vk-public-space-9));
}

.public-site .public-area__reading-copy {
  max-width: var(--vk-public-width-reading);
}

.public-site .public-area__reading-copy > :last-child {
  margin-bottom: 0;
}

.public-site .public-area__question-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 clamp(var(--vk-public-space-6), 5vw, var(--vk-public-space-8));
  border-top: 1px solid var(--vk-public-color-border);
}

.public-site .public-area__question {
  border-bottom: 1px solid var(--vk-public-color-border);
  padding-block: var(--vk-public-space-6);
}

.public-site .public-area__question h3,
.public-site .public-area__path h3 {
  font-size: var(--vk-public-font-size-h4);
}

.public-site .public-area__question > :last-child,
.public-site .public-area__path > :last-child {
  margin-bottom: 0;
}

.public-site .public-area__path-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--vk-public-space-6);
}

.public-site .public-area__path {
  border-top: 0.2rem solid var(--vk-public-color-primary);
  background: var(--vk-public-color-surface);
  padding: var(--vk-public-space-6);
}

.public-site .public-area__path-audience {
  margin-bottom: var(--vk-public-space-3);
  color: var(--vk-public-color-accent);
  font-size: var(--vk-public-font-size-small);
  font-weight: var(--vk-public-weight-bold);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.public-site .public-area__preparation-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(17rem, 0.8fr);
  align-items: start;
  gap: clamp(var(--vk-public-space-6), 7vw, var(--vk-public-space-9));
}

.public-site .public-area__verification-note {
  margin-top: var(--vk-public-space-6);
}

.public-site .public-area__preparation-list {
  margin: 0;
  border-top: 0.25rem solid var(--vk-public-color-accent);
  background: var(--vk-public-color-background-alt);
  padding: var(--vk-public-space-6) var(--vk-public-space-6) var(--vk-public-space-6) calc(var(--vk-public-space-6) + 1.2rem);
}

.public-site .public-area__nearby-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--vk-public-space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}

.public-site .public-area__nearby-list li {
  margin: 0;
}

.public-site .public-area__nearby-list a {
  display: flex;
  align-items: center;
  min-height: 3.5rem;
  border: 1px solid var(--vk-public-color-border);
  background: var(--vk-public-color-surface);
  padding: var(--vk-public-space-3) var(--vk-public-space-4);
}

.public-site .public-area__contact {
  border-top: 1px solid var(--vk-public-color-border);
}

.public-site .public-area__contact-grid {
  align-items: center;
}

.public-site .public-area__contact-actions {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: var(--vk-public-space-3);
}

@media (max-width: 64rem) {
  .public-site .public-area__hero-grid,
  .public-site .public-area__split,
  .public-site .public-area__preparation-grid,
  .public-site .public-area__nearby-grid,
  .public-site .public-area__contact-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 44rem) {
  .public-site .public-area__hero-copy h1 {
    max-width: none;
  }

  .public-site .public-area__question-list,
  .public-site .public-area__path-list,
  .public-site .public-area__nearby-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .public-site .public-area__contact-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .public-site .public-area__contact-actions .vk-public-button {
    width: 100%;
  }

  .public-site .public-area__focus-note,
  .public-site .public-area__path,
  .public-site .public-area__preparation-list {
    padding: var(--vk-public-space-5);
  }
}
