/*
Theme Name: njpen
Version: 0.1.6
Requires PHP: 7.4
*/

/* CSS Reset --------------------------------------------------------------- */

/* [1] tl;dr; All elements inherit some properties from their parent (recursive step) */
* {
	margin: 0;
	padding: 0;
	font-weight: inherit;
	font-family: inherit;
	color: inherit;
	background: inherit;
	box-sizing: inherit;
	text-transform: inherit;
	/* Add more properties here */
}

/* [2] tl;dr; Provide inheritable defaults (base case) */
html {
	box-sizing: border-box;
	font-size: 16px;
	font-family: sans-serif;
	font-weight: normal;
	color: black;
	background: transparent;
	line-height: 1.5;
	text-transform: none;
	/* provide defaults for properties in [1] (except margin & padding */
}

/* Your CSS --------------------------------------------------------------- */

/* Global Styles */

a:hover { color: var(--wp--preset--color--red); }
a:active { color: var(--wp--preset--color--gray); }

#sitenav,
#splash-masonry,
footer #footer-copyright {
	background: var(--wp--preset--color--light-gray);
}

h1,h2,h3,h4,h5,h6 {
	line-height: 1.2;
}

p {
	line-height: 1.5;
}

/* Accessibility */

.screen-reader-text {
	display: none;
}

::placeholder {
	 color: #767676;
	 opacity: 1;
}

/* Page structure */

body {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	min-height: 100vh;
}

main {
	flex: 1;
	margin-bottom: 80px;
}

.container {
	width: 100%;
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
}

.row {
	max-width: 1200px;
	width: 100%;
	padding: 0 20px;
	box-sizing: border-box;
}

main.container .row {
	display: flex;
	flex-flow: row wrap;
	padding: 0;
	justify-content: center;
}

main.container .row aside {
	flex: 0;
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	min-width: calc(300px + 20px + 20px);
}

@media (max-width: 340px) {
	main.container .row aside {
		min-width: unset;
		flex: 1;
	}

	main.container .row aside > * {
		width: 100%;
	}
}

main.container .row aside > * {
	padding: 20px;
	box-sizing: border-box;
}

section#content {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	flex: 1;
	min-width: min(calc(100vw - calc(20px * 2)), 550px);
	height: 100%;
}

section#content > * {
	padding: 20px;
	box-sizing: border-box;
}

/*body.home section#content {
	margin-top: -40px;
}*/

/* Header Buttons & Logo */

.njpen-logo {
	margin: 40px 0;
}

.njpen-logo-mobile {
	padding: 0 75px;
	box-sizing: border-box;
}

.njpen-logo:not(.njpen-logo-mobile) {
	display: none;
}

@media (min-width: 600px) {
	.njpen-logo {
		display: block !important;
	}

	.njpen-logo-mobile {
		display: none !important;
	}
}

.njpen-logo-container {
	position: relative;
}

.njpen-logo-container .buttons-container {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	top: 0;
	bottom: 0;
	pointer-events: none;
}

.njpen-logo-container .buttons-container a {
	pointer-events: auto;
	text-decoration: none;
	padding: 7.5px 15px;
	color: white;
	border-radius: 15px;
	text-transform: uppercase;
	font-weight: bold;
	z-index: 100;
	margin-top: 20px;
}

@media (min-width: 600px) {
	.njpen-logo-container .buttons-container {
		position: absolute;
	}
	.njpen-logo-container .buttons-container a {
		margin-top: calc(100% / 16);
	}
}

.njpen-logo-container .buttons-container a.newsletter-button {
	background: var(--wp--preset--color--green);
}

.njpen-logo-container .buttons-container a.subscribe-button {
	background: var(--wp--preset--color--pink);
}

/* Primary navigation & Search (category menu) */

#sitenav {
	margin-bottom: 20px;
}

#sitenav ul {
	display: flex;
	justify-content: center;
	flex-flow: row wrap;
	padding: 0;
	box-sizing: border-box;
	list-style: none;
}

#sitenav ul li > * {
	padding: 1rem 0.75rem;
	box-sizing: border-box;
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1rem;
	white-space: nowrap;
	outline: none;
	border: none;
	cursor: pointer;
}

#sitenav ul li a {
	text-decoration: none;
	display: inline-block;
}

.mobile-nav-opener-container {
	display: none;
	width: 100%;
	flex-flow: row nowrap;
	justify-content: flex-end;
	padding: 20px;
}

.mobile-nav-closer {
	display: none;
	cursor: pointer;
}

.mobile-nav-opener {
	height: min(5vw, 2rem);
	width: min(5vw, 2rem);
	display: block;
	cursor: pointer;
}

.mobile-nav-opener svg {
	height: 100% !important;
	width: 100% !important;
}

.njpen-search-form {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	max-width: 768px;
	width: 100%;
}

.njpen-search-form input[name="s"] {
	font-size: calc(1rem - 2px);
	background: transparent;
	color: black;
	padding: 0.75em 0.25em;
	height: 1.5rem;
	flex: 1;
	min-width: 150px;
	margin-right: calc(min(1200px, 100vw) * 0.01);
	border: none;
	border-bottom: 1px solid var(--wp--preset--color--dark-gray);
	text-transform: none;
	outline: none;
}

.njpen-search-form input[name="s"]:focus {
	border-bottom-width: 2px;
}

.njpen-search-form button[type="submit"] {
	background: none;
	border: none;
	cursor: pointer;
	font-size: 1rem;
	font-weight: inherit;
	color: inherit;
	text-transform: inherit;
	height: 100%;
	display: flex;
}

.njpen-search-form button[type="submit"] span.submit-text {
	margin-right: 1ex;
	line-height: 1;
}

.njpen-search-form-opener,
.njpen-search-form-closer {
	display: flex;
}

.search-form-wrapper button:hover {
	color: var(--wp--preset--color--red);
}

.search-form-wrapper button:active { color: var(--wp--preset--color--dark-gray); }

.search-form-wrapper {
	display: flex;
	align-items: center;
}

.njpen-search-form-closer {
	text-transform: lowercase !important;
	color: var(--wp--preset--color--gray) !important;
	font-weight: bold;
	font-size: 1rem;
	white-space: nowrap;
	outline: none;
	border: none;
	cursor: pointer;
}

.njpen-search-form-closer-wrapper {
	width: 0;
	overflow: visible;
	padding: 0 !important;
}

body.search .njpen-search-form-opener {
	color: var(--wp--preset--color--red);
}

@media (min-width: 1024px) {
	#sitenav ul a.selected {
		color: var(--wp--preset--color--red);
	}

	body.search-open .njpen-search-form-opener,
	body:not(.search-open) .njpen-search-form,
	body:not(.search-open) .njpen-search-form-closer {
		display: none;
	}

	body.search-open #sitenav ul li:not(.search-form-wrapper) {
		display: none;
	}
}

@media (max-width: 1023px) {
	.njpen-search-form-opener,
	.njpen-search-form-closer {
		display: none;
	}

	#sitenav ul {
		position: fixed;
		z-index: 100000;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		display: none;
		overflow-y: scroll;
	}

	body.mobile-menu-open {
		pointer-events: none;
		height: 100%;
		overflow-y: hidden;
	}

	body.mobile-menu-open nav#sitenav {
		background: #F2F2F2EF;
		pointer-events: none;
	}

	body.mobile-menu-open .mobile-nav-closer,
	body.mobile-menu-open nav#sitenav ul > * {
		background: transparent;
	}

	body.mobile-menu-open nav#sitenav ul {
		pointer-events: auto;
		display: flex;
		flex-flow: column nowrap;
	}

	body.mobile-menu-open nav#sitenav ul li button,
	body.mobile-menu-open nav#sitenav ul li form,
	body.mobile-menu-open nav#sitenav ul li a {
		font-size: min(min(3.25vh, 7.5vw), 3rem);
	}

	body.mobile-menu-open .mobile-nav-closer {
		display: block;
		position: fixed;
		font-size: max(min(5vw, 3rem), 22px);
		top: 0;
		right: 0;
		margin-top: 20px;
		margin-right: 20px;
		z-index: 1000000;
		pointer-events: auto;
	}

	.mobile-nav-opener-container {
		display: flex;
	}

	body.mobile-menu-open .njpen-search-form-opener {
		display: none !important;
	}

	body.mobile-menu-open .njpen-search-form {
		display: flex;	
	}
}

/* gutter below nav menu */

#gutter-below-menu {
	margin-bottom: 20px;
}

/* njpen_header() */

.njpen-header {
	width: 100%;
	font-size: 2rem;
	padding-left: 15px;
	margin: 20px 0;
	box-sizing: border-box;
	border-left: 5px solid var(--wp--preset--color--red);
}

/* Front page splash masonry */

.njpen-splash-masonry {
	margin: 20px 0;
	display: grid;
}

@media (min-width: 1024px) {
	.njpen-splash-masonry {
		height: 400px;
		grid-template-columns: [first] 50% [second] 25% [third] 25% [last];
		grid-template-rows: [first] 50% [second] 50% [last];
	}

	.njpen-splash-masonry a:nth-child(1) {
		grid-row: first / last;
	}
}

@media (max-width: 1023px) {
	.njpen-splash-masonry {
		height: 800px;
		grid-template-columns: [start] 50% [middle] 50% [end];
		grid-template-rows: [start] 50% [first] 25% [second] 25% [last];
	}

	.njpen-splash-masonry a:nth-child(1) {
		grid-row: start / first;
		grid-column: start / end;
	}
}

.njpen-splash-masonry a:nth-child(1) h2.title {
	display: -webkit-box;
	-webkit-line-clamp: 10;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.njpen-splash-masonry a:not(:nth-child(1)) h2.title {
	display: -webkit-box;
	-webkit-line-clamp: 6;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.njpen-splash-masonry a:nth-child(2),
.njpen-splash-masonry a:nth-child(3) {
	grid-row: first / second;
}

.njpen-splash-masonry a:nth-child(4),
.njpen-splash-masonry a:nth-child(5) {
	grid-row: second / last;
}


.njpen-splash-masonry a:not(:nth-child(1)) {
	font-size: 0.65em;
}

.njpen-splash-masonry a img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: center;
}

.njpen-splash-masonry a {
	position: relative;
}

.njpen-trending-masonry-item .info {
	background: linear-gradient(transparent, transparent, #0000003F);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	padding: 20px;
	box-sizing: border-box;
	font-weight: bold;
	z-index: 20;
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-end;
}

.njpen-trending-masonry-item:hover .info {
	background: #6666;
}

.njpen-trending-masonry-item:active .info {
	background: #3339;
}

.njpen-trending-masonry-item .info * {
	background: transparent;
}

.njpen-trending-masonry-item .info .category {
	background: var(--wp--preset--color--red);
	color: white;
	padding: 5px 10px;
	box-sizing: border-box;
	margin-bottom: 5px;
	display: inline-flex;
	width: fit-content;
}

.njpen-trending-masonry-item .info .date {
	font-style: italic;
	color: var(--wp--preset--color--light-gray);
}

.njpen-trending-masonry-item .info .title {
	font-weight: bold;
	color: white;
}

/* Single Post */

article.singular {
	width: 100%;
	min-width: 300px;
}

article.singular > * {
	margin-bottom: 20px;
}

article.singular .post-featured-image {
	position: relative;
	margin-bottom: 20px;
	display: flex;
}

article.singular .post-featured-image img {
	width: 100%;
	object-fit: contain;
	object-position: center;
	height: auto;
}

article.singular .post-featured-image > .caption {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 20px;
	box-sizing: border-box;
	color: white;
	background: linear-gradient(transparent, transparent, #0000003F);
}

article.singular .post-title,
article.singular .post-content .wp-block-heading {
	font-size: 2rem;
	position: relative;
	padding-left: 1rem;
	margin-bottom: 20px;
	box-sizing: border-box;
	border-left: 5px solid var(--wp--preset--color--red); 
}

article.singular .post-content h2.wp-block-heading {
	font-size: 1.8rem;
	padding-left: 0.9rem;
	margin: 1.25rem 0;
}

article.singular .post-content h3.wp-block-heading {
	font-size: 1.6rem;
}

article.singular .post-content h4.wp-block-heading {
	font-size: 1.4rem;
}

article.singular .post-content h5.wp-block-heading {
	font-size: 1.2rem;
}

article.singular .post-content h6.wp-block-heading {
	font-size: 1rem;
}

article.singular strong {
	font-weight: bold !important;
}

article.singular .post-excerpt {
	font-style: italic;
	margin-bottom: 20px;
}

article.singular .post-author {
	font-style: italic;
	color: var(--wp--preset--color--dark-gray);
	opacity: 0.5;
}

article.singular .post-meta {
	margin-bottom: 20px;
}

article.singular .nav-links {
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
}

article.singular nav.post-navigation .nav-links > div {
	width: 50%;
	padding: 20px;
	box-sizing: border-box;
}

article.singular .nav-links > div:nth-child(1) {
	text-align: right;
}

article.singular .njpen-subscribe-banner {
	width: 100%;
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: center;
}

article.singular .njpen-subscribe-banner a.subscribe-link {
	text-decoration: none;
	font-size: 2.5rem;
	width: 100%;
	height: 150px;
	text-align: center;
	vertical-align: middle;
	display: flex;
	line-height: 150px;
}

article.singular .njpen-subscribe-banner a.subscribe-link img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

article.singular section.post-internal-nav {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
}

article.singular section.post-internal-nav a,
article.singular section.post-internal-nav span {
	font-size: 2rem;
	padding: 20px 10px;
	box-sizing: border-box;
	color: var(--wp--preset--color--red);
}

article.singular section.post-internal-nav .current {
	color: var(--wp--preset--color--dark-gray);
}

article.singular section.post-internal-nav a:not(.current) {
	font-size: 1.5rem;	
}

article.singular section.post-internal-nav a {
	text-decoration: none;
}

article.singular section.post-internal-nav a:hover {
}


/* Plural post */

article.plural a {
	text-decoration: none;
}

/*body.home article.plural a {
	margin-top: 40px;
	margin-bottom: 20px;
}*/

article.plural .plural-featured-image {
	position: relative;
	display: block;
	height: 225px;
}

/* TODO: min width for each breakpoint */

article.plural .plural-featured-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

article.plural .plural-featured-image .category {
	position: absolute;
	left: 10px;
	top: 0;
	background: var(--wp--preset--color--red);
	color: white;
	padding: 5px 10px;
	box-sizing: border-box;
}

article.plural .post-title {
	text-decoration: none;
	position: relative;
	padding-left: 15px;
	margin: 20px 0;
	box-sizing: border-box;
	border-left: 5px solid var(--wp--preset--color--red);
	font-size: 1.25rem;
}

article.plural .post-date {
	font-style: italic;
	color: var(--wp--preset--color--gray);
}

article.plural .post-date,
article.plural .post-excerpt {
	font-size: 0.85em;
}

article.plural {
	width: 50%;
	min-width: calc(225px + calc(2 * 20px));
	flex-grow: 1;
	flex-basis: auto;
}

/*
	Related Posts (shown on singular post pages)
	This is down here so as to enable overriding the article.plural styles.
*/

.related-posts {
	width: 100%;
}

.related-posts h2 {
	display: block;
	padding-left: 15px;
	box-sizing: border-box;
	border-left: 5px solid var(--wp--preset--color--red);
	text-transform: uppercase;
	margin-bottom: 20px;
}

.related-posts .related-posts-container {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	margin-left: -20px;
	margin-right: -20px;
}

.related-posts .related-posts-container > article {
	padding: 20px;
	box-sizing: border-box;
}

/*
	Internal Nav
*/

.njpen-leftright-nav {
	width: 100%;
}

.njpen-leftright-nav ul {
	list-style: none;
	display: flex;
	flex-flow: row nowrap;
}

.njpen-leftright-nav li {
	width: 50%;
	padding: 20px;
	box-sizing: border-box;
}

.njpen-leftright-nav li a {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	text-transform: uppercase;
	font-weight: bold;
	text-decoration: none;
}

.njpen-leftright-nav li svg {
	margin: 0 1ex;
}

.njpen-leftright-nav .nav-label {
	display: flex;
	width: 100%;
	margin-bottom: 5px;
	flex-flow: row nowrap;
	align-items: center;
}

.njpen-leftright-nav li.nav-previous * {
	justify-content: flex-end;
	text-align: right;
}

.njpen-leftright-nav li.nav-next * {
	justify-content: flex-start;
	text align: left;
}

.njpen-leftright-nav li.nav-next:only-child {
	margin-left: 50%;
}


/* Ads */

.njpen-ad-area {
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;

}

.njpen-ad-area a {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	background: var(--wp--preset--color--light-gray);
	box-sizing: border-box;
	max-width: 100%;
}

.njpen-ad-area img {
	object-fit: contain;
	object-position: center;
	max-width: 100%;
}

.njpen-ad-area a.ad-placeholder img {
	height: var(--njpen-ad-area-height);
	width: var(--njpen-ad-area-width);
	max-width: 100%;
}

/* Subscribe Form */

.njpen-subscription-form {
	font-size: 1.25rem;
	background: var(--wp--preset--color--light-gray);
	width: fit-content;
	display: flex;
	border-radius: 15px;
	overflow: hidden;
	border: 1px solid black;
}

.njpen-subscription-form::before {
	content: '$';
	font-size: 1.25rem;
	padding: 15px 10px;
	padding-right: 0;
	box-sizing: border-box;
	color: var(--wp--preset--color--gray);
}

.njpen-subscription-form input:not([type='submit']) {
	padding-left: 0.1ex;
	padding-right: 1ex;
	min-width: 7ch;
}

.njpen-subscription-form::before,
.njpen-subscription-form input:not([type='submit']) {
	font-size: 2rem;
}

.njpen-subscription-form input {
	font-size: 1.25rem;
	padding: 15px 10px;
	box-sizing: border-box;
	text-decoration: none;
	display: inline-block;
	border: none;
	outline: none;
	field-sizing: content;
}

.njpen-subscription-form input:placeholder-shown {
	padding-left: 10px;
}

.njpen-subscription-form input[type='submit'] {
	color: var(--wp--preset--color--white) !important;
	font-weight: bold;
	text-transform: uppercase;
	background: var(--wp--preset--color--red);
	cursor: pointer;
}

.njpen-subscription-form input[type='submit']:hover {
	background: var(--wp--preset--color--light-gray);
	color: black !important;
}

.njpen-subscription-form input[type='submit']:active {
	color: white !important;
	background: var(--wp--preset--color--pink);
}

.njpen-subscription-form input[type="number"]::-webkit-inner-spin-button {
	display: none;
}
   
/* Fallback for other browsers */
.njpen-subscription-form input[type="number"] {
	appearance: textfield;
	-moz-appearance: textfield;
	-webkit-appearance: textfield;
}

/* Barker */

.ml-embedded {
	width: 100%;
}

/* Most Popular */

.njpen-popular-posts:not(:first-child) {
	margin-top: 40px;
}

.njpen-popular-posts:not(:last-child) {
	margin-bottom: 40px;
}

.njpen-popular-posts ol {
	margin-left: 3ex;
}

/* https://www.w3.org/TR/css-lists-3/#marker-pseudo-element */
.njpen-popular-posts ol li::marker {
	color: var(--wp--preset--color--red);
	content: counter(list-item, upper-roman) " ";
	font-size: 1.5em;
}

.njpen-popular-posts ol li {
	margin-bottom: 10px;
	box-sizing: border-box;
}

.njpen-popular-posts h3 {
	font-size: 2rem;
	margin-bottom: 20px;
	margin-top: 0;
}

.njpen-popular-posts a {
	text-decoration: none;
	display: block;
	padding-left: 2ex;
}

/* Footer Membership Controls */

ul.njpen-member-controls {
	list-style: none;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	padding: 20px 0px;
	justify-content: flex-end;
}

ul.njpen-member-controls.njpen-member-controls-short {
	padding-right: 20px;
	box-sizing: border-box;
}

ul.njpen-member-controls a {
	text-decoration: none;
}

footer ul.njpen-member-controls {
	box-sizing: border-box;
	padding: 40px 20px;
	justify-content: flex-start;
}

footer ul.njpen-member-controls li {
	box-sizing: border-box;
}

footer ul.njpen-member-controls li:not(:first-of-type) {
	box-sizing: border-box;
	padding-left: 15px;
}

footer ul.njpen-member-controls li:not(:last-of-type) {
	box-sizing: border-box;
	border-right: 2px solid white;
	padding-right: 15px;
}

footer .member-controls-container {
	background: black;
	color: white;
}

/* Footer */

footer ul {
	list-style: none;
}

footer a {
	text-decoration: none;
}

footer #footer-primary-content {
	background: black;
	color: white;
}

footer .njpen-footer-logo-white {
	width: 100%;
	padding-right: 10%;
	margin-bottom: 40px;
}

footer .njpen-search-icon {
	height: 1em; /* match height of surrounding text */
	display: inline-block;
}

footer .njpen-x-icon,
footer .njpen-facebook-icon,
footer .njpen-instagram-icon {
	height: 44px;
}

footer .njpen-award-logo {
	height: 125px;
	margin-top: 40px;
}

footer .column.branding-column {
	display: flex;
	flex-flow: column nowrap;
	align-items: flex-start;
}

footer #footer-primary-columns {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

footer #footer-primary-columns .column {
	max-width: 25%;
	height: 100%;
	display: flex;
	flex-flow: column nowrap;
	padding: 50px 10px;
	box-sizing: border-box;
}

@media (max-width: 768px) {
	footer #footer-primary-columns {
		flex-flow: column nowrap;
		align-items: center;
	}

	footer #footer-primary-columns .column {
		width: 100% !important;
		max-width: unset;
		display: flex;
		justify-content: center;
	}
}

footer #footer-primary-columns .column h3 {
	margin-bottom: 20px;
	font-weight: bold;
}

footer #footer-copyright {
	padding: 20px 0;
	box-sizing: border-box;
	font-size: 1rem;
	font-weight: bold;
}

footer #footer-copyright * {
	font-weight: bold;
}

footer #footer-copyright .row {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
}

footer .socials {
	display: flex;
	flex-flow: row nowrap;
}

footer .socials li {
	margin-right: 20px;
}

/*
	Mailerlite Form
*/

.ml-subscribe-form {
	width: 100%;
	display: flex;
	flex-grow: 1;
}

#content .ml-subscribe-form > * {
	padding: 20px;
	box-sizing: border-box;
}

.ml-subscribe-form .ml-row {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	text-align: center;
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	width: 100%;
}

.ml-subscribe-form .ml-row > *:not(:last-child) {
	margin-bottom: 10px;
}

.ml-subscribe-form h4 {
	font-size: 1.5rem;
}

.ml-subscribe-form input[type="email"] {
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);
	padding: 0.5rem calc(1rem / 3);
	width: 100%;
	max-width: 500px;
	outline: none;
	border: none;
}

.ml-subscribe-form button {
	border: none;
	background: var(--wp--preset--color--red);
	padding: 0.5rem calc(1rem / 3);
	cursor: pointer;
}

.ml-subscribe-form button:hover {
	background: var(--wp--preset--color--pink);
}

.ml-subscribe-form button:active {
	background: var(--wp--preset--color--gray);
}

.ml-subscribe-form .unsubscribe-disclaimer {
	font-style: italic;
	color: var(--wp--preset--color--gray);
}

.ml-subscribe-form input[type="email"]:placeholder-shown ~ button {
	pointer-events: none;
	opacity: 0.5;
}

/*
	Post content styles

	These styles apply to post content and make it look
	like it did on the old version/theme of the site.
*/

/* TODO: ensure images don't overflow */

.post-content > * {
	max-width: 100%;
}

.post-content a { color: var(--wp--preset--color--red); }
.post-content a:hover { color: var(--wp--preset--color--dark-gray); }

.post-content p,
.post-content ul,
.post-content > *,
.post-content dl,
.post-content blockquote,
.post-content ol { 
	margin-bottom: 1.25rem; /* adjust to parent font-size */ 
}

.post-content ul,
.post-content li {
	margin-left: 1.5rem;
}

.post-content ul { list-style-type: square; }
.post-content ol { list-style-type: decimal; }

.post-content blockquote {
	padding: 2rem;
	border: 0;
	border-left: 3px solid var(--wp--preset--color--dark-gray);
	background: var(--wp--preset--color--light-gray);
}

.post-content blockquote > *:last-child {
	margin-bottom: 0;
}

.post-content .wp-caption { margin-bottom: 21px; }
.post-content .wp-caption.alignright { margin-left: 31px; }

.post-content .wp-caption-text {
	margin-bottom: 0;
    	margin-right: 10px;
	font-style: italic;
	font-size: 1rem;
	text-align: center;
	color: var(--wp--preset--color--dark-gray);
}

.post-content .alignnone {
	margin: 5px 20px 20px 0;
}

.post-content .aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.post-content .alignright {
	float: right;
	margin: 0 0 21px 21px;
}

.post-content .alignleft {
	float: left;
	margin: 0 21px 0 0;
}

.post-content a img.alignnone {
	margin: 0 21px 21px 0;
}

.post-content a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

