/*
Theme Name: ITCS Agent Pro Bootstrap
Theme URI: https://www.itcs.co.uk/
Author: ITCS
*/

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    margin: 0;
    font-family: 'Rubik', sans-serif;
    line-height: 1.5 !important;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Teko', sans-serif;
}

button {
    font-family: 'Teko', sans-serif;
    text-transform: uppercase;
    font-weight: 700 !important;
}

h3 {
    font-size: 34px;
    font-weight: 700;
    color: #CB0E20;
    margin-bottom: 10px;
}

.container {}

.row {
    margin: 0px !important;
}

.container-fluid {
    padding: 0px !important;
}

p,
ul {}

p {
    margin-bottom: 10px;
}

b,
strong {}

a {}

a:hover {
    text-decoration: none;
}

.btn {}

.btn a {}

.btn a:hover {}

img {
    width: 100%;
    height: auto;
}

img.alignright {
    float: right;
    margin: 0 0 1em 1em;
}

img.alignleft {
    float: left;
    margin: 0 1em 1em 0;
}

img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.alignright {
    float: right;
}

.alignleft {
    float: left;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.shadow {
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.1);
}

.col-lg-5ths {
    width: 20%;
    padding: 0 !important;
}

.max-w {
    max-width: 1500px !important;
}

.btn-ajelec {
    background-color: #CB0E20;
    color: #fff;
    border-radius: 10px;
    padding: 6px 30px;
    font-size: 20px;
    font-weight: 700;
    font-family: 'Teko';
}

.btn-ajelec-w {
    background-color: #fff;
    color: #CB0E20;
    border-radius: 10px;
    padding: 6px 30px;
    font-size: 20px;
    font-weight: 700;
    font-family: 'Teko';
}

.vert-centre {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.flex-center {
    display: flex;
    justify-content: center;
}

section ul {
    column-count: 2;
}

/* Header */

.the-header {
    padding: 20px 0px !important;
    background-color: #191919;
}

.the-header a {
    color: #fff;
}

.the-header a:hover {
    color: #CB0E20;
    text-decoration: none;
}

.the-header img {
    width: 75%;
    height: auto;
}

.the-header i {
    color: #CB0E20;
}

.custom-flex-container {
    display: flex;
    justify-content: flex-end;
}

.custom-flex-container .header-phone {
    margin-top: 0;
    align-self: flex-start;
    text-align: right;
}

.custom-flex-container .the-menu {
    margin-bottom: 0;
    align-self: flex-end;
    float: right;
}

/* Nav */

.the-menu {
    background-color: #191919;
    text-transform: uppercase;
    padding: 0;
}

.nav-menu {
    padding: 8px 0px;
}

a.mega-menu-link {
    font-weight: 600 !important;
}

.mega-current-menu-item a.mega-menu-link {
    color: #CB0E20 !important;
}

nav.navbar.navbar-expand-md {
    padding: 0px !important;
    font-family: 'Teko';
    font-size: 22px;
    font-weight: 600;
}

a.nav-link {
    margin-left: 40px !important;
}

/* End Nav */

/* End Header */

/* Home Page */

.container-fluid.main-slider {
    background-color: #191919;
}

.container-fluid.int-slider {
    background-color: #191919;
}

h1.landing-title {
    font-size: 100px;
    text-wrap-style: balance;
    line-height: 1;
}

h2.landing-sub {
    color: #CB0E20;
    font-size: 30px;
}

h2.about-title {
    padding: 5px 10px;
    margin-bottom: 15px;
    border-bottom: 4px solid #CB0E20;
    width: fit-content;
}

h2.home-services-title {
    padding: 5px 10px;
    margin-bottom: 15px;
    border-bottom: 4px solid #CB0E20;
    color: #fff;
    width: fit-content;
}

.home-about-image {
    text-align: right;
}

.home-about {
    padding: 20px 0px !important;
}

.abt-img-col {
    padding: 40px 20px !important;
}

.abt-img-col img {
    border-radius: 10px;
    width: 85%;
}

.about-col {
    padding: 10px 25px;
}

.about-col p {
    margin-bottom: 20px;
}

.home-services {
    background-color: #191919;
    color: #fff;
    padding: 20px !important;
}

.home-services a {
    color: #fff;
}

.home-services a:hover {
    color: #CB0E20;
}

.home-services h4 {
    font-size: 24px;
    text-wrap-style: balance;
}

.home-services img {
    height: 190px;
    object-fit: cover;
    margin-bottom: 10px;
    border-radius: 6px;
}

.cont-centre {
    display: flex;
    justify-content: center;
}

.home-cta {
    background-image: url(/wp-content/uploads/2024/06/custom-play-hero.png);
    min-height: 350px;
}

.home-cta h2 {
    font-weight: 700;
    color: #fff;
    font-size: 42px;
    margin-bottom: 20px;
    text-transform: uppercase;
}

/* Slider */

.home-slider .slide.slick-slide.slick-current.slick-active {
    display: flex;
    justify-content: center;
    align-items: center;
}

.home-slider h1 {
    display: inline-flex;
    justify-content: center;
}

.home-slider {
    display: flex;
    overflow: hidden;
}

.slide {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.slide-image {
    width: 100%;
    height: 540px;
    object-fit: cover;
    background-color: #000;
}

.slide-content {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
    max-width: 865px;
    padding: 40px 20px;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 12px;
}

.slide-content p {
    font-size: 22px !important;
}

.slide-content button {
    font-weight: 700;
}

@keyframes continuousZoomOut {
    from {
        transform: scale(1.2);
    }

    to {
        transform: scale(1);
    }
}

.home-slider .slick-slide {
    display: block;
    opacity: 0;
    transition: opacity 1s ease;
}

.home-slider .slick-active,
.home-slider .slick-current {
    opacity: 1;
}

.home-slider .slick-active .slide-image img {
    animation: continuousZoomOut 7s linear;
}

h2.sw-title {
    padding: 5px 10px;
    margin-bottom: 25px;
    border-bottom: 4px solid #CB0E20;
    width: fit-content;
    font-size: 40px;
}

.sw-text-cont {
    max-width: 800px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.sw-text-col {
    display: flex;
    justify-content: center;
    padding: 75px;
}

.sw-text-cont p {
    font-size: 20px;
}

.cta-text {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cta-section i {
    display: inline-block;
    vertical-align: middle;
    color: #CB0E20 !important;
}

.cta-section a {
    color: #fff;
}

.cta-section a:hover {
    color: #CB0E20;
}

/* End Home Page */

a {
    color: #CB0E20;
}

/* Footer */

.the-footer {
    background-color: #0f0f0f;
    color: #fff;
    padding: 40px 0 0 !important;
}

.bottom-footer {
    background-color: #0f0f0f;
    color: #fff;
    padding: 15px 0 !important;
}

.the-footer a {
    color: #fff;
}

.the-footer a:hover {
    color: #CB0E20;
}

.bottom-footer a {
    color: #fff;
}

.bottom-footer a:hover {
    color: #CB0E20;
}

.right-foot {
    text-align: right;
}

.the-footer h3 {
    color: #fff;
}

.the-footer img {
    width: 80%;
    height: auto;
}

.footer-accreds img {
    height: 90px;
    width: auto;
}

.row.footer-accreds {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0px 40px;
}

/* End Footer */

/* Contact Page */

.cont-col {
    padding: 40px 15px;
}

.form-card {
    padding: 30px;
}

.add-p {
    padding: 0 45px;
}

/* End Contact Page */

/* Internal Pages */

h1.int-page-title {
    font-size: 72px;
    padding: 0px 10px;
    color: #fff;
    border-bottom: 4px solid #cb0e20;
}

.cont-col label.checkbox-label {
    margin-bottom: 0;
    font-weight: 700;
}

.enquiry-form-block label.checkbox-label {
    margin-bottom: 0;
    font-weight: 700;
}

.internal-page {
    padding: 15px 0 5px !important;
}

.intro-text {
    padding: 40px 20px !important;
}

.cta-overlay {
    color: #fff !important;
    text-transform: uppercase;
    font-weight: 700;
    text-wrap: balance;
}

.basic-text-block {
    padding: 40px 20px;
}

.gallery-item {
    margin-bottom: 20px;
}

.gallery-item img {
    max-width: 100%;
    height: 250px;
    display: block;
    object-fit: cover;
    border-radius: 6px;
    object-position: left;
}

.cta-overlay {
    background-color: rgba(0, 0, 0, 0.5);
    padding: 20px;
    height: 300px;
}

.cta-overlay-2 {
    padding: 0px;
    color: #fff;
}

.block-img-cols {
    padding: 10px 25px;
}

.block-img-cols img {
    border-radius: 12px;
    object-fit: cover;
}

.intro-image img {
    max-height: 480px;
    padding: 10px;
    border-radius: 20px;
    object-fit: cover;
}

.cards-wrapper .card-image img {
    height: 275px;
    border-radius: 10px;
    object-fit: cover;
}

.cards-wrapper .card {
    border: 0 !important;
}

.cards-wrapper .card-content {
    padding: 10px 5px 0px;
}

.int-cont-col {
    padding: 20px 40px;
}

section.block-testimonials {
    padding: 40px 20px;
}

.custom-slider-height {
    height: 450px;
    overflow: hidden;
    border-radius: 10px;
}

.custom-slider-height .slide img {
    height: 450px;
    width: 100%;
    object-fit: cover;
}

.cta-overlay-2 h2 {
    text-transform: uppercase;
    font-size: 40px;
    font-weight: 700;
}

.cta-overlay h2 {
    text-transform: uppercase;
    font-size: 40px;
    font-weight: 700;
}

.bg-image {
    height: 250px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg-overlay {
    background-color: rgba(0, 0, 0, 1);
    height: 100%;
}

.nav-tabs .nav-link {
    border: 0;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.nav-tabs {
   border-bottom: 0px solid #dee2e600; 
}

.btn-ajelec.active {
    border: 2px solid #cb0e20 !important;
}

.nav-link.btn-ajelec {
    margin-left: 20px !important;
}

.projects-div {
    padding: 40px 20px;
}

.projects-card {
    background-color: #fcfcfc;
}

/* End Internal Pages */

/* Image Grid Page */

.image-grid-page {
    padding: 40px 0 !important;
}

.img-cols .card {
    border: 0;
}

.img-cols .card-body {
    padding: 15px 0px;
}

.img-cols {
    padding: 10px 15px;
}

.img-cols img {
    height: 280px;
    object-fit: cover;
}

h5.card-title {
    font-weight: 700;
}

.card-repeater {
    padding: 20px !important;
}

/* General gallery styles */
.gallery-p {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    /* 4 images per row */
    gap: 10px;
    /* space between images */
    margin: 20px 0;
}

.gallery-p a {
    display: block;
    position: relative;
    overflow: hidden;
}

.gallery-p img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.3s ease;
    /* Animation effect */
    border-radius: 8px;
}

.gallery-p a:hover img {
    transform: scale(1.05);
    /* Zoom effect on hover */
}

/* Responsive adjustments */
@media (max-width: 1200px) {
    .gallery-p {
        grid-template-columns: repeat(3, 1fr);
        /* 3 images per row */
    }
}

@media (max-width: 768px) {
    .gallery-p {
        grid-template-columns: repeat(2, 1fr);
        /* 2 images per row */
    }
}

@media (max-width: 480px) {
    .gallery-p {
        grid-template-columns: 1fr;
        /* 1 image per row */
    }
}


/* End Image Grid Page */

/***********************************************************

                    RESPONSIVENESS

************************************************************/
/* // Devices 1600px and up */
@media (min-width: 1600px) {}

/* // Devices 1450px and up */
@media (min-width: 1450px) {}

/* // Large devices (desktops, between 993px and 1450px) */
@media (min-width: 993px) and (max-width: 1450px) {
    .slide-image {
        height: 500px;
    }

    .slide-image img {
        height: 100%;
    }

    .slide-content {
        max-width: 650px !important;
    }
}

/* // Large devices (desktops, between 767px and 992px) */
@media (min-width: 767px) and (max-width: 992px) {
    .the-header img {
        width: 55%;
        height: auto;
        padding: 15px 10px;
    }

    .header-cta {
        justify-content: space-around;
    }

    .the-footer {
        padding: 20px 0 !important;
    }

    .left-foot {
        margin: 5px 0;
    }

    .right-foot {
        margin: 5px 0;
    }

    .slide-image {
        height: 500px;
    }

    .slide-image img {
        height: 100%;
    }

    .slide-content {
        max-width: 650px !important;
    }

    img.logo-image {
        display: none !important;
    }

    .home-slider h1 {
        font-size: 34px;
    }

    .slide-content p {
        font-size: 18px !important;
    }

    .int-slider h1 {
        font-size: 34px;
    }

    .int-slider p {
        font-size: 18px !important;
    }

    .counter-cols {
        margin-bottom: 10px;
    }

    .testimonial-slide {
        margin-left: 5px !important;
        margin-right: 5px !important;
    }

    .col-lg-5ths {
        width: 33.333%;
    }

    .vert-centre.trust-cols {
        align-items: center;
    }

    .home-cta h2 {
        font-size: 34px;
    }

    .about-col {
        padding: 10px 25px 40px;
    }

    .process-card .card-body {
        padding: 20px 0px;
    }

    .cta-overlay {
        padding: 20px 0px;
        height: 350px;
    }

    .cta-overlay h2 {
        font-size: 26px;
    }

    .cta-overlay-2 {
        padding: 20px 0px;
        height: 350px;
    }

    .cta-overlay-2 h2 {
        font-size: 26px;
    }

    .block-img-cols {
        padding: 10px 20px;
    }

    .cont-col {
        padding: 20px 10px;
    }

    .wpcf7-spinner {
        display: none;
    }

    .counter-card h2 {
        font-size: 38px;
    }

    .counter-cols {
        padding: 0px 5px;
    }

    .counter-card h4 {
        font-size: 18px;
    }

    .product-overlay h2 {
        margin-bottom: 10px;
        font-size: 26px;
    }

    .m-logo {
        text-align: center;
    }
}

/* // Small devices (landscape phones, less than 768px) */
@media (max-width: 766px) {
    .the-header img {
        width: 100%;
        height: auto;
        padding: 15px 10px;
    }

    .header-cta {
        justify-content: space-around;
    }

    .left-foot {
        text-align: center;
        margin: 10px 0;
    }

    .right-foot {
        text-align: center;
        margin: 10px 0;
    }

    .slide-image {
        height: 500px;
    }

    .slide-image img {
        height: 100%;
    }

    .slide-content {
        max-width: 500px !important;
    }

    img.logo-image {
        display: none !important;
    }

    .home-slider h1 {
        font-size: 34px;
    }

    .slide-content p {
        font-size: 18px !important;
    }

    .int-slider h1 {
        font-size: 34px;
    }

    .int-slider p {
        font-size: 18px !important;
    }

    .counter-cols {
        margin-bottom: 10px;
    }

    .testimonial-slide {
        margin-left: 5px !important;
        margin-right: 5px !important;
    }

    .col-lg-5ths {
        width: 50%;
    }

    .vert-centre.trust-cols {
        align-items: center;
    }

    .home-cta h2 {
        font-size: 34px;
    }

    .about-col {
        padding: 10px 25px 40px;
    }

    .cta-overlay {
        padding: 20px 0px;
        height: 350px;
    }

    .cta-overlay h2 {
        font-size: 26px;
    }

    .cta-overlay-2 {
        padding: 20px 0px;
        height: 350px;
    }

    .cta-overlay-2 h2 {
        font-size: 26px;
    }

    .block-img-cols {
        padding: 10px 20px;
    }

    .intro-image img {
        height: 170px;
    }

    .cont-col {
        padding: 20px 10px;
    }

    .wpcf7-spinner {
        display: none;
    }

    .counter-card h2 {
        font-size: 38px;
    }

    .counter-cols {
        padding: 0px 5px;
    }

    .counter-card h4 {
        font-size: 18px;
    }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575px) {

    .the-header img {
        width: 100%;
        height: auto;
        padding: 15px 10px;
    }

    .header-cta {
        justify-content: space-around;
    }

    .left-foot {
        text-align: center;
        margin: 10px 0;
    }

    .right-foot {
        text-align: center;
        margin: 10px 0;
    }

    .slide-image {
        height: 500px;
    }

    .slide-image img {
        height: 100%;
    }

    .slide-content {
        max-width: 350px !important;
    }

    img.logo-image {
        display: none !important;
    }

    .home-slider h1 {
        font-size: 34px;
    }

    .slide-content p {
        font-size: 18px !important;
    }

    .int-slider h1 {
        font-size: 34px;
    }

    .int-slider p {
        font-size: 18px !important;
    }

    .counter-cols {
        margin-bottom: 10px;
    }

    .testimonial-slide {
        margin-left: 5px !important;
        margin-right: 5px !important;
    }

    .col-lg-5ths {
        width: 50%;
    }

    .vert-centre.trust-cols {
        align-items: center;
    }

    .home-cta h2 {
        font-size: 34px;
    }

    .about-col {
        padding: 10px 25px 40px;
    }

    .cta-overlay {
        padding: 20px 0px;
        height: 350px;
    }

    .cta-overlay h2 {
        font-size: 26px;
    }

    .cta-overlay-2 {
        padding: 20px 0px;
        height: 350px;
    }

    .cta-overlay-2 h2 {
        font-size: 26px;
    }

    .block-img-cols {
        padding: 10px 20px;
    }

    .intro-image img {
        height: 170px;
    }

    .cont-col {
        padding: 20px 10px;
    }

    .wpcf7-spinner {
        display: none;
    }
}