/* Industries Page */

/* Industries page — scoped styles to protect the existing site theme */
.industries-page {
    --ip-navy: #0b1930;
    --ip-navy-2: #10346a;
    --ip-blue: #2f6fed;
    --ip-cyan: #65e6f4;
    --ip-teal: #19b8a5;
    --ip-ink: #182338;
    --ip-muted: #697b96;
    --ip-line: #e5ebf3;
    --ip-light: #f5f8fc;
    color: var(--ip-ink);
    background: #fff;
    font-family: "DM Sans", sans-serif;
    line-height: 1.6;
}

.industries-page *,
.industries-page *::before,
.industries-page *::after {
    box-sizing: border-box;
}

.industries-page img {
    display: block;
    width: 100%;
}

.ip-container {
    width: min(1160px, calc(100% - 44px));
    margin-inline: auto;
}

.ip-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #159bd7;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.ip-eyebrow::before {
    content: "";
    width: 23px;
    height: 2px;
    background: var(--ip-cyan);
    display: inline-block;
}

.industries-hero {
    position: relative;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(115deg, #07182f 0%, #082957 58%, #073d83 100%);
}

.industries-hero::before {
    content: "";
    position: absolute;
    width: 470px;
    height: 470px;
    right: -120px;
    bottom: -340px;
    border: 1px solid #5ac7ff2c;
    border-radius: 50%;
    box-shadow: 0 0 0 38px #5ac7ff0a, 0 0 0 80px #5ac7ff08;
}

.industries-hero__inner {
    position: relative;
    z-index: 1;
    min-height: 330px;
    display: grid;
    grid-template-columns: 1.04fr .96fr;
    align-items: center;
    gap: 48px;
    padding-block: 54px;
}

.industries-hero .ip-eyebrow {
    color: #7ce9f5;
}

.industries-hero h1 {
    max-width: 650px;
    margin: 17px 0 16px;
    font-family: "Manrope", sans-serif;
    font-size: clamp(2.2rem, 4.1vw, 3.45rem);
    line-height: 1.12;
    letter-spacing: -.045em;
    font-weight: 800;
}

.industries-hero h1 span {
    display: block;
    color: var(--ip-cyan);
    margin-top: 5px;
}

.industries-hero__copy p {
    max-width: 560px;
    color: #d0dced;
    font-size: .98rem;
}

.industries-hero__visual {
    height: 190px;
    display: flex;
    overflow: hidden;
    border-radius: 17px;
    transform: skewX(-5deg);
    border: 1px solid #a6d8ff45;
    box-shadow: 0 20px 45px #00112640;
}

.industries-hero__image {
    flex: 1;
    min-width: 0;
    background-position: center;
    background-size: cover;
    border-right: 2px solid #4bd9f5;
}

.industries-hero__image--wind {
    background-image: url("https://images.unsplash.com/photo-1509391366360-2e959784a276?auto=format&fit=crop&w=500&q=80");
}

.industries-hero__image--aero {
    background-image: url("https://images.unsplash.com/photo-1474302770737-173ee21bab63?auto=format&fit=crop&w=500&q=80");
}

.industries-hero__image--auto {
    background-image: url("https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=500&q=80");
}

.industries-hero__image--electronics {
    background-image: url("https://images.unsplash.com/photo-1518770660439-4636190af475?auto=format&fit=crop&w=500&q=80");
}

.industries-hero__image--telecom {
    background-image: url("https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&w=500&q=80");
    border-right: 0;
}

.ip-section {
    padding: 62px 0 88px;
    background: linear-gradient(180deg, #fff 0%, #f8fafd 100%);
}

.ip-section-head {
    max-width: 670px;
    margin-bottom: 30px;
}

.ip-section-head h2 {
    margin: 12px 0 8px;
    color: #102d58;
    font-family: "Manrope", sans-serif;
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    letter-spacing: -.04em;
    line-height: 1.2;
}

.ip-section-head p {
    color: var(--ip-muted);
    font-size: .95rem;
}

.ip-industry-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px 24px;
    align-items: stretch;
}

.ip-industry-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e9eef5;
    border-radius: 10px;
    /* background-color: #78b3e4; */
    background-color: #f0f0f0;
    
    /* background: #2f6fed; */
    /* --blue: #2f6fed; */
    box-shadow: 0 3px 12px #102b4b08;
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.ip-industry-card:hover {
    transform: translateY(-5px);
    border-color: #b8d5ff;
    box-shadow: 0 17px 34px #163b6812;
}

.ip-card-image {
    height: 200px;
    position: relative;
    overflow: hidden;
    background: #e8eef6;
}

.ip-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    animation: none !important;
    transition: none !important;
    transform: none !important;
}

.ip-industry-card:hover .ip-card-image img {
    animation: none !important;
    transition: none !important;
    transform: none !important;
}

.ip-card-image>span {
    position: absolute;
    z-index: 1;
    right: 10px;
    top: 9px;
    padding: 3px 7px;
    color: #18365d;
    background: #ffffffed;
    border-radius: 5px;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .03em;
}


.ip-card-body {
    padding: 0 18px 19px;
}

.ip-card-icon {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    margin-top: -1px;
    transform: translateY(-1px);
    border-radius: 10px;
    color: #fff;
    background: linear-gradient(135deg, #168bff, #315ef0);
    box-shadow: 0 6px 15px #2f6fed24;
    font-size: 1rem;
}

.ip-card-icon--teal {
    background: linear-gradient(135deg, #11c7b0, #00a891);
}

.ip-card-body h3 {
    margin: 10px 0 7px;
    color: #0B2545;
    /* color: #10284c; */
    font-family: "Manrope", sans-serif;
    font-size: 1rem;
    line-height: 1.35;
    letter-spacing: -.025em;
}

.ip-card-body p {
    min-height: 58px;
    /* color: #b9c8de; */
    color: #687b98;
    font-size: .78rem;
    line-height: 1.55;
}

.ip-card-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 11px;
    color: #1264ed;
    font-family: "Manrope", sans-serif;
    font-size: .75rem;
    font-weight: 800;
    transition: gap .2s ease;
}

.ip-card-link:hover {
    gap: 13px;
}

.ip-card-link span {
    font-size: 1rem;
}

.ip-contact-card {
    position: relative;
    isolation: isolate;
    min-height: 220px;
    padding: 24px 22px;
    overflow: hidden;
    border-radius: 10px;
    background: linear-gradient(135deg, #eff6ff, #e3efff);
}

.ip-contact-card .ip-eyebrow {
    font-size: .61rem;
    letter-spacing: .1em;
}

.ip-contact-card h3 {
    position: relative;
    z-index: 1;
    margin: 12px 0 8px;
    color: #103263;
    font-family: "Manrope", sans-serif;
    font-size: 1.45rem;
    line-height: 1.2;
    letter-spacing: -.035em;
}

.ip-contact-card p {
    position: relative;
    z-index: 1;
    max-width: 250px;
    color: #617895;
    font-size: .79rem;
}

.ip-contact-button {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
    padding: 10px 14px;
    border-radius: 8px;
    color: #fff;
    background: var(--ip-blue);
    box-shadow: 0 7px 16px #2f6fed30;
    font-family: "Manrope", sans-serif;
    font-size: .78rem;
    font-weight: 800;
    transition: transform .2s ease, background .2s ease;
}

.ip-contact-button:hover {
    transform: translateY(-2px);
    background: #1e59d4;
}

.ip-contact-orbit {
    position: absolute;
    z-index: -1;
    width: 230px;
    height: 230px;
    right: -120px;
    top: -10px;
    border: 1px solid #7bb5ff66;
    border-radius: 50%;
    box-shadow: 0 0 0 25px #7bb5ff13, 0 0 0 50px #7bb5ff0d;
}

@media (max-width: 980px) {
    .industries-hero__inner {
        gap: 28px;
    }

    .industries-hero__visual {
        height: 165px;
    }

    .ip-industry-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ip-card-image {
        height: 150px;
    }
}

@media (max-width: 650px) {
    .ip-container {
        width: min(100% - 32px, 560px);
    }

    .industries-hero__inner {
        grid-template-columns: 1fr;
        gap: 25px;
        padding-block: 48px;
    }

    .industries-hero h1 {
        font-size: clamp(2.1rem, 9vw, 3rem);
    }

    .industries-hero__visual {
        height: 150px;
    }

    .ip-section {
        padding: 46px 0 62px;
    }

    .ip-industry-grid {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .ip-card-image {
        height: 190px;
    }

    .ip-card-body p {
        min-height: 0;
    }

    .ip-contact-card {
        min-height: 215px;
    }
}

.ip-contact-button {
    transition: background .2s ease; /* transform transition remove */
    will-change: transform;
}
.ip-contact-button:hover {
    transform: none; /* GSAP handle pannum */
    background: #1e59d4;
}

/* Ending */