
/* Shen Dental Blog — v1.2.4 */
.shen-blog-page{background:#fff}
.shen-blog-page .shen-nav-links,
.shen-blog-page .shen-nav-links li{list-style:none!important;margin:0!important;padding:0!important}
.shen-blog-page .shen-nav-links li::marker,
.shen-blog-page .shen-nav-links li::before{content:none!important;display:none!important}
.shen-blog-page .shen-nav-links a,
.shen-blog-page .shen-nav-links a:visited{color:var(--ink)!important;text-decoration:none}
.shen-blog-page .shen-nav-links a:hover,
.shen-blog-page .shen-nav-links a:focus,
.shen-blog-page .shen-nav-links a.active,
.shen-blog-page .shen-nav-links a.active:visited{color:var(--teal-dark)!important}

.blog-hero{padding:150px 0 78px;background:var(--bg)}
.blog-hero-inner{max-width:770px;text-align:center}
.blog-hero h1,.post-hero h1{font-family:Fraunces,Georgia,serif;color:var(--ink);font-weight:500;line-height:1.04}
.blog-hero h1{font-size:clamp(2.8rem,6vw,4.8rem);margin:12px 0 18px}
.blog-hero p{max-width:680px;margin:0 auto;color:var(--soft);font-size:1.1rem;line-height:1.75}

.blog-list-section{padding:74px 0 90px;background:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.blog-card{background:#fff;border:1px solid #e3e7e4;border-radius:24px;overflow:hidden;box-shadow:0 10px 34px rgba(18,43,41,.06);transition:transform .22s ease,box-shadow .22s ease}
.blog-card:hover{transform:translateY(-5px);box-shadow:0 18px 44px rgba(18,43,41,.11)}
.blog-card-image{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--mint);text-decoration:none}
.blog-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.blog-card:hover .blog-card-image img{transform:scale(1.025)}
.blog-card-placeholder{height:100%;display:flex;align-items:center;justify-content:center;color:var(--teal-dark);background:linear-gradient(145deg,var(--mint),#edf7f5)}
.blog-card-body{padding:25px 25px 27px}
.blog-card-meta,.post-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--teal-dark);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.blog-card-meta b,.post-meta b{font-weight:400;opacity:.45}
.blog-card h2{font-family:Fraunces,Georgia,serif;font-size:1.65rem;font-weight:500;line-height:1.18;margin:11px 0 10px}
.blog-card h2 a,.blog-card h2 a:visited{color:var(--ink);text-decoration:none}
.blog-card p{color:var(--soft);line-height:1.65;margin:0}
.blog-read-more,.blog-read-more:visited{display:inline-flex;gap:7px;margin-top:18px;color:var(--teal-dark)!important;font-weight:700;text-decoration:none}
.blog-read-more:hover{gap:11px}
.blog-pagination{margin-top:48px;text-align:center}
.blog-pagination .nav-links{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}
.blog-pagination a,.blog-pagination span{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;border:1px solid #dde4e1;border-radius:999px;padding:0 14px;text-decoration:none}
.blog-pagination a,.blog-pagination a:visited{color:var(--ink)!important}
.blog-pagination .current{background:var(--teal);border-color:var(--teal);color:#fff}
.blog-empty{text-align:center;padding:70px 28px;background:#f7f8f6;border-radius:26px}
.blog-empty h2{font-family:Fraunces,Georgia,serif;font-size:2.3rem;color:var(--ink);margin:10px 0}
.blog-empty p{color:var(--soft)}

.blog-cta{padding:18px 0 82px;background:#fff}
.blog-cta-card{background:var(--teal-dark);border-radius:30px;padding:50px 56px;display:flex;align-items:center;justify-content:space-between;gap:45px;color:#fff}
.blog-cta-card .eyebrow{color:#fff;opacity:.8}
.blog-cta-card h2{font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,4vw,3rem);font-weight:500;line-height:1.08;margin:8px 0 12px;color:#fff}
.blog-cta-card p{max-width:650px;margin:0;color:rgba(255,255,255,.82);line-height:1.7}
.blog-cta-actions{display:flex;align-items:center;gap:18px;flex-shrink:0}
.blog-cta-phone,.blog-cta-phone:visited{color:#fff!important;font-weight:700;text-decoration:none;white-space:nowrap}

.post-hero{padding:145px 0 66px;background:var(--bg)}
.post-hero-inner{max-width:880px}
.post-back,.post-back:visited{display:inline-flex;margin-bottom:28px;color:var(--teal-dark)!important;font-weight:700;text-decoration:none}
.post-hero h1{font-size:clamp(2.7rem,5vw,4.5rem);margin:13px 0 18px}
.post-excerpt{max-width:760px;color:var(--soft);font-size:1.12rem;line-height:1.75}
.post-featured{margin-top:-24px}
.post-featured img{display:block;width:100%;max-height:570px;object-fit:cover;border-radius:28px;box-shadow:0 16px 42px rgba(18,43,41,.1)}
.post-body-section{padding:78px 0 90px}
.post-layout{display:grid;grid-template-columns:minmax(0,760px) 300px;justify-content:space-between;gap:70px;align-items:start}
.post-content{font-size:1.06rem;color:var(--soft);line-height:1.85}
.post-content h2,.post-content h3,.post-content h4{font-family:Fraunces,Georgia,serif;color:var(--ink);font-weight:500;line-height:1.2}
.post-content h2{font-size:2.05rem;margin:42px 0 16px}
.post-content h3{font-size:1.55rem;margin:34px 0 12px}
.post-content p{margin:0 0 22px}
.post-content ul,.post-content ol{padding-left:1.35rem;margin:0 0 24px}
.post-content li{margin:8px 0}
.post-content a,.post-content a:visited{color:var(--teal-dark)!important}
.post-content img{border-radius:20px}
.post-content blockquote{margin:34px 0;padding:22px 28px;border-left:4px solid var(--teal);background:#f4f8f7;border-radius:0 16px 16px 0;color:var(--ink)}
.post-aside{position:sticky;top:110px}
.post-help-card{background:#f6f8f6;border:1px solid #e1e6e2;border-radius:22px;padding:28px}
.post-help-card h3{font-family:Fraunces,Georgia,serif;color:var(--ink);font-size:1.65rem;margin:8px 0 10px}
.post-help-card p{color:var(--soft);line-height:1.65}
.post-help-card .btn{width:100%;text-align:center;margin-top:10px}
.post-help-phone,.post-help-phone:visited{display:block;text-align:center;color:var(--teal-dark)!important;font-weight:700;text-decoration:none;margin-top:14px}

@media(max-width:980px){
  .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-cta-card{align-items:flex-start;flex-direction:column}
  .post-layout{grid-template-columns:1fr;gap:45px}
  .post-aside{position:static}
}
@media(max-width:650px){
  .blog-hero{padding:122px 0 56px}
  .blog-list-section{padding:52px 0 68px}
  .blog-grid{grid-template-columns:1fr}
  .blog-cta-card{padding:36px 28px;border-radius:24px}
  .blog-cta-actions{align-items:flex-start;flex-direction:column}
  .post-hero{padding:122px 0 50px}
  .post-body-section{padding:54px 0 68px}
  .post-featured{margin-top:-12px}
  .post-featured img{border-radius:20px}
}


/* v1.2.6 static-page safeguards: fully detach the custom blog from Astra's
   default page/content wrappers and global link styles. */
body.shen-static-blog .site-content,
body.shen-static-blog .ast-container,
body.shen-static-blog #primary,
body.shen-static-blog .site-main{max-width:none!important;width:auto!important;margin:0!important;padding:0!important}
body.shen-static-blog main{display:block;width:100%}
body.shen-static-blog .blog-list-section .wrap,
body.shen-static-blog .blog-hero .wrap,
body.shen-static-blog .blog-cta .wrap{width:min(1180px,calc(100% - 48px));max-width:1180px;margin-left:auto;margin-right:auto}
body.shen-static-blog a:visited{color:inherit}
body.shen-static-blog .blog-card h2 a:visited{color:var(--ink)!important}
body.shen-static-blog .blog-card-meta,
body.shen-static-blog .blog-read-more,
body.shen-static-blog .blog-read-more:visited{color:var(--teal-dark)!important}


/* v1.2.7 Posts-page hardening */
body.blog.shen-blog-page,
body.home.shen-blog-page,
body.shen-blog-page {
    margin: 0;
    background: #fff;
}
body.shen-blog-page #page,
body.shen-blog-page .site {
    min-height: 100%;
}
body.shen-blog-page .shen-site-header {
    width: 100%;
}
body.shen-blog-page .shen-site-header a,
body.shen-blog-page .shen-site-header a:visited {
    text-decoration: none !important;
}


/* v1.2.8 forced Posts-page route */
body.shen-blog-page .blog-hero,
body.shen-blog-page .blog-list-section,
body.shen-blog-page .blog-cta {
    box-sizing: border-box;
}
body.shen-blog-page .blog-grid {
    width: 100%;
}

/* v1.2.41 — clean single-post layout */
body.shen-single-post .shen-site-header .shen-nav-links{display:flex;align-items:center;gap:36px;list-style:none!important;margin:0!important;padding:0!important}
body.shen-single-post .shen-site-header .shen-nav-links>a{display:inline-flex;margin:0;padding:0}
body.shen-single-post .post-hero{padding:138px 0 58px;background:var(--bg)}
body.shen-single-post .post-hero-inner{width:min(820px,calc(100% - 48px));max-width:820px;margin-left:auto;margin-right:auto}
body.shen-single-post .post-hero h1{max-width:820px;font-size:clamp(2.55rem,5vw,4.35rem);margin:14px 0 0}
body.shen-single-post .post-featured{width:min(980px,calc(100% - 48px));max-width:980px;margin:44px auto 0}
body.shen-single-post .post-featured img{width:100%;max-height:540px;object-fit:cover;border-radius:28px}
body.shen-single-post .post-body-section{padding:64px 0 76px}
body.shen-single-post .post-reading-wrap{width:min(760px,calc(100% - 48px));max-width:760px;margin-left:auto;margin-right:auto}
body.shen-single-post .post-content{width:100%;max-width:none;font-size:1.075rem;line-height:1.86}
body.shen-single-post .post-content>h1:first-child{display:none}
body.shen-single-post .post-content h2{margin-top:46px} body.shen-single-post .post-content h2:first-child{margin-top:0}
body.shen-single-post .post-content figure,body.shen-single-post .post-content img{max-width:100%;height:auto}
body.shen-single-post .shen-single-cta{padding:0 0 82px}
body.shen-single-post .footer-weekend{margin-top:10px;font-size:14px;line-height:1.5}
@media(max-width:980px){body.shen-single-post .shen-site-header .shen-nav-links{display:none}body.shen-single-post .shen-site-header .shen-nav-links.is-open{display:flex;position:absolute;top:100%;left:0;right:0;background:var(--bg);flex-direction:column;align-items:flex-start;padding:20px 32px!important;border-bottom:1px solid #DBDBD8;gap:18px;z-index:60}}
@media(max-width:650px){body.shen-single-post .post-hero{padding:118px 0 46px}body.shen-single-post .post-hero-inner,body.shen-single-post .post-featured,body.shen-single-post .post-reading-wrap{width:min(100% - 36px,820px)}body.shen-single-post .post-featured{margin-top:30px}body.shen-single-post .post-body-section{padding:48px 0 60px}}


/* v1.2.43 — single post visual alignment with established Shen Dental design */
body.shen-single-post .blog-cta{padding:36px 0 56px!important;background:#fff!important}
body.shen-single-post .blog-cta-card{background:#25B1B4!important;color:#fff!important;padding:44px 54px!important}
body.shen-single-post .blog-cta-card .eyebrow,
body.shen-single-post .blog-cta-card h2,
body.shen-single-post .blog-cta-card p,
body.shen-single-post .blog-cta-phone{color:#fff!important}
body.shen-single-post .blog-cta-card .btn-white{background:#fff!important;color:#122B29!important}
body.shen-single-post .post-body-section{padding-bottom:34px!important}
body.shen-single-post .shen-site-footer{margin-top:0!important}
/* AddToAny is useful elsewhere, but its bright square bar clashes with the article design. */
body.shen-single-post .addtoany_share_save_container,
body.shen-single-post .a2a_kit.a2a_floating_style,
body.shen-single-post .a2a_kit.a2a_default_style{display:none!important}
@media(max-width:650px){
 body.shen-single-post .blog-cta{padding:24px 0 42px!important}
 body.shen-single-post .blog-cta-card{padding:34px 28px!important}
}


/* v1.2.44 — force-clean single-post share area + exact Shen palette */
body.single-post .addtoany_share_save_container,
body.single-post .addtoany_content,
body.single-post .addtoany_list,
body.single-post .a2a_kit,
body.single-post .a2a_floating_style,
body.single-post [class*="addtoany"],
body.single-post [class*="a2a_"]{display:none!important;margin:0!important;padding:0!important;height:0!important;min-height:0!important}
body.shen-single-post .shen-single-cta{padding:18px 0 42px!important;margin:0!important;background:#fff!important}
body.shen-single-post .shen-single-cta .wrap{width:min(1116px,calc(100% - 48px))!important;max-width:1116px!important}
body.shen-single-post .shen-single-cta .blog-cta-card{background:#25B1B4!important;padding:38px 56px!important;border-radius:30px!important}
body.shen-single-post .post-body-section{padding-bottom:20px!important}
@media(max-width:650px){body.shen-single-post .shen-single-cta{padding:12px 0 30px!important}body.shen-single-post .shen-single-cta .wrap{width:calc(100% - 36px)!important}body.shen-single-post .shen-single-cta .blog-cta-card{padding:32px 28px!important}}
