.dsp-blog-header { padding: 64px 0 36px; background: #f5f7f8; }
.dsp-blog-header h1 { font-size: 44px; max-width: 900px; }
.dsp-blog-header p { max-width: 720px; margin: 0; }
.dsp-post-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.dsp-post-card { min-width: 0; border: 1px solid #e0e4e7; border-radius: 8px; overflow: hidden; background: white; }
.dsp-post-image { display: block; aspect-ratio: 1.6; overflow: hidden; }
.dsp-post-image img { width: 100%; height: 100%; object-fit: cover; }
.dsp-post-copy { padding: 24px; }
.dsp-post-copy time, .dsp-single time { color: #626b73; font-size: 12px; }
.dsp-post-copy h3 { font-size: 21px; line-height: 1.4; margin: 12px 0; }
.dsp-post-copy h3 a { text-decoration: none; }
.dsp-post-copy p { font-size: 15px; line-height: 1.8; }
.dsp-single { max-width: 880px; padding-block: 48px 72px; }
.dsp-single header { margin-block: 24px 30px; }
.dsp-single h1 { max-width: none; font-size: 42px; line-height: 1.2; }
.dsp-single-image { width: 100%; height: auto; max-height: 480px; object-fit: cover; margin-bottom: 36px; }
.dsp-image-caption { margin: -24px 0 32px; color: #626b73; font-size: 13px; line-height: 1.6; }
.dsp-single .entry-content { max-width: 740px; margin-inline: auto; font-size: 17px; line-height: 1.85; }
.dsp-single .entry-content h2 { font-size: 28px; line-height: 1.3; margin-top: 38px; }
.dsp-single-links { display: flex; flex-wrap: wrap; gap: 20px; padding-top: 24px; }
#reviews { background: #f5f7f8; }
#reviews .ref-review-grid:empty { display: none; }
@media(min-width:901px) and (max-width:1200px) {
 #primary-nav .menu { gap: 12px; } #primary-nav { gap: 14px; }
 #primary-nav .header-phone { display: none; }
}
@media(max-width:900px) { .dsp-post-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
 .dsp-post-grid { grid-template-columns: 1fr; }
 .dsp-blog-header h1, .dsp-single h1 { font-size: 32px; }
 .dsp-single .entry-content h2 { font-size: 25px; }
 .dsp-blog-header { padding-block: 38px; }
}
