/* =============================
   Default Theme
   -----------------------------
   fonts : Cormorant Garamond & Poppins
   -----------------------------
   Colors :
      White Smoke        #f4f4f4
      Black              #000
      White              #fff
      Navy Blue          #1b1b4b   
      Vintage Coral      #de7f67
      
================================ */


/* =============================
            HTML, Body
   ============================= */
html,
body {
    height: 100%;


}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Cormorant Garamond", sans-serif;
}

p {
    font-family: "Poppins", sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 24px;
}

section {
    overflow: hidden;
}

/* =============================
          Arrow Down
   ============================= */
#arrow-down {
    position: absolute;
    left: 50%;
    bottom: 20px;
     color: #fff;
    font-size: 32px;
    width: 32px;
    height: 32px;
    text-align: center;
    margin-left: -16px;
    z-index: 1;
}

#arrow-down:hover,
#arrow-down:focus {
    color: #272B33;
}


/* back to top button */
.btn-back-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 22px;
    color: #fff;
   border-radius: 4px;
    background-color:#de7f67 ;
    transition: all 400ms linear;
    display: none;


}
.btn-back-to-top:hover,
.btn-back-to-top:focus{
    background-color:#fff ;
    color: #000;
    font-size: 24px;

}

/* =============================
         Content boxes
   ============================= */
.content-box-lg {
    padding: 100px 0;

}

.content-box-md {
    padding: 80px 0;
}
.content-box-sm{
    padding: 60px 20px;

}
.content-box-xs{
    padding: 40px 20px;

}


a{
    text-decoration:none;
}

img{
    width:100%;
    display:block;
}

.container{

   

    display:grid;
    grid-template-columns:3fr 1fr;

    gap:20px;


}

/* =========================================
                Blog Page 
============================================ */
/*==========================
        BANNER
===========================*/

.blog-banner{

    position:relative;

    width:100%;
    height:420px;

    background-image:url("../img/blog/blog.webp");
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;

    overflow:hidden;
}

/* Overlay */

.blog-banner::before{

    content:"";

    position:absolute;
    inset:0;

    background:linear-gradient(
        90deg,
        rgba(20,24,66,.72) 0%,
        rgba(20,24,66,.45) 35%,
        rgba(20,24,66,.10) 100%
    );
}

/* Content */

.banner-content{

    position:relative;
    z-index:2;

    max-width:1200px;
    height:100%;

    margin:auto;

    display:flex;
    align-items:center;

    padding:0 70px;
}

.banner-content h1{

    color:#fff;

    font-family:'Cormorant Garamond',serif;

    font-size:72px;

    font-weight:500;

    letter-spacing:2px;

    text-transform:uppercase;

    animation:fadeUp .8s ease;
}

#blog-page {
    padding-top: 60px;
    padding-bottom: 60px;
}

/* LEFT */

.blog-listing{
    padding-top: 25px;
    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;
}

/* CARD */

.blog-card{

    background:#fff;

    border-radius:15px;

    overflow:hidden;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;
}

.blog-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 45px rgba(0,0,0,.15);
}

.blog-image{

    height:250px;

    overflow:hidden;
}

.blog-image img{

    height:100%;

    object-fit:cover;

    transition:.5s;
}

.blog-card:hover img{

    transform:scale(1.08);
}

.blog-content{

    padding:28px;
}

.blog-date{

    color:#de7f67;

    font-size:14px;

    margin-bottom:15px;
}



.blog-content h2,
.blog-content h2 a {
    font-size:24px;
    margin-bottom:15px;
    line-height:1.4;
    color: #1b1b4b;
    text-decoration: none;
    opacity: 1;
}

.blog-content h2 a:hover {
    color: #de7f67;
}

.blog-content p{

   

    line-height:1.8;

    margin-bottom:25px;
}

/* BUTTON */

.blog-content a{
    color: #de7f67;
    text-decoration: none;
    font-size: 14px;
    opacity: .9;
}
.blog-content a:hover {
    color: #1b1b4b;
    
}

/* SIDEBAR */

.sidebar-box{

    background:#fff;

    padding:25px;

    border-radius:15px;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    position:sticky;

    top:30px;
}

.sidebar-box h3{

    margin-bottom:25px;

    font-size:24px;
    color: #1b1b4b;
}

.latest-blog{

    display:flex;

    gap:15px;

    margin-bottom:22px;

    padding-bottom:22px;

    border-bottom:1px solid #eee;
}

.latest-blog:last-child{

    margin-bottom:0;

    border:none;

    padding-bottom:0;
}

.latest-blog img{

    width:90px;

    height:80px;

    border-radius:10px;

    object-fit:cover;
}

.latest-blog span{

    font-size:13px;

    color:#de7f67;
}

.latest-blog a{

    display:block;

    margin-top:8px;

    color:#1b1b4b;

    font-weight:600;

    line-height:1.5;

    transition:.3s;
}

.latest-blog a:hover{

    color:#de7f67;
}

/* RESPONSIVE */

@media(max-width:1100px){

.container {

grid-template-columns:1fr;
}

.sidebar{

order:-1;
}

}

@media(max-width:768px){

.blog-listing{

grid-template-columns:1fr;
}

.blog-content h2{

font-size:21px;
}

}

/* ============ BLOG DETAIL SECTION ========== */ 
.blog-detail-section { 
    padding: 80px 20px 100px; 
    } 
.blog-container { 
    max-width: 1200px; 
    margin: 0 auto; 
    display: grid; 
    grid-template-columns: minmax(0, 1fr) 350px; 
    gap: 70px; 
    align-items: start; 
}

.blog-title { 
       
      font-weight: 600; 
      font-size: 60px;
       
      margin-bottom: 30px; 
      color: #1b1b4b; 
  }

  /* Blog Meta */

.blog-meta { 
    display: flex; 
    align-items: center; 
    flex-wrap: wrap; 
    gap: 25px; 
    padding: 20px 0; 
    margin-bottom: 35px; 
   
    border-bottom: 1px solid #e9e9e9; 
} 

.author-info { 
    display: flex; 
    align-items: center; 
    gap: 12px; 
    } 
 
.author-info strong, .meta-item strong { 
    display: block; 
    font-size: 14px; 
    font-weight: 600; 
    color: #1b1b4b;
    } 
.meta-label { 
    display: block; 
    color: #de7f67; 
    font-size: 11px; 
    text-transform: uppercase; 
    letter-spacing: 0.8px; 
    margin-bottom: 2px; 
    } 
.meta-divider { 
    width: 1px; 
    height: 35px; 
    background: #ddd; 
}


.blog-featured-image { 
    width: 100%; 
    height: 400px; 
    overflow: hidden; 
    border-radius: 4px; 
    margin-bottom: 45px; 
} 
.blog-featured-image img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    transition: transform 0.6s ease; 
} 
.blog-featured-image:hover img { 
    transform: scale(1.03); 
}


.blog-content {
 max-width: 850px; 
 } 
.blog-content p { 
    font-size: 17px; 
    line-height: 1.9; 
    
    margin-bottom: 25px; 
} 
.blog-content .intro { 
    font-size: 20px; 
    line-height: 1.8; 
     
    font-weight: 500; 
    margin-bottom: 30px; 
    } 
.blog-content h2 { 
     font-size: 32px; 
     color: #1b1b4b; 
     margin: 45px 0 20px; 
     } 
    .blog-content ul { 
        padding-left: 25px; 
        margin: 20px 0 30px; 
        } 
    .blog-content li { 
        font-size: 17px; 
        color: #1b1b4b; 
        margin-bottom: 
        10px; } 

/* BLOCKQUOTE  */ 


/* Button */


.other-blogs a{
    color: #de7f67;
  
    font-size: 17px;
    font-weight: 500; 
    
} 
.other-blogs a:hover {
    color: #1b1b4b;
    
}
/* ==========================================
   LARGE TABLET / SMALL LAPTOP
========================================== */

@media (max-width: 1100px) {

    .blog-container {
        grid-template-columns: minmax(0, 1fr) 280px;
        gap: 40px;
    }

    .blog-title {
        font-size: 48px;
    }

    .blog-featured-image {
        height: 360px;
    }
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

    .blog-detail-section {
        padding: 60px 25px 80px;
    }

    .blog-container {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .blog-title {
        font-size: 44px;
        line-height: 1.2;
        margin-bottom: 25px;
    }

    .blog-content {
        max-width: 100%;
    }

    .blog-featured-image {
        height: 380px;
        margin-bottom: 35px;
    }

    .blog-content p {
        font-size: 16px;
        line-height: 1.8;
    }

    .blog-content .intro {
        font-size: 19px;
        line-height: 1.7;
    }

    .blog-content h2 {
        font-size: 29px;
        margin-top: 40px;
    }

    .blog-content li {
        font-size: 16px;
    }
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 767px) {

    .blog-detail-section {
        padding: 45px 18px 60px;
    }

    .blog-container {
        display: block;
        width: 100%;
    }

    .blog-title {
        font-size: 34px;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    /* Meta */

    .blog-meta {
        gap: 15px;
        padding: 15px 0;
        margin-bottom: 25px;
    }

    .author-info {
        gap: 8px;
    }

    .author-info strong,
    .meta-item strong {
        font-size: 13px;
    }

    .meta-label {
        font-size: 10px;
    }

    .meta-divider {
        height: 28px;
    }

    /* Featured Image */

    .blog-featured-image {
        height: auto;
        aspect-ratio: 16 / 10;
        margin-bottom: 30px;
        border-radius: 4px;
    }

    .blog-featured-image img {
        object-fit: cover;
    }

    /* Content */

    .blog-content {
        width: 100%;
        max-width: 100%;
    }

    .blog-content p {
        font-size: 15px;
        line-height: 1.75;
        margin-bottom: 20px;
    }

    .blog-content .intro {
        font-size: 17px;
        line-height: 1.7;
        margin-bottom: 25px;
    }

    .blog-content h2 {
        font-size: 25px;
        line-height: 1.3;
        margin: 35px 0 15px;
    }

    .blog-content ul {
        padding-left: 20px;
        margin: 15px 0 25px;
    }

    .blog-content li {
        font-size: 15px;
        line-height: 1.6;
        margin-bottom: 8px;
    }

    .other-blogs a {
        font-size: 15px;
    }
}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 480px) {

    .blog-detail-section {
        padding: 35px 15px 50px;
    }

    .blog-title {
        font-size: 28px;
        line-height: 1.25;
    }

    .blog-meta {
        gap: 12px;
        align-items: flex-start;
    }

    .meta-divider {
        display: none;
    }

    .author-info,
    .meta-item {
        width: 100%;
    }

    .blog-featured-image {
        aspect-ratio: 4 / 3;
        margin-bottom: 25px;
    }

    .blog-content p {
        font-size: 14px;
        line-height: 1.7;
    }

    .blog-content .intro {
        font-size: 16px;
        line-height: 1.65;
    }

    .blog-content h2 {
        font-size: 22px;
        margin: 30px 0 15px;
    }

    .blog-content li {
        font-size: 14px;
    }
}


/* ==========================================
   VERY SMALL PHONES
========================================== */

@media (max-width: 375px) {

    .blog-detail-section {
        padding: 30px 12px 45px;
    }

    .blog-title {
        font-size: 25px;
    }

    .blog-content p {
        font-size: 14px;
    }

    .blog-content .intro {
        font-size: 15px;
    }

    .blog-content h2 {
        font-size: 20px;
    }
}