.blog-shell{max-width:1440px;margin:0 auto;padding:180px var(--gutter) 100px;min-height:75vh}
.blog-card h2 a{display:block}
.blog-shell.blog-index{padding-top:132px}.blog-index .blog-heading{margin-left:auto;margin-right:auto;margin-bottom:48px;text-align:center}.blog-index .blog-heading h1{margin-bottom:18px}
@media(max-width:1000px){.blog-shell.blog-index{padding-top:120px}}
@media(max-width:600px){.blog-shell.blog-index{padding-top:112px}.blog-index .blog-heading{margin-bottom:36px}}
.blog-heading{max-width:760px;margin-bottom:64px}.blog-heading h1,.blog-article-heading h1{font-family:var(--serif);font-size:clamp(38px,4.5vw,64px);letter-spacing:-.035em;line-height:1.12;margin:0 0 24px}.blog-heading>p:last-child{font-size:18px;color:var(--navy-soft);line-height:1.7}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px}.blog-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.blog-card-image{display:block;aspect-ratio:16/10;overflow:hidden}.blog-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.blog-card-image:hover img{transform:scale(1.025)}.blog-card-copy{padding:26px;display:flex;flex-direction:column;flex:1}.blog-card time,.blog-article-heading time{font-size:13px;color:var(--navy-soft)}.blog-card h2{font-size:25px;line-height:1.28;letter-spacing:-.015em;margin:16px 0}.blog-card h2 a:hover,.blog-back:hover{color:var(--royal)}.blog-excerpt{font-size:15px;line-height:1.7;color:var(--navy-soft);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin-bottom:24px}.blog-read-more{color:var(--royal);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px;margin-top:auto;align-self:flex-start;padding:8px 0}
.blog-pagination{margin-top:60px}.blog-pagination ul{display:flex;justify-content:center;flex-wrap:wrap;list-style:none;gap:10px;padding:0}.blog-pagination a,.blog-pagination span{display:flex;min-width:44px;min-height:44px;padding:8px 14px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;color:var(--royal)}.blog-pagination .current{background:var(--royal);color:#fff;border-color:var(--royal)}.blog-pagination a:hover{background:var(--mist)}.blog-empty{padding:40px 0;border-top:1px solid var(--line)}
.blog-single{max-width:1320px}.blog-article-heading{max-width:850px;margin:0 auto 44px}.blog-back{display:inline-block;font-size:14px;color:var(--royal);text-decoration:underline;text-underline-offset:5px;margin-bottom:32px;padding:8px 0}.blog-featured{margin:0 0 56px}.blog-featured img{width:100%;height:auto;border-radius:8px}.blog-article-content,.blog-article-footer{max-width:760px;margin-left:auto;margin-right:auto}.blog-article-content{font-size:18px;line-height:1.85;overflow-wrap:anywhere}.blog-article-content h2{font-size:clamp(27px,3vw,36px);line-height:1.25;letter-spacing:-.02em;margin:44px 0 20px}.blog-article-content h3{font-size:25px;margin-top:32px}.blog-article-content p{margin-bottom:24px}.blog-article-content ul,.blog-article-content ol{padding-left:26px;margin-bottom:28px}.blog-article-content li{padding-left:5px;margin-bottom:10px}.blog-article-content a{color:var(--royal);text-decoration:underline;text-underline-offset:4px}.blog-article-content figure{max-width:100%;margin:30px 0}.blog-article-content img{max-width:100%;height:auto}.blog-article-content figcaption{font-size:14px;color:var(--navy-soft)}.blog-article-content blockquote{margin:28px 0;padding-left:24px;border-left:3px solid var(--royal)}.blog-article-footer{border-top:1px solid var(--line);padding-top:28px;margin-top:48px}.blog-article-footer p{margin-top:24px;font-size:15px}.blog-article-footer p a{color:var(--royal);text-decoration:underline}
@media(max-width:1000px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.blog-shell{padding-top:160px}}
@media(max-width:600px){.blog-grid{grid-template-columns:minmax(0,1fr);gap:30px}.blog-shell{padding-top:145px;padding-bottom:64px}.blog-heading{margin-bottom:36px}.blog-heading h1,.blog-article-heading h1{font-size:38px}.blog-card-copy{padding:24px}.blog-article-content{font-size:17px;line-height:1.8}.blog-featured{margin-bottom:32px}.blog-article-heading{margin-bottom:28px}.blog-pagination{margin-top:36px}}

