.blog-heading { padding:54px 0; background:linear-gradient(120deg,#eaf6fc,#f4fbfc); border-bottom:1px solid #d7e9ee; }
.blog-heading p { color:#086174; font-size:18px; font-weight:600; margin-bottom:14px; }
.blog-heading h1 { font-size:clamp(30px,4vw,48px); line-height:1.25; color:#084f60; max-width:950px; margin:0; }
.blog-heading a { color:#086174; }
.blog-banner .implant-banner-title { margin:0; font-size:clamp(20px,5.7vw,86px); }
.blog-index { padding:44px 0 64px; background:#f8f6fc; }
.blog-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; align-items:stretch; }
.blog-post-card { min-width:0; background:white; border-radius:5px; overflow:hidden; box-shadow:0 3px 16px rgba(26,45,65,.04); }
.blog-card-image { display:block; overflow:hidden; aspect-ratio:16/9; background:#e9f4f8; }
.blog-card-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .2s ease; }
.blog-card-image:hover img { transform:scale(1.025); }
.blog-card-content { padding:30px 26px; }
.blog-category { display:inline-block; font-size:14px; font-weight:600; color:#086174; margin-bottom:20px; }
.blog-post-card h2 { font-size:23px; line-height:1.35; margin:0 0 20px; }
.blog-post-card h2 a { color:#142b3a; text-decoration:none; }
.blog-post-card h2 a:hover { color:#086174; }
.blog-card-excerpt { font-size:18px; line-height:1.7; color:#718091; margin:0 0 24px; }
.blog-read-more { font-weight:600; color:#086174; }
.blog-read-more span { margin-left:8px; }
.blog-post-card a:focus-visible { outline:3px solid #086174; outline-offset:-3px; }
@media(max-width:991px) { .blog-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; } }
@media(max-width:575px) { .blog-card-grid { grid-template-columns:1fr; } .blog-card-content { padding:26px 22px; } .blog-index { padding:30px 0 44px; } }
.blog-layout { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:56px; align-items:start; }
.blog-page article { min-width:0; }
.blog-page article > p { margin-top:24px; }
.blog-page .implant-section { scroll-margin-top:100px; }
.blog-page a { color:#086174; overflow-wrap:anywhere; }
.blog-list { padding-left:24px; margin:20px 0; }
.blog-list li { margin-bottom:10px; }
.blog-list li::marker { color:#087a79; }
.blog-steps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:0; list-style:none; counter-reset:step; margin:24px 0; }
.blog-steps li { counter-increment:step; padding:22px; border:1px solid #d7e7ea; border-radius:10px; background:#f6fafb; }
.blog-steps li::before { content:counter(step,decimal-leading-zero); display:block; font-size:22px; font-weight:700; color:#086174; margin-bottom:10px; }
.blog-sidebar { margin-top:28px; padding:24px; border:1px solid #d7e7ea; border-radius:12px; background:#f6fafb; }
.blog-sidebar h2 { font-size:22px; margin-bottom:16px; }
.blog-sidebar ul { padding-left:18px; margin:0; }
.blog-page .blog-sidebar li { font-size:15px; line-height:1.55; margin-bottom:12px; }
.blog-page .blog-book { display:block; padding:12px 16px; margin-top:24px; background:#086174; color:white; border-radius:6px; text-align:center; }
.blog-page .implant-question-card[open] summary::before { content:'−'; }
@media(max-width:991px) { .blog-layout { grid-template-columns:1fr; gap:24px; } .blog-sidebar { grid-row:1; margin-top:12px; } .blog-sidebar ul { columns:2; } .blog-sidebar li { break-inside:avoid; } }
@media(max-width:575px) { .blog-heading { padding:36px 0; } .blog-steps { grid-template-columns:1fr; } .blog-sidebar ul { columns:1; } }
