#ctabanner-container { position: relative; margin: 100px 0px 0px 0px; float: left; width: 100%; height: 390px; }

#ctabanner-container .backgroundimg { background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; height: 390px; position: relative; }

#ctabanner-container .color-overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(255, 255, 255, 0.75); }

#ctabanner-container .banner-content { display: table; height: 390px; width: 60%; }

#ctabanner-container .banner-content .banner-align { display: table-cell; vertical-align: middle; }

#ctabanner-container .banner-content .banner-align h2 { color: #003977 !important; font-size: 3rem; margin-bottom: 15px; margin-top: 0px; position: relative; }

#ctabanner-container .banner-content .banner-align h2::before { content: ''; width: 5px; height: 100%; background: linear-gradient(0deg, #cccc00 0%, #00b0f0 100%); position: absolute; left: -20px; top: 0px; }

#ctabanner-container img.personimg { position: absolute; bottom: 0; right: 0; width: 770px; }

@media (max-width: 575px) { #ctabanner-container { height: auto; margin: 0px; }
  #ctabanner-container .backgroundimg { height: auto; }
  #ctabanner-container .banner-content { float: left; width: 100%; height: auto; padding: 20px; }
  #ctabanner-container .banner-content .banner-align h2 { font-size: 2.1rem; }
  #ctabanner-container img.personimg { display: none; } }

@media (min-width: 576px) and (max-width: 767px) { #ctabanner-container { height: auto; margin: 0px; }
  #ctabanner-container .backgroundimg { height: auto; }
  #ctabanner-container .banner-content { float: left; width: 100%; height: auto; padding: 20px; }
  #ctabanner-container .banner-content .banner-align h2 { font-size: 2.1rem; }
  #ctabanner-container img.personimg { position: unset; float: left; width: 100%; } }

@media (min-width: 768px) and (max-width: 991px) { #ctabanner-container img.personimg { right: -100px; width: 550px !important; } }
