/* Shared platform footer and stable desktop submenu interaction. */
body.pa12-theme .pa12-copyright-footer {
    margin: 0;
    padding: 24px 0;
    background: #111;
    color: #d5d5d5;
    text-align: center;
}
body.pa12-theme .pa12-copyright-footer p {
    margin: 0;
    font: 400 14px/1.6 "Roboto", sans-serif;
    overflow-wrap: anywhere;
}
body.pa12-theme .pa12-copyright-footer__sister {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0 0 18px;
    padding: 12px 0 24px;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}
body.pa12-theme .pa12-copyright-footer__sister-label {
    display: grid;
    grid-template-columns: 32px auto 32px;
    align-items: center;
    gap: 14px;
    color: #df9400;
    font: 600 12px/1.5 "Roboto", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}
body.pa12-theme .pa12-copyright-footer__sister-label::before,
body.pa12-theme .pa12-copyright-footer__sister-label::after {
    content: "";
    height: 1px;
    background: currentColor;
    opacity: .5;
}
body.pa12-theme .pa12-copyright-footer__sister a {
    display: inline-flex;
    width: 208px;
    max-width: 100%;
    height: 64px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    text-decoration: none;
    transition: opacity 160ms ease;
}
body.pa12-theme .pa12-copyright-footer__sister img {
    display: block;
    width: 100%;
    height: 64px;
    object-fit: contain;
    object-position: center;
    filter: none;
}
body.pa12-theme .pa12-copyright-footer__sister a:hover,
body.pa12-theme .pa12-copyright-footer__sister a:focus-visible {
    opacity: .8;
}
body.pa12-theme .pa12-copyright-footer__sister a:focus-visible {
    outline: 2px solid #df9400;
    outline-offset: 5px;
}

@media (max-width: 520px) {
    body.pa12-theme .pa12-copyright-footer__sister {
        gap: 8px;
        padding-block: 8px 20px;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.pa12-theme .pa12-copyright-footer__sister a { transition: none; }
}

body.pa12-theme .pa12-media-partners {
    margin-top: clamp(76px, 9vw, 132px);
    border-top: 5px solid #df9400;
    border-bottom: 1px solid #cfc8bb;
    background: #f1ede5;
    color: #111;
}

body.pa12-theme .pa12-media-partners__inner { padding-top: 68px; padding-bottom: 72px; }
body.pa12-theme .pa12-media-partners__head { display: grid; grid-template-columns: minmax(340px, 1.15fr) minmax(280px, .7fr) auto; gap: clamp(28px, 5vw, 80px); align-items: end; margin-bottom: 40px; }
body.pa12-theme .pa12-media-partners__head .pa12-footer-kicker { margin: 0 0 10px; color: #9a6700; font: 800 10px/1 "Roboto", sans-serif; text-transform: uppercase; }
body.pa12-theme .pa12-media-partners__head h2 { margin: 0; scroll-margin-top: 160px; color: #111; font: 900 clamp(42px, 5vw, 68px)/.9 "Roboto", sans-serif; letter-spacing: 0; text-transform: uppercase; }
body.pa12-theme .pa12-media-partners__head > p { max-width: 440px; margin: 0; color: #625e56; font-size: 14px; line-height: 1.55; }
body.pa12-theme .pa12-media-partners__head > a { display: flex; min-width: 190px; align-items: center; justify-content: space-between; gap: 24px; padding: 17px 0 12px; border-bottom: 1px solid #111; color: #111; font: 800 10px/1.2 "Roboto", sans-serif; text-transform: uppercase; }
body.pa12-theme .pa12-media-partners__head > a span { color: #9a6700; font-size: 18px; transition: transform 180ms ease; }
body.pa12-theme .pa12-media-partners__head > a:hover span,
body.pa12-theme .pa12-media-partners__head > a:focus-visible span { transform: translateX(5px); }
body.pa12-theme .pa12-media-partners__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); border-top: 1px solid #cbc4b8; border-left: 1px solid #cbc4b8; }
body.pa12-theme .pa12-media-partner { display: flex; min-width: 0; min-height: 118px; align-items: center; justify-content: center; padding: 22px 18px; border-right: 1px solid #cbc4b8; border-bottom: 1px solid #cbc4b8; background: #f8f6f1; color: #111; transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
body.pa12-theme .pa12-media-partner img { display: block; width: 100%; max-width: 142px; max-height: 58px; object-fit: contain; filter: grayscale(1) contrast(1.06); opacity: .72; transition: filter 180ms ease, opacity 180ms ease; }
body.pa12-theme .pa12-media-partner span { font: 850 15px/1.15 "Roboto", sans-serif; text-align: center; text-transform: uppercase; }
body.pa12-theme .pa12-media-partner:hover,
body.pa12-theme .pa12-media-partner:focus-visible { z-index: 2; background: #fff; box-shadow: inset 0 -4px #df9400; transform: translateY(-3px); }
body.pa12-theme .pa12-media-partner:hover img,
body.pa12-theme .pa12-media-partner:focus-visible img { filter: grayscale(0); opacity: 1; }
body.home.pa12-theme .pa12-media-partners + .pa12-footer { margin-top: 0 !important; }

body.pa12-theme .pa12-footer-cta--standalone {
    border-top: 1px solid #ded8cc;
    border-bottom: 0;
    background: #f3efe6;
    color: #111;
}

body.pa12-theme .pa12-footer-cta--standalone .pa12-footer-cta__inner {
    min-height: 250px;
}

body.pa12-theme .pa12-footer-cta--standalone .pa12-footer-kicker {
    color: #9a6a0c;
    letter-spacing: 0;
}

body.pa12-theme .pa12-footer-cta--standalone h2 {
    max-width: 800px;
    color: #111;
    font: 900 58px/.92 "Roboto Condensed", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

body.pa12-theme .pa12-footer-cta--standalone .pa12-footer-cta__button {
    min-width: 220px;
    border: 1px solid #111;
    border-radius: 2px;
    background: #111;
    color: #fff;
    letter-spacing: 0;
}

body.pa12-theme .pa12-footer-cta--standalone .pa12-footer-cta__button:hover,
body.pa12-theme .pa12-footer-cta--standalone .pa12-footer-cta__button:focus-visible {
    border-color: #df9400;
    background: #df9400;
    color: #111;
}

body.pa12-theme .pa12-platform-footer {
    background: #0f0f0e !important;
    color: #fff;
}

body.pa12-theme .pa12-platform-footer::before {
    display: none;
}

body.pa12-theme .pa12-platform-footer__masthead {
    display: flex;
    min-height: 112px;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    border-bottom: 1px solid rgba(255, 255, 255, .16);
}

body.pa12-theme .pa12-platform-footer__masthead > div {
    display: flex;
    align-items: center;
    gap: 22px;
}

body.pa12-theme .pa12-platform-footer__live {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #a8a49b;
    font: 700 10px/1 "Roboto", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

body.pa12-theme .pa12-platform-footer__live i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #64d48a;
    box-shadow: 0 0 0 5px rgba(100, 212, 138, .13);
}

body.pa12-theme .pa12-platform-footer__masthead strong {
    color: #fff;
    font: 900 22px/1 "Roboto Condensed", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

body.pa12-theme .pa12-platform-footer__masthead > a,
body.pa12-theme .pa12-footer-contact__link {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 7px;
    border-bottom: 1px solid currentColor;
    color: #fff;
    font: 800 10px/1.2 "Roboto", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-main {
    display: grid;
    grid-template-columns: 1.3fr .8fr .8fr .7fr;
    gap: 52px;
    padding-block: 76px 68px;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-intro {
    max-width: 430px;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-logo {
    margin-bottom: 24px;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-logo img {
    width: 210px;
    max-height: 70px;
    object-fit: contain;
    object-position: left center;
    filter: none;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-intro p {
    color: rgba(255, 255, 255, .58) !important;
    font: 400 13px/1.75 "Roboto", sans-serif;
    letter-spacing: 0;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-main h3 {
    margin: 5px 0 25px;
    color: #df9400 !important;
    font: 800 10px/1 "Roboto", sans-serif;
    letter-spacing: 0;
    text-transform: uppercase;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-links {
    display: flex;
    flex-direction: column;
    gap: 0;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-links li {
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

body.pa12-theme .pa12-platform-footer .pa12-footer-links a {
    display: flex;
    min-height: 38px;
    align-items: center;
    color: rgba(255, 255, 255, .75) !important;
    font: 500 12px/1.2 "Roboto", sans-serif;
    letter-spacing: 0;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-links a:hover,
body.pa12-theme .pa12-platform-footer .pa12-footer-links a:focus-visible {
    color: #f1c45b !important;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-email {
    max-width: 100%;
    margin-bottom: 26px;
    overflow-wrap: anywhere;
    color: #fff !important;
    font: 700 13px/1.4 "Roboto", sans-serif;
    letter-spacing: 0;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-contact__link {
    width: fit-content;
    color: rgba(255, 255, 255, .76);
}

body.pa12-theme .pa12-platform-footer .pa12-footer-socials {
    margin-top: 30px;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-socials a {
    color: rgba(255, 255, 255, .7) !important;
    font-size: 11px;
    letter-spacing: 0;
    text-transform: uppercase;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-bottom {
    min-height: 78px;
    color: rgba(255, 255, 255, .42) !important;
    letter-spacing: 0;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-bottom > div {
    display: flex;
    gap: 24px;
}

body.pa12-theme .pa12-platform-footer .pa12-footer-bottom a {
    color: rgba(255, 255, 255, .6) !important;
    letter-spacing: 0;
}

@media (max-width: 1120px) {
    body.pa12-theme .pa12-media-partners__head { grid-template-columns: 1fr 1fr; }
    body.pa12-theme .pa12-media-partners__head > a { grid-column: 2; justify-self: start; }
    body.pa12-theme .pa12-media-partners__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    body.pa12-theme .pa12-platform-footer .pa12-footer-main {
        grid-template-columns: 1.2fr 1fr 1fr;
    }

    body.pa12-theme .pa12-platform-footer .pa12-footer-contact {
        grid-column: 2 / -1;
    }
}

@media (max-width: 760px) {
    body.pa12-theme .pa12-media-partners { margin-top: 76px; }
    body.pa12-theme .pa12-media-partners__inner { padding-top: 48px; padding-bottom: 52px; }
    body.pa12-theme .pa12-media-partners__head { grid-template-columns: 1fr; gap: 18px; margin-bottom: 28px; }
    body.pa12-theme .pa12-media-partners__head h2 { font-size: 42px; }
    body.pa12-theme .pa12-media-partners__head > a { grid-column: auto; width: 100%; }
    body.pa12-theme .pa12-media-partners__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.pa12-theme .pa12-media-partner { min-height: 96px; padding: 17px 14px; }
    body.pa12-theme .pa12-media-partner img { max-width: 120px; max-height: 48px; }
    body.pa12-theme .pa12-footer-cta--standalone .pa12-footer-cta__inner {
        min-height: 0;
        padding-block: 58px;
    }

    body.pa12-theme .pa12-footer-cta--standalone h2 {
        font-size: 40px;
    }

    body.pa12-theme .pa12-platform-footer__masthead {
        min-height: 136px;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
    }

    body.pa12-theme .pa12-platform-footer__masthead > div {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    body.pa12-theme .pa12-platform-footer .pa12-footer-main {
        grid-template-columns: 1fr;
        gap: 46px;
        padding-block: 58px;
    }

    body.pa12-theme .pa12-platform-footer .pa12-footer-contact {
        grid-column: auto;
    }

    body.pa12-theme .pa12-platform-footer .pa12-footer-bottom {
        min-height: 112px;
        gap: 18px;
    }
}
