/*
Theme Name: Boreta 3n
Theme URI: http://www.3n.design
Description: Custom Wordpress theme for Boreta.net
Author: 3n Design
Author URI: http://www.3n.design
Version: 1.0
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

	0. 	CSS Reset
	1. 	Variables
	2.	Typography
	3.	Transitions
	4.	Global Element	
	5. 	Layout Base
	6. 	Helper Classes
	7. 	Site Header
	8. 	Menu Modal
	9.	Archive
	10. Page Templates
		a. 	Template: About
		b. 	Template: Newsletter
	11. Post
		a.	Post Type: Music
	12. Entry Content
	13. Blocks
	14. Site Pagination
	15. Site Footer

-------------------------------------------------------------- */

/* --------------------------------------------------------------
= 0. CSS Reset
-------------------------------------------------------------- */

html,
body {
	border: none;
	margin: 0;
	padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
address,
big,
cite,
code,
em,
font,
img,
small,
strike,
sub,
sup,
li,
ol,
ul,
dl,
dt,
dd,
fieldset,
form,
label,
legend,
button,
table,
caption,
tr,
th,
td {
	border: none;
	font-size: inherit;
	line-height: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
}
blockquote::before,
blockquote::after {
	content: "";
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, main, menu, nav, section {
	display: block;
}
figure {
	margin: 0;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
html {
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
* {
	-webkit-tap-highlight-color: transparent !important;
}
button,
input,
textarea {
	-webkit-appearance: none;
}
.group:after {
	content: "";
	display: table;
	clear: both;
}

/* --------------------------------------------------------------
= 1. Variables
-------------------------------------------------------------- */

:root {
	--bg: #1B1B1C;
	--white: #ffffff;
	--l-grey: #95A5A6;
	--gutter: 20px;
	--header: 100px;
	--main-top: 50px;
}
@media ( min-width: 375px ) {
	:root {
		--main-top: 150px;
	}
}
@media ( min-width: 768px ) {
	:root {
		--gutter: 30px;
		--main-top: 200px;
	}
}
@media ( min-width: 1024px ) {
	:root {
		--gutter: 40px;
	}
}

/* --------------------------------------------------------------
= 2. Typography
-------------------------------------------------------------- */

body {
	font-family: nimbus-sans, sans-serif;
	font-size: 16px;
	font-weight: 300;
	font-style: normal;
	letter-spacing: 0.005em;
	line-height: 1.25em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
input,
button,
textarea {
	font-family: nimbus-sans, sans-serif;
	font-size: 16px;
	font-weight: 300;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--white);
	font-weight: 300;
}
i, em {
	font-style: italic;
}
a {
	color: var(--white);
	text-decoration: none;
}
@media ( min-width: 375px ) {
	body,
	input,
	button,
	textarea {
		font-size: 18px;
	}
}
@media ( min-width: 768px ) {
	body,
	input,
	button,
	textarea {
		font-size: 20px;
	}
}

/* --------------------------------------------------------------
= 3. Transitions
-------------------------------------------------------------- */

.pace {
	-webkit-pointer-events: none;
	        pointer-events: none;
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
}
.pace-inactive {
	display: none;
}
.pace .pace-progress {
	background: var(--l-grey);
	position: fixed;
	z-index: 2000;
	top: 0;
	right: 100%;
	width: 100%;
	height: 2px;
}
#site-header,
main,
#site-footer {
	opacity: 0;
	transition: opacity 500ms ease;
}
main {
	transition-delay: 200ms;
}
#site-footer {
	transition-delay: 400ms;
}
.pace-done #site-header,
.pace-done main,
.pace-done #site-footer {
	opacity: 1;
}


/* --------------------------------------------------------------
= 4. Global Element
-------------------------------------------------------------- */

html {
	background-color: var(--bg);
}
body {
	background-color: var(--bg);
	color: var(--l-grey);
}

/* --------------------------------------------------------------
= 5. Layout Base
-------------------------------------------------------------- */

.inner {
	margin: 0 auto;
	max-width: 1600px;
	padding: 0 var(--gutter);
}
main {
	padding-top: var(--main-top);
}

/* --------------------------------------------------------------
= 6. Helper Classes
-------------------------------------------------------------- */

/* --------------------------------------------------------------
= 7. Site Header
-------------------------------------------------------------- */

#site-header {
	background-color: var(--bg);
	padding: 20px 0;
}
#site-title {
	text-transform: uppercase;
	font-size: 30px;
	line-height: 20px;
}
#site-title img {
	display: block;
	height: 20px;
	width: auto;
}
#info-menu {
	display: none;
}
#site-title,
#info-menu {
	height: 20px;
}
#site-menu {
	padding-top: 20px;
}
@media ( min-width: 375px ) {
	#site-header {
		position: fixed;
			top: 0;
			right: 0;
			left: 0;
		width: 100%;
		z-index: 2000;
	}
}
@media ( min-width: 768px ) {
	#site-header {
		padding-top: 30px;
	}
	#site-title,
	#info-menu {
		float: left;
		width: 50%;
	}
	#info-menu {
		display: block;
		text-align: right;
	}
	#site-menu {
		clear: both;
		padding-top: 25px;
	}
	
}

/* --------------------------------------------------------------
= 8. Menu Modal
-------------------------------------------------------------- */

.menu {
	white-space: nowrap;
}
.menu a {
	position: relative;
}
.menu.main li {
	display: inline-block;
	margin-right: 5px;
}
.menu.follow li {
	display: block;
}
.menu.main li a,
.menu.info li a {
	display: block;
	line-height: 20px;
}
.menu.main li a,
.menu.info li a {
	color: var(--white);
	transition: color 300ms ease;
}
.menu.main li a:after,
.menu.info li a:after {
	background-color: transparent;
	content: '';
	display: block;
	height: 1px;
	position: absolute;
		right: 0;
		bottom: -4px;
	width: 100%;
	transition: background-color 300ms ease;
}
.menu.main li a:hover:after,
.menu.info li a:hover:after,
.menu.main li.current-menu-item a:after,
.menu.info li.current-menu-item a:after {
	background-color: var(--white);
}
.menu.follow li a {
	color: var(--l-grey);
}
.menu.follow li a:hover {
	color: var(--white);
}
@media ( min-width: 375px ) {
	.menu.main li {
		margin-right: 10px;
	}
}
@media ( min-width: 768px ) {
	.menu.info li,
	.menu.follow li {
		display: inline-block;
		margin-left: 10px;
	}
	.menu.info li {
		margin-top: 4px;
	}
	.menu.main li.mobile-only {
		display: none;
	}
}


/* --------------------------------------------------------------
= 9. Archive
-------------------------------------------------------------- */

.archive-title {
	margin-bottom: 1.5em;
}
.grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.grid .hentry {
	margin-bottom: 4em;
}
.grid .hentry figure {
	margin-bottom: 1em;
}
.grid .hentry img {
	display: block;
	height: auto;
	opacity: 1.0;
	width: 100%;
	transition: opacity 300ms ease;
}
.placeholder {
	background-color: var(--l-grey);
	display: block;
	height: 0;
	opacity: 1.0;
	width: 100%;
	transition: opacity 300ms ease;
}
.placeholder.ratio-1-1 {
	padding-bottom: 100%;
}
.placeholder.ratio-16-9 {
	padding-bottom: 56.34%;
}
a:hover .placeholder,
.grid .hentry a:hover img {
	opacity: 0.7;
}
.entry-header {
	margin-bottom: 1.25em;
}
.entry-header .entry-title {
	color: var(--white);
}
.grid .hentry p,
.entry-header .entry-meta {
	color: var(--l-grey);
}
.entry-header .entry-meta span:after {
	content: ', ';
	display: inline;
}
.entry-header .entry-meta span:nth-last-child(2):after {
	content: ' & ';
}
.entry-header .entry-meta span:last-child:after {
	content: '';
}
@media ( min-width: 768px ) {
	.grid .hentry {
		width: calc(50% - 20px);
	}
	.home .grid .hentry.sticky {
		width: 100%;
	}
	.home .grid .hentry.sticky .entry-header,
	.home .grid .hentry.sticky p {
		width: calc(66.666666% - 13px);
	}
}
@media ( min-width: 1024px ) {
	.grid.col-3 .hentry {
		width: calc(33.3333332% - 26px);
	}
	.home .grid .hentry.sticky {
		width: 100%;
	}
	.home .grid .hentry.sticky .entry-header,
	.home .grid .hentry.sticky p {
		width: calc(50% - 20px);
	}
}

/* --------------------------------------------------------------
= 10. Page Templates
-------------------------------------------------------------- */

.page-header {
	margin-bottom: 1.5em;
}
@media ( min-width: 768px ) {
	.page-header {
		text-align: center;
	}
}
@media ( min-width: 1024px ) {
}


/* --------------------------------------------------------------
= 10a. Page Templates: About
-------------------------------------------------------------- */

#about-content {
	margin: 0 auto 4em;
}
#about-content figure {
	margin-bottom: 1.25em;
}
#about-content .entry-content {
	margin-bottom: 0;
}
#about-instagram {
	margin-bottom: 2em;
}
#about-content figure img {
	display: block;
	height: auto;
	width: 100%;
}
@media ( min-width: 768px ) {
	#about-content {
		display: flex;
	}
	#about-content figure,
	#about-content .entry-content {
		width: 50%;
	}
	#about-content figure {
		padding-right: 20px;
		margin-bottom: 0;
	}
	#about-content .entry-content {
		margin-top: -0.25em;
		max-width: 50%;
		padding-left: 20px;
	}
	#sb_instagram {
		margin-left: -2% !important;
		margin-left: -2% !important;
	}
}
@media ( min-width: 1280px ) {
	#about-content {
		max-width: calc(66.666666% - 13px);
	}
}

/* --------------------------------------------------------------
= 10a. Page Templates: Newsletter
-------------------------------------------------------------- */

button.formkit-submit.formkit-submit {
	background-color: var(--l-grey) !important;
	color: var(--bg) !important;
}
button.formkit-submit.formkit-submit,
.formkit-form[data-uid="1dbedd3810"] .formkit-input {
	font-size: 16px !important;
}
.formkit-form[data-uid="1dbedd3810"] .formkit-input {
	border-color: var(--white);
}
.formkit-form[data-uid="1dbedd3810"] .formkit-button:hover > span, 
.formkit-form[data-uid="1dbedd3810"] .formkit-submit:hover > span, 
.formkit-form[data-uid="1dbedd3810"] .formkit-button:focus > span, 
.formkit-form[data-uid="1dbedd3810"] .formkit-submit:focus > span {
	background-color: var(--white) !important;
}
.formkit-form[data-uid="1dbedd3810"][min-width~="700"] [data-style="clean"], 
.formkit-form[data-uid="1dbedd3810"][min-width~="800"] [data-style="clean"] {
	padding: 10px 0 !important;
}
.formkit-form[data-uid="1dbedd3810"] {
	max-width: 740px !important;
}
@media ( min-width: 375px ) {
	button.formkit-submit.formkit-submit,
	.formkit-form[data-uid="1dbedd3810"] .formkit-input {
		font-size: 18px !important;
	}
}
@media ( min-width: 768px ) {
	button.formkit-submit.formkit-submit,
	.formkit-form[data-uid="1dbedd3810"] .formkit-input {
		font-size: 16px !important;
	}
}

/* --------------------------------------------------------------
= 11a. Post Type: Music
-------------------------------------------------------------- */

.music-banner {
	margin-bottom: 1.75em;
}
.music-banner figure img {
	display: block;
	height: auto;
	width: 100%;
}
.music-banner .music-embed {
	height: 200px;
	position: relative;
}
.music-banner .music-embed iframe {
	border-radius: 0 !important;
	height: 100%;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	width: 100%;
}
.music-links a,
.music-links span {
	display: inline-block;
	margin-right: 5px;
}
@media ( min-width: 375px ) {
	.music-links a,
	.music-links span {
		margin-right: 10px;
	}
}
@media ( min-width: 768px ) {
	.music-banner {
		display: flex;
	}
	.music-banner figure,
	.music-banner .music-embed {
		width: 50%;
	}
	.music-banner .music-embed {
		height: 0;
		padding-bottom: 50%;
	}
}

/* --------------------------------------------------------------
= 12. Entry Content
-------------------------------------------------------------- */

.entry-content {
	line-height: 1.25em;
	margin-bottom: 4em;
}
.entry-content p,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.entry-content ul,
.entry-content ol {
	margin-bottom: 1.25em;
}
.entry-content a {
	text-decoration: underline;
	transition: color 300ms ease;
}
.entry-content a:hover {
	color: var(--l-grey);
}
.entry-content ul { 
  display: block;
  list-style: disc;
  padding-left: 1.25em;
}
.entry-content .has-text-align-center {
	text-align: center
}
.entry-content .wp-block-separator {
	background: var(--l-grey);
	border: none;
	height: 1px;
	margin: 1.5em 0;
}
@media ( min-width: 768px ) {
	.entry-content.content h2,
	.entry-content.content h3,
	.entry-content.content h4,
	.entry-content.content h5,
	.entry-content.content h6,
	.entry-content.content p,
	.entry-content.content ul,
	.entry-content.content ol,
	.entry-content.content dl,
	.entry-content.content dd,
	.entry-content.content .wp-block-separator,
	.entry-content.content .wp-block-file,
	.entry-content.content form {
		margin-right: auto !important;
		margin-left: auto !important;
		width: calc(66.666666% - 13px);
	}
}
@media ( min-width: 1024px ) {
	.entry-content.content h2,
	.entry-content.content h3,
	.entry-content.content h4,
	.entry-content.content h5,
	.entry-content.content h6,
	.entry-content.content p,
	.entry-content.content ul,
	.entry-content.content ol,
	.entry-content.content dl,
	.entry-content.content dd,
	.entry-content.content .wp-block-separator,
	.entry-content.content .wp-block-file,
	.entry-content.content form {
		margin-right: auto !important;
		margin-left: auto !important;
		width: calc(50% - 20px);
	}
}

/* --------------------------------------------------------------
= 13. Blocks
-------------------------------------------------------------- */

/* Block: Gallery  ------------------------------------------- */

.entry-content .wp-block-gallery {
	margin: 1.75em auto !important;
}

/* Block: Image  --------------------------------------------- */

.entry-content figure img {
	display: block;
	height: auto;
	width: 100%;
}
.entry-content > .wp-block-image,
.entry-content > figure.wp-block-image {
	margin: 1.75em auto;
}
.wp-block-image figure {
	margin: 0;
}
.entry-content figure figcaption {
	line-height: 1.5em;
	padding: 5px 0 0;
}
.wp-block-image .alignleft,
.wp-block-image .alignright {
	display: block !important;
	float: none !important;
	margin: 0 !important;
}
.wp-block-image.is-resized img {
	width: auto;
}
@media ( min-width: 768px ) {
	.aligncenter,
	figure.aligncenter,
	figure.alignleft,
	figure.alignright,
	.wp-block-image.is-resized {
		margin-right: auto !important;
		margin-left: auto !important;
		width: calc(66.666666% - 13px);
	}	
}
@media ( min-width: 1024px ) {
	.aligncenter,
	figure.aligncenter,
	.wp-block-image.is-resized {
		margin-right: auto !important;
		margin-left: auto !important;
		width: calc(50% - 20px);
	}
	figure.alignleft,
	figure.alignright {
		width: calc(75% - 10px);
	}
	.wp-block-image figure.alignleft {
		margin-right: calc(25% + 10px) !important;
	}
	.wp-block-image figure.alignright {
		margin-left: calc(25% + 10px) !important;
	}
	.alignright figcaption {
		text-align: right;
	}
}

/* Block: Audio ---------------------------------------------- */

.wp-block-audio audio {
	width: 100%;
}

/* Block: Button --------------------------------------------- */

.wp-block-button {
	margin: 1.75em 0;
}

/* Block: Columns -------------------------------------------- */

.entry-content > .wp-block-columns {
	margin: 1.75em auto;
}
.wp-block-columns {
	width: 100%;
}
.wp-block-columns:after {
	content: "";
	display: table;
	clear: both;
}
.wp-block-columns > .wp-block-column:first-child {
	margin-bottom: 1.75em;
}
.wp-block-columns .wp-block-column:only-child {
	margin: 0;
	padding: 0;
}
@media ( min-width: 768px ) {
	.wp-block-columns > .wp-block-column:first-child {
		margin-bottom: 0;
	}
	.wp-block-columns {
		display: flex;
	}
	.wp-block-columns .wp-block-column:only-child {
		width: 100%;
	}
	.wp-block-column {
		float: left;
		width: 50%;
	}
	.wp-block-column:first-child {
		padding-right: 0 !important;
	}
	.wp-block-column:last-child {
		padding-left: 0 !important;
	}
}

/* Block: Embed ---------------------------------------------- */

.wp-block-embed,
.wp-block-video {
	margin: 1.75em auto !important;
}
.wp-block-video video {
	width: 100%;
}
.wp-block-embed.is-type-video .wp-block-embed__wrapper {
	height: 0;
	padding-bottom: 56.25%;
	position: relative;
}
.wp-block-embed.is-type-video.wp-embed-aspect-4-3 .wp-block-embed__wrapper {
	padding-bottom: 75%; /* 4:3 */
}
.wp-block-embed.is-type-video.wp-embed-aspect-16-9 .wp-block-embed__wrapper {
	padding-bottom: 56.25%; /* 16:9 */
}
.wp-block-embed.is-type-video.wp-embed-aspect-21-9 .wp-block-embed__wrapper {
	padding-bottom:  41.5625%; /* 21:9 */
}
.wp-block-embed.is-type-video .wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media ( min-width: 768px ) {
	.wp-block-embed,
	.wp-block-video {
		margin-right: auto;
		margin-left: auto;
		width: calc(66.666666% - 13px) !important;
	}
}
@media ( min-width: 1024px ) {
	.wp-block-embed,
	.wp-block-video {
		width: calc(50% - 20px) !important;
	}
}

/* Block: Media + Text --------------------------------------- */

.wp-block-media-text,
.wp-block-media-text img {
	margin-bottom: 1.25em;
}
@media ( min-width: 768px ) {
	.wp-block-media-text .wp-block-media-text__media + .wp-block-media-text__content {
		padding: 0 0 0 20px !important;
	}
	.wp-block-media-text img {
		margin-bottom: 0;
		width: calc(100% - 20px);
	}
	.wp-block-media-text {
		margin-left: calc(-16.666666% + 13px) !important;
		margin-right: calc(-16.666666% + 13px) !important;
	}
}
@media ( min-width: 1024px ) {
	.wp-block-media-text {
		margin-left: calc(-25% + 20px) !important;
		margin-right: calc(-25% + 20px) !important;
	}
}

/* Block: Wp Embed ------------------------------------------- */

.wp-block-embed.is-type-wp-embed .wp-block-embed__wrapper iframe,
.wp-block-embed.is-provider-spotify .wp-block-embed__wrapper iframe {
	width: 100%;
}
@media ( min-width: 768px ) {
	.wp-block-embed.is-type-wp-embed {
		margin-right: auto !important;
		margin-left: auto !important;
		width: calc(66.666666% - 13px);
	}
}
@media ( min-width: 1024px ) {
	.wp-block-embed.is-type-wp-embed {
		margin-right: auto !important;
		margin-left: auto !important;
		width: calc(50% - 20px);
	}
}

/* --------------------------------------------------------------
= 14. Site Pagination
-------------------------------------------------------------- */

#pager a {
	color: var(--white);
	transition: color 300ms ease;
}
#pager a:hover {
	color: var(--l-grey);
}
.pager--prev,
.pager--next {
	margin-bottom: 4em;
	width: 50%;
	white-space: nowrap;
}
.pager--prev {
	float: left;
}
.pager--next {
	float: right;
	text-align: right;
}

/* --------------------------------------------------------------
= 15. Site Footer
-------------------------------------------------------------- */

#site-footer {
	padding: 0 0 25px;
}
#site-footer .inner:before {
	background-color: var(--white);
	content: '';
	display: block;
	height: 1px;
	width: 100%;
}

#follow-menu {
	margin-left: auto;
}
#site-copyright {
	width: 75px;
	color: var(--l-grey);
}

#site-credits {
	font-size: 19px;
}

@media ( max-width: 985px ) {
	#site-credits {
		width: 200px;
		font-size: 17px;
	}
}
#footer-wrapper {
	display: flex;
	flex-direction: row;
	padding-top: 25px;
	line-height: 1.25em;
	gap: 5px;
}