/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# General Structure
  ## Code
  ## Cover
  ## Embeds
  ## Gallery
  ## Group
  ## Image
  ## Latest Posts
  ## List
  ## More
  ## Pullquote
  ## Quote
  ## Separator
  ## Table
  ## Video
# Additional Theme Styles
  ## Color Palette
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Block Styles
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## General Structure
--------------------------------------------------------------*/

.entry-content > * {
	margin: 24px auto;
	max-width: 760px;
	padding-left: 14px;
	padding-right: 14px;
}

.entry-content > .alignwide {
	max-width: 1350px;
}

.entry-content > .alignfull {
	margin: 0;
	max-width: 100%;
}

.entry-content > .alignfull:last-child {
	margin-bottom: 0;
}

.entry-content > :first-child {
	margin-top: 36px;
}

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

.entry-content > .alignfull:first-child:not(.wp-block-cover):not(.wp-block-mhp-blocks-header) {
	background-color: #fff;
}

@media screen and (min-width: 788px) {
	.entry-content > * {
		padding-left: 0;
		padding-right: 0;
		/*margin: 72px auto;*/
	}

	.entry-content > .alignwide {
		padding-left: 14px;
		padding-right: 14px;
	}
}

@media screen and (min-width: 1378px) {
	.entry-content > .alignwide {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen and (min-width: 1378px) {
	.entry-content > * {
		/*margin: 108px auto;*/
	}
}

.hentry-list__item .entry-content > * {
	margin: 1.5rem 0;
}

/*--------------------------------------------------------------
## Code
--------------------------------------------------------------*/

.wp-block-code {
	padding: 0.8em 1em;
	margin-left: 14px;
	margin-right: 14px;
}

@media screen and (min-width: 788px) {
	.wp-block-code {
		margin-left: auto;
		margin-right: auto;
	}
}

/*--------------------------------------------------------------
## Cover
--------------------------------------------------------------*/

.wp-block-cover.no-bg-image {
	min-height: 0;
}

.wp-block-cover-text p {
	padding: 1.5em 14px;
}

.wp-block-cover__inner-container > *:not(p) {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.wp-block-cover__inner-container > .alignwide:not(p) {
	max-width: 1350px;
}

.wp-block-cover__inner-container > .alignfull:not(p) {
	max-width: none;
}

.wp-block-cover__inner-container {
	padding-left: 14px;
	padding-right: 14px;
}

@media screen and (max-width: 767px) {
	.wp-block-cover-image .wp-block-cover__inner-container,
	.wp-block-cover .wp-block-cover__inner-container {
		width: 100%;
	}

	.wp-block-cover__inner-container {
		padding-left: 0;
		padding-right: 0;
	}
}

@media screen and (min-width: 788px) {
	.wp-block-cover-text p {
		padding: 1.5em 0;
	}

	.wp-block-cover__inner-container {
		padding-left: 0;
		padding-right: 0;
	}

	.wp-block-cover.has-content-position-left .wp-block-cover__inner-container,
	.wp-block-cover-image.has-content-position-left .wp-block-cover__inner-container {
		padding-left: 14px;
	}

	.wp-block-cover.has-content-position-right .wp-block-cover__inner-container,
	.wp-block-cover-image.has-content-position-right .wp-block-cover__inner-container {
		padding-right: 14px;
	}

	.wp-block-cover.alignwide.has-content-position-left .wp-block-cover__inner-container,
	.wp-block-cover-image.alignwide.has-content-position-left .wp-block-cover__inner-container {
		padding-left: 25px;
	}

	.wp-block-cover.alignwide.has-content-position-right .wp-block-cover__inner-container,
	.wp-block-cover-image.alignwide.has-content-position-right .wp-block-cover__inner-container {
		padding-right: 25px;
	}
}

@media screen and (min-width: 1350px) {
	.wp-block-cover.alignwide.has-content-position-left .wp-block-cover__inner-container,
	.wp-block-cover-image.alignwide.has-content-position-left .wp-block-cover__inner-container {
		padding-left: 75px;
	}

	.wp-block-cover.alignwide.has-content-position-right .wp-block-cover__inner-container,
	.wp-block-cover-image.alignwide.has-content-position-right .wp-block-cover__inner-container {
		padding-right: 75px;
	}
}

/*--------------------------------------------------------------
## Embeds
--------------------------------------------------------------*/

.wp-block-embed.type-video > .wp-block-embed__wrapper {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
}

.wp-block-embed.type-video > .wp-block-embed__wrapper > iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

/*--------------------------------------------------------------
# Gallery
--------------------------------------------------------------*/

.wp-block-gallery:not(.components-placeholder) {
	margin: 1.5em auto;
}

/*--------------------------------------------------------------
## Group
--------------------------------------------------------------*/

.wp-block-group > .wp-block-group__inner-container > * {
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.wp-block-group > .wp-block-group__inner-container > .alignwide {
	max-width: 1200px;
}

.wp-block-group.alignfull > .wp-block-group__inner-container > .alignwide {
	max-width: 1350px;
}

.wp-block-group > .wp-block-group__inner-container > .alignfull {
	max-width: 100%;
}

.wp-block-group.has-background > .wp-block-group__inner-container > :first-child {
	margin-top: 0;
}

.wp-block-group.has-background:not(.alignfull) > .wp-block-group__inner-container > .alignfull {
	width: calc(100% + 60px);
	max-width: calc(100% + 60px);
	position: relative;
	left: -30px;
}

.wp-block-group.has-background.alignfull {
	padding: 36px 14px;
}

.entry-content > .wp-block-group.has-background.alignfull:first-child {
	padding-top: 0;
	background-color: #fff;
}

.wp-block-group:not(.alignfull) + .wp-block-group:not(.alignfull) {
	margin-top: 48px;
}

.wp-block-group:not(.alignfull) > .wp-block-group__inner-container {
	padding: 50px 25px;
	background-color: #fff;
	box-shadow: 3px 3px 11px 3px rgba(0, 0, 0, 0.1);
	border-radius: 8px;
}

.wp-block-group > .wp-block-group__inner-container .wp-block-group > .wp-block-group__inner-container {
	padding: 15px 30px;
	box-shadow: none;
	border-radius: 0;
	background-image: linear-gradient(180deg, var(--color-contrast) 10%, var(--color-accent) 100%);
	color: var(--color-accent-text);
}

@media screen and (min-width: 788px) {
	.wp-block-group:not(.alignfull) > .wp-block-group__inner-container {
		padding-left: 50px;
		padding-right: 50px;
	}

	.wp-block-group.alignwide > .wp-block-group__inner-container {
		padding-left: 25px;
		padding-right: 25px;
	}
}

@media screen and (min-width: 1350px) {
	.wp-block-group.alignwide > .wp-block-group__inner-container {
		padding-left: 75px;
		padding-right: 75px;
	}
}

/*--------------------------------------------------------------
# Image
--------------------------------------------------------------*/

.wp-block-image img {
	display: block;
}

.wp-block-image.alignleft,
.wp-block-image.alignright {
	width: 100%
}

.wp-block-image.alignfull img {
	width: 100vw;
}

.wp-block-image .alignleft img,
.wp-block-image .alignright img,
.wp-block-image .alignleft figcaption,
.wp-block-image .alignright figcaption {
	max-width: 100%;
	width: 100%;
}

/*--------------------------------------------------------------
## Latest Posts
--------------------------------------------------------------*/

ul.wp-block-latest-posts.alignwide,
ul.wp-block-latest-posts.alignfull,
ul.wp-block-latest-posts.is-grid.alignwide,
ul.wp-block-latest-posts.is-grid.alignwide {
	padding: 0 14px;
}

/*--------------------------------------------------------------
# List
--------------------------------------------------------------*/

.entry-content ul,
.entry-content ol {
	margin: 1em auto;
	max-width: 760px;
	list-style-position: outside;
	padding-left: 0;
}

.entry-content li {
	margin-left: 2em;
}

.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul {
	margin: 0 auto;
}

.entry-content ul ul li,
.entry-content ol ol li,
.entry-content ul ol li,
.entry-content ol ul li {
	margin-left: 0;
}

/*--------------------------------------------------------------
## More
--------------------------------------------------------------*/

.more-link {
	display: block;
}

/*--------------------------------------------------------------
## Pullquote
--------------------------------------------------------------*/

.wp-block-pullquote > p:first-child {
	margin-top: 0;
}

/*--------------------------------------------------------------
## Quote
--------------------------------------------------------------*/

.wp-block-quote {
	margin-left: 14px;
	margin-right: 14px;
	padding: 0;
}

.wp-block-quote > * {
	margin-left: 1rem;
}

.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
	margin: 36px auto;
	padding: 0;
}

.wp-block-quote.is-large cite,
.wp-block-quote.is-large footer,
.wp-block-quote.is-style-large cite,
.wp-block-quote.is-style-large footer {
	font-size: 13px;
	font-size: 0.8125rem;
}

@media screen and (min-width: 644px) {
	.wp-block-quote {
		margin: 36px auto;
	}
}

/*--------------------------------------------------------------
## Separator
--------------------------------------------------------------*/

.wp-block-separator {
	margin: 3em auto;
	padding: 0;
}

/*--------------------------------------------------------------
## Table
--------------------------------------------------------------*/

.wp-block-table {
	overflow-x: auto;
	margin-left: 14px;
	margin-right: 14px;
	width: calc(100% - 28px);
}

.wp-block-table table {
	border-collapse: collapse;
	width: 100%
}

.wp-block-table td, .wp-block-table th {
	padding: .5em;
}

@media screen and (min-width: 788px) {
	.wp-block-table {
		margin-left: auto;
		margin-right: auto;
		width: 100%;
	}
}

/*--------------------------------------------------------------
## Video
--------------------------------------------------------------*/

.wp-block-video video {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Button
--------------------------------------------------------------*/

.wp-block-button__link {
	border-radius: 0;
	transition: background-color .3s ease, color .3s ease;
}

.wp-block-button__link:hover {
	text-decoration: none;
}

.wp-block-button__link:not(.has-text-color) {
	color: var(--color-accent-text);
}

.wp-block-button__link:not(.has-text-color):hover,
.wp-block-button__link:not(.has-text-color):focus {
	color: var(--color-accent-text);
}

.wp-block-button__link:not(.has-background) {
	background-color: var(--color-accent);
}

.wp-block-button__link:not(.has-background):hover,
.wp-block-button__link:not(.has-background):focus {
	background-color: var(--color-contrast);
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
	color: var(--color-accent);
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color):hover,
.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color):focus {
	color: var(--color-contrast);
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background) {
	background-color: transparent;
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover,
.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):focus {
	background-color: transparent;
}

/*--------------------------------------------------------------
## Accordion
--------------------------------------------------------------*/
.wp-block-mhp-blocks-accordion-item {
	border-color: var(--color-accent);
}

.wp-block-mhp-blocks-accordion-item__title {
	background-color: var(--color-accent);
	color: var(--color-accent-text);
}

div.wp-block-mhp-blocks-accordion.is-initialised .wp-block-mhp-blocks-accordion-item__title:hover,
div.wp-block-mhp-blocks-accordion.is-initialised .wp-block-mhp-blocks-accordion-item__title:focus {
	background-color: var(--color-contrast);
}

/*--------------------------------------------------------------
## Navigation
--------------------------------------------------------------*/
.has-child .wp-block-navigation__container {
	z-index: 100;
}

.wp-block-navigation.items-justified-right .has-child .wp-block-navigation__container {
	left: auto;
	right: 0;
}

/*--------------------------------------------------------------
# Additional Theme Styles
--------------------------------------------------------------*/

.wp-block-group > .wp-block-group__inner-container > :first-child,
.wp-block-column > :first-child {
	margin-top: 0;
}

.wp-block-group > .wp-block-group__inner-container > :last-child,
.wp-block-column > :last-child {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
## Color Palette
--------------------------------------------------------------*/

.has-accent-color {
	color: var(--color-accent);
}

.has-accent-background-color {
	background-color: var(--color-accent);
}

.has-accent-text-color {
	color: var(--color-accent-text);
}

.has-accent-text-background-color {
	background-color: var(--color-accent-text);
}

.has-contrast-color {
	color: var(--color-contrast);
}

.has-contrast-background-color {
	background-color: var(--color-contrast);
}
