/*
Theme Name: kekesoptika
Theme URI: https://kekesoptika.hu/
Author: The Guidency
Description: Custom block theme for Kékes Szemvizsgáló Szalon.
Requires at least: 7.0
Tested up to: 7.0.4
Requires PHP: 8.3
Version: 1.0
Text Domain: kekesoptika
*/

/************************
 ******** GLOBAL ********
 ***********************/

/* mini reset */
*,
*::before,
*::after {
	box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
	@view-transition {
		navigation: auto;
	}
	html {
		scroll-behavior: smooth;
	}
}

p {
	text-wrap: pretty;
}
h1,
h2,
h3,
h4 {
	text-wrap: balance;
}
body a {
	color: currentColor;
	text-underline-offset: 0.1em;
	transition: all 0.3s ease;

	&:hover {
		color: var(--wp--preset--color--dblue);
		text-underline-offset: 0.3em;
	}
}

/* Global focus and active - outline */
*:focus,
*:active {
	outline: 0;
}
*:focus-visible {
	outline: 0.125rem solid #000;
	outline-offset: 0.125rem;
}

/* prevent image user select */
img {
	user-select: none;
}

.visually-hidden:not(:focus):not(:active) {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: 0;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

@media (width < 48rem) {
	.hide-on-mobile {
		display: none !important;
	}
}
@media (64rem >= width >= 48rem) {
	.hide-on-tablet {
		display: none !important;
	}
}
@media (width > 64rem) {
	.hide-on-desktop {
		display: none !important;
	}
}

main :is(p, ul):not(:last-child) {
	margin-bottom: 1.15em;
}
main ul {
	padding-inline-start: 1em;
}

/* buttons */
.wp-block-button:is(.is-style-black, .is-style-blue, .is-style-outline) .wp-block-button__link {
	border-radius: 0.375rem;
	border-style: solid;
	border-width: 0.0625rem;
	font: 600 1rem / 1 var(--wp--preset--font-family--montserrat);
	letter-spacing: 0.025rem;
	padding: 1rem 2.5rem;
	transition: all 0.25s ease;
}
.wp-block-button.is-style-black .wp-block-button__link {
	background-color: #000;
	border-color: #000;
	color: var(--wp--preset--color--ltext);
}
.wp-block-button.is-style-blue .wp-block-button__link {
	background-color: var(--wp--preset--color--blue);
	border-color: var(--wp--preset--color--blue);
	color: var(--wp--preset--color--dblue);
}
.wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent;
	border-color: var(--wp--preset--color--dblue);
	color: var(--wp--preset--color--dblue);
}
.wp-block-button.is-style-underline .wp-block-button__link {
	align-items: center;
	background-color: transparent;
	border: 0;
	border-bottom: 0.0625rem solid currentcolor;
	border-radius: 0;
	color: var(--wp--preset--color--dblue);
	display: inline-flex;
	font: 400 1rem / 1 var(--wp--preset--font-family--montserrat);
	gap: 1.25rem;
	letter-spacing: 0.025rem;
	padding: 0 0 0.5rem;
	transition: gap 0.25s ease;
}
.wp-block-button.is-style-black .wp-block-button__link:hover,
.wp-block-button.is-style-black .wp-block-button__link:focus-visible {
	background-color: var(--wp--preset--color--lblue);
	border-color: var(--wp--preset--color--lblue);
	color: #000;
}
.wp-block-button.is-style-blue .wp-block-button__link:hover,
.wp-block-button.is-style-blue .wp-block-button__link:focus-visible {
	background-color: #000;
	border-color: #000;
	color: var(--wp--preset--color--white);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
	background-color: var(--wp--preset--color--blue);
	border-color: var(--wp--preset--color--blue);
	color: var(--wp--preset--color--white);
}

.wp-block-button.is-style-underline .wp-block-button__link::after {
	content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="none" viewBox="0 0 14 14"><path fill="%238faad1" d="M6.521.02a.81.81 0 0 0-.669.64.84.84 0 0 0 .03.458q.04.123.37.464.332.337 1.949 1.958 2.26 2.26 2.26 2.28t-4.936.02H.603l-.122.058a.84.84 0 0 0-.43.484.88.88 0 0 0 .01.62q.083.136.2.259a.9.9 0 0 0 .24.17q.122.05.761.05h4.302q4.897 0 4.897.019 0 .02-2.26 2.28a332 332 0 0 0-1.948 1.963q-.333.337-.372.46a.84.84 0 0 0-.029.458.77.77 0 0 0 .21.4.82.82 0 0 0 .6.26h.06a.5.5 0 0 0 .283-.079q.2-.142.737-.664l2.402-2.397q3.018-3.003 3.076-3.12a.8.8 0 0 0 .103-.4.8.8 0 0 0-.103-.401q-.058-.117-3.071-3.115Q7.141.142 7.039.093A1.2 1.2 0 0 0 6.702 0q-.06 0-.18.02"/></svg>');
	width: 0.875rem;
}
.wp-block-button.is-style-underline .wp-block-button__link:hover {
	gap: 1.875rem;
}

/* ul */
.normal-ul {
	color: var(--wp--preset--color--dblue);
	font-size: 1.0625rem;
	font-weight: 400;
	line-height: clamp(1.35em, calc(0.3em + 2.32421875vw), 1.7em);

	li:nth-last-child(n + 2) {
		margin-bottom: 0.5em;
	}
	li::marker {
		content: '• ';
	}
}

/*************************
 ******** LAYOUT *********
 ************************/

.wp-block-group.is-style-section {
	padding-inline: var(--wp--custom--edge-padding);
	width: 100%;
	> div {
		max-width: 79rem;
		margin-inline: auto;
	}
}

.max315 {
	max-width: 31.5rem;
	margin-inline: auto;
}
.max495 {
	max-width: 49.5rem !important;
}
.max996 {
	max-width: 62.25rem !important;
}
.max-fit-content {
	max-width: fit-content;
	margin-inline: auto;
}

.objectfit {
	overflow: clip;
	img {
		display: block;
		height: 100% !important;
		width: 100%;
		object-fit: cover;
		object-position: center;
	}
}

.gap24 {
	gap: 2.5rem 1.5rem;
}
.gap72 {
	gap: 2.5rem 4.5rem;
}
.gap4824 {
	gap: 2.5rem 1.5rem;
}

@media (width < 48rem) {
	.collapse-reverse {
		flex-direction: column-reverse;
	}
	.collapse-reverse2 {
		.wp-block-column:first-child {
			order: 2;
		}
		.wp-block-column:last-child {
			order: 1;
		}
	}
}
.vertically-centered > .wp-block-column {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}

.center-left {
	text-align: center;
	.wp-block-separator {
		margin-inline: auto;
	}
	@media (width >= 48rem) {
		text-align: left;
		.wp-block-separator {
			margin-inline: unset;
		}
	}
}

.fs1213 {
	font-size: clamp(0.75rem, calc(0.75rem + ((1vw - 0.48rem) * 0.4219)), 0.8175rem);
}
.fs1215 {
	font-size: clamp(0.75rem, calc(0.75rem + ((1vw - 0.48rem) * 1.1719)), 0.9375rem);
}
.fs1721 {
	font-size: clamp(1.0625rem, calc(1.0625rem + ((1vw - 0.48rem) * 1.5625)), 1.3125rem);
}

.hero-general {
	background: url(/wp-content/uploads/2026/10/hero-general-bg.webp) center / cover no-repeat;
	border-bottom: 1.25rem solid var(--wp--preset--color--blue);
	padding-block: clamp(5.5rem, calc(5.5rem + ((1vw - 0.48rem) * 23.125)), 9.2rem) 2rem;
}

h1.sztp-h1 {
	font-size: clamp(1.5rem, calc(1.5rem + ((1vw - 0.48rem) * 6.25)), 2.5rem);
	line-height: 1.3;
	margin-bottom: 0.3em;
}

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

header {
	padding-inline: var(--wp--custom--edge-padding);
}
.wp-header-row {
	display: grid;
	grid-template-columns: 1fr 13.75rem 1fr;
	align-items: center;
	margin-inline: auto;
	max-width: 79rem;
	height: 5rem;

	.site-logo {
		margin-top: clamp(0.375rem, calc(0.375rem + ((1vw - 0.48rem) * 5.8594)), 1.3125rem);
	}
}
@media (width >= 64rem) {
	.wp-header-row {
		grid-template-columns: 12.5rem 1fr 13.5rem;
		gap: 1rem;

		.wp-block-navigation {
			gap: 0 1rem;
			grid-area: 1 / 2 / 2 / 3;
		}
		.site-logo {
			grid-area: 1 / 1 / 2 / 2;
		}
	}
}

.wp-block-navigation-item {
	color: var(--wp--preset--color--dblue);
	position: relative;

	.wp-block-navigation-item__content,
	div[aria-current='page'] {
		padding: 0.25rem;
		transition: color 0.2s ease;
	}
	&:hover {
		color: var(--wp--preset--color--blue);
	}
	&.current-menu-item {
		font-weight: 700;
	}
}

@media (width < 64rem) {
	.wp-header-row > .wp-block-navigation > .wp-block-navigation__responsive-container-open {
		display: flex;
	}
	.wp-header-row > .wp-block-navigation > .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none;
	}
}

/* mobile */
/* .wp-block-navigation__responsive-container-open {
	margin-top: 1rem !important;
	padding-bottom: 2rem;

	svg {
		fill: var(--wp--preset--color--gold);
		height: 2.625rem;
		width: 2.625rem;
	}
}
body .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
	background: #000000cc !important;
	width: 12rem;
	height: fit-content;
	height: 20rem;

	.wp-block-navigation__responsive-container-close {
		right: unset;
		left: 1.5rem;
		top: 1.25rem;
		padding: 0.25rem;
	}
	.wp-block-navigation__responsive-container-close svg {
		fill: var(--wp--preset--color--gold);
		height: 2rem;
		width: 2rem;
	}
	.wp-block-navigation__responsive-container-content {
		padding-top: 5.5rem;
	}
} */

/*************************
 ********  HOME  *********
 ************************/

.home-hero {
	background:
		linear-gradient(90deg, rgb(46 54 68 / 0.85) 0%, rgb(46 54 68 / 0) 100%),
		url(/wp-content/uploads/2026/10/home-hero-bg2.webp) center / cover no-repeat;
	position: relative;

	h1 {
		font-size: clamp(2.625rem, calc(2.625rem + ((1vw - 0.48rem) * 10.9375)), 4.375rem);
	}
}
#sztp-badge {
	display: none;
	@media (width >= 48rem) {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 21.875rem;
	}
}
.max26left {
	margin-top: 0.5em;
	max-width: 26rem;
}

/* bemutatkozás */
.home-img2 {
	max-height: 16.875rem;
	@media (width >= 48rem) {
		max-height: 100%;
	}
}
.fullimg-left {
	max-width: 41.375rem;
	margin-inline: auto 0;
	padding-inline: var(--wp--custom--edge-padding);
	@media (width >= 48rem) {
		padding-right: var(--wp--custom--floated-padding);
	}
}
.fake-bg {
	position: relative;
	box-shadow: -100vmax 0 0 100vmax #f2f4f8;
	clip-path: inset(0 0 0 -100vmax);
}
.quote-blue {
	border-left: 0.1875rem solid var(--wp--preset--color--blue);
	margin-bottom: 3.75rem;
	padding-left: 1.6875rem;
	p {
		font-size: clamp(1.5rem, calc(1.5rem + ((1vw - 0.48rem) * 1.1719)), 1.6875rem);
		font-style: italic;
	}
}
.fullimg-right-bg {
	background: url(/wp-content/uploads/2026/10/home2-bg2.webp) center / cover no-repeat;
	.placeholder {
		min-height: 16.875rem;
	}
	@media (width >= 48rem) {
		max-height: 100%;
	}
}
.garancia-intro .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/garancia-intro.webp);
}
.neak-intro .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/neak-intro.webp);
}

/* amit kínálunk */
.fullimg-left-bg {
	background: url(/wp-content/uploads/2026/10/home3-bg2.webp) center / cover no-repeat;
	.placeholder {
		min-height: 16.875rem;
	}
	@media (width >= 48rem) {
		max-height: 100%;
	}
}
.fullimg-right {
	max-width: 39.25rem;
	padding: 1.5rem var(--wp--custom--edge-padding) 2.25rem;
	@media (width >= 48rem) {
		padding-left: var(--wp--custom--floated-padding);
	}
}

/* eye examination */
.home-eyex-section {
	background: linear-gradient(180deg, #546480 0, var(--wp--preset--color--dblue) 31rem, #fff 31rem);
	@media (width >= 48rem) {
		background:
			url(/wp-content/uploads/2026/09/logo-bg.svg) 50% 1.5rem / 51rem 31.875rem no-repeat,
			linear-gradient(180deg, #546480 0, var(--wp--preset--color--dblue) 46.25rem, #fff 46.25rem);
	}
}
.home-eyex-title {
	border-bottom: 0.0625rem solid #f2f4f8;
	margin: 0 auto 0.5em;
	padding-bottom: 0.6em;
	width: max-content;
}
.home-eyex-lead {
	color: #fff;
	font-size: clamp(1.0625rem, calc(1.0625rem + ((1vw - 0.48rem) * 1.5625)), 1.3125rem);
	line-height: clamp(1.5rem, calc(1.5rem + ((1vw - 0.48rem) * 3.9063)), 2.125rem);
	@media (width >= 48rem) {
		color: #ffffffb3;
	}
}

.home-eyex-columns {
	margin-top: 2rem;
}
.home-eyex-img {
	position: relative;

	&::before {
		color: var(--wp--preset--color--blue);
		font: 400 5.5rem / 1 var(--wp--preset--font-family--libre-baskerville);
		position: absolute;
		bottom: 0.5rem;
		left: 0.5rem;
	}
}
.home-eyex-img.one::before {
	content: '01';
}
.home-eyex-img.two::before {
	content: '02';
}
.home-eyex-img.three::before {
	content: '03';
}

.eyex-title {
	font: 600 1.25rem / 1.35 var(--wp--preset--font-family--montserrat);
	letter-spacing: 0.02em;
	margin-block: 1em 0.5em;

	+ p {
		font-size: 0.9375rem;
		line-height: 1.5rem;
		margin-bottom: clamp(1rem, calc(1rem + ((1vw - 0.48rem) * 3.125)), 1.5rem) !important;
	}
}

@media (width >= 48rem) {
	.home-eyex-columns {
		border-top: 0.0625rem solid var(--wp--preset--color--white);
		margin: 4rem auto 0;
		max-width: 75rem !important;
		padding-top: 8.25rem;
	}
	.home-eyex-img::before {
		bottom: unset;
		top: -6.8rem;
		left: -0.5rem;
	}
	.home-eyex-img::after {
		background: var(--wp--preset--color--blue);
		border-radius: 9rem;
		content: '';
		width: 1.25rem;
		height: 1.25rem;
		position: absolute;
		top: -8.875rem;
		left: 0;
	}
	.eyex-title {
		margin-top: 1.5em;
	}
}

/* packages */
.home-pckg-columns {
	margin: 4rem auto 0;
	max-width: 75rem !important;
}

.home-pckg-box {
	--_line-color: #dfe4ec;
	border-radius: clamp(0.5rem, calc(0.5rem + ((1vw - 0.48rem) * 0.7813)), 0.625rem);
	display: flex;
	flex-flow: column nowrap;
	padding: clamp(2.5rem, calc(2.5rem + ((1vw - 0.48rem) * 3.125)), 3rem) clamp(2rem, calc(2rem + ((1vw - 0.48rem) * 3.125)), 2.5rem)
		clamp(1.125rem, calc(1.125rem + ((1vw - 0.48rem) * 4.6875)), 1.875rem);
	position: relative;

	.wp-block-button {
		width: 100%;
	}
}
.home-pckg-sought {
	--_line-color: #ffffff40;
}
.home-pckg-badge {
	background: var(--wp--preset--color--blue);
	border-radius: 9rem;
	color: var(--wp--preset--color--white);
	font-size: clamp(0.6563rem, calc(0.6563rem + ((1vw - 0.48rem) * 0.9766)), 0.8125rem);
	font-weight: 700;
	margin: 0 auto !important;
	padding: 0.89em 1.16em;
	position: absolute;
	top: calc(-1 * clamp(1rem, calc(1rem + ((1vw - 0.48rem) * 2.5)), 1.4rem));
	left: 50%;
	transform: translateX(-50%);
	width: fit-content;
}
.home-pckg-title {
	font-size: clamp(1.25rem, calc(1.25rem + ((1vw - 0.48rem) * 1.9531)), 1.5625rem);
	margin-bottom: 0.75em !important;

	span {
		display: inline-block;
		font-size: clamp(1.5625rem, calc(1.5625rem + ((1vw - 0.48rem) * 1.9531)), 1.875rem);
		font-weight: 700;
		margin-bottom: 0.4em;
	}
}
.home-pckg-middle {
	border-top: 0.0625rem solid var(--_line-color);
	font-size: clamp(0.8175rem, calc(0.8175rem + ((1vw - 0.48rem) * 0.75)), 0.9375rem);
	padding-top: 1em;
}
.home-pckg-price {
	border-top: 0.0625rem solid var(--_line-color);
	font: 400 clamp(2.1875rem, calc(2.1875rem + ((1vw - 0.48rem) * 3.5156)), 2.75rem) / 1 var(--wp--preset--font-family--libre-baskerville);
	margin-block: auto 0.4em !important;
	padding-top: 0.35em;
}

/* Contact */
.home-gmap {
	height: clamp(18.75rem, (100vw - 48rem) * 99, 43.875rem);
	position: relative;
	overflow: clip;

	iframe {
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		inset: 0;
	}
}
@media (width >= 90rem) {
	.home-contact-left-col {
		flex-basis: 56.25% !important;
	}
}

.home-contact-right {
	max-width: 34rem;
	padding: 1.875rem var(--wp--custom--edge-padding) 3rem;

	@media (width >= 48rem) {
		padding-left: clamp(2rem, calc(2rem + ((1vw - 0.48rem) * 22.2222)), 8rem);
	}
}

.home-contact-details {
	list-style: none;
	margin-top: 2rem !important;
	padding-left: 0;

	li {
		margin-bottom: 2rem;
		padding-left: 2.25rem;
		position: relative;
	}
	li a {
		color: var(--wp--preset--color--body-text);
		padding: 0.5rem 0;
		text-decoration: none;
	}
	li a:hover {
		text-decoration: underline;
	}
	li::before {
		position: absolute;
		top: 0;
		left: 0;
	}
	.addr::before {
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="%236b8cb8" d="M9.6.86a7 7 0 0 0-2.242.448 7.6 7.6 0 0 0-2.016 1.153q-.283.22-.694.64-.41.42-.63.698a8.3 8.3 0 0 0-.961 1.68 7.6 7.6 0 0 0-.498 1.88q-.06.34-.05.97t.05.992q.2 1.26.8 2.559.723 1.538 2.07 3.252a27 27 0 0 0 3.13 3.31q.322.279.46.39.14.108.283.167.317.16.698.16t.698-.16q.161-.06.279-.147.122-.093.444-.37 1.376-1.241 2.559-2.618a21 21 0 0 0 1.962-2.666q1.08-1.817 1.407-3.467.332-1.65-.088-3.271a7.3 7.3 0 0 0-1.939-3.38 7 7 0 0 0-1.064-.917 6.5 6.5 0 0 0-1.196-.664Q11.46.76 9.6.859m1.26 1.698a5.7 5.7 0 0 1 1.83.6q.87.46 1.548 1.183a5.54 5.54 0 0 1 1.363 2.373q.38 1.347.117 2.724-.498 2.461-3.238 5.6-.458.524-1.43 1.485-.972.957-1.05.957t-1.05-.957a32 32 0 0 1-1.43-1.484q-2.56-2.94-3.16-5.298A6.29 6.29 0 0 1 4.2 7.759a6.1 6.1 0 0 1 .498-1.846A5.4 5.4 0 0 1 5.781 4.32a5.8 5.8 0 0 1 1.72-1.25 5.6 5.6 0 0 1 2.06-.552q.18-.02.64 0 .458.02.658.04M9.638 5.02a3.26 3.26 0 0 0-1.841.82 3.3 3.3 0 0 0-1.06 1.802 2.4 2.4 0 0 0-.058.6q0 .377.039.621a3.2 3.2 0 0 0 .903 1.797q.64.66 1.519.893.878.23 1.748-.01a3.35 3.35 0 0 0 1.513-.903q.718-.761.899-1.777.02-.245.02-.62 0-.381-.06-.581a3.3 3.3 0 0 0-1.059-1.821 3.3 3.3 0 0 0-1.523-.762 5 5 0 0 0-.542-.059 3 3 0 0 0-.498 0m.742 1.7q.42.082.781.439a1.8 1.8 0 0 1 .376.532q.123.27.122.63 0 .762-.561 1.26Q10.64 10 10 10t-1.099-.42a1.6 1.6 0 0 1-.542-1.44 1.3 1.3 0 0 1 .137-.528 2 2 0 0 1 .361-.474q.244-.24.503-.346.26-.113.62-.113.24 0 .4.04"/></svg>');
	}
	.tel::before {
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><g clip-path="url(%23a)"><path fill="%236b8cb8" d="M3.081.86q-.42.038-.84.239t-.722.522q-.44.46-.62 1.118-.04.18-.05.303-.01.116-.01.518a15.4 15.4 0 0 0 .767 4.658A16 16 0 0 0 3.74 12.48a16.8 16.8 0 0 0 3.78 3.78 16 16 0 0 0 4.272 2.134q2.31.747 4.649.766.4 0 .517-.01.121-.009.303-.048.36-.103.63-.26.269-.16.527-.42.264-.263.42-.531.16-.27.264-.63l.058-.24v-1.44a21 21 0 0 0 0-1.323 4 4 0 0 0-.073-.67 3 3 0 0 0-.166-.507 2.5 2.5 0 0 0-.723-.879 2.5 2.5 0 0 0-1.04-.483 9 9 0 0 0-.42-.04H15.42q-1.2 0-1.494.02a2.3 2.3 0 0 0-.547.103 2 2 0 0 0-.703.361q-.298.24-.596.635l-.2.244-.161-.063a10 10 0 0 1-.781-.445 9 9 0 0 1-.738-.513 11 11 0 0 1-2.578-2.739q-.141-.225-.38-.644t-.264-.47q-.02-.048.224-.229.758-.561.996-1.337.103-.264.113-.572.01-.312.01-1.572V2.881l-.079-.22a2.6 2.6 0 0 0-.503-.923 2.6 2.6 0 0 0-.8-.64A2.6 2.6 0 0 0 6.04.86Q5.8.82 4.57.82T3.081.86m3.1 1.718q.118.063.225.176a.8.8 0 0 1 .171.23q.064.116.083.43.02.306 0 1.308v1.02q-.02.298-.049.4a.6.6 0 0 1-.112.196h-.02q-.078.122-.37.332-.29.21-.42.361a1.6 1.6 0 0 0-.23.357 3 3 0 0 0-.142.361q-.039.15-.039.39 0 .279.098.552.102.27.425.811a12.34 12.34 0 0 0 4.717 4.717q.523.303.79.405.274.098.552.098.4-.02.762-.181a2.3 2.3 0 0 0 .327-.23q.151-.131.352-.39.24-.322.361-.4v-.02a.8.8 0 0 1 .205-.112q.093-.03.39-.05h1.04q1.04-.018 1.339 0 .302.02.425.103.24.137.36.376l.06.142v2.73a.8.8 0 0 1-.04.292q-.18.376-.541.479-.22.078-1.07.02-.85-.06-1.63-.2a14 14 0 0 1-2.72-.767 15 15 0 0 1-2.5-1.275 14.4 14.4 0 0 1-3.409-3.095 14 14 0 0 1-2.24-4.024 13.5 13.5 0 0 1-.811-4.482v-.454q0-.084.058-.186a.7.7 0 0 1 .322-.356.6.6 0 0 1 .23-.103q.112-.02.43-.039l2.48.02z"/></g><defs><clipPath id="a"><path fill="%23fff" d="M0 0h20v20H0z"/></clipPath></defs></svg>');
	}
	.email::before {
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 20 20"><path fill="%236b8cb8" d="M2.94 2.54q-.4.058-.762.238-.498.284-.84.723a2.5 2.5 0 0 0-.46 1.001q-.018.156-.038.957v9.082q.02.801.039.957.161.763.718 1.294.561.527 1.323.669.24.039 7.08.039t7.08-.04a2.56 2.56 0 0 0 1.319-.668q.561-.532.722-1.294.02-.156.04-.957V5.459a15 15 0 0 0-.04-.957 2.53 2.53 0 0 0-.762-1.318 2.52 2.52 0 0 0-1.357-.664q-.244-.02-7.056-.02-6.806 0-7.006.04m14.018 1.679q.14.063.259.176a.7.7 0 0 1 .18.229q.064.117.074.186t.01.268v.303L13.96 7.64a381 381 0 0 1-3.623 2.29.5.5 0 0 1-.24.05L10.06 10a.5.5 0 0 1-.298-.059q-.22-.102-.943-.542L2.52 5.381v-.303q0-.2.01-.268a.7.7 0 0 1 .239-.406.8.8 0 0 1 .239-.16q.113-.045 1.01-.064h11.964q.877 0 .976.039M8.901 11.4q.318.156.66.22.14.04.439.04a1.8 1.8 0 0 0 .44-.04 2.4 2.4 0 0 0 .78-.283q.2-.117 3.238-2.036L17.5 7.358l-.02 7.862-.058.141a.9.9 0 0 1-.464.42l-.137.04H3.18l-.137-.04a.9.9 0 0 1-.464-.42l-.058-.141-.02-7.862 3.1 1.963q3.102 1.978 3.301 2.08"/></svg>');
	}
}

.home-openinghs {
	margin-bottom: 2rem;
	width: 100%;

	caption {
		border-top: 0.0625rem solid #dfe4ec;
		font-size: 1.25rem;
		font-weight: 400;
		text-align: left;
		padding-block: 1.2em;
	}
	th {
		font-weight: 400;
		text-align: left;
	}
	th,
	td {
		padding: 0.3em 0;
	}
}

/*************************
 ***** INTRODUCTION ******
 ************************/
@media (width > 64rem) {
	.intro-hero > .wp-block-column:first-child {
		flex: 0 0 calc(50dvw - 13.5rem);
	}
}
.intro-hero-title-wrap {
	padding: var(--wp--preset--spacing--p-36) var(--wp--custom--edge-padding);
	@media (width >= 48rem) {
		margin-top: 4rem !important;
		margin-right: -4rem;
		position: relative;
		z-index: 1;
	}
	@media (width > 64rem) {
		margin-right: clamp(-13rem, calc(-13rem + ((1vw - 0.64rem) * 48.64865)), -4rem);
	}
}
.intro-hero-title {
	font-size: clamp(1.75rem, calc(1.75rem + ((1vw - 0.48rem) * 3.125)), 2.25rem);
	line-height: 1.4;
	letter-spacing: -0.029em;
}
.intro-hero-para {
	margin: var(--wp--preset--spacing--p-36) var(--wp--custom--edge-padding) 0 !important;
}
.intro-hero-img {
	height: 15rem;
	@media (width >= 48rem) {
		height: 32rem;
	}
}
@media (width > 83rem) {
	.intro-hero-title {
		margin-left: calc(50vw - 40rem) !important;
	}
	.intro-hero-para {
		margin-left: calc(50vw - 38rem) !important;
	}
}
.intro-6box-para {
	margin: var(--wp--preset--spacing--p-36) var(--wp--custom--edge-padding) var(--wp--preset--spacing--p-80) !important;
}
.intro-6box-title {
	padding: var(--wp--preset--spacing--p-36) var(--wp--custom--edge-padding);
	position: relative;

	h2 {
		max-width: 20ch;
	}
	figure {
		display: none;
	}
}
.kekes-list.intro-6box-ul {
	font-weight: 400;
	margin: var(--wp--preset--spacing--p-36) var(--wp--custom--edge-padding) var(--wp--preset--spacing--p-92) !important;
	padding-inline-start: 2em;
	mark {
		font-weight: 700;
		text-transform: uppercase;
	}
}
.lined-list.intro-6box-ul li:nth-last-child(n + 2)::after {
	left: -2em;
	width: calc(100% + 3em);
}

@media (width >= 29rem) {
	.intro-6box-title figure {
		display: block;
		position: absolute;
		width: 9rem;
		top: -1rem;
		left: 19rem;
	}
}
@media (width >= 48rem) {
	.intro-6box-grid {
		display: grid;
		grid-template-columns: 3fr 2fr;
	}
	.intro-6box-grad {
		background: linear-gradient(180deg, #dce6f2 0%, rgb(255 255 255 / 0.7) 100%);
		margin-inline: 0 !important;
	}
	.intro-6box-title {
		margin: 0 !important;
		figure {
			width: clamp(9rem, calc(9rem + ((1vw - 0.48rem) * 25)), 13rem);
			top: -1rem;
			left: auto;
			right: clamp(1rem, calc(1rem + ((1vw - 0.48rem) * 12.5)), 3rem);
		}
	}
	.intro-6box-woman {
		background: url(/wp-content/uploads/2026/10/intro-img2.webp) center left / cover no-repeat;
		grid-area: 2 / 2 / 4 / 3;
		margin-inline: 0 !important;
	}
	.lined-list.intro-6box-ul li:nth-last-child(n + 2)::after {
		width: calc(100% + 3.9em);
	}
}
@media (width > 64rem) {
	.intro-6box-grid {
		--_page-padding: calc(50dvw - 39.5rem);
		grid-template-columns: calc(var(--_page-padding) + 53rem) calc(var(--_page-padding) + 26rem);
	}
	.intro-6box-para {
		justify-self: end;
		margin-right: clamp(1.5rem, calc(1.5rem + ((1vw - 0.64rem) * 18.75)), 6.375rem) !important;
		max-width: 44.625rem;
	}
	.intro-6box-title {
		h2 {
			margin-left: max(0.5rem, calc(var(--_page-padding) - 1.5rem));
		}
		figure {
			width: 16rem;
			top: -2rem;
		}
	}
	.kekes-list.intro-6box-ul {
		justify-self: end;
		margin-right: 0 !important;
		max-width: 51rem;
		padding-inline-start: 4em;
		li {
			padding-right: 3.75rem;
		}
	}
	.lined-list.intro-6box-ul li:nth-last-child(n + 2)::after {
		width: calc(100% + 5.7rem);
	}
}

.intro-confidence-section {
	--_border-bottom-height: 3rem;
	background:
		linear-gradient(to top, var(--wp--preset--color--mblue) var(--_border-bottom-height), transparent var(--_border-bottom-height)),
		url(/wp-content/uploads/2026/10/intro-confidence1.webp) center / cover no-repeat;
	height: clamp(20rem, calc(20rem + ((1vw - 0.48rem) * 125)), 40rem);
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.intro-confidence-box {
	background: var(--wp--preset--color--dblue);
	padding: clamp(1rem, calc(1rem + ((1vw - 0.25rem) * 2.1739)), 1.5rem) clamp(2rem, calc(2rem + ((1vw - 0.48rem) * 18.75)), 5rem);
}

.wp-block-button.spec-appnt-btn .wp-block-button__link {
	background: var(--wp--preset--color--white);
	border: none;
	box-shadow: 0 1rem 2rem 0 #00000033;
	color: var(--wp--preset--color--dblue);
	font: 400 clamp(1.2rem, calc(1.2rem + ((1vw - 0.2rem) * 10)), 1.7rem) / 1 var(--wp--preset--font-family--libre-baskerville);
	letter-spacing: -0.033em;
	padding: 1.0625rem 4rem 1.0625rem 1.5rem;
	position: relative;

	&::after {
		content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="31" height="31" fill="none" viewBox="0 0 31 31"><path fill="%238faad1" d="M14.999.045a1.86 1.86 0 0 0-1.056.55 1.77 1.77 0 0 0-.483.921q-.112.55.067 1.056.09.28.854 1.067.764.774 4.48 4.503 5.2 5.2 5.2 5.245t-11.353.045H1.387l-.282.134a1.92 1.92 0 0 0-.988 1.112q-.247.73.023 1.427.19.314.46.595.28.27.55.393.282.112 1.752.112h9.894q11.265 0 11.264.045 0 .045-5.2 5.245a765 765 0 0 0-4.48 4.514q-.764.776-.854 1.056-.18.506-.067 1.056t.483.92q.595.596 1.381.596h.135q.37 0 .651-.18.461-.325 1.696-1.527l5.525-5.514q6.942-6.907 7.076-7.177.236-.416.236-.92 0-.507-.236-.921-.135-.27-7.064-7.166Q16.425.326 16.189.213 15.964.09 15.414 0 15.28 0 15 .045"/></svg>');
		position: absolute;
		top: 0.6em;
		right: 1.25rem;
		transition: right 0.3s ease-in-out;
	}
	&:hover::after {
		right: 0.75rem;
	}
}
.wp-block-button.is-style-blue.spec-appnt-btn .wp-block-button__link {
	background: var(--wp--preset--color--mblue);
	color: var(--wp--preset--color--white);
	&:hover {
		background: var(--wp--preset--color--body-text);
	}
}

/*************************
 ******* SERVICES ********
 ************************/

.blue-line-under::after {
	background: var(--wp--preset--color--blue);
	content: '';
	display: block;
	width: 5.625rem;
	height: 0.0625rem;
	margin-block: 1.875rem;
}
.service-text-right,
.service-text-left {
	align-self: center;
	margin-block: 1.5rem 3.5rem !important;
	max-width: 30.375rem;
}

@media (width >= 48rem) {
	.service-text-right,
	.service-text-left {
		margin-block: 1rem !important;
	}
	.service-text-right {
		align-self: flex-end;
		margin-left: 1.5rem;
	}
	.service-text-left {
		margin-inline: 1.5rem;
	}
	.service-img {
		height: 32rem;
	}
}

/* subpages */
.normal-flex > .wp-block-column {
	display: flex;
	flex-flow: column nowrap;
}
.kekes-list {
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.5;

	li::marker {
		content: '• ';
	}
}
.lined-list li:nth-last-child(n + 2)::after {
	background: var(--wp--preset--color--blue);
	content: '';
	display: block;
	position: relative;
	left: -1em;
	width: calc(100% + 1em);
	height: 0.0625rem;
	margin-block: 1.125rem;
}

.service-appt-btn .wp-block-button__link {
	max-width: 18.375rem;
	line-height: 1.3 !important;
	padding-block: 0.5rem !important;
}

/*************************
 ********  GYIK  *********
 ************************/
.gyik-grid {
	counter-reset: gyik-question;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 26rem), 1fr));
	gap: 2.65rem 3.5rem;
}
.gyik-item {
	padding-left: 2.5rem;
}
h2.gyik-title {
	counter-increment: gyik-question;
	line-height: 1.333;
	font-weight: 700;
	position: relative;

	&::before {
		content: counter(gyik-question) '.';
		position: absolute;
		right: calc(100% + 0.5em);
	}
	&::after {
		background: var(--wp--preset--color--blue);
		content: '';
		display: block;
		width: 4.25rem;
		height: 0.0625rem;
		margin-block: 1.5rem;
	}
}

/*************************
 ******* PROTOCOLS *******
 ************************/
.protokoll-intro-general .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/protokoll-gen1.webp);
}
.protokoll-intro-cltraining .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/protokoll-clt1.webp);
}
.protokoll-intro-glassmake .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/protokoll-glm1.webp);
}
.white-line-under::after {
	background: var(--wp--preset--color--white);
	content: '';
	display: block;
	width: 5.625rem;
	height: 0.0625rem;
	margin-block: 1.875rem;
}

.protokoll-grid {
	counter-reset: protokoll-step;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 26rem), 1fr));
	gap: 2.65rem 3.5rem;
}
.protokoll-item {
	padding-left: 2.5rem;
}
.protokoll-title {
	counter-increment: protokoll-step;
	font-size: var(--wp--preset--font-size--f-30);
	font-weight: 700;
	line-height: 1.26;
	margin-bottom: 0.8em !important;
	position: relative;

	&::before {
		content: counter(protokoll-step) '.';
		position: absolute;
		right: calc(100% + 0.5em);
	}
}

.protokoll-bottom-img {
	margin: 0 calc(-1 * var(--wp--custom--edge-padding)) calc(-1 * var(--wp--preset--spacing--p-120)) !important;
	img {
		object-position: left center;
	}
	@media (width >= 83rem) {
		margin-right: calc(39.95rem - 50dvw) !important;
	}
}
@media (width > 75rem) {
	:is(.page-id-345, .page-id-373) .protokoll-bottom-img {
		margin-top: -14rem !important;
	}
}

/*************************
 **** PAYMENT METHODS ****
 ************************/
.numbered-content {
	counter-reset: payment-item;

	> *:not(h2, .letout) {
		margin-left: clamp(2.875rem, calc(2.875rem + ((1vw - 0.48rem) * 7.0313)), 4rem) !important;
	}

	h3 {
		counter-increment: payment-item;
		font: 700 1.0625rem / 1.25 var(--wp--preset--font-family--montserrat);
		margin-bottom: 0.875rem;
		position: relative;
	}
	h3 + h3 {
		margin-top: clamp(2.5rem, calc(2.5rem + ((1vw - 0.48rem) * 9.375)), 4rem) !important;
	}
	h3::before {
		--_circle-size: clamp(2.25rem, calc(2.25rem + ((1vw - 0.48rem) * 5.4688)), 3.125rem);
		background: var(--wp--preset--color--lblue);
		border-radius: 50%;
		content: counter(payment-item);
		display: grid;
		font: 600 clamp(1.125rem, calc(1.125rem + ((1vw - 0.48rem) * 2.3438)), 1.5rem) / 1 var(--wp--preset--font-family--libre-baskerville);
		place-items: center;
		position: absolute;
		right: calc(100% + 0.5em);
		top: calc(-1 * clamp(0.5rem, calc(0.5rem + ((1vw - 0.48rem) * 3.125)), 1rem));
		width: var(--_circle-size);
		height: var(--_circle-size);
	}
}

/*************************
 ******* PACKAGES ********
 ************************/

.package-screen .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/package-screen.webp);
}
.package-medical .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/package-medical.webp);
}
.package-artery .fullimg-right-bg {
	background-image: url(/wp-content/uploads/2026/10/package-artery.webp);
}

.package-price {
	display: inline-block;
	font: 400 var(--wp--preset--font-size--f-30) / 1 var(--wp--preset--font-family--libre-baskerville);
	margin-left: 0.5rem;
}

/*************************
 **** IDŐPONTFOGLALÁS ****
 ************************/

#idopont_iframe {
	display: block;
	margin-inline: auto;
	width: 22.5rem !important;
}
@media (width >= 42rem) {
	#idopont_iframe {
		width: 41.5rem !important;
	}
}

/*************************
 ******** FOOTER *********
 ************************/

.footer-main-row {
	--_nav-gap: clamp(0.25rem, (100vw - 48rem) * 9, 1rem);
}
.footer-logo {
	margin: 0 auto 1.5rem;
	width: fit-content;
	+ p {
		text-align: center;
	}
}
.footer-social {
	display: flex;
	gap: 2.625rem;
	justify-content: center;
	margin-top: 1.5rem;

	svg {
		width: 2rem;
	}
	path,
	circle {
		fill: var(--wp--preset--color--blue);
		transition: fill 0.3s ease;
	}
	.footer-fb:hover path {
		fill: #1877f2;
	}
	.footer-insta:hover :is(path, circle) {
		fill: #fff;
	}
}

.footer-nav-title {
	margin-bottom: var(--_nav-gap);
}
.footer-main-row .wp-block-navigation .wp-block-navigation-item {
	margin-bottom: var(--_nav-gap);

	.wp-block-navigation-item__content.wp-block-navigation-item__content {
		color: #ffffffb2;
		padding-block: 0.25rem;
	}
	.wp-block-navigation-item__content.wp-block-navigation-item__content:hover {
		color: #ffffffb2;
		text-decoration: underline;
	}
}
.footer-contact {
	list-style: none;
	margin: 0;
	padding: 0;

	li {
		color: #ffffffb2;
		margin-bottom: var(--_nav-gap);
		padding-block: 0.25rem;
	}
	li a {
		color: #ffffffb2;
		text-decoration: none;
	}
	li a:hover {
		text-decoration: underline;
	}
}

.footer-sztp-row {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	gap: 2rem;
	padding-block: 1.5rem 2rem;

	@media (width >= 48rem) {
		background: #f2f4f8;
		padding-block: 1rem;
	}
	@media (width > 64rem) {
		flex-flow: row nowrap;
		justify-content: space-between;
	}
}

@media (width >= 48rem) {
	.footer-logo {
		margin: 0 0 1.5rem -1rem;
		+ p {
			text-align: left;
		}
	}
	.footer-social {
		justify-content: flex-start;
	}
	.footer-copyright-row {
		background: var(--wp--preset--color--blue);
	}
}

@media (width < 48rem) {
	.footer-copyright-row p {
		border-top: 0.0625rem solid #dfe4ec;
		margin-top: -1.5rem !important;
		padding-top: 1.25rem;
	}
}
