/*======================================================================

MC-20
FOOTER

Version : 2.0

======================================================================*/

.ms-footer{

    position:relative;

    overflow:hidden;

    background:var(--ms-bg);

    padding:120px 0 48px;

}

.ms-footer::before{

    content:"";

    position:absolute;

    inset:0;

    pointer-events:none;

    background:

        radial-gradient(

            circle at top left,

            rgba(197,165,114,.05),

            transparent 60%

        ),

        radial-gradient(

            circle at bottom right,

            rgba(197,165,114,.04),

            transparent 55%

        );

}

.ms-footer-layout{

    position:relative;

    z-index:2;

}



.ms-footer-logo-wrap{

    display:flex;

    justify-content:center;

    align-items:center;

    margin-bottom:72px;

}

.ms-footer-logo{

    display:inline-flex;

    align-items:center;

    justify-content:center;

}

.ms-footer-logo img{

    display:block;

    width:auto;

    max-height:72px;

}



.ms-footer-top{

    display:grid;

    grid-template-columns:repeat(4,minmax(0,1fr));

    gap:52px;

    align-items:start;

}


.ms-footer-column{

    display:flex;

    flex-direction:column;

    min-width:0;

}

.ms-footer-heading{

    color:var(--ms-white);

    font-size:18px;

    font-weight:700;

    line-height:1.3;

    margin-bottom:24px;

}



.ms-footer-divider{

    width:100%;

    height:1px;

    margin:72px 0 42px;

    background:

        linear-gradient(

            90deg,

            transparent,

            rgba(197,165,114,.28),

            transparent

        );

}



.ms-footer-social-wrap{

    display:flex;

    justify-content:center;

    margin-bottom:46px;

}



.ms-footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:32px;

}



@media (max-width:1024px){

    .ms-footer{

        padding:96px 0 42px;

    }

    .ms-footer-logo-wrap{

        margin-bottom:56px;

    }

    .ms-footer-top{

        grid-template-columns:repeat(2,minmax(0,1fr));

        gap:42px;

    }

}

@media (max-width:767px){

    .ms-footer{

        padding:72px 0 36px;

    }

    .ms-footer-logo-wrap{

        margin-bottom:42px;

    }

    .ms-footer-logo img{

        max-height:58px;

    }

    .ms-footer-top{

        grid-template-columns:1fr;

        gap:34px;

        text-align:center;

    }

    .ms-footer-column{

        align-items:center;

    }

    .ms-footer-bottom{

        flex-direction:column;

        align-items:center;

        text-align:center;

        gap:18px;

    }

}



.ms-footer-links{

    display:flex;

    flex-direction:column;

    gap:14px;

    margin:0;

    padding:0;

    list-style:none;

}

.ms-footer-links li{

    margin:0;

    padding:0;

}

.ms-footer-links a{

    display:inline-flex;

    align-items:center;

    color:var(--ms-text-soft);

    font-size:16px;

    line-height:1.8;

    text-decoration:none;

    transition:

        color .30s ease,

        transform .30s ease;

}

.ms-footer-links a:hover{

    color:var(--ms-gold);

    transform:translateX(4px);

}



.ms-footer-contact{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.ms-footer-contact-item{

    display:flex;

    align-items:flex-start;

    gap:14px;

}

.ms-footer-contact-icon{

    width:44px;

    height:44px;

    flex-shrink:0;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    border:1px solid rgba(197,165,114,.18);

    background:rgba(197,165,114,.06);

    color:var(--ms-gold);

}

.ms-footer-contact-icon svg{

    width:18px;

    height:18px;

}

.ms-footer-contact-content{

    display:flex;

    flex-direction:column;

    gap:4px;

    min-width:0;

}

.ms-footer-contact-label{

    color:var(--ms-text-soft);

    font-size:13px;

    font-weight:600;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.ms-footer-contact-value{

    color:var(--ms-white);

    font-size:16px;

    line-height:1.8;

    overflow-wrap:anywhere;

    word-break:break-word;

}

.ms-footer-contact-value a{

    color:inherit;

    text-decoration:none;

}

.ms-footer-contact-value a:hover{

    color:var(--ms-gold);

}



.ms-footer-social{

    display:flex;

    flex-wrap:wrap;

    justify-content:center;

    gap:20px;

}

.ms-footer-social a{

    width:52px;

    height:52px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    border:1px solid rgba(197,165,114,.18);

    background:rgba(197,165,114,.05);

    color:var(--ms-gold);

    text-decoration:none;

    transition:

        transform .35s ease,

        border-color .35s ease,

        background .35s ease,

        color .35s ease;

}

.ms-footer-social a:hover{

    transform:translateY(-3px);

    border-color:rgba(197,165,114,.35);

    background:rgba(197,165,114,.10);

    color:var(--ms-white);

}

.ms-footer-social svg{

    width:20px;

    height:20px;

}



.ms-footer-copyright{

    color:var(--ms-text-soft);

    font-size:15px;

    line-height:1.8;

}

.ms-footer-copyright strong{

    color:var(--ms-white);

    font-weight:600;

}


.ms-footer-nav{

    display:flex;

    flex-wrap:wrap;

    justify-content:flex-end;

    align-items:center;

    gap:24px;

}

.ms-footer-nav a{

    color:var(--ms-text-soft);

    font-size:15px;

    font-weight:500;

    text-decoration:none;

    transition:

        color .30s ease,

        transform .30s ease;

}

.ms-footer-nav a:hover{

    color:var(--ms-gold);

    transform:translateY(-2px);

}

.ms-footer-links a:focus-visible,
.ms-footer-nav a:focus-visible,
.ms-footer-social a:focus-visible,
.ms-footer-contact-value a:focus-visible{

    outline:2px solid var(--ms-gold);

    outline-offset:4px;

}


@media (max-width:1024px){

    .ms-footer-top{

        grid-template-columns:repeat(2,minmax(0,1fr));

        gap:40px;

    }

    .ms-footer-column{

        align-items:flex-start;

        text-align:left;

    }

    .ms-footer-nav{

        justify-content:flex-start;

    }

}



@media (max-width:767px){

    .ms-footer{

        padding:72px 0 36px;

    }

    .ms-footer-logo-wrap{

        margin-bottom:42px;

    }

    .ms-footer-logo img{

        max-height:58px;

    }

    .ms-footer-top{

        grid-template-columns:1fr;

        gap:32px;

        text-align:center;

    }

    .ms-footer-column{

        align-items:center;

    }

    .ms-footer-links{

        align-items:center;

    }

    .ms-footer-contact{

        width:100%;

        max-width:420px;

        margin:0 auto;

        align-items:flex-start;

    }

    .ms-footer-social{

        justify-content:center;

        gap:18px;

    }

    .ms-footer-bottom{

        flex-direction:column;

        align-items:center;

        justify-content:center;

        gap:20px;

        text-align:center;

    }

    .ms-footer-nav{

        justify-content:center;

        gap:16px;

    }

}



@media (max-width:480px){

    .ms-footer{

        padding:64px 0 32px;

    }

    .ms-footer-logo img{

        max-height:52px;

    }

    .ms-footer-heading{

        margin-bottom:18px;

    }

    .ms-footer-links{

        gap:12px;

    }

    .ms-footer-social{

        gap:16px;

    }

    .ms-footer-social a{

        width:48px;

        height:48px;

    }

    .ms-footer-nav{

        flex-direction:column;

        gap:12px;

    }

}

/* STEP 11 — compact social abbreviations */
.ms-footer-social a{
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.055em;
    text-transform:uppercase;
    line-height:1;
}
