/* Blog uses the shared About inner-page hero; only education-hub differences live here. */
.blog-hero__content { padding-bottom: 94px; }
.blog-hero__description { max-width: 680px; }
.blog-hero__pillars { max-width: 680px; margin-top: 46px; }
.blog-hero__pillar { position: relative; }
.blog-hero__pillar + .blog-hero__pillar { border-left: 1px solid #dfd4df; }
.blog-hero__pillar .fc-icon-circle { width: 76px; height: 76px; flex-basis: 76px; color: var(--fc-accent); font-size: 31px; }
.blog-hero__pillar p { margin: 15px 0 0; color: #77839e; font-size: 13px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; }
.blog-hero__signature { position: absolute; bottom: 48px; left: 18px; color: #77839e; font-weight: 650; }
.blog-hero__signature .fc-brand-signature__line { width: 78px; height: 1px; background: #77839e; }
.blog-hero__image { object-position: 52% center !important; }
.blog-hero__placeholder { display: grid; place-items: center; color: rgba(255,255,255,.78); background: radial-gradient(circle at 68% 32%,rgba(94,71,64,.7) 0 10%,transparent 10.5%),radial-gradient(ellipse at 67% 64%,#ead5cf 0 27%,transparent 27.5%),linear-gradient(118deg,#eff1ed 0%,#d9d1ca 48%,#b9918c 100%); font-size: 76px; }
.blog-hero__editorial { top: 112px; left: -1px; line-height: 1.8; }
.blog-hero__message { top: 46px; right: -26px; bottom: auto; display: grid; width: 200px; height: 200px; padding: 0; place-items: center; border-radius: 50%; background: rgba(252,233,247,.9); text-align: center; }
.blog-hero__message p { margin: 0; color: #6e6b78; font-size: 17px; font-weight: 600; line-height: 1.32; }
.blog-hero__message > span { position: absolute; bottom: 30px; left: 50%; width: 42px; transform: translateX(-50%); }

@media (max-width: 1399.98px) {
    .blog-hero__signature { left: 0; }
    .blog-hero__editorial { left: -18px; }
    .blog-hero__message { right: -10px; width: 174px; height: 174px; }
    .blog-hero__message p { font-size: 15px; }
    .blog-hero__message > span { bottom: 25px; }
}

@media (max-width: 1199.98px) {
    .blog-hero__pillars { margin-top: 38px; }
    .blog-hero__pillar .fc-icon-circle { width: 66px; height: 66px; flex-basis: 66px; font-size: 27px; }
    .blog-hero__pillar p { font-size: 10px; letter-spacing: .18em; }
    .blog-hero__editorial { top: 92px; }
    .blog-hero__message { top: 28px; width: 150px; height: 150px; }
    .blog-hero__message p { font-size: 13px; }
    .blog-hero__message > span { bottom: 21px; width: 34px; }
}

@media (max-width: 991.98px) {
    .blog-hero__content { padding-bottom: 54px; }
    .blog-hero__pillars { max-width: 650px; }
    .blog-hero__signature { position: static; margin-top: 46px; }
    .blog-hero__editorial { top: 58px; right: 28px; left: auto; }
    .blog-hero__message { top: auto; right: 22px; bottom: 22px; display: block; width: 235px; height: auto; padding: 25px 30px; border-radius: 50px; }
    .blog-hero__message p { font-size: 16px; }
    .blog-hero__message > span { position: static; margin: 14px auto 0; transform: none; }
}

@media (max-width: 575.98px) {
    .blog-hero__pillars { margin-top: 34px; }
    .blog-hero__pillar { padding-inline: 4px; }
    .blog-hero__pillar + .blog-hero__pillar { border-left: 0; }
    .blog-hero__pillar .fc-icon-circle { width: 58px; height: 58px; flex-basis: 58px; font-size: 23px; }
    .blog-hero__pillar p { font-size: 8px; letter-spacing: .12em; }
    .blog-hero__signature { gap: 10px; margin-top: 40px; font-size: 7px; }
    .blog-hero__signature b { margin-inline: 2px; }
    .blog-hero__signature .fc-brand-signature__line { width: 34px; }
    .blog-hero__message { right: 10px; bottom: 18px; width: calc(100% - 35px); padding: 22px 26px; border-radius: 32px; }
}

/* Section 02: latest articles and insights */
.blog-insights { position: relative; overflow: hidden; padding: 54px 0 38px; background: radial-gradient(ellipse at 104% -5%,rgba(249,231,245,.7) 0 15%,transparent 15.4%),#fff; }
.blog-insights::after { position: absolute; z-index: 0; right: -8%; bottom: -170px; left: -8%; height: 270px; border-radius: 50% 46% 0 0; background: linear-gradient(100deg,rgba(252,233,246,.65),rgba(247,230,246,.48)); content: ''; transform: rotate(-2deg); }
.blog-insights__container { position: relative; z-index: 1; max-width: 1770px; padding-inline: 34px; }
.blog-insights__header { margin-bottom: 24px; }
.blog-insights__eyebrow { gap: 18px; margin: 0 0 12px; font-size: 13px; }
.blog-insights__eyebrow span { width: 72px; height: 2px; background: #d34b83; }
.blog-insights__header h2 { margin: 0 0 12px; color: #112957; font-size: clamp(45px,3.15vw,58px); font-weight: 750; line-height: 1.06; letter-spacing: -.045em; }
.blog-insights__header h2 em { color: var(--fc-accent); font-style: normal; }
.blog-insights__header > p:last-child { margin: 0; color: #71809d; font-size: 20px; line-height: 1.42; }
.blog-insights__filters { margin-bottom: 34px; }
.blog-insights__filter { min-height: 44px; padding: 10px 31px; border: 0; border-radius: 999px; color: #71809d; background: #faf5fa; font-size: 15px; font-weight: 600; }
.blog-insights__filter:hover,.blog-insights__filter:focus-visible { color: var(--fc-primary); background: #f7eaf4; }
.blog-insights__filter.is-active { color: #fff; background: var(--fc-accent); }
.blog-insights__grid { min-height: 380px; }
.blog-insights__card { overflow: hidden; border: 1px solid #eee9ee; border-radius: 17px; background: #fff; box-shadow: 0 10px 28px rgba(40,17,49,.05); }
.blog-insights__image { width: 100%; aspect-ratio: 1.72; object-fit: cover; }
.blog-insights__card-body { padding: 20px 24px 18px; }
.blog-insights__meta { margin-bottom: 14px; color: #77839e; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.blog-insights__category { color: #a22078; letter-spacing: .2em; }
.blog-insights__meta-divider { width: 1px; height: 13px; background: #d8c4d5; }
.blog-insights__card h3 { display: -webkit-box; overflow: hidden; margin: 0 0 11px; color: #102754; font-size: 22px; font-weight: 750; line-height: 1.18; letter-spacing: -.025em; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.blog-insights__excerpt { display: -webkit-box; overflow: hidden; margin: 0 0 20px; color: #71809d; font-size: 16px; line-height: 1.42; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.blog-insights__read { color: #102754; font-size: 15px; font-weight: 700; text-decoration: none; }
.blog-insights__read span { display: inline-grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; color: #c61163; background: #faeaf4; }
.blog-insights__empty { max-width: 650px; margin: 70px auto; padding: 45px 28px; border: 1px solid #eee8ee; border-radius: 20px; color: #71809d; background: rgba(255,255,255,.84); }
.blog-insights__empty .fc-icon-circle { margin-bottom: 16px; color: var(--fc-accent); }
.blog-insights__footer { position: relative; z-index: 1; margin-top: 44px; }
.blog-insights__footer .fc-brand-signature { color: #77839e; font-weight: 650; }
.blog-insights__footer .fc-brand-signature__line { width: 68px; height: 1px; background: #77839e; }
.blog-insights__microcopy { color: #8791aa; font-size: 10px; font-weight: 700; line-height: 1.7; letter-spacing: .22em; text-transform: uppercase; }

@media (max-width: 1399.98px) {
    .blog-insights__container { padding-inline: 28px; }
}

@media (max-width: 767.98px) {
    .blog-insights { padding-top: 46px; }
    .blog-insights__header h2 { font-size: clamp(37px,9.5vw,48px); }
    .blog-insights__header > p:last-child { font-size: 17px; }
    .blog-insights__filter { min-height: 42px; padding-inline: 21px; font-size: 13px; }
    .blog-insights__grid { min-height: 300px; }
    .blog-insights__footer { margin-top: 30px; }
}

@media (max-width: 575.98px) {
    .blog-insights__container { padding-inline: 20px; }
    .blog-insights__eyebrow { gap: 10px; font-size: 10px; }
    .blog-insights__eyebrow span { width: 34px; }
    .blog-insights__filters { margin-bottom: 25px; }
    .blog-insights__filter { flex-grow: 1; }
    .blog-insights__empty { margin-block: 38px; padding: 36px 20px; }
    .blog-insights__footer .fc-brand-signature { gap: 10px; font-size: 7px; }
    .blog-insights__footer .fc-brand-signature b { margin-inline: 2px; }
    .blog-insights__footer .fc-brand-signature__line { width: 34px; }
    .blog-insights__microcopy { margin-top: 8px!important; font-size: 8px; }
}
