/* ==========================================================================
   Static pages — page.php (issue #562), scope .pgx on body.cds-pgx
   The company and legal pages: compact house head, one reading column and a
   sticky "On this page" rail. Layers on the child style.css tokens and
   overrides the parent's blog .entry-content typography for these pages only.
   ========================================================================== */

/* one width drives the shell breadcrumb and the page, so both share a left edge */
body.cds-pgx{--pgx-w:1000px}
body.cds-pgx .cds-bc-wrap{max-width:calc(var(--pgx-w) + 2 * var(--pad))}

.pgx{padding:clamp(22px,3vw,34px) 0 clamp(56px,7vw,96px)}
.pgx-wrap{max-width:calc(var(--pgx-w) + 2 * var(--pad));margin:0 auto;padding-inline:var(--pad)}

/* ---- head: identity tile · H1 · lede · facts ------------------------------ */
.pgx-head{display:flex;align-items:flex-start;gap:18px;padding-bottom:26px;margin-bottom:32px;border-bottom:1px solid var(--line)}
.pgx-mark{flex:none;display:grid;place-items:center;width:58px;height:58px;border-radius:16px;border:1px solid rgba(123,77,242,.32);background:linear-gradient(135deg,rgba(79,199,234,.2),rgba(123,77,242,.26));color:var(--cyan)}
.pgx-mark svg{width:28px;height:28px}
.pgx-ident{min-width:0}
.pgx-head h1{margin:0;padding-top:2px;max-width:none;font-family:var(--font-display);font-weight:800;font-size:clamp(28px,2.6vw,32px);line-height:1.15;letter-spacing:-.025em;color:var(--text)}
.pgx-lede{margin:8px 0 0;max-width:62ch;font-size:16px;line-height:1.6;color:var(--muted)}
/* separators sit in the gap and are clipped at a wrapped line's start */
.pgx-facts{display:flex;flex-wrap:wrap;gap:4px 0;margin:12px 0 0;padding:0;overflow:hidden;list-style:none;font-size:13.5px;line-height:1.4;color:var(--dim)}
.pgx-facts li{position:relative;padding-right:19px;white-space:nowrap}
.pgx-facts li::before{content:"\00B7";position:absolute;left:-12px}
.pgx-facts b{font-weight:600;color:var(--text-2)}

/* ---- column + rail --------------------------------------------------------- */
.pgx-grid.has-rail{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:48px;align-items:start}
.pgx-grid.has-rail>.pgx-body{grid-column:1;grid-row:1}
.pgx-grid:not(.has-rail)>.pgx-body{max-width:720px}
.pgx-rail{grid-column:2;grid-row:1;position:sticky;top:calc(var(--top-h) + 24px);max-height:calc(100vh - var(--top-h) - 48px);overflow:auto;scrollbar-width:thin}
.pgx-toc summary{display:flex;align-items:center;gap:8px;margin-bottom:12px;list-style:none;font:600 11.5px/1 var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--dim);pointer-events:none}
.pgx-toc summary::-webkit-details-marker{display:none}
.pgx-toc-n{padding:3px 6px;border-radius:6px;background:var(--surface-2);font:500 11px/1 var(--font-mono);letter-spacing:0;color:var(--muted)}
.pgx-chev{display:none;width:16px;height:16px;flex:none;transition:transform .2s var(--ease)}
.pgx-toc[open] .pgx-chev{transform:rotate(180deg)}
.pgx-toc-list{margin:0;padding:0;list-style:none;border-left:1px solid var(--line)}
.pgx-toc-list a{display:block;margin-left:-1px;padding:6px 0 6px 14px;border-left:2px solid transparent;font-size:13.5px;line-height:1.4;color:var(--muted);text-decoration:none;transition:color .15s,border-color .15s}
.pgx-toc-list a:hover{color:var(--text)}
.pgx-toc-list a.is-active{color:var(--text);border-left-color:var(--cyan)}
.pgx-rail-note{margin:22px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:12.5px;line-height:1.55;color:var(--dim)}
.pgx-rail-note a{color:var(--muted);text-decoration:underline;text-decoration-color:var(--line-2);text-underline-offset:3px}
.pgx-rail-note a:hover{color:var(--cyan)}

/* ---- body copy (overrides the parent's blog .entry-content) --------------- */
.pgx .pgx-body{min-width:0;font-size:16.5px;line-height:1.72;color:var(--text-2)}
.pgx .pgx-body>*{margin-top:0;margin-bottom:0}
.pgx .pgx-body>*+*{margin-top:1em}
.pgx .pgx-body h2{margin-top:2.2em;font-size:clamp(21px,1.9vw,24px);font-weight:700;line-height:1.25;letter-spacing:-.015em;color:var(--text);scroll-margin-top:calc(var(--top-h) + 24px)}
.pgx .pgx-body h3{margin-top:1.8em;font-size:17.5px;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--text);scroll-margin-top:calc(var(--top-h) + 24px)}
.pgx .pgx-body>h2:first-child,.pgx .pgx-body>h3:first-child{margin-top:0}
.pgx .pgx-body h2+*,.pgx .pgx-body h3+*{margin-top:.6em}
.pgx .pgx-body h2+h3{margin-top:1em}
.pgx .pgx-body strong{font-weight:600;color:var(--text)}
.pgx .pgx-body ul,.pgx .pgx-body ol{padding-left:1.25em}
.pgx .pgx-body li{padding-left:.3em}
.pgx .pgx-body li+li{margin-top:.5em}
.pgx .pgx-body li::marker{color:var(--cyan)}
/* core prints .has-*-font-size with !important; on these pages the copy keeps one size */
.pgx .pgx-body p.has-large-font-size{font-size:inherit !important;line-height:inherit}
/* wide / full-width blocks stay in the reading column instead of running under the rail */
.pgx .pgx-body :is(.alignwide,.alignfull){width:auto;max-width:100%;margin-inline:0}

/* tables: one bordered box, a real header row, cells padded on both sides */
.pgx .pgx-body .wp-block-table{margin-inline:0;border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--bg-2);overflow-x:auto;-webkit-overflow-scrolling:touch}
.pgx .pgx-body>.wp-block-table{margin-top:1.3em}
.pgx .pgx-body .wp-block-table+:not(h2):not(h3){margin-top:1.3em}
.pgx .pgx-body .wp-block-table table{width:100%;border:0;border-collapse:collapse;font-size:14.5px;line-height:1.5}
.pgx .pgx-body .wp-block-table thead{border:0}
.pgx .pgx-body .wp-block-table th{padding:11px 16px;border:0;border-bottom:1px solid var(--line-2);background:var(--surface-2);text-align:left;font:600 13px/1.35 var(--font-body);letter-spacing:0;text-transform:none;color:var(--text);white-space:nowrap}
.pgx .pgx-body .wp-block-table td{padding:12px 16px;border:0;border-bottom:1px solid var(--line);vertical-align:top;color:var(--text-2)}
.pgx .pgx-body .wp-block-table tr:last-child td{border-bottom:0}
.pgx .pgx-body .wp-block-table td:first-child{color:var(--text)}

/* Contact's address paragraph (<p><strong><a href="mailto:…">): a contact row, not an H2-sized link */
.pgx .pgx-body p:has(>strong:only-child>a[href^="mailto:"]:only-child){display:flex;align-items:center;gap:14px;width:fit-content;max-width:100%;padding:12px 24px 12px 12px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--bg-2)}
.pgx .pgx-body p:has(>strong:only-child>a[href^="mailto:"]:only-child)::before{content:"";flex:none;width:42px;height:42px;border-radius:12px;border:1px solid rgba(79,199,234,.28);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234FC7EA' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2.5'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E") center/21px no-repeat,var(--grad-soft)}
body.cds .pgx .pgx-body p:has(>strong:only-child>a[href^="mailto:"]:only-child) a{font:700 18px/1.25 var(--font-display);letter-spacing:-.01em;color:var(--text);text-decoration:none;overflow-wrap:anywhere}
body.cds .pgx .pgx-body p:has(>strong:only-child>a[href^="mailto:"]:only-child) a:hover{color:var(--cyan)}

/* ---- About: the founders (#609) — inc/founders.php ------------------------- */
.pgx .pgx-body .pgx-founders{display:grid;gap:14px;margin-top:1.4em}
.pgx .pgx-body .pgx-founders+*{margin-top:1.6em}
.pgx-founder{--fa:var(--cyan);--fa-rgb:79,199,234;position:relative;overflow:hidden;padding:20px 22px 20px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:radial-gradient(120% 110% at 0 0,rgba(var(--fa-rgb),.08),transparent 55%),var(--bg-2);transition:border-color .2s}
.pgx-founder.is-violet{--fa:var(--violet-2);--fa-rgb:155,109,255}
.pgx-founder.is-gold{--fa:var(--gold);--fa-rgb:245,196,81}
.pgx-founder::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--fa),rgba(var(--fa-rgb),0) 65%)}
.pgx-founder:hover{border-color:rgba(var(--fa-rgb),.4)}
.pgx-founder-head{display:flex;align-items:center;gap:14px}
.pgx-founder-mark{flex:none;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;border:1px solid rgba(var(--fa-rgb),.42);background:linear-gradient(135deg,rgba(var(--fa-rgb),.28),rgba(var(--fa-rgb),.05));font:800 17px/1 var(--font-display);letter-spacing:.03em;color:var(--fa)}
.pgx-founder-id{flex:1;min-width:0}
.pgx .pgx-body .pgx-founder-name{margin:0;font-size:19px;line-height:1.2;letter-spacing:-.015em;color:var(--text)}
.pgx .pgx-body .pgx-founder-role{margin:5px 0 0;font-size:13.5px;line-height:1.35;color:var(--dim)}
.pgx .pgx-body .pgx-founder-role b{font-weight:600;color:var(--fa)}
.pgx .pgx-body .pgx-founder-years{flex:none;margin:0;padding-left:14px;border-left:1px solid var(--line);text-align:right}
.pgx-founder-years b{display:block;font:800 24px/1 var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text)}
.pgx-founder-years span{display:block;margin-top:5px;font-size:11px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.pgx-founder-bio{margin-top:14px}
.pgx .pgx-body .pgx-founder-bio p{margin:0;font-size:15.5px;line-height:1.68;color:var(--text-2)}
.pgx .pgx-body .pgx-founder-bio p+p{margin-top:.7em}
.pgx .pgx-body .pgx-founder-links{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.pgx .pgx-body .pgx-founder-links li{margin:0;padding:0}
body.cds .pgx .pgx-body .pgx-founder-links a{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:6px 15px 6px 11px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);font-size:13.5px;line-height:1;color:var(--muted);text-decoration:none;transition:border-color .15s,color .15s}
body.cds .pgx .pgx-body .pgx-founder-links a:hover{border-color:rgba(var(--fa-rgb),.55);color:var(--text)}
.pgx-founder-links svg{flex:none;width:18px;height:18px}
.pgx-founder-links b{font-weight:600;color:var(--text)}

/* ---- rail folds above the copy -------------------------------------------- */
@media (max-width:1199px){
	body.cds-pgx{--pgx-w:720px}
	.pgx-grid.has-rail{display:block}
	.pgx-rail{position:static;max-height:none;overflow:visible;margin:-8px 0 30px}
	.pgx-toc{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
	.pgx-toc summary{min-height:48px;margin:0;padding:0 18px;font-size:12px;cursor:pointer;pointer-events:auto}
	.pgx-toc summary .pgx-chev{display:block;margin-left:auto;color:var(--muted)}
	.pgx-toc .pgx-toc-list{margin:0 18px 14px;padding-top:4px}
	.pgx-rail-note{display:none}
}

/* ---- phones ---------------------------------------------------------------- */
@media (max-width:760px){
	.pgx{padding-top:18px}
	/* icon beside the H1 only; lede and facts take the full width */
	.pgx-head{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:0 14px;padding-bottom:22px;margin-bottom:26px}
	.pgx-ident{display:contents}
	.pgx-head h1{padding-top:0}
	.pgx-lede,.pgx-facts{grid-column:1/-1}
	.pgx-lede{margin-top:14px}
	.pgx-mark{width:46px;height:46px;border-radius:13px}
	.pgx-mark svg{width:23px;height:23px}
	.pgx-facts{font-size:13px}
	.pgx-toc-list a{display:flex;align-items:center;min-height:48px;padding-block:4px}
	.pgx .pgx-body{font-size:16px;line-height:1.7}
	.pgx .pgx-body .wp-block-table table{font-size:14px}
	.pgx .pgx-body .wp-block-table th,.pgx .pgx-body .wp-block-table td{padding-inline:12px}
	.pgx-founder{padding:18px 16px}
	.pgx-founder-head{gap:12px}
	.pgx-founder-mark{width:46px;height:46px;border-radius:13px;font-size:15px}
	.pgx .pgx-body .pgx-founder-name{font-size:17.5px}
	.pgx .pgx-body .pgx-founder-years{padding-left:12px}
	.pgx-founder-years b{font-size:20px}
	.pgx-founder-years span{font-size:12px;letter-spacing:.04em}
	.pgx .pgx-body .pgx-founder-bio p{font-size:15px}
	body.cds .pgx .pgx-body .pgx-founder-links a{min-height:48px;padding-inline:13px 16px}
}
@media (max-width:560px){
	/* the years stat drops under the name instead of squeezing the role line */
	.pgx-founder-head{flex-wrap:wrap;align-items:flex-start}
	.pgx .pgx-body .pgx-founder-years{display:flex;flex-basis:calc(100% - 58px);align-items:baseline;gap:7px;margin:8px 0 0 58px;padding:0;border:0;text-align:left}
	.pgx-founder-years b{display:inline;font-size:16px}
	.pgx-founder-years span{display:inline;margin:0}
}
@media (prefers-reduced-motion:reduce){.pgx *{transition:none !important}}
