.blog-header{
    position: relative;
}

.blog-header .blog-navbar{
    background: rgba(255,255,255,0.92);
    border-bottom: 1px solid rgba(37, 53, 103, 0.08);
    box-shadow: 0 14px 32px rgba(25, 35, 79, 0.08);
}

.blog-header .blog-navbar .nav-link{
    color: #31426f !important;
    font-weight: 600;
}

.blog-header .blog-navbar .nav-link:hover{
    color: #ff6e4a !important;
}

.blog-header .blog-navbar .btn-white{
    background: linear-gradient(135deg, #ff6e4a 0%, #ff824d 100%);
    border: 0;
    box-shadow: 0 12px 28px rgba(255, 110, 74, 0.22);
    color: #fff !important;
}

.blog-header .blog-navbar .btn-white .btn-inner--icon,
.blog-header .blog-navbar .btn-white .btn-inner--text{
    color: #fff !important;
}

.blog-index-page{
    background:
        radial-gradient(circle at top left, rgba(255, 110, 74, 0.12), transparent 32%),
        radial-gradient(circle at top right, rgba(106, 59, 255, 0.14), transparent 26%),
        linear-gradient(180deg, #fff9f5 0%, #ffffff 28%, #f7f5ff 100%);
}

.blog-hero{
    padding: 70px 0 32px;
}

.blog-hero__panel{
    background: linear-gradient(135deg, rgba(255,255,255,0.96) 0%, rgba(255,247,241,0.98) 52%, rgba(247,242,255,0.98) 100%);
    border: 1px solid rgba(39, 55, 103, 0.08);
    border-radius: 32px;
    box-shadow: 0 24px 80px rgba(33, 37, 84, 0.12);
    overflow: hidden;
    padding: 48px 56px;
    position: relative;
}

.blog-hero__panel:before{
    background: linear-gradient(135deg, rgba(255, 110, 74, 0.14), rgba(106, 59, 255, 0.12));
    border-radius: 999px;
    content: "";
    height: 240px;
    position: absolute;
    right: -80px;
    top: -120px;
    width: 240px;
}

.blog-hero__eyebrow{
    align-items: center;
    color: #ff6e4a;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.14em;
    margin-bottom: 18px;
    text-transform: uppercase;
}

.blog-hero__eyebrow i{
    margin-right: 8px;
}

.blog-hero__title{
    color: #253567;
    font-size: 52px;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1.04;
    margin-bottom: 18px;
    max-width: 760px;
}

.blog-hero__desc{
    color: #6173a6;
    font-size: 19px;
    line-height: 1.7;
    margin-bottom: 28px;
    max-width: 760px;
}

.blog-hero__chips{
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 30px;
}

.blog-hero__chip{
    background: rgba(255,255,255,0.78);
    border: 1px solid rgba(37, 53, 103, 0.08);
    border-radius: 999px;
    color: #3a4b7a;
    display: inline-flex;
    font-size: 14px;
    font-weight: 600;
    padding: 11px 16px;
}

.blog-hero__actions{
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.blog-hero__actions .btn{
    border-radius: 999px;
    font-weight: 700;
    padding: 14px 22px;
}

.blog-hero__actions .btn-primary{
    background: linear-gradient(135deg, #ff6e4a 0%, #ff824d 100%);
    border: 0;
    box-shadow: 0 16px 34px rgba(255, 110, 74, 0.26);
}

.blog-hero__actions .btn-outline{
    background: #fff;
    border: 1px solid rgba(37, 53, 103, 0.12);
    color: #253567;
}

.blog-listing{
    padding: 14px 0 84px;
}

.blog-listing__header{
    align-items: end;
    display: flex;
    justify-content: space-between;
    margin-bottom: 28px;
}

.blog-listing__title{
    color: #253567;
    font-size: 32px;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 8px;
}

.blog-listing__intro{
    color: #6d7fae;
    font-size: 16px;
    margin: 0;
    max-width: 640px;
}

.blog-card{
    background: #fff;
    border: 1px solid rgba(37, 53, 103, 0.08);
    border-radius: 28px;
    box-shadow: 0 18px 50px rgba(24, 32, 72, 0.08);
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.blog-card:hover{
    box-shadow: 0 28px 65px rgba(24, 32, 72, 0.14);
    transform: translateY(-4px);
}

.blog-card__media{
    aspect-ratio: 16 / 10;
    background: linear-gradient(135deg, #ffe4d8 0%, #f1edff 100%);
    overflow: hidden;
}

.blog-card__media img{
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.blog-card__body{
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 26px;
}

.blog-card__meta{
    align-items: center;
    color: #7a8ab4;
    display: flex;
    font-size: 14px;
    font-weight: 600;
    gap: 10px;
    margin-bottom: 14px;
}

.blog-card__meta i{
    color: #ff6e4a;
}

.blog-card__title{
    font-size: 25px;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.22;
    margin-bottom: 14px;
}

.blog-card__title a{
    color: #243668;
}

.blog-card__title a:hover{
    color: #ff6e4a;
}

.blog-card__excerpt{
    color: #6678a7;
    flex: 1;
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 24px;
}

.blog-card__cta{
    align-items: center;
    color: #ff6e4a;
    display: inline-flex;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.blog-card__cta i{
    margin-left: 10px;
    transition: transform 0.2s ease;
}

.blog-card:hover .blog-card__cta i{
    transform: translateX(4px);
}

.blog-pagination{
    margin-top: 36px;
}

.blog-pagination .pagination{
    gap: 10px;
}

.blog-pagination li{
    list-style: none;
}

.blog-pagination a,
.blog-pagination span{
    align-items: center;
    background: #fff;
    border: 1px solid rgba(37, 53, 103, 0.08);
    border-radius: 14px;
    color: #253567;
    display: inline-flex;
    font-size: 15px;
    font-weight: 700;
    height: 46px;
    justify-content: center;
    min-width: 46px;
    padding: 0 16px;
}

.blog-pagination .active span,
.blog-pagination a:hover{
    background: linear-gradient(135deg, #ff6e4a 0%, #ff824d 100%);
    border-color: transparent;
    color: #fff;
}

.blog-empty{
    background: rgba(255,255,255,0.88);
    border: 1px dashed rgba(37, 53, 103, 0.18);
    border-radius: 28px;
    color: #50628f;
    padding: 48px 36px;
    text-align: center;
}

.blog-cta{
    margin-top: 52px;
}

.blog-cta__panel{
    align-items: center;
    background: linear-gradient(135deg, #253567 0%, #6a3bff 100%);
    border-radius: 28px;
    box-shadow: 0 24px 60px rgba(38, 53, 103, 0.2);
    color: #fff;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 34px 36px;
}

.blog-cta__panel,
.blog-cta__panel h3{
    color: #fff;
}

.blog-cta__title{
    font-size: 30px;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 8px;
}

.blog-cta__desc{
    color: rgba(255,255,255,0.78);
    margin: 0;
}

.blog-cta__actions{
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.blog-cta__actions .btn{
    border-radius: 999px;
    font-weight: 700;
    padding: 13px 20px;
}

.blog-cta__actions .btn-light{
    color: #243668;
}

.blog-cta__actions .btn-outline-light{
    border-color: rgba(255,255,255,0.32);
}

.blog-article-page{
    background:
        radial-gradient(circle at top left, rgba(255, 110, 74, 0.12), transparent 28%),
        radial-gradient(circle at top right, rgba(106, 59, 255, 0.14), transparent 24%),
        linear-gradient(180deg, #fff9f5 0%, #ffffff 34%, #f7f5ff 100%);
    padding: 56px 0 84px;
}

.blog-article-shell{
    margin: 0 auto;
    max-width: 960px;
}

.blog-article-back{
    color: #6c7da8;
    display: inline-flex;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 18px;
}

.blog-article-back i{
    margin-right: 8px;
}

.blog-article-back:hover{
    color: #ff6e4a;
}

.blog-article-hero{
    background: linear-gradient(135deg, rgba(255,255,255,0.96) 0%, rgba(255,247,241,0.98) 52%, rgba(247,242,255,0.98) 100%);
    border: 1px solid rgba(37, 53, 103, 0.08);
    border-radius: 32px;
    box-shadow: 0 24px 80px rgba(31, 40, 86, 0.12);
    overflow: hidden;
    padding: 34px;
}

.blog-article-meta{
    align-items: center;
    color: #7a8ab4;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 16px;
}

.blog-article-meta .blog-pill{
    align-items: center;
    background: rgba(255,255,255,0.86);
    border: 1px solid rgba(37, 53, 103, 0.08);
    border-radius: 999px;
    color: #ff6e4a;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    padding: 9px 14px;
    text-transform: uppercase;
}

.blog-article-meta .blog-date{
    font-size: 14px;
    font-weight: 700;
}

.blog-article-title{
    color: #253567;
    font-size: 52px;
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1.05;
    margin-bottom: 18px;
}

.blog-article-summary{
    color: #6072a3;
    font-size: 19px;
    line-height: 1.75;
    margin-bottom: 28px;
}

.blog-article-cover{
    aspect-ratio: 16 / 9;
    background: linear-gradient(135deg, #ffe4d8 0%, #f1edff 100%);
    border-radius: 24px;
    overflow: hidden;
}

.blog-article-cover img{
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.blog-article-content{
    background: #fff;
    border: 1px solid rgba(37, 53, 103, 0.08);
    border-radius: 28px;
    box-shadow: 0 18px 55px rgba(24, 32, 72, 0.08);
    color: #36466f;
    font-size: 18px;
    line-height: 1.85;
    margin-top: 28px;
    overflow: hidden;
    padding: 42px 46px;
}

.blog-article-content p,
.blog-article-content ul,
.blog-article-content ol,
.blog-article-content blockquote{
    margin-bottom: 1.35em;
}

.blog-article-content h1,
.blog-article-content h2,
.blog-article-content h3,
.blog-article-content h4{
    color: #253567;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.2;
    margin-bottom: 16px;
    margin-top: 28px;
}

.blog-article-content img{
    border-radius: 18px;
    display: block;
    height: auto;
    margin: 28px auto;
    max-width: 100%;
}

.blog-article-content a{
    color: #ff6e4a;
    font-weight: 600;
}

.blog-article-content span[style]{
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

.blog-article-content p[style],
.blog-article-content div[style]{
    color: inherit !important;
    font-family: inherit !important;
}

.blog-article-cta{
    align-items: center;
    background: linear-gradient(135deg, #253567 0%, #6a3bff 100%);
    border-radius: 28px;
    box-shadow: 0 22px 60px rgba(38, 53, 103, 0.2);
    color: #fff;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    margin-top: 52px;
    padding: 32px 34px;
}

.blog-article-cta h3{
    color: #fff;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 8px;
}

.blog-article-cta p{
    color: rgba(255,255,255,0.78);
    margin: 0;
}

.blog-article-cta__actions{
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.blog-article-cta__actions .btn{
    border-radius: 999px;
    font-weight: 700;
    padding: 13px 20px;
}

.blog-article-cta__actions .btn-light{
    color: #253567;
}

.blog-article-cta__actions .btn-outline-light{
    border-color: rgba(255,255,255,0.34);
}

.blog-article-footer-soft{
    background: #f7f5ff;
}

.blog-article-footer-main.footer-rotate:before{
    background: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 2000 1000' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23F7F5FF' d='M2000,0V923.45l-195.85-538.1a76.07875,76.07875,0,0,0-58.25-48.89L536.65,123.24a76.12151,76.12151,0,0,0-71.44,26L0,703.65V0Z'/%3E%3C/svg%3E") no-repeat scroll center center/100% 100% border-box;
}

@media (max-width: 991px){
    .blog-header .blog-navbar{
        background: rgba(255,255,255,0.97);
    }

    .blog-hero{
        padding-top: 42px;
    }

    .blog-hero__panel{
        padding: 34px 26px;
    }

    .blog-hero__title,
    .blog-article-title{
        font-size: 38px;
    }

    .blog-listing__header{
        display: block;
    }

    .blog-cta__panel,
    .blog-article-cta{
        align-items: flex-start;
        flex-direction: column;
    }

    .blog-article-content{
        padding: 30px 24px;
    }
}

@media (max-width: 767px){
    .blog-hero__title,
    .blog-article-title{
        font-size: 32px;
    }

    .blog-hero__desc,
    .blog-article-summary{
        font-size: 17px;
    }

    .blog-card__body{
        padding: 22px;
    }

    .blog-card__title{
        font-size: 22px;
    }

    .blog-cta__title{
        font-size: 26px;
    }

    .blog-article-page{
        padding: 36px 0 72px;
    }

    .blog-article-hero{
        padding: 24px;
    }

    .blog-article-content{
        font-size: 17px;
        padding: 26px 18px;
    }
}
