:root {
	--heckmeck-lightgrey:	#dddddd;
	--heckmeck-dark:	#c5b4a5;
	--heckmeck-darker:	#977848;
	--heckmeck-darkerer:	#83683f;
	--heckmeck-blue:	#86a5c9;
	--heckmeck-bluetext:	#5981ae;
	--heckmeck-link:	#02917b;
	--heckmeck-content:	#e3caa4;
	--heckmeck-content-dark:	#cdb694;
	--heckmeck-content-light:	#f9f4ec;
	--heckmeck-content-lighter:	#f1e4d1;
	--heckmeck-headline:	#673395;
	--heckmeck-red:		#d63361;
	--bs-body-color:	#212529;
	--bs-font-sans-serif:	"Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--bs-font-serif:	Georgia, "Times New Roman", Times, serif;
	--bs-font-monospace:	Menlo, Inconsolata, Monaco, "Lucida Sans Typewriter", Consolas, "Courier New", monospace;
	--bs-body-line-height:	1.25;
	--bs-body-font-size:	1.0rem;
	--bs-body-font-weight:	400;
}

/* general */
.float-start	{float:left !important;}
.float-end	{float:right !important;}
.text-end	{text-align:right !important;}
.text-center	{text-align:center !important;}
.text-truncate	{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.nobr	{white-space:nowrap;}
.d-none		{display:none !important;}
.v-hide		{visibility:hidden !important;}
.w-100		{width:100% !important;}
.bg-white	{background-color:white;}
.bg-red		{background-color:var(--heckmeck-red) !important;}
.bg-prp		{background-color:var(--heckmeck-headline);}
.bg-h-light	{background-color:var(--heckmeck-lightgrey);}
.bg-h-blue	{background-color:var(--heckmeck-blue);}
.bg-h-content	{background-color:var(--heckmeck-content-lighter);}
.bg-h-homefill	{background-color:var(--heckmeck-content);}
.bg-h-content-dark	{background-color:var(--heckmeck-content-dark);}
.bg-h-content-light	{background-color:var(--heckmeck-content-light);}
.bg-h-nav	{background-color:var(--heckmeck-content);}
.fs-large	{font-size:112.5%;}
.bluetext	{color:var(--heckmeck-bluetext);}
.greentext	{color:var(--heckmeck-link);}
.redtext	{color:var(--heckmeck-red);}
.darktext	{color:var(--heckmeck-darker);}
.midtext	{color:var(--heckmeck-content-dark);}
.lighttext	{color:var(--heckmeck-content-lighter);}
.position-relative	{position:relative !important;}
.d-narrow {display:block;}
.d-wide,.d-mid,.d-wide-inline {display:none;}
@media (min-width:996px) {
	.d-narrow {display:none;}
	.d-wide {display:block;}
	.d-wide-inline {display:inline-block;}
}

/* general flex */
.flex-column	{flex-direction:column !important;}
.flex-row	{flex-direction:row !important;}
.align-items-start	{align-items:flex-start !important;}
.align-items-stretch	{align-items:stretch !important;}
.align-content-stretch	{align-content:stretch !important;}
.min-vh-100	{min-height:100vh !important;}
.min-vh-75	{min-height:75vh !important;}
.d-flex	{display:flex !important;}
.flex-fill	{flex:1 1 auto !important;}
.flex-column	{flex-direction:column !important;}
.justify-content-evenly	{justify-content:space-evenly !important;}
.justify-content-between	{justify-content:space-between !important;}
.flex-wrap	{flex-wrap:wrap !important;}
.flex-rest	{flex:0 0 auto !important;}

/* base styles */
html	{display:block;}
*,*::before,*::after	{box-sizing: border-box;}
body{
	margin: 0;
	font-family: var(--bs-font-serif);
	font-size: var(--bs-body-font-size);
	font-weight: var(--bs-body-font-weight);
	line-height: var(--bs-body-line-height);
	color: var(--bs-body-color);
	text-align: var(--bs-body-text-align);
	background: var(--heckmeck-blue) url(/img/bluestripe.jpg);
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a	{color:var(--heckmeck-link);text-decoration:none;}
a:hover	{text-decoration:underline;}

/* width breakpoints: 996 768 640 */ 

/* page skeleton */
header {grid-area:hd;display:grid;grid-template-columns:48px auto 48px;align-items:end;padding:0rem 1rem 0.75rem;background:#fff;}
	header h1,header p {margin:0;font-weight:bold;color:var(--heckmeck-bluetext);font-family:var(--bs-font-sans-serif);font-size:13px;}
	header h1 {text-align:center;}
	header .d-narrow {padding:16px 0;}
main	{grid-area:mn;background:var(--heckmeck-content);}
#rb1	{grid-area:r1;background:#0bc top left url(/img/rainbow.jpg) repeat-x;}
#rb2	{grid-area:r2;background:#0bc top right url(/img/rainbow.jpg) repeat-x;transform:scaleX(-1);}
#headerstripe	{grid-column:1/-1;grid-row:1;background:var(--heckmeck-lightgrey);}
#rb1stripe	{grid-column:1/-1;grid-row:2;background:var(--heckmeck-blue);}
#rb2stripe	{grid-column:1/-1;grid-row:4;background:var(--heckmeck-blue);}
#teaserstripe	{grid-column:1/-1;grid-row:3;background:var(--heckmeck-headline);}
#footerstripe	{grid-column:1/-1;grid-row:4;background:var(--heckmeck-blue);}
#rb1shadow	{grid-column:1/-1;grid-row:2;box-shadow:0 4px 5px rgba(0,0,0,.25);z-index:2;}
#rb2shadow	{grid-column:1/-1;grid-row:4;box-shadow:0 -4px 5px rgba(0,0,0,.25);z-index:2;}
#footershadow	{grid-column:1/-1;grid-row:4;box-shadow:0 -4px 5px rgba(0,0,0,.25);z-index:4;}
#sidebar	{grid-column:2/-2;grid-row:3/-1;background:var(--heckmeck-content);z-index:3;}
footer	{grid-area:ft;background-color:var(--heckmeck-content-dark);text-align:center;padding-top:9px;font-size:13px;color:var(--heckmeck-darker);z-index:5;}
#burger	{cursor:pointer;}
body.wide #burger {display:none;}

body.bar #footerstripe {grid-row:6;}
body.bar #footershadow {grid-row:6;}

/* page skeleton breakpoints */
body {
	display: grid;
	grid-template:
	". hd hd ." 88px
	". r1 r1 ." 8px
	". mn sd ." auto
	". ft ft ." 36px
	/ 0 auto 0 0;
	height:100vh;
	padding:0;
}
body.bar {
	grid-template:
	". hd hd ." 88px
	". r1 r1 ." 8px
	". ts ts ." min-content
	". r2 r2 ." 8px
	". mn sd ." auto
	". ft ft ." 36px
	/ 0 auto 0 0;
}
body.wide {
	display: grid;
	grid-template:
	". hd ." 88px
	". r1 ." 8px
	". mn ." auto
	". ft ." 36px
	/ 0 auto 0;
	height:100vh;
	padding:0;
}
#sidebar {display:none;}
#burger-check{display:none;}
#burger-check:checked + #sidebar {
	display: block;
}
@media (min-width:768px) {
	body,body.bar,body.wide {grid-template-columns:auto 640px 0 auto;}
	header {padding:0 2rem 0.75rem;}
}
@media (min-width:996px) {
	#sidebar {grid-area:sd;display:block;z-index:unset;}
	body,body.bar {grid-template-columns:auto 640px 320px auto;}
	body.wide {grid-template-columns:auto 960px auto;}
	body.wide #sidebar{display:none;}
	header {grid-template-columns:160px auto 160px;}
}


footer ul li a {text-decoration:underline;color:var(--heckmeck-darker);}
footer ul {list-style-type:none;padding-left:0;display:inline;}
footer ul li {display:inline-block;}
footer li:before {content:" · ";} 
footer li:first-child:before {content:none;} 

/* home teasers */
#teasers {grid-area:ts;background:var(--heckmeck-headline);width:100%;}
.teaser-row {display:flex;flex-wrap:wrap;padding:0;margin:0 auto;}
.teaser-col {text-align:center;font-size:80%;font-weight:bold;flex:1 0 0%;position:relative;background:#426;}
.teaser-col img {filter:opacity(75%);mix-blend-mode:lighten;}
.teaser-col:hover img, .gallery-img:hover img, .teaser-col.no-dim img {filter:unset;mix-blend-mode:normal;}
.teaser-col img {max-width:100%;height:auto;}
.teaser-col {overflow:hidden;}
.teaser-col .teaser-caption {display:none;left:0;top:0;position:absolute;padding:0.25rem 0.5rem;text-align:left;color:#fff;font-size:1rem;text-shadow:0 0 3px #000,1px 1px 2px #000,1px 1px 2px #000;}
.teaser-col:hover .teaser-caption, .teaser-col.no-dim .teaser-caption {display:block;}
.teaser-col a:hover {text-decoration:none;}


/* content */
.content	a {text-decoration:underline;}
.content	{font-family:var(--bs-font-serif);text-align:left;}
.content strong, .imagebox-caption,.sans, footer, .home-aside, .teaser-col	{font-family: var(--bs-font-sans-serif);}
.content ul.tags {
  padding-left: 0;
}
.content ul {
  list-style-image: url(/img/blue-square.svg);
  padding-left: 1.5rem;
}


/* copied verbatim from old css */
.imagebox-caption a {
	text-decoration: underline;
}
img {
	vertical-align: middle;
}

/* ---------------- headlines --------------- */

h1 {
  font-size: 1.75rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: var(--heckmeck-headline);
  line-height: 1;
  text-align: left;
  font-family: var(--bs-font-sans-serif);
}
@media (min-width: 380px) {
  h1 {
    font-size: 2rem;
  }
}
@media (min-width: 576px) {
  h1 {
    font-size: 2.5rem;
  }
}
.post-meta {
	color: var(--heckmeck-darker);
	font-weight: bold;
	font-size: 80%;
	font-family: var(--bs-font-sans-serif);
	border-bottom: 2px solid var(--heckmeck-content);
	padding-bottom: 0.25rem;
	margin-top: 1rem;
	text-align: right;
}
header h1 {
	margin: 0;
	padding: 0;
	font-size: 0.5rem;
}
h2 {
	font-size: 160%;
	margin-bottom: 1rem;
	color: var(--heckmeck-headline);
	font-family: var(--bs-font-sans-serif);
	text-align: left;
}
.content h2 {
	margin-top: 3.6rem;
}
h3 {
	font-size: 100%;
	margin-bottom: 0.25rem;
	font-family: var(--bs-font-sans-serif);
	text-align: left;
	color: var(--heckmeck-headline);
}
h3 + p {
    margin-top: 0;
}
.content h3 {
	margin-top: 1.2rem;
}
.home h2 {
	color: var(--heckmeck-headline);
	margin-bottom: 0;
}
.home-aside {
	display: none;
	width: 20rem;
	position: absolute;
	bottom: 1rem;
	font-weight: bold;
	color: var(--heckmeck-bluetext);
	font-size: 80%;
}
@media (min-width: 996px) {
	.home-aside {
		display: block;
	}
}
.dotted {
	border-top: 1px dotted var(--heckmeck-darker);
}
.month-header {
	position: relative;
}
.month-header > img {
	max-width: 100%;
	height: auto;
	opacity: 0.8;
	mix-blend-mode:soft-light;
}
.month-title h1, .month-title h2 {
	text-align: center;
	color: white;
	margin: 0;
	padding: 0;
}
.month-title {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.month-nxt {
	position: absolute;
	right: 1rem;
	top: calc(50% - 15px);
}
.month-prv {
	position: absolute;
	left: 1rem;
	top: calc(50% - 15px);
}
.month-title h1 {
	font-size: 1.25rem;
}
.month-title h2 {
	font-size: 0.75rem;
	text-wrap: balance;
	padding:0 2rem;
}
@media (min-width: 560px) {
	.month-title h1 {
		font-size: 2rem;
		margin-bottom:4px;
	}
	.month-title h2 {
		font-size: 1rem;
	}
}
@media (min-width: 996px) {
	.month-title h1 {
		font-size: 2.5rem;
	}
	.month-title h2 {
		font-size: 1rem;
	}
}
.f-links a {text-decoration:none;}
.f-links a:hover {text-decoration:underline;}
.blog-post-list {
	width: 100%;
	max-width: 100vw;
}
.blog-post h1 a, .blog-post h2 a {
	color: var(--heckmeck-headline);
}
.blog-post h1 {
	margin: 0 0 0.25rem;
}
.blog-post {
	padding: 1.5rem 0 2rem;
	margin-bottom: 0;
	background: linear-gradient(to top, var(--heckmeck-content) 9px, var(--heckmeck-content-dark) 16px, var(--heckmeck-content-lighter) 16px);
}
.blog-post .row {
	padding:0 1rem;
}
.blog-post.no-sep {
	background: none;
}
pre {
	padding: 1rem 1rem 0.9rem;
	border-radius: 0.5rem;
	line-height: 1.125;
	overflow-x: auto;
	font-size: 0.875rem;
}
@media (min-width: 768px) {
	.blog-post .row {
		padding:0 2rem;
	}
}

.blog-post-meta {
	color: var(--heckmeck-darker);
	font-weight: bold;
	font-size: 80%;
	font-family: var(--bs-font-sans-serif);
	margin: 0 0 1rem;
}
.blog-post h1, .blog-post h2 {
	text-wrap: balance;
}
.aside-pad {
	padding: 1.5rem 2rem 2rem;
}
.links-aside {
	font-family: var(--bs-font-sans-serif);
}
.links-aside h3 a {
	color: var(--heckmeck-headline);
}
.links-aside h3 {
	font-size: 1rem;
	margin: 0 0 0.5rem;
	color: var(--heckmeck-headline);
}
.links-aside details summary {
	cursor: pointer;
	font-weight: bold;
	color: var(--heckmeck-headline);
}
.links-aside ul {
	list-style-type: none;
	font-weight: bold;
	margin: 0;
	font-size: 1rem;
	padding: 0 0 1rem 1rem;
}
.links-aside ul ul {
	padding: 0.75rem 0 0.25rem 1.5rem;
}
.links-aside li {
	line-height: 1;
	margin: 0 0 0.5rem;
	list-style-image: url(/img/smol-squ.svg);
}
.links-aside li.current > a {
	color: var(--heckmeck-darker);
}
.links-aside li.current {
	list-style-image: url(/img/dark-tria.svg);
}
@media (min-width: 996px) {
	.blog-post-list {
		width:640px;
	}
	body.wide .blog-post-list {
		width:960px;
	}
	.links-aside h3 {
		font-size: 1rem;
	}
	.links-aside .teaser-col {
		display: block;
	}
	.links-aside ul {
		font-size: 0.812rem;
	}
	.links-aside li {
		line-height: 1;
		margin: 0 0 0.25rem;
	}
}
ul.tags.tags-small {
  font-size: 80%;
}
ul.tags a {
	text-decoration: none;
}
ul.tags a:hover {
	text-decoration: underline;
}
ul.tags {
  margin-top: 0;
  margin-bottom: 0;
  list-style-type: none;
  padding-left: 0;
  display: inline;
  font-family: var(--bs-font-sans-serif);
  color: var(--heckmeck-bluetext);
}
ul.tags.subline {
  color: var(--heckmeck-darker);
}

ul.tags li {
  display: inline-block;
}

ul.tags li:before {
  content: " · ";
  font-weight: normal;
}

ul.tags-home {
  display: block;
}

ul.tags-home li:first-child:before, ul.tags.subline li:first-child:before {
  content: none;
}

ul.tags li:before {
  color: var(--heckmeck-content-dark);
}

a.tag-select {
	font-family: var(--bs-font-sans-serif);
	font-weight: bold;
	background-color: var(--heckmeck-content);
	color: var(--heckmeck-darker);
	padding: 4px 1rem;
	border-radius: 1rem;
	margin: 0 0.25rem 0.5rem 0;
	display: inline-block;
	text-decoration: none;
	font-size: 1rem;
}
a.tag-select.f-no-matches {
	opacity: 0.3;
}
h3 a.tag-select {
	margin: 0;
	vertical-align: bottom;
}
@media (hover: hover) {
	a.tag-select:hover {
		text-decoration: none;
		background-color: var(--heckmeck-bluetext);
		color: var(--heckmeck-content-lighter);
	}
}
a.tag-select.selected {
	text-decoration: none;
	background-color: var(--heckmeck-link);
	color: var(--heckmeck-content-lighter);
}
h3.f-list {
	padding: 4px 0;
	font-size: 1.25rem;
	margin: 0 0 0.5rem;
}
.f-link-list {
	width: 50%;
	margin-right: 0.5rem;
}
ul.f-links {
	list-style-type: none;
	list-style-image: none;
	padding-left: 0;
	margin: 0.5rem 0 0;
}
ul.f-links li {
	text-align: left;
	font-family: var(--bs-font-sans-serif);
	font-weight: bold;
	font-size: 0.812rem;
	margin: 0 0 0.25rem;
	line-height: 1;
}

ul.f-links li small {
	font-size: 0.75rem;
}
ul.f-links li.f-dis-hover a {
	opacity:0.25;
	filter:blur(1px);
}

.imagebox {
  background-color: var(--heckmeck-blue);
  border-radius: 1rem;
  padding: 1rem;
  margin: 1.3rem 0;
}
.imagebox.nobg {
  background: none;
  border-radius: 0;
  padding: 0;
  margin: 0;
  gap: 0.5rem;
}
.imagebox-card {
  margin: 0.5rem;
}
.imagebox.nobg .imagebox-card {
  margin: 0.5rem 0;
}
.imagebox-card img {
  border-radius: 0.5rem;
  max-width: 100%;
  height: auto;
  object-fit: scale-down;
}
.rounded {border-radius: 0.5rem}
.imagebox-card.not-rounded img {
  border-radius: 0;
}
.gallery {
	margin: 0 -0.5rem;
	flex-wrap: wrap !important;
	justify-content: center;
	display: flex !important;
}
.gallery-img {
	position: relative;
	margin: 0.5rem;
}
.gallery-img img {
	width: 132px;
	height: 132px;
	object-fit: cover;
	border-radius: 4px;
}
.gallery-img span {
	left: 0;
	bottom: 0.8rem;
	position: absolute;
	padding: 0 0.5rem;
	text-align: left;
	color: white;
	font-size: 0.75rem;
	text-shadow: 0 0 3px black, 2px 2px 4px black;
	font-family: var(--bs-font-sans-serif);
	color: white;
}
.gallery-img span a {
	color: white;
	text-decoration-thickness: 3px;
}
.no-img-round img {
  border-radius: 0;
}
.imagebox-dark {
	text-align: center;
	background-color: var(--heckmeck-dark);
	border-radius: 0.5rem;
	padding: 0.5rem;
}
.imagebox-dark img {
	max-width: 100%;
	height: auto;
	object-fit: scale-down;
	box-shadow: 1px 1px 3px var(--heckmeck-darkerer);
}
.imagebox-caption, figcaption {
  font-size: 80%;
  padding: 4px 6px 2px;
  font-weight: bold;
  text-align: center;
  color: var(--heckmeck-bluetext);
}
.imagebox .imagebox-caption {
  margin-bottom: -0.75rem;
}
.imagebox .imagebox-caption {
  color: var(--bs-body-color);
}
.imagebox.nobg .imagebox-caption {
  color: var(--heckmeck-bluetext);
}
.content dt {
  font-weight: bold;
  font-family: var(--bs-font-sans-serif);
  color: var(--heckmeck-bluetext);
}
.content dd > p {
  margin-top: 0;
}

.content dl ul {
  margin-top: 0;
  padding-left: 0;
}
figcaption {
  font-family: var(--bs-font-sans-serif);
}

.bluebox {
  background-color: var(--heckmeck-blue);
  border-radius: 1rem;
  padding: 1rem;
  margin: 2rem 0;
}

.dangerbox {
  background-color: var(--heckmeck-red);
  border-radius: 1rem;
  padding: 1rem;
  margin: 2rem 0;
  color: white;
  text-align: left;
}

.dangerbox p {
  margin-top: 0;
}
.dangerbox a {
  color: white;
  text-decoration: underline;
}

.dangerbox img {
  width: 30px;
  height: 30px;
}

.lightbox {
  background-color: var(--heckmeck-content-light);
  border-radius: 1rem;
  padding: 1rem;
  margin: 1rem 0 2rem;
}

.bluebox h2, .bluebox a {
  color: white;
  font-weight: bold;
}

.full-pre {
  padding: 0;
  overflow: auto;
  background-color: var(--heckmeck-content-light);
  margin-bottom: 1rem;
}
pre mark {
  background-color: var(--heckmeck-content-lighter);
}
pre s { color: var(--heckmeck-red); }
pre.inline {
	padding:0.25rem 0;
	margin:0;
	background-color:unset;
}
td pre {padding:1rem 0.5rem;margin:0.25rem 0;}
mark.green {
  background-color: #a4e3a8;
}
mark.red {
  background-color: #f199b0;
}
mark.grey {
  background-color: black;
  color: white;
}
mark.blue {
  background-color: #8ef8f6;
}
mark.yellow {
  background-color: #eaef55;
}
mark.light {
  background-color: var(--heckmeck-content-lighter);
}
dd {
  margin-bottom: 1rem;
}
mark.legend {
  padding: 1px 8px;
  border-radius: 4px;
  font-weight: bold;
  font-family: var(--bs-font-sans-serif);
}
.full-pre pre {
  border-radius: 0;
  padding: 0 1rem;
  display: inline-block;
  overflow-x: unset;
}
code, pre {
  background-color: var(--heckmeck-content-light);
  text-shadow: 1px 1px 1px var(--heckmeck-content-lighter);
  font-family: var(--bs-font-monospace);
}
code.nobg{background-color:unset;}
code {
  /*text-wrap: nowrap;*/
  border-radius: 3px;
  padding: 1px 6px;
}
.content code strong {
  font-family: inherit;
}





/* overlay */
#overlay {
	z-index: 100;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgb(103, 51, 149, 0.9);
	display: none;
}
#onxt {
	position: fixed;
	right: 1rem;
	top: calc(50% - 15px);
}
#oprv {
	position: fixed;
	left: 1rem;
	top: calc(50% - 15px);
}
#ocls {
	position: fixed;
	right: 1rem;
	top: 1rem;
}
#oimg {
	width: 100%;
	height: calc(100% - 2rem);
	object-fit: scale-down;
}
#obar {
	position: fixed;
	left: 0;
	bottom: 0;
	padding: 0.5rem 1rem;
	width: 100%;
	height: 2rem;
	background-color: black;
	font-family: var(--bs-font-sans-serif);
	color: white;
	font-size: 1rem;
	margin-right: 4rem;
	display: flex;
	justify-content: space-between;
}
#obar a {
	color: white;
	text-decoration: underline;
}
#obar a:hover {
	text-decoration: none;
}
#obar span {
	text-align: center;
}
#obar small {
	font-size: 0.75rem;
	width: 5rem;
	padding-top: 0.125rem;
}
#obar small.r {
	text-align: right;
}
.linkdescription {
  text-align: left;
}

.linkdescription a {
  display: block;
}

.link-row {
  line-height: 1.2;
  font-weight: bold;
  font-family: var(--bs-font-sans-serif);
}
.link-row + .link-row {
  margin-top: 1rem;
}

.link-row a.detail-link {
  font-size: 80%;
  color: var(--heckmeck-bluetext);
  text-decoration: none;
}

.link-row img {
  width: 2.4rem;
  height: 2.4rem;
}

.link-row .link-row {
  margin-top: 1rem;
}


blockquote {
  padding-left: 2rem;
  padding-right: 2rem;
  border-left: 4px solid var(--heckmeck-blue);
  font-style: italic;
  margin-left: 0;
  margin-right: 0;
  text-align: left;
}

.link-icon {
  filter: invert(100%) opacity(25%);
}

.content table {
  overflow: auto;
  border-collapse: collapse;
  text-align: left;
  display: block;
}
.content table.w-100 tbody {
	display: table;
	width: 100%;
}
.table th, .table td {
  vertical-align: top;
  
}
.table th {
  color: var(--heckmeck-darker);
}
.table tr th, .table tr td {
  border-bottom: 1px solid var(--heckmeck-content);
}
.table tr:first-child th, .table tr:first-child td {
  border-top: 1px solid var(--heckmeck-content);
}
.table th {
  font-family: var(--bs-font-sans-serif);
}
.table td + td, .table th + td, .table th + th {
  padding-left: 0.5rem;
}
dl {
	text-align: left;
}

ul.spaced-ul li {
  margin-bottom: 1rem;
  padding-top: 0.25rem;
}
ul.dense-ul {padding-top: 0.25rem;}
ul.dense-ul li {
  margin-bottom: 0 !important;
  padding-top: 0;
}
.blog-prevnext {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	text-wrap: balance;
	font-family: var(--bs-font-sans-serif);
	height: 3rem;
}
.blog-prevnext a {
	color: var(--heckmeck-bluetext);
	position: relative;
}
.blog-prevnext a.prv {
	padding-left: 2rem;
}
.blog-prevnext a.nxt {
	text-align: right;
	padding-right: 2rem;
}
.blog-prevnext a.prv::before {
	content: '‹';
	position: absolute;
	top: 0;
	left: 0.75rem;
}
.blog-prevnext a.nxt::after {
	content: '›';
	position: absolute;
	top: 0;
	right: 0.75rem;
}
button.btn {
	background-color: var(--heckmeck-link);
	border-radius: 5px;
	border:1px solid var(--heckmeck-content-light);
	padding: 5px 8px;
	color: white;
	font-family: var(--bs-font-sans-serif);
	font-weight: bold;
	cursor: pointer;
}
button.btn:hover {
	background-color: var(--heckmeck-red);
}
button.pill {
	font-family: var(--bs-font-sans-serif);
	font-weight: bold;
	background-color: var(--heckmeck-bluetext);
	color: var(--heckmeck-content-lighter);
	border: none;
	font-size: 1rem;
	padding: 0.25rem 0.75rem;
	margin: 0 0.25rem 0.5rem 0;
	border-radius: 1rem;
	cursor: pointer; 
}
button.pill:hover,button.pill.selected {
	background-color: var(--heckmeck-red);
}
.rbtxt span:nth-child(6n + 1){color:#008da3;}
.rbtxt span:nth-child(6n + 2){color:#194da2;}
.rbtxt span:nth-child(6n + 3){color:#710d71;}
.rbtxt span:nth-child(6n + 5){color:#a53347;}
.rbtxt span:nth-child(6n + 4){color:#cc7c20;}
.rbtxt span:nth-child(6n + 6){color:#24bf6f;}


/* margins and paddings */

.m-0	{margin: 0 !important;}
.m-1	{margin: 0.25rem !important;}
.m-2	{margin: 0.5rem !important;}
.m-3	{margin: 1rem !important;}
.m-4	{margin: 1.5rem !important;}
.m-5	{margin: 3rem !important;}
.m-auto	{margin: auto !important;}
.ms-1	{margin-left: 0.25rem !important;}
.me-3	{margin-right: 1rem !important;}
.mx-0	{margin-right: 0 !important;  margin-left: 0 !important;}
.mx-1	{margin-right: 0.25rem !important;  margin-left: 0.25rem !important;}
.mx-2	{margin-right: 0.5rem !important; margin-left: 0.5rem !important;}
.mx-3	{margin-right: 1rem !important; margin-left: 1rem !important;}
.mx-4	{margin-right: 1.5rem !important; margin-left: 1.5rem !important;}
.mx-5	{margin-right: 3rem !important; margin-left: 3rem !important;}
.mx-auto{margin-right: auto !important; margin-left: auto !important;}
.my-0	{margin-top: 0 !important; margin-bottom: 0 !important;}
.my-1	{margin-top: 0.25rem !important; margin-bottom: 0.25rem !important;}
.my-2	{margin-top: 0.5rem !important; margin-bottom: 0.5rem !important;}
.my-3	{margin-top: 1rem !important; margin-bottom: 1rem !important;}
.my-4	{margin-top: 1.5rem !important;margin-bottom: 1.5rem !important;}
.my-5	{margin-top: 3rem !important; margin-bottom: 3rem !important;}
.my-auto{margin-top: auto !important; margin-bottom: auto !important;}
.mt-0	{margin-top: 0 !important;}
.mt-1	{margin-top: 0.25rem !important;}
.mt-2	{margin-top: 0.5rem !important;}
.mt-3	{margin-top: 1rem !important;}
.mt-4	{margin-top: 1.5rem !important;}
.mt-5	{margin-top: 3rem !important;}
.mt-auto{margin-top: auto !important;}
.mb-0	{margin-bottom: 0 !important;}
.mb-1	{margin-bottom: 0.25rem !important;}
.mb-2	{margin-bottom: 0.5rem !important;}
.mb-3	{margin-bottom: 1rem !important;}
.mb-4	{margin-bottom: 1.5rem !important;}
.mb-5	{margin-bottom: 3rem !important;}
.mb-auto{margin-bottom: auto !important;}
.p-0	{padding: 0 !important;}
.p-1	{padding: 0.25rem !important;}
.p-2	{padding: 0.5rem !important;}
.p-3	{padding: 1rem !important;}
.p-4	{padding: 1.5rem !important;}
.p-5	{padding: 3rem !important;}
.px-0	{padding-right: 0 !important; padding-left: 0 !important;}
.px-1	{padding-right: 0.25rem !important; padding-left: 0.25rem !important;}
.px-2	{padding-right: 0.5rem !important; padding-left: 0.5rem !important;}
.px-3	{padding-right: 1rem !important; padding-left: 1rem !important;}
.px-4	{padding-right: 1.5rem !important; padding-left: 1.5rem !important;}
.px-5	{padding-right: 3rem !important; padding-left: 3rem !important;}
.py-0	{padding-top: 0 !important; padding-bottom: 0 !important;}
.py-1	{padding-top: 0.25rem !important; padding-bottom: 0.25rem !important;}
.py-2	{padding-top: 0.5rem !important; padding-bottom: 0.5rem !important;}
.py-3	{padding-top: 1rem !important; padding-bottom: 1rem !important;}
.py-4	{padding-top: 1.5rem !important; padding-bottom: 1.5rem !important;}
.py-5	{padding-top: 3rem !important; padding-bottom: 3rem !important;}
.pt-0	{padding-top: 0 !important;}
.pt-1	{padding-top: 0.25rem !important;}
.pt-2	{padding-top: 0.5rem !important;}
.pt-3	{padding-top: 1rem !important;}
.pt-4	{padding-top: 1.5rem !important;}
.pt-5	{padding-top: 3rem !important;}
.pb-0	{padding-bottom: 0 !important;}
.pb-1	{padding-bottom: 0.25rem !important;}
.pb-2	{padding-bottom: 0.5rem !important;}
.pb-3	{padding-bottom: 1rem !important;}
.pb-4	{padding-bottom: 1.5rem !important;}
.pb-5	{padding-bottom: 3rem !important;}
