/* ==========================================================================
   PrintingView - modern theme v4 (SEO structure support)
   - title bar text is now the page <h1>; former content <h1>s are <h2 class="pv-h1"> with the same look
   - breadcrumbs
   ========================================================================== */
.title_bar h1.text{margin:0; padding:0; border:0; font-family:var(--font); width:100%; color:#fff; font-size:32px; font-weight:800; letter-spacing:-.02em; line-height:1.2;}
@media screen and (max-width:980px){ .title_bar h1.text{font-size:26px;} }

h2.pv-h1{font-family:var(--font); font-weight:800; font-size:30px; line-height:1.15; color:var(--ink); margin:0 0 14px; width:auto; letter-spacing:-.01em;}
#right_col h2.pv-h1{margin-top:8px;}
.tab_wrapper h2.pv-h1{font-size:24px;}
.pv-results-head h2.pv-h1{margin:6px 0 0; font-size:32px;}
.pv-contact-intro h2.pv-h1{margin:8px 0 6px; font-size:34px;}
.pv-auth-main h2.pv-h1{margin:0 0 6px; font-size:32px;}
@media screen and (max-width:900px){ .pv-auth-main h2.pv-h1{font-size:26px;} }
@media screen and (max-width:640px){ .pv-contact-intro h2.pv-h1{font-size:27px;} .pv-results-head h2.pv-h1{font-size:26px;} }

/* breadcrumbs */
.pv-crumbs{margin:0 0 18px;}
.pv-crumbs ol{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:6px; font-size:13.5px; color:var(--muted);}
.pv-crumbs li{list-style:none; margin:0; padding:0; display:inline-flex; align-items:center; gap:6px;}
.pv-crumbs li + li:before{content:"/"; color:#c5ccd6;}
.pv-crumbs a{color:var(--muted); text-decoration:none; font-weight:500;}
.pv-crumbs a:hover{color:var(--brand); text-decoration:underline;}
.pv-crumbs [aria-current]{color:var(--ink-2); font-weight:600;}
h2.pv-calc-title{text-align:center; margin:0 0 10px; width:auto;} h2.pv-calc-title span{font-size:20px; font-weight:800;}

/* ---------- long-form blog articles ---------- */
.pv-article{font-size:16.5px; line-height:1.75; color:var(--ink-2); text-align:left;}
.pv-article h2{font-size:26px; line-height:1.25; margin:38px 0 12px; padding-top:6px; width:auto; scroll-margin-top:90px;}
.pv-article h3{font-size:19px; margin:24px 0 8px; width:auto; color:var(--ink);}
.pv-article p{margin:0 0 16px;}
.pv-article ul, .pv-article ol{margin:0 0 18px; padding-left:24px;}
.pv-article li{margin:0 0 8px; list-style:inherit;}
.pv-article ul li{list-style:disc;} .pv-article ol li{list-style:decimal;}
.pv-article a{font-weight:600; text-decoration:underline; text-underline-offset:2px;}
.pv-article table{width:100%; margin:6px 0 22px;}
.pv-article .pv-answer{background:var(--brand-soft); border:1px solid #cfe6f9; border-left:5px solid var(--brand); border-radius:12px; padding:18px 22px; margin:0 0 24px; font-size:17px; color:var(--ink);}
.pv-article .pv-toc{background:#f4f5f7; border:1px solid #e6e8ec; border-radius:14px; padding:18px 22px; margin:0 0 28px;}
.pv-article .pv-toc ul{margin:10px 0 0; padding-left:20px;}
.pv-article .pv-toc li{margin:0 0 4px;}
.pv-article .pv-faq{margin:10px 0 28px;}
.pv-article .pv-faq h3{font-size:18px; margin:0; padding:16px 20px 6px; background:#f4f5f7; border:1px solid #e6e8ec; border-bottom:0; border-radius:12px 12px 0 0;}
.pv-article .pv-faq p{margin:0 0 14px; padding:0 20px 16px; background:#f4f5f7; border:1px solid #e6e8ec; border-top:0; border-radius:0 0 12px 12px;}
.pv-article .pv-cta{background:linear-gradient(135deg, var(--navy), var(--navy-2)); color:#d5ddef; border-radius:16px; padding:24px 26px; margin:30px 0 8px;}
.pv-article .pv-cta strong{display:block; color:#fff; font-size:19px; margin-bottom:6px;}
.pv-article .pv-cta a{color:#7fd0ff;}
.b_contents .image img{max-width:100%; height:auto; border-radius:14px;}

/* make sure article headings win over legacy #right_col rules */
#right_col .pv-article h2{font-size:26px; font-weight:800; line-height:1.25; color:var(--ink); margin:38px 0 12px; letter-spacing:-.01em;}
#right_col .pv-article h3{font-size:19px; font-weight:700; line-height:1.3; color:var(--ink);}
#right_col .pv-article .pv-faq h3{font-size:18px;}
#right_col .pv-article p, #right_col .pv-article li{font-size:16.5px; line-height:1.75;}

/* blog post: featured image spans the full content width */
#right_col .contents_content .image, #right_col .blogs .image{width:100%; margin:0 0 26px; padding:0; float:none; border:0; background:none;}
#right_col .contents_content .image img, #right_col .blogs .image img{display:block; width:100% !important; max-width:100%; height:auto !important; margin:0; border-radius:16px; box-shadow:var(--shadow-sm);}
