/* MRO Contact Section: styles for the acf/mro-contact block. */

.mro-section.mro-contact { padding-block: 0; }

/* ---- Booking band ---- */
.mro-contact .mro-cta-band {
  padding-block: var(--wp--preset--spacing--100) calc(var(--wp--preset--spacing--100) + var(--wp--preset--spacing--90));
  background: var(--wp--preset--color--accent-strong);
  color: var(--wp--preset--color--base);
}
.mro-contact .mro-cta-band__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--80);
}
.mro-contact .mro-cta-band__title {
  margin: 0 0 var(--wp--preset--spacing--20);
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--xxxl);
  font-weight: 400;
  line-height: var(--wp--custom--leading--display);
  letter-spacing: var(--wp--custom--tracking--display);
  text-transform: uppercase;
  color: inherit;
}
.mro-contact .mro-cta-band__text {
  max-width: var(--wp--custom--layout--measure);
  margin: 0;
  font-size: var(--wp--preset--font-size--lg);
}

/* ---- Card + map grid, pulled up over the band ---- */
.mro-contact .mro-contact__grid {
  position: relative;
  z-index: var(--wp--custom--z--raised);
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: var(--wp--preset--spacing--60);
  margin-top: calc(var(--wp--preset--spacing--100) * -1);
  padding-bottom: var(--wp--custom--layout--section-pad);
}
.mro-contact .mro-contact-card {
  padding: var(--wp--preset--spacing--70);
  background: var(--wp--preset--color--base);
  border-radius: var(--wp--custom--radius--lg);
  box-shadow: var(--wp--preset--shadow--lg);
}
.mro-contact .mro-contact-card__title {
  margin: 0 0 var(--wp--preset--spacing--40);
  font-family: var(--wp--preset--font-family--body);
  font-size: var(--wp--preset--font-size--xs);
  font-weight: 700;
  letter-spacing: var(--wp--custom--tracking--caps);
  text-transform: uppercase;
  color: var(--wp--preset--color--accent-deep);
}
.mro-contact .mro-contact-card__title--spaced { margin-top: var(--wp--preset--spacing--70); }

.mro-contact .mro-details__row {
  padding-block: var(--wp--preset--spacing--30);
  border-bottom: 1px solid var(--wp--preset--color--line);
}
.mro-contact .mro-details__row:last-child { border-bottom: 0; }
.mro-contact .mro-details dt {
  display: flex;
  align-items: center;
  gap: var(--wp--preset--spacing--20);
  font-size: var(--wp--preset--font-size--xs);
  font-weight: 600;
  letter-spacing: var(--wp--custom--tracking--caps);
  text-transform: uppercase;
  color: var(--wp--preset--color--subtle);
}
.mro-contact .mro-details dt .mro-icon { font-size: var(--wp--custom--icon--sm); color: var(--wp--preset--color--accent-deep); }
.mro-contact .mro-details dd { margin: var(--wp--preset--spacing--10) 0 0; font-weight: 500; }
.mro-contact .mro-details dd a { color: var(--wp--preset--color--contrast); font-weight: 600; text-decoration: none; }
.mro-contact .mro-details dd a:hover { color: var(--wp--preset--color--accent-deep); text-decoration: underline; }
.mro-contact .mro-details small { font-size: var(--wp--preset--font-size--sm); font-weight: 400; color: var(--wp--preset--color--subtle); }

.mro-contact .mro-booking-links { display: flex; flex-wrap: wrap; gap: var(--wp--preset--spacing--30); }

/* ---- Map card ---- */
.mro-contact .mro-map-card {
  position: relative;
  min-height: 30rem;
  overflow: hidden;
  border-radius: var(--wp--custom--radius--lg);
  background: var(--wp--preset--color--mint-pale);
  box-shadow: var(--wp--preset--shadow--lg);
}
.mro-contact .mro-map-card__art { position: absolute; inset: 0; width: 100%; height: 100%; }
.mro-contact .mro-map-art__land { fill: var(--wp--preset--color--mint-pale); }
.mro-contact .mro-map-art__park { fill: var(--wp--preset--color--mint-soft); }
.mro-contact .mro-map-art__road { fill: none; stroke: var(--wp--preset--color--base); stroke-width: 14; stroke-linecap: round; }
.mro-contact .mro-map-art__road--main { stroke-width: 24; }
.mro-contact .mro-map-art__lane { fill: none; stroke: var(--wp--preset--color--mist); stroke-width: 6; stroke-linecap: round; }

.mro-contact .mro-map-card__pin {
  position: absolute;
  top: 38%;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(var(--wp--custom--icon--box) * 1.3);
  height: calc(var(--wp--custom--icon--box) * 1.3);
  border: var(--wp--custom--border--thick) solid var(--wp--preset--color--base);
  border-radius: var(--wp--custom--radius--full);
  background: var(--wp--preset--color--accent-strong);
  color: var(--wp--preset--color--base);
  font-size: var(--wp--custom--icon--lg);
  box-shadow: var(--wp--preset--shadow--lg);
  transform: translate(-50%, -50%);
}
.mro-contact .mro-map-card__pin::after {
  content: "";
  position: absolute;
  inset: calc(var(--wp--preset--spacing--40) * -1);
  border: 2px solid var(--wp--preset--color--mint);
  border-radius: var(--wp--custom--radius--full);
}
.mro-contact .mro-map-card__info {
  position: absolute;
  left: var(--wp--preset--spacing--60);
  right: var(--wp--preset--spacing--60);
  bottom: var(--wp--preset--spacing--60);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--40);
  padding: var(--wp--preset--spacing--60);
  background: var(--wp--preset--color--base);
  border-radius: var(--wp--custom--radius--md);
  box-shadow: var(--wp--preset--shadow--md);
}
.mro-contact .mro-map-card__name {
  margin: 0 0 var(--wp--preset--spacing--10);
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--xl);
  line-height: var(--wp--custom--leading--display);
  letter-spacing: var(--wp--custom--tracking--display);
  text-transform: uppercase;
}
.mro-contact .mro-map-card__addr { margin: 0; font-size: var(--wp--preset--font-size--sm); color: var(--wp--preset--color--subtle); }
.mro-contact .mro-map-card__actions { display: flex; flex-direction: column; align-items: flex-end; gap: var(--wp--preset--spacing--20); }
.mro-contact .mro-map-card__hint { margin: 0; font-size: var(--wp--preset--font-size--xs); color: var(--wp--preset--color--subtle); }

@media (max-width: 1023.98px) {
  .mro-contact .mro-contact__grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767.98px) {
  .mro-contact .mro-cta-band__inner .mro-btn { width: 100%; }
  .mro-contact .mro-map-card { min-height: 26rem; }
  .mro-contact .mro-map-card__info {
    left: var(--wp--preset--spacing--40);
    right: var(--wp--preset--spacing--40);
    bottom: var(--wp--preset--spacing--40);
    padding: var(--wp--preset--spacing--50);
  }
  .mro-contact .mro-map-card__actions { align-items: stretch; width: 100%; }
}
@media (max-width: 479.98px) {
  .mro-contact .mro-contact-card { padding: var(--wp--preset--spacing--60); }
  .mro-contact .mro-booking-links .mro-btn { flex: 1; }
}
