/* ===== Page Banner ===== */
.page-banner{
  position:relative;
  min-height:260px;
  padding:1.25rem 0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  background:linear-gradient(rgba(14,42,30,.82), rgba(14,42,30,.72)),
    url('../img/page-banner-generic.jpg') center/cover no-repeat;
}
.page-banner h1{
  font-size:2.6rem;
  font-weight:700;
  margin-bottom:.6rem;
}
.page-banner .underline{
  width:70px;
  height:3px;
  background:var(--rhc-gold);
  margin:0 auto;
}

section{
  padding:4.5rem 0;
}
.bg-cream{
  background:var(--rhc-cream);
}
/* tighten the gap between the banner and the "Downloads" heading */
#downloads{
  padding-top:2.5rem;
}

.section-title{
  text-align:center;
  margin-bottom:2.6rem;
}
.section-title h2{
  color:var(--rhc-green);
  font-weight:700;
}
.section-title .underline{
  width:60px;
  height:3px;
  background:var(--rhc-gold);
  margin:.6rem auto 0;
}
.section-title p{
  max-width:640px;
  margin:1rem auto 0;
  font-size:.95rem;
}

/* ===== Media links (icon row) ===== */
.media-links{
  display:flex;
  align-items:stretch;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
}
.media-link{
  flex:0 1 240px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1.1rem;
  padding:1.75rem 1rem;
  text-decoration:none;
  color:var(--rhc-green);
  transition:transform .2s ease, color .2s ease;
}
.media-link + .media-link{
  border-left:1px solid #d9d3c2;
}
.media-link:hover{
  transform:translateY(-5px);
  color:var(--rhc-gold);
}
.media-link .ml-icon{
  width:104px;
  height:104px;
  border:2px solid currentColor;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:2.6rem;
}
.media-link .ml-label{
  font-weight:600;
  font-size:1.02rem;
  letter-spacing:.3px;
}

@media(max-width:575.98px){
  .media-links{ flex-direction:column; align-items:center; }
  .media-link{ width:100%; max-width:280px; }
  .media-link + .media-link{
    border-left:none;
    border-top:1px solid #d9d3c2;
  }
}

@media(max-width:767px){
  .page-banner h1{ font-size:1.9rem; }
  .page-banner{ min-height:200px; }
  section{ padding:3rem 0; }
  .topbar{text-align:center;}
  .topbar .col-md-6{margin-bottom:.3rem;}
}
