* { box-sizing:border-box; }
html { background:#17251e; color-scheme:light; }
body { margin:0; font-family:var(--font); }
button { font:inherit; }
button:focus-visible, a:focus-visible { outline:3px solid #f7b86e; outline-offset:4px; }
[hidden] { display:none !important; }
.deck-shell { height:100vh; display:grid; place-items:center; overflow:hidden; }
.deck { width:100vw; height:100vh; }
.slide { position:relative; overflow:hidden; height:100%; container-type:inline-size; background:var(--cream); color:var(--ink); padding:4.2% 5.2% 3.7%; display:flex; flex-direction:column; box-shadow:0 14px 50px #0003; }
.slide::after { content:''; position:absolute; height:5px; inset:auto 0 0; background:linear-gradient(90deg,var(--lime) 0 19%,var(--green) 19% 62%,var(--mint) 62%); }
.topline { display:flex; align-items:center; justify-content:space-between; gap:1rem; color:var(--green); font-size:1.05cqw; font-weight:800; text-transform:uppercase; letter-spacing:.14em; }
.mark { display:flex; align-items:center; gap:.5em; font-size:1.28cqw; letter-spacing:-.03em; text-transform:none; }
.mark::before { content:'✳'; color:var(--green); font-size:1.5em; line-height:1; }
.kicker { font-size:1.05cqw; font-weight:800; text-transform:uppercase; letter-spacing:.17em; color:var(--green); margin:0 0 1em; }
h1,h2,h3,p,ul,ol,blockquote { margin:0; }
h1,h2,h3 { font-weight:750; letter-spacing:-.045em; line-height:1.06; }
h1 { font-size:5.6cqw; }
h2 { font-size:3.65cqw; }
h3 { font-size:1.65cqw; }
p,li { font-size:1.42cqw; line-height:1.43; }
.slide-head { margin:3% 0 2%; max-width:90%; }
.slide-head p { margin-top:.75em; max-width:62em; color:var(--muted); }
.content { flex:1; min-height:0; }
.footer { display:flex; justify-content:space-between; gap:1em; align-items:end; margin-top:auto; padding-top:1.5%; color:var(--muted); font-size:.9cqw; font-weight:700; letter-spacing:.03em; }
.dark { background:var(--forest); color:var(--cream); }
.dark .topline,.dark .kicker,.dark .footer { color:var(--mint); }
.dark .mark::before { color:var(--lime); }
.dark .slide-head p { color:#d4e8d7; }
.hero { justify-content:space-between; }
.hero .hero-copy { max-width:65%; z-index:1; }
.hero h1 { max-width:12ch; }
.hero p.lead { font-size:1.7cqw; line-height:1.4; max-width:35em; margin-top:1.2em; color:#d8eadc; }
.hero-shape { pointer-events:none; position:absolute; right:-3%; top:7%; width:37%; height:86%; }
.hero-shape .ring { position:absolute; width:83%; aspect-ratio:1; border:2.4cqw solid var(--lime); border-radius:50%; right:-6%; top:8%; }
.hero-shape .disc { position:absolute; width:53%; aspect-ratio:1; border-radius:50%; background:var(--mint); right:36%; top:36%; mix-blend-mode:screen; }
.hero-shape .dot { position:absolute; width:19%; aspect-ratio:1; border-radius:50%; background:var(--orange); top:5%; left:2%; }
.split { display:grid; grid-template-columns:1fr 1fr; gap:4%; align-items:stretch; }
.split.asymmetric { grid-template-columns: .85fr 1.15fr; }
.panel { background:#fff; border:1px solid var(--line); border-radius:1.1cqw; padding:2.2cqw; }
.panel.tint { background:var(--mint); border-color:transparent; }
.panel.ink { background:var(--forest); color:var(--cream); border:0; }
.panel p { margin-top:.8em; }
.big-number { font-size:8cqw; font-weight:800; letter-spacing:-.07em; line-height:1; color:var(--green); }
.pill { display:inline-block; background:var(--lime); color:var(--forest); padding:.55em .9em; border-radius:100px; font-size:1cqw; letter-spacing:.1em; text-transform:uppercase; font-weight:800; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5%; }
.card { background:white; border:1px solid var(--line); border-radius:1cqw; padding:2cqw; display:flex; flex-direction:column; gap:1.15cqw; }
.card .n { display:grid; place-items:center; width:3.1cqw; height:3.1cqw; background:var(--mint); border-radius:50%; color:var(--forest); font-weight:800; font-size:1.2cqw; }
.card p { color:var(--muted); }
.statement { justify-content:space-between; }
.statement blockquote { max-width:18ch; font-size:4.3cqw; font-weight:750; letter-spacing:-.05em; line-height:1.12; }
.statement blockquote:before { content:'“'; color:var(--lime); display:block; font-size:2em; height:.65em; }
.chips { display:flex; flex-wrap:wrap; gap:.65em; }
.chip { border:1px solid #85b99c; border-radius:100px; padding:.55em 1em; font-size:1.05cqw; font-weight:700; }
.timeline { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5%; position:relative; padding-top:3%; }
.timeline::before { content:''; position:absolute; top:4.55cqw; left:4%; right:5%; height:3px; background:var(--green); }
.timeline .step { position:relative; padding-top:4.5cqw; }
.timeline .step::before { content:''; position:absolute; top:.6cqw; left:0; width:1.3cqw; height:1.3cqw; border:.4cqw solid var(--green); border-radius:50%; background:var(--lime); }
.step strong { display:block; font-size:1.2cqw; color:var(--green); margin-bottom:.7em; text-transform:uppercase; letter-spacing:.1em; }
.step p { color:var(--muted); margin-top:.8em; }
.process { display:grid; grid-template-columns:repeat(4,1fr); gap:3%; align-items:center; }
.process .process-item { min-height:15cqw; padding:2cqw; border-radius:1cqw; background:white; border:1px solid var(--line); position:relative; }
.process .process-item:not(:last-child)::after { content:'→'; position:absolute; right:-2.7cqw; top:38%; color:var(--green); font-size:2.3cqw; font-weight:bold; z-index:1; }
.process-item .num { color:var(--green); font-weight:800; font-size:1.2cqw; }
.process-item h3 { margin-top:1em; }
.process-item p { margin-top:.6em; color:var(--muted); }
.org { display:flex; flex-direction:column; align-items:center; gap:2cqw; padding-top:.5cqw; }
.org .root { background:var(--forest); color:white; padding:1.2cqw 3cqw; border-radius:.8cqw; font-size:1.5cqw; font-weight:750; position:relative; }
.org .root::after { content:''; width:2px; height:2.2cqw; background:var(--green); position:absolute; top:100%; left:50%; }
.org-row { width:95%; display:grid; grid-template-columns:repeat(3,1fr); gap:2%; position:relative; }
.org-row::before { content:''; position:absolute; top:-1cqw; left:16%; right:16%; height:2px; background:var(--green); }
.org-row .card { position:relative; text-align:center; padding:1.4cqw; }
.org-row .card::before { content:''; position:absolute; width:2px; height:1cqw; background:var(--green); top:-1cqw; left:50%; }
.org-row h3 { font-size:1.35cqw; }
.org-row p { font-size:1.15cqw; }
.table-wrap { background:white; border:1px solid var(--line); border-radius:1cqw; overflow:hidden; }
table { border-collapse:collapse; width:100%; text-align:left; font-size:1.25cqw; }
th { background:var(--forest); color:white; font-weight:700; }
th,td { padding:1.1cqw 1.4cqw; border-bottom:1px solid var(--line); }
tr:last-child td { border-bottom:0; }
tbody tr:nth-child(even) { background:#f3f8f2; }
.quadrants { display:grid; grid-template-columns:1fr 1fr; gap:1%; height:100%; }
.quadrants .q { padding:1.6cqw 2cqw; border-radius:.8cqw; background:#fff; border:1px solid var(--line); }
.quadrants .q:nth-child(2), .quadrants .q:nth-child(3) { background:var(--mint); border-color:transparent; }
.q small { color:var(--green); font-size:1cqw; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.q h3 { margin-top:.35em; }
.q p { margin-top:.5em; }
.foundations { display:grid; grid-template-columns:repeat(4,1fr); gap:1%; align-items:end; }
.foundation { background:white; border:1px solid var(--line); padding:1.5cqw; border-radius:1cqw 1cqw 0 0; min-height:12cqw; }
.foundation span { display:block; color:var(--green); font-weight:800; font-size:1.2cqw; margin-bottom:1em; }
.base { grid-column:1/-1; background:var(--forest); color:white; padding:1.2cqw; text-align:center; font-size:1.3cqw; font-weight:750; border-radius:0 0 1cqw 1cqw; }
.bar-chart { display:flex; flex-direction:column; gap:1.2cqw; justify-content:center; }
.bar-row { display:grid; grid-template-columns:10cqw 1fr 4cqw; gap:1.2cqw; align-items:center; font-size:1.2cqw; font-weight:700; }
.bar-track { height:2cqw; background:#e6eee6; border-radius:99px; overflow:hidden; }
.bar { height:100%; background:var(--green); border-radius:99px; }
.bar-row:nth-child(2) .bar { background:#65a47c; }.bar-row:nth-child(3) .bar { background:#a3cfad; }
.diagram { width:100%; height:100%; max-height:25cqw; }
.flow { stroke-dasharray:8 8; }
[data-motion="playing"] .flow { animation:flow 1.2s linear infinite; }
@keyframes flow { to { stroke-dashoffset:-16; } }
.controls { display:flex; align-items:center; gap:.7rem; color:#e2f0e5; }
.controls button { border:1px solid #8da999; background:transparent; color:white; border-radius:999px; padding:.55rem .9rem; cursor:pointer; }
.controls button:hover { background:#2c4939; }.controls button:disabled { opacity:.4; cursor:default; }
.counter { font-variant-numeric:tabular-nums; font-weight:700; font-size:.8rem; white-space:nowrap; }
.progress-track { height:3px; background:#55695e; flex:1; border-radius:5px; overflow:hidden; }
.progress-bar { height:100%; width:0; background:var(--lime); }
.help { color:#b6cab9; font-size:.75rem; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }


@media print { html { background:white; }.deck-shell { padding:0; display:block; }.deck { width:100%; }.slide,.slide[hidden] { display:flex !important; width:100%; height:56.25vw; page-break-after:always; box-shadow:none; }.controls { display:none !important; } }
/* PHIZ brand cues: charcoal, lime and moss, with a mono display voice. */
:root { --ink:#1c1917; --forest:#1c1917; --green:#4d7c0f; --mint:#ecfccb; --lime:#a3e635; --cream:#fafaf9; --paper:#fff; --line:#d6d3d1; --muted:#57534e; --orange:#d9f99d; --font:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
h1,h2,h3,.mark { font-family:'Liberation Mono',ui-monospace,'Courier New',monospace; }
.mark { font-size:1.7cqw; letter-spacing:-.08em; font-weight:800; }.mark::before { display:none; }
.dark .hero-shape .ring { border-color:var(--lime); }.hero-shape .disc { background:#4d7c0f; mix-blend-mode:normal; opacity:.75; }.hero-shape .dot { background:#d9f99d; }
.hero-shape::before { content:''; position:absolute; inset:0; background-image:radial-gradient(#a3e635 1.2px,transparent 1.2px); background-size:17px 17px; opacity:.3; mask-image:linear-gradient(110deg,transparent,#000); }
.hero h1 em { color:var(--lime); font-style:normal; }.dark .footer,.dark .topline,.dark .kicker { color:#d9f99d; }
.section-divider .slide-head { margin-top:10%; max-width:70%; }.section-divider h2 { font-size:6cqw; }.divider-copy { max-width:40%; }.divider-copy p,.closing-copy p { font-size:1.8cqw; color:#e7e5e4; margin-bottom:1.3em; }
.metric-copy { align-self:center; padding:2cqw; }.metric-copy h3 { font-size:2.25cqw; }.metric-copy p:not(.kicker) { margin-top:1em; }.callout,.diagram-note { margin-top:1.5em; font-size:1cqw; color:var(--muted); }
.diagram-layout { display:grid; grid-template-columns:.7fr 1.3fr; align-items:center; gap:3%; height:100%; }.diagram-layout p { margin-top:1em; }.closing .slide-head { margin-top:10%; max-width:65%; }.closing h2 { font-size:5.3cqw; }.closing-copy { max-width:75%; }
.table-wrap tbody th { background:transparent; color:var(--ink); }

/* Symposium typography: large system-sans headings; mono navigation and labels. */
h1,h2,h3 { font-family:var(--font); font-weight:800; }
.mark,.kicker,.topline,.step strong,.num { font-family:'SFMono-Regular',Consolas,'Liberation Mono',monospace; }

.d2-asset { display:block; width:100%; max-height:25cqw; object-fit:contain; }

.visual-placeholder { position:relative; background:#292524; border-radius:1cqw; overflow:hidden; display:grid; place-items:center; min-height:20cqw; }
.visual-placeholder::before { content:''; position:absolute; inset:0; opacity:.35; background-image:radial-gradient(#a3e635 1px,transparent 1px); background-size:16px 16px; }
.placeholder-window { position:absolute; left:12%; top:13%; width:76%; height:74%; border:1px solid #a3e635; border-radius:.8cqw; background:#1c1917; opacity:.85; }
.placeholder-window::before { content:''; display:block; height:17%; border-bottom:1px solid #57534e; }
.placeholder-window i { display:inline-block; position:relative; top:-18%; left:5%; width:.5cqw; height:.5cqw; border-radius:50%; background:#a3e635; margin-right:.25cqw; }
.placeholder-circle { position:absolute; border:1.5cqw solid #4d7c0f; border-radius:50%; width:20%; aspect-ratio:1; }
.placeholder-label { color:white; font:800 1.1cqw 'Liberation Mono',monospace; letter-spacing:.1em; z-index:1; margin-top:23%; }
.visual-caption { align-self:center; padding:2cqw; }.visual-caption h3 { font-size:2.1cqw; }.visual-caption p:not(.kicker) { margin-top:1em; }
.reference-list { align-self:start; width:100%; }.reference-list p { display:grid; grid-template-columns:5% 48% 1fr; align-items:center; border-top:1px solid var(--line); padding:1.3cqw 0; }.reference-list p:last-child { border-bottom:1px solid var(--line); }.reference-list span { color:var(--green); font-weight:800; }.reference-list a { color:var(--ink); font-weight:750; text-decoration-thickness:1px; text-underline-offset:.2em; }.reference-list small { color:var(--muted); font-size:1.15cqw; }

/* Local, licensed typography and the source PHIZ lockups. */
@font-face { font-family:'PHIZ Open Sans'; src:url('fonts/OpenSans-Regular.ttf') format('truetype'); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:'PHIZ Open Sans'; src:url('fonts/OpenSans-Bold.ttf') format('truetype'); font-style:normal; font-weight:700; font-display:swap; }
@font-face { font-family:'PHIZ Open Sans'; src:url('fonts/OpenSans-ExtraBold.ttf') format('truetype'); font-style:normal; font-weight:800; font-display:swap; }
@font-face { font-family:'PHIZ Liberation Mono'; src:url('fonts/LiberationMono-Bold.ttf') format('truetype'); font-style:normal; font-weight:700; font-display:swap; }
:root { --font:'PHIZ Open Sans',system-ui,sans-serif; }
.mark,.kicker,.topline,.step strong,.num { font-family:'PHIZ Liberation Mono',monospace; }
.topline .mark { display:block; width:10cqw; min-width:72px; line-height:0; }
.topline .mark img { width:100%; height:auto; }.topline .brand-dark { display:none; }.dark .topline .brand-light { display:none; }.dark .topline .brand-dark { display:block; }
.brand-slide .brand-stage { flex:1; display:grid; place-items:center; }
.brand-primary { width:min(82%,760px); height:auto; }



.phiz-diagram { width:100%; height:100%; max-height:24cqw; display:block; }
.dark .phiz-diagram { background:#1c1917; }





/* Visual refinements: consistent rhythm and readable presentation patterns. */
:root { --mint:#eef5df; --line:#deded5; --muted:#62645b; }
html { background:#111914; }

.slide { padding:3.8% 5.2% 3%; box-shadow:0 20px 60px #0004; }
.topline { min-height:3.6cqw; padding-bottom:1.2cqw; border-bottom:1px solid var(--line); font-size:1.05cqw; letter-spacing:.12em; }
.topline > :last-child { text-align:right; }
.dark .topline { border-color:#ffffff24; color:#c3cdb6; }
.topline .mark { width:9cqw; }
h1,h2,h3 { letter-spacing:-.045em; }
p,li { line-height:1.55; }
h3 { font-size:1.85cqw; line-height:1.2; }
.kicker { font-size:.85cqw; letter-spacing:.16em; margin-bottom:1.1em; }
.slide-head { margin:2.5cqw 0 1.7cqw; max-width:100%; }
.slide-head h2 { font-size:3.75cqw; line-height:1.1; text-wrap:balance; }
.slide-head p:not(.kicker) { max-width:72ch; font-size:1.3cqw; margin-top:.85em; }
.content { padding-bottom:1.5cqw; }
.content:not(.split):not(.reference-list) { display:flex; flex-direction:column; justify-content:center; }
.content > :only-child { width:100%; }
.footer { margin-top:1.6cqw; padding-top:1.2cqw; border-top:1px solid var(--line); font-size:1.05cqw; line-height:1.45; letter-spacing:.02em; }
.dark .footer { border-color:#ffffff24; color:#c3cdb6; }
.hero .hero-copy { margin-block:auto; padding-block:2.5cqw; max-width:65%; }
.hero h1 { font-size:6.4cqw; line-height:1.04; max-width:13ch; }
.hero p.lead { font-size:1.6cqw; max-width:35ch; line-height:1.55; }
.hero-shape { top:12%; right:-6%; width:40%; height:75%; }
.hero-shape .ring { border-width:1.7cqw; }
.hero-shape .disc { opacity:.6; }
.hero .footer { margin-top:0; }
.card,.panel,.quadrants .q,.process .process-item,.foundation { border-color:var(--line); border-radius:.7cqw; box-shadow:0 3px 12px #17292304; }
.cards { gap:1.7cqw; }
.cards > .card { min-height:17cqw; padding:2.2cqw; gap:1.3cqw; }
.card .n { width:3.1cqw; height:3.1cqw; border-radius:.8cqw; background:var(--mint); font-family:'PHIZ Liberation Mono',monospace; }
.panel { padding:2.5cqw; }
.panel .pill { margin-bottom:1.2cqw; }
.panel p { line-height:1.55; }
.panel.tint { background:var(--mint); }
.metric { display:flex; flex-direction:column; justify-content:center; min-height:22cqw; padding:3cqw; }
.big-number { font-size:9cqw; margin-bottom:.12em; }
.metric-copy { padding:2.5cqw; }
.metric-copy h3 { font-size:2.4cqw; line-height:1.2; max-width:23ch; }
.callout { border-left:3px solid var(--green); padding:.6em 0 .6em 1em; font-size:.95cqw; line-height:1.5; }
.statement .content { padding-top:2cqw; }
.statement blockquote { position:relative; max-width:24ch; padding-top:2.2cqw; margin-bottom:2cqw; font-size:4.6cqw; line-height:1.13; }
.statement blockquote::before { position:absolute; top:-1.5cqw; height:auto; font-size:1.6em; line-height:1; }
.chips { gap:.7cqw; }
.chip { padding:.75em 1.1em; font-size:1cqw; border-color:#ffffff40; background:#ffffff05; }
.timeline { gap:2.2cqw; padding-top:0; }
.timeline::before { top:.65cqw; left:.65cqw; right:calc(25% - 2.3cqw); height:2px; }
.timeline .step { padding-top:3.3cqw; }
.timeline .step::before { top:0; }
.step strong { font-size:.95cqw; margin-bottom:.9em; }
.step h3 { font-size:1.85cqw; }
.process .process-item { min-height:17cqw; padding:2cqw; }
.process-item .num { font-size:.95cqw; }
.process-item h3 { margin-top:1.2em; }
.org { gap:2.5cqw; }
.org .root { padding:1.5cqw 3cqw; }
.org .root::after { height:2.5cqw; }
.org-row { gap:1.7cqw; }
.org-row .card { padding:2cqw 1.5cqw; }
.org-row h3 { font-size:1.7cqw; }
.org-row p { font-size:1.25cqw; line-height:1.55; }
.phiz-diagram { max-height:26cqw; }
.quadrants { height:auto; gap:1.2cqw; }
.quadrants .q { padding:2cqw; min-height:10cqw; }
.q small { font-family:'PHIZ Liberation Mono',monospace; font-size:.85cqw; }
.q h3 { margin-top:.65em; }
.q p { margin-top:.65em; color:var(--muted); }
.foundations { gap:1cqw; align-items:stretch; }
.foundation { min-height:15cqw; padding:2cqw 1.6cqw; border-radius:.7cqw .7cqw 0 0; }
.foundation span { font-family:'PHIZ Liberation Mono',monospace; font-size:1cqw; margin-bottom:1.6em; }
.foundation h3 { font-size:1.7cqw; }
.foundation p { margin-top:.7em; font-size:1.25cqw; }
.base { padding:1.5cqw; font-size:1.2cqw; line-height:1.5; }
.table-wrap { border-radius:.7cqw; }
.table-wrap:focus-visible { outline:3px solid var(--green); outline-offset:5px; }
table { font-size:1.3cqw; line-height:1.55; }
th,td { padding:1.4cqw 1.5cqw; }
thead th { font-size:1.1cqw; }
tbody tr:nth-child(even) { background:#f3f5ed; }
tbody th { text-align:left; }
.bar-chart { gap:1.7cqw; padding:2cqw 0; }
.bar-row { grid-template-columns:10cqw 1fr 3cqw; gap:1.4cqw; font-size:1.15cqw; }
.bar-track { height:1.3cqw; background:#e9ece2; }
.bar-row:nth-child(2) .bar { background:#7a9b43; }
.bar-row:nth-child(3) .bar { background:#a8bf78; }
.visual-layout { align-items:center; }
.visual-placeholder { min-height:22cqw; border-radius:.7cqw; }
.visual-caption { padding:2.5cqw; }
.visual-caption h3 { font-size:2.2cqw; line-height:1.2; }
.placeholder-label { font-size:1cqw; }
.diagram-layout { grid-template-columns:.7fr 1.3fr; gap:3cqw; height:auto; }
.diagram-layout h3 { font-size:2cqw; line-height:1.25; }
.diagram-note { font-size:.95cqw; line-height:1.5; color:var(--muted); }
.d2-asset { border:1px solid var(--line); border-radius:.7cqw; background:white; }

.reference-list { display:flex; flex-direction:column; justify-content:center; }
.reference-list p { padding:1.7cqw 0; grid-template-columns:5% 48% 1fr; }
.reference-list a { text-decoration:none; font-size:1.5cqw; }
.reference-list a:hover { text-decoration:underline; text-underline-offset:.25em; }
.reference-list small { font-size:1.1cqw; }
.section-divider .slide-head,.closing .slide-head { margin:5cqw 0 1.7cqw; max-width:80%; }
.section-divider .slide-head h2 { font-size:6cqw; max-width:15ch; }
.closing .slide-head h2 { font-size:5.4cqw; max-width:19ch; }
.section-divider .content:not(.split):not(.reference-list),.closing .content:not(.split):not(.reference-list) { justify-content:flex-start; }
.divider-copy { max-width:58%; }
.closing-copy { max-width:85%; }
.divider-copy p,.closing-copy p { font-size:1.8cqw; line-height:1.55; margin-bottom:1.6em; }
.controls { position:fixed; z-index:50; right:20px; bottom:20px; width:auto; min-height:60px; gap:.7rem; padding:.45rem .65rem; background:#1b241e; border:1px solid #ffffff17; border-radius:999px; color:#e7eddd; }
.controls button { display:flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:.45rem .85rem; border-color:#ffffff35; background:#ffffff04; }
.controls button:hover { background:#a3e63518; border-color:#a3e63588; }
.controls [data-autoplay] { min-width:76px; border-color:#a3e63566; }
.controls [data-autoplay][aria-pressed="true"] { background:var(--lime); color:#17211b; }
.progress-track { width:50px; margin-inline:.2rem; height:3px; background:#ffffff20; }
.counter { font-size:.75rem; letter-spacing:.04em; padding-inline:.25rem; }
.help { font-size:.7rem; padding-right:.4rem; color:#a5b49d; }


@media print {
  html { background:white; }
  .deck,.slide,.slide[hidden] { width:100%; }
  .deck { height:auto; }
  .slide,.slide[hidden] { height:56.25vw; min-height:0; }
  .controls { display:none !important; }
}

/* Conference defaults: neutral surfaces, PHIZ lime and clear sequential headings. */
:root { --forest:#181b18; --lime:#b3ec61; --muted:#666; --mint:#efefeb; --line:#d8d8d4; }
.dark .topline,.dark .footer,.dark .kicker { color:#b9b9b9; }
.dark .card,.dark .panel { background:#ffffff05; color:var(--cream); border-color:#ffffff24; }
.dark .card p,.dark .panel p { color:#b9b9b9; }
.dark .card .n { background:#b3ec6114; color:var(--lime); }
.cards .card h3 { display:flex; align-items:center; gap:1cqw; }
.process-item h3 { margin-top:0; display:flex; gap:.8cqw; align-items:baseline; }
.process-item .num { color:var(--green); font-size:1.1cqw; }
.process .process-item:not(:last-child)::after { font-size:2.8cqw; }
.timeline { grid-template-columns:var(--timeline-columns,repeat(4,1fr)); gap:1.8cqw; }
.timeline::before,.timeline .step::before { display:none; }
.timeline .step { padding-top:0; }
.timeline .step strong { display:block; padding:.8cqw 0; border-top:.5cqw solid var(--green); font-size:1.2cqw; }
.timeline .step h3 { font-size:1.65cqw; }
.timeline .step p { font-size:1.3cqw; margin-top:.8em; }
.controls button:focus-visible { outline-color:var(--lime); }
