/*======================================
  Footer
======================================*/

.site-footer{

    padding:var(--space-2xl) 0;

    background:var(--footer-bg);

    color:var(--footer-text);

}

/*--------------------------------------
 Layout
--------------------------------------*/

.footer-grid{

    display:grid;

    grid-template-columns:1fr 2fr;

    gap:var(--space-xl);

}

/*--------------------------------------
 Column
--------------------------------------*/

.footer-column{

    display:flex;

    flex-direction:column;

}

.footer-title{

    margin-bottom:var(--space-md);

    color:var(--footer-text);

    font-size:var(--font-size-lg);

}

.footer-column p{

    margin:0;

    line-height:1.8;

    color:var(--footer-text-light);

}

/*--------------------------------------
 Menu
--------------------------------------*/

.footer-menu{

    display:flex;

    flex-direction:row;

    align-items:center;

    flex-wrap:wrap;

    gap:var(--space-sm) var(--space-lg);

    margin:0;

    padding:0;

    list-style:none;

}

.footer-menu li{

    margin:0;

    padding:0;

}

.footer-menu a{

    display:block;

    color:var(--footer-text);

    text-decoration:none;

    white-space:nowrap;

    transition:var(--transition);

}

.footer-menu a:hover{

    color:var(--footer-hover);

}
/*--------------------------------------
 SNS
--------------------------------------*/

.footer-sns{

    display:flex;

    gap:var(--space-sm);

}

.footer-sns a{

    display:flex;

    justify-content:center;

    align-items:center;

    width:var(--footer-icon-size);

    height:var(--footer-icon-size);

    border-radius:50%;

    background:var(--footer-icon-bg);

    color:var(--footer-text);

    text-decoration:none;

    transition:var(--transition);

}

.footer-sns a:hover{

    background:var(--footer-hover);

    color:var(--footer-bg);

}

/*--------------------------------------
 Bottom
--------------------------------------*/

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:var(--space-md);

    margin-top:var(--space-xl);

    padding-top:var(--space-lg);

    border-top:1px solid var(--footer-border);

}

.footer-copy{

    margin:0;

    color:var(--footer-text-light);

    font-size:var(--font-size-sm);

}

.footer-links{

    display:flex;

    flex-wrap:wrap;

    gap:var(--space-md);

}

.footer-links a{

    color:var(--footer-text-light);

    font-size:var(--font-size-sm);

    text-decoration:none;

    transition:var(--transition);

}

.footer-links a:hover{

    color:var(--footer-hover);

}

/*--------------------------------------
 Responsive
--------------------------------------*/

@media (max-width:992px){

    .footer-grid{

        grid-template-columns:1fr;

    }

    .footer-bottom{

        flex-direction:column;

        text-align:center;

    }

    .footer-links{

        justify-content:center;

    }

}

@media (max-width:768px){

    .site-footer{

        padding:var(--space-xl) 0;

    }

}