/* Blog Page PDF: compact shared banner, uniform controls and clean reading actions. */
.blog-directory-page{font-family:'CM Source',Arial,sans-serif;color:var(--text-primary)}
.bg-container{width:calc(100% - 64px);max-width:1320px;margin-inline:auto}
.bg-hero{position:relative;isolation:isolate;overflow:clip;background:linear-gradient(90deg,var(--surface),var(--selection-background) 55%,var(--surface))}
.bg-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 28px,#ffffff99 29px 31px);mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}
.bg-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);gap:64px;align-items:center;min-height:400px;padding-block:36px;position:relative;z-index:1}
.bg-watermark{position:absolute;top:22px;right:max(32px,calc((100% - 1256px)/2));font-size:clamp(28px,3.4vw,48px);line-height:1.1;letter-spacing:-1px;font-weight:700;color:var(--link);opacity:.18;pointer-events:none}
.bg-hero-copy .breadcrumbs{font-size:13px;line-height:1.5;margin-bottom:22px;color:var(--text-secondary)}
.bg-hero-copy .eyebrow{font-size:12px;letter-spacing:1px}
.bg-hero-copy h1{font-size:clamp(36px,3.5vw,52px);line-height:1.13;letter-spacing:-.5px;margin:17px 0 20px;font-weight:700;text-wrap:balance}
.bg-hero-copy h1 em{color:var(--link);font-style:normal}
.bg-hero-copy>p{font-size:18px;line-height:1.65;max-width:670px;color:var(--text-secondary);margin:0}
.blog-directory-page .topic-nav{display:flex;flex-wrap:wrap;margin-top:25px;gap:12px}
.blog-directory-page .topic-nav>a{display:flex;align-items:center;border:1px solid var(--border-control);background:var(--surface);color:var(--text-primary);min-height:48px;padding:11px 16px;border-radius:8px;font-size:14px;font-weight:600;gap:12px;line-height:1.4;text-decoration:none;transition:border-color .2s,background .2s}
.blog-directory-page .topic-nav>a:hover{border-color:var(--brand);color:var(--link)}
.blog-directory-page .topic-nav>a[aria-current=page]{background:var(--selection-background);border-color:var(--brand);color:var(--link)}
.blog-directory-page .topic-nav strong{font-size:12px;border-radius:15px;background:var(--surface-muted);color:var(--text-primary);padding:3px 9px}
.bg-hero-side{padding-top:34px}
.bg-reading-card{padding:24px 27px;background:var(--surface-inverse);color:var(--text-inverse);border-radius:20px;box-shadow:8px 8px 0 color-mix(in srgb,var(--brand) 12%,transparent);max-width:420px;margin-left:auto;min-height:290px}
.bg-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px;font-size:18px}
.bg-card-top>span{font-size:9px;letter-spacing:1.3px}
.bg-card-label{font-size:10px;letter-spacing:1.4px;color:var(--text-inverse-secondary)}
.bg-reading-card h2{font-size:32px;line-height:1.2;letter-spacing:-.3px;color:var(--text-inverse);margin:12px 0 22px;font-weight:600}
.bg-reading-card nav{display:grid}
.bg-reading-card nav a{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--border-inverse);min-height:48px;padding:12px 0;font-size:15px;color:var(--text-inverse);line-height:1.4;text-decoration:none}
.bg-reading-card nav a>span{color:var(--inverse-accent);font-size:20px}
.bg-reading-card nav a:hover,.bg-reading-card nav a:focus-visible{color:var(--inverse-accent)}
.blog-directory-page .blog-directory{max-width:1320px;width:calc(100% - 64px);padding-top:36px;padding-bottom:60px;padding-inline:0}
.blog-directory-page .blog-filter-form{padding:26px 28px 28px;border:1px solid var(--border-subtle);border-radius:20px;background:var(--surface);box-shadow:0 4px 20px var(--shadow-color)}
.bg-filter-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:22px}
.bg-filter-heading h2{font-size:23px;line-height:1.3;letter-spacing:-.3px;margin:0;font-weight:600}
.bg-filter-heading p{font-size:14px;line-height:1.5;color:var(--text-secondary);margin:0}
.blog-directory-page .blog-filter-form label{font:600 14px/1.4 'CM Source',Arial,sans-serif;margin-bottom:8px;color:var(--text-primary)}
.blog-directory-page .blog-filter-form input,.blog-directory-page .blog-filter-form select{font:400 16px/1.5 'CM Source',Arial,sans-serif;min-height:50px;height:50px;border-radius:9px;border-color:var(--border-control);padding:11px 14px;background-color:var(--surface);color:var(--text-primary);box-shadow:none}
.blog-directory-page .blog-filter-form select{padding-right:32px;cursor:pointer}
.blog-directory-page .blog-search-row{grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end}
.blog-directory-page .blog-search-row .btn{height:50px;min-height:50px;border-radius:8px;padding:12px 26px;font:600 16px/1.4 'CM Source',Arial,sans-serif}
.blog-directory-page #topic-filters .blog-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:22px}
.blog-directory-page #blog-filters .blog-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:22px}
.blog-directory-page .blog-filter-form input:focus,.blog-directory-page .blog-filter-form select:focus{border-color:var(--brand);outline:2px solid color-mix(in srgb,var(--brand) 25%,transparent);outline-offset:2px}
.blog-directory-page .blog-results-bar{margin:22px 0 20px;align-items:center;flex-wrap:wrap}
.blog-directory-page .blog-results-bar p{margin:0;font-size:15px;line-height:1.5}
.blog-directory-page .blog-reset{border:1px solid var(--border-subtle);border-radius:50px;min-height:44px;padding:9px 16px;font:600 14px/1.4 'CM Source',Arial,sans-serif;background:var(--surface);text-decoration:none}
.blog-directory-page .blog-reset:hover{border-color:var(--brand);background:var(--selection-background)}
.blog-directory-page .blog-filter-chip{min-height:40px;font-size:14px;border-radius:50px;padding:8px 13px}
.blog-directory-page .blog-quick{margin-top:18px}
.blog-directory-page .blog-quick a{min-height:40px;display:inline-flex;align-items:center}
.blog-directory-page .blog-grid{gap:24px;grid-auto-rows:1fr;align-items:stretch}
.blog-directory-page .blog-card{padding:25px;border-radius:20px;height:100%;transition:border-color .2s,box-shadow .2s;box-shadow:none}
.blog-directory-page .blog-card:hover{transform:none;box-shadow:0 8px 24px var(--shadow-color);border-color:color-mix(in srgb,var(--brand) 45%,var(--border-subtle))}
.blog-directory-page .blog-card h2{font-size:23px;line-height:1.3;letter-spacing:-.2px;font-weight:600;overflow-wrap:anywhere}
.blog-directory-page .blog-provider{font-size:13px;margin-top:20px}
.blog-directory-page .blog-card p{font-size:15px;line-height:1.7}
.blog-directory-page .blog-card-foot{display:block;padding-top:10px;margin-top:auto}
.blog-directory-page .blog-card-foot .blog-read{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:44px;font-size:15px;color:var(--link);font-weight:600;white-space:normal}
.blog-directory-page .blog-read>span:last-child{font-size:21px;line-height:1}
.blog-directory-page .blog-pagination button,.blog-directory-page .topic-jump input{font:400 15px 'CM Source',Arial,sans-serif;border-radius:8px;cursor:pointer}
.blog-directory-page a:focus-visible,.blog-directory-page button:focus-visible{outline:2px solid var(--link);outline-offset:4px}
.bg-reading-card a:focus-visible{outline-color:var(--inverse-accent)}
@media(max-width:1050px){.bg-hero-grid{gap:30px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.bg-hero-copy h1{font-size:40px}.bg-reading-card{padding:24px}.bg-reading-card h2{font-size:29px}.blog-directory-page #blog-filters .blog-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.bg-container,.blog-directory-page .blog-directory{width:calc(100% - 40px)}.bg-hero-grid{grid-template-columns:1fr;gap:25px;min-height:0;padding-block:30px}.bg-hero-side{padding-top:0}.bg-reading-card{max-width:none;margin:0;min-height:0}.bg-watermark{position:static;padding:22px 20px 0;font-size:28px;opacity:.35}.bg-hero-copy h1{font-size:38px;max-width:680px}.bg-hero-copy>p{font-size:17px}.blog-directory-page #topic-filters .blog-filter-grid,.blog-directory-page #blog-filters .blog-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.blog-directory-page .blog-filter-grid>div:last-child{grid-column:auto}.blog-directory-page #blog-filters .blog-filter-grid>div:last-child{grid-column:1/-1}.bg-filter-heading{flex-direction:column;gap:6px}.blog-directory-page .blog-directory{padding-top:28px}.blog-directory-page .blog-filter-form{padding:23px}}
@media(max-width:540px){.bg-hero-copy h1{font-size:36px}.blog-directory-page .topic-nav>a{flex:1;justify-content:center;font-size:13px;gap:8px;padding:10px}.blog-directory-page .blog-search-row{grid-template-columns:1fr}.blog-directory-page .blog-search-row .btn{width:100%}.blog-directory-page #topic-filters .blog-filter-grid,.blog-directory-page #blog-filters .blog-filter-grid{grid-template-columns:1fr}.blog-directory-page .blog-filter-form{padding:20px}.blog-directory-page .blog-card{padding:23px}.blog-directory-page .blog-results-bar{gap:10px}.bg-reading-card h2{font-size:26px}.bg-card-top{font-size:17px}}
@media(prefers-reduced-motion:reduce){.blog-directory-page .blog-card{transition:none}}
