/* Blog index — Figma desktop 69:559, tablet 292:8225, phone 100:3114. */
.blog-page{color:var(--ink)}
.blog-page h1{font:500 64px/68px var(--serif);letter-spacing:-.5px}
.blog-page h2{font:500 40px/46px var(--serif);letter-spacing:-.5px}
.blog-label{font:500 12px/18px var(--body);letter-spacing:2px;color:var(--muted)}
.blog-introduction{display:flex;flex-direction:column;gap:20px;padding-block:64px}
.blog-introduction>p:last-child{font:400 16px/25px var(--body)}
.blog-phone-heading,.blog-phone-read,.blog-phone-copy{display:none}
.blog-feature{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:start;padding-block:64px}
.blog-image-link{display:block;overflow:hidden;min-width:0}
.blog-image-link img{display:block;width:100%;height:100%;object-fit:cover}
.blog-feature>.blog-image-link{height:500px}
.blog-feature-copy{display:flex;flex-direction:column;align-items:flex-start;gap:20px;min-width:0}
.blog-feature-copy>h2{width:100%}
.blog-feature-description{font:400 16px/25px var(--body);color:var(--muted)}
.blog-feature-link.button.secondary{width:192px;min-height:56px;gap:24px;padding:0 24px;border:1px solid var(--line);background:var(--paper);justify-content:flex-start}
.blog-stories{background:#fff;scroll-margin-top:24px;outline:none}
.blog-stories-inner{padding-block:64px;display:flex;flex-direction:column;gap:24px}
.blog-topics{display:flex;flex-wrap:wrap;align-items:center;gap:8px 32px;margin-top:-12px;margin-bottom:-12px}
.blog-topics a{font:500 14px/20px var(--body);display:inline-flex;align-items:center;min-height:44px;text-underline-offset:6px}
.blog-topics a[aria-current]{text-decoration:underline;text-decoration-thickness:1px}
.blog-topics a:hover,.blog-read:hover,.blog-page h2 a:hover{text-decoration:underline;text-underline-offset:5px}
.blog-grid{display:flex;flex-wrap:wrap;gap:40px 24px}
.blog-card{flex:1 1 0;min-width:200px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;overflow-wrap:anywhere}
.blog-card>.blog-image-link{height:350px;width:100%}
.blog-card h2{font:600 24px/32px var(--serif);letter-spacing:-.5px;width:100%}
.blog-read{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:500 14px/20px var(--body);margin-block:-12px}
.blog-card>.blog-read{margin-top:auto}
.blog-pagination{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:16px}
.blog-pagination a{width:44px;height:44px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;border-radius:50%;font:500 14px/20px var(--body)}
.blog-pagination a[aria-current]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.blog-page a:focus-visible,.blog-page button:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.blog-empty{display:flex;flex-direction:column;align-items:flex-start;gap:24px;padding-block:24px}
.blog-empty p{color:var(--muted)}
.blog-invitation{padding-bottom:64px}
.blog-invitation>div{display:flex;align-items:flex-start;gap:24px;background:var(--sage);padding:32px;border-radius:8px}
.blog-invitation-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.blog-invitation .blog-label{letter-spacing:0}
.blog-invitation h2{font:600 24px/32px var(--serif);letter-spacing:-.5px}
.blog-invitation-copy>p:last-child{color:var(--muted);font:400 16px/25px var(--body)}
.blog-invitation .button{width:244px;min-height:48px;flex:none}
.dolce-blog-page .about-nav-consultation{width:220px;min-height:52px;flex:none;gap:12px}
@media(min-width:600px) and (max-width:1199px){
 .blog-page .shell{padding-inline:40px}
 .blog-introduction,.blog-feature,.blog-stories-inner{padding-block:48px}
 .blog-page h1{font-size:48px;line-height:54px}
 .blog-card{min-width:260px}
 .blog-invitation>div{flex-direction:column}
 .dolce-blog-page .desktop-nav{display:none}
 .dolce-blog-page .compact-nav{display:flex;align-items:center;gap:8px;margin-left:auto}
}
@media(min-width:600px) and (max-width:699px){
 .blog-feature{gap:32px}
 .blog-feature-copy h2{font-size:32px;line-height:38px}
 .dolce-blog-page .compact-nav>a{display:none}
}
@media(max-width:599px){
 .blog-page h1{font:400 32px/42px 'Libre Baskerville',Georgia,serif;letter-spacing:0}
 .blog-introduction{padding-block:40px}
 .blog-wide-heading,.blog-wide-read,.blog-wide-copy{display:none}
 .blog-phone-heading,.blog-phone-read,.blog-phone-copy{display:inline}
 .blog-feature{display:flex;flex-direction:column;gap:24px;padding-block:40px;background:#fff}
 .blog-feature>.blog-image-link{width:100%;height:300px}
 .blog-feature-copy{gap:24px;width:100%}
 .blog-feature-copy h2,.blog-card h2,.blog-empty h2{font:400 26px/34px 'Libre Baskerville',Georgia,serif;letter-spacing:0}
 .blog-feature-description{display:none}
 .blog-feature-link.button.secondary{min-height:44px;width:auto;background:transparent;border:0;border-radius:0;padding:0;gap:8px;margin-block:-12px}
 .blog-stories-inner{padding-block:0 40px;gap:24px}
 .blog-topics{gap:0 24px;margin-block:0}
 .blog-grid{display:flex;flex-direction:column;gap:80px}
 .blog-card{min-width:0;width:100%;gap:24px}
 .blog-card>.blog-image-link{height:300px}
 .blog-card>.blog-read{margin-top:-12px}
 .blog-pagination{margin-top:16px}
 .blog-invitation{padding-bottom:32px;background:#fff}
 .blog-invitation>div{padding:24px 20px;gap:18px;flex-direction:column;border-radius:4px}
 .blog-invitation h2{font:400 24px/32px 'Libre Baskerville',Georgia,serif;letter-spacing:-.6px}
 .blog-invitation .button{width:100%;min-height:44px;justify-content:space-between}
 .blog-empty{padding-block:16px}
}
@media(max-width:359px){.blog-page .shell{padding-inline:16px}}
.blog-feature-link span:not([aria-hidden]){font:500 14px/20px var(--body)}
@media(max-width:599px){.dolce-blog-page .about-nav-consultation{display:none}}
.blog-search-summary{font:400 14px/22px var(--body);color:var(--muted)}
.blog-search-summary a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px}
