/* -----------------------------------------------------------------------------
/* Webfonts
----------------------------------------------------------------------------- */

@font-face {
	font-family: 'SourceCodePro';
	font-weight: 1 999;
	font-display: swap;
	src: url('../f/S.woff2') format('woff2');
}

/* -----------------------------------------------------------------------------
/* Custom properties
----------------------------------------------------------------------------- */

:root {
	--serif: 'Alegreya', serif;
	--sans: 'Avenir Next', 'Segoe UI', sans-serif;
	--mono: 'SourceCodePro', monospace;
	--txtAlt: 500 1.5rem/1.6 var(--sans);
	color-scheme: light dark;
	--colorLink: light-dark(#437689, #99bfcc);
	--colorHover: light-dark(#c23f38, #d77a75);
	--colorLite: #fffb;
	--gray1: #f5f5fa;
	--gray2: #e0e2e6;
	--gray3: #d6d9dd;
	--gray4: #cccfd3;
	--gray5: #a3a4a7;
	--gray6: #75767a;
	--gray7: #424448;
	--gray8: #222427;
	--gray9: #111314;
	--trans0: translate3d(0, 0, 0);
	--br: 6px;
	--hdr: 5rem;
	--bright: brightness(1.15);
	--btnBorder: 0 0 0 1px #000, 0 0 2px 2px #fff3;
}

/* -----------------------------------------------------------------------------
/* Combined styles
----------------------------------------------------------------------------- */

#b,
#l,
#nav,
#nav ul,
.df,
.eMetaDiet,
.eTopics,
.pgnList,
.star,
svg {
	display: flex;
}

#a,
#hdr,
#mHdrBadge,
#mHdrForm,
#mHdrNav,
#mHdrNav ul,
.btn,
.gbtn,
.ginner-container,
.gslide,
.gslider,
.lyt,
.navItem,
.pgn,
.roundupThumb,
.stars {
	display: flex;
	justify-content: center;
	align-items: center;
}

.btns,
.listComma,
.listSlash,
.dateMs {
	display: flex;
	flex-wrap: wrap;
}

.grelative,
.roundupThumb,
.vidW,
figure:is(.thumb, .vid) {
	position: relative;
}

#b,
#l,
#mHdrT,
#o,
#rltdHdr,
#rltdT,
.eT,
.galleryT,
.gslide-desc,
.gslide-title,
.list0,
.mixT,
.thumb,
pre code {
	margin: 0;
}

.mb,
.eHdr,
.rvwInfo,
blockquote,
ol,
p,
ul,
table {
	margin-block: 0 2.8rem;
	
	&:last-child {
		margin-block: 0;
	}
	
}

#mHdrDesc,
.eSmry {
	margin-block: .3rem 0;
}

#eHdrSolo .eMeta,
.rvwMetaTitle {
	margin-block: 0 .4rem;
}

#a,
#sub {
	background: light-dark(var(--gray7), var(--gray9)) linear-gradient(0deg, #0000, #000f);
}

#ftr,
#mHdrDesc,
.cptn,
.eMeta,
.rvwInfo,
.sidebar {

	a {
		color: light-dark(var(--gray6), var(--gray5));
		
		&:hover,
		&:active,
		&:focus {
			color: light-dark(var(--gray8), var(--gray1));
		}
		
	}

}

#ftr,
#mHdrDesc {
	color: light-dark(var(--gray6), var(--gray4));
	
	a {
		text-decoration-thickness: 1px;
	}

}

.cptn,
.eSmry,
.galleryDesc,
.mixSmry,
.navItem {
	color: light-dark(var(--gray6), var(--gray5));
}

#o::backdrop,
.goverlay {
	background: #000e;
}

#o,
.glightbox-container,
.goverlay {
	position: fixed;
	inset: 0;
	inline-size: 100%;
	block-size: 100vh;
}

.gcontainer,
.ginner-container,
.gslider {
	position: relative;
	inline-size: 100%;
	block-size: 100vh;
	overflow: hidden;
}

#q,
#sub,
.boxed,
.btn,
.code,
.rvwInfo,
.rvwMeta,
.vidW,
code,
img {
	border-radius: var(--br);
}

.home,
.postB {

	#m {
		padding-block-start: 0;
	}

	#a {
		margin-block: 0;
	}

}

#ftr,
#rltd .e,
.code,
.gdesc-inner {
	padding-inline: 2rem;
}

#a,
#ftr,
#mHdr,
#q,
#rltdFtr,
#sub,
.btn,
.galleryHdr,
.gslide-description,
.mixSmry,
.pgn,
.rvwMeta,
.sidebar {
	font: var(--txtAlt);
}

#mHdrT,
.rvwMetaTitle {
	font: 825 2.4rem/1.3 var(--serif);
	letter-spacing: -.2px;
}

#ftr,
#mHdr,
#oN,
.galleryHdr,
.gslide-description {
	text-align: center;
}

.btn,
.nowrap,
code,
th {
	white-space: nowrap;
}

.quote.full:before,
.quote.full:after,
hr {
	margin-inline: auto;
	inline-size: 7.2rem;
	block-size: .6rem;
	background: radial-gradient(circle, light-dark(var(--gray8), var(--gray6)) 10%, transparent 10%) center / 3rem 1rem;
	content: '';
}

#h:has(#o[open]),
.glightbox-open {
	overflow: hidden;
}

#mHdrNav a,
#oN a,
.btn,
.eMeta a,
.navItem {
	text-decoration: none;
}

/* -----------------------------------------------------------------------------
/* Base elements
----------------------------------------------------------------------------- */

*,
*:before,
*:after {
	box-sizing: inherit;
}

#h,
#b {
	overscroll-behavior-y: none;
}

#h {
	color-scheme: light;
	box-sizing: border-box;
	font-size: 10px;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	scroll-behavior: smooth;

	&.darkMode {
		color-scheme: dark;

		#dMT {

			.moon {
				display: none;
			}
	
			.sun {
				display: flex;
			}
	
		}

	}

}

#b {
	flex-direction: column;
	align-items: center;
	min-block-size: 100vh;
	background: light-dark(var(--gray1), var(--gray9));
	font-size: 2rem;
	line-height: 1.7;
	font-family: var(--serif);
	text-rendering: optimizeLegibility;
	color: light-dark(var(--gray8), var(--gray2));
}

/* -----------------------------------------------------------------------------
/* Links
----------------------------------------------------------------------------- */

a {
	color: var(--colorLink);
	text-decoration-thickness: 2px;
	text-underline-offset: 2px;
	
	&:link {
		transition: color .3s, text-decoration-color .3s
	}

	&:hover,
	&:active,
	&:focus {
		color: var(--colorHover);
	}

}

/* -----------------------------------------------------------------------------
/* Typography
----------------------------------------------------------------------------- */

.eSmry,
h1,
h2,
h3,
p {
	text-wrap: pretty;
}

.h3,
h2,
h3 {
	font-weight: 700;
	font-family: var(--sans);
}

h2 {
	margin-block: 6rem 2.8rem;
	font-size: 2.6rem;
	line-height: 1.5;
}

.h3,
h3 {
	margin-block: 0 .2rem;
	font-size: 1.9rem;
	line-height: 1.6;
	
	& + .rawH {
		margin-block-start: 2.8rem;
	}
	
}

b,
strong {
	font-weight: 700;
}

blockquote {
	margin-inline: 0;
	border-inline-start: 3px solid light-dark(var(--gray4), var(--gray7));
	padding-inline: 1.5rem 0;
	font-style: italic;
	
	em,
	i {
		font-style: normal;
	}
	
}

ol,
ul {
	margin-inline: 1.8rem 0;
	padding-inline: 1.8rem 0;
}

.eM li:not(:last-child) {
	margin-block: 0 2.8rem;
}

hr {
	display: table;
	margin-block: 4rem;
	border: 0;
	clear: both;

	&:last-child {
		margin-block: 4rem 0;
	}
	
}

.txtR {
	text-align: end;
}

/* -----------------------------------------------------------------------------
/* Images, media
----------------------------------------------------------------------------- */

figure {
	margin: 0 0 3rem;

	&.thumb {
		inline-size: 100%;
		border-radius: var(--br);
		overflow: hidden;
	
		img {
			position: absolute;
			inset: 0;
			inline-size: 100%;
			block-size: 100%;
			object-fit: cover;
		}

	}
	
	iframe {
		display: block;
	}
	
}

.eM > figure {
	margin-block: 3rem;
	
	&:first-child {
		margin-block: 0 3rem;
	}
	
	&:last-child {
		margin: 0;
	}

}

.cptn {
	margin-block: .6rem 0;
	font: 500 1.4rem/1.5 var(--sans);
	
	a {
		text-decoration-thickness: 1px;
	}
	
	.imgMeta {
		margin-inline: .5ch 0;
	}
	
}

img {
	display: block;
	inline-size: 100%;
	block-size: auto;
	background: var(--gray9);
	transition: filter .3s;
	transform: var(--trans0);
	
	&.bordered {
		border: 1px solid var(--gray4);
	}
	
}

/* Videos */

.vidW {
	aspect-ratio: 16/9;
	background: var(--gray9);
	overflow: hidden;
	
	& > * {
		position: absolute;
		inset: 0;
		inline-size: 100%;
		block-size: 100%;
	}

}

/* SVG */

svg {
	inline-size: 100%;
	block-size: 100%;
	transition: fill .3s;
}

/* Lite YouTube */

.lyt {
	contain: content;
	cursor: pointer;
	
	&:hover img {
		filter: var(--bright);	
	}

	iframe,
	img {
		position: absolute;
		inset: 0;
	}
	
	img {
		inline-size: 100%;
		block-size: 100%;
		object-fit: cover;
	}
	
	iframe {
		border: 0;
		padding: 0;
		inline-size: 100%;
		block-size: 100%;
	}
	
}

.lytPlay {
	display: block;
	position: absolute;
	z-index: 1;
	inline-size: 68px;
	block-size: 48px;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 68 48"><path d="M66.52 7.74c-.78-2.93-2.49-5.41-5.42-6.19C55.79.13 34 0 34 0S12.21.13 6.9 1.55c-2.93.78-4.63 3.26-5.42 6.19C.06 13.05 0 24 0 24s.06 10.95 1.48 16.26c.78 2.93 2.49 5.41 5.42 6.19C12.21 47.87 34 48 34 48s21.79-.13 27.1-1.55c2.93-.78 4.64-3.26 5.42-6.19C67.94 34.95 68 24 68 24s-.06-10.95-1.48-16.26z" fill="red"/><path d="M45 24 27 14v20" fill="white"/></svg>');
}

.lytActive {
	cursor: unset;
	
	img {
		display: none;
	}
	
	.lytPlay {
		opacity: 0;
		pointer-events: none;
	}

}

/* -----------------------------------------------------------------------------
/* Header
----------------------------------------------------------------------------- */

#hdr {
	inline-size: 100%;
	block-size: var(--hdr);
	box-shadow: inset 0 -2px 3px 0 light-dark(var(--gray2), #000);
	padding-inline: 2rem .75rem;
	font: 500 1.4rem/1 var(--sans);

	svg {
		fill: light-dark(var(--gray6), #fff8);
	}
	
	a,
	button {
		
		&:hover,
		&:active,
		&:focus {
			
			svg {
				fill: light-dark(#000, #ffff);
			}
			
		}
		
	}
	
	.here {
	
		a,
		button {
			color: light-dark(#000, #fff);
		
			&:hover,
			&:active,
			&:focus {
				
				svg {
					fill: light-dark(#000f, #ffff);
				}
				
			}
		
		}

		svg {
			fill: light-dark(#000, #fff);
		}
		
	}
	
}

#l {
	inline-size: 2.7rem;
	block-size: 3rem;
	margin-inline: 0 auto;
}

#dMT {

	i {
		justify-content: center;
		align-items: center;
	}

	.moon {
		display: flex;
	}

	.sun {
		display: none;
	}

}

/* -----------------------------------------------------------------------------
/* Nav
----------------------------------------------------------------------------- */

#nav {
	justify-content: space-between;
	align-items: center;
	inline-size: 100%;

	li {
	
		&:not(.nav, .search) {
			display: none;
		}
		
		&.here .navItem {
			color: light-dark(#000, #fff);
		}
	
	}
	
}

.navItem {
	gap: .4rem;
	padding: 1rem 1.25rem;
	transition: color .3s;

	&:link,
	&:visited {
		color: light-dark(var(--gray6), var(--gray5));
	}
		
	&:hover,
	&:active,
	&:focus {
		color: light-dark(#000, #fff);
	}
	
	i {
		inline-size: 1.4rem;
		block-size: 1.4rem;
	}
	
}

/* -----------------------------------------------------------------------------
/* Footer
----------------------------------------------------------------------------- */

#ftr {
	inline-size: 100%;
	box-shadow: inset 0 2px 3px 0 light-dark(var(--gray2), #000);
	padding-block: 1.6rem;
	font-size: 1.3rem;
}

/* -----------------------------------------------------------------------------
/* Main
----------------------------------------------------------------------------- */

#m {
	flex: 1;
	inline-size: 100%;
	background: light-dark(#fff, var(--gray8));
	padding: 2rem 2rem 2.8rem;
	
	&:has(#mHdr) {
		padding-block-start: 0;

		#a {
			margin-block: 0;
		}
	
	}
	
}

/* Main header */

#mHdr {
	position: relative;
	margin: 0 -2rem 2.8rem;
	background-image:
		linear-gradient(
			180deg,
			color-mix(in srgb, light-dark(var(--gray2), var(--gray9)) 0%, transparent),
			light-dark(var(--gray2), var(--gray9))
		),
		linear-gradient(
			180deg,
			light-dark(#fff, var(--gray8)),
			light-dark(var(--gray1), color-mix(in srgb, var(--gray8) 40%, var(--gray9)))
		);
	background-repeat: no-repeat;
	background-size: 100% 4px, auto;
	background-position: bottom;
	padding: 2rem;
	
	&:has(#mHdrForm, #mHdrNav) {
		padding-block-end: 2.6rem;
	}
	
	&.esFtrd {
		text-align: center;
		padding-block-start: 4.2rem;

		.es {
			inline-size: 100%;
			max-inline-size: 64rem;
			margin-inline: auto;
		
			.e {
				display: block;
			}
			
		}
		
		.eHdr {
			padding-inline: 1rem;
		}
			
		.eMeta {
			justify-content: center;
		}
			
		.eT {
			font-family: var(--serif);
		}
	
		.eThumb {
			position: relative;
			max-inline-size: none;
			block-size: auto;
			margin-block: 0 1.4rem;
			aspect-ratio: 16/10;
			float: none;
		}
	
	}
	
}

#mHdrBadge {
	position: absolute;
	inset: 0 0 auto;
	margin-block: 0 2rem;
	font-size: 1.2rem;
	
	div {
		border-radius: 0 0 var(--br) var(--br);
		background: light-dark(var(--gray7), var(--gray9)) linear-gradient(0deg, light-dark(#fff5, #000), light-dark(#fff0, #000));
		padding: .3rem 1rem .2rem;
		letter-spacing: .2px;
		text-shadow: 0 1px 1px #0009;
		color: light-dark(#fff, var(--gray1));
	}
	
}

#mHdrForm,
#mHdrNav ul {
	box-shadow: inset 0 1px 0 #0002;
	background: light-dark(var(--gray2), var(--gray9));
	padding: .8rem;
	border-radius: 11px;
}
	
#mHdrNav {
	margin-block: 2rem 0;
	
	ul {
		flex-wrap: wrap;
		gap: 2px;
	}
	
	li.here a {
		box-shadow: 0 1px 0 #0002;
		background: light-dark(#fff, var(--gray7));
		font-weight: 600;
		color: light-dark(#000, var(--gray2));
		
		.star {
			fill: light-dark(var(--gray8), var(--gray2));
		}
		
	}
	
	a {
		display: flex;
		align-items: center;
		gap: 2px;
		block-size: 4rem;
		border-radius: var(--br);
		color: light-dark(var(--gray7), var(--gray5));
		transition: background-color .3s;
		
		&:hover,
		&:active,
		&:focus {
			background: light-dark(var(--gray1), var(--gray8));
			color: light-dark(#000, var(--gray5));
		}
		
	}
	
	.stars {
		block-size: auto;
		background: none;
		padding: 0;
	}

	.star {
		margin-block: -2px 0;
		inline-size: 1.4rem;
		block-size: 1.4rem;
		fill: light-dark(var(--gray8), var(--gray5));
	}
	
}

#mHdrForm {
	max-inline-size: 40rem;
	gap: .8rem;
	margin: 2rem auto 0;
	
	& + * {
		margin-block: 2rem 0;
	}
	
	.btn {
		block-size: 4rem;
		font-size: 1.5rem;
	}
	
}

#mHdrForm .btn,
#mHdrNav a,
#q,
td {
	padding-inline: 1.4rem;
}

#q {
	border: 0;
	flex: 1;
	block-size: 4rem;
	box-shadow: 0 1px 0 light-dark(#0002, #000);
	background: light-dark(#fff, var(--gray8));
	font-weight: 400;
	line-height: 4rem;
	color: light-dark(var(--gray8), var(--gray5));
	
	&::placeholder {
		color: var(--gray6);
	}
	
}

#mHdrThumb {
	max-inline-size: 10rem;
	block-size: 10rem;
	margin: 0 auto 2.4rem;
}

#mHdrDesc p:not(:last-child) {
	margin-block: 0 2rem;
}

/* -----------------------------------------------------------------------------
/* Alert
----------------------------------------------------------------------------- */

#a {
	gap: 1rem;
	block-size: 4.4rem;
	margin: -2rem -2rem 1rem;
	padding-block: .8rem;
	font-size: 1.3rem;
	color: #fff;
	box-shadow: inset 0 1px 0 0 light-dark(#0000, #fff2);
	
	.btn {
		block-size: 2.8rem;
		box-shadow: var(--btnBorder);
		padding-inline: 1rem;
		font-size: 1.3rem;
		line-height: 2.8rem;
	}
	
}
	
#aM {
	text-shadow: 0 1px 1px #0009;
}
	
/* -----------------------------------------------------------------------------
/* Wrapper
----------------------------------------------------------------------------- */

.sidebar,
.wrap {
	inline-size: 100%;
	max-inline-size: 64rem;
	margin-inline: auto;
}

/* -----------------------------------------------------------------------------
/* Sidebar
----------------------------------------------------------------------------- */

.sidebar {
	inline-size: calc(100% - 4rem);
	margin-block: 4rem 0;
	font-weight: 400;
	
	figure {
		float: inline-end;
		inline-size: 8rem;
		margin: 1.8rem 1.8rem 1.2rem;
		padding: 0;
		border-radius: 100%;
		shape-outside: circle();
		clip-path: circle();
		overflow: hidden;
		background: red;
	}
		
	p {
		margin: 0;
		padding: 1.8rem;
		
		& + p {
			border-block-start: 1px solid light-dark(var(--gray2), var(--gray9));
		}
		
	}
	
	strong {
		font-weight: 600;
	}
	
	a {
		font-weight: 500;
		text-decoration-thickness: 1px;
	}

}

/* -----------------------------------------------------------------------------
/* Aside
----------------------------------------------------------------------------- */

.aside {
	border-radius: 12px;
	box-shadow: inset 0 1px 2px light-dark(#0001, #0008);
	background: light-dark(var(--gray1), var(--gray9)) linear-gradient(0deg, light-dark(#0001, #fff0), light-dark(#0000, #ffffff08));
	padding: 1.4rem;
	
	& > div {
		box-shadow: 0 1px 2px light-dark(#0001, #000);
		border-radius: var(--br);
		background: light-dark(#fff, var(--gray8));
	}
	
}

/* -----------------------------------------------------------------------------
/* Single entry
----------------------------------------------------------------------------- */

/* Entry header */

.eMeta,
.eSmry {
	font-weight: 500;
	font-family: var(--sans);
}

.eMeta {
	font-size: 1.3rem;
	color: light-dark(var(--gray4), var(--gray6));
}

.ePub {
	display: block;
}

.eT {
	font: 825 3.5rem/1.2 var(--serif);
	letter-spacing: -.2px;
}

.eSmry {
	font-size: 1.5rem;
}

.e.eDiet {

	.eHdr {
		margin-block: 0 2.8rem;
	}
	
	.eTopics {
		display: flex;
	}

	.eT {
		font-size: 2.4rem;
		line-height: 1.3;

		a:before {
			display: none;	
		}
	
	}
	
	.eThumb {
		float: inline-start;
		max-inline-size: 12rem;
		block-size: auto;
		margin-inline: 0 2rem;
		
		img {
			position: relative;
		}

	}
	
}

.eDietLinks {
	
	ul {
		margin: 0;
		padding: 0;
		list-style-position: inside;
		list-style-type: disc;
	}
	
	li:not(:last-child) {
		margin: 0;
	}
	
}

.stars {
	gap: 2px;
	block-size: 2.8rem;
	border-radius: 100px;
	padding-inline: 1rem;
	background: light-dark(var(--gray3), var(--gray9));
	color: var(--gray8);

	.star {
		inline-size: 1.8rem;
		block-size: 1.8rem;
		fill: light-dark(var(--gray8), #fff);
	}
	
	.starEmpty {
		fill: light-dark(#fff, var(--gray6));
	}
	
	.starHalf {
		position: relative;
		
		svg {
			position: absolute;
			inset: 0;
			z-index: 0;
			
			&.empty {
				fill: light-dark(#fff, var(--gray6));
			}
			
			&.half {
				z-index: 1;
				clip: rect(0, .9rem, 1.8rem, 0);
			}
			
		}
		
	}

}

.eRating {
	display: inline-flex;
	align-items: center;
	
	.stars {
		block-size: 2.2rem;
		padding-inline: .8rem;
	
		.star {
			inline-size: 1.4rem;
			block-size: 1.4rem;
	
			&.starHalf {
				
				svg {

					&.half {
						clip: rect(0, .7rem, 1.4rem, 0);
					}
					
				}
				
			}
		
		}
	
	}
	
}

/* -----------------------------------------------------------------------------
/* Entries list
----------------------------------------------------------------------------- */

.archive {

	#m {
		padding-inline: 0;
		
		#a {
			margin-inline: 0;
		}
		
	}

	#mHdr {
		margin-inline: 0;
	}
	
	#mHdr,
	.es > li {
		padding-inline: 2rem;
	}

}

.home {

	.columns {
		margin-inline: -2rem;
	
		.es > li {
			padding-inline: 2rem;
		}
	
	}

}

.es {

	& > li {
		margin-block: 0 2.4rem;
		border-block-end: 1px solid light-dark(var(--gray2), #000);
		padding-block: 0 2.4rem;
		
		&:last-child {
			margin-block: 0 !important;
			border: 0 !important;
			padding-block: 0 !important;
		}
		
	}
	
	.e:not(.eDiet) {
		position: relative;
		
		&:hover,
		&:active,
		&:focus {

			.eThumb img {
				filter: var(--bright);
			}

		}
	
		.eMeta {
			position: relative;
			z-index: 1;
		}
			
	}

	.eThumb {
		float: inline-start;
		max-inline-size: 7.2rem;
		block-size: 7.2rem;
		margin-inline: 0 2rem;
	}
	
	.eHdr {
		flex: 1;
		margin: 0;
	}
	
	.eTopics {
		display: none;
	}
	
	.eT {
		font-size: 2.4rem;
		line-height: 1.3;
		
		a:before {
			position: absolute;
			inset: 0;
			content: '';
		}
		
	}
	
	.eSmry {
		margin-block-start: .4rem;
		font-size: 1.5rem;
		line-height: 1.6;
	}

}

/* -----------------------------------------------------------------------------
/* Related entries
----------------------------------------------------------------------------- */

#rltd {
	margin-block: 2.8rem 0;
}

#rltdHdr,
#rltdFtr {
	padding: 2rem;
}

#rltdFtr {
	margin-block: 2.4rem 0;
	border-block-start: 1px solid light-dark(var(--gray2), #000);
}

/* -----------------------------------------------------------------------------
/* Subscribe notice
----------------------------------------------------------------------------- */

#sub {
	margin-block: 3.6rem 0;
	padding: 2rem;
	color: #fff;
	
	.btn {
		margin-block: 1.5rem 0;
		box-shadow: var(--btnBorder);
	}
	
}

/* -----------------------------------------------------------------------------
/* Buttons
----------------------------------------------------------------------------- */

button {
	border: 0;
	background: none;
	cursor: pointer;
	font: inherit;
}

.btn,
a.btn {
	block-size: 5rem;
	background: light-dark(var(--colorLink), var(--gray2)) linear-gradient(0deg, #000f, #0000);
	background-blend-mode: soft-light;
	padding-inline: 1.8rem;
	color: light-dark(#fff, #000);
	transition: background-color .3s, box-shadow .3s, color .3s;
	
	&:hover,
	&:active,
	&:focus {
		background-color: light-dark(var(--colorHover), var(--colorLink));
	}
	
	&:active {
		box-shadow: inset 0 1px 2px .5px #0005;
		background-color: light-dark(#9e342e, var(--colorLink));
	}

}

.btnDark,
a.btnDark {
	background: light-dark(var(--gray9), var(--gray6));
	
	&:hover,
	&:active,
	&:focus {
		box-shadow: none;
		background: light-dark(var(--gray9), var(--gray6));
	}
	
}

.btnOff,
a.btnOff {
	background: light-dark(var(--gray2), var(--gray9));
	color: light-dark(var(--gray8), #fff);
	
	&:hover,
	&:active,
	&:focus {
		box-shadow: none;
		background: light-dark(var(--gray2), var(--gray9));
	}
	
}

.btnSm,
a.btnSm {
	block-size: 3.6rem;
	padding-inline: 1.4rem;
	font-size: 1.4rem;
	line-height: 3.6rem;
}

.btns {
	gap: 1rem;
}

.btnsC {
	justify-content: center;
}

/* -----------------------------------------------------------------------------
/* Pagination
----------------------------------------------------------------------------- */

.pgn {
	margin-block-start: 3.6rem;
}

.pgnO {
	gap: 5px;
}

.pgnList {
	gap: 1px;
}

.pgn1st {
	margin-inline: 0 1rem;
	
	& > *:before {
		margin-block-start: -1px;
		content: '\2039';	
	}

}

.pgnLst {
	margin-inline: 1rem 0;
	
	& > *:after {
		margin-block-start: -1px;
		content: '\203A';
	}
	
}

/* -----------------------------------------------------------------------------
/* Banner
----------------------------------------------------------------------------- */

.postB {

	&:has(#a) #eHdrSolo {
		min-block-size: calc(100svh - calc(var(--hdr) + 4.4rem));		
	}

	#eHdrSolo {
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		position: relative;
		min-block-size: calc(100svh - var(--hdr));
		margin-inline: -2rem;
		background-color: var(--gray9);
		background-position: center;
		background-size: cover;
		text-align: center;
		color: #fff;
		
		.eHdrM {
			display: flex;
			flex-direction: column;
			align-items: center;
			background: linear-gradient(0deg, #000f 10%, #0000 100%);
			padding: 2rem;
		
			& > * {
				position: relative;
				z-index: 1;
				max-inline-size: 120rem;
			}
		
		}
		
		.eMeta,
		.eSmry {
			z-index: 2;
			color: var(--colorLite);
			
			a {
				color: var(--colorLite);
				
				&:hover,
				&:active,
				&:focus {
					color: #fff;
				}
				
			}
			
		}
		
		.eT {
			text-shadow: 0 1px 3px #000;
			line-height: 1.3;
		}
		
	}

}

/* -----------------------------------------------------------------------------
/* Review
----------------------------------------------------------------------------- */

.rvwInfo {
	background: light-dark(var(--gray1), var(--gray9));
	padding: 2rem;
	color: light-dark(var(--gray8), #fff);
	
	&:has(.eFeatImg) {
		border-radius: 1.5rem;
		padding: 1rem;
		
		.rvwMeta {
			padding: 1rem;
		}
		
	}

	.eFeatImg {
		margin-block: 0 1rem;
	}
	
	a {
		text-decoration-color: var(--gray5);
	}

}

.rvwMetaHdr {
	font-weight: 600;
	font-size: 1.2rem;
	text-transform: uppercase;
	color: var(--gray5);
}

.rvwMetaRelease,
.rvwMetaGenre {
	display: flex;
	color: var(--gray6);
	
	a {
		text-decoration-thickness: 1px;
	}
	
}

.rvwMetaReleasePub {
	display: flex;

	&:before {
		display: flex;
		margin-inline: .5rem;
		content: '/';
		color: light-dark(var(--gray5), var(--gray6));
	}

}

.rvwMetaGenre {
	gap: .5ch;
}

/* -----------------------------------------------------------------------------
/* Archives
----------------------------------------------------------------------------- */

.dateY {
	margin-block: 0 1.333rem;
	border-block-end: 1px dotted light-dark(var(--gray4), var(--gray7));
	padding-block: 0 1.333rem;
	
	h3 {
		margin: 0;
		line-height: 1.333;
	}
	
	&:last-child {
		margin: 0;
		border: 0;
		padding: 0;
	}

}

/* -----------------------------------------------------------------------------
/* Overlay
----------------------------------------------------------------------------- */

#o {
	block-size: 100vh;
	max-inline-size: none;
	max-block-size: none;
	border: 0;
	background: none;
	padding: 2rem;
}

#oL,
#oC {
	position: absolute;
	
	&:hover,
	&:active,
	&:focus {
	
		svg {
			fill: #ffff;
		}
	
	}
	
	svg {
		fill: #fffc;
	}
	
}

#oL {
	inset: 1.5rem auto auto 1.5rem;
	inline-size: 3.4rem;
	block-size: 3.6rem;	
}

#oC {
	inset: 1.5rem 1rem auto auto;
	inline-size: 3.6rem;
	block-size: 3.6rem;
	padding: .5rem;
}

#oN {
	inline-size: 100%;
	padding-block: 6.4rem 0;
	font: 700 2rem var(--sans);
	
	a {
		display: block;
		color: #fffc;
		padding-block: 1.2rem;
	
		&:hover,
		&:active,
		&:focus {
			color: #fff;
		}
	
	}

}

/* -----------------------------------------------------------------------------
/* Mix item
----------------------------------------------------------------------------- */

.mixReview + figure {
	margin-block: 3rem 0;
}

.streaming figure {
	margin-block: 3rem;
}

/* -----------------------------------------------------------------------------
/* Review roundup
----------------------------------------------------------------------------- */

.roundupHdr {
	display: flex;
	align-items: baseline;
	gap: 1.4rem;
	margin-block-end: 2.8rem;
}

.roundupThumb {
	flex: 1 0 3rem;
	inset: 4px 0 0;
	max-inline-size: 3rem;
	block-size: 3rem;
	border-radius: 100%;
	
	svg {
		inline-size: 1.8rem;
		block-size: 1.8rem;
		color: #fff;
	}
	
}

.roundupP {

	.roundupThumb {
		background: var(--colorLink);
	}

}

.roundupN {

	.roundupThumb {
		background: var(--colorHover);
	
		svg {
			position: relative;
			inset: 1px 0 0;
		}
	
	}

}

/* -----------------------------------------------------------------------------
/* Galleries
----------------------------------------------------------------------------- */

.gallery {
	margin-block: 0 3rem;
	
	&:last-child {
		margin: 0;
	}
	
	& + hr {
		margin-block-start: 5rem;
	}
		
}

.galleryImgs {
	--cols: 3;
	display: grid;
	grid-template-columns: repeat(var(--cols), 1fr);
	gap: 2rem;
	
	li {
		margin: 0 !important;
	}
	
	figure {
		inline-size: 100%;
		padding-block: 0 100%;
	
		img {
			position: absolute;
			inset: 0;
		}
	
	}
	
	a:hover,
	a:active,
	a:focus {
	
		img {
			filter: var(--bright);
		}
	
	}
	
}

/* -----------------------------------------------------------------------------
/* Lightbox
----------------------------------------------------------------------------- */

.gcontainer,
.gloader {
	z-index: 9999;
}

.glightbox-container {
	z-index: 999999 !important;
	overflow: hidden;
	-ms-touch-action: none;
	touch-action: none;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	text-size-adjust: 100%;
	backface-visibility: hidden;
	outline: none;

	&.inactive {
		display: none;
	}

}

.gslider {
	inset: 0;
	transform: var(--trans0);
	transition: transform .4s ease;
}

.gslide {
	position: absolute;
	inline-size: 100%;
	opacity: 0;
	-webkit-user-select: none;
	user-select: none;

	&:not(.current) {
		pointer-events: none;
	}

	&.current {
		opacity: 1;
		z-index: 99999;
		position: relative;
	}

	&.prev {
		opacity: 1;
		z-index: 9999;
	}

}

.gslide-inner-content {
	inline-size: 100%;
}

.ginner-container {
	flex-direction: column;
	max-inline-size: 100%;
	margin: auto;
}

.gslide-image {
	align-items: center;

	img {
		padding: 0;
		float: none;
		outline: none;
		margin: auto;
		border: 0;
		inline-size: auto;
		min-inline-size: 200px;
		max-inline-size: calc(100vw - 4rem);
		block-size: auto;
		max-block-size: 100vh;
		object-fit: cover;
		touch-action: none;
		-webkit-user-select: none;
		user-select: none;

		&.zoomable {
			position: relative;
		}

		&.dragging {
			cursor: grabbing !important;
			transition: none;
		}
	
	}

}

.gslide-media {
	display: flex;
	inline-size: auto;
}

.zoomed .gslide-media {
	box-shadow: none !important;
}

.desc-bottom {

	.gslide-image img {
		inline-size: auto;
	}

	.gslide-media {
		margin-inline: auto;
		flex-direction: column;
	}

}

.gslide-description {
	position: relative;
	flex: 1 0 100%;
	font-size: 1.4rem;
	color: #fff;

	&.description-bottom {
		margin-inline: auto;
		inline-size: 100%;
	}

}

.zoomed .gslide-description,
.glightbox-button-hidden {
	display: none;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/

.glightbox-mobile .glightbox-container .gslide-description {
	position: absolute;
	inset: auto auto 0;
	order: 2 !important;
	inline-size: 100%;
	max-inline-size: 100vw !important;
	block-size: auto !important;
	max-block-size: 78vh;
	background: linear-gradient(0deg, #000f, #0000);
	overflow: auto !important;
	transition: opacity .3s linear;
}

.gdesc-open {

	.gslide-media {
		transition: opacity .3s ease;
		opacity: .4;
	}

	.gdesc-inner {
		padding-block-end: 3rem;
	}

}

.gdesc-closed .gslide-media {
	transition: opacity .3s ease;
	opacity: 1;
}

.greset {
	transition: all .3s ease;
}

.gabsolute {
	position: absolute;
}

.glightbox-desc {
	display: none !important;
}

.gloader {
	display: block;
	position: absolute;
	inset: auto 0;
	inline-size: 25px;
	block-size: 25px;
	border: 2px solid #fff;
	border-inline-end-color: transparent;
	border-radius: 50%;
	margin-inline: auto;
	top: 47%;
	animation: lBoxLdr .8s infinite linear;
}

.gprev,
.gnext,
.gclose {
	flex-direction: column;
	position: absolute;
	z-index: 99999;
	background: #0006;
	transition: background-color .3s;

	&:hover,
	&:active,
	&:focus {
		background: #000;
	}

	&.disabled {
		opacity: .25;
	}

	svg {
		display: block;
		inline-size: 25px;
		block-size: auto;
		margin: 0;
		padding: 0;
	}

	.garrow {
		stroke: #fff;
	}

	path {
		fill: #fff;
	}

}

.gprev,
.gnext {
	top: -100%;
	inline-size: 4rem;
	block-size: 5rem;
}

.gprev {
	left: 0;
	border-radius: 0 var(--br) var(--br) 0;
}

.gnext {
	right: 0;
	border-radius: var(--br) 0 0 var(--br);
}

.gclose {
	inset: 0 0 auto auto;
	inline-size: 4rem;
	block-size: 4rem;
	border-end-start-radius: var(--br);

	svg {
		inline-size: 1.4rem;
		block-size: auto;
	}

}

.glightbox-closing {

	.gnext,
	.gprev,
	.gclose {
		opacity: 0 !important;
	}

}

/* Skin */

.gdesc-inner {
	padding-block: 1.6rem;
}

.gslide-title {
	font-weight: 600;
}

.gslide-desc {
	color: var(--colorLite);
}

/* CSS Animations*/

.gfadeIn {
	animation: gFi .3s ease;
}

.gfadeOut {
	animation: gFo .3s ease;
}

.gslideInLeft {
	animation: gSiL .3s ease;
}

.gslideOutLeft {
	animation: gSoL .3s ease;
}

.gslideInRight {
	animation: gSiR .3s ease;
}

.gslideOutRight {
	animation: gSoR .3s ease;
}

.gzoomIn {
	animation: gZi .3s ease;
}

.gzoomOut {
	animation: gZo .3s ease;
}

@keyframes lBoxLdr {

	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}

}

@keyframes gFi {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}

}

@keyframes gFo {

	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}

}

@keyframes gSiL {

	from {
		opacity: 0;
		transform: translate3d(-60%, 0, 0);
	}

	to {
		visibility: visible;
		transform: var(--trans0);
		opacity: 1;
	}

}

@keyframes gSoL {

	from {
		opacity: 1;
		visibility: visible;
		transform: var(--trans0);
	}

	to {
		transform: translate3d(-60%, 0, 0);
		opacity: 0;
		visibility: hidden;
	}

}

@keyframes gSiR {

	from {
		opacity: 0;
		visibility: visible;
		transform: translate3d(60%, 0, 0);
	}

	to {
		transform: var(--trans0);
		opacity: 1;
	}

}

@keyframes gSoR {

	from {
		opacity: 1;
		visibility: visible;
		transform: var(--trans0);
	}

	to {
		transform: translate3d(60%, 0, 0);
		opacity: 0;
	}

}

@keyframes gZi {

	from {
		opacity: 0;
		transform: scale3d(.3, .3, .3);
	}

	to {
		opacity: 1;
	}

}

@keyframes gZo {

	from {
		opacity: 1;
	}

	50% {
		opacity: 0;
		transform: scale3d(.3, .3, .3);
	}

	to {
		opacity: 0;
	}

}

/* -----------------------------------------------------------------------------
/* Quotes
----------------------------------------------------------------------------- */

.quote {
			
	p:has(cite) {
		display: flex;
		font: var(--txtAlt);
		color: var(--gray6);
	
		&:before {
			content: '\2014\2009';
		}

	}
	
	cite {
		font-style: normal;
	}

}

/* -----------------------------------------------------------------------------
/* Tables
----------------------------------------------------------------------------- */

table {
	inline-size: 100%;
	border-collapse: collapse;
}

th,
tr {
	border-block-end: 1px solid light-dark(var(--gray4), var(--gray7));
}

th {
	background: light-dark(var(--gray1), var(--gray9));
	padding: 1.4rem;
	color: light-dark(var(--gray8), #fff);
	font: 700 1.6rem/1 var(--sans);
	text-align: start;
}

td {
	padding-block: 1rem;
	vertical-align: top;
	
	&.icon {
		padding-block: 1.6rem 1rem;
	}
	
}

.boxed {
	border: 1px solid light-dark(var(--gray4), var(--gray7));
	overflow: scroll;
	
	tr:last-child {
		border: 0;
	}
	
}

/* -----------------------------------------------------------------------------
/* Code blocks
----------------------------------------------------------------------------- */

.code {
	background: light-dark(var(--gray8), #000);
	overflow: scroll;
	
	pre {
		line-height: 1.7;
		tab-size: 4;
	}
	
	code {
		color: #fff;
	}
	
}

code,
pre {
	font-size: 1.6rem;
	font-family: var(--mono);
}

code {
	margin-inline: .2rem;
	background: light-dark(var(--gray2), #000);
	padding: .4rem .6rem;
	color: light-dark(var(--gray8), #fff);
}

pre code {
	border-radius: 0;
	background: none;
	padding: 0;
	white-space: pre;
}

/* -----------------------------------------------------------------------------
/* Utilities
----------------------------------------------------------------------------- */

.cf:after {
	display: table;
	content: '';
	clear: both;
}

.list0 {
	padding: 0;
	list-style: none;
	
	& > li:before {
		display: none;	
	}
	
}

.listComma,
.listSlash {

	li:not(:last-child) {
		margin: 0;
	}

}
	
.listComma {
	gap: .5ch;

	li:not(:last-child):after {
		content: ',';
	}

}
	
.listSlash {

	li {
		display: flex;
		
		&:not(:last-child):after {
			margin-inline: 1ch;
			content: '/';
			color: var(--gray5);
		}
		
	}

}
	
.dateMs {

	&.here {
		font-weight: 600;
	}
	
	a {
		display: flex;
		align-items: center;
		gap: .4ch;
	}
	
}

.vh:not(:focus):not(:active) {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	overflow: hidden;
	white-space: nowrap;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
}

/* -----------------------------------------------------------------------------
/* Media queries
----------------------------------------------------------------------------- */

@media (min-width: 640px) {

	.quote {
		border: 0;
		padding: 0;
		font-weight: 700;

		&.fltL {
			border-inline-start: 3px solid var(--gray4);
			padding-inline: 1.5rem 0;
		}

		&.fltR {
			border-inline-end: 3px solid var(--gray4);
			padding-inline: 0 1.5rem;
		}
		
		&.full {
			text-align: center;
			font-size: 2.4rem;
			margin-block: 3.2rem;
		
			p:has(cite) {
				justify-content: center;
			}
			
			&:before,
			&:after {
				display: block;
			}
			
			&:before {
				margin-block: 0 3.2rem;
			}
			
			&:after {
				margin-block: 3.2rem 0;
			}

		}
	
	}

	blockquote,
	ol,
	ul {
		margin-inline: 3.2rem 5rem;
	}

	.eMeta {
		display: flex;
		align-items: center;
	}

	.eTopics,
	.eMetaDiet {
		margin: 0;

		&:before {
			margin-inline: .5rem;
			content: '/';
		}
	
	}
	
	.eRating {
		margin: -3px 0 0 1.5rem;
	}

	.eSmry {
		margin-block-start: 1.5rem;
		font-size: 1.6rem;
	}

	.e.eDiet .eThumb {
		max-inline-size: 20rem;
	}

	.es {

		.e:not(.eDiet) {
			display: flex;
			align-items: flex-start;
			gap: 2rem;
		}
	
		.eThumb {
			flex: 1 0 7.2rem;
			max-inline-size: 7.2rem;
			margin: 0;
			float: none;
		}
	
		.eHdr {
			flex: 1;
		}
		
		.eTopics {
			display: flex;
		}

	}

	#rltdFtr {
		display: flex;
		gap: .75ch;
	}

	#sub {
		display: flex;
		align-items: center;
		gap: 1.5rem;

		.btn {
			margin: 0;
		}
	
	}

	.dateY {
		display: flex;
		align-items: baseline;
		gap: 1.4rem;	
	}

	.dateMs li:not(:last-child):after {
		margin-inline: .625ch;
	}
	
	.fltL,
	.fltR {
		inline-size: 100%;
		max-inline-size: 36rem;
		margin-block: 0 1rem;
	}

	.fltL {
		float: inline-start;
		margin-inline: 0 3.2rem;
	}

	.fltR {
		float: inline-end;
		margin-inline: 3.2rem 0;
	}

}

@media (min-width: 680px) {

	.home {

		.columns {
			margin-inline: 0;
	
			.es > li {
				padding-inline: 0;	
			}
	
		}

	}
	
	#mHdr.esFtrd .es > li,
	.archive .es > li {
		padding-inline: 0;	
	}

	.postB {

		#eHdrSolo {
			margin-inline: calc(-50vw + 32rem);
		
			.eMeta {
				border-radius: 100px;
				background: #0009;
				padding: .6rem 1.5rem;
			}
			
		}

	}

}

@media (min-width: 769px) {

	.ginner-container {
		inline-size: auto;
		block-size: auto;
	}
	
	.gslide-image {

		img {
			max-block-size: 97vh;

			&.zoomable {
				cursor: zoom-in;
			}
		
		}
	
	}

	.zoomed .gslide-image img.zoomable {
		cursor: grab;
	}

	.glightbox-open {
		block-size: auto;
	}

	.gprev,
	.gnext {
		top: calc(50% - 2.5rem);
	}

	.gdesc-inner {
		padding-block-end: 0;
	}

	.roundupThumb {
		margin-inline-start: -4.4rem;
	}

}

@media (min-width: 960px) {

	:root {
		--hdr: 7rem;
		--fade: linear-gradient(
			90deg,
			light-dark(#ffff, var(--gray8)) 0%,
			light-dark(#ffff, var(--gray8)) 10%,
			light-dark(#fff0, color-mix(in srgb, var(--gray8) 0%, transparent)) 40%,
			light-dark(#fff0, color-mix(in srgb, var(--gray8) 0%, transparent)) 60%,
			light-dark(#ffff, var(--gray8)) 90%,
			light-dark(#ffff, var(--gray8)) 100%
		);
	}

	#hdr,
	#ftr {
		box-shadow: none;
		background-repeat: no-repeat;
		background-size: auto, 100% 8px;
	}

	#hdr {
		padding-inline: 2rem;
		background-image: var(--fade),
			linear-gradient(
				0deg,
				light-dark(var(--gray2), #0005),
				light-dark(color-mix(in srgb, var(--gray2) 0%, transparent), #0000)
			);
		background-position: bottom;
	
	}

	#l {
		inline-size: 3.4rem;
		block-size: 3.6rem;
		margin-inline: 0 1.2rem;
	}
	
	#nav {
		justify-content: center;

		li:not(.search) {
			display: block;
		}

		li.nav {
			display: none;
		}
	
	}

	#ftr {
		background-image: var(--fade),
			 linear-gradient(
			 	0deg,
			 	light-dark(color-mix(in srgb, var(--gray2) 0%, transparent), #0000),
			 	light-dark(var(--gray2), #0005)
			 );
		background-position: top;
	}

	#m {
		padding: 4rem 4rem 6rem;
	}

	.eT {
		font-size: 5rem;
		line-height: 1.1;
	}

	.es {

		&.esSm {

			& > li {
				margin-block: 0 2.4rem;
				padding-block: 0 2.4rem;
			}

			.eThumb {
				max-inline-size: 7.2rem;
				block-size: 7.2rem;
			}
	
		}

		& > li {
			margin-block: 0 3.2rem;
			padding-block: 0 3.2rem;
		}
	
		&.esDiet > li {
			margin-block: 0 4rem;
		}
	
		.e:has(.eThumb) {
			gap: 2.4rem;
			min-block-size: 10rem;
		}
	
		.eThumb {
			flex: 1 0 10rem;
			max-inline-size: 10rem;
			block-size: 10rem;
		}

	}
	
	.esSm .e:has(.eThumb) {
		min-block-size: 7.2rem;	
	}

	#a {
		margin: -4rem -4rem 3rem;
	}
	
	#mHdr {
		margin: 0 -4rem 2lh;
		padding: 4rem clamp(2rem, 2.25vw, 4rem) 4.2rem;
		
		&:has(#mHdrForm, #mHdrNav) {
			padding-block-end: 5rem;
		}
		
		&.esFtrd {
			padding-inline: clamp(2rem, 2.25vw, 4rem);
		
			.es {
				display: flex;
				max-inline-size: 160rem;
				gap: clamp(2rem, 2.25vw, 4rem);
		
				& > li {
					flex: 1;
					margin: 0;
					border: 0;
					padding: 0;
				}
		
			}
		
		}
		
	}

	#mHdrNav {
		margin-inline: -6rem;
	}

	.postDiet {

		.e.eDiet {

			.eT {
				font-size: 3.5rem;
				line-height: 1.2;
			}

			.eThumb {
				max-inline-size: 30rem;
				margin: 0 3.2rem 1rem -12rem;
			}
			
		}
	
	}

	.postB {

		#eHdrSolo {
			background-attachment: fixed;
			
			.eHdrM {
				padding-block: 12rem 6rem;
			}
		
			.eT {
				font-size: 6rem;
				line-height: 1.2;
			}
			
		}

	}
	
	.home {

		.columns {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			gap: 4rem;
			inline-size: 100%;
			max-inline-size: 96rem;
			margin-inline: auto;
		}
		
		.wrap {
			flex: 1;
			margin: 0;
		}
		
		.sidebar {
			flex: 1 0 36rem;
			max-inline-size: 36rem;
			margin: 0;
		}
	
	}

	.cptn {
		text-align: center;
	}

	.quote {

		&.fltL,
		&.fltR {
			font-size: 2.4rem;
			line-height: 1.5;
		}
		
		&.full {
			margin-block: 6rem;
			font-size: 3.5rem;
			
			&:before {
				margin-block: 0 5rem;
			}
			
			&:after {
				margin-block: 6rem 0;
			}
			
		}
	
	}

	.btn,
	a.btn,
	.galleryHdr,
	.mixSmry {
		font-size: 1.6rem;
	}

	hr {
		margin-block: 2lh;
	}
	
	.code {
		padding: 2rem 4rem;
	}
	
	.gallery + hr {
		margin-block-start: 7rem;		
	}

	.galleryImgs {
		--cols: 4;
	}
	
	.full > .galleryImgs {
		--cols: 6;
	}

	.fltL,
	.fltR {
		max-inline-size: 40rem;

		.cptn {
			text-align: start;
		}
	
	}

	.fltL,
	.full {
		margin-inline-start: -12rem;
	}

	.fltR,
	.full {
		margin-inline-end: -12rem;
	}
	
	#eHdrSolo:has(+ .full, + .rvwInfo, + .eM > .full:first-child) {
		margin-inline: -12rem;
	}
	
}

@media (min-width: 1400px) {
	
	.home .columns {
		max-inline-size: 104rem;
	}

	.postB #eHdrSolo .eT {
		font-size: 7.5rem;
	}

	.fltL,
	.full {
		margin-inline-start: -18rem;
	}

	.fltR,
	.full {
		margin-inline-end: -18rem;
	}
	
	#eHdrSolo:has(+ .full, + .rvwInfo, + .eM > .full:first-child) {
		margin-inline: -18rem;
	
		.eT {
			font-size: 5.5rem;
		}
		
	}
	
	#mHdr {
		
		&.esFtrd {
			padding-block-start: 4.8rem;
		}
	
	}

}

@media (min-height: 900px) {

	#mHdr {
	
		&.esFtrd {

			.eT {
				font-size: 2.8rem;
				line-height: 1.25;
			}
	
			.eThumb {
				aspect-ratio: 4/3;
			}
		
		}
	
	}

}

@media screen and (prefers-reduced-motion: reduce) {

	#h {
		scroll-behavior: auto;
	}

}