/* ------------------------------------------------------------------
 * Contact page styles
 * ------------------------------------------------------------------ */
.contact-wrap{
  max-width:1100px; margin:0 auto; padding:0 1.25rem;
  text-align:left;
}

/* full-page-width red intro box */
.contact-cta{
  width:100vw;
  margin:0 calc(50% - 50vw) 4.5rem;
  background:#9e082f; color:#fff;
  padding:4rem 2.4rem; text-align:center;
}
.contact-cta p{
  margin:0 auto; max-width:1000px;
  font-size:2.4rem; line-height:1.6; color:#fff;
}

/* email cards */
.contact-grid{
  display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:2rem;
  margin-bottom:3.5rem;
}
/* medium: Services full width on top, Training + Under Attack share the next line */
@media (max-width:820px){
  .contact-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .contact-grid > .contact-item:first-child{ grid-column:1 / -1; }
}
@media (max-width:560px){
  .contact-grid{ grid-template-columns:1fr; }
  .contact-grid > .contact-item:first-child{ grid-column:auto; }
}
.contact-item{
  display:grid; grid-template-columns:auto 1fr; align-items:center; gap:1.4rem;
  background:#0c0c0e; /*border-top:3px solid #DE0039;*/ padding:2.4rem 2rem;
  text-align:left;
  transition:transform .3s ease, box-shadow .3s ease;
}
.contact-item__body{ min-width:0; }
.contact-item__body .contact-item__label{ display:block; margin-bottom:.7rem; }
.contact-item:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 44px -26px rgba(0,0,0,0.95);
}
.contact-item--alert{ background:#140608; }

/* icon + label on one line */
.contact-item__head{
  display:flex; align-items:center; gap:1.3rem; margin-bottom:1.6rem;
}
.contact-item__icon{
  width:48px; height:48px; flex-shrink:0; justify-self:center;
  display:flex; align-items:center; justify-content:center;
  color:#DE0039; background:rgb(14,14,14);
}
.contact-item__icon svg{ width:24px; height:24px; }
.contact-item__label{
  margin:0;
  font-family:'Bebas Neue', sans-serif; font-weight:400;
  font-size:2.3rem; letter-spacing:.07em; line-height:1.05;
  color:#fff;
}
.contact-item__value{ font-size:1.7rem; line-height:1.5; color:#fff; margin:0; }
.contact-item__value a{
  color:#fff; text-decoration:underline;
  text-decoration-color:#DE0039; text-decoration-thickness:2px; text-underline-offset:4px;
}
.contact-item__value a:hover{ text-decoration-color:#fff; }
.contact-item__note{ display:block; margin-top:1rem; font-size:1.35rem; color:rgba(255,255,255,0.45); }

/* location: address card (photo bg) + map */
.contact-location{
  display:grid; grid-template-columns:1fr 1.4fr; gap:2rem; align-items:stretch;
}
@media (max-width:820px){ .contact-location{ grid-template-columns:1fr; } }
.contact-address{
  position:relative; min-height:340px; text-align:left;
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:2.8rem 2.4rem; color:#fff;
  background-color:#0c0c0e;
  background-image:linear-gradient(rgba(8,8,10,0.35), rgba(8,8,10,0.85)), url('../images/masdar-city.jpg');
  background-size:cover; background-position:center;
}
.contact-address .contact-item__head{ margin-bottom:.8rem; }
.contact-address .contact-item__label{ color:#fff; }
.contact-address__value{ margin:0; font-size:2.1rem; line-height:1.5; color:#fff; }
.contact-map{ min-height:340px; }
.contact-map iframe{ display:block; width:100%; height:100%; min-height:340px; border:0; }