/* Clearbay blog (list + article). Builds on premium.css. */
.b-hero{position:relative;padding:170px 0 40px;background:radial-gradient(900px 380px at 50% -10%,#cfe9f5 0%,transparent 70%),linear-gradient(180deg,#eef7fb 0%,#fff 100%);overflow:hidden}
.b-hero h1{font-size:clamp(42px,6.4vw,80px);font-weight:760;letter-spacing:-.05em;line-height:1}
.b-hero .lede{margin-top:20px}
.b-list{padding-top:30px}
.lead{display:grid;grid-template-columns:1.25fr 1fr;text-decoration:none;margin-bottom:22px}
.lead .th{min-height:340px;overflow:hidden;background:var(--bg-3)}
.lead .th img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.lead:hover .th img{transform:scale(1.04)}
.lead .meta{padding:38px;display:flex;flex-direction:column;justify-content:center}
.lead h2{font-size:clamp(26px,3vw,38px);margin:12px 0}
.lead p{color:var(--ink-2);font-size:16.5px}
.lead .go{margin-top:22px;font-weight:650;color:var(--sea-2)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post{text-decoration:none;display:flex;flex-direction:column}
.post .th{aspect-ratio:3/2;overflow:hidden;background:var(--bg-3)}
.post .th img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.post:hover .th img{transform:scale(1.05)}
.post .meta{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1}
.cat{font:600 11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sea-2)}
.post h3{margin:8px 0;font-size:19px}
.post p{color:var(--ink-3);font-size:14.5px}
.by{display:block;margin-top:auto;padding-top:14px;font-size:13px;color:var(--ink-4);font-weight:560}
.empty{max-width:640px;margin:0 auto;padding:44px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}
.empty h2{font-size:30px}.empty p{color:var(--ink-3)}
@media (max-width:900px){.lead{grid-template-columns:1fr}.lead .th{min-height:220px}.posts{grid-template-columns:1fr}}

/* Article */
.narrow{max-width:740px}
.read-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:70;pointer-events:none}
.read-progress i{display:block;height:100%;width:var(--rp,0%);background:linear-gradient(90deg,var(--sea),var(--sea-3));box-shadow:0 0 12px rgba(95,211,198,.6);transition:width .1s linear}
.a-head{padding:150px 0 46px;text-align:center;background:radial-gradient(900px 420px at 50% -10%,#cfe9f5 0%,transparent 70%),linear-gradient(180deg,#eef7fb 0%,#fff 100%)}
.a-head-in{max-width:880px;display:flex;flex-direction:column;align-items:center}
.back{display:inline-flex;align-items:center;gap:6px;margin-bottom:26px;padding:7px 14px 7px 11px;border-radius:999px;background:rgba(255,255,255,.8);border:1px solid var(--line);font-size:13.5px;font-weight:600;color:var(--ink-2);text-decoration:none;box-shadow:var(--sh-1);transition:background .2s,color .2s,transform .3s var(--ease)}
.back:hover{color:var(--ink);background:#fff;transform:translateX(-2px)}
.a-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:22px}
.a-chip{font-size:12.5px;font-weight:600;color:var(--ink-3);padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid var(--line)}
.a-chip.cat{color:var(--sea-2);background:var(--sea-soft);border-color:rgba(15,139,141,.18);text-transform:uppercase;letter-spacing:.08em;font:700 11.5px var(--mono);padding:6px 11px}
.a-head h1{font-size:clamp(32px,4.2vw,52px);font-weight:740;letter-spacing:-.035em;line-height:1.08;text-wrap:balance}
.a-lede{margin:20px auto 0;max-width:660px;font-size:clamp(17px,1.6vw,19.5px);line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.a-meta{display:flex;align-items:center;gap:12px;margin-top:28px;text-align:left}
.a-meta .av{width:40px;height:40px;border-radius:11px;overflow:hidden;box-shadow:var(--sh-1)}
.a-meta b{display:block;font-size:14.5px}.a-meta small{color:var(--ink-3);font-size:13px}
.a-cover{margin:6px auto 0;max-width:900px;border-radius:24px;overflow:hidden;box-shadow:0 40px 90px -40px rgba(11,40,60,.45),0 0 0 1px var(--line)}
.a-cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.prose{padding-top:52px;font-size:18px;line-height:1.75;color:#24323f}
.prose :where(p,ul,ol,blockquote,pre,table,figure,h2,h3,h4){margin:0}
.prose :where(p,ul,ol,blockquote,pre,table,figure)+:where(p,ul,ol,blockquote,pre,table,figure){margin-top:1.15em}
.prose :where(h2){font-size:clamp(24px,2.6vw,30px);letter-spacing:-.025em;line-height:1.2;color:var(--ink);margin-top:2.1em;margin-bottom:.6em;padding-top:.2em}
.prose :where(h3){font-size:21px;letter-spacing:-.015em;color:var(--ink);margin-top:1.7em;margin-bottom:.5em}
.prose > :first-child, .prose > div > :first-child{margin-top:0}
.prose > p:first-child,.prose > div > p:first-child{font-size:19.5px;color:var(--ink-2)}
.prose a{color:var(--sea-2);text-decoration-thickness:1.5px;text-underline-offset:3px}
.prose strong{color:var(--ink);font-weight:650}
.prose :where(ul,ol){padding-left:1.3em}
.prose li{margin-top:.5em}
.prose li p{margin:0}
.prose li::marker{color:var(--sea)}
.prose code{font-family:var(--mono);font-size:.84em;background:#eef3f7;border:1px solid var(--line);padding:.1em .4em;border-radius:6px;color:#0b3b4a}
.prose pre{background:#0b1726;color:#e6eef6;padding:18px 20px;border-radius:16px;overflow:auto;font-size:14.5px;line-height:1.6;box-shadow:var(--sh-2)}
.prose pre code{background:none;border:0;padding:0;color:inherit}
.prose blockquote{padding:18px 22px;border-left:3px solid var(--sea);background:var(--sea-soft);border-radius:0 16px 16px 0;color:var(--ink-2)}
.prose blockquote p{margin:0}
.prose img{border-radius:16px;box-shadow:var(--sh-2)}
.prose table{width:100%;border-collapse:separate;border-spacing:0;font-size:15.5px;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.prose th,.prose td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.prose tr:last-child td{border-bottom:0}
.prose th{font-weight:650;background:var(--bg-2);color:var(--ink)}
.prose td p,.prose th p{margin:0}
.a-cta{margin:64px 0 0;padding:28px;display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;background:linear-gradient(120deg,var(--sea-soft),#fff 70%)}
.a-cta h3{font-size:19px;margin-bottom:4px}.a-cta p{color:var(--ink-3);font-size:14.5px}
@media (max-width:720px){.a-cta{grid-template-columns:1fr;text-align:left}.a-head{padding-top:120px}.prose{font-size:17px}}
.b-more{padding-top:90px}
.b-more .posts{margin-top:8px}
