/* P43 · internal page grammar */
.p43{--g:clamp(20px,4.4vw,64px);--rule:rgba(255,255,255,.1);--dim:rgba(255,255,255,.66);--ac:var(--lime)}
.p43 .w{max-width:1440px;margin:0 auto;padding:0 var(--g);box-sizing:border-box}
.p43 .g{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.p43 .sec{padding:128px 0;position:relative}
.p43 .dark{background:#0B0B0D;color:#fff}
.p43 .smoke{background:#141414;color:#fff}
.p43 .white{background:#fff;color:#111;--rule:rgba(17,17,17,.1);--dim:rgba(17,17,17,.62)}
.p43 .near{background:#FAFAFA;color:#111;--rule:rgba(17,17,17,.1);--dim:rgba(17,17,17,.62)}
/* type roles */
.p43 .crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 22px;font-size:13px;font-weight:500;color:var(--dim)}
.p43 .crumb a{color:inherit;text-decoration:none}.p43 .crumb a:hover{color:currentColor;text-decoration:underline;text-underline-offset:3px}
.p43 .crumb i{font-style:normal;opacity:.5}
.p43 .crumb .fam{width:7px;height:7px;border-radius:50%;background:var(--ac);display:inline-block}
.p43 h1.disp{margin:0;font:600 clamp(44px,7vw,112px)/.92 var(--sans);letter-spacing:-.045em}
.p43 h1.disp i,.p43 h2.h i{font-style:normal;color:var(--ac)}
.p43 .ans{margin:0;font-size:clamp(17px,1.35vw,20px);line-height:1.5;max-width:44ch;color:var(--dim)}
.p43 .ans strong{color:currentColor;font-weight:600}
.p43 .dark .ans strong,.p43 .smoke .ans strong{color:#fff}
.p43 .white .ans strong{color:#111}
.p43 .acts2{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.p43 h2.h{margin:0;font:600 clamp(32px,3.8vw,56px)/1.02 var(--sans);letter-spacing:-.035em}
.p43 .lead{margin:18px 0 0;font-size:clamp(17px,1.35vw,20px);line-height:1.5;max-width:44ch;color:var(--dim)}
.p43 h3.oh{margin:0;font-size:clamp(18px,1.5vw,22px);font-weight:600;letter-spacing:-.01em;line-height:1.25}
.p43 .src{font-family:var(--mono);font-size:11.5px;line-height:1.55;color:var(--dim);opacity:.85}
.p43 .meta{font-size:13px;font-weight:500;color:var(--dim)}
.p43 .ghostL{color:inherit}
/* definition rows: what it is / what we make */
.p43 .defs{margin:0;padding:0;border-bottom:1px solid var(--rule)}
.p43 .defs>div{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);column-gap:24px;row-gap:6px;padding:22px 0;border-top:1px solid var(--rule)}
.p43 .defs dt{font-size:clamp(18px,1.5vw,21px);font-weight:600;letter-spacing:-.01em;line-height:1.3}
.p43 .defs dt a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.p43 .defs dt a .ar-i{width:13px;height:13px;color:var(--ac)}
.p43 .defs dt a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--ac)}
.p43 .defs dd{margin:0;font-size:16px;line-height:1.55;color:var(--dim);max-width:62ch}
.p43 .defs dd.ex{grid-column:2;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13.5px;font-weight:500}
.p43 .defs dd.ex button,.p43 .defs dd.ex a{all:unset;cursor:pointer;color:currentColor;opacity:.9;border-bottom:1px solid var(--rule);padding-bottom:1px}
.p43 .dark .defs dd.ex button,.p43 .smoke .defs dd.ex button{color:#fff}
.p43 .defs dd.ex button:hover,.p43 .defs dd.ex button:focus-visible{border-bottom-color:var(--ac)}
/* related capabilities: same row grammar as the Home acts */
.p43 .rel{margin-top:40px;border-bottom:1px solid var(--rule)}
.p43 .rel a{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr) auto;column-gap:24px;align-items:center;min-height:68px;padding:12px 0;border-top:1px solid var(--rule);color:inherit;text-decoration:none}
.p43 .rel b{display:flex;align-items:center;gap:10px;font-size:18.5px;font-weight:600;letter-spacing:-.01em}
.p43 .rel b .d{width:7px;height:7px;border-radius:50%;flex:none}
.p43 .rel span{font-size:15px;color:var(--dim)}
.p43 .rel .ar-i{width:15px;height:15px;opacity:.5;transition:transform .2s var(--ease),opacity .2s}
.p43 .rel a:hover .ar-i,.p43 .rel a:focus-visible .ar-i{opacity:1;transform:translateX(3px)}
.p43 .rel a:hover b{text-decoration:underline;text-underline-offset:4px}
/* FAQ: heading 1 to 4, questions 5 to 12, answers in the HTML */
.p43 .faqH{grid-column:1/5}
.p43 .faqL{grid-column:5/13;border-bottom:1px solid var(--rule)}
.p43 .faqL details{border-top:1px solid var(--rule)}
.p43 .faqL summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:14px 0;font-size:clamp(17px,1.4vw,20px);font-weight:600;letter-spacing:-.01em}
.p43 .faqL summary::-webkit-details-marker{display:none}
.p43 .faqL summary::after{content:"";flex:none;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-3px,-3px);opacity:.55;transition:transform .25s var(--ease)}
.p43 .faqL details[open] summary::after{transform:rotate(225deg) translate(-3px,-3px)}
.p43 .faqL details p{margin:0 0 24px;max-width:68ch;font-size:16px;line-height:1.6;color:var(--dim)}
.p43 .faqL details p a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.p43 .faqL summary:focus-visible,.p43 .rel a:focus-visible,.p43 button:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
/* evidence chips (prototype only: production renders nothing that isn't verified) */
.p43 .ev{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.02em;padding:3px 8px;border-radius:999px;border:1px dashed currentColor;opacity:.7}
@media (max-width:900px){
 .p43 .sec{padding:80px 0}
 .p43 .g{grid-template-columns:minmax(0,1fr)}
 .p43 .g>*{grid-column:1/-1!important}
 .p43 .defs>div{grid-template-columns:minmax(0,1fr)}
 .p43 .defs dd.ex{grid-column:1}
 .p43 .rel a{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}
 .p43 .rel span{grid-column:1;grid-row:2}
 .p43 .rel .ar-i{grid-column:2;grid-row:1/3}
 .p43 .faqL{margin-top:28px}
}
