/* Alignment
--------------------------------------------- */

.full-width-content .entry-content>.alignfull,
.block-editor-block-list__layout.is-root-container>[data-align="full"] {
	margin-left: calc(-100vw / 2 + 100% / 2);
	margin-right: calc(-100vw / 2 + 100% / 2);
	max-width: 100vw;
	width: unset;
}

.full-width-content .entry-content > .alignwide {
	margin-left: calc(-1240px / 2 + 100% / 2);
	margin-right: calc(-1240px / 2 + 100% / 2);
	max-width: 1240px;
	width: unset;
}

.content-sidebar .site-container .alignfull,
.sidebar-content .site-container .alignfull {
	margin: 0 0 30px;
	width: 100%;
}

.wp-block-image.aligncenter {
	margin-left: auto;
	margin-right: auto;
}

/* Images
--------------------------------------------- */

.wp-block-image.is-style-boxshadow {
	box-shadow: none;
	padding: 0;
}

.wp-block-image.is-style-boxshadow img {
	box-shadow: 0 0 20px rgb(0 0 0 / 7%);
}

/* Lists
--------------------------------------------- */

ol li::marker {
	color: var(--wp--preset--color--primary);
	font-weight: var(--wp--custom--font-weight--semi-bold);
}

ul li::marker {
	color: var(--wp--preset--color--primary);
	font-size: 110%;
	line-height: 1;
}

.has-foreground-background-color ul li::marker,
.has-primary-background-color ul li::marker {
	color: var(--wp--preset--color--primary-light);
}

ul.is-style-checkmarks>li {
	list-style-type: none;
	position: relative;
}

ul.is-style-checkmarks li::before {
	content: url(../svg/icon-check.svg);
	left: -24px;
	position: absolute;
	top: -2px;
}

/* Navigation Blocks
--------------------------------------------- */

ul.wp-block-navigation__container {
    gap: 8px 22px;
}

/* Author Block
--------------------------------------------- */

.is-style-author-block {
	background-color: var(--wp--preset--color--quaternary);
	padding: 75px 15px 30px;
}

.home .is-style-author-block  {
	padding: 75px 25px 30px !important;
}

.home .is-style-author-block p {
	font-size: var(--wp--preset--font-size--medium-small);
}

.home .entry-content .wp-block-social-links {
    margin-top: -4.4px !important;
    margin-bottom: 8.5px !important;
}

@media only screen and (min-width: 620px) {

	.after-entry .is-style-author-block {
		padding: 75px 15% 30px;
	}

	.page .entry-content .is-style-author-block {
		padding-left: 10%;
		padding-right: 10%;
	}

}

.is-style-author-image {
	margin-bottom: -60px !important;
}

.is-style-author-image img {
	border: 2px solid var(--wp--preset--color--background);
	border-radius: 9999px !important;
	opacity: 1 !important;
	position: relative;
	transition: transform 0.3s ease;
	z-index: 9;
}

.is-style-author-image img:focus,
.is-style-author-image img:hover {
	transform: rotate(5deg);
}

.home .is-style-author-image,
.is-style-author-image img {
	margin: -10px auto !important; 
}

@media only screen and (min-width: 768px) and (max-width: 781px) {

	.home .wp-block-columns.about-columns p {
		text-align: center;
	}

	.home .wp-block-columns.about-columns .wp-block-buttons {
		justify-content: center;
	}

}

@media only screen and (min-width: 782px) {

	.home .is-style-author-image,
	.is-style-author-image img {
		margin: 0 auto !important; 
	}

}

.wp-block-social-links {
	font-size: var(--wp--preset--font-size--large) !important;
	gap: 12px !important;
	margin-bottom: 0;
}

.wp-block-social-link {
	background: none !important;
	border: 1px solid var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary) !important;
}

.wp-block-social-link a {
	height: 30px;
    width: 30px;
}

/* Block Styles
--------------------------------------------- */

.is-style-boxshadow {
	box-shadow: 0 0 20px rgb(0 0 0 / 7%);
	padding: 20px;
}

.is-style-kicker {
	display: inline-block;
	font-family: var(--wp--preset--font-family--primary);
	font-size: var(--wp--preset--font-size--xx-small);
	font-family: var(--wp--preset--font-family--secondary);
	letter-spacing: 0.075em;
	margin-bottom: 15px;
	position: relative;
	text-transform: uppercase;
}

.is-style-kicker::after {
    background-color: var(--wp--preset--color--primary);
    content: '';
    height: 1px;
    position: absolute;
    right: -55px;
    top: 48%;
    width: 50px;
}

.is-style-kicker.has-background {
	display: table;
	padding: 2px 8px;
}

p.is-style-no-margin,
.is-style-no-margin,
.wp-block-column.is-style-no-margin,
.wp-block-image.is-style-no-margin {
	margin: 0;
}

ol.is-style-no-margin,
ul.is-style-no-margin,
.is-style-no-margin ul,
.wp-block-query.is-style-no-margin ul {
	margin-bottom: 0;
}

/* Buttons
--------------------------------------------- */

.wp-block-button__link {
	-webkit-appearance: none;
	cursor: pointer;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	width: auto;
}

.wp-block-button__link:focus,
.wp-block-button__link:hover {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--background);
	opacity: 0.8;
	text-decoration: none;
}

.has-secondary-background-color .wp-block-button__link:focus,
.has-secondary-background-color .wp-block-button__link:hover {
	box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}

.is-style-outline>.wp-block-button__link:not(.has-text-color),
.wp-block-button__link.is-style-outline:not(.has-text-color) {
	border: 1px solid var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary) !important;
	padding: 11px 18px;
}

.is-style-outline>.wp-block-button__link:not(.has-text-color):focus,
.is-style-outline>.wp-block-button__link:not(.has-text-color):hover,
.wp-block-button__link.is-style-outline:not(.has-text-color):focus,
.wp-block-button__link.is-style-outline:not(.has-text-color):hover {
	border: 1px solid var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary);
	opacity: 0.7;
}

/* Caption
--------------------------------------------- */

figcaption,
.gallery-caption,
.wp-caption-text {
	background-color: var(--wp--preset--color--background);
	font-size: var(--wp--preset--font-size--x-small);
	margin: 0 !important;
	padding: 10px;
	text-align: center;
}

figcaption.block-editor-rich-text__editable.blocks-gallery-caption.wp-element-caption.rich-text {
	max-width: calc(768px - 20px);
}

/* Columns
--------------------------------------------- */

.wp-block-columns.alignfull {
	padding: 0 20px;
}

.wp-block-columns {
	gap: 30px 20px !important;
}

.wp-block-columns.is-style-column-gapless {
	gap: 0 !important;
}

.wp-block-columns.is-style-column-gap-10 {
	gap: 30px 10px !important;
}

.wp-block-columns.is-style-column-gap-20 {
	gap: 30px 20px !important;
}

.wp-block-columns.is-style-column-gap-30 {
	gap: 30px !important;
}

.wp-block-columns.is-style-column-gap-40 {
	gap: 30px 40px !important;
}

.wp-block-columns.is-style-column-gap-50 {
	gap: 30px 50px !important;
}

.wp-block-columns.is-style-column-gap-60 {
	gap: 30px 60px !important;
}

.wp-block-columns.is-style-column-gap-70 {
	gap: 30px 70px !important;
}

@media (min-width: 600px) and (max-width: 780px) {

	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:not(:only-child) {
		flex-basis: unset !important;
	}

	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column:nth-child(2n) {
		margin-left: 0;
	}

}

/* Cover
---------------------------------------------*/

.wp-block-cover {
	padding-right: 10px;
	padding-left: 10px;
}

@media only screen and (min-width: 360px) {

	.wp-block-cover {
		padding-right: 20px;
		padding-left: 20px;
	}

}

/* Custom Call Out Block Styles
--------------------------------------------- */

div[class*=" is-style-call-out-"].wp-block-group {
	background-color: var(--wp--preset--color--quaternary);
	border: 0;
	border-left: 2px solid var(--wp--preset--color--primary);
	margin-bottom: 30px;
	overflow: unset;
	padding: 20px;
	position: relative;
}

div[class*=" is-style-call-out-"].wp-block-group>*:last-child {
	margin-bottom: 0 !important;
}

div[class*=" is-style-call-out-"]::before {
	background-size: contain;
	border: 2px solid var(--wp--preset--color--background);
	border-radius: 50%;
	box-sizing: inherit;
	content: '';
	height: 26px;
	left: -13px;
	position: absolute;
	top: 21px;
	width: 26px;
}

.is-style-call-out-note::before {
	background: url('../svg/icon-note.svg');
}

html div[class*=" is-style-call-out-subscribe"].wp-block-group {
	border-left: 0;
	border-top: 2px solid var(--wp--preset--color--primary);
	margin-top: 60px;
	padding-top: 40px !important;
	text-align: center;
}

html div[class*=" is-style-call-out-subscribe"]::before {
	background: url('../svg/icon-subscribe.svg');
	height: 52px !important;
	left: calc(50% - 26px) !important;
	top: -26px !important;
	width: 52px !important;
}

.is-style-call-out-tip::before {
	background: url('../svg/icon-tip.svg');
}

@media only screen and (min-width: 360px) {

	div[class*=" is-style-call-out-"].wp-block-group {
		padding: 25px;
	}

	div[class*=" is-style-call-out-"]::before {
		height: 32px;
		left: -16px;
		top: 22px;
		width: 32px;
	}

}

@media (min-width: 411px) {

	div[class*=" is-style-call-out-"].wp-block-group {
		padding: 30px;
	}

	div[class*=" is-style-call-out-"]::before {
		height: 36px;
		left: -18px;
		top: 25px;
		width: 36px;
	}

}

@media only screen and (min-width: 1280px) {

	div[class*=" is-style-call-out-"].wp-block-group {
		padding: 30px 30px 30px 35px !important;
	}

	div[class*=" is-style-call-out-"]::before {
		height: 48px;
		left: -24px;
		top: 20px;
		width: 48px;
	}

}

/* Typography
--------------------------------------------- */

b,
strong {
	font-weight: var(--wp--custom--font-weight--medium);
}

/* Headings
--------------------------------------------- */

h1, h2, h3, h4, h5, h6 {
    font-family: var(--wp--preset--font-family--secondary);
    font-weight: var(--wp--custom--font-weight--medium);
    line-height: var(--wp--custom--line-height--heading);
    margin-top: 0px;
    margin-bottom: 20px;
}

h1.has-background,
h2.has-background,
h3.has-background,
h4.has-background,
h5.has-background,
h6.has-background {
	padding: 20px;
}

@media only screen and (min-width: 360px) {

	h1.has-background,
	h2.has-background,
	h3.has-background,
	h4.has-background,
	h5.has-background,
	h6.has-background {
		padding: 20px 25px;
	}

}

@media only screen and (min-width: 768px) {

	h1.has-background,
	h2.has-background,
	h3.has-background,
	h4.has-background,
	h5.has-background,
	h6.has-background {
		padding: 20px 30px;
	}

}

/* Links
--------------------------------------------- */

.has-foreground-background-color a,
.has-primary-background-color a {
	color: var(--wp--preset--color--background);
}

.has-foreground-background-color a:focus-visible,
.has-primary-background-color a:focus-visible {
	outline-color: var(--wp--preset--color--background);
}

.is-style-no-link-underline a {
	text-decoration: none;
}

.is-style-no-link-underline.has-foreground-color a {
	color: var(--wp--preset--color--foreground);
}

.is-style-no-link-underline a:focus,
.is-style-no-link-underline a:hover {
	text-decoration: underline;
	text-decoration-thickness: 2px;
}

.is-style-no-link-underline.has-foreground-color a:focus,
.is-style-no-link-underline.has-foreground-color a:hover {
	color: var(--wp--preset--color--secondary);
}

/* Paragraphs & Groups
--------------------------------------------- */

.wp-block-group.alignfull {
	padding-left: 10px;
	padding-right: 10px;
}

p.is-style-boxshadow,
p.has-background,
.wp-block-group.has-background:not(.alignfull, .alignwide) {
	padding: 20px;
}

.wp-block-group.has-background:not(.alignfull, .alignwide) {
	margin-bottom: 30px;
}

.wp-block-column>*:last-child,
.wp-block-group.has-background>*:last-child,
.wp-block-group.is-style-boxshadow>*:last-child {
	margin-bottom: 0 !important;
}

.block-editor-rich-text__editable.has-background.wp-block-heading,
.block-editor-rich-text__editable.has-background.wp-block-paragraph {
	max-width: calc(768px - 60px);
}

@media only screen and (min-width: 360px) {

	.wp-block-group.alignfull {
		padding-left: 15px;
		padding-right: 15px;
	}

	p.is-style-boxshadow,
	p.has-background,
	.wp-block-group.has-background:not(.alignfull, .alignwide) {
		padding: 25px;
	}

}

@media only screen and (max-width: 600px) {

	.has-mobile-text-align-center {
		text-align: center;
	}

}

@media only screen and (max-width: 781px) {

	.has-tablet-text-align-center {
		text-align: center;
	}

}

@media only screen and (min-width: 768px) {

	.wp-block-group.alignfull {
		padding-left: 20px;
		padding-right: 20px;
	}

	p.is-style-boxshadow,
	p.has-background,
	.wp-block-group.has-background:not(.alignfull, .alignwide) {
		padding: 30px;
	}

}

/* Query Loop
--------------------------------------------- */

.wp-block-query ul {
	flex-grow: 1;
	margin-bottom: 0;
	padding-left: 0;
}

.wp-block-query ul>li {
	list-style-type: none;
	margin: 0;
}

.wp-block-post-template.is-flex-container,
.wp-block-query-loop.is-flex-container {
	flex-grow: 1;
	gap: 20px 10px;
	justify-content: space-between;
}

.wp-block-query .wp-block-post-featured-image {
	margin-bottom: 8px;
}

.wp-block-query .wp-block-post-featured-image a {
	display: unset;
}

.wp-block-query .wp-block-post-title {
	font-size: var(--wp--preset--font-size--medium);
	margin-bottom: 10px;
}

.wp-block-query .wp-block-post-title a {
	color: var(--wp--preset--color--foreground);
	text-decoration: none;
}

.wp-block-query .wp-block-post-title a:focus,
.wp-block-query .wp-block-post-title a:hover {
	color: var(--wp--preset--color--primary);
	text-decoration: underline;
}

.wp-block-post-excerpt__excerpt {
	margin-bottom: 20px;
	max-width: 760px;
}

.wp-block-post-excerpt__more-text {
	margin-bottom: 0;
}

.wp-block-post-excerpt__more-link {
	-webkit-appearance: none;
	background-color: var(--wp--preset--color--primary);
    border-radius: 3px;
    border-color: var(--wp--preset--color--primary);
    border-width: 0;
    border-style: solid;
    color: var(--wp--preset--color--background);
	cursor: pointer;
    font-family: var(--wp--preset--font-family--secondary);
    font-size: var(--wp--preset--font-size--small);
	line-height: 1;
    padding-top: 10px;
    padding-right: 18px;
    padding-bottom: 10px;
    padding-left: 18px;
	text-decoration: none;
	white-space: normal;
    width: auto;
}

.wp-block-post-excerpt__more-link:focus, 
.wp-block-post-excerpt__more-link:hover {
    opacity: 0.8;
    text-decoration: none;
}

.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li,
.wp-block-query-loop.is-flex-container.is-flex-container.columns-4>li {
	width: calc(50% - 10px);
}

@media (min-width: 360px) {

	.wp-block-post-template.is-flex-container,
	.wp-block-query-loop.is-flex-container {
		gap: 20px 15px;
	}

}

@media (max-width: 600px) {

.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid {
	gap: 20px 15px;
    grid-template-columns: 1fr 1fr;
}

}

@media (min-width: 768px) {

	.wp-block-post-template.is-flex-container,
	.wp-block-query-loop.is-flex-container {
		gap: 20px;
	}

}

@media (max-width: 780px) {

	.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li,
	.wp-block-query-loop.is-flex-container.is-flex-container.columns-2>li {
		width: calc(50% - 10px);
	}

}

@media (min-width: 781px) {

	.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li,
	.wp-block-query-loop.is-flex-container.is-flex-container.columns-4>li {
		width: calc(25% - 15px);
	}

}

/* @media (max-width: 439px) {

	.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li,
	.wp-block-query-loop.is-flex-container.is-flex-container.columns-2>li {
		width: 100%;
	}

} */

/* Quotes
--------------------------------------------- */

blockquote,
.wp-block-quote,
.wp-block-quote.is-style-plain {
	background-color: var(--wp--preset--color--quaternary);
	border: 0;
	border-left: 2px solid var(--wp--preset--color--primary);
	margin-bottom: 30px;
	padding: 20px;
	position: relative;
}

blockquote::before,
.wp-block-quote::before {
	background: url('../svg/icon-quote.svg');
	background-size: contain;
	border: 2px solid var(--wp--preset--color--background);
	border-radius: 50%;
	box-sizing: inherit;
	content: '';
	height: 26px;
	left: -13px;
	position: absolute;
	top: 21px;
	width: 26px;
}

@media (min-width: 360px) {

	blockquote,
	.wp-block-quote,
	.wp-block-quote.is-style-plain {
		padding: 25px;
	}

	blockquote::before,
	.wp-block-quote::before {
		height: 32px;
		left: -16px;
		top: 22px;
		width: 32px;
	}

}

@media (min-width: 411px) {

	blockquote,
	.wp-block-quote,
	.wp-block-quote.is-style-plain {
		padding: 30px;
	}

	blockquote::before,
	.wp-block-quote::before {
		height: 36px;
		left: -18px;
		top: 26px;
		width: 36px;
	}

}

.wp-block-quote p:last-of-type {
	margin-bottom: 0;
}

.wp-block-pullquote blockquote {
	border: 0;
	margin: 0;
}

.wp-block-pullquote blockquote::before,
.wp-block-quote.is-style-plain::before {
	background: none;
	content: none;
}

.wp-block-pullquote cite,
.wp-block-quote cite {
	display: block;
	font-size: var(--wp--preset--font-size--small);
	margin-top: 15px;
	opacity: 0.8;
	text-align: inherit;
}

/* Separator
--------------------------------------------- */

.wp-block-separator {
	border-bottom: 1px solid;
	opacity: 1;
}

/* Ad Columns
--------------------------------------------- */

@media (max-width: 643px) {

	.home .wp-block-columns.ad-columns {
		display: grid;
		gap: 15px !important;
    	grid-template-columns: 1fr 1fr;
	}


}

@media (min-width: 644px) and (max-width: 1440px) {

	.wp-block-columns.ad-columns {
		flex-wrap: wrap !important;
		gap: 20px !important;
	}

	.wp-block-columns.ad-columns .wp-block-column {
		flex-basis: unset !important;
		width: calc(50% - 10px) !important;
	}

	.wp-block-columns.ad-columns .is-style-author-block .wp-block-social-links {
		display: none;
	}

}