/*=========================================
FOOTER
=========================================*/

.site-footer{
background:#161616;
color:#d9d9d9;
position:relative;
overflow:hidden;
padding-top:40px;
} 

.site-footer::before{
content:"";
position:absolute;
top:-180px;
right:-180px;
width:420px;
height:420px;
border-radius:50%;
background:rgba(255,255,255,.03);
}

.site-footer::after{
content:"";
position:absolute;
left:-120px;
bottom:-120px;
width:280px;
height:280px;
border-radius:50%;
background:rgba(255,255,255,.02);
}

/*=========================================
NEWSLETTER
=========================================*/

.footer-newsletter{
background:#222;
padding:70px;
border-radius:22px;
margin-top:-90px;
margin-bottom:90px;
position:relative;
z-index:10;
overflow:hidden;
box-shadow:0 30px 70px rgba(0,0,0,.18);
}

.footer-newsletter::before{
content:"";
position:absolute;
right:-80px;
top:-80px;
width:220px;
height:220px;
border-radius:50%;
background:rgba(255,255,255,.04);
}

.footer-newsletter span{
display:inline-block;
font-size:12px;
letter-spacing:3px;
text-transform:uppercase;
color:#c98f72;
margin-bottom:15px;
font-weight:600;
}

.footer-newsletter h2{
font-family:'Cormorant Garamond',serif;
font-size:54px;
color:#fff;
margin-bottom:18px;
line-height:1.1;
}

.footer-newsletter p{
font-size:16px;
line-height:1.9;
color:#d5d5d5;
margin:0;
}

/*=========================================
FORM
=========================================*/

.newsletter-form{
width:100%;
}

.newsletter-form .input-group{
display:flex;
gap:12px;
}

.newsletter-form input{
flex:1;
height:60px;
border:none;
padding:0 20px;
border-radius:8px;
font-size:15px;
background:#fff;
}

.newsletter-form input:focus{
outline:none;
box-shadow:none;
}

.newsletter-form button{
height:60px;
padding:0 30px;
border:none;
border-radius:8px;
background:#c98f72;
color:#fff;
font-weight:600;
font-size:14px;
letter-spacing:1px;
text-transform:uppercase;
transition:.35s;
}

.newsletter-form button:hover{
background:#b67a5f;
}

/*=========================================
MAIN FOOTER
=========================================*/

.footer-main{
padding-bottom:70px;
position:relative;
z-index:5;
}

.footer-widget{
margin-bottom:40px;
}

.footer-logo{
font-family:'Cormorant Garamond',serif;
font-size:46px;
color:#fff;
margin-bottom:20px;
}

.footer-widget p{
font-size:15px;
line-height:1.9;
color:#c8c8c8;
margin-bottom:28px;
}

/*=========================================
WIDGET TITLE
=========================================*/

.footer-widget h4{
font-family:'Cormorant Garamond',serif;
font-size:30px;
color:#fff;
margin-bottom:28px;
position:relative;
padding-bottom:14px;
}

.footer-widget h4::after{
content:"";
position:absolute;
left:0;
bottom:0;
width:55px;
height:2px;
background:#c98f72;
}

/*=========================================
FOOTER LINKS
=========================================*/

.footer-widget ul{
margin:0;
padding:0;
list-style:none;
}

.footer-widget ul li{
margin-bottom:16px;
}

.footer-widget ul li:last-child{
margin-bottom:0;
}

.footer-widget ul li a{
color:#cfcfcf;
text-decoration:none;
font-size:15px;
display:inline-block;
transition:.35s;
}

.footer-widget ul li a:hover{
color:#c98f72;
padding-left:8px;
}

/*=========================================
LATEST POSTS
=========================================*/

.footer-widget ul li small{
display:block;
margin-top:6px;
font-size:12px;
color:#8f8f8f;
}

/*=========================================
SOCIAL
=========================================*/

.footer-social{
display:flex;
align-items:center;
gap:14px;
margin-top:10px;
}

.footer-social a{
width:46px;
height:46px;
border-radius:50%;
background:#252525;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:16px;
text-decoration:none;
transition:.35s;
}

.footer-social a:hover{
background:#c98f72;
transform:translateY(-5px);
}

/*=========================================
QUICK LINKS
=========================================*/

.footer-widget ul li{
border-bottom:1px solid rgba(255,255,255,.05);
padding-bottom:12px;
}

.footer-widget ul li:last-child{
border-bottom:none;
}

/*=========================================
LATEST POSTS STYLE
=========================================*/

.footer-widget ul li a{
line-height:1.6;
}

/*=========================================
FOOTER SPACING
=========================================*/

.footer-widget{
padding-right:20px;
}

.footer-main .row>div:last-child .footer-widget{
padding-right:0;
}

/*=========================================
FOOTER BOTTOM
=========================================*/

.footer-bottom{
border-top:1px solid rgba(255,255,255,.08);
padding:28px 0;
margin-top:20px;
}

.footer-bottom p{
margin:0;
font-size:14px;
color:#bfbfbf;
}

.footer-bottom strong{
color:#ffffff;
font-weight:600;
}

.footer-bottom a{
color:#bfbfbf;
text-decoration:none;
font-size:14px;
margin:0 10px;
transition:.3s;
}

.footer-bottom a:hover{
color:#c98f72;
}

.footer-bottom span{
color:#666;
}

/*=========================================
BACK TO TOP
=========================================*/

.back-to-top{
position:fixed;
right:30px;
bottom:30px;
width:55px;
height:55px;
background:#c98f72;
color:#fff;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:18px;
text-decoration:none;
box-shadow:0 15px 40px rgba(0,0,0,.18);
opacity:0;
visibility:hidden;
transform:translateY(20px);
transition:.35s;
z-index:999;
}

.back-to-top.show{
opacity:1;
visibility:visible;
transform:translateY(0);
}

.back-to-top:hover{
background:#b67a5f;
color:#fff;
transform:translateY(-5px);
}

/*=========================================
TABLET
=========================================*/

@media(max-width:991px){

.footer-newsletter{
padding:45px;
margin-top:-70px;
}

.footer-newsletter h2{
font-size:40px;
}

.newsletter-form .input-group{
flex-direction:column;
}

.newsletter-form input,
.newsletter-form button{
width:100%;
}

.footer-logo{
font-size:38px;
}

.footer-widget{
padding-right:0;
}

.footer-bottom{
text-align:center;
}

.footer-bottom .text-lg-end{
text-align:center !important;
margin-top:15px;
}

}

/*=========================================
MOBILE
=========================================*/

@media(max-width:767px){

.site-footer{
padding-top:40;
}

.footer-newsletter{
padding:30px 25px;
margin-top:-40px;
margin-bottom:50px;
border-radius:16px;
}

.footer-newsletter span{
font-size:11px;
}

.footer-newsletter h2{
font-size:30px;
line-height:1.2;
}

.footer-newsletter p{
font-size:14px;
margin-bottom:20px;
}

.newsletter-form input,
.newsletter-form button{
height:52px;
font-size:14px;
}

.footer-main{
padding-bottom:40px;
}

.footer-logo{
font-size:34px;
}

.footer-widget{
margin-bottom:35px;
}

.footer-widget h4{
font-size:24px;
margin-bottom:18px;
}

.footer-widget ul li{
margin-bottom:12px;
padding-bottom:10px;
}

.footer-widget ul li a{
font-size:14px;
}

.footer-social{
justify-content:flex-start;
flex-wrap:wrap;
}

.footer-social a{
width:42px;
height:42px;
font-size:15px;
}

.footer-bottom{
padding:20px 0;
}

.footer-bottom p{
font-size:13px;
margin-bottom:10px;
}

.footer-bottom a{
display:inline-block;
margin:5px 8px;
font-size:13px;
}

.back-to-top{
width:48px;
height:48px;
right:15px;
bottom:15px;
font-size:16px;
}

}

/*=========================================
LARGE DESKTOP
=========================================*/

@media(min-width:1400px){

.footer-newsletter{
padding:80px;
}

.footer-newsletter h2{
font-size:60px;
}

.footer-logo{
font-size:52px;
}

}