/* Shared footer; all page content and the existing logo-scrolling behaviour stay independent. */
.oicp-footer-logos { background:#f6f5ef; padding-top:30px; padding-bottom:36px; }
.oicp-footer-logos__label { max-width:1440px; margin:0 auto 22px; color:#53686b; font-size:11px; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; font-weight:600; }
#site-footer.oicp-footer-refresh { background:#183e43; color:#d7e5e1; font-size:15px; line-height:1.65; padding:0; }
.oicp-footer-refresh .oicp-footer-inner { width:calc(100% - 80px); max-width:1440px; margin:0 auto; }
.oicp-footer-refresh .oicp-footer-main { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:clamp(40px,6vw,110px); padding:58px 0 44px; align-items:start; }
.oicp-footer-refresh .widget { margin:0; padding:0; }
#site-footer.oicp-footer-refresh .widget-title,.oicp-footer-refresh .oicp-footer-kicker { font-size:11px!important; line-height:1.6!important; letter-spacing:.12em; text-transform:uppercase; font-weight:600!important; color:#a8ceca!important; margin:0 0 22px!important; padding:0; }
.oicp-footer-refresh .oicp-footer-intro h2 { font-size:clamp(29px,2.4vw,38px)!important; line-height:1.16!important; letter-spacing:-.035em; font-weight:500!important; color:#fff!important; margin:0 0 18px; }
.oicp-footer-refresh .oicp-footer-intro h2 span { color:#a8dcd4; }
.oicp-footer-refresh p { margin:0 0 16px; }
.oicp-footer-refresh .oicp-footer-intro>p:not(.oicp-footer-kicker) { max-width:340px; color:#d7e5e1; }
.oicp-footer-refresh a { color:#f6f5ef; text-decoration:none; border:0; box-shadow:none; }
.oicp-footer-refresh a:hover { color:#b9e6de; text-decoration:underline; text-underline-offset:5px; }
.oicp-footer-refresh a:focus-visible { outline:2px solid #b9e6de; outline-offset:5px; border-radius:2px; }
.oicp-footer-refresh .oicp-footer-project { display:inline-flex; align-items:center; gap:13px; font-size:13px; min-height:36px; border-bottom:1px solid #638689; }
.oicp-footer-refresh .oicp-footer-project span { font-size:19px; }
.oicp-footer-refresh .oicp-footer-nav ul { padding:0; margin:0; list-style:none; }
.oicp-footer-refresh .oicp-footer-nav li { padding:0; margin:0; border:0; }
.oicp-footer-refresh .oicp-footer-nav .sub-menu,.oicp-footer-refresh .nav-icon-angle { display:none!important; }
.oicp-footer-refresh .oicp-footer-nav .menu>li>a { display:block; padding:5px 0; min-height:36px; line-height:26px; font-size:15px; font-weight:400; }
.oicp-footer-refresh .oicp-footer-nav .menu>li:first-child>a { padding-top:0; }
.oicp-footer-refresh .oicp-footer-contact .textwidget { font-size:15px; line-height:1.7; }
.oicp-footer-refresh strong { font-weight:600; color:inherit; }
.oicp-footer-refresh .oicp-footer-bottom { display:flex; gap:40px; justify-content:flex-start; align-items:flex-end; padding:24px 0 30px; border-top:1px solid #406267; }
.oicp-footer-refresh .oicp-footer-legal { max-width:880px; font-size:12px; line-height:1.7; color:#c4d9d5; }
.oicp-footer-refresh .oicp-footer-legal .widget-title { position:absolute; width:1px; height:1px; padding:0; margin:-1px!important; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.oicp-footer-refresh .oicp-footer-legal .textwidget p { display:inline; margin:0; }
.oicp-footer-refresh .oicp-footer-legal .textwidget p+p::before { content:" "; }
.oicp-footer-refresh .oicp-footer-legal>a { display:inline-block; margin-top:8px; color:#c4d9d5; text-decoration:underline; text-underline-offset:4px; }
.oicp-footer-refresh .oicp-footer-credit { display:flex; margin-inline-start:auto; flex:0 0 auto; gap:10px; align-items:center; font-size:12px; color:#c4d9d5; white-space:nowrap; padding-bottom:2px; }
.oicp-footer-refresh .oicp-footer-credit>span { float:none!important; padding:0!important; margin:0!important; }
.oicp-footer-refresh .oicp-footer-credit img { width:120px; height:auto; vertical-align:top; }
.oicp-footer-refresh .oicp-footer-social:empty { display:none; }
@media(max-width:1439.98px) {
 /* Keep all legal text and the credit above the existing floating chat control. */
 .oicp-footer-refresh .oicp-footer-bottom { align-items:flex-start; flex-direction:column; gap:22px; padding-bottom:130px; }
}
@media(max-width:1149.98px) {
 .oicp-footer-refresh .oicp-footer-inner { width:calc(100% - 48px); }
 .oicp-footer-logos { padding-bottom:32px; }
}
@media(max-width:899.98px) {
 .oicp-footer-refresh .oicp-footer-main { grid-template-columns:1fr 1fr; gap:32px 50px; padding-top:40px; padding-bottom:32px; }
 .oicp-footer-refresh .oicp-footer-intro { grid-column:1/-1; padding-bottom:26px; border-bottom:1px solid #406267; }
 .oicp-footer-refresh .oicp-footer-intro>p:not(.oicp-footer-kicker) { max-width:none; }
 .oicp-footer-refresh .oicp-footer-desktop-break { display:none; }
}
@media(max-width:559.98px) {
 .oicp-footer-refresh .oicp-footer-inner { width:calc(100% - 40px); }
 .oicp-footer-refresh .oicp-footer-main { gap:30px 22px; }
 .oicp-footer-refresh .widget-title,.oicp-footer-refresh .oicp-footer-kicker { margin-bottom:17px; }
 .oicp-footer-refresh .oicp-footer-nav .menu>li>a { font-size:14px; min-height:42px; padding:8px 0; }
 .oicp-footer-refresh .oicp-footer-contact .textwidget { font-size:14px; }
}
@media(max-width:359.98px) {
 .oicp-footer-refresh .oicp-footer-main { grid-template-columns:1fr; }
}

@media(min-width:1440px) and (max-width:1999.98px) {
 .oicp-footer-refresh .oicp-footer-bottom { padding-bottom:130px; }
}
