/* Critical CLS + LCP locks — load early */

/* Lock hero height so Slick init cannot shift page */
.slider-area {
    position: relative;
    overflow: hidden;
    background: #111;
    height: 100vh;
    height: 100svh;
    contain: layout paint;
}

@media (max-width: 991px) {
    .slider-area {
        height: 70vh;
        height: 70svh;
    }
}

@media (max-width: 767px) {
    .slider-area {
        height: 62vh;
        height: 62svh;
    }
}

/* Before Slick initializes: only show first slide (prevents 11×vh CLS) */
.slider-active:not(.slick-initialized) > .slider-wrapper:not(:first-child) {
    display: none !important;
}

.slider-active:not(.slick-initialized) > .slider-wrapper:first-child,
.slider-wrapper {
    height: 100%;
    min-height: 0 !important;
    background-size: cover;
    background-position: center center;
    background-color: #1a1a1a;
    position: relative;
}

.slider-active,
.slider-active .slick-list,
.slider-active .slick-track,
.slider-active .slick-slide {
    height: 100% !important;
}

.slider-active .slick-slide > div,
.slider-active .slick-slide .slider-wrapper {
    height: 100%;
}

/* Real LCP image inside first slide */
.slider-lcp-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
}

.slider-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,.35) 0%, rgba(0,0,0,.55) 100%);
    pointer-events: none;
    z-index: 1;
}

.slider-global-content {
    position: absolute;
    top: 58%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    color: #fff;
    width: 100%;
    max-width: 900px;
    padding: 0 20px;
    text-align: center;
}

.slider-global-content h1 {
    text-transform: uppercase;
    font-size: clamp(22px, 4.2vw, 42px);
    font-weight: 700;
    color: #fff;
    font-family: "Roboto Condensed", Arial Narrow, Arial, sans-serif;
    line-height: 1.2;
    margin: 0 0 12px;
}

.slider-global-content p,
.claas-para {
    margin-top: 10px;
    font-size: clamp(14px, 2vw, 18px);
    line-height: 1.5;
    color: #fff;
    font-family: "Roboto Condensed", Arial Narrow, Arial, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
}

/* Reserve header space on home (absolute header) */
body#page-id-1 .slider-area,
.slider-area {
    /* header overlays hero — no extra top margin needed */
}

.homeLogo,
.innerLogo {
    width: 180px;
    height: auto;
    max-height: 70px;
}

@media (max-width: 992px) {
    .homeLogo,
    .innerLogo {
        max-height: 54px;
        width: auto;
    }
}

/* Reserve space for below-fold carousels */
.section-client,
.logo-carousel {
    min-height: 120px;
}

.testimonial-area {
    min-height: 280px;
    content-visibility: auto;
    contain-intrinsic-size: 280px;
}

.section-content,
.home-section,
.section-numbers {
    content-visibility: auto;
    contain-intrinsic-size: 400px;
}

/* Floating buttons — fixed size to avoid icon-font CLS */
.at-button-wrap,
.at-button-wrap1,
.at-button-wrap2 {
    width: 56px !important;
    height: 56px !important;
}

a.at-button {
    width: 56px !important;
    height: 56px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    font-size: 0 !important;
    line-height: 1 !important;
}

a.at-button svg {
    display: block;
    color: #fff;
    fill: currentColor;
}

/* Slick controls */
.slick-next,
.slick-prev {
    position: absolute;
    z-index: 99;
    top: 50%;
    transform: translateY(-50%);
    background-color: #EC7550;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    border: none;
    cursor: pointer;
}

.slick-next { right: 10px; }
.slick-prev { left: 10px; }

.slick-dots {
    bottom: 18px !important;
    z-index: 20;
    position: absolute;
    width: 100%;
}

@media (max-width: 767px) {
    .slider-global-content {
        top: 52%;
        padding: 0 16px;
    }

    .slider-global-content p,
    .claas-para {
        font-size: 13px;
        text-transform: none;
        font-weight: 400;
        font-family: Roboto, Arial, sans-serif;
    }

    .slick-next,
    .slick-prev {
        height: 34px;
        width: 34px;
    }
}
