/*
Theme Name: The Bloggess
Theme URI: https://github.com/a8cteam51/bloggess/
Author: WordPress.com Special Projects Team
Author URI: https://wpspecialprojects.wordpress.com
Description: A custom theme designed and built for The Bloggess
Requires at least: WordPress 5.4
Version: 0.0.1
License: GNU General Public License v2 or later
License URI: LICENSE
Template: varia-wpcom
Text Domain: bloggess
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
The Bloggess is a child theme of Varia which is based on Underscores https://underscores.me/, (C) 2012-2019 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.
*/

/**
 * From https://github.com/hankchizljaw/modern-css-reset
 */

/* Remove default padding */

ul[class],
ol[class] {
	padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core body defaults */

body {
	box-sizing: border-box;
	line-height: 1.55;
	min-height: 100vh;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
}

/* Box sizing rules */

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

/* Remove list styles on ul, ol elements with a class attribute */

ul[class],
ol[class] {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	        text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	max-width: 100%;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */

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

	* {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}

/* Wrap pre tag content */

pre {
	overflow-x: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}

:root {
	--font-sans: "Arimo", sans-serif;
	--font-serif: "Roboto Slab", serif;

	--font-size-small: .8rem;
	--font-size-default: 1.13rem;
	--font-size-large: 2rem;

	--letter-spacing: .15em;

	--color-primary: #d60068;
	--color-primary-on-black: #e30571;
	--color-secondary: #fceef5;

	--color-gray: #61575f;
	--color-gray-light: #bab5b9;
	--color-black: #000;
	--color-black-transparent: rgba(0, 0, 0, .85);
	--color-white: #fff;

	--max-width: 1220px;

	--spacing: 1.5rem;
	--spacing-loose: calc(var(--spacing) * 2);
	--spacing-tight: calc(var(--spacing) / 2);

	--gutter: var(--spacing);
}

@media (max-width: 44em) {

:root {

		--spacing: 1rem;
}
	}

:root {

	--speed: .3s;
}

body {
	background: url(assets/images/bloggess-pinkbg.jpg);
	color: #000;
	color: var(--color-black);
	font-family: "Arimo", sans-serif;
	font-family: var(--font-sans);
	line-height: 1.55;
}

/* --- Headers --- */

h1,
h2,
h3 {
	color: #d60068;
	color: var(--color-primary);
	font-family: "Arimo", sans-serif;
	font-family: var(--font-sans);
	font-weight: 400;
	line-height: 1.13;
	margin: 1.75em 0 .5em;
}

h1 {
	font-size: 2.25em;
}

h2 {
	font-size: 1.75em;
}

h3 {
	font-size: 1.25em;
}

h4 {
	font-size: 1em;
	font-weight: 700;
}

p,
ol,
ul {
	font-size: .93em;
	margin: 1em 0
}

@media (max-width: 44em) {

p,
ol,
ul {
		font-size: 1em
}
	}

a {
	transition: color .3s ease;
}

strong {
	font-weight: 600;
}

.entry-content li {
	padding-bottom: .5em;
	padding-left: .5em;
}

/* --- Links --- */

.site-content a,
.site-footer a {
	color: #d60068;
	color: var(--color-primary);
}

.site-content a:hover,
.site-footer a:hover {
	color: #61575f;
	color: var(--color-gray);
}

.site-content a:focus,
.site-footer a:focus {
	outline: 1px solid #d60068;
	outline: 1px solid var(--color-primary);
}

/*--- Images ---*/

img {
	height: auto;
}

.entry-content > figure,
.entry-content > .wp-block-image {
	margin-top: 1.5rem;
	margin-top: var(--spacing);
	margin-bottom: 1.5rem;
	margin-bottom: var(--spacing);
}

.entry-content > figure {
	max-width: 100%;
}

/*--- Form elements ---*/

input[type="search"],
input[type="email"] {
	background-color: #fff;
	background-color: var(--color-white);
	border: 1px solid #d60068;
	border: 1px solid var(--color-primary);
	font-size: .8rem;
	font-size: var(--font-size-small);
	padding: .25em;
	width: 100%
}

@media (max-width: 62.5em) {

input[type="search"],
input[type="email"] {
		font-size: 1.13rem;
		font-size: var(--font-size-default)
}
	}

button[type="submit"],
input[type="submit"] {
	background-color: #d60068;
	background-color: var(--color-primary);
	border: 1px solid #d60068;
	border: 1px solid var(--color-primary);
	color: #fff;
	color: var(--color-white);
	cursor: pointer;
	font-family: "Roboto Slab", serif;
	font-family: var(--font-serif);
	font-size: .8rem;
	font-size: var(--font-size-small);
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .15em;
	letter-spacing: var(--letter-spacing);
	margin-top: .25em;
	padding: .25em;
	text-transform: uppercase;
	width: 100%
}

button[type="submit"]:hover, input[type="submit"]:hover {
		background-color: #61575f;
		background-color: var(--color-gray);
		border-color: #61575f;
		border-color: var(--color-gray);
	}

@media (max-width: 62.5em) {

button[type="submit"],
input[type="submit"] {
		font-size: 1.13rem;
		font-size: var(--font-size-default)
}
	}

.site {
	margin: 0 auto;
	max-width: 1220px;
	max-width: var(--max-width);
	padding: 0 1.5rem;
	padding: 0 var(--gutter);
	width: 100%;
}

/* ** Branding ** */

.site-branding {
	background-color: #000;
	background-color: var(--color-black);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	min-height: 200px;
	padding: 1.5rem;
	padding: var(--spacing);
	position: relative;
	text-decoration: none
}

@media (max-width: 44em) {

.site-branding {
		background-size: cover;
		display: flex;
		padding: 0;
		min-height: 300px
}
	}

.site-title-descr {
	letter-spacing: .25em;
	margin-left: auto;
	margin-right: calc(1.5rem * 2);
	margin-right: var(--spacing-loose);
	padding: 1.5rem 0;
	padding: var(--spacing) 0;
	text-transform: uppercase;
	width: 100%;
	max-width: 600px
}

@media (max-width: 62.5em) {

.site-title-descr {
		margin-right: 0
}
	}

@media (max-width: 44em) {

.site-title-descr {
		align-self: flex-end;
		background-color: rgba(0, 0, 0, .85);
		background-color: var(--color-black-transparent);
		padding: 1.5rem;
		padding: var(--spacing);
		text-align: center;
		margin: 0;
		max-width: 100%
}
	}

.site-title {
	color: #e30571;
	color: var(--color-primary-on-black);
	font-family: "Roboto Slab", serif;
	font-family: var(--font-serif);
	font-size: 3.5em;
	font-weight: 400;
	line-height: 1;
	margin: 0 auto 0 0;
	max-width: -webkit-max-content;
	max-width: max-content;
	transition: color .3s ease;
	transition: color var(--speed) ease
}

@media (max-width: 44em) {

.site-title {
		font-size: 1.25em;
		max-width: 100%
}
	}

.site-description {
	color: #fff;
	color: var(--color-white);
	font-family: "Roboto Slab", serif;
	font-family: var(--font-serif);
	font-weight: 400;
	margin: calc(1.5rem / 2) 0 0 auto;
	margin: var(--spacing-tight) 0 0 auto;
	max-width: -webkit-max-content;
	max-width: max-content;
	transition: border .3s ease;
	transition: border var(--speed) ease
}

@media (max-width: 44em) {

.site-description {
		font-size: .8rem;
		font-size: var(--font-size-small);
		max-width: 100%
}
	}

.site-branding:hover .site-title {
		color: #fceef5;
		color: var(--color-secondary);
	}

.site-branding:hover .site-description {
		border-bottom: 1px solid #fceef5;
		border-bottom: 1px solid var(--color-secondary);
	}

/* ** Primary Navigation ** */

.main-navigation {
	font-family: "Roboto Slab", serif;
	font-family: var(--font-serif);
	margin: .5rem 0;
}

#toggle-menu {
	background-color: #d60068;
	background-color: var(--color-primary);
	color: #fff;
	color: var(--color-white);
	cursor: pointer;
	display: flex;
	font-size: .8rem;
	font-size: var(--font-size-small);
	font-weight: 400;
	letter-spacing: .15em;
	letter-spacing: var(--letter-spacing);
	padding: 1em;
	position: absolute;
	right: 0;
	text-transform: lowercase;
	top: 0;
	width: -webkit-max-content;
	width: max-content;
	z-index: 2
}

@media (min-width: 62.501em) {

#toggle-menu {
		display: none
}
	}

.logged-in #toggle-menu {
	top: 46px
}

@media (min-width: 783px) {

.logged-in #toggle-menu {
		top: 32px
}
	}

.menu-main-container {
	background-color: #000;
	background-color: var(--color-black);
	display: none;
	z-index: 1
}

@media (max-width: 62.5em) {

.menu-main-container {
		position: absolute;
		top: 0;
		right: 0;
		left: 0
}
	}

@media (min-width: 62.501em) {

.menu-main-container {
		display: flex
}
	}

ul.main-menu {
	display: flex;
	flex-direction: column;
	padding: 0 1.5rem;
	padding: 0 var(--gutter);
	width: 100%;
	max-width: 1220px;
	max-width: var(--max-width)
}

@media (max-width: 62.5em) {

ul.main-menu {
		margin: 4.5rem 0 2rem
}
	}

@media (min-width: 62.501em) {

ul.main-menu {
		flex-direction: row;
		justify-content: space-between
}
	}

ul.main-menu li a {
			color: #fff;
			color: var(--color-white);
			font-weight: 400;
			letter-spacing: .15em;
			letter-spacing: var(--letter-spacing);
			padding: .5em;
			text-decoration: none;
			text-transform: lowercase;
			transition: color .3s ease;
			transition: color var(--speed) ease
		}

@media (max-width: 62.5em) {

		ul.main-menu li a {
				border: 1px solid #fceef5;
				border: 1px solid var(--color-secondary);
				border-width: 1px 0;
				display: block;
				text-align: center
		}
			}

@media (min-width: 62.501em) {

		ul.main-menu li a {
				display: flex;
				font-size: .8rem;
				font-size: var(--font-size-small)
		}
			}

ul.main-menu li a:hover {
				color: #e30571;
				color: var(--color-primary-on-black);
			}

ul.main-menu li.current-menu-item a {
			color: #e30571;
			color: var(--color-primary-on-black);
			font-weight: 600;
		}

#toggle-menu .close {
	display: none;
}

.dropdown-icon {
	padding: 0 .5em;
}

#toggle:focus ~ #toggle-menu {
			outline: 2px dotted;
		}

@media (min-width: 62.501em) {

		#toggle:checked ~ #toggle-menu {
				display: none
		}
			}

#toggle:checked ~ #toggle-menu .open {
				display: none;
			}

#toggle:checked ~ #toggle-menu .close {
				display: block;
			}

#toggle:checked ~ .menu-main-container {
			display: flex;
		}

.site-info {
	color: #fff;
	color: var(--color-white);
	font-size: .8rem;
	font-size: var(--font-size-small);
	padding: calc(1.5rem / 2);
	padding: var(--spacing-tight);
	text-align: center;
}

.site-info a {
		color: currentColor;
		text-decoration: none
	}

.site-info a:hover {
			color: currentColor;
			text-decoration: underline;
		}

.content-area {
	background-color: #fceef5;
	background-color: var(--color-secondary);
	display: grid;
	grid-template:
		"content content"
		"bloggess ads"
		/ 1fr 1fr
}

@media (max-width: 44em) {

.content-area {
		display: block
}
	}

@media (min-width: 62.501em) {

.content-area {
		grid-template:
			"bloggess content ads"
			/ 12em 1fr 18em
}
	}

.site-main {
	background-color: #fff;
	background-color: var(--color-white);
	grid-area: content;
	padding: 1.5rem;
	padding: var(--spacing)
}

@media (max-width: 44em) {

.site-main {
		margin-top: 1.5rem;
		margin-top: var(--spacing);
		padding-top: calc(1.5rem * 2);
		padding-top: var(--spacing-loose)
}
	}

/** * Posts * **/

.entry-header {
	margin-bottom: calc(1.5rem * 2);
	margin-bottom: var(--spacing-loose);
}

.entry-title,
.page-title {
	margin-top: 0;
	text-align: center;
}

.entry-title a, .page-title a {
		display: block;
		text-decoration: none;
	}

.entry-meta {
	color: #61575f;
	color: var(--color-gray);
	display: flex;
	flex-direction: column;
	font-size: .8rem;
	font-size: var(--font-size-small);
	text-align: center;
}

.posted-on a {
	color: currentColor;
	text-decoration: none
}

.posted-on a:hover {
		text-decoration: underline;
	}

/* Comments */

.comment-link a {
	font-family: "Roboto Slab", serif;
	font-family: var(--font-serif);
	font-size: 1.25em;
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
}

.comment-link a .comments-link {
		font-size: 2em;
		font-weight: 700;
	}

.comments-title {
	color: #61575f;
	color: var(--color-gray);
}

.comment-list li {
		padding: 1.5rem 0;
		padding: var(--spacing) 0;
	}

.comment-list li + li {
			border-top: 1px dotted #61575f;
			border-top: 1px dotted var(--color-gray);
		}

.comment-list a {
		text-decoration: none;
		word-wrap: break-word;
		word-break: break-word;
		word-wrap: break-word;

	}

.comment-list .vcard {
		display: flex;
	}

.comment-list .vcard img {
			margin-left: .25em;
		}

.comment-body {
	word-wrap: break-word;
}

.comment-meta {
	display: flex;
}

.says {
	display: none;
}

.comment-metadata a {
	border-left: 1px solid;
	color: #61575f;
	color: var(--color-gray);
	font-size: .8rem;
	font-size: var(--font-size-small);
	text-decoration: none;
	margin-left: calc(1.5rem / 2);
	margin-left: var(--spacing-tight);
	padding-left: calc(1.5rem / 2);
	padding-left: var(--spacing-tight)
}

.comment-metadata a:hover {
		color: #d60068;
		color: var(--color-primary);
		text-decoration: underline;
	}

.comment-read-add {
	font-size: .8rem;
	font-size: var(--font-size-small);
	text-transform: uppercase;
}

#comment {
	width: 100%;
	max-width: 90ch;
}

/* Post navigation */

.nav-links {
	border: 1px dotted #61575f;
	border: 1px dotted var(--color-gray);
	border-width: 1px 0;
	display: flex;
	margin: 1.5rem 0;
	margin: var(--spacing) 0;
	padding: calc(1.5rem / 2) 0;
	padding: var(--spacing-tight) 0;
	width: 100%;
}

.nav-links > * {
		flex: 1;
	}

.nav-links a {
		text-decoration: none
	}

.nav-links a:hover {
			color: #61575f;
			color: var(--color-gray);
		}

.nav-links .nav-previous a:before {
		content: "\2190  ";
	}

.nav-links .nav-next a:after {
		content: "  \2192";
	}

.nav-next {
	text-align: right;
}

/** * Sidebars * **/

.sidebar-bloggess,
.sidebar-advertise {
	padding: 1.5rem calc(1.5rem / 2);
	padding: var(--spacing) var(--spacing-tight);
}

.sidebar-bloggess > *:first-child, .sidebar-advertise > *:first-child {
		margin-top: 0;
	}

.sidebar-bloggess p, .sidebar-advertise p {
		font-size: .8rem;
		font-size: var(--font-size-small);
	}

@media (max-width: 62.5em) {

.sidebar-bloggess,
.sidebar-advertise {
		padding: calc(1.5rem * 2);
		padding: var(--spacing-loose);
}

		.sidebar-bloggess .widget-title, .sidebar-advertise .widget-title {
			text-align: center;
		}

		.sidebar-bloggess .textwidget, .sidebar-advertise .textwidget {
			text-align: center;
		}

			.sidebar-bloggess .textwidget a img, .sidebar-advertise .textwidget a img {
				margin: 0 auto;
			}
	}

.sidebar-bloggess {
	border-right: 2px solid #d60068;
	border-right: 2px solid var(--color-primary);
	grid-area: bloggess;
}

.sidebar-bloggess select {
		width: 100%;
	}

@media (max-width: 44em) {

.sidebar-bloggess {
		border: none
}
	}

@media (min-width: 62.501em) {

.sidebar-bloggess {
		border: none
}
	}

.sidebar-advertise {
	grid-area: ads;
}

.widget-title {
	color: #000;
	color: var(--color-black);
	font-family: "Roboto Slab", serif;
	font-family: var(--font-serif);
	font-feature-settings: "c2sc";
	font-variant: small-caps;
}

/* Social navigation */

ul.social-links-menu {
	display: flex;
	justify-content: space-between;
	margin: 0 auto 1.5rem;
	margin: 0 auto var(--spacing);
	max-width: 250px;
}

ul.social-links-menu li + li {
		margin-left: .25em;
	}

ul.social-links-menu a {
		background-color: #d60068;
		background-color: var(--color-primary);
		border-radius: 2px;
		display: flex;
		transition: background-color .3s ease;
		transition: background-color var(--speed) ease
	}

ul.social-links-menu a:hover,
		ul.social-links-menu a:focus {
			background-color: #61575f;
			background-color: var(--color-gray);
		}

ul.social-links-menu svg {
		fill: #fff;
		fill: var(--color-white);
		padding: .25em;
		width: 100%;
	}

/* Subscribe */

#subscribe-email,
#subscribe-submit {
	margin: 0;
}

.sidebar-bloggess #subscribe-email input {
	width: 100%;
}

/** * Archive * **/

article {
	margin-top: calc(1.5rem / 2);
	margin-top: var(--spacing-tight);
}

article + article {
		border-top: 1px dotted #bab5b9;
		border-top: 1px dotted var(--color-gray-light);
		margin-top: calc(1.5rem * 2);
		margin-top: var(--spacing-loose);
		padding-top: calc(1.5rem * 2);
		padding-top: var(--spacing-loose);
	}

.navigation {
	border-top: 1px dotted #61575f;
	border-top: 1px dotted var(--color-gray);
	display: flex;
	justify-content: space-between;
	margin: 1.5rem 0;
	margin: var(--spacing) 0;
	padding-top: 1.5rem;
	padding-top: var(--spacing);
}

.navigation a {
		text-decoration: none;
	}

.more-link {
	display: block;
	margin-top: calc(1.5rem / 2);
	margin-top: var(--spacing-tight);
}

.archive .page-title, .search .page-title {
		border-bottom: 1px solid #fceef5;
		border-bottom: 1px solid var(--color-secondary);
		margin-bottom: calc(1.5rem * 2);
		margin-bottom: var(--spacing-loose);
		padding-bottom: 1.5rem;
		padding-bottom: var(--spacing);
	}

.archive .entry-header, .search .entry-header {
		margin-bottom: calc(1.5rem / 2);
		margin-bottom: var(--spacing-tight);
	}

.archive .entry-title, .search .entry-title {
		text-align: left;
	}

/* custom block class */

.is-style-highlight {
	background: var(--color-cream);
	border: 1px solid #61575f;
	border: 1px solid var(--color-gray);
	border-radius: 3px;
	font-size: 1.33em;
	padding: 2em;
}

.is-style-highlight .button {
	margin-top: 3em;
}

/* --- Accessibility --- */

.hide-visually {
	position: absolute !important;
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0 !important;
	border: 0 !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden;
}

/* Text meant only for screen readers. */

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	        clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
	clip: auto !important;
	-webkit-clip-path: none;
	        clip-path: none;
	display: block;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */

#content[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments -- align imported legacy items*/

.alignright {
	float: right;
	margin: calc(1.5rem / 2) 0 calc(1.5rem / 2) calc(1.5rem / 2);
	margin: var(--spacing-tight) 0 var(--spacing-tight) var(--spacing-tight);
}

.alignleft {
	float: left;
	margin: calc(1.5rem / 2) calc(1.5rem / 2) calc(1.5rem / 2) 0;
	margin: var(--spacing-tight) var(--spacing-tight) var(--spacing-tight) 0;
}

.aligncenter {
	margin-left: auto;
	margin-right: auto;
}
