/* Homepage only: native parking disclosure beside the existing location block. */
.main-parking {
  max-width: 1080px;
  margin: 36px auto 0;
  border-top: 1px solid var(--gold-soft);
  border-bottom: 1px solid var(--gold-line);
  scroll-margin-top: 120px;
  color: var(--text-primary);
}
.main-parking > summary {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 20px;
  padding: 24px 0;
  list-style: none;
  cursor: pointer;
}
.main-parking > summary::-webkit-details-marker { display: none; }
.main-parking-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border: 1px solid var(--gold);
  border-radius: 4px;
  color: var(--gold-warm);
  font: 600 28px/1 var(--font-body);
}
.main-parking-title {
  display: block;
  color: var(--text-bright);
  font: 400 clamp(25px, 2.6vw, 31px)/1.2 var(--font-display);
}
.main-parking-subtitle {
  display: block;
  margin-top: 7px;
  color: var(--text-primary);
  font: 400 14px/1.6 var(--font-body);
}
.main-parking-toggle { position: relative; width: 20px; height: 20px; color: var(--gold-warm); }
.main-parking-toggle::before, .main-parking-toggle::after {
  content: "";
  position: absolute;
  top: 9px;
  left: 3px;
  width: 14px;
  height: 1px;
  background: currentColor;
}
.main-parking-toggle::after { transform: rotate(90deg); }
.main-parking[open] .main-parking-toggle::after { display: none; }
.main-parking > summary:focus-visible, .main-parking a:focus-visible {
  outline: 2px solid var(--gold-warm);
  outline-offset: 5px;
}
.main-parking-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 36px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.main-parking-place { min-width: 0; padding: 24px 0; border-top: 1px solid var(--gold-line); }
.main-parking-place h4 {
  margin: 0 0 12px;
  color: var(--text-bright);
  font: 500 17px/1.5 var(--font-body);
}
.main-parking-place p { margin: 8px 0; font: 400 14px/1.75 var(--font-body); }
.main-parking-place .main-parking-distance { color: var(--gold-warm); }
.main-parking-place strong { font-weight: 600; color: var(--text-bright); }
.main-parking-links { display: flex; flex-wrap: wrap; gap: 4px 22px; margin-top: 12px; }
.main-parking-links a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  color: var(--gold-warm);
  font: 400 13px/1.6 var(--font-body);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.main-parking-links a:hover { color: var(--text-bright); }
.main-parking-note {
  margin: 0;
  padding: 20px 0 24px;
  border-top: 1px solid var(--gold-line);
  color: var(--text-primary);
  font: 400 13px/1.8 var(--font-body);
}
@media (max-width: 700px) {
  .main-parking > summary { grid-template-columns: 40px minmax(0, 1fr) 20px; gap: 14px; }
  .main-parking-icon { width: 40px; height: 40px; font-size: 25px; }
  .main-parking-list { grid-template-columns: 1fr; }
  .main-parking-subtitle { font-size: 13px; }
}
