/* Nav-Bar CSS */

@media screen and (max-width: 768px) {
    #mainNav {
        background-color: #630130!important;
    }
}

/* End Nav-Bar CSS */
/* Carousel Styles CSS */
.carousel-caption {
    top: 300px!important;
}

@media screen and (max-width: 1210px) {
    .carousel-caption {
        bottom: auto!important;
        top: 200px!important;
    }
}

@media screen and (max-width: 970px) {
    .carousel-caption {
        top: 100px!important;
    }
    
    .carousel-caption h2, .carousel-caption h1 {
        font-size: 1.5rem!important;
    }
}

@media screen and (max-width: 768px) {
    .fixed-top {
        position: static!important;
    }
    
    .carousel-caption {
        left: 10%!important;
        right: 10%!important;
    }
}

@media screen and (max-width: 650px) {
    .carousel-indicators {
        display: none!important;
    }
    
    .carousel-caption {
        top: 40px!important;
    }
}

@media screen and (max-width: 515px) {
    .carousel-caption h1 {
        display: none!important;
    }
    
    .carousel-caption h2, .carousel-caption h1 {
        font-size: 1.25rem!important;
    }
}

@media screen and (max-width: 415px) {
    .carousel-caption {
        top: 10px!important;
    }
}

@media screen and (max-width: 330px) {
    .carousel-caption h2, .carousel-caption h1 {
        font-size: 1rem!important;
    }
}
/* End Carousel CSS */
/* Start Services CSS */

    #Services, #StructuredCabling, #CommercialCablingSystems, #NetworkCablingSystems, #VoiceDataCablingSystems, #AudioVideoSurveillance, #About {
      padding: 0px 150px!important;
    }
      
    header.masthead .intro-text .intro-heading {
      font-size: 4vw!important;
    }

    .services-subheader {
        width: 80%;
        font-size: 3vw;
        font-style: italic;
        line-height: 55px;
        margin-bottom: 25px;
    }
    
    @media screen and (max-width: 1275px) {
        header.masthead .intro-text .intro-heading {
          font-size: 6vw!important;
          line-height: 65px!important;
        }
        
        .services-subheader {
            line-height: 45px;
        }
    }
    
    @media screen and (max-width: 725px) {
        #Services, #StructuredCabling, #CommercialCablingSystems, #NetworkCablingSystems, #VoiceDataCablingSystems, #AudioVideoSurveillance, #About {
            padding: 0px 50px!important;
        }
        
        .services-subheader {
            font-size: 4vw!important;
        }
        
        header.masthead .intro-text .intro-heading {
            font-size: 5vw!important;
        }
        
        header.masthead .intro-text {
            padding-top: 10vh!important;
            padding-bottom: 10vh!important;
        }
        
        .services-subheader {
            width: 90%;
        }
    }
    
    @media screen and (max-width: 600px) {
        #Services, #StructuredCabling, #CommercialCablingSystems, #NetworkCablingSystems, #VoiceDataCablingSystems, #AudioVideoSurveillance, #About {
            padding: 0px 40px!important;
        }
        
        .services-subheader {
            font-size: 5vw!important;
        }
        
        header.masthead .intro-text .intro-heading {
            font-size: 6vw!important;
        }
        
        #Services .intro-text .btn-xl, #StructuredCabling .intro-text .btn-xl, #CommercialCablingSystems .intro-text .btn-xl, #NetworkCablingSystems .intro-text .btn-xl, #VoiceDataCablingSystems .intro-text .btn-xl, #AudioVideoSurveillance .intro-text .btn-xl, #About .intro-text .btn-xl {
            font-size: 18px;
            padding: 10px 20px!important;
        }
    }
    
    @media screen and (max-width: 450px) {
        #Services, #StructuredCabling, #CommercialCablingSystems, #NetworkCablingSystems, #VoiceDataCablingSystems, #AudioVideoSurveillance, #About {
            padding: 0px 20px!important;
        }
        
        .services-subheader {
            font-size: 6vw!important;
        }
        
        header.masthead .intro-text .intro-heading {
            font-size: 7vw!important;
        }
    }
    
    @media screen and (max-width: 350px) {
        
        .services-subheader {
            font-size: 7vw!important;
        }
        
        header.masthead .intro-text .intro-heading {
            font-size: 8vw!important;
        }
    }

/* End Services CSS */
/* General CSS */

    .intro-text {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
    }
    
/* End General CSS */
/* Start About Us CSS */

    #About .intro-text {
        padding-top: 20vh!important;
        padding-bottom: 20vh!important;
    }
    
    @media screen and (max-width: 725px) {
        #About .intro-text {
            padding-top: 10vh!important;
            padding-bottom: 10vh!important;
        } 
    }
    
    .faq-section {
        max-width: 800px;
        margin: 50px auto;
        padding: 20px;
        background-color: #fff;
        border-radius: 8px;
    }
    .faq-title {
        font-size: 2em;
        text-align: center;
        color: #333;
    }
    .faq-intro {
        font-size: 1em;
        color: #666;
        text-align: center;
        margin-bottom: 20px;
    }
    .faq-item {
        margin-bottom: 10px;
        border-top: 1px solid #ddd;
        padding: 15px 0;
    }
    .faq-question {
        font-size: 1.1em;
        color: #333;
        cursor: pointer;
        position: relative;
    }
    .faq-question::after {
        content: "+";
        font-size: 1.3em;
        position: absolute;
        right: 0;
        transition: transform 0.3s;
    }
    .faq-question.active::after {
        transform: rotate(45deg);
    }
    .faq-answer {
        height: 0;
        overflow: hidden;
        font-size: 1em;
        color: #666;
        margin-top: 10px;
        transition: height 0.4s ease;
    }

/* End About CSS */