/* Dr Kukla blog. Deliberately isolated from home, shop and landing styles. */
body.drb-page { --drb-accent:#269fb7; --drb-link:#146e80; --drb-ink:#323232; --drb-muted:#58686b; --drb-soft:#eef7f9; --drb-line:#d7e5e7; }
body.drb-page .site-content { background:#fbfaf8; }
body.drb-page .site-content > .ast-container { display:block; max-width:1240px; padding:0 30px; }
body.drb-page #primary.drb-primary { width:100%; float:none; margin:0; padding:0; border:0; }
body.drb-page button.menu-toggle, body.drb-page .menu-toggle .ast-mobile-svg { color:var(--drb-ink)!important; }
body.drb-page .menu-toggle .ast-mobile-svg { fill:currentColor!important; }
.drb-root { max-width:1140px; margin:0 auto; padding:42px 0 65px; color:var(--drb-ink); }
.drb-root * { box-sizing:border-box; }
.drb-root h1, .drb-root h2, .drb-root h3 { font-family:Montserrat,sans-serif; text-transform:none; color:var(--drb-ink); letter-spacing:-.025em; overflow-wrap:break-word; text-wrap:pretty; font-weight:500; }
.drb-root h1 { font-size:clamp(32px,3.8vw,48px); line-height:1.19; margin:0 0 23px; }
.drb-root h2 { font-size:clamp(24px,2.6vw,32px); line-height:1.3; margin:0 0 18px; }
.drb-root h3 { font-size:22px; line-height:1.35; margin:0 0 14px; }
.drb-root p { margin-top:0; }
.drb-root a { color:var(--drb-link); }
.drb-root a:focus-visible, .drb-root summary:focus-visible, .drb-root input:focus-visible, .drb-root button:focus-visible { outline:3px solid var(--drb-link); outline-offset:4px; }
.drb-root .drb-button, .drb-search button { display:inline-flex; justify-content:center; align-items:center; gap:10px; min-height:48px; padding:14px 20px; border-radius:7px; background:#258fa4; border:1px solid #258fa4; color:white; font-family:Montserrat,sans-serif; font-size:14px; line-height:1.5; font-weight:500; text-transform:none; letter-spacing:0; text-decoration:none; text-align:center; white-space:normal; }
.drb-root .drb-button:hover, .drb-search button:hover { background:#176c7d; border-color:#176c7d; color:white; }
.drb-eyebrow { color:var(--drb-link); font-size:15px; font-weight:600; margin-bottom:16px; }
.drb-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px 14px; font-size:14px; color:var(--drb-muted); margin-bottom:18px; line-height:1.5; }
.drb-meta > *+* { position:relative; }
.drb-lead { font-size:18px; line-height:1.65; color:#47575a; max-width:680px; }
.drb-small { display:block; color:var(--drb-muted); font-size:13px; }
.drb-read { color:var(--drb-link); text-decoration:none; font-weight:600; }
.drb-read:hover { text-decoration:underline; text-underline-offset:.23em; }
.drb-topic-label { display:inline-block; background:var(--drb-soft); color:var(--drb-link); border-radius:5px; padding:4px 8px; }
.drb-index-intro { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr); gap:60px; align-items:center; padding:20px 0 45px; }
.drb-index-intro h1 { font-size:clamp(36px,4.1vw,52px); }
.drb-benefits { list-style:none; margin:25px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px 20px; font-size:15px; }
.drb-benefits li:before, .drb-prose li:before { content:'✓'; color:var(--drb-accent); margin-right:9px; }
.drb-intro-picker { background:var(--drb-soft); border:1px solid var(--drb-line); border-radius:16px; padding:28px; }
.drb-intro-picker h2 { font-size:25px; }
.drb-intro-picker p { font-size:16px; margin-bottom:20px; }
.drb-intro-picker .drb-small { margin-top:12px; }
.drb-moon { float:right; color:var(--drb-accent); font-family:serif; font-size:38px; line-height:1; margin:0 0 8px 10px; }
.drb-library { border-top:1px solid var(--drb-line); padding-top:32px; scroll-margin-top:24px; }
.drb-library-heading { display:flex; align-items:end; justify-content:space-between; gap:28px; margin-bottom:25px; }
.drb-library-heading h2, .drb-library-heading .drb-eyebrow { margin-bottom:6px; }
.drb-search { min-width:340px; width:46%; margin:0; }
.drb-search label { display:block; font-size:14px; margin-bottom:7px; color:var(--drb-muted); }
.drb-search > div { display:flex; gap:8px; }
.drb-search input[type=search] { flex:1; min-width:0; width:100%; font:inherit; font-size:16px; height:49px; background:#fff; border:1px solid #bdcfd3; border-radius:7px; padding:10px 13px; color:var(--drb-ink); }
.drb-filters { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px; }
.drb-filters a { display:inline-flex; align-items:center; min-height:43px; padding:9px 13px; border:1px solid var(--drb-line); border-radius:7px; color:#47575a; background:#fff; font-size:14px; text-decoration:none; }
.drb-filters a:hover { border-color:var(--drb-accent); }
.drb-filters a[aria-current] { background:var(--drb-link); border-color:var(--drb-link); color:#fff; }
.drb-results { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; font-size:14px; color:var(--drb-muted); margin-bottom:25px; }
.drb-results p { margin:0; }
.drb-results a { text-decoration:underline; text-underline-offset:3px; }
.drb-stories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.drb-story { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid var(--drb-line); border-radius:12px; overflow:hidden; }
.drb-story-image { display:block; overflow:hidden; }
.drb-story-image img { display:block; width:100%; aspect-ratio:3/2; height:auto; object-fit:cover; }
.drb-story-copy { flex:1; display:flex; flex-direction:column; align-items:start; padding:24px; }
.drb-story h2 { font-size:23px; line-height:1.33; margin-bottom:15px; }
.drb-story h2 a, .drb-product h3 a { color:var(--drb-ink); text-decoration:none; }
.drb-story h2 a:hover, .drb-product h3 a:hover { color:var(--drb-link); }
.drb-story-copy > p:not(.drb-meta) { font-size:16px; line-height:1.65; color:#526165; margin-bottom:22px; }
.drb-story-copy > .drb-read { margin-top:auto; }
.drb-story .drb-meta { font-size:13px; gap:8px 10px; }
.drb-featured { display:grid; grid-template-columns:1fr 1fr; margin-bottom:25px; background:#f0f7f8; align-items:stretch; }
.drb-featured .drb-story-image img { height:100%; min-height:330px; max-height:450px; }
.drb-featured .drb-story-copy { padding:32px; align-self:center; }
.drb-featured h2 { font-size:31px; }
.drb-featured .drb-topic-label { background:#fff; }
.drb-empty { padding:40px; text-align:center; border:1px dashed #b3cdd2; border-radius:12px; background:#fff; }
.drb-pagination { display:flex; justify-content:center; gap:10px; margin-top:36px; }
.drb-pagination a { display:grid; place-items:center; width:46px; height:46px; border:1px solid var(--drb-line); border-radius:7px; background:white; text-decoration:none; }
.drb-pagination a[aria-current] { color:white; background:var(--drb-link); border-color:var(--drb-link); }
.drb-picker { background:var(--drb-soft); border:1px solid var(--drb-line); border-radius:14px; padding:32px; margin:48px 0 26px; display:grid; grid-template-columns:minmax(0,1fr) 310px; align-items:center; gap:30px; }
.drb-picker h2 { font-size:28px; }
.drb-picker p { margin-bottom:0; }
.drb-editorial-note { color:var(--drb-muted); font-size:14px; line-height:1.7; max-width:850px; }
.drb-progress { position:fixed; left:0; right:0; top:0; height:3px; z-index:9999; pointer-events:none; }
.drb-progress span { display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left; background:var(--drb-accent); }
.drb-breadcrumb { margin-bottom:27px; display:flex; flex-wrap:wrap; gap:8px; font-size:14px; color:var(--drb-muted); }
.drb-breadcrumb a { text-decoration:none; }
.drb-article-header { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:34px; align-items:center; margin-bottom:45px; padding-bottom:36px; border-bottom:1px solid var(--drb-line); }
.drb-article-header h1 { font-size:clamp(30px,3.15vw,42px); }
.drb-article-header .drb-lead { font-size:17px; }
.drb-title-group .drb-read { display:inline-block; margin-top:5px; }
.drb-hero { margin:0; }
.drb-hero img { width:100%; display:block; height:380px; object-fit:cover; border-radius:12px; }
.drb-article-layout { display:grid; grid-template-columns:245px minmax(0,740px); gap:48px; justify-content:space-between; align-items:start; }
.drb-sidebar { position:sticky; top:24px; }
.drb-toc { border:1px solid var(--drb-line); background:#fff; border-radius:10px; padding:20px; margin-bottom:18px; max-height:calc(100vh - 95px); overflow-y:auto; }
.drb-toc summary { color:var(--drb-ink); font-weight:600; cursor:pointer; display:flex; justify-content:space-between; gap:12px; list-style:none; }
.drb-toc summary::-webkit-details-marker { display:none; }
.drb-toc[open] summary span { transform:rotate(180deg); }
.drb-toc ul { list-style:none; padding:0; margin:18px 0 0; }
.drb-toc li { margin:0 0 13px; line-height:1.45; font-size:14px; padding:0; }
.drb-toc li:last-child { margin-bottom:0; }
.drb-toc a { text-decoration:none; }
.drb-toc a:hover { text-decoration:underline; text-underline-offset:3px; }
.drb-sidebar-link { font-size:14px; }
.drb-reading { min-width:0; }
.drb-takeaway { border-left:3px solid var(--drb-accent); border-radius:0 9px 9px 0; padding:23px 25px; background:var(--drb-soft); margin:0 0 30px; }
.drb-takeaway p:last-child { margin-bottom:0; }
.drb-takeaway .drb-eyebrow { margin-bottom:10px; }
.drb-prose { line-height:1.8; font-size:17px; }
.drb-prose h2 { font-size:28px; margin:38px 0 19px; scroll-margin-top:28px; }
.drb-prose h3 { margin:28px 0 15px; font-size:22px; }
.drb-prose p { margin-bottom:22px; }
.drb-prose a { text-decoration:underline; text-underline-offset:.18em; overflow-wrap:anywhere; }
.drb-prose ul { list-style:none; padding:0; margin:20px 0 26px; }
.drb-prose li { padding-left:27px; position:relative; margin-bottom:12px; }
.drb-prose li:before { position:absolute; left:0; }
.drb-prose .drb-faq { border-top:1px solid var(--drb-line); padding:16px 0; }
.drb-faq summary { font-family:Montserrat,sans-serif; font-weight:500; cursor:pointer; line-height:1.5; }
.drb-faq p { margin:14px 0 0; }
.drb-source-list { font-size:15px; line-height:1.6; }
.drb-section-intro { max-width:780px; }
.drb-recommendations { margin-top:55px; padding-top:35px; border-top:1px solid var(--drb-line); scroll-margin-top:28px; }
.drb-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:25px; }
.drb-product { background:#fff; border:1px solid var(--drb-line); border-radius:12px; padding:24px; display:grid; grid-template-columns:120px minmax(0,1fr); gap:22px; }
.drb-product-image { display:block; width:120px; max-width:100%; }
.drb-product-image img { display:block; width:100%; height:auto; border-radius:7px; }
.drb-product-copy { display:flex; flex-direction:column; align-items:flex-start; min-width:0; }
.drb-product h3 { font-size:22px; }
.drb-product-copy > p { font-size:15px; }
.drb-product-buy { margin-top:auto; padding-top:7px; display:flex; flex-wrap:wrap; align-items:center; gap:13px; width:100%; }
.drb-price { font-family:Montserrat,sans-serif; font-weight:500; font-size:22px; color:var(--drb-ink); }
.drb-product-buy .drb-button { width:100%; }
.drb-overlap { margin-top:20px; color:var(--drb-muted); font-size:14px; }
.drb-related { margin-top:44px; }
.drb-related-title { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.drb-related-title h2 { margin:0; }
.drb-back { margin-top:30px; }
@media(max-width:1000px) {
 .drb-index-intro { gap:30px; }
 .drb-stories { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .drb-article-layout { grid-template-columns:220px minmax(0,1fr); gap:28px; }
 .drb-product { grid-template-columns:90px minmax(0,1fr); gap:16px; padding:20px; }
 .drb-product-image { width:90px; }
 .drb-product h3 { font-size:20px; }
 .drb-product-grid { gap:18px; }
 .drb-picker { grid-template-columns:1fr; gap:20px; }
 .drb-picker .drb-button { justify-self:start; }
 .drb-featured h2 { font-size:27px; }
}
@media(max-width:767px) {
 body.drb-page .site-content > .ast-container { padding:0 20px!important; }
 .drb-root { padding:27px 0 40px; }
 .drb-index-intro { grid-template-columns:1fr; gap:25px; padding:0 0 30px; }
 .drb-index-intro h1 { font-size:34px; }
 .drb-intro-picker { padding:23px; }
 .drb-intro-picker h2 { font-size:24px; }
 .drb-lead { font-size:17px; }
 .drb-library-heading { display:block; }
 .drb-search { margin-top:20px; width:100%; min-width:0; }
 .drb-filters { gap:7px; }
 .drb-filters a { font-size:13px; padding:8px 10px; }
 .drb-featured { grid-template-columns:1fr; }
 .drb-featured .drb-story-image img { min-height:0; height:auto; aspect-ratio:3/2; }
 .drb-featured .drb-story-copy { padding:24px; }
 .drb-featured h2 { font-size:26px; }
 .drb-story-copy { padding:21px; }
 .drb-story h2 { font-size:22px; }
 .drb-picker { padding:24px; gap:20px; margin:34px 0 24px; }
 .drb-picker h2 { font-size:25px; }
 .drb-picker .drb-button { width:100%; justify-self:stretch; }
 .drb-article-header { grid-template-columns:1fr; gap:25px; padding-bottom:28px; margin-bottom:28px; }
 .drb-article-header h1 { font-size:30px; line-height:1.23; }
 .drb-title-group .drb-lead { font-size:17px; }
 .drb-hero img { height:auto; aspect-ratio:3/2; }
 .drb-breadcrumb { margin-bottom:22px; font-size:13px; }
 .drb-article-layout { display:block; }
 .drb-sidebar { position:static; margin-bottom:24px; }
 .drb-toc { max-height:none; padding:18px 20px; margin-bottom:0; }
 .drb-toc li { font-size:15px; }
 .drb-sidebar-link { display:none; }
 .drb-prose { font-size:17px; line-height:1.75; }
 .drb-prose h2 { font-size:25px; margin:32px 0 18px; }
 .drb-takeaway { padding:20px; }
 .drb-product-grid { grid-template-columns:1fr; gap:20px; }
 .drb-product { grid-template-columns:105px minmax(0,1fr); gap:18px; }
 .drb-product-image { width:105px; }
 .drb-related-title { align-items:start; flex-direction:column; gap:10px; }
 .drb-recommendations { margin-top:35px; padding-top:28px; }
}
@media(max-width:600px) {
 .drb-stories { grid-template-columns:1fr; }
 .drb-search > div { gap:6px; }
 .drb-search button { padding:12px 13px; }
 .drb-product { grid-template-columns:1fr; }
 .drb-product-image { width:120px; }
 .drb-product h3 { font-size:23px; }
 .drb-product-buy { flex-direction:row; }
 .drb-benefits { gap:8px 15px; }
}
@media(prefers-reduced-motion:reduce) { .drb-root *, .drb-progress span { scroll-behavior:auto!important; transition:none!important; } }
