.h7-quick {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--h7-space-4);
  max-width: 560px;
}
.h7-quick a {
  display: flex;
  flex-direction: column;
  gap: var(--h7-space-1);
  min-height: 88px;
  justify-content: center;
  padding: var(--h7-space-4) var(--h7-space-5);
  border: 1px solid var(--h7-border-default);
  border-radius: var(--h7-radius-xs);
  color: var(--h7-text-primary);
}
.h7-quick a:hover { border-color: var(--h7-border-strong); background: var(--h7-surface-inset); }
.h7-quick strong { font-weight: var(--h7-weight-book); font-size: var(--h7-size-body-sm); }
.h7-quick span {
  font-size: var(--h7-size-caption);
  color: var(--h7-text-muted);
  overflow-wrap: anywhere;
}
.h7-quick a:last-child { grid-column: 1 / -1; }

.h7-contact {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--h7-space-10);
  align-items: start;
}
@media (max-width: 1024px) { .h7-contact { grid-template-columns: 1fr; } }

.h7-contact__form { display: flex; flex-direction: column; gap: var(--h7-space-9); }


.h7-reasons { display: flex; flex-wrap: wrap; gap: var(--h7-space-3); }
.h7-reasons label { cursor: pointer; }
.h7-reasons input { position: absolute; opacity: 0; pointer-events: none; }
.h7-reasons input:focus-visible + span { box-shadow: var(--h7-focus-ring); }

.h7-details {
  display: flex;
  flex-direction: column;
  padding: var(--h7-space-6);
  border-radius: var(--h7-radius-card);
}
.h7-details section {
  padding-block: var(--h7-space-5);
  border-bottom: 1px solid var(--h7-border-default);
}
.h7-details h3 {
  font-size: 0.8125rem;
  font-weight: var(--h7-weight-medium);
  text-transform: uppercase;
  letter-spacing: var(--h7-tracking-caps);
  color: var(--h7-text-muted);
  margin-bottom: var(--h7-space-3);
}
.h7-details p, .h7-details a { font-size: var(--h7-size-body-sm); color: var(--h7-text-primary); display: block; }
.h7-details .h7-caption { color: var(--h7-text-muted); margin-top: var(--h7-space-2); }


.h7-result-panel {
  padding: var(--h7-space-8);
  border: 1px solid var(--h7-border-default);
  border-radius: var(--h7-radius-card);
  background: var(--h7-surface-raised);
}
.h7-result-panel:focus { outline: none; box-shadow: var(--h7-focus-ring); }
.h7-result-panel h2 { margin-bottom: var(--h7-space-4); }
.h7-result-panel p { color: var(--h7-text-secondary); margin-bottom: var(--h7-space-5); }


.h7-map {
  aspect-ratio: 24 / 7;
  min-height: 240px;
  border-radius: var(--h7-radius-card);
  overflow: hidden;
}
.h7-map iframe { width: 100%; height: 100%; border: 0; }


.h7-block + .h7-block { margin-top: var(--h7-space-9); }

.h7-fieldset {
  border: 0;
  padding: 0;
  margin-inline: 0;
  min-width: 0;
}
.h7-fieldset__legend { padding: 0; margin-bottom: var(--h7-space-2); }
.h7-fieldset__note { color: var(--h7-text-muted); font-size: var(--h7-size-body-sm); }
.h7-notice { margin-bottom: var(--h7-space-6); }
.h7-hint { color: var(--h7-text-accent); }
.h7-steps h3 { margin-bottom: var(--h7-space-2); }

.h7-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--h7-space-4);
  margin-top: var(--h7-space-5);
}




.h7-details section:last-child { border-bottom: none; padding-bottom: 0; }


@media (max-width: 640px) {
  .h7-quick { grid-template-columns: 1fr 1fr; gap: var(--h7-space-3); }
  .h7-quick a { min-height: 76px; padding: var(--h7-space-3) var(--h7-space-4); }
  .h7-quick strong { font-size: var(--h7-size-caption); }
  .h7-quick span { font-size: 0.75rem; }

  .h7-contact { gap: var(--h7-space-8); }
  .h7-details { padding: var(--h7-space-5); }
  .h7-reasons { gap: var(--h7-space-2); }
  .h7-reasons .h7-tag { padding-inline: var(--h7-space-4); font-size: 0.875rem; }
  .h7-map { min-height: 200px; }
  .h7-result-panel { padding: var(--h7-space-5); }


  .h7-details a { padding-block: var(--h7-space-2); min-height: 40px; }
  .h7-row-actions .h7-btn { width: 100%; }
}

@media (max-width: 480px) {
  .h7-quick { grid-template-columns: 1fr; }
  .h7-quick a:last-child { grid-column: auto; }
}
