/* =====================================================================
   Blog (index, category pages, posts) in the Signal design. Uses the Signal tokens (--sig-*).
   Loaded only on blog pages (body.cts-blog). Layout comes from Bricks content; see cts-blog.php.
   ===================================================================== */

/* the older blog rules boxed the whole page; the new layouts are full-width sections */
body.cts-blog #brx-content{max-width:none!important;margin:0!important;padding:0!important;line-height:inherit}
body.cts-blog #brx-content a{text-decoration:none}
body.cts-blog #brx-content article.sig-b-card{padding:0;border-radius:var(--sig-r-lg)}
body.cts-blog #brx-content .sig-cta .sig-h2{color:var(--sig-white)}

/* ---------- category row ---------- */
.sig-b-cats{display:flex;flex-wrap:wrap;gap:10px}
.sig-b-cats a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:var(--sig-r-pill);border:1px solid var(--sig-line);background:var(--sig-white);color:var(--sig-muted)!important;font-weight:600;font-size:var(--sig-text-lg);transition:background .15s,border-color .15s,color .15s}
.sig-b-cats a:hover{border-color:var(--sig-tint-line);color:var(--sig-blue)!important}
.sig-b-cats a.is-on{background:var(--sig-navy);border-color:var(--sig-navy);color:var(--sig-white)!important}
.sig-b-cats a:focus-visible,.sig-b-card a:focus-visible,.sig-b-pages a:focus-visible{outline:3px solid var(--sig-sky);outline-offset:2px}

/* ---------- cards ---------- */
.sig-b-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:100%}
.sig-b-card{position:relative;display:flex;flex-direction:column;background:var(--sig-white);border:1px solid var(--sig-line);border-radius:var(--sig-r-lg);overflow:hidden;transition:box-shadow .2s,transform .2s,border-color .2s}
.sig-b-card:hover{border-color:var(--sig-tint-line);box-shadow:var(--sig-shadow-md);transform:translateY(-3px)}
.sig-b-card-pic{display:block}
.sig-b-cover{display:block;aspect-ratio:16/8;overflow:hidden;background:var(--sig-soft)}
.sig-b-cover img{width:100%;height:100%;object-fit:cover;display:block}
.sig-b-cover--made{position:relative;display:flex;align-items:center;justify-content:center;background:var(--c);background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),radial-gradient(circle at 85% 10%,rgba(255,255,255,.28),transparent 55%);background-size:32px 32px,32px 32px,100% 100%}
.sig-b-cover--made .sig-ico{width:64px;height:64px;border-radius:var(--sig-r-lg);background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35);color:var(--sig-white)}
.sig-b-cover--made .sig-ico svg{width:34px;height:34px}
.sig-b-card-body{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 24px 24px;flex:1}
.sig-b-cat{position:relative;z-index:2;display:inline-block;font-size:var(--sig-text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sig-blue)!important}
.sig-b-cat:hover{text-decoration:underline!important}
.sig-b-card-title{margin:0!important;font-family:var(--sig-display)!important;font-weight:700!important;font-size:var(--sig-text-h3)!important;line-height:1.2!important;letter-spacing:-.01em;color:var(--sig-ink)}
.sig-b-card-title a{color:inherit!important}
.sig-b-card-title a::after{content:"";position:absolute;inset:0;z-index:1}  /* the whole card is the link */
.sig-b-card:hover .sig-b-card-title a{color:var(--sig-blue)!important}
.sig-b-card-text{margin:0!important;font-size:var(--sig-text-body-sm);line-height:1.55;color:var(--sig-muted)}
.sig-b-meta{margin:auto 0 0!important;padding-top:6px;font-size:var(--sig-text-md);color:var(--sig-faint)}

/* newest post leads the index: picture left, text right, full width */
.sig-b-card--lead{grid-column:1/-1;flex-direction:row}
.sig-b-card--lead .sig-b-card-pic{flex:0 0 46%}
.sig-b-card--lead .sig-b-cover{height:100%;aspect-ratio:auto;min-height:300px}
.sig-b-card--lead .sig-b-cover--made .sig-ico{width:88px;height:88px;border-radius:var(--sig-r-xl)}
.sig-b-card--lead .sig-b-cover--made .sig-ico svg{width:46px;height:46px}
.sig-b-card--lead .sig-b-card-body{justify-content:center;padding:36px 40px;gap:14px}
.sig-b-card--lead .sig-b-card-title{font-size:clamp(26px,2.6vw,36px)!important;line-height:1.1!important}
.sig-b-card--lead .sig-b-card-text{font-size:var(--sig-text-body-lg)}
.sig-b-card--lead .sig-b-meta{margin-top:0!important}

/* ---------- page links ---------- */
.sig-b-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}
.sig-b-pages .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border-radius:var(--sig-r-md);border:1px solid var(--sig-line);background:var(--sig-white);color:var(--sig-ink)!important;font-weight:600;box-sizing:border-box}
.sig-b-pages .page-numbers.current{background:var(--sig-navy);border-color:var(--sig-navy);color:var(--sig-white)!important}
.sig-b-pages a.page-numbers:hover{border-color:var(--sig-tint-line);color:var(--sig-blue)!important}

/* ---------- category page title links back to the blog ---------- */
.sig-hero .sig-eyebrow a{color:inherit!important}
.sig-hero .sig-eyebrow a:hover{text-decoration:underline!important}

/* ---------- post ---------- */
.sig-post-head{background:var(--sig-soft);border-bottom:1px solid var(--sig-line);padding:clamp(40px,5vw,64px) 24px clamp(36px,4vw,52px)}
.sig-post-wrap{max-width:820px!important;gap:16px!important}
.sig-b-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0;font-size:var(--sig-text-lg);color:var(--sig-faint)}
.sig-post-title{font-family:var(--sig-display)!important;font-weight:800!important;font-size:var(--sig-size-title)!important;line-height:1.1!important;letter-spacing:-.02em;margin:0!important;color:var(--sig-ink);text-wrap:balance}
.sig-b-hero-pic{margin:12px 0 0;border-radius:var(--sig-r-lg);overflow:hidden}
.sig-b-hero-pic img{display:block;width:100%;height:auto}
.sig-post-body{padding-top:clamp(36px,4vw,56px)!important;padding-bottom:clamp(40px,5vw,72px)!important}
.sig-post-body .brxe-post-content{width:100%;font-size:var(--sig-text-body-lg);line-height:1.7;color:var(--sig-muted)}
.sig-post-body .brxe-post-content>*{margin-top:0;margin-bottom:1.1em}
.sig-post-body .brxe-post-content h2{font-family:var(--sig-display);font-weight:700;font-size:clamp(24px,2.6vw,30px);line-height:1.2;letter-spacing:-.01em;color:var(--sig-ink);margin:1.8em 0 .5em}
.sig-post-body .brxe-post-content h3{font-family:var(--sig-font);font-weight:700;font-size:var(--sig-text-h3);line-height:1.3;color:var(--sig-ink);margin:1.5em 0 .4em}
.sig-post-body .brxe-post-content a{color:var(--sig-blue);font-weight:600;text-decoration:underline!important;text-underline-offset:3px}
.sig-post-body .brxe-post-content ul,.sig-post-body .brxe-post-content ol{padding-left:1.3em}
.sig-post-body .brxe-post-content li{margin:.4em 0}
.sig-post-body .brxe-post-content blockquote{margin:1.6em 0;padding:18px 22px;border-left:4px solid var(--sig-blue);background:var(--sig-soft);border-radius:0 var(--sig-r-md) var(--sig-r-md) 0;color:var(--sig-ink)}
.sig-post-body .brxe-post-content blockquote p:last-child{margin-bottom:0}
.sig-post-body .brxe-post-content table{width:100%;border-collapse:collapse;font-size:var(--sig-text-body-sm)}
.sig-post-body .brxe-post-content th{text-align:left;padding:12px 10px;border-bottom:2px solid var(--sig-ink);color:var(--sig-ink)}
.sig-post-body .brxe-post-content td{padding:12px 10px;border-bottom:1px solid var(--sig-line)}
.sig-post-body .brxe-post-content img{max-width:100%;height:auto;border-radius:var(--sig-r-md)}
.sig-post-more .sig-more a{color:var(--sig-blue)!important;font-weight:600}

@media (max-width:1000px){
	.sig-b-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.sig-b-grid--3>:nth-child(3){display:none}
}
@media (max-width:700px){
	.sig-b-grid{grid-template-columns:minmax(0,1fr);gap:18px}
	.sig-b-grid--3>:nth-child(3){display:flex}
	.sig-b-card--lead{flex-direction:column}
	.sig-b-card--lead .sig-b-cover{min-height:0;aspect-ratio:16/8}
	.sig-b-card--lead .sig-b-card-body{padding:22px 24px 24px}
	.sig-b-cats{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:2px 16px 8px;scrollbar-width:none}
	.sig-b-cats a{flex:none}
	.sig-post-head{padding-left:16px;padding-right:16px}
	.sig-post-body .brxe-post-content{font-size:var(--sig-text-body)}
}
@media (prefers-reduced-motion:reduce){
	.sig-b-card{transition:none}
	.sig-b-card:hover{transform:none}
}

/* icon tile (same as the marketing pages' .sig-ico, which is not loaded on blog pages) */
.sig-ico{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--sig-r-lg);background:var(--sig-tint);border:1px solid var(--sig-tint-line);color:var(--sig-blue)}
.sig-ico svg{width:30px;height:30px;display:block}
