.blog-page{background:#f9f7f2}
.blog-page .site-nav a[aria-current="page"]{color:var(--accent)}
.blog-hero{padding:94px 0 86px;background:#f2eaf9}
.blog-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.83fr);align-items:center;gap:76px}
.blog-hero h1{max-width:770px}
.blog-hero .lead{max-width:620px}
.blog-hero-image{position:relative;margin:0;height:490px}
.blog-hero-image img{width:100%;height:100%;object-fit:cover;border-radius:18px}
.blog-hero-image figcaption{position:absolute;left:-24px;bottom:24px;padding:17px 22px;background:#28163b;color:#fff;border-radius:8px;font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.blog-list{padding:88px 0 110px}
.blog-list-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:37px}
.blog-list-heading h2{margin:0}
.blog-list-heading p{max-width:390px;margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.blog-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e5dcec;border-radius:16px;overflow:hidden;min-height:500px}
.blog-card img{width:100%;height:245px;object-fit:cover}
.blog-card-body{display:flex;flex:1;flex-direction:column;padding:25px 28px 29px}
.blog-card .eyebrow{font-size:10px;margin-bottom:14px}
.blog-card h3{font-size:clamp(25px,2vw,31px);line-height:1.12;margin:0 0 13px}
.blog-card p:not(.eyebrow){font-size:15px;line-height:1.55;color:var(--muted)}
.blog-card .text-link{margin-top:auto;text-decoration:underline;text-underline-offset:4px}
.blog-card:focus-within{outline:3px solid #b38adf;outline-offset:3px}
.blog-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;padding:27px 0;color:#625b67;font-size:13px}
.blog-breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.article-hero{padding:47px 0 68px;background:#f2eaf9}
.article-hero-inner{max-width:980px}
.article-hero h1{max-width:980px;font-size:clamp(48px,5.3vw,79px)}
.article-hero .lead{max-width:820px;font-size:21px}
.article-meta{display:flex;gap:11px;align-items:center;font-size:13px;font-weight:750;color:#5b4c67}
.article-photo{margin:0;background:#f2eaf9}
.article-photo .container{max-width:1220px}
.article-photo img{width:100%;height:min(58vw,620px);min-height:300px;object-fit:cover;border-radius:16px}
.article-photo figcaption{padding:10px 0 0;font-size:12px;color:#6d6174}
.article-layout{display:grid;grid-template-columns:minmax(0,720px) minmax(220px,1fr);gap:105px;padding-top:78px;padding-bottom:110px}
.article-copy{font-size:18px;line-height:1.72;color:#44394e}
.article-copy .article-intro{font-size:21px;line-height:1.6;color:#28163b}
.article-copy h2{margin:55px 0 18px;font-size:clamp(32px,3vw,43px);color:#261735}
.article-copy p{margin:0 0 21px}
.article-copy ul{margin:4px 0 26px;padding-left:27px}
.article-copy li{padding-left:5px;margin:0 0 10px}
.article-copy .text-link{display:inline-block;margin:3px 0 10px;text-decoration:underline;text-underline-offset:4px}
.article-aside{align-self:start;position:sticky;top:25px;border-top:2px solid var(--accent);padding-top:22px}
.article-aside p{color:var(--muted);font-size:15px;line-height:1.6}
.article-aside .btn{display:flex;margin-top:24px}
.blog-cta{background:#2d1843;color:#fff;padding:68px 0}
.blog-cta .container{display:flex;justify-content:space-between;align-items:center;gap:35px}
.blog-cta h2{max-width:720px;margin:0}
.blog-cta .eyebrow{color:#d5b4ff}
.blog-cta .btn{background:#fff;color:#28163b;white-space:nowrap}
@media(max-width:950px){.blog-hero-grid{gap:35px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{gap:40px}}
@media(max-width:760px){.blog-hero{padding:58px 0 63px}.blog-hero-grid,.article-layout{grid-template-columns:1fr}.blog-hero-image{height:350px}.blog-hero-image figcaption{left:13px;bottom:13px}.blog-list{padding:66px 0 78px}.blog-list-heading,.blog-cta .container{display:block}.blog-list-heading p{margin-top:15px}.article-layout{padding-top:52px;padding-bottom:75px}.article-aside{position:static}.blog-cta .btn{margin-top:26px}}
@media(max-width:570px){.blog-grid{grid-template-columns:1fr}.blog-hero-image{height:315px}.article-hero{padding:28px 0 43px}.article-photo img{height:300px}.article-copy{font-size:16px}.article-copy .article-intro{font-size:18px}.blog-breadcrumbs{font-size:12px}.blog-cta h2{font-size:36px}}
