/* Small integration rules for the Laravel/Blade port. The visual system remains
   governed by the original Rasekh stylesheet in assets/scss/style.css. */

.header a:focus-visible,
.footer a:focus-visible,
.custom-btn:focus-visible,
.btn-responsive-nav:focus-visible,
.single-service:focus-visible,
.solutions-btn .nav-link:focus-visible {
    outline: 3px solid rgba(102, 67, 186, .55) !important;
    outline-offset: 4px;
}

.footer-contact a,
.contact-widget a {
    color: inherit;
    text-decoration: none;
}

.single-service {
    cursor: pointer;
}

.contact-section .iti {
    width: 100%;
}

.contact-section .iti input.form-control {
    width: 100%;
}

/* The original intl-tel-input sprite is remote. Keep the ZIP self-contained
   and give the three preferred countries an offline flag fallback. */
.iti__flag {
    background-image: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px !important;
}

.iti__flag::before {
    content: "🌐";
    font-size: 14px;
    line-height: 1;
}

.iti__flag.iti__sa::before { content: "🇸🇦"; }
.iti__flag.iti__eg::before { content: "🇪🇬"; }
.iti__flag.iti__ae::before { content: "🇦🇪"; }

.contact-section button[disabled] {
    cursor: wait;
    opacity: .7;
}

.service-content-decoration {
    pointer-events: none;
}

/* Hero cards (intro panel + 4 trust badges): soft color-matched glow on hover. */
.about-static .about-grid-wrap .about-grid-right,
.about-static .about-grid-wrap .about-grid-left .iso-award {
    position: relative;
    z-index: 0;
    transition: transform .4s ease;
}

.about-static .about-grid-wrap .about-grid-right::after,
.about-static .about-grid-wrap .about-grid-left .iso-award::after {
    content: "";
    position: absolute;
    inset: -16px;
    z-index: -1;
    border-radius: inherit;
    opacity: 0;
    filter: blur(20px);
    transition: opacity .45s ease;
    pointer-events: none;
}

.about-static .about-grid-wrap .about-grid-right::after {
    background: radial-gradient(circle, rgba(102, 67, 186, .55), transparent 70%);
}

.about-static .about-grid-wrap .about-grid-left .iso-award::after {
    background: radial-gradient(circle, rgba(102, 67, 186, .5), rgba(162, 119, 224, .35) 45%, transparent 70%);
}

.about-static .about-grid-wrap .about-grid-left .iso-award:nth-child(1)::after,
.about-static .about-grid-wrap .about-grid-left .iso-award:nth-child(4)::after {
    background: radial-gradient(circle, rgba(245, 200, 248, .75), transparent 70%);
}

.about-static .about-grid-wrap .about-grid-right:hover,
.about-static .about-grid-wrap .about-grid-left .iso-award:hover {
    transform: translateY(-4px);
}

.about-static .about-grid-wrap .about-grid-right:hover::after,
.about-static .about-grid-wrap .about-grid-left .iso-award:hover::after {
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .about-static .about-grid-wrap .about-grid-right,
    .about-static .about-grid-wrap .about-grid-left .iso-award {
        transition: none;
    }
}

@media (max-width: 991px) {
    .navbar-collapse .navbar-nav a {
        display: block;
        width: 100%;
    }

    .horizontal-scroll-height {
        height: auto !important;
    }

    .horizontal-scroll-pin,
    .horizontal-scroll-section {
        transform: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }

    .wow,
    .itm-title,
    .sub-tilte,
    .img-anim,
    .img-anim-2 {
        clip-path: none !important;
        opacity: 1 !important;
        transform: none !important;
        visibility: visible !important;
    }
}
