/* Custom styles for the logo and navigation */
.logo {
  margin-top: auto;
  margin-bottom: auto;
}

.navbar-brand {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  margin-right: 2rem;
}

.navbar-nav .nav-link {
  color: #505050;
  font-weight: bold;
}

.navbar-nav .nav-link:hover,
.navbar-nav .dropdown-item:hover {
  color: #1a237e;
}

footer {
  background-color: #f5f5f5;
  padding: 30px 0;
}

.footer-logo {
  color: #1a237e;
  font-size: 24px;
  font-weight: bold;
}

.footer-tagline {
  color: #505050;
  font-size: 14px;
}

.footer-columns {
  margin-bottom: 30px;
}

.footer-title {
  color: #1a237e;
  font-size: 18px;
  font-weight: bold;
}

.footer-link {
  color: #505050;
  text-decoration: none;
}

.footer-link:hover {
  color: #1a237e;
}

.footer-blog-preview {
  color: #505050;
  font-size: 14px;
}

.footer-contact-info {
  color: #505050;
  font-size: 14px;
}

.footer-social-icons {
  margin-top: 10px;
}

.footer-social-icons a {
  margin-right: 10px;
  color: #505050;
}

.footer-social-icons a:hover {
  color: #1a237e;
}

.footer-copyright {
  margin-top: 20px;
  color: #505050;
  font-size: 12px;
}

.hero-image {
  background-image: url("images/home-hero5.jpg");
  background-size: cover;
  background-position: center;
  height: 700px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.subhero-image {
  background-image: url("images/home-hero4.png");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.audit-hero {
  background-image: url("images/audit-hero2.jpg");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.defend-hero {
  background-image: url("images/defend-hero4.jpg");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.audit-subhero {
  background-image: url("images/audit-hero1.jpg");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.defend-subhero {
  background-image: url("images/defend-hero3.jpg");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.subhero-text {
  position: absolute;

  text-align: center;

  margin-left: auto;
  margin-right: auto;
  width: 50%;
  padding: 50px;
  margin-top: 50px;
  margin-bottom: 50px;
  background-color: #fff;
  font-size: 24px;
  color: #1a237e;
  border: #505050 4px solid;;
}

.hero-text {
  color: #fff;
  text-align: center;
}




.hero-text h1 {
  /*text-transform: uppercase;
  letter-spacing: 4px;
  
  -webkit-text-stroke: 1px #000;

  margin-left: -25%;*/

  text-shadow: 2px 2px 4px rgba(0, 0, 0, 1);
}

.audit-text {
  position: absolute;
  width: 50%;
  

  margin-left: auto;
  margin-right: auto;

}

.audit-hero .audit-text{
  text-align: left;
}


.audit-text .display-6{
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  
}

@media (max-width: 767px) {
  .audit-text .display-6 {
    font-size: 20px; /* Font size for mobile browsers */
    margin-top: 20px;
  }

  .access-text img{
    object-fit: cover;
  }

  .subhero-text h1{
    font-size: 20px;;
  }
}

.audit-text h1 {
  font-size: 28px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.hero-text p {
  font-size: 24px;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  -webkit-text-stroke: 1px #000;
}

.phone-email a,
.phone,
.email {
  color: #1a237e;
}

.phone-email a:hover {
  color: #505050;
}

.contact-info {
  padding-right: 0.75rem;
}

.form-container {
  border: 1px solid #1a237e;
  border-radius: 5px;
  padding: 20px;
}

.form-title {
  background-color: #1a237e;
  color: white;
  padding: 10px;
  border-radius: 5px;
}

.custom-button {
  background-color: #1a237e;
  color: white;
  transition: background-color 0.3s;
}

.custom-button:hover {
  background-color: white;
  color: #1a237e;
}

.custom-button:active {
  background-color: #505050;
}

.support-hero {
  background-image: url("images/support-hero3.jpg");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.support-subhero {
  background-image: url("images/support-hero2.png");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.support-text {
  position: absolute;
  width: 50%;
  

  margin-left: auto;
  margin-right: auto;

}

.support-hero .support-text{
  text-align: left;
}


.support-text .display-6{
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  
}

.support-text h1 {
  font-size: 28px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.audit-text h2{
  font-size: 36px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.blue-text{
  color: #1a237e;
}

@media all and (min-width: 992px) {
	.navbar .nav-item .dropdown-menu{ display: none; }
	.navbar .nav-item:hover .nav-link{   }
	.navbar .nav-item:hover .dropdown-menu{ display: block; }
	.navbar .nav-item .dropdown-menu{ margin-top:0; }
}

.dev-hero {
  background-image: url("images/dev-hero3.jpg");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.dev-subhero {
  background-image: url("images/dev-hero2.png");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.dev-text {
  position: absolute;
  width: 50%;
  

  margin-left: auto;
  margin-right: auto;

}

.dev-hero .dev-text{
  text-align: left;
}


.dev-text .display-6{
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  
}

.dev-text h1 {
  font-size: 28px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.dm-hero {
  background-image: url("images/dm-hero2.jpg");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.dm-subhero {
  background-image: url("images/dm-hero.png");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.dm-text {
  position: absolute;
  width: 50%;
  

  margin-left: auto;
  margin-right: auto;

}

.dm-hero .dm-text{
  text-align: left;
}


.dm-text .display-6{
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  
}

.dm-text h1 {
  font-size: 28px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.access-hero {
  background-image: url("images/accessibility-hero3.jpg");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.access-subhero {
  background-image: url("images/accessibility-hero2.png");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.access-text {
  position: absolute;
  width: 50%;
  

  margin-left: auto;
  margin-right: auto;

}

.access-hero .access-text{
  text-align: left;
}


.access-text .display-6{
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  
}

.access-text h1 {
  font-size: 28px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.card {
  margin-bottom: 20px;
}

.card-img-top {
  height: 200px;
  object-fit: contain;
}

.card-img-top .partner-logo {
  height: 200px;
  object-fit: contain;
}

.partners-hero {
  background-image: url("images/partners-hero.png");
  background-size: cover;
  background-position: center;
  height: 800px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.partners-subhero {
  background-image: url("images/partners-hero.png");
  background-size: cover;
  background-position: center;
  height: 250px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: #505050 4px solid;
}

.partners-text {
  position: absolute;
  width: 50%;
  

  margin-left: auto;
  margin-right: auto;

}

.partners-hero .partners-text{
  text-align: left;
}


.partners-text .display-6{
  color: #fff;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  
}

.partners-text h1 {
  font-size: 28px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 1);
  -webkit-text-stroke: 1px #000;
}

.extron-bg{
  background-color: #1a237e;
}

.black-bg{
  background-color: #000;
}

a:link div.card {
  color: #1a237e;
}

a:hover div.card {
  color: #505050;
}

.contactsocials{
  color: #1a237e;
}

.contactsocials:hover{
  color: #505050
}

#reportPreview {
  border-radius: 5px;
  cursor: pointer;
  transition: 0.3s;
}

#reportPreview:hover {opacity: 0.7;}

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.9); /* Black w/ opacity */
}

/* Modal Content (Image) */
.modal-content {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 700px;
}

/* Caption of Modal Image (Image Text) - Same Width as the Image */
#caption {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 700px;
  text-align: center;
  color: #ccc;
  padding: 10px 0;
  height: 150px;
}

/* Add Animation - Zoom in the Modal */
.modal-content, #caption {
  animation-name: zoom;
  animation-duration: 0.6s;
}

@keyframes zoom {
  from {transform:scale(0)}
  to {transform:scale(1)}
}

/* The Close Button */
.close {
  position: absolute;
  top: 15px;
  right: 35px;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px){
  .modal-content {
    width: 100%;
  }
}