/* Footer v2 — blurred navy/cyan glow treatment. Loaded last on purpose. */
.site-footer{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:76px 0 26px;
    background:
        linear-gradient(135deg,#061a28 0%,#082636 38%,#0b3f56 100%);
    color:#edf7fb;
    border-top:1px solid rgba(123,220,248,.14);
}
.site-footer:before,
.site-footer:after{
    content:"";
    position:absolute;
    inset:auto;
    pointer-events:none;
    z-index:0;
}
.site-footer:before{
    width:560px;
    height:560px;
    left:-180px;
    bottom:-240px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(59,176,223,.26) 0%,rgba(59,176,223,.13) 26%,rgba(59,176,223,0) 68%);
    filter:blur(36px);
    opacity:.95;
}
.site-footer:after{
    width:640px;
    height:640px;
    right:-200px;
    top:-260px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(111,224,255,.22) 0%,rgba(111,224,255,.09) 30%,rgba(111,224,255,0) 72%);
    filter:blur(42px);
    opacity:.92;
}
 .site-footer .footer-grid-modern{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(300px,1.28fr) minmax(160px,.58fr) minmax(350px,1.2fr);
    gap:clamp(38px,4.6vw,68px);
    align-items:start;
}
.site-footer .footer-identity,
.site-footer .footer-column{min-width:0;position:relative;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.site-footer .footer-brand{display:inline-flex;align-items:center;justify-content:flex-start}
.site-footer .footer-brand img{display:block;object-fit:contain}
.site-footer .footer-rich,
.site-footer .footer-rich p{
    color:#bdd1db!important;
    font-size:14px;
    line-height:1.75;
}
.site-footer .footer-rich{max-width:460px;margin-top:20px}
.site-footer .footer-grid-modern h4{
    position:relative;
    margin:0 0 21px;
    padding-bottom:11px;
    color:#76d6fa!important;
    font:800 11px/1.2 var(--display);
    letter-spacing:.17em;
    text-transform:uppercase;
}
.site-footer .footer-grid-modern h4:after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:34px;
    height:2px;
    border-radius:99px;
    background:#ee3342;
}
.site-footer .footer-column>a:not(.brand){
    display:block;
    width:max-content;
    max-width:100%;
    margin:11px 0;
    color:#c3d6df!important;
    font-size:14px;
    line-height:1.5;
    transition:color .2s ease,transform .2s ease;
}
.site-footer .footer-column>a:not(.brand):hover{color:#fff!important;transform:translateX(3px)}
.site-footer .footer-social-block{margin-top:28px}
.site-footer .footer-social-block h4{margin-bottom:15px}
.site-footer .footer-socials{display:flex;flex-wrap:wrap;gap:10px}
.site-footer .footer-socials a{
    display:inline-grid;
    place-items:center;
    width:46px;
    height:46px;
    margin:0!important;
    border:1px solid rgba(133,218,247,.22);
    border-radius:14px;
    background:rgba(255,255,255,.07);
    color:#f2fbff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.site-footer .footer-socials a:hover{
    transform:translateY(-3px)!important;
    border-color:rgba(118,214,250,.72);
    background:rgba(24,140,184,.34);
}
.site-footer .footer-contact-column .contact-details{display:grid;gap:15px}
.site-footer .footer-contact-column .contact-detail{
    display:flex;
    align-items:flex-start;
    gap:12px;
    max-width:none!important;
    margin:0!important;
    color:#d9e8ee!important;
    font-size:14px;
    line-height:1.62;
}
.site-footer .footer-contact-column .contact-detail>span:last-child{min-width:0;overflow-wrap:normal;word-break:normal}
.site-footer .footer-contact-column .contact-detail small{
    display:block;
    margin:0 0 3px;
    color:#68c9ef!important;
    font-size:10px;
    font-weight:800;
    letter-spacing:.055em;
}
.site-footer .footer-contact-column .contact-detail-value,
.site-footer .footer-contact-column .contact-detail a{
    color:#dceaf0!important;
    text-decoration:none;
}
.site-footer .footer-contact-column .contact-detail a:hover{color:#fff!important}
.site-footer .footer-contact-column .contact-detail-icon{
    display:grid;
    place-items:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border:1px solid rgba(117,211,246,.30);
    border-radius:12px;
    background:linear-gradient(145deg,rgba(235,249,255,.98),rgba(205,237,250,.94));
    color:#0878b5!important;
    box-shadow:0 8px 20px rgba(0,0,0,.13);
}
.site-footer .footer-contact-column .contact-detail-icon svg{width:19px;height:19px}
.site-footer .footer-contact-column .contact-working-hours-rich{
    color:#e5f0f4!important;
    font-size:14px;
    line-height:1.58;
    max-width:none;
}
.site-footer .footer-contact-column .contact-working-hours-rich p{
    margin:0 0 3px!important;
    color:#e5f0f4!important;
    white-space:nowrap;
}
.site-footer .footer-contact-column .contact-working-hours-rich p:last-child{margin-bottom:0!important}
.site-footer .footer-contact-column .contact-working-hours-rich strong,
.site-footer .footer-contact-column .contact-working-hours-rich b{color:#fff!important}
.site-footer .copyright{
    position:relative;
    z-index:1;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-top:56px;
    padding-top:22px;
    border-top:1px solid rgba(190,226,239,.16);
    color:#8eabb8!important;
    font-size:12px;
}
.site-footer .copyright a{float:none!important;color:#b8d0da!important;transition:color .2s ease}
.site-footer .copyright a:hover{color:#fff!important}
@media(max-width:1080px){
    .site-footer .footer-grid-modern{grid-template-columns:minmax(270px,1.15fr) minmax(150px,.55fr) minmax(320px,1.15fr);gap:34px}
}
@media(max-width:860px){
    .site-footer{padding-top:62px}
    .site-footer .footer-grid-modern{grid-template-columns:1fr 1fr;gap:38px}
    .site-footer .footer-identity{grid-column:1/-1}
    .site-footer .footer-contact-column .contact-working-hours-rich p{white-space:normal}
}
@media(max-width:560px){
    .site-footer .footer-grid-modern{grid-template-columns:1fr;gap:32px}
    .site-footer .footer-identity{grid-column:auto}
    .site-footer .footer-column>a:not(.brand){width:auto}
    .site-footer .copyright{align-items:flex-start;flex-direction:column;gap:9px;margin-top:42px}
}


.site-footer .copyright{justify-content:flex-start!important}

/* 2026-10-01 — CMS-managed developer credit */
.site-footer .copyright{justify-content:space-between!important}
.site-footer .footer-developer-credit{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-left:auto;
    white-space:nowrap;
}
.site-footer .footer-developer-label{
    color:#8eabb8;
    font-size:11px;
    font-weight:600;
    letter-spacing:.025em;
}
.site-footer .footer-developer-brand{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#dceaf0!important;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
    text-decoration:none;
}
.site-footer a.footer-developer-brand{
    transition:color .2s ease,transform .2s ease,opacity .2s ease;
}
.site-footer a.footer-developer-brand:hover{
    color:#fff!important;
    transform:translateY(-1px);
}
.site-footer .footer-developer-brand img{
    display:block;
    width:22px;
    height:32px;
    object-fit:contain;
    filter:drop-shadow(0 4px 9px rgba(0,0,0,.16));
}
@media(max-width:560px){
    .site-footer .copyright{align-items:flex-start}
    .site-footer .footer-developer-credit{margin-left:0;white-space:normal}
}
