/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.calendly-popup {
	min-width: 100% !important;
}

.elementor-kit-6 {
	font-size: clamp(16px, 1.5vw, 18px) !important;
}

.font-heading {
	font-family: "Kiona", Sans-serif;
}

body {
	overflow-x: hidden;
}

.elementor-button {
	font-size: 16px;
}

b,
strong {
	font-weight: 700;
}

.e-con.e-parent {
	overflow: hidden;
}

p {
	margin-bottom: 1.25rem;
}

p:not(.vi-widget-title):last-child {
	margin-bottom: 0 !important;
}

@media only screen and (min-width:1025px) {
	.elementor-button {
		font-size: 18px;
	}
}

/* Forms */
input[type="text"],
input[type="email"],
textarea,
input[type="submit"],
button[type="submit"] {
	display: block;
	width: 100%;
	font-family: "Helvetica", Sans-serif;
}

input[type="text"],
input[type="email"],
select {
	background-color: #fff;
	padding-left: 25px;
	padding-right: 25px;
	height: 60px;
	font-weight: 300;
}

textarea {
	background-color: #fff;
	resize: none;
	padding: 15px 25px;
	height: 160px;
	font-weight: 300;
}

input[type="text"],
input[type="email"],
textarea,
select {
	border-width: 2px;
	border-style: solid;
	border-color: var(--vi-secondary-color);
	border-radius: 25px;
}

input[type="submit"],
button[type="submit"] {
	height: 60px;
	background-color: var(--vi-primary-color);
	color: var(--vi-white-color);
	padding-left: 15px;
	padding-right: 15px;
	border-radius: 50px;
	border: none;
	transition: all .2s linear;
}

input[type="submit"]:hover,
button[type="submit"]:hover {
	background-color: var(--vi-primary-color-hover);
}


input[type="submit"],
button[type="submit"] {
	font-weight: 700 !important;
}

@media only screen and (min-width:768px) {

	input[type="submit"],
	button[type="submit"] {
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
	}

}

.elementor-editor-active .vi-elementor-editor-visibilty-fix {
	visibility: visible !important;
	opacity: 1 !important;
}

.hero-content-bg-style-2 {
	background-color: rgba(255, 255, 255, 0.80);
	border-radius: 0 25px 25px 0;
	padding: 25px;
	left: -20px;
	width: calc(100vw - 20px);
}

@media only screen and (max-width:1024px) {
	.hero-content-bg-style-1 {
		width: calc(100vw - 20px);
		background-color: rgba(255, 255, 255, 0.80);
		border-radius: 0 25px 25px 0;
		padding: 25px;
		left: -20px;
	}
}

@media only screen and (min-width:768px) {

	.hero-content-bg-style-1,
	.hero-content-bg-style-2 {
		max-width: 600px;
	}
}

@media only screen and (min-width:1025px) {
	.hero-zoom-bg {
		-webkit-animation-duration: 1s;
		animation-duration: 5s;
		-webkit-animation-duration: 60s;
		animation-duration: 60s;
		-webkit-animation-fill-mode: both;
		animation-fill-mode: both;
		-webkit-animation-name: zoomIns;
		animation-name: zoomIns;
		transition-property: unset;
		transition-timing-function: unset;
		transition-duration: unset
	}

	.hero-content-bg-style-2 {
		width: 100%;
		background-color: rgba(255, 255, 255, 0.80);
		border-radius: 40px;
		padding: 30px;
		left: 0;
	}
}

@keyframes zoomIns {
	100% {
		opacity: 1;
		-webkit-transform: scale(1.5);
		transform: scale(1.5)
	}

	50% {
		opacity: 1
	}
}

@-webkit-keyframes zoomIns {
	100% {
		opacity: 1;
		-webkit-transform: scale(1.5);
		transform: scale(1.5)
	}

	50% {
		opacity: 1
	}
}

.container {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
}



/* Header */
.elementor-location-header {
	position: absolute;
	z-index: 100;
	width: 100%;
}

body:not(.home) .elementor-location-header {
	background-color: #fff;
}

.header-logo {
	flex: 1 0 0;
}

.header-right {
	flex: 0 0 auto;
	width: auto;
}

@media only screen and (min-width:1025px) {

	body.blog .elementor-location-header,
	body.page-id-1050 .elementor-location-header,
	body.page-id-1362 .elementor-location-header {
		background-color: transparent;
	}
}

@media only screen and (min-width:1025px) {
	.page-id-1050 .elementor-location-header #menu-header>li>.vi-nav__link {
		color: var(--vi-white-color);
	}
}

/* Menu Cart */
.elementor-location-header .elementor-menu-cart__toggle .elementor-button {
	display: flex;
	width: 34px;
	height: 34px;
	border: none;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 409.81 512'%3E%3Cpath fill='%23557328' d='M409.7,442.58l-29.32-330.13c-.63-7.33-6.81-12.88-14.03-12.88h-60.31C305.21,44.5,260.19,0,204.9,0s-100.31,44.5-101.14,99.57h-60.31c-7.33,0-13.4,5.55-14.03,12.88L.1,442.58c0,.42-.1.84-.1,1.26,0,37.59,34.45,68.16,76.85,68.16h256.1c42.4,0,76.85-30.57,76.85-68.16,0-.42,0-.84-.1-1.26h0ZM204.9,28.27c39.68,0,72.04,31.83,72.87,71.3h-145.75c.84-39.47,33.19-71.3,72.87-71.3ZM332.96,483.73H76.85c-26.59,0-48.16-17.59-48.58-39.26L56.33,127.95h47.33v42.93c0,7.85,6.28,14.13,14.13,14.13s14.13-6.28,14.13-14.13v-42.93h145.85v42.93c0,7.85,6.28,14.13,14.13,14.13s14.13-6.28,14.13-14.13v-42.93h47.33l28.17,316.52c-.42,21.67-22.09,39.26-48.58,39.26Z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center center;
	transition: all .2s linear;
}

.elementor-location-header .elementor-menu-cart__toggle:hover .elementor-button-icon {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 409.81 512'%3E%3Cpath fill='%23C0754B' d='M409.7,442.58l-29.32-330.13c-.63-7.33-6.81-12.88-14.03-12.88h-60.31C305.21,44.5,260.19,0,204.9,0s-100.31,44.5-101.14,99.57h-60.31c-7.33,0-13.4,5.55-14.03,12.88L.1,442.58c0,.42-.1.84-.1,1.26,0,37.59,34.45,68.16,76.85,68.16h256.1c42.4,0,76.85-30.57,76.85-68.16,0-.42,0-.84-.1-1.26h0ZM204.9,28.27c39.68,0,72.04,31.83,72.87,71.3h-145.75c.84-39.47,33.19-71.3,72.87-71.3ZM332.96,483.73H76.85c-26.59,0-48.16-17.59-48.58-39.26L56.33,127.95h47.33v42.93c0,7.85,6.28,14.13,14.13,14.13s14.13-6.28,14.13-14.13v-42.93h145.85v42.93c0,7.85,6.28,14.13,14.13,14.13s14.13-6.28,14.13-14.13v-42.93h47.33l28.17,316.52c-.42,21.67-22.09,39.26-48.58,39.26Z'/%3E%3C/svg%3E");
}

.elementor-location-header .elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	position: static;
	font-weight: 700;
	text-align: center;
	font-size: 14px;
	background-color: transparent;
	border-radius: 0;
	color: var(--vi-accent-color);
	line-height: 42px;
	transition: all .2s linear;
}

.elementor-location-header .elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle:hover .elementor-button-icon .elementor-button-icon-qty[data-counter] {
	color: var(--vi-primary-color);
}

.elementor-location-header .elementor-menu-cart__toggle .elementor-button .elementor-screen-only {
	display: none !important;
}

.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-mini-cart__empty-message {
	font-size: 16px;
}

@media only screen and (min-width:1025px) {
	.elementor-location-header .elementor-menu-cart__toggle .elementor-button {
		width: 40px;
		height: 40px;
	}

	.elementor-location-header .elementor-menu-cart--items-indicator-bubble .elementor-menu-cart__toggle .elementor-button-icon .elementor-button-icon-qty[data-counter] {
		font-size: 16px;
		line-height: 50px;
	}

	.elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-mini-cart__empty-message {
		font-size: 18px;
	}
}

/* Tabs */
.vi-tabs .e-n-tabs-heading .e-n-tab-title {
	display: inline-flex;
	min-height: 60px;
	text-align: center;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	flex-basis: unset;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.vi-tabs .e-n-tabs-heading .e-n-tab-title:nth-child(2) {
	/* background-color: rgb(192 117 75 / 50%); */
	background-color: var(--vi-primary-color);
	color: var(--vi-white-color);
}

.vi-tabs.elementor-widget-n-tabs .e-n-tab-title[aria-selected=false] {
	background-color: var(--vi-primary-color);
	color: var(--vi-white-color);
}

@media only screen and (min-width:1025px) {
	.vi-tabs .e-n-tabs-heading .e-n-tab-title {
		width: 100%;
		max-width: 360px;
		min-height: 70px;
	}
}

@media only screen and (max-width:1024px) {
	.vi-tabs .e-n-tabs-heading {
		display: flex !important;
		flex-wrap: wrap !important;
		flex-direction: column !important;
		gap: 15px !important;
		margin-bottom: 30px;
	}

	.vi-tabs .e-n-tabs-heading .e-n-tab-title {
		margin: 0 !important;
	}
}

/* Blog Hero */
.vi-category-hero-wrap {
	position: relative;
	height: 400px;
}

.vi-category-hero-wrap__image {
	position: absolute;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	opacity: 0.41;
}

@media only screen and (min-width:1025px) {
	.vi-category-hero-wrap {
		height: 500px;
	}
}

/* Archive */
.vi-category-header__inner {
	display: flex;
	flex-direction: column;
}

.blog .vi-category-header__title {
	color: var(--vi-accent-color);
}

/* Post Card */
.vi-post-card__inner {
	border: 2px solid var(--vi-accent-color);
	border-radius: 25px;
	overflow: hidden;
}

.vi-post-card__image {
	position: relative;
	height: 200px;
	border-bottom: 2px solid var(--vi-accent-color);
	overflow: hidden;
}

.vi-post-card__image img {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
	object-position: center;
	-o-object-position: center;
	transition: all 0.5s linear;
}

.vi-post-card__image img:hover {
	transform: scale(1.025);
	filter: brightness(0.85);
}

.vi-post-card__inner-bottom {
	background-color: var(--vi-white-color);
}

@media only screen and (min-width:1025px) {
	.vi-post-card__inner {
		border-radius: 40px;
	}

	.vi-post-card__image {
		height: 320px;
	}
}

/* Page */
.vi-page-content {
	position: relative;
}

.vi-page-content .container {
	position: relative;
	z-index: 2;
}

.vi-page-content a {
	text-decoration: none;
	color: var(--vi-secondary-color);
}

.vi-page-content a:hover {
	color: var(--vi-accent-color);
}

/* Post Meta */
.vi-post-meta {
	display: flex;
	flex-direction: column;
	align-items: start;
	gap: 10px;
	margin-top: 20px;
}

.vi-post-meta__readtime,
.vi-post-meta__author {
	font-style: italic;
}

.vi-post-meta__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 100%;
	background-color: var(--vi-accent-color);
	padding: 5px;
}

.vi-post-meta__icon svg {
	display: block;
	fill: var(--vi-white-color)
}

.vi-post-meta__author {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 10px;
	font-style: italic;
	flex: 0 0 auto;
	order: -1;
}

.vi-post-card__author-photo {
	display: flex;
	width: 40px;
	height: 40px;
	border-radius: 100%;
	border: 3px solid var(--vi-primary-color);
	overflow: hidden;
}

@media only screen and (min-width:575px) {
	.vi-post-meta {
		flex-direction: row;
		align-items: center;
		gap: 50px;
		margin-bottom: 20px;
	}

	.vi-post-meta__author {
		gap: 15px;
		order: 5;
	}

	.vi-post-card__author-photo {
		width: 56px;
		height: 56px;
	}
}

/* Widgets */
.vi-sidebar {
	height: 100%;
}

.vi-sidebar__inner {
	position: sticky;
	top: 0;
	background-color: #f5f5f5;
	border-radius: 40px;
}

.vi-widget-title,
.vi-sidebar__inner .block-title {
	text-transform: uppercase;
	font-weight: 300;
	font-family: "Kiona", Sans-serif;
	font-size: 28px;
}

.vi-sidebar__inner .block-title {
	margin-bottom: 20px;
}

.vi-sidebar__inner ul {
	list-style: none;
}

.wp-block-post-views-counter-most-viewed-posts ul li {
	display: flex;
	flex-direction: column;
}

.wp-block-categories-list li:not(:last-child) {
	margin-bottom: 0.5rem;
}

.wp-block-post-views-counter-most-viewed-posts ul li:not(:last-child) {
	margin-bottom: 40px;
}

.wp-block-post-views-counter-most-viewed-posts ul li a {
	display: block;
}

.vi-sidebar__inner .post-title {
	font-weight: 700;
	margin-bottom: 6px;
}

.wp-block-post-views-counter-most-viewed-posts ul li a.post-thumbnail {
	display: block;
	height: 250px;
	width: 100%;
	border-radius: 25px;
	border: 2px solid var(--vi-primary-color);
	margin-bottom: 20px;
	position: relative;
	overflow: hidden;
}

.wp-block-post-views-counter-most-viewed-posts ul li a.post-thumbnail:hover {
	border: 2px solid var(--vi-accent-color);
}

.wp-block-post-views-counter-most-viewed-posts ul li a.post-thumbnail img {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
	object-position: center;
	-o-object-position: center;
	transition: all .5s linear;
}

.wp-block-post-views-counter-most-viewed-posts ul li a.post-thumbnail:hover img {
	transform: scale(1.025);
	filter: brightness(0.85);
}

.vi-sidebar__inner .widget_text:not(:last-child) {
	margin-bottom: 40px;
}

@media only screen and (min-width:768px) {
	.wp-block-post-views-counter-most-viewed-posts ul li a.post-thumbnail {
		height: 400px;
	}
}

@media only screen and (min-width:1300px) {
	.wp-block-post-views-counter-most-viewed-posts ul li a.post-thumbnail {
		height: 250px;
	}
}

/* Single */
.vi-post-inner__content {
	padding-top: 40px;
}

.vi-post-inner__content>*:nth-child(1) {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.vi-post-inner__top {
	border: 2px solid var(--vi-accent-color);
	border-radius: 25px;
	overflow: hidden;
}

.vi-post-inner__thumbnail {
	position: relative;
	height: 340px;
	border-bottom: 2px solid var(--vi-accent-color);
}

.vi-post-inner__thumbnail img {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
	object-position: center;
	-o-object-position: center;
}

.vi-post-inner__content>*:not(:last-child) {
	margin-bottom: 1.5rem;
}

.vi-post-inner__text h1 {
	font-family: "Helvetica", Sans-serif;
	font-weight: 700;
}

.vi-post-inner__content h2,
.vi-post-inner__content h3,
.vi-post-inner__content h4,
.vi-post-inner__content h5,
.vi-post-inner__content h6 {
	margin-top: 2.5rem;
}

.vi-post-inner__content h1,
.vi-post-inner__content h2,
.vi-post-inner__content h3,
.vi-post-inner__content h4,
.vi-post-inner__content h5,
.vi-post-inner__content h6 {
	font-family: "Helvetica", Sans-serif;
	font-weight: 700;
}

.vi-post-inner__content h2 {
	font-size: 20px;
}

.vi-post-inner__content h3 {
	font-size: 18px;
}

.vi-post-inner__content h4 {
	font-size: 16px;
}

.vi-post-inner__content h5 {
	font-size: 14px;
}

.vi-post-inner__content h6 {
	font-size: 12px;
}

.vi-post-inner__content ol {
	margin-left: 42px;
}

.vi-post-inner__content a {
	color: var(--vi-accent-color);
	text-decoration: underline;
}

.vi-post-inner__content a:hover {
	text-decoration: none;
}

.vi-post-inner__content blockquote {
	display: block;
	margin: 0;
	padding: 20px;
	background-color: #FEF8F4;
	font-style: italic;
}

.post-views {
	display: none;
}

.vi-post-inner ul:not(.wp-block-latest-posts__list) {
	list-style: none;
	margin-left: 20px;
}

.vi-post-inner ul:not(.wp-block-latest-posts__list) li {
	display: flex;
	align-items: start;
}

.vi-post-inner ul:not(.wp-block-latest-posts__list) li:not(:last-child) {
	margin-bottom: 7px;
}

.vi-post-inner ul:not(.wp-block-latest-posts__list) li::before {
	content: '';
	position: relative;
	display: block;
	width: 11px;
	height: 11px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 471.75 471.76'%3E%3Cpath fill='%23557328' d='M235.88,0C105.6,0,0,105.61,0,235.88s105.6,235.88,235.88,235.88,235.87-105.61,235.87-235.88S366.15,0,235.88,0ZM235.88,356.25c-66.48,0-120.37-53.89-120.37-120.37s53.89-120.37,120.37-120.37,120.36,53.89,120.36,120.37-53.89,120.37-120.36,120.37Z'%3E%3C/path%3E%3C/svg%3E");
	transition: all .2s linear;
	margin-right: 12px;
	flex: 0 0 auto;
	top: 6px;
}

.vi-post-inner ul:not(.wp-block-latest-posts__list) li:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 471.75 471.76'%3E%3Cpath fill='%23C0754B' d='M235.88,0C105.6,0,0,105.61,0,235.88s105.6,235.88,235.88,235.88,235.87-105.61,235.87-235.88S366.15,0,235.88,0ZM235.88,356.25c-66.48,0-120.37-53.89-120.37-120.37s53.89-120.37,120.37-120.37,120.36,53.89,120.36,120.37-53.89,120.37-120.36,120.37Z'%3E%3C/path%3E%3C/svg%3E");
}

@media only screen and (min-width:575px) {
	.vi-post-inner__content {
		padding-top: 30px;
	}
}

@media only screen and (min-width:1025px) {
	.vi-post-inner ul:not(.wp-block-latest-posts__list) li::before {
		top: 8px;
	}
}

@media only screen and (min-width:1025px) {
	.vi-post-inner {
		border-radius: 40px;
	}

	.vi-post-inner__content h2 {
		font-size: 22px;
	}

	.vi-post-inner__content blockquote {
		padding: 50px;
	}
}

@media only screen and (max-width:575px) {
	.vi-post-inner__info {
		display: flex;
		flex-direction: column;
	}

	.vi-post-inner__info .vi-post-meta {
		order: 10;
	}
}

/* Comment Form */
.comment-reply-title,
.title-comments {
	font-family: "Kiona", Sans-serif;
	font-size: 28px;
	margin-bottom: 1rem;
	line-height: 1.3;
}

.comment-form {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}

.comment-form>* {
	flex: 0 0 auto;
	margin: 0;
}

.logged-in-as {
	margin-bottom: 1rem;
}

.comment-notes {
	display: none;
	width: 100%;
}

.comment-form-comment {
	width: 100%;
	margin-bottom: 20px;
}

.comment-form input[type="text"],
.comment-form textarea {
	display: block;
	width: 100%;
	background-color: var(--vi-white-color);
	padding-left: 25px;
	padding-right: 25px;
	color: var(--vi-secondary-color);
}

.comment-form textarea {
	height: 170px;
	resize: none;
	padding-top: 20px;
	padding-bottom: 20px;
}

.comment-awaiting-moderation {
	font-style: italic;
	text-decoration: underline;
}

@media only screen and (min-width:576px) {
	.comment-form {
		flex-direction: unset;
	}

	.comment-form-author {
		width: 70%;
		padding-right: 20px;
	}

	.form-submit {
		width: 30%;
	}
}

@media only screen and (min-width:1025px) {

	.comment-reply-title,
	.title-comments {
		font-size: 32px;
		margin-bottom: 1.5rem;
	}

}

/* Comment List */
.comment-list {
	list-style: none;
}

.comment-list .comment {
	padding: 30px;
	border: 2px solid var(--vi-primary-color);
	border-radius: 25px;
	margin-bottom: 30px;
}

.comment-list .children {
	padding-left: 40px;
}

.comment-list li::marker {
	display: none;
	content: none;
}

.comment-metadata {
	display: flex;
	flex-direction: row;
	gap: 15px;
	align-items: center;
	margin-bottom: 1rem;
}

.comment-metadata__icon {
	display: flex;
	width: 54px;
	height: 54px;
	align-items: center;
	justify-content: center;
	border: 2px solid #844828;
	background-color: var(--vi-primary-color);
	border-radius: 100%;
	overflow: hidden;
}

.comment-metadata__icon:not(.comment-metadata__icon-author) {
	padding: 8px;
}

.comment-metadata__icon img {
	display: block;
	height: 100%;
	width: auto;
}

.comment-metadata__author {
	font-weight: 700;
}

.comment-metadata__time {
	font-size: 14px;
}

.comment-list .reply {
	margin-top: 10px;
}

.comment-list .comment-reply-link {
	text-decoration: underline;
}

.comment-list .comment-reply-link:hover {
	text-decoration: none;
	color: var(--vi-accent-color);
}

.comment-respond {
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.comment-reply-title small {
	font-size: 22px;
	margin-left: 10px;
}

.comment-reply-title small a {
	text-decoration: underline;
}

.comment-reply-title small a:hover {
	text-decoration: none;
	color: var(--vi-accent-color);
}

@media only screen and (min-width:1025px) {

	.comment-list .comment {
		border-radius: 40px;
	}

	.comment-metadata__time {
		font-size: 16px;
	}
}

/* Sidebar */
.vi-course-sidebar {
	overflow: hidden;
}

/* Modal Cart */
.elementor-menu-cart__product-name {
	line-height: 1.5;
	font-size: 16px;
	margin-bottom: 5px;
}

.elementor-menu-cart__product-name a {
	color: var(--vi-secondary-color);
}

.elementor-menu-cart__product-name a:hover {
	color: var(--vi-accent-color);
}

.elementor-menu-cart__product-price {
	color: #a4a4a4;
}

.elementor-menu-cart__product-remove:after,
.elementor-menu-cart__product-remove:before {
	background-color: #a4a4a4;
}

.elementor-menu-cart__product-remove {
	border-color: #a4a4a4;
}

.elementor-menu-cart__subtotal {
	font-size: 16px;
	color: var(--vi-secondary-color);
}

.elementor-menu-cart__footer-buttons {
	display: flex;
	flex-direction: column;
}

.elementor-menu-cart__footer-buttons .elementor-button--view-cart,
.elementor-menu-cart__footer-buttons .elementor-button--checkout {
	background-color: var(--vi-accent-color);
	border-radius: 30px;
}

.elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover,
.elementor-menu-cart__footer-buttons .elementor-button--checkout:hover {
	background-color: var(--vi-accent-color-hover);
}


/* Page - Default */
.site-main-wrap {
	padding-top: 140px;
	padding-bottom: 60px;
	padding-left: 20px;
	padding-right: 20px;
}

.site-main-wrap .site-main__content {
	border: 2px solid var(--vi-accent-color);
	border-radius: 40px;
	padding: 20px;
}

.site-main-wrap .site-main__content .entry-title {
	text-transform: none;
	font-family: "Helvetica", Sans-serif;
	font-weight: 700;
	font-size: 24px;
	margin-bottom: 2rem;
}

@media only screen and (min-width:1025px) {
	.site-main-wrap {
		padding-top: 180px;
		padding-bottom: 80px;
	}

	.site-main-wrap .site-main__content {
		padding: 50px;
	}

	.site-main-wrap .site-main__content .entry-title {
		font-size: 30px;
	}
}

@media only screen and (max-width:767px) {

	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last,
	.woocommerce-page form .form-row-first,
	.woocommerce-page form .form-row-last {
		width: 100%;
		float: none;
	}
}

/* Page - Cart */
.product-name a {
	text-decoration: none;
}

.woocommerce a.remove {
	color: var(--vi-accent-color) !important;
}

.woocommerce a.remove:hover {
	background-color: transparent;
	color: var(--vi-primary-color) !important;
}

.vi-button-style-1 {
	min-height: 60px;
	font-weight: 700;
}

.woocommerce table.shop_table {
	margin: 0;
}

.woocommerce table.shop_table,
.woocommerce table.shop_table td {
	border: none;
}

button[disabled] {
	opacity: 0.5 !important;
	background-color: var(--vi-primary-color) !important;
	cursor: not-allowed !important;
}

.woocommerce #content table.cart td.actions,
.woocommerce table.cart td.actions,
.woocommerce-page #content table.cart td.actions,
.woocommerce-page table.cart td.actions {
	padding: 0;
}

.vi-button-style-1,
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
.order-again a.button,
a.button.wc-backward {
	display: flex;
	min-height: 60px;
	height: 100%;
	width: 100%;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 13px 15px;
	position: relative;
	overflow: hidden;
	transition: all .2s linear;
	font-size: var(--vi-btn-text-size);
	font-weight: var(--vi-text-weight-700);
	line-height: var(--vi-line-height-1-3);
	letter-spacing: 1px;
	white-space: normal;
	border: none;
	border-radius: 50px;
	margin: 0;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
a.button.wc-backward,
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
.order-again a.button {
	color: var(--vi-white-color);
	background-color: var(--vi-accent-color);
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover,
a.button.wc-backward:hover,
.woocommerce #payment #place_order:hover,
.woocommerce-page #payment #place_order:hover,
.order-again a.button:hover {
	color: var(--vi-white-color);
	background-color: var(--vi-accent-color-hover);
}

#add_payment_method .wc-proceed-to-checkout,
.woocommerce-cart .wc-proceed-to-checkout,
.woocommerce-checkout .wc-proceed-to-checkout {
	padding: 0;
}

#add_payment_method .wc-proceed-to-checkout,
.woocommerce-cart .wc-proceed-to-checkout,
.woocommerce-checkout .wc-proceed-to-checkout {
	margin-top: 1rem;
}

.coupon {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	width: 100%;
	float: unset !important;
}

.coupon::before,
.coupon::after {
	display: none !important;
}

.coupon input {
	display: block !important;
	width: 100% !important;
	flex: 1 0 0 !important;
	float: unset !important;
	min-height: 60px;
	border-radius: 50px;
	border-color: var(--vi-secondary-color) !important;
	margin: 0 !important;
	padding: 0 20px !important;
	border-width: 1px;
}

.coupon .vi-button-style-1 {
	flex: 0 0 auto;
	float: unset !important;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
	width: 100%;
	float: none;
}

.cart_totals h2 {
	margin-bottom: 20px;
}

.coupon-error-notice {
	font-size: 16px !important;
}

@media only screen and (min-width:1025px) {

	.vi-button-style-1,
	#add_payment_method .wc-proceed-to-checkout a.checkout-button,
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
	.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
		min-height: 70px;
	}

	.coupon input {
		min-height: 70px;
	}
}

/* Checkount */
.woocommerce-billing-fields h3 {
	margin-bottom: 10px;
}

.woocommerce form .form-row {
	margin-bottom: 0;
	padding: 0 0 15px 0;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
	min-height: 60px;
	border-radius: 20px;
	padding-left: 20px;
	padding-right: 20px;
	font-weight: 300;
}

.select2-container .select2-dropdown,
.select2-container .select2-selection {
	border-radius: 20px;
}

.select2-container .select2-selection--single .select2-selection__rendered {
	display: flex;
	align-items: center;
	min-height: 60px;
	padding-left: 20px;
	padding-right: 20px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
	height: 40px;
	min-height: 40px;
	padding-left: 20px;
	padding-right: 20px;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
	border-color: var(--vi-accent-color);
	background-color: #f9f9f9;
	line-height: 1.7;
	font-weight: 300;
}

.woocommerce-info::before {
	color: var(--vi-accent-color);
}

.woocommerce-checkout-payment {
	margin-top: 20px;
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods {
	padding: 0;
}

.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
	float: unset;
	margin-top: 20px;
}

#ship-to-different-address {
	border-top: none !important;
	cursor: pointer;
	position: relative;
	padding-right: 1.5em;
	margin-bottom: 10px;
}

.woocommerce-shipping-fields hr:first-of-type {
	display: none;
}

#ship-to-different-address label {
	cursor: pointer;
	user-select: none;
}

#ship-to-different-address input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

#ship-to-different-address label span::after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	border-right: 3px solid currentColor;
	border-bottom: 3px solid currentColor;
	position: absolute;
	right: 0.75em;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	transition: transform 0.3s ease;
}

#ship-to-different-address input:checked+span::after {
	transform: translateY(-50%) rotate(-135deg);
}

.woocommerce form .form-row textarea {
	height: 100px !important;
	resize: none;
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}

/* Order Details */
.woocommerce ul.order_details {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 20px;
}

.woocommerce ul.order_details li {
	float: none;
	margin-right: 0;
	border-right: none;
	padding-right: 0;
	margin-left: 0;
	padding-left: 0;
}

.woocommerce ul.order_details::after,
.woocommerce ul.order_details::before {
	display: none;
}

.woocommerce-order-details__title {
	margin-bottom: 10px;
}

.woocommerce table.shop_table th {
	padding: 10px 0;
}

.order-again {
	margin-top: 10px;
}

.order-again a.button,
.button.wc-backward {
	max-width: 340px;
}

.woocommerce-customer-details {
	margin-bottom: 0 !important;
}

.woocommerce-customer-details h2 {
	margin-bottom: 10px;
}

.woocommerce .woocommerce-customer-details address {
	padding: 15px 20px;
}

@media only screen and (min-width:768px) {
	.woocommerce ul.order_details {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
}

@media only screen and (min-width:1025px) {
	.woocommerce ul.order_details {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
	}
}

/* My account */
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button {
	background-color: var(--vi-accent-color);
	color: var(--vi-white-color);
	border-radius: 50px;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button:hover {
	background-color: var(--vi-accent-color-hover);
	color: var(--vi-white-color);
}

a.button:not(.vi-add-to-cart) {
	background-color: var(--vi-accent-color) !important;
	color: var(--vi-white-color) !important;
	border-radius: 50px !important;
}

a.button:not(.vi-add-to-cart):hover {
	background-color: var(--vi-accent-color-hover) !important;
	color: var(--vi-white-color) !important;
}

.woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.woocommerce-MyAccount-navigation a {
	text-decoration: none;
}

.woocommerce-MyAccount-navigation a:hover {
	text-decoration: underline;
}

.woocommerce table.my_account_orders .button {
	background-color: var(--vi-accent-color);
	color: #fff;
}

.woocommerce table.my_account_orders .button:hover {
	background-color: var(--vi-accent-color-hover);
	color: #fff;
}

.woocommerce table.my_account_orders td,
.woocommerce table.my_account_orders th {
	padding: 0;
	border: none !important;
}

.woocommerce table.my_account_orders thead {
	padding-bottom: 10px;
}

.woocommerce table.my_account_orders thead th {
	border-bottom: 1px solid #d6d6d6 !important;
	padding-bottom: 10px !important;
	margin-bottom: 10px;
}

.woocommerce table.my_account_orders tbody td {
	padding-top: 10px;
	padding-bottom: 10px;
}

/* Login */
.woocommerce-form-login .form-row:not(.woocommerce-form-row, .lost_password) {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.woocommerce-form-login .form-row:not(.woocommerce-form-row, .lost_password) .woocommerce-button {
	order: -1;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	line-height: 1.3;
	gap: 10px;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme span {
	flex: 0 0 auto;
}

@media only screen and (max-width:767px) {
	.woocommerce-form-login .form-row:not(.woocommerce-form-row, .lost_password) {
		flex-direction: column;
		gap: 10px;
	}

	.woocommerce-form-login .form-row:not(.woocommerce-form-row, .lost_password) .woocommerce-button {
		margin: 0;
	}

	.lost_password {
		text-align: center;
	}
}

/* Circle on page */
.parallax-circle {
	display: block;
	position: absolute;
	z-index: -1;
	opacity: 0.25;
	transition: transform 0.1s ease-out;
	pointer-events: none;
}

.parallax-circle--one {
	width: 200px;
	height: 200px;
	fill: #557328;
	top: 10%;
	right: -50px;
}

.parallax-circle--two {
	width: 200px;
	height: 200px;
	fill: #557328;
	top: 30%;
	bottom: auto;
	left: -50px;
}

.parallax-circle--three {
	width: 200px;
	height: 200px;
	fill: #C1744B;
	bottom: 50px;
	right: -50px;
}

@media (max-width: 1024px) {
	.parallax-circle {
		transition: none !important;
	}
}

@media only screen and (min-width:1025px) {
	.parallax-circle--one {
		width: 350px;
		height: 350px;
		top: 10%;
		right: 0;
	}

	.parallax-circle--two {
		width: 250px;
		height: 250px;
		top: auto;
		bottom: 30%;
		left: -75px;
	}

	.parallax-circle--three {
		width: 350px;
		height: 350px;
		bottom: 50px;
		right: 29%;
	}
}

@media only screen and (min-width:1600px) {
	.parallax-circle--one {
		right: 5%;
	}
}

/* Register form */
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	border: none;
	padding: 0;
}

/* Elementor Form */
.elementor-field-group .elementor-field-textual {
	border-radius: 20px;
	border-color: var(--vi-secondary-color);
	font-size: 16px;
	color: var(--vi-secondary-color);
}

.elementor-field-group textarea {
	padding: 20px 25px;
}

.elementor-form .elementor-button {
	margin: 0;
}

.elementor-popup-modal .dialog-widget-content {
	border-radius: 40px;
	overflow: hidden;
}

.elementor-popup-modal .elementor-message.elementor-message-success {
	display: none !important;
}

/* Popup form */
.vi-popup-form .elementor-button {
	max-width: 100%;
}