/*
Theme Name: Szemeszter Patika
Theme URI: https://szemeszter.hu/
Template: hello-elementor
Author: meroving
Author URI: https://meroving.com
Version: 2.4.2.1640710602
Updated: 2021-12-28 16:56:42

*/

@media (prefers-reduced-motion: no-preference) {
	@view-transition {
		navigation: auto;
	}
	html {
		interpolate-size: allow-keywords;
	}
}

@media (min-width: 1420px) {
	.page-header .entry-title,
	.site-footer .footer-inner,
	.site-footer:not(.dynamic-footer),
	.site-header .header-inner,
	.site-header:not(.dynamic-header),
	body:not([class*='elementor-page-']) .site-main {
		max-width: 1380px;
	}
}

/* mobile margin */

@media screen and (max-width: 767px) {
	.elementor-location-header + div > div > div > section,
	.elementor-location-footer > div > section {
		padding: 0 20px !important;
	}

	.elementor-location-header + div #hero {
		padding: 0 10px;
	}

	.elementor-location-header + div #slider {
		padding: 0 !important;
	}
}

@media screen and (min-width: 1024px) and (max-width: 1199px) {
	.elementor-location-header + div > div > div > section,
	.elementor-location-footer > div > section {
		padding: 0 30px !important;
	}

	.elementor-location-header + div #hero {
		padding: 0 20px;
	}

	.elementor-location-header + div #slider {
		padding: 0 !important;
	}
}

/* ios bug */

input.elementor-acceptance-field {
	padding: 0 !important;
}

/* buttons */

a.elementor-button:hover,
.elementor-location-header .elementor-nav-menu--main ul li:nth-last-child(1):hover {
	-webkit-transform: translateY(-8px);
	transform: translateY(-8px);
}

/* charts */

.charts-international,
.charts-hungarian {
	width: auto;
	display: table;
	font-family: Fractul;
}

.charts-international tbody {
	min-height: 200px;
}

.charts-hungarian tbody {
	min-height: 150px;
}

.charts-international tbody tr,
.charts-hungarian tbody tr {
	padding: 0 1em;
	justify-content: center !important;
}

.charts-international tr td {
	max-width: 31px;
	border-radius: 46px;
	background: #fadb6d !important;
	-webkit-transition: 0.4s;
	-o-transition: 0.4s;
	transition: 0.4s;
}

.charts-hungarian tr td {
	max-width: 110px;
	border-radius: 20px;
	background: #3ab4f8 !important;
}

.charts-international tbody tr:hover td {
	max-width: 48px;
	background: #ffc279 !important;
}

.charts-international tbody tr td span {
	border: 1px solid #003350;
	border-radius: 10px;
	background: #fff;
	font-weight: 300;
	position: absolute;
	z-index: 1;
	white-space: nowrap;
	padding: 5px;
	text-align: center;
	top: -40px;
}

.charts-international tbody tr:hover td span {
	visibility: visible;
}

.charts-hungarian tbody tr td {
	align-items: center !important;
	flex-direction: column;
	padding-bottom: 10px;
}

.charts-hungarian tbody tr td .top {
	color: #3ab4f8;
	font-size: 1.1111111111em;
	position: absolute;
	top: -40px;
}

.charts-hungarian tbody tr td .middle {
	font-size: 1.3333333333em;
	font-weight: 500;
	color: #fff;
	border-bottom: 1px solid #fff;
	margin-top: auto;
}

.charts-hungarian tbody tr td .bottom {
	font-size: 1em;
	font-weight: 300;
	color: #fff;
}

.charts-international tbody tr:before,
.charts-hungarian tbody tr:before {
	content: ' ';
	width: 10px;
	height: 10px;
	background: #003350;
	position: absolute;
	bottom: -25px;
	border-radius: 10px;
}

.charts-international tbody tr th,
.charts-hungarian tbody tr th {
	font-family: Fractul;
	transform: translateX(-7px) translateY(40px) rotate(-45deg);
	font-weight: 300;
	background: none !important;
	font-size: 0.7777777778em;
}

.charts-hungarian tbody tr th {
	transform: translateX(-35px) translateY(55px) rotate(-45deg);
}

@media screen and (max-width: 1200px) {
	.charts-hungarian tbody tr {
		padding: 0 5px !important;
	}
}

@media screen and (max-width: 767px) {
	.charts-international,
	.charts-hungarian {
		max-width: 95%;
	}

	.charts-international tr td {
		max-width: 15px;
	}

	.charts-international tbody tr:hover td {
		max-width: 24px;
	}

	.charts-hungarian tr td {
		max-width: 52px;
	}

	.charts-international tbody tr th,
	.charts-hungarian tbody tr th {
		font-size: 0.833333333333333em;
	}

	.charts-hungarian tbody tr th {
		min-width: 90px;
	}
}

/* forms */

/* Hide the browser's default checkbox */
.elementor-location-header + div .elementor-field-subgroup input[type='checkbox'] {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.elementor-location-header + div .elementor-field-subgroup span + span {
	margin-left: 2em;
}

/* Create a custom checkbox */
.elementor-location-header + div .elementor-field-subgroup .checkmark {
	position: absolute;
	top: 5px;
	left: 5px;
	height: 20px;
	width: 20px;
	border: 1px solid #003350;
	border-radius: 5px;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

/* On mouse-over, add a grey background color */
.elementor-location-header + div .elementor-field-subgroup .checkmark:hover {
	background-color: #003350;
}

/* When the checkbox is checked, add a blue background */
.elementor-location-header + div .elementor-field-subgroup input:checked ~ label .checkmark {
	background-color: #003350;
}

/* Create the checkmark/indicator (hidden when not checked) */
.elementor-location-header + div .elementor-field-subgroup .checkmark:after {
	content: '';
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.elementor-location-header + div .elementor-field-subgroup input:checked ~ label .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.elementor-location-header + div .elementor-field-subgroup .checkmark:after {
	left: 7px;
	top: 3px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(35deg);
	-ms-transform: rotate(35deg);
	transform: rotate(35deg);
}

/*form footer */

/* Hide the browser's default checkbox */
.elementor-location-footer .elementor-field-subgroup input[type='checkbox'],
.eleform .elementor-field-type-acceptance .elementor-field-subgroup input[type='checkbox'] {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.elementor-location-footer .elementor-field-subgroup span + span,
.eleform .elementor-field-type-acceptance .elementor-field-subgroup span + span {
	margin-left: 2em;
}

/* Create a custom checkbox */
.elementor-location-footer .elementor-field-subgroup .checkmark,
.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark {
	position: absolute;
	top: 3px;
	left: 5px;
	height: 20px;
	width: 20px;
	border: 1px solid #dbe1e4;
	border-radius: 5px;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
	cursor: pointer;
}

.eleform .elementor-field-type-acceptance {
	font-size: 14px;
}

.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark {
	left: 15px;
	border-color: #003350;
}

/* On mouse-over, add a grey background color */
.elementor-location-footer .elementor-field-subgroup .checkmark:hover {
	background-color: #dbe1e4;
}

.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark:hover {
	background-color: #003350;
}

/* When the checkbox is checked, add a blue background */
.elementor-location-footer .elementor-field-subgroup input:checked ~ label .checkmark {
	background-color: #dbe1e4;
}

.eleform .elementor-field-type-acceptance .elementor-field-subgroup input:checked ~ label .checkmark {
	background-color: #003350;
}

.eleform .elementor-field-type-acceptance .elementor-field-subgroup input:checked ~ label .checkmark:hover {
	background-color: #fff;
}

/* Create the checkmark/indicator (hidden when not checked) */
.elementor-location-footer .elementor-field-subgroup .checkmark:after,
.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark:after {
	content: '';
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.elementor-location-footer .elementor-field-subgroup input:checked ~ label .checkmark:after,
.eleform .elementor-field-type-acceptance .elementor-field-subgroup input:checked ~ label .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.elementor-location-footer .elementor-field-subgroup .checkmark:after,
.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark:after {
	left: 7px;
	top: 3px;
	width: 5px;
	height: 10px;
	border: solid #003350;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(35deg);
	-ms-transform: rotate(35deg);
	transform: rotate(35deg);
}

.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark:after {
	border-color: #fff;
}

.eleform .elementor-field-type-acceptance .elementor-field-subgroup .checkmark:hover:after {
	border-color: #003350;
}

/* form */

.eleform a {
	text-decoration: underline !important;
	color: #003350;
}

.eleform a:hover {
	text-decoration: none !important;
}

.eleform .elementor-field-group:not(.elementor-field-type-radio) input,
.eleform select,
.eleform textarea {
	padding: 22px 30px;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}

.eleform .elementor-field-group:not(.elementor-field-type-radio) input::placeholder,
.eleform select::placeholder,
.eleform textarea::placeholder {
	color: rgba(0, 51, 80, 0.4) !important;
}

.eleform input:hover,
.eleform select:hover,
.eleform input:not(.elementor-field-type-radio):focus,
.eleform select:focus,
.eleform textarea:hover,
.eleform textarea:focus {
	border-color: #003350 !important;
}

.eleform .elementor-field-subgroup > .elementor-field-option {
	flex-basis: auto !important;
}

.eleform .elementor-field-group.elementor-field-type-radio {
	border: 0;
}

.eleform .elementor-field-group.elementor-field-type-radio > label {
	width: 100%;
	font-weight: 600;
	margin-bottom: 16px;
}

.eleform .elementor-field-group.elementor-field-type-radio > label + .elementor-subgroup-inline span {
	display: flex;
	flex-direction: row;
}

.eleform .elementor-field-group.elementor-field-type-radio > label + .elementor-subgroup-inline span label {
	font-weight: 400;
	margin-left: 8px;
	line-height: 150%;
}

.eleform .elementor-field-group.elementor-field-type-radio input {
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	margin: 0;
}

.eleform .elementor-field-group.elementor-field-type-radio input:before {
	content: '';
	width: 20px;
	height: 20px;
	display: inline-block;
	border: 1px solid #003350;
	background: transparent;
	padding: 1px;
	-webkit-box-shadow: inset 0px 0px 1px 2px #fff;
	box-shadow: inset 0px 0px 1px 2px #fff;
	-webkit-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
	border-radius: 50%;
	position: relative;
	top: 4px;
}

.eleform .elementor-field-group.elementor-field-type-radio input:checked:before {
	background: #003350;
	border-color: #003350;
}

.eleform .elementor-field-type-html.elementor-col-50,
.eleform .elementor-field-type-html.elementor-col-25 {
	display: flex;
}

.eleform .lighter {
	font-weight: 300;
	font-size: 14px;
	line-height: 20px;
	color: rgba(0, 51, 80, 0.4);
}

.eleform h3 {
	font-weight: 500;
	font-size: 24px;
	line-height: 35px;
}

.eleform .elementor-field-type-submit button {
	background: #fadb6d !important;
	color: #000 !important;
}

.eleform .elementor-field-type-submit button:hover {
	background: #003350 !important;
	color: #fff !important;
}

@media screen and (max-width: 767px) {
	.eleform .elementor-field-group:not(.elementor-field-type-radio) input,
	.eleform select,
	.eleform textarea {
		padding: 20px;
	}

	.eleform .elementor-field-subgroup > .elementor-field-option {
		margin-bottom: 20px;
	}
}

/**********************************************
 ****************    WEBSHOP   ****************
 *********************************************/

/***************************
 ********* GENERAL *********
 **************************/

body {
	font-family: 'Fractul', Sans-serif;
}
body :is(h1, h2, h3, h4, p, address) {
	color: var(--e-global-color-primary);
}

/* woo */
html .woocommerce form .form-row {
	padding: 0;
	margin-bottom: 30px;
}
html .woocommerce form .form-row label {
	line-height: 1.2;
}
html .woocommerce-lost-password .woocommerce form .form-row-first {
	float: none;
	width: 100%;
}

.woocommerce-cart h2,
.woocommerce h3 {
	font-size: 1.25rem;
}
.woocommerce a {
	color: var(--e-global-color-primary);
	&:hover {
		color: var(--e-global-color-secondary);
	}
}

/* Woo buttons */
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce div.product form.cart .single_add_to_cart_button,
body:not(.woocommerce-block-theme-has-button-styles):not(.edit-post-visual-editor) .woocommerce :is(a, button).button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background-color: var(--e-global-color-accent);
	border: 0;
	border-radius: 40px;
	color: #000;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.05px;
	padding: 18px 40px;
	transition: all 0.2s ease;
}
html .woocommerce ul.products li.product .add_to_cart_button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	background-color: var(--e-global-color-secondary);
	color: #fff;
}
html .woocommerce ul.products li.product .add_to_cart_button:hover,
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
body:not(.woocommerce-block-theme-has-button-styles):not(.edit-post-visual-editor) .woocommerce :is(a, button).button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background-color: var(--e-global-color-primary);
	color: #fff;
}

/* WOO Custom checkbox */
.woocommerce-form__label-for-checkbox input[type='checkbox'] {
	position: absolute;
	left: -9999px;
	width: 1px;
}
.woocommerce-form__label-for-checkbox > span {
	cursor: pointer;
	display: block;
	font-weight: 400;
	position: relative;
	left: 36px;
	line-height: 1.4em;
	font-size: 16px;
	margin-bottom: -2em;
}
.woocommerce-form__label-for-checkbox > span:before {
	content: '';
	position: absolute;
	left: -35px;
	top: 0;
	width: 18px;
	height: 18px;
	margin-right: 15px;
	background-color: #fff;
	border: 1px solid var(--e-global-color-primary);
}

.woocommerce-form__label-for-checkbox > span:after {
	border-right: 5px solid var(--e-global-color-secondary);
	border-top: 5px solid var(--e-global-color-secondary);
	border-top-right-radius: 11px;
	display: none;
	width: 13px;
	height: 23px;
	content: '';
	position: absolute;
	top: 8px;
	left: -34px;
	transform: scaleX(-1) rotate(135deg);
	transform-origin: left top;
}

.woocommerce-form__label-for-checkbox input[type='checkbox']:checked + span:after {
	animation: checkm 0.5s ease 0s running;
	display: block;
}
@keyframes checkm {
	0% {
		height: 0;
		width: 0;
	}
	25% {
		height: 0;
		width: 13px;
	}
	50% {
		height: 23px;
		width: 13px;
	}
}
#ship-to-different-address .woocommerce-form__label-for-checkbox > span:after {
	animation: checkm 0.5s ease 0s running;
	display: block;
}
#ship-to-different-address .woocommerce-form__label-for-checkbox .woocommerce-form__input-checkbox:checked + span:after {
	display: none;
}

#reg_accept_pp_field .checkbox > span,
.form-row.tos .checkbox > span,
.form-row.pp .checkbox > span,
#billing_company_check + span {
	margin-bottom: -1.7em;
	width: calc(100% - 36px);
}

/* Woo messages */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	background-color: #f4f7f9;
	border-top: 0;
	border-radius: 28px;
	font-size: 14px;
	padding: 16px 45px 16px 60px;

	a.button {
		background-color: var(--e-global-color-primary);
		border-radius: 40px;
		color: #fff;
		font-weight: 500;
		position: absolute;
		right: 65px;
		top: 14px;
	}
}
.woocommerce-MyAccount-content :is(.woocommerce-error, .woocommerce-info, .woocommerce-message) {
	background-color: #dee7ed;
}
.woocommerce :is(.woocommerce-message, .woocommerce-error, .woocommerce-info)::before {
	height: 30px;
	top: 0.71875rem;
	left: 0.71875rem;
}
.woocommerce .woocommerce-message::before {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34 30"><path d="m34 7.3-4.5-4.5-13.3 13.3c-.3.3-.7.5-1.2.5-.4 0-.9-.2-1.2-.5s-.5-.7-.5-1.2c0-.4.2-.9.5-1.2L9.3 9.2c-1.5 1.5-2.4 3.6-2.4 5.7s.8 4.2 2.3 5.7 3.5 2.3 5.7 2.3c2.1 0 4.2-.9 5.7-2.4L33.9 7.2Z" style="fill:%239edfb8"/><path d="M15 29.3c7.9 0 14.3-6.4 14.3-14.3S22.9.7 15 .7.7 7.1.7 15 7.1 29.3 15 29.3m0 .7c8.3 0 15-6.7 15-15S23.3 0 15 0 0 6.7 0 15s6.7 15 15 15" style="fill:%23003350;fill-rule:evenodd"/></svg>');
	width: 34px;
}
.woocommerce .woocommerce-error::before {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" viewBox="0 0 32.4 30"><defs><style>.st1{fill-rule:evenodd;fill:%23efc0d2}</style></defs><path d="M8.6 23.9H9c0-.1 13.7-3.5 13.7-3.5L14 5.4 4.2 15.5.9 18.4l.4.6c-.1 0-.2.2-.3.3-1 1-1.3 2.6-.5 3.9.7 1.3 2.2 1.9 3.6 1.5.1 0 .3 0 .4-.1l.4.6 1.4-.5 1.3 4.7c.4.8 1.7.8 2.9.2 1.1-.7 1.7-1.8 1.3-2.6l-3.1-3.1Zm-7.2-1.2c-.4-.8-.3-1.7.2-2.3l1.9 3.4c-.8.1-1.7-.3-2.1-1ZM13.8 7.2 21 19.7l-10.7 2.7-4.2-7.2 7.6-7.9ZM5.3 23.9l-3-5.2L5 16.4l.4-.4 3.9 6.7h-.6c0 .1-3.4 1.3-3.4 1.3Zm5.4 3.9c-.1.3-.4.6-.8.8s-.8.3-1.1.3h-.3l-1.2-4.3h.3c0-.1 3.1 3 3.1 3z" style="fill:%23003350;fill-rule:evenodd"/><path d="M21.9 12.9c.8-.5 1.1-1.5.6-2.4-.5-.8-1.5-1.1-2.4-.6l-1.6-2.8c2.4-1.4 5.4-.6 6.8 1.8s.6 5.4-1.8 6.8z" class="st1"/><path d="M25.1 18.4c3.9-2.2 5.2-7.2 3-11.1s-7.2-5.2-11.1-3l-1.6-2.8C20.8-1.6 27.8.2 30.9 5.7c3.1 5.4 1.3 12.4-4.2 15.5z" class="st1"/></svg>');
	width: 32.4px;
}
.woocommerce .woocommerce-info::before {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" viewBox="0 0 22.7 30"><defs><style>.st0{fill:%23003350;fill-rule:evenodd}</style></defs><path d="M11.4 19.5c4.5 0 8.2-3.7 8.2-8.2s-3.7-8.1-8.2-8.1-8.2 3.6-8.2 8.1 3.7 8.2 8.2 8.2m0 3.2c6.3 0 11.3-5.1 11.3-11.3S17.6 0 11.4 0 0 5.1 0 11.3s5.1 11.3 11.3 11.3Z" style="fill-rule:evenodd;fill:%23fadb6d"/><path d="M15.7 25H7.1v-1.1h8.6zM15.7 26.7H7.1v-1.1h8.6zM15.7 28.3H7.1v-1.1h8.6zM13.5 30H9.3v-1.1h4.2zM11.4 6.5c-2.5 0-4.5 2-4.5 4.5H5.8c0-3.1 2.5-5.6 5.6-5.6z" class="st0"/></svg>');
	width: 23px;
	left: 1rem;
}

/*  sárga: fadb6d
	zöld: 9edfb8
	piros: efc0d2
*/

/* close */
.wm-close {
	border-radius: 6px;
	padding: 3px;
	position: absolute;
	right: 18px;
	top: 16px;
	cursor: pointer;
}
.wm-close svg {
	width: 18px;
	transition: filter 0.25s ease;
}
.wm-close:hover svg {
	filter: invert(65%) sepia(29%) saturate(4641%) hue-rotate(175deg) brightness(103%) contrast(94%);
}
.cart-empty.woocommerce-info .wm-close {
	display: none;
}

/***************************
 ********** HEADER *********
 **************************/

:is(.post-type-archive-product, .single-product) #primary {
	margin-top: 32px;
}
.woocommerce-account #content {
	margin-top: 100px;
}
:is(.woocommerce-cart, .woocommerce-checkout, .post-type-archive-product, .single-product, .woocommerce-account) .page-content {
	margin-bottom: 100px;
}

/* no header, no footer! */
:is(.woocommerce-cart, .woocommerce-checkout) footer.elementor {
	display: none;
}

body:not(.logged-in) .nologout {
	display: none !important;
}

/* progress */
.progress-wrp {
	--_prog-grey: #dbe3e9;
	--_prog-blue: #afe6f7;

	background-color: #f4f7f9;
	border-radius: 28px;
	max-width: 680px;
	margin: 30px auto;
	padding: clamp(40px, 4vw, 50px) clamp(24px, 5vw, 60px) 10px;
	width: 100%;
}
.progress-line {
	width: 90%;
	height: 2px;
	margin: 0 auto;
	background-color: var(--_prog-grey);
}
.progress-filler {
	height: 4px;
	background-color: var(--_prog-blue);
	width: 0%;
}
.prog-steps {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
}
.prog-steps p {
	margin: 23px 0 15px;
	position: relative;
	font-size: clamp(14px, 3vw, 16px);
}
.prog-steps p::before {
	background-color: var(--_prog-grey);
	border-radius: 50px;
	outline: 6px solid #f4f7f9;
	content: '';
	position: absolute;
	display: block;
	width: 42px;
	height: 42px;
	left: 50%;
	top: -46px;
	transform: translateX(-50%);
}
.prog-steps p::after {
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	background-size: 100%;
	left: 50%;
	transform: translateX(-50%);
	top: -36px;
	filter: invert(1);
}
.prog-steps p.step-cart::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath d='M12 29a3 3 0 1 1-6 0 3 3 0 0 1 6 0zM32 29a3 3 0 1 1-6 0 3 3 0 0 1 6 0zM32 16V4H8a2 2 0 0 0-2-2H0v2h4l1.502 12.877A4 4 0 0 0 8 24h24v-2H8a2 2 0 0 1-2-2v-.02L32 16z'/%3E%3C/svg%3E");
}
.prog-steps p.step-check::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='32'%3E%3Cpath d='M34 4H2C.9 4 0 4.9 0 6v20c0 1.1.9 2 2 2h32c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM20 8h4v4h-4V8zm6 6v4h-4v-4h4zM14 8h4v4h-4V8zm6 6v4h-4v-4h4zM8 8h4v4H8V8zm6 6v4h-4v-4h4zM4 8h2v4H4V8zm0 6h4v4H4v-4zm2 10H4v-4h2v4zm18 0H8v-4h16v4zm8 0h-6v-4h6v4zm0-6h-4v-4h4v4zm0-6h-6V8h6v4z'/%3E%3C/svg%3E");
	top: -34px;
}
.prog-steps p.step-payment::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath d='M29 4H3C1.35 4 0 5.35 0 7v18c0 1.65 1.35 3 3 3h26c1.65 0 3-1.35 3-3V7c0-1.65-1.35-3-3-3zM3 6h26c.542 0 1 .458 1 1v3H2V7c0-.542.458-1 1-1zm26 20H3c-.542 0-1-.458-1-1v-9h28v9c0 .542-.458 1-1 1zM4 20h2v4H4zm4 0h2v4H8zm4 0h2v4h-2z'/%3E%3C/svg%3E");
	top: -36px;
}
.prog-steps p.step-rec::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath d='M28.681 7.159c-.694-.947-1.662-2.053-2.724-3.116s-2.169-2.03-3.116-2.724C21.229.137 20.448 0 20 0H4.5A2.503 2.503 0 0 0 2 2.5v27C2 30.878 3.122 32 4.5 32h23c1.378 0 2.5-1.122 2.5-2.5V10c0-.448-.137-1.23-1.319-2.841zm-4.138-1.702A27.334 27.334 0 0 1 26.811 8H22V3.189a27.334 27.334 0 0 1 2.543 2.268zM28 29.5c0 .271-.229.5-.5.5h-23a.507.507 0 0 1-.5-.5v-27c0-.271.229-.5.5-.5H20v7a1 1 0 0 0 1 1h7v19.5z'/%3E%3Cpath d='M23 26H9a1 1 0 0 1 0-2h14a1 1 0 0 1 0 2zM23 22H9a1 1 0 0 1 0-2h14a1 1 0 0 1 0 2zM23 18H9a1 1 0 0 1 0-2h14a1 1 0 0 1 0 2z'/%3E%3C/svg%3E");
}
.woocommerce-cart p.step-cart a {
	display: none;
}
.woocommerce-checkout p.step-cart a {
	position: absolute;
	width: 40px;
	height: 40px;
	top: -46px;
	left: 2px;
	z-index: 9;
}

/* current */
.woocommerce-cart .prog-steps p.step-cart::before,
.woocommerce-checkout .prog-steps p.step-check::before,
.woocommerce-checkout.woocommerce-order-received .prog-steps p.step-payment::before {
	background-color: var(--_prog-blue);
}

/* done */
.woocommerce-checkout .prog-steps p.step-cart::before,
.woocommerce-checkout.woocommerce-order-received .prog-steps :is(p.step-check::before, p.step-rec::before) {
	background-color: var(--_prog-blue);
}

/* change to checked */
.woocommerce-checkout .prog-steps p.step-cart::after,
.woocommerce-checkout.woocommerce-order-received .prog-steps p:is(.step-payment::after, .step-check::after) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath d='M27 4 12 19l-7-7-5 5 12 12L32 9z'/%3E%3C/svg%3E");
}

/* progress line */
.woocommerce-checkout .progress-wrp .progress-filler {
	width: 33%;
}
.woocommerce-checkout.woocommerce-order-received .progress-wrp .progress-filler {
	width: 100%;
}

/* order-received */
.woocommerce-order-received p.step-cart a {
	display: none;
}

/***************************
 ***** PRODUCT SINGLE ******
 **************************/

/* image gallery */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	margin: -10px;
}
.woocommerce-product-gallery__wrapper > div {
	padding: 10px;
}

/***************************
 *********** CART **********
 **************************/

:is(.woocommerce-cart, .woocommerce-checkout) .page-header {
	display: none;
}
@media (width > 1200px) {
	.woocommerce-cart .woocommerce {
		display: grid;
		grid-template-columns: 67% 33%;
		gap: 4%;
	}
	.woocommerce-cart .woocommerce :is(.woocommerce-notices-wrapper, .wc-empty-cart-message, .return-to-shop) {
		grid-column: span 2;
	}
	.woocommerce .cart-collaterals .cart_totals {
		float: none;
		width: 100%;
	}
}
p.return-to-shop {
	text-align: center;
}

/* plus-minus */
.single-product .quantity:has(.qty-button),
.woocommerce-cart .quantity-wrap:has(.qty-button) {
	align-items: center;
	border: 1px solid var(--e-global-color-primary);
	border-radius: 40px;
	width: max-content;
}
.single-product .quantity .qty-button,
.woocommerce-cart .quantity-wrap .qty-button,
.elementor-kit-5 button:is(.pmc-qty__btn, .pmc-qty__btn:hover) {
	background: transparent;
	border: 0;
	color: var(--e-global-color-primary);
	padding: 0.3em 0.5em;
}
.single-product .quantity .qty-button {
	padding-block: 0.639em;
}
.single-product .quantity .qty-button:hover,
.woocommerce-cart .quantity-wrap .qty-button:hover,
.elementor-kit-5 button.pmc-qty__btn:hover {
	color: var(--e-global-color-secondary);
}
.elementor-kit-5 :is(.quantity input[type='number'], .pmc-qty__input:not([type='button']):not([type='submit'])) {
	border: 0;
	border-radius: 0;
	padding: 5px 0;
	width: 2em;
}
:is(.single-product, .elementor-kit-5.woocommerce-cart) .quantity input[type='number']:focus-visible {
	outline: 0;
}
body .pmc-qty {
	border-color: var(--e-global-color-primary);
	border-radius: 40px;
}
/* END plus-minus */

.shop_table .actions button.button[name='update_cart'] {
	display: none !important;
}

/* kupon */
.woocommerce-page #content table.cart td.actions #coupon_code {
	border: 1px solid #778891;
	border-radius: 10px;
	padding: 13px 25px;
	width: min(48%, 200px);
}

/* cart and checkout on mobile */
@media (max-width: 767px) {
	.woocommerce-cart-form h2 {
		display: none;
	}
	.woocommerce-page .woocommerce-cart-form table.shop_table tr:nth-child(2n) td {
		background-color: transparent;
	}
	.woocommerce .woocommerce-cart-form .woocommerce-cart-form__cart-item {
		display: flex;
		flex-flow: row wrap;
		margin: 10px 0 20px;
	}
	.woocommerce-cart-form__cart-item .product-remove {
		flex: 1 1 100%;
		order: 1;
		position: relative;
		padding: 0;
	}
	table.cart td.product-remove a.remove {
		position: absolute;
		font-size: 35px;
		font-weight: 300;
		top: 25px;
		right: -4px;
		line-height: 19px;
	}
	.woocommerce-cart #content table.cart .product-thumbnail {
		display: block;
		flex: 1 1 33%;
		order: 3;
		padding: 0.43em 0 0.875em 0.875em;
	}
	.woocommerce-page table.shop_table_responsive tr .product-thumbnail::before {
		content: '';
	}
	.woocommerce-cart-form__cart-item .product-name {
		flex: 1 1 100%;
		order: 2;
		padding: 0.43em 0.875em;
	}
	.woocommerce-cart-form table.woocommerce-cart-form__contents tr :is(.product-name, .product-name a) {
		text-align: left !important;
		font-size: 16px;
		font-weight: 700;
	}
	.woocommerce-cart-form__cart-item .product-price {
		flex: 1 1 67%;
		order: 4;
		padding: 0 0.875em;
	}
	.woocommerce table.shop_table td.product-quantity {
		flex: 1 1 100%;
		order: 5;
		margin: -30px 0 20px;
		padding: 2em 0.875em 0 calc(33% + 0.875em);
	}
	.woocommerce-cart-form table.shop_table_responsive tr td:is(.product-name, .product-quantity):before {
		content: '';
	}
	.woocommerce-cart table .woocommerce-cart-form__cart-item td.product-subtotal {
		flex: 1 1 100%;
		order: 6;
		padding: 0 0.875em 1.5em calc(33% + 0.875em);
	}
	body.woocommerce-cart .quantity.spinners-added {
		margin: 25px 0 15px 0;
	}
	body .woocommerce table.cart td.actions .coupon .input-text + .button {
		width: fit-content;
		float: none;
	}
	body .cart_totals table.shop_table_responsive tr:nth-child(2n) td {
		background-color: transparent;
	}
	.cart_item td.product-quantity .quantity-wrap {
		margin-top: 10px;
		justify-content: end;
	}
	:is(body.woocommerce-page, body .woocommerce) table.cart .product-thumbnail img {
		margin-left: 0;
		width: 23%;
		position: absolute;
		left: 22px;
	}
	/* shipping table */
	body .woocommerce table.shop_table_responsive ul#shipping_method li,
	body .woocommerce-page table.shop_table_responsive ul#shipping_method li {
		justify-content: start;
	}
}

/* MINI-CART */
body:not(.logged-in) .pmc-cart {
	display: none;
}
.pmc-drawer__panel {
	--pmc-drawer-width: 30rem;
}
.pmc-cart .pmc-cart-trigger {
	background: transparent;
	border-radius: 0;
	padding: 10px;

	display: grid;
	grid-template-areas: 'stack';
}
.pmc-cart :is(.pmc-cart-trigger:hover, .pmc-cart-trigger:focus) {
	background: transparent;
}
.pmc-cart .pmc-cart-icon {
	grid-area: stack;
	width: 32px;
}
.pmc-cart .pmc-cart-count {
	grid-area: stack;
	background-color: transparent;
	color: #000;
	font-size: 0.75rem;
	width: 100%;
}

body .pmc-drawer__overlay {
	background: rgba(0, 0, 0, 0.6);
}
body .pmc-drawer__header {
	border-bottom: 1px solid #d5d8dc;
	justify-content: center;
	padding-block: 1.3rem;
}
.pmc-drawer__header::before {
	content: '';
	width: 1.5rem;
}
.elementor-kit-5 .pmc-drawer__close {
	background: none;
	border-radius: 0;
	padding: 0.75rem;
	position: absolute;
	right: 0.6rem;
	top: 0.5rem;
}
body .pmc-drawer__close svg {
	fill: var(--e-global-color-primary);
}
body .pmc-drawer__close:hover svg {
	fill: var(--e-global-color-secondary);
}
body .pmc-free-ship {
	margin: 0;
	padding: 0.5rem 0 1rem;
}
body .pmc-free-ship--bar .pmc-free-ship__bar {
	background-color: #d9d9d9;
	margin-inline: auto;
	width: 90%;
}
body .pmc-free-ship--bar .pmc-free-ship__progress {
	background-color: var(--e-global-color-secondary);
	border-radius: 2rem;
}
.pmc-free-ship__text {
	text-align: center;
}
body .pmc-cart-line {
	border-bottom: 1px solid #d5d8dc;
	padding-bottom: 0.8rem;
}

.pmc-cart-line__thumb {
	margin-right: 1rem;
}
.pmc-cart-line__main {
	font-size: 1rem;
	margin-block: -0.4rem 1rem;
}
.pmc-cart-line__name {
	font-weight: 700;
	text-decoration: none;
}
body .pmc-cart-line a.remove {
	background: transparent;
	color: var(--e-global-color-primary) !important;
	font-size: 2.2rem;
	font-weight: 300;
	position: relative;
	justify-self: end;
	top: -0.4rem;
}
body .pmc-cart-line a.remove:hover {
	background-color: transparent;
	color: var(--e-global-color-primary) !important;
}
#pmc-mini-cart .mini_cart_item a.remove + a {
	line-height: 1.1;
	margin-right: 1.5rem;
}

/* mini-cart & checkout coupon together */
.pmc-coupon-form__field {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;

	@media (width > 480px) {
		grid-template-columns: 1fr 8.7rem;
	}
}
.pmc-coupon-form .input-text {
	border-color: var(--e-global-color-primary);
	border-radius: 2rem;
	padding-inline: 1.5em;
}
.pmc-coupon-form .input-text::placeholder {
	color: var(--e-global-color-secondary);
	font-weight: 700;
}
.pmc-coupon-form .button {
	font-size: 1.125rem;
	padding-inline: 1rem;
}
body a.pmc-remove-coupon {
	border-color: var(--e-global-color-primary);
}
/* end */

.pmc-totals-block__row {
	margin: 0;
	padding-block: 0.597rem;
}
.pmc-totals-block__coupon,
.pmc-totals-block__total {
	border-top: 1px solid #d5d8dc;
}

body .pmc-card-icons__wrap {
	align-items: center;
	gap: 1rem;
}
body .woocommerce .pmc-card-icons__wrap img {
	height: auto;
}

/***************************
 ********* PÉNZTÁR *********
 **************************/

/* layout */
@media (width >= 768px) {
	:is(.woocommerce, .woocommerce-page) .col2-set {
		float: left;
		width: 48%;

		:is(.col-1, .col-2) {
			float: none;
			width: 100%;
		}
	}
	.woocommerce-checkout :is(#order_review_heading, #order_review) {
		float: right;
		width: 48%;
	}
}
#shipping_heading,
#payment_heading,
#order_comments_field {
	margin-top: 3rem;
}

#order_comments {
	field-sizing: content;
}

/* table */
.woocommerce table.shop_table {
	border: 0;
	border-radius: 0;

	:is(thead, tbody):first-child tr:first-child :is(td, th) {
		border-top: 1px solid #cad2d9;
	}
	tbody > tr:nth-child(odd) > :is(td, th) {
		background: transparent;
	}
	tbody tr:hover > :is(td, th) {
		background-color: transparent;
	}
	:is(td, th) {
		border: 0;
		border-bottom: 1px solid #cad2d9;
	}
	tfoot th {
		border-top: 0;
	}
}
@media (width < 768px) {
	.woocommerce table.shop_table .cart_item :is(td, th) {
		border-bottom: 0;
	}
	.woocommerce table.shop_table .cart_item {
		border-bottom: 1px solid #cad2d9;
	}
}

/* product image */
.chk-product-image img {
	float: left;
	width: 40px;
	margin-right: 5px;
}
@media (min-width: 520px) {
	.chk-product-image img {
		width: 60px;
	}
}
@media (min-width: 1025px) {
	.chk-product-image img {
		margin-right: 15px;
	}
}

/* coupon */
.woocommerce-checkout .woocommerce-form-coupon-toggle,
form.woocommerce-form-coupon p:not([class]) {
	display: none;
}
.woocommerce-checkout .woocommerce form.woocommerce-form-coupon {
	border: 0;
	display: block !important;
	margin: 0;
	padding: 0;
}
html .woocommerce form.checkout_coupon .form-row {
	margin-bottom: 12px;
}
.woocommerce form.checkout_coupon .form-row-last {
	float: left;
	margin-left: 12px;
}
.woocommerce-checkout .woocommerce table.shop_table tfoot .coupon-form td {
	border-top: 16px solid #fff;
}

/* payment */
.woocommerce-checkout #payment {
	background: none;
}
.woocommerce-checkout #payment ul.payment_methods {
	background: #f4f7f9;
	border-radius: 20px;
}
.woocommerce-checkout #payment div.form-row {
	padding: 20px 0;
}

:is(#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment) div.payment_box {
	background: #fff;
}
:is(#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment) div.payment_box::before {
	border-bottom-color: #fff;
}

.woocommerce-checkout button#place_order,
.pmc-buttons-block a.button {
	background-color: var(--e-global-color-secondary);
	border-radius: 40px;
	color: #fff;
	font-weight: 500;
	padding: 14px 40px;
}
.woocommerce-checkout button#place_order {
	margin-bottom: 4rem;
}
.woocommerce-checkout button#place_order:hover,
.pmc-buttons-block a.button:hover {
	background-color: var(--e-global-color-primary);
}

/***************************
 ********* FIÓKOM **********
 **************************/

.woocommerce-account:not(.logged-in) h2 {
	text-align: center;
}
.woocommerce-account:not(.logged-in) .page-header {
	position: absolute;
	left: -9999px;
}
.woocommerce-account .woocommerce form:is(.login, .lost_reset_password) {
	background-color: #f4f7f9;
	border: 0;
	border-radius: 28px;
	max-width: 720px;
	margin-inline: auto;
	padding: clamp(40px, 4vw, 72px) clamp(24px, 5vw, 120px);
}
.woocommerce-account .woocommerce form .form-row .input-text {
	font-size: 1.125em;
	font-weight: 300;
	padding-block: 14px;
}

/* global */
.woocommerce-MyAccount-content .endpoint-title {
	display: none;
}
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding-left: 0;
}
.woocommerce-MyAccount-navigation ul li {
	display: block;
}
.woocommerce-MyAccount-navigation ul a {
	padding-block: 0.5em;
	text-decoration: none;
}

/* My Account Mobile Menu */
.elementor-kit-5 .my-account-menu-toggle {
	background-color: #fff;
	border: 0;
	border-radius: 0;
	color: var(--e-global-color-primary);
	cursor: pointer;
	font-size: 16px;
	padding: 7px 0 15px 0;
	text-align: left;
}
.my-account-menu-toggle:hover {
	background: none;
	color: #000;
	box-shadow: none;
}
.my-account-menu-toggle svg {
	top: 7px;
	position: relative;
}

@media (width >= 768px) {
	.my-account-menu-toggle {
		display: none;
	}
	.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-top: -50px;
		width: 240px;
	}
	.woocommerce-MyAccount-navigation ul a {
		padding-block: 1em;
		text-decoration: none;
		display: block;
		border-bottom: 1px solid #cad2d9;
		margin-top: -1px;
	}
	.woocommerce-MyAccount-navigation ul li:first-of-type a {
		border-top: 1px solid #cad2d9;
	}
	.woocommerce-account .woocommerce-MyAccount-content {
		background-color: #f4f7f9;
		border-radius: 28px;
		padding: clamp(40px, 4vw, 72px) clamp(24px, 5vw, 120px);
		width: calc(100% - 280px);
	}
	.woocommerce-account .entry-title {
		margin-left: 280px;
	}
}

/* edit account  */
body details {
	border-block: 1px solid #cad2d9;
	isolation: isolate;
	overflow: hidden;
	margin-block: 3rem;
	position: relative;
	--details-anim-time: 0.3s;
}
body details summary {
	cursor: pointer;
	padding: 1.5rem 0;
}
body details summary::marker {
	content: '';
	display: none;
}
body details::before,
body details::after {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><path d="M96 320C96 302.3 110.3 288 128 288L512 288C529.7 288 544 302.3 544 320C544 337.7 529.7 352 512 352L128 352C110.3 352 96 337.7 96 320z" fill="%23003350" /></svg>');
	width: 25px;
	position: absolute;
	top: 1.4rem;
	right: 0;
	transition: all var(--details-anim-time);
	transform-origin: 12.5px 12.5px;
	z-index: -1;
}
body details::after {
	transform: rotate(90deg);
}
body details[open]::after {
	transform: rotate(0deg);
}
body details::details-content {
	height: 0;
	transition: height var(--details-anim-time), content-visibility var(--details-anim-time);
	transition-behavior: allow-discrete;
}
body details[open]::details-content {
	height: auto;
}

.woocommerce form .myaccount-section .form-row:last-child {
	margin-bottom: 2rem;
}

/* addresses */
.woocommerce-account .woocommerce-Address {
	background: #fff;
	border-radius: 18px;
	margin-bottom: 24px;
	padding: 24px;

	h2 {
		font-size: 1.25rem;
		margin-top: 0;
		float: left;
	}
	a.edit {
		background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="1rem" width="1rem" viewBox="0 0 512 512"><path d="M362.7 19.3L314.3 67.7 444.3 197.7l48.4-48.4c25-25 25-65.5 0-90.5L453.3 19.3c-25-25-65.5-25-90.5 0zm-71 71L58.6 323.5c-10.4 10.4-18 23.3-22.2 37.4L1 481.2C-1.5 489.7 .8 498.8 7 505s15.3 8.5 23.7 6.1l120.3-35.4c14.1-4.2 27-11.8 37.4-22.2L421.7 220.3 291.7 90.3z" fill="%23003350" /></svg>')
			center / auto no-repeat;
		display: block;
		font-size: 0;
		float: right;
		clear: right;
		width: 24px;
		height: 24px;
		transition: all 0.2s ease;
	}
	a.edit:hover {
		filter: brightness(0) saturate(100%) invert(70%) sepia(95%) saturate(2663%) hue-rotate(173deg) brightness(95%) contrast(104%);
	}
}
@media (width >= 768px) {
	.woocommerce-account .woocommerce .col2-set.woocommerce-Addresses {
		width: 100%;

		.col-1 {
			float: left;
			width: 48%;
		}
		.col-2 {
			float: right;
			clear: right;
			width: 48%;
		}
	}
}
