/* ===== HERO: make the Columns stop affecting layout ===== */
.pr-home-hero { position: relative; }
.pr-home-hero-columns { position: relative; min-height: 760px; }
.pr-home-hero-columns > .wp-block-column { position: static !important; }

/* Left stack overlay */
.pr-home-leftstack{
  position: absolute;
  left: 98px;
  top: 145px;
  z-index: 3;
}

/* Cards */
.pr-home-card--race{ width: 300px; }
.pr-home-card--cta{ width: 405px; margin-top: 24px; }

/* Map behind */
.pr-home-map-column{
  position: absolute;
  left: 308px;
  top: 116px;
  width: 1035px;
  height: 608px;
  z-index: 1;
  pointer-events: none;
}

/* Map frame */
.pr-home-mapwrap,
.pr-home-map{ width: 100%; height: 100%; }

.pr-home-map{
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0,0,0,.25);
}

#pr-home-map-canvas{ width: 100%; height: 100%; }

/* Responsive fallback */
@media (max-width: 1100px){
  .pr-home-hero-columns{ min-height: auto; }
  .pr-home-leftstack,
  .pr-home-map-column{
    position: relative;
    left: auto; top: auto;
    width: 100%;
  }
  .pr-home-map-column{ height: 420px; margin-top: 16px; pointer-events: auto; }
  .pr-home-card--race,
  .pr-home-card--cta{ width: 100%; }
}