/* Shared IC footer: homepage appearance, independent of page frameworks. */
#ic-site-footer {
    display: block;
    position: relative;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #0b2431 !important;
    background-image: none !important;
    color: #d9e8ed;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 21px;
    letter-spacing: normal;
    text-align: left;
    text-transform: none;
    box-shadow: none;
    -webkit-font-smoothing: auto;
}
#ic-site-footer,
#ic-site-footer *,
#ic-site-footer *::before,
#ic-site-footer *::after { box-sizing: border-box; }
#ic-site-footer .ic-footer-colors {
    display: flex;
    width: 100%;
    height: 3px;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
}
#ic-site-footer .ic-footer-color {
    display: block;
    flex: 1 1 0;
    height: 3px;
    margin: 0;
    padding: 0;
    border: 0;
}
#ic-site-footer .ic-footer-color:nth-child(-n + 6) { display: none; }
#ic-site-footer .ic-footer-color:nth-child(4n + 1) { background: #ff9800; }
#ic-site-footer .ic-footer-color:nth-child(4n + 2) { background: #31c0b3; }
#ic-site-footer .ic-footer-color:nth-child(4n + 3) { background: #ff3145; }
#ic-site-footer .ic-footer-color:nth-child(4n + 4) { background: #9b3cc1; }
#ic-site-footer .ic-footer-copyright {
    width: 100%;
    margin: 0;
    padding: 12px 0;
    border: 0;
    background: #0b2431 !important;
    background-image: none !important;
}
#ic-site-footer .ic-footer-container {
    width: min(1180px, calc(100% - 32px));
    max-width: none;
    margin: 0 auto;
    padding: 0;
    border: 0;
}
#ic-site-footer .ic-footer-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 -15px;
    padding: 24.96px 0;
    border: 0;
}
#ic-site-footer .ic-footer-copy-column,
#ic-site-footer .ic-footer-social-column {
    position: relative;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0 15px;
    border: 0;
}
#ic-site-footer .ic-footer-copy-column { order: 1; }
#ic-site-footer .ic-footer-social-column { order: 0; }
#ic-site-footer .ic-footer-copy {
    margin: 0;
    padding: 0;
    border: 0;
    color: #d9e8ed !important;
    font-family: inherit;
    font-size: 12.96px;
    font-weight: 400;
    line-height: 22.032px;
    letter-spacing: normal;
    text-align: center;
    text-transform: none;
}
#ic-site-footer .ic-footer-socials {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 5.6px;
    margin: 0 0 16px;
    padding: 0;
    border: 0;
    list-style: none;
}
#ic-site-footer .ic-footer-socials > li {
    display: block;
    margin: 0 10.08px 0 0;
    padding: 0;
    border: 0;
    font: inherit;
    list-style: none;
}
#ic-site-footer .ic-footer-social,
#ic-site-footer .ic-footer-social:visited {
    display: inline-block;
    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #fff !important;
    font-family: inherit;
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: normal;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    background-image: none;
    box-shadow: none;
}
#ic-site-footer .ic-footer-facebook { background: #30b7a0 !important; }
#ic-site-footer .ic-footer-instagram { background: #c61773 !important; }
#ic-site-footer .ic-footer-whatsapp { background: #b5d56a !important; }
#ic-site-footer .ic-footer-facebook:hover,
#ic-site-footer .ic-footer-facebook:focus { background: #5eaac9 !important; }
#ic-site-footer .ic-footer-instagram:hover,
#ic-site-footer .ic-footer-instagram:focus { background: #e34b92 !important; }
#ic-site-footer .ic-footer-whatsapp:hover,
#ic-site-footer .ic-footer-whatsapp:focus { background: #a1ca42 !important; }
#ic-site-footer .ic-footer-social:focus-visible { outline: 3px solid #31c0b3; outline-offset: 4px; }
#ic-site-footer .ic-footer-icon {
    display: inline-block;
    height: 16px;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: -2.285714px;
    fill: currentColor;
    stroke: none;
}
#ic-site-footer .ic-footer-facebook .ic-footer-icon { width: 9.142857px; }
#ic-site-footer .ic-footer-instagram .ic-footer-icon,
#ic-site-footer .ic-footer-whatsapp .ic-footer-icon { width: 13.714286px; }
@media (min-width: 576px) {
    #ic-site-footer .ic-footer-copy-column { flex-basis: 58.333333%; max-width: 58.333333%; }
    #ic-site-footer .ic-footer-social-column { flex-basis: 41.666667%; max-width: 41.666667%; }
    #ic-site-footer .ic-footer-copy { text-align: left; }
}
@media (min-width: 768px) {
    #ic-site-footer .ic-footer-color:nth-child(-n + 6) { display: block; }
    #ic-site-footer .ic-footer-copy-column { order: 0; }
    #ic-site-footer .ic-footer-socials { justify-content: flex-end; margin-bottom: 0; padding-right: 56px; }
}
/* Keep the shared footer at the bottom on every page that includes it. */
body:has(> #ic-site-footer) {
    margin: 0;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
}

body:has(> #ic-site-footer) > * {
    flex-shrink: 0;
}

body:has(> #ic-site-footer) > #ic-site-footer {
    margin-top: auto;
}

/* Preserve the standalone maintenance page's original padded content width. */
body:has(> #ic-site-footer) > main:not([id]):not([class]):has(> nav[aria-label="Language"]) {
    width: min(1200px, calc(100% - 48px));
    box-sizing: content-box;
    margin-top: 0;
    margin-bottom: 0;
}

@media (max-width: 700px) {
    body:has(> #ic-site-footer) > main:not([id]):not([class]):has(> nav[aria-label="Language"]) {
        width: calc(100% - 24px);
    }
}


/* Catalogue link follows the Cookie control inserted into the copyright paragraph. */
#ic-site-footer .ic-footer-copy-column { font-size: 12.96px; line-height: 22.032px; text-align: center; }
#ic-site-footer .ic-footer-copy { display: inline; }
#ic-site-footer .ic-footer-discovery,
#ic-site-footer .ic-footer-discovery:visited {
    display: inline-block;
    vertical-align: baseline;
    position: relative;
    margin: 0 0 0 8px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #d8e8ee !important;
    font: inherit;
    letter-spacing: normal;
    text-transform: none;
    text-decoration: none !important;
}
#ic-site-footer .ic-footer-discovery::before { content: "·"; margin-right: 10px; color: #62c8c6; }
#ic-site-footer .ic-footer-discovery::after { content: ""; position: absolute; inset: -10px -6px; }
#ic-site-footer .ic-footer-discovery:hover,
#ic-site-footer .ic-footer-discovery:focus-visible { text-decoration: underline !important; text-underline-offset: 4px; text-decoration-thickness: 2px !important; }
#ic-site-footer .ic-footer-discovery:focus-visible { outline: 2px solid #31c0b3; outline-offset: 4px; }
@media (min-width: 576px) { #ic-site-footer .ic-footer-copy-column { text-align: left; } }
@media (min-width: 992px) {
    #ic-site-footer .ic-footer-copy-column { flex-basis: 80%; max-width: 80%; }
    #ic-site-footer .ic-footer-social-column { flex-basis: 20%; max-width: 20%; }
}
