@media (max-width: 1199px) {
    .hero-banner {
        padding-block: 60px;
    }

    .tick-item {
        font-size: 25px;
    }

    .industries-sec {
        min-height: 600px;
    }

    .ser-unit:not(.large) {
        display: flex;
        flex-direction: column
    }

    .ser-img {
        aspect-ratio: 1.86;
    }

    .coverage-card h3,
    .wws-card-title,
    .capability-card h4,
    .ser-head,
    .process-card-industrial h4,
    .cert-card-title,
    .card-title,
    .ps-title {
        font-size: 24px;
    }

    .form-control {
        padding: 15px 20px;
        font-size: 16px;
    }

    .footer-logo-img {
        height: 50px;
    }

    .footer-bottom {
        flex-direction: column;
    }

    .capability-card {
        padding: 45px 35px;
    }

    .cap-num,
    .wws-num,
    .card-number {
        font-size: 70px;
    }

    .story-pull {
        font-size: 25px;
    }

    .cert-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .wws-card {
        padding: 35px 30px;
    }

    .gallery-grid-row .gallery-item {
        height: 320px;
    }

    .process-card-industrial {
        padding: 35px 30px;
    }

    .process-step-num {
        width: 55px;
        height: 55px;
    }

    .cert-box {
        padding: 30px;
    }

    .cs-banner {
        padding-block: 40px;
    }

    .cs-divider {
        width: 100%;
        height: 1px;
    }

    .ps-num-wrap {
        width: 65px;
        height: 65px;
        font-size: 30px;
    }

    .faq-accordion .accordion-button {
        font-size: 22px;
        padding-block: 22px;
    }

    .coverage-label {
        padding: 24px 40px;
    }

    .contact-cards {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 991px) {
    .page-ban-tag {
        font-size: 16px;
    }

    .about-sec,
    .industries-sec,
    .services-sec,
    .why-sec,
    .contact-sec,
    .faq-main,
    .overview-sec,
    .capabilities-sec,
    .thermal-detail-sec,
    .process-sec,
    .story-sec,
    .mission-sec,
    .certifications-sec,
    .wws-sec,
    .all-services-sec,
    .ps-section,
    .main-contact-sec,
    .image-cta-band {
        padding-block: 70px;
    }

    .industries-sec {
        min-height: 600px;
    }

    .ser-unit.large {
        column-gap: 35px;
    }

    .ser-unit.large .ser-img {
        aspect-ratio: 1.19;
    }

    .contact-sec img {
        max-height: 350px;
        object-fit: cover;
    }

    .contact-form-wrap,
    .main-contact-form-wrap {
        padding: 40px;
    }

    .footer-top {
        grid-template-columns: 1fr 1fr;
    }

    .page-banner {
        min-height: 0px;
    }

    .capability-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gallery-grid-row .gallery-item {
        height: 300px;
    }

    .wws-grid {
        grid-template-columns: 1fr;
    }

    .thermal-overlay {
        top: 20px;
        right: -20px;
    }

    .service-card {
        padding: 40px 35px;
    }

    .ps-grid {
        grid-template-columns: 1fr 1fr;
        row-gap: 50px;
    }

    .ps-grid::before {
        display: none;
    }

    .faq-sidebar {
        position: static;
        margin-bottom: 50px;
    }

    .faq-sidebar-nav {
        display: flex;
        flex-wrap: wrap;
        border-left: none;
        column-gap: 20px;
        border-bottom: 2px solid var(--color-dull);
    }

    .faq-sidebar-nav li a {
        border-left: none;
        border-bottom: 2px solid transparent;
        padding: 10px 0px;
    }

    .faq-sidebar-nav li a.active {
        border-bottom-color: var(--color-primary);
    }

    .faq-accordion .accordion-button {
        font-size: 20px;
        padding-block: 20px;
        padding-right: 50px;
    }

    .faq-accordion .accordion-button::before {
        width: 30px;
        height: 30px;
    }

    .faq-accordion .accordion-button::after {
        width: 14px;
        height: 14px;
    }

    .inquiry-check .toggle-btn {
        font-size: 16px;
    }

    .about-video {
        position: relative;
        width: 100%;
        height: 350px;
    }

}

@media (max-width: 767px) {
    .announcement-bar p {
        font-size: 15px;
    }

    header {
        padding-block: 25px;
    }

    .nav-logo img {
        height: 35px;
    }

    .mobile-sidebar {
        padding: 70px 40px 60px;
    }

    .mobile-nav-links a {
        font-size: 32px;
    }

    .hero-banner {
        padding-block: 50px;
    }

    .hero-right {
        aspect-ratio: 1.25;
    }

    .ticker {
        padding-block: 20px;
    }

    .tick-item {
        font-size: 22px;
    }

    .page-ban-tag {
        font-size: 14px;
    }

    .page-banner,
    .about-sec,
    .industries-sec,
    .services-sec,
    .why-sec,
    .contact-sec,
    .faq-main,
    .overview-sec,
    .capabilities-sec,
    .thermal-detail-sec,
    .process-sec,
    .story-sec,
    .mission-sec,
    .certifications-sec,
    .wws-sec,
    .all-services-sec,
    .ps-section,
    .main-contact-sec {
        padding-block: 60px;
    }

    .ind-grid {
        gap: 30px;
        margin-inline: 0px;
    }

    .ind-card {
        padding-inline: 0px !important;
        border-inline: 0px !important;
    }

    .ind-grid,
    .ser-master-grid,
    .capability-grid,
    .mission-grid,
    .cert-grid,
    .ps-grid,
    .services-grid {
        grid-template-columns: 1fr;
    }

    .ser-unit {
        padding: 30px 25px;
        gap: 20px;
    }

    .ser-unit.large {
        grid-column: 1;
        display: flex;
        flex-direction: column;
    }

    .why-head,
    .coverage-card h3,
    .wws-card-title,
    .capability-card h4,
    .ser-head,
    .process-card-industrial h4,
    .cert-card-title,
    .card-title,
    .ps-title {
        font-size: 22px;
    }

    .why-item {
        gap: 20px;
    }

    .contact-form-wrap,
    .main-contact-form-wrap {
        padding: 30px 20px;
    }

    .form-header h3 {
        font-size: 28px;
    }

    footer h5 {
        font-size: 22px;
    }

    .ser-banner-stats {
        padding: 40px 30px;
        max-width: 100%;
    }

    .capability-card {
        padding: 30px 30px 45px;
    }

    .gallery-grid-row .gallery-item {
        height: 300px;
    }

    .ser-banner-stats {
        padding: 30px 25px;
    }

    .story-pull {
        font-size: 18px;
        padding-left: 20px;
    }

    .img-badge {
        padding: 12px 20px;
    }

    .thermal-overlay {
        top: 10px;
        right: -10px;
        width: 160px;
    }

    .gallery-info {
        padding: 25px;
    }

    .service-card {
        padding: 40px 30px;
    }

    .cs-banner-name {
        font-size: 20px;
    }

    .coverage-label {
        border-bottom: 2px solid var(--color-dull);
        border-right: none;
        padding-inline: 20px;
        font-size: 26px;
    }

    .coverage-items {
        padding-inline: 20px;
    }

    .contact-card,
    .response-badge {
        padding: 20px;
        gap: 20px;
    }

    .inquiry-check .toggle-btn {
        font-size: 14px;
    }
}

@media (max-width: 575px) {
    .footer-top,
    .contact-cards {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 992px) {

    .about-video {
        display: block;
    }

}


/* mobile-tablet */
@media (max-width: 1023px) {

    .navbar {
        display: none !important;
    }

    .mob-nav {
        --mobile-nav: 75px;
    }

    .mob-nav-con {
        top: 0;
        position: relative !important;
        width: 100%;
        height: var(--mobile-nav);
        background: var(--color-black) !important;
        transition: 0.5s ease;
        display: flex;
        justify-content: center !important;
        z-index: 999 !important;
        border-bottom: 1px solid var(--color-primary);
    }

    .mob-nav-con.scrolled {
        position: fixed !important;
    }

    .mob-nav-overlay {
        position: fixed;
        width: 100vw;
        height: 82vh;
        transform: translate(100%, 0);
        display: none;
        transition: 0.8s ease;
        background: var(--color-black) !important;
        z-index: 998;
        padding-top: calc(var(--mobile-nav) - 15px);
        padding-bottom: var(--mobile-nav);
    }

    .mob-nav-overlay.scrolled {
        top: var(--mobile-nav);
        height: 92vh;
    }

    .mob-nav-overlay .container {
        height: 100% !important;
    }
    
    .mob-nav button.nav-toggle {
        width: 40px !important;
        height: 40px !important;
        background: transparent;
        border: 3px solid var(--color-secondary);
        border-radius: 100px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .mob-nav button.nav-toggle i {
        font-size: 25px;
        color: var(--color-secondary);
    }

    .mob-nav .mob-nav-inner {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        gap: 30px;
        height: 100% !important;
    }

    .mob-nav .nav-links {
        display: flex;
        flex-direction: column;
        align-items: start;
        justify-content: start;
        gap: 0px;
        height: fit-content;
        width: 100% !important;
    }

    ul.sub-menu {
        grid-template-columns: repeat(1, 1fr);
    }

    .mob-nav a.nav-link {
        color: var(--color-white);
        padding: 15px 2px;
        border: none;
        border-bottom: 2px solid var(--color-primary);
        width: 100% !important;
        border-radius: 0;
    }

    .mob-nav a.nav-link:hover {
        border: none;
        border-bottom: 2px solid var(--color-primary);
        color: var(--color-primary);
    }

    .mob-nav a.nav-link:last-child {
        border-bottom: none;
    }

    .mob-dropdown {
        width: 100%;
    }

    .dropdown-btn {
        display: flex !important;
        justify-content: space-between;
        align-items: center;
    }

    .mob-dropdown.open > a.nav-link {
        border-bottom: 2px solid #ffffff00;
    }

    .mob-dropdown.open .dropdown-btn i {
        transform: rotate(0deg);
        transition: 0.3s ease;
    }

    .mob-dropdown.open .dropdown-btn i {
        transform: rotate(180deg);
    }

    .dropdown-content {
        max-height: 0;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        background-color: var(--color-off);
        padding: 0 15px;
        border-radius: 10px;
        transition: max-height 0.35s ease;
    }

}

/* desktop */
@media (min-width: 1024px) {

    .mob-nav {
        display: none !important;
    }

}