:root{--color-background-page:var(--wp--preset--color--page);--color-background-surface:var(--wp--preset--color--surface);--color-text-heading:var(--wp--preset--color--heading);--color-text-body:var(--wp--preset--color--body);--color-text-primary:var(--wp--preset--color--text);--color-text-accent:var(--wp--preset--color--ochre-text);--color-interactive-primary:var(--wp--preset--color--heading);--color-interactive-primary-hover:var(--wp--custom--color--navy-deep);--color-focus:var(--wp--preset--color--focus);--color-border-subtle:var(--wp--preset--color--border);--color-border-strong:var(--wp--preset--color--heading);--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--serif:var(--wp--preset--font-family--serif);--sans:var(--wp--preset--font-family--sans)}
*{box-sizing:border-box}
body{margin:0;background:var(--color-background-page);color:var(--color-text-primary);font:17px/1.65 var(--sans)}
a:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}
.skip{position:absolute;left:16px;top:-48px;background:var(--color-background-surface);padding:var(--space-sm) var(--space-md);min-height:44px;display:inline-flex;align-items:center;z-index:10}
.skip:focus{top:12px}





.sheet{max-width:720px;margin:0 auto;padding:var(--space-2xl) 16px var(--space-3xl)}
h1{font:700 36px/1.2 var(--serif);color:var(--color-text-heading);margin:0 0 var(--space-md)}
.standfirst{font:400 20px/1.55 var(--serif);color:var(--color-text-primary);margin:0 0 var(--space-md)}
.byline{font-size:var(--wp--preset--font-size--body-s);color:var(--color-text-body);margin:0 0 var(--space-xl)}
.toc{border-top:1px solid var(--color-border-strong);border-bottom:1px solid var(--color-border-subtle);padding:var(--space-lg) 0;margin:0 0 var(--space-2xl)}
.toc h2{font:600 17px/1.3 var(--sans);color:var(--color-text-heading);margin:0 0 var(--space-sm)}
.toc ol{margin:0;padding-left:1.3em}
.toc li{margin:4px 0}
.toc a{color:var(--color-interactive-primary);min-height:32px;display:inline-flex;align-items:center}
h2{font:600 26px/1.3 var(--serif);color:var(--color-text-heading);margin:var(--space-3xl) 0 var(--space-md);scroll-margin-top:16px}
h3{font:600 19px/1.35 var(--serif);color:var(--color-text-heading);margin:var(--space-xl) 0 var(--space-sm)}
p{margin:0 0 var(--space-md);max-width:36rem}
ul,ol{max-width:36rem;padding-left:1.3em}
li{margin-bottom:6px}
a{color:var(--color-interactive-primary);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
table{width:100%;border-collapse:collapse;margin:var(--space-lg) 0;font-size:15px;background:var(--color-background-surface)}
th,td{text-align:left;vertical-align:top;padding:var(--space-md);border-bottom:1px solid var(--color-border-subtle)}
th{color:var(--color-text-heading);font-weight:600}
details{border-bottom:1px solid var(--color-border-subtle);padding:var(--space-md) 0}
summary{cursor:pointer;color:var(--color-text-heading);font-family:var(--serif);font-weight:600;font-size:var(--wp--preset--font-size--heading-s);min-height:44px;display:flex;align-items:center}
details p{margin:var(--space-sm) 0 0}
.tool{background:var(--color-background-surface);border:1px solid var(--color-border-subtle);padding:var(--space-xl);margin:var(--space-2xl) 0}
.tool h2{margin-top:0}
.links{list-style:none;padding:0;margin:var(--space-md) 0 0;max-width:none}
.links li{border-bottom:1px solid var(--color-border-subtle);margin:0}
.links a{display:flex;align-items:center;min-height:44px;padding:var(--space-md) 0}



@media (max-width:767px){h1{font-size:30px} h2{font-size:23px}}

.sheet{max-width:var(--sheet-max,720px)}
img{max-width:100%;height:auto}
figure{margin:0 0 var(--space-md)}
.hub-jump a,.links a,.toc a{min-height:44px;display:inline-flex;align-items:center}
.toc ol{padding-left:0;list-style:none;margin:0}
.toc li{margin:0;border-bottom:1px solid var(--color-border-subtle)}
.toc li:last-child{border-bottom:0}
.hub-jump a{display:flex;flex-direction:column;justify-content:flex-start}
figure img{width:100%;height:auto;max-height:260px;object-fit:cover;display:block;background:var(--color-background-surface)}
.hub-jump figure{display:none}
/* Vertical rhythm: one scale for all rebuilt pages. Paragraphs 16px, sections 48px, headings close to their content. */
main p{margin:0 0 var(--space-lg)}
main h2{margin:var(--space-3xl) 0 var(--space-md);line-height:1.25}
main h2:first-child,main h1+section h2{margin-top:var(--space-xl)}
main h3{margin:var(--space-xl) 0 var(--space-sm);line-height:1.3}
main ul,main ol{margin:0 0 var(--space-lg)}
main li{margin-bottom:var(--space-sm)}
main section.ps-hub-sec,main section.tool{margin:0 0 var(--space-3xl)}
main .hub-prods,main .hub-jump{margin-bottom:var(--space-3xl)}
main .needs-grid{margin-bottom:var(--space-3xl)}
main .standfirst,main .intro{margin-bottom:var(--space-2xl)}
.hub-jump a{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border-strong);justify-content:center;text-align:center}
.needs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xl)}
.needs-grid .need{border-top:1px solid var(--color-border-strong);padding-top:var(--space-md)}
.needs-grid .need ul{padding-left:1.1em;margin:0}
@media (max-width:767px){.needs-grid{grid-template-columns:minmax(0,1fr)}}
.hub-jump{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-lg);border-top:1px solid var(--color-border-strong);padding-top:var(--space-xl)}
.hub-jump > h2{grid-column:1/-1;margin:0 0 var(--space-sm)}
.hub-jump a{display:block;text-decoration:none;color:var(--color-text-heading);font-weight:600}
.hub-jump figure{margin:0}
.hub-jump img{width:100%;height:auto;max-height:160px;aspect-ratio:1/1;object-fit:cover;display:block}
.hub-prods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl) var(--space-2xl)}
.hub-prods > *:not(.prod){grid-column:1/-1}
.prod{scroll-margin-top:16px;min-width:0}
.prod figure{margin:0 0 var(--space-md)}
.prod img{width:100%;height:auto;max-height:220px;aspect-ratio:4/3;object-fit:cover;display:block}
.prod h3 br{display:none}
@media (max-width:767px){.hub-jump,.hub-prods{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-prods > *:not(.prod){grid-column:1/-1}}
.hub .sec{border-top:1px solid var(--color-border-strong);padding-top:var(--space-xl)}
label.check{display:flex;gap:var(--space-md);align-items:flex-start;min-height:44px;padding:var(--space-md) 0;border-top:1px solid var(--color-border-subtle);cursor:pointer;font-weight:400}
label.check input{width:24px;height:24px;margin:2px 0 0;flex:0 0 24px;accent-color:var(--color-interactive-primary)}
label.check span{color:var(--color-text-primary)}
