﻿/* =========================================================
   GovPartners.css - "related websites" logo strip above the footer
   Cards = white tiles with shadow, round arrows, pause button
   ========================================================= */
.gp-wrap {
    background: var(--c-tint-soft, #E9EFFD);
    padding: 34px 0 30px;
    font-family: "Inter", "Segoe UI", Roboto, Arial, sans-serif;
}

.gp-inner {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
    position: relative;
}

.gp-track {
    display: flex;
    gap: 26px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 6px 4px 18px; /* room for the card shadow */
    scroll-behavior: smooth;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* old Edge */
}

    .gp-track::-webkit-scrollbar {
        display: none;
    }

.gp-card {
    flex: 0 0 238px;
    height: 122px;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 3px 10px rgba(22, 47, 106, .12);
    transition: box-shadow .2s, transform .2s;
}

    .gp-card:hover, .gp-card:focus-within {
        box-shadow: 0 8px 18px rgba(22, 47, 106, .22);
        transform: translateY(-2px);
    }

    .gp-card a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        padding: 14px 18px;
        text-decoration: none;
    }

        .gp-card a:focus-visible {
            outline: 3px solid var(--c-strong, #214AAB);
            outline-offset: -3px;
            border-radius: 6px;
        }

    .gp-card img {
        max-width: 100%;
        max-height: 90px;
        width: auto;
        height: auto;
        object-fit: contain;
        display: block;
    }

/* text shown only when the logo image file is missing */
.gp-name {
    display: none;
    font-size: 17px;
    font-weight: 700;
    color: var(--c-primary, #162F6A);
    text-align: center;
    line-height: 1.3;
}

/* arrows */
.gp-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-62%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 0;
    cursor: pointer;
    z-index: 3;
    background: var(--c-primary, #162F6A);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 8px rgba(0, 0, 0, .25);
    transition: background .15s;
}

    .gp-arrow:hover, .gp-arrow:focus-visible {
        background: var(--c-strong, #214AAB);
    }

    .gp-arrow svg {
        width: 22px;
        height: 22px;
        fill: none;
        stroke: currentColor;
        stroke-width: 3;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.gp-prev {
    left: 3px;
}

.gp-next {
    right: 3px;
}

/* pause / play */
.gp-toggle {
    position: absolute;
    left: 19px;
    bottom: -4px;
    width: 30px;
    height: 30px;
    padding: 0;
    background: transparent;
    border: 0;
    cursor: pointer;
    color: #111;
}

    .gp-toggle:hover, .gp-toggle:focus-visible {
        color: var(--c-strong, #214AAB);
    }

    .gp-toggle svg {
        width: 22px;
        height: 22px;
        fill: currentColor;
        display: block;
        margin: auto;
    }

    .gp-toggle .gp-ico-play {
        display: none;
    }

    .gp-toggle.is-paused .gp-ico-play {
        display: block;
    }

    .gp-toggle.is-paused .gp-ico-pause {
        display: none;
    }

@media (max-width: 640px) {
    .gp-card {
        flex-basis: 200px;
        height: 104px;
    }

    .gp-track {
        gap: 16px;
    }

    .gp-arrow {
        width: 38px;
        height: 38px;
    }
}
