/* =========================================================
   SINGLE BLOG PAGE
========================================================= */

.single-blog{
    background:#f7f5f1;
    color:#071c35;
}


/* =========================================================
   BLOG HERO
========================================================= */

.blog-hero{
    background:#071c35;
    color:#fff;
    padding:150px 0 100px;
    overflow:hidden;
}


.blog-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:1.5px;
    margin-bottom:55px;
    color:rgba(255,255,255,.45);
}


.blog-breadcrumb a{
    color:rgba(255,255,255,.7);
    text-decoration:none;
    transition:.3s;
}


.blog-breadcrumb a:hover{
    color:#c8a56a;
}


.blog-hero-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:80px;
    align-items:center;
}


.blog-category,
.article-kicker,
.section-kicker,
.sidebar-kicker,
.related-content > span{
    display:block;
    font-size:10px;
    letter-spacing:2px;
    font-weight:800;
    color:#b9955b;
    margin-bottom:22px;
}


.blog-hero h1{
    font-size:clamp(45px,5vw,76px);
    line-height:1.08;
    margin:0 0 30px;
    max-width:750px;
    color: white;
}


.blog-hero h1 em{
    display:block;
    color:#c8a56a;
}


.blog-intro{
    max-width:650px;
    color:rgba(255,255,255,.65);
    font-size:16px;
    line-height:1.9;
    margin:0;
}


.blog-meta{
    display:flex;
    align-items:center;
    gap:25px;
    margin-top:45px;
}


.blog-meta-item{
    display:flex;
    flex-direction:column;
    gap:6px;
}


.blog-meta-label{
    color:#b9955b;
    font-size:9px;
    letter-spacing:1.5px;
    text-transform:uppercase;
}


.blog-meta strong{
    font-size:12px;
    font-weight:600;
}


.blog-meta-line{
    width:1px;
    height:35px;
    background:rgba(255,255,255,.18);
}


.blog-hero-image{
    position:relative;
    height:600px;
    overflow:hidden;
}


.blog-hero-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}


.blog-image-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(0,0,0,0) 45%,
        rgba(0,0,0,.55)
    );
}


.blog-image-badge{
    position:absolute;
    left:30px;
    bottom:30px;
    display:flex;
    align-items:center;
    gap:15px;
    color:#fff;
}


.blog-image-badge span{
    width:52px;
    height:52px;
    border:1px solid rgba(255,255,255,.6);
    display:grid;
    place-items:center;
    font-family:var(--font-display);
    font-size:20px;
}


.blog-image-badge small{
    font-size:9px;
    letter-spacing:1.5px;
    line-height:1.6;
}


/* =========================================================
   BLOG CONTENT
========================================================= */

.blog-content-section{
    padding:110px 0;
}


.blog-layout{
    display:grid;
    grid-template-columns:minmax(0,760px) 300px;
    justify-content:space-between;
    gap:100px;
}


.blog-article{
    min-width:0;
}


.article-intro{
    display:grid;
    grid-template-columns:55px 1fr;
    gap:30px;
}


.article-number{
    color:#b9955b;
    font-size:12px;
    letter-spacing:2px;
    font-weight:700;
    padding-top:8px;
}


.article-intro p,
.article-section p,
.article-feature p{
    font-size:16px;
    line-height:2;
    color:#434343;
    margin:0 0 24px;
}


.article-intro p:first-child{
    font-size:21px;
    line-height:1.8;
    color:#071c35;
}


.article-divider{
    height:1px;
    background:#ded9d1;
    margin:70px 0;
}


.article-section{
    margin-bottom:70px;
}


.article-section h2{
    font-size:clamp(36px,4vw,56px);
    line-height:1.12;
    margin:0 0 30px;
    color:#071c35;
}


.article-section h2 em{
    display:block;
    color:#b9955b;
}


.article-quote{
    position:relative;
    padding:55px 65px;
    margin:80px 0;
    background:#eee9e1;
}


.quote-mark{
    display:block;
    font-family:var(--font-display);
    color:#b9955b;
    font-size:80px;
    height:50px;
    line-height:1;
}


.article-quote p{
    margin:20px 0 0;
    font-family:var(--font-display);
    font-size:30px;
    line-height:1.45;
    color:#071c35;
}


.article-feature{
    display:grid;
    grid-template-columns:80px 1fr;
    gap:30px;
    padding:50px 0;
    border-top:1px solid #ded9d1;
}


.article-feature-number{
    font-family:var(--font-display);
    color:#b9955b;
    font-size:34px;
}


.article-feature > div:last-child > span{
    display:block;
    font-size:9px;
    letter-spacing:2px;
    font-weight:800;
    color:#b9955b;
    margin-bottom:15px;
}


.article-feature h3{
    font-size:34px;
    line-height:1.25;
    margin:0 0 22px;
}


.article-feature h3 em{
    color:#b9955b;
}


.article-conclusion{
    border-top:1px solid #ded9d1;
    padding-top:70px;
    margin-top:20px;
}


/* =========================================================
   ARTICLE CTA
========================================================= */

.article-cta{
    margin-top:80px;
    background:#071c35;
    padding:55px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}


.article-cta > div > span{
    display:block;
    color:#b9955b;
    font-size:9px;
    letter-spacing:2px;
    font-weight:800;
    margin-bottom:15px;
}


.article-cta h3{
    color:#fff;
    font-size:35px;
    line-height:1.25;
    margin:0;
}


.article-cta h3 em{
    color:#c8a56a;
}


.article-cta-btn,
.sidebar-contact-btn{
    border:0;
    background:#b9955b;
    color:#fff;
    padding:17px 23px;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:20px;
    white-space:nowrap;
    font-weight:700;
    font-size:11px;
    letter-spacing:.5px;
}


.article-cta-btn b,
.sidebar-contact-btn b{
    font-size:17px;
}


/* =========================================================
   SIDEBAR
========================================================= */

.blog-sidebar{
    align-self:start;
    position:sticky;
    top:120px;
}


.blog-sidebar-box{
    border:1px solid #ded9d1;
    padding:35px;
    margin-bottom:25px;
}


.blog-sidebar-box h3,
.sidebar-contact h3{
    font-size:32px;
    line-height:1.2;
    margin:0 0 28px;
}


.blog-sidebar-box h3 em,
.sidebar-contact h3 em{
    display:block;
    color:#b9955b;
}


.article-nav{
    display:flex;
    flex-direction:column;
}


.article-nav a{
    padding:16px 0;
    border-top:1px solid #ded9d1;
    text-decoration:none;
    color:#263848;
    font-size:12px;
    line-height:1.6;
    display:flex;
    gap:13px;
    transition:.3s;
}


.article-nav a span{
    color:#b9955b;
    font-size:9px;
    font-weight:800;
}


.article-nav a:hover{
    color:#b9955b;
    padding-left:5px;
}


.sidebar-contact{
    background:#b9955b;
    color:#fff;
    padding:38px 35px;
}


.sidebar-contact > span{
    display:block;
    font-size:20px;
    margin-bottom:25px;
}


.sidebar-contact small{
    display:block;
    font-size:9px;
    letter-spacing:2px;
    margin-bottom:18px;
}


.sidebar-contact h3{
    color:#fff;
}


.sidebar-contact h3 em{
    color:#071c35;
}


.sidebar-contact p{
    font-size:13px;
    line-height:1.8;
    margin-bottom:28px;
    color:rgba(255,255,255,.85);
}


.sidebar-contact-btn{
    width:100%;
    justify-content:space-between;
    background:#071c35;
}


/* =========================================================
   RELATED ARTICLES
========================================================= */

.related-articles{
    padding:100px 0;
    background:#eee9e1;
}


.related-heading{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-bottom:55px;
}


.related-heading h2{
    margin:0;
    font-size:clamp(42px,5vw,64px);
}


.related-heading h2 em{
    color:#b9955b;
}


.view-all-blog{
    color:#071c35;
    text-decoration:none;
    font-size:11px;
    font-weight:800;
    display:flex;
    gap:15px;
    align-items:center;
}


.view-all-blog span{
    color:#b9955b;
    font-size:20px;
}


.related-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}


.related-card{
    background:#f7f5f1;
}


.related-card a{
    display:block;
    color:inherit;
    text-decoration:none;
}


.related-image{
    height:300px;
    overflow:hidden;
}


.related-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease;
}


.related-card:hover .related-image img{
    transform:scale(1.05);
}


.related-content{
    padding:35px;
}


.related-content h3{
    font-size:30px;
    line-height:1.3;
    margin:0;
}


.related-content h3 em{
    color:#b9955b;
}


.related-footer{
    border-top:1px solid #ded9d1;
    margin-top:30px;
    padding-top:20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}


.related-footer small{
    font-size:9px;
    letter-spacing:1.5px;
    font-weight:800;
}


.related-footer b{
    font-size:20px;
    color:#b9955b;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1000px){

    .blog-hero-grid,
    .blog-layout{
        grid-template-columns:1fr;
    }


    .blog-hero-grid{
        gap:50px;
    }


    .blog-sidebar{
        position:static;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:25px;
    }


    .blog-sidebar-box{
        margin:0;
    }

}


@media(max-width:700px){

    .blog-hero{
        padding:115px 0 65px;
    }


    .blog-breadcrumb{
        margin-bottom:35px;
    }


    .blog-meta{
        flex-wrap:wrap;
        gap:15px;
    }


    .blog-meta-line{
        display:none;
    }


    .blog-hero-image{
        height:420px;
    }


    .blog-content-section,
    .related-articles{
        padding:70px 0;
    }


    .article-intro{
        grid-template-columns:1fr;
        gap:15px;
    }


    .article-number{
        padding:0;
    }


    .article-intro p:first-child{
        font-size:18px;
    }


    .article-quote{
        padding:35px 25px;
        margin:55px 0;
    }


    .article-quote p{
        font-size:24px;
    }


    .article-feature{
        grid-template-columns:1fr;
        gap:15px;
    }


    .article-cta{
        padding:35px 25px;
        flex-direction:column;
        align-items:flex-start;
    }


    .article-cta-btn{
        width:100%;
        justify-content:space-between;
    }


    .blog-sidebar{
        grid-template-columns:1fr;
    }


    .related-heading{
        align-items:flex-start;
        flex-direction:column;
        gap:25px;
    }


    .related-grid{
        grid-template-columns:1fr;
    }


    .related-image{
        height:240px;
    }

}
