/* ASIEC custom overrides */

/* Header: make background slightly tinted so the white logo works */
.rs-header-area.rs-header-one.rs-sticky-header {
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.05);
}

/* Logo background fix */
.rs-header-logo img {
    background: transparent !important;
    max-height: 55px;
    width: auto;
}

/* Banner text readability overlay */
.rs-banner-bg-thumb::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.25) 60%, rgba(0,0,0,0) 100%);
    z-index: 1;
}

.rs-banner-item-wrapper .container {
    position: relative;
    z-index: 2;
}

/* Ensure banner text and buttons are readable */
.rs-banner-content .rs-banner-title,
.rs-banner-content .rs-banner-descrip p,
.rs-banner-meta-wrapper .rs-banner-contact-item span,
.rs-banner-meta-wrapper .rs-banner-contact-item h6 a {
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}

.rs-banner-btn .rs-btn.has-theme-orange {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}

/* Partner logos sizing */
.rs-brand-thumb img {
    max-height: 70px;
    width: auto;
    object-fit: contain;
}

/* Portfolio images */
.rs-portfolio-thumb img {
    width: 100%;
    height: 360px;
    object-fit: cover;
}

/* Services tab images */
.rs-services-tab-content-thumb img {
    width: 100%;
    height: 420px;
    object-fit: cover;
}

/* About section image */
.rs-about-bg-thumb {
    background-size: cover;
    background-position: center;
}

/* CTA background */
.rs-cta-bg {
    background-size: cover;
    background-position: center;
}

/* Contact section dark overlay for readability */
.rs-contact-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
    z-index: 1;
}

.rs-contact-area .container {
    position: relative;
    z-index: 2;
}

/* Partner logo visibility */
.rs-brand-item {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 120px;
}

.rs-brand-thumb img {
    max-height: 70px;
    width: auto;
    object-fit: contain;
}

/* CTA overlay for text readability */
.rs-cta-wrapper {
    position: relative;
}

.rs-cta-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 1;
}

.rs-cta-wrapper .row {
    position: relative;
    z-index: 2;
}
