/*=========================================
404 HERO
=========================================*/

.error-hero{
padding:10px 0 100px;
background:#faf8f5;
position:relative;
overflow:hidden;
}

.error-hero::before{
content:"";
position:absolute;
right:-180px;
top:-180px;
width:420px;
height:420px;
border-radius:50%;
background:rgba(201,143,114,.08);
}

.error-hero::after{
content:"";
position:absolute;
left:-120px;
bottom:-120px;
width:260px;
height:260px;
border-radius:50%;
background:rgba(201,143,114,.05);
}

/*=========================================
404 NUMBER
=========================================*/

.error-number{
font-family:'Cormorant Garamond',serif;
font-size:180px;
font-weight:700;
line-height:1;
color:#c98f72;
margin-bottom:20px;
text-shadow:0 15px 35px rgba(201,143,114,.15);
}

/*=========================================
BADGE
=========================================*/

.error-badge{
display:inline-block;
padding:8px 18px;
background:#f2e6dd;
color:#c98f72;
border-radius:50px;
font-size:12px;
font-weight:600;
letter-spacing:2px;
text-transform:uppercase;
margin-bottom:25px;
}

/*=========================================
TITLE
=========================================*/

.error-hero h1{
font-family:'Cormorant Garamond',serif;
font-size:58px;
line-height:1.2;
color:#222;
margin-bottom:25px;
}

.error-hero p{
max-width:760px;
margin:auto;
font-size:17px;
line-height:1.9;
color:#666;
margin-bottom:40px;
}

/*=========================================
BUTTONS
=========================================*/

.error-buttons{
display:flex;
justify-content:center;
gap:18px;
flex-wrap:wrap;
}

.error-buttons .btn-primary-custom,
.error-buttons .btn-outline-custom{
display:inline-flex;
align-items:center;
justify-content:center;
gap:10px;
padding:16px 34px;
border-radius:8px;
font-size:15px;
font-weight:600;
text-decoration:none;
transition:.35s;
}

.error-buttons .btn-primary-custom{
background:#c98f72;
color:#fff;
}

.error-buttons .btn-primary-custom:hover{
background:#b67a5f;
color:#fff;
transform:translateY(-4px);
}

.error-buttons .btn-outline-custom{
border:2px solid #c98f72;
color:#c98f72;
background:#fff;
}

.error-buttons .btn-outline-custom:hover{
background:#c98f72;
color:#fff;
}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:991px){

.error-hero{
padding:90px 0 70px;
}

.error-number{
font-size:140px;
}

.error-hero h1{
font-size:44px;
}

}

@media(max-width:767px){

.error-hero{
padding:70px 0 50px;
}

.error-number{
font-size:90px;
}

.error-hero h1{
font-size:32px;
}

.error-hero p{
font-size:15px;
}

.error-buttons{
flex-direction:column;
}

.error-buttons a{
width:100%;
}

}

/*=========================================
LATEST ARTICLES
=========================================*/

.error-latest{
padding:110px 0;
background:#fff;
}

.error-latest .section-heading{
margin-bottom:60px;
}

.error-latest .section-heading span{
display:inline-block;
font-size:12px;
font-weight:600;
letter-spacing:3px;
text-transform:uppercase;
color:#c98f72;
margin-bottom:15px;
}

.error-latest .section-heading h2{
font-family:'Cormorant Garamond',serif;
font-size:54px;
color:#222;
margin-bottom:20px;
}

.error-latest .section-heading p{
max-width:700px;
margin:auto;
font-size:16px;
line-height:1.9;
color:#666;
}

/*=========================================
ARTICLE CARD
=========================================*/

.error-post-card{
background:#fff;
border-radius:20px;
overflow:hidden;
box-shadow:0 15px 45px rgba(0,0,0,.06);
transition:.35s;
height:100%;
}

.error-post-card:hover{
transform:translateY(-10px);
box-shadow:0 25px 60px rgba(0,0,0,.12);
}

/*=========================================
IMAGE
=========================================*/

.error-post-image{
height:240px;
overflow:hidden;
}

.error-post-image img{
width:100%;
height:100%;
object-fit:cover;
transition:.45s;
}

.error-post-card:hover .error-post-image img{
transform:scale(1.08);
}

/*=========================================
CONTENT
=========================================*/

.error-post-content{
padding:28px;
}

.error-post-meta{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:18px;
font-size:13px;
}

.post-category{
display:inline-block;
background:#f2e6dd;
color:#c98f72;
padding:6px 14px;
border-radius:30px;
font-weight:600;
}

.post-date{
color:#777;
}

/*=========================================
TITLE
=========================================*/

.error-post-content h3{
font-family:'Cormorant Garamond',serif;
font-size:30px;
line-height:1.3;
margin-bottom:15px;
color:#222;
transition:.3s;
}

.error-post-card:hover h3{
color:#c98f72;
}

/*=========================================
DESCRIPTION
=========================================*/

.error-post-content p{
font-size:15px;
line-height:1.9;
color:#666;
margin-bottom:25px;
}

/*=========================================
READ MORE
=========================================*/

.read-more{
display:inline-flex;
align-items:center;
gap:10px;
font-weight:600;
font-size:15px;
color:#222;
transition:.3s;
}

.read-more i{
transition:.3s;
}

.error-post-card:hover .read-more{
color:#c98f72;
}

.error-post-card:hover .read-more i{
transform:translateX(6px);
}

/*=========================================
LINK
=========================================*/

.error-post-card a{
text-decoration:none;
color:inherit;
display:block;
height:100%;
}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:991px){

.error-latest{
padding:80px 0;
}

.error-latest .section-heading h2{
font-size:42px;
}

.error-post-image{
height:220px;
}

.error-post-content h3{
font-size:28px;
}

}

@media(max-width:767px){

.error-latest{
padding:60px 0;
}

.error-latest .section-heading h2{
font-size:32px;
}

.error-post-image{
height:200px;
}

.error-post-content{
padding:22px;
}

.error-post-content h3{
font-size:24px;
}

.error-post-content p{
font-size:14px;
}

.error-post-meta{
flex-direction:column;
align-items:flex-start;
gap:10px;
}

}

/*=========================================
CTA SECTION
=========================================*/

.error-cta{
padding:110px 0;
background:#faf8f5;
}

.error-cta-box{
background:linear-gradient(135deg,#1c1c1c,#343434);
padding:80px 60px;
border-radius:24px;
text-align:center;
position:relative;
overflow:hidden;
box-shadow:0 30px 80px rgba(0,0,0,.18);
}

.error-cta-box::before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:260px;
height:260px;
border-radius:50%;
background:rgba(255,255,255,.05);
}

.error-cta-box::after{
content:"";
position:absolute;
left:-80px;
bottom:-80px;
width:180px;
height:180px;
border-radius:50%;
background:rgba(255,255,255,.04);
}

.error-cta-box>*{
position:relative;
z-index:2;
}

.error-cta-box span{
display:inline-block;
font-size:12px;
font-weight:600;
letter-spacing:3px;
text-transform:uppercase;
color:#c98f72;
margin-bottom:18px;
}

.error-cta-box h2{
font-family:'Cormorant Garamond',serif;
font-size:56px;
color:#fff;
line-height:1.2;
margin-bottom:20px;
}

.error-cta-box p{
max-width:720px;
margin:0 auto 35px;
font-size:17px;
line-height:1.9;
color:#d8d8d8;
}

.error-cta .cta-buttons{
display:flex;
justify-content:center;
gap:18px;
flex-wrap:wrap;
}

/*=========================================
BUTTON FIX
=========================================*/

.error-cta .btn-primary-custom{
background:#c98f72;
}

.error-cta .btn-primary-custom:hover{
background:#b67a5f;
}

.error-cta .btn-outline-custom{
border-color:#fff;
color:#fff;
}

.error-cta .btn-outline-custom:hover{
background:#fff;
color:#222;
}

/*=========================================
HOVER EFFECT
=========================================*/

.error-post-card,
.error-cta-box{
transition:.35s;
}

.error-cta-box:hover{
transform:translateY(-8px);
box-shadow:0 35px 90px rgba(0,0,0,.22);
}

/*=========================================
ENTRY ANIMATION
=========================================*/

.error-post-card{
animation:fadeUp .7s ease both;
}

.error-post-card:nth-child(2){
animation-delay:.1s;
}

.error-post-card:nth-child(3){
animation-delay:.2s;
}

@keyframes fadeUp{

0%{
opacity:0;
transform:translateY(40px);
}

100%{
opacity:1;
transform:translateY(0);
}

}

/*=========================================
GLOBAL SECTION
=========================================*/

.error-hero,
.error-latest,
.error-cta{
position:relative;
overflow:hidden;
}

/*=========================================
SCROLLBAR
=========================================*/

::-webkit-scrollbar{
width:8px;
}

::-webkit-scrollbar-thumb{
background:#c98f72;
border-radius:20px;
}

::-webkit-scrollbar-track{
background:#f5f5f5;
}

/*=========================================
TEXT SELECTION
=========================================*/

::selection{
background:#c98f72;
color:#fff;
}

/*=========================================
TABLET
=========================================*/

@media(max-width:991px){

.error-cta{
padding:80px 0;
}

.error-cta-box{
padding:55px 40px;
}

.error-cta-box h2{
font-size:42px;
}

.error-cta-box p{
font-size:16px;
}

}

/*=========================================
MOBILE
=========================================*/

@media(max-width:767px){

.error-cta{
padding:60px 0;
}

.error-cta-box{
padding:35px 25px;
border-radius:18px;
}

.error-cta-box h2{
font-size:30px;
}

.error-cta-box p{
font-size:15px;
margin-bottom:25px;
}

.error-cta .cta-buttons{
flex-direction:column;
}

.error-cta .cta-buttons a{
width:100%;
justify-content:center;
}

}

/*=========================================
LARGE DESKTOP
=========================================*/

@media(min-width:1400px){

.error-number{
font-size:220px;
}

.error-hero h1{
font-size:45px;
}

.error-cta-box h2{
font-size:64px;
}

}