/*
Theme Name: Helyi Szolgáltatók – Divi Child
Theme URI: https://helyiszolgaltatok.hu/
Description: A helyiszolgaltatok.hu single-site MVP márkázott Divi child témája.
Author: helyiszolgaltatok.hu
Template: Divi
Version: 0.6.9
Text Domain: helyi-szolgaltatok
*/

:root {
	--hsz-navy: #051629;
	--hsz-teal: #02afa6;
	--hsz-pink: #02afa6;
	--hsz-amber: #fdae0e;
	--hsz-blue: #0688f4;
	--hsz-violet: #8a58fb;
	--hsz-green: #16875b;
	--hsz-green-soft: #e8f7f0;
	--hsz-bg: #f6f8fb;
	--hsz-surface: #ffffff;
	--hsz-muted: #536273;
	--hsz-border: #dce5ed;
	--hsz-teal-soft: #e8f8f7;
	--hsz-pink-soft: #e8f8f7;
	--hsz-amber-soft: #fff7e2;
	--hsz-blue-soft: #eaf4fe;
	--hsz-violet-soft: #f2edff;
	--hsz-shadow: 0 18px 48px rgba(5, 22, 41, 0.09);
	--hsz-radius: 22px;
}

body,
button,
input,
select,
textarea,
#main-header,
#top-menu a {
	font-family: "Poppins", Arial, sans-serif;
}

body {
	color: var(--hsz-navy);
	background: var(--hsz-bg);
	font-size: 16px;
	line-height: 1.7;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--hsz-navy);
	font-family: "Poppins", Arial, sans-serif;
	font-weight: 700;
	line-height: 1.18;
}

a {
	color: #075d9f;
}

a,
button,
input,
select,
textarea {
	transition: border-color 160ms ease, box-shadow 160ms ease, color 160ms ease, background-color 160ms ease, transform 160ms ease;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid #075d9f;
	outline-offset: 3px;
}

#page-container {
	background: var(--hsz-bg);
}

#main-header {
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 8px 26px rgba(5, 22, 41, 0.07);
}

#main-header .container,
.et_pb_row,
.hsz-container {
	width: min(90%, 1180px);
	max-width: 1180px;
}

#logo {
	width: 290px !important;
	height: auto;
	max-width: 290px;
	max-height: 54px !important;
}

#top-menu li a {
	color: var(--hsz-navy);
	font-weight: 600;
}

#top-menu li.current-menu-item > a,
#top-menu li a:hover {
	color: var(--hsz-teal);
	opacity: 1;
}

.mobile_menu_bar::before {
	color: var(--hsz-teal);
}

.et_mobile_menu {
	border-top-color: var(--hsz-teal);
	border-radius: 0 0 16px 16px;
}

.hsz-script,
.hsz-city-script,
.hsz-eyebrow-script {
	font-family: "Solitreo", cursive;
	font-style: normal;
	font-weight: 400;
	color: var(--hsz-teal);
}

.hsz-script {
	display: inline-block;
	font-size: 1.08em;
	transform: rotate(-1deg);
}

.hsz-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at 12% 18%, rgba(253, 174, 14, 0.2), transparent 27%),
		radial-gradient(circle at 89% 14%, rgba(138, 88, 251, 0.14), transparent 26%),
		linear-gradient(135deg, #ffffff 0%, #f2fbfb 100%);
}

.hsz-hero::after {
	position: absolute;
	right: -90px;
	bottom: -120px;
	width: 320px;
	height: 320px;
	border: 54px solid rgba(246, 56, 107, 0.08);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.hsz-hero .et_pb_row {
	display: flex;
	align-items: center;
	gap: 5%;
}

.hsz-hero-copy h1,
.hsz-hero h1 {
	max-width: 720px;
	font-size: clamp(2.35rem, 5vw, 4.7rem);
	letter-spacing: -0.045em;
}

.hsz-lead,
.hsz-hero-copy p {
	max-width: 650px;
	color: var(--hsz-muted);
	font-size: clamp(1.03rem, 1.5vw, 1.2rem);
}

.hsz-cta-row,
.hsz-button-row {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 28px;
}

.hsz-button,
.hsz-btn,
.hsz-form button,
.hsz-form input[type="submit"],
.hsz-public-form button,
.hsz-public-form input[type="submit"],
.hsz-search-form button,
.hsz-provider-card__cta,
.hsz-profile-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 13px 23px;
	border: 2px solid var(--hsz-blue);
	border-radius: 14px;
	background: var(--hsz-blue);
	box-shadow: 0 9px 20px rgba(6, 136, 244, 0.2);
	color: #fff !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.25;
	cursor: pointer;
}

.hsz-button:hover,
.hsz-btn:hover,
.hsz-form button:hover,
.hsz-public-form button:hover,
.hsz-search-form button:hover,
.hsz-provider-card__cta:hover,
.hsz-profile-cta:hover {
	background: #0078df;
	border-color: #0078df;
	box-shadow: 0 12px 28px rgba(6, 136, 244, 0.27);
	transform: translateY(-2px);
}

.hsz-button--secondary,
.hsz-btn--secondary,
.hsz-button.is-secondary {
	border-color: var(--hsz-amber);
	background: var(--hsz-amber);
	box-shadow: 0 9px 20px rgba(253, 174, 14, 0.2);
	color: var(--hsz-navy) !important;
}

.hsz-button--large {
	min-height: 57px;
	padding: 15px 27px;
	font-size: 1rem;
}

.hsz-button--outline,
.hsz-btn--outline {
	border-color: var(--hsz-blue);
	background: #fff;
	box-shadow: none;
	color: var(--hsz-blue) !important;
}

.hsz-section-title {
	margin-bottom: 10px;
	font-size: clamp(1.8rem, 3vw, 2.7rem);
	letter-spacing: -0.025em;
}

.hsz-section-intro {
	max-width: 700px;
	margin-bottom: 30px;
	color: var(--hsz-muted);
}

.hsz-city-selector {
	padding: 25px;
	border: 1px solid rgba(2, 175, 166, 0.18);
	border-radius: var(--hsz-radius);
	background: rgba(255, 255, 255, 0.94);
	box-shadow: var(--hsz-shadow);
}

.hsz-city-selector__title,
.hsz-city-selector h2,
.hsz-city-selector h3 {
	margin-bottom: 7px;
	font-size: 1.35rem;
}

.hsz-city-grid,
.hsz-cities,
.hsz-city-selector__list,
.hsz-category-grid,
.hsz-categories,
.hsz-provider-grid,
.hsz-providers,
.hsz-banner-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.hsz-city-selector__list {
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.entry-content ul.hsz-city-selector__list,
.et_pb_text ul.hsz-city-selector__list {
	padding: 0;
	list-style: none;
}

.entry-content ul.hsz-city-selector__list > li,
.et_pb_text ul.hsz-city-selector__list > li {
	margin: 0;
	padding: 0;
}

.hsz-hero .hsz-city-selector__list,
.hsz-city-selector--compact .hsz-city-selector__list {
	grid-template-columns: 1fr;
	gap: 10px;
}

.hsz-city-selector__item {
	margin: 0;
}

.hsz-city-selector--compact .hsz-city-grid,
.hsz-city-selector--compact .hsz-cities {
	grid-template-columns: 1fr;
	gap: 10px;
}

.hsz-city-card,
.hsz-city-link {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	min-height: 66px;
	padding: 14px 17px;
	border: 1px solid var(--hsz-border);
	border-radius: 15px;
	background: #fff;
	color: var(--hsz-navy) !important;
	font-weight: 700;
}

.hsz-city-link::after {
	color: var(--hsz-teal);
	font-size: 1.25em;
	content: "→";
}

.hsz-city-card__pin {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border-radius: 11px;
	background: var(--hsz-teal-soft);
	color: #006d67;
}

.hsz-city-card__content {
	display: grid;
	min-width: 0;
	gap: 1px;
	overflow-wrap: anywhere;
}

.hsz-city-card__content span {
	color: var(--hsz-muted);
	font-size: 0.74rem;
	font-weight: 500;
}

.hsz-city-card__arrow {
	color: var(--hsz-teal);
	font-size: 1.25rem;
}

.hsz-city-card:hover,
.hsz-city-link:hover {
	border-color: var(--hsz-teal);
	background: var(--hsz-teal-soft);
	transform: translateY(-2px);
}

.hsz-city-card[aria-current="page"] {
	border-color: var(--hsz-teal);
	background: var(--hsz-teal-soft);
	box-shadow: 0 0 0 3px rgba(2, 175, 166, 0.14);
}

.hsz-development-note,
.hsz-city-selector__note,
.hsz-city-selector__status,
.hsz-demo-note,
.hsz-demo-notice,
.hsz-notice {
	margin-top: 16px;
	padding: 12px 15px;
	border-left: 4px solid var(--hsz-amber);
	border-radius: 10px;
	background: var(--hsz-amber-soft);
	color: var(--hsz-navy);
	font-size: 0.9rem;
}

.hsz-city-selector__status {
	display: grid;
	gap: 2px;
}

.hsz-city-selector__status span {
	color: var(--hsz-muted);
}

.hsz-category-grid,
.hsz-categories {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.hsz-category-card {
	position: relative;
	min-height: 180px;
	padding: 23px;
	border: 1px solid var(--hsz-border);
	border-top: 6px solid var(--hsz-category-color, var(--hsz-teal));
	border-radius: 19px;
	background: var(--hsz-surface);
	box-shadow: 0 9px 26px rgba(5, 22, 41, 0.06);
	color: var(--hsz-navy) !important;
}

.hsz-category-card:hover {
	border-color: var(--hsz-category-color, var(--hsz-teal));
	box-shadow: var(--hsz-shadow);
	transform: translateY(-4px);
}

.hsz-category-card__icon,
.hsz-category-icon {
	display: grid;
	width: 48px;
	height: 48px;
	margin-bottom: 20px;
	place-items: center;
	border-radius: 14px;
	background: var(--hsz-teal-soft);
	background: color-mix(in srgb, var(--hsz-category-color, var(--hsz-teal)) 16%, #fff);
	font-size: 25px;
}

.hsz-category-card__icon--asset {
	overflow: visible;
	background: transparent;
}

.hsz-category-card__icon--asset img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.hsz-category-card h3,
.hsz-category-card__content strong {
	display: block;
	margin-bottom: 6px;
	font-size: 1.05rem;
}

.hsz-category-card p,
.hsz-category-card__count,
.hsz-category-card__content > span {
	display: block;
	color: var(--hsz-muted);
	font-size: 0.86rem;
}

.hsz-category-card__arrow {
	position: absolute;
	right: 20px;
	bottom: 17px;
	color: var(--hsz-category-color, var(--hsz-teal));
	font-size: 1.25rem;
}

.hsz-search-form,
.hsz-form,
.hsz-public-form {
	padding: 25px;
	border: 1px solid var(--hsz-border);
	border-radius: var(--hsz-radius);
	background: #fff;
	box-shadow: 0 12px 34px rgba(5, 22, 41, 0.06);
}

.hsz-search-form {
	display: grid;
	grid-template-columns: 2fr repeat(3, minmax(145px, 1fr)) auto;
	gap: 13px;
	align-items: end;
}

.hsz-search-fields,
.hsz-form-grid {
	display: grid;
	grid-template-columns: 2fr repeat(3, minmax(140px, 1fr)) auto;
	gap: 13px;
	align-items: end;
}

.hsz-form-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hsz-field,
.hsz-form-field,
.hsz-search-form__field {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.hsz-field--full,
.hsz-field--wide,
.hsz-form-field--full {
	grid-column: 1 / -1;
}

.hsz-field label,
.hsz-form label,
.hsz-search-form label,
.hsz-public-form label,
.hsz-field-label {
	color: var(--hsz-navy);
	font-size: 0.86rem;
	font-weight: 700;
}

.hsz-field input,
.hsz-field select,
.hsz-field textarea,
.hsz-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.hsz-form select,
.hsz-form textarea,
.hsz-search-form input,
.hsz-search-form select {
	width: 100%;
	min-height: 50px;
	padding: 11px 14px;
	border: 1px solid #bfccd8;
	border-radius: 12px;
	background: #fff;
	color: var(--hsz-navy);
	font-size: 16px;
}

.hsz-form textarea,
.hsz-public-form textarea {
	min-height: 130px;
	resize: vertical;
}

.hsz-field input:focus,
.hsz-field select:focus,
.hsz-field textarea:focus,
.hsz-form input:focus,
.hsz-form select:focus,
.hsz-form textarea:focus,
.hsz-search-form input:focus,
.hsz-search-form select:focus {
	border-color: var(--hsz-blue);
	box-shadow: 0 0 0 4px rgba(6, 136, 244, 0.1);
	outline: 3px solid #075d9f;
	outline-offset: 2px;
}

.hsz-search-form__actions {
	display: grid;
	gap: 7px;
	justify-items: center;
}

.hsz-search-form__reset {
	color: var(--hsz-muted);
	font-size: 0.78rem;
	font-weight: 600;
}

.hsz-field-help,
.hsz-required-note,
.hsz-form-intro {
	color: var(--hsz-muted);
	font-size: 0.83rem;
}

.hsz-form-section {
	margin: 0 0 25px;
	padding: 0;
	border: 0;
}

.hsz-form-section legend {
	width: 100%;
	margin-bottom: 16px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--hsz-border);
	color: var(--hsz-navy);
	font-size: 1.15rem;
	font-weight: 700;
}

.hsz-field--consent {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
	margin: 20px 0;
}

.hsz-field--consent label {
	display: block;
}

.hsz-field--consent > .hsz-field-help {
	grid-column: 2;
}

.hsz-field--consent input {
	width: 20px;
	height: 20px;
	min-height: 20px;
	padding: 0;
	margin-top: 2px;
}

.hsz-form-notice {
	margin-bottom: 20px;
	padding: 13px 16px;
	border-left: 4px solid var(--hsz-blue);
	border-radius: 10px;
	background: var(--hsz-blue-soft);
}

.hsz-form-notice--success {
	border-left-color: #16803c;
	background: #ecfdf3;
	color: #14532d;
}

.hsz-form-notice--success p,
.hsz-form-notice--success a {
	color: inherit;
}

.hsz-form-notice--error {
	border-left-color: #b42318;
	background: #fff1f0;
	color: #8a1c13;
}

.hsz-form-notice--error p,
.hsz-form-notice--error a {
	color: inherit;
}

#hsz-account-notice,
#hsz-newsletter-notice {
	scroll-margin-top: 110px;
}

#hsz-account-notice:focus,
#hsz-newsletter-notice:focus {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.hsz-form-notice--warning {
	border-left-color: var(--hsz-amber);
	background: var(--hsz-amber-soft);
}

.hsz-input-with-unit {
	display: flex;
	align-items: center;
	gap: 9px;
}

.hsz-input-with-unit input {
	flex: 1;
}

.hsz-input-with-unit span {
	color: var(--hsz-muted);
	font-size: 0.86rem;
	font-weight: 700;
}

.hsz-provider-grid,
.hsz-providers {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hsz-provider-card {
	display: flex;
	position: relative;
	flex-direction: column;
	overflow: hidden;
	min-height: 100%;
	border: 1px solid var(--hsz-border);
	border-radius: var(--hsz-radius);
	background: #fff;
	box-shadow: 0 10px 30px rgba(5, 22, 41, 0.07);
}

.hsz-provider-card:hover {
	box-shadow: var(--hsz-shadow);
	transform: translateY(-4px);
}

.hsz-provider-card__visual {
	display: block;
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: linear-gradient(135deg, var(--hsz-teal-soft), var(--hsz-blue-soft));
}

.hsz-provider-card__visual img,
img.hsz-provider-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hsz-provider-card__initial {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
	color: rgba(5, 22, 41, 0.38);
	font-size: clamp(3rem, 7vw, 5rem);
	font-weight: 800;
}

.hsz-provider-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 22px;
}

.hsz-provider-card h3 {
	margin: 8px 0;
	font-size: 1.25rem;
}

.hsz-provider-card__meta,
.hsz-provider-meta {
	color: var(--hsz-muted);
	font-size: 0.86rem;
}

.hsz-provider-card__excerpt,
.hsz-provider-card__intro {
	flex: 1;
	color: var(--hsz-muted);
}

.hsz-badges,
.hsz-provider-card__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.hsz-provider-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	align-items: center;
	margin-top: 17px;
}

.hsz-provider-card__actions .hsz-button {
	min-height: 43px;
	padding: 9px 13px;
	font-size: 0.78rem;
}

.hsz-provider-card__map {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 8px 3px;
	font-size: 0.8rem;
	font-weight: 700;
}

.hsz-provider-results__count {
	margin-bottom: 18px;
	color: var(--hsz-muted);
	font-weight: 600;
}

.hsz-badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 9px;
	border-radius: 999px;
	background: var(--hsz-teal-soft);
	color: #006d67;
	font-size: 0.72rem;
	font-weight: 700;
}

.hsz-badge--verified {
	background: var(--hsz-green-soft);
	color: var(--hsz-green);
}

.hsz-badge--extended {
	background: var(--hsz-teal-soft);
	color: #007c75;
}

.hsz-badge--pro {
	min-width: 58px;
	justify-content: center;
	background: var(--hsz-amber);
	color: var(--hsz-navy);
	font-size: 0.76rem;
	font-weight: 800;
}

.hsz-badge--premium {
	background: var(--hsz-violet-soft);
	color: #6035bd;
}

.hsz-badge--demo {
	background: var(--hsz-amber-soft);
	color: #755000;
}

.hsz-empty-state {
	padding: 32px;
	border: 1px dashed #b8c8d5;
	border-radius: var(--hsz-radius);
	background: #fff;
	color: var(--hsz-muted);
	text-align: center;
}

.hsz-banner-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hsz-banner,
.hsz-info-tile {
	padding: 22px;
	border-radius: 18px;
	background: var(--hsz-blue-soft);
	color: var(--hsz-navy);
}

.hsz-banner img {
	width: calc(100% + 44px);
	max-width: none;
	height: 180px;
	margin: -22px -22px 18px;
	object-fit: cover;
}

.hsz-banner h3,
.hsz-info-tile h3 {
	font-size: 1.05rem;
}

.hsz-banner:nth-child(2),
.hsz-info-tile:nth-child(2) {
	background: var(--hsz-pink-soft);
}

.hsz-banner:nth-child(3),
.hsz-info-tile:nth-child(3) {
	background: var(--hsz-amber-soft);
}

.hsz-profile {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
	gap: 28px;
}

.hsz-profile-card,
.hsz-profile-sidebar {
	padding: clamp(23px, 4vw, 38px);
	border: 1px solid var(--hsz-border);
	border-radius: var(--hsz-radius);
	background: #fff;
	box-shadow: 0 12px 34px rgba(5, 22, 41, 0.06);
}

.hsz-profile-sidebar {
	align-self: start;
}

.hsz-profile-contact {
	display: grid;
	gap: 10px;
	margin: 18px 0;
}

.hsz-profile-contact a {
	padding: 11px 13px;
	border-radius: 11px;
	background: var(--hsz-bg);
	color: var(--hsz-navy);
	font-weight: 600;
	word-break: break-word;
}

.hsz-profile-card ul {
	margin: 0 0 22px;
	padding-left: 1.25rem;
}

.hsz-profile-price-list {
	margin-bottom: 22px;
	padding: 15px 17px;
	border-radius: 12px;
	background: var(--hsz-bg);
}

.hsz-profile-socials {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 14px 0;
}

.hsz-profile-socials a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 6px 10px;
	border-radius: 999px;
	background: var(--hsz-blue-soft);
	font-size: 0.8rem;
	font-weight: 700;
}

.hsz-profile-updated {
	color: var(--hsz-muted);
	font-size: 0.8rem;
}

.hsz-directory-hero {
	background: linear-gradient(135deg, #fff 0%, var(--hsz-teal-soft) 100%);
}

.hsz-eyebrow,
.hsz-directory-hero .hsz-eyebrow-script {
	margin-bottom: 8px;
	font-family: "Solitreo", cursive;
	color: var(--hsz-teal);
	font-size: 1.15rem;
}

.hsz-pagination {
	display: flex;
	justify-content: center;
	margin-top: 28px;
}

.hsz-pagination ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hsz-pagination a.page-numbers,
.hsz-pagination span.page-numbers {
	display: inline-grid;
	min-width: 42px;
	height: 42px;
	margin: 3px;
	place-items: center;
	border-radius: 10px;
	background: #fff;
}

.hsz-pagination span.current {
	background: var(--hsz-navy);
	color: #fff;
}

#main-footer {
	background: var(--hsz-navy);
}

#footer-bottom {
	padding: 0;
	background: transparent;
}

#footer-info {
	float: none;
	width: 100%;
	padding: 0;
	color: rgba(255, 255, 255, 0.78);
	text-align: left;
}

.hsz-site-footer {
	display: grid;
	grid-template-columns: minmax(220px, .85fr) minmax(360px, 1.35fr);
	gap: clamp(36px, 7vw, 90px);
	width: min(1080px, calc(100% - 40px));
	margin: 0 auto;
	padding: 52px 0 28px;
	font-family: "Poppins", sans-serif;
}

.hsz-site-footer__logo {
	display: inline-flex;
	width: min(270px, 100%);
	height: 58px;
	padding: 11px 16px;
	border-radius: 14px;
	background: #fff url("assets/helyiszolgaltatok_logo.svg") center / calc(100% - 32px) auto no-repeat;
}

.hsz-site-footer__tagline { display: block; max-width: 320px; margin: 18px 0 0; color: rgba(255,255,255,.74); font-size: .92rem; line-height: 1.65; }
.hsz-site-footer__brand,
.hsz-site-footer__group { display: block; }
.hsz-site-footer__nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 5vw, 62px); }
.hsz-site-footer__heading { display: block; margin: 0 0 14px; color: #fff; font-size: .82rem; font-weight: 700; line-height: 1.4; letter-spacing: .08em; text-transform: uppercase; }
.hsz-site-footer__links { display: grid; justify-items: start; gap: 9px; }
.hsz-site-footer__nav a { color: rgba(255,255,255,.78); text-decoration: none; text-underline-offset: 4px; }
.hsz-site-footer__nav a:hover { color: #fff; text-decoration: underline; }
.hsz-site-footer__nav a:focus-visible { outline: 3px solid var(--hsz-teal); outline-offset: 4px; }
.hsz-site-footer__cookie-link { margin: 0; padding: 0; border: 0; background: transparent; color: rgba(255,255,255,.78); font: inherit; text-align: left; text-decoration: none; text-underline-offset: 4px; cursor: pointer; }
.hsz-site-footer__cookie-link:hover { color: #fff; text-decoration: underline; }
.hsz-site-footer__cookie-link:focus-visible { outline: 3px solid var(--hsz-teal); outline-offset: 4px; }
.hsz-site-footer__bottom { display: flex; grid-column: 1 / -1; justify-content: space-between; gap: 18px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.58); font-size: .78rem; }

/* Márkázott 404 oldal. */
.hsz-error-404 {
	min-height: 68vh;
	padding: clamp(58px, 9vw, 112px) 24px;
	background:
		radial-gradient(circle at 13% 20%, rgba(5, 184, 176, .12), transparent 27%),
		radial-gradient(circle at 87% 78%, rgba(31, 143, 245, .10), transparent 28%),
		#f7fafc;
}

.hsz-error-404__panel {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
	align-items: center;
	gap: clamp(44px, 8vw, 112px);
	width: min(1120px, 100%);
	margin: 0 auto;
	padding: clamp(38px, 6vw, 72px);
	border: 1px solid #dce7ed;
	border-radius: 32px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 28px 70px rgba(7, 30, 52, .10);
}

.hsz-error-404__copy { max-width: 650px; }
.hsz-error-404__code { margin: 8px 0 -4px; color: var(--hsz-teal); font: 800 clamp(3.5rem, 9vw, 7rem)/.95 "Poppins", sans-serif; letter-spacing: -.06em; }
.hsz-error-404 h1 { margin: 0 0 20px; color: var(--hsz-navy); font-size: clamp(2.15rem, 5vw, 4rem); line-height: 1.08; letter-spacing: -.045em; }
.hsz-error-404__lead { max-width: 610px; margin: 0; color: #5b6d80; font-size: clamp(1rem, 1.7vw, 1.18rem); line-height: 1.75; }
.hsz-error-404__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.hsz-error-404__actions .hsz-button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; }
.hsz-error-404__help { margin: 24px 0 0; color: #66788a; font-size: .94rem; }
.hsz-error-404__help a { color: #087f7a; font-weight: 700; text-underline-offset: 4px; }

.hsz-error-404__visual { position: relative; min-height: 330px; border-radius: 28px; overflow: hidden; background: linear-gradient(145deg, #edfafa, #edf4ff); }
.hsz-error-404__visual::before,
.hsz-error-404__visual::after { content: ""; position: absolute; border: 2px solid rgba(5, 184, 176, .18); border-radius: 50%; }
.hsz-error-404__visual::before { width: 210px; height: 210px; top: 58px; left: 50%; transform: translateX(-50%); }
.hsz-error-404__visual::after { width: 275px; height: 275px; top: 25px; left: 50%; transform: translateX(-50%); }
.hsz-error-404__pin { position: absolute; z-index: 2; top: 85px; left: 50%; width: 112px; height: 112px; transform: translateX(-50%) rotate(45deg); border-radius: 56% 56% 56% 12%; background: var(--hsz-navy); box-shadow: 0 18px 34px rgba(7, 30, 52, .2); }
.hsz-error-404__pin span { position: absolute; top: 30px; left: 30px; width: 52px; height: 52px; border: 12px solid #fff; border-radius: 50%; }
.hsz-error-404__route { position: absolute; right: 12%; bottom: 58px; left: 12%; height: 48px; border-bottom: 4px dashed #ffad16; border-radius: 50%; transform: rotate(-5deg); }
.hsz-error-404__dot { position: absolute; z-index: 2; width: 18px; height: 18px; border-radius: 50%; background: #ffad16; }
.hsz-error-404__dot--one { bottom: 68px; left: 12%; }
.hsz-error-404__dot--two { right: 11%; bottom: 44px; background: var(--hsz-teal); }

@media (max-width: 820px) {
	.hsz-error-404__panel { grid-template-columns: 1fr; }
	.hsz-error-404__visual { min-height: 245px; }
	.hsz-error-404__visual::before { width: 160px; height: 160px; top: 38px; }
	.hsz-error-404__visual::after { width: 210px; height: 210px; top: 13px; }
	.hsz-error-404__pin { top: 54px; width: 92px; height: 92px; }
	.hsz-error-404__pin span { top: 25px; left: 25px; width: 42px; height: 42px; border-width: 10px; }
}

@media (max-width: 520px) {
	.hsz-error-404 { padding: 34px 16px 54px; }
	.hsz-error-404__panel { gap: 30px; padding: 30px 22px; border-radius: 24px; }
	.hsz-error-404__actions { flex-direction: column; }
	.hsz-error-404__actions .hsz-button { width: 100%; }
}

@media (max-width: 760px) {
	.hsz-site-footer { grid-template-columns: 1fr; gap: 34px; padding-top: 40px; }
	.hsz-site-footer__nav { gap: 28px; }
	.hsz-site-footer__bottom { flex-direction: column; gap: 5px; }
}

@media (max-width: 480px) {
	.hsz-site-footer__nav { grid-template-columns: 1fr; }
}

.hsz-visually-hidden,
.screen-reader-text {
	position: absolute !important;
	overflow: hidden;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	border: 0;
	white-space: nowrap;
}

@media (max-width: 1080px) {
	.hsz-category-grid,
	.hsz-categories {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.hsz-search-fields {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-search-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-search-form__field--keyword,
	.hsz-search-form__actions {
		grid-column: 1 / -1;
	}

	.hsz-search-form__actions {
		grid-template-columns: auto auto;
		justify-content: start;
		align-items: center;
	}
}

@media (max-width: 980px) {
	#logo {
		width: 220px !important;
		max-width: 220px;
	}

	.hsz-hero .et_pb_row {
		display: block;
	}

	.hsz-hero .et_pb_column + .et_pb_column {
		margin-top: 34px;
	}

	.hsz-provider-grid,
	.hsz-providers,
	.hsz-city-grid,
	.hsz-cities,
	.hsz-city-selector__list,
	.hsz-banner-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-profile {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {
	body {
		font-size: 16px;
	}

	#logo {
		width: 200px !important;
		max-width: 200px;
	}

	.hsz-hero-copy h1,
	.hsz-hero h1 {
		font-size: clamp(2.15rem, 12vw, 3.2rem);
	}

	.hsz-cta-row,
	.hsz-button-row,
	.hsz-cta-row .hsz-button,
	.hsz-button-row .hsz-button {
		width: 100%;
	}

	.hsz-city-selector {
		padding: 18px;
	}

	.hsz-provider-grid,
	.hsz-providers,
	.hsz-city-grid,
	.hsz-cities,
	.hsz-category-grid,
	.hsz-categories,
	.hsz-banner-grid,
	.hsz-form-grid,
	.hsz-search-fields,
	.hsz-search-form {
		grid-template-columns: 1fr;
	}

	.hsz-field--full,
	.hsz-field--wide,
	.hsz-form-field--full,
	.hsz-search-form__field--keyword,
	.hsz-search-form__actions {
		grid-column: auto;
	}

	.hsz-search-form__actions {
		grid-template-columns: 1fr;
		justify-items: stretch;
	}

	.hsz-search-form__actions .hsz-button {
		width: 100%;
	}

	.hsz-provider-card__actions,
	.hsz-provider-card__actions .hsz-button,
	.hsz-provider-card__map {
		width: 100%;
	}

	.hsz-provider-card__map {
		justify-content: center;
	}

	.hsz-category-card {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr) auto;
		gap: 14px;
		align-items: center;
		min-height: 0;
		padding: 17px;
	}

	.hsz-category-card__icon {
		margin-bottom: 0;
	}

	.hsz-category-card__arrow {
		position: static;
	}

	.hsz-form,
	.hsz-public-form,
	.hsz-search-form,
	.hsz-profile-card,
	.hsz-profile-sidebar {
		padding: 19px;
	}
}

/* The desktop home navigation is one visual row.  Give every item the same
 * height instead of relying on Divi's uneven link padding, so the two labels
 * and their separator share one vertical centre. */
@media (min-width: 981px) {
	.hsz-main-home #et-top-navigation,
	.hsz-main-home #top-menu-nav,
	.hsz-main-home #top-menu,
	.hsz-main-home #top-menu > li,
	.hsz-main-home #top-menu > li > a,
	.hsz-standard-page #et-top-navigation,
	.hsz-standard-page #top-menu-nav,
	.hsz-standard-page #top-menu,
	.hsz-standard-page #top-menu > li,
	.hsz-standard-page #top-menu > li > a {
		display: flex;
		align-items: center;
		height: 72px;
	}

	.hsz-main-home #et-top-navigation,
	.hsz-standard-page #et-top-navigation {
		padding-top: 0 !important;
	}

	.hsz-main-home #top-menu,
	.hsz-standard-page #top-menu {
		float: none;
	}

	.hsz-main-home #top-menu > li,
	.hsz-standard-page #top-menu > li {
		padding-right: 0;
	}

	.hsz-main-home #top-menu > li > a,
	.hsz-main-home #top-menu > .hsz-account-link-item > .hsz-account-link,
	.hsz-main-home .et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link,
	.hsz-standard-page #top-menu > li > a,
	.hsz-standard-page #top-menu > .hsz-account-link-item > .hsz-account-link,
	.hsz-standard-page .et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.hsz-main-home #main-header.et-fixed-header #et-top-navigation,
	.hsz-main-home #main-header.et-fixed-header #top-menu-nav,
	.hsz-main-home #main-header.et-fixed-header #top-menu,
	.hsz-main-home #main-header.et-fixed-header #top-menu > li,
	.hsz-main-home #main-header.et-fixed-header #top-menu > li > a,
	.hsz-standard-page #main-header.et-fixed-header #et-top-navigation,
	.hsz-standard-page #main-header.et-fixed-header #top-menu-nav,
	.hsz-standard-page #main-header.et-fixed-header #top-menu,
	.hsz-standard-page #main-header.et-fixed-header #top-menu > li,
	.hsz-standard-page #main-header.et-fixed-header #top-menu > li > a {
		height: 58px;
	}
}

/* A belépett szolgáltató főoldali fejlécében az egyetlen fiókművelet
 * közvetlenül látható marad tablet- és mobilnézetben is. */
@media (max-width: 980px) {
	.hsz-main-home.hsz-provider-session #et-top-navigation {
		display: flex;
		align-items: center;
		padding: 0 !important;
	}

	.hsz-main-home.hsz-provider-session #top-menu-nav {
		display: block;
	}

	.hsz-main-home.hsz-provider-session #top-menu {
		display: flex !important;
		align-items: center;
	}

	.hsz-main-home.hsz-provider-session #et_mobile_nav_menu {
		display: none;
	}

	.hsz-main-home.hsz-provider-session #top-menu > li {
		padding-right: 0;
	}

	.hsz-main-home.hsz-provider-session #top-menu > li > a {
		padding: 3px 0 !important;
	}
}

/* 2026.09.02 – városi landing: beágyazott navigáció, helyben szűrő kategóriasáv és kompakt profilkártyák */
body.hsz-city-landing #main-header {
	display: none !important;
}

body.hsz-city-landing #page-container {
	padding-top: 0 !important;
}

body.hsz-city-landing .et_pb_section.hsz-city-actions-section {
	position: absolute;
	z-index: 20;
	top: 0;
	left: 0;
	width: 100%;
	padding: 28px 0 0 !important;
	background: transparent !important;
}

body.admin-bar.hsz-city-landing .et_pb_section.hsz-city-actions-section {
	top: 32px;
}

.hsz-city-landing .hsz-city-actions-section .et_pb_row,
.hsz-hero--city .hsz-city-actions-section.et_pb_row {
	width: min(88%, 1180px);
	padding: 0 !important;
}

.hsz-hero--city .hsz-city-actions-section.et_pb_row {
	margin-bottom: 2px;
}

.hsz-city-landing .hsz-city-context-nav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 22px;
}

.hsz-city-landing .hsz-city-context-nav__logo {
	display: inline-flex;
	align-items: center;
	width: clamp(190px, 19vw, 235px);
	margin-right: auto;
	line-height: 0;
}

.hsz-city-landing .hsz-city-context-nav__logo img {
	display: block;
	width: 100%;
	height: auto;
}

.hsz-city-landing .hsz-city-context-nav > .hsz-button--secondary {
	order: 2;
	min-height: 44px;
	padding: 10px 22px;
	border: 0;
	background: var(--hsz-teal);
	box-shadow: 0 8px 20px rgba(2, 175, 166, 0.2);
	color: #fff !important;
}

.hsz-city-landing .hsz-city-context-nav > .hsz-button--secondary:hover {
	background: #02978f;
}

.hsz-city-landing .hsz-city-context-nav > .hsz-button--outline {
	order: 1;
	gap: 8px;
	min-height: 40px;
	padding: 7px 2px;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: #7a8794 !important;
	font-size: 0.85rem;
	font-weight: 500;
}

.hsz-city-landing .hsz-city-context-nav > .hsz-button--outline::before {
	display: inline-block;
	width: 19px;
	height: 19px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a8794' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
	content: "";
}

.hsz-city-landing .hsz-city-context-nav > .hsz-button--outline:hover {
	color: var(--hsz-teal) !important;
	transform: none;
}

.hsz-city-landing .hsz-hero--city {
	padding-top: 14px !important;
	padding-bottom: 30px !important;
	background: #f8fafc;
}

.hsz-city-landing .hsz-hero--city::after {
	display: none;
}

.hsz-city-landing .hsz-hero--city::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	background-image: url("assets/hero/home-hero-background-v2.png");
	background-repeat: no-repeat;
	background-position: center 24%;
	background-size: 110% auto;
	content: "";
	opacity: 0.88;
	pointer-events: none;
}

.hsz-city-landing .hsz-hero--city > .et_pb_row {
	position: relative;
	z-index: 1;
}

.hsz-city-landing .hsz-hero--city > .et_pb_row:not(.hsz-city-actions-section) {
	width: min(92%, 1240px);
	padding-top: 96px !important;
	padding-bottom: 8px !important;
	gap: 5%;
}

.hsz-city-landing .hsz-hero--city .hsz-hero-copy {
	position: relative;
	isolation: isolate;
}

.hsz-city-landing .hsz-hero--city .hsz-hero-copy::before {
	position: absolute;
	inset: -24px -34px -18px -26px;
	z-index: -1;
	background: radial-gradient(ellipse at 48% 52%, rgba(248, 250, 252, 0.98) 0%, rgba(248, 250, 252, 0.9) 58%, rgba(248, 250, 252, 0) 82%);
	content: "";
	pointer-events: none;
}

.hsz-city-landing .hsz-city-hero-logo {
	display: inline-block;
	width: clamp(190px, 19vw, 235px);
	margin: 0 0 18px;
	line-height: 0;
}

.hsz-city-landing .hsz-city-hero-logo img {
	display: block;
	width: 100%;
	height: auto;
}

.hsz-city-landing .hsz-hero--city .hsz-hero-copy h1 {
	font-size: clamp(3.6rem, 5.6vw, 5.8rem);
	line-height: 0.98;
	letter-spacing: -0.045em;
}

.hsz-city-landing .hsz-hero--city .hsz-city-title-main {
	display: inline;
}

.hsz-city-landing .hsz-hero--city .hsz-city-title-main--szekesfehervar {
	font-size: 0.72em;
}

.hsz-city-landing .hsz-hero--city .hsz-hero-copy h1 .hsz-script {
	margin-top: 0.08em;
	line-height: 1.02;
}

.hsz-city-landing .hsz-hero--city .hsz-lead {
	max-width: 590px;
	margin-top: 14px;
}

.hsz-city-landing .hsz-hero--city .hsz-search-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.hsz-city-landing .hsz-hero--city #szolgaltato-kereso {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	width: 100%;
	max-width: 690px;
	box-sizing: border-box;
	margin-top: 20px;
	padding: 7px;
	border: 1px solid rgba(213, 225, 234, 0.92);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 10px 25px rgba(5, 22, 41, 0.075);
}

.hsz-city-landing .hsz-search-form__context {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0;
	padding: 0 3px 0 8px;
	background: transparent;
	color: var(--hsz-navy);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

.hsz-city-landing .hsz-search-form__context::before {
	display: inline-block;
	width: 14px;
	height: 14px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230688f4' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E");
	content: "";
}

.hsz-city-landing .hsz-hero--city .hsz-search-form__field:not(.hsz-search-form__field--keyword) {
	display: none;
}

.hsz-city-landing .hsz-hero--city .hsz-search-form__field--keyword label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

.hsz-city-landing .hsz-hero--city .hsz-search-form input[type="search"] {
	height: 44px;
	padding: 0 13px;
	border: 1px solid rgba(220, 229, 237, 0.9);
	border-radius: 10px;
	background: #f9fbfd;
	box-shadow: none;
}

.hsz-city-landing .hsz-hero--city .hsz-search-form__actions {
	display: block;
	grid-column: 2;
}

.hsz-city-landing .hsz-hero--city .hsz-search-form__actions .hsz-button {
	height: 44px;
	min-height: 44px;
	padding: 10px 20px;
	white-space: nowrap;
}

.hsz-city-landing .hsz-hero--city .hsz-search-form__reset {
	display: none;
}

.hsz-city-landing .hsz-city-hero-image {
	position: relative;
	padding: 9px;
	border: 1px solid rgba(2, 175, 166, 0.14);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: 0 18px 46px rgba(5, 22, 41, 0.11);
}

.hsz-city-landing .hsz-city-hero-image .et_pb_image_wrap {
	display: block;
	overflow: hidden;
	border-radius: 22px;
}

.hsz-city-landing .hsz-city-hero-image img {
	display: block;
	width: 100%;
	min-height: 0 !important;
	aspect-ratio: 4 / 3;
	border-radius: 22px;
	box-shadow: none;
	object-fit: cover;
	object-position: center;
}

.hsz-city-landing .hsz-city-categories {
	padding: 24px 0 30px !important;
	background: #f6f8fb;
}

.hsz-city-landing .hsz-city-categories .et_pb_row {
	width: min(calc(100% - 32px), 1220px);
	padding: 22px 24px !important;
	border: 1px solid rgba(220, 229, 237, 0.7);
	border-radius: 25px;
	background: #fff;
	box-shadow: 0 11px 32px rgba(5, 22, 41, 0.055);
}

.hsz-city-landing .hsz-city-categories .hsz-eyebrow,
.hsz-city-landing .hsz-city-categories h2 {
	text-align: center;
}

.hsz-city-landing .hsz-city-categories h2 {
	margin-bottom: 18px;
	font-size: 1.18rem;
}

.hsz-city-landing .hsz-city-categories .hsz-category-grid--compact {
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.hsz-city-landing .hsz-city-categories .hsz-category-card {
	display: flex;
	width: 100%;
	min-height: 58px;
	flex-direction: row;
	justify-content: center;
	gap: 9px;
	padding: 6px 12px;
	border: 0;
	border-right: 1px solid var(--hsz-border);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	cursor: pointer;
	font: inherit;
	text-align: left;
	-webkit-appearance: none;
	appearance: none;
}

.hsz-city-landing .hsz-city-categories .hsz-category-card:last-child {
	border-right: 0;
}

.hsz-city-landing .hsz-city-categories .hsz-category-card:hover,
.hsz-city-landing .hsz-city-categories .hsz-category-card.is-selected {
	background: color-mix(in srgb, var(--hsz-category-color) 10%, white);
	color: var(--hsz-navy) !important;
	transform: none;
}

.hsz-city-landing .hsz-city-categories .hsz-category-card.is-selected {
	box-shadow: inset 0 -3px 0 var(--hsz-category-color);
}

.hsz-city-landing .hsz-city-categories .hsz-category-card__icon {
	width: 38px;
	height: 38px;
	margin: 0;
	flex: 0 0 38px;
	border-radius: 10px;
	background: transparent;
}

.hsz-city-landing .hsz-city-categories .hsz-category-card__content strong {
	font-size: 0.7rem;
	line-height: 1.25;
}

.hsz-city-landing .hsz-city-categories .hsz-category-card__content > span,
.hsz-city-landing .hsz-city-categories .hsz-category-card__arrow {
	display: none;
}

.hsz-subcategory-filter {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--hsz-border);
	border-right: 0;
	border-bottom: 0;
	border-left: 0;
	background: transparent;
}

.hsz-subcategory-filter__label {
	margin-right: 3px;
	color: var(--hsz-muted);
	font-size: 0.78rem;
	font-weight: 600;
}

.hsz-subcategory-chip {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 6px 12px;
	border: 1px solid var(--hsz-border);
	border-radius: 999px;
	background: #fff;
	color: var(--hsz-navy) !important;
	cursor: pointer;
	font-family: inherit;
	font-size: 0.75rem;
	font-weight: 600;
	-webkit-appearance: none;
	appearance: none;
}

.hsz-subcategory-chip:hover,
.hsz-subcategory-chip.is-selected {
	border-color: var(--hsz-teal);
	background: var(--hsz-teal-soft);
	color: #00736d !important;
	transform: none;
}

.hsz-subcategory-reset {
	display: inline-flex;
	align-items: center;
	padding: 4px 1px;
	border: 0;
	background: transparent;
	color: #536273 !important;
	font-size: 0.75rem;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: color-mix(in srgb, var(--hsz-teal) 45%, transparent);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.hsz-subcategory-reset:hover {
	background: transparent;
	color: #00736d !important;
	text-decoration-color: currentColor;
}

.hsz-city-landing .hsz-city-providers {
	padding: 34px 0 54px !important;
}

.hsz-city-landing .hsz-city-providers .et_pb_row {
	width: min(90%, 1180px);
}

.hsz-results-category-header {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 18px;
	padding: 17px 20px;
	border-radius: 18px;
	background: var(--hsz-results-accent, var(--hsz-teal));
	box-shadow: 0 11px 28px color-mix(in srgb, var(--hsz-results-accent, var(--hsz-teal)) 20%, transparent);
	color: var(--hsz-results-text, var(--hsz-navy));
}

.hsz-results-category-header__icon {
	display: grid;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	place-items: center;
	overflow: hidden;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 6px 16px rgba(5, 22, 41, 0.16);
}

.hsz-results-category-header__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.hsz-results-category-header h2 {
	margin: 0;
	padding: 0;
	color: inherit;
	font-size: clamp(1.15rem, 2.2vw, 1.55rem);
	line-height: 1.25;
}

.hsz-results-category-header__subcategory {
	font-size: 0.78em;
	font-weight: 600;
	opacity: 0.9;
}

.hsz-city-landing .hsz-provider-results__count {
	margin: 0;
	font-size: 0.92rem;
}

.hsz-provider-results__toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px 20px;
	margin: 0 0 11px;
}

.hsz-local-filter,
.hsz-local-filter__label {
	display: flex;
	align-items: center;
}

.hsz-local-filter {
	gap: 8px;
}

.hsz-local-filter__label {
	position: relative;
	gap: 9px;
	margin: 0;
	color: var(--hsz-muted);
	font-size: 0.78rem;
	font-weight: 700;
	cursor: pointer;
}

.hsz-local-filter__label input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.hsz-local-filter__switch {
	position: relative;
	display: inline-flex;
	width: 39px;
	height: 22px;
	flex: 0 0 39px;
	align-items: center;
	padding: 2px;
	border: 1px solid #b9c6d2;
	border-radius: 999px;
	background: #e8edf2;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.hsz-local-filter__switch span {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 4px rgba(5, 22, 41, 0.22);
	transition: transform 160ms ease;
}

.hsz-local-filter__label input:checked + .hsz-local-filter__switch {
	border-color: var(--hsz-teal);
	background: var(--hsz-teal);
}

.hsz-local-filter__label input:checked + .hsz-local-filter__switch span {
	transform: translateX(17px);
}

.hsz-local-filter__label input:focus-visible + .hsz-local-filter__switch {
	outline: 3px solid color-mix(in srgb, var(--hsz-blue) 28%, transparent);
	outline-offset: 2px;
}

.hsz-provider-results__legend {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 28px;
	margin: 0 0 20px;
	padding: 12px 15px;
	border: 1px solid rgba(220, 229, 237, 0.8);
	border-radius: 14px;
	background: #f8fafc;
}

.hsz-provider-results__legend p {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	align-items: center;
	gap: 9px;
	margin: 0;
	padding: 0;
	color: var(--hsz-muted);
	font-size: 0.74rem;
	line-height: 1.45;
}

.hsz-provider-results__legend .hsz-badge {
	white-space: nowrap;
}

.hsz-city-landing .hsz-provider-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.hsz-provider-card-context .hsz-provider-card {
	border: 1px solid rgba(83, 98, 115, 0.18);
	border-radius: 22px;
	box-shadow: 0 10px 28px rgba(5, 22, 41, 0.065);
	transition: box-shadow 160ms ease, transform 160ms ease;
}

.hsz-provider-card-context .hsz-provider-card--extended {
	border-color: color-mix(in srgb, var(--hsz-card-accent) 48%, white);
	box-shadow: 0 13px 34px color-mix(in srgb, var(--hsz-card-accent) 16%, transparent);
}

.hsz-provider-card-context .hsz-provider-card--pro {
	border: 2px solid var(--hsz-card-accent);
	background: linear-gradient(
		145deg,
		color-mix(in srgb, var(--hsz-card-accent) 14%, white) 0%,
		color-mix(in srgb, var(--hsz-card-accent) 7%, white) 100%
	);
	box-shadow: 0 8px 20px rgba(5, 22, 41, 0.07);
}

.hsz-provider-card-context .hsz-provider-card:hover {
	box-shadow: 0 16px 38px rgba(5, 22, 41, 0.11);
	transform: translateY(-3px);
}

.hsz-provider-card-context .hsz-provider-card--extended:hover {
	box-shadow: 0 17px 42px color-mix(in srgb, var(--hsz-card-accent) 22%, transparent);
}

.hsz-provider-card-context .hsz-provider-card--pro:hover {
	box-shadow: 0 10px 24px rgba(5, 22, 41, 0.09);
	transform: translateY(-2px);
}

.hsz-provider-card-context .hsz-provider-card__visual {
	height: auto;
	aspect-ratio: 2 / 1;
	margin: 9px 9px 0;
	border-radius: 16px;
	background: color-mix(in srgb, var(--hsz-card-accent) 9%, #f5f8fb);
}

.hsz-provider-card__placeholder {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
}

.hsz-provider-card__placeholder img {
	width: 92px !important;
	height: 92px !important;
	opacity: 0.28;
	object-fit: contain !important;
}

.hsz-provider-card__category-icon {
	display: grid;
	position: absolute;
	left: 13px;
	bottom: 12px;
	width: 52px;
	height: 52px;
	place-items: center;
	overflow: hidden;
	border-radius: 14px;
	box-shadow: 0 7px 17px rgba(5, 22, 41, 0.16);
}

.hsz-provider-card__category-icon img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}

.hsz-provider-card--category-fotozas .hsz-provider-card__category-icon {
	bottom: 8px;
	width: 49px;
	height: 49px;
}

.hsz-provider-card-context .hsz-provider-card__body {
	min-height: 258px;
	padding: 16px 17px 17px;
}

.hsz-provider-card-context .hsz-provider-card__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}

.hsz-provider-card-context .hsz-provider-card h3 {
	display: -webkit-box;
	min-height: 2.55em;
	margin: 0 0 6px;
	overflow: hidden;
	font-size: 1.08rem;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.hsz-provider-card-context .hsz-provider-card__category-name {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px;
	margin: 0 0 7px;
	font-size: 0.9rem;
	font-weight: 600;
}

.hsz-provider-card-context .hsz-provider-card__main-category {
	color: var(--hsz-card-accent);
}

.hsz-provider-card-context .hsz-provider-card__category-separator,
.hsz-provider-card-context .hsz-provider-card__subcategories {
	color: var(--hsz-muted);
	font-size: 0.76rem;
	font-weight: 500;
}

.hsz-provider-card__location {
	display: flex;
	align-items: center;
	gap: 5px;
	min-height: 1.35em;
	margin: 0 0 8px;
	color: #41566d;
	font-size: 0.76rem;
	font-weight: 700;
	line-height: 1.35;
}

.hsz-provider-card__location span {
	font-size: 0.88rem;
}

.hsz-provider-card-context .hsz-provider-card__intro {
	display: -webkit-box;
	min-height: 3.75em;
	margin: 0;
	overflow: hidden;
	font-size: 0.82rem;
	line-height: 1.48;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.hsz-provider-card-context .hsz-provider-card__body .hsz-provider-card__badges {
	order: initial;
	min-height: 29px;
	margin-top: 8px;
}

.hsz-provider-card-context .hsz-badge {
	gap: 4px;
	padding: 5px 8px;
	font-size: 0.64rem;
	line-height: 1.2;
}

.hsz-provider-card-context .hsz-badge--verified {
	background: var(--hsz-green-soft);
	color: var(--hsz-green);
}

.hsz-provider-card-context .hsz-badge--extended {
	background: var(--hsz-teal-soft);
	color: #007c75;
}

.hsz-provider-card-context .hsz-badge--pro {
	min-width: 60px;
	gap: 6px;
	padding: 6px 11px;
	background: var(--hsz-amber);
	color: var(--hsz-navy);
	font-size: 0.7rem;
}

.hsz-provider-card-context .hsz-provider-card__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 10px;
}

.hsz-provider-card-context .hsz-provider-card--basic .hsz-provider-card__actions {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hsz-provider-card-context .hsz-provider-card__actions .hsz-button {
	min-height: 40px;
	width: 100%;
	padding: 8px 10px;
}

.hsz-provider-card-context .hsz-provider-card__actions .hsz-button--contact {
	gap: 9px;
	border-color: var(--hsz-card-accent);
	background: var(--hsz-card-accent);
	box-shadow: 0 3px 9px rgba(5, 22, 41, 0.08);
	color: #fff !important;
}

.hsz-provider-card-context .hsz-provider-card__actions .hsz-button--contact:hover {
	border-color: var(--hsz-card-accent);
	background: var(--hsz-card-accent);
	box-shadow: 0 5px 12px rgba(5, 22, 41, 0.11);
	filter: brightness(0.92);
}

@media (max-width: 980px) {
	.hsz-city-landing .hsz-hero--city::before {
		background-position: center top;
		background-size: cover;
		opacity: 0.72;
	}

	.hsz-city-landing .hsz-hero--city > .et_pb_row:not(.hsz-city-actions-section) {
		width: min(88%, 760px);
	}

	.hsz-city-landing .hsz-city-categories .hsz-category-grid--compact {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
	}

	.hsz-city-landing .hsz-city-categories .hsz-category-card {
		border: 0;
	}

	.hsz-city-landing .hsz-provider-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	body.admin-bar.hsz-city-landing .et_pb_section.hsz-city-actions-section {
		top: 46px;
	}

	.hsz-city-landing .hsz-city-context-nav {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		gap: 8px 12px;
	}

	.hsz-city-landing .hsz-city-context-nav__logo {
		grid-column: 1;
		grid-row: 1;
		width: min(165px, 100%);
		margin: 0;
	}

	.hsz-city-landing .hsz-city-context-nav > .hsz-button--secondary {
		grid-column: 2;
		grid-row: 1;
		width: auto;
		padding: 9px 13px;
		font-size: 0.72rem;
	}

	.hsz-city-landing .hsz-city-context-nav > .hsz-button--outline {
		grid-column: 1;
		grid-row: 2;
		width: auto;
		margin-right: auto;
		font-size: 0.68rem;
	}

	.hsz-city-landing .hsz-city-context-nav > .hsz-account-link {
		grid-column: 2;
		grid-row: 2;
		justify-self: end;
	}

	.hsz-city-landing .hsz-hero--city {
		padding-top: 12px !important;
		padding-bottom: 34px !important;
	}

	.hsz-city-landing .hsz-hero--city > .et_pb_row:not(.hsz-city-actions-section) {
		padding-top: 126px !important;
	}

	.hsz-city-landing .hsz-city-hero-logo {
		width: 185px;
		margin-bottom: 14px;
	}

	.hsz-city-landing .hsz-hero--city #szolgaltato-kereso {
		grid-template-columns: 1fr;
		gap: 7px;
	}

	.hsz-city-landing .hsz-search-form__context {
		padding-left: 4px;
	}

	.hsz-city-landing .hsz-hero--city .hsz-search-form {
		grid-template-columns: 1fr;
	}

	.hsz-city-landing .hsz-hero--city .hsz-search-form__actions {
		grid-column: 1;
	}

	.hsz-city-landing .hsz-hero--city .hsz-search-form__actions .hsz-button {
		width: 100%;
	}

	.hsz-city-landing .hsz-city-categories .hsz-category-grid--compact,
	.hsz-city-landing .hsz-provider-grid {
		grid-template-columns: 1fr;
	}

	.hsz-city-landing .hsz-city-categories .hsz-category-card {
		justify-content: flex-start;
	}

	.hsz-provider-card-context .hsz-provider-card__visual {
		height: 190px;
	}

	.hsz-results-category-header {
		gap: 11px;
		padding: 14px 15px;
	}

	.hsz-results-category-header__icon {
		width: 42px;
		height: 42px;
		flex-basis: 42px;
	}

	.hsz-provider-results__legend {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.hsz-provider-results__legend p {
		align-items: flex-start;
	}

	.hsz-provider-results__toolbar {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* 2026.09 – fókuszált, ingyenes MVP felület */
.hsz-account-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 4px 2px;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--hsz-navy) !important;
	font-size: 0.8rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: color 160ms ease;
}

.hsz-account-link img {
	display: block;
	width: 17px;
	height: 17px;
	object-fit: contain;
}

.hsz-account-link:hover {
	color: #007d76 !important;
}

.hsz-account-link:focus-visible {
	outline: 3px solid var(--hsz-blue);
	outline-offset: 3px;
	border-radius: 4px;
}

.hsz-mobile-account-link {
	display: none;
}

#top-menu > .hsz-account-link-item {
	position: relative;
	padding-left: 16px;
	margin-left: 16px;
}

#top-menu > .hsz-account-link-item::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 22px;
	background: rgba(5, 22, 41, 0.12);
	content: "";
	transform: translateY(-50%);
}

#top-menu > .hsz-account-link-item > .hsz-account-link,
.et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 11px 2px !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--hsz-muted) !important;
	font-size: 0.8rem;
	font-weight: 600;
}

body #main-header {
	top: 14px;
	left: 50%;
	width: min(calc(100% - 28px), 1480px);
	border: 1px solid rgba(220, 229, 237, 0.78);
	border-radius: 22px;
	box-shadow: 0 12px 36px rgba(5, 22, 41, 0.08);
	transform: translateX(-50%);
}

body.admin-bar #main-header {
	top: 46px;
}

#main-header .container {
	width: min(92%, 1320px);
}

#top-menu > li {
	padding-right: 0;
}

#top-menu > li > a {
	padding: 11px 18px !important;
	border-radius: 12px;
	background: var(--hsz-amber);
	color: var(--hsz-navy) !important;
}

#top-menu > li > a:hover {
	background: #ffc13d;
	transform: translateY(-1px);
}

.et-fixed-header #top-menu > li > a {
	color: var(--hsz-navy) !important;
}

.hsz-button--secondary:hover,
.hsz-btn--secondary:hover,
.hsz-button.is-secondary:hover {
	border-color: #ef9e00;
	background: #ffc13d;
	box-shadow: 0 12px 26px rgba(253, 174, 14, 0.28);
	color: var(--hsz-navy) !important;
}

.hsz-button--outline:hover,
.hsz-btn--outline:hover {
	border-color: var(--hsz-blue);
	background: var(--hsz-blue-soft);
	box-shadow: none;
	color: #075d9f !important;
}

.hsz-launch-badge {
	display: inline-flex;
	align-items: center;
	margin: 0 auto 22px;
	padding: 8px 15px;
	border: 1px solid rgba(2, 175, 166, 0.24);
	border-radius: 999px;
	background: var(--hsz-teal-soft);
	color: #006d67 !important;
	font-size: 0.88rem !important;
	font-weight: 700;
}

.hsz-hero-copy--center,
.hsz-centered-heading {
	text-align: center;
}

.hsz-hero-copy--center h1,
.hsz-hero-copy--center .hsz-lead {
	margin-right: auto;
	margin-left: auto;
}

.hsz-hero--home {
	min-height: calc(100vh - 100px);
	padding-top: 54px !important;
	background:
		radial-gradient(circle at 10% 28%, rgba(2, 175, 166, 0.1), transparent 22%),
		radial-gradient(circle at 92% 34%, rgba(6, 136, 244, 0.09), transparent 24%),
		linear-gradient(145deg, #fff 0%, #f5f9fd 54%, #edf9f8 100%);
}

.hsz-hero--home::after {
	border-color: rgba(6, 136, 244, 0.07);
}

.hsz-hero--home .hsz-hero-copy h1 {
	max-width: 900px;
	margin-bottom: 18px;
	font-size: clamp(2.7rem, 5.1vw, 5rem);
}

.hsz-hero--home .hsz-city-selector {
	max-width: 1040px;
	margin: 38px auto 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.hsz-main-home .hsz-hero .hsz-city-selector__list {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.hsz-city-card {
	display: flex;
	flex-direction: column;
	gap: 13px;
	min-height: 300px;
	padding: 14px 14px 19px;
	border: 0;
	border-radius: 24px;
	box-shadow: 0 16px 42px rgba(5, 22, 41, 0.1);
	text-align: center;
}

.hsz-city-card__image-wrap {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	border-radius: 17px;
	background: var(--hsz-blue-soft);
}

.hsz-city-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 240ms ease;
}

.hsz-city-card:hover .hsz-city-card__image {
	transform: scale(1.04);
}

.hsz-city-card:hover {
	border-color: transparent;
	background: #fff;
	box-shadow: 0 22px 50px rgba(5, 22, 41, 0.14);
}

.hsz-city-card__content {
	gap: 3px;
}

.hsz-city-card__content strong {
	font-size: clamp(1.35rem, 2.3vw, 2rem);
}

.hsz-city-card__content span {
	font-size: 0.82rem;
}

.hsz-city-card__arrow {
	display: grid;
	width: 42px;
	height: 42px;
	margin: auto;
	place-items: center;
	border: 1px solid rgba(6, 136, 244, 0.2);
	border-radius: 50%;
	background: var(--hsz-blue-soft);
	color: var(--hsz-blue);
}

.hsz-city-selector__status {
	width: fit-content;
	margin: 24px auto 0;
	padding: 9px 16px;
	border: 0;
	border-radius: 999px;
	background: var(--hsz-teal-soft);
	color: #006d67;
	text-align: center;
}

.hsz-city-selector__status::before {
	content: "⌖ ";
}

.hsz-home-categories {
	background: #fff;
}

.hsz-centered-heading > p,
.hsz-home-categories .hsz-centered-heading p {
	max-width: 720px;
	margin-right: auto;
	margin-left: auto;
}

.hsz-category-grid--compact {
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 12px;
	margin-top: 28px;
}

.hsz-category-grid--compact .hsz-category-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-height: 150px;
	padding: 17px 12px 42px;
	border-top-width: 4px;
	text-align: center;
}

.hsz-category-grid--compact .hsz-category-card__icon {
	width: 44px;
	height: 44px;
	margin-bottom: 12px;
	font-size: 21px;
}

.hsz-category-grid--compact .hsz-category-card__content strong {
	font-size: 0.9rem;
}

.hsz-category-grid--compact .hsz-category-card__content > span {
	display: none;
}

.hsz-category-grid--compact .hsz-category-card__arrow {
	right: 50%;
	bottom: 12px;
	transform: translateX(50%);
}

.hsz-provider-hook {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	padding: clamp(28px, 5vw, 50px);
	border-radius: 28px;
	background: linear-gradient(120deg, #fff 0%, var(--hsz-blue-soft) 100%);
	box-shadow: var(--hsz-shadow);
}

.hsz-provider-hook h2,
.hsz-provider-hook p {
	max-width: 720px;
}

.hsz-city-actions-section {
	background: transparent;
}

.hsz-city-context-nav {
	display: flex;
	justify-content: space-between;
	gap: 14px;
}

.hsz-hero--city .et_pb_row {
	gap: 4%;
}

.hsz-hero--city .hsz-hero-copy h1 {
	font-size: clamp(2.7rem, 5vw, 4.8rem);
}

.hsz-city-hero-image img {
	width: 100%;
	min-height: 390px;
	border-radius: 48% 48% 24px 24px;
	box-shadow: 0 18px 48px rgba(5, 22, 41, 0.12);
	object-fit: cover;
}

.hsz-hero--city .hsz-search-form {
	grid-template-columns: 1.4fr repeat(2, minmax(130px, 0.8fr));
	margin-top: 30px;
	padding: 17px;
}

.hsz-hero--city .hsz-search-form__field:nth-child(2) {
	display: none;
}

.hsz-hero--city .hsz-search-form__actions {
	grid-column: 1 / -1;
	display: flex;
	justify-content: flex-start;
}

.hsz-city-providers,
.hsz-city-trust {
	background: #fff;
}

.hsz-provider-card {
	border: 0;
	border-radius: 20px;
	box-shadow: 0 12px 32px rgba(5, 22, 41, 0.09);
}

.hsz-provider-card__visual {
	aspect-ratio: 16 / 8.8;
}

.hsz-provider-card__favorite {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
}

.hsz-favorite-form {
	margin: 0;
}

.hsz-favorite-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	border: 1px solid var(--hsz-border);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 6px 16px rgba(5, 22, 41, 0.12);
	color: var(--hsz-navy) !important;
	cursor: pointer;
}

.hsz-favorite-button:hover,
.hsz-favorite-button.is-favorite {
	border-color: var(--hsz-card-accent, var(--hsz-blue));
	background: color-mix(in srgb, var(--hsz-card-accent, var(--hsz-blue)) 10%, white);
	color: var(--hsz-card-accent, var(--hsz-blue)) !important;
}

.hsz-ui-icon {
	display: inline-block;
	width: 1.1em;
	height: 1.1em;
	flex: 0 0 auto;
	background-color: currentColor;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.hsz-ui-icon--heart {
	width: 25px;
	height: 25px;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2075%2075%22%20version%3D%221.1%22%20xml%3Aspace%3D%22preserve%22%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A2%3B%22%3E%3Cpath%20d%3D%22M37.084%2C13.779c7.145%2C-6.392%2015.146%2C-7.287%2021.63%2C-4.323c6.848%2C3.13%2011.591%2C10.399%2011.591%2C18.78c0%2C8.237%20-3.432%2C14.521%20-7.932%2C19.588c-4.421%2C4.978%20-10.056%2C8.96%20-14.465%2C12.436c-1.583%2C1.248%20-3.282%2C2.579%20-5.004%2C3.585c-1.722%2C1.006%20-3.686%2C1.824%20-5.82%2C1.824c-2.134%2C0%20-4.098%2C-0.818%20-5.82%2C-1.824c-1.722%2C-1.006%20-3.421%2C-2.337%20-5.004%2C-3.585c-4.409%2C-3.476%20-10.044%2C-7.458%20-14.465%2C-12.436c-4.5%2C-5.067%20-7.932%2C-11.351%20-7.932%2C-19.588c0%2C-8.381%204.743%2C-15.65%2011.591%2C-18.78c6.484%2C-2.964%2014.485%2C-2.07%2021.63%2C4.323Zm-28.585%2C14.457c0%2C6.791%202.779%2C12.025%206.762%2C16.511c4.063%2C4.575%209.185%2C8.181%2013.869%2C11.873c1.626%2C1.282%203.076%2C2.406%204.473%2C3.223c1.398%2C0.817%202.524%2C1.19%203.481%2C1.19c0.957%2C0%202.083%2C-0.373%203.481%2C-1.19c1.398%2C-0.817%202.848%2C-1.941%204.474%2C-3.223c4.684%2C-3.692%209.805%2C-7.298%2013.868%2C-11.873c3.984%2C-4.486%206.763%2C-9.72%206.763%2C-16.511c0%2C-6.647%20-3.756%2C-12.221%20-8.883%2C-14.564c-4.981%2C-2.277%20-11.673%2C-1.674%20-18.033%2C4.934c-0.437%2C0.454%20-1.04%2C0.71%20-1.67%2C0.71c-0.63%2C0%20-1.233%2C-0.256%20-1.67%2C-0.71c-6.36%2C-6.608%20-13.052%2C-7.21%20-18.033%2C-4.934c-5.127%2C2.343%20-8.883%2C7.917%20-8.883%2C14.564Z%22%20style%3D%22fill%3A%23fff%3B%22%20%2F%3E%3C%2Fsvg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2075%2075%22%20version%3D%221.1%22%20xml%3Aspace%3D%22preserve%22%20style%3D%22fill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bstroke-linejoin%3Around%3Bstroke-miterlimit%3A2%3B%22%3E%3Cpath%20d%3D%22M37.084%2C13.779c7.145%2C-6.392%2015.146%2C-7.287%2021.63%2C-4.323c6.848%2C3.13%2011.591%2C10.399%2011.591%2C18.78c0%2C8.237%20-3.432%2C14.521%20-7.932%2C19.588c-4.421%2C4.978%20-10.056%2C8.96%20-14.465%2C12.436c-1.583%2C1.248%20-3.282%2C2.579%20-5.004%2C3.585c-1.722%2C1.006%20-3.686%2C1.824%20-5.82%2C1.824c-2.134%2C0%20-4.098%2C-0.818%20-5.82%2C-1.824c-1.722%2C-1.006%20-3.421%2C-2.337%20-5.004%2C-3.585c-4.409%2C-3.476%20-10.044%2C-7.458%20-14.465%2C-12.436c-4.5%2C-5.067%20-7.932%2C-11.351%20-7.932%2C-19.588c0%2C-8.381%204.743%2C-15.65%2011.591%2C-18.78c6.484%2C-2.964%2014.485%2C-2.07%2021.63%2C4.323Zm-28.585%2C14.457c0%2C6.791%202.779%2C12.025%206.762%2C16.511c4.063%2C4.575%209.185%2C8.181%2013.869%2C11.873c1.626%2C1.282%203.076%2C2.406%204.473%2C3.223c1.398%2C0.817%202.524%2C1.19%203.481%2C1.19c0.957%2C0%202.083%2C-0.373%203.481%2C-1.19c1.398%2C-0.817%202.848%2C-1.941%204.474%2C-3.223c4.684%2C-3.692%209.805%2C-7.298%2013.868%2C-11.873c3.984%2C-4.486%206.763%2C-9.72%206.763%2C-16.511c0%2C-6.647%20-3.756%2C-12.221%20-8.883%2C-14.564c-4.981%2C-2.277%20-11.673%2C-1.674%20-18.033%2C4.934c-0.437%2C0.454%20-1.04%2C0.71%20-1.67%2C0.71c-0.63%2C0%20-1.233%2C-0.256%20-1.67%2C-0.71c-6.36%2C-6.608%20-13.052%2C-7.21%20-18.033%2C-4.934c-5.127%2C2.343%20-8.883%2C7.917%20-8.883%2C14.564Z%22%20style%3D%22fill%3A%23fff%3B%22%20%2F%3E%3C%2Fsvg%3E");
}

.hsz-favorite-button.is-favorite .hsz-ui-icon--heart {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2075%2075%22%3E%0A%09%3Cpath%20d%3D%22M37.084%2013.779c7.145-6.392%2015.146-7.287%2021.63-4.323%206.848%203.13%2011.591%2010.399%2011.591%2018.78%200%208.237-3.432%2014.521-7.932%2019.588-4.421%204.978-10.056%208.96-14.465%2012.436-1.583%201.248-3.282%202.579-5.004%203.585-1.722%201.006-3.686%201.824-5.82%201.824-2.134%200-4.098-.818-5.82-1.824-1.722-1.006-3.421-2.337-5.004-3.585-4.409-3.476-10.044-7.458-14.465-12.436-4.5-5.067-7.932-11.351-7.932-19.588%200-8.381%204.743-15.65%2011.591-18.78%206.484-2.964%2014.485-2.07%2021.63%204.323Z%22%20%2F%3E%0A%3C%2Fsvg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2075%2075%22%3E%0A%09%3Cpath%20d%3D%22M37.084%2013.779c7.145-6.392%2015.146-7.287%2021.63-4.323%206.848%203.13%2011.591%2010.399%2011.591%2018.78%200%208.237-3.432%2014.521-7.932%2019.588-4.421%204.978-10.056%208.96-14.465%2012.436-1.583%201.248-3.282%202.579-5.004%203.585-1.722%201.006-3.686%201.824-5.82%201.824-2.134%200-4.098-.818-5.82-1.824-1.722-1.006-3.421-2.337-5.004-3.585-4.409-3.476-10.044-7.458-14.465-12.436-4.5-5.067-7.932-11.351-7.932-19.588%200-8.381%204.743-15.65%2011.591-18.78%206.484-2.964%2014.485-2.07%2021.63%204.323Z%22%20%2F%3E%0A%3C%2Fsvg%3E");
}

.hsz-ui-icon--extended {
	-webkit-mask-image: url("assets/icons/bovitett-profil.svg");
	mask-image: url("assets/icons/bovitett-profil.svg");
}

.hsz-ui-icon--pro {
	-webkit-mask-image: url("assets/icons/pro.svg");
	mask-image: url("assets/icons/pro.svg");
}

.hsz-ui-icon--contact {
	width: 1.2em;
	height: 1.2em;
	-webkit-mask-image: url("assets/icons/kapcsolat.svg");
	mask-image: url("assets/icons/kapcsolat.svg");
}
.hsz-badge--founder {
	border: 1px solid #d7c2ff;
	background: #f4edff;
	color: #6636b9;
}
.hsz-provider-card__badges .hsz-badge--founder,
.hsz-profile-badges .hsz-badge--founder { white-space: nowrap; }

.hsz-city-categories.is-loading,
.hsz-city-providers.is-loading {
	opacity: 0.5;
	pointer-events: none;
}

.hsz-city-categories,
.hsz-city-providers {
	transition: opacity 160ms ease;
}

.hsz-provider-card__favorite .hsz-favorite-button__label {
	position: absolute !important;
	overflow: hidden;
	width: 1px;
	height: 1px;
	clip: rect(0 0 0 0);
}

.hsz-favorite-button--disabled {
	opacity: 0.58;
	cursor: not-allowed;
}

.hsz-provider-card__body {
	padding: 18px;
}

.hsz-provider-card__body .hsz-provider-card__badges {
	order: 2;
	margin-top: 6px;
}

.hsz-provider-card__meta {
	margin-bottom: 3px;
	color: var(--hsz-blue);
	font-weight: 600;
}

.hsz-provider-card h3 {
	margin: 5px 0 7px;
	font-size: 1.1rem;
}

.hsz-provider-card__intro {
	font-size: 0.88rem;
	line-height: 1.55;
}

.hsz-provider-card__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hsz-provider-card__actions .hsz-button {
	width: 100%;
	min-height: 42px;
	padding: 8px 10px;
}

.hsz-provider-card__map {
	grid-column: 1 / -1;
	justify-content: center;
}

.hsz-account-entry {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
	gap: 26px;
	align-items: start;
}

.hsz-account-choice {
	display: grid;
	grid-template-columns: minmax(240px, 0.75fr) minmax(0, 1.25fr);
	gap: clamp(24px, 4vw, 48px);
	align-items: center;
	padding: clamp(24px, 4vw, 40px);
	margin: 28px 0;
	border: 1px solid var(--hsz-border);
	border-radius: var(--hsz-radius);
	background: linear-gradient(135deg, #fff 0%, var(--hsz-teal-soft) 100%);
	box-shadow: 0 12px 34px rgba(5, 22, 41, 0.07);
}

.hsz-account-choice h2,
.hsz-account-choice h3 {
	color: var(--hsz-navy);
}

.hsz-account-choice__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.hsz-account-choice__grid article {
	padding: 20px;
	border: 1px solid rgba(2, 175, 166, 0.2);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.88);
}

.hsz-account-choice__grid article > span {
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 38px;
	margin-bottom: 12px;
	border-radius: 11px;
	background: var(--hsz-teal-soft);
	color: var(--hsz-teal);
	font-size: 1.35rem;
	font-weight: 800;
}

.hsz-account-choice__grid h3 {
	margin-bottom: 8px;
	font-size: 1rem;
}

.hsz-account-choice__grid p {
	margin-bottom: 9px;
	font-size: 0.9rem;
}

.hsz-account-choice__grid a {
	color: #007d76;
	font-size: 0.88rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.hsz-account-message__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.hsz-account-status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 13px;
	margin: 0 0 14px;
	border-radius: 999px;
	background: var(--hsz-teal-soft);
	color: #006d67;
	font-size: 0.82rem;
	font-weight: 700;
}

.hsz-account-status > span {
	font-size: 1rem;
}

.hsz-account-card,
.hsz-account-message,
.hsz-dashboard-bar,
.hsz-future-features,
.hsz-build-together {
	padding: clamp(24px, 4vw, 38px);
	border: 1px solid var(--hsz-border);
	border-radius: var(--hsz-radius);
	background: #fff;
	box-shadow: 0 12px 34px rgba(5, 22, 41, 0.07);
}

.hsz-account-card--login {
	background: var(--hsz-amber-soft);
}

.hsz-account-card .hsz-public-form {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.hsz-account-form {
	display: grid;
	gap: 15px;
	margin-top: 22px;
}

.hsz-account-help {
	display: inline-block;
	margin-top: 10px;
	font-size: 0.84rem;
	font-weight: 600;
}

.hsz-dashboard-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
}

.hsz-dashboard-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.hsz-status-pill {
	display: inline-flex;
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--hsz-amber-soft);
	color: #755000;
	font-size: 0.78rem;
	font-weight: 700;
}

.hsz-status-pill--active {
	background: var(--hsz-teal-soft);
	color: #006d67;
}

.hsz-free-profile-note {
	display: grid;
	gap: 3px;
	margin-bottom: 28px;
	padding: 16px 18px;
	border-radius: 14px;
	background: var(--hsz-blue-soft);
}

.hsz-free-profile-note span,
.hsz-limit {
	color: var(--hsz-muted);
	font-size: 0.78rem;
	font-weight: 500;
}

.hsz-moderation-note {
	margin: 22px 0;
	padding: 13px 16px;
	border-left: 4px solid var(--hsz-amber);
	border-radius: 10px;
	background: var(--hsz-amber-soft);
}

.hsz-current-image {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 16px;
}

.hsz-current-image img {
	width: 140px;
	height: 95px;
	border-radius: 12px;
	object-fit: cover;
}

.hsz-future-features {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 20px;
	margin-top: 28px;
	background: linear-gradient(120deg, var(--hsz-teal-soft), #fff);
}

.hsz-future-features > div:first-child {
	display: grid;
	width: 54px;
	height: 54px;
	place-items: center;
	border-radius: 16px;
	background: var(--hsz-teal);
	color: #fff;
	font-size: 1.4rem;
}

.hsz-benefit-grid,
.hsz-join-category-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 30px;
}

.hsz-benefit-grid article,
.hsz-join-category-list article {
	padding: 24px;
	border: 1px solid var(--hsz-border);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(5, 22, 41, 0.055);
}

.hsz-benefit-grid article > span {
	display: inline-grid;
	width: 38px;
	height: 38px;
	margin-bottom: 12px;
	place-items: center;
	border-radius: 12px;
	background: var(--hsz-amber);
	color: var(--hsz-navy);
	font-weight: 800;
}

.hsz-join-category-list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hsz-join-category-list article:nth-child(3n) {
	border-top: 4px solid var(--hsz-teal);
}

.hsz-join-category-list article:nth-child(3n + 1) {
	border-top: 4px solid var(--hsz-blue);
}

.hsz-join-category-list article:nth-child(3n + 2) {
	border-top: 4px solid var(--hsz-amber);
}

.hsz-category-question {
	margin-top: 24px;
	padding: 20px 22px;
	border-radius: 16px;
	background: var(--hsz-teal-soft);
}

.hsz-faq {
	display: grid;
	gap: 12px;
	margin-top: 24px;
}

.hsz-faq details {
	padding: 17px 19px;
	border: 1px solid var(--hsz-border);
	border-radius: 14px;
	background: #fff;
}

.hsz-faq summary {
	color: var(--hsz-navy);
	font-weight: 700;
	cursor: pointer;
}

.hsz-faq details p {
	margin: 12px 0 0;
}

.hsz-build-together {
	background: var(--hsz-amber-soft);
}

.hsz-favorites-grid {
	margin-top: 24px;
}

@media (max-width: 1180px) {
	.hsz-category-grid--compact {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	body #main-header {
		top: 9px;
		width: calc(100% - 18px);
		border-radius: 17px;
	}

	.hsz-main-home .hsz-hero .hsz-city-selector__list,
	.hsz-benefit-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-account-entry {
		grid-template-columns: 1fr;
	}

	.hsz-city-hero-image img {
		min-height: 300px;
	}
}

@media (max-width: 620px) {
	body.admin-bar #main-header {
		top: 55px;
	}

	.hsz-account-choice,
	.hsz-account-choice__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-account-choice > *,
	.hsz-account-choice__grid > * {
		min-width: 0;
	}

	.hsz-account-message__actions .hsz-button {
		width: 100%;
		justify-content: center;
	}

	.hsz-hero--home {
		min-height: auto;
		padding-top: 36px !important;
	}

	.hsz-main-home .hsz-hero .hsz-city-selector__list,
	.hsz-category-grid--compact,
	.hsz-benefit-grid,
	.hsz-join-category-list {
		grid-template-columns: 1fr;
	}

	.hsz-city-card {
		display: grid;
		grid-template-columns: 112px minmax(0, 1fr) auto;
		min-height: 0;
		padding: 11px;
		text-align: left;
	}

	.hsz-city-card__image-wrap {
		aspect-ratio: 1 / 1;
	}

	.hsz-city-card__arrow {
		width: 36px;
		height: 36px;
	}

	.hsz-provider-hook,
	.hsz-dashboard-bar,
	.hsz-city-context-nav {
		flex-direction: column;
		align-items: stretch;
	}

	.hsz-provider-hook .hsz-button,
	.hsz-dashboard-actions .hsz-button,
	.hsz-city-context-nav .hsz-button {
		width: 100%;
	}

	.hsz-dashboard-actions,
	.hsz-current-image {
		flex-direction: column;
		align-items: stretch;
	}

	.hsz-current-image img {
		width: 100%;
		height: 180px;
	}

	.hsz-future-features {
		grid-template-columns: 1fr;
	}

	.hsz-city-hero-image img {
		min-height: 230px;
		border-radius: 28px;
	}

	.hsz-hero--city .hsz-search-form {
		grid-template-columns: 1fr;
	}
}

/* 2026.09.02 – főoldali kompozíció a jóváhagyott vizuális referencia alapján */
.hsz-main-home #main-header,
.hsz-standard-page #main-header {
	height: 72px;
	border: 0;
	border-radius: 24px;
	box-shadow: 0 10px 34px rgba(5, 22, 41, 0.07);
	transition: top 180ms ease, height 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.hsz-main-home #main-header .container,
.hsz-main-home #main-header .logo_container,
.hsz-standard-page #main-header .container,
.hsz-standard-page #main-header .logo_container {
	height: 72px;
}

.hsz-main-home #main-header .container,
.hsz-standard-page #main-header .container {
	width: min(88%, 1180px);
}

.hsz-main-home #logo,
.hsz-standard-page #logo {
	width: 235px !important;
	max-width: 235px;
	max-height: 43px !important;
	transition: width 180ms ease, max-height 180ms ease;
}

.hsz-main-home #et-top-navigation,
.hsz-standard-page #et-top-navigation {
	padding-top: 22px !important;
}

.hsz-main-home #top-menu > li > a,
.hsz-main-home .et-fixed-header #top-menu > li > a,
.hsz-standard-page #top-menu > li > a,
.hsz-standard-page .et-fixed-header #top-menu > li > a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 3px 0 22px !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--hsz-navy) !important;
	font-size: 0.94rem;
	font-weight: 500;
}

.hsz-main-home #top-menu > li > a::before,
.hsz-standard-page #top-menu > li > a::before {
	display: inline-block;
	width: 23px;
	height: 23px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23051629' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10v10h16V10M3 10l2-6h14l2 6M8 14v6m8-6v6M3 10c0 1.3 1 2.3 2.3 2.3S7.7 11.3 7.7 10c0 1.3 1 2.3 2.3 2.3s2.3-1 2.3-2.3c0 1.3 1 2.3 2.3 2.3s2.3-1 2.3-2.3c0 1.3 1 2.3 2.3 2.3S21 11.3 21 10'/%3E%3C/svg%3E");
	content: "";
	flex: 0 0 auto;
}

.hsz-main-home #top-menu > li > a:hover,
.hsz-standard-page #top-menu > li > a:hover {
	background: transparent;
	color: var(--hsz-teal) !important;
	transform: none;
}

.hsz-main-home #et_top_search,
.hsz-standard-page #et_top_search {
	display: none;
}

.hsz-main-home #main-header.et-fixed-header,
.hsz-standard-page #main-header.et-fixed-header {
	top: 8px !important;
	height: 58px;
	background: rgba(255, 255, 255, 0.7) !important;
	box-shadow: 0 8px 25px rgba(5, 22, 41, 0.08);
	backdrop-filter: blur(15px) saturate(135%);
	-webkit-backdrop-filter: blur(15px) saturate(135%);
}

.hsz-main-home.admin-bar #main-header.et-fixed-header,
.hsz-standard-page.admin-bar #main-header.et-fixed-header {
	top: 40px !important;
}

.hsz-main-home #main-header.et-fixed-header .container,
.hsz-main-home #main-header.et-fixed-header .logo_container,
.hsz-standard-page #main-header.et-fixed-header .container,
.hsz-standard-page #main-header.et-fixed-header .logo_container {
	height: 58px;
}

.hsz-main-home #main-header.et-fixed-header #logo,
.hsz-standard-page #main-header.et-fixed-header #logo {
	width: 205px !important;
	max-width: 205px;
	max-height: 34px !important;
}

.hsz-main-home #main-header.et-fixed-header #et-top-navigation,
.hsz-standard-page #main-header.et-fixed-header #et-top-navigation {
	padding-top: 17px !important;
}

.hsz-main-home #main-header.et-fixed-header #top-menu > li > a,
.hsz-standard-page #main-header.et-fixed-header #top-menu > li > a {
	padding-bottom: 16px !important;
	font-size: 0.86rem;
}

.hsz-main-home .hsz-launch-badge {
	display: none;
}

.hsz-main-home .hsz-hero--home {
	min-height: 0;
	padding: 46px 0 18px !important;
	background-color: #f8fafc;
	background-image: url("assets/hero/home-hero-background-v2.png");
	background-position: center top;
	background-size: cover;
}

/* Pin the map behind the city cards, within this section's background area. */
@media (prefers-reduced-motion: no-preference) {
	.hsz-main-home .hsz-hero--home {
		background-attachment: fixed;
	}
}

.hsz-main-home .hsz-hero--home::after {
	display: none;
}

.hsz-main-home .hsz-hero--home::before {
	position: absolute;
	top: 13%;
	left: max(4.5%, calc(50% - 575px));
	z-index: 0;
	display: block;
	width: 60px;
	height: 60px;
	background: center / contain no-repeat url("assets/icons/tattoo-piercing.svg");
	content: "";
	filter: drop-shadow(0 10px 16px rgba(5, 22, 41, 0.1));
	pointer-events: none;
	transform: rotate(-8deg);
}

.hsz-main-home .hsz-hero--home .et_pb_row {
	position: relative;
	z-index: 1;
	display: block;
	width: min(92%, 1120px);
	padding-top: 0;
	padding-bottom: 0;
}

.hsz-main-home .hsz-hero--home .et_pb_text {
	margin-bottom: 0;
}

.hsz-main-home .hsz-hero--home .hsz-hero-copy h1 {
	max-width: 680px;
	margin: 0 auto 8px;
	font-size: clamp(2.3rem, 3.65vw, 3rem);
	line-height: 1.08;
	letter-spacing: -0.045em;
}

.hsz-main-home .hsz-hero--home .hsz-hero-copy .hsz-lead {
	max-width: 650px;
	margin: 0 auto;
	font-size: clamp(0.94rem, 1.2vw, 1.02rem);
	line-height: 1.5;
}

.hsz-main-home .hsz-hero--home .hsz-city-selector {
	max-width: 800px;
	margin: 18px auto 0;
}

.hsz-main-home .hsz-hero--home .hsz-city-selector__list {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-top: 0;
}

.hsz-main-home .hsz-city-card {
	min-height: 210px;
	gap: 6px;
	padding: 8px 8px 10px;
	border-radius: 19px;
	box-shadow: 0 13px 34px rgba(5, 22, 41, 0.09);
}

.hsz-main-home .hsz-city-card__image-wrap {
	height: 120px;
	aspect-ratio: auto;
	border-radius: 14px;
}

.hsz-main-home .hsz-city-card__content strong {
	font-size: 1.2rem;
	line-height: 1.1;
}

.hsz-main-home .hsz-city-card__content span {
	display: none;
}

.hsz-main-home .hsz-city-card__arrow {
	width: 30px;
	height: 30px;
	border-color: rgba(2, 175, 166, 0.2);
	background: var(--hsz-teal-soft);
	color: var(--hsz-teal);
	font-size: 0.96rem;
}

.hsz-main-home .hsz-city-selector__status {
	display: flex;
	width: auto;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	margin: 10px auto 0;
	padding: 0;
	background: transparent;
}

.hsz-main-home .hsz-city-selector__status::before {
	display: none;
}

.hsz-main-home .hsz-city-selector__status strong {
	display: inline-flex;
	align-items: center;
	padding: 4px 13px;
	border-radius: 999px;
	background: var(--hsz-teal-soft);
	color: #007a73;
	font-size: 0.72rem;
}

.hsz-main-home .hsz-city-selector__status strong::before {
	margin-right: 7px;
	content: "●";
	font-size: 0.62rem;
}

.hsz-main-home .hsz-city-selector__status span {
	color: #748091;
	font-size: 0.7rem;
}

.hsz-main-home .hsz-home-categories {
	padding: 0 0 20px !important;
	background: #f6f8fb;
}

.hsz-main-home .hsz-home-categories .et_pb_row {
	width: min(calc(100% - 32px), 1220px);
	padding: 13px 24px 15px !important;
	border: 1px solid rgba(220, 229, 237, 0.58);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 10px 32px rgba(5, 22, 41, 0.05);
}

.hsz-main-home .hsz-home-categories .et_pb_text {
	margin-bottom: 0;
}

.hsz-main-home .hsz-category-strip-title {
	margin: 0;
	color: var(--hsz-navy);
	font-size: 0.78rem;
	font-weight: 500;
	text-align: center;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact {
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0;
	margin-top: 9px;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--static {
	pointer-events: none;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card {
	display: flex;
	min-height: 46px;
	flex-direction: row;
	justify-content: center;
	gap: 9px;
	padding: 3px 14px;
	border: 0;
	border-right: 1px solid var(--hsz-border);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	text-align: left;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card:last-child {
	border-right: 0;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card:hover {
	background: var(--hsz-blue-soft);
	box-shadow: none;
	transform: none;
}

.hsz-main-home .hsz-home-categories .hsz-category-card--static {
	cursor: default;
	transition: none;
}

.hsz-main-home .hsz-home-categories .hsz-category-card--static:hover {
	background: transparent;
	color: var(--hsz-navy) !important;
}

.hsz-main-home .hsz-category-feedback {
	margin: 8px 0 0;
	color: var(--hsz-muted);
	font-size: 0.75rem;
	line-height: 1.45;
	text-align: center;
}

.hsz-main-home .hsz-category-feedback strong {
	color: var(--hsz-teal-dark);
	font-weight: 700;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card__icon {
	width: 36px;
	height: 36px;
	margin: 0;
	flex: 0 0 36px;
	border-radius: 10px;
	background: transparent;
	color: var(--hsz-category-color, var(--hsz-teal));
	font-size: 17px;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card__content strong {
	margin: 0;
	font-size: 0.72rem;
	line-height: 1.25;
}

.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card__arrow {
	display: none;
}

@media (max-width: 980px) {
	.hsz-main-home .hsz-hero--home {
		padding-top: 66px !important;
		background-position: center top;
	}

	.hsz-main-home .hsz-hero--home .hsz-city-selector {
		max-width: 680px;
	}

	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 8px;
	}

	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card {
		border: 0;
	}
}

@media (max-width: 620px) {
	.hsz-main-home #main-header,
	.hsz-main-home #main-header .container,
	.hsz-main-home #main-header .logo_container,
	.hsz-standard-page #main-header,
	.hsz-standard-page #main-header .container,
	.hsz-standard-page #main-header .logo_container {
		height: 62px;
	}

	.hsz-main-home #logo,
	.hsz-standard-page #logo {
		width: 190px !important;
		max-width: 190px;
		max-height: 38px !important;
	}

	.hsz-main-home .hsz-hero--home {
		padding: 52px 0 22px !important;
		background-position: center top;
	}

	.hsz-main-home .hsz-hero--home::before {
		display: none;
	}

	.hsz-main-home .hsz-hero--home .hsz-hero-copy h1 {
		font-size: clamp(2.15rem, 11vw, 2.8rem);
	}

	.hsz-main-home .hsz-hero--home .hsz-city-selector__list {
		grid-template-columns: 1fr;
		gap: 11px;
	}

	.hsz-main-home .hsz-city-card {
		display: grid;
		grid-template-columns: 94px minmax(0, 1fr) auto;
		min-height: 0;
		gap: 12px;
		padding: 9px;
		text-align: left;
	}

	.hsz-main-home .hsz-city-card__image-wrap {
		height: 74px;
	}

	.hsz-main-home .hsz-city-card__content strong {
		font-size: 1.1rem;
	}

	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact {
		grid-template-columns: 1fr 1fr;
	}

	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card {
		justify-content: flex-start;
	}
}

/* 2026.09.03 – szolgáltatói csatlakozási oldal: teljes landing elrendezés */
body.hsz-join-landing #main-header {
	display: none !important;
}

body.hsz-join-landing #page-container {
	padding-top: 0 !important;
	background: #fff;
}

.hsz-join-landing .hsz-join-hero {
	position: relative;
	min-height: 670px;
	padding: 18px 0 62px !important;
	background: #f8fafc;
}

.hsz-join-landing .hsz-join-hero::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: center 28% / 120% auto no-repeat url("assets/hero/home-hero-background-v2.png");
	content: "";
	opacity: 0.54;
	pointer-events: none;
}

.hsz-join-landing .hsz-join-hero::after {
	display: none;
}

.hsz-join-landing .hsz-join-hero > .et_pb_row {
	position: relative;
	z-index: 1;
}

.hsz-join-landing .hsz-join-topbar {
	width: min(88%, 1180px);
	padding: 0 !important;
}

.hsz-join-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.hsz-join-nav .hsz-join-nav__cities {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 2px;
	color: #718092;
	font-size: 0.9rem;
	font-weight: 600;
}

.hsz-join-nav .hsz-join-nav__cities::before {
	display: inline-block;
	width: 19px;
	height: 19px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23718092' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
	content: "";
}

.hsz-join-nav .hsz-join-nav__cities:hover {
	color: var(--hsz-teal);
}

.hsz-join-nav .hsz-join-nav__logo {
	display: block;
	width: clamp(190px, 19vw, 230px);
	line-height: 0;
}

.hsz-join-nav .hsz-join-nav__logo img {
	display: block;
	width: 100%;
	height: auto;
}

.hsz-join-landing .hsz-join-hero__row {
	width: min(88%, 1280px);
	padding: 48px 0 0 !important;
	gap: 4.5%;
}

@media (min-width: 981px) {
	.hsz-join-landing .hsz-join-hero__row {
		display: grid;
		grid-template-columns: minmax(0, 58fr) minmax(400px, 42fr);
		align-items: center;
	}

	.hsz-join-landing .hsz-join-hero__row > .et_pb_column {
		width: auto !important;
		margin-right: 0 !important;
	}
}

.hsz-join-landing .hsz-join-hero__copy {
	position: relative;
	isolation: isolate;
}

.hsz-join-landing .hsz-join-hero__copy::before {
	position: absolute;
	inset: -28px -40px -32px -28px;
	z-index: 0;
	background: radial-gradient(ellipse at 45% 50%, rgba(248, 250, 252, 0.98), rgba(248, 250, 252, 0.88) 61%, transparent 83%);
	content: "";
	pointer-events: none;
}

.hsz-join-landing .hsz-join-hero__copy > .et_pb_text_inner {
	position: relative;
	z-index: 1;
}

.hsz-join-landing .hsz-join-hero__copy h1 {
	margin: 4px 0 10px;
	font-size: clamp(3.5rem, 6vw, 5.8rem);
	line-height: 0.94;
	letter-spacing: -0.055em;
}

.hsz-join-landing .hsz-join-hero__copy h1 .hsz-script {
	color: var(--hsz-teal);
	font-size: 1.03em;
}

.hsz-join-hero__promise {
	max-width: 660px;
	margin: 18px 0 10px;
	color: var(--hsz-navy) !important;
	font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
	font-weight: 700;
	line-height: 1.45;
}

.hsz-join-landing .hsz-join-hero__copy .hsz-lead {
	max-width: 620px;
	margin: 0;
	font-size: 1rem;
	line-height: 1.7;
}

.hsz-join-cta-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 18px;
	margin-top: 26px;
}

.hsz-join-cta-row .hsz-button--primary,
.hsz-build-together .hsz-button--primary {
	border-color: var(--hsz-teal);
	background: var(--hsz-teal);
	box-shadow: 0 10px 24px rgba(2, 175, 166, 0.2);
	color: #fff !important;
}

.hsz-join-cta-row .hsz-button--primary:hover,
.hsz-build-together .hsz-button--primary:hover {
	border-color: #02978f;
	background: #02978f;
}

.hsz-join-scroll-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 2px 8px;
	border-bottom: 2px solid rgba(2, 175, 166, 0.28);
	color: var(--hsz-navy);
	font-size: 0.93rem;
	font-weight: 700;
}

.hsz-join-scroll-link::after {
	content: "↓";
	color: var(--hsz-teal);
	font-size: 1.1rem;
}

.hsz-join-trust-points {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	margin: 22px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hsz-join-trust-points li {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 !important;
	padding: 0 !important;
	color: #657487;
	font-size: 0.78rem;
	font-weight: 600;
}

.hsz-join-trust-points li::before {
	content: "✓";
	color: var(--hsz-green);
	font-weight: 800;
}

.hsz-join-preview {
	position: relative;
	width: 100%;
	max-width: 480px;
	margin-left: auto;
	padding: 28px;
	border: 1px solid rgba(2, 175, 166, 0.18);
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 18px 42px rgba(5, 22, 41, 0.1);
}

.hsz-join-preview::before,
.hsz-join-preview::after {
	position: absolute;
	z-index: -1;
	border-radius: 24px;
	content: "";
}

.hsz-join-preview::before {
	inset: 12px -10px -10px 12px;
	background: rgba(2, 175, 166, 0.06);
}

.hsz-join-preview::after {
	top: -10px;
	right: 32px;
	width: 56px;
	height: 6px;
	background: var(--hsz-amber);
}

.hsz-join-preview__eyebrow {
	margin: 0 0 15px;
	color: var(--hsz-teal);
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.hsz-join-preview__search {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 18px;
	padding: 14px 16px;
	border: 1px solid var(--hsz-border);
	border-radius: 12px;
	background: #f8fafc;
	color: #768395;
	font-size: 0.84rem;
}

.hsz-join-preview__search strong {
	color: var(--hsz-navy);
}

.hsz-typing-text {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	min-width: 132px;
	white-space: nowrap;
}

.hsz-typing-text::after {
	display: inline-block;
	width: 1px;
	height: 1.05em;
	margin-left: 3px;
	background: currentColor;
	content: "";
	animation: hsz-typing-caret 760ms steps(1, end) infinite;
}

@keyframes hsz-typing-caret {
	0%, 48% { opacity: 1; }
	49%, 100% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.hsz-typing-text::after {
		animation: none;
	}
}

.hsz-join-preview__card {
	display: grid;
	grid-template-columns: 70px minmax(0, 1fr);
	gap: 10px 17px;
	align-items: center;
	padding: 22px;
	border: 1px solid rgba(2, 175, 166, 0.28);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(5, 22, 41, 0.07);
}

/* Transform only: the result's full-sized space stays reserved throughout. */
.hsz-join-preview[data-hsz-search-phase] .hsz-join-preview__card {
	opacity: 0;
	transform: scale(0.18);
	transform-origin: center;
	transition: opacity 280ms ease, transform 320ms ease;
}

.hsz-join-preview[data-hsz-search-phase="result"] .hsz-join-preview__card {
	opacity: 1;
	transform: scale(1);
	transition: opacity 400ms ease, transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

@media (prefers-reduced-motion: reduce) {
	.hsz-join-preview[data-hsz-search-phase] .hsz-join-preview__card {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

.hsz-join-preview__card img {
	grid-column: 1;
	grid-row: 1 / 3;
	width: 70px;
	height: 70px;
	border-radius: 18px;
}

.hsz-join-preview__card > p:empty,
.hsz-join-preview__card > div > p:empty {
	display: none;
}

.hsz-join-preview__card > div {
	display: contents;
}

.hsz-join-preview__card h2 {
	grid-column: 2;
	grid-row: 2;
	align-self: start;
	margin: 0;
	font-size: 1.3rem;
	line-height: 1.25;
}

.hsz-join-preview__card > div > p:not(:empty) {
	grid-column: 1 / -1;
	grid-row: 3;
	margin: 0;
	padding-top: 4px;
	color: var(--hsz-muted);
	font-size: 0.88rem;
	line-height: 1.5;
}

.hsz-join-preview__verified {
	display: inline-flex;
	grid-column: 2;
	grid-row: 1;
	justify-self: start;
	align-self: end;
	padding: 5px 10px;
	border-radius: 999px;
	background: var(--hsz-green-soft);
	color: var(--hsz-green);
	font-size: 0.72rem;
	font-weight: 700;
}

.hsz-join-preview__result {
	margin-top: 18px;
	padding: 12px 14px;
	border-radius: 12px;
	background: var(--hsz-teal-soft);
	color: #087e77;
	font-size: 0.84rem;
	font-weight: 700;
	text-align: center;
}

.hsz-join-landing .hsz-join-benefits,
.hsz-join-landing .hsz-join-categories,
.hsz-join-landing .hsz-registration-section,
.hsz-join-landing .hsz-join-faq {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.hsz-join-landing .hsz-join-benefits {
	background: #fff;
}

.hsz-join-landing .hsz-join-categories {
	background: #f6f8fb;
}

.hsz-join-landing .hsz-registration-section {
	background: linear-gradient(135deg, #effbf9 0%, #f4f8fd 100%);
}

.hsz-join-landing .hsz-join-faq {
	background: #fff;
}

.hsz-join-landing .hsz-join-benefits .et_pb_row,
.hsz-join-landing .hsz-join-categories .et_pb_row,
.hsz-join-landing .hsz-registration-section .et_pb_row,
.hsz-join-landing .hsz-join-faq .et_pb_row {
	width: min(88%, 1180px);
}

.hsz-join-section-heading {
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.hsz-join-section-heading h2 {
	margin-bottom: 10px;
	font-size: clamp(2rem, 3.7vw, 3.2rem);
	line-height: 1.08;
	letter-spacing: -0.035em;
}

.hsz-join-section-heading > p:last-child {
	margin: 0 auto;
	color: var(--hsz-muted);
	font-size: 1rem;
	line-height: 1.7;
}

.hsz-join-landing .hsz-benefit-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-top: 34px;
}

.hsz-join-landing .hsz-benefit-grid article {
	min-height: 205px;
	padding: 23px;
	border: 1px solid rgba(220, 229, 237, 0.84);
	border-radius: 20px;
	background: linear-gradient(145deg, #fff, #fbfdfd);
	box-shadow: 0 10px 30px rgba(5, 22, 41, 0.055);
}

.hsz-join-landing .hsz-benefit-grid article > span {
	width: 42px;
	height: 42px;
	border-radius: 13px;
	background: var(--hsz-teal-soft);
	color: var(--hsz-teal);
}

.hsz-join-landing .hsz-benefit-grid h3 {
	margin-bottom: 8px;
	font-size: 1.05rem;
}

.hsz-join-landing .hsz-benefit-grid p {
	margin: 0;
	color: var(--hsz-muted);
	font-size: 0.86rem;
	line-height: 1.62;
}

.hsz-join-landing .hsz-join-category-list {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: 100%;
	max-width: 900px;
	gap: 12px;
	margin: 28px auto 0;
}

.hsz-join-landing .hsz-join-category-list article {
	position: relative;
	min-height: 178px;
	padding: 68px 18px 18px;
	border: 1px solid var(--hsz-border);
	border-top: 1px solid var(--hsz-border);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 9px 24px rgba(5, 22, 41, 0.045);
}

.hsz-join-category::before {
	position: absolute;
	top: 16px;
	left: 18px;
	width: 42px;
	height: 42px;
	background: center / contain no-repeat;
	content: "";
}

.hsz-join-category--beauty::before { background-image: url("assets/icons/szepsegapolas.svg"); }
.hsz-join-category--wellness::before { background-image: url("assets/icons/egeszseg-wellness-es-mozgas.svg"); }
.hsz-join-category--dogs::before { background-image: url("assets/icons/kutyas-szolgaltatok.svg"); }
.hsz-join-category--repair::before { background-image: url("assets/icons/szerelok-es-szervizek.svg"); }
.hsz-join-category--car::before { background-image: url("assets/icons/auto-es-jarmuvek.svg"); }
.hsz-join-category--tattoo::before { background-image: url("assets/icons/tattoo-piercing.svg"); }
.hsz-join-category--photo::before { background-image: url("assets/icons/fotozas.svg"); }

.hsz-join-landing .hsz-join-category-list h3 {
	margin-bottom: 7px;
	font-size: 0.98rem;
	line-height: 1.35;
}

.hsz-join-landing .hsz-join-category-list p {
	margin: 0;
	color: var(--hsz-muted);
	font-size: 0.76rem;
	line-height: 1.55;
}

.hsz-join-landing .hsz-category-question {
	display: block;
	max-width: 920px;
	margin: 18px auto 0;
	padding: 20px 22px;
	border: 1px solid rgba(2, 175, 166, 0.18);
	background: #fff;
	text-align: center;
}

.hsz-join-landing .hsz-category-question p {
	margin: 0;
	color: var(--hsz-muted);
	font-size: 0.84rem;
	line-height: 1.65;
}

.hsz-join-landing .hsz-category-question a {
	color: #078d85;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
	overflow-wrap: anywhere;
}

/* Keep answer spacing on the box, independent of Divi's last-paragraph reset. */
.hsz-help details[open] {
	padding-bottom: 24px;
}

.hsz-join-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 30px 0 24px !important;
	padding: 0 !important;
	list-style: none !important;
}

.hsz-join-steps li {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 !important;
	padding: 14px 16px !important;
	border: 1px solid rgba(2, 175, 166, 0.18);
	border-radius: 15px;
	background: rgba(255, 255, 255, 0.82);
}

.hsz-join-steps li > span {
	display: grid;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	place-items: center;
	border-radius: 11px;
	background: var(--hsz-teal);
	color: #fff;
	font-weight: 800;
}

.hsz-join-steps strong,
.hsz-join-steps small {
	display: block;
}

.hsz-join-steps strong {
	font-size: 0.86rem;
}

.hsz-join-steps small {
	margin-top: 2px;
	color: var(--hsz-muted);
	font-size: 0.68rem;
	line-height: 1.35;
}

.hsz-join-account-module .hsz-account-entry,
.hsz-join-account-module .hsz-account-message {
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
}

.hsz-join-landing .hsz-join-faq > .et_pb_row {
	align-items: stretch;
}

.hsz-join-landing .hsz-faq details {
	padding: 16px 18px;
	box-shadow: 0 5px 18px rgba(5, 22, 41, 0.035);
}

.hsz-join-landing .hsz-build-together {
	height: 100%;
	padding: 34px;
	border: 0;
	background: linear-gradient(145deg, var(--hsz-navy), #0b3048);
	box-shadow: 0 20px 42px rgba(5, 22, 41, 0.16);
	color: #fff;
}

.hsz-join-landing .hsz-build-together .hsz-eyebrow {
	color: #65ddd7;
}

.hsz-join-landing .hsz-build-together h2,
.hsz-join-landing .hsz-build-together p {
	color: #fff;
}

.hsz-join-landing .hsz-build-together h2 {
	font-size: clamp(1.55rem, 2.7vw, 2.25rem);
	line-height: 1.2;
}

.hsz-join-landing .hsz-build-together p {
	opacity: 0.78;
	line-height: 1.7;
}

@media (max-width: 980px) {
	.hsz-join-landing .hsz-join-hero {
		min-height: 0;
		padding-bottom: 46px !important;
	}

	.hsz-join-landing .hsz-join-hero::before {
		background-position: center top;
		background-size: cover;
		opacity: 0.36;
	}

	.hsz-join-landing .hsz-join-hero__row {
		width: min(86%, 720px);
		padding-top: 34px !important;
	}

	.hsz-join-preview {
		max-width: 560px;
		margin: 36px auto 0;
		transform: none;
	}

	.hsz-join-landing .hsz-join-category-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-join-landing .hsz-join-faq > .et_pb_row {
		display: block;
	}

	.hsz-join-landing .hsz-build-together {
		margin-top: 26px;
	}
}

@media (max-width: 620px) {
	.hsz-join-nav .hsz-join-nav__logo {
		width: 170px;
	}

	.hsz-join-nav .hsz-join-nav__cities {
		font-size: 0.78rem;
	}

	body.admin-bar.hsz-join-landing #page-container {
		padding-top: 0 !important;
	}

	.hsz-join-landing .hsz-join-hero {
		padding: 12px 0 38px !important;
	}

	.hsz-join-landing .hsz-join-topbar,
	.hsz-join-landing .hsz-join-hero__row,
	.hsz-join-landing .hsz-join-benefits .et_pb_row,
	.hsz-join-landing .hsz-join-categories .et_pb_row,
	.hsz-join-landing .hsz-registration-section .et_pb_row,
	.hsz-join-landing .hsz-join-faq .et_pb_row {
		width: calc(100% - 36px);
	}

	.hsz-join-nav a {
		font-size: 0.82rem;
	}

	.hsz-join-landing .hsz-join-hero__row {
		padding-top: 20px !important;
	}

	.hsz-join-landing .hsz-join-hero__copy h1 {
		font-size: clamp(3rem, 16vw, 4rem);
	}

	.hsz-join-hero__promise {
		font-size: 1.18rem !important;
	}

	.hsz-join-cta-row {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.hsz-join-cta-row .hsz-button,
	.hsz-join-scroll-link {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	.hsz-join-trust-points {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.hsz-join-preview {
		padding: 18px;
		border-radius: 21px;
	}

	.hsz-join-landing .hsz-benefit-grid,
	.hsz-join-landing .hsz-join-category-list,
	.hsz-join-steps {
		grid-template-columns: 1fr;
	}

	.hsz-join-landing .hsz-benefit-grid article,
	.hsz-join-landing .hsz-join-category-list article {
		min-height: 0;
	}

	.hsz-join-landing .hsz-category-question {
		align-items: flex-start;
		flex-direction: column;
	}

	.hsz-join-landing .hsz-category-question .hsz-button {
		width: 100%;
		text-align: center;
	}

	.hsz-join-landing .hsz-join-benefits,
	.hsz-join-landing .hsz-join-categories,
	.hsz-join-landing .hsz-registration-section,
	.hsz-join-landing .hsz-join-faq {
		padding-top: 44px !important;
		padding-bottom: 44px !important;
	}
}

/* Nine service categories: readable labels, consistent rows, no horizontal overflow. */
.hsz-category-grid--compact,
.hsz-city-landing .hsz-city-categories .hsz-category-grid--compact,
.hsz-main-home .hsz-home-categories .hsz-category-grid--compact {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}
.hsz-city-landing .hsz-city-categories .hsz-category-card,
.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card {
	justify-content: flex-start;
	min-width: 0;
	min-height: 72px;
	padding: 12px 16px;
	gap: 12px;
	border: 1px solid var(--hsz-border);
	border-radius: 12px;
}
.hsz-city-landing .hsz-city-categories .hsz-category-card:last-child,
.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card:last-child {
	border-right: 1px solid var(--hsz-border);
}
.hsz-city-landing .hsz-city-categories .hsz-category-card__content strong,
.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card__content strong {
	font-size: 0.9rem;
	line-height: 1.3;
	text-align: left;
}
.hsz-city-landing .hsz-city-categories .hsz-category-card__icon,
.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card__icon {
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
}
.hsz-provider-card--category-fotozas .hsz-provider-card__category-icon,
.hsz-provider-card--category-haz-es-haz-koruli-munkak .hsz-provider-card__category-icon,
.hsz-provider-card--category-vallalkozas-es-ugyintezes .hsz-provider-card__category-icon {
	background: white;
}
.hsz-join-category--photo::before { background-image: url("assets/icons/kreativ-szolgaltatasok.svg"); }
.hsz-join-category--house::before { background-image: url("assets/icons/haz-es-haz-koruli-munkak.svg"); }
.hsz-join-category--business::before { background-image: url("assets/icons/vallalkozas-es-ugyintezes.svg"); }
.hsz-join-landing .hsz-join-category-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 767px) {
	.hsz-category-grid--compact,
	.hsz-city-landing .hsz-city-categories .hsz-category-grid--compact,
	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact,
	.hsz-join-landing .hsz-join-category-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.hsz-city-landing .hsz-city-categories .hsz-category-card,
	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact .hsz-category-card {
		padding: 10px;
		gap: 8px;
	}
}
@media (max-width: 480px) {
	.hsz-category-grid--compact,
	.hsz-city-landing .hsz-city-categories .hsz-category-grid--compact,
	.hsz-main-home .hsz-home-categories .hsz-category-grid--compact,
	.hsz-join-landing .hsz-join-category-list {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Provider detail pages: compact navigation and category identity instead of a blog header. */
.single-provider #page-container { padding-top: 0 !important; }
.single-provider #main-header,
.single-provider #top-header { display: none; }
.hsz-provider-page { background: #f7f9fc !important; }
.hsz-provider-page__inner { width: 92%; max-width: 1280px; margin: 0 auto; padding: 24px 0 64px; }
.hsz-profile-nav { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 26px; font-size: 0.9rem; }
.hsz-profile-nav a { color: var(--hsz-muted); font-weight: 600; }
.hsz-profile-nav__back { display: inline-flex; align-items: center; gap: 10px; }
.hsz-profile-nav__back > span { font-size: 1.6rem; line-height: 1; }
.hsz-profile-nav__join strong { color: #00877f; text-decoration: underline; text-underline-offset: 4px; }
.hsz-profile-nav a:hover { color: var(--hsz-navy); }
.hsz-profile-nav a:focus-visible { outline: 3px solid var(--hsz-blue); outline-offset: 5px; border-radius: 4px; }
.hsz-provider-sheet { margin: 0; border-radius: 22px; background: #fff; box-shadow: 0 12px 40px rgba(5, 22, 41, 0.08); }
.hsz-provider-sheet--unified { background: transparent; box-shadow: none; }
.hsz-provider-sheet--unified .hsz-provider-page__content { padding: 0; }
.hsz-profile-titlebar { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); align-items: center; gap: 32px; padding: 30px 32px; margin: 0; border-radius: 22px 22px 0 0; background: var(--hsz-profile-accent); color: var(--hsz-profile-foreground); }
.hsz-profile-titlebar h1 { margin: 0; padding: 0; color: inherit; font-size: clamp(1.5rem, 2.4vw, 2.25rem); line-height: 1.25; font-weight: 800; overflow-wrap: anywhere; }
.hsz-profile-titlebar__category { display: flex; align-items: center; justify-self: end; gap: 14px; max-width: 100%; }
.hsz-profile-titlebar__category img { width: 56px; height: 56px; flex: 0 0 56px; border-radius: 14px; outline: 1px solid rgba(255,255,255,0.45); }
.hsz-profile-titlebar__category strong { display: block; font-size: 1rem; line-height: 1.35; }
.hsz-profile-titlebar__category span { display: block; margin-top: 5px; font-size: 0.85rem; line-height: 1.45; }
.hsz-provider-page__content { margin: 0; padding: 32px; }
.hsz-provider-page__content .hsz-profile-card,
.hsz-provider-page__content .hsz-profile-sidebar { min-width: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.hsz-provider-page__content .et_pb_section { padding: 0 !important; background: transparent !important; }
.hsz-provider-page__content .et_pb_row { width: 100% !important; max-width: none !important; padding: 0 !important; }
.hsz-provider-page__content #et-boc { background: transparent; }
.hsz-provider-page__content .hsz-profile { margin-top: 26px; }
.hsz-profile-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 40px; margin: 30px 0 42px; }
.hsz-profile-photo { margin: 0; position: relative; min-width: 0; }
.hsz-profile-photo img { display: block; width: 100%; height: 420px; object-fit: cover; border-radius: 16px; }
.hsz-profile-photo figcaption { position: absolute; bottom: 16px; left: 16px; padding: 5px 12px; border-radius: 20px; background: rgba(255,255,255,.94); color: var(--hsz-muted); font-size: 12px; }
.hsz-profile-eyebrow { display: block; margin-bottom: 9px; color: #00877f; text-transform: uppercase; letter-spacing: .09em; font-size: 11px; font-weight: 800; }
.hsz-profile-intro__text p { color: var(--hsz-muted); line-height: 1.8; }
.hsz-profile-intro__text .hsz-button { margin-top: 18px; background: #02afa6; border-color: #02afa6; box-shadow: 0 4px 12px rgba(5,22,41,.06); gap: 10px; }
.hsz-profile-photo:only-child, .hsz-profile-intro__text:only-child { grid-column: 1 / -1; }
.hsz-profile-section li strong { display: block; color: var(--hsz-navy); margin-bottom: 4px; }
.hsz-profile-section li span { display: block; }
.hsz-provider-page__content .hsz-profile--detailed { grid-template-columns: minmax(0, 1.6fr) minmax(260px, 1fr); gap: 52px; padding-top: 34px; border-top: 1px solid var(--hsz-border); }
.hsz-profile-section { margin-top: 30px; }
.hsz-profile-section ul { list-style: none; padding: 0 !important; }
.hsz-profile-section li { position: relative; padding: 0 0 18px 22px; margin-bottom: 18px; border-bottom: 1px solid #edf1f5; color: var(--hsz-muted); line-height: 1.8; }
.hsz-profile-section li::before { content: '✓'; position: absolute; left: 0; color: #00877f; font-weight: 700; }
.hsz-profile-section li:last-child { margin-bottom: 0; }
.hsz-provider-page__content .hsz-profile-sidebar { padding-left: 32px; border-left: 1px solid var(--hsz-border); scroll-margin-top: 28px; }
.hsz-contact-reveal { border: 1px solid #dce5ee; border-radius: 12px; background: #f7f9fc; overflow: hidden; }
.hsz-contact-reveal summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 14px; cursor: pointer; list-style: none; color: var(--hsz-navy); font-weight: 600; }
.hsz-contact-reveal summary::-webkit-details-marker { display: none; }
.hsz-contact-reveal__verb { color: #00877f; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
.hsz-contact-reveal[open] { background: #fff; border-color: #a5dcd7; }
.hsz-contact-reveal summary:focus-visible { outline: 3px solid #0688f4; outline-offset: -3px; border-radius: 10px; }
.hsz-profile-contact .hsz-contact-reveal__value { padding: 0 14px 14px; }
.hsz-profile-contact .hsz-contact-reveal__value a { display: block; padding: 0; border-radius: 0; color: #00786f; background: none; font-weight: 600; overflow-wrap: anywhere; user-select: text; }
.hsz-contact-reveal__value small { display: block; margin-top: 8px; line-height: 1.5; color: var(--hsz-muted); font-size: 11px; }
.hsz-profile-inquiries { display: grid; gap: 10px; margin: 24px 0; padding-top: 22px; border-top: 1px solid var(--hsz-border); }
.hsz-profile-inquiry { border: 1px solid #cfe5e2; border-radius: 12px; background: #f7fcfb; overflow: clip; }
.hsz-profile-inquiry summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 15px; color: #00786f; cursor: pointer; font-size: 14px; font-weight: 700; list-style: none; }
.hsz-profile-inquiry summary::-webkit-details-marker { display: none; }
.hsz-profile-inquiry summary::after { content: '+'; flex: 0 0 auto; font-size: 20px; font-weight: 500; line-height: 1; }
.hsz-profile-inquiry[open] summary::after { content: '−'; }
.hsz-profile-inquiry summary:focus-visible { outline: 3px solid #0688f4; outline-offset: -3px; }
.hsz-profile-inquiry--report { border-color: #e2e7eb; background: #fbfcfd; }
.hsz-profile-inquiry--report summary { color: var(--hsz-muted); }
.hsz-profile-inquiry__body { padding: 0 15px 16px; }
.hsz-profile-inquiry__body > p { margin: 0 0 14px; color: var(--hsz-muted); font-size: 12px; line-height: 1.6; }
.hsz-inquiry-form { display: grid; gap: 13px; }
.hsz-inquiry-form > label { display: grid; gap: 6px; color: var(--hsz-navy); font-size: 12px; font-weight: 700; }
.hsz-inquiry-label { display: inline; }
.hsz-inquiry-form input[type="text"], .hsz-inquiry-form input[type="email"], .hsz-inquiry-form textarea { width: 100%; min-height: 42px; padding: 10px 11px; border: 1px solid #cbd8e2; border-radius: 8px; background: #fff; color: var(--hsz-navy); font: inherit; font-weight: 400; box-shadow: none; }
.hsz-inquiry-form textarea { min-height: 112px; resize: vertical; }
.hsz-inquiry-form input:focus, .hsz-inquiry-form textarea:focus { border-color: #0688f4; outline: 2px solid rgba(6,136,244,.18); outline-offset: 1px; }
.hsz-inquiry-form .hsz-inquiry-consent { display: grid; grid-template-columns: 18px minmax(0,1fr); align-items: start; gap: 9px; color: var(--hsz-muted); font-size: 11px; line-height: 1.55; font-weight: 400; }
.hsz-inquiry-consent input { width: 17px; height: 17px; margin: 2px 0 0; }
.hsz-inquiry-consent a { color: #00786f; text-decoration: underline; text-underline-offset: 2px; }
.hsz-inquiry-form .hsz-button { width: 100%; min-height: 44px; justify-content: center; margin: 0; padding: 10px 14px; font-size: 13px; }
.hsz-profile-inquiries > .hsz-form-notice { margin: 0 0 4px; padding: 11px 13px; font-size: 12px; }
.hsz-profile-inquiries > .hsz-form-notice p { margin: 0; }

.hsz-public-contact-page { background: radial-gradient(circle at 88% 10%, rgba(2,175,166,.10), transparent 34%), #f7fbff; }
.hsz-public-contact-page__row { display: grid !important; grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr); gap: clamp(38px, 7vw, 84px); align-items: start; }
.hsz-public-contact-page__row::after { display: none; }
.hsz-public-contact-page__row > .et_pb_column { width: auto !important; margin: 0 !important; }
.hsz-public-contact-page h1 { margin: 0 0 18px; color: var(--hsz-navy); font-size: clamp(2.35rem, 4vw, 3.6rem); line-height: 1.06; letter-spacing: -.04em; }
.hsz-contact-guidance { display: grid; gap: 8px; margin-top: 34px; padding: 24px; border: 1px solid var(--hsz-border); border-radius: 20px; background: rgba(255,255,255,.78); }
.hsz-contact-guidance h2 { margin: 8px 0 0; color: var(--hsz-navy); font-size: 1rem; }
.hsz-contact-guidance p { margin: 0 0 8px; color: var(--hsz-muted); font-size: .9rem; line-height: 1.65; }
.hsz-site-contact { padding: clamp(24px, 5vw, 42px); border: 1px solid #cfe5e2; border-radius: 24px; background: #fff; box-shadow: 0 20px 54px rgba(5,22,41,.08); }
.hsz-site-contact .hsz-inquiry-form { gap: 18px; }
.hsz-site-contact .hsz-inquiry-form > label { gap: 8px; font-size: .88rem; }
.hsz-site-contact .hsz-inquiry-form input[type="text"], .hsz-site-contact .hsz-inquiry-form input[type="email"], .hsz-site-contact .hsz-inquiry-form textarea { min-height: 50px; padding: 13px 15px; border-radius: 12px; }
.hsz-site-contact .hsz-inquiry-form textarea { min-height: 160px; }
.hsz-site-contact .hsz-inquiry-form .hsz-inquiry-consent { font-size: .78rem; }
.hsz-site-contact .hsz-inquiry-form .hsz-button { width: auto; min-height: 50px; justify-self: start; padding: 12px 22px; font-size: .9rem; }
.hsz-site-contact > .hsz-form-notice { margin: 0 0 20px; }
.hsz-legal-page .et_pb_row { max-width: 900px; }
.hsz-legal-draft-warning { margin: 26px 0 32px; padding: 20px 22px; border: 1px solid #efd488; border-radius: 16px; background: #fff8e8; color: var(--hsz-navy); }
.hsz-legal-draft-warning p { margin: 7px 0 0; }
@media (max-width: 900px) {
	.hsz-public-contact-page__row { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
	.hsz-site-contact .hsz-inquiry-form .hsz-button { width: 100%; justify-content: center; }
}
.hsz-stats { padding: clamp(20px,4vw,36px); margin: 24px 0 36px; background: #fff; border: 1px solid var(--hsz-border); border-radius: 18px; scroll-margin-top: 110px; }
.hsz-stats__header { display: flex; justify-content: space-between; gap: 28px; flex-wrap: wrap; margin-bottom: 22px; }
.hsz-stats__header h2 { font-size: clamp(22px,3vw,30px); }
.hsz-stats__header form { display: flex; align-items: center; align-self: center; flex-wrap: wrap; gap: 10px; }
.hsz-stats__header select { max-width: 100%; padding: 10px 12px; border: 1px solid var(--hsz-border); border-radius: 8px; background: #fff; color: var(--hsz-navy); }
.hsz-stats__header button { padding: 10px 16px; border: 0; border-radius: 8px; background: #00877f; color: #fff; font-weight: 600; cursor: pointer; }
.hsz-stats__totals { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.hsz-stats__totals > div { padding: 20px; background: #f1faf9; border-radius: 12px; }
.hsz-stats__totals strong { display: block; color: #00786f; font-size: 36px; line-height: 1.3; }
.hsz-stats__totals span { font-size: 13px; color: var(--hsz-muted); }
.hsz-stats__empty { margin-top: 20px; }
.hsz-stats__breakdown { margin-top: 22px; }
.hsz-stats__breakdown summary { cursor: pointer; color: #00786f; font-weight: 600; }
.hsz-stats__breakdown table { margin-top: 16px; width: 100%; border-collapse: collapse; font-size: 13px; }
.hsz-stats__breakdown caption { text-align: left; color: var(--hsz-muted); margin-bottom: 8px; }
.hsz-stats__breakdown th, .hsz-stats__breakdown td { padding: 10px; border-bottom: 1px solid var(--hsz-border); text-align: left; }
.hsz-stats__breakdown td:last-child, .hsz-stats__breakdown thead th:last-child { text-align: right; }
.hsz-stats .hsz-stats__note { margin-top: 20px; color: var(--hsz-muted); font-size: 12px; line-height: 1.7; }
@media(max-width:600px) { .hsz-stats__totals { grid-template-columns: minmax(0,1fr); } }
.hsz-profile-social-heading { margin-top: 26px; font-size: 17px; }
.hsz-profile-badges { align-items: center; margin: 0 0 24px; }
.hsz-profile-badges .hsz-badge { gap: 5px; padding: 7px 11px; line-height: 1.3; }
.hsz-social-filter { position: absolute; pointer-events: none; }
.hsz-provider-page__content .hsz-profile-socials { display: flex; flex-wrap: wrap; gap: 12px; margin: 14px 0 24px; }
.hsz-provider-page__content .hsz-profile-socials a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border-radius: 50%; background: transparent; transition: transform .15s; }
.hsz-provider-page__content .hsz-profile-socials img { display: block; width: 40px; height: 40px; object-fit: contain; filter: var(--hsz-social-filter, grayscale(1)); }
.hsz-profile-socials a:hover { transform: translateY(-2px); }
.hsz-profile-socials a:focus-visible { outline: 3px solid #0688f4; outline-offset: 3px; }
.hsz-profile-address { margin: 24px 0; padding-top: 22px; border-top: 1px solid var(--hsz-border); }
.hsz-profile-address h3 { font-size: 17px; }
.hsz-profile-sidebar .hsz-profile-map-jump { display: inline-flex; align-items: center; gap: 12px; margin-top: 10px; padding: 8px 12px; border: 1px solid #b9dfda; border-radius: 8px; background: #f0faf8; color: #00786f; font-size: 12px; font-weight: 600; }
.hsz-profile-map-jump:focus-visible { outline: 3px solid #0688f4; outline-offset: 3px; }
.hsz-profile-map { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 36px; align-items: start; border-top: 1px solid var(--hsz-border); margin-top: 42px; padding-top: 36px; scroll-margin-top: 28px; }
.hsz-profile-map--text-only { grid-template-columns: minmax(0, 1fr); }
.hsz-profile-arrival h2 { font-size: clamp(23px,2.4vw,28px); }
.hsz-profile-arrival__section { margin-top: 22px; }
.hsz-profile-arrival__section + .hsz-profile-arrival__section { padding-top: 22px; border-top: 1px solid var(--hsz-border); }
.hsz-profile-arrival__section h3 { font-size: 18px; }
.hsz-parking-label { display: inline-block; background: #eaf7f4; color: #00786f; padding: 4px 9px; border-radius: 6px; margin-bottom: 10px; font-size: 12px; font-weight: 600; }
.hsz-profile-map .hsz-profile-arrival__demo { font-size: 11px; line-height: 1.6; color: var(--hsz-muted); margin-top: 12px; }
.hsz-profile-map p { color: var(--hsz-muted); line-height: 1.8; }
.hsz-profile-map .hsz-profile-map__address { color: var(--hsz-navy); font-weight: 700; }
.hsz-profile-map a { display: inline-block; margin-top: 14px; color: #00877f; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.hsz-profile-map iframe { display: block; width: 100%; height: 390px; border: 0; border-radius: 16px; background: #f2f5f8; }
@media (max-width: 980px) {
	.hsz-profile-intro { gap: 24px; }
	.hsz-profile-photo img { height: 460px; }
}
@media (max-width: 767px) {
	.hsz-profile-intro, .hsz-provider-page__content .hsz-profile--detailed, .hsz-profile-map { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.hsz-profile-photo img { height: 260px; }
	.hsz-provider-page__content .hsz-profile-sidebar { padding: 28px 0 0; border-left: 0; border-top: 1px solid var(--hsz-border); }
	.hsz-profile-map iframe { height: 280px; }
	.hsz-provider-page__inner { padding-top: 18px; }
	.hsz-provider-sheet { border-radius: 18px; }
	.hsz-provider-page__content { padding: 24px 20px; }
	.hsz-profile-nav { align-items: flex-start; flex-direction: column; gap: 14px; font-size: 0.82rem; }
	.hsz-profile-titlebar { grid-template-columns: minmax(0, 1fr); padding: 24px 20px; gap: 22px; border-radius: 18px 18px 0 0; }
	.hsz-profile-titlebar__category { justify-self: start; }
}

/* 2026.09.05 – szolgáltatói vezérlőpult */
.hsz-account-page {
	background:
		radial-gradient(circle at 92% 6%, rgba(2, 175, 166, 0.1), transparent 23%),
		radial-gradient(circle at 4% 24%, rgba(138, 88, 251, 0.08), transparent 22%),
	var(--hsz-bg);
}

/* Keep the provider dashboard close to the site header without changing other account pages. */
body.hsz-provider-dashboard-page #page-container,
body.hsz-provider-dashboard-page #main-content {
	padding-top: 0 !important;
}

body.hsz-provider-dashboard-page .hsz-account-page.et_pb_section {
	padding-top: 32px !important;
	margin-top: 0 !important;
}

body.hsz-provider-dashboard-page .hsz-account-page > .et_pb_row {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* The profile editor is a dedicated provider surface as well; remove the theme's
 * header-sized offset while keeping its own compact content spacing. */
body.hsz-provider-profile-page #page-container,
body.hsz-provider-profile-page #main-content {
	padding-top: 0 !important;
}

body.hsz-provider-profile-page .hsz-account-page.et_pb_section {
	padding-top: 24px !important;
	margin-top: 0 !important;
}

body.hsz-provider-profile-page .hsz-account-page > .et_pb_row {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Provider account pages keep the dashboard and profile shortcuts on one line. */
@media (min-width: 981px) {
	.hsz-provider-profile-page #main-header,
	.hsz-provider-profile-page #main-header .container,
	.hsz-provider-profile-page #main-header .logo_container {
		height: 72px;
	}

	.hsz-provider-profile-page #et-top-navigation {
		display: flex;
		height: 72px;
		align-items: center;
		padding-top: 0 !important;
	}

	.hsz-provider-profile-page #top-menu {
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.hsz-provider-profile-page #top-menu > li {
		display: inline-flex;
		align-items: center;
		padding-right: 0;
	}

	.hsz-provider-profile-page #top-menu > li > a {
		display: inline-flex;
		min-height: 44px;
		align-items: center;
		padding: 0 16px !important;
		border-radius: 12px;
		line-height: 1.2;
	}

	.hsz-provider-profile-page #top-menu > .hsz-account-link-item > .hsz-account-link {
		display: grid;
		width: 44px;
		height: 44px;
		min-height: 44px;
		place-items: center;
		padding: 0 !important;
		border: 1px solid rgba(5, 22, 41, 0.12);
		border-radius: 50%;
		background: #edf9f8;
		transition: background-color 150ms ease, border-color 150ms ease, transform 150ms ease;
	}

	.hsz-provider-profile-page .hsz-account-link img {
		display: block;
		width: 22px;
		height: 22px;
	}

	.hsz-provider-profile-page .hsz-account-link:hover {
		border-color: rgba(0, 135, 127, 0.35);
		background: #d9f4f1;
		transform: translateY(-1px);
	}

	.hsz-provider-profile-page .hsz-account-link:focus-visible {
		outline: 3px solid rgba(0, 177, 167, 0.38);
		outline-offset: 3px;
	}
}

.hsz-account-page > .et_pb_row {
	width: min(calc(100% - 34px), 1280px);
	max-width: 1280px;
}

.hsz-frontend-profile {
	display: grid;
	gap: 22px;
	max-width: 1040px;
	margin: 0 auto;
	color: var(--hsz-navy);
}

.hsz-frontend-profile__sheet {
	overflow: hidden;
	border: 1px solid rgba(5, 22, 41, 0.09);
	border-radius: 26px;
	background: #fff;
	box-shadow: 0 18px 46px rgba(5, 22, 41, 0.11);
}

.hsz-frontend-profile__back {
	display: inline-flex;
	width: fit-content;
	min-height: 44px;
	align-items: center;
	gap: 9px;
	color: #516079;
	font-weight: 700;
}

.hsz-frontend-profile__back:hover,
.hsz-frontend-profile__back:focus-visible {
	color: #00877f;
}

.hsz-frontend-profile__hero {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 28px;
	padding: clamp(28px, 5vw, 52px);
	background: linear-gradient(135deg, #051629 0%, #0c2945 100%);
	color: #fff;
}

.hsz-frontend-profile__hero-copy {
	min-width: 0;
}

.hsz-frontend-profile__hero h1,
.hsz-frontend-profile__hero p {
	margin: 0;
	color: #fff;
}

.hsz-frontend-profile__hero h1 {
	padding: 4px 0 8px;
	font-size: clamp(2.1rem, 5vw, 3.5rem);
	line-height: 1.02;
}

.hsz-frontend-profile__hero .hsz-eyebrow {
	color: #61ddd5;
}

.hsz-frontend-profile__hero-actions {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
}

.hsz-frontend-profile__logout {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 0.9rem;
	white-space: nowrap;
}

.hsz-frontend-profile__logout {
	border-color: rgba(255, 255, 255, 0.38);
	background: #fff;
	color: var(--hsz-navy);
	font-size: 0.82rem;
	font-weight: 800;
}

.hsz-frontend-profile__logout:hover,
.hsz-frontend-profile__logout:focus-visible {
	border-color: #61ddd5;
	background: #e9fbf9;
	color: #006f69;
}

.hsz-frontend-profile__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 24px;
}

.hsz-frontend-profile__nav a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	padding: 9px 15px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.09);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.25;
}

.hsz-frontend-profile__nav a:hover,
.hsz-frontend-profile__nav a:focus-visible {
	border-color: rgba(97, 221, 213, 0.75);
	background: rgba(97, 221, 213, 0.16);
	color: #fff;
}

.hsz-frontend-profile__nav a:focus-visible,
.hsz-frontend-profile__form > section:focus-visible {
	outline: 3px solid #61ddd5;
	outline-offset: 3px;
}

.hsz-frontend-profile__sheet > .hsz-form-notice {
	margin: 24px clamp(24px, 5vw, 50px) 0;
}

.hsz-frontend-profile__form {
	display: grid;
	gap: 0;
	padding: clamp(24px, 5vw, 50px);
	border: 0;
	background: #fff;
}

.hsz-frontend-profile__form > section {
	padding: 8px 0 38px;
	scroll-margin-top: 24px;
}

.hsz-frontend-profile__form > section + section {
	padding-top: 38px;
	border-top: 1px solid var(--hsz-border);
}

.hsz-frontend-profile__section-heading {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
	margin-bottom: 24px;
}

.hsz-frontend-profile__section-heading > span {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 14px;
	background: #e5f8f6;
	color: #00877f;
	font-weight: 800;
}

.hsz-frontend-profile__section-heading h2 {
	margin: 0 0 5px;
	padding: 0;
	font-size: clamp(1.45rem, 3vw, 2rem);
}

.hsz-frontend-profile__section-heading p {
	margin: 0;
	color: #66738a;
}

.hsz-frontend-profile__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.hsz-frontend-profile__grid .hsz-field {
	margin: 0;
}

.hsz-frontend-profile__grid .hsz-field--wide {
	grid-column: 1 / -1;
}

.hsz-frontend-profile__grid input[readonly] {
	border-style: dashed;
	background: #f3f6f9;
	color: #657087;
	cursor: not-allowed;
}

.hsz-frontend-profile__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-top: 28px;
	border-top: 1px solid var(--hsz-border);
}

.hsz-frontend-profile__actions .hsz-button {
	margin: 0;
}

.hsz-subscription-current {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 24px;
	border: 1px solid #dce6ed;
	border-radius: 18px;
	background: #f7fafc;
}

.hsz-subscription-current.is-paid {
	border-color: rgba(2, 175, 166, 0.28);
	background: #eefaf8;
}

.hsz-subscription-current.is-fresh {
	border-color: #dfe6ed;
	background: #f6f8fa;
}

.hsz-subscription-current.is-fresh .hsz-subscription-state {
	background: #e9eef3;
	color: #506176;
}

.hsz-subscription-current__label,
.hsz-subscription-details span {
	display: block;
	margin-bottom: 5px;
	color: #66738a;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.hsz-subscription-current h3 {
	margin: 0 0 7px;
	padding: 0;
	font-size: 1.35rem;
}

.hsz-subscription-current p,
.hsz-subscription-details small,
.hsz-subscription-upgrades small {
	margin: 0;
	color: #66738a;
	line-height: 1.6;
}

.hsz-subscription-state,
.hsz-subscription-soon {
	display: inline-flex;
	min-height: 34px;
	align-items: center;
	justify-content: center;
	padding: 7px 12px;
	border-radius: 999px;
	background: #e5f8f6;
	color: #007c75;
	font-size: 0.75rem;
	font-weight: 800;
	white-space: nowrap;
}

.hsz-subscription-details,
.hsz-subscription-upgrades {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 16px;
}

.hsz-subscription-details > div,
.hsz-subscription-upgrades > article {
	padding: 22px;
	border: 1px solid #e1e8ee;
	border-radius: 16px;
	background: #fff;
}

.hsz-subscription-details strong {
	display: block;
	margin-bottom: 6px;
	font-size: 1.05rem;
}

.hsz-subscription-cancel {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	margin: 4px 0 8px;
	padding: 9px 14px;
	border: 1px solid #d7dee5;
	border-radius: 11px;
	background: #f2f5f7;
	color: #7b8795;
	font: inherit;
	font-weight: 700;
	cursor: not-allowed;
}

.hsz-subscription-upgrades > article {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
}

.hsz-subscription-upgrades > article.is-pro {
	border-color: #f5d38c;
	background: #fffaf0;
}

.hsz-subscription-upgrades h3 {
	margin: 18px 0 8px;
	padding: 0;
	font-size: 1.05rem;
}

.hsz-subscription-upgrades p {
	margin: 0 0 8px;
}

.hsz-subscription-upgrades p strong {
	font-size: 1.25rem;
}

.hsz-subscription-upgrades .hsz-subscription-soon {
	margin-top: 18px;
}

.hsz-provider-control {
	display: grid;
	gap: 24px;
	color: var(--hsz-navy);
}

.hsz-provider-control *,
.hsz-provider-control *::before,
.hsz-provider-control *::after {
	box-sizing: border-box;
}

.hsz-provider-control h1,
.hsz-provider-control h2,
.hsz-provider-control h3,
.hsz-provider-control p {
	margin-top: 0;
}

.hsz-provider-control__header {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 20px 32px;
	padding: clamp(26px, 4vw, 42px);
	border: 1px solid rgba(2, 175, 166, 0.15);
	border-radius: 28px;
	background: linear-gradient(125deg, #fff 0%, #f0fbfa 72%, #e8f8f7 100%);
	box-shadow: var(--hsz-shadow);
}

.hsz-provider-control__header::after {
	position: absolute;
	top: -80px;
	right: -55px;
	width: 230px;
	height: 230px;
	border: 38px solid rgba(2, 175, 166, 0.06);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.hsz-provider-control__logo,
.hsz-provider-control__welcome,
.hsz-provider-control__nav,
.hsz-provider-control__status {
	position: relative;
	z-index: 1;
}

.hsz-provider-control__logo {
	display: inline-flex;
	align-self: start;
	width: 238px;
	max-width: 100%;
}

.hsz-provider-control__logo img {
	display: block;
	width: 100%;
	height: auto;
}

.hsz-provider-control__welcome {
	grid-column: 1 / -1;
	max-width: 790px;
}

.hsz-provider-control__welcome .hsz-eyebrow {
	margin-bottom: 7px;
	color: #00877f;
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.hsz-provider-control__welcome h1 {
	margin-bottom: 10px;
	font-size: clamp(2rem, 4vw, 3.15rem);
	line-height: 1.08;
	letter-spacing: -0.045em;
}

.hsz-provider-control__welcome p:last-child {
	max-width: 720px;
	margin-bottom: 0;
	color: var(--hsz-muted);
	font-size: clamp(0.95rem, 1.4vw, 1.08rem);
}

.hsz-provider-control__nav {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding-top: 4px;
}

.hsz-provider-control__nav a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 8px 14px;
	border: 1px solid rgba(5, 22, 41, 0.1);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: var(--hsz-navy);
	font-size: 0.78rem;
	font-weight: 700;
}

.hsz-provider-control__nav a:hover {
	border-color: var(--hsz-teal);
	background: #fff;
	color: #007a73;
	transform: translateY(-1px);
}

.hsz-provider-control__nav .hsz-provider-control__profile-link {
	gap: 8px;
	border-color: rgba(2, 175, 166, 0.23);
	background: #fff;
	color: #007a73;
}

.hsz-provider-control__profile-link img {
	display: block;
	width: 18px;
	height: 18px;
}

.hsz-provider-control__nav .hsz-provider-control__logout {
	margin-left: auto;
	border-color: #d9e1e8;
	background: #f6f8fa;
	color: #59697a;
}

.hsz-provider-control__nav .hsz-provider-control__logout:hover {
	border-color: #eab1bd;
	background: #fff4f6;
	color: #a72d46;
}

.hsz-provider-control__nav .hsz-provider-control__test-link {
	border-color: rgba(253, 174, 14, 0.48);
	background: #fff9ea;
	color: #795400;
}

.hsz-showcase-package-switcher {
	position: relative;
	z-index: 1;
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 16px 18px;
	border: 1px solid rgba(253, 174, 14, 0.44);
	border-radius: 17px;
	background: linear-gradient(120deg, #fffdf6, #fff4d5);
	box-shadow: 0 8px 20px rgba(119, 82, 0, 0.07);
	scroll-margin-top: 26px;
}

.hsz-showcase-package-switcher__copy {
	display: grid;
	gap: 2px;
}

.hsz-showcase-package-switcher__copy .hsz-eyebrow {
	margin: 0;
	color: #8b6200;
	font-size: 0.65rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.hsz-showcase-package-switcher__copy strong {
	font-size: 1rem;
}

.hsz-showcase-package-switcher__copy small {
	color: #6a6251;
	font-size: 0.76rem;
}

.hsz-showcase-package-switcher__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.hsz-showcase-package-switcher__actions button {
	min-height: 38px;
	padding: 8px 13px;
	border: 1px solid rgba(5, 22, 41, 0.16);
	border-radius: 10px;
	background: #fff;
	color: var(--hsz-navy);
	font: inherit;
	font-size: 0.78rem;
	font-weight: 800;
	cursor: pointer;
}

.hsz-showcase-package-switcher__actions button:hover,
.hsz-showcase-package-switcher__actions button:focus-visible {
	border-color: #d59a00;
	box-shadow: 0 0 0 3px rgba(253, 174, 14, 0.2);
}

.hsz-showcase-package-switcher__actions button.is-current,
.hsz-showcase-package-switcher__actions button:disabled {
	border-color: var(--hsz-navy);
	background: var(--hsz-navy);
	color: #fff;
	cursor: default;
	opacity: 1;
}

.hsz-provider-control__status {
	position: absolute;
	top: 31px;
	right: 36px;
	z-index: 2;
	margin: 0;
	color: var(--hsz-muted);
	font-size: 0.76rem;
	font-weight: 600;
}

.hsz-provider-control__status .hsz-status-pill {
	margin-left: 7px;
}

.hsz-dashboard-section,
.hsz-dashboard-editor {
	padding: clamp(24px, 4vw, 38px);
	border: 1px solid var(--hsz-border);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 12px 36px rgba(5, 22, 41, 0.065);
	scroll-margin-top: 30px;
}

.hsz-dashboard-section-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 22px;
	margin-bottom: 25px;
}

.hsz-dashboard-section-heading .hsz-eyebrow,
.hsz-dashboard-locked .hsz-eyebrow {
	margin-bottom: 5px;
	color: #00877f;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.hsz-dashboard-section-heading h2,
.hsz-dashboard-locked h2 {
	margin-bottom: 8px;
	font-size: clamp(1.45rem, 2.7vw, 2rem);
	letter-spacing: -0.025em;
}

.hsz-dashboard-section-heading p:last-child,
.hsz-dashboard-locked p:last-child {
	max-width: 780px;
	margin-bottom: 0;
	color: var(--hsz-muted);
}

.hsz-dashboard-empty-profile,
.hsz-dashboard-locked {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 20px;
	align-items: center;
	padding: 25px;
	border: 1px dashed rgba(2, 175, 166, 0.4);
	border-radius: 18px;
	background: var(--hsz-teal-soft);
}

.hsz-dashboard-empty-profile > div:first-child,
.hsz-dashboard-locked > span {
	display: grid;
	width: 58px;
	height: 58px;
	place-items: center;
	border-radius: 17px;
	background: var(--hsz-teal);
	box-shadow: 0 8px 20px rgba(2, 175, 166, 0.22);
	color: #fff;
	font-size: 1.55rem;
	font-weight: 700;
}

.hsz-dashboard-empty-profile h3 {
	margin-bottom: 5px;
	font-size: 1.2rem;
}

.hsz-dashboard-empty-profile p {
	margin-bottom: 15px;
	color: var(--hsz-muted);
}

.hsz-dashboard-empty-profile--fresh {
	border-color: rgba(5, 22, 41, 0.16);
	background: #f7f9fb;
}

.hsz-dashboard-empty-profile--fresh > div:first-child {
	background: #65758a;
	box-shadow: 0 8px 20px rgba(5, 22, 41, 0.14);
}

.hsz-dashboard-profile-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	gap: 20px;
	align-items: start;
}

.hsz-dashboard-profile-card-wrap {
	min-width: 0;
}

.hsz-dashboard-profile-meta {
	display: grid;
	align-content: start;
	gap: 0;
	padding: 8px 24px 22px;
	border: 1px solid var(--hsz-border);
	border-radius: 20px;
	background: #fbfcfd;
}

.hsz-dashboard-profile-meta > div {
	padding: 16px 0;
	border-bottom: 1px solid #e4ebf1;
}

.hsz-dashboard-profile-meta span,
.hsz-dashboard-profile-meta small {
	display: block;
	color: var(--hsz-muted);
	font-size: 0.7rem;
	font-weight: 600;
}

.hsz-dashboard-profile-meta strong {
	display: block;
	margin-top: 4px;
	font-size: 0.97rem;
}

.hsz-dashboard-profile-meta small {
	margin-top: 3px;
	font-weight: 400;
}

.hsz-dashboard-profile-meta .hsz-button {
	width: 100%;
	margin-top: 20px;
	text-align: center;
}

.hsz-dashboard-profile-public-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 19px 0 0;
	padding: 14px 0;
	border-bottom: 1px solid #e4ebf1;
	color: #007a73;
	font-size: 0.88rem;
	font-weight: 800;
	line-height: 1.45;
}

.hsz-dashboard-profile-public-link:hover {
	color: var(--hsz-navy);
}

.hsz-dashboard-profile-public-link--disabled {
	color: var(--hsz-muted);
	font-weight: 600;
}

.hsz-dashboard-packages {
	background:
		radial-gradient(circle at 100% 0, rgba(253, 174, 14, 0.13), transparent 25%),
		#fff;
}

.hsz-dashboard-packages__fresh-note {
	margin: -8px 0 22px;
	padding: 13px 15px;
	border-left: 3px solid #8795a6;
	border-radius: 0 12px 12px 0;
	background: #f5f7f9;
	color: #536276;
	font-size: 0.9rem;
	font-weight: 600;
}

.hsz-package-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

@media (max-width: 980px) {
	.hsz-package-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

.hsz-package-card {
	position: relative;
	display: flex;
	min-width: 0;
	flex-direction: column;
	padding: clamp(23px, 3vw, 31px);
	border: 1px solid #bfe4e1;
	border-radius: 20px;
	background: linear-gradient(145deg, #fff 0%, #eef9f8 100%);
}

.hsz-package-card--pro {
	border-color: #ffd57b;
	background: linear-gradient(145deg, #fffdfa 0%, #fff2ce 100%);
}

.hsz-package-card.is-current {
	border-width: 2px;
	box-shadow: 0 12px 28px rgba(5, 22, 41, 0.08);
}

.hsz-package-card__top {
	display: flex;
	min-height: 34px;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 19px;
}

.hsz-package-card .hsz-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.hsz-package-current,
.hsz-package-recommended {
	padding: 5px 9px;
	border-radius: 99px;
	background: #fff;
	color: #007c75;
	font-size: 0.65rem;
	font-weight: 800;
	line-height: 1.3;
	text-align: center;
}

.hsz-package-recommended {
	color: #805600;
}

.hsz-package-card h3 {
	margin-bottom: 10px;
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	line-height: 1.25;
	min-height: 2.5em;
}

.hsz-package-price {
	display: flex;
	align-items: baseline;
	gap: 7px;
	margin-bottom: 18px;
}

.hsz-package-price strong {
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	line-height: 1;
}

.hsz-package-price span {
	color: var(--hsz-muted);
	font-size: 0.76rem;
	font-weight: 600;
}

.hsz-package-card ul {
	margin: 0 0 24px;
	padding: 0 !important;
	list-style: none !important;
}

.hsz-package-card li {
	position: relative;
	margin-bottom: 11px;
	padding-left: 24px;
	color: #405166;
	font-size: 0.85rem;
	line-height: 1.55;
}

.hsz-package-card li::before {
	position: absolute;
	top: 0;
	left: 0;
	color: #00877f;
	content: "✓";
	font-weight: 800;
}

.hsz-package-card--pro li::before {
	color: #9d6900;
}

.hsz-package-soon {
	display: inline-flex;
	width: fit-content;
	min-height: 39px;
	align-items: center;
	justify-content: center;
	margin-top: auto;
	padding: 8px 14px;
	border-radius: 10px;
	background: var(--hsz-navy);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
}

.hsz-package-card--pro .hsz-package-soon {
	background: var(--hsz-amber);
	color: var(--hsz-navy);
}

.hsz-dashboard-section--stats:empty {
	display: none;
}

.hsz-dashboard-section--stats .hsz-stats {
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
}

.hsz-dashboard-editor .hsz-provider-dashboard-form {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

/* Editing is an intentional action: keep the long form out of the overview
 * until its CTA (or a direct #adatlapom link) opens it. */
.hsz-dashboard-editor {
	display: none;
}

.hsz-dashboard-editor.is-open,
.hsz-dashboard-editor:target {
	display: block;
}

.hsz-dashboard-editor .hsz-form-section {
	margin-bottom: 24px;
	padding: 22px;
	border: 1px solid var(--hsz-border);
	border-radius: 17px;
	background: #fbfcfd;
}

.hsz-dashboard-editor .hsz-form-section legend {
	padding: 0 8px;
	color: var(--hsz-navy);
	font-size: 0.96rem;
	font-weight: 800;
}

/* Secured showcase onboarding. The ordinary provider dashboard remains unchanged. */
.hsz-provider-onboarding {
	display: grid;
	gap: 24px;
	color: var(--hsz-navy);
}

.hsz-provider-onboarding__header {
	display: grid;
	grid-template-columns: minmax(190px, 0.55fr) minmax(0, 1.5fr) auto;
	gap: 28px;
	align-items: center;
	padding: clamp(24px, 4vw, 38px);
	border: 1px solid var(--hsz-border);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 12px 36px rgba(5, 22, 41, 0.065);
}

.hsz-provider-onboarding__header h1 {
	margin: 2px 0 0;
	font-size: clamp(1.7rem, 3vw, 2.35rem);
}

.hsz-provider-onboarding__header .hsz-eyebrow {
	margin: 0;
	color: #00877f;
}

.hsz-provider-onboarding__account {
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: flex-end;
}

.hsz-provider-onboarding__account a {
	color: #536276;
	font-size: 0.8rem;
	font-weight: 800;
}

.hsz-onboarding-state,
.hsz-onboarding-packages,
.hsz-onboarding-editor {
	padding: clamp(30px, 6vw, 64px);
	border: 1px solid var(--hsz-border);
	border-radius: 26px;
	background: #fff;
	box-shadow: 0 16px 45px rgba(5, 22, 41, 0.075);
}

.hsz-onboarding-state {
	display: flex;
	min-height: 390px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
}

.hsz-onboarding-state__icon {
	display: grid;
	width: 76px;
	height: 76px;
	place-items: center;
	margin-bottom: 22px;
	border-radius: 22px;
	background: linear-gradient(145deg, var(--hsz-teal), #008a83);
	box-shadow: 0 12px 26px rgba(2, 175, 166, 0.23);
	color: #fff;
	font-size: 2rem;
	font-weight: 800;
}

.hsz-onboarding-state--waiting .hsz-onboarding-state__icon {
	background: #169463;
}

.hsz-onboarding-state .hsz-eyebrow,
.hsz-onboarding-heading .hsz-onboarding-step {
	margin-bottom: 8px;
	color: #00877f;
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.hsz-onboarding-state h2 {
	max-width: 720px;
	margin-bottom: 12px;
	font-size: clamp(1.7rem, 4vw, 2.7rem);
}

.hsz-onboarding-state > p:not(.hsz-eyebrow) {
	max-width: 650px;
	margin-bottom: 24px;
	color: var(--hsz-muted);
	font-size: 1rem;
}

.hsz-onboarding-heading {
	max-width: 780px;
	margin-bottom: 30px;
}

.hsz-onboarding-heading h2 {
	margin: 4px 0 9px;
	font-size: clamp(1.65rem, 3vw, 2.3rem);
}

.hsz-onboarding-heading p {
	margin: 0;
	color: var(--hsz-muted);
}

.hsz-onboarding-package-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.hsz-onboarding-package {
	display: flex;
	min-width: 0;
	flex-direction: column;
	padding: 25px;
	border: 1px solid #c8e5e2;
	border-radius: 20px;
	background: linear-gradient(145deg, #fff, #effaf9);
}

.hsz-onboarding-package.is-pro {
	border-color: #ffd27a;
	background: linear-gradient(145deg, #fff, #fff4d7);
}

.hsz-onboarding-package > div {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
}

.hsz-onboarding-package__name {
	font-size: 1.3rem;
	font-weight: 900;
}

.hsz-onboarding-package > div strong {
	font-size: 0.85rem;
}

.hsz-onboarding-package ul {
	flex: 1;
	margin: 22px 0 26px;
	padding: 0 !important;
	list-style: none !important;
}

.hsz-onboarding-package li {
	position: relative;
	margin-bottom: 11px;
	padding-left: 23px;
	color: #4d5e72;
	font-size: 0.86rem;
}

.hsz-onboarding-package li::before {
	position: absolute;
	left: 0;
	color: #00877f;
	content: "✓";
	font-weight: 900;
}

.hsz-onboarding-package .hsz-button {
	width: 100%;
	justify-content: center;
	text-align: center;
}

.hsz-onboarding-editor .hsz-provider-dashboard-form {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.hsz-onboarding-editor .hsz-form-section {
	margin-bottom: 24px;
	padding: 22px;
	border: 1px solid var(--hsz-border);
	border-radius: 17px;
	background: #fbfcfd;
}

.hsz-onboarding-editor .hsz-form-section legend {
	padding: 0 8px;
	font-weight: 900;
}

.hsz-onboarding-form-actions {
	display: flex;
	justify-content: flex-end;
	gap: 12px;
}

.hsz-showcase-test-tools {
	border: 1px dashed rgba(253, 174, 14, 0.5);
	border-radius: 16px;
	background: #fffaf0;
}

.hsz-showcase-test-tools > summary {
	padding: 14px 18px;
	cursor: pointer;
	color: #795400;
	font-size: 0.78rem;
	font-weight: 900;
}

.hsz-showcase-test-tools .hsz-showcase-package-switcher {
	border: 0;
	border-top: 1px solid rgba(253, 174, 14, 0.28);
	border-radius: 0 0 15px 15px;
	box-shadow: none;
}

@media (max-width: 980px) {
	.hsz-provider-profile-page #main-header .container {
		display: flex;
		height: 72px;
		align-items: center;
		justify-content: space-between;
	}

	.hsz-provider-profile-page #main-header .logo_container {
		position: relative;
		width: min(46vw, 172px);
		height: 72px;
	}

	.hsz-provider-profile-page #et-top-navigation {
		display: flex;
		align-items: center;
		padding: 0 !important;
	}

	.hsz-provider-profile-page #et_mobile_nav_menu {
		display: none;
	}

	.hsz-provider-profile-page #top-menu {
		display: flex !important;
		align-items: center;
		gap: 6px;
	}

	.hsz-provider-profile-page #top-menu > li {
		display: inline-flex;
		align-items: center;
		padding-right: 0;
	}

	.hsz-provider-profile-page #top-menu > li > a {
		display: inline-flex;
		min-height: 42px;
		align-items: center;
		padding: 0 10px !important;
		font-size: 0.78rem;
		line-height: 1.1;
	}

	.hsz-provider-profile-page #top-menu > .hsz-account-link-item > .hsz-account-link {
		display: grid;
		width: 42px;
		height: 42px;
		min-height: 42px;
		place-items: center;
		padding: 0 !important;
		border: 1px solid rgba(5, 22, 41, 0.12);
		border-radius: 50%;
		background: #edf9f8;
	}

	.hsz-provider-profile-page .hsz-account-link img {
		display: block;
		width: 21px;
		height: 21px;
	}

	.hsz-provider-profile-page .hsz-account-link:focus-visible {
		outline: 3px solid rgba(0, 177, 167, 0.38);
		outline-offset: 2px;
	}

	.hsz-frontend-profile__hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.hsz-frontend-profile__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-frontend-profile__grid .hsz-field--wide {
		grid-column: auto;
	}

	.hsz-provider-control__header {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-provider-control__status {
		position: static;
		grid-row: 2;
		margin: 0;
	}

	.hsz-provider-control__welcome {
		grid-row: 3;
	}

	.hsz-provider-control__nav {
		grid-row: 4;
	}

	.hsz-showcase-package-switcher {
		align-items: flex-start;
		flex-direction: column;
	}

	.hsz-dashboard-profile-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-provider-onboarding__header {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.hsz-provider-onboarding__header > div:nth-child(2) {
		grid-column: 1 / -1;
		grid-row: 2;
	}

	.hsz-onboarding-package-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 720px) {
	body.hsz-provider-dashboard-page .hsz-account-page {
		padding-top: 24px !important;
		padding-bottom: 48px !important;
	}

	body.hsz-provider-dashboard-page .hsz-account-page > .et_pb_row {
		width: min(calc(100% - 22px), 1280px);
	}

	body.hsz-provider-profile-page .hsz-account-page {
		padding-top: 18px !important;
		padding-bottom: 40px !important;
	}

	body.hsz-provider-profile-page .hsz-account-page > .et_pb_row {
		width: min(calc(100% - 22px), 1280px);
	}

	.hsz-frontend-profile {
		gap: 16px;
	}

	.hsz-frontend-profile__hero,
	.hsz-frontend-profile__form {
		padding: 24px 20px;
	}

	.hsz-frontend-profile__hero-actions {
		width: 100%;
		flex-direction: row;
		flex-wrap: wrap;
	}

	.hsz-frontend-profile__hero-actions,
	.hsz-frontend-profile__logout {
		flex: 1 1 150px;
	}

	.hsz-frontend-profile__sheet {
		border-radius: 20px;
	}

	.hsz-frontend-profile__sheet > .hsz-form-notice {
		margin: 20px 20px 0;
	}

	.hsz-frontend-profile__nav {
		width: 100%;
		gap: 8px;
		margin-top: 20px;
	}

	.hsz-frontend-profile__nav a {
		min-width: min(100%, 190px);
		flex: 1 1 150px;
		justify-content: center;
		text-align: center;
	}

	.hsz-frontend-profile__section-heading {
		grid-template-columns: 42px minmax(0, 1fr);
		gap: 12px;
	}

	.hsz-frontend-profile__section-heading > span {
		width: 42px;
		height: 42px;
		border-radius: 12px;
	}

	.hsz-frontend-profile__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.hsz-frontend-profile__actions .hsz-button {
		width: 100%;
		justify-content: center;
		text-align: center;
	}

	.hsz-subscription-current {
		flex-direction: column;
		padding: 20px;
	}

	.hsz-subscription-details,
	.hsz-subscription-upgrades {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-provider-control {
		gap: 16px;
	}

	.hsz-provider-control__header,
	.hsz-dashboard-section,
	.hsz-dashboard-editor {
		padding: 21px 18px;
		border-radius: 19px;
	}

	.hsz-provider-control__logo {
		width: 205px;
	}

	.hsz-provider-control__status {
		display: grid;
		justify-items: start;
		gap: 5px;
	}

	.hsz-provider-control__status .hsz-status-pill {
		margin-left: 0;
	}

	.hsz-provider-control__nav {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hsz-provider-control__nav a {
		justify-content: center;
		text-align: center;
	}

	.hsz-provider-control__nav .hsz-provider-control__logout {
		grid-column: 1 / -1;
		justify-content: center;
		margin-left: 0;
	}

	.hsz-showcase-package-switcher {
		padding: 15px;
	}

	.hsz-showcase-package-switcher__actions {
		width: 100%;
	}

	.hsz-showcase-package-switcher__actions button {
		flex: 1 1 84px;
	}

	.hsz-dashboard-section-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.hsz-dashboard-profile-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-package-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-dashboard-empty-profile,
	.hsz-dashboard-locked {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-dashboard-editor .hsz-form-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-dashboard-editor .hsz-field--wide {
		grid-column: auto;
	}

	.hsz-provider-onboarding__header,
	.hsz-onboarding-state,
	.hsz-onboarding-packages,
	.hsz-onboarding-editor {
		padding: 22px 18px;
		border-radius: 19px;
	}

	.hsz-provider-onboarding__header {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.hsz-provider-onboarding__header > div:nth-child(2) {
		grid-column: auto;
		grid-row: auto;
	}

	.hsz-provider-onboarding__account {
		align-items: flex-start;
		flex-direction: row;
		flex-wrap: wrap;
	}

	.hsz-onboarding-state {
		min-height: 360px;
	}

	.hsz-onboarding-editor .hsz-form-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.hsz-onboarding-editor .hsz-field--wide {
		grid-column: auto;
	}

	.hsz-onboarding-form-actions {
		align-items: stretch;
		flex-direction: column-reverse;
	}

	.hsz-onboarding-form-actions .hsz-button {
		width: 100%;
		justify-content: center;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.hsz-provider-profile-page #main-header .container {
		width: calc(100% - 20px);
	}

	.hsz-provider-profile-page #main-header .logo_container {
		width: 128px;
	}

	.hsz-provider-profile-page #top-menu {
		gap: 2px;
	}

	.hsz-provider-profile-page #top-menu > li > a {
		padding: 0 6px !important;
		font-size: 0.69rem;
	}

	.hsz-provider-profile-page #top-menu > .hsz-account-link-item > .hsz-account-link {
		width: 40px;
		height: 40px;
		min-height: 40px;
	}

	.hsz-frontend-profile__hero h1 {
		font-size: 2.05rem;
	}
}
/* Profile-shaped provider editor. */
.hsz-profile-editor {
	--hsz-editor-border: #dce5ee;
	min-width: 0;
	max-width: 100%;
	background: #fff;
	border: 1px solid var(--hsz-editor-border);
	border-radius: 28px;
	box-shadow: 0 22px 60px rgba(5, 22, 41, .1);
	overflow: hidden;
}

.hsz-editor-mode {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 14px 28px;
	background: #eef9f8;
	color: #52647a;
}

.hsz-editor-mode span {
	flex: 0 0 auto;
	padding: 6px 12px;
	border-radius: 999px;
	background: #fff;
	color: #078d86;
	font-weight: 800;
}

.hsz-editor-mode p { margin: 0; font-size: 14px; }

.hsz-editor-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(260px, .8fr);
	gap: 28px;
	align-items: center;
	padding: 34px;
	background: var(--hsz-editor-accent);
	color: #fff;
}
.hsz-editor-hero > *,
.hsz-editor-intro > *,
.hsz-editor-columns > *,
.hsz-editor-arrival > *,
.hsz-service-editor-row__header > *,
.hsz-editor-actions > * { min-width: 0; }

.hsz-editor-hero label,
.hsz-profile-editor label { display: grid; gap: 7px; font-weight: 700; }
.hsz-editor-hero label { font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.hsz-editor-hero input,
.hsz-editor-hero select {
	width: 100%;
	border: 1px solid rgba(255, 255, 255, .42) !important;
	background: rgba(255, 255, 255, .14) !important;
	color: #fff !important;
	box-shadow: none !important;
}
.hsz-editor-hero__title input { padding: 5px 0 9px !important; border-width: 0 0 2px !important; border-radius: 0 !important; font-size: clamp(26px, 4vw, 44px) !important; font-weight: 800; }
.hsz-editor-hero input::placeholder { color: rgba(255,255,255,.82); }
.hsz-editor-hero__taxonomy { display: grid; gap: 10px; }
.hsz-editor-hero option { color: #051629; background: #fff; }

.hsz-editor-intro {
	display: grid;
	grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr);
	gap: 38px;
	padding: 38px;
	align-items: stretch;
}

.hsz-editor-photo {
	position: relative;
	min-height: 360px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 24px;
	border: 2px dashed #b9cad8;
	border-radius: 22px;
	background: #f4f7fa;
	text-align: center;
	overflow: hidden;
}
.hsz-editor-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hsz-editor-photo > span, .hsz-editor-photo > strong, .hsz-editor-photo > label, .hsz-editor-photo > small { position: relative; z-index: 1; }
.hsz-editor-photo > span { font-size: 34px; }
.hsz-editor-photo > label { display: inline-flex; cursor: pointer; padding: 10px 16px; border-radius: 999px; background: #fff; color: #078d86; box-shadow: 0 5px 18px rgba(5,22,41,.12); }
.hsz-editor-photo input[type="file"] { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; }
.hsz-editor-photo:has(img) > strong,
.hsz-editor-photo:has(img) > span { display: none; }
.hsz-editor-photo:has(img) > label,
.hsz-editor-photo:has(img) > small { background: rgba(255,255,255,.94); padding: 8px 12px; border-radius: 999px; }

.hsz-editor-intro__copy { align-self: center; }
.hsz-editor-intro h3,
.hsz-editor-section h3,
.hsz-editor-contact h3,
.hsz-editor-arrival h3 { margin: 4px 0 18px; color: #051629; font-size: clamp(25px, 3vw, 34px); }
.hsz-profile-editor textarea,
.hsz-profile-editor input,
.hsz-profile-editor select { font-family: inherit; }
.hsz-editor-intro__copy textarea,
.hsz-editor-section > textarea {
	width: 100%;
	margin-bottom: 14px;
	padding: 12px 0;
	border: 0 !important;
	border-bottom: 1px solid var(--hsz-editor-border) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	resize: vertical;
}
.hsz-editor-intro__copy textarea:focus,
.hsz-editor-section > textarea:focus { border-color: var(--hsz-editor-accent) !important; }

.hsz-editor-columns {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(290px, .75fr);
	gap: 34px;
	padding: 0 38px 38px;
}
.hsz-editor-columns > main { display: grid; gap: 26px; }
.hsz-editor-section { padding: 28px 0; border-top: 1px solid var(--hsz-editor-border); }
.hsz-editor-section__heading { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.hsz-editor-section__heading > span { color: #718197; font-size: 13px; }
.hsz-editor-hours h3,
.hsz-profile-hours h2 { display: flex; align-items: center; gap: 10px; }
.hsz-editor-hours h3 img,
.hsz-profile-hours h2 img { width: 26px; height: 26px; object-fit: contain; }
.hsz-opening-appointment { display: flex !important; align-items: flex-start; gap: 11px; margin: 0 0 16px; padding: 14px 16px; border: 1px solid #cfe7e5; border-radius: 14px; background: #f2fbfa; color: #163349; cursor: pointer; }
.hsz-opening-appointment input,
.hsz-opening-closed input { accent-color: var(--hsz-editor-accent); }
.hsz-opening-appointment strong { display: block; }
.hsz-opening-appointment small { display: block; margin-top: 2px; color: #64758a; font-size: 12px; font-weight: 600; }
.hsz-opening-week { display: grid; gap: 8px; }
.hsz-opening-week[hidden] { display: none !important; }
.hsz-opening-day { display: grid; grid-template-columns: minmax(105px, 1fr) minmax(92px, .68fr) 15px minmax(92px, .68fr) auto; align-items: center; gap: 9px; padding: 9px 11px; border: 1px solid #e1eaf0; border-radius: 13px; background: #fff; }
.hsz-opening-day > strong { color: #20364c; font-size: 14px; }
.hsz-opening-day input[type="time"] { width: 100%; min-height: 39px; padding: 6px 9px !important; font-variant-numeric: tabular-nums; }
.hsz-opening-day > span { color: #718197; font-weight: 800; text-align: center; }
.hsz-opening-closed { display: inline-flex !important; align-items: center; gap: 5px; white-space: nowrap; color: #64758a; font-size: 12px; }
.hsz-opening-day.is-closed { background: #f7f9fb; opacity: .75; }
.hsz-opening-day.is-closed > strong::after { content: " · Zárva"; color: #8190a0; font-size: 12px; font-weight: 600; }
.hsz-opening-legacy { margin-top: 14px; padding: 13px 15px; border: 1px solid #f0dca5; border-radius: 13px; background: #fff9ec; }
.hsz-opening-legacy summary { cursor: pointer; color: #66501c; font-weight: 800; }
.hsz-opening-legacy p { margin: 10px 0; color: #756540; font-size: 13px; }
.hsz-opening-legacy textarea { width: 100%; min-height: 90px; }
.hsz-public-opening-hours { display: grid; gap: 6px; margin: 0; }
.hsz-public-opening-hours > div { display: flex; justify-content: space-between; gap: 18px; padding-bottom: 6px; border-bottom: 1px solid #edf1f4; }
.hsz-public-opening-hours dt { color: #50647a; font-weight: 700; }
.hsz-public-opening-hours dd { margin: 0; color: #10233a; font-weight: 800; font-variant-numeric: tabular-nums; }
.hsz-hours-appointment { display: inline-flex; align-items: center; min-height: 38px; margin: 0 !important; padding: 8px 13px; border-radius: 999px; background: #edf9f7; color: #087e78; font-weight: 800; }
.hsz-editor-contact { padding: 28px; border: 1px solid #e3ebf1; border-radius: 22px; background: linear-gradient(145deg, #f7fbfc, #f2f5f8); box-shadow: 0 12px 28px rgba(5,22,41,.04); align-self: start; }
.hsz-editor-contact__grid,
.hsz-editor-social-grid { display: grid; gap: 12px; }
.hsz-editor-contact input,
.hsz-editor-social-grid input { width: 100%; background: #fff !important; }
.hsz-editor-contact h4 { margin: 26px 0 12px; }

.hsz-profile-editor input:not([type="hidden"]):not([type="file"]),
.hsz-profile-editor select,
.hsz-profile-editor textarea {
	border: 1px solid #d8e4ec !important;
	border-radius: 12px !important;
	background: rgba(255,255,255,.96) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 1px 2px rgba(5,22,41,.025) !important;
	color: #10233a !important;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.hsz-profile-editor input:not([type="hidden"]):not([type="file"]):focus,
.hsz-profile-editor select:focus,
.hsz-profile-editor textarea:focus {
	border-color: var(--hsz-editor-accent) !important;
	background: #fff !important;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--hsz-editor-accent) 18%, transparent) !important;
	outline: 0;
}
.hsz-profile-editor input::placeholder,
.hsz-profile-editor textarea::placeholder { color: #95a4b3; opacity: 1; }
.hsz-editor-hero input,
.hsz-editor-hero select {
	border: 1px solid rgba(255, 255, 255, .42) !important;
	background: rgba(255, 255, 255, .14) !important;
	box-shadow: none !important;
	color: #fff !important;
}
.hsz-editor-hero__title input { border-width: 0 0 2px !important; border-radius: 0 !important; }
.hsz-editor-contact label,
.hsz-editor-social-grid label { color: #52647a; font-size: 12px; letter-spacing: .015em; }
.hsz-editor-contact input,
.hsz-editor-social-grid input { min-height: 43px; padding: 10px 12px !important; }

.hsz-service-editor-list { display: grid; gap: 14px; }
.hsz-service-editor-row { position: relative; padding: 19px; border: 1px solid #dce7ed; border-radius: 18px; background: linear-gradient(135deg, #fff 0%, #f9fcfd 100%); box-shadow: 0 8px 20px rgba(5,22,41,.045); transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.hsz-service-editor-row:focus-within { border-color: color-mix(in srgb, var(--hsz-editor-accent) 60%, #dce7ed); box-shadow: 0 12px 28px color-mix(in srgb, var(--hsz-editor-accent) 12%, transparent); }
.hsz-service-editor-row__header { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; }
.hsz-service-editor-row__name { flex: 1; min-width: 0; }
.hsz-service-editor-row__name > span,
.hsz-service-editor-row__price > span,
.hsz-service-editor-row__description > span { color: #62738a; font-size: 11px; font-weight: 800; letter-spacing: .075em; text-transform: uppercase; }
.hsz-service-editor-row__name input { min-height: 47px; padding: 9px 13px !important; font-size: 17px !important; font-weight: 800; letter-spacing: -.015em; }
.hsz-service-editor-row__details { display: flex; margin-top: 14px; }
.hsz-service-editor-row__price { max-width: 230px; }
.hsz-service-editor-row__price input { min-height: 40px; padding: 8px 12px !important; border-color: color-mix(in srgb, var(--hsz-editor-accent) 25%, #d8e4ec) !important; color: #087e78 !important; font-size: 14px; font-weight: 800; }
.hsz-service-editor-row__description { margin-top: 14px; }
.hsz-service-editor-row__description > span { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.hsz-service-editor-row__description small { color: #96a5b3; font-size: 11px; font-weight: 600; letter-spacing: normal; text-transform: none; }
.hsz-service-editor-row__description textarea { min-height: 84px; padding: 11px 13px !important; resize: vertical; }
.hsz-service-editor-row__image { display: flex; align-items: center; gap: 12px; margin-top: 14px; padding: 11px; border-radius: 14px; background: #f1f7f8; }
.hsz-service-editor-row__image img { width: 66px; height: 66px; border-radius: 12px; object-fit: cover; box-shadow: 0 4px 12px rgba(5,22,41,.12); }
.hsz-service-editor-row__image label { flex: 1; color: #52647a; font-size: 12px; }
.hsz-service-editor-row__image small { color: #718197; font-size: 11px; }
.hsz-service-editor-row__actions { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; }
.hsz-profile-editor .hsz-service-icon-button {
	display: inline-grid !important;
	width: 34px;
	min-width: 34px !important;
	height: 34px;
	min-height: 34px !important;
	place-items: center;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #d4e0e8 !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #4e6478 !important;
	font-size: 17px !important;
	font-weight: 800;
	line-height: 1;
	transform: none !important;
}
.hsz-profile-editor .hsz-service-icon-button:hover { border-color: var(--hsz-editor-accent) !important; background: color-mix(in srgb, var(--hsz-editor-accent) 9%, #fff) !important; color: var(--hsz-editor-accent) !important; box-shadow: none !important; }
.hsz-profile-editor .hsz-service-icon-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--hsz-editor-accent) 34%, transparent); outline-offset: 2px; }
.hsz-profile-editor .hsz-service-icon-button--remove:hover { border-color: #ef6a7c !important; background: #fff1f3 !important; color: #d63753 !important; }
.hsz-inline-add { display: inline-flex !important; min-height: 43px !important; margin-top: 16px; padding: 10px 15px !important; border: 1px dashed color-mix(in srgb, var(--hsz-editor-accent) 55%, #cad9e2) !important; border-radius: 12px !important; background: #f6fbfb !important; box-shadow: none !important; color: #087e78 !important; font-size: 14px; font-weight: 800; transform: none !important; }
.hsz-inline-add:hover { border-style: solid !important; background: #ecf9f8 !important; box-shadow: none !important; }
.hsz-inline-add:disabled { cursor: not-allowed; opacity: .58; }
.hsz-locked-services { padding: 12px 15px; border-radius: 12px; background: #fff8e8; color: #71551d; font-size: 13px; }

.hsz-editor-settings { margin: 0 38px 34px; padding: 0 24px 24px; border: 1px solid var(--hsz-editor-border); border-radius: 18px; }
.hsz-editor-settings summary { cursor: pointer; padding: 20px 0; color: #051629; font-size: 19px; font-weight: 800; }
.hsz-editor-arrival { display: grid; grid-template-columns: .55fr 1.45fr; gap: 30px; padding: 34px 38px; background: #f3f8f8; }
.hsz-editor-actions { position: sticky; bottom: 0; z-index: 4; display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 18px 28px; border-top: 1px solid var(--hsz-editor-border); background: rgba(255,255,255,.96); backdrop-filter: blur(12px); box-shadow: 0 -10px 30px rgba(5,22,41,.08); }
.hsz-editor-actions > div { margin-right: auto; display: grid; }
.hsz-editor-actions span { color: #68798d; font-size: 13px; }

.hsz-tax-dialog,
.hsz-service-lightbox { width: min(92vw, 620px); padding: 34px; border: 0; border-radius: 24px; color: #051629; box-shadow: 0 28px 90px rgba(5,22,41,.3); }
.hsz-tax-dialog::backdrop,
.hsz-service-lightbox::backdrop { background: rgba(5,22,41,.64); backdrop-filter: blur(4px); }
.hsz-tax-dialog > label { margin-top: 22px; }
.hsz-tax-dialog > input { width: 100%; margin-top: 7px; font-size: 19px; }
.hsz-tax-dialog > small { display: block; margin-top: 7px; color: #68798d; }
.hsz-dialog-close,
.hsz-service-lightbox > button { position: absolute; top: 14px; right: 16px; border: 0; background: transparent; color: #051629; font-size: 28px; cursor: pointer; }
.hsz-tax-dialog__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 26px; }
.hsz-pending-summary { display: grid; gap: 4px; max-width: 560px; margin: 24px auto 0; padding: 18px; border: 1px solid #dce5ee; border-radius: 14px; background: #fff; }

.hsz-profile-services > li { display: flex; align-items: flex-start; gap: 15px; }
.hsz-profile-services > li > div { display: grid; flex: 1; }
.hsz-profile-services em { margin-top: 3px; color: #078d86; font-style: normal; font-weight: 800; }
.hsz-service-image { flex: 0 0 82px; padding: 0; border: 0; border-radius: 12px; background: transparent; cursor: zoom-in; overflow: hidden; }
.hsz-service-image img { display: block; width: 82px; height: 82px; object-fit: cover; }
.hsz-service-lightbox { width: min(94vw, 980px); padding: 44px 20px 20px; background: #07182b; }
.hsz-service-lightbox img { display: block; max-width: 100%; max-height: 82vh; margin: auto; border-radius: 12px; }
.hsz-service-lightbox > button { color: #fff; }

@media (max-width: 900px) {
	.hsz-editor-hero,
	.hsz-editor-intro,
	.hsz-editor-columns,
	.hsz-editor-arrival { grid-template-columns: 1fr; }
	.hsz-editor-contact { order: -1; }
	.hsz-editor-photo { min-height: 300px; }
}

@media (max-width: 600px) {
	.hsz-opening-day { grid-template-columns: minmax(85px, 1fr) minmax(78px, 1fr) 12px minmax(78px, 1fr); gap: 6px; }
	.hsz-opening-closed { grid-column: 1 / -1; }
	.hsz-provider-control > *,
	.hsz-dashboard-editor,
	.hsz-dashboard-editor .hsz-provider-dashboard-form { min-width: 0; max-width: 100%; }
	.hsz-profile-editor { border-radius: 18px; }
	.hsz-editor-mode { align-items: flex-start; flex-direction: column; }
	.hsz-editor-hero,
	.hsz-editor-intro,
	.hsz-editor-columns,
	.hsz-editor-arrival { padding: 24px 18px; }
	.hsz-editor-settings { margin: 0 18px 24px; padding: 0 16px 18px; }
	.hsz-service-editor-row { padding: 15px; }
	.hsz-service-editor-row__header { align-items: flex-start; }
	.hsz-service-editor-row__actions { gap: 4px; }
	.hsz-profile-editor .hsz-service-icon-button { width: 32px; min-width: 32px !important; height: 32px; min-height: 32px !important; }
	.hsz-service-editor-row__price { max-width: none; width: 100%; }
	.hsz-service-editor-row__image { align-items: flex-start; flex-wrap: wrap; }
	.hsz-editor-actions { flex-wrap: wrap; padding: 14px; }
	.hsz-editor-actions > div { flex: 1 0 100%; }
	.hsz-editor-actions .hsz-button { flex: 1; }
	.hsz-tax-dialog__actions { flex-direction: column-reverse; }
}

/* A fiókhivatkozás minden oldaltípus saját navigációs sorába illeszkedik. */
.hsz-main-home #top-menu > .hsz-account-link-item > .hsz-account-link,
.hsz-main-home .et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link,
.hsz-standard-page #top-menu > .hsz-account-link-item > .hsz-account-link,
.hsz-standard-page .et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link {
	gap: 7px;
	padding: 3px 0 22px !important;
	color: var(--hsz-muted) !important;
	font-size: 0.8rem;
	font-weight: 600;
}

.hsz-main-home #top-menu > .hsz-account-link-item > .hsz-account-link::before,
.hsz-standard-page #top-menu > .hsz-account-link-item > .hsz-account-link::before {
	display: none;
}

.hsz-main-home #main-header.et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link,
.hsz-standard-page #main-header.et-fixed-header #top-menu > .hsz-account-link-item > .hsz-account-link {
	padding-bottom: 16px !important;
	font-size: 0.76rem;
}

.hsz-city-landing .hsz-city-context-nav > .hsz-account-link {
	order: 3;
	min-height: 40px;
	padding: 7px 2px;
	color: #718092 !important;
	font-size: 0.78rem;
}

.hsz-join-nav .hsz-join-nav__cities {
	margin-left: auto;
}

.hsz-join-nav > .hsz-account-link {
	margin-left: 22px;
	color: #718092 !important;
	font-size: 0.8rem;
}

.hsz-profile-nav > .hsz-account-link {
	margin-left: 0;
	color: var(--hsz-muted) !important;
	font-size: 0.82rem;
}

.hsz-profile-nav__join {
	margin-left: auto;
}

@media (max-width: 980px) {
	#et-top-navigation > .hsz-mobile-account-link {
		display: inline-flex;
		float: right;
		width: 28px;
		height: 32px;
		margin-right: 8px;
		padding: 0;
	}

	#et-top-navigation > .hsz-mobile-account-link > span {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	#mobile_menu > .hsz-account-link-item,
	.et_mobile_menu > .hsz-account-link-item {
		display: none;
	}
}

@media (max-width: 620px) {
	.hsz-city-landing .hsz-city-context-nav {
		gap: 9px;
	}

	.hsz-city-landing .hsz-city-context-nav > .hsz-account-link {
		min-height: 34px;
		font-size: 0.68rem;
	}

	.hsz-join-nav > .hsz-account-link {
		margin-left: 14px;
		font-size: 0.74rem;
	}

	.hsz-join-nav > .hsz-account-link img,
	.hsz-city-context-nav > .hsz-account-link img {
		width: 15px;
		height: 15px;
	}

	.hsz-profile-nav__join,
	.hsz-profile-nav > .hsz-account-link {
		margin-left: 0;
	}
}

/* Visitor access page: one focused login and registration surface. */
body.hsz-member-account-page .hsz-account-page {
	padding-top: 36px !important;
	padding-bottom: 54px !important;
}

.hsz-member-access {
	display: grid;
	grid-template-columns: minmax(300px, 0.86fr) minmax(0, 1.14fr);
	overflow: hidden;
	border: 1px solid var(--hsz-border);
	border-radius: var(--hsz-radius);
	background: #fff;
	box-shadow: 0 16px 42px rgba(5, 22, 41, 0.08);
}

.hsz-member-access__login,
.hsz-member-access__registration {
	min-width: 0;
}

.hsz-member-access__login {
	background: var(--hsz-amber-soft);
}

.hsz-member-access__login .hsz-account-card,
.hsz-member-access__registration-form .hsz-account-card {
	height: 100%;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.hsz-member-access__login .hsz-account-card {
	background: transparent;
}

.hsz-member-access__registration {
	padding: clamp(25px, 3.5vw, 42px);
	background: linear-gradient(135deg, #fff 0%, var(--hsz-teal-soft) 100%);
}

.hsz-member-access__heading h2,
.hsz-member-access__login h1 {
	margin: 0 0 8px;
	color: var(--hsz-navy);
	font-size: clamp(1.55rem, 2.5vw, 2rem);
}

.hsz-member-access__heading > p:last-child {
	margin: 0;
	color: var(--hsz-muted);
}

.hsz-member-access__choices {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 22px;
}

.hsz-member-access__choice {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 18px;
	border: 1px solid rgba(2, 175, 166, 0.22);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.9);
}

.hsz-member-access__option {
	display: flex;
	width: 100%;
	gap: 12px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--hsz-navy) !important;
	font: inherit;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}

.hsz-member-access__option > span:last-child {
	display: grid;
	gap: 7px;
}

.hsz-member-access__option strong {
	font-size: 1rem;
}

.hsz-member-access__option span span {
	color: var(--hsz-muted);
	font-size: 0.88rem;
	line-height: 1.55;
}

.hsz-member-access__icon {
	display: inline-grid;
	flex: 0 0 auto;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 11px;
	background: var(--hsz-teal-soft);
	color: var(--hsz-teal);
	font-size: 1.35rem;
	font-weight: 800;
}

.hsz-member-access__option:hover strong,
.hsz-member-access__details:hover {
	color: #007d76;
}

.hsz-member-access__option:focus-visible,
.hsz-member-access__details:focus-visible {
	outline: 3px solid var(--hsz-blue);
	outline-offset: 4px;
	border-radius: 5px;
}

.hsz-member-access__details {
	margin: 13px 0 0 50px;
	color: #007d76;
	font-size: 0.88rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.hsz-member-access__registration-form {
	margin-top: 22px;
	border-top: 1px solid rgba(2, 175, 166, 0.22);
	padding-top: 22px;
}

.hsz-member-access__registration-form .hsz-account-card {
	padding: 0;
	background: transparent;
}

@media (max-width: 980px) {
	.hsz-member-access {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 620px) {
	body.hsz-member-account-page .hsz-account-page {
		padding-top: 22px !important;
	}

	.hsz-member-access__registration {
		padding: 24px;
	}

	.hsz-member-access__choices {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* The visitor account uses the same embedded navigation language as city pages. */
body.hsz-member-account-page #main-header {
	display: none !important;
}

body.hsz-member-account-page #page-container {
	padding-top: 0 !important;
}

body.hsz-member-account-page .et_pb_section.hsz-member-actions-section {
	/* Keep the existing header height, with equal space above and below the links. */
	padding: 14px 0 !important;
	background: transparent !important;
}

body.hsz-member-account-page .hsz-member-actions-section .et_pb_row {
	width: min(88%, 1180px);
	padding: 0 !important;
}

.hsz-member-context-nav,
.hsz-member-context-nav__actions {
	display: flex;
	align-items: center;
}

.hsz-member-context-nav {
	justify-content: space-between;
	gap: 28px;
}

.hsz-member-context-nav__logo {
	display: block;
	width: clamp(190px, 19vw, 235px);
	line-height: 0;
}

.hsz-member-context-nav__logo img {
	display: block;
	width: 100%;
	height: auto;
}

.hsz-member-context-nav__actions {
	justify-content: flex-end;
	gap: 22px;
}

.hsz-member-context-nav__actions > .hsz-button {
	order: 2;
	min-height: 44px;
	padding: 10px 22px;
	border: 0;
	background: var(--hsz-teal);
	box-shadow: 0 8px 20px rgba(2, 175, 166, 0.2);
	color: #fff !important;
}

.hsz-member-context-nav__actions > .hsz-button:hover {
	background: #02978f;
}

.hsz-member-context-nav__cities {
	order: 1;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 7px 2px;
	color: #7a8794 !important;
	font-size: 0.85rem;
	font-weight: 500;
	text-decoration: none;
}

.hsz-member-context-nav__cities::before {
	display: inline-block;
	width: 19px;
	height: 19px;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a8794' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
	content: "";
}

.hsz-member-context-nav__cities:hover {
	color: var(--hsz-teal) !important;
}

.hsz-member-context-nav__actions > .hsz-account-link {
	order: 3;
	min-height: 40px;
	padding: 7px 2px;
	color: #718092 !important;
	font-size: 0.78rem;
}

@media (max-width: 620px) {
	body.hsz-member-account-page .et_pb_section.hsz-member-actions-section {
		padding: 9px 0 !important;
	}

	body.hsz-member-account-page .hsz-member-actions-section .et_pb_row {
		width: min(92%, 1180px);
	}

	.hsz-member-context-nav {
		align-items: flex-start;
		gap: 14px;
	}

	.hsz-member-context-nav__logo {
		width: 166px;
	}

	.hsz-member-context-nav__actions {
		flex-wrap: wrap;
		justify-content: flex-end;
		gap: 8px 13px;
	}

	.hsz-member-context-nav__actions > .hsz-button {
		min-height: 36px;
		padding: 7px 12px;
		font-size: 0.72rem;
	}

	.hsz-member-context-nav__cities,
	.hsz-member-context-nav__actions > .hsz-account-link {
		min-height: 30px;
		font-size: 0.68rem;
	}
}

.hsz-account-form__name-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px;
}

@media (max-width: 620px) {
	.hsz-account-form__name-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

.hsz-password-control {
	position: relative;
	display: block;
}

.hsz-password-control > input[type="password"],
.hsz-password-control > input[type="text"] {
	padding-right: 52px !important;
}

.hsz-password-toggle {
	position: absolute;
	top: 50%;
	right: 10px;
	display: inline-grid;
	place-items: center;
	width: 34px;
	height: 34px;
	margin: 0 !important;
	padding: 0 !important;
	transform: translateY(-50%);
	border: 0 !important;
	border-radius: 9px;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--hsz-muted) !important;
	cursor: pointer;
}

.hsz-password-toggle svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.hsz-password-toggle:hover {
	background: var(--hsz-teal-soft) !important;
	color: var(--hsz-teal) !important;
}

.hsz-password-toggle:focus-visible {
	outline: 3px solid var(--hsz-blue);
	outline-offset: 2px;
}

/* Override the broad public-form button styles: the password control stays an icon. */
body .hsz-public-form .hsz-password-control > .hsz-password-toggle {
	display: inline-grid !important;
	width: 34px !important;
	height: 34px !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--hsz-muted) !important;
	font-size: 0 !important;
	line-height: 1 !important;
}

body .hsz-public-form .hsz-password-control > .hsz-password-toggle:hover {
	background: var(--hsz-teal-soft) !important;
	color: var(--hsz-teal) !important;
	transform: translateY(-50%) !important;
}

/* Branded account recovery stays part of the shared account surface. */
.hsz-auth-flow {
	width: min(100% - 32px, 560px);
	margin: 60px auto 100px;
	padding: clamp(24px, 5vw, 48px);
	border: 1px solid var(--hsz-border);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 18px 42px rgba(5, 22, 41, 0.08);
}
.hsz-auth-flow h1 { margin: 0 0 18px; color: var(--hsz-navy); font-size: clamp(1.7rem, 4vw, 2.35rem); }
.hsz-auth-flow > p { color: var(--hsz-muted); }
.hsz-auth-flow .hsz-public-form { display: grid; gap: 18px; margin: 24px 0; }
.hsz-auth-flow .hsz-public-form label { display: grid; gap: 8px; font-weight: 700; }
.hsz-auth-flow .hsz-public-form input { width: 100%; }
.hsz-auth-flow .hsz-public-form button { justify-self: start; }

.hsz-member-settings {
	margin-top: 28px;
	padding: clamp(20px, 4vw, 32px);
	border: 1px solid var(--hsz-border);
	border-radius: 20px;
	background: #fff;
}
.hsz-member-settings summary { cursor: pointer; color: var(--hsz-navy); font-weight: 800; font-size: 1.12rem; }
.hsz-member-settings h2 { margin: 0; color: var(--hsz-navy); }
.hsz-member-settings .hsz-public-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 24px; }
.hsz-member-settings .hsz-public-form label { display: grid; gap: 7px; color: var(--hsz-navy); font-weight: 700; }
.hsz-member-settings .hsz-public-form label:nth-of-type(n+3),
.hsz-member-settings .hsz-member-settings__actions,
.hsz-member-settings .hsz-field-help { grid-column: 1 / -1; }
.hsz-member-settings input { width: 100%; }
.hsz-member-settings .hsz-public-form input:not([type="checkbox"]) { min-height: 46px; padding: 10px 14px; border: 1px solid var(--hsz-border); border-radius: 12px; background: #fff; color: var(--hsz-navy); font: inherit; }
.hsz-member-settings .hsz-public-form input:focus-visible { outline: 2px solid var(--hsz-blue); outline-offset: 2px; }
.hsz-member-settings small { display: block; color: var(--hsz-muted); font-weight: 400; }
.hsz-member-settings__actions { display: flex; flex-wrap: wrap; gap: 12px; }
@media (max-width: 600px) {
	.hsz-member-settings .hsz-public-form { grid-template-columns: 1fr; }
}

.hsz-privacy-actions {
	margin-top: 20px;
	padding: clamp(20px, 4vw, 32px);
	border: 1px solid var(--hsz-border);
	border-radius: 20px;
	background: #fff;
}
.hsz-privacy-actions summary { cursor: pointer; color: var(--hsz-navy); font-weight: 800; font-size: 1.08rem; }
.hsz-privacy-actions__body { max-width: 720px; padding-top: 22px; }
.hsz-privacy-actions__body h2 { margin: 0 0 10px; color: var(--hsz-navy); font-size: 1.35rem; }
.hsz-privacy-actions__body p { color: var(--hsz-muted); }
.hsz-privacy-actions__warning { padding: 14px 18px; border-radius: 12px; background: #fff8e8; }
.hsz-privacy-actions form { display: grid; gap: 18px; margin-top: 20px; }
.hsz-privacy-actions label { display: grid; gap: 8px; color: var(--hsz-navy); font-weight: 700; }
.hsz-privacy-actions input { width: min(100%, 430px); }
.hsz-privacy-actions__buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.hsz-privacy-actions__buttons .hsz-button { width: auto; min-height: 48px; }
@media (max-width: 600px) {
	.hsz-privacy-actions__buttons { display: grid; }
	.hsz-privacy-actions__buttons .hsz-button { width: 100%; }
}

/* Visitor favorites and profile are two clear destinations in the same navigation. */
.hsz-member-context-nav__actions > .hsz-account-link--member-profile { order: 4; }
.hsz-favorites-grid[hidden], .hsz-favorites-empty[hidden] { display: none !important; }
.hsz-favorites-browse {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 11px 15px;
	border: 1px solid var(--hsz-border);
	border-radius: 12px;
	background: #f4fbfc;
	color: #007d76 !important;
	font-size: 0.86rem;
	font-weight: 700;
	text-decoration: none;
}
.hsz-favorites-browse > span { font-size: 1.2rem; line-height: 1; }
.hsz-favorites-browse:hover { border-color: var(--hsz-teal); background: var(--hsz-teal-soft); }
@media (max-width: 700px) {
	.hsz-member-dashboard .hsz-dashboard-bar { align-items: flex-start; }
	.hsz-member-dashboard .hsz-favorites-browse { align-self: flex-start; }
}
.hsz-screen-reader-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.hsz-screen-reader-status.is-error { position: fixed; right: 20px; bottom: 20px; z-index: 9999; width: min(360px, calc(100vw - 40px)); height: auto; padding: 14px 18px; margin: 0; overflow: visible; clip: auto; white-space: normal; border: 1px solid #e8a1a1; border-radius: 12px; background: #fff3f3; box-shadow: 0 8px 24px rgba(5, 22, 41, 0.14); color: #8c2525; }
.hsz-favorite-button[aria-busy="true"] { opacity: 0.6; cursor: wait; }

/* First-party cookie choices: optional measurement and external Google content stay off until selected. */
.hsz-cookie-consent[hidden] { display: none !important; }
.hsz-cookie-consent { position: fixed; z-index: 999999; left: 50%; bottom: max(16px, env(safe-area-inset-bottom)); width: min(1120px, calc(100vw - 32px)); transform: translateX(-50%); color: var(--hsz-navy); }
.hsz-cookie-consent__panel { position: relative; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; column-gap: 24px; padding: 16px 48px 16px 20px; border: 1px solid #cceceb; border-radius: 18px; background: rgba(255,255,255,.98); box-shadow: 0 12px 34px rgba(5,22,41,.17); max-height: calc(100dvh - 32px); overflow-y: auto; }
.hsz-cookie-consent__intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; min-width: 0; }
.hsz-cookie-consent__close { position: absolute; top: 8px; right: 9px; width: 32px; height: 32px; margin: 0; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--hsz-muted); font: inherit; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.hsz-cookie-consent__close:hover { background: var(--hsz-teal-soft); color: var(--hsz-navy); }
.hsz-cookie-consent__close:focus-visible { outline: 3px solid var(--hsz-blue); outline-offset: 2px; }
.hsz-cookie-consent .hsz-cookie-consent__eyebrow { margin: 0 0 5px; color: #007d76; font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.hsz-cookie-consent h2 { margin: 0; font-size: 1.18rem; line-height: 1.25; }
.hsz-cookie-consent p { margin: 4px 0 0; color: var(--hsz-muted); font-size: .84rem; line-height: 1.45; }
.hsz-cookie-consent__privacy a { color: #007d76; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.hsz-cookie-consent__settings[hidden] { display: none !important; }
.hsz-cookie-consent__settings { display: grid; grid-column: 1 / -1; gap: 10px; margin-top: 12px; }
.hsz-cookie-consent__item { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 16px; padding: 13px 14px; border: 1px solid var(--hsz-border); border-radius: 14px; background: #f9fcfc; cursor: pointer; }
.hsz-cookie-consent__item strong { display: block; color: var(--hsz-navy); font-size: .9rem; }
.hsz-cookie-consent__item small { display: block; margin-top: 3px; color: var(--hsz-muted); font-size: .76rem; line-height: 1.45; }
.hsz-cookie-consent__item input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.hsz-cookie-consent__switch { position: relative; width: 42px; height: 24px; border-radius: 999px; background: #c8d2db; transition: background-color 160ms ease; }
.hsz-cookie-consent__switch::after { position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 4px rgba(5,22,41,.2); content: ""; transition: transform 160ms ease; }
.hsz-cookie-consent__item input:checked + .hsz-cookie-consent__switch { background: var(--hsz-teal); }
.hsz-cookie-consent__item input:checked + .hsz-cookie-consent__switch::after { transform: translateX(18px); }
.hsz-cookie-consent__item input:focus-visible + .hsz-cookie-consent__switch { outline: 3px solid var(--hsz-blue); outline-offset: 3px; }
.hsz-cookie-consent__item--necessary { cursor: default; }
.hsz-cookie-consent__always { color: #007d76; font-size: .74rem; font-weight: 800; white-space: nowrap; }
.hsz-cookie-consent__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin: 0; }
.hsz-cookie-consent[data-hsz-cookie-expanded="1"] .hsz-cookie-consent__actions { grid-column: 1 / -1; }
.hsz-cookie-consent__button { min-height: 38px; margin: 0; padding: 7px 12px; border-radius: 10px; font: inherit; font-size: .8rem; font-weight: 800; cursor: pointer; }
.hsz-cookie-consent__button[hidden] { display: none !important; }
.hsz-cookie-consent__button--primary { border: 1px solid var(--hsz-teal); background: var(--hsz-teal); color: #fff; }
.hsz-cookie-consent__button--primary:hover { background: #008f88; border-color: #008f88; }
.hsz-cookie-consent__button--secondary { border: 1px solid var(--hsz-border); background: #fff; color: var(--hsz-navy); }
.hsz-cookie-consent__button--secondary:hover { border-color: var(--hsz-teal); background: var(--hsz-teal-soft); }
.hsz-cookie-consent[aria-busy="true"] { opacity: .7; pointer-events: none; }
.hsz-external-embed { display: grid; justify-items: start; gap: 10px; min-height: 260px; padding: clamp(22px,4vw,34px); border: 1px solid var(--hsz-border); border-radius: 14px; background: #f5fafb; }
.hsz-external-embed strong { color: var(--hsz-navy); font-size: 1.05rem; }
.hsz-external-embed p { margin: 0; color: var(--hsz-muted); line-height: 1.55; }
.hsz-external-embed button { min-height: 38px; padding: 8px 12px; border: 1px solid var(--hsz-teal); border-radius: 10px; background: var(--hsz-teal); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.hsz-external-embed .hsz-external-embed__settings { border-color: var(--hsz-border); background: #fff; color: var(--hsz-navy); }
@media (max-width: 900px) {
	.hsz-cookie-consent__panel { grid-template-columns: 1fr; row-gap: 10px; }
	.hsz-cookie-consent__actions { justify-content: flex-start; }
}
@media (max-width: 600px) {
	.hsz-cookie-consent { bottom: max(8px, env(safe-area-inset-bottom)); width: calc(100vw - 16px); }
	.hsz-cookie-consent__panel { padding: 12px 42px 12px 12px; border-radius: 14px; max-height: calc(100dvh - 16px); }
	.hsz-cookie-consent .hsz-cookie-consent__eyebrow { font-size: .68rem; }
	.hsz-cookie-consent h2 { font-size: 1rem; }
	.hsz-cookie-consent p { font-size: .78rem; }
	.hsz-cookie-consent__actions { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 6px; }
	.hsz-cookie-consent__button { width: 100%; min-height: 36px; padding: 6px 8px; font-size: .72rem; }
	.hsz-cookie-consent__button--primary { grid-column: 1 / -1; }
}
@media (max-width: 980px) {
	body.hsz-member-session #mobile_menu > .hsz-account-link-item,
	body.hsz-member-session .et_mobile_menu > .hsz-account-link-item { display: list-item; }
	body.hsz-member-session #mobile_menu > .hsz-account-link-item .hsz-account-link { justify-content: flex-start; gap: 9px; padding: 12px 5%; }
}


/* HelyiSzolgáltatók: kontrasztos, jelölés nélküli lábléc */
#main-footer {
	background: linear-gradient(125deg, #061b30 0%, #0a2b46 100%) !important;
}

.hsz-site-footer__logo {
	width: min(265px, 100%);
	height: 48px;
	padding: 0;
	border-radius: 0;
	background: transparent url("assets/helyiszolgaltatok_logo.svg") left center / contain no-repeat;
	filter: brightness(0) invert(1);
	opacity: .98;
}

.hsz-site-footer__tagline {
	color: #d8e9f2;
	font-size: .96rem;
}

.hsz-site-footer__heading {
	color: #79e8e1;
}

.hsz-site-footer__nav a,
.hsz-site-footer__cookie-link {
	color: #edf7fb;
	font-weight: 600;
}

.hsz-site-footer__nav a:hover,
.hsz-site-footer__cookie-link:hover {
	color: #79e8e1;
}

.hsz-site-footer__bottom {
	border-top-color: rgba(217, 239, 244, .28);
	color: #c4d7e0;
}


/* Divi alapértelmezett lábléclink-színének felülírása */
#footer-info .hsz-site-footer__tagline {
	color: #d8e9f2 !important;
}

#footer-info .hsz-site-footer__nav a,
#footer-info .hsz-site-footer__cookie-link {
	color: #edf7fb !important;
}

#footer-info .hsz-site-footer__nav a:hover,
#footer-info .hsz-site-footer__cookie-link:hover {
	color: #79e8e1 !important;
}

#footer-info .hsz-site-footer__bottom {
	color: #c4d7e0 !important;
}

#menu-item-1302>a::before{content:"?" !important;font-family:inherit!important;font-weight:800!important}

/* hsz-join-hero-balance-20261002 */
.hsz-join-landing .hsz-join-hero__copy .hsz-eyebrow,
.hsz-join-landing .hsz-join-hero__copy h1,
.hsz-join-landing .hsz-join-hero__promise { padding-bottom: 0 !important; }

@media (min-width: 981px) {
  .hsz-join-landing .hsz-join-hero { min-height: 600px; padding-bottom: 42px !important; }
  .hsz-join-landing .hsz-join-hero__row { grid-template-columns: minmax(0, 54fr) minmax(400px, 46fr); gap: 4.5%; padding-top: 34px !important; }
  .hsz-join-landing .hsz-join-hero__copy .hsz-eyebrow { font-size: 1rem; line-height: 1.4; margin: 0 0 16px; }
  .hsz-join-landing .hsz-join-hero__copy h1 { font-size: clamp(3.7rem, 5.1vw, 4.85rem); line-height: 1.02; margin: 0 0 16px; }
  .hsz-join-landing .hsz-join-hero__promise { max-width: 560px; font-size: clamp(1.25rem, 1.65vw, 1.42rem) !important; font-weight: 600; line-height: 1.42; margin: 0 0 12px; }
  .hsz-join-landing .hsz-join-hero__copy .hsz-lead { max-width: 540px; line-height: 1.6; }
  .hsz-join-landing .hsz-join-cta-row { gap: 14px; margin-top: 22px; }
  .hsz-join-landing .hsz-join-trust-points { margin-top: 18px !important; }
}

/* hsz-join-hero-spacing-20261002 */
@media (min-width: 981px) {
  .hsz-join-landing .hsz-join-hero__row { padding-top: 74px !important; }
  .hsz-join-landing .hsz-join-hero__copy .hsz-eyebrow { margin-bottom: 20px; }
  .hsz-join-landing .hsz-join-hero__copy h1 { margin-bottom: 23px; }
  .hsz-join-landing .hsz-join-hero__promise { margin-bottom: 18px; }
  .hsz-join-landing .hsz-join-cta-row { margin-top: 28px; }
  .hsz-join-landing .hsz-join-trust-points { margin-top: 24px !important; }
}

/* HSZ JOIN BENEFITS 20261002 */
.hsz-join-landing .hsz-join-benefits .hsz-join-section-heading { max-width: 840px; }
.hsz-join-landing .hsz-join-benefits .hsz-join-section-heading h2 { margin-bottom: 20px; }
.hsz-join-landing .hsz-join-benefits .hsz-join-benefits-lead { margin: 0 auto 8px; color: #10213a; font-size: clamp(1.08rem, 1.55vw, 1.3rem); line-height: 1.5; }
.hsz-join-landing .hsz-join-benefits .hsz-join-benefits-intro { max-width: 730px; margin: 0 auto; color: var(--hsz-muted); font-size: 1rem; line-height: 1.65; }
.hsz-join-landing .hsz-join-benefits .hsz-benefit-grid { margin-top: 38px; gap: 18px; }
.hsz-join-landing .hsz-join-benefits .hsz-benefit-grid article { min-height: 0; padding: 26px; }
.hsz-join-landing .hsz-join-benefits .hsz-benefit-grid h3 { margin: 18px 0 10px; line-height: 1.35; }
.hsz-join-landing .hsz-join-benefits .hsz-benefit-grid article p { font-size: .9rem; line-height: 1.62; }
.hsz-join-landing .hsz-join-benefits-cta { max-width: 780px; margin: 42px auto 0; text-align: center; }
.hsz-join-landing .hsz-join-benefits-statement { margin: 0 0 22px; color: #10213a; font-size: clamp(1.28rem, 2vw, 1.65rem); font-weight: 700; line-height: 1.35; }
.hsz-join-landing .hsz-join-benefits-cta .hsz-button { display: inline-flex; justify-content: center; align-items: center; }
.hsz-join-landing .hsz-join-benefits-note { margin: 12px 0 0; color: var(--hsz-muted); font-size: .82rem; line-height: 1.5; }
@media (max-width: 620px) {
  .hsz-join-landing .hsz-join-benefits .hsz-join-section-heading h2 { margin-bottom: 16px; }
  .hsz-join-landing .hsz-join-benefits .hsz-benefit-grid { margin-top: 28px; gap: 12px; }
  .hsz-join-landing .hsz-join-benefits .hsz-benefit-grid article { padding: 22px; }
  .hsz-join-landing .hsz-join-benefits-cta { margin-top: 34px; }
  .hsz-join-landing .hsz-join-benefits-cta .hsz-button { width: 100%; }
}
/* HSZ CATEGORY FLIP 20261003 */
.hsz-join-landing .hsz-join-category-list .hsz-join-category { --hsz-card-bg: #02afa6; --hsz-card-back: var(--hsz-card-bg); --hsz-card-ink: #fff; position: relative; display: block; min-width: 0; min-height: 136px; padding: 0; border: 0; border-radius: 14px; background: transparent; box-shadow: none; perspective: 1000px; }
.hsz-join-landing .hsz-join-category-list .hsz-join-category::before { display: none; }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--beauty { --hsz-card-bg: #f6386b; --hsz-card-icon: url("assets/icons/szepsegapolas.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--wellness { --hsz-card-bg: #8a58fb; --hsz-card-icon: url("assets/icons/egeszseg-wellness-es-mozgas.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--dogs { --hsz-card-bg: #fdae0e; --hsz-card-icon: url("assets/icons/kutyas-szolgaltatok.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--repair { --hsz-card-bg: #02afa6; --hsz-card-icon: url("assets/icons/szerelok-es-szervizek.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--car { --hsz-card-bg: #0688f4; --hsz-card-icon: url("assets/icons/auto-es-jarmuvek.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--tattoo { --hsz-card-bg: #373737; --hsz-card-icon: url("assets/icons/tattoo-piercing.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--photo { --hsz-card-bg: #ff7a59; --hsz-card-icon: url("assets/icons/kreativ-szolgaltatasok.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--house { --hsz-card-bg: #15b84a; --hsz-card-icon: url("assets/icons/haz-es-haz-koruli-munkak.svg"); }
.hsz-join-landing .hsz-join-category-list .hsz-join-category--business { --hsz-card-bg: #005dae; --hsz-card-icon: url("assets/icons/vallalkozas-es-ugyintezes.svg"); }
.hsz-join-landing .hsz-join-category summary { display: block; height: 100%; min-height: 136px; list-style: none; cursor: pointer; border-radius: 14px; outline-offset: 4px; }
.hsz-join-landing .hsz-join-category summary::-webkit-details-marker { display: none; }
.hsz-join-landing .hsz-join-category summary::marker { content: ''; }
.hsz-join-landing .hsz-join-category summary:focus-visible { outline: 3px solid #071c32; }
.hsz-join-landing .hsz-join-category__inner { position: relative; display: block; width: 100%; min-height: 136px; transform-style: preserve-3d; transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.hsz-join-landing .hsz-join-category[open] .hsz-join-category__inner { transform: rotateY(180deg); }
@media (hover: hover) and (pointer: fine) { .hsz-join-landing .hsz-join-category:not([data-hsz-flip-released]):hover .hsz-join-category__inner { transform: rotateY(180deg); } }
.hsz-join-landing .hsz-join-category__front, .hsz-join-landing .hsz-join-category__back { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; box-sizing: border-box; padding: 16px 18px; border-radius: 14px; backface-visibility: hidden; -webkit-backface-visibility: hidden; background: var(--hsz-card-bg); color: var(--hsz-card-ink); text-align: center; box-shadow: 0 6px 16px rgba(5,22,41,.08); }
.hsz-join-landing .hsz-join-category__front { flex-direction: column; gap: 8px; }
.hsz-join-landing .hsz-join-category__front::before { content: ""; display: block; width: 38px; height: 38px; flex: 0 0 38px; background: var(--hsz-card-icon) center / contain no-repeat; }
.hsz-join-landing .hsz-join-category__name { color: inherit; font-size: 1.05rem; font-weight: 800; line-height: 1.35; }
.hsz-join-landing .hsz-join-category__back { flex-direction: column; gap: 8px; transform: rotateY(180deg); background: var(--hsz-card-back); }
.hsz-join-landing .hsz-join-category__back-label { color: inherit; font-size: .7rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.hsz-join-landing .hsz-join-category__examples { color: inherit; font-size: .875rem; font-weight: 600; line-height: 1.45; }
@media (max-width: 767px) {
  .hsz-join-landing .hsz-join-category-list .hsz-join-category,
  .hsz-join-landing .hsz-join-category summary,
  .hsz-join-landing .hsz-join-category__inner { min-height: 152px; }
}
.hsz-join-landing .hsz-faq-more { margin: 20px 0 0; padding-top: 18px; border-top: 1px solid var(--hsz-border); color: var(--hsz-muted); font-size: .92rem; line-height: 1.6; }
.hsz-join-landing .hsz-faq-more a { color: var(--hsz-teal); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 981px) {
  .hsz-join-landing .hsz-join-faq > .et_pb_row { display: flex !important; align-items: stretch; }
  .hsz-join-landing .hsz-join-faq > .et_pb_row > .et_pb_column { float: none; display: flex; flex-direction: column; }
  .hsz-join-landing .hsz-join-faq > .et_pb_row > .et_pb_column > .et_pb_module,
  .hsz-join-landing .hsz-join-faq > .et_pb_row > .et_pb_column > .et_pb_module > .et_pb_text_inner { height: 100%; }
  .hsz-join-landing .hsz-join-faq .hsz-build-together { display: flex; flex-direction: column; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { .hsz-join-landing .hsz-join-category__inner { transition: none; } }

/* Welcoming activation screen: confirmation is a next step, not a form error. */
.hsz-activation-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 26px;border:1px solid var(--hsz-border);border-radius:22px;background:#fff;box-shadow:0 8px 26px rgba(5,22,41,.04)}
.hsz-activation-nav__logo{display:block;width:240px;max-width:48%}
.hsz-activation-nav__logo img{display:block;width:100%;height:auto}
.hsz-activation-nav>div{display:flex;align-items:center;flex-wrap:wrap;gap:22px}
.hsz-activation-nav a{color:var(--hsz-navy);font-weight:700;text-decoration:none}
.hsz-activation-nav .hsz-button{padding:10px 20px;font-size:.9rem}
.hsz-activation-welcome .hsz-provider-control__header{padding:clamp(24px,4vw,42px);background:linear-gradient(125deg,#fff 5%,#effbf9 75%,#e1f7f2 100%)}
.hsz-activation-welcome .hsz-provider-control__welcome{max-width:870px}
.hsz-activation-welcome .hsz-provider-control__welcome h1{font-size:clamp(1.8rem,3.5vw,3rem)}
.hsz-activation-steps{position:relative;z-index:1;grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 24px;margin:0!important;padding:0!important;list-style:none!important}
.hsz-activation-steps li{display:flex;align-items:center;gap:9px;color:#536273;font-size:.88rem;font-weight:700}
.hsz-activation-steps li>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e3eeec;color:#466761}
.hsz-activation-steps li:first-child>span{background:#d5f1e4;color:#176b4a}
.hsz-activation-steps [aria-current=step]{color:#694600}
.hsz-activation-steps [aria-current=step]>span{background:#ffca38;color:#513900}
.hsz-activation-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.hsz-activation-welcome .hsz-activation-card{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;margin:0;padding:clamp(24px,3vw,34px);border:1px solid #d7e9e5;border-radius:24px;background:#fff;box-shadow:0 12px 30px rgba(5,22,41,.05);color:var(--hsz-navy)}
.hsz-activation-welcome .hsz-activation-card--email:not(.hsz-form-notice--error){border:1px solid #efc753;border-top:5px solid #ffc62f;background:linear-gradient(135deg,#fff9df,#fff2b9);color:#453611}
.hsz-activation-card__icon{display:grid;place-items:center;width:50px;height:50px;margin-bottom:18px;border-radius:16px;background:#fff1b0;color:#755000;font-size:27px}
.hsz-activation-card--next .hsz-activation-card__icon{background:#ddf6ef;color:#078276}
.hsz-activation-welcome .hsz-activation-card__eyebrow{margin:0 0 7px!important;padding:0;color:#775213;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.hsz-activation-card--next .hsz-activation-card__eyebrow{color:#078276}
.hsz-activation-welcome .hsz-activation-card h2{margin:0 0 16px;padding:0;color:var(--hsz-navy);font-size:clamp(1.4rem,2.2vw,1.85rem);line-height:1.2}
.hsz-activation-welcome .hsz-activation-card p{margin:0 0 16px;padding:0;line-height:1.7;color:inherit}
.hsz-activation-welcome .hsz-activation-card__hint{font-size:.9rem;color:#5e604f}
.hsz-activation-welcome .hsz-activation-card>.hsz-button{margin-top:auto;max-width:100%;text-align:center;white-space:normal}
.hsz-activation-welcome #hsz-account-notice.hsz-form-notice--pending:focus{outline:3px solid #f0b923;outline-offset:4px}
.hsz-activation-welcome .hsz-form-notice--error{border:1px solid #c53c33;border-top:5px solid #c53c33;background:#fff3f2;color:#8c2721}
.hsz-activation-welcome #hsz-account-notice.hsz-form-notice--error:focus{outline:3px solid #c53c33;outline-offset:4px}
@media(max-width:760px){.hsz-activation-cards{grid-template-columns:1fr;gap:18px}.hsz-activation-nav{padding:16px;gap:14px;flex-wrap:wrap}.hsz-activation-nav__logo{max-width:100%;width:220px}.hsz-activation-nav>div{gap:18px}.hsz-activation-steps{gap:12px}.hsz-activation-steps li{font-size:.8rem}.hsz-activation-welcome .hsz-activation-card{padding:24px}}
@media(prefers-reduced-motion:no-preference){.hsz-activation-card{animation:hsz-activation-arrive .35s ease-out both}.hsz-activation-card--next{animation-delay:.06s}@keyframes hsz-activation-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
.hsz-activation-welcome .hsz-provider-control__welcome{grid-row:1}
.hsz-activation-welcome .hsz-activation-steps{grid-row:2}

/* Contextual support and a calm, readable contact page — 0.9.53. */
.hsz-public-contact-page { position: relative; isolation: isolate; }
.hsz-public-contact-page::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: url("assets/hero/home-hero-background-v2.png") center top / cover no-repeat; opacity: .13; }
.hsz-support-help { margin: 0 0 28px; padding: clamp(20px,3vw,30px); border: 1px solid #b9e3df; border-radius: 22px; background: rgba(237,250,247,.96); }
.hsz-support-help h2 { font-size: clamp(1.3rem,2vw,1.7rem); margin: 6px 0 12px; }
.hsz-support-help p { line-height: 1.65; }
.hsz-site-contact select { width: 100%; min-height: 50px; padding: 12px; background: #fff; color: #102747; border: 1px solid #bccbd8; border-radius: 12px; font: inherit; }
.hsz-contact-topic-help { margin: 0; padding: 14px; border-radius: 12px; background: #f0f8fa; font-size: .9rem; }
.hsz-category-help { grid-column: 1/-1; padding: 16px; border: 1px solid #b9e3df; border-radius: 12px; background: #f1faf8; }
.hsz-category-help summary { cursor: pointer; font-weight: 600; color: #006e68; }
.hsz-category-help-dialog { width: min(640px,calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 32px; border: 1px solid #b9e3df; border-radius: 22px; color: #102747; box-shadow: 0 20px 80px #10274733; }
.hsz-category-help-dialog::backdrop { background: #10274788; }
.hsz-category-help-dialog h3 { margin: 12px 36px 18px 0; }
.hsz-category-help-dialog p { line-height: 1.65; margin: 12px 0; }
.hsz-category-help-dialog a { color: #00746e; text-decoration: underline; }
.hsz-category-help-close { position: absolute; top: 10px; right: 12px; width: 40px; height: 40px; border: 0; border-radius: 50%; font-size: 28px; cursor: pointer; background: #e4f5f2; color: #102747; }
.hsz-category-help summary:focus-visible,.hsz-category-help-close:focus-visible { outline: 3px solid #0688f4; outline-offset: 3px; }
#miert-eri-meg,.hsz-help details { scroll-margin-top: 120px; }
.hsz-help [data-hsz-manual-copy] { display: block; width: 100%; padding: 10px; margin-top: 10px; font: inherit; }
@media(max-width:600px) { .hsz-category-help-dialog { padding: 22px; } }

/* Give every FAQ answer breathing room before its sharing action. */
.hsz-help .hsz-help__question-links { margin-top: 24px; padding-top: 0; }

.hsz-search-form .hsz-search-online { display: flex; align-items: center; gap: 8px; margin: 0; font-size: .9rem; }
.hsz-search-form .hsz-search-online input { width: auto; min-height: 0; accent-color: #02afa6; }

/* Public save total, distinct from ratings; identities stay private. */
.hsz-favorite-button__count { margin-left: 8px; font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.hsz-registration-share { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 24px; padding: 0 20px; font-size: .8rem; line-height: 1.5; }
.hsz-registration-share button { padding: 4px 8px; border: 1px solid #cbdeda; border-radius: 6px; background: transparent; color: #078d85; font: inherit; cursor: pointer; }
.hsz-registration-share button:focus-visible { outline: 2px solid #078d85; outline-offset: -3px; }
.hsz-registration-share [hidden] { display: none !important; }
.hsz-registration-share label { flex-basis: 100%; }
.hsz-registration-share input { display: block; width: 100%; }

/* Compact notices and useful, self-service account navigation. */
.hsz-gathering-notice { position: relative; padding-right: 62px; }
.hsz-gathering-notice[hidden], .hsz-quote-attention-badge[hidden] { display: none !important; }
.hsz-gathering-notice__dismiss { position: absolute; top: 8px; right: 8px; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #051629; font: inherit; font-size: 28px; line-height: 1; cursor: pointer; }
.hsz-gathering-notice__dismiss:hover, .hsz-gathering-notice__dismiss:focus-visible { background: rgba(5,22,41,.1); }
.hsz-help__category-catalog { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; margin-top: 22px; }
.hsz-help__category-catalog > div { padding: 20px; border-radius: 16px; background: #f3faf9; border: 1px solid #d8ece9; }
.hsz-help__category-catalog h4 { margin-bottom: 12px; font-size: 1rem; color: #102747; }
.hsz-help__category-catalog ul { padding-left: 20px; font-size: .9rem; line-height: 1.7; }
.hsz-newsletter-invite { position: relative; display: grid; grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); align-items: center; gap: clamp(28px,4vw,56px); overflow: hidden; border-color: #f3d67e; background: radial-gradient(circle at 100% 0,#fff0ae 0,transparent 45%),linear-gradient(120deg,#fffdf5,#f0fbf9); }
.hsz-newsletter-invite__intro { min-width: 0; }
.hsz-newsletter-invite__heading { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.hsz-newsletter-invite__heading .hsz-eyebrow { margin: 0; padding: 0; line-height: 1.4; }
.hsz-newsletter-invite__illustration { position: relative; display: grid; place-items: center; flex: 0 0 60px; width: 60px; height: 60px; border-radius: 20px; background: #dff7f1; color: #007d76; }
.hsz-newsletter-invite__illustration::after { content: ''; position: absolute; top: -3px; right: -3px; width: 15px; height: 15px; border: 3px solid #fffdf5; border-radius: 50%; background: var(--hsz-amber); }
.hsz-newsletter-invite__svg { display: block; flex: 0 0 auto; width: 24px; height: 24px; }
.hsz-newsletter-invite__illustration .hsz-newsletter-invite__svg { width: 32px; height: 32px; }
.hsz-newsletter-invite__intro h2 { margin: 0 0 14px; padding: 0; font-size: clamp(1.35rem,2.2vw,1.8rem); line-height: 1.25; }
.hsz-newsletter-invite__intro > p { margin: 0; padding: 0; line-height: 1.65; }
.hsz-newsletter-invite__intro > .hsz-newsletter-invite__benefits { gap: 14px; margin: 22px 0; }
.hsz-newsletter-invite__intro > .hsz-newsletter-invite__benefits li { align-items: flex-start; gap: 12px; line-height: 1.5; }
.hsz-newsletter-invite__intro > .hsz-newsletter-invite__benefits span { flex: 0 0 24px; margin-top: 1px; }
.hsz-newsletter-invite__intro > .hsz-newsletter-invite__fine { color: var(--hsz-muted); font-size: .85rem; }
.hsz-newsletter-invite .hsz-newsletter-invite__form { display: grid; gap: 20px; min-width: 0; width: 100%; margin: 0; padding: clamp(22px,2.5vw,32px); border-radius: 22px; border-color: #d7e9e5; }
.hsz-newsletter-invite__form h3 { margin: 0; padding: 0; font-size: 1.2rem; line-height: 1.35; }
.hsz-newsletter-invite__form > p { margin: 0; padding: 0; line-height: 1.6; }
.hsz-newsletter-invite__form .hsz-field--consent { margin: 0; }
.hsz-newsletter-invite__form .hsz-field--consent label { font-weight: 500; line-height: 1.7; }
.hsz-newsletter-invite__form .hsz-field--consent a { display: inline-block; margin-top: 8px; }
.hsz-newsletter-invite .hsz-newsletter-invite__form button { width: 100%; min-height: 48px; padding: 13px 18px; font-size: .9rem; line-height: 1.5; }
@media(max-width:900px) { .hsz-newsletter-invite { grid-template-columns: minmax(0,1fr); gap: 24px; } }
.hsz-newsletter-invite__benefits { display: grid; gap: 10px; padding: 0 !important; margin: 18px 0 24px; list-style: none; }
.hsz-newsletter-invite__benefits li { display: flex; align-items: baseline; gap: 10px; }
.hsz-newsletter-invite__benefits span { color: #008d85; font-weight: 800; }
.hsz-account-site-navigation { max-width: 1400px; margin: 0 auto 24px; }
.hsz-quote-nav-link { position: relative; display: inline-flex; align-items: center; gap: 8px; }
.hsz-quote-attention-badge { display: inline-flex; justify-content: center; align-items: center; min-width: 21px; height: 21px; padding: 0 5px; border-radius: 999px; color: #fff; background: #d82f49; font-size: 12px; line-height: 1; font-weight: 800; }
.hsz-quote-page .hsz-provider-control__nav { margin: 0 0 26px; }
@media(max-width:700px) { .hsz-help__category-catalog { grid-template-columns: 1fr; } .hsz-account-site-navigation { margin-bottom: 18px; } }

/* Contact: self-service on the left, a quiet form on the right — 0.9.58. */
.hsz-public-contact-page--refreshed { position: relative; isolation: isolate; padding: clamp(36px,5vw,72px) 24px; background: radial-gradient(ellipse at 85% 15%,#e8f7f5 0,transparent 55%),#f7fbff; }
.hsz-public-contact-page--refreshed::before { z-index: -1; inset: 0; opacity: 1; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22600%22%20height%3D%22560%22%20viewBox%3D%220%200%20600%20560%22%3E%3Cg%20fill%3D%22%2302afa6%22%20font-family%3D%22Arial%2Csans-serif%22%20font-weight%3D%22700%22%3E%3Ctext%20x%3D%2242%22%20y%3D%2298%22%20font-size%3D%2280%22%20opacity%3D%22.12%22%20transform%3D%22rotate%28-16%2042%2098%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%22265%22%20y%3D%2257%22%20font-size%3D%2236%22%20opacity%3D%22.16%22%20transform%3D%22rotate%2814%20265%2057%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%22500%22%20y%3D%22155%22%20font-size%3D%22110%22%20opacity%3D%22.09%22%20transform%3D%22rotate%2818%20500%20155%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%22165%22%20y%3D%22265%22%20font-size%3D%2253%22%20opacity%3D%22.11%22%20transform%3D%22rotate%28-12%20165%20265%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%22365%22%20y%3D%22330%22%20font-size%3D%2285%22%20opacity%3D%22.1%22%20transform%3D%22rotate%2812%20365%20330%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%2242%22%20y%3D%22440%22%20font-size%3D%2243%22%20opacity%3D%22.17%22%20transform%3D%22rotate%2816%2042%20440%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%22230%22%20y%3D%22530%22%20font-size%3D%2296%22%20opacity%3D%22.08%22%20transform%3D%22rotate%28-18%20230%20530%29%22%3E%3F%3C%2Ftext%3E%3Ctext%20x%3D%22525%22%20y%3D%22487%22%20font-size%3D%2248%22%20opacity%3D%22.13%22%20transform%3D%22rotate%28-14%20525%20487%29%22%3E%3F%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E") 24px 12px / 600px 560px repeat; }
.hsz-contact-layout { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); align-items: start; gap: clamp(24px,4vw,48px); width: min(1180px,100%); margin: 0 auto; }
.hsz-contact-sidebar { min-width: 0; display: grid; gap: 24px; }
.hsz-contact-sidebar .hsz-support-help { margin: 0; padding: clamp(24px,3vw,36px); border-radius: 24px; background: rgba(237,250,247,.97); box-shadow: 0 12px 36px #05162905; }
.hsz-contact-sidebar .hsz-support-help .hsz-eyebrow { padding: 0; margin: 0 0 20px; color: #00847d; }
.hsz-contact-sidebar h2 { padding: 0; margin: 0 0 18px; color: var(--hsz-navy); font-size: clamp(1.4rem,2.2vw,1.85rem); line-height: 1.25; }
.hsz-contact-sidebar p { padding: 0; margin: 0; color: var(--hsz-muted); line-height: 1.7; }
.hsz-contact-sidebar .hsz-contact-help-button { display: inline-flex; justify-content: center; align-items: center; margin: 28px 0 0; padding: 13px 20px; min-height: 48px; max-width: 100%; border: 0; border-radius: 14px; background: var(--hsz-amber); color: #051629 !important; box-shadow: 0 8px 22px rgba(253,174,14,.20); font-size: .9rem; line-height: 1.5; text-align: center; }
.hsz-contact-sidebar .hsz-contact-help-button:hover { background: #ffc13d; color: #051629; }
.hsz-contact-sidebar a:focus-visible { outline: 3px solid #0688f4; outline-offset: 4px; }
.hsz-contact-email { padding: clamp(24px,3vw,32px); border: 1px solid #d7e9e5; border-radius: 24px; background: rgba(255,255,255,.96); }
.hsz-contact-email__icon { display: grid; place-items: center; width: 44px; height: 44px; margin: 0 0 18px; border-radius: 14px; background: #e1f6f1; color: #007c75; font-size: 25px; }
.hsz-contact-email h2 { font-size: 1.2rem; }
.hsz-contact-email a { display: inline-block; margin-top: 14px; color: #007b74; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.hsz-contact-layout .hsz-site-contact { min-width: 0; padding: clamp(24px,3vw,40px); scroll-margin-top: 120px; }
.hsz-contact-layout .hsz-site-contact h1 { margin: 0 0 30px; padding: 0; font-size: clamp(1.8rem,3vw,2.5rem); line-height: 1.15; letter-spacing: -.03em; }
@media(max-width:800px) { .hsz-contact-layout { grid-template-columns: minmax(0,1fr); max-width: 640px; } .hsz-contact-sidebar { gap: 18px; } .hsz-public-contact-page--refreshed { padding: 32px 18px; } }
@media(max-width:420px) { .hsz-contact-layout .hsz-site-contact,.hsz-contact-sidebar .hsz-support-help,.hsz-contact-email { padding: 24px 20px; border-radius: 20px; } }

/* A completed support request needs an acknowledgement, not another empty form. */
.hsz-contact-complete { padding: 8px 0; }
.hsz-contact-complete__icon { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 0 24px; border-radius: 20px; background: #e1f7ea; color: #177b43; font-size: 36px; font-weight: 700; }
.hsz-contact-layout .hsz-contact-complete h1 { margin-bottom: 22px; }
.hsz-contact-complete .hsz-form-notice--success { margin: 0; padding: 0; border: 0; background: transparent; color: var(--hsz-muted); box-shadow: none; }
.hsz-contact-complete .hsz-form-notice p { margin: 0; padding: 0; line-height: 1.7; }
.hsz-contact-complete .hsz-form-notice:focus { outline: 2px solid #00877f; outline-offset: 6px; }
.hsz-contact-new-message { display: inline-block; margin-top: 28px; padding: 6px 0; color: #007b74; font-size: .9rem; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.hsz-contact-new-message:focus-visible { outline: 3px solid #0688f4; outline-offset: 4px; border-radius: 3px; }

/* Newsletter pages share the site's calm cards, color and spacing — 0.9.60. */
.hsz-newsletter-page #main-content > .container { width: 100%; max-width: none; padding: 0; }
.hsz-newsletter-page #main-content > .container::before,.hsz-newsletter-page #sidebar,.hsz-newsletter-page .entry-title { display: none; }
.hsz-newsletter-page #left-area { float: none; width: 100%; padding: 0; }
.hsz-newsletter-page article.et_pb_post { margin: 0; padding: 0; }
.hsz-newsletter-page .et_pb_section,.hsz-newsletter-page .et_pb_row { padding: 0; }
.hsz-newsletter-page .et_pb_row { width: 100%; max-width: none; }
.hsz-newsletter-shell { position: relative; isolation: isolate; padding: clamp(48px,7vw,88px) 24px; background: radial-gradient(ellipse at 15% 15%,#e4f8f2 0,transparent 50%),radial-gradient(ellipse at 90% 90%,#fff7df 0,transparent 45%),#f7fbff; }
.hsz-newsletter-shell::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22560%22%20height%3D%22460%22%20viewBox%3D%220%200%20560%20460%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%2302afa6%22%20stroke-width%3D%222.5%22%20opacity%3D%22.13%22%3E%3Cg%20transform%3D%22translate%2845%2065%29%20rotate%28-14%29%22%3E%3Crect%20width%3D%2262%22%20height%3D%2243%22%20rx%3D%228%22%2F%3E%3Cpath%20d%3D%22m3%206%2028%2021L59%206%22%2F%3E%3C%2Fg%3E%3Cg%20transform%3D%22translate%28365%20280%29%20rotate%2813%29%22%3E%3Crect%20width%3D%2286%22%20height%3D%2259%22%20rx%3D%2210%22%2F%3E%3Cpath%20d%3D%22m4%208%2039%2029L82%208%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22m330%2040%205%2015%2015%205-15%205-5%2015-5-15-15-5%2015-5Zm-170%20300%204%2012%2012%204-12%204-4%2012-4-12-12-4%2012-4Z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") center / 560px 460px repeat; }
.hsz-newsletter-shell .hsz-newsletter { width: min(1120px,100%); margin: 0 auto; scroll-margin-top: 120px; color: var(--hsz-navy); }
.hsz-newsletter-shell h1 { padding: 0; margin: 0 0 22px; color: var(--hsz-navy); font-size: clamp(1.9rem,3.3vw,2.8rem); font-weight: 800; line-height: 1.18; letter-spacing: -.035em; }
.hsz-newsletter-shell h2 { padding: 0; margin: 0 0 24px; color: var(--hsz-navy); font-size: clamp(1.4rem,2vw,1.7rem); line-height: 1.25; }
.hsz-newsletter-shell p { padding: 0; margin: 0 0 18px; color: var(--hsz-muted); line-height: 1.75; }
.hsz-newsletter-shell .hsz-eyebrow { color: #00877f; margin: 0 0 18px; }
.hsz-newsletter-shell .hsz-newsletter--outcome { max-width: 700px; padding: clamp(28px,5vw,52px); border: 1px solid #d3e9e2; border-radius: 30px; background: #fff; box-shadow: 0 20px 60px #0516290a; }
.hsz-newsletter__result { border: 0; padding: 0; background: transparent; }
.hsz-newsletter-shell #hsz-newsletter-notice.hsz-newsletter__result:focus { outline: none; }
.hsz-newsletter__icon { display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 26px; border-radius: 22px; background: #def7ef; color: #00877f; font-size: 36px; font-weight: 700; transform: rotate(-5deg); }
.hsz-newsletter__actions { display: flex; gap: 20px; flex-wrap: wrap; align-items: center; margin-top: 30px; }
.hsz-newsletter-shell .hsz-newsletter__home { padding: 13px 22px; border: 0; border-radius: 14px; background: #02afa6; color: #051629 !important; box-shadow: 0 8px 22px #02afa624; font-size: .9rem; }
.hsz-newsletter-shell .hsz-newsletter__home:hover { background: #039a92; }
.hsz-newsletter__text-link,.hsz-newsletter__consent a { color: #007b74; text-decoration: underline; text-underline-offset: 3px; }
.hsz-newsletter-shell a:focus-visible,.hsz-newsletter-shell button:focus-visible { outline: 3px solid #0688f4; outline-offset: 4px; }
.hsz-newsletter-shell .hsz-newsletter--signup { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(28px,5vw,64px); align-items: center; }
.hsz-newsletter__intro { padding: 12px 0; }
.hsz-newsletter__decor { display: flex; gap: 12px; margin-bottom: 28px; color: #00877f; }
.hsz-newsletter__decor span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 16px; background: #d9f6ed; font-size: 26px; }
.hsz-newsletter__decor span:nth-child(2) { background: #ffe28b; color: #725000; transform: rotate(-10deg); }
.hsz-newsletter__intro .hsz-newsletter-invite__benefits { margin: 24px 0; font-size: .95rem; line-height: 1.65; }
.hsz-newsletter__signup-card { padding: clamp(26px,4vw,40px); min-width: 0; border: 1px solid #d3e9e2; border-radius: 26px; background: #fff; box-shadow: 0 18px 50px #05162909; }
.hsz-newsletter__signup-card form,.hsz-newsletter__fields { display: grid; gap: 20px; }
.hsz-newsletter__fields label { display: grid; gap: 9px; color: var(--hsz-navy); font-size: .9rem; font-weight: 600; }
.hsz-newsletter__fields input { display: block; width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid #c6d6df; border-radius: 12px; background: #fff; color: var(--hsz-navy); font: inherit; font-weight: 400; box-sizing: border-box; }
.hsz-newsletter__fields input:focus-visible { outline: 3px solid #0688f4; outline-offset: 2px; }
.hsz-newsletter__consent { display: flex; align-items: flex-start; gap: 10px; color: var(--hsz-muted); font-size: .78rem; line-height: 1.65; }
.hsz-newsletter__consent input { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 3px; accent-color: #00877f; }
.hsz-newsletter__signup-card form > .hsz-button { justify-self: start; padding: 13px 24px; font-size: .9rem; }
.hsz-newsletter-shell .hsz-newsletter__fine { margin-top: 20px; margin-bottom: 0; font-size: .85rem; }
@media(max-width:800px) { .hsz-newsletter-shell .hsz-newsletter--signup { grid-template-columns: minmax(0,1fr); max-width: 600px; } .hsz-newsletter-shell { padding: 40px 20px; } }
@media(max-width:420px) { .hsz-newsletter-shell { padding: 28px 16px; } .hsz-newsletter-shell .hsz-newsletter--outcome { padding: 28px 22px; border-radius: 24px; } .hsz-newsletter__signup-card { padding: 26px 22px; } }

/* Shared provider workspace: overview, requests, favorites and account settings. */
body.hsz-provider-workspace #main-header,
body.hsz-provider-workspace #top-header,
body.hsz-provider-workspace .hsz-member-actions-section,
body.hsz-provider-workspace #left-area > .page > .entry-title { display: none !important; }
body.hsz-provider-workspace #page-container { padding-top: 0 !important; }
body.hsz-provider-workspace #main-content { padding-top: 0 !important; background: radial-gradient(circle at 92% 6%,#02afa619,transparent 23%),radial-gradient(circle at 4% 24%,#8a58fb14,transparent 22%),var(--hsz-bg); }
body.hsz-provider-workspace .hsz-account-page.et_pb_section { margin-top: 0 !important; padding: 32px 0 64px !important; background: transparent; }
body.hsz-provider-workspace .hsz-account-page > .et_pb_row,
body.hsz-provider-workspace #main-content > .container { width: min(calc(100% - 40px),1400px); max-width: 1400px; margin: 0 auto; padding: 0 !important; }
body.hsz-provider-workspace #main-content > .container { padding: 32px 0 64px !important; }
body.hsz-provider-workspace #left-area { float: none; width: 100%; padding: 0; }
body.hsz-provider-workspace .hsz-provider-control > .hsz-quote-candidate { width: 100%; max-width: none; min-width: 0; margin: 0; }
body.hsz-provider-workspace .hsz-account-site-navigation { max-width: none; margin: 0 0 24px; }
body.hsz-provider-workspace .hsz-frontend-profile { max-width: none; gap: 0; }
body.hsz-provider-workspace .hsz-provider-control__nav { margin: 0; }
.hsz-provider-control__nav a[aria-current="page"] { border-color: #008d85; background: #008d85; color: #fff; box-shadow: 0 4px 12px #008d8518; }
.hsz-provider-control__nav a[aria-current="page"] img { filter: brightness(0) invert(1); }
body.hsz-provider-workspace .hsz-frontend-profile__hero { background: #fff; color: var(--hsz-navy); border-bottom: 1px solid var(--hsz-border); }
body.hsz-provider-workspace .hsz-frontend-profile__hero h2 { margin: 0 0 12px; padding: 0; color: var(--hsz-navy); font-size: 1.65rem; }
body.hsz-provider-workspace .hsz-frontend-profile__hero p { color: var(--hsz-muted); }
@media(max-width:600px) {
 body.hsz-provider-workspace .hsz-account-page > .et_pb_row,
 body.hsz-provider-workspace #main-content > .container { width: calc(100% - 24px); }
 body.hsz-provider-workspace .hsz-account-page.et_pb_section { padding-top: 18px !important; }
 body.hsz-provider-workspace #main-content > .container { padding-top: 18px !important; }
 body.hsz-provider-workspace .hsz-account-site-navigation .hsz-activation-nav { gap: 16px; align-items: flex-start; flex-direction: column; }
 body.hsz-provider-workspace .hsz-account-site-navigation .hsz-activation-nav > div { flex-wrap: wrap; gap: 12px 18px; }
}

/* Shared sample profile on the national provider joining page. */
.hsz-join-showcase { width: 90%; max-width: 1280px; margin: 0 auto; padding: 28px 0; }
.hsz-join-showcase .hsz-showcase-example { display: grid; grid-template-columns: minmax(0, 1fr) 370px; align-items: center; gap: 28px; padding: 28px; border: 1px dashed #bddad7; border-radius: 22px; background: #f2faf9; }
.hsz-join-showcase .hsz-showcase-example__intro { min-width: 0; }
.hsz-join-showcase .hsz-showcase-example__eyebrow { display: block; margin-bottom: 8px; color: #007f78; font-size: .72rem; font-weight: 800; letter-spacing: .1em; }
.hsz-join-showcase .hsz-showcase-example h2 { margin: 0 0 12px; padding: 0; color: #102747; font-size: clamp(1.5rem, 2.5vw, 2.2rem); line-height: 1.25; }
.hsz-join-showcase .hsz-showcase-example__intro p { margin: 0; padding: 0; color: #526880; line-height: 1.6; }
.hsz-join-showcase .hsz-showcase-example__card { min-width: 0; }
.hsz-join-showcase .hsz-showcase-example__card .hsz-provider-card { width: 100%; max-width: 370px; margin: 0 auto; }
.hsz-join-showcase .hsz-showcase-example .hsz-provider-card__visual { aspect-ratio: 2.6 / 1; }
.hsz-join-showcase .hsz-showcase-example .hsz-provider-card__body { min-height: 0; }
.hsz-join-showcase .hsz-showcase-example .hsz-badge--showcase { background: #e2f5f2; color: #006e68; }
@media (max-width: 900px) {
 .hsz-join-showcase .hsz-showcase-example { grid-template-columns: 1fr; gap: 24px; padding: 22px; }
}
@media (max-width: 480px) {
 .hsz-join-showcase { width: 92%; padding: 20px 0; }
 .hsz-join-showcase .hsz-showcase-example { padding: 18px; }
 .hsz-join-showcase .hsz-showcase-example__preview { width: 100%; white-space: normal; }
}

/* A successful submission is a compact status, alongside the normal dashboard. */
.hsz-provider-onboarding .hsz-onboarding-state.hsz-pending-banner {
  display:grid;grid-template-columns:42px minmax(0,1fr) minmax(150px,auto);
  align-items:center;column-gap:18px;row-gap:6px;padding:24px 28px;
  border:1px solid #b4ded1;border-radius:20px;background:#eaf8f1;
  box-shadow:none;text-align:left;min-height:0;
}
.hsz-pending-banner .hsz-onboarding-state__icon { grid-column:1;grid-row:1 / 4;width:42px;height:42px;margin:0;border-radius:13px;font-size:25px;box-shadow:none;background:#008f82;color:#fff; }
.hsz-pending-banner .hsz-eyebrow { grid-column:2;grid-row:1;margin:0!important;padding:0;font-size:12px; }
.hsz-pending-banner h2 { grid-column:2;grid-row:2;margin:0!important;padding:0;font-size:clamp(21px,2.2vw,28px)!important;line-height:1.25!important; }
.hsz-pending-banner>p:not(.hsz-eyebrow) { grid-column:2;grid-row:3;max-width:850px;margin:3px 0 0!important;font-size:15px!important;line-height:1.6!important;color:#466456; }
.hsz-pending-banner .hsz-pending-summary { grid-column:3;grid-row:1 / 4;gap:4px;max-width:270px;margin:0 0 0 10px;padding:0 0 0 20px;border:0;border-left:1px solid #bddbce;border-radius:0;background:transparent;overflow-wrap:anywhere; }
.hsz-pending-banner .hsz-pending-summary span { font-size:12px;color:#466456; }
.hsz-pending-banner .hsz-pending-summary strong { font-size:16px;line-height:1.4; }
@media(max-width:850px) {
  .hsz-provider-onboarding .hsz-onboarding-state.hsz-pending-banner { grid-template-columns:36px minmax(0,1fr);padding:20px;column-gap:14px; }
  .hsz-pending-banner .hsz-onboarding-state__icon { width:36px;height:36px;border-radius:11px;font-size:22px; }
  .hsz-pending-banner .hsz-pending-summary { grid-column:2;grid-row:4;max-width:none;margin:10px 0 0;padding:10px 0 0;border-left:0;border-top:1px solid #bddbce; }
}

/* Match the pending dashboard's internal 24px gap before the following newsletter. */
.hsz-provider-onboarding--pending { margin-bottom:24px; }

/* Readable attribution stays outside the city card's navigation link. */
.hsz-city-photo-credit { display: block; margin: 8px 10px 0; color: #52657a; font-size: 11px; line-height: 1.5; }
.hsz-city-photo-credit a { color: #087e7c; text-decoration: underline; }
