/* ------------------------Header footer highlighting--------------------------- */

.apply-active a.active {
    color: #ffffff !important;
    font-weight: 700;
}

.tp-footer__content a.active {
    color: #ffffff;
    font-weight: 700;
}

.header-bottom__main-menu ul li a:hover {
    color: #ffffff;
}

.header-sticky-bg-2.header-sticky,
.header-bottom__area-2.header-sticky {
    background-color: #f4fff1;
}

/*  ----------------------Margins and paddings starts-----------------------*/

.mt-100 {
    margin-top: 100px;
}
.rt-about-v1 {
    padding-top: 0px;
}
.mt-20 {
    margin-top: 20px;
}
.rt-challenge-v1 {
    padding-top: 0px;
}
.pt-0{
    padding-top: 0px;
}

/*  ----------------------Margins and paddings ends-----------------------*/

/* -------------------------Fontsize starts---------------------------- */

.rt-text-style-h5 {
    font-size: 1.18rem;
}

/* -----------------------Fontsize ends--------------------------- */

.rt-optimise-v1-client-image-wrap {
    margin-top: 2.5rem;
}

/* -------------------------Home starts here------------------------- */

.bounce {
    animation: bounce 4s;
}

@keyframes bounce {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-20px);
    }
}

.align-button-center {
    justify-content: center;
}
.overflow-visible {
    overflow: visible;
}
.font-size-40 {
    font-size: 40px;
}
.text-align-center {
    text-align: center;
}
.flex-center {
    display: flex;
    justify-content: center;
    align-items: center;
}
/* -------------------------Home endss here------------------------- */

/* -------------------------About us starts here------------------------- */

.rt-hero-v4 {
    background-image:
        url("../public/assets/img/aboutusbannerbg.svg"),
        url("../img/69eb06951c93d0ad89fefadd_zelect-home-one-hero-bg.svg");
    background-position:
        50%,
        70% 25%;
    background-repeat: no-repeat, no-repeat;
    background-size: cover, 60%;
}
@keyframes iconFloatMission {
    0%,
    100% {
        transform: translateY(0px) rotate(0deg);
        filter: drop-shadow(0 4px 12px rgba(108, 99, 255, 0.35));
    }
    30% {
        transform: translateY(-10px) rotate(-3deg);
        filter: drop-shadow(0 16px 24px rgba(108, 99, 255, 0.55));
    }
    60% {
        transform: translateY(-6px) rotate(2deg);
        filter: drop-shadow(0 12px 18px rgba(108, 99, 255, 0.45));
    }
}
.icon-anim-mission {
    display: inline-block;
    animation: iconFloatMission 3.6s ease-in-out infinite;
    transform-origin: center bottom;
}

@media (prefers-reduced-motion: reduce) {
    .icon-anim-mission,
    .icon-anim-vision,
    .icon-anim-goal {
        animation: none;
    }
}

.rt-solution-v2-text-wrap {
    flex: 1;
    justify-content: space-between;
    align-items: stretch;
    max-width: 560px;
}

/* -------------------------About us ends here------------------------- */

/* -------------------------Services starts here------------------------- */

.dec-img-size img {
    max-width: 90%;
}

.inc-size-animation {
    animation: pop 3s infinite;
}

@keyframes pop {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.3);
    }
    100% {
        transform: scale(1);
    }
}

/* ------------------------services ends here---------------------------- */

/* -------------------------contact us starts here-------------------------- */

.postbox__comment-input {
    margin-top: 15px;
}
#Message-error {
    position: absolute;
    top: 75%;
}

.error {
    margin-top: 0;
}

label.error {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(160%);
    margin-top: 0;
    transition: 0.2s ease all;
}

.error {
    color: red;
    font-weight: 600;
    margin-top: 10px;
}

/* ------------------------contact us ends here------------------------ */

/* -------------------------faqs starts here---------------------------- */

.rt-faq-v2 {
    background-image:
        url("../public/assets/img/aboutusbannerbg.svg"),
        url("../img/69eb06951c93d0ad89fefadd_zelect-home-one-hero-bg.svg");
    background-position:
        50%,
        25% 25%;
    background-repeat: no-repeat, no-repeat;
    background-size: cover, 60%;
}

/* --------------------------faqs ends here--------------------------- */

/* ------------------------policy pages starts here-------------------------- */

ul li {
    list-style: none;
    position: relative;
    padding-left: 30px;
}

ul li::before {
    content: "\f058";
    font-family: "Font Awesome 7 Free";
    font-size: 20px;
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 0;
}

/* ------------------------policy pages ends here------------------------- */

/* ------------------------footer pages starts here--------------------------- */

.rt-footer-newsletter-text-block {
    grid-column-gap: 0.9375rem;
    grid-row-gap: 0.9375rem;
    flex: 1;
    max-width: 790px;
}

/* ------------------------footer pages ends here------------------------- */

/* --------------------------------Media query starts here----------------------------------- */

@media (max-width: 1399px) {
}
@media (max-width: 1199px) {
}

@media (max-width: 991px) {
    .rt-footer-newsletter-button-wrap {
        align-self: center !important;
    }
}

/* ================================ Tablet Footer Fix: 768px – 991px ================================ */
@media (min-width: 768px) and (max-width: 991px) {

    /* --- Footer CTA (newsletter) banner --- */
    .rt-footer-newsletter {
        display: flex !important;
        flex-direction: column;
        align-items: flex-start;
        gap: 1.25rem;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .rt-footer-newsletter-text-block {
        flex-direction: row;
        align-items: center;
        max-width: 100% !important;
        gap: 1rem;
    }

    .rt-footer-newsletter-icon-wrap {
        width: 3.5rem;
        flex-shrink: 0;
    }

    .rt-footer-newsletter-button-wrap {
        align-self: flex-start;
    }

    /* -------------------------------------------------------
       2×2 GRID LAYOUT
       Row 1: Brand/Logo  |  Main Links (Pages)
       Row 2: Utility     |  Location / Get In Touch
    -------------------------------------------------------- */

    /* Parent: 2-column grid */
    .rt-footer-main {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
        gap: 0;
        align-items: start;
    }

    /* Brand → col 1, row 1 */
    .rt-footer-brand {
        grid-column: 1;
        grid-row: 1;
        max-width: 100% !important;
        padding-top: 2rem !important;
        padding-bottom: 1.5rem !important;
        padding-right: 1.5rem;
    }

    /* Make the wrapper invisible so its children join the parent grid */
    .rt-footer-content-wrap {
        display: contents !important;
    }

    /* Main Links → col 2, row 1  (same row as the brand/logo) */
    .rt-footer-block.rt-about {
        grid-column: 2;
        grid-row: 1;
        padding-top: 2rem !important;
        padding-left: 1.25rem !important;
        padding-right: 0.5rem !important;
    }

    /* Utility Pages → col 1, row 2 */
    .rt-footer-block.rt-quick-link {
        grid-column: 1;
        grid-row: 2;
        padding-top: 1.5rem !important;
        padding-left: 0 !important;
        padding-right: 1.5rem !important;
    }

    /* Location / Get In Touch → col 2, row 2 */
    .rt-footer-block.rt-location {
        grid-column: 2;
        grid-row: 2;
        padding-top: 1.5rem !important;
        padding-left: 1.25rem !important;
        padding-right: 0.5rem !important;
    }

    /* Decorative vertical lines on blocks — hide at this size */
    .rt-footer-block-line {
        display: none !important;
    }

    /* Shared block tweaks */
    .rt-footer-heading-wrap {
        gap: 0.75rem;
    }

    .rt-footer-link-block {
        gap: 0.5rem;
    }

    .rt-footer-link {
        font-size: 0.9rem;
    }

    /* Footer lines (horizontal dividers) */
    .rt-footer-line {
        display: none !important;
    }

    /* --- Footer bottom (copyright) --- */
    .rt-footer-bottom {
        flex-direction: row !important;
        justify-content: center;
        flex-wrap: wrap;
        gap: 0.5rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}

/* ================================ 767px Breakpoint ================================ */
@media (max-width: 767px) {

    /* --- Layout: prevent unwanted 2-column grid on generic hflex --- */
    .w-layout-hflex {
        flex-wrap: wrap;
    }

    /* --- Hero Section --- */
    .rt-hero-v2-main,
    .rt-hero-v4-main {
        flex-direction: column !important;
        gap: 2rem;
        text-align: center;
    }

    .rt-hero-v4-heading-wrap,
    .rt-hero-v2-heading-wrap {
        align-items: center;
    }

    .rt-hero-v1-button-wrap,
    .rt-hero-v4-heading-wrap .w-layout-hflex {
        justify-content: center;
    }

    .rt-hero-v4-image-wrap {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
    }

    .rt-hero-v2-image-wrapper {
        display: none;
    }

    /* --- About Section (Home) --- */
    .rt-optimise-v1-main {
        flex-direction: column !important;
        gap: 2.5rem;
    }

    .rt-optimise-v1-image-wrap {
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
    }

    .rt-optimise-v1-text-wrap {
        width: 100%;
        text-align: center;
        align-items: center;
    }

    /* --- Counter Cards --- */
    .rt-about-v1-card-wrapper {
        grid-template-columns: 1fr 1fr !important;
        gap: 1rem;
    }

    .rt-about-one-content-wrap {
        width: 100%;
    }

    /* --- Integration / Key Pillars --- */
    .rt-integration-top {
        flex-wrap: wrap;
        justify-content: center;
        gap: 1rem;
    }

    .rt-itegration-logo-wrap {
        min-width: 70px;
    }

    /* --- Who We Are / Challenges Section --- */
    .rt-challenges-main {
        flex-direction: column !important;
        gap: 2rem;
    }

    .rt-challenges-text-wrap,
    .rt-challenges-image-wrap {
        width: 100%;
        max-width: 100%;
    }

    /* --- Services Grid --- */
    .rt-service-one-grid {
        grid-template-columns: 1fr !important;
    }

    .rt-service-one-marquee {
        display: none !important;
    }

    /* --- Solution / Overview Section --- */
    .rt-solution-v1-main,
    .rt-solution-v2-main {
        flex-direction: column !important;
        gap: 2.5rem;
    }

    .rt-solution-v1-image-wrap,
    .rt-solution-v2-image-wrap {
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
    }

    .rt-solution-v1-text-wrap,
    .rt-solution-v2-text-wrap {
        width: 100%;
        max-width: 100% !important;
        text-align: center;
        align-items: center;
    }

    /* --- Benefits (Product) Cards --- */
    .rt-product-v2-card-wrap {
        flex-direction: column !important;
        gap: 1rem;
    }

    .rt-product-v2-card {
        width: 100%;
    }

    /* --- FAQ Section --- */
    .rt-faq-v2 {
        padding-top: 3rem;
        padding-bottom: 2rem;
    }

    .rt-hero-v4-main.rt-faq-main,
    .rt-faq-main {
        flex-direction: column !important;
        text-align: center;
    }

    /* --- Footer --- */
    .rt-footer-main {
        flex-direction: column !important;
        gap: 1.5rem;
    }

    .rt-footer-brand {
        max-width: 100% !important;
        padding: 2rem 0 1rem !important;
    }

    .rt-footer-content-wrap {
        grid-template-columns: 1fr 1fr;
        gap: 1.5rem;
    }

    .rt-footer-newsletter {
        flex-direction: column !important;
        gap: 1rem;
    }

    .rt-footer-newsletter-text-block {
        max-width: 100% !important;
    }

    .rt-footer-newsletter-button-wrap {
        align-self: flex-start;
    }

    .rt-footer-newsletter-button-wrap .rt-button-v1 {
        width: auto !important;
        white-space: nowrap;
    }

    /* --- Contact Page --- */
    .rt-contact-v1-main,
    .postbox__comment-input {
        flex-direction: column !important;
    }

    /* --- Policy Pages --- */
    ul li {
        padding-left: 24px;
    }

    ul li::before {
        font-size: 16px;
    }

    /* --- Typography --- */
    h1, .rt-text-style-h1 {
        font-size: clamp(1.8rem, 6vw, 2.5rem) !important;
    }

    h2, .rt-text-style-h2 {
        font-size: clamp(1.4rem, 5vw, 2rem) !important;
    }

    .font-size-40 {
        font-size: 28px !important;
    }

    /* --- Section Spacing --- */
    .mt-100 {
        margin-top: 60px;
    }

    /* --- Misc --- */
    .rt-solution-v1-image-block-line-one {
        display: none;
    }
    .rt-footer-content-wrap {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
}

/* ================================ 567px Breakpoint ================================ */
@media (max-width: 567px) {

    /* Footer columns stack fully */
    /* .rt-footer-content-wrap {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .rt-footer-block {
        padding-top: 1.5rem !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    } */

    /* Counter cards stack to single column */
    .rt-about-v1-card-wrapper {
        grid-template-columns: 1fr !important;
    }

    /* Hero adjustments */
    .rt-hero-v4-image-wrap {
        max-width: 320px;
    }

    .rt-hero-v2-main,
    .rt-hero-v4-main {
        padding: 1.5rem 0;
    }

    /* Section titles */
    h1, .rt-text-style-h1 {
        font-size: clamp(1.6rem, 7vw, 2rem) !important;
        line-height: 1.25 !important;
    }

    h2, .rt-text-style-h2 {
        font-size: clamp(1.3rem, 5.5vw, 1.6rem) !important;
    }

    .font-size-40 {
        font-size: 22px !important;
        text-align: center;
    }

    /* Benefits cards */
    .rt-product-v2-card-heading .rt-text-style-h5 {
        writing-mode: horizontal-tb !important;
    }

    /* Section padding */
    .mt-100 {
        margin-top: 40px;
    }

    /* Integration logos wrap */
    .rt-integration-top {
        gap: 0.75rem;
    }

    .rt-itegration-logo-wrap {
        min-width: 60px;
        min-height: 60px;
    }

    /* FAQ banner */
    .rt-faq-v2 {
        padding-top: 2rem;
    }

    /* Solution block */
    .rt-solution-v1-marque-block {
        max-height: 280px;
        overflow: hidden;
    }

    /* Tag pills */
    .rt-feature-v1-tag-wrap {
        justify-content: center;
    }

    /* About page mission/vision/goal cards */
    .rt-service-one-grid {
        gap: 1rem !important;
    }

    /* Policy page */
    ul li {
        padding-left: 20px;
    }
}

/* ================================ 412px Breakpoint ================================ */
@media (max-width: 412px) {

    /* Container padding */
    .w-container,
    .rt-container,
    .rt-container-large,
    .rt-container-nav {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    /* Hero */
    .rt-hero-v4-image-wrap {
        max-width: 280px;
    }

    .rt-hero-v4-dashboard-card-one,
    .rt-hero-v4-dashboard-card-two,
    .rt-hero-v4-dashboard-card-three,
    .rt-hero-v4-dashboard-card-four {
        display: none !important;
    }

    /* Typography */
    h1, .rt-text-style-h1 {
        font-size: clamp(1.5rem, 8vw, 1.9rem) !important;
    }

    h2, .rt-text-style-h2 {
        font-size: clamp(1.2rem, 6vw, 1.5rem) !important;
    }

    p {
        font-size: 0.95rem !important;
    }

    .rt-subtext-font {
        font-size: 0.875rem;
    }

    .font-size-40 {
        font-size: 18px !important;
    }

    /* Buttons — keep natural content-fitted size */
    .rt-button-v1 {
        width: auto !important;
        min-width: unset;
        white-space: nowrap;
    }

    .rt-hero-v1-button-wrap {
        flex-direction: row;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.75rem;
    }

    /* Nav */
    .rt-navbar-wrapper {
        padding: 0.5rem 0;
    }

    /* Counter */
    .rt-home-one-counter {
        font-size: 30px !important;
    }

    .rt-counter-wrap {
        height: 2rem !important;
    }

    /* Integration logos */
    .rt-itegration-logo-wrap {
        min-width: 52px;
        min-height: 52px;
    }

    .rt-itegration-logo img {
        max-width: 32px;
        max-height: 32px;
    }

    /* Mission/Vision/Goal cards */
    .rt-service-one-content-wrapper {
        flex-direction: column;
    }

    .rt-service-one-icon-wrapper {
        padding-bottom: 1rem;
    }

    /* Benefits cards */
    .rt-product-v2-card {
        padding: 1rem !important;
    }

    /* FAQ page */
    .rt-faq-question-holder-v1 {
        padding: 0.875rem 1rem !important;
    }

    /* Footer */
    .rt-footer-newsletter-text-block {
        flex-direction: column;
    }

    .rt-footer-newsletter-icon-wrap {
        width: 3rem !important;
    }

    .rt-footer-bottom {
        flex-direction: column !important;
        text-align: center;
        gap: 0.5rem;
    }

    /* Section spacing */
    .mt-100 {
        margin-top: 30px;
    }

    /* Solution section */
    .rt-solution-v1-image-block {
        flex-direction: column;
        align-items: center;
    }

    .rt-solution-v1-count-image,
    .rt-solution-v1-icon-wrap {
        max-width: 120px !important;
    }

    /* Challenges options */
    .rt-challenges-v1-option {
        gap: 0.75rem;
    }

    /* Contact form */
    #Message-error {
        position: static;
        top: auto;
    }

    label.error {
        position: static;
        transform: none;
    }
    .rt-faq-question-top {
        grid-column-gap: 0px;
        grid-row-gap: .9375rem;
    }
}

/* ================================ 360px Breakpoint ================================ */
@media (max-width: 360px) {

    /* Container */
    .w-container,
    .rt-container,
    .rt-container-large,
    .rt-container-nav {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }

    /* Typography - tightest sizes */
    h1, .rt-text-style-h1 {
        font-size: 1.4rem !important;
        letter-spacing: -0.5px;
    }

    h2, .rt-text-style-h2 {
        font-size: 1.15rem !important;
    }

    h3, .rt-text-style-h3 {
        font-size: 1.05rem !important;
    }

    p {
        font-size: 0.9rem !important;
        line-height: 1.6 !important;
    }

    .rt-subtext-font {
        font-size: 0.8rem;
    }

    .font-size-40 {
        font-size: 16px !important;
    }

    .rt-text-style-h5,
    .heading-style-h5 {
        font-size: 1rem !important;
    }

    /* Hero */
    .rt-hero-v4-image-wrap {
        max-width: 240px;
    }

    /* Buttons */
    .rt-button-font {
        font-size: 0.875rem !important;
    }

    /* Counter */
    .rt-home-one-counter {
        font-size: 26px !important;
    }

    /* Integration logos */
    .rt-itegration-logo-wrap {
        min-width: 44px;
        min-height: 44px;
    }

    .rt-itegration-logo img {
        max-width: 26px;
        max-height: 26px;
    }

    /* Nav logo */
    .rt-navbar-logo img {
        max-width: 140px !important;
    }

    /* Footer */
    .rt-footer-logo img {
        max-width: 110px;
    }

    .rt-text-style-h2.rt-footer-cta {
        font-size: 1.1rem !important;
    }

    /* Policy pages */
    ul li {
        padding-left: 18px;
        font-size: 0.9rem;
    }

    ul li::before {
        font-size: 14px;
    }

    /* Section spacing */
    .mt-100 {
        margin-top: 24px;
    }

    .rt-about-v1 {
        padding-top: 0;
    }

    /* Margins */
    .inc-margin-mobileview {
        margin-top: 200px;
    }
}

/* ================================ Legacy --- 380px override ================================ */
@media (max-width: 380px) {
    .inc-margin-mobileview {
        margin-top: 260px;
    }
    .rt-subtext-font {
        font-size: 14px;
    }
}

/* --------------------------------Media query ends here----------------------------------- */
