/* The capabilities band on "/" (.cx, {% capabilities_band %}) and the page /capabilities/ (.capx), leaktrace/capabilities.py.
   10 Nov 2026 (founder: "everything should borrow from our theme"): both are built from the site's own components
   (the homepage's v5d band, v5-rule, v5-k, v5-h, v5-lede, hp-stat and hp-tl; the inner pages' p12-hero, p12-panel,
   p12-read, p12-cmp, p12-faq and p12-dk). Only layout the theme lacks is here. */

/* the band on "/": the homepage's dark band, then the stat cards three across */
.cx{padding:clamp(48px,5.5vw,80px) 0;}
.cx .v5-h{font-size:clamp(30px,3.6vw,48px);}
.cx .cx-intro{max-width:44em;}
.cx .cx-stats{display:flex;flex-wrap:wrap;gap:24px 52px;margin-top:clamp(28px,3vw,40px);}
.cx .cx-stats b{display:block;font-family:'Chakra Petch','Outfit',sans-serif;font-weight:600;font-size:clamp(36px,4vw,54px);line-height:1;color:#FFFFFF;text-shadow:0 0 26px rgba(255,95,58,0.45);font-variant-numeric:tabular-nums lining-nums;}
.cx .cx-stats b small{font-family:'Outfit',system-ui,sans-serif;font-size:16px;font-weight:500;text-shadow:none;color:#C9CDD4;margin-right:10px;}
.cx .cx-stats span{display:block;max-width:300px;font-size:13px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;line-height:1.45;color:#E6E8EC;margin-top:10px;}
.cx .hp-stats{grid-template-columns:repeat(3,minmax(0,1fr));}
.cx .hp-stat{min-height:0;}
.cx .hp-stat .pre{position:relative;display:block;margin-top:16px;font-size:16px;line-height:1.3;color:#C9CDD4;}
.cx .hp-stat .pre:empty{display:none;}
.cx .hp-stat .pre+b{margin-top:4px;}
.cx .hp-stat .l span{display:block;}
.cx .hp-stat .l span+span{margin-top:8px;}
.cx .cx-foot{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 52px;margin-top:clamp(28px,3vw,40px);}
.cx .cx-foot .cx-stats{margin-top:0;}
.cx .cx-foot .hp-tl{margin-top:0;}
@media(max-width:1000px){.cx .hp-stats{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.cx .hp-stats{grid-template-columns:minmax(0,1fr);}}

/* {% capabilities_line %} on the inner pages */
.cx-line{font-size:16px;line-height:1.6;margin:14px 0 0;max-width:760px;}
.cx-line a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:#C2381A;text-decoration:underline;text-underline-offset:3px;}

/* /capabilities/ */
/* the homepage's container edge (hp-wrap): the same gutter and width, so the text lines up with the nav */
.capx .p12-wrap{max-width:calc(1280px + 2 * var(--lt-gut,26px));padding-left:var(--lt-gut,26px);padding-right:var(--lt-gut,26px);}
.capx .p12-h1 .r{color:#FF5F3A;}
.capx .p12-panel-r{align-items:center;}
.capx .p12-panel-r .k{text-transform:none;letter-spacing:0;}
.capx .capx-n{display:block;font-family:'Chakra Petch','Outfit',sans-serif;font-weight:600;font-size:clamp(30px,3vw,40px);line-height:1.05;color:#0D0E14;}
.capx .capx-n small{display:block;font-family:'Outfit',system-ui,sans-serif;font-size:13px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#49515D;margin-bottom:4px;}
.capx .capx-areas>div>div:first-child{font-weight:400;}
.capx .capx-t{font-size:22px;line-height:1.25;color:#0D0E14;}
.capx .capx-fig{margin-top:14px;}
.capx .capx-fig b{display:block;font-family:'Chakra Petch','Outfit',sans-serif;font-weight:600;font-size:40px;line-height:1;color:#C2381A;}
.capx .capx-fig span{display:block;margin-top:6px;font-size:15px;font-weight:400;line-height:1.45;color:#49515D;}
.capx .capx-areas>div>div:last-child p{margin:0 0 12px;}
.capx .capx-areas dl{margin:18px 0 0;}
.capx .capx-areas dt{font-size:13px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#C2381A;margin-top:14px;}
.capx .capx-areas dt:first-child{margin-top:0;}
.capx .capx-areas dd{margin:4px 0 0;font-size:15px;line-height:1.55;color:#2B2E36;}
.capx .capx-cad td.k{width:38%;}
.capx .capx-cad{max-width:900px;}
.capx .p12-faq .a{margin-bottom:0;}
.capx .capx-further{display:flex;flex-wrap:wrap;gap:0 28px;margin:18px 0 0;}
.capx .capx-stance{margin-top:28px;max-width:640px;}
.capx .p12-read .p12-link{font-size:16px;}
.capx .p12-dk .p12-btns{align-items:center;gap:12px 28px;}

/* band sizing: six cards in two rows must keep the band short */
.cx .hp-stat{padding:20px 24px 18px;}
.cx .hp-stat b{font-size:clamp(38px,3.6vw,50px);margin-top:6px;}
.cx .hp-stat .l{font-size:16px;margin-top:12px;}
@media(min-width:1001px){.cx .hp-stat .k{letter-spacing:0.1em;}}
@media(min-width:1001px) and (max-width:1200px){.cx .hp-stat .k{min-height:2.7em;}}
.cx .hp-stat .l{line-height:1.4;}
.cx .hp-stats{margin-top:clamp(24px,2.6vw,32px);}

/* 10 Nov 2026: the merged band (the homepage's #scale mosaic under the capabilities header). Light band, dark tiles. */
.cx{padding:clamp(48px,5.5vw,80px) 0;}
.cx .pf-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px 48px;align-items:end;}
@media(max-width:900px){.cx .pf-head{grid-template-columns:minmax(0,1fr);}}
.cx .cx-intro{margin:0;max-width:40em;}
.cx .cx-label{margin-top:30px;font-size:13px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#49515D;}
.cx .cx-counters{margin-top:14px;}
.cx .cx-counters .v5-card{min-height:0;padding:26px 28px 24px;}
.cx .cx-counters .v5-card p{margin-top:0;padding-top:12px;}
.cx .hp-tile .cap b em{font-style:normal;font-family:'Outfit',system-ui,sans-serif;font-size:.36em;font-weight:500;color:#C9CDD4;margin-right:8px;letter-spacing:0;}
.cx .hp-tile.num{display:flex;flex-direction:column;padding:28px;background:radial-gradient(300px 220px at 100% 0%,rgba(255,72,36,0.28),transparent 70%),linear-gradient(180deg,#15161B 45%,#2A1512);}
.cx .hp-tile.num .k{font-family:'Chakra Petch','Outfit',sans-serif;font-weight:600;font-size:13px;letter-spacing:0.28em;color:#FFFFFF;text-transform:uppercase;}
.cx .hp-tile.num .cap b{color:#FFFFFF;}
.cx .hp-tile.waves{background:linear-gradient(180deg,#7A2A1C,#2A1512 70%);}
.cx .cx-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:26px;font-size:15px;font-weight:600;color:#0D0E14;text-decoration:underline;text-decoration-color:var(--a);text-decoration-thickness:2px;text-underline-offset:6px;}
@media(max-width:560px){.cx .hp-tile.num{min-height:260px;padding:22px;}}

/* the "Who it is for" band's list of every other line of work: plain links under group labels (leaktrace/home_lines.py) */
.hl-all{margin-top:clamp(36px,4vw,56px);padding-top:28px;border-top:1px solid rgba(13,14,20,0.14);}
.hl-all .hl-h{font-family:'Chakra Petch','Outfit',sans-serif;font-size:clamp(20px,2vw,26px);font-weight:600;color:#0D0E14;margin:0;}
.hl-cols{margin-top:22px;columns:4;column-gap:36px;}
@media(max-width:1179px){.hl-cols{columns:3;}}
@media(max-width:860px){.hl-cols{columns:2;}}
@media(max-width:560px){.hl-cols{columns:1;}}
.hl-g{break-inside:avoid;margin:0 0 26px;}
.hl-g h4{font-size:13px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:#B23A1D;margin:0 0 8px;}
.hl-g ul{list-style:none;margin:0;padding:0;}
.hl-g li a{display:flex;align-items:center;min-height:32px;font-size:16px;line-height:1.35;color:#1B1D24;text-decoration:underline;text-decoration-color:rgba(13,14,20,0.25);text-underline-offset:4px;}
.hl-g li a:hover{text-decoration-color:var(--a);}
.hl-all .hl-hub{display:inline-flex;margin-top:24px;color:#0D0E14;}
.cx .hp-tile.disc{min-height:390px;}
@media(max-width:760px){.hl-g li a{min-height:44px;}}
