:root{
	--sp-paper:#f4f5f1;
	--sp-panel:#e6e7e3;
	--sp-ink:#2e2f2b;
	--sp-muted:#474943;
	--sp-rule:#676963;
	--sp-action:#506321;
	--sp-on-action:#f4f5f1;
	--sp-wash:#d7d8d4;
	--sp-band:#2e2f2b;
	--sp-band-ink:#f4f5f1;
	--sp-band-action:#b4c77b;
	--sp-band-rule:#8f918b
}
:root[data-theme="dark"]{
	--sp-paper:#1c1d1a;
	--sp-panel:#282926;
	--sp-ink:#e5e6e1;
	--sp-muted:#c4c6bf;
	--sp-rule:#8f918b;
	--sp-action:#b4c77b;
	--sp-on-action:#1c1d1a;
	--sp-wash:#323330;
	--sp-band:#323330;
	--sp-band-ink:#e5e6e1;
	--sp-band-action:#b4c77b;
	--sp-band-rule:#8f918b
}
@font-face{
	font-family:"Besley";
	font-weight:700;
	font-style:normal;
	font-display:fallback;
	src:url(/fonts/besley.woff2) format("woff2");
	unicode-range:U+0000-024F
}
@font-face{
	font-family:"Manrope";
	font-weight:400;
	font-style:normal;
	font-display:fallback;
	src:url(/fonts/manrope.woff2) format("woff2");
	unicode-range:U+0000-024F
}
*,*::before,*::after{box-sizing:border-box}
html{
	background:var(--sp-paper);
	-webkit-text-size-adjust:100%
}
body{
	color:var(--sp-ink);
	background:var(--sp-paper);
	font-family:"Manrope",sans-serif;
	font-size:18px;
	font-weight:400;
	line-height:1.65;
	overflow-wrap:break-word;
	margin:0;
	font-kerning:normal
}
a{
	color:var(--sp-action);
	text-decoration-thickness:1px;
	text-underline-offset:3px
}
a:hover{text-decoration-thickness:3px}
a:focus-visible,button:focus-visible,summary:focus-visible{
	outline:2px solid var(--sp-action);
	outline-offset:3px
}
.sp-scrollbox:focus-visible{
	outline:2px solid var(--sp-action);
	outline-offset:2px
}
.sp-floor a:focus-visible{
	outline:2px solid var(--sp-band-action);
	outline-offset:3px
}
main:focus{outline:none}
h1,h2,h3,dt{
	color:var(--sp-ink);
	font-family:"Besley",serif;
	font-weight:700;
	line-height:1.2
}
h1{
	font-size:36px;
	text-wrap:balance;
	margin:0 0 20px;
	max-width:20ch
}
h2{
	font-size:28px;
	margin:0 0 12px
}
h3{
	font-size:21px;
	margin:28px 0 8px
}
p,ul,ol,dl{margin:0 0 16px}
strong,b{font-weight:700}
time{white-space:nowrap}
.sp-skipper{
	color:var(--sp-action);
	background:var(--sp-panel);
	font-weight:700;
	padding:0 20px;
	min-height:48px;
	display:inline-flex;
	align-items:center;
	position:absolute;
	top:-120px;
	left:12px;
	z-index:5
}
.sp-skipper:focus{top:12px}
.sp-frame{
	margin:0 auto;
	max-width:1200px
}
.sp-flank{
	background:var(--sp-panel);
	border-bottom:1px solid var(--sp-rule);
	padding:16px 20px
}
.sp-brand{
	color:var(--sp-ink);
	text-decoration:none;
	font-family:"Besley",serif;
	font-size:21px;
	font-weight:700;
	min-height:46px;
	display:inline-flex;
	align-items:center
}
.sp-lanes ol{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	gap:0 20px
}
.sp-lanes a{
	color:var(--sp-ink);
	text-decoration:none;
	min-height:46px;
	display:inline-flex;
	align-items:center
}
.sp-lanes a:hover{text-decoration:underline}
.sp-lanes a[aria-current=page]{
	text-decoration:underline;
	text-decoration-thickness:3px;
	text-underline-offset:6px;
	font-weight:700
}
.sp-main{
	background:var(--sp-paper);
	padding:28px 20px 12px
}
.sp-main>*+*{margin-top:44px}
.sp-banner>:last-child{margin-bottom:0}
.sp-standfirst{
	font-size:21px;
	line-height:1.55;
	margin-bottom:24px;
	max-width:60ch
}
.sp-goto{margin:0}
.sp-go{
	color:var(--sp-on-action);
	background:var(--sp-action);
	border-radius:6px;
	text-decoration:none;
	font-weight:700;
	padding:0 24px;
	min-height:48px;
	display:inline-flex;
	align-items:center
}
.sp-go:hover{
	text-decoration:underline;
	text-decoration-thickness:2px
}
.sp-recent h2,.sp-tasks h2,.sp-runbook h2{margin-bottom:20px}
.sp-log{
	list-style:none;
	margin:0;
	padding-inline-start:0
}
.sp-log li{margin:0 0 28px}
.sp-log li:last-child{margin-bottom:0}
.sp-datecell{
	color:var(--sp-muted);
	font-size:15px;
	margin-bottom:4px;
	display:block
}
.sp-what a{
	color:var(--sp-ink);
	font-family:"Besley",serif;
	font-size:21px;
	font-weight:700;
	line-height:1.3
}
.sp-what p{
	margin:6px 0 0;
	max-width:60ch
}
.sp-what .sp-smallprint{
	color:var(--sp-muted);
	font-size:15px
}
.sp-smallprint a{
	color:var(--sp-muted);
	font-family:"Manrope",sans-serif;
	font-size:15px;
	font-weight:400
}
.sp-further{margin:20px 0 0}
.sp-selector{margin:0}
.sp-selector dt{
	font-size:21px;
	margin:0 0 4px
}
.sp-selector dd{
	margin:0 0 20px;
	max-width:60ch
}
.sp-runbook ol{
	margin:0;
	padding-left:24px;
	max-width:60ch
}
.sp-runbook li{margin:0 0 8px}
.sp-box{
	background:var(--sp-panel);
	padding:24px 20px
}
.sp-box>:last-child{margin-bottom:0}
.sp-box p{max-width:60ch}
.sp-box .sp-log li{margin-bottom:16px}
.sp-box .sp-datecell{font-size:15px}
.sp-topiclist,.sp-nextlinks{
	list-style:none;
	margin:0 0 16px;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	gap:0 24px
}
.sp-topiclist a,.sp-nextlinks a{
	min-height:46px;
	display:inline-flex;
	align-items:center
}
.sp-topiclist span{
	font-weight:700;
	min-height:46px;
	display:inline-flex;
	align-items:center
}
.sp-crumbtrail{
	font-size:15px;
	margin:0 0 20px
}
.sp-crumbtrail ol{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-wrap:wrap
}
.sp-crumbtrail li+li::before{
	content:"/";
	color:var(--sp-muted);
	margin:0 8px
}
.sp-crumbtrail a{
	min-height:46px;
	display:inline-flex;
	align-items:center
}
.sp-crumbtrail span{
	color:var(--sp-muted);
	font-size:15px
}
.sp-meta{
	color:var(--sp-muted);
	font-size:15px;
	margin:0 0 28px
}
.sp-t-post .sp-main>*+*{margin-top:0}
.sp-t-post h1{margin-bottom:12px}
.sp-entry-grid{margin-bottom:44px}
.sp-jumpto{margin:0 0 32px}
.sp-jumpto h2{
	font-size:18px;
	margin-bottom:8px
}
.sp-jumpto ol{
	margin:0;
	padding-left:22px
}
.sp-jumpto li{margin:0 0 6px}
.sp-essay{
	counter-reset:step;
	max-width:68ch
}
.sp-stage{
	counter-increment:step;
	margin-top:40px
}
.sp-stage:first-child{margin-top:0}
.sp-stage h2::before{content:counter(step) ". "}
.sp-essay ul,.sp-essay ol{padding-left:24px}
.sp-essay li{margin:0 0 6px}
.sp-essay blockquote{
	background:var(--sp-panel);
	margin:0 0 18px;
	padding:16px 20px
}
.sp-essay blockquote>:last-child{margin-bottom:0}
.sp-essay pre{
	background:var(--sp-panel);
	font-size:15px;
	line-height:1.5;
	margin:0 0 18px;
	padding:16px;
	overflow-x:auto
}
.sp-essay code{
	background:var(--sp-panel);
	font-size:15px;
	padding:1px 4px
}
.sp-essay pre code{
	background:none;
	padding:0
}
.sp-scrollbox{
	margin:0 0 20px;
	overflow-x:auto
}
.sp-scrollbox table{
	font-size:15px;
	border-collapse:collapse
}
.sp-scrollbox th,.sp-scrollbox td{
	border-bottom:1px solid var(--sp-rule);
	text-align:left;
	padding:8px 14px 8px 0;
	vertical-align:top
}
.sp-scrollbox th{
	background:var(--sp-panel);
	font-weight:700;
	padding-left:8px
}
.sp-cite{margin-top:48px}
.sp-cite ul{
	margin:0;
	padding-left:24px
}
.sp-tenets{
	counter-reset:clause;
	list-style:none;
	margin:0;
	padding:0
}
.sp-tenets li{
	counter-increment:clause;
	margin:0 0 28px
}
.sp-tenets h2{
	font-size:21px;
	margin:0 0 6px
}
.sp-tenets h2::before{content:counter(clause) ". "}
.sp-tenets p{
	margin:0;
	max-width:60ch
}
.sp-floor{
	color:var(--sp-band-ink);
	background:var(--sp-band);
	margin-top:44px;
	padding:28px 20px 32px
}
.sp-linkmap{
	margin:0;
	display:grid;
	gap:20px
}
.sp-pillar dt{
	color:var(--sp-band-ink);
	font-size:18px;
	margin:0 0 4px
}
.sp-pillar dd{margin:0}
.sp-floor a{
	color:var(--sp-band-ink);
	min-height:46px;
	display:inline-flex;
	align-items:center
}
.sp-floor a:hover{text-decoration-thickness:3px}
.sp-note{
	color:var(--sp-band-ink);
	font-size:15px;
	margin:20px 0 0;
	max-width:68ch
}
.sp-note a{
	min-height:0;
	display:inline
}
@media (min-width:768px){
	h1{font-size:40px}
	.sp-flank{
		padding:16px 24px;
		display:flex;
		flex-wrap:wrap;
		align-items:center;
		justify-content:space-between;
		gap:0 24px
	}
	.sp-main{padding:40px 24px 16px}
	.sp-log li{
		display:grid;
		grid-template-columns:128px minmax(0,1fr);
		gap:0 24px
	}
	.sp-datecell{margin:6px 0 0}
	.sp-selector{
		display:grid;
		grid-template-columns:220px minmax(0,1fr);
		gap:0 32px
	}
	.sp-box{padding:32px}
	.sp-linkmap{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:24px 32px
	}
	.sp-floor{padding:32px 24px 36px}
}
@media (min-width:1024px){
	h1{font-size:56px}
	.sp-frame{
		display:grid;
		grid-template-columns:220px minmax(0,1fr);
		column-gap:0
	}
	.sp-flank{
		border-right:1px solid var(--sp-rule);
		border-bottom:none;
		padding:32px;
		height:100vh;
		overflow:auto;
		display:block;
		grid-column:1;
		grid-row:1/span 2;
		align-self:start;
		position:sticky;
		top:0
	}
	.sp-brand{margin-bottom:20px}
	.sp-lanes ol{display:block}
	.sp-lanes a{display:flex}
	.sp-main{
		padding:56px 32px 16px 48px;
		grid-column:2;
		grid-row:1
	}
	.sp-floor{
		padding:36px 32px 40px 48px;
		grid-column:2;
		grid-row:2
	}
	.sp-entry-grid{
		display:grid;
		grid-template-columns:minmax(0,1fr) 220px;
		align-items:start;
		gap:0 48px
	}
	.sp-jumpto{
		border-left:1px solid var(--sp-rule);
		margin:0;
		padding-left:16px;
		grid-column:2;
		grid-row:1;
		position:sticky;
		top:24px
	}
	.sp-essay{
		grid-column:1;
		grid-row:1
	}
	.sp-tenets li{
		display:grid;
		grid-template-columns:240px minmax(0,1fr);
		gap:0 32px
	}
	.sp-tenets h2{margin:0}
}
.sp-sample{
	background:var(--sp-panel);
	font-size:15px;
	margin:0 0 20px;
	padding:8px 12px
}
