/* Alfa Park V34 — contact page collision fix / clean location UX. */

/* Legacy main.css styles every direct div inside .apv-contact-card as icon+content grid.
   V33 introduced semantic direct-child containers, so neutralise that old rule here. */
.apv-contact-overview .apv-contact-card > .apv-contact-card__top{
  display:block!important;
  grid-template-columns:none!important;
  gap:0!important;
  padding:0 0 22px!important;
  margin:0 0 8px!important;
  border-top:0!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
}
.apv-contact-overview .apv-contact-card > .apv-contact-card__item{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
  padding:16px 0!important;
  margin:0!important;
  border-top:0!important;
  border-bottom:1px solid rgba(255,255,255,.1)!important;
}
.apv-contact-overview .apv-contact-card > .apv-contact-card__item:last-child{
  border-bottom:0!important;
  padding-bottom:0!important;
}
.apv-contact-overview .apv-contact-card__top .apv-contact-card__kicker{
  display:block!important;
  width:auto!important;
  height:auto!important;
  background:none!important;
  border-radius:0!important;
}
.apv-contact-overview .apv-contact-card__top h2{
  display:block!important;
  color:#fff!important;
  margin:0 0 9px!important;
}
.apv-contact-overview .apv-contact-card__top p{
  display:block!important;
  max-width:34ch;
  color:#c9d6ce!important;
}
.apv-contact-overview .apv-contact-card__item p{
  min-width:0!important;
}
.apv-contact-overview .apv-contact-card__item p a{
  width:auto!important;
  overflow-wrap:anywhere;
}

/* Top panel is contact-only. Navigation actions live once, next to the actual map. */
.apv-contact-overview .apv-contact-card__actions{display:none!important}

/* Make the map section the single, clean arrival/navigation component. */
.apv-location-card{
  align-items:stretch;
}
.apv-location-panel{
  display:flex;
  flex-direction:column;
}
.apv-location-actions{
  margin-top:auto!important;
  padding-top:30px;
}
.apv-location-actions .apv-btn{
  width:100%;
  min-width:0;
  white-space:normal;
  text-align:center;
}
.apv-location-call{
  min-width:0;
}

@media(max-width:780px){
  .apv-contact-overview .apv-contact-card{
    padding:26px 22px!important;
    border-radius:22px!important;
  }
  .apv-contact-overview .apv-contact-card > .apv-contact-card__item{
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px 0!important;
  }
  .apv-contact-overview .apv-contact-card__item>span{
    width:40px!important;
    height:40px!important;
  }
  .apv-location-panel{
    display:block;
  }
  .apv-location-actions{
    margin-top:24px!important;
    padding-top:0;
  }
}
