/* vietnamese */
@font-face {
  font-family: 'Josefin Sans';
  font-style: italic;
  font-weight: 100 700;
  src: url(https://fonts.gstatic.com/s/josefinsans/v34/Qw3EZQNVED7rKGKxtqIqX5EUCEx1XHgciw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Josefin Sans';
  font-style: italic;
  font-weight: 100 700;
  src: url(https://fonts.gstatic.com/s/josefinsans/v34/Qw3EZQNVED7rKGKxtqIqX5EUCEx0XHgciw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Josefin Sans';
  font-style: italic;
  font-weight: 100 700;
  src: url(https://fonts.gstatic.com/s/josefinsans/v34/Qw3EZQNVED7rKGKxtqIqX5EUCEx6XHg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 100 700;
  src: url(https://fonts.gstatic.com/s/josefinsans/v34/Qw3aZQNVED7rKGKxtqIqX5EUAnx4RHw.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 100 700;
  src: url(https://fonts.gstatic.com/s/josefinsans/v34/Qw3aZQNVED7rKGKxtqIqX5EUA3x4RHw.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Josefin Sans';
  font-style: normal;
  font-weight: 100 700;
  src: url(https://fonts.gstatic.com/s/josefinsans/v34/Qw3aZQNVED7rKGKxtqIqX5EUDXx4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
    --accent-color:  #58b1e3;
}

html {
	background: #000;
}
html, body {
	margin: 0;
	position: relative;
}
body {
	color: #eee;
	font-family: 'Josefin Sans', sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 20px;
}
h1, h2, h3, h4, h5, h6 {
	text-transform: uppercase;
	text-shadow: 0 0.2em 0.1em rgba(0,0,0,0.8);
}
a, a:link, a:visited, .button.notbutton {
	color: #fff;
	text-decoration: dotted underline 2px rgba(255,255,255,0.6);
}
img, picture, video {
	max-width: 100%;
	display: block;
	height: auto;
}
p {
	margin: 0 0 1.25em;
}
small {
	font-size: 0.7em;
}
.textcenter {
	text-align: center;
}
table {
	width: 100%;
	background-color: var(--md-default-bg-color);
	border: .05rem solid var(--md-typeset-table-color);
	max-width: 100%;
	overflow: auto;
	touch-action: auto;
}
table tbody tr {
	transition: background-color 125ms;
	background-color: rgba(0,0,0,0.3);
}
table tbody tr:hover {
	background-color: rgba(255,255,255,0.1);
}
table td {
	border-top: .05rem solid #ddd;
	padding: .9375em 1.25em;
	vertical-align: top;
}

/* Page design */
#page-logo {
	color: transparent;
	text-align: center;
}
#logo-text {
	font-size: 0;
	color: transparent;
}
#logo-emblem {
	display: inline-block;
	width: 15vh;
	height: 20vh;
	background: center center url('/img/logo-coyoliolio.png') transparent;
	background-size: contain;
	background-repeat: no-repeat;
	rotate: 30deg;
	margin: 30px 0;
	transition: 0.5s ease-in-out 0.25s;
}
#logo-emblem:hover {
	rotate: 20deg;
}
#menu-toggle {
	width: 31px;
	font-size: 10px;
	text-transform: uppercase;
	line-height: 1.5em;
	position: absolute;
	right: 2%;
	top: 7px;
	z-index: 10;
}
#menu-toggle label {
	display: block;
	cursor: pointer;
	padding-top: 30px;
	position: fixed;
	top: 20px;
	right: 30px;
}
#menu-main {
	background-color: rgba(0,0,0,.9);
	box-shadow: -2px 0 5px 0 rgba(0,0,0,.8);
	padding: 60px 0 90px;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	height: 100%;
	z-index: -1;
	text-align: right;
	overflow: auto;
	min-width: 320px;
	display: table;
	-webkit-transform: translateX(100%);
	-webkit-transition: -webkit-transform .6s,visibility 0s .6s;
	transform: translateX(100%);
	transition: transform .6s,visibility 0s .6s;
}
#menu-toggle #menu-trigger ~ #menu-main {
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}
#menu-toggle #menu-trigger:hover ~ #menu-main {
	-webkit-transform: translateX(90%);
	transform: translateX(90%);
}
#menu-toggle #menu-trigger:checked ~ #menu-main,
#menu-toggle #menu-main:hover {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}
#menu-wrapper {
	display: table-cell;
	vertical-align: middle;
}
#menu-button .menu-icon,
#menu-button .menu-icon:before,
#menu-button .menu-icon:after {
	transition-duration: 0.5s;
	position: absolute;
	background-color: #fff;
	height: 4px;
    width: 30px;
	border-radius: 4px;

}
#menu-button .menu-icon {
	top: 10px;
	right: 0;
}
#menu-button .menu-icon:before {
  content: "";
  top: -10px;
}
#menu-button .menu-icon:after {
  content: "";
  top: 10px;
}
#menu-toggle #menu-trigger:checked ~ #menu-button .menu-icon,
.btn15.open .icon {
  transition-duration: 0.5s;
  background: transparent;
}


#menu-button:hover .menu-icon,
#menu-button:hover .menu-icon:before,
#menu-button:hover .menu-icon:after,
#menu-toggle #menu-trigger:checked ~ #menu-button .menu-icon:before,
#menu-toggle #menu-trigger:checked ~ #menu-button .menu-icon:after {
	background-color: var(--accent-color);
}
#menu-toggle #menu-trigger:checked ~ #menu-button .menu-icon:before,
.btn15.open .icon:before {
  transform: rotateZ(45deg) scaleX(1.25) translate(6.5px, 6.5px);
}
#menu-toggle #menu-trigger:checked ~ #menu-button .menu-icon:after,
.btn15.open .icon:after {
  transform: rotateZ(-45deg) scaleX(1.25) translate(6px, -6px);
}
#menu-main h3 {
	font-size: 30px;
	margin: 0;
	padding: 14px 0;
	line-height: 30px;
	cursor: pointer;
	transition: all .25s ease-in-out 0s;
	text-shadow: 0 0 0;
}
#menu-main ul,
#menu-main .menu-group ul {
	margin: 0;
	padding: 0 0 20px;
}
#menu-main ul,
#menu-main .menu-group {
	padding-right: 30px;
}
#menu-main li,
#menu-main .menu-group li {
	font-size: 16px;
	list-style: none;
	text-transform: none;
	padding: 2px 0;
}
#menu-main a, #menu-main .menu-group a {
	padding: 10px;
	display: inline-block;
	font-size: 19px;
	text-transform: uppercase;
	text-decoration: none;
	border-right: 3px solid transparent;
}
#menu-main a:hover, #menu-main .menu-group a:hover {
	border-color: var(--accent-color);
}
#menu-main a[aria-current="page"]{
	color:#a8a8a8
}
ul#header-social {
	background-color:  var(--accent-color);
	padding: 10px 20px;
	margin: 0;
	position: absolute;
	bottom: 0;
	text-align: center;
	left: 0;
	width: 100%;
}
#header-social li {
	display: inline-block;
	font-size: 0;
}
#header-social a {
	padding: 10px 15px;
	font-size: 0;
}
#header-social svg {
	width: 20px;
	height: 20px;
}
#page-title {
	text-align: center;
	position: relative;
	z-index: 0;
}
#page-title h1 {
	margin: 0;
	font-size: 3.5em;
	color: #fff;
	text-shadow: -1px 2px 2px rgba(0,0,0,.8);
	text-transform: uppercase;
	background-color:  rgba(0,0,0,0.5);
	font-weight: 500;
	padding: 5vh 0;
	position: relative;
	z-index: 1;
}
#page-title-bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
	background: none no-repeat center center / cover transparent;
	background-attachment: fixed;
}
#page-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
#page-copyright {
	text-align: center;
	font-size: 11px;
	padding: 8px 0;
}
#page-bg,
#page-bg .bg-1,
#page-bg .bg-2  {
	z-index: -1;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: none no-repeat center center / cover;
}
#page-bg .bg-1 {
	background-image: url("/img/bg-1-small.jpg");
}
#page-bg .bg-2 {
	background-color: rgba(0,0,0,0.8);
	box-shadow: 0 0 200px rgba(0,0,0,0.9) inset;
}
.wrapper {
	width: 98vw;
	min-width: 320px;
	max-width: 840px;
	margin: 0 auto;
	padding: 50px 20px;
	position: relative;
}
.wrapper video {
	max-width: 100%;
}
.list-about {
	padding: 0;
}
.list-about li {
	display: inline-block;
	list-style: none;
	max-width: 24%;
}
.list-about li img {
	width: auto;
	height: auto;
}
#page-hero {
	margin: 0 auto 10px;
	border: 1px solid;
	box-shadow: -1px 2px 2px rgba(0,0,0,0.9);
	height: auto;
}
.list-posts {
	margin: 0;
	padding: 0;
}
.post-wrapper {
	max-width: 600px;
	background-color: rgba(0,0,0,0.5);
	padding: 30px;
	list-style: none;
	margin: 0 auto 20px;
	padding-left: 80px;
	position: relative;
}
.post-wrapper:hover {
	background-color: rgba(32, 32, 32, 0.78);
}
.post-date {
	color: #808080;
}
.post-link {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}
.post-author-image {
	position: absolute;
	left: 15px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid;
}
.post-author-image a {
	transition: opacity .25s ease-in 0s;
}
.post-author-image a:hover {
	opacity: 0.5;
}

.post-image {
	display: inline-block;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid;
}
.post-image img {
	width: auto;
	height: auto;
	max-width: 400px;
	max-height: 500px;
}
.post-data {
	font-size: 15px;
}
.post-content {
	overflow: hidden;
}
.post-pagination {
	text-align: center;
	padding: 20px 10px;
}
.post-pagination a {
	display: inline-block;
	padding: 10px;
	background-color: #333;
	text-decoration: none;
	transition: all 0.5s ease-out 0s;
}
.post-pagination a:hover {
	background-color: var(--accent-color);
}
.page-author-block {
	background-color: rgba(0,0,0,0.4);
	padding: 30px;
	margin-bottom: 20px;
	position: relative;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	border-radius: 5px;
	box-shadow: 0 2px 3px rgba(0,0,0,0.4);
	border: 1px solid #111;
}
.page-author-block > * {
	align-self: center;
}
.page-author-pfp {
	align-self: center;
}
.page-author-pfp img {
	border-radius: 50%;
	border: 5px solid;
	max-width: 200px;
	margin: 20px auto;
	transition: all 0.25s ease-out 0s;
}
.page-author-pfp img:hover {
	border-radius: 10%;
}
.page-author-fullname {
	font-size: 2.5em;
	font-weight: 400;
	transition: all 0.25s ease-out 0s;
}
.page-author-pronunciation {
	font-size: 1.25em;
	font-style: italic;
}
.page-author-pronunciation::before {
	content: "[ "
}
.page-author-pronunciation::after {
	content: " ]"
}
.page-author-pronouns::before {
	content: "( "
}
.page-author-pronouns::after {
	content: " )"
}
.wrapper-gallery {
	display: grid;
	grid-template-columns: repeat( 4, minmax(12.5rem, 1fr));
	grid-auto-rows: 18rem;
	gap: 0.75rem;
	max-width: 1280px;
	margin: 10px auto;
}
.wrapper-gallery figure {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, 1fr);
	margin: 0;
	overflow: hidden;
	box-shadow: 0 2px 3px rgba(0,0,0,0.8);
	border: 1px solid #333;
}
.wrapper-gallery img, .wrapper-gallery picture {
	inline-size: 100%;
	block-size: 100%;
	object-fit: cover;
	grid-area: 1 / 1 / -1 / -1;
	transition: all 0.1s ease-out 0s;
}
.wrapper-gallery figure:hover img,
.wrapper-gallery figure:hover picture {
	block-size: 105%;
}
.wrapper-gallery figcaption {
	grid-area: 1 / 1 / -1 / -1;
	z-index: 1;
	align-self: end;
	font-size: 1em;
}
.wrapper-gallery figcaption, 
.wrapper-gallery h3, .wrapper-gallery a {
	height: 100%;
	width: 100%;
}

.wrapper-gallery h3, .wrapper-gallery a {
	height: 100%;
	width: 100%;
	margin: 0;
}
.wrapper-gallery a {
	display: grid;
	align-content: center;
	padding: 20px;
	line-height: 1.2em;
	text-decoration: none;
	font-style: italic;
	font-weight: 400;
	font-size: 1.5em;
}
.wrapper-gallery a {
	background-color: rgba(0,0,0,0.62);
	opacity: 0%;
	background: linear-gradient(rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.77) 75%);
	transition: opacity 0.5s ease-in-out 0s;
}
.wrapper-gallery a:hover {
	opacity: 100%;
}
/* Socials */
.social-list {
	margin: 40px auto;
	padding: 0;
	max-width: 340px;
}
.social-list li {
	display: block;
	margin: 0 0 30px;
}
.social-list a {
	color: rgb(178, 172, 162);
	text-decoration: none;
	text-align: center;
	padding: 10px;
	background-color: #333;
	border: 1px solid;
	border-radius: 11px;
	box-shadow: 0 5px 3px 2px rgba(0,0,0,0.5);
	display: block;
}
.social-list svg {
	width: 1em;
	height: 1em;
	fill: rgb(178, 172, 162);
}

.social-list a:hover {
	color: #fff;
}
.social-list a:hover svg {
	fill: #fff;
}


@media only screen and (max-width: 1024px) {
	.wrapper-gallery {
		grid-template-columns: repeat( 3, minmax(12.5rem, 1fr));
	}
}
@media only screen and (max-width: 786px) {
	#logo-emblem {
		height: 16vh;
	}
	#page-title h1 {
		font-size: 2em;
	}

	.page-author-block {
		flex-direction: column;
	}
	.page-author-fullname {
		font-size: 2em;
	}
	.post-image img {
		width: 100%;
	}
	.wrapper-gallery {
		grid-template-columns: repeat( 2, minmax(12.5rem, 1fr));
	}

}
@media only screen and (max-width: 480px) {
	#page-bg .bg-1 {
		background-image: url("/img/bg-1-mobile.jpg");
	}
	#logo-emblem {
		width: 10vh;
		height: 12vh;
	}
	#page-title h1 {
		font-size: 1.5em;
	}
	.wrapper-gallery {
		grid-template-columns: minmax(12.5rem, 1fr);
	}
	.post-wrapper {
		padding: 20px;
	}
	.post-author-image {
		position: static;
		display: inline-block;
		margin-right: 10px;
	}
	.post-data {
		display: flex;
		align-items: center;
		gap: 5px;
	}
}