/*
Theme Name: Aemi
Theme URI: https://github.com/aemi-dev/aemi/
Author: Guillaume COQUARD
Author URI: https://aemi.dev/
Description: AeMi is designed to be an aesthetic minimalist wordpress theme. It provides a highly legible, clean, clear and really minimalist theme.
Version: 2.0.2
Tested up to: 5.5
Requires PHP: 7.2
License: GPL-3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
Text Domain: aemi
Tags: one-column, custom-background, custom-menu, featured-image-header, featured-images, full-width-template, sticky-post, threaded-comments, translation-ready
*/

/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/

:root {
	--legible-width: 65ch;
	--legible-margin: 4rem;
}

@media (max-width: 460px) {
	:root {
		--legible-margin: 2rem;
	}
}

/*--------------------------------------------------------------
# WordPress
--------------------------------------------------------------*/

.no-overflow {
	overflow: hidden !important;
}

::-moz-focus-inner {
	outline: none;
}

/* ----------------------------------------------------------
 * BEGIN : Screen Reader Text
 * ---------------------------------------------------------- */

.screen-reader-text {
	clip-path: polygon(0 0, 1px 0, 1px 1px, 0 1px);
	display: block;
	height: 1px;
	opacity: 0;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text.focusable:focus {
	border-radius: var(--radius);
	clip-path: unset;
	font-size: 1rem;
	height: auto;
	text-decoration: none;
	width: auto;
	z-index: 100000;
}

#skip-link:focus {
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

/* ----------------------------------------------------------
 * END : Screen Reader Text
 * ---------------------------------------------------------- */

/* ----------------------------------------------------------
 * BEGIN : Toggle
 * ---------------------------------------------------------- */

.toggle {
	color: var(--text-important);
	font-weight: 700;
	text-decoration: none;
	outline: none;
	
}

.toggle:hover {
	color: var(--text-color);
}

/* ----------------------------------------------------------
 * END : Toggle
 * ---------------------------------------------------------- */

/* ----------------------------------------------------------
 * BEGIN : Site Header
 * ---------------------------------------------------------- */

#site-header {
	align-items: center;
	align-content: center;
	flex-flow: row nowrap;
	display: flex;
	justify-content: space-between;
	left: 50%;
	margin: 0 auto;
	max-width: calc(100vw - var(--legible-margin));
	padding: 1rem 0;
	position: fixed;
	top: 0;
	transform: translate(-50%, 0);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
	width: var(--legible-width);
	z-index: 10;
}

.header-absolute #site-header {
	position: absolute;
}

#site-header::before {
	content: '';
	display: block;
	height: 100%;
	left: calc(50% - 50vw);
	max-width: 100vw;
	position: absolute;
	top: 0;
	width: 100vw;
	z-index: -1;
}

/*
 * Scroll-Sensible Disappering Header
 */

body:not(.page-scrolled) #site-header::before {
	background-color: transparent;
}

body.page-scrolled #site-header::before {
	background-color: var(--page-color-alpha);
}

.header-hidden #site-header {
	transform: translate(-50%, -100%);
}

.admin-bar #site-header {
	top: 32px;
}

.admin-bar.header-hidden #site-header {
	transform: translate(-50%, -100%);
}

#site-header,
.header-hidden #site-header,
.admin-bar #site-header {
	transition: transform var(--tr-mid) var(--tr-func);
}

#site-header::before,
body:not(.page-scrolled) #site-header::before,
body.page-scrolled #site-header::before {
	transition-property: background-color, -webkit-backdrop-filter, backdrop-filter;
	transition-duration: var(--tr-mid);
	transition-timing-function: var(--tr-func);
}

@supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
	/*
	 * Blurred Background on Header -> Safari, Chromium-Like
	 */
	body:not(.page-scrolled) #site-header::before {
		-webkit-backdrop-filter: blur(0);
		backdrop-filter: blur(0);
	}
	body.page-scrolled #site-header::before {
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}
}

/* ----------------------------------------------------------
 * BEGIN : Site Header Spacer -> Placeholder
 * ---------------------------------------------------------- */

#site-header .spacer {
	max-height: 2.5rem;
	min-height: 2.5rem;
	max-width: 2.5rem;
	min-width: 2.5rem;
}

/* ----------------------------------------------------------
 * END : Site Header Spacer -> Placeholder
 * ---------------------------------------------------------- */

/* ----------------------------------------------------------
 * BEGIN : Site Progress Bar
 * ---------------------------------------------------------- */

#site-progress-bar {
	background-color: var(--text-color);
	border-radius: 0;
	display: block;
	height: 5px;
	left: 0;
	max-width: 100vw;
	position: fixed;
	top: 0;
	transform: translateY(0);
	width: 0;
	z-index: 1;
}

.admin-bar #site-progress-bar {
	top: 32px;
}

body:not(.header-hidden):not(.header-absolute) #site-progress-bar {
	transform: translateY(4.5rem);
}

#site-progress-bar,
body:not(.header-hidden) #site-progress-bar {
	transition: transform var(--tr-mid) var(--tr-func);
	
}

/* ----------------------------------------------------------
 * END : Site Progress Bar
 * ---------------------------------------------------------- */

/* ----------------------------------------------------------
 * BEGIN : Site Header Menu
 * ---------------------------------------------------------- */

#header-menu,
#header-menu .sub-menu,
#header-menu .menu-item {
	list-style: none;
	margin: 0;
	padding: 0;
}

#header-menu {
	align-items: center;
	display: flex;
	flex-flow: row nowrap;
	font-weight: normal;
	position: relative;
}

#header-menu .menu-item,
#header-menu .menu-item a {
	border-radius: 0;
	display: block;
	font-weight: normal;
	position: relative;
	text-align: right;
	z-index: 0;
}

#header-menu > .menu-item {
	flex: 1 0 auto;
	margin: 0;
	padding: 0;
}

#header-menu > .menu-item > a {
	padding: 0.5rem 0.75rem;
}

#header-menu .sub-menu {
	display: flex;
	flex-flow: column nowrap;
	font-size: 0.9rem;
	max-width: 40ch;
	min-width: 25ch;
	padding: 0.25rem;
	position: absolute;
	right: 0;
	top: calc(100% + 0.5rem);
	width: 25ch;
}

#header-menu .sub-menu::before {
	background-color: var(--page-color);
	box-shadow: 0 5px 8px -1px var(--input-shadow-alpha);
	border: 1px solid var(--element-background);
	border-radius: calc(var(--radius) * 1.5);
	content: '';
	display: block;
	height: 100%;
	left: 50%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

#header-menu .menu-item:not(:hover) > .sub-menu {
	opacity: 0;
	visibility: hidden;
}

#header-menu .sub-menu > .menu-item a {
	padding: 0.5em;
}

#header-menu .sub-menu > .menu-item + .menu-item {
	margin-top: 0.125rem;
}

#header-menu .menu-item > a::before {
	display: block;
	border-radius: var(--radius);
	content: '';
	height: 100%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
	top: 50%;
	width: 100%;
	z-index: -1;
}
#header-menu > .menu-item > a::before {
	background-color: var(--element-border);
}
#header-menu .sub-menu > .menu-item > a::before {
	background-color: var(--element-background);
}

#header-menu > .menu-item.menu-item-has-children > a::after {
	background-color: unset;
	content: '';
	display: block;
	height: 100%;
	left: 50%;
	position: absolute;
	top: 100%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: -1;
}

#header-menu > .menu-item.menu-item-has-children:not(:hover) > a::after {
	visibility: hidden;
}

#header-menu > .menu-item:not(:hover) > a::before,
#header-menu .sub-menu > .menu-item:not(:hover) > a::before {
	opacity: 0;
}

#header-menu .sub-menu > .menu-item + .menu-item > a::after {
	background-color: var(--element-background);
	border-radius: var(--radius);
	content: '';
	height: 2px;
	left: 50%;
	position: absolute;
	top: calc(calc(0.25rem - 1px) / -2);
	transform: translateX(-50%);
	width: 100%;
	z-index: -1;
}

#header-menu .sub-menu > .menu-item + .menu-item:hover > a::after,
#header-menu .sub-menu > .menu-item:hover + .menu-item > a::after {
	opacity: 0;
}

#header-menu > .menu-item > .sub-menu > .menu-item {
	display: block;
	flex: 1 1 auto;
	width: 100%;
}

#header-menu > .menu-item > .sub-menu > .menu-item a {
	display: block;
	width: 100%;
}

#header-menu .menu-item::before,
#header-menu .sub-menu::before {
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}

/* ----------------------------------------------------------
 * END : Site Header Menu
 * ---------------------------------------------------------- */

/* ----------------------------------------------------------
 * BEGIN : Site Menu
 * ---------------------------------------------------------- */

.menu {
	font-size: 1.5rem;
	line-height: 1.25;
}

.menu,
.menu .sub-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

.menu .menu-item {
	align-items: center;
	align-content: center;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	position: relative;
	margin-bottom: .25rem;
	margin-top: .25rem;
}

.menu > .menu-item:not(:first-child) {
	margin-top: .5rem;
}

.menu > .menu-item:hover {
	border-color: var(--element-background);
}

.menu > .menu-item .menu-item {
	padding-right: 0;
}

.menu > .menu-item:first-child {
	margin-top: 0;
}

.menu > .menu-item:last-child,
.menu > .menu-item .menu-item:last-child {
	margin-bottom: 0;
}


.menu .menu-item > a {
	border:  1px solid transparent;
	border-radius: var(--radius);
	order: 1;
    padding: 0 .25rem;
}

.menu .menu-item > a:hover {
	background-color: var(--element-background);
}

.menu .menu-item > a:not(:only-child) {
	flex: 0 1 calc(100% - 2.25rem);
}

.menu .menu-item > a:only-child {
	flex: 0 1 100%;
}

.menu .menu-item > .toggle {
	align-self: center;
	align-content: center;
	border: 1px solid var(--input-border-alpha);
	border-radius: var(--radius);
	display: flex;
	flex: 0 0 2rem;
	height: 2rem;
	justify-content: center;
	order: 2;
}

.menu .menu-item > .sub-menu {
	order: 3;
}

.menu .menu-item-has-children .sub-menu {
	font-size: 0.85em;
	padding-left: 1rem;
}

.menu > .menu-item .menu-item > a {
	padding-bottom: calc(calc(1.875rem - 1.25em) / 2);
	padding-top: calc(calc(1.875rem - 1.25em) / 2);
}

.menu .toggle {
	cursor: pointer;
}

.menu .toggle .toggle-element {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.menu .toggle .toggle-element::before,
.menu .toggle .toggle-element::after {
	content: '';
	background-color: var(--text-optional);
	border-radius: calc(var(--radius) / 4);
    position: absolute;
    display: block;
    left: 50%;
    top: 50%;
    transform-origin: center center;
}

.menu .toggle:not(.toggled):hover .toggle-element::before,
.menu .toggle:not(.toggled):hover .toggle-element::after {
	background-color: var(--text-color);
}

.menu .toggle.toggled .toggle-element::before,
.menu .toggle.toggled .toggle-element::after {
	background-color: var(--text-important);
}

.menu .toggle .toggle-element::before,
.menu .toggle .toggle-element::after {
	height: .2rem;
	width: .8rem;
}

.menu .toggle .toggle-element::before {
	transform: translate(-76%,-40%) rotate(45deg);
}
.menu .toggle .toggle-element::after {
    transform: translate(-22%,-40%) rotate(-45deg);
}

.menu .toggle.toggled .toggle-element::before {
	transform: translate(-22%,-55%) rotate(45deg);
}
.menu .toggle.toggled .toggle-element::after {
    transform: translate(-76%,-55%) rotate(-45deg);
}

.menu .toggle .toggle-element::before,
.menu .toggle .toggle-element::after,
.menu .toggle:hover .toggle-element::before,
.menu .toggle:hover .toggle-element::after,
.menu .toggle.toggled .toggle-element::before,
.menu .toggle.toggled .toggle-element::after {
	transition-property: background-color, transform;
	transition-duration: var(--tr-short);
	transition-timing-function: var(--tr-func);
}

.menu .toggle:not(.toggled) + .sub-menu {
	max-height: 0;
	overflow: hidden;
	transition: var(--tr-short) var(--tr-func) max-height;
}

.menu .toggle.toggled + .sub-menu {
	max-height: 100%;
	transition: var(--tr-short) var(--tr-func) max-height;
}

/* Disable the automatically added toggle to other menus */

#header-social .menu .toggle,
#footer-menu .menu .toggle {
	display: none;
}

/* =============================

============================= */

#navigation-toggle,
#search-toggle {
	flex: 0 0 2.5rem;
}

#header-menu + #navigation-toggle {
	margin-left: 1.25rem;
}

#navigation-toggle {
	background-color: unset;
	border: 0;
	cursor: pointer;
	display: block;
	flex: 0 0 2.5rem;
	height: 2.5rem;
	margin: 0;
	padding: 0;
	position: relative;
	width: 2.5rem;
}

#navigation-toggle::before {
	background-color: var(--element-border);
	border-radius: var(--radius);
	content: '';
	height: 100%;
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

#navigation-toggle:hover::before {
	opacity: 1;
}

#navigation-toggle span {
	background-color: var(--text-color);
	border-color: var(--text-color);
	border-width: 2px;
	border-style: solid;
	border-radius: 1pt;
	position: absolute;
	display: block;
	height: 4px;
	left: 50%;
	top: 50%;
	width: 50%;
	transition-duration: var(--tr-short);
	transition-property: transform, border, width;
	transition-timing-function: var(--tr-func);
	
}

#navigation-toggle .top-bar {
	transform: translate(-50%, -175%) rotate(0deg);
}

#navigation-toggle .bottom-bar {
	transform: translate(-50%, 75%) rotate(0deg);
}

#navigation-toggle .middle-bar {
	display: none;
}

#navigation-toggle.toggled span {
	width: 60%;
	transition-duration: var(--tr-short);
	transition-property: transform, border, width;
	transition-timing-function: var(--tr-func);
	
}

#navigation-toggle.toggled .top-bar {
	transform: translate(-50%, -50%) rotate(45deg);
}

#navigation-toggle.toggled .bottom-bar {
	transform: translate(-50%, -50%) rotate(-45deg);
}

#navigation-toggle.toggled:hover span {
	background-color: var(--text-important);
	border-color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: transform, border, width;
	transition-timing-function: var(--tr-func);
}

#navigation-toggle:hover {
	color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: color, transform;
	transition-timing-function: var(--tr-func);
}

.wrapper {
	background-color: var(--page-color);
	backdrop-filter: blur(10px);
	height: 100vh;
	max-width: 100vw;
	left: 0;
	max-height: 100vh;
	overflow: scroll;
	padding: calc(var(--legible-margin) / 2 + 4.5rem) calc( calc(100vw - var(--legible-width)) / 2);
	position: fixed;
	transform: translate(0, 0);
	top: 0;
	visibility: visible;
	width: 100vw;
	z-index: 4;
	-moz-scrollbar-width: none;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.wrapper::-webkit-scrollbar {
	background: transparent;
	display: none;
	width: 0px;
}

.wrapper:not(.toggled) {
	box-shadow: -10px 0 60px 10px rgba(0,0,0,.125),
		calc(var(--legible-width) / 2 + var(--legible-margin) * 2 - 100vw) 0 0 0 var(--page-color-alpha);
	opacity: 0;
	transform: translate(0, 100%);
	content-visibility: hidden;
	visibility: hidden;
}

.wrapper,
.admin-bar .wrapper,
.wrapper:not(.toggled) {
	transition-property: box-shadow, transform, opacity, content-visibility, visibility;
	transition-duration: var(--tr-mid);
	transition-timing-function: var(--tr-func);	
}

@media (max-width: 740px) {
	.wrapper {
		padding: calc(var(--legible-margin) / 2 + 4.5rem) calc(var(--legible-margin) / 2);
		width: 100vw;
	}
	.header-adaptative .wrapper {
		padding-top: calc(var(--legible-margin) / 2);
	}
}

@supports (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) {
	.wrapper {
		background-color: var(--page-color-hover);
		-webkit-backdrop-filter: blur(10px);
		-moz-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
	}
}

/*--------------------------------------------------------------
# Header Menu Sections
--------------------------------------------------------------*/

#overlay-widgets {
	margin-bottom: calc(var(--legible-margin) / 2);
	margin-top: calc(var(--legible-margin) / 2);
}

.header-block.no-overlay-menu,
#navigation-toggle.just-mobile,
#overlay-header-menu {
	display: none;
}

#overlay-header-menu:not(:only-child) {
	margin-bottom: .5rem;
}

.header-block {
	border: 1px solid var(--input-border-alpha);
	padding: calc(var(--legible-margin) / 4);
	margin: 0 auto;
	width: 25rem;
	width: 100%;
	border-radius: calc(var(--radius) * 2);
	background-color: var(--page-color-alpha);
	box-shadow: 0px 5px 20px -2px var(--input-shadow-alpha);
	transition-duration: var(--tr-short);
	transition-property: box-shadow, background-color;
	transition-timing-function: var(--tr-func);
}

:not(.widget-area) > .header-block {
	margin-bottom: 2rem;
}

@media (max-width: 460px) {
	.header-block {
		padding: calc(var(--legible-margin) / 2);
	}
}

.header-block:hover {
	box-shadow: 0 0 5px -1px var(--input-shadow-alpha);
	transition-duration: var(--tr-short);
	transition-property: box-shadow, background-color;
	transition-timing-function: var(--tr-func);
}

.color-scheme-dark .header-block {
	background-color: var(--element-background-alpha);
}

#toggle-header-widget:hover {
	color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: color, transform;
	transition-timing-function: var(--tr-func);
}

/*--------------------------------------------------------------
# Branding
--------------------------------------------------------------*/

#site-branding {
	flex: 1 1 auto;
	margin-right: 2rem;
	height: 2.5rem;
	text-align: left;
	position: relative;
}

#site-branding > a {
	display: inline-block;
	margin: 0;
	padding: 0;
}

.site-title {
	margin: 0;
	padding: 0;
	font-size: 1.75rem;
	font-weight: 600;
	letter-spacing: -0.021em;
	line-height: 1.25;
}

#site-branding #site-logo {
	display: block;
	height: auto;
	left: 0;
	max-height: 4.5rem;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	min-width: 2.5rem;
}
#site-branding #site-logo a {
	display: block;
}
#site-branding #site-logo img {
	border-radius: 0;
	display: block;
	left: 50%;
	max-height: 4.5rem;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: opacity var(--tr-short) var(--tr-func);
	width: 100%;
}

.color-scheme-dark #site-header:not(.color-scheme-dark) .light-scheme-logo:not(:only-child) img,
body:not(.color-scheme-dark) #site-header.color-scheme-dark .light-scheme-logo:not(:only-child) img,
.color-scheme-light #site-header.color-scheme-light .dark-scheme-logo:not(:only-child) img,
.color-scheme-light #site-header:not(.color-scheme-dark) .dark-scheme-logo:not(:only-child) img {
	opacity: 0;
	transition: opacity var(--tr-short) var(--tr-func);
}

/*--------------------------------------------------------------
# Theme Switcher
--------------------------------------------------------------*/

#color-scheme-selector {
	border: 2px solid var(--border);
	border-radius: calc(var(--radius) * 2);
	display: flex;
	flex-flow: row nowrap;
	padding: 3px;
	position: relative;
	width: 100%;
	z-index: 0;
}

.color-scheme-option {
	cursor: pointer;
	display: block;
	flex: 0 0 calc((100% / 3) - 2px);
	text-align: center;
}

.color-scheme-option + .color-scheme-option {
	margin-left: 3px;
}

.color-scheme-option .color-scheme-label {
	border-radius: var(--radius);
	display: block;
	padding: 1rem;
	width: 100%;
}

.color-scheme-option .color-scheme-label:hover {
	background-color: var(--input-border);
}

.color-scheme-option .color-scheme-input {
	display: none;
}

.color-scheme-option .color-scheme-input:checked + .color-scheme-label {
	background-color: var(--border);
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

#main-content {
	margin-left: auto;
	margin-right: auto;
	max-width: calc(100vw - var(--legible-margin));
	padding: 0;
	position: relative;
	width: var(--legible-width);
}
#pre-content,
#post-content {
	clear: both;
	float: none;
	height: auto;
	margin-top: calc(var(--legible-margin) / 2);
	margin-bottom: calc(var(--legible-margin) / 2);
}

.home:not(.homepage-custom-header) #main-content,
.blog:not(.homepage-custom-header) #main-content {
	margin-top: 6.5rem;
}


/*--------------------------------------------------------------
# Loop
--------------------------------------------------------------*/

.site-loop {
	clear: both;
	display: grid;
	float: none;
	gap: calc(var(--legible-margin) / 4);
	margin-bottom: calc(var(--legible-margin) / 2);
	position: relative;
}

@media (max-width: 460px) {
	.site-loop {
		gap: calc(var(--legible-margin) / 2);
	}
}

.site-loop.one_column,
.site-loop.two-columns,
.site-loop.three-columns {
	grid-auto-flow: row dense;
}

.site-loop.one_column {
	grid-template-columns: 100%;
}

.site-loop.two-columns {
	grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin) / 4) / 2 ));
}

.site-loop.three-columns {
	grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin) / 2) / 3 ));
}

.site-loop.wider-width {
	margin-left: -5vw;
	margin-right: -5vw;
	max-width: 100vw;
	width: calc(100vw - calc(100vw - calc(100% + 10vw)));
}

.site-loop.near-width {
	margin-left: -15vw;
	margin-right: -15vw;
	max-width: 100vw;
	width: calc(100vw - calc(100vw - calc(100% + 30vw)));
}

.site-loop.full-width {
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	padding-left: calc(var(--legible-margin) / 2);
	padding-right: calc(var(--legible-margin) / 2);
	width: 100vw;
}

@media (max-width: 1024px)
{
	.site-loop.near-width {
		margin-left: -5vw;
		margin-right: -5vw;
		width: calc(100vw - calc(100vw - calc(100% + 10vw)));
	}
}

@media (max-width: 740px)
{
	.site-loop.wider-width,
	.site-loop.near-width,
	.site-loop.full-width {
		margin-left: unset;
		margin-right: unset;
		padding: 0;
		width: 100%;
	}
}

@media (max-width: 1200px) {
	.site-loop.three-columns {
		grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin) / 4) / 2 ));
	}
}

@media (max-width: 740px) {
	.site-loop.one-column,
	.site-loop.two-columns,
	.site-loop.three-columns {
		grid-template-columns: 100%;
	}
}

.not-singular .site-loop .entry + .entry {
	margin-top:  0;
}

.not-singular .site-loop .entry:last-child {
	margin-bottom: 0;
}



/*--------------------------------------------------------------
# Article
--------------------------------------------------------------*/
.site-loop.span-2 .entry.sticky {
	grid-column-end: span 2;
}

.site-loop.span-full .entry.sticky {
	grid-column: 1 / -1;
}

.site-loop .entry {
	cursor:  pointer;
}

@media (max-width: 740px) {
	.site-loop .entry.sticky {
		grid-column: auto;
	}
}

.entry {
	display: block;
	height: min-content;
	position: relative;
	width: auto;
}

.not-singular .entry:not(#entry-head) {
	border-radius: calc(var(--radius) * 2);
}

.not-singular.color-scheme-light .entry:not(#entry-head) {
	box-shadow: 0px 5px 20px -2px rgba(0, 0, 0, 0.125);
}

.not-singular.color-scheme-light .entry:hover:not(#entry-head) {
	box-shadow: 0px 0px 5px -1px rgba(0, 0, 0, 0.125);
}

.not-singular.color-scheme-light .entry:not(#entry-head),
.not-singular.color-scheme-light .entry:hover:not(#entry-head) {
	transition: box-shadow var(--tr-short) var(--tr-func);
	
}

#site-aside {
	display: block;
	left: 0;
	position: fixed;
	top: 0;
	z-index: 9;
}

/*--------------------------------------------------------------
# Post Header
--------------------------------------------------------------*/

.post-header {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	overflow: hidden;
	position: relative;
}

.not-singular .entry.sticky .post-header {
	min-height: 300px;
}

.not-singular :not(#entry-head) > .post-header {
	background-color: var(--alter-background);
	border-radius: calc(var(--radius) * 2);
	/* Fixing Safari Bug */
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	width: 100%;
}

.singular .post-header,
#entry-head .post-header {
	border-radius: 0;
	clear: both;
	float: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-bottom: calc(var(--legible-margin) / 2);
	max-width: 100vw;
}

.singular .post-header::before,
#entry-head .post-header::before {
	background-color: var(--element-background-alpha);
	border: 0;
	content: '';
	display: block;
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
	position: absolute;
	z-index: 1;
}

/*
 * Post Attachments
 */


.site-loop .post-attachment {
	display: block;
	height: 100%;
	max-height: 300px;
	overflow: hidden;
	width: 100%;
}

.singular .post-attachment,
.cover .post-attachment {
	left: 0;
	height: 100%;
	position: absolute;
	top: 0;
	width: 100%;
}

.singular .post-attachment,
.singular .post-attachment img {
	border: 0;
	border-radius: 0;	
}

.singular .post-attachment img {
	width: 100%;
}

.singular .post-attachment {
	z-index: 0;
}

.singular .post-attachment,
.not-singular .cover .post-attachment {
	transform: scale(1.1);
}

.not-singular .cover .post-attachment {
	opacity: 0.5;
}

.not-singular .cover .post-attachment,
.not-singular .site-loop .post-attachment {
	transition-property: transform, opacity;
	transition-duration: var(--tr-long);
	transition-timing-function: var(--tr-func);
}

.site-loop .post-attachment img,
.singular .post-attachment img,
.cover .post-attachment img {
	height: 100%;
	max-height: 100%;
	-webkit-object-fit: cover;
	-moz-object-fit: cover;
	object-fit: cover;
	object-position: center;
	object-position: center center;
	object-position: 50% 50%;
	transform: scale(1.125);
	transition-property: transform, filter;
	transition-duration: var(--tr-long);
	transition-timing-function: var(--tr-func);
	width: 100%;
}

.singular .post-attachment img,
.cover .post-attachment img {
	filter: blur(5px);
}

.site-loop .post-header:hover .post-attachment img {
	transform: scale(1.075);
	transition-property: transform, filter;
	transition-duration: var(--tr-long);
	transition-timing-function: var(--tr-func);
}

.not-singular .site-loop:not(.cover) .post-attachment,
.not-singular .site-loop:not(.cover) .post-attachment img {
	border-radius: calc(var(--radius) * 2) calc(var(--radius) * 2) 0 0;
}

.not-singular .cover .post-attachment img {
	border-radius: calc(var(--radius) * 2);
}

.not-singular .cover .post-header:hover .post-attachment {
	opacity: 1;
	transform: scale(1.05);
	transition-property: transform, opacity;
	transition-duration: var(--tr-long);
	transition-timing-function: var(--tr-func);
	
}

.not-singular .cover .post-header:hover .post-attachment img {
	filter: blur(0);
	transition-property: transform, filter;
	transition-duration: var(--tr-long);
	transition-timing-function: var(--tr-func);	
}

/*--------------------------------------------------------------
# Post Info
--------------------------------------------------------------*/

.post-info {
	clear: both;
	display: flex;
	flex-flow: column;
	justify-content: center;
	z-index: 2;
}

a.post-info {
	opacity: 1;
	padding: 1rem;
	transition: opacity var(--tr-short) var(--tr-func);
}

.\:hover a.post-info,
a.post-info:hover {
	opacity: 0.6;
	transition: opacity var(--tr-short) var(--tr-func);
}

.singular .post-info,
#entry-head .post-info {
	height: auto;
	margin: 6.75rem auto 4.5rem;
	min-height: 300px;
	max-width: calc(100vw - var(--legible-margin));
	padding: 4.5rem 0;
	width: var(--legible-width);
}

.singular .post-info:not(:last-child),
#entry-head .post-info:not(:last-child) {
	margin-bottom: 2.25rem;
	padding-bottom: 4.5rem;
}


.post-title {
	color: var(--text-important);
	display: block;
	font-size: 2em;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	margin: 0;
	overflow-wrap: break-word;
	padding: 0;
	word-wrap: break-word;
}

.singular .post-title,
#entry-head .post-title {
	font-size: 3em;
}

.post-title {
	font-family: var(--font-custom), var(--font-stack);
}

.post-date,
.post-author {
	font-weight: normal;
}

.post-date {
	color: var(--text-important-hover);
	display: block;
	font-size: 0.75rem;
	letter-spacing: 0.05rem;
	line-height: 1;
	margin-bottom: 0.75rem;
	text-transform: uppercase;
}

.post-author {
	color: var(--text-color);
	display: block;
	line-height: 1;
	margin-bottom: 0.75rem;
	margin-top: 0.8rem;
}

a .author-pre-text {
	font-weight: 400;
}

.post-author:last-child {
	margin-bottom: 0;
}

.post-header .post-meta {
	display: block;
}

.post-header .post-meta {
	color: var(--text-important-hover);
	display: flex;
	flex-flow: row wrap;
	font-weight: normal;
	max-width: calc(100vw - var(--legible-margin));
	width: var(--legible-width);
	z-index: 2;
}

.sticky .post-header .post-meta {
	width: calc(var(--legible-width) - var(--legible-margin));
}

body:not(.singular) .sticky .post-header .post-meta {
	max-width: 100%;
} 

.singular .post-header .post-meta {
	margin: 0 auto;
}


body:not(.singular) .post-header .post-meta > * {
	margin-left: 1rem;
	margin-right: 1rem;
	margin-top: 1rem;
}

.post-header .post-meta > :last-child:not(.post-edit) {
	margin-bottom: 1rem;
}

.post-header:hover .meta-excerpt {
	opacity: 0.6;
	transition: opacity var(--tr-short) var(--tr-func);
}

.meta-sticky {
	display: block;
	font-size: 0.75rem;
	font-weight: bold;
	letter-spacing: 0.1rem;
	line-height: 1;
	margin: 1rem;
	position: absolute;
	right: 0;
	text-transform: uppercase;
	top: 0;
	z-index: 2;
}

.meta-excerpt {
	display: block;
	opacity: 1;
	transition: opacity var(--tr-short) var(--tr-func);
}

.post-edit {
	background-color: var(--element-background-alpha);
	border-radius: var(--radius);
	margin: 1rem;
	padding: 0.2em 0.75em;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 8;
}

.sticky .post-edit {
	top: 1.75rem;
}

.post-meta .meta-item:first-child .meta-item-title {
	margin-top: 0;
}

.meta-item-title {
	text-transform: capitalize;
}

.meta-item-list {
	display: flex;
	flex-flow: row wrap;
	margin-top: 0.5rem;
}

.meta-categories .meta-item-list {
	flex-wrap: nowrap;
	max-width: calc(100vw - var(--legible-margin));
	overflow: scroll;
	width: var(--legible-width);
	-moz-scrollbar-width: none;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.meta-categories .meta-item-list::-webkit-scrollbar {
	background: transparent;
	display: none;
	width: 0;
}


.meta-item-list > :first-child a {
	margin-left: 0;
}

.meta-item-list > *,
.meta-item-list a {
	display: inline-block;
	text-align: center;
}

.meta-item-list > * {
	flex: 0 1 auto;
	min-width: fit-content;
	min-width: -moz-fit-content;
}

.meta-item-list .button a,
.meta-item-list .button a:visited {
	background-color: transparent;
	border-width: 1px;
	border-color: var(--text-color-light);
	box-shadow: unset;
	color: var(--text-color-light);
	margin-bottom: 1ch;
	margin-right: 1ch;
	padding: 0.2em 0.75em;
}

.meta-categories .meta-item-list .button a {
	margin-bottom: 1px;
}


.meta-item-list .button a:hover,
.meta-item-list .button a:visited:hover {
	background-color: var(--text-color);
	border-color: var(--text-color);
	box-shadow: unset;
	color: var(--page-color);
}

.meta-item-list .button a:active,
.meta-item-list .button a:active:hover {
	background-color: var(--text-color);
	border-color: var(--text-color);
	box-shadow: unset;
	color: var(--page-color);
}

/*--------------------------------------------------------------
# Post Footer
--------------------------------------------------------------*/

.post-footer {
	float: none;
	clear: both;
	margin-bottom: calc(var(--legible-margin) / 2);
	padding-top: var(--legible-margin);
}

@media (max-width: 740px) {
	.post-footer {
		margin-bottom: var(--legible-margin);
	}
}

.post-footer:empty {
	margin-bottom: 0;
}

.post-footer .post-meta {
	margin: 0 auto var(--legible-margin);
	position: relative;
}

/*--------------------------------------------------------------
# Post Content - Archive Content
--------------------------------------------------------------*/

.archive-type,
.archive-details,
.post-summary,
.post-content,
.comment-content {
	margin: 0;
	padding: 0;
	max-width: 100%;
	text-align: justify;
	text-align-last: auto;
	width: 100%;
}

.archive-type,
.archive-details {
	margin-top: 1rem;
	width: auto;
}

.archive-type {
	font-weight: bolder;
	text-transform: uppercase;
	color: var(--text-important-hover);
}

.archive-details {
	color: var(--text-important-hover);
}

.post-content > p {
	margin-bottom: 2rem;
}

.post-content > :first-child {
	margin-top: 0;
}

.archive-type > :first-child {
	margin: 0 auto;
}

.archive-type > :last-child,
.post-content > p:last-child {
	margin-bottom: 0;
}

.color-scheme-dark .widget-container:not(:last-child)::after {
	background-color: var(--element-background-alpha);
}

/*--------------------------------------------------------------
# Comments
--------------------------------------------------------------*/

.reaction-section {
	margin-bottom: 4rem;
}

.comments-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.comment,
.comment-body {
	position: relative;
}

.comment {
	margin-bottom: 1.5rem;
	position: relative;
}

.comment-body {
	border: 1px solid var(--input-border);
	border-radius: var(--radius);
	box-shadow: 0px 5px 20px -2px rgba(0, 0, 0, 0.125);
	transition: box-shadow var(--tr-short) var(--tr-func);
	display: block;
}

.comment-body:hover {
	box-shadow: 0px 0px 5px -1px rgba(0, 0, 0, 0.125);
	transition: box-shadow var(--tr-short) var(--tr-func);
}

.comment-body,
.comment-body > * {
	display: block;
	height: auto;
}

.comment .comment-meta {
	border-bottom: 1px solid var(--input-border);
	border-radius: var(--radius) var(--radius) 0 0;
	display: block;
	padding: .5rem;
	width: 100%;
}

.comment .comment-author.vcard cite.fn {
	height: 1rem;
}
.comment .comment-author.vcard img.photo,
.comment .comment-author.vcard img.avatar {
	border-radius: calc(var(--radius) / 2);
	display: inline-block;
	height: 1rem;
	margin-right: .25rem;
	width: 1rem;
}

.comment .comment-metadata {
	display: block;
	text-transform: uppercase;
	margin-top: .25rem;
}

.comment .comment-metadata,
.comment .comment-metadata a {
	color: var(--text-optional);
	font-size: .75rem;
	font-weight: normal;
}

.comment .comment-metadata a:hover {
	color: var(--text-important);
}
.comment .reply {
	border-top: 1px solid var(--input-border);
	background-color: var(--element-background);
	border-radius: 0 0 var(--radius) var(--radius);
	display: block;
	padding: .5rem;
	width: 100%;
}

.comment .children {
	display: block;
	list-style: none;
	margin-top: 1rem;
	margin-left: 1.5rem;
	padding: 0;
	position: relative;
}

.comment .children::before {
	background-color: var(--input-border);
	content: '';
	display: block;
	height: 1rem;
	left: 50%;
	position: absolute;
	top: -1rem;
	transform: translateX(-50%);
	width: 2px;
	z-index: 2;
}

.comment .comment-content {
	line-height: 1.2;
	padding: .75rem;
	position: relative;
}
.comment .comment-content:last-child {
	border-bottom: 0;
}
.comment .comment-content > :first-child {
	margin-top: 0;
}
.comment .comment-content > :last-child {
	margin-bottom: 0;
}

.comment .comment-content code {
	font-size: .75rem;
	line-height: 1.5;
}

.comment-respond {
	border: 1px solid var(--input-border);
	border-radius: var(--radius);
	box-shadow: 0px 5px 20px -2px var(--input-shadow-alpha);
	display: block;
	margin-top: 1.5rem;
	position: relative;
	transition: box-shadow var(--tr-short) var(--tr-func);
}

.comment:hover .comment-respond,
.comment-respond:hover {
	box-shadow: 0px 0px 5px -1px var(--input-shadow-alpha);
	transition: box-shadow var(--tr-short) var(--tr-func);
}

.comment-respond .comment-reply-title {
	align-items: center;
	background-color: var(--element-background);
	border-bottom: 1px solid var(--input-border);
	border-radius: var(--radius) var(--radius) 0 0;
	display: flex;
	flex-flow: row wrap;
	font-size: 1.5rem;
	justify-content: space-between;
	margin: 0;
	padding: 1rem;
	width: 100%;
}

.comment-respond form {
	padding: 1rem;
}

.comment .comment-respond::before {
	background-color: var(--input-border);
	content: '';
	display: block;
	height: 1.5rem;
	left: 50%;
	position: absolute;
	top: calc(-1.5rem - 1px);
	transform: translateX(-50%);
	width: 2px;
}

a#cancel-comment-reply-link {
	color: var(--text-important-hover);
}
a#cancel-comment-reply-link:hover {
	color: var(--text-important);
}




.comment-awaiting-moderation {
	position: absolute;
	top: 0;
	left: 0;
	padding: 1rem;
	display: flex;
	align-content: center;
	align-items: center;
	justify-content: center;
	height: 100%;
	width: 100%;
	font-size: 1.25rem;
	color: var(--text-important);
	text-align: center;
	background-color: var(--element-background);
	border-radius: var(--radius);
	-webkit-backdrop-filter: blur(5px);
	-moz-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
}

#cancel-comment-reply-link {
	float: right;
	padding: .25rem 0;
}

.comment-form {
	clear: both;
}

.comment-form > *:not(:first-child) {
	margin: 1rem 0 0;
}

.comment-form label {
	margin-bottom: 1ex;
}

.comment-form span.required {
	font-feature-settings: 'case';
	color: red;
}

.comment-form > *:focus-within label {
	color: var(--text-important);
}

.comment-form-comment > *,
.comment-form-author > *,
.comment-form-email > *,
.comment-form-url > *,
.form-submit {
	display: block;
	width: 100%;
	max-width: 100%;
}


/*--------------------------------------------------------------
# Search
--------------------------------------------------------------*/

#search-toggle {
	border: 0;
	border-radius: var(--radius);
	cursor: pointer;
	display: block;
	position: relative;
	height: 2.5rem;
	width: 2.5rem;
}

#header-menu + #search-toggle {
	margin-left: 1.25rem;
}

#search-toggle::before {
	background-color: var(--element-border);
	border-radius: var(--radius);
	content: '';
	display: block;
	height: 100%;
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: opacity var(--tr-short) var(--tr-func);
	width: 100%;
	
}

#search-toggle:hover::before {
	opacity: 1;
	transition: opacity var(--tr-short) var(--tr-func);
	
}

.search-icon {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) scale(1);
	width: 100%;
	transition-duration: var(--tr-short);
	transition-property: transform;
	transition-timing-function: var(--tr-func);
	
}

.search-icon::before,
.search-icon::after {
	border-color: var(--text-color);
	border-style: solid;
	content: '';
	display: block;
	left: 50%;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50%;
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
	
}

.search-icon::before {
	background-color: unset;
}

.search-icon::after {
	background-color: var(--text-color);
}

.toggled > .search-icon::before,
.toggled > .search-icon::after {
	background-color: var(--text-color);
	border-width: 2px;
	border-radius: 1pt;
	top: 50%;
	left: 50%;
	height: 4px;
	width: 60%;
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

:hover > .search-icon::before,
:hover > .search-icon::after,
.toggled:hover > .search-icon::before,
.toggled:hover > .search-icon::after {
	border-color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

.toggled:hover > .search-icon::before,
.toggled:hover > .search-icon::after,
:not(.toggled):hover > .search-icon::after {
	background-color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

:not(.toggled) > .search-icon::before {
	box-sizing: border-box;
	border-width: 3px;
	border-radius: 0.9rem;
	display: block;
	min-height: 0.9rem;
	min-width: 0.9rem;
	max-height: 0.9rem;
	max-width: 0.9rem;
	transform: translate(-66%, -66%) rotate(0);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

:not(.toggled) > .search-icon::after {
	border-width: 2px;
	border-radius: 0 1pt 1pt 0;
	display: block;
	height: 4px;
	width: 0.75rem;
	transform: translate(0, 100%) rotate(45deg);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

.toggled > .search-icon::before {
	transform: translate(-50%, -50%) rotate(-45deg);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

.toggled > .search-icon::after {
	transform: translate(-50%, -50%) rotate(45deg);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

/* Search Container */

#search-container {
	--search-radius: calc(var(--radius) * 1.5);
	align-items: center;
	background-color: var(--element-background);
	border-radius: calc(var(--radius) * 2);
	display: flex;
	box-sizing: border-box;
	flex-flow: row nowrap;
	max-height: 4rem;
	justify-content: center;
	margin: 0;
	max-width: 100%;
	padding: 0.2rem;
	width: 100%;
}

#search-container input[type='search'] {
	background-color: unset;
	border-radius: var(--search-radius) var(--radius) var(--radius)
		var(--search-radius);
	border-width: 0;
	margin: 0;
	font-size: 1.5rem;
	font-weight: normal;
	height: 100%;
	max-width: 100%;
	width: 100%;
}
#search-container input[type='search']:focus,
#search-container input[type='search']:active {
	background-color: unset;
}
#search-container:focus-within input[type='search']::placeholder,
#search-container input[type='search']:focus::placeholder,
#search-container input[type='search']:active::placeholder {
	color: var(--text-important-hover);
	transition: color var(--tr-short) var(--tr-func);
}

#search-container .search-submit {
	background-color: unset;
	border-radius: var(--radius);
	border-width: 0;
	cursor: pointer;
	display: block;
	font-size: 1rem;
	min-height: 3.6rem;
	padding: 0;
	position: relative;
	min-width: 3.6rem;
	transition: background-color var(--tr-short) var(--tr-func);
}

#search-container .search-submit::after {
	content: '';
	display: block;
	position: relative;
}

#search-container .search-submit:hover:not(:focus),
#search-container .search-submit:hover:not(:active) {
	background-color: unset;
	transition: background-color var(--tr-short) var(--tr-func);
}

#search-container .search-submit:focus,
#search-container .search-submit:hover:focus,
#search-container .search-submit:active,
#search-container .search-submit:hover:active {
	background-color: var(--element-border);
	transition: background-color var(--tr-short) var(--tr-func);
}

#search-container .search-submit .search-icon {
	display: block;
	height: 3.6rem;
	width: 3.6rem;
	transition-duration: var(--tr-short);
	transition-property: transform;
	transition-timing-function: var(--tr-func);
}

#search-container .search-submit .search-icon::before,
#search-container .search-submit .search-icon::after {
	border-color: var(--text-color);
}
#search-container .search-submit .search-icon::after {
	background-color: var(--text-color);
}
:hover > .search-icon::before,
:hover:focus > .search-icon::before,
:hover:active > .search-icon::before,
:hover > .search-icon::after,
:hover:focus > .search-icon::after,
:hover:active > .search-icon::after {
	border-color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}
:hover > .search-icon::after,
:hover:focus > .search-icon::after,
:hover:active > .search-icon::after {
	background-color: var(--text-important);
	transition-duration: var(--tr-short);
	transition-property: transform, background, border, width;
	transition-timing-function: var(--tr-func);
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/

.widget-title {
	display: block;
	margin-bottom: 1rem;
	margin-top: 0;
}

.widget-container ul {
	padding: 0;
	list-style: none;
}

.widget-container > ul {
	font-size: 1.3em;
}

.widget-container > ul ul {
	padding-left: 1em;
}

.widget-container > *:last-child {
	margin-bottom: 0;
}

.widget_recent_entries .post-date {
	color: var(--text-optional);
}

.calendar_wrap * {
	border: none;
	text-align: center;
}

.calendar_wrap table {
	margin: 1.5em auto 0.5em;
}

.calendar_wrap td:not(#prev):not(#next) a {
	border-bottom: 2px solid currentColor;
}
/*
 *
 */
.widget-title .rsswidget:first-child {
	display: none;
}

.widget-title .rsswidget:last-child {
	position: relative;
}

.widget-title .rsswidget:last-child::before {
	display: inline-block;
	content: 'RSS';
	align-content: center;
	justify-content: center;
	margin-bottom: .15rem;
	margin-right: 0.333em;
	padding: 0 0.275em 0 .3em;
	height: .8rem;
	border-radius: calc(var(--radius) / 2);
	font-size: 0.5em;
	font-weight: 900;
	line-height: .8rem;
	vertical-align: middle;
	background-color: orange;
	color: var(--light-text-important);
}

.widget_rss li {
	display: flex;
	flex-flow: row wrap;
}
.widget_rss li:not(:last-child) {
	margin-bottom: 2rem;
}

.widget_rss li a.rsswidget,
.widget_rss li .rss-date,
.widget_rss li .rssSummary,
.widget_rss li cite {
	display: block;
}

.widget_rss li .rss-date,
.widget_rss li cite {
	color: var(--text-color-hover);
	font-size: .5em;
	font-style: normal;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.widget_rss li .rss-date + .rssSummary + cite::after {
	content: '•';
	display: inline-block;
	margin-left: .5ch;
	margin-right: .5ch;
}

.widget_rss li a.rsswidget {
	flex: 0 1 100%;
	font-size: 1.5rem;
	line-height: 1.2;
	margin-bottom: .4rem;
	order: 1;
}
.widget_rss li cite {
	order: 2;
}
.widget_rss li .rss-date {
	order: 3;
}
.widget_rss li .rssSummary {
	flex: 0 1 100%;
	font-size: .8em;
	line-height: 1.2;
	margin-top: .4rem;
	order: 4;
}

.widget_media_audio,
.widget_media_audio * {
	font-family: var(--font-stack) !important;
}

/*--------------------------------------------------------------
# Pagination + Navigation + Jetpack Scroll
--------------------------------------------------------------*/

#infinite-handle {
	display: block;
}

.pagination {
	clear: both;
	display: flex;
	flex-flow: row wrap;
	float: none;
	column-gap: 2rem;
	margin-bottom: var(--legible-margin);
	margin-top: var(--legible-margin);
	margin-left: 0;
	margin-right: 0;
	justify-content: space-between;
	position: relative;
	row-gap: 2rem;
	width: 100%;
}

:not(#site-navigation).pagination > * {
	flex: 0 1 auto;
}

@media (max-width: 740px) {
	:not(#site-navigation).pagination > * {
		flex: 0 1 100%;
	}
}

.pagination a .nav-previous,
.pagination a .nav-next,
.pagination .nav-next a,
.pagination .nav-previous a,
#infinite-handle span {
	display: flex;
	flex-flow: column nowrap;
}

.pagination > .nav-previous,
.pagination .nav-previous:only-child a {
	justify-self: start;
	justify-self: flex-start;
	margin-right: auto;
}

.pagination > .nav-next,
.pagination .nav-next:only-child a {
	justify-self: end;
	justify-self: flex-end;
	margin-left: auto;
}

#post-pagination.pagination a:only-child {
	justify-self: start;
}

.post-content:not(:last-child) #post-pagination.pagination {
	margin-bottom: 0;
}

a .nav-next,
.nav-next a {
	justify-content: end;
	text-align: right;
}

a .nav-previous,
.nav-previous a {
	justify-content: start;
	text-align: left;
}

.nav-arrow {
	font-size: .8rem;
	font-weight: 400;
	letter-spacing: .25rem;
	text-transform: uppercase;
}

.nav-title {
	position: relative;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: -0.03rem;
	word-break: break-all;
}

#site-navigation .nav-title {
	position: relative;
	font-size: 1.25rem;
	font-weight: 900;
	letter-spacing: .25rem;
	text-transform: uppercase;
	word-break: break-all;
}

.nav-previous:only-child,
.nav-next:only-child {
	width: 100%;
	justify-self: stretch;
}

.nav-previous .meta-nav {
	padding-right: 0.3em;
}

.nav-next .meta-nav {
	padding-left: 0.3em;
}

.infinite-scroll #site-navigation {
	display: none;
}

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

#site-footer {
	background-color: var(--element-background);
	clear: both;
	display: grid;
	float: none;
	padding: var(--legible-margin) 0;
	width: 100%;
}

#site-footer > *,
#site-description,
#site-credit {
	margin-left: auto;
	margin-right: auto;
	max-width: calc(100vw - var(--legible-margin));
	padding: 0;
	position: relative;
	width: var(--legible-width);
}

#site-footer > :not(:last-child) {
	margin-bottom: var(--legible-margin);
}

.widget-area {
	display: grid;
	gap: calc(var(--legible-margin) / 2);
}

.widget-area.one-column {
	gap: calc(var(--legible-margin) / 2);	
}

@media (max-width: 460px) {
	.widget-area {
		gap: calc(var(--legible-margin) / 2);
	}
}

.widget-area.one-column,
.widget-area.two-columns,
.widget-area.three-columns,
.widget-area.four-columns {
	grid-auto-flow: row dense;
}

.widget-area.one-column {
	grid-template-columns: 100%;
}

.widget-area.two-columns {
	grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin) / 2) / 2 ));
}

.widget-area.three-columns {
	grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin)) / 3 ));
}

.widget-area.four-columns {
	grid-template-columns: repeat(auto-fill, calc( calc(100% - calc(3 * var(--legible-margin)) / 2 ) / 4 ));
}

.widget-area.wider-width {
	margin-left: -5vw;
	margin-right: -5vw;
	max-width: 100vw;
	width: calc(100vw - calc(100vw - calc(100% + 10vw)));
}

.widget-area.near-width {
	margin-left: -15vw;
	margin-right: -15vw;
	max-width: 100vw;
	width: calc(100vw - calc(100vw - calc(100% + 30vw)));
}

.widget-area.full-width {
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	padding-left: calc(var(--legible-margin) / 2);
	padding-right: calc(var(--legible-margin) / 2);
	width: 100vw;
}

@media (max-width: 1024px)
{
	.widget-area.near-width {
		margin-left: -5vw;
		margin-right: -5vw;
		width: calc(100vw - calc(100vw - calc(100% + 10vw)));
	}
}

@media (max-width: 740px)
{
	.widget-area.wider-width,
	.widget-area.near-width,
	.widget-area.full-width {
		margin-left: unset;
		margin-right: unset;
		padding: 0;
		width: 100%;
	}
}

@media (max-width: 1200px) {
	.widget-area.four-columns {
		grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin)) / 3 ));
	}
}

@media (max-width: 1024px) {
	.widget-area.four-columns,
	.widget-area.three-columns {
		grid-template-columns: repeat(auto-fill, calc( calc(100% - var(--legible-margin) / 2) / 2 ));
	}
}

@media (max-width: 600px) {
	.widget-area.one-column,
	.widget-area.two-columns,
	.widget-area.three-columns,
	.widget-area.four-columns {
		grid-template-columns: 100%;
	}
}


#footer-menu ul {
	display: block;
	margin: 0 auto;
	padding: 0;
	list-style: none;
	font-size: 1em;
	font-weight: initial;
	line-height: 1.5rem;
	text-align: center;
}

#footer-menu .menu > li {
	display: inline-block;
	margin: 0 -.5rem;
	padding: .5rem 1rem;
}

#site-description,
#site-credit {
	display: block;
	text-align: center;
}

#site-credit {
	color: var(--text-optional);
}

#site-description,
:not(#site-description) + #footer-menu,
:not(#site-description):not(#footer-menu) + #site-credit {
	margin-top: var(--legible-margin);
}

/*--------------------------------------------------------------
# Media Queries
--------------------------------------------------------------*/

@media (max-width: 782px) {
	.header-adaptative.admin-bar #site-progress-bar {
		top: 0;
	}
	.header-adaptative.admin-bar #overlay-menu > .toggle + * {
		top: calc(4.5rem + 46px);
		height: calc(100vh - 4.5rem);
	}
}

@media (max-aspect-ratio: 5/6) and (orientation: portrait) and (max-width: 1024px),
	(max-width: 900px) {
	.header-adaptative.admin-bar.header-hidden #site-header:not(:hover) {
		transform: translate(-50%, 100%);
	}
	.header-adaptative #site-header::before,
	body.header-adaptative:not(.page-scrolled) #site-header::before,
	body.header-adaptative.page-scrolled #site-header::before,
	body.header-adaptative.header-hidden #site-header::before {
		background-color: var(--page-color-alpha);
	}
	.header-adaptative #site-header,
	.header-adaptative.admin-bar #site-header {
		bottom: 0;
		top: unset;
		transform: translate(-50%, 0);
	}
	body.header-adaptative.header-hidden #site-header:hover,
	body.header-adaptative.header-hidden #site-header:not(:hover),
	body.header-adaptative.admin-bar.header-hidden #site-header {
		transform: translate(-50%, 100%);
	}
	body.header-adaptative:not(.header-hidden) #site-progress-bar {
		transform: translateY(0);
	}

	#header-menu {
		display: none;
	}

	.header-block.no-overlay-menu,
	#navigation-toggle.just-mobile,
	#overlay-header-menu {
		display: block;
	}

	.header-adaptative #overlay-menu > .toggle + * {
		top: 0;
	}

	@media (max-width: 782px) {
		.header-adaptative.admin-bar #overlay-menu > .toggle + * {
			height: 100vh;
			top: 46px;
		}
	}

	.header-adaptative.home:not(.homepage-custom-header) #main-content,
	.header-adaptative.blog:not(.homepage-custom-header) #main-content {
		margin-top: 2rem;
	}

	@media (max-width: 460px) {
		.header-adaptative.home:not(.homepage-custom-header) #main-content,
		.header-adaptative.blog:not(.homepage-custom-header) #main-content {
			margin-top: 1rem;
		}
	}

	.header-adaptative:not(.homepage-custom-header) .singular .post-info,
	.header-adaptative:not(.homepage-custom-header) #entry-head .post-info {
		margin-bottom: var(--legible-margin);
		margin-top: var(--legible-margin);
	}

	.header-adaptative #site-footer {
		margin-bottom: 4.5rem;
	}
}

/*--------------------------------------------------------------
# Aemi Lightbox
--------------------------------------------------------------*/

.lightbox {
	align-content: center;
	background-color: var(--page-color-alpha);
	color: var(--text-color);
	display: flex;
	flex-flow: column;
	height: 100%;
	justify-content: center;
	left: 0;
	overflow: auto;
	position: fixed;
	top: 0;
	visibility: hidden;
	content-visibility: hidden;
	transition: visibility var(--tr-short) var(--tr-func), content-visibility var(--tr-short) var(--tr-func);
	width: 100%;
	z-index: 20;
}

.lightbox.lightbox-active {
	visibility: visible;
	content-visibility: visible;
	transition: visibility var(--tr-short) var(--tr-func), content-visibility var(--tr-short) var(--tr-func);
}

.lightbox-content-wrapper {
	margin: 0;
	visibility: hidden;
	content-visibility: hidden;
	transition: visibility var(--tr-short) var(--tr-func), content-visibility var(--tr-short) var(--tr-func);
}

.lightbox-content-wrapper > img {
	border-radius: 0;
	display: block;
	height: auto;
	margin: 0 auto;
	max-height: 100vh;
	max-width: 100vw;
	opacity: 0;
	padding: 0;
	width: auto;
	transition: opacity var(--tr-short) var(--tr-func);
}

.lightbox-content-wrapper.lightbox-wrapper-active {
	visibility: visible;
	content-visibility: visible;
	transition: visibility var(--tr-short) var(--tr-func), content-visibility var(--tr-short) var(--tr-func);
}

.lightbox-content-wrapper.lightbox-wrapper-active > img {
	opacity: 1;
	transition: opacity var(--tr-short) var(--tr-func);
}

.lightbox-caption {
	align-content: center;
	align-items: center;
	background-color: var(--element-background);
	border-radius: var(--radius);
	bottom: 1rem;
	color: var(--text-color);
	display: none;
	font-weight: normal;
	justify-content: center;
	left: 50%;
	line-height: 0.9rem;
	margin: 0;
	max-width: calc(100vw - 9.5rem);
	min-height: 2.75rem;
	padding: 0 1.5rem;
	position: fixed;
	text-align: center;
	transform: translateX(-50%);
	width: 33vw;
}

.lightbox-active .lightbox-caption {
	display: flex;
}

.lightbox-close,
.lightbox-next,
.lightbox-prev {
	background-color: var(--element-background);
	border-radius: var(--radius);
	color: var(--text-optional);
	display: none;
	font-feature-settings: 'case';
	font-size: 2.25rem;
	font-weight: 700;
	height: 2.75rem;
	line-height: 2.75rem;
	margin: 0;
	padding: 0;
	position: fixed;
	text-align: center;
	transition: var(--tr-short) color var(--tr-func);
	width: 2.75rem;
	cursor: pointer;
}

.lightbox-close:hover,
.lightbox-next:hover,
.lightbox-prev:hover {
	color: var(--text-color);
	transition: var(--tr-short) color var(--tr-func);
}

.lightbox-active .lightbox-close,
.lightbox-active .lightbox-next,
.lightbox-active .lightbox-prev {
	display: block;
}

.lightbox-close {
	top: 1rem;
	right: 1rem;
}

.lightbox-next,
.lightbox-prev {
	bottom: 1rem;
}

.lightbox-next {
	right: 1rem;
}

.lightbox-prev {
	left: 1rem;
}

.lightbox-next::after {
	content: '\2192';
}

.lightbox-prev::before {
	content: '\2190';
}
