/*
Theme Name:     Harper
Theme URI:      http://shop.restored316designs.com/themes
Template:       kadence
Author:         Restored 316 // Lauren Dierschke
Author URI:     http://shop.restored316designs.com/themes
Description:    A mobile responsive WordPress theme built for the Kadence Framework by Lauren Dierschke of Restored 316.
Version:        1.0.0
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/

/* Font Face
------------------------------------------------------------ */

@font-face {
	font-display: swap;
	font-family: 'Serif';
	font-style: normal;
	font-weight: 400;
	src: url('fonts/Butler.woff') format('woff');
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


/* Base / Theme
------------------------------------------------------------ */

.entry-hero.post-hero-section .entry-header {
	max-width: 842px;
}

.entry-hero-container-inner {
	padding:  15px 0;
}

.focus-menu-item a {
	background: url(images/wavyline.svg) bottom center no-repeat;
	background-size: 100%;
}

h1.archive-title {
	font-size: 40px;
}

.kb-posts .entry-header {
	margin-bottom: 0;
}

.loop-entry .entry-content-wrap {
	padding: 1.5rem;
}

.single-post.content-title-style-above .post-hero-section .entry-hero-container-inner {
	padding: 30px 0;
}

.site-main-header-wrap.site-header-row-container.kadence-sticky-header.item-is-fixed.item-is-stuck {
	box-shadow: 0 2px 10px rgba(214, 214, 214, .25);
}

span.dropdown-nav-toggle {
    display: none !important;
}

.nav-drop-title-wrap {
    padding-right: 0 !important;
}

.single-post .entry.single-entry h2 {
	font-size: 35px;
}


/* Buttons / Links
------------------------------------------------------------ */

a.post-more-link {
	background: var(--global-palette-btn-bg-hover);
	color: var(--global-palette-btn-hover) !important;
	display: inline-block;
	font-family: var(--global-primary-nav-font-family);
	font-size: 11px !important;
	font-weight: normal !important;
	letter-spacing: .18em !important;
	margin: 10px auto 8px;
	padding: 12px 22px !important;
}

a.post-more-link:hover {
	background: var(--global-palette-btn-bg);
	color: var(--global-palette-btn) !important;
}

.wp-block-kadence-posts a.post-more-link .kadence-svg-iconset {
	display: none;
}


/* Entry / Post Layout
------------------------------------------------------------ */

.grid-lg-col-1.item-image-style-beside.half article.loop-entry.has-post-thumbnail:not(.kb-post-no-image),
.grid-lg-col-1.item-image-style-beside article.loop-entry.has-post-thumbnail:not(.kb-post-no-image),
.kt-feat-image-align-left {
	align-items: center;
}

@media screen and (min-width: 768px) {
	.grid-lg-col-1.item-image-style-beside.half article.loop-entry.has-post-thumbnail:not(.kb-post-no-image) {
		align-items: center;
		display: grid;
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 992px) {
	.archive .grid-cols,
	.grid-cols {
		column-gap: 1rem !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		row-gap: 1rem !important;
	}

	.full-post .wp-block-post-template.is-flex-container li {
		width: 100%;
	}

	.grid-cols.full-post {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.wp-block-post-template.is-flex-container li {
		width: 46%;
	}
}

@media (max-width: 767px) {
	.loop-entry .entry-content-wrap {
		padding: 0.5rem !important;
	}
}


/* Gallery Slider
------------------------------------------------------------ */

.entry-related-carousel .carousel-item {
	padding: 5px;
}

.entry-related-carousel .splide__arrow,
.kt-blocks-carousel .kb-splide .splide__arrow,
.kt-post-grid-layout-carousel .kb-splide .splide__arrow {
	background: url(images/next.svg) center no-repeat;
	background-size: 55px 21px;
	display: inline-flex;
	align-items: center;
	height: 21px;
	justify-content: center;
	line-height: 0;
	opacity: 100 !important;
	transform: translateY(0);
	transition: transform 0.3s ease;
	vertical-align: middle;
	width: 55px;
	will-change: transform;
}

.entry-related-carousel .splide__arrow--next:hover,
.kt-blocks-carousel .splide__arrow--next:hover,
.kt-post-grid-layout-carousel .splide__arrow--next:hover {
	transform: translateX(5px);
}

.entry-related-carousel .splide__arrow--prev,
.kt-blocks-carousel .kb-splide .splide__arrow.splide__arrow--prev,
.kt-post-grid-layout-carousel .kb-splide .splide__arrow.splide__arrow--prev {
	background: url(images/back.svg) center no-repeat !important;
	background-size: 55px 21px !important;
}

.entry-related-carousel .splide__arrow--prev:hover,
.kt-blocks-carousel .splide__arrow--prev:hover,
.kt-post-grid-layout-carousel .splide__arrow--prev:hover {
	transform: translateX(-5px);
}

.entry-related-carousel .splide__arrow svg,
.kt-blocks-carousel .kb-splide .splide__arrow svg,
.kt-post-grid-layout-carousel .kb-splide .splide__arrow svg {
	display: none;
}

.entry-related-carousel .splide__arrow--next {
	right: -30px !important;
}

.entry-related-carousel .splide__arrow--prev {
	left: -30px !important;
}

.kt-blocks-carousel {
	padding-left: 0px;
	padding-right: 0px;
}

.kt-blocks-carousel .splide__track {
	padding-left: 0px !important;
	padding-right: 0px !important;
}

.kt-blocks-carousel .splide__arrow--next {
	right: -30px !important;
}

.kt-blocks-carousel .splide__arrow--prev {
	left: -30px !important;
}

.kt-post-grid-layout-carousel {
	padding-left: 0px;
	padding-right: 0px;
}

.kt-post-grid-layout-carousel .splide__arrow--next {
	right: -30px !important;
}

.kt-post-grid-layout-carousel .splide__arrow--prev {
	left: -30px !important;
}


/* Header & Search
------------------------------------------------------------ */

.custom-inline-search {
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	font-size: 16px;
	opacity: 0;
	overflow: hidden;
	padding: 8px 0;
	pointer-events: none;
	position: absolute;
	right: 40px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.3s ease;
	width: 0;
	z-index: 9999;
}

.search-toggle-open-container .search-toggle-open {
	border-radius: 100%;
}

.site-header-bottom-section-right,
.site-header-main-section-right {
	position: relative;
}

.wp-block-search .wp-block-search__input,
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper,
.wp-block-search__button,
input[type=search] {
	border-color: var(--global-palette3);
	border-radius: 100px;
}

body.search-active .custom-inline-search {
	opacity: 1;
	padding: 8px 12px;
	pointer-events: auto;
	width: 250px;
}


/* Kit / ConvertKit
------------------------------------------------------------ */

.convertkit-button {
	width: 300px;
}

form.formkit-form[data-format="inline"] {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.formkit-form .formkit-button > span,
.formkit-form .formkit-submit > span {
	border-radius: 0px !important;
	padding: 9px 24px !important;
}

.formkit-form .formkit-input {
	border-radius: 0px !important;
	padding: 10px !important;
}

.formkit-form[min-width~="700"] .formkit-fields[data-stacked="false"] .formkit-submit,
.formkit-form[min-width~="800"] .formkit-fields[data-stacked="false"] .formkit-submit {
	border-radius: 0px !important;
}

.formkit-form[min-width~="700"] [data-style="clean"],
.formkit-form[min-width~="800"] [data-style="clean"] {
	padding: 0 !important;
	padding-top: 0 !important;
}

.wp-block-convertkit-form {
	margin: 0 !important;
	padding: 0 !important;
}

#convertkit-restrict-content p,
#convertkit-restrict-content-modal p {
	margin: 0 !important;
}

@media only screen and (min-width: 482px) {
	form.formkit-form[data-format="inline"] {
		margin-bottom: 0;
	}
}

.formkit-powered-by-convertkit-container {
	display: none !important;
}

/* Marquee / Scrolling Text
------------------------------------------------------------ */

@keyframes marquee-left {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
	}
}

p.scrolling-text {
	animation: marquee-left 75s linear infinite;
	display: inline-block;
	padding-left: 100%;
	white-space: nowrap;
}


/* Pagination
------------------------------------------------------------ */

.pagination {
	text-align: center;
}

.pagination .page-numbers {
	border-radius: 0;
	border-width: 1px;
}


/* Podcast Lists / Badges
------------------------------------------------------------ */

.kb-posts.grid-cols.podcast-episodes {
	column-gap: 1rem;
	row-gap: 1rem;
}

.kb-posts.podcast .post-thumbnail {
	display: block;
	position: relative;
}

.kb-posts-style-boxed.podcast li {
	border-bottom: 1px solid #000;
	padding-bottom: 1.5rem;
}

.kb-posts.podcast .post-thumbnail::after {
	background-color: var(--global-palette9);
	background-image: url(images/play-button-arrowhead.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 10px 10px;
	border-radius: 6px;
	bottom: 8px;
	box-shadow: 0 2px 6px rgba(0,0,0,.15);
	content: "";
	height: 22px;
	opacity: 0.9;
	pointer-events: none;
	position: absolute;
	right: 8px;
	transition: transform 0.25s ease, opacity 0.25s ease, background-color 0.25s ease;
	width: 22px;
}

.kb-posts.podcast .post-thumbnail:hover::after {
	background-color: var(--global-palette2);
	opacity: 1;
	transform: scale(1.15);
}

.kb-posts.podcast-episodes .entry-title a {
	align-items: center;
	display: inline-flex;
	gap: 20px;
	text-decoration: none;
}

.kb-posts.podcast-episodes .entry-title a::before {
	background: no-repeat center/contain url("images/microphone.svg");
	content: "";
	flex: 0 0 15px;
	height: 15px;
	width: 15px;
}

.kb-posts.podcast-episodes .entry-title a:hover {
	transform: translateY(-1px);
}

.kb-posts.podcast-episodes .kb-post-list-item {
	border-bottom: 1px solid var(--global-palette8);
	padding: 14px 0;
}

.kb-posts.podcast-episodes .kb-post-list-item:last-child {
	border-bottom: 0;
}

/* Scrolling Images on Home
------------------------------------------------------------ */

@keyframes scroll-down {
	0% {
		transform: translateY(-50%);
	}
	100% {
		transform: translateY(0);
	}
}

@keyframes scroll-up {
	0% {
		transform: translateY(0);
	}
	100% {
		transform: translateY(-50%);
	}
}

@keyframes scroll-up-offset {
	0% {
		transform: translateY(0);
	}
	100% {
		transform: translateY(-25%);
	}
}

.scroll-down .kb-gallery-ul {
	animation: scroll-down 30s linear infinite;
}

.scroll-up .kb-gallery-ul {
	animation: scroll-up 30s linear infinite;
}

.scroll-up-offset .kb-gallery-ul {
	animation: scroll-up-offset 30s linear infinite;
}

.scroll-down,
.scroll-up {
	max-height: 600px;
	overflow: hidden;
}

.scroll-down .kb-gallery-ul,
.scroll-up .kb-gallery-ul {
	display: flex;
	flex-direction: column;
}


/* Subcategory Menu (Archives)
------------------------------------------------------------ */

.cat-submenu {
	flex: 1 1 auto;
}

.cat-submenu ul {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.cat-submenu li {
	margin: 0;
}

.cat-submenu-wrapper {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
	margin-top: 30px;
}

.cat-submenu-wrapper .filter {
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--global-palette3);
	display: inline-block;
	flex: 0 0 auto;
	font-family: 'JetBrains Mono', monospace;
	font-size: 11px;
	letter-spacing: 0.1em;
	line-height: 1.6;
	padding: 0;
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

.cat-submenu-wrapper .filter.is-current {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 8px;
}

.cat-submenu-wrapper .filter.is-parent {
	font-family: var(--global-body-font-family);
	font-weight: 600;
}

.cat-submenu-wrapper .filter:focus,
.cat-submenu-wrapper .filter:hover {
	text-decoration: underline;
	text-underline-offset: 2px;
}

.cat-submenu-text {
	background: var(--global-palette3);
	color: var(--global-palette9);
	flex: 0 0 auto;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-right: 35px;
	padding: 9px 10px 9px 15px;
	position: relative;
	text-align: center;
	text-transform: uppercase;
}

.cat-submenu-text::after {
	border-bottom: 18px solid transparent;
	border-left: 12px solid var(--global-palette3);
	border-top: 18px solid transparent;
	content: "";
	position: absolute;
	right: -12px;
	top: 50%;
	transform: translateY(-50%);
}


/* WooCommerce
------------------------------------------------------------ */

.single-content ul.wc-block-product-template {
	padding-left: 0;
}

.single-post .entry.single-entry h2 {
	font-size: 35px;
}

.wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-onsale,
.woocommerce span.onsale {
	background-color: var(--global-palette6);
	color: var(--global-palette9);
}

.wc-block-product-filter-price-slider__content {
	padding: 5px;
}

.wc-block-product-template__responsive li {
	padding: 10px;
}

.woocommerce .woocommerce-message {
	background: var(--global-palette8);
	border: none;
}

.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button {
	padding: 10px 20px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	border-bottom: 2px solid var(--global-palette8);
}

.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li.active {
	border-width: 1px;
}

.wp-element-button {
	font-size: 13px;
}

@media screen and (max-width: 719px) {
	.woocommerce div.product .woocommerce-tabs {
		border-width: 0px;
	}

	.woocommerce div.product .woocommerce-tabs .panel {
		padding-left: 0;
		padding-right: 0;
	}

	.woocommerce div.product .woocommerce-tabs ul.tabs li {
		display: inline-table;
	}

	.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li {
		border-bottom: 1px solid var(--global-palette7);
	}
}
