/* Clearpath: theme layer on top of the Clearpath foundation. CSS only. */
:root{ --clearpath-ui: var(--wp--custom--font-ui, system-ui, sans-serif); --clearpath-hw: var(--wp--custom--heading-weight, 600); --clearpath-r: var(--wp--custom--radius--base, 6px); --clearpath-card: var(--clrp-surface-2); }
@supports (color: color-mix(in srgb, red, blue)) { :root{ --clearpath-card: color-mix(in srgb, var(--clrp-ink) 4%, var(--clrp-surface)); } }
.clearpath-label, .is-style-label, .clearpath-label a{ font-family:var(--clearpath-ui); font-size:.72rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--clrp-ink-soft); text-decoration:none; margin:0; }
.clearpath-pill{ display:inline-flex; align-items:center; margin:0; padding:.36rem .6rem; border-radius:999px; background:var(--clrp-accent-soft); color:var(--clrp-accent-ink); font-family:var(--clearpath-ui); font-size:.68rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; line-height:1; }
.clearpath-deck, .is-style-deck, .clearpath-lede{ font-size:var(--wp--preset--font-size--medium); color:var(--clrp-ink-soft); line-height:1.5; }
.clearpath-soft{ color:var(--clrp-ink-soft); }
.wp-block-post-terms, .wp-block-post-date, .wp-block-post-author-name, .wp-block-query-pagination, .wp-block-categories, .wp-block-navigation{ font-family:var(--clearpath-ui); }
.clearpath-meta{ gap:.45rem .8rem; margin-bottom:.4rem; font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); }
.clearpath-meta > *{ margin:0; }
.clearpath-meta a{ color:var(--clrp-ink-soft); }
.clearpath-reading, .clearpath-count{ font-family:var(--clearpath-ui); }
.clearpath-updated-label{ margin-right:.15em; }
/* Header */
.clearpath-header{ border-bottom:1px solid var(--clrp-line); }
.clearpath-header-row{ gap:var(--wp--preset--spacing--30); }
.clearpath-header .wp-block-site-title{ font-family:var(--wp--custom--font-display); font-weight:var(--clearpath-hw); font-size:var(--wp--preset--font-size--medium); letter-spacing:-.01em; margin:0; }
.clearpath-header .wp-block-site-title a{ color:var(--clrp-ink); text-decoration:none; }
.clearpath-header-actions{ gap:var(--wp--preset--spacing--40); }
.clearpath-header .wp-block-navigation{ font-size:var(--wp--preset--font-size--small); }
.clearpath-header .wp-block-navigation a{ color:var(--clrp-ink-soft); text-decoration:none; }
.clearpath-header .wp-block-navigation a:hover{ color:var(--clrp-ink); }
.wp-block-navigation__responsive-container.is-menu-open{ padding:var(--wp--preset--spacing--50) var(--wp--preset--spacing--40); background:var(--clrp-surface); color:var(--clrp-ink); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{ font-size:var(--wp--preset--font-size--large); padding-block:.35em; color:var(--clrp-ink); }
@media (max-width:600px){ .clearpath-header .clearpath-header-cta{ display:none; } }
/* Sections */
.clearpath-section{ margin-top:var(--wp--preset--spacing--70); }
.clearpath-sec-head{ margin-bottom:var(--wp--preset--spacing--40); gap:var(--wp--preset--spacing--30); }
.clearpath-sec-head h2{ margin:0; }
.clearpath-sec-link{ margin:0; font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); }
.clearpath-sec-link a{ color:var(--clrp-accent-ink); }
.clearpath-cards.is-layout-grid, .clearpath-pillar-grid.is-layout-grid{ grid-template-columns:repeat(auto-fit, minmax(min(15rem, 100%), 1fr)); }
.clearpath-cards, .clearpath-pillar-grid{ gap:var(--wp--preset--spacing--30); }
.clearpath-card{ height:100%; padding:var(--wp--preset--spacing--40); border:1px solid var(--clrp-line); border-radius:var(--clearpath-r); background:var(--clrp-surface); }
.clearpath-card:hover{ border-color:var(--clrp-accent); }
.clearpath-card .clearpath-card-title{ font-size:var(--wp--preset--font-size--medium); line-height:1.25; margin:.55em 0 .3em; }
.clearpath-card .clearpath-card-title a{ color:var(--clrp-ink); text-decoration:none; }
.clearpath-card .wp-block-post-excerpt{ color:var(--clrp-ink-soft); font-size:var(--wp--preset--font-size--small); margin:0; }
.clearpath-card .wp-block-post-excerpt__excerpt, .clearpath-pillar-card .wp-block-post-excerpt__excerpt, .clearpath-pillar-item .wp-block-post-excerpt__excerpt{ margin:0; }
.clearpath-pillar-card{ height:100%; padding:var(--wp--preset--spacing--40); background:var(--clearpath-card); border-top:3px solid var(--clrp-accent); border-radius:0 0 var(--clearpath-r) var(--clearpath-r); }
.clearpath-pillar-card .wp-block-post-title{ font-size:var(--wp--preset--font-size--large); margin:.3em 0; }
.clearpath-pillar-card .wp-block-post-title a{ color:var(--clrp-ink); text-decoration:none; }
.clearpath-pillar-card .wp-block-post-excerpt{ font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); margin:0; }
.clearpath-count{ font-size:.8rem; font-weight:600; color:var(--clrp-accent-ink); margin:.8em 0 0; }
.clearpath-list{ list-style:none; padding:0; margin:0; }
.clearpath-list > li{ border-top:1px solid var(--clrp-line); padding-block:var(--wp--preset--spacing--30); margin:0; }
.clearpath-list > li:last-child{ border-bottom:1px solid var(--clrp-line); }
.clearpath-list-title{ font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--base); font-weight:600; line-height:1.35; margin:0; }
.clearpath-list-title a{ color:var(--clrp-ink); text-decoration:none; }
.clearpath-list-title a:hover{ text-decoration:underline; }
.clearpath-list-meta{ gap:.3rem .9rem; margin-top:.25rem; font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); }
.clearpath-list-meta > *{ margin:0; }
.clearpath-list-meta a{ color:inherit; }
/* Article */
.clearpath-article-head .wp-block-post-title{ margin:.25em 0 .3em; }
.clearpath-byline{ gap:.2rem .6rem; margin-top:var(--wp--preset--spacing--40); font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); }
.clearpath-byline > *{ margin:0; }
.clearpath-byline a{ color:var(--clrp-ink); font-weight:600; text-decoration:none; }
.clearpath-byline .wp-block-post-author-name::after{ content:"·"; margin-left:.6rem; color:var(--clrp-ink-soft); }
.clearpath-body{ font-size:calc(var(--wp--preset--font-size--base) * 1.05); line-height:1.75; }
.clearpath-body h2{ margin-top:1.8em; }
.clrp-takeaways, .clearpath-takeaways{ padding:var(--wp--preset--spacing--40); background:var(--clrp-accent-soft); border-radius:var(--clearpath-r); }
.clrp-takeaways > :first-child{ color:var(--clrp-ink); }
.wp-block-quote.is-style-pull{ border:0; padding:0; margin-block:var(--wp--preset--spacing--50); font-family:var(--wp--custom--font-display); font-weight:var(--clearpath-hw); font-size:var(--wp--preset--font-size--x-large); line-height:1.3; color:var(--clrp-accent-ink); }
.wp-block-quote cite{ display:block; font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); font-style:normal; color:var(--clrp-ink-soft); }
.clearpath-part-of{ gap:.6rem; padding-block:var(--wp--preset--spacing--30); border-block:1px solid var(--clrp-line); }
.clearpath-part-of .wp-block-post-terms a{ color:var(--clrp-ink); font-weight:600; }
.clearpath-siblings{ list-style:none; padding:0; margin:var(--wp--preset--spacing--20) 0 0; }
.clearpath-siblings > li{ margin:0; border-top:1px solid var(--clrp-line); }
.clearpath-sibling{ font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--base); margin:0; }
.clearpath-sibling a{ display:block; padding-block:.7rem; color:var(--clrp-ink); text-decoration:underline; text-decoration-color:var(--clrp-line); line-height:1.35; }
.clearpath-author-card{ gap:var(--wp--preset--spacing--30); padding-block:var(--wp--preset--spacing--40); border-block:1px solid var(--clrp-line); }
.clearpath-author-card .wp-block-avatar img{ border-radius:50%; }
.clearpath-author-card .wp-block-post-author-name{ font-weight:600; }
.clearpath-author-card .wp-block-post-author-biography{ font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); }
.wp-block-details{ border-top:1px solid var(--clrp-line); padding-block:.8rem; }
.wp-block-details summary{ font-weight:600; cursor:pointer; min-height:28px; }
/* Pillar */
.clearpath-pillar-meta{ gap:.3rem .9rem; font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); }
.clearpath-pillar-meta > *{ margin:0; }
.clearpath-pillar-meta .clearpath-count{ font-size:inherit; margin:0; }
.clearpath-pillar-list{ list-style:none; padding:0; counter-reset:clearpath-p; }
.clearpath-pillar-list > li{ margin:0; counter-increment:clearpath-p; display:grid; grid-template-columns:2.6rem 1fr; padding-block:var(--wp--preset--spacing--30); border-top:1px solid var(--clrp-line); }
.clearpath-pillar-list > li::before{ content:counter(clearpath-p, decimal-leading-zero); font-family:var(--clearpath-ui); font-weight:700; color:var(--clrp-accent-ink); }
.clearpath-pillar-item .wp-block-post-title{ font-size:var(--wp--preset--font-size--medium); margin:0 0 .2em; }
.clearpath-pillar-item .wp-block-post-title a{ color:var(--clrp-ink); text-decoration:none; }
.clearpath-pillar-item .wp-block-post-excerpt{ color:var(--clrp-ink-soft); font-size:var(--wp--preset--font-size--small); margin:0; }
/* Newsletter */
.clearpath-newsletter{ margin-top:var(--wp--preset--spacing--70); background:var(--clrp-accent-soft); border-radius:var(--clearpath-r); padding:var(--wp--preset--spacing--60) var(--wp--preset--spacing--50); }
.clearpath-newsletter-inner{ align-items:center; gap:var(--wp--preset--spacing--40); }
.clearpath-newsletter h2{ margin:.25em 0 .3em; }
.clearpath-newsletter .clearpath-soft{ margin:0; color:var(--clrp-ink); }
.clearpath-newsletter .clearpath-label{ color:var(--clrp-ink); }
.clearpath-newsletter .clearpath-core-subscribe, .clearpath-newsletter form{ display:flex; flex-wrap:wrap; gap:.5rem; }
.clearpath-newsletter input[type="email"]{ flex:1 1 13rem; padding:.5rem .8rem; font:inherit; min-height:44px; }
.wp-block-group.is-style-panel{ padding:var(--wp--preset--spacing--40); border:1px solid var(--clrp-line); border-radius:var(--clearpath-r); }
.wp-block-group.is-style-band{ padding:var(--wp--preset--spacing--50); background:var(--clrp-accent-soft); border-radius:var(--clearpath-r); }
.clearpath-topics-list{ list-style:none; padding:0; margin:var(--wp--preset--spacing--30) 0 0; display:flex; flex-wrap:wrap; gap:.5rem; }
.clearpath-topics-list li a{ display:inline-flex; align-items:center; min-height:44px; padding:0 .9rem; border:1px solid var(--clrp-line); border-radius:999px; color:var(--clrp-ink); text-decoration:none; font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); }
.clearpath-chips{ gap:.5rem; }
.clearpath-chips .wp-block-button__link{ border-radius:999px; min-height:44px; display:inline-flex; align-items:center; padding:.4rem 1rem; font-size:var(--wp--preset--font-size--small); }
/* Footer */
.clearpath-footer{ border-top:1px solid var(--clrp-line); color:var(--clrp-ink-soft); font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); }
.clearpath-footer .wp-block-site-title{ font-family:var(--wp--custom--font-display); font-weight:var(--clearpath-hw); font-size:var(--wp--preset--font-size--medium); color:var(--clrp-ink); margin:0; }
.clearpath-footer-tagline{ margin:.3em 0 0; max-width:28rem; }
.clearpath-footer-nav a{ color:var(--clrp-ink-soft); text-decoration:none; }
.clearpath-footer-nav a:hover{ color:var(--clrp-ink); }
.clearpath-footer-nav .wp-block-navigation-item__content{ min-height:44px; display:inline-flex; align-items:center; }
.clearpath-credit{ margin:var(--wp--preset--spacing--40) 0 0; }
.clearpath-credit a{ color:inherit; }
.wp-block-search__input{ min-height:44px; }
/* Dark mode: the primary button stays light and strong whatever the brand colour. */
:root{ --clearpath-btn-dark: var(--clrp-ink); }
@supports (color: oklch(from red l c h)) {
  :root{ --clearpath-btn-dark: oklch(from var(--clrp-brand) max(l, calc(0.7 + 0.24 * (1 - min(c / 0.06, 1)))) min(c, 0.16) h); }
}
@media (prefers-color-scheme: dark) {
  html:not(.clrp-no-dark):not([data-theme="light"]) .wp-block-button:not(.is-style-outline):not(.is-style-text) > .wp-block-button__link,
  html:not(.clrp-no-dark):not([data-theme="light"]) .clearpath-core-subscribe button{ background-color:var(--clearpath-btn-dark); color:var(--clrp-surface); }
}
html[data-theme="dark"] .wp-block-button:not(.is-style-outline):not(.is-style-text) > .wp-block-button__link,
html[data-theme="dark"] .clearpath-core-subscribe button{ background-color:var(--clearpath-btn-dark); color:var(--clrp-surface); }
@media print{ .clearpath-newsletter, .clearpath-header-actions{ display:none !important; } }



/* Filters */
.clearpath-filters{ display:grid; gap:.6rem; margin-block:var(--wp--preset--spacing--40); font-family:var(--clearpath-ui); }
.clearpath-filter-row{ display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; }
.clearpath-filter-label{ min-width:4.5rem; font-size:.72rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--clrp-ink-soft); }
.clearpath-chip{ display:inline-flex; align-items:center; min-height:40px; padding:0 .85rem; border:1px solid var(--clrp-line); border-radius:999px; color:var(--clrp-ink); text-decoration:none; font-size:var(--wp--preset--font-size--small); }
.clearpath-chip:hover{ border-color:var(--clrp-accent); }
.clearpath-chip.is-on{ background:var(--clrp-ink); border-color:var(--clrp-ink); color:var(--clrp-surface); }
:root{ --clearpath-mono: var(--wp--preset--font-family--jetbrains-mono, ui-monospace, SFMono-Regular, Menlo, monospace); }
code, pre, .wp-block-code{ font-family:var(--clearpath-mono); }
.wp-block-code{ background:color-mix(in srgb, var(--clrp-accent) 7%, #121417); color:#E6EAEE; border:1px solid var(--clrp-line); border-radius:var(--clearpath-r); padding:1rem 1.1rem; overflow-x:auto; font-size:.86rem; line-height:1.6; }
.wp-block-code code{ background:none; color:inherit; padding:0; }
:not(pre) > code{ background:var(--clearpath-card); padding:.1em .35em; border-radius:4px; font-size:.9em; }
.clearpath-bars{ display:inline-flex; gap:3px; margin-right:.35rem; vertical-align:-1px; }
.clearpath-bars i{ width:7px; height:12px; border-radius:2px; background:var(--clrp-line); }
.clearpath-l1 i:nth-child(-n+1), .clearpath-l2 i:nth-child(-n+2), .clearpath-l3 i:nth-child(-n+3){ background:var(--clrp-accent); }
.clearpath-level{ font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); margin:0; }
.clearpath-hero{ padding-block:var(--wp--preset--spacing--60) var(--wp--preset--spacing--50); border-bottom:1px solid var(--clrp-line); }
.clearpath-hero h1{ font-size:var(--wp--preset--font-size--display); max-width:18ch; margin:.3em 0 .3em; }
.clearpath-track{ display:flex; gap:4px; margin:1rem 0 0; }
.clearpath-track span{ flex:1; height:6px; border-radius:3px; background:color-mix(in srgb, var(--clrp-accent) 40%, var(--clrp-surface)); }
.clearpath-card .clearpath-meta{ margin-top:.6rem; }
/* Guide */
.clearpath-cols{ gap:var(--wp--preset--spacing--60) !important; margin-top:var(--wp--preset--spacing--40); }
.clearpath-main{ min-width:0; }
.clearpath-main > *{ max-width:44rem; }
@media (max-width:781px){ .clearpath-aside{ display:none; } }
@media (min-width:782px){ .clearpath-aside{ position:sticky; top:var(--wp--preset--spacing--40); align-self:flex-start; } }
.clearpath-toc{ font-family:var(--clearpath-ui); font-size:.92rem; }
.clearpath-toc ol{ list-style:none; padding:0; margin:.6rem 0 0; border-left:2px solid var(--clrp-line); }
.clearpath-toc li{ padding:.35rem 0 .35rem .9rem; margin-left:-2px; border-left:2px solid transparent; }
.clearpath-toc li:hover{ border-color:var(--clrp-accent); }
.clearpath-toc a{ color:var(--clrp-ink-soft); text-decoration:none; }
.clearpath-toc a:hover{ color:var(--clrp-accent-ink); }
.clearpath-position{ font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); margin:0 0 .6rem; }
.clearpath-tested{ gap:.4rem 1rem; padding:.6rem .9rem; border:1px dashed var(--clrp-line); border-radius:var(--clearpath-r); font-family:var(--clearpath-ui); font-size:var(--wp--preset--font-size--small); color:var(--clrp-ink-soft); margin-block:var(--wp--preset--spacing--40); }
.clearpath-tested > *{ margin:0; }
.clearpath-tested strong{ color:var(--clrp-ink); }
.clearpath-before{ gap:var(--wp--preset--spacing--30); padding:var(--wp--preset--spacing--40); border:1px solid var(--clrp-line); border-radius:var(--clearpath-r); background:var(--clearpath-card); margin-block:var(--wp--preset--spacing--40); }
.clearpath-before h3{ font-size:1rem; margin:0 0 .3rem; }
.clearpath-before p{ margin:0; font-size:.95rem; }
.clearpath-body{ counter-reset:clearpath-step; }
.clearpath-step{ counter-increment:clearpath-step; position:relative; padding-left:3.4rem; margin-block:var(--wp--preset--spacing--50); }
.clearpath-step::before{ content:counter(clearpath-step); position:absolute; left:0; top:.15rem; width:2.4rem; height:2.4rem; border-radius:var(--clearpath-r); display:grid; place-items:center; background:var(--clrp-accent); color:var(--clrp-on-accent); font-family:var(--clearpath-ui); font-weight:700; }
.clearpath-step > h2:first-child{ margin-top:0; font-size:var(--wp--preset--font-size--large); }
.clearpath-callout{ border-left:3px solid var(--clrp-accent); background:var(--clrp-accent-soft); padding:.8rem 1rem; border-radius:0 var(--clearpath-r) var(--clearpath-r) 0; margin-block:var(--wp--preset--spacing--30); font-size:.95rem; }
.clearpath-callout > *{ margin:0; }
.clearpath-pager{ display:grid; grid-template-columns:1fr 1fr; gap:var(--wp--preset--spacing--30); margin-top:var(--wp--preset--spacing--60); }
.clearpath-pager a{ display:block; padding:var(--wp--preset--spacing--30); border:1px solid var(--clrp-line); border-radius:var(--clearpath-r); color:var(--clrp-ink); text-decoration:none; font-family:var(--clearpath-ui); }
.clearpath-pager a:hover{ border-color:var(--clrp-accent); }
.clearpath-pager a[rel="next"]{ text-align:right; grid-column:2; }
.clearpath-pager span{ display:block; font-size:.8rem; color:var(--clrp-ink-soft); }
/* Path */
.clearpath-pillar-head .clrp-breadcrumbs, .clearpath-pillar-head nav[aria-label]{ margin-bottom:var(--wp--preset--spacing--30); }
.clearpath-path-list .clearpath-pillar-item .clearpath-level{ margin-top:.25rem; }
.clearpath-levels{ gap:.5rem; margin-top:var(--wp--preset--spacing--30); }
